diff --git a/README.md b/README.md index 9be84190..cb2db819 100644 --- a/README.md +++ b/README.md @@ -144,12 +144,12 @@ npm install --save spessasynth_lib - **`Web MIDI API` support:** Use your physical MIDI devices! - [WebMidiLink](https://www.g200kg.com/en/docs/webmidilink/) support - **Numerous exporting options:** -- - Render the MIDI file (modified or unmodified) to .wav -- - Render each channel as a separate .wav file -- - Export the modified MIDI file to .mid -- - Export the trimmed SoundFont to .sf2 -- - Or compress it as .sf3! -- - Bundle both as .rmi with metadata such as album cover! + - Render the MIDI file (modified or unmodified) to .wav + - Render each channel as a separate .wav file + - Export the modified MIDI file to .mid + - Export the trimmed SoundFont to .sf2 + - Or compress it as .sf3! + - Bundle both as .rmi with metadata such as album cover! - Comes bundled with a compressed [SGM](https://web.archive.org/web/20130616094125/http://www.geocities.jp/shansoundfont/) SoundFont to get you started - No additional dependencies! diff --git a/index.html b/index.html index 341bc93a..6efb31e8 100644 --- a/index.html +++ b/index.html @@ -67,7 +67,7 @@ - +

Loading...

diff --git a/package.json b/package.json index 931f3809..1df9c95f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "SpessaSynth", - "version": "3.20.0", + "version": "3.20.1", "type": "module", "scripts": { "start": "node src/website/server/server.js" diff --git a/src/spessasynth_lib/README.md b/src/spessasynth_lib/README.md index b37e63a2..4211115f 100644 --- a/src/spessasynth_lib/README.md +++ b/src/spessasynth_lib/README.md @@ -76,7 +76,7 @@ document.getElementById("button").onclick = async () => { - **Easy MIDI editing:** Use [helper functions](https://github.com/spessasus/SpessaSynth/wiki/Writing-MIDI-Files#modifymidi) to modify the song to your needs! - **Loop detection:** Automatically detects loops in MIDIs (e.g., from _Touhou Project_) - **First note detection:** Skip unnecessary silence at the start by jumping to the first note! -- **[Write MIDI files from scratch](https://github.com/spessasus/SpessaSynth/wiki/Creating-MIDI-Files.md)** +- **[Write MIDI files from scratch](https://github.com/spessasus/SpessaSynth/wiki/Creating-MIDI-Files)** - **Easy saving:** Save with just [one function!](https://github.com/spessasus/SpessaSynth/wiki/Writing-MIDI-Files#writemidifile) #### Read and write [RMID files with embedded SF2 soundfonts](https://github.com/spessasus/sf2-rmidi-specification#readme) diff --git a/src/spessasynth_lib/external_midi/web_midi_link.js b/src/spessasynth_lib/external_midi/web_midi_link.js index 1aecf4da..229faa42 100644 --- a/src/spessasynth_lib/external_midi/web_midi_link.js +++ b/src/spessasynth_lib/external_midi/web_midi_link.js @@ -13,7 +13,8 @@ export class WebMidiLinkHandler /** * @param synth {Synthetizer} the synth to play to */ - constructor(synth) { + constructor(synth) + { window.addEventListener("message", msg => { if(typeof msg.data !== "string") diff --git a/src/spessasynth_lib/soundfont/dls/dls_sample.js b/src/spessasynth_lib/soundfont/dls/dls_sample.js index 4e7fb0b7..6d65b211 100644 --- a/src/spessasynth_lib/soundfont/dls/dls_sample.js +++ b/src/spessasynth_lib/soundfont/dls/dls_sample.js @@ -46,6 +46,14 @@ export class DLSSample extends BasicSample getRawData() { + if(this.isCompressed) + { + if (!this.compressedData) + { + throw new Error("Compressed but no data??") + } + return this.compressedData; + } const uint8 = new Uint8Array(this.sampleData.length * 2); for (let i = 0; i < this.sampleData.length; i++) { diff --git a/src/spessasynth_lib/soundfont/dls/dls_zone.js b/src/spessasynth_lib/soundfont/dls/dls_zone.js index 5456f32c..6e43174e 100644 --- a/src/spessasynth_lib/soundfont/dls/dls_zone.js +++ b/src/spessasynth_lib/soundfont/dls/dls_zone.js @@ -46,7 +46,8 @@ export class DLSZone extends BasicInstrumentZone { const fine = diffStart % 32768; this.generators.push(new Generator(generatorTypes.startloopAddrsOffset, fine)); - const coarse = Math.round(diffStart / 32768); + // coarse generator uses 32768 samples per step + const coarse = (diffStart - fine) / 32768; if(coarse !== 0) { this.generators.push(new Generator(generatorTypes.startloopAddrsCoarseOffset, fine)); @@ -56,7 +57,8 @@ export class DLSZone extends BasicInstrumentZone { const fine = diffEnd % 32768; this.generators.push(new Generator(generatorTypes.endloopAddrsOffset, fine)); - const coarse = Math.round(diffEnd / 32768); + // coarse generator uses 32768 samples per step + const coarse = (diffEnd - fine) / 32768; if(coarse !== 0) { this.generators.push(new Generator(generatorTypes.endloopAddrsCoarseOffset, fine)); diff --git a/src/spessasynth_lib/synthetizer/worklet_processor.min.js b/src/spessasynth_lib/synthetizer/worklet_processor.min.js index 0f92930f..ff4ad900 100644 --- a/src/spessasynth_lib/synthetizer/worklet_processor.min.js +++ b/src/spessasynth_lib/synthetizer/worklet_processor.min.js @@ -9,7 +9,7 @@ var ss=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(A,t)=>( `}};function qA(e,A,t,s,n){return e<<10|A<<9|t<<8|s<<7|n}var ct=960,lt=lA.concave,ys=[new rA({srcEnum:qA(lt,0,1,0,P.noteOnVelocity),dest:g.initialAttenuation,amt:ct,secSrcEnum:0,transform:0}),new rA({srcEnum:129,dest:g.vibLfoToPitch,amt:50,secSrcEnum:0,transform:0}),new rA({srcEnum:qA(lt,0,1,1,p.mainVolume),dest:g.initialAttenuation,amt:ct,secSrcEnum:0,transform:0}),new rA({srcEnum:13,dest:g.vibLfoToPitch,amt:50,secSrcEnum:0,transform:0}),new rA({srcEnum:526,dest:g.fineTune,amt:12700,secSrcEnum:16,transform:0}),new rA({srcEnum:650,dest:g.pan,amt:1e3,secSrcEnum:0,transform:0}),new rA({srcEnum:qA(lt,0,1,1,p.expressionController),dest:g.initialAttenuation,amt:ct,secSrcEnum:0,transform:0}),new rA({srcEnum:219,dest:g.reverbEffectsSend,amt:200,secSrcEnum:0,transform:0}),new rA({srcEnum:221,dest:g.chorusEffectsSend,amt:200,secSrcEnum:0,transform:0}),new rA({srcEnum:qA(lA.linear,0,0,0,P.polyPressure),dest:g.vibLfoToPitch,amt:50,secSrcEnum:0,transform:0}),new rA({srcEnum:qA(lA.linear,0,0,1,p.effects2Depth),dest:g.modLfoToVolume,amt:24,secSrcEnum:0,transform:0}),new rA({srcEnum:qA(lA.linear,1,0,1,p.releaseTime),dest:g.releaseVolEnv,amt:1200,secSrcEnum:0,transform:0}),new rA({srcEnum:qA(lA.linear,1,0,1,p.brightness),dest:g.initialFilterFc,amt:4e3,secSrcEnum:0,transform:0})];function ft(e){let A=[];for(;e.chunkData.length>e.chunkData.currentIndex;)A.push(new rA(e.chunkData));return A}function Ds(e=!1){let A={midiControllers:new Int16Array(ut),lockedControllers:Array(ut).fill(!1),customControllers:new Float32Array(ks),NRPCoarse:0,NRPFine:0,RPValue:0,dataEntryState:fA.Idle,voices:[],sustainedVoices:[],cachedVoices:[],preset:this.defaultPreset,presetUsesOverride:!1,channelTransposeKeyShift:0,channelOctaveTuning:new Int8Array(12),channelVibrato:{delay:0,depth:0,rate:0},lockVibrato:!1,holdPedal:!1,isMuted:!1,drumChannel:!1,lockPreset:!1};for(let t=0;t<128;t++)A.cachedVoices.push([]);this.workletProcessorChannels.push(A),this.resetControllers(this.workletProcessorChannels.length-1),this.sendChannelProperties(),e&&this.callEvent("newchannel",void 0)}var gA=128,ut=147,KA=new Int16Array(ut).fill(0);KA[p.mainVolume]=12800;KA[p.expressionController]=16256;KA[p.pan]=8192;KA[p.releaseTime]=8192;KA[p.brightness]=8192;KA[p.effects1Depth]=5120;KA[gA+P.pitchWheel]=8192;KA[gA+P.pitchWheelRange]=256;var fA={Idle:0,RPCoarse:1,RPFine:2,NRPCoarse:3,NRPFine:4,DataCoarse:5,DataFine:6},iA={channelTuning:0,channelTransposeFine:1,modulationMultiplier:2,masterTuning:3,channelTuningSemitones:4},ks=Object.keys(iA).length,dt=new Float32Array(ks);dt[iA.modulationMultiplier]=1;var Ke={name:"INAM",album:"IPRD",artist:"IART",genre:"IGNR",picture:"IPIC",copyright:"ICOP",creationDate:"ICRD",comment:"ICMT",engineer:"IENG",software:"ISFT",encoding:"IENC",midiEncoding:"MENC",bankOffset:"DBNK"};var ve=class{constructor(){this.timeDivision=0,this.duration=0,this.tempoChanges=[{ticks:0,tempo:120}],this.copyright="",this.tracksAmount=0,this.lyrics=[],this.firstNoteOn=0,this.keyRange={min:0,max:127},this.lastVoiceEventTick=0,this.midiPorts=[0],this.midiPortChannelOffsets=[0],this.usedChannelsOnTrack=[],this.loop={start:0,end:0},this.midiName="",this.fileName="",this.rawMidiName=void 0,this.embeddedSoundFont=void 0,this.format=0,this.RMIDInfo={},this.bankOffset=0,this.tracks=[]}_ticksToSeconds(A){if(A<=0)return 0;let t=this.tempoChanges.find(n=>n.ticks0&&(Z+=this.tracks[D-1][this.tracks[D-1].length-1].ticks);x.data.currentIndexthis.lastVoiceEventTick&&(this.lastVoiceEventTick=Z),K=rs[r>>4],(r&240)===w.noteOn){M.add(sA);let aA=x.data[x.data.currentIndex];this.keyRange.min=Math.min(this.keyRange.min,aA),this.keyRange.max=Math.max(this.keyRange.max,aA)}N=r;break}let z=new H(K),$=x.data.slice(x.data.currentIndex,x.data.currentIndex+K);x.data.currentIndex+=K,z.set($,0);let QA=new ne(Z,r,z);switch(k.push(QA),sA){case-2:switch(r){case w.setTempo:this.tempoChanges.push({ticks:Z,tempo:6e7/XA($,3)});break;case w.marker:switch(V(z,z.length).trim().toLowerCase()){default:break;case"start":case"loopstart":f=Z;break;case"loopend":Q=Z}z.currentIndex=0;break;case w.midiPort:let UA=z[0];this.midiPorts[D]=UA,this.midiPortChannelOffsets[UA]===void 0&&(this.midiPortChannelOffsets[UA]=l,l+=16);break;case w.copyright:o||(this.copyright+=V(z,z.length,void 0,!1)+` `);break;case w.lyric:this.lyrics.push(z)}break;case-3:if(hA(z.slice(0,7)).trim()==="41 10 45 12 10 00 00"){let aA=z.slice(7,$.length-3),UA=V(aA,aA.length)+` `;this.copyright+=UA,m(`%cDecoded Roland SC message! %c${UA}`,a.recognized,a.value)}break;default:if((r&240)===w.controllerChange)switch(z[0]){case 2:case 116:f=Z;break;case 4:case 117:Q===null?Q=Z:Q=0;break;case 0:i&&z[1]!==0&&z[1]!==127&&(m("%cDLS RMIDI with offset 1 detected!",a.recognized),this.bankOffset=1)}}}this.tracks.push(k),this.usedChannelsOnTrack.push(M),m(`%cParsed %c${this.tracks.length}%c / %c${this.tracksAmount}`,a.info,a.value,a.info,a.value)}let d=[];for(let D of this.tracks){let k=D.find(x=>(x.messageStatusByte&240)===w.noteOn);k&&d.push(k.ticks)}this.firstNoteOn=Math.min(...d),m(`%cMIDI file parsed. Total tick time: %c${this.lastVoiceEventTick}`,a.info,a.recognized),X(),f!==null&&Q===null?(f=this.firstNoteOn,Q=this.lastVoiceEventTick):(f===null&&(f=this.firstNoteOn),(Q===null||Q===0)&&(Q=this.lastVoiceEventTick));let S=0;for(let D of this.midiPorts)if(D!==-1){S=D;break}if(this.midiPorts=this.midiPorts.map(D=>D===-1?S:D),this.midiPortChannelOffsets.length===0&&(this.midiPortChannelOffsets=[0]),this.loop={start:f,end:Q},!E)if(this.tracks.length>1){if(this.tracks[0].find(D=>D.messageStatusByte>=w.noteOn&&D.messageStatusBytek.messageStatusByte===w.trackName);D&&(this.rawMidiName=D.messageData,this.midiName=V(D.messageData,D.messageData.length,void 0,!1))}}else{let D=this.tracks[0].find(k=>k.messageStatusByte===w.trackName);D&&(this.rawMidiName=D.messageData,this.midiName=V(D.messageData,D.messageData.length,void 0,!1))}if(this.fileName=t,this.midiName=this.midiName.trim(),this.midiName.length===0){this.midiName=ns(t),this.rawMidiName=new Uint8Array(this.midiName.length);for(let D=0;Dl>Q?l:Q),s=[];for(let Q=0;Q{E[S]>=d.length||d[E[S]].ticks0;){let Q=h(),l=e.tracks[Q];if(E[Q]>=l.length){i--;continue}let d=l[E[Q]];if(E[Q]++,d.messageStatusByte===w.midiPort){c[Q]=d.messageData[0];continue}let S=d.messageStatusByte&240;if(S!==w.noteOn&&S!==w.controllerChange&&S!==w.programChange&&S!==w.systemExclusive)continue;let D=(d.messageStatusByte&15)+e.midiPortChannelOffsets[c[Q]]||0,k=s[D];switch(S){case w.programChange:k.program=d.messageData[0],n(k);break;case w.controllerChange:if(d.messageData[0]!==p.bankSelect||f==="gs"&&k.drums)continue;let x=d.messageData[1],M=Math.max(0,x-e.bankOffset);if(f==="xg"){let T=x===120||x===126||x===127;T!==k.drums?(k.drums=T,k.bank=k.drums?128:M,n(k)):k.bank=k.drums?128:M;continue}s[D].bank=M;break;case w.noteOn:if(d.messageData[1]===0)continue;n(k),o[k.string].add(`${d.messageData[0]}-${d.messageData[1]}`);break;case w.systemExclusive:if(d.messageData[0]!==65||d.messageData[2]!==66||d.messageData[3]!==18||d.messageData[4]!==64||!(d.messageData[5]&16)||d.messageData[6]!==21){d.messageData[0]===67&&d.messageData[2]===76&&d.messageData[5]===126&&d.messageData[6]===0&&(f="xg");continue}let N=[9,0,1,2,3,4,5,6,7,8,10,11,12,13,14,15][d.messageData[5]&15]+e.midiPortChannelOffsets[c[Q]],Z=!!(d.messageData[7]>0&&d.messageData[5]>>4);k=s[N],k.drums=Z,k.bank=Z?128:0,n(k);break}}for(let Q of Object.keys(o))o[Q].size===0&&(m(`%cDetected change but no keys for %c${Q}`,a.info,a.value),delete o[Q]);return X(),o}function Fs(e,A){this.midiPortChannelOffset===0&&(this.midiPortChannelOffset+=16,this.midiPortChannelOffsets[A]=0),this.midiPortChannelOffsets[A]===void 0&&(this.synth.workletProcessorChannels.lengthA.getAudioData());else{this.synth.overrideSoundfont&&this.synth.clearSoundFont(!0,!0),DA("%cPreloading samples...",a.info);let A=ws(this.midiData,this.synth.soundfontManager);for(let[t,s]of Object.entries(A)){let n=parseInt(t.split(":")[0]),o=parseInt(t.split(":")[1]),E=this.synth.getPreset(n,o);m(`%cPreloading used samples on %c${E.presetName}%c...`,a.info,a.recognized,a.info);for(let i of s){let h=i.split("-");E.preloadSpecific(parseInt(h[0]),parseInt(h[1]))}}X()}this.tracks=this.midiData.tracks,this.midiPorts=this.midiData.midiPorts,this.midiPortChannelOffset=0,this.midiPortChannelOffsets={},this.midiData.midiPorts.forEach((A,t)=>{this.assignMIDIPort(t,A)}),this.duration=this.midiData.duration,this.firstNoteTime=Ye(this.midiData.tempoChanges,this.midiData.firstNoteOn,this.midiData.timeDivision),m(`%cTotal song time: ${Bt(Math.ceil(this.duration)).time}`,a.recognized),this.post(kA.songChange,[new Je(this.midiData),this.songIndex]),this.synth.resetAllControllers(),this.duration<=1&&(Y(`%cVery short song: (${Bt(Math.round(this.duration)).time}). Disabling loop!`,a.warn),this.loop=!1),this.play(!0)}function Gs(e){this.songs=e.reduce((A,t)=>{if(t.duration)return A.push(t),A;try{A.push(new Pe(t.binary,t.altName||""))}catch(s){return this.post(kA.midiError,s.message),A}return A},[]),!(this.songs.length<1)&&(this.songIndex=0,this.songs.length>1&&(this.loop=!1),this.loadNewSequence(this.songs[this.songIndex]))}function xs(){if(this.songs.length===1){this.currentTime=0;return}this.songIndex++,this.songIndex%=this.songs.length,this.loadNewSequence(this.songs[this.songIndex])}function Ms(){if(this.songs.length===1){this.currentTime=0;return}this.songIndex--,this.songIndex<0&&(this.songIndex=this.songs.length-1),this.loadNewSequence(this.songs[this.songIndex])}function Ns(e,A){switch(e){default:break;case NA.loadNewSongList:this.loadNewSongList(A);break;case NA.pause:this.pause();break;case NA.play:this.play(A);break;case NA.stop:this.stop();break;case NA.setTime:this.currentTime=A;break;case NA.changeMIDIMessageSending:this.sendMIDIMessages=A;break;case NA.setPlaybackRate:this.playbackRate=A;break;case NA.setLoop:this.loop=A;break;case NA.changeSong:A?this.nextSong():this.previousSong();break;case NA.getMIDI:this.post(kA.getMIDI,this.midiData);break;case NA.setSkipToFirstNote:this._skipToFirstNoteOn=A;break}}function bs(e,A=void 0){this.synth.enableEventSystem&&this.synth.post({messageType:pA.sequencerSpecific,messageData:{messageType:e,messageData:A}})}function Ls(e){this.post(kA.midiEvent,e)}var CA=class{constructor(A){this.synth=A,this.ignoreEvents=!1,this.sendMIDIMessages=!1,this.eventIndex=[],this.songIndex=0,this.playedTime=0,this.pausedTime=void 0,this.absoluteStartTime=currentTime,this._playbackRate=1,this.playingNotes=[],this.loop=!0,this.midiData=void 0,this.midiPorts=[],this.midiPortChannelOffset=0,this.midiPortChannelOffsets={},this._skipToFirstNoteOn=!0}set playbackRate(A){let t=this.currentTime;this._playbackRate=A,this.currentTime=t}get currentTime(){return this.pausedTime?this.pausedTime:(currentTime-this.absoluteStartTime)*this._playbackRate}set currentTime(A){if(A>this.duration||A<0){this._skipToFirstNoteOn?this.setTimeTicks(this.midiData.firstNoteOn-1):this.setTimeTicks(0);return}if(this._skipToFirstNoteOn&&AUs?440*Math.pow(2,(e-6900)/1200):pt[~~e-Ve]}var yt=-1660,Fo=1600,St=new Float32Array((Fo-yt)*100+1);for(let e=0;e.5?1:0,s?t*2-1:t;case lA.concave:return s?(t=t*2-1,t<0?1-Ie[~~(t*-IA)]-1:Ie[~~t*IA]):Ie[~~(t*IA)];case lA.convex:return s?(t=t*2-1,t<0?1-ae[~~(t*-IA)]-1:ae[~~(t*IA)]):ae[~~(t*IA)]}}var Dt=1,kt=new Float32Array(1e3);for(let e=0;e=e.sample.loopEnd;)s-=o;let i=~~s,h=i+1;for(;h>=e.sample.loopEnd;)h-=o;let c=s-i,f=A[h],Q=A[i];t[E]=Q+(f-Q)*c,s+=e.sample.playbackStep*e.currentTuningCalculated}else{e.sample.end>=A.length&&(e.sample.end=A.length-1);for(let E=0;E=e.sample.end){e.finished=!0;return}let c=s-i,f=A[h],Q=A[i];t[E]=Q+(f-Q)*c,s+=e.sample.playbackStep*e.currentTuningCalculated}}e.sample.cursor=s}function Ys(e,A,t,s,n,o,E,i,h){if(!isNaN(t[0])){if(E>0){let c=o[0],f=o[1];E=Math.min(E,1e3);let Q=E/500,l=e*Q,d=A*Q;for(let S=0;S0){let c=i[0],f=i[1];h=Math.min(h,1e3);let Q=h/500,l=e*Q,d=A*Q;for(let S=0;S0)for(let c=0;c0)for(let c=0;c=A.length)return;i.state++;case 1:for(;h=A.length)return}i.state++;case 2:for(;h=A.length)return}i.state++;case 3:for(;h=A.length)return}i.state++;case 4:for(;;){let f=i.sustainDb+E;if(i.currentAttenuationDb+=(f-i.currentAttenuationDb)*o,A[c]*=LA(i.currentAttenuationDb),++c>=A.length)return}}}var vs={a0:0,a1:0,a2:0,a3:0,a4:0,x1:0,x2:0,y1:0,y2:0,reasonanceCb:0,reasonanceGain:1,cutoffCents:13500,cutoffHz:2e4};function Ps(e,A,t){if(!(t>13499)){(e.filter.cutoffCents!==t||e.filter.reasonanceCb!==e.modulatedGenerators[g.initialFilterQ])&&(e.filter.cutoffCents=t,e.filter.reasonanceCb=e.modulatedGenerators[g.initialFilterQ],Go(e));for(let s=0;s.45*sampleRate&&(e.filter.cutoffHz=.45*sampleRate);let A=e.filter.reasonanceCb/10-3.01;e.filter.reasonanceGain=LA(-1*A);let t=1/Math.sqrt(e.filter.reasonanceGain),s=2*Math.PI*e.filter.cutoffHz/sampleRate,n=Math.cos(s),o=Math.sin(s)/(2*e.filter.reasonanceGain),E=(1-n)*t,i=E/2,h=i,c=1+o,f=-2*n,Q=1-o;e.filter.a0=i/c,e.filter.a1=E/c,e.filter.a2=h/c,e.filter.a3=f/c,e.filter.a4=Q/c}var Vs=Math.PI/2,Os=.01;function Zs(e,A,t,s,n,o){if(A.isInRelease||currentTime>=A.releaseStartTime&&(A.releaseStartModEnv=A.currentModEnvValue,A.isInRelease=!0,Ae(A),A.volumeEnvelope.currentReleaseGain=LA(A.volumeEnvelope.currentAttenuationDb)),A.modulatedGenerators[g.initialAttenuation]>2500){A.isInRelease&&(A.finished=!0);return}let E=A.targetKey,i=A.modulatedGenerators[g.fineTune]+e.customControllers[iA.channelTuning]+e.customControllers[iA.channelTransposeFine]+e.customControllers[iA.masterTuning]+e.channelOctaveTuning[A.midiNote%12],h=A.modulatedGenerators[g.coarseTune]+e.customControllers[iA.channelTuningSemitones],c=this.tunings[e.preset.program]?.[E];c?.midiNote>=0&&(E=c.midiNote,i+=c.centTuning),i+=(E-A.sample.rootKey)*A.modulatedGenerators[g.scaleTuning];let f=A.modulatedGenerators[g.vibLfoToPitch];if(f!==0){let $=A.startTime+uA(A.modulatedGenerators[g.delayVibLFO]),QA=Se(A.modulatedGenerators[g.freqVibLFO]),aA=Oe($,QA,currentTime);i+=aA*(f*e.customControllers[iA.modulationMultiplier])}let Q=A.modulatedGenerators[g.initialFilterFc],l=A.modulatedGenerators[g.modLfoToPitch],d=A.modulatedGenerators[g.modLfoToVolume],S=A.modulatedGenerators[g.modLfoToFilterFc],D=0;if(l+S+d!==0){let $=A.startTime+uA(A.modulatedGenerators[g.delayModLFO]),QA=Se(A.modulatedGenerators[g.freqModLFO]),aA=Oe($,QA,currentTime);i+=aA*(l*e.customControllers[iA.modulationMultiplier]),D=aA*d,Q+=aA*S}if(e.channelVibrato.depth>0){let $=Oe(A.startTime+e.channelVibrato.delay,e.channelVibrato.rate,currentTime);$&&(i+=$*e.channelVibrato.depth)}let k=A.modulatedGenerators[g.modEnvToPitch],x=A.modulatedGenerators[g.modEnvToFilterFc],M=Ts(A,currentTime);Q+=M*x,i+=M*k;let N=~~(i+h*100);N!==A.currentTuningCents&&(A.currentTuningCents=N,A.currentTuningCalculated=Math.pow(2,N/1200));let Z=(Math.max(-500,Math.min(500,A.modulatedGenerators[g.pan]))+500)/1e3,T=new Float32Array(t.length);Hs(A,this.workletDumpedSamplesList[A.sample.sampleID],T),Ps(A,T,Q),Ks(A,T,currentTime,D,this.sampleTime,this.volumeEnvelopeSmoothingFactor),A.currentPan+=(Z-A.currentPan)*this.panSmoothingFactor;let r=Math.cos(Vs*A.currentPan)*this.panLeft,sA=Math.sin(Vs*A.currentPan)*this.panRight,K=this.oneOutputMode?0:A.modulatedGenerators[g.reverbEffectsSend],z=this.oneOutputMode?0:A.modulatedGenerators[g.chorusEffectsSend];Ys(r,sA,T,t,s,n,K,o,z)}function xo(e,A){let t=0;return e.drumChannel&&(t+=5),A.isInRelease&&(t-=5),t+=A.velocity/25,t-=A.volumeEnvelope.state,A.isInRelease&&(t-=5),t-=A.volumeEnvelope.currentAttenuationDb/50,t}function Xs(e){let A=[];for(let s of this.workletProcessorChannels)for(let n of s.voices)if(!n.finished){let o=xo(s,n);A.push({channel:s,voice:n,priority:o})}A.sort((s,n)=>s.priority-n.priority);let t=A.slice(0,e);for(let{channel:s,voice:n}of t){let o=s.voices.indexOf(n);o>-1&&s.voices.splice(o,1)}}function Ws(e){e.releaseStartTime=currentTime,e.releaseStartTime-e.startTimezs=e);var Mo=function(e){var A,t,s,n,o,E,i,h="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",c="",f=0;e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");do n=h.indexOf(e.charAt(f++)),o=h.indexOf(e.charAt(f++)),E=h.indexOf(e.charAt(f++)),i=h.indexOf(e.charAt(f++)),A=n<<2|o>>4,t=(15&o)<<4|E>>2,s=(3&E)<<6|i,c+=String.fromCharCode(A),E!==64&&(c+=String.fromCharCode(t)),i!==64&&(c+=String.fromCharCode(s));while(f1&&(r.thisProgram=process.argv[1].replace(/\\/g,"/")),r.arguments=process.argv.slice(2),typeof module<"u",process.on("uncaughtException",function(I){if(!(I instanceof le))throw I}),process.on("unhandledRejection",function(I,C){process.exit(1)}),r.quit=function(I){process.exit(I)},r.inspect=function(){return"[Emscripten Module object]"}):QA?(typeof read<"u"&&(r.read=function(C){return read(C)}),r.readBinary=function(C){var B;return typeof readbuffer=="function"?new Uint8Array(readbuffer(C)):(ZA(typeof(B=read(C,"binary"))=="object"),B)},typeof scriptArgs<"u"?r.arguments=scriptArgs:typeof arguments<"u"&&(r.arguments=arguments),typeof quit=="function"&&(r.quit=function(I){quit(I)})):(K||z)&&(K?document.currentScript&&(aA=document.currentScript.src):aA=self.location.href,aA=aA.indexOf("blob:")!==0?aA.split("/").slice(0,-1).join("/")+"/":"",r.read=function(C){var B=new XMLHttpRequest;return B.open("GET",C,!1),B.send(null),B.responseText},z&&(r.readBinary=function(C){var B=new XMLHttpRequest;return B.open("GET",C,!1),B.responseType="arraybuffer",B.send(null),new Uint8Array(B.response)}),r.readAsync=function(C,B,u){var F=new XMLHttpRequest;F.open("GET",C,!0),F.responseType="arraybuffer",F.onload=function(){if(F.status==200||F.status==0&&F.response){B(F.response);return}u()},F.onerror=u,F.send(null)},r.setWindowTitle=function(I){document.title=I});var Ut=r.print||(typeof console<"u"?console.log.bind(console):typeof print<"u"?print:null),TA=r.printErr||(typeof printErr<"u"?printErr:typeof console<"u"&&console.warn.bind(console)||Ut);for(e in sA)sA.hasOwnProperty(e)&&(r[e]=sA[e]);function we(I){var C=d;return d=d+I+15&-16,C}function Tt(I){var C=h[N>>2],B=C+I+15&-16;return h[N>>2]=B,B>=EA&&!Zt()?(h[N>>2]=C,0):C}function Ht(I,C){return C||(C=16),I=Math.ceil(I/C)*C}function Eo(I){switch(I){case"i1":case"i8":return 1;case"i16":return 2;case"i32":case"float":return 4;case"i64":case"double":return 8;default:if(I[I.length-1]==="*")return 4;if(I[0]!=="i")return 0;var C=parseInt(I.substr(1));return ZA(C%8==0),C/8}}function he(I){he.shown||(he.shown={}),he.shown[I]||(he.shown[I]=1,TA(I))}sA=void 0;var Bo={"f64-rem":function(I,C){return I%C},debugger:function(){}},$e=[];function Yo(I,C){for(var B=0,u=B;u>>0)+4294967296*+(C>>>0):+(I>>>0)+4294967296*+(0|C)}function et(I,C,B){return B&&B.length?r["dynCall_"+I].apply(null,[C].concat(B)):r["dynCall_"+I].call(null,C)}var Fe=0,Yt=0;function ZA(I,C){I||PA("Assertion failed: "+C)}function Jt(I){var C=r["_"+I];return ZA(C,"Cannot call unknown function "+I+", make sure it is exported"),C}var qt={stackSave:function(){at()},stackRestore:function(){It()},arrayToC:function(I){var C,B,u=be(I.length);return C=I,B=u,n.set(C,B),u},stringToC:function(I){var C=0;if(I!=null&&I!==0){var B=(I.length<<2)+1;C=be(B),Pt(I,C,B)}return C}},ho={string:qt.stringToC,array:qt.arrayToC};function Kt(I,C,B,u,F){var v=Jt(I),W=[],G=0;if(u)for(var BA=0;BA>0]=C;break;case"i16":E[I>>1]=C;break;case"i32":h[I>>2]=C;break;case"i64":tempI64=[C>>>0,+mo(tempDouble=C)>=1?tempDouble>0?(0|So(+jt(tempDouble/4294967296),4294967295))>>>0:~~+po((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0],h[I>>2]=tempI64[0],h[I+4>>2]=tempI64[1];break;case"float":f[I>>2]=C;break;case"double":Q[I>>3]=C;break;default:PA("invalid type for setValue: "+B)}}function vo(I,C,B){switch((C=C||"i8").charAt(C.length-1)==="*"&&(C="i32"),C){case"i1":case"i8":return n[I>>0];case"i16":return E[I>>1];case"i32":case"i64":return h[I>>2];case"float":return f[I>>2];case"double":return Q[I>>3];default:PA("invalid type for getValue: "+C)}return null}function Po(I,C,B,u){typeof I=="number"?(v=!0,W=I):(v=!1,W=I.length);var F=typeof C=="string"?C:null;if(G=B==4?u:[typeof Ne=="function"?Ne:we,be,we,Tt][B===void 0?2:B](Math.max(W,F?1:C.length)),v){for(u=G,ZA((3&G)==0),BA=G+(-4&W);u>2]=0;for(BA=G+W;u>0]=0;return G}if(F==="i8")return I.subarray||I.slice?o.set(I,G):o.set(new Uint8Array(I),G),G;for(var v,W,G,BA,nA,oA,eA,q=0;q>0],(u!=0||C)&&(W++,!C||W!=C););C||(C=W);var G="";if(v<128){for(;C>0;)F=String.fromCharCode.apply(String,o.subarray(I,I+Math.min(C,1024))),G=G?G+F:F,I+=1024,C-=1024;return G}return B=I,function(nA,oA){for(var eA=oA;nA[eA];)++eA;if(eA-oA>16&&nA.subarray&&vt)return vt.decode(nA.subarray(oA,eA));for(var q,mA,FA,RA,GA,zA,xA="";;){if(!(q=nA[oA++]))return xA;if(!(128&q)){xA+=String.fromCharCode(q);continue}if(mA=63&nA[oA++],(224&q)==192){xA+=String.fromCharCode((31&q)<<6|mA);continue}if(FA=63&nA[oA++],(240&q)==224?q=(15&q)<<12|mA<<6|FA:(RA=63&nA[oA++],(248&q)==240?q=(7&q)<<18|mA<<12|FA<<6|RA:(GA=63&nA[oA++],q=(252&q)==248?(3&q)<<24|mA<<18|FA<<12|RA<<6|GA:(1&q)<<30|mA<<24|FA<<18|RA<<12|GA<<6|(zA=63&nA[oA++]))),q<65536)xA+=String.fromCharCode(q);else{var fe=q-65536;xA+=String.fromCharCode(55296|fe>>10,56320|1023&fe)}}}(o,B)}function Oo(I){for(var C="";;){var B=n[I++>>0];if(!B)return C;C+=String.fromCharCode(B)}}function Zo(I,C){return function(u,F,v){for(var W=0;W>0]=u.charCodeAt(W);v||(n[F>>0]=0)}(I,C,!1)}var vt=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function Ge(I,C,B,u){if(!(u>0))return 0;for(var F=B,v=B+u-1,W=0;W=55296&&G<=57343&&(G=65536+((1023&G)<<10)|1023&I.charCodeAt(++W)),G<=127){if(B>=v)break;C[B++]=G}else if(G<=2047){if(B+1>=v)break;C[B++]=192|G>>6,C[B++]=128|63&G}else if(G<=65535){if(B+2>=v)break;C[B++]=224|G>>12,C[B++]=128|G>>6&63,C[B++]=128|63&G}else if(G<=2097151){if(B+3>=v)break;C[B++]=240|G>>18,C[B++]=128|G>>12&63,C[B++]=128|G>>6&63,C[B++]=128|63&G}else if(G<=67108863){if(B+4>=v)break;C[B++]=248|G>>24,C[B++]=128|G>>18&63,C[B++]=128|G>>12&63,C[B++]=128|G>>6&63,C[B++]=128|63&G}else{if(B+5>=v)break;C[B++]=252|G>>30,C[B++]=128|G>>24&63,C[B++]=128|G>>18&63,C[B++]=128|G>>12&63,C[B++]=128|G>>6&63,C[B++]=128|63&G}}return C[B]=0,B-F}function Pt(I,C,B){return Ge(I,o,C,B)}function xe(I){for(var C=0,B=0;B=55296&&u<=57343&&(u=65536+((1023&u)<<10)|1023&I.charCodeAt(++B)),u<=127?++C:u<=2047?C+=2:u<=65535?C+=3:u<=2097151?C+=4:u<=67108863?C+=5:C+=6}return C}var Vt=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function Xo(I){for(var C=I,B=C>>1;E[B];)++B;if((C=B<<1)-I>32&&Vt)return Vt.decode(o.subarray(I,C));for(var u=0,F="";;){var v=E[I+2*u>>1];if(v==0)return F;++u,F+=String.fromCharCode(v)}}function Wo(I,C,B){if(B===void 0&&(B=2147483647),B<2)return 0;for(var u=C,F=(B-=2)<2*I.length?B/2:I.length,v=0;v>1]=W,C+=2}return E[C>>1]=0,C-u}function _o(I){return 2*I.length}function zo(I){for(var C=0,B="";;){var u=h[I+4*C>>2];if(u==0)return B;if(++C,u>=65536){var F=u-65536;B+=String.fromCharCode(55296|F>>10,56320|1023&F)}else B+=String.fromCharCode(u)}}function jo(I,C,B){if(B===void 0&&(B=2147483647),B<4)return 0;for(var u=C,F=u+B-4,v=0;v=55296&&W<=57343&&(W=65536+((1023&W)<<10)|1023&I.charCodeAt(++v)),h[C>>2]=W,(C+=4)+4>F)break}return h[C>>2]=0,C-u}function $o(I){for(var C=0,B=0;B=55296&&u<=57343&&++B,C+=4}return C}function Ar(I){var C=xe(I)+1,B=Ne(C);return B&&Ge(I,n,B,C),B}function er(I){var C=xe(I)+1,B=be(C);return Ge(I,n,B,C),B}function tr(I){return I}function sr(){var I,C=function(){var u=Error();if(!u.stack){try{throw Error(0)}catch(F){u=F}if(!u.stack)return"(no stack trace available)"}return u.stack.toString()}();return r.extraStackTrace&&(C+=` -`+r.extraStackTrace()),(I=C).replace(/__Z[\w\d_]+/g,function(B){var u,F=u=B;return B===F?B:B+" ["+F+"]"})}function tt(I,C){return I%C>0&&(I+=C-I%C),I}function Ot(I){r.buffer=s=I}function st(){r.HEAP8=n=new Int8Array(s),r.HEAP16=E=new Int16Array(s),r.HEAP32=h=new Int32Array(s),r.HEAPU8=o=new Uint8Array(s),r.HEAPU16=i=new Uint16Array(s),r.HEAPU32=c=new Uint32Array(s),r.HEAPF32=f=new Float32Array(s),r.HEAPF64=Q=new Float64Array(s)}function Zt(){var I=r.usingWasm?65536:16777216,C=2147483648-I;if(h[N>>2]>C)return!1;var B=EA;for(EA=Math.max(EA,16777216);EA>2];)EA=EA<=536870912?tt(2*EA,I):Math.min(tt((3*EA+2147483648)/4,I),C);var u=r.reallocBuffer(EA);return u&&u.byteLength==EA?(Ot(u),st(),!0):(EA=B,!1)}l=d=D=k=x=M=N=0,S=!1,r.reallocBuffer||(r.reallocBuffer=function(I){try{if(ArrayBuffer.transfer)C=ArrayBuffer.transfer(s,I);else{var C,B=n;C=new ArrayBuffer(I),new Int8Array(C).set(B)}}catch{return!1}return!!yo(C)&&C});try{(Z=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get))(new ArrayBuffer(4))}catch{Z=function(C){return C.byteLength}}var nt=r.TOTAL_STACK||5242880,EA=r.TOTAL_MEMORY||16777216;function co(){return EA}function Qe(I){for(;I.length>0;){var C=I.shift();if(typeof C=="function"){C();continue}var B=C.func;typeof B=="number"?C.arg===void 0?r.dynCall_v(B):r.dynCall_vi(B,C.arg):B(C.arg===void 0?null:C.arg)}}EA=0?I:C<=32?2*Math.abs(1<=u&&(C<=32||I>u)&&(I=-2*u+I),I}var mo=Math.abs,po=Math.ceil,jt=Math.floor,So=Math.min,_A=0,it=null,ce=null;function gr(I){return I}r.preloadedImages={},r.preloadedAudios={};var $t="data:application/octet-stream;base64,";function Me(I){return String.prototype.startsWith?I.startsWith($t):I.indexOf($t)===0}(function(){var C="main.wast",B="main.wasm",u="main.temp.asm.js";Me(C)||(C=UA(C)),Me(B)||(B=UA(B)),Me(u)||(u=UA(u));var F={global:null,env:null,asm2wasm:Bo,parent:r},v=null;function W(eA){return eA}function G(){try{if(r.wasmBinary)return new Uint8Array(r.wasmBinary);if(r.readBinary)return r.readBinary(B);throw"both async and sync fetching of the wasm failed"}catch(eA){PA(eA)}}r.asmPreload=r.asm;var BA=r.reallocBuffer,nA=function(eA){eA=tt(eA,r.usingWasm?65536:16777216);var q=r.buffer.byteLength;if(r.usingWasm)try{var mA=r.wasmMemory.grow((eA-q)/65536);return mA!==-1?r.buffer=r.wasmMemory.buffer:null}catch{return null}};r.reallocBuffer=function(eA){return oA==="asmjs"?BA(eA):nA(eA)};var oA="";r.asm=function(eA,q,mA){var FA;if(!(q=FA=q).table){var RA,GA=r.wasmTableSize;GA===void 0&&(GA=1024);var zA=r.wasmMaxTableSize;typeof WebAssembly=="object"&&typeof WebAssembly.Table=="function"?zA!==void 0?q.table=new WebAssembly.Table({initial:GA,maximum:zA,element:"anyfunc"}):q.table=new WebAssembly.Table({initial:GA,element:"anyfunc"}):q.table=Array(GA),r.wasmTable=q.table}return q.memoryBase||(q.memoryBase=r.STATIC_BASE),q.tableBase||(q.tableBase=0),RA=function(fe,te,Ct){if(typeof WebAssembly!="object")return TA("no native wasm support detected"),!1;if(!(r.wasmMemory instanceof WebAssembly.Memory))return TA("no native wasm Memory in use"),!1;function Le(HA,YA){if((v=HA.exports).memory){var ue,Et,ts;ue=v.memory,Et=r.buffer,ue.byteLength0?B:xe(I)+1,F=Array(u),v=Ge(I,F,0,F.length);return C&&(F.length=v),F}function hr(I){for(var C=[],B=0;B255&&(u&=255),C.push(String.fromCharCode(u))}return C.join("")}d+=16,N=we(4),x=(D=k=Ht(d))+nt,M=Ht(x),h[N>>2]=M,S=!0,r.wasmTableSize=4,r.wasmMaxTableSize=4,r.asmGlobalArg={},r.asmLibraryArg={abort:PA,assert:ZA,enlargeMemory:Zt,getTotalMemory:co,abortOnCannotGrowMemory:function(){PA("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+EA+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")},invoke_iii:function(C,B,u){var F=at();try{return r.dynCall_iii(C,B,u)}catch(v){if(It(F),typeof v!="number"&&v!=="longjmp")throw v;r.setThrew(1,0)}},___assert_fail:function(C,B,u,F){PA("Assertion failed: "+Re(C)+", at: "+[B?Re(B):"unknown filename",u,F?Re(F):"unknown function"])},___setErrNo:function(C){return r.___errno_location&&(h[r.___errno_location()>>2]=C),C},_abort:function(){r.abort()},_emscripten_memcpy_big:function(C,B,u){return o.set(o.subarray(B,B+u),C),C},_llvm_floor_f64:jt,DYNAMICTOP_PTR:N,tempDoublePtr:yA,ABORT:Fe,STACKTOP:k,STACK_MAX:x};var As=r.asm(r.asmGlobalArg,r.asmLibraryArg,s);r.asm=As,r.___errno_location=function(){return r.asm.___errno_location.apply(null,arguments)};var yo=r._emscripten_replace_memory=function(){return r.asm._emscripten_replace_memory.apply(null,arguments)};r._free=function(){return r.asm._free.apply(null,arguments)};var Ne=r._malloc=function(){return r.asm._malloc.apply(null,arguments)};r._memcpy=function(){return r.asm._memcpy.apply(null,arguments)},r._memset=function(){return r.asm._memset.apply(null,arguments)},r._sbrk=function(){return r.asm._sbrk.apply(null,arguments)},r._stb_vorbis_js_channels=function(){return r.asm._stb_vorbis_js_channels.apply(null,arguments)},r._stb_vorbis_js_close=function(){return r.asm._stb_vorbis_js_close.apply(null,arguments)},r._stb_vorbis_js_decode=function(){return r.asm._stb_vorbis_js_decode.apply(null,arguments)},r._stb_vorbis_js_open=function(){return r.asm._stb_vorbis_js_open.apply(null,arguments)},r._stb_vorbis_js_sample_rate=function(){return r.asm._stb_vorbis_js_sample_rate.apply(null,arguments)},r.establishStackSpace=function(){return r.asm.establishStackSpace.apply(null,arguments)},r.getTempRet0=function(){return r.asm.getTempRet0.apply(null,arguments)},r.runPostSets=function(){return r.asm.runPostSets.apply(null,arguments)},r.setTempRet0=function(){return r.asm.setTempRet0.apply(null,arguments)},r.setThrew=function(){return r.asm.setThrew.apply(null,arguments)};var be=r.stackAlloc=function(){return r.asm.stackAlloc.apply(null,arguments)},It=r.stackRestore=function(){return r.asm.stackRestore.apply(null,arguments)},at=r.stackSave=function(){return r.asm.stackSave.apply(null,arguments)};function le(I){this.name="ExitStatus",this.message="Program terminated with exit("+I+")",this.status=I}function gt(I){I=I||r.arguments,!(_A>0)&&(function(){if(r.preRun)for(typeof r.preRun=="function"&&(r.preRun=[r.preRun]);r.preRun.length;)fo(r.preRun.shift());Qe(Xt)}(),!(_A>0)&&(r.calledRun||(r.setStatus?(r.setStatus("Running..."),setTimeout(function(){setTimeout(function(){r.setStatus("")},1),C()},1)):C())));function C(){!r.calledRun&&(r.calledRun=!0,Fe||(rt||(rt=!0,Qe(ot)),Qe(Wt),r.onRuntimeInitialized&&r.onRuntimeInitialized(),function(){if(r.postRun)for(typeof r.postRun=="function"&&(r.postRun=[r.postRun]);r.postRun.length;)uo(r.postRun.shift());Qe(zt)}()))}}function Qr(I,C){(!C||!r.noExitRuntime||I!==0)&&(r.noExitRuntime||(Fe=!0,Yt=I,k=T,Qe(_t),lo=!0,r.onExit&&r.onExit(I)),r.quit(I,new le(I)))}function PA(I){throw r.onAbort&&r.onAbort(I),I!==void 0?(Ut(I),TA(I),I=JSON.stringify(I)):I="",Fe=!0,Yt=1,"abort("+I+"). Build with -s ASSERTIONS=1 for more info."}if(r.dynCall_iii=function(){return r.asm.dynCall_iii.apply(null,arguments)},r.asm=As,r.ccall=Kt,r.cwrap=function(C,B,u,F){var v=(u=u||[]).every(function(W){return W==="number"});return B!=="string"&&v&&!F?Jt(C):function(){return Kt(C,B,u,arguments,F)}},le.prototype=Error(),le.prototype.constructor=le,ce=function I(){r.calledRun||gt(),r.calledRun||(ce=I)},r.run=gt,r.abort=PA,r.preInit)for(typeof r.preInit=="function"&&(r.preInit=[r.preInit]);r.preInit.length>0;)r.preInit.pop()();r.noExitRuntime=!0,gt(),r.onRuntimeInitialized=()=>{_s=!0,zs()},vA.decode=function(I){return function(B){if(!_s)throw Error("Not initialized");var u={};function F(te){return new Int32Array(r.HEAPU8.buffer,te,1)[0]}function v(te,Ct){var Le=new ArrayBuffer(Ct*Float32Array.BYTES_PER_ELEMENT),se=new Float32Array(Le);return se.set(new Float32Array(r.HEAPU8.buffer,te,Ct)),se}u.open=r.cwrap("stb_vorbis_js_open","number",[]),u.close=r.cwrap("stb_vorbis_js_close","void",["number"]),u.channels=r.cwrap("stb_vorbis_js_channels","number",["number"]),u.sampleRate=r.cwrap("stb_vorbis_js_sample_rate","number",["number"]),u.decode=r.cwrap("stb_vorbis_js_decode","number",["number","number","number","number","number"]);var W,G,BA,nA,oA=u.open(),eA=(W=B,G=B.byteLength,BA=r._malloc(G),(nA=new Uint8Array(r.HEAPU8.buffer,BA,G)).set(new Uint8Array(W,0,G)),nA),q=r._malloc(4),mA=r._malloc(4),FA=u.decode(oA,eA.byteOffset,eA.byteLength,q,mA);if(r._free(eA.byteOffset),FA<0)throw u.close(oA),r._free(q),Error("stbvorbis decode failed: "+FA);for(var RA=u.channels(oA),GA=Array(RA),zA=new Int32Array(r.HEAPU32.buffer,F(q),RA),xA=0;xA=0&&(s=this.workletProcessorChannels[t]),e.messageType){case AA.noteOn:this.noteOn(t,A[0],A[1],A[2]);break;case AA.noteOff:this.noteOff(t,A);break;case AA.pitchWheel:this.pitchWheel(t,A[0],A[1]);break;case AA.ccChange:this.controllerChange(t,A[0],A[1],A[2]);break;case AA.customcCcChange:s.customControllers[A[0]]=A[1];break;case AA.killNote:this.killNote(t,A);break;case AA.programChange:this.programChange(t,A[0],A[1]);break;case AA.channelPressure:this.channelPressure(t,A);break;case AA.polyPressure:this.polyPressure(t,A[0],A[1]);break;case AA.ccReset:t===bA?this.resetAllControllers():this.resetControllers(t);break;case AA.systemExclusive:this.systemExclusive(A);break;case AA.setChannelVibrato:if(t===bA)for(let E=0;E{let t=(A.midiControllers[gA+P.pitchWheelRange]>>7)+(A.midiControllers[gA+P.pitchWheelRange]&127)/127;return{voicesAmount:A.voices.length,pitchBend:A.midiControllers[gA+P.pitchWheel],pitchBendRangeSemitones:t,isMuted:A.isMuted,isDrum:A.drumChannel}});this.post({messageType:pA.channelProperties,messageData:e})}function No(e,A,t){let s=e,n=A<<7|t;return e===127&&A===127&&t===127?{midiNote:-1,centTuning:null}:{midiNote:s,centTuning:n*.0061}}function en(e,A=0){let t=e[0];if(!(this.deviceID!==bA&&e[1]!==127&&this.deviceID!==e[1]))switch(t){default:Y(`%cUnrecognized SysEx: %c${hA(e)}`,a.warn,a.unrecognized);break;case 126:case 127:switch(e[2]){case 4:let s;switch(e[3]){case 1:let n=e[5]<<7|e[4];this.setMIDIVolume(n/16384),m(`%cMaster Volume. Volume: %c${n}`,a.info,a.value);break;case 2:let E=((e[5]<<7|e[4])-8192)/8192;this.setMasterPan(E),m(`%cMaster Pan. Pan: %c${E}`,a.info,a.value);break;case 3:let i=(e[5]<<7|e[6])-8192;s=Math.floor(i/81.92),this.setMasterTuning(s),m(`%cMaster Fine Tuning. Cents: %c${s}`,a.info,a.value);break;case 4:s=(e[5]-64)*100,this.setMasterTuning(s),m(`%cMaster Coarse Tuning. Cents: %c${s}`,a.info,a.value);break;default:Y(`%cUnrecognized MIDI Device Control Real-time message: %c${hA(e)}`,a.warn,a.unrecognized)}break;case 9:e[3]===1?(m("%cGM system on",a.info),this.system="gm"):e[3]===3?(m("%cGM2 system on",a.info),this.system="gm2"):(m("%cGM system off, defaulting to GS",a.info),this.system="gs");break;case 8:switch(e[3]){case 2:case 7:let n=4;e[3]===7&&n++;let o=e[n++],E=e[n++];for(let h=0;h>1&1)===1&&this.setOctaveTuning(15+A,i);for(let h=0;h<7;h++)(e[5]>>h&1)===1&&this.setOctaveTuning(7+h+A,i);for(let h=0;h<7;h++)(e[6]>>h&1)===1&&this.setOctaveTuning(h+A,i);m(`%cMIDI Octave Scale ${e[3]===8?"(1 byte)":"(2 bytes)"} tuning via Tuning: %c${i.join(" ")}`,a.info,a.value);break;default:Y(`%cUnrecognized MIDI Tuning standard message: %c${hA(e)}`,a.warn,a.unrecognized);break}break;default:Y(`%cUnrecognized MIDI Realtime/non realtime message: %c${hA(e)}`,a.warn,a.unrecognized)}break;case 65:if(e[2]===66&&e[3]===18){let s=e[7];if(e[6]===127){s===0?(m("%cGS system on",a.info),this.system="gs"):s===127&&(m("%cGS system off, switching to GM2",a.info),this.system="gm2");return}else if(e[4]===64){if((e[5]&16)>0){let n=[9,0,1,2,3,4,5,6,7,8,10,11,12,13,14,15][e[5]&15]+A;switch(e[6]){default:break;case 21:let o=s>0&&e[5]>>4;this.setDrums(n,o),m(`%cChannel %c${n}%c ${o?"is now a drum channel":"now isn't a drum channel"}%c via: %c${hA(e)}`,a.info,a.value,a.recognized,a.info,a.value);return;case 22:let E=s-64;this.transposeChannel(n,E),m(`%cChannel %c${n}%c pitch shift. Semitones %c${E}%c, with %c${hA(e)}`,a.info,a.recognized,a.info,a.value,a.info,a.value);return;case 64:case 65:case 66:case 67:case 68:case 69:case 70:case 71:case 72:case 73:case 74:case 75:let i=s-64;m(`%cChannel %c${n}%c tuning. Cents %c${i}%c, with %c${hA(e)}`,a.info,a.recognized,a.info,a.value,a.info,a.value),this.setChannelTuning(n,i)}}else if(e[5]===0&&e[6]===6){m(`%cRoland GS Master Pan set to: %c${s}%c with: %c${hA(e)}`,a.info,a.value,a.info,a.value),this.setMasterPan((s-64)/64);return}else if(e[5]===0&&e[6]===5){let n=s-64;m(`%cRoland GS Master Key-Shift set to: %c${n}%c with: %c${hA(e)}`,a.info,a.value,a.info,a.value),this.setMasterTuning(n*100);return}else if(e[5]===0&&e[6]===4){m(`%cRoland GS Master Volume set to: %c${s}%c with: %c${hA(e)}`,a.info,a.value,a.info,a.value),this.setMIDIVolume(s/127);return}}Y(`%cUnrecognized Roland %cGS %cSysEx: %c${hA(e)}`,a.warn,a.recognized,a.warn,a.unrecognized);return}else if(e[2]===22&&e[3]===18&&e[4]===16){this.setMIDIVolume(e[7]/100),m(`%cRoland Master Volume control set to: %c${e[7]}%c via: %c${hA(e)}`,a.info,a.value,a.info,a.value);return}else{Y(`%cUnrecognized Roland SysEx: %c${hA(e)}`,a.warn,a.unrecognized);return}case 67:if(e[2]===76)if(e[3]===0&&e[4]===0)switch(e[5]){case 4:let s=e[6];this.setMIDIVolume(s/127),m(`%cXG master volume. Volume: %c${s}`,a.info,a.recognized);break;case 6:let n=e[6]-64;this.transposeAllChannels(n),m(`%cXG master transpose. Volume: %c${n}`,a.info,a.recognized);break;case 126:m("%cXG system on",a.info),this.system="xg";break}else if(e[3]===8){if(this.system!=="xg")return;let s=e[4]+A,n=e[6];switch(e[5]){case 1:this.controllerChange(s,p.bankSelect,n);break;case 2:this.controllerChange(s,p.lsbForControl0BankSelect,n);break;case 3:this.programChange(s,n);break;case 11:this.controllerChange(s,p.mainVolume,n);break;case 14:let o=n;o===0&&(o=Math.floor(Math.random()*127)),this.controllerChange(s,p.pan,o);break;case 19:this.controllerChange(s,p.effects1Depth,n);break;case 18:this.controllerChange(s,p.effects3Depth,n);break;default:Y(`%cUnrecognized Yamaha XG Part Setup: %c${e[5].toString(16).toUpperCase()}`,a.warn,a.unrecognized)}}else this.system==="xg"&&Y(`%cUnrecognized Yamaha XG SysEx: %c${hA(e)}`,a.warn,a.unrecognized);else this.system==="xg"&&Y(`%cUnrecognized Yamaha SysEx: %c${hA(e)}`,a.warn,a.unrecognized);break}}var Ze=[];function tn(){Ze=[]}function bo(e,A,t,s){Ze[t]=!1,s({channel:e,sampleID:t,sampleData:A.getAudioData()}),Ze[t]=!0}function ye(e){if(e===null||typeof e!="object")return e;if(e instanceof Int16Array)return new Int16Array(e);let A=Array.isArray(e)?[]:{};for(let t in e)e.hasOwnProperty(t)&&(typeof e[t]=="object"&&e[t]!==null?A[t]=ye(e[t]):e[t]instanceof Int16Array?A[t]=new Int16Array(e[t]):A[t]=e[t]);return A}function sn(e,A,t,s,n,o,E,i,h=!1){let c,f=i[A][t];return f!==void 0?(c=f.map(ye),c.forEach(Q=>{Q.startTime=n})):(c=s.getSamplesAndGenerators(A,t).reduce((Q,l)=>{let d=l.sampleID+s.sampleIDOffset;if(Ze[d]!==!0&&bo(e,l.sample,d,E),l.sample.sampleData===void 0)return Y(`Discarding invalid sample: ${l.sample.sampleName}`),Q;let S=new Int16Array(60);for(let r=0;r<60;r++)S[r]=Ss(r,l.presetGenerators,l.instrumentGenerators);S[g.initialAttenuation]=Math.floor(S[g.initialAttenuation]*.4);let D=l.sample.samplePitch;S[g.overridingRootKey]>-1&&(D=S[g.overridingRootKey]);let k=A;S[g.keyNum]>-1&&(k=S[g.keyNum]);let x=l.sample.sampleLoopStartIndex/2+(S[g.startloopAddrsOffset]+S[g.startloopAddrsCoarseOffset]*32768),M=l.sample.sampleLoopEndIndex/2+(S[g.endloopAddrsOffset]+S[g.endloopAddrsCoarseOffset]*32768),N=S[g.sampleModes],Z=l.sample.getAudioData().length;x=Math.min(Math.max(0,x),Z),M=Math.min(Math.max(0,M),Z),M-x<1&&(N=0);let T={sampleID:d,playbackStep:l.sample.sampleRate/o*Math.pow(2,l.sample.samplePitchCorrection/1200),cursor:S[g.startAddrsOffset]+S[g.startAddrsCoarseOffset]*32768,rootKey:D,loopStart:x,loopEnd:M,end:Math.floor(l.sample.sampleData.length)-1+(S[g.endAddrOffset]+S[g.endAddrsCoarseOffset]*32768),loopingMode:N};return S[g.velocity]>-1&&(t=S[g.velocity]),h&&Cs([{Sample:l.sample.sampleName,Generators:S,Modulators:l.modulators.map(r=>r.debugString()),Velocity:t,TargetKey:k,MidiNote:A,WorkletSample:T}]),Q.push({filter:ye(vs),generators:S,modulators:l.modulators,modulatedGenerators:new Int16Array(60),sample:T,velocity:t,midiNote:A,pressure:0,channelNumber:e,startTime:n,targetKey:k,currentTuningCalculated:1,currentTuningCents:0,releaseStartTime:1/0,finished:!1,isInRelease:!1,currentModEnvValue:0,releaseStartModEnv:1,currentPan:.5,volumeEnvelope:ye(Js)}),Q},[]),i[A][t]=c.map(ye)),c}function nn(e,A,t){if(A.transformAmount===0)return 0;let s;if(A.sourceUsesCC)s=e[A.sourceIndex];else{let h=A.sourceIndex+gA;switch(A.sourceIndex){case P.noController:s=16383;break;case P.noteOnKeyNum:s=t.midiNote<<7;break;case P.noteOnVelocity:s=t.velocity<<7;break;case P.polyPressure:s=t.pressure<<7;break;default:s=e[h];break}}let n=dA[A.sourceCurveType][A.sourcePolarity][A.sourceDirection][s],o;if(A.secSrcUsesCC)o=e[A.secSrcIndex];else{let h=A.secSrcIndex+gA;switch(A.secSrcIndex){case P.noController:o=16383;break;case P.noteOnKeyNum:o=t.midiNote<<7;break;case P.noteOnVelocity:o=t.velocity<<7;break;case P.polyPressure:o=t.pressure<<7;break;default:o=e[h]}}let E=dA[A.secSrcCurveType][A.secSrcPolarity][A.secSrcDirection][o],i=n*E*A.transformAmount;return A.transformType===2?Math.abs(i):i}function VA(e,A,t=-1,s=0){let{modulators:n,generators:o,modulatedGenerators:E}=e;if(t===-1){E.set(o),n.forEach(c=>{E[c.modulatorDestination]+=nn(A,c,e)}),Ae(e);return}let i=new Set([g.initialAttenuation,g.delayVolEnv,g.attackVolEnv,g.holdVolEnv,g.decayVolEnv,g.sustainVolEnv,g.releaseVolEnv,g.keyNumToVolEnvHold,g.keyNumToVolEnvDecay]),h=new Set;n.forEach(c=>{if(c.sourceUsesCC===t&&c.sourceIndex===s||c.secSrcUsesCC===t&&c.secSrcIndex===s){let f=c.modulatorDestination;h.has(f)||(E[f]=o[f],n.forEach(Q=>{Q.modulatorDestination===f&&(E[f]+=nn(A,Q,e))}),h.add(f))}}),[...h].some(c=>i.has(c))&&Ae(e)}var dA=[];for(let e=0;e<4;e++){dA[e]=[[new Float32Array(IA),new Float32Array(IA)],[new Float32Array(IA),new Float32Array(IA)]];for(let A=0;A200&&t<40||this.highPerformanceMode&&t<10||E.isMuted)return;let i=A+E.channelTransposeKeyShift;if(A>127||A<0)return;let h=E.preset.program;this.tunings[h]?.[A]?.midiNote>=0&&(i=this.tunings[h]?.[A].midiNote);let c=sn(e,i,t,E.preset,o,sampleRate,Q=>this.sampleDump(Q.channel,Q.sampleID,Q.sampleData),E.cachedVoices,s),f=E.voices;c.forEach(Q=>{let l=Q.generators[g.exclusiveClass];l!==0&&f.forEach(d=>{d.generators[g.exclusiveClass]===l&&(this.releaseVoice(d),d.modulatedGenerators[g.releaseVolEnv]=-7e3,d.modulatedGenerators[g.releaseModEnv]=-7e3,Ae(d))}),VA(Q,E.midiControllers),Q.currentPan=(Math.max(-500,Math.min(500,Q.modulatedGenerators[g.pan]))+500)/1e3}),this.totalVoicesAmount+=c.length,this.totalVoicesAmount>this.voiceCap&&this.voiceKilling(c.length),f.push(...c),n&&(this.sendChannelProperties(),this.callEvent("noteon",{midiNote:A,channel:e,velocity:t}))}function rn(e,A){if(A>127||A<0){Y("Received a noteOn for note",A,"Ignoring.");return}let t=A+this.workletProcessorChannels[e].channelTransposeKeyShift,s=this.workletProcessorChannels[e].preset.program;if(this.tunings[s]?.[A]?.midiNote>=0&&(t=this.tunings[s]?.[A].midiNote),this.highPerformanceMode&&!this.workletProcessorChannels[e].drumChannel){this.killNote(e,t);return}this.workletProcessorChannels[e].voices.forEach(o=>{o.midiNote!==t||o.isInRelease===!0||(this.workletProcessorChannels[e].holdPedal?this.workletProcessorChannels[e].sustainedVoices.push(o):this.releaseVoice(o))}),this.callEvent("noteoff",{midiNote:A,channel:e})}function In(e,A){this.workletProcessorChannels[e].voices.forEach(t=>{t.midiNote===A&&(t.modulatedGenerators[g.releaseVolEnv]=-12e3,this.releaseVoice(t))})}function an(e,A=!1){let t=this.workletProcessorChannels[e].voices;A?(t.length=0,this.workletProcessorChannels[e].sustainedVoices.length=0,this.sendChannelProperties()):(t.forEach(s=>{s.isInRelease||this.releaseVoice(s)}),this.workletProcessorChannels[e].sustainedVoices.forEach(s=>{this.releaseVoice(s)}))}function gn(e=!1){m("%cStop all received!",a.info);for(let A=0;AVA(n,this.workletProcessorChannels[e].midiControllers,0,P.pitchWheel)),this.sendChannelProperties()}function fn(e,A){let t=this.workletProcessorChannels[e];t.midiControllers[gA+P.channelPressure]=A<<7,this.workletProcessorChannels[e].voices.forEach(s=>VA(s,t.midiControllers,0,P.channelPressure)),this.callEvent("channelpressure",{channel:e,pressure:A})}function un(e,A,t){this.workletProcessorChannels[e].voices.forEach(s=>{s.midiNote===A&&(s.pressure=t,VA(s,this.workletProcessorChannels[e].midiControllers,0,P.polyPressure))}),this.callEvent("polypressure",{channel:e,midiNote:A,pressure:t})}function dn(e,A){if(A.length!==12)throw new Error("Tuning is not the length of 12.");this.workletProcessorChannels[e].channelOctaveTuning=A}function mn(e,A,t,s=!1){let n=this.workletProcessorChannels[e];if(A>=p.lsbForControl1ModulationWheel&&A<=p.lsbForControl13EffectControl2&&A!==p.lsbForControl6DataEntry){let o=A-32;if(n.lockedControllers[o])return;n.midiControllers[o]=n.midiControllers[o]&16256|t&127,n.voices.forEach(E=>VA(E,n.midiControllers,1,o))}switch(A){case p.allNotesOff:this.stopAll(e);break;case p.allSoundOff:this.stopAll(e,!0);break;case p.bankSelect:let o=t;if(!s){switch(this.system){case"gm":m(`%cIgnoring the Bank Select (${t}), as the synth is in GM mode.`,a.info);return;case"xg":o===120||o===126||o===127?this.setDrums(e,!0):this.setDrums(e,!1);break;case"gm2":o===120&&(n.drumChannel=!0,this.callEvent("drumchange",{channel:e,isDrumChannel:!0}))}n.drumChannel&&(o=128),o===128&&!n.drumChannel&&(o=n.midiControllers[p.bankSelect])}n.midiControllers[p.bankSelect]=o;break;case p.lsbForControl0BankSelect:this.system==="xg"?n.drumChannel||t!==127&&(n.midiControllers[p.bankSelect]=t):this.system==="gm2"&&(n.midiControllers[p.bankSelect]=t);break;case p.RPNLsb:n.RPValue=n.RPValue<<7|t,n.dataEntryState=fA.RPFine;break;case p.RPNMsb:n.RPValue=t,n.dataEntryState=fA.RPCoarse;break;case p.NRPNMsb:n.NRPCoarse=t,n.dataEntryState=fA.NRPCoarse;break;case p.NRPNLsb:n.NRPFine=t,n.dataEntryState=fA.NRPFine;break;case p.dataEntryMsb:this.dataEntryCoarse(e,t);break;case p.lsbForControl6DataEntry:this.dataEntryFine(e,t);break;case p.resetAllControllers:this.resetControllers(e);break;case p.sustainPedal:t>=64?n.holdPedal=!0:(n.holdPedal=!1,n.sustainedVoices.forEach(E=>{this.releaseVoice(E)}),n.sustainedVoices=[]);break;default:if(n.lockedControllers[A])return;n.midiControllers[A]=t<<7,n.voices.forEach(E=>VA(E,n.midiControllers,1,A)),this.callEvent("controllerchange",{channel:e,controllerNumber:A,controllerValue:t});break}}function pn(e){this.midiVolume=e,this.setMasterPan(this.pan)}function Sn(e){this.masterGain=e*Rt,this.setMasterPan(this.pan)}function yn(e){this.pan=e,e=e/2+.5,this.panLeft=(1-e)*this.currentGain,this.panRight=e*this.currentGain}function Dn(e,A){A&&this.stopAll(e,!0),this.workletProcessorChannels[e].isMuted=A,this.sendChannelProperties(),this.callEvent("mutechannel",{channel:e,isMuted:A})}function kn(e){this.workletProcessorChannels[e].lockVibrato=!0,this.workletProcessorChannels[e].channelVibrato.rate=0,this.workletProcessorChannels[e].channelVibrato.delay=0,this.workletProcessorChannels[e].channelVibrato.depth=0}function wn(e,A,t,s){this.workletProcessorChannels[e].lockVibrato||(this.workletProcessorChannels[e].channelVibrato.rate=t,this.workletProcessorChannels[e].channelVibrato.delay=s,this.workletProcessorChannels[e].channelVibrato.depth=A)}function Fn(e,A){let t=this.workletProcessorChannels[e],s=()=>{t.channelVibrato.delay===0&&t.channelVibrato.rate===0&&t.channelVibrato.depth===0&&(t.channelVibrato.depth=50,t.channelVibrato.rate=8,t.channelVibrato.delay=.6)};switch(t.dataEntryState){default:case fA.Idle:break;case fA.NRPFine:if(this.system!=="gs")return;switch(t.NRPCoarse){default:if(A===64)return;Y(`%cUnrecognized NRPN for %c${e}%c: %c(0x${t.NRPCoarse.toString(16).toUpperCase()} 0x${t.NRPFine.toString(16).toUpperCase()})%c data value: %c${A}`,a.warn,a.recognized,a.warn,a.unrecognized,a.warn,a.value);break;case 1:switch(t.NRPFine){default:if(A===64)return;Y(`%cUnrecognized NRPN for %c${e}%c: %c(0x${t.NRPCoarse.toString(16)} 0x${t.NRPFine.toString(16)})%c data value: %c${A}`,a.warn,a.recognized,a.warn,a.unrecognized,a.warn,a.value);break;case 8:if(t.lockVibrato||A===64)return;s(),t.channelVibrato.rate=A/64*8,m(`%cVibrato rate for channel %c${e}%c is now set to %c${t.channelVibrato.rate}%cHz.`,a.info,a.recognized,a.info,a.value,a.info);break;case 9:if(t.lockVibrato||A===64)return;s(),t.channelVibrato.depth=A/2,m(`%cVibrato depth for %c${e}%c is now set to %c${t.channelVibrato.depth}%c cents range of detune.`,a.info,a.recognized,a.info,a.value,a.info);break;case 10:if(t.lockVibrato||A===64)return;s(),t.channelVibrato.delay=A/64/3,m(`%cVibrato delay for %c${e}%c is now set to %c${t.channelVibrato.delay}%c seconds.`,a.info,a.recognized,a.info,a.value,a.info);break;case 32:let o=A;this.controllerChange(e,p.brightness,A),m(`%cFilter cutoff for %c${e}%c is now set to %c${o}`,a.info,a.recognized,a.info,a.value)}break;case 29:if(!t.drumChannel)return;let n=A;this.controllerChange(e,p.effects1Depth,n),m(`%cGS Drum reverb for %c${e}%c: %c${n}`,a.info,a.recognized,a.info,a.value);break}break;case fA.RPCoarse:case fA.RPFine:switch(t.RPValue){default:Y(`%cUnrecognized RPN for %c${e}%c: %c(0x${t.RPValue.toString(16)})%c data value: %c${A}`,a.warn,a.recognized,a.warn,a.unrecognized,a.warn,a.value);break;case 0:t.midiControllers[gA+P.pitchWheelRange]=A<<7,m(`%cChannel ${e} bend range. Semitones: %c${A}`,a.info,a.value);break;case 2:this.setChannelTuningSemitones(e,A-64);break;case 1:this.setChannelTuning(e,A-64,!1);break;case 5:this.setModulationDepth(e,A*100);break;case 16383:this.resetParameters(e);break}}}function Rn(e,A){let t=this.workletProcessorChannels[e];switch(t.dataEntryState){default:break;case fA.RPCoarse:case fA.RPFine:switch(t.RPValue){default:break;case 0:if(A===0)break;t.midiControllers[gA+P.pitchWheelRange]|=A;let s=(t.midiControllers[gA+P.pitchWheelRange]>>7)+A/127;m(`%cChannel ${e} bend range. Semitones: %c${s}`,a.info,a.value);break;case 1:let o=t.customControllers[iA.channelTuning]<<7|A;this.setChannelTuning(e,o*.01220703125);break;case 5:let i=t.customControllers[iA.modulationMultiplier]*50+A/128*100;this.setModulationDepth(e,i);break;case 16383:this.resetParameters(e);break}}}function Gn(){m("%cResetting all controllers!",a.info),this.callEvent("allcontrollerreset",void 0);for(let e=0;e{this.workletProcessorChannels[e].lockedControllers[s]&&this.callEvent("controllerchange",{channel:e,controllerNumber:s,controllerValue:this.workletProcessorChannels[e].midiControllers[s]>>7})};if(t(p.mainVolume),t(p.pan),t(p.expressionController),t(p.modulationWheel),t(p.effects3Depth),t(p.effects1Depth),this.workletProcessorChannels[e].lockedControllers[gA+P.pitchWheel]){let s=this.workletProcessorChannels[e].midiControllers[gA+P.pitchWheel],n=s>>7,o=s&127;this.callEvent("pitchwheel",{channel:e,MSB:n,LSB:o})}}this.tunings=[],this.tunings=[];for(let e=0;e<127;e++)this.tunings.push([]);this.setMIDIVolume(1),this.system=He}function xn(e){let A=this.workletProcessorChannels[e],s=A.lockedControllers.reduce((o,E,i)=>(E&&o.push(i),o),[]).map(o=>({ccNum:o,ccVal:A.midiControllers[o]}));A.channelOctaveTuning.fill(0),A.midiControllers.set(KA),A.channelVibrato={rate:0,depth:0,delay:0},A.holdPedal=!1,s.forEach(o=>{A.midiControllers[o.ccNum]=o.ccVal});let n=A.customControllers[iA.channelTransposeFine];A.customControllers.set(dt),A.customControllers[iA.channelTransposeFine]=n,this.resetParameters(e)}function Mn(e){let A=this.workletProcessorChannels[e];A.NRPCoarse=0,A.NRPFine=0,A.RPValue=0,A.dataEntryState=fA.Idle}function Nn(){let e=4;for(let s of this.instruments)e+=s.instrumentZones.reduce((n,o)=>(o.generators=o.generators.filter(E=>E.generatorType!==g.sampleID&&E.generatorType!==g.keyRange&&E.generatorType!==g.velRange),(o.velRange.max!==127||o.velRange.min!==0)&&o.generators.unshift({generatorType:g.velRange,generatorValue:o.velRange.max<<8|o.velRange.min}),(o.keyRange.max!==127||o.keyRange.min!==0)&&o.generators.unshift({generatorType:g.keyRange,generatorValue:o.keyRange.max<<8|o.keyRange.min}),o.isGlobal||o.generators.push({generatorType:g.sampleID,generatorValue:this.samples.indexOf(o.sample)}),o.generators.length*4+n),0);let A=new H(e),t=0;for(let s of this.instruments)for(let n of s.instrumentZones){n.generatorZoneStartIndex=t;for(let o of n.generators)J(A,o.generatorType),J(A,o.generatorValue),t++}return cA(A,0),tA(new j("igen",A.length,A))}function bn(e,A,t,s,n){let o=this.samples.map((c,f)=>{t&&c.compressSample(s,n);let Q=c.getRawData();return m(`%cEncoded sample %c${f}. ${c.sampleName}%c of %c${this.samples.length}`,a.info,a.recognized,a.info,a.recognized),Q}),E=this.samples.reduce((c,f,Q)=>c+o[Q].length+46,0),i=new H(E);this.samples.forEach((c,f)=>{let Q=o[f],l,d,S=Q.length;c.isCompressed?(l=i.currentIndex,d=l+Q.length):(l=i.currentIndex/2,d=l+Q.length/2,S+=46),e.push(l),i.set(Q,i.currentIndex),i.currentIndex+=S,A.push(d)});let h=tA(new j("smpl",i.length,i),new H([115,100,116,97]));return tA(new j("LIST",h.length,h))}function Ln(e,A){let s=new H(46*(this.samples.length+1));return this.samples.forEach((n,o)=>{wA(s,n.sampleName,20);let E=e[o];cA(s,E);let i=A[o];cA(s,i);let h=n.sampleLoopStartIndex/2+E,c=n.sampleLoopEndIndex/2+E;n.isCompressed&&(h-=E,c-=E),cA(s,h),cA(s,c),cA(s,n.sampleRate),s[s.currentIndex++]=n.samplePitch,s[s.currentIndex++]=n.samplePitchCorrection,J(s,n.sampleLink),J(s,n.sampleType)}),wA(s,"EOS",46),tA(new j("shdr",s.length,s))}function Un(){let e=10;for(let s of this.instruments)e+=s.instrumentZones.reduce((n,o)=>o.modulators.length*10+n,0);let A=new H(e),t=0;for(let s of this.instruments)for(let n of s.instrumentZones){n.modulatorZoneStartIndex=t;for(let o of n.modulators)J(A,o.modulatorSource),J(A,o.modulatorDestination),J(A,o.transformAmount),J(A,o.modulationSecondarySrc),J(A,o.transformType),t++}return re(A,0,10),tA(new j("imod",A.length,A))}function Tn(){let e=this.instruments.reduce((o,E)=>E.instrumentZones.length*4+o,4),A=new H(e),t=0,s=0,n=0;for(let o of this.instruments){o.instrumentZoneIndex=t;for(let E of o.instrumentZones)E.zoneID=t,J(A,s),J(A,n),s+=E.generators.length,n+=E.modulators.length,t++}return J(A,s),J(A,n),tA(new j("ibag",A.length,A))}function Hn(){let e=this.instruments.length*22+22,A=new H(e),t=0,s=0;for(let n of this.instruments)wA(A,n.instrumentName,20),J(A,t),t+=n.instrumentZones.length,n.instrumentID=s,s++;return wA(A,"EOI",20),J(A,t),tA(new j("inst",A.length,A))}function Yn(){let e=4;for(let s of this.presets)e+=s.presetZones.reduce((n,o)=>(o.generators=o.generators.filter(E=>E.generatorType!==g.instrument&&E.generatorType!==g.keyRange&&E.generatorType!==g.velRange),(o.velRange.max!==127||o.velRange.min!==0)&&o.generators.unshift({generatorType:g.velRange,generatorValue:o.velRange.max<<8|o.velRange.min}),(o.keyRange.max!==127||o.keyRange.min!==0)&&o.generators.unshift({generatorType:g.keyRange,generatorValue:o.keyRange.max<<8|o.keyRange.min}),o.isGlobal||o.generators.push({generatorType:g.instrument,generatorValue:this.instruments.indexOf(o.instrument)}),o.generators.length*4+n),0);let A=new H(e),t=0;for(let s of this.presets)for(let n of s.presetZones){n.generatorZoneStartIndex=t;for(let o of n.generators)J(A,o.generatorType),J(A,o.generatorValue);t+=n.generators.length}return J(A,0),J(A,0),tA(new j("pgen",A.length,A))}function Jn(){let e=10;for(let s of this.presets)e+=s.presetZones.reduce((n,o)=>o.modulators.length*10+n,0);let A=new H(e),t=0;for(let s of this.presets)for(let n of s.presetZones){n.modulatorZoneStartIndex=t;for(let o of n.modulators)J(A,o.modulatorSource),J(A,o.modulatorDestination),J(A,o.transformAmount),J(A,o.modulationSecondarySrc),J(A,o.transformType),t++}return re(A,0,10),tA(new j("pmod",A.length,A))}function qn(){let e=this.presets.reduce((o,E)=>E.presetZones.length*4+o,4),A=new H(e),t=0,s=0,n=0;for(let o of this.presets){o.presetZoneStartIndex=t;for(let E of o.presetZones)E.zoneID=t,J(A,s),J(A,n),s+=E.generators.length,n+=E.modulators.length,t++}return J(A,s),J(A,n),tA(new j("pbag",A.length,A))}function Kn(){let e=this.presets.length*38+38,A=new H(e),t=0;for(let s of this.presets)wA(A,s.presetName,20),J(A,s.program),J(A,s.bank),J(A,t),cA(A,s.library),cA(A,s.genre),cA(A,s.morphology),t+=s.presetZones.length;return wA(A,"EOP",20),J(A,0),J(A,0),J(A,t),cA(A,0),cA(A,0),cA(A,0),tA(new j("phdr",A.length,A))}var Lo={compress:!1,compressionQuality:.5,compressionFunction:void 0};function vn(e=Lo){if(e.compress&&typeof e.compressionFunction!="function")throw new TypeError("No compression function supplied but compression enabled.");DA("%cSaving soundfont...",a.info),m(`%cCompression: %c${e?.compress||"false"}%c quality: %c${e?.compressionQuality||"none"}`,a.info,a.recognized,a.info,a.recognized),m("%cWriting INFO...",a.info);let A=[];this.soundFontInfo.ISFT="SpessaSynth",e?.compress&&(this.soundFontInfo.ifil="3.0");for(let[Z,T]of Object.entries(this.soundFontInfo))if(Z==="ifil"||Z==="iver"){let r=parseInt(T.split(".")[0]),sA=parseInt(T.split(".")[1]),K=new H(4);J(K,r),J(K,sA),A.push(tA(new j(Z,4,K)))}else{let r=new H(T.length);wA(r,T),A.push(tA(new j(Z,T.length,r)))}let t=de([new H([73,78,70,79]),...A]),s=tA(new j("LIST",t.length,t));m("%cWriting SDTA...",a.info);let n=[],o=[],E=bn.call(this,n,o,e?.compress,e?.compressionQuality||.5,e.compressionFunction);m("%cWriting PDTA...",a.info),m("%cWriting SHDR...",a.info);let i=Ln.call(this,n,o);m("%cWriting IGEN...",a.info);let h=Nn.call(this);m("%cWriting IMOD...",a.info);let c=Un.call(this);m("%cWriting IBAG...",a.info);let f=Tn.call(this);m("%cWriting INST...",a.info);let Q=Hn.call(this),l=Yn.call(this);m("%cWriting PMOD...",a.info);let d=Jn.call(this);m("%cWriting PBAG...",a.info);let S=qn.call(this);m("%cWriting PHDR...",a.info);let D=Kn.call(this),k=de([new H([112,100,116,97]),D,S,d,l,Q,f,c,h,i]),x=tA(new j("LIST",k.length,k));m("%cWriting the output file...",a.info);let M=de([new H([115,102,98,107]),s,E,x]),N=tA(new j("RIFF",M.length,M));return m(`%cSaved succesfully! Final file size: %c${N.length}`,a.info,a.recognized),X(),N}var ee=class e{constructor(A=void 0){this.soundFontInfo={},this.presets=[],this.samples=[],this.instruments=[],A?.presets&&(this.presets.push(...A.presets),this.soundFontInfo=A.info)}removeUnusedElements(){this.instruments.forEach(A=>{A.useCount<1&&A.instrumentZones.forEach(t=>{t.isGlobal||t.sample.useCount--})}),this.instruments=this.instruments.filter(A=>A.useCount>0),this.samples=this.samples.filter(A=>A.useCount>0)}deleteInstrument(A){if(A.useCount>0)throw new Error(`Cannot delete an instrument that has ${A.useCount} usages.`);this.instruments.splice(this.instruments.indexOf(A),1),A.deleteInstrument(),this.removeUnusedElements()}deleteSample(A){if(A.useCount>0)throw new Error(`Cannot delete sample that has ${A.useCount} usages.`);this.samples.splice(this.samples.indexOf(A),1),this.removeUnusedElements()}deletePreset(A){A.deletePreset(),this.presets.splice(this.presets.indexOf(A),1),this.removeUnusedElements()}getPresetNoFallback(A,t,s=!1){let n=this.presets.find(o=>o.bank===A&&o.program===t);if(n)return n;if(s!==!1)return A===128?this.presets.find(o=>o.bank===128):this.presets.find(o=>o.program===t)}setSampleIDOffset(A){this.presets.forEach(t=>t.sampleIDOffset=A)}getPreset(A,t){let s=this.presets.find(n=>n.bank===A&&n.program===t);return s||(s=this.presets.find(n=>n.program===t&&n.bank!==128),A===128&&(s=this.presets.find(n=>n.bank===128&&n.program===t),s||(s=this.presets.find(n=>n.bank===128))),s&&Y(`%cPreset ${A}.${t} not found. Replaced with %c${s.presetName} (${s.bank}.${s.program})`,a.warn,a.recognized)),s||(Y(`Preset ${t} not found. Defaulting to`,this.presets[0].presetName),s=this.presets[0]),s}getPresetByName(A){let t=this.presets.find(s=>s.presetName===A);return t||(Y("Preset not found. Defaulting to:",this.presets[0].presetName),t=this.presets[0]),t}static mergeSoundfonts(...A){let t=A.shift(),s=t.presets;for(;A.length;)A.shift().presets.forEach(o=>{s.find(E=>E.bank===o.bank&&E.program===o.program)===void 0&&s.push(o)});return new e({presets:s,info:t.soundFontInfo})}};ee.prototype.write=vn;function Pn(e){DA("%cLoading instruments...",a.info);for(let A=0;AA.deleteZone()),this.presetZones.length=0}deleteZone(A){this.presetZones[A].deleteZone(),this.presetZones.splice(A,1)}preload(A,t){for(let s=A;s{o.sample.isSampleLoaded||o.sample.getAudioData()})}preloadSpecific(A,t){this.getSamplesAndGenerators(A,t).forEach(s=>{s.sample.isSampleLoaded||s.sample.getAudioData()})}getSamplesAndGenerators(A,t){let s=this.foundSamplesAndGenerators[A][t];if(s)return s;if(this.presetZones.length<1)return[];function n(l,d,S){return S>=l&&S<=d}function o(l,d){return l.modulatorSource===d.modulatorSource&&l.modulatorDestination===d.modulatorDestination&&l.modulationSecondarySrc===d.modulationSecondarySrc&&l.transformType===d.transformType}function E(l,d){l.push(...d.filter(S=>!l.find(D=>D.generatorType===S.generatorType)))}function i(l,d){l.push(...d.filter(S=>!l.find(D=>o(S,D))))}let h=[],c=this.presetZones[0].isGlobal?[...this.presetZones[0].generators]:[],f=this.presetZones[0].isGlobal?[...this.presetZones[0].modulators]:[];return this.presetZones.filter(l=>n(l.keyRange.min,l.keyRange.max,A)&&n(l.velRange.min,l.velRange.max,t)&&!l.isGlobal).forEach(l=>{if(l.instrument.instrumentZones.length<1)return;let d=l.generators,S=l.modulators,D=l.instrument.instrumentZones[0].isGlobal?[...l.instrument.instrumentZones[0].generators]:[],k=l.instrument.instrumentZones[0].isGlobal?[...l.instrument.instrumentZones[0].modulators]:[];l.instrument.instrumentZones.filter(M=>n(M.keyRange.min,M.keyRange.max,A)&&n(M.velRange.min,M.velRange.max,t)&&!M.isGlobal).forEach(M=>{let N=[...M.generators],Z=[...M.modulators];E(d,c),E(N,D),i(S,f),i(Z,k),i(Z,ys);let T=[...Z];for(let r=0;ro(sA,z));K!==-1?T[K]=T[K].sumTransform(sA):T.push(sA)}h.push({instrumentGenerators:N,presetGenerators:d,modulators:T,sample:M.sample,sampleID:M.generators.find(r=>r.generatorType===g.sampleID).generatorValue})})}),this.foundSamplesAndGenerators[A][t]=h,h}};var De=class{velRange={min:0,max:127};keyRange={min:0,max:127};isGlobal=!1;generators=[];modulators=[]};var WA=class extends De{sample=void 0;useCount=0;deleteZone(){this.useCount--,!this.isGlobal&&this.sample.useCount--}},Ce=class extends De{instrument=void 0;deleteZone(){this.isGlobal||this.instrument.removeUseCount()}};var Ee=class{constructor(){this.instrumentName="",this.instrumentZones=[],this._useCount=0}addUseCount(){this._useCount++,this.instrumentZones.forEach(A=>A.useCount++)}removeUseCount(){this._useCount--;for(let A=0;AA.deleteZone()),this.instrumentZones.length=0}safeDeleteZone(A){return this.instrumentZones[A].useCount--,this.instrumentZones[A].useCount<1?(this.deleteZone(A),!0):!1}deleteZone(A){this.instrumentZones[A].deleteZone(),this.instrumentZones.splice(A,1)}};var Xe=class extends ge{constructor(A,t){super(),this.program=t&127,this.bank=A>>8&127,A>>31&&(this.bank=128),this.DLSInstrument=new Ee,this.DLSInstrument.addUseCount();let n=new Ce;n.instrument=this.DLSInstrument,this.presetZones=[n]}};function Vn(e){this.verifyHeader(e,"LIST"),this.verifyText(V(e.chunkData,4),"ins ");let A=[];for(;e.chunkData.length>e.chunkData.currentIndex;)A.push(O(e.chunkData));let t=A.find(d=>d.header==="insh");if(!t)throw X(),new Error("No instrument header!");let s=y(t.chunkData,4),n=y(t.chunkData,4),o=y(t.chunkData,4),E=new Xe(n,o),i="unnamedPreset",h=SA(A,"INFO");if(h){let d=O(h.chunkData);for(;d.header!=="INAM";)d=O(h.chunkData);i=V(d.chunkData,d.chunkData.length).trim()}E.presetName=i,E.DLSInstrument.instrumentName=i,jA(`%cParsing %c"${i}"%c...`,a.info,a.recognized,a.info);let c=SA(A,"lrgn");if(!c)throw X(),new Error("No region list!");let f=new WA;f.isGlobal=!0;let Q=SA(A,"lart"),l=SA(A,"lar2");this.readLart(Q,l,f),E.DLSInstrument.instrumentZones.push(f);for(let d=0;d>10&15;x===lA.linear&&k!==lA.linear&&(x=k);let M=s>>14&1,N=s>>15&1;E===g.initialAttenuation&&(N=!N),Q=qA(x,M,N,i.isCC,i.enum)}let l=s>>4&15,d=s>>8&1,S=s>>9&1,D=qA(l,d,S,f.isCC,f.enum);if(h){let k=D;D=Q,Q=k}return new rA({srcEnum:Q,secSrcEnum:D,dest:E,transform:0,amt:n})}function Gt(e,A){let t=e.chunkData,s=[],n=[];y(t,4);let o=y(t,4);for(let E=0;E>16;if(i===0&&h===0&&f===0){let l;switch(c){case R.pan:l=new b(g.pan,Q);break;case R.gain:l=new b(g.initialAttenuation,-Q*10/.4);break;case R.filterCutoff:l=new b(g.initialFilterFc,Q);break;case R.filterQ:l=new b(g.initialFilterQ,Q);break;case R.modLfoFreq:l=new b(g.freqModLFO,Q);break;case R.modLfoDelay:l=new b(g.delayModLFO,Q);break;case R.vibLfoFreq:l=new b(g.freqVibLFO,Q);break;case R.vibLfoDelay:l=new b(g.delayVibLFO,Q);break;case R.volEnvDelay:l=new b(g.delayVolEnv,Q);break;case R.volEnvAttack:l=new b(g.attackVolEnv,Q);break;case R.volEnvHold:l=new b(g.holdVolEnv,Q);break;case R.volEnvDecay:l=new b(g.decayVolEnv,Q);break;case R.volEnvRelease:l=new b(g.releaseVolEnv,Q);break;case R.volEnvSustain:let d=(1e3-Q)/10;l=new b(g.sustainVolEnv,d*10);break;case R.modEnvDelay:l=new b(g.delayModEnv,Q);break;case R.modEnvAttack:l=new b(g.attackModEnv,Q);break;case R.modEnvHold:l=new b(g.holdModEnv,Q);break;case R.modEnvDecay:l=new b(g.decayModEnv,Q);break;case R.modEnvRelease:l=new b(g.releaseModEnv,Q);break;case R.modEnvSustain:let S=1e3-Q;l=new b(g.sustainModEnv,S);break;case R.reverbSend:l=new b(g.reverbEffectsSend,Q);break;case R.chorusSend:l=new b(g.chorusEffectsSend,Q);break;case R.pitch:let D=Math.floor(Q/100),k=Math.floor(Q-D*100);l=new b(g.fineTune,k),s.push(new b(g.coarseTune,D));break}l&&s.push(l)}else{let l=!0;if(h===_.none?i===_.modLfo&&c===R.pitch?s.push(new b(g.modLfoToPitch,Q)):i===_.modLfo&&c===R.gain?s.push(new b(g.modLfoToVolume,Q)):i===_.modLfo&&c===R.filterCutoff?s.push(new b(g.modLfoToFilterFc,Q)):i===_.vibratoLfo&&c===R.pitch?s.push(new b(g.vibLfoToPitch,Q)):i===_.modEnv&&c===R.pitch?s.push(new b(g.modEnvToPitch,Q)):i===_.modEnv&&c===R.filterCutoff?s.push(new b(g.modEnvToFilterFc,Q)):i===_.keyNum&&c===R.volEnvHold?s.push(new b(g.keyNumToVolEnvHold,Q/-127)):i===_.keyNum&&c===R.volEnvDecay?s.push(new b(g.keyNumToVolEnvDecay,Q/-127)):i===_.keyNum&&c===R.modEnvHold?s.push(new b(g.keyNumToModEnvHold,Q/-127)):i===_.keyNum&&c===R.modEnvDecay?s.push(new b(g.keyNumToModEnvDecay,Q/-127)):l=!1:l=!1,l===!1){let d=Zn(i,h,c,f,Q);d?(n.push(d),m("%cSucceeded converting to SF2 Modulator!",a.recognized)):Y("Failed converting to SF2 Modulator!")}}}return n.push(new rA({srcEnum:219,dest:g.reverbEffectsSend,amt:1e3,secSrcEnum:0,transform:0}),new rA({srcEnum:221,dest:g.chorusEffectsSend,amt:1e3,secSrcEnum:0,transform:0})),A&&n.push(new rA({srcEnum:129,dest:g.vibLfoToPitch,amt:0,secSrcEnum:0,transform:0}),new rA({srcEnum:13,dest:g.vibLfoToPitch,amt:0,secSrcEnum:0,transform:0})),{modulators:n,generators:s}}function Xn(e,A,t){if(e)for(;e.chunkData.currentIndexe.chunkData.currentIndex;)A.push(O(e.chunkData));let t=A.find(r=>r.header==="rgnh"),s=y(t.chunkData,2),n=y(t.chunkData,2),o=y(t.chunkData,2),E=y(t.chunkData,2),i=new We({min:s,max:n},{min:o,max:E});y(t.chunkData,2);let h=y(t.chunkData,2);h!==0&&i.generators.push(new b(g.exclusiveClass,h));let c=SA(A,"lart"),f=SA(A,"lar2");this.readLart(c,f,i),i.isGlobal=!1;let Q=A.find(r=>r.header==="wsmp");y(Q.chunkData,4);let l=y(Q.chunkData,2);y(Q.chunkData,2);let D=(y(Q.chunkData,4)|0)/-655360*10/.4;y(Q.chunkData,4);let k=y(Q.chunkData,4),x,M={start:0,end:0};if(k===0)x=0;else{y(Q.chunkData,4),y(Q.chunkData,4)===0?x=1:x=3,M.start=y(Q.chunkData,4);let sA=y(Q.chunkData,4);M.end=M.start+sA}let N=A.find(r=>r.header==="wlnk");if(N===void 0)return;y(N.chunkData,2),y(N.chunkData,2),y(N.chunkData,4);let Z=y(N.chunkData,4),T=this.samples[Z];if(T===void 0)throw new Error("Invalid sample ID!");return i.setWavesample(D,x,M,l,T,Z),i}var Be=class{constructor(A,t,s,n,o,E,i,h){this.sampleName=A,this.sampleRate=t,this.samplePitch=s,this.samplePitchCorrection=n,this.sampleLink=o,this.sampleType=E,this.sampleLoopStartIndex=i,this.sampleLoopEndIndex=h,this.isCompressed=(E&16)>0,this.compressedData=void 0,this.useCount=0}getRawData(){let A=new Error("Not implemented");throw A.name="NotImplementedError",A}compressSample(A,t){if(!this.isCompressed)try{this.compressedData=t([this.getAudioData()],1,this.sampleRate,A),this.sampleType|=16,this.isCompressed=!0}catch{Y(`Failed to compress ${this.sampleName}. Leaving as uncompressed!`),this.isCompressed=!1,this.compressedData=void 0,this.sampleType&=-17}}getAudioData(){let A=new Error("Not implemented");throw A.name="NotImplementedError",A}};var _e=class extends Be{constructor(A,t,s,n,o,E,i){super(A,t,s,n,0,1,o*2,(E-1)*2),this.sampleData=i}getAudioData(){return this.sampleData}sampleData;getRawData(){let A=new Uint8Array(this.sampleData.length*2);for(let t=0;t>8&255}return A}};function _n(e){DA("%cLoading Wave samples...",a.recognized);let A=0;for(;e.chunkData.currentIndexK.header==="fmt ");if(!n)throw new Error("No fmt chunk in the wave file!");if(y(n.chunkData,2)!==1)throw new Error("Only PCM format in WAVE is supported.");if(y(n.chunkData,2)!==1)throw new Error("Only mono samples are supported.");let i=y(n.chunkData,4);y(n.chunkData,4),y(n.chunkData,2);let h=y(n.chunkData,2),c=h/8,f=Math.pow(2,c*8-1),Q=Math.pow(2,c*8),l,d=!1;h===8?(l=255,d=!0):l=f;let S=s.find(K=>K.header==="data");if(!S)throw new Error("No data chunk in the wave chunk!");let D=S.size/c,k=new Float32Array(D);for(let K=0;K=f&&(z-=Q),k[K]=z/l)}let x=60,M=0,N=0,Z=k.length-1,T=s.find(K=>K.header==="wsmp");if(T){if(y(T.chunkData,4),x=y(T.chunkData,2),M=ie(T.chunkData[T.chunkData.currentIndex++],T.chunkData[T.chunkData.currentIndex++]),y(T.chunkData,4),y(T.chunkData,4),y(T.chunkData,4)===1){y(T.chunkData,8),N=y(T.chunkData,4);let z=y(T.chunkData,4);Z=N+z}}else Y("No wsmp chunk in wave... using sane defaults.");let r=SA(s,"INFO"),sA=`Unnamed ${A}`;if(r){let K=O(r.chunkData);for(;K.header!=="INAM"&&r.chunkData.currentIndex0&&(I+=C-I%C),I}function Ot(I){r.buffer=s=I}function st(){r.HEAP8=n=new Int8Array(s),r.HEAP16=E=new Int16Array(s),r.HEAP32=h=new Int32Array(s),r.HEAPU8=o=new Uint8Array(s),r.HEAPU16=i=new Uint16Array(s),r.HEAPU32=c=new Uint32Array(s),r.HEAPF32=f=new Float32Array(s),r.HEAPF64=Q=new Float64Array(s)}function Zt(){var I=r.usingWasm?65536:16777216,C=2147483648-I;if(h[N>>2]>C)return!1;var B=EA;for(EA=Math.max(EA,16777216);EA>2];)EA=EA<=536870912?tt(2*EA,I):Math.min(tt((3*EA+2147483648)/4,I),C);var u=r.reallocBuffer(EA);return u&&u.byteLength==EA?(Ot(u),st(),!0):(EA=B,!1)}l=d=D=k=x=M=N=0,S=!1,r.reallocBuffer||(r.reallocBuffer=function(I){try{if(ArrayBuffer.transfer)C=ArrayBuffer.transfer(s,I);else{var C,B=n;C=new ArrayBuffer(I),new Int8Array(C).set(B)}}catch{return!1}return!!yo(C)&&C});try{(Z=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get))(new ArrayBuffer(4))}catch{Z=function(C){return C.byteLength}}var nt=r.TOTAL_STACK||5242880,EA=r.TOTAL_MEMORY||16777216;function co(){return EA}function Qe(I){for(;I.length>0;){var C=I.shift();if(typeof C=="function"){C();continue}var B=C.func;typeof B=="number"?C.arg===void 0?r.dynCall_v(B):r.dynCall_vi(B,C.arg):B(C.arg===void 0?null:C.arg)}}EA=0?I:C<=32?2*Math.abs(1<=u&&(C<=32||I>u)&&(I=-2*u+I),I}var mo=Math.abs,po=Math.ceil,jt=Math.floor,So=Math.min,_A=0,it=null,ce=null;function gr(I){return I}r.preloadedImages={},r.preloadedAudios={};var $t="data:application/octet-stream;base64,";function Me(I){return String.prototype.startsWith?I.startsWith($t):I.indexOf($t)===0}(function(){var C="main.wast",B="main.wasm",u="main.temp.asm.js";Me(C)||(C=UA(C)),Me(B)||(B=UA(B)),Me(u)||(u=UA(u));var F={global:null,env:null,asm2wasm:Bo,parent:r},v=null;function W(eA){return eA}function G(){try{if(r.wasmBinary)return new Uint8Array(r.wasmBinary);if(r.readBinary)return r.readBinary(B);throw"both async and sync fetching of the wasm failed"}catch(eA){PA(eA)}}r.asmPreload=r.asm;var BA=r.reallocBuffer,nA=function(eA){eA=tt(eA,r.usingWasm?65536:16777216);var q=r.buffer.byteLength;if(r.usingWasm)try{var mA=r.wasmMemory.grow((eA-q)/65536);return mA!==-1?r.buffer=r.wasmMemory.buffer:null}catch{return null}};r.reallocBuffer=function(eA){return oA==="asmjs"?BA(eA):nA(eA)};var oA="";r.asm=function(eA,q,mA){var FA;if(!(q=FA=q).table){var RA,GA=r.wasmTableSize;GA===void 0&&(GA=1024);var zA=r.wasmMaxTableSize;typeof WebAssembly=="object"&&typeof WebAssembly.Table=="function"?zA!==void 0?q.table=new WebAssembly.Table({initial:GA,maximum:zA,element:"anyfunc"}):q.table=new WebAssembly.Table({initial:GA,element:"anyfunc"}):q.table=Array(GA),r.wasmTable=q.table}return q.memoryBase||(q.memoryBase=r.STATIC_BASE),q.tableBase||(q.tableBase=0),RA=function(fe,te,Ct){if(typeof WebAssembly!="object")return TA("no native wasm support detected"),!1;if(!(r.wasmMemory instanceof WebAssembly.Memory))return TA("no native wasm Memory in use"),!1;function Le(HA,YA){if((v=HA.exports).memory){var ue,Et,ts;ue=v.memory,Et=r.buffer,ue.byteLength0?B:xe(I)+1,F=Array(u),v=Ge(I,F,0,F.length);return C&&(F.length=v),F}function hr(I){for(var C=[],B=0;B255&&(u&=255),C.push(String.fromCharCode(u))}return C.join("")}d+=16,N=we(4),x=(D=k=Ht(d))+nt,M=Ht(x),h[N>>2]=M,S=!0,r.wasmTableSize=4,r.wasmMaxTableSize=4,r.asmGlobalArg={},r.asmLibraryArg={abort:PA,assert:ZA,enlargeMemory:Zt,getTotalMemory:co,abortOnCannotGrowMemory:function(){PA("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+EA+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")},invoke_iii:function(C,B,u){var F=at();try{return r.dynCall_iii(C,B,u)}catch(v){if(It(F),typeof v!="number"&&v!=="longjmp")throw v;r.setThrew(1,0)}},___assert_fail:function(C,B,u,F){PA("Assertion failed: "+Re(C)+", at: "+[B?Re(B):"unknown filename",u,F?Re(F):"unknown function"])},___setErrNo:function(C){return r.___errno_location&&(h[r.___errno_location()>>2]=C),C},_abort:function(){r.abort()},_emscripten_memcpy_big:function(C,B,u){return o.set(o.subarray(B,B+u),C),C},_llvm_floor_f64:jt,DYNAMICTOP_PTR:N,tempDoublePtr:yA,ABORT:Fe,STACKTOP:k,STACK_MAX:x};var As=r.asm(r.asmGlobalArg,r.asmLibraryArg,s);r.asm=As,r.___errno_location=function(){return r.asm.___errno_location.apply(null,arguments)};var yo=r._emscripten_replace_memory=function(){return r.asm._emscripten_replace_memory.apply(null,arguments)};r._free=function(){return r.asm._free.apply(null,arguments)};var Ne=r._malloc=function(){return r.asm._malloc.apply(null,arguments)};r._memcpy=function(){return r.asm._memcpy.apply(null,arguments)},r._memset=function(){return r.asm._memset.apply(null,arguments)},r._sbrk=function(){return r.asm._sbrk.apply(null,arguments)},r._stb_vorbis_js_channels=function(){return r.asm._stb_vorbis_js_channels.apply(null,arguments)},r._stb_vorbis_js_close=function(){return r.asm._stb_vorbis_js_close.apply(null,arguments)},r._stb_vorbis_js_decode=function(){return r.asm._stb_vorbis_js_decode.apply(null,arguments)},r._stb_vorbis_js_open=function(){return r.asm._stb_vorbis_js_open.apply(null,arguments)},r._stb_vorbis_js_sample_rate=function(){return r.asm._stb_vorbis_js_sample_rate.apply(null,arguments)},r.establishStackSpace=function(){return r.asm.establishStackSpace.apply(null,arguments)},r.getTempRet0=function(){return r.asm.getTempRet0.apply(null,arguments)},r.runPostSets=function(){return r.asm.runPostSets.apply(null,arguments)},r.setTempRet0=function(){return r.asm.setTempRet0.apply(null,arguments)},r.setThrew=function(){return r.asm.setThrew.apply(null,arguments)};var be=r.stackAlloc=function(){return r.asm.stackAlloc.apply(null,arguments)},It=r.stackRestore=function(){return r.asm.stackRestore.apply(null,arguments)},at=r.stackSave=function(){return r.asm.stackSave.apply(null,arguments)};function le(I){this.name="ExitStatus",this.message="Program terminated with exit("+I+")",this.status=I}function gt(I){I=I||r.arguments,!(_A>0)&&(function(){if(r.preRun)for(typeof r.preRun=="function"&&(r.preRun=[r.preRun]);r.preRun.length;)fo(r.preRun.shift());Qe(Xt)}(),!(_A>0)&&(r.calledRun||(r.setStatus?(r.setStatus("Running..."),setTimeout(function(){setTimeout(function(){r.setStatus("")},1),C()},1)):C())));function C(){!r.calledRun&&(r.calledRun=!0,Fe||(rt||(rt=!0,Qe(ot)),Qe(Wt),r.onRuntimeInitialized&&r.onRuntimeInitialized(),function(){if(r.postRun)for(typeof r.postRun=="function"&&(r.postRun=[r.postRun]);r.postRun.length;)uo(r.postRun.shift());Qe(zt)}()))}}function Qr(I,C){(!C||!r.noExitRuntime||I!==0)&&(r.noExitRuntime||(Fe=!0,Yt=I,k=T,Qe(_t),lo=!0,r.onExit&&r.onExit(I)),r.quit(I,new le(I)))}function PA(I){throw r.onAbort&&r.onAbort(I),I!==void 0?(Ut(I),TA(I),I=JSON.stringify(I)):I="",Fe=!0,Yt=1,"abort("+I+"). Build with -s ASSERTIONS=1 for more info."}if(r.dynCall_iii=function(){return r.asm.dynCall_iii.apply(null,arguments)},r.asm=As,r.ccall=Kt,r.cwrap=function(C,B,u,F){var v=(u=u||[]).every(function(W){return W==="number"});return B!=="string"&&v&&!F?Jt(C):function(){return Kt(C,B,u,arguments,F)}},le.prototype=Error(),le.prototype.constructor=le,ce=function I(){r.calledRun||gt(),r.calledRun||(ce=I)},r.run=gt,r.abort=PA,r.preInit)for(typeof r.preInit=="function"&&(r.preInit=[r.preInit]);r.preInit.length>0;)r.preInit.pop()();r.noExitRuntime=!0,gt(),r.onRuntimeInitialized=()=>{_s=!0,zs()},vA.decode=function(I){return function(B){if(!_s)throw Error("Not initialized");var u={};function F(te){return new Int32Array(r.HEAPU8.buffer,te,1)[0]}function v(te,Ct){var Le=new ArrayBuffer(Ct*Float32Array.BYTES_PER_ELEMENT),se=new Float32Array(Le);return se.set(new Float32Array(r.HEAPU8.buffer,te,Ct)),se}u.open=r.cwrap("stb_vorbis_js_open","number",[]),u.close=r.cwrap("stb_vorbis_js_close","void",["number"]),u.channels=r.cwrap("stb_vorbis_js_channels","number",["number"]),u.sampleRate=r.cwrap("stb_vorbis_js_sample_rate","number",["number"]),u.decode=r.cwrap("stb_vorbis_js_decode","number",["number","number","number","number","number"]);var W,G,BA,nA,oA=u.open(),eA=(W=B,G=B.byteLength,BA=r._malloc(G),(nA=new Uint8Array(r.HEAPU8.buffer,BA,G)).set(new Uint8Array(W,0,G)),nA),q=r._malloc(4),mA=r._malloc(4),FA=u.decode(oA,eA.byteOffset,eA.byteLength,q,mA);if(r._free(eA.byteOffset),FA<0)throw u.close(oA),r._free(q),Error("stbvorbis decode failed: "+FA);for(var RA=u.channels(oA),GA=Array(RA),zA=new Int32Array(r.HEAPU32.buffer,F(q),RA),xA=0;xA=0&&(s=this.workletProcessorChannels[t]),e.messageType){case AA.noteOn:this.noteOn(t,A[0],A[1],A[2]);break;case AA.noteOff:this.noteOff(t,A);break;case AA.pitchWheel:this.pitchWheel(t,A[0],A[1]);break;case AA.ccChange:this.controllerChange(t,A[0],A[1],A[2]);break;case AA.customcCcChange:s.customControllers[A[0]]=A[1];break;case AA.killNote:this.killNote(t,A);break;case AA.programChange:this.programChange(t,A[0],A[1]);break;case AA.channelPressure:this.channelPressure(t,A);break;case AA.polyPressure:this.polyPressure(t,A[0],A[1]);break;case AA.ccReset:t===bA?this.resetAllControllers():this.resetControllers(t);break;case AA.systemExclusive:this.systemExclusive(A);break;case AA.setChannelVibrato:if(t===bA)for(let E=0;E{let t=(A.midiControllers[gA+P.pitchWheelRange]>>7)+(A.midiControllers[gA+P.pitchWheelRange]&127)/127;return{voicesAmount:A.voices.length,pitchBend:A.midiControllers[gA+P.pitchWheel],pitchBendRangeSemitones:t,isMuted:A.isMuted,isDrum:A.drumChannel}});this.post({messageType:pA.channelProperties,messageData:e})}function No(e,A,t){let s=e,n=A<<7|t;return e===127&&A===127&&t===127?{midiNote:-1,centTuning:null}:{midiNote:s,centTuning:n*.0061}}function en(e,A=0){let t=e[0];if(!(this.deviceID!==bA&&e[1]!==127&&this.deviceID!==e[1]))switch(t){default:Y(`%cUnrecognized SysEx: %c${hA(e)}`,a.warn,a.unrecognized);break;case 126:case 127:switch(e[2]){case 4:let s;switch(e[3]){case 1:let n=e[5]<<7|e[4];this.setMIDIVolume(n/16384),m(`%cMaster Volume. Volume: %c${n}`,a.info,a.value);break;case 2:let E=((e[5]<<7|e[4])-8192)/8192;this.setMasterPan(E),m(`%cMaster Pan. Pan: %c${E}`,a.info,a.value);break;case 3:let i=(e[5]<<7|e[6])-8192;s=Math.floor(i/81.92),this.setMasterTuning(s),m(`%cMaster Fine Tuning. Cents: %c${s}`,a.info,a.value);break;case 4:s=(e[5]-64)*100,this.setMasterTuning(s),m(`%cMaster Coarse Tuning. Cents: %c${s}`,a.info,a.value);break;default:Y(`%cUnrecognized MIDI Device Control Real-time message: %c${hA(e)}`,a.warn,a.unrecognized)}break;case 9:e[3]===1?(m("%cGM system on",a.info),this.system="gm"):e[3]===3?(m("%cGM2 system on",a.info),this.system="gm2"):(m("%cGM system off, defaulting to GS",a.info),this.system="gs");break;case 8:switch(e[3]){case 2:case 7:let n=4;e[3]===7&&n++;let o=e[n++],E=e[n++];for(let h=0;h>1&1)===1&&this.setOctaveTuning(15+A,i);for(let h=0;h<7;h++)(e[5]>>h&1)===1&&this.setOctaveTuning(7+h+A,i);for(let h=0;h<7;h++)(e[6]>>h&1)===1&&this.setOctaveTuning(h+A,i);m(`%cMIDI Octave Scale ${e[3]===8?"(1 byte)":"(2 bytes)"} tuning via Tuning: %c${i.join(" ")}`,a.info,a.value);break;default:Y(`%cUnrecognized MIDI Tuning standard message: %c${hA(e)}`,a.warn,a.unrecognized);break}break;default:Y(`%cUnrecognized MIDI Realtime/non realtime message: %c${hA(e)}`,a.warn,a.unrecognized)}break;case 65:if(e[2]===66&&e[3]===18){let s=e[7];if(e[6]===127){s===0?(m("%cGS system on",a.info),this.system="gs"):s===127&&(m("%cGS system off, switching to GM2",a.info),this.system="gm2");return}else if(e[4]===64){if((e[5]&16)>0){let n=[9,0,1,2,3,4,5,6,7,8,10,11,12,13,14,15][e[5]&15]+A;switch(e[6]){default:break;case 21:let o=s>0&&e[5]>>4;this.setDrums(n,o),m(`%cChannel %c${n}%c ${o?"is now a drum channel":"now isn't a drum channel"}%c via: %c${hA(e)}`,a.info,a.value,a.recognized,a.info,a.value);return;case 22:let E=s-64;this.transposeChannel(n,E),m(`%cChannel %c${n}%c pitch shift. Semitones %c${E}%c, with %c${hA(e)}`,a.info,a.recognized,a.info,a.value,a.info,a.value);return;case 64:case 65:case 66:case 67:case 68:case 69:case 70:case 71:case 72:case 73:case 74:case 75:let i=s-64;m(`%cChannel %c${n}%c tuning. Cents %c${i}%c, with %c${hA(e)}`,a.info,a.recognized,a.info,a.value,a.info,a.value),this.setChannelTuning(n,i)}}else if(e[5]===0&&e[6]===6){m(`%cRoland GS Master Pan set to: %c${s}%c with: %c${hA(e)}`,a.info,a.value,a.info,a.value),this.setMasterPan((s-64)/64);return}else if(e[5]===0&&e[6]===5){let n=s-64;m(`%cRoland GS Master Key-Shift set to: %c${n}%c with: %c${hA(e)}`,a.info,a.value,a.info,a.value),this.setMasterTuning(n*100);return}else if(e[5]===0&&e[6]===4){m(`%cRoland GS Master Volume set to: %c${s}%c with: %c${hA(e)}`,a.info,a.value,a.info,a.value),this.setMIDIVolume(s/127);return}}Y(`%cUnrecognized Roland %cGS %cSysEx: %c${hA(e)}`,a.warn,a.recognized,a.warn,a.unrecognized);return}else if(e[2]===22&&e[3]===18&&e[4]===16){this.setMIDIVolume(e[7]/100),m(`%cRoland Master Volume control set to: %c${e[7]}%c via: %c${hA(e)}`,a.info,a.value,a.info,a.value);return}else{Y(`%cUnrecognized Roland SysEx: %c${hA(e)}`,a.warn,a.unrecognized);return}case 67:if(e[2]===76)if(e[3]===0&&e[4]===0)switch(e[5]){case 4:let s=e[6];this.setMIDIVolume(s/127),m(`%cXG master volume. Volume: %c${s}`,a.info,a.recognized);break;case 6:let n=e[6]-64;this.transposeAllChannels(n),m(`%cXG master transpose. Volume: %c${n}`,a.info,a.recognized);break;case 126:m("%cXG system on",a.info),this.system="xg";break}else if(e[3]===8){if(this.system!=="xg")return;let s=e[4]+A,n=e[6];switch(e[5]){case 1:this.controllerChange(s,p.bankSelect,n);break;case 2:this.controllerChange(s,p.lsbForControl0BankSelect,n);break;case 3:this.programChange(s,n);break;case 11:this.controllerChange(s,p.mainVolume,n);break;case 14:let o=n;o===0&&(o=Math.floor(Math.random()*127)),this.controllerChange(s,p.pan,o);break;case 19:this.controllerChange(s,p.effects1Depth,n);break;case 18:this.controllerChange(s,p.effects3Depth,n);break;default:Y(`%cUnrecognized Yamaha XG Part Setup: %c${e[5].toString(16).toUpperCase()}`,a.warn,a.unrecognized)}}else this.system==="xg"&&Y(`%cUnrecognized Yamaha XG SysEx: %c${hA(e)}`,a.warn,a.unrecognized);else this.system==="xg"&&Y(`%cUnrecognized Yamaha SysEx: %c${hA(e)}`,a.warn,a.unrecognized);break}}var Ze=[];function tn(){Ze=[]}function bo(e,A,t,s){Ze[t]=!1,s({channel:e,sampleID:t,sampleData:A.getAudioData()}),Ze[t]=!0}function ye(e){if(e===null||typeof e!="object")return e;if(e instanceof Int16Array)return new Int16Array(e);let A=Array.isArray(e)?[]:{};for(let t in e)e.hasOwnProperty(t)&&(typeof e[t]=="object"&&e[t]!==null?A[t]=ye(e[t]):e[t]instanceof Int16Array?A[t]=new Int16Array(e[t]):A[t]=e[t]);return A}function sn(e,A,t,s,n,o,E,i,h=!1){let c,f=i[A][t];return f!==void 0?(c=f.map(ye),c.forEach(Q=>{Q.startTime=n})):(c=s.getSamplesAndGenerators(A,t).reduce((Q,l)=>{let d=l.sampleID+s.sampleIDOffset;if(Ze[d]!==!0&&bo(e,l.sample,d,E),l.sample.sampleData===void 0)return Y(`Discarding invalid sample: ${l.sample.sampleName}`),Q;let S=new Int16Array(60);for(let r=0;r<60;r++)S[r]=Ss(r,l.presetGenerators,l.instrumentGenerators);S[g.initialAttenuation]=Math.floor(S[g.initialAttenuation]*.4);let D=l.sample.samplePitch;S[g.overridingRootKey]>-1&&(D=S[g.overridingRootKey]);let k=A;S[g.keyNum]>-1&&(k=S[g.keyNum]);let x=l.sample.sampleLoopStartIndex/2+(S[g.startloopAddrsOffset]+S[g.startloopAddrsCoarseOffset]*32768),M=l.sample.sampleLoopEndIndex/2+(S[g.endloopAddrsOffset]+S[g.endloopAddrsCoarseOffset]*32768),N=S[g.sampleModes],Z=l.sample.getAudioData().length;x=Math.min(Math.max(0,x),Z),M=Math.min(Math.max(0,M),Z),M-x<1&&(N=0);let T={sampleID:d,playbackStep:l.sample.sampleRate/o*Math.pow(2,l.sample.samplePitchCorrection/1200),cursor:S[g.startAddrsOffset]+S[g.startAddrsCoarseOffset]*32768,rootKey:D,loopStart:x,loopEnd:M,end:Math.floor(l.sample.sampleData.length)-1+(S[g.endAddrOffset]+S[g.endAddrsCoarseOffset]*32768),loopingMode:N};return S[g.velocity]>-1&&(t=S[g.velocity]),h&&Cs([{Sample:l.sample.sampleName,Generators:S,Modulators:l.modulators.map(r=>r.debugString()),Velocity:t,TargetKey:k,MidiNote:A,WorkletSample:T}]),Q.push({filter:ye(vs),generators:S,modulators:l.modulators,modulatedGenerators:new Int16Array(60),sample:T,velocity:t,midiNote:A,pressure:0,channelNumber:e,startTime:n,targetKey:k,currentTuningCalculated:1,currentTuningCents:0,releaseStartTime:1/0,finished:!1,isInRelease:!1,currentModEnvValue:0,releaseStartModEnv:1,currentPan:.5,volumeEnvelope:ye(Js)}),Q},[]),i[A][t]=c.map(ye)),c}function nn(e,A,t){if(A.transformAmount===0)return 0;let s;if(A.sourceUsesCC)s=e[A.sourceIndex];else{let h=A.sourceIndex+gA;switch(A.sourceIndex){case P.noController:s=16383;break;case P.noteOnKeyNum:s=t.midiNote<<7;break;case P.noteOnVelocity:s=t.velocity<<7;break;case P.polyPressure:s=t.pressure<<7;break;default:s=e[h];break}}let n=dA[A.sourceCurveType][A.sourcePolarity][A.sourceDirection][s],o;if(A.secSrcUsesCC)o=e[A.secSrcIndex];else{let h=A.secSrcIndex+gA;switch(A.secSrcIndex){case P.noController:o=16383;break;case P.noteOnKeyNum:o=t.midiNote<<7;break;case P.noteOnVelocity:o=t.velocity<<7;break;case P.polyPressure:o=t.pressure<<7;break;default:o=e[h]}}let E=dA[A.secSrcCurveType][A.secSrcPolarity][A.secSrcDirection][o],i=n*E*A.transformAmount;return A.transformType===2?Math.abs(i):i}function VA(e,A,t=-1,s=0){let{modulators:n,generators:o,modulatedGenerators:E}=e;if(t===-1){E.set(o),n.forEach(c=>{E[c.modulatorDestination]+=nn(A,c,e)}),Ae(e);return}let i=new Set([g.initialAttenuation,g.delayVolEnv,g.attackVolEnv,g.holdVolEnv,g.decayVolEnv,g.sustainVolEnv,g.releaseVolEnv,g.keyNumToVolEnvHold,g.keyNumToVolEnvDecay]),h=new Set;n.forEach(c=>{if(c.sourceUsesCC===t&&c.sourceIndex===s||c.secSrcUsesCC===t&&c.secSrcIndex===s){let f=c.modulatorDestination;h.has(f)||(E[f]=o[f],n.forEach(Q=>{Q.modulatorDestination===f&&(E[f]+=nn(A,Q,e))}),h.add(f))}}),[...h].some(c=>i.has(c))&&Ae(e)}var dA=[];for(let e=0;e<4;e++){dA[e]=[[new Float32Array(IA),new Float32Array(IA)],[new Float32Array(IA),new Float32Array(IA)]];for(let A=0;A200&&t<40||this.highPerformanceMode&&t<10||E.isMuted)return;let i=A+E.channelTransposeKeyShift;if(A>127||A<0)return;let h=E.preset.program;this.tunings[h]?.[A]?.midiNote>=0&&(i=this.tunings[h]?.[A].midiNote);let c=sn(e,i,t,E.preset,o,sampleRate,Q=>this.sampleDump(Q.channel,Q.sampleID,Q.sampleData),E.cachedVoices,s),f=E.voices;c.forEach(Q=>{let l=Q.generators[g.exclusiveClass];l!==0&&f.forEach(d=>{d.generators[g.exclusiveClass]===l&&(this.releaseVoice(d),d.modulatedGenerators[g.releaseVolEnv]=-7e3,d.modulatedGenerators[g.releaseModEnv]=-7e3,Ae(d))}),VA(Q,E.midiControllers),Q.currentPan=(Math.max(-500,Math.min(500,Q.modulatedGenerators[g.pan]))+500)/1e3}),this.totalVoicesAmount+=c.length,this.totalVoicesAmount>this.voiceCap&&this.voiceKilling(c.length),f.push(...c),n&&(this.sendChannelProperties(),this.callEvent("noteon",{midiNote:A,channel:e,velocity:t}))}function rn(e,A){if(A>127||A<0){Y("Received a noteOn for note",A,"Ignoring.");return}let t=A+this.workletProcessorChannels[e].channelTransposeKeyShift,s=this.workletProcessorChannels[e].preset.program;if(this.tunings[s]?.[A]?.midiNote>=0&&(t=this.tunings[s]?.[A].midiNote),this.highPerformanceMode&&!this.workletProcessorChannels[e].drumChannel){this.killNote(e,t);return}this.workletProcessorChannels[e].voices.forEach(o=>{o.midiNote!==t||o.isInRelease===!0||(this.workletProcessorChannels[e].holdPedal?this.workletProcessorChannels[e].sustainedVoices.push(o):this.releaseVoice(o))}),this.callEvent("noteoff",{midiNote:A,channel:e})}function In(e,A){this.workletProcessorChannels[e].voices.forEach(t=>{t.midiNote===A&&(t.modulatedGenerators[g.releaseVolEnv]=-12e3,this.releaseVoice(t))})}function an(e,A=!1){let t=this.workletProcessorChannels[e].voices;A?(t.length=0,this.workletProcessorChannels[e].sustainedVoices.length=0,this.sendChannelProperties()):(t.forEach(s=>{s.isInRelease||this.releaseVoice(s)}),this.workletProcessorChannels[e].sustainedVoices.forEach(s=>{this.releaseVoice(s)}))}function gn(e=!1){m("%cStop all received!",a.info);for(let A=0;AVA(n,this.workletProcessorChannels[e].midiControllers,0,P.pitchWheel)),this.sendChannelProperties()}function fn(e,A){let t=this.workletProcessorChannels[e];t.midiControllers[gA+P.channelPressure]=A<<7,this.workletProcessorChannels[e].voices.forEach(s=>VA(s,t.midiControllers,0,P.channelPressure)),this.callEvent("channelpressure",{channel:e,pressure:A})}function un(e,A,t){this.workletProcessorChannels[e].voices.forEach(s=>{s.midiNote===A&&(s.pressure=t,VA(s,this.workletProcessorChannels[e].midiControllers,0,P.polyPressure))}),this.callEvent("polypressure",{channel:e,midiNote:A,pressure:t})}function dn(e,A){if(A.length!==12)throw new Error("Tuning is not the length of 12.");this.workletProcessorChannels[e].channelOctaveTuning=A}function mn(e,A,t,s=!1){let n=this.workletProcessorChannels[e];if(A>=p.lsbForControl1ModulationWheel&&A<=p.lsbForControl13EffectControl2&&A!==p.lsbForControl6DataEntry){let o=A-32;if(n.lockedControllers[o])return;n.midiControllers[o]=n.midiControllers[o]&16256|t&127,n.voices.forEach(E=>VA(E,n.midiControllers,1,o))}switch(A){case p.allNotesOff:this.stopAll(e);break;case p.allSoundOff:this.stopAll(e,!0);break;case p.bankSelect:let o=t;if(!s){switch(this.system){case"gm":m(`%cIgnoring the Bank Select (${t}), as the synth is in GM mode.`,a.info);return;case"xg":o===120||o===126||o===127?this.setDrums(e,!0):this.setDrums(e,!1);break;case"gm2":o===120&&(n.drumChannel=!0,this.callEvent("drumchange",{channel:e,isDrumChannel:!0}))}n.drumChannel&&(o=128),o===128&&!n.drumChannel&&(o=n.midiControllers[p.bankSelect])}n.midiControllers[p.bankSelect]=o;break;case p.lsbForControl0BankSelect:this.system==="xg"?n.drumChannel||t!==127&&(n.midiControllers[p.bankSelect]=t):this.system==="gm2"&&(n.midiControllers[p.bankSelect]=t);break;case p.RPNLsb:n.RPValue=n.RPValue<<7|t,n.dataEntryState=fA.RPFine;break;case p.RPNMsb:n.RPValue=t,n.dataEntryState=fA.RPCoarse;break;case p.NRPNMsb:n.NRPCoarse=t,n.dataEntryState=fA.NRPCoarse;break;case p.NRPNLsb:n.NRPFine=t,n.dataEntryState=fA.NRPFine;break;case p.dataEntryMsb:this.dataEntryCoarse(e,t);break;case p.lsbForControl6DataEntry:this.dataEntryFine(e,t);break;case p.resetAllControllers:this.resetControllers(e);break;case p.sustainPedal:t>=64?n.holdPedal=!0:(n.holdPedal=!1,n.sustainedVoices.forEach(E=>{this.releaseVoice(E)}),n.sustainedVoices=[]);break;default:if(n.lockedControllers[A])return;n.midiControllers[A]=t<<7,n.voices.forEach(E=>VA(E,n.midiControllers,1,A)),this.callEvent("controllerchange",{channel:e,controllerNumber:A,controllerValue:t});break}}function pn(e){this.midiVolume=e,this.setMasterPan(this.pan)}function Sn(e){this.masterGain=e*Rt,this.setMasterPan(this.pan)}function yn(e){this.pan=e,e=e/2+.5,this.panLeft=(1-e)*this.currentGain,this.panRight=e*this.currentGain}function Dn(e,A){A&&this.stopAll(e,!0),this.workletProcessorChannels[e].isMuted=A,this.sendChannelProperties(),this.callEvent("mutechannel",{channel:e,isMuted:A})}function kn(e){this.workletProcessorChannels[e].lockVibrato=!0,this.workletProcessorChannels[e].channelVibrato.rate=0,this.workletProcessorChannels[e].channelVibrato.delay=0,this.workletProcessorChannels[e].channelVibrato.depth=0}function wn(e,A,t,s){this.workletProcessorChannels[e].lockVibrato||(this.workletProcessorChannels[e].channelVibrato.rate=t,this.workletProcessorChannels[e].channelVibrato.delay=s,this.workletProcessorChannels[e].channelVibrato.depth=A)}function Fn(e,A){let t=this.workletProcessorChannels[e],s=()=>{t.channelVibrato.delay===0&&t.channelVibrato.rate===0&&t.channelVibrato.depth===0&&(t.channelVibrato.depth=50,t.channelVibrato.rate=8,t.channelVibrato.delay=.6)};switch(t.dataEntryState){default:case fA.Idle:break;case fA.NRPFine:if(this.system!=="gs")return;switch(t.NRPCoarse){default:if(A===64)return;Y(`%cUnrecognized NRPN for %c${e}%c: %c(0x${t.NRPCoarse.toString(16).toUpperCase()} 0x${t.NRPFine.toString(16).toUpperCase()})%c data value: %c${A}`,a.warn,a.recognized,a.warn,a.unrecognized,a.warn,a.value);break;case 1:switch(t.NRPFine){default:if(A===64)return;Y(`%cUnrecognized NRPN for %c${e}%c: %c(0x${t.NRPCoarse.toString(16)} 0x${t.NRPFine.toString(16)})%c data value: %c${A}`,a.warn,a.recognized,a.warn,a.unrecognized,a.warn,a.value);break;case 8:if(t.lockVibrato||A===64)return;s(),t.channelVibrato.rate=A/64*8,m(`%cVibrato rate for channel %c${e}%c is now set to %c${t.channelVibrato.rate}%cHz.`,a.info,a.recognized,a.info,a.value,a.info);break;case 9:if(t.lockVibrato||A===64)return;s(),t.channelVibrato.depth=A/2,m(`%cVibrato depth for %c${e}%c is now set to %c${t.channelVibrato.depth}%c cents range of detune.`,a.info,a.recognized,a.info,a.value,a.info);break;case 10:if(t.lockVibrato||A===64)return;s(),t.channelVibrato.delay=A/64/3,m(`%cVibrato delay for %c${e}%c is now set to %c${t.channelVibrato.delay}%c seconds.`,a.info,a.recognized,a.info,a.value,a.info);break;case 32:let o=A;this.controllerChange(e,p.brightness,A),m(`%cFilter cutoff for %c${e}%c is now set to %c${o}`,a.info,a.recognized,a.info,a.value)}break;case 29:if(!t.drumChannel)return;let n=A;this.controllerChange(e,p.effects1Depth,n),m(`%cGS Drum reverb for %c${e}%c: %c${n}`,a.info,a.recognized,a.info,a.value);break}break;case fA.RPCoarse:case fA.RPFine:switch(t.RPValue){default:Y(`%cUnrecognized RPN for %c${e}%c: %c(0x${t.RPValue.toString(16)})%c data value: %c${A}`,a.warn,a.recognized,a.warn,a.unrecognized,a.warn,a.value);break;case 0:t.midiControllers[gA+P.pitchWheelRange]=A<<7,m(`%cChannel ${e} bend range. Semitones: %c${A}`,a.info,a.value);break;case 2:this.setChannelTuningSemitones(e,A-64);break;case 1:this.setChannelTuning(e,A-64,!1);break;case 5:this.setModulationDepth(e,A*100);break;case 16383:this.resetParameters(e);break}}}function Rn(e,A){let t=this.workletProcessorChannels[e];switch(t.dataEntryState){default:break;case fA.RPCoarse:case fA.RPFine:switch(t.RPValue){default:break;case 0:if(A===0)break;t.midiControllers[gA+P.pitchWheelRange]|=A;let s=(t.midiControllers[gA+P.pitchWheelRange]>>7)+A/127;m(`%cChannel ${e} bend range. Semitones: %c${s}`,a.info,a.value);break;case 1:let o=t.customControllers[iA.channelTuning]<<7|A;this.setChannelTuning(e,o*.01220703125);break;case 5:let i=t.customControllers[iA.modulationMultiplier]*50+A/128*100;this.setModulationDepth(e,i);break;case 16383:this.resetParameters(e);break}}}function Gn(){m("%cResetting all controllers!",a.info),this.callEvent("allcontrollerreset",void 0);for(let e=0;e{this.workletProcessorChannels[e].lockedControllers[s]&&this.callEvent("controllerchange",{channel:e,controllerNumber:s,controllerValue:this.workletProcessorChannels[e].midiControllers[s]>>7})};if(t(p.mainVolume),t(p.pan),t(p.expressionController),t(p.modulationWheel),t(p.effects3Depth),t(p.effects1Depth),this.workletProcessorChannels[e].lockedControllers[gA+P.pitchWheel]){let s=this.workletProcessorChannels[e].midiControllers[gA+P.pitchWheel],n=s>>7,o=s&127;this.callEvent("pitchwheel",{channel:e,MSB:n,LSB:o})}}this.tunings=[],this.tunings=[];for(let e=0;e<127;e++)this.tunings.push([]);this.setMIDIVolume(1),this.system=He}function xn(e){let A=this.workletProcessorChannels[e],s=A.lockedControllers.reduce((o,E,i)=>(E&&o.push(i),o),[]).map(o=>({ccNum:o,ccVal:A.midiControllers[o]}));A.channelOctaveTuning.fill(0),A.midiControllers.set(KA),A.channelVibrato={rate:0,depth:0,delay:0},A.holdPedal=!1,s.forEach(o=>{A.midiControllers[o.ccNum]=o.ccVal});let n=A.customControllers[iA.channelTransposeFine];A.customControllers.set(dt),A.customControllers[iA.channelTransposeFine]=n,this.resetParameters(e)}function Mn(e){let A=this.workletProcessorChannels[e];A.NRPCoarse=0,A.NRPFine=0,A.RPValue=0,A.dataEntryState=fA.Idle}function Nn(){let e=4;for(let s of this.instruments)e+=s.instrumentZones.reduce((n,o)=>(o.generators=o.generators.filter(E=>E.generatorType!==g.sampleID&&E.generatorType!==g.keyRange&&E.generatorType!==g.velRange),(o.velRange.max!==127||o.velRange.min!==0)&&o.generators.unshift({generatorType:g.velRange,generatorValue:o.velRange.max<<8|o.velRange.min}),(o.keyRange.max!==127||o.keyRange.min!==0)&&o.generators.unshift({generatorType:g.keyRange,generatorValue:o.keyRange.max<<8|o.keyRange.min}),o.isGlobal||o.generators.push({generatorType:g.sampleID,generatorValue:this.samples.indexOf(o.sample)}),o.generators.length*4+n),0);let A=new H(e),t=0;for(let s of this.instruments)for(let n of s.instrumentZones){n.generatorZoneStartIndex=t;for(let o of n.generators)J(A,o.generatorType),J(A,o.generatorValue),t++}return cA(A,0),tA(new j("igen",A.length,A))}function bn(e,A,t,s,n){let o=this.samples.map((c,f)=>{t&&c.compressSample(s,n);let Q=c.getRawData();return m(`%cEncoded sample %c${f}. ${c.sampleName}%c of %c${this.samples.length}`,a.info,a.recognized,a.info,a.recognized),Q}),E=this.samples.reduce((c,f,Q)=>c+o[Q].length+46,0),i=new H(E);this.samples.forEach((c,f)=>{let Q=o[f],l,d,S=Q.length;c.isCompressed?(l=i.currentIndex,d=l+Q.length):(l=i.currentIndex/2,d=l+Q.length/2,S+=46),e.push(l),i.set(Q,i.currentIndex),i.currentIndex+=S,A.push(d)});let h=tA(new j("smpl",i.length,i),new H([115,100,116,97]));return tA(new j("LIST",h.length,h))}function Ln(e,A){let s=new H(46*(this.samples.length+1));return this.samples.forEach((n,o)=>{wA(s,n.sampleName,20);let E=e[o];cA(s,E);let i=A[o];cA(s,i);let h=n.sampleLoopStartIndex/2+E,c=n.sampleLoopEndIndex/2+E;n.isCompressed&&(h-=E,c-=E),cA(s,h),cA(s,c),cA(s,n.sampleRate),s[s.currentIndex++]=n.samplePitch,s[s.currentIndex++]=n.samplePitchCorrection,J(s,n.sampleLink),J(s,n.sampleType)}),wA(s,"EOS",46),tA(new j("shdr",s.length,s))}function Un(){let e=10;for(let s of this.instruments)e+=s.instrumentZones.reduce((n,o)=>o.modulators.length*10+n,0);let A=new H(e),t=0;for(let s of this.instruments)for(let n of s.instrumentZones){n.modulatorZoneStartIndex=t;for(let o of n.modulators)J(A,o.modulatorSource),J(A,o.modulatorDestination),J(A,o.transformAmount),J(A,o.modulationSecondarySrc),J(A,o.transformType),t++}return re(A,0,10),tA(new j("imod",A.length,A))}function Tn(){let e=this.instruments.reduce((o,E)=>E.instrumentZones.length*4+o,4),A=new H(e),t=0,s=0,n=0;for(let o of this.instruments){o.instrumentZoneIndex=t;for(let E of o.instrumentZones)E.zoneID=t,J(A,s),J(A,n),s+=E.generators.length,n+=E.modulators.length,t++}return J(A,s),J(A,n),tA(new j("ibag",A.length,A))}function Hn(){let e=this.instruments.length*22+22,A=new H(e),t=0,s=0;for(let n of this.instruments)wA(A,n.instrumentName,20),J(A,t),t+=n.instrumentZones.length,n.instrumentID=s,s++;return wA(A,"EOI",20),J(A,t),tA(new j("inst",A.length,A))}function Yn(){let e=4;for(let s of this.presets)e+=s.presetZones.reduce((n,o)=>(o.generators=o.generators.filter(E=>E.generatorType!==g.instrument&&E.generatorType!==g.keyRange&&E.generatorType!==g.velRange),(o.velRange.max!==127||o.velRange.min!==0)&&o.generators.unshift({generatorType:g.velRange,generatorValue:o.velRange.max<<8|o.velRange.min}),(o.keyRange.max!==127||o.keyRange.min!==0)&&o.generators.unshift({generatorType:g.keyRange,generatorValue:o.keyRange.max<<8|o.keyRange.min}),o.isGlobal||o.generators.push({generatorType:g.instrument,generatorValue:this.instruments.indexOf(o.instrument)}),o.generators.length*4+n),0);let A=new H(e),t=0;for(let s of this.presets)for(let n of s.presetZones){n.generatorZoneStartIndex=t;for(let o of n.generators)J(A,o.generatorType),J(A,o.generatorValue);t+=n.generators.length}return J(A,0),J(A,0),tA(new j("pgen",A.length,A))}function Jn(){let e=10;for(let s of this.presets)e+=s.presetZones.reduce((n,o)=>o.modulators.length*10+n,0);let A=new H(e),t=0;for(let s of this.presets)for(let n of s.presetZones){n.modulatorZoneStartIndex=t;for(let o of n.modulators)J(A,o.modulatorSource),J(A,o.modulatorDestination),J(A,o.transformAmount),J(A,o.modulationSecondarySrc),J(A,o.transformType),t++}return re(A,0,10),tA(new j("pmod",A.length,A))}function qn(){let e=this.presets.reduce((o,E)=>E.presetZones.length*4+o,4),A=new H(e),t=0,s=0,n=0;for(let o of this.presets){o.presetZoneStartIndex=t;for(let E of o.presetZones)E.zoneID=t,J(A,s),J(A,n),s+=E.generators.length,n+=E.modulators.length,t++}return J(A,s),J(A,n),tA(new j("pbag",A.length,A))}function Kn(){let e=this.presets.length*38+38,A=new H(e),t=0;for(let s of this.presets)wA(A,s.presetName,20),J(A,s.program),J(A,s.bank),J(A,t),cA(A,s.library),cA(A,s.genre),cA(A,s.morphology),t+=s.presetZones.length;return wA(A,"EOP",20),J(A,0),J(A,0),J(A,t),cA(A,0),cA(A,0),cA(A,0),tA(new j("phdr",A.length,A))}var Lo={compress:!1,compressionQuality:.5,compressionFunction:void 0};function vn(e=Lo){if(e.compress&&typeof e.compressionFunction!="function")throw new TypeError("No compression function supplied but compression enabled.");DA("%cSaving soundfont...",a.info),m(`%cCompression: %c${e?.compress||"false"}%c quality: %c${e?.compressionQuality||"none"}`,a.info,a.recognized,a.info,a.recognized),m("%cWriting INFO...",a.info);let A=[];this.soundFontInfo.ISFT="SpessaSynth",e?.compress&&(this.soundFontInfo.ifil="3.0");for(let[Z,T]of Object.entries(this.soundFontInfo))if(Z==="ifil"||Z==="iver"){let r=parseInt(T.split(".")[0]),sA=parseInt(T.split(".")[1]),K=new H(4);J(K,r),J(K,sA),A.push(tA(new j(Z,4,K)))}else{let r=new H(T.length);wA(r,T),A.push(tA(new j(Z,T.length,r)))}let t=de([new H([73,78,70,79]),...A]),s=tA(new j("LIST",t.length,t));m("%cWriting SDTA...",a.info);let n=[],o=[],E=bn.call(this,n,o,e?.compress,e?.compressionQuality||.5,e.compressionFunction);m("%cWriting PDTA...",a.info),m("%cWriting SHDR...",a.info);let i=Ln.call(this,n,o);m("%cWriting IGEN...",a.info);let h=Nn.call(this);m("%cWriting IMOD...",a.info);let c=Un.call(this);m("%cWriting IBAG...",a.info);let f=Tn.call(this);m("%cWriting INST...",a.info);let Q=Hn.call(this),l=Yn.call(this);m("%cWriting PMOD...",a.info);let d=Jn.call(this);m("%cWriting PBAG...",a.info);let S=qn.call(this);m("%cWriting PHDR...",a.info);let D=Kn.call(this),k=de([new H([112,100,116,97]),D,S,d,l,Q,f,c,h,i]),x=tA(new j("LIST",k.length,k));m("%cWriting the output file...",a.info);let M=de([new H([115,102,98,107]),s,E,x]),N=tA(new j("RIFF",M.length,M));return m(`%cSaved succesfully! Final file size: %c${N.length}`,a.info,a.recognized),X(),N}var ee=class e{constructor(A=void 0){this.soundFontInfo={},this.presets=[],this.samples=[],this.instruments=[],A?.presets&&(this.presets.push(...A.presets),this.soundFontInfo=A.info)}removeUnusedElements(){this.instruments.forEach(A=>{A.useCount<1&&A.instrumentZones.forEach(t=>{t.isGlobal||t.sample.useCount--})}),this.instruments=this.instruments.filter(A=>A.useCount>0),this.samples=this.samples.filter(A=>A.useCount>0)}deleteInstrument(A){if(A.useCount>0)throw new Error(`Cannot delete an instrument that has ${A.useCount} usages.`);this.instruments.splice(this.instruments.indexOf(A),1),A.deleteInstrument(),this.removeUnusedElements()}deleteSample(A){if(A.useCount>0)throw new Error(`Cannot delete sample that has ${A.useCount} usages.`);this.samples.splice(this.samples.indexOf(A),1),this.removeUnusedElements()}deletePreset(A){A.deletePreset(),this.presets.splice(this.presets.indexOf(A),1),this.removeUnusedElements()}getPresetNoFallback(A,t,s=!1){let n=this.presets.find(o=>o.bank===A&&o.program===t);if(n)return n;if(s!==!1)return A===128?this.presets.find(o=>o.bank===128):this.presets.find(o=>o.program===t)}setSampleIDOffset(A){this.presets.forEach(t=>t.sampleIDOffset=A)}getPreset(A,t){let s=this.presets.find(n=>n.bank===A&&n.program===t);return s||(s=this.presets.find(n=>n.program===t&&n.bank!==128),A===128&&(s=this.presets.find(n=>n.bank===128&&n.program===t),s||(s=this.presets.find(n=>n.bank===128))),s&&Y(`%cPreset ${A}.${t} not found. Replaced with %c${s.presetName} (${s.bank}.${s.program})`,a.warn,a.recognized)),s||(Y(`Preset ${t} not found. Defaulting to`,this.presets[0].presetName),s=this.presets[0]),s}getPresetByName(A){let t=this.presets.find(s=>s.presetName===A);return t||(Y("Preset not found. Defaulting to:",this.presets[0].presetName),t=this.presets[0]),t}static mergeSoundfonts(...A){let t=A.shift(),s=t.presets;for(;A.length;)A.shift().presets.forEach(o=>{s.find(E=>E.bank===o.bank&&E.program===o.program)===void 0&&s.push(o)});return new e({presets:s,info:t.soundFontInfo})}};ee.prototype.write=vn;function Pn(e){DA("%cLoading instruments...",a.info);for(let A=0;AA.deleteZone()),this.presetZones.length=0}deleteZone(A){this.presetZones[A].deleteZone(),this.presetZones.splice(A,1)}preload(A,t){for(let s=A;s{o.sample.isSampleLoaded||o.sample.getAudioData()})}preloadSpecific(A,t){this.getSamplesAndGenerators(A,t).forEach(s=>{s.sample.isSampleLoaded||s.sample.getAudioData()})}getSamplesAndGenerators(A,t){let s=this.foundSamplesAndGenerators[A][t];if(s)return s;if(this.presetZones.length<1)return[];function n(l,d,S){return S>=l&&S<=d}function o(l,d){return l.modulatorSource===d.modulatorSource&&l.modulatorDestination===d.modulatorDestination&&l.modulationSecondarySrc===d.modulationSecondarySrc&&l.transformType===d.transformType}function E(l,d){l.push(...d.filter(S=>!l.find(D=>D.generatorType===S.generatorType)))}function i(l,d){l.push(...d.filter(S=>!l.find(D=>o(S,D))))}let h=[],c=this.presetZones[0].isGlobal?[...this.presetZones[0].generators]:[],f=this.presetZones[0].isGlobal?[...this.presetZones[0].modulators]:[];return this.presetZones.filter(l=>n(l.keyRange.min,l.keyRange.max,A)&&n(l.velRange.min,l.velRange.max,t)&&!l.isGlobal).forEach(l=>{if(l.instrument.instrumentZones.length<1)return;let d=l.generators,S=l.modulators,D=l.instrument.instrumentZones[0].isGlobal?[...l.instrument.instrumentZones[0].generators]:[],k=l.instrument.instrumentZones[0].isGlobal?[...l.instrument.instrumentZones[0].modulators]:[];l.instrument.instrumentZones.filter(M=>n(M.keyRange.min,M.keyRange.max,A)&&n(M.velRange.min,M.velRange.max,t)&&!M.isGlobal).forEach(M=>{let N=[...M.generators],Z=[...M.modulators];E(d,c),E(N,D),i(S,f),i(Z,k),i(Z,ys);let T=[...Z];for(let r=0;ro(sA,z));K!==-1?T[K]=T[K].sumTransform(sA):T.push(sA)}h.push({instrumentGenerators:N,presetGenerators:d,modulators:T,sample:M.sample,sampleID:M.generators.find(r=>r.generatorType===g.sampleID).generatorValue})})}),this.foundSamplesAndGenerators[A][t]=h,h}};var De=class{velRange={min:0,max:127};keyRange={min:0,max:127};isGlobal=!1;generators=[];modulators=[]};var WA=class extends De{sample=void 0;useCount=0;deleteZone(){this.useCount--,!this.isGlobal&&this.sample.useCount--}},Ce=class extends De{instrument=void 0;deleteZone(){this.isGlobal||this.instrument.removeUseCount()}};var Ee=class{constructor(){this.instrumentName="",this.instrumentZones=[],this._useCount=0}addUseCount(){this._useCount++,this.instrumentZones.forEach(A=>A.useCount++)}removeUseCount(){this._useCount--;for(let A=0;AA.deleteZone()),this.instrumentZones.length=0}safeDeleteZone(A){return this.instrumentZones[A].useCount--,this.instrumentZones[A].useCount<1?(this.deleteZone(A),!0):!1}deleteZone(A){this.instrumentZones[A].deleteZone(),this.instrumentZones.splice(A,1)}};var Xe=class extends ge{constructor(A,t){super(),this.program=t&127,this.bank=A>>8&127,A>>31&&(this.bank=128),this.DLSInstrument=new Ee,this.DLSInstrument.addUseCount();let n=new Ce;n.instrument=this.DLSInstrument,this.presetZones=[n]}};function Vn(e){this.verifyHeader(e,"LIST"),this.verifyText(V(e.chunkData,4),"ins ");let A=[];for(;e.chunkData.length>e.chunkData.currentIndex;)A.push(O(e.chunkData));let t=A.find(d=>d.header==="insh");if(!t)throw X(),new Error("No instrument header!");let s=y(t.chunkData,4),n=y(t.chunkData,4),o=y(t.chunkData,4),E=new Xe(n,o),i="unnamedPreset",h=SA(A,"INFO");if(h){let d=O(h.chunkData);for(;d.header!=="INAM";)d=O(h.chunkData);i=V(d.chunkData,d.chunkData.length).trim()}E.presetName=i,E.DLSInstrument.instrumentName=i,jA(`%cParsing %c"${i}"%c...`,a.info,a.recognized,a.info);let c=SA(A,"lrgn");if(!c)throw X(),new Error("No region list!");let f=new WA;f.isGlobal=!0;let Q=SA(A,"lart"),l=SA(A,"lar2");this.readLart(Q,l,f),E.DLSInstrument.instrumentZones.push(f);for(let d=0;d>10&15;x===lA.linear&&k!==lA.linear&&(x=k);let M=s>>14&1,N=s>>15&1;E===g.initialAttenuation&&(N=!N),Q=qA(x,M,N,i.isCC,i.enum)}let l=s>>4&15,d=s>>8&1,S=s>>9&1,D=qA(l,d,S,f.isCC,f.enum);if(h){let k=D;D=Q,Q=k}return new rA({srcEnum:Q,secSrcEnum:D,dest:E,transform:0,amt:n})}function Gt(e,A){let t=e.chunkData,s=[],n=[];y(t,4);let o=y(t,4);for(let E=0;E>16;if(i===0&&h===0&&f===0){let l;switch(c){case R.pan:l=new b(g.pan,Q);break;case R.gain:l=new b(g.initialAttenuation,-Q*10/.4);break;case R.filterCutoff:l=new b(g.initialFilterFc,Q);break;case R.filterQ:l=new b(g.initialFilterQ,Q);break;case R.modLfoFreq:l=new b(g.freqModLFO,Q);break;case R.modLfoDelay:l=new b(g.delayModLFO,Q);break;case R.vibLfoFreq:l=new b(g.freqVibLFO,Q);break;case R.vibLfoDelay:l=new b(g.delayVibLFO,Q);break;case R.volEnvDelay:l=new b(g.delayVolEnv,Q);break;case R.volEnvAttack:l=new b(g.attackVolEnv,Q);break;case R.volEnvHold:l=new b(g.holdVolEnv,Q);break;case R.volEnvDecay:l=new b(g.decayVolEnv,Q);break;case R.volEnvRelease:l=new b(g.releaseVolEnv,Q);break;case R.volEnvSustain:let d=(1e3-Q)/10;l=new b(g.sustainVolEnv,d*10);break;case R.modEnvDelay:l=new b(g.delayModEnv,Q);break;case R.modEnvAttack:l=new b(g.attackModEnv,Q);break;case R.modEnvHold:l=new b(g.holdModEnv,Q);break;case R.modEnvDecay:l=new b(g.decayModEnv,Q);break;case R.modEnvRelease:l=new b(g.releaseModEnv,Q);break;case R.modEnvSustain:let S=1e3-Q;l=new b(g.sustainModEnv,S);break;case R.reverbSend:l=new b(g.reverbEffectsSend,Q);break;case R.chorusSend:l=new b(g.chorusEffectsSend,Q);break;case R.pitch:let D=Math.floor(Q/100),k=Math.floor(Q-D*100);l=new b(g.fineTune,k),s.push(new b(g.coarseTune,D));break}l&&s.push(l)}else{let l=!0;if(h===_.none?i===_.modLfo&&c===R.pitch?s.push(new b(g.modLfoToPitch,Q)):i===_.modLfo&&c===R.gain?s.push(new b(g.modLfoToVolume,Q)):i===_.modLfo&&c===R.filterCutoff?s.push(new b(g.modLfoToFilterFc,Q)):i===_.vibratoLfo&&c===R.pitch?s.push(new b(g.vibLfoToPitch,Q)):i===_.modEnv&&c===R.pitch?s.push(new b(g.modEnvToPitch,Q)):i===_.modEnv&&c===R.filterCutoff?s.push(new b(g.modEnvToFilterFc,Q)):i===_.keyNum&&c===R.volEnvHold?s.push(new b(g.keyNumToVolEnvHold,Q/-127)):i===_.keyNum&&c===R.volEnvDecay?s.push(new b(g.keyNumToVolEnvDecay,Q/-127)):i===_.keyNum&&c===R.modEnvHold?s.push(new b(g.keyNumToModEnvHold,Q/-127)):i===_.keyNum&&c===R.modEnvDecay?s.push(new b(g.keyNumToModEnvDecay,Q/-127)):l=!1:l=!1,l===!1){let d=Zn(i,h,c,f,Q);d?(n.push(d),m("%cSucceeded converting to SF2 Modulator!",a.recognized)):Y("Failed converting to SF2 Modulator!")}}}return n.push(new rA({srcEnum:219,dest:g.reverbEffectsSend,amt:1e3,secSrcEnum:0,transform:0}),new rA({srcEnum:221,dest:g.chorusEffectsSend,amt:1e3,secSrcEnum:0,transform:0})),A&&n.push(new rA({srcEnum:129,dest:g.vibLfoToPitch,amt:0,secSrcEnum:0,transform:0}),new rA({srcEnum:13,dest:g.vibLfoToPitch,amt:0,secSrcEnum:0,transform:0})),{modulators:n,generators:s}}function Xn(e,A,t){if(e)for(;e.chunkData.currentIndexe.chunkData.currentIndex;)A.push(O(e.chunkData));let t=A.find(r=>r.header==="rgnh"),s=y(t.chunkData,2),n=y(t.chunkData,2),o=y(t.chunkData,2),E=y(t.chunkData,2),i=new We({min:s,max:n},{min:o,max:E});y(t.chunkData,2);let h=y(t.chunkData,2);h!==0&&i.generators.push(new b(g.exclusiveClass,h));let c=SA(A,"lart"),f=SA(A,"lar2");this.readLart(c,f,i),i.isGlobal=!1;let Q=A.find(r=>r.header==="wsmp");y(Q.chunkData,4);let l=y(Q.chunkData,2);y(Q.chunkData,2);let D=(y(Q.chunkData,4)|0)/-655360*10/.4;y(Q.chunkData,4);let k=y(Q.chunkData,4),x,M={start:0,end:0};if(k===0)x=0;else{y(Q.chunkData,4),y(Q.chunkData,4)===0?x=1:x=3,M.start=y(Q.chunkData,4);let sA=y(Q.chunkData,4);M.end=M.start+sA}let N=A.find(r=>r.header==="wlnk");if(N===void 0)return;y(N.chunkData,2),y(N.chunkData,2),y(N.chunkData,4);let Z=y(N.chunkData,4),T=this.samples[Z];if(T===void 0)throw new Error("Invalid sample ID!");return i.setWavesample(D,x,M,l,T,Z),i}var Be=class{constructor(A,t,s,n,o,E,i,h){this.sampleName=A,this.sampleRate=t,this.samplePitch=s,this.samplePitchCorrection=n,this.sampleLink=o,this.sampleType=E,this.sampleLoopStartIndex=i,this.sampleLoopEndIndex=h,this.isCompressed=(E&16)>0,this.compressedData=void 0,this.useCount=0}getRawData(){let A=new Error("Not implemented");throw A.name="NotImplementedError",A}compressSample(A,t){if(!this.isCompressed)try{this.compressedData=t([this.getAudioData()],1,this.sampleRate,A),this.sampleType|=16,this.isCompressed=!0}catch{Y(`Failed to compress ${this.sampleName}. Leaving as uncompressed!`),this.isCompressed=!1,this.compressedData=void 0,this.sampleType&=-17}}getAudioData(){let A=new Error("Not implemented");throw A.name="NotImplementedError",A}};var _e=class extends Be{constructor(A,t,s,n,o,E,i){super(A,t,s,n,0,1,o*2,(E-1)*2),this.sampleData=i}getAudioData(){return this.sampleData}sampleData;getRawData(){if(this.isCompressed){if(!this.compressedData)throw new Error("Compressed but no data??");return this.compressedData}let A=new Uint8Array(this.sampleData.length*2);for(let t=0;t>8&255}return A}};function _n(e){DA("%cLoading Wave samples...",a.recognized);let A=0;for(;e.chunkData.currentIndexK.header==="fmt ");if(!n)throw new Error("No fmt chunk in the wave file!");if(y(n.chunkData,2)!==1)throw new Error("Only PCM format in WAVE is supported.");if(y(n.chunkData,2)!==1)throw new Error("Only mono samples are supported.");let i=y(n.chunkData,4);y(n.chunkData,4),y(n.chunkData,2);let h=y(n.chunkData,2),c=h/8,f=Math.pow(2,c*8-1),Q=Math.pow(2,c*8),l,d=!1;h===8?(l=255,d=!0):l=f;let S=s.find(K=>K.header==="data");if(!S)throw new Error("No data chunk in the wave chunk!");let D=S.size/c,k=new Float32Array(D);for(let K=0;K=f&&(z-=Q),k[K]=z/l)}let x=60,M=0,N=0,Z=k.length-1,T=s.find(K=>K.header==="wsmp");if(T){if(y(T.chunkData,4),x=y(T.chunkData,2),M=ie(T.chunkData[T.chunkData.currentIndex++],T.chunkData[T.chunkData.currentIndex++]),y(T.chunkData,4),y(T.chunkData,4),y(T.chunkData,4)===1){y(T.chunkData,8),N=y(T.chunkData,4);let z=y(T.chunkData,4);Z=N+z}}else Y("No wsmp chunk in wave... using sane defaults.");let r=SA(s,"INFO"),sA=`Unnamed ${A}`;if(r){let K=O(r.chunkData);for(;K.header!=="INAM"&&r.chunkData.currentIndexh.header==="colh");if(!o)throw X(),new Error("No colh chunk!");this.instrumentAmount=y(o.chunkData,4),m(`%cInstruments amount: %c${this.instrumentAmount}`,a.info,a.recognized);let E=SA(s,"wvpl");this.readDLSSamples(E);let i=SA(s,"lins");if(!i)throw X(),new Error("No lins chunk!");this.readDLSInstrumentList(i),m(`%cParsing finished! %c"${this.soundFontInfo.INAM||"UNNAMED"}"%c has %c${this.presets.length} %cpresets, %c${this.instruments.length}%c instruments and %c${this.samples.length}%c samples.`,a.info,a.recognized,a.info,a.recognized,a.info,a.recognized,a.info,a.recognized,a.info),X()}verifyHeader(A,t){if(A.header.toLowerCase()!==t.toLowerCase())throw X(),new SyntaxError(`Invalid DLS chunk header! Expected "${t.toLowerCase()}" got "${A.header.toLowerCase()}"`)}verifyText(A,t){if(A.toLowerCase()!==t.toLowerCase())throw X(),new SyntaxError(`Invalid DLS soundfont! Expected "${t.toLowerCase()}" got "${A.toLowerCase()}"`)}};OA.prototype.readDLSInstrumentList=Pn;OA.prototype.readDLSInstrument=Vn;OA.prototype.readRegion=Wn;OA.prototype.readLart=Xn;OA.prototype.readDLSSamples=_n;var xt=class extends Be{constructor(A,t,s,n,o,E,i,h,c,f,Q,l,d){super(A,E,i,h,c,f,n-t,o-t),this.sampleName=A,this.sampleStartIndex=t,this.sampleEndIndex=s,this.isSampleLoaded=!1,this.sampleID=l,this.sampleLength=this.sampleEndIndex-this.sampleStartIndex,this.sampleDataArray=Q,this.sampleData=new Float32Array(0),this.isCompressed&&(this.sampleLoopStartIndex+=this.sampleStartIndex,this.sampleLoopEndIndex+=this.sampleStartIndex,this.sampleLength=99999999),this.isDataRaw=d}getRawData(){let A=this.sampleDataArray;if(this.isCompressed){if(this.compressedData)return this.compressedData;let t=A.currentIndex;return A.slice(this.sampleStartIndex/2+t,this.sampleEndIndex/2+t)}else{if(!this.isDataRaw)throw new Error("Writing SF2Pack samples is not supported.");let t=A.currentIndex;return A.slice(t+this.sampleStartIndex,t+this.sampleEndIndex)}}decodeVorbis(){if(this.sampleLength<1)return;let A=this.sampleDataArray,t=A.currentIndex,s=A.slice(this.sampleStartIndex/2+t,this.sampleEndIndex/2+t);this.sampleData=new Float32Array(0);let n=vA.decode(s.buffer);this.sampleData=n.data[0]}getAudioData(){return this.isSampleLoaded?this.sampleData:this.sampleLength<1?new Float32Array(1):this.isCompressed?(this.decodeVorbis(),this.isSampleLoaded=!0,this.sampleData):this.isDataRaw?this.loadUncompressedData():this.getUncompressedReadyData()}loadUncompressedData(){if(this.isCompressed)return Y("Trying to load a compressed sample via loadUncompressedData()... aborting!"),new Float32Array(0);let A=new Float32Array(this.sampleLength/2),t=this.sampleDataArray.currentIndex,s=new Int16Array(this.sampleDataArray.slice(t+this.sampleStartIndex,t+this.sampleEndIndex).buffer);for(let n=0;ne.chunkData.currentIndex;){let o=Ho(n,e.chunkData,A,t);s.push(o),n++}return s.length>1&&s.pop(),s}function Ho(e,A,t,s){let n=V(A,20),o=y(A,4)*2,E=y(A,4)*2,i=y(A,4)*2,h=y(A,4)*2,c=y(A,4),f=A[A.currentIndex++];f===255&&(f=60);let Q=ps(A[A.currentIndex++]),l=y(A,2),d=y(A,2);return new xt(n,o,E,i,h,c,f,Q,l,d,t,e,s)}var Mt=class extends Ee{constructor(A){super(),this.instrumentName=V(A.chunkData,20).trim(),this.instrumentZoneIndex=y(A.chunkData,2),this.instrumentZonesAmount=0}getInstrumentZones(A,t){this.instrumentZonesAmount=A;for(let s=this.instrumentZoneIndex;se.chunkData.currentIndex;){let s=new Mt(e);if(t.length>0){let n=s.instrumentZoneIndex-t[t.length-1].instrumentZoneIndex;t[t.length-1].getInstrumentZones(n,A)}t.push(s)}return t.length>1&&t.pop(),t}var Nt=class extends WA{constructor(A){super(),this.generatorZoneStartIndex=y(A,2),this.modulatorZoneStartIndex=y(A,2),this.modulatorZoneSize=0,this.generatorZoneSize=0,this.isGlobal=!0}setZoneSize(A,t){this.modulatorZoneSize=A,this.generatorZoneSize=t}getGenerators(A){for(let t=this.generatorZoneStartIndex;ts.generatorType===g.sampleID);t&&(this.sample=A[t.generatorValue],this.isGlobal=!1,this.sample.useCount++)}getKeyRange(){let A=this.generators.find(t=>t.generatorType===g.keyRange);A&&(this.keyRange.min=A.generatorValue&127,this.keyRange.max=A.generatorValue>>8&127)}getVelRange(){let A=this.generators.find(t=>t.generatorType===g.velRange);A&&(this.velRange.min=A.generatorValue&127,this.velRange.max=A.generatorValue>>8&127)}};function $n(e,A,t,s){let n=[];for(;e.chunkData.length>e.chunkData.currentIndex;){let o=new Nt(e.chunkData);if(n.length>0){let E=o.modulatorZoneStartIndex-n[n.length-1].modulatorZoneStartIndex,i=o.generatorZoneStartIndex-n[n.length-1].generatorZoneStartIndex;n[n.length-1].setZoneSize(E,i),n[n.length-1].getGenerators(A),n[n.length-1].getModulators(t),n[n.length-1].getSample(s),n[n.length-1].getKeyRange(),n[n.length-1].getVelRange()}n.push(o)}return n.length>1&&n.pop(),n}var bt=class extends Ce{constructor(A){super(),this.generatorZoneStartIndex=y(A,2),this.modulatorZoneStartIndex=y(A,2),this.modulatorZoneSize=0,this.generatorZoneSize=0,this.isGlobal=!0}setZoneSize(A,t){this.modulatorZoneSize=A,this.generatorZoneSize=t}getGenerators(A){for(let t=this.generatorZoneStartIndex;ts.generatorType===g.instrument);t&&(this.instrument=A[t.generatorValue],this.instrument.addUseCount(),this.isGlobal=!1)}getKeyRange(){let A=this.generators.find(t=>t.generatorType===g.keyRange);A&&(this.keyRange.min=A.generatorValue&127,this.keyRange.max=A.generatorValue>>8&127)}getVelRange(){let A=this.generators.find(t=>t.generatorType===g.velRange);A&&(this.velRange.min=A.generatorValue&127,this.velRange.max=A.generatorValue>>8&127)}};function Ao(e,A,t,s){let n=[];for(;e.chunkData.length>e.chunkData.currentIndex;){let o=new bt(e.chunkData);if(n.length>0){let E=o.modulatorZoneStartIndex-n[n.length-1].modulatorZoneStartIndex,i=o.generatorZoneStartIndex-n[n.length-1].generatorZoneStartIndex;n[n.length-1].setZoneSize(E,i),n[n.length-1].getGenerators(A),n[n.length-1].getModulators(t),n[n.length-1].getInstrument(s),n[n.length-1].getKeyRange(),n[n.length-1].getVelRange()}n.push(o)}return n.length>1&&n.pop(),n}var Lt=class extends ge{constructor(A){super(),this.presetName=V(A.chunkData,20).trim().replace(/\d{3}:\d{3}/,""),this.program=y(A.chunkData,2),this.bank=y(A.chunkData,2),this.presetZoneStartIndex=y(A.chunkData,2),this.library=y(A.chunkData,4),this.genre=y(A.chunkData,4),this.morphology=y(A.chunkData,4),this.presetZonesAmount=0}getPresetZones(A,t){this.presetZonesAmount=A;for(let s=this.presetZoneStartIndex;se.chunkData.currentIndex;){let s=new Lt(e);if(t.length>0){let n=s.presetZoneStartIndex-t[t.length-1].presetZoneStartIndex;t[t.length-1].getPresetZones(n,A)}t.push(s)}return t.length>1&&t.pop(),t}var ze=class extends ee{constructor(A,t=!0){if(super(),t&&console.warn("Using the constructor directly is deprecated. Use loadSoundFont instead."),this.dataArray=new H(A),jA("%cParsing SoundFont...",a.info),!this.dataArray)throw X(),new TypeError("No data!");let s=O(this.dataArray,!1);this.verifyHeader(s,"riff");let n=V(this.dataArray,4).toLowerCase();if(n!=="sfbk"&&n!=="sfpk")throw X(),new SyntaxError(`Invalid soundFont! Expected "sfbk" or "sfpk" got "${n}"`);let o=n==="sfpk",E=O(this.dataArray);for(this.verifyHeader(E,"list"),V(E.chunkData,4);E.chunkData.length>E.chunkData.currentIndex;){let $=O(E.chunkData),QA;switch($.header.toLowerCase()){case"ifil":case"iver":QA=`${y($.chunkData,2)}.${y($.chunkData,2)}`;break;case"icmt":QA=V($.chunkData,$.chunkData.length,void 0,!1);break;default:QA=V($.chunkData,$.chunkData.length)}m(`%c"${$.header}": %c"${QA}"`,a.info,a.recognized),this.soundFontInfo[$.header]=QA}let i=O(this.dataArray,!1);this.verifyHeader(i,"list"),this.verifyText(V(this.dataArray,4),"sdta"),m("%cVerifying smpl chunk...",a.warn);let h=O(this.dataArray,!1);this.verifyHeader(h,"smpl");let c;if(o){m("%cSF2Pack detected, attempting to decode the smpl chunk...",a.info);try{c=vA.decode(this.dataArray.buffer.slice(this.dataArray.currentIndex,this.dataArray.currentIndex+i.size-12)).data[0]}catch($){throw X(),new Error(`SF2Pack Ogg Vorbis decode error: ${$}`)}m(`%cDecoded the smpl chunk! Length: %c${c.length}`,a.info,a.value)}else c=this.dataArray,this.sampleDataStartIndex=this.dataArray.currentIndex;m(`%cSkipping sample chunk, length: %c${i.size-12}`,a.info,a.value),this.dataArray.currentIndex+=i.size-12,m("%cLoading preset data chunk...",a.warn);let f=O(this.dataArray);this.verifyHeader(f,"list"),V(f.chunkData,4);let Q=O(f.chunkData);this.verifyHeader(Q,"phdr");let l=O(f.chunkData);this.verifyHeader(l,"pbag");let d=O(f.chunkData);this.verifyHeader(d,"pmod");let S=O(f.chunkData);this.verifyHeader(S,"pgen");let D=O(f.chunkData);this.verifyHeader(D,"inst");let k=O(f.chunkData);this.verifyHeader(k,"ibag");let x=O(f.chunkData);this.verifyHeader(x,"imod");let M=O(f.chunkData);this.verifyHeader(M,"igen");let N=O(f.chunkData);this.verifyHeader(N,"shdr"),this.dataArray.currentIndex=this.sampleDataStartIndex,this.samples.push(...zn(N,c,!o));let Z=Qt(M),T=ft(x),r=$n(k,Z,T,this.samples);this.instruments=jn(D,r);let sA=Qt(S),K=ft(d),z=Ao(l,sA,K,this.instruments);this.presets.push(...eo(Q,z)),this.presets.sort(($,QA)=>$.program-QA.program+($.bank-QA.bank)),m(`%cParsing finished! %c"${this.soundFontInfo.INAM}"%c has %c${this.presets.length} %cpresets, diff --git a/src/website/css/notification/notification.css b/src/website/css/notification/notification.css index 2d315fe4..b237721e 100644 --- a/src/website/css/notification/notification.css +++ b/src/website/css/notification/notification.css @@ -28,7 +28,6 @@ animation-fill-mode: forwards; box-shadow: #333 0 0 10px; width: max-content; - max-width: 80%; } .notification.drop{ @@ -53,6 +52,9 @@ .notification_content{ margin: 1rem; min-width: 90%; + display: flex; + flex-wrap: wrap; + flex-direction: column; } .notification .close_btn{ diff --git a/src/website/demo_main.js b/src/website/demo_main.js index 161f8f3b..cb3b7b38 100644 --- a/src/website/demo_main.js +++ b/src/website/demo_main.js @@ -483,11 +483,7 @@ demoInit(initLocale).then(() => { ], 999999, true, - undefined, - { - "display": "flex", - "flex-direction": "column" - } + undefined ) }; }); diff --git a/src/website/locale/locale_files/locale_en/export_audio.js b/src/website/locale/locale_files/locale_en/export_audio.js index 45fed6ef..389553dc 100644 --- a/src/website/locale/locale_files/locale_en/export_audio.js +++ b/src/website/locale/locale_files/locale_en/export_audio.js @@ -1,7 +1,7 @@ export const exportAudio = { button: { - title: "Save audio", - description: "Save audio as WAV, MIDI, SF2 or RMI file" + title: "Save", + description: "Save the composition to various formats" }, formats: { @@ -9,7 +9,7 @@ export const exportAudio = { formats: { wav: { button: { - title: "WAV audio", + title: "WAV audio (.wav)", description: "Export the song with modifications as a .wav audio file" }, options: { @@ -42,20 +42,24 @@ export const exportAudio = { midi: { button: { - title: "Modified MIDI", + title: "MIDI (.mid)", description: "Export the MIDI file with the controller and instrument changes applied" } }, soundfont: { button: { - title: "Trimmed soundfont", - description: "Export the soundfont trimmed to only use instruments and samples that the MIDI file uses" + title: "SoundFont (.sf2)", + description: "Export a SoundFont2 file" }, options: { title: "SF export options", confirm: "Export", + trim: { + title: "Trim", + description: "Export the soundfont trimmed to only use instruments and samples that the MIDI file uses" + }, compress: { title: "Compress", description: "Compress samples with lossy Ogg Vorbis compression if uncompressed. Significantly reduces the file size." + @@ -98,6 +102,10 @@ export const exportAudio = { bankOffset: { title: "Bank offset", description: "The bank offset of the file. Value of 0 is recommended. Only change if you know what you're doing.", + }, + adjust: { + title: "Adjust MIDI", + description: "Adjusts the MIDI file to the SoundFont. Leave this on unless you know what you're doing." } } } diff --git a/src/website/locale/locale_files/locale_en/locale.js b/src/website/locale/locale_files/locale_en/locale.js index b9fa9542..35447ec9 100644 --- a/src/website/locale/locale_files/locale_en/locale.js +++ b/src/website/locale/locale_files/locale_en/locale.js @@ -37,7 +37,7 @@ export const localeEnglish = { warnings: { outOfMemory: "Your browser ran out of memory. Consider using Firefox or SF3 soundfont instead. (see console for error).", - noMidiSupport: "MIDI Inputs are not supported by this browser, this functionality will not be available. Consider using Chrome or Firefox.", + noMidiSupport: "No MIDI ports detected, this functionality will be disabled.", chromeMobile: "SpessaSynth performs poorly on Chrome Mobile. Consider using Firefox Android instead.", warning: "Warning" }, diff --git a/src/website/locale/locale_files/locale_ja/export_audio.js b/src/website/locale/locale_files/locale_ja/export_audio.js index 73b26d84..9f76da8f 100644 --- a/src/website/locale/locale_files/locale_ja/export_audio.js +++ b/src/website/locale/locale_files/locale_ja/export_audio.js @@ -9,11 +9,11 @@ export const exportAudio = { formats: { wav: { button: { - title: "WAV音声", - description: "変更を加えた曲を.wavファイルとしてエクスポートします" + title: "WAV音声 (.wav)", + description: "変更を加えた曲を.wavオーディオファイルとしてエクスポートします" }, options: { - title: "音声エクスポートオプション", + title: "WAVエクスポートオプション", confirm: "エクスポート", normalizeVolume: { title: "音量の正規化", @@ -21,57 +21,64 @@ export const exportAudio = { }, additionalTime: { title: "追加時間(秒)", - description: "音がフェードアウトするために曲の最後に追加する時間です。 (秒)", + description: "音がフェードアウトするために曲の最後に追加する時間です。(秒)", }, + separateChannels: { title: "チャンネルを分割", description: "各チャンネルを別々のファイルとして保存します。オシロスコープビューアなどに便利です。このオプションを使用するとリバーブやコーラスが無効になります。", saving: { title: "チャンネルファイル", - save: "チャンネル {0} を保存" + save: "チャンネル{0}を保存" } } }, exportMessage: { - message: "音声をエクスポートしています...", + message: "WAV音声をエクスポートしています...", estimated: "残り時間:", - convertWav: "WAVに変換中..." + convertWav: "WAVに変換中...", } }, midi: { button: { - title: "変更されたMIDI", + title: "MIDI (.mid)", description: "コントローラーと楽器の変更が適用されたMIDIファイルをエクスポートします" } }, soundfont: { button: { - title: "トリミングされたサウンドフォント", - description: "MIDIファイルで使用されている楽器とサンプルだけにトリミングされたサウンドフォントをエクスポートします" + title: "サウンドフォント (.sf2)", + description: "SoundFont2ファイルをエクスポートします" }, + options: { title: "SFエクスポートオプション", confirm: "エクスポート", + trim: { + title: "トリミング", + description: "MIDIファイルで使用されている楽器とサンプルだけにトリミングされたサウンドフォントをエクスポートします" + }, compress: { title: "圧縮", - description: "未圧縮のサンプルをOgg Vorbisのロス圧縮で圧縮します。ファイルサイズが大幅に削減されます。" + - "サウンドフォントがすでに圧縮されている場合は、このオプションを無効にしても再圧縮されることはありません" + description: "未圧縮の場合は、Ogg Vorbisのロス圧縮でサンプルを圧縮します。ファイルサイズが大幅に削減されます。" + + "サウンドフォントがすでに圧縮されている場合、このオプションを無効にしても再圧縮されることはありません" }, quality: { title: "圧縮品質", - description: "圧縮の品質です。高いほど良い" + description: "圧縮の品質です。高いほど良いです" } } }, rmidi: { button: { - title: "埋め込まれたMIDI (.rmi)", - description: "変更されたMIDIとトリミングされたサウンドフォントを1つのファイルに埋め込んでエクスポートします。 " + + title: "埋め込みMIDI (.rmi)", + description: "変更されたMIDIとトリミングされたサウンドフォントを1つのファイルに埋め込んでエクスポートします。" + "この形式は広くサポートされていないことに注意してください" }, + progress: { title: "埋め込まれたMIDIをエクスポート中...", loading: "サウンドフォントとMIDIを読み込み中...", @@ -80,6 +87,7 @@ export const exportAudio = { saving: "RMIDIを保存中...", done: "完了しました!" }, + options: { title: "RMIDIエクスポートオプション", confirm: "エクスポート", @@ -89,11 +97,15 @@ export const exportAudio = { }, quality: { title: "圧縮品質", - description: "圧縮の品質です。高いほど良い" + description: "圧縮の品質です。高いほど良いです。" }, bankOffset: { - title: "銀行の相殺", - description: "ファイルのバンク オフセット。値 0 が推奨されます。何をしているのかわかっている場合にのみ変更してください。", + title: "バンクオフセット", + description: "ファイルのバンクオフセットです。0の値が推奨されます。変更は慎重に行ってください。", + }, + adjust: { + title: "MIDIを調整", + description: "MIDIファイルをサウンドフォントに合わせて調整します。特別な理由がない限り、このオプションはオンのままにしてください。" } } } diff --git a/src/website/locale/locale_files/locale_list.min.js b/src/website/locale/locale_files/locale_list.min.js deleted file mode 100644 index 51989380..00000000 --- a/src/website/locale/locale_files/locale_list.min.js +++ /dev/null @@ -1,5 +0,0 @@ -var e={title:"Renderer settings",noteFallingTime:{title:"Note falling time (miliseconds)",description:"How fast the notes fall (visually)"},waveformThickness:{title:"Waveform line thickness (px)",description:"How thick the waveform lines are"},waveformSampleSize:{title:"Waveform sample size",description:"How detailed the waveforms are (Note: high values might impact performance)"},waveformAmplifier:{title:"Waveform amplifier",description:"How vibrant the waveforms are"},toggleWaveformsRendering:{title:"Enable waveforms rendering",description:"Enable rendering the channel waveforms (colorful lines showing audio)"},toggleNotesRendering:{title:"Enable notes rendering",description:"Enable rendering of the falling notes when playing a MIDI file"},toggleDrawingActiveNotes:{title:"Enable drawing active notes",description:"Enable notes lighting up and glowing when they get pressed"},toggleDrawingVisualPitch:{title:"Enable drawing visual pitch",description:"Enable notes sliding left or right when the pitch wheel is applied"},toggleStabilizeWaveforms:{title:"Stabilize waveforms",description:"Enable oscilloscope triggering"}};var t={title:"Keyboard settings",selectedChannel:{title:"Selected channel",description:"The channel keyboard sends messages to",channelOption:"Channel {0}"},keyboardSize:{title:"Keyboard size",description:"The range of keys shown on the keyboard. Adjusts the MIDI note size accordingly",full:"128 keys (full)",piano:"88 keys (piano)",fiveOctaves:"5 octaves",useSongKeyRange:"Use song's key range"},toggleTheme:{title:"Use dark theme",description:"Use the dark keyboard theme"}};var o={title:"MIDI settings",midiInput:{title:"MIDI input",description:"The port to listen on for MIDI messages",disabled:"Disabled"},midiOutput:{title:"MIDI output",description:"The port to play the MIDI file to",disabled:"Use SpessaSynth"}};var i={toggleButton:"Settings",mainTitle:"Program settings",rendererSettings:e,keyboardSettings:t,midiSettings:o,interfaceSettings:{title:"Interface settings",toggleTheme:{title:"Use dark theme",description:"Enable the dark theme for the interface"},selectLanguage:{title:"Language",description:"Change the program language"},layoutDirection:{title:"Layout direction",description:"The layout direction of the renderer and keyboard",values:{downwards:"Downwards",upwards:"Upwards",leftToRight:"Left to right",rightToLeft:"Right to left"}}}};var n={toggleButton:{title:"Toggle music player mode",description:"Toggle the simplified UI version, hiding the keyboard and note visualizations"},currentlyPlaying:"Currently playing:",nothingPlaying:"Nothing is playing",nothingPlayingCopyright:"Upload a MIDI!"};var r={voiceMeter:{title:"Voices: ",description:"The current amount of voices playing on channel {0}"},pitchBendMeter:{title:"Pitch: ",description:"The current pitch bend applied to channel {0}"},panMeter:{title:"Pan: ",description:"The current stereo panning applied to channel {0} (right-click to lock)"},expressionMeter:{title:"Expression: ",description:"The current expression (loudness) of channel {0} (right-click to lock)"},volumeMeter:{title:"Volume: ",description:"The current volume of channel {0} (right-click to lock)"},modulationWheelMeter:{title:"Mod wheel: ",description:"The current modulation (usually vibrato) depth of channel {0} (right-click to lock)"},chorusMeter:{title:"Chorus: ",description:"The current level of chorus effect applied to channel {0} (right-click to lock)"},reverbMeter:{title:"Reverb: ",description:"The current level of reverb effect applied to channel {0} (right-click to lock)"},transposeMeter:{title:"Transpose: ",description:"The current transposition (key shift) of channel {0}"},presetSelector:{description:"Change the patch (instrument) channel {0} is using"},presetReset:{description:"Unlock channel {0} to allow program changes"},soloButton:{description:"Solo on channel {0}"},muteButton:{description:"Mute/unmute channel {0}"},drumToggleButton:{description:"Toggle drums on channel {0}"}};var a={toggleButton:{title:"Synthesizer controller",description:"Show the synthesizer controller"},mainVoiceMeter:{title:"Voices: ",description:"The total amount of voices currently playing"},mainVolumeMeter:{title:"Volume: ",description:"The current master volume of the synthesizer"},mainPanMeter:{title:"Pan: ",description:"The current master stereo panning of the synthesizer"},mainTransposeMeter:{title:"Transpose: ",description:"Transposes the synthesizer (in semitones or keys)"},midiPanic:{title:"MIDI Panic",description:"Stops all voices immediately"},systemReset:{title:"System reset",description:"Resets all controllers to their default values"},blackMidiMode:{title:"Black MIDI mode",description:"Toggles the High Performance Mode, simplifying the look and killing the notes faster"},disableCustomVibrato:{title:"Disable custom vibrato",description:"Disables the custom (NRPN) Vibrato permamently. Reload the website to reenable it"},helpButton:{title:"Help",description:"Opens an external website with the usage guide"},channelController:r};var s={previousSong:"Previous song",nextSong:"Next song",loopThis:"Loop this song",playPause:"Play/pause",lyrics:{show:"Show lyrics",title:"Decoded text",noLyrics:"No lyrics available...",otherText:{title:"Other text"}}};var l={button:{title:"Save audio",description:"Save audio as WAV, MIDI, SF2 or RMI file"},formats:{title:"Choose format",formats:{wav:{button:{title:"WAV audio",description:"Export the song with modifications as a .wav audio file"},options:{title:"WAV export options",confirm:"Export",normalizeVolume:{title:"Normalize volume",description:"Keep the volume at the same level, no matter how loud or quiet the MIDI is. Recommended."},additionalTime:{title:"Additional time (s)",description:"Additional time at the end of the song to allow for the sound to fade. (seconds)"},separateChannels:{title:"Separate channels",description:"Save each channel as a separate file. Useful for things like oscilloscope viewers. Note that this disables reverb and chorus.",saving:{title:"Channel files",save:"Save channel {0}"}}},exportMessage:{message:"Exporting WAV audio...",estimated:"Remaining:",convertWav:"Converting to wav..."}},midi:{button:{title:"Modified MIDI",description:"Export the MIDI file with the controller and instrument changes applied"}},soundfont:{button:{title:"Trimmed soundfont",description:"Export the soundfont trimmed to only use instruments and samples that the MIDI file uses"},options:{title:"SF export options",confirm:"Export",compress:{title:"Compress",description:"Compress samples with lossy Ogg Vorbis compression if uncompressed. Significantly reduces the file size.If the soundfont was already compressed, it won't be uncompressed even if this option is disabled"},quality:{title:"Compression quality",description:"The quality of compression. Higher is better"}}},rmidi:{button:{title:"Embedded MIDI (.rmi)",description:"Export the modified MIDI with the embedded trimmed soundfont as a single file. Note that this format isn't widely supported"},progress:{title:"Exporting embeded MIDI...",loading:"Loading Soundfont and MIDI...",modifyingMIDI:"Modifying MIDI...",modifyingSoundfont:"Trimming Soundfont...",saving:"Saving RMIDI...",done:"Done!"},options:{title:"RMIDI export options",confirm:"Export",compress:{title:"Compress",description:"Compress the Soundfont with lossy Ogg Vorbis compression. Significantly reduces the file size. Recommended."},quality:{title:"Compression quality",description:"The quality of compression. Higher is better."}}}}}};var d={localeName:"English",titleMessage:"SpessaSynth: SoundFont2 Javascript Synthesizer",demoTitleMessage:"SpessaSynth: SoundFont2 Javascript Synthesizer Online Demo",synthInit:{loadingSoundfont:"Loading SoundFont...",loadingBundledSoundfont:"Loading bundled SoundFont...",startingSynthesizer:"Starting Synthesizer...",savingSoundfont:"Saving SoundFont for reuse...",noWebAudio:"Your browser does not support Web Audio.",done:"Ready!"},midiUploadButton:"Upload your MIDI files",exportAudio:l,demoSoundfontUploadButton:"Upload the soundfont",demoGithubPage:"Project's page",demoBundledSoundfont:"Use the bundled SoundFont (22MB)",warnings:{outOfMemory:"Your browser ran out of memory. Consider using Firefox or SF3 soundfont instead.

(see console for error).",noMidiSupport:"MIDI Inputs are not supported by this browser, this functionality will not be available. Consider using Chrome or Firefox.",chromeMobile:"SpessaSynth performs poorly on Chrome Mobile.
Consider using Firefox Android instead.",warning:"Warning"},hideTopBar:{title:"Hide top bar",description:"Hide the top (title) bar to provide a more seamless experience"},musicPlayerMode:n,settings:i,synthesizerController:a,sequencerController:s};var c={title:"Ustawienia wizualizacji",noteFallingTime:{title:"Czas spadania nut (ms)",description:"Jak szybko spadaj\u0105 z g\xF3ry nuty (w milisekundach)"},waveformThickness:{title:"Grubo\u015B\u0107 lini fal (px)",description:"Jak grube s\u0105 linie fal d\u017Awi\u0119kowych"},waveformSampleSize:{title:"Rozmiar pr\xF3bki fali",description:"Jak szczeg\xF3\u0142owe s\u0105 linei fal d\u017Awi\u0119kowcyh (Uwaga: wysokie warto\u015Bci mog\u0105 pogorszy\u0107 wydajno\u015B\u0107)"},waveformAmplifier:{title:"Wzmacniasz fal",description:"Jak '\u017Cywe' s\u0105 fale. Kontroluje ich amplitud\u0119"},toggleWaveformsRendering:{title:"W\u0142\u0105cz rysowanie fal",description:"W\u0142\u0105cz rysowanie fal d\u017Awi\u0119kowych (16-tu kolorowych linii z ty\u0142u)"},toggleNotesRendering:{title:"W\u0142\u0105cz rysowanie nut",description:"W\u0142\u0105cz rysowanie spadaj\u0105cych nut podczas odtwarzania pliku MIDI"},toggleDrawingActiveNotes:{title:"W\u0142\u0105cz rysowanie aktywnych nut",description:"W\u0142\u0105cz efekt pod\u015Bwietlania si\u0119 nut przy aktywacji"},toggleDrawingVisualPitch:{title:"W\u0142\u0105cz wizualizacj\u0119 wysoko\u015Bci tonu",description:"W\u0142\u0105cz przesuwanie nut w lewo lub w prawo gdy wysoko\u015B\u0107 nut jest zmieniana"},toggleStabilizeWaveforms:{title:"W\u0142\u0105cz stabilizacj\u0119 fal",description:"W\u0142\u0105cz stabilizowanie fal d\u017Awi\u0119kowych"}};var p={title:"Ustawienia pianina",selectedChannel:{title:"Wybrany kana\u0142",description:"Kana\u0142, do kt\xF3rego b\u0119dzie pod\u0142\u0105czone pianino",channelOption:"Kana\u0142 {0}"},keyboardSize:{title:"Rozmiar pianina",description:"Zakres klawiszy widocznych na pianine. Dostosowuje r\xF3wnie\u017C szeroko\u015B\u0107 wizualizowanych nut",full:"128 klawiszy (pe\u0142en zakres)",piano:"88 klawiszy (fortepian)",fiveOctaves:"5 oktaw",useSongKeyRange:"U\u017Cyj zakresu utworu"},toggleTheme:{title:"W\u0142\u0105cz ciemny motyw",description:"W\u0142\u0105cz ciemny motyw wbudowanego pianina"}};var u={title:"Ustawienia MIDI",midiInput:{title:"Wej\u015Bcie MIDI",description:"Port MIDI, kt\xF3ry b\u0119dzie nas\u0142uchiwany",disabled:"Wy\u0142\u0105czony"},midiOutput:{title:"Wyj\u015Bcie MIDI",description:"Port MIDI, do kt\xF3rego b\u0119dzie grany utw\xF3r",disabled:"U\u017Cyj SpessaSynth"}};var m={toggleButton:"Ustawienia",mainTitle:"Ustawienia programu",rendererSettings:c,keyboardSettings:p,midiSettings:u,interfaceSettings:{title:"Ustawienia interfejsu",toggleTheme:{title:"W\u0142\u0105cz ciemny motyw",description:"W\u0142\u0105cz ciemny motyw programu"},selectLanguage:{title:"J\u0119zyk",description:"Zmie\u0144 j\u0119zyk programu"},layoutDirection:{title:"Uk\u0142ad",description:"Kierunek uk\u0142adu wizualizacji i pianina",values:{downwards:"W d\xF3\u0142",upwards:"W g\xF3r\u0119",leftToRight:"Od lewej do prawej",rightToLeft:"Od prawej do lewej"}}}};var g={toggleButton:{title:"Prze\u0142\u0105cz tryb odtwarzania muzyki",description:"Prze\u0142\u0105cz uproszczon\u0105 wersj\u0119 interfejsu, ukrywaj\u0105c pianino i wizualizacj\u0119 nut"},currentlyPlaying:"Teraz gramy:",nothingPlaying:"Nic teraz nie gra",nothingPlayingCopyright:"Wgraj jakie\u015B MIDI!"};var y={voiceMeter:{title:"D\u017Awi\u0119ki: ",description:"Aktualna ilo\u015B\u0107 d\u017Awi\u0119k\xF3w na kanale {0}"},pitchBendMeter:{title:"Wysoko\u015B\u0107: ",description:"Aktualna wysoko\u015B\u0107 tonu na kanale {0}"},panMeter:{title:"Stereo: ",description:"Aktualny efekt stereo na kanale {0} (kliknij prawym aby zablokowa\u0107)"},expressionMeter:{title:"Ekspresja: ",description:"Aktualna ekspresja (g\u0142o\u015Bno\u015Bc) kana\u0142u {0} (kliknij prawym aby zablokowa\u0107)"},volumeMeter:{title:"G\u0142o\u015Bno\u015B\u0107: ",description:"Aktualna g\u0142o\u015Bno\u015B\u0107 kana\u0142u {0} (kliknij prawym aby zablokowa\u0107)"},modulationWheelMeter:{title:"Modulacja: ",description:"Aktualna g\u0142\u0119boko\u015B\u0107 modulacji (zazwyczaj vibrato) kana\u0142u {0} (kliknij prawym aby zablokowa\u0107)"},chorusMeter:{title:"Ch\xF3r: ",description:"Aktualny efekt ch\xF3ru na kanale {0} (kliknij prawym aby zablokowa\u0107)"},reverbMeter:{title:"Pog\u0142os: ",description:"Aktualny efekt pog\u0142osu na kanale {0} (kliknij prawym aby zablokowa\u0107)"},transposeMeter:{title:"Transpozycja: ",description:"Aktualna transpozycja (przesuni\u0119cie klawiszy) kana\u0142u {0}"},presetSelector:{description:"Zmie\u0144 patch (instrument), kt\xF3rego u\u017Cywa kana\u0142 {0}"},presetReset:{description:"Odblokuj kana\u0142 {0}, aby program m\xF3g\u0142 go zmienia\u0107"},soloButton:{description:"Solo na kanale {0}"},muteButton:{description:"Wycisz/odcisz kana\u0142 {0}"},drumToggleButton:{description:"Prze\u0142\u0105cz perkusj\u0119 na kanale {0}"}};var h={toggleButton:{title:"Kontroler syntezatora",description:"Poka\u017C kontroler syntezatora"},mainVoiceMeter:{title:"D\u017Awi\u0119ki: ",description:"Ca\u0142kowita ilo\u015B\u0107 aktualnie odtwarzanych d\u017Awi\u0119k\xF3w"},mainVolumeMeter:{title:"G\u0142o\u015Bno\u015B\u0107: ",description:"Aktualna g\u0142o\u015Bno\u015B\u0107 syntezatora"},mainPanMeter:{title:"Stereo: ",description:"Aktualna pozycja stereo syntezatora"},mainTransposeMeter:{title:"Transpozycja: ",description:"Transpozycjonuje syntezator (w semitonach)"},midiPanic:{title:"MIDI Panic",description:"Zatrzymuje wszystkie d\u017Awi\u0119ki"},systemReset:{title:"Reset systemu",description:"Resetuje wszystkie kontroleru do ich domy\u015Blnych warto\u015Bci"},blackMidiMode:{title:"Tryb black MIDI",description:"Prze\u0142\u0105cza tryb wysokiej wydajno\u015Bci, upraszczaj\u0105c wygl\u0105d i pogarszaj\u0105c jako\u015B\u0107 d\u017Awi\u0119ku"},disableCustomVibrato:{title:"Wy\u0142\u0105cz niestandardowe vibrato",description:"Wy\u0142\u0105cza niestandardowe (NRPN) vibrato. Wymaga prze\u0142adowania strony aby je ponownie w\u0142\u0105czy\u0107"},helpButton:{title:"Pomoc",description:"Poka\u017C instrukcj\u0119 obs\u0142ugi"},channelController:y};var w={previousSong:"Poprzedni utw\xF3r",nextSong:"Nast\u0119pny utw\xF3r",loopThis:"Odtwarzaj w p\u0119tli",playPause:"Odtw\xF3rz/wstrzymaj",lyrics:{show:"Poka\u017C tekst",title:"Odczytany tekst",noLyrics:"Brak dost\u0119pnego tekstu...",otherText:{title:"Inny tekst"}}};var k={button:{title:"Zapisz utw\xF3r",description:"Zapisz utw\xF3r jako plik WAV, MIDI, SF2 lub RMI"},formats:{title:"Wybierz format",formats:{wav:{button:{title:"Audio WAV",description:"Eksportuj utw\xF3r ze zmianami jako plik audio .wav"},options:{title:"Opcje eksportu audio",confirm:"Eksportuj",normalizeVolume:{title:"Normalizuj g\u0142o\u015Bno\u015B\u0107",description:"Eksportuj audio z tak\u0105 sam\u0105 g\u0142o\u015Bno\u015Bci\u0105, niezale\u017Cnie od g\u0142o\u015Bno\u015Bci MIDI."},additionalTime:{title:"Dodatkowy czas (s)",description:"Dodatkowy czas na ko\u0144cu utworu aby pozwoli\u0107 na wyciszenie si\u0119 d\u017Awi\u0119ku. (sekundy)"},separateChannels:{title:"Rozdziel kana\u0142y",description:"Zapisz ka\u017Cdy kana\u0142 w osobnym pliuku. Przydatne dla rzeczy jak widok oscyloskopowy. Nale\u017Cy pami\u0119ta\u0107 \u017Ce to wy\u0142\u0105cza ekfet pog\u0142osu i ch\xF3ru",saving:{title:"Pliki audio kana\u0142\xF3w",save:"Zapisz kana\u0142 {0}"}}},exportMessage:{message:"Eksportowanie audio...",estimated:"Pozosta\u0142o:",convertWav:"Konwertowanie do wav..."}},midi:{button:{title:"Zmodyfikowane MIDI",description:"Eksportuj plik MIDI wraz ze zmianami instrument\xF3w i kontroler\xF3w"}},soundfont:{button:{title:"Zmniejszony soundfont",description:"Eksportuj soundfont zawieraj\u0105cy tylko klawisze u\u017Cyte w MIDI"},options:{title:"Opcje eksportu soundfonta",confirm:"Eksportuj",compress:{title:"Kompresuj",description:"Zkompresuj pr\xF3bki kt\xF3re nie s\u0105 zkompresowane przy u\u017Cyciu stratnego kodeka Ogg Vorbis. Znacznie zmniejsza rozmiar pliku.Je\u015Bli soundfont by\u0142 ju\u017C skompresowany, nie zostanie zdekompresowany nawet gdy ta opcja jest wy\u0142\u0105czona"},quality:{title:"Jako\u015B\u0107 kompresji",description:"Jako\u015B\u0107 skompresowanych pr\xF3bek. Im wy\u017Csza tym lepsza"}}},rmidi:{button:{title:"Osadzone MIDI (.rmi)",description:"Eksportuj zmodyfikowane MIDI wraz ze zmniejszonym soundfontem jako jeden plik. Uwaga: ten format nie jest szeroko wspierany"},progress:{title:"Exportowanie osadzonego MIDI...",loading:"Wczytywanie soundfonta i MIDI...",modifyingMIDI:"Modyfikowanie MIDI...",modifyingSoundfont:"Zmniejszanie Soundfonta...",saving:"Zapisywanie RMIDI...",done:"Gotowe!"},options:{title:"Opcje eksportu RMIDI",confirm:"Eksportuj",compress:{title:"Kompresuj",description:"Skompresuj osadzonego soundfonta za pomoc\u0105 stratnego kodeka Ogg Vorbis. Znacznie zmniejsza rozmiar pliku. Zalecane."},quality:{title:"Jako\u015B\u0107 kompresji",description:"Jako\u015B\u0107 skompresowanych pr\xF3bek. Im wy\u017Csza tym lepsza"}}}}}};var f={localeName:"Polski",titleMessage:"SpessaSynth: JavaScriptowy Syntezator SoundFont2",demoTitleMessage:"SpessaSynth: JavaScriptowy Syntezator SoundFont2 Wersja Demo",synthInit:{loadingSoundfont:"Wczytywanie SoundFonta...",loadingBundledSoundfont:"Wczytywanie wbudowanego SoundFonta...",startingSynthesizer:"Uruchamianie syntezatora...",savingSoundfont:"Zapisywanie SoundFonta do przegl\u0105darki...",noWebAudio:"Twoja przegl\u0105darka nie wspiera Web Audio.",done:"Gotowe!"},midiUploadButton:"Wgraj Twoje pliki MIDI",midiRenderButton:{title:"Eksportuj audio",description:"Zapisz audio do pliku WAV lub MIDI"},exportAudio:k,demoSoundfontUploadButton:"Wgraj SoundFonta",demoGithubPage:"Strona projektu",demoBundledSoundfont:"U\u017Cyj wbudowanego SoundFonta (22MB)",warnings:{outOfMemory:"Twojej przegl\u0105darce sko\u0144czy\u0142a si\u0119 pami\u0119\u0107. Rozwa\u017C u\u017Cycie Firefoxa albo plik\xF3w SF3.

(Zobacz b\u0142\u0105d w konsoli)",noMidiSupport:"Twoja przegl\u0105darka nie wspiera Web MIDI. Korzystanie z port\xF3w MIDI nie b\u0119dzie dost\u0119pne. Rozwa\u017C u\u017Cycie Chrome albo Firefoxa.",chromeMobile:"SpessaSynth dzia\u0142a wolno na Chromie na telefon.
Rozwa\u017C u\u017Cycie Firefoxa Android.",warning:"Uwaga"},hideTopBar:{title:"Ukryj g\xF3rny pasek",description:"Ukryj pasek tytu\u0142owy w celu poprawy widoczno\u015Bci na pionowych ekranach"},musicPlayerMode:g,settings:m,synthesizerController:h,sequencerController:w};var z={title:"\u30EC\u30F3\u30C0\u30E9\u30FC\u8A2D\u5B9A",noteFallingTime:{title:"\u30CE\u30FC\u30C8\u306E\u843D\u4E0B\u6642\u9593\uFF08\u30DF\u30EA\u79D2\uFF09",description:"\u30CE\u30FC\u30C8\u304C\u843D\u3061\u308B\u901F\u3055\uFF08\u8996\u899A\u7684\u306B\uFF09"},waveformThickness:{title:"\u6CE2\u5F62\u306E\u7DDA\u306E\u592A\u3055\uFF08\u30D4\u30AF\u30BB\u30EB\uFF09",description:"\u6CE2\u5F62\u306E\u7DDA\u306E\u592A\u3055"},waveformSampleSize:{title:"\u6CE2\u5F62\u306E\u30B5\u30F3\u30D7\u30EB\u30B5\u30A4\u30BA",description:"\u6CE2\u5F62\u306E\u8A73\u7D30\u5EA6\uFF08\u6CE8\uFF1A\u9AD8\u3044\u5024\u306F\u30D1\u30D5\u30A9\u30FC\u30DE\u30F3\u30B9\u306B\u5F71\u97FF\u3092\u4E0E\u3048\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\uFF09"},waveformAmplifier:{title:"\u6CE2\u5F62\u306E\u5897\u5E45\u5668",description:"\u6CE2\u5F62\u306E\u9BAE\u3084\u304B\u3055"},toggleWaveformsRendering:{title:"\u6CE2\u5F62\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u306E\u5207\u308A\u66FF\u3048",description:"\u30C1\u30E3\u30F3\u30CD\u30EB\u6CE2\u5F62\u306E\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u3092\u5207\u308A\u66FF\u3048\u307E\u3059\uFF08\u30AA\u30FC\u30C7\u30A3\u30AA\u3092\u8868\u793A\u3059\u308B\u30AB\u30E9\u30D5\u30EB\u306A\u7DDA\uFF09"},toggleNotesRendering:{title:"\u30CE\u30FC\u30C8\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u306E\u5207\u308A\u66FF\u3048",description:"MIDI\u30D5\u30A1\u30A4\u30EB\u3092\u518D\u751F\u3059\u308B\u969B\u306E\u843D\u4E0B\u30CE\u30FC\u30C8\u306E\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},toggleDrawingActiveNotes:{title:"\u30A2\u30AF\u30C6\u30A3\u30D6\u30CE\u30FC\u30C8\u306E\u63CF\u753B\u3092\u5207\u308A\u66FF\u3048",description:"\u30CE\u30FC\u30C8\u304C\u62BC\u3055\u308C\u305F\u3068\u304D\u306B\u5149\u308A\u8F1D\u304F\u63CF\u753B\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},toggleDrawingVisualPitch:{title:"\u30D3\u30B8\u30E5\u30A2\u30EB\u30D4\u30C3\u30C1\u63CF\u753B\u306E\u5207\u308A\u66FF\u3048",description:"\u30D4\u30C3\u30C1\u30DB\u30A4\u30FC\u30EB\u304C\u9069\u7528\u3055\u308C\u305F\u3068\u304D\u306B\u30CE\u30FC\u30C8\u304C\u5DE6\u53F3\u306B\u30B9\u30E9\u30A4\u30C9\u3059\u308B\u63CF\u753B\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},toggleStabilizeWaveforms:{title:"\u6CE2\u5F62\u3092\u5B89\u5B9A\u3055\u305B\u308B",description:"\u30AA\u30FC\u30C7\u30A3\u30AA\u6CE2\u5F62\u3092\u5B89\u5B9A\u3055\u305B\u308B\u8A2D\u5B9A\u3092\u5207\u308A\u66FF\u3048\u3001\u6CE2\u5F62\u3092\u56FA\u5B9A\u3057\u307E\u3059\u3002"}};var b={title:"\u30AD\u30FC\u30DC\u30FC\u30C9\u8A2D\u5B9A",selectedChannel:{title:"\u9078\u629E\u3055\u308C\u305F\u30C1\u30E3\u30F3\u30CD\u30EB",description:"\u30AD\u30FC\u30DC\u30FC\u30C9\u304C\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u9001\u4FE1\u3059\u308B\u30C1\u30E3\u30F3\u30CD\u30EB",channelOption:"\u30C1\u30E3\u30F3\u30CD\u30EB {0}"},keyboardSize:{title:"\u30AD\u30FC\u30DC\u30FC\u30C9\u30B5\u30A4\u30BA",description:"\u30AD\u30FC\u30DC\u30FC\u30C9\u306B\u8868\u793A\u3055\u308C\u308B\u30AD\u30FC\u306E\u7BC4\u56F2\u3002MIDI\u30CE\u30FC\u30C8\u306E\u30B5\u30A4\u30BA\u306B\u5FDC\u3058\u3066\u8ABF\u6574\u3055\u308C\u307E\u3059",full:"128\u30AD\u30FC\uFF08\u5168\u4F53\uFF09",piano:"88\u30AD\u30FC\uFF08\u30D4\u30A2\u30CE\uFF09",fiveOctaves:"5\u30AA\u30AF\u30BF\u30FC\u30D6",useSongKeyRange:"\u66F2\u306E\u30AD\u30FC\u7BC4\u56F2\u3092\u4F7F\u7528"},toggleTheme:{title:"\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048",description:"\u30AD\u30FC\u30DC\u30FC\u30C9\u306E\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"}};var I={title:"MIDI\u8A2D\u5B9A",midiInput:{title:"MIDI\u5165\u529B",description:"MIDI\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u53D7\u4FE1\u3059\u308B\u30DD\u30FC\u30C8",disabled:"\u7121\u52B9"},midiOutput:{title:"MIDI\u51FA\u529B",description:"MIDI\u30D5\u30A1\u30A4\u30EB\u3092\u518D\u751F\u3059\u308B\u30DD\u30FC\u30C8",disabled:"SpessaSynth\u3092\u4F7F\u7528"}};var M={toggleButton:"\u8A2D\u5B9A",mainTitle:"\u30D7\u30ED\u30B0\u30E9\u30E0\u8A2D\u5B9A",rendererSettings:z,keyboardSettings:b,midiSettings:I,interfaceSettings:{title:"\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u8A2D\u5B9A",toggleTheme:{title:"\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048",description:"\u30D7\u30ED\u30B0\u30E9\u30E0\u306E\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},selectLanguage:{title:"\u8A00\u8A9E",description:"\u30D7\u30ED\u30B0\u30E9\u30E0\u306E\u8A00\u8A9E\u3092\u5909\u66F4\u3057\u307E\u3059"},layoutDirection:{title:"\u30EC\u30A4\u30A2\u30A6\u30C8\u306E\u65B9\u5411",description:"\u30EC\u30F3\u30C0\u30E9\u30FC\u3068\u30AD\u30FC\u30DC\u30FC\u30C9\u306E\u30EC\u30A4\u30A2\u30A6\u30C8\u65B9\u5411",values:{downwards:"\u4E0B\u5411\u304D",upwards:"\u4E0A\u5411\u304D",leftToRight:"\u5DE6\u304B\u3089\u53F3",rightToLeft:"\u53F3\u304B\u3089\u5DE6"}}}};var S={toggleButton:{title:"\u97F3\u697D\u30D7\u30EC\u30A4\u30E4\u30FC\u30E2\u30FC\u30C9\u306E\u5207\u308A\u66FF\u3048",description:"\u7C21\u7565\u5316\u3055\u308C\u305FUI\u30D0\u30FC\u30B8\u30E7\u30F3\u306B\u5207\u308A\u66FF\u3048\u3001\u30AD\u30FC\u30DC\u30FC\u30C9\u3068\u30CE\u30FC\u30C8\u306E\u8996\u899A\u5316\u3092\u96A0\u3057\u307E\u3059"},currentlyPlaying:"\u518D\u751F\u4E2D:",nothingPlaying:"\u518D\u751F\u3057\u3066\u3044\u308B\u3082\u306E\u306F\u3042\u308A\u307E\u305B\u3093",nothingPlayingCopyright:"MIDI\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3057\u3066\u304F\u3060\u3055\u3044\uFF01"};var v={voiceMeter:{title:"\u30DC\u30A4\u30B9: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3067\u518D\u751F\u4E2D\u306E\u30DC\u30A4\u30B9\u306E\u73FE\u5728\u306E\u6570"},pitchBendMeter:{title:"\u30D4\u30C3\u30C1: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30D4\u30C3\u30C1\u30D9\u30F3\u30C9"},panMeter:{title:"\u30D1\u30F3: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30B9\u30C6\u30EC\u30AA\u30D1\u30F3\u30CB\u30F3\u30B0\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},expressionMeter:{title:"\u30A8\u30AF\u30B9\u30D7\u30EC\u30C3\u30B7\u30E7\u30F3: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u8868\u73FE\uFF08\u97F3\u91CF\uFF09\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},volumeMeter:{title:"\u30DC\u30EA\u30E5\u30FC\u30E0: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u97F3\u91CF\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},modulationWheelMeter:{title:"\u30E2\u30B8\u30E5\u30EC\u30FC\u30B7\u30E7\u30F3\u30DB\u30A4\u30FC\u30EB: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u30E2\u30B8\u30E5\u30EC\u30FC\u30B7\u30E7\u30F3\uFF08\u901A\u5E38\u306F\u30D3\u30D6\u30E9\u30FC\u30C8\uFF09\u306E\u6DF1\u3055\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},chorusMeter:{title:"\u30B3\u30FC\u30E9\u30B9: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30B3\u30FC\u30E9\u30B9\u30A8\u30D5\u30A7\u30AF\u30C8\u306E\u30EC\u30D9\u30EB\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},reverbMeter:{title:"\u30EA\u30D0\u30FC\u30D6: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30EA\u30D0\u30FC\u30D6\u30A8\u30D5\u30A7\u30AF\u30C8\u306E\u30EC\u30D9\u30EB\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},transposeMeter:{title:"\u30C8\u30E9\u30F3\u30B9\u30DD\u30FC\u30BA: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u79FB\u8ABF\uFF08\u30AD\u30FC\u30B7\u30D5\u30C8\uFF09"},presetSelector:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u304C\u4F7F\u7528\u3059\u308B\u30D1\u30C3\u30C1\uFF08\u697D\u5668\uFF09\u3092\u5909\u66F4"},presetReset:{description:"\u30D7\u30ED\u30B0\u30E9\u30E0\u5909\u66F4\u3092\u8A31\u53EF\u3059\u308B\u305F\u3081\u306B\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u30ED\u30C3\u30AF\u3092\u89E3\u9664"},soloButton:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3092\u5358\u72EC\u518D\u751F"},muteButton:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3092\u30DF\u30E5\u30FC\u30C8/\u30DF\u30E5\u30FC\u30C8\u89E3\u9664"},drumToggleButton:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3067\u30C9\u30E9\u30E0\u3092\u5207\u308A\u66FF\u3048"}};var j={toggleButton:{title:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC\u3092\u8868\u793A"},mainVoiceMeter:{title:"\u30DC\u30A4\u30B9: ",description:"\u73FE\u5728\u518D\u751F\u4E2D\u306E\u30DC\u30A4\u30B9\u306E\u7DCF\u6570"},mainVolumeMeter:{title:"\u30DC\u30EA\u30E5\u30FC\u30E0: ",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u306E\u73FE\u5728\u306E\u30DE\u30B9\u30BF\u30FC\u30DC\u30EA\u30E5\u30FC\u30E0"},mainPanMeter:{title:"\u30D1\u30F3: ",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u306E\u73FE\u5728\u306E\u30DE\u30B9\u30BF\u30FC\u30B9\u30C6\u30EC\u30AA\u30D1\u30F3\u30CB\u30F3\u30B0"},mainTransposeMeter:{title:"\u30C8\u30E9\u30F3\u30B9\u30DD\u30FC\u30BA: ",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u3092\u79FB\u8ABF\u3057\u307E\u3059\uFF08\u30BB\u30DF\u30C8\u30FC\u30F3\u307E\u305F\u306F\u30AD\u30FC\uFF09"},midiPanic:{title:"MIDI\u30D1\u30CB\u30C3\u30AF",description:"\u3059\u3079\u3066\u306E\u30DC\u30A4\u30B9\u3092\u5373\u5EA7\u306B\u505C\u6B62"},systemReset:{title:"\u30B7\u30B9\u30C6\u30E0\u30EA\u30BB\u30C3\u30C8",description:"\u3059\u3079\u3066\u306E\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC\u3092\u30C7\u30D5\u30A9\u30EB\u30C8\u5024\u306B\u30EA\u30BB\u30C3\u30C8"},blackMidiMode:{title:"\u30D6\u30E9\u30C3\u30AFMIDI\u30E2\u30FC\u30C9",description:"\u9AD8\u6027\u80FD\u30E2\u30FC\u30C9\u3092\u5207\u308A\u66FF\u3048\u3001\u898B\u305F\u76EE\u3092\u7C21\u7D20\u5316\u3057\u3001\u30CE\u30FC\u30C8\u3092\u901F\u304F\u6D88\u53BB"},disableCustomVibrato:{title:"\u30AB\u30B9\u30BF\u30E0\u30D3\u30D6\u30E9\u30FC\u30C8\u3092\u7121\u52B9\u5316",description:"\u30AB\u30B9\u30BF\u30E0\uFF08NRPN\uFF09\u30D3\u30D6\u30E9\u30FC\u30C8\u3092\u6C38\u4E45\u306B\u7121\u52B9\u5316\u3002\u518D\u5EA6\u6709\u52B9\u5316\u3059\u308B\u306B\u306F\u30A6\u30A7\u30D6\u30B5\u30A4\u30C8\u3092\u30EA\u30ED\u30FC\u30C9"},helpButton:{title:"\u30D8\u30EB\u30D7",description:"\u4F7F\u7528\u30AC\u30A4\u30C9\u3092\u8868\u793A\u3057\u307E\u3059"},channelController:v};var D={previousSong:"\u524D\u306E\u66F2",nextSong:"\u6B21\u306E\u66F2",loopThis:"\u3053\u306E\u66F2\u3092\u30EB\u30FC\u30D7",playPause:"\u518D\u751F/\u4E00\u6642\u505C\u6B62",lyrics:{show:"\u6B4C\u8A5E\u3092\u8868\u793A",title:"\u30C7\u30B3\u30FC\u30C9\u3055\u308C\u305F\u30C6\u30AD\u30B9\u30C8",noLyrics:"\u6B4C\u8A5E\u304C\u3042\u308A\u307E\u305B\u3093...",otherText:{title:"\u305D\u306E\u4ED6\u306E\u30C6\u30AD\u30B9\u30C8"}}};var x={button:{title:"\u97F3\u58F0\u3092\u4FDD\u5B58",description:"\u97F3\u58F0\u3092WAV\u3001MIDI\u3001SF2\u3001\u307E\u305F\u306FRMI\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u4FDD\u5B58"},formats:{title:"\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u3092\u9078\u629E",formats:{wav:{button:{title:"WAV\u97F3\u58F0",description:"\u5909\u66F4\u3092\u52A0\u3048\u305F\u66F2\u3092.wav\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059"},options:{title:"\u97F3\u58F0\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3",confirm:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",normalizeVolume:{title:"\u97F3\u91CF\u306E\u6B63\u898F\u5316",description:"MIDI\u306E\u97F3\u91CF\u306B\u304B\u304B\u308F\u3089\u305A\u3001\u97F3\u91CF\u3092\u4E00\u5B9A\u306B\u4FDD\u3061\u307E\u3059\u3002\u63A8\u5968\u8A2D\u5B9A\u3067\u3059\u3002"},additionalTime:{title:"\u8FFD\u52A0\u6642\u9593\uFF08\u79D2\uFF09",description:"\u97F3\u304C\u30D5\u30A7\u30FC\u30C9\u30A2\u30A6\u30C8\u3059\u308B\u305F\u3081\u306B\u66F2\u306E\u6700\u5F8C\u306B\u8FFD\u52A0\u3059\u308B\u6642\u9593\u3067\u3059\u3002 (\u79D2)"},separateChannels:{title:"\u30C1\u30E3\u30F3\u30CD\u30EB\u3092\u5206\u5272",description:"\u5404\u30C1\u30E3\u30F3\u30CD\u30EB\u3092\u5225\u3005\u306E\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u4FDD\u5B58\u3057\u307E\u3059\u3002\u30AA\u30B7\u30ED\u30B9\u30B3\u30FC\u30D7\u30D3\u30E5\u30FC\u30A2\u306A\u3069\u306B\u4FBF\u5229\u3067\u3059\u3002\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u4F7F\u7528\u3059\u308B\u3068\u30EA\u30D0\u30FC\u30D6\u3084\u30B3\u30FC\u30E9\u30B9\u304C\u7121\u52B9\u306B\u306A\u308A\u307E\u3059\u3002",saving:{title:"\u30C1\u30E3\u30F3\u30CD\u30EB\u30D5\u30A1\u30A4\u30EB",save:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3092\u4FDD\u5B58"}}},exportMessage:{message:"\u97F3\u58F0\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u3059...",estimated:"\u6B8B\u308A\u6642\u9593:",convertWav:"WAV\u306B\u5909\u63DB\u4E2D..."}},midi:{button:{title:"\u5909\u66F4\u3055\u308C\u305FMIDI",description:"\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC\u3068\u697D\u5668\u306E\u5909\u66F4\u304C\u9069\u7528\u3055\u308C\u305FMIDI\u30D5\u30A1\u30A4\u30EB\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059"}},soundfont:{button:{title:"\u30C8\u30EA\u30DF\u30F3\u30B0\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8",description:"MIDI\u30D5\u30A1\u30A4\u30EB\u3067\u4F7F\u7528\u3055\u308C\u3066\u3044\u308B\u697D\u5668\u3068\u30B5\u30F3\u30D7\u30EB\u3060\u3051\u306B\u30C8\u30EA\u30DF\u30F3\u30B0\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059"},options:{title:"SF\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3",confirm:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",compress:{title:"\u5727\u7E2E",description:"\u672A\u5727\u7E2E\u306E\u30B5\u30F3\u30D7\u30EB\u3092Ogg Vorbis\u306E\u30ED\u30B9\u5727\u7E2E\u3067\u5727\u7E2E\u3057\u307E\u3059\u3002\u30D5\u30A1\u30A4\u30EB\u30B5\u30A4\u30BA\u304C\u5927\u5E45\u306B\u524A\u6E1B\u3055\u308C\u307E\u3059\u3002\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u304C\u3059\u3067\u306B\u5727\u7E2E\u3055\u308C\u3066\u3044\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u518D\u5727\u7E2E\u3055\u308C\u308B\u3053\u3068\u306F\u3042\u308A\u307E\u305B\u3093"},quality:{title:"\u5727\u7E2E\u54C1\u8CEA",description:"\u5727\u7E2E\u306E\u54C1\u8CEA\u3067\u3059\u3002\u9AD8\u3044\u307B\u3069\u826F\u3044"}}},rmidi:{button:{title:"\u57CB\u3081\u8FBC\u307E\u308C\u305FMIDI (.rmi)",description:"\u5909\u66F4\u3055\u308C\u305FMIDI\u3068\u30C8\u30EA\u30DF\u30F3\u30B0\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u30921\u3064\u306E\u30D5\u30A1\u30A4\u30EB\u306B\u57CB\u3081\u8FBC\u3093\u3067\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002 \u3053\u306E\u5F62\u5F0F\u306F\u5E83\u304F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u306A\u3044\u3053\u3068\u306B\u6CE8\u610F\u3057\u3066\u304F\u3060\u3055\u3044"},progress:{title:"\u57CB\u3081\u8FBC\u307E\u308C\u305FMIDI\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u4E2D...",loading:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3068MIDI\u3092\u8AAD\u307F\u8FBC\u307F\u4E2D...",modifyingMIDI:"MIDI\u3092\u4FEE\u6B63\u4E2D...",modifyingSoundfont:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u30C8\u30EA\u30DF\u30F3\u30B0\u4E2D...",saving:"RMIDI\u3092\u4FDD\u5B58\u4E2D...",done:"\u5B8C\u4E86\u3057\u307E\u3057\u305F\uFF01"},options:{title:"RMIDI\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3",confirm:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",compress:{title:"\u5727\u7E2E",description:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092Ogg Vorbis\u306E\u30ED\u30B9\u5727\u7E2E\u3067\u5727\u7E2E\u3057\u307E\u3059\u3002\u30D5\u30A1\u30A4\u30EB\u30B5\u30A4\u30BA\u304C\u5927\u5E45\u306B\u524A\u6E1B\u3055\u308C\u307E\u3059\u3002\u63A8\u5968\u8A2D\u5B9A\u3067\u3059\u3002"},quality:{title:"\u5727\u7E2E\u54C1\u8CEA",description:"\u5727\u7E2E\u306E\u54C1\u8CEA\u3067\u3059\u3002\u9AD8\u3044\u307B\u3069\u826F\u3044"}}}}}};var T={localeName:"\u65E5\u672C\u8A9E",titleMessage:"SpessaSynth: SoundFont2 Javascript \u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC",demoTitleMessage:"SpessaSynth: SoundFont2 Javascript \u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC \u30AA\u30F3\u30E9\u30A4\u30F3\u30C7\u30E2",synthInit:{loadingSoundfont:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u8AAD\u307F\u8FBC\u3093\u3067\u3044\u307E\u3059...",loadingBundledSoundfont:"\u30D0\u30F3\u30C9\u30EB\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u8AAD\u307F\u8FBC\u3093\u3067\u3044\u307E\u3059...",startingSynthesizer:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059...",savingSoundfont:"\u518D\u5229\u7528\u306E\u305F\u3081\u306B\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u4FDD\u5B58\u3057\u3066\u3044\u307E\u3059...",noWebAudio:"\u304A\u4F7F\u3044\u306E\u30D6\u30E9\u30A6\u30B6\u306FWeb Audio\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u305B\u3093\u3002",done:"\u6E96\u5099\u5B8C\u4E86\uFF01"},midiUploadButton:"MIDI\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9",exportAudio:x,demoSoundfontUploadButton:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9",demoGithubPage:"\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30DA\u30FC\u30B8",demoBundledSoundfont:"\u30D0\u30F3\u30C9\u30EB\u3055\u308C\u305FSoundFont\u3092\u4F7F\u7528 (22MB)",warnings:{noMidiSupport:"\u3053\u306E\u30D6\u30E9\u30A6\u30B6\u306FMIDI\u5165\u529B\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u306A\u3044\u305F\u3081\u3001\u3053\u306E\u6A5F\u80FD\u306F\u5229\u7528\u3067\u304D\u307E\u305B\u3093\u3002Chrome\u307E\u305F\u306FFirefox\u3092\u4F7F\u7528\u3059\u308B\u3053\u3068\u3092\u691C\u8A0E\u3057\u3066\u304F\u3060\u3055\u3044\u3002",outOfMemory:`\u30D6\u30E9\u30A6\u30B6\u306E\u30E1\u30E2\u30EA\u304C\u4E0D\u8DB3\u3057\u307E\u3057\u305F\u3002Firefox\u3084SF3\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u306E\u4F7F\u7528\u3092\u691C\u8A0E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 - -\uFF08\u30A8\u30E9\u30FC\u306B\u3064\u3044\u3066\u306F\u30B3\u30F3\u30BD\u30FC\u30EB\u3092\u53C2\u7167\u3057\u3066\u304F\u3060\u3055\u3044\uFF09\u3002`,chromeMobile:`SpessaSynth\u306FChrome Mobile\u3067\u306E\u52D5\u4F5C\u304C\u826F\u304F\u3042\u308A\u307E\u305B\u3093\u3002 - -\u4EE3\u308F\u308A\u306BFirefox Android\u3092\u4F7F\u7528\u3059\u308B\u3053\u3068\u3092\u691C\u8A0E\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,warning:"\u6CE8\u610F"},hideTopBar:{title:"\u30C8\u30C3\u30D7\u30D0\u30FC\u3092\u96A0\u3059",description:"\u30C8\u30C3\u30D7\uFF08\u30BF\u30A4\u30C8\u30EB\uFF09\u30D0\u30FC\u3092\u96A0\u3057\u3066\u3001\u3088\u308A\u30B7\u30FC\u30E0\u30EC\u30B9\u306A\u4F53\u9A13\u3092\u63D0\u4F9B\u3057\u307E\u3059"},musicPlayerMode:S,settings:M,synthesizerController:j,sequencerController:D};var Be="en",Ee={en:d,pl:f,ja:T};export{Be as DEFAULT_LOCALE,Ee as localeList}; diff --git a/src/website/locale/locale_files/locale_pl/export_audio.js b/src/website/locale/locale_files/locale_pl/export_audio.js index 6a374760..c4fb3523 100644 --- a/src/website/locale/locale_files/locale_pl/export_audio.js +++ b/src/website/locale/locale_files/locale_pl/export_audio.js @@ -1,7 +1,7 @@ export const exportAudio = { button: { - title: "Zapisz utwór", - description: "Zapisz utwór jako plik WAV, MIDI, SF2 lub RMI" + title: "Zapisz", + description: "Zapisz w różnych formatach" }, formats: { @@ -9,7 +9,7 @@ export const exportAudio = { formats: { wav: { button: { - title: "Audio WAV", + title: "Audio WAV (.wav)", description: "Eksportuj utwór ze zmianami jako plik audio .wav" }, options: { @@ -41,20 +41,24 @@ export const exportAudio = { midi: { button: { - title: "Zmodyfikowane MIDI", + title: "MIDI (.mid)", description: "Eksportuj plik MIDI wraz ze zmianami instrumentów i kontrolerów" } }, soundfont: { button: { - title: "Zmniejszony soundfont", - description: "Eksportuj soundfont zawierający tylko klawisze użyte w MIDI" + title: "SoundFont (.sf2)", + description: "Eksportuj SoundFont" }, options: { title: "Opcje eksportu soundfonta", confirm: "Eksportuj", + trim: { + title: "Zmniejsz", + description: "Zmniejsz SoundFont aby zawierał tylko klawisze użyte w MIDI" + }, compress: { title: "Kompresuj", description: "Zkompresuj próbki które nie są zkompresowane przy użyciu stratnego kodeka Ogg Vorbis. Znacznie zmniejsza rozmiar pliku." + @@ -97,7 +101,12 @@ export const exportAudio = { bankOffset: { title: "Przesunięcie banku", description: "Przesunięcie banku w pliku. Zalecane 0. Zmień tylko jeśli wiesz co robisz.", + }, + adjust: { + title: "Adjust MIDI", + description: "Adjusts the MIDI file to the SoundFont. Leave this on unless you know what you're doing." } + } } }, diff --git a/src/website/locale/locale_files/locale_pl/locale.js b/src/website/locale/locale_files/locale_pl/locale.js index db8966ae..ad03b41a 100644 --- a/src/website/locale/locale_files/locale_pl/locale.js +++ b/src/website/locale/locale_files/locale_pl/locale.js @@ -40,7 +40,7 @@ export const localePolish = { warnings: { outOfMemory: "Twojej przeglądarce skończyła się pamięć. Rozważ użycie Firefoxa albo plików SF3. (Zobacz błąd w konsoli)", - noMidiSupport: "Twoja przeglądarka nie wspiera Web MIDI. Korzystanie z portów MIDI nie będzie dostępne. Rozważ użycie Chrome albo Firefoxa.", + noMidiSupport: "Nie wykryto MIDI. Korzystanie z portów MIDI nie będzie dostępne.", chromeMobile: "SpessaSynth działa wolno na Chromie na telefon. Rozważ użycie Firefoxa Android.", warning: "Uwaga" }, diff --git a/src/website/manager/export_rmidi.js b/src/website/manager/export_rmidi.js index 74da5c8d..21d2db7e 100644 --- a/src/website/manager/export_rmidi.js +++ b/src/website/manager/export_rmidi.js @@ -107,6 +107,23 @@ export async function _exportRMIDI() "accept": "image/*" } }, + { + type: "input", + translatePathTitle: path + "bankOffset", + attributes: { + "value": this.seq.midiData.bankOffset, + "name": "bank_offset", + "type": "number" + } + }, + { + type: "toggle", + translatePathTitle: path + "adjust", + attributes: { + "name": "adjust", + "checked": "checked" + } + }, { type: "button", textContent: this.localeManager.getLocaleString(path + "confirm"), @@ -118,6 +135,8 @@ export async function _exportRMIDI() const songTitle = n.div.querySelector("input[name='song_title']").value; const comment = n.div.querySelector("input[name='comment']").value; const genre = n.div.querySelector("input[name='genre']").value; + const bankOffset = n.div.querySelector("input[name='bank_offset']").value; + const adjust = n.div.querySelector("input[name='adjust']").checked; /** * @type {File} @@ -178,18 +197,20 @@ export async function _exportRMIDI() newFont, mid, font, - 0, + bankOffset, this.seqUI.encoding, { - name: songTitle, - comment: comment, - engineer: font.soundFontInfo["IENG"], // use soundfont egineer - picture: fileBuffer, - album: album.length > 0 ? album : undefined, - artist: artist.length > 0 ? artist : undefined, - genre: genre.length > 0 ? genre : undefined, - midiEncoding: this.seqUI.encoding // use the selected encoding - }); + name: songTitle, + comment: comment, + engineer: font.soundFontInfo["IENG"], // use soundfont egineer + picture: fileBuffer, + album: album.length > 0 ? album : undefined, + artist: artist.length > 0 ? artist : undefined, + genre: genre.length > 0 ? genre : undefined, + midiEncoding: this.seqUI.encoding // use the selected encoding + }, + adjust + ); const blob = new Blob([rmidBinary.buffer], {type: "audio/rmid"}) this.saveBlob(blob, `${songTitle || "unnamed_song"}.rmi`); message.textContent = this.localeManager.getLocaleString(localePath + "done"); diff --git a/src/website/manager/export_soundfont.js b/src/website/manager/export_soundfont.js index 1b1017cf..4663d572 100644 --- a/src/website/manager/export_soundfont.js +++ b/src/website/manager/export_soundfont.js @@ -21,7 +21,7 @@ export async function _exportSoundfont() [ { type: "toggle", - textContent: "Trim", + translatePathTitle: path + "trim", attributes: { "trim-toggle": "1", "checked": "checked" diff --git a/src/website/minified/demo_main.min.js b/src/website/minified/demo_main.min.js index 3746879b..38da692b 100644 --- a/src/website/minified/demo_main.min.js +++ b/src/website/minified/demo_main.min.js @@ -1,5 +1,5 @@ -var gm=(A=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(A,{get:(r,l)=>(typeof require<"u"?require:r)[l]}):A)(function(A){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+A+'" is not supported')});var l6=class extends Uint8Array{constructor(r){super(r),this.currentIndex=0}currentIndex};function bs(A){let r=A.reduce((d,b)=>d+b.length,0),l=new l6(r),g=0;for(let d of A)l.set(d,g),g+=d.length;return l}function f$(A){A=Math.floor(A);let r=Math.floor(A/60),l=Math.round(A-r*60);return{minutes:r,seconds:l,time:`${r.toString().padStart(2,"0")}:${l.toString().padStart(2,"0")}`}}function yB(A){return A.trim().replaceAll(".mid","").replaceAll(".rmi","").replaceAll("_"," ")}var S1={warn:"color: orange;",unrecognized:"color: red;",info:"color: aqua;",recognized:"color: lime",value:"color: yellow; background-color: black;"};var ui=class{constructor(r,l,g){this.ticks=r,this.messageStatusByte=l,this.messageData=g}};var J3={noteOff:128,noteOn:144,polyPressure:160,controllerChange:176,programChange:192,channelPressure:208,pitchBend:224,systemExclusive:240,timecode:241,songPosition:242,songSelect:243,tuneRequest:246,clock:248,start:250,continue:251,stop:252,activeSensing:254,reset:255,sequenceNumber:0,text:1,copyright:2,trackName:3,instrumentName:4,lyric:5,marker:6,cuePoint:7,midiChannelPrefix:32,midiPort:33,endOfTrack:47,setTempo:81,smpteOffset:84,timeSignature:88,keySignature:89,sequenceSpecific:127};function VQ(A){let r=A&240,l=A&15,g=-1,d=A;return r>=128&&r<=224&&(g=l,d=r),{status:d,channel:g}}var A6={bankSelect:0,modulationWheel:1,breathController:2,footController:4,portamentoTime:5,dataEntryMsb:6,mainVolume:7,balance:8,pan:10,expressionController:11,effectControl1:12,effectControl2:13,generalPurposeController1:16,generalPurposeController2:17,generalPurposeController3:18,generalPurposeController4:19,lsbForControl0BankSelect:32,lsbForControl1ModulationWheel:33,lsbForControl2BreathController:34,lsbForControl4FootController:36,lsbForControl5PortamentoTime:37,lsbForControl6DataEntry:38,lsbForControl7MainVolume:39,lsbForControl8Balance:40,lsbForControl10Pan:42,lsbForControl11ExpressionController:43,lsbForControl12EffectControl1:44,lsbForControl13EffectControl2:45,sustainPedal:64,portamentoOnOff:65,sostenutoPedal:66,softPedal:67,legatoFootswitch:68,hold2Pedal:69,soundVariation:70,timbreHarmonicContent:71,releaseTime:72,attackTime:73,brightness:74,soundController6:75,soundController7:76,soundController8:77,soundController9:78,soundController10:79,generalPurposeController5:80,generalPurposeController6:81,generalPurposeController7:82,generalPurposeController8:83,portamentoControl:84,effects1Depth:91,effects2Depth:92,effects3Depth:93,effects4Depth:94,effects5Depth:95,dataIncrement:96,dataDecrement:97,NRPNLsb:98,NRPNMsb:99,RPNLsb:100,RPNMsb:101,allSoundOff:120,resetAllControllers:121,localControlOnOff:122,allNotesOff:123,omniModeOff:124,omniModeOn:125,monoModeOn:126,polyModeOn:127};var hm=class{constructor(){this.events={noteoff:{},noteon:{},pitchwheel:{},controllerchange:{},programchange:{},channelpressure:{},polypressure:{},drumchange:{},stopall:{},newchannel:{},mutechannel:{},presetlistchange:{},allcontrollerreset:{},soundfonterror:{}}}addEvent(r,l,g){this.events[r][l]=g}removeEvent(r,l){delete this.events[r][l]}callEvent(r,l){this.events[r]&&Object.values(this.events[r]).forEach(g=>g(l))}};var wB={nodesAmount:4,defaultDelay:.03,delayVariation:.01,stereoDifference:.02,oscillatorFrequency:.3,oscillatorFrequencyVariation:.05,oscillatorGain:.003},fm=class{constructor(r,l=wB){let g=r.context;this.input=new ChannelSplitterNode(g,{numberOfOutputs:2});let d=new ChannelMergerNode(g,{numberOfInputs:2}),b=[],I0=[],b0=l.oscillatorFrequency,m0=l.defaultDelay;for(let Y0=0;Y0{let b=await d.arrayBuffer();l.buffer=await A.decodeAudioData(b)})}return l}var Ke={noteOff:0,noteOn:1,ccChange:2,programChange:3,channelPressure:4,polyPressure:5,killNote:6,ccReset:7,setChannelVibrato:8,soundFontManager:9,stopAll:10,killNotes:11,muteChannel:12,addNewChannel:13,customcCcChange:14,debugMessage:15,systemExclusive:16,setMasterParameter:17,setDrums:18,pitchWheel:19,transpose:20,highPerformanceMode:21,lockController:22,sequencerSpecific:23,requestSynthesizerSnapshot:24,setLogLevel:25},um={mainVolume:0,masterPan:1,voicesCap:2},Hi=-1,u$={channelProperties:0,eventCall:1,reportedCurrentTime:2,sequencerSpecific:3,synthesizerSnapshot:4,ready:5,soundfontError:6};var pD=!0,QD=!0,kB=!0;function J5(...A){pD&&console.info(...A)}function b4(...A){QD&&console.warn(...A)}function ar(...A){kB&&console.group(...A)}function ei(...A){kB&&console.groupCollapsed(...A)}function e4(){kB&&console.groupEnd()}var ZQ={chorusEnabled:!0,chorusConfig:wB,reverbEnabled:!0,reverbImpulseResponse:void 0};var mC={reloadSoundFont:0,addNewSoundFont:2,deleteSoundFont:3,rearrangeSoundFonts:4};var Im=class{constructor(r){this.soundfontList=[{id:"main",bankOffset:0}],this._port=r.worklet.port,this.synth=r}_sendToWorklet(r,l){this._port.postMessage({messageType:Ke.soundFontManager,messageData:[r,l]})}async addNewSoundFont(r,l,g=0){if(this.soundfontList.find(d=>d.id===l)!==void 0)throw new Error("Cannot overwrite the existing soundfont. Use soundfontManager.delete(id) instead.");this._sendToWorklet(mC.addNewSoundFont,[r,l,g]),await new Promise(d=>this.synth.resolveWhenReady=d),this.soundfontList.push({id:l,bankOffset:g})}deleteSoundFont(r){if(this.soundfontList.length===0){b4("1 soundfont left. Aborting!");return}if(this.soundfontList.findIndex(l=>l.id===r)===-1){b4(`No soundfont with id of "${r}" found. Aborting!`);return}this._sendToWorklet(mC.deleteSoundFont,r)}rearrangeSoundFonts(r){this._sendToWorklet(mC.rearrangeSoundFonts,r),this.soundfontList.sort((l,g)=>r.indexOf(l.id)-r.indexOf(g.id))}async reloadManager(r){this._sendToWorklet(mC.reloadSoundFont,r),await new Promise(l=>this.synth.resolveWhenReady=l)}};var yD="spessasynth-worklet-system",vB=450,ki=9,wD=16;var ah=class{constructor(r,l,g=!0,d=void 0,b=ZQ){J5("%cInitializing SpessaSynth synthesizer...",S1.info),this.context=r.context;let I0=d?.oneOutput===!0;this.eventHandler=new hm,this._voiceCap=vB,this._outputsAmount=wD,this.channelsAmount=this._outputsAmount,this.resolveWhenReady=void 0,this.isReady=new Promise(Y0=>this.resolveWhenReady=Y0),this.channelProperties=[];for(let Y0=0;Y0this.handleMessage(Y0.data),this.soundfontManager=new Im(this),this._snapshotCallback=void 0,this.sequencerCallbackFunction=void 0,b.reverbEnabled&&!I0&&(this.reverbProcessor=zQ(this.context,b.reverbImpulseResponse),this.reverbProcessor.connect(r),this.worklet.connect(this.reverbProcessor,0)),b.chorusEnabled&&!I0&&(this.chorusProcessor=new fm(r,b.chorusConfig),this.worklet.connect(this.chorusProcessor.input,1)),I0)this.worklet.connect(r,0);else for(let Y0=2;Y0{this.channelsAmount++})}get voiceCap(){return this._voiceCap}set voiceCap(r){this.post({messageType:Ke.setMasterParameter,messageData:[um.voicesCap,r]}),this._voiceCap=r}set highPerformanceMode(r){this._highPerformanceMode=r}get highPerformanceMode(){return this._highPerformanceMode}setLogLevel(r,l,g,d){this.post({channelNumber:-1,messageType:Ke.setLogLevel,messageData:[r,l,g,d]})}handleMessage(r){let l=r.messageData;switch(r.messageType){case u$.channelProperties:this.channelProperties=l,this._voicesAmount=this.channelProperties.reduce((g,d)=>g+d.voicesAmount,0);break;case u$.eventCall:this.eventHandler.callEvent(l.eventName,l.eventData);break;case u$.sequencerSpecific:this.sequencerCallbackFunction&&this.sequencerCallbackFunction(l.messageType,l.messageData);break;case u$.synthesizerSnapshot:this._snapshotCallback&&this._snapshotCallback(l);break;case u$.ready:this.resolveWhenReady();break;case u$.soundfontError:b4(new Error(l)),this.eventHandler.callEvent("soundfonterror",l)}}async getSynthesizerSnapshot(){return new Promise(r=>{this._snapshotCallback=l=>{this._snapshotCallback=void 0,r(l)},this.post({messageType:Ke.requestSynthesizerSnapshot,messageData:void 0,channelNumber:Hi})})}addNewChannel(r=!0){this.channelProperties.push({voicesAmount:0,pitchBend:0,pitchBendRangeSemitones:0,isMuted:!1,isDrum:!1}),r&&this.post({channelNumber:0,messageType:Ke.addNewChannel,messageData:null})}setVibrato(r,l){this.post({channelNumber:r,messageType:Ke.setChannelVibrato,messageData:l})}connectIndividualOutputs(r){if(r.length!==this._outputsAmount)throw new Error(`input nodes amount differs from the system's outputs amount! - Expected ${this._outputsAmount} got ${r.length}`);for(let l=0;l0?this.noteOn(l.channel,r[1],g):this.noteOff(l.channel,r[1]);break;case J3.noteOff:this.noteOff(l.channel,r[1]);break;case J3.pitchBend:this.pitchWheel(l.channel,r[2],r[1]);break;case J3.controllerChange:this.controllerChange(l.channel,r[1],r[2]);break;case J3.programChange:this.programChange(l.channel,r[1]);break;case J3.polyPressure:this.polyPressure(l.channel,r[0],r[1]);break;case J3.channelPressure:this.channelPressure(l.channel,r[1]);break;case J3.systemExclusive:this.systemExclusive(new l6(r.slice(1)));break;case J3.reset:this.stopAll(!0),this.resetControllers();break;default:break}}get currentTime(){return this.context.currentTime}get voicesAmount(){return this._voicesAmount}reverbateEverythingBecauseWhyNot(){for(let r=0;r{this.pressedKeys.delete(g),this.releaseNote(g,this.channel),this.synth.noteOff(this.channel,g)},r=(g,d)=>{let b;if(Bn)b=127;else{let b0=this.keys[0].getBoundingClientRect();if(this.keyboard.classList.contains("sideways")){let m0=d.clientX-b0.left,Y0=b0.width;b=Math.floor((Y0-m0)/Y0*127)}else{let m0=d.clientY-b0.top,Y0=b0.height;b=Math.floor(m0/Y0*127)}}this.synth.noteOn(this.channel,g,b,this.enableDebugging)},l=g=>{let d=g.touches?Array.from(g.touches):[g],b=new Set;d.forEach(I0=>{let b0=document.elementFromPoint(I0.clientX,I0.clientY),m0=parseInt(b0.id.replace("note",""));b.add(m0),!(isNaN(m0)||m0<0||this.pressedKeys.has(m0))&&(this.pressedKeys.add(m0),r(m0,I0))}),this.pressedKeys.forEach(I0=>{b.has(I0)||A(I0)})};Bn||(document.addEventListener("mousedown",g=>{this.mouseHeld=!0,l(g)}),document.addEventListener("mouseup",()=>{this.mouseHeld=!1,this.pressedKeys.forEach(g=>{A(g)})}),this.keyboard.onmousemove=g=>{this.mouseHeld&&l(g)},this.keyboard.onmouseleave=()=>{this.pressedKeys.forEach(g=>{A(g)})}),this.keyboard.ontouchstart=l.bind(this),this.keyboard.ontouchend=l.bind(this),this.keyboard.ontouchmove=l.bind(this)}var jQ=20,BC=class{constructor(r,l){this.mouseHeld=!1,this.pressedKeys=new Set,this.mode="light",this.enableDebugging=!1,this.sizeChangeAnimationId=-1,this.modeChangeAnimationId=-1,this._keyRange={min:0,max:127},document.addEventListener("keydown",g=>{g.key==="Shift"&&(this.synth.controllerChange(this.channel,A6.sustainPedal,127),this.keyboard.style.filter="brightness(0.5)")}),document.addEventListener("keyup",g=>{g.key==="Shift"&&(this.synth.controllerChange(this.channel,A6.sustainPedal,0),this.keyboard.style.filter="")}),this.synth=l,this.channel=0,this.channelColors=r,this._createKeyboard(),this.synth.eventHandler.addEvent("noteon","keyboard-note-on",g=>{this.pressNote(g.midiNote,g.channel,g.velocity)}),this.synth.eventHandler.addEvent("noteoff","keyboard-note-off",g=>{this.releaseNote(g.midiNote,g.channel)}),this.synth.eventHandler.addEvent("stopall","keyboard-stop-all",()=>{this.clearNotes()}),this.synth.eventHandler.addEvent("mutechannel","keyboard-mute-channel",g=>{if(g.isMuted)for(let d=0;d<128;d++)this.releaseNote(d,g.channel)})}_createKeyboard(){this.keyboard=document.getElementById("keyboard"),this.keyboard.innerHTML="",this.keys=[],this.keyColors=[];for(let r=this._keyRange.min;r=0&&(b=l(r-1)),r<127&&(I0=l(r+1)),I0&&b?g.classList.add("between_sharps"):b?g.classList.add("left_sharp"):I0&&g.classList.add("right_sharp")}return g}toggleMode(r=!0){if(this.mode==="light"?this.mode="dark":this.mode="light",!r){this.keys.forEach(g=>{g.classList.contains("flat_key")&&g.classList.toggle("flat_dark_key")});return}this.modeChangeAnimationId&&clearTimeout(this.modeChangeAnimationId),this.keyboard.classList.add("mode_transform"),document.body.scrollHeight<=window.innerHeight&&document.body.classList.add("no_scroll"),this.modeChangeAnimationId=setTimeout(()=>{this.keys.forEach(g=>{g.classList.contains("flat_key")&&g.classList.toggle("flat_dark_key")}),this.keyboard.classList.remove("mode_transform"),setTimeout(()=>document.body.classList.remove("no_scroll"),500)},500)}get keyRange(){return this._keyRange}set keyRange(r){if(r.max===void 0||r.min===void 0)throw new TypeError("No min or max property!");if(r.min>r.max){let l=r.min;r.min=r.max,r.max=l}r.min=Math.max(0,r.min),r.max=Math.min(127,r.max),this.setKeyRange(r,!0)}setKeyRange(r,l=!0){Math.abs(r.max-r.min)<24&&(r.min-=12,r.max=r.min+24);let d=900/(r.max-r.min+5),b=document.styleSheets[0].cssRules,I0;for(let b0 of b)if(b0.selectorText==="#keyboard .key"){I0=b0;break}if(I0.style.setProperty("--pressed-transform-skew",`${8e-4/(d/7)}`),l){this.sizeChangeAnimationId&&clearTimeout(this.sizeChangeAnimationId);let b0=getComputedStyle(this.keyboard),m0=parseFloat(b0.getPropertyValue("--current-min-height").replace(/[^\d.]+/g,"")),Y0=this.keyboard.getBoundingClientRect().height,m1=d/m0,F=Y0*m1-Y0,j0=(this._keyRange.min+this._keyRange.max)/2,K0=(r.min+r.max)/2;this._keyRange=r;let F1=this.keys.find(_5=>_5.classList.contains("sharp_key")).getBoundingClientRect().width,B2=(j0-K0)*F1,b1=parseFloat(b0.getPropertyValue("--key-border-radius").replace(/[^\d.]+/g,""));this.keyboard.style.marginTop=`${F}px`,this.keyboard.style.transition="",this.keyboard.style.transform=`scale(${m1}) translateX(${B2}px)`,this.keyboard.style.setProperty("--key-border-radius",`${b1/m1}vmin`),this.sizeChangeAnimationId=setTimeout(()=>{this.keyboard.style.setProperty("--current-min-height",`${d}`),this.keyboard.style.transition="none",this.keyboard.style.transform="",this.keyboard.style.marginTop="",this.keyboard.style.setProperty("--key-border-radius",""),this._createKeyboard(),setTimeout(()=>this.keyboard.style.transition="",75)},500)}else this.keyboard.style.setProperty("--current-min-height",`${d}`),this._keyRange=r,this._createKeyboard()}selectChannel(r){this.channel=r}pressNote(r,l,g){let d=this.keys[r-this._keyRange.min];if(d===void 0)return;d.classList.add("pressed");let b=d.classList.contains("sharp_key"),I0=g/127,b0=this.channelColors[l%16].match(/\d+(\.\d+)?/g).map(parseFloat),m0;if(!b&&this.mode==="light"?m0=`rgba(${b0.slice(0,3).map(m1=>255-(255-m1)*I0).join(", ")}, ${b0[3]})`:m0=`rgba(${b0.slice(0,3).map(m1=>m1*I0).join(", ")}, ${b0[3]})`,d.style.background=m0,this.mode==="dark"){let Y0=jQ*I0;d.style.boxShadow=`${m0} 0px 0px ${Y0}px ${Y0/5}px`}this.keyColors[r-this._keyRange.min].push(this.channelColors[l%16])}releaseNote(r,l){let g=this.keys[r-this._keyRange.min];if(g===void 0)return;l%=this.channelColors.length;let d=this.keyColors[r-this._keyRange.min];if(!d)return;let b=d.findLastIndex(I0=>I0===this.channelColors[l]);b!==-1&&(d.splice(b,1),g.style.background=d[d.length-1],this.mode==="dark"&&(g.style.boxShadow=`0px 0px ${jQ}px ${d[d.length-1]}`),d.length<1&&(g.classList.remove("pressed"),g.style.background="",g.style.boxShadow=""))}clearNotes(){this.keys.forEach((r,l)=>{r.classList.remove("pressed"),r.style.background="",r.style.boxShadow="",this.keyColors[l]=[]})}};BC.prototype._handlePointers=WQ;function I$(A,r){let l=A.replace(/[^\d,]/g,"").split(",");return`rgb(${r(parseInt(l[0]))}, ${r(parseInt(l[1]))}, ${r(parseInt(l[2]))})`}var vD="#000";function XQ(A,r,l){A.forEach(g=>{if(g.pressedProgress===0)return;r.fillStyle=g.color;let d=g.pressedProgress*g.velocity;if(r.globalAlpha=.5*d,l){r.fillRect(g.xPos,g.yPos-g.height*d,g.width,g.height*(d*2+1)),r.globalAlpha=1;return}r.fillRect(g.xPos-g.width*d,g.yPos,g.width*(d*2+1),g.height),r.globalAlpha=1}),A.forEach(g=>{r.fillStyle=g.color,r.save(),r.translate(g.xPos,g.yPos),r.fillRect(0,0,g.width,g.height),r.restore(),r.strokeStyle=vD,r.lineWidth=g.stroke,r.strokeRect(g.xPos,g.yPos,g.width,g.height)})}var SB=!1;function ey(A=!0,r=!1){let l=(this.seq===void 0||this?.seq?.paused===!0)&&this.synth.voicesAmount===0&&!r;if(!this.renderBool||l)if(SB){A&&requestAnimationFrame(this.render.bind(this));return}else SB=!0;else SB=!1;if(A&&this.drawingContext.clearRect(0,0,this.canvas.width,this.canvas.height),this.renderAnalysers&&!this.synth.highPerformanceMode&&this.renderWaveforms(),this.renderNotes&&this.noteTimes){let b=this.computeNotePositions(this.synth.highPerformanceMode);this.synth.highPerformanceMode||XQ(b,this.drawingContext,this.sideways)}let g=performance.now()-this.frameTimeStart;this.frameTimeStart=performance.now();let d=1e3/g;this.drawingContext.textBaseline="hanging",this.drawingContext.textAlign="end",this.drawingContext.font=`${DB}px Verdana`,this.drawingContext.fillStyle="white",this.drawingContext.strokeStyle="white",this.drawingContext.fillText(`${this.notesOnScreen} notes`,this.canvas.width,DB+5),this.drawingContext.fillText(Math.round(d).toString()+" FPS",this.canvas.width,5),this.onRender&&this.onRender(),A&&requestAnimationFrame(this.render.bind(this))}function ty(A=!1){this.notesOnScreen=0;let r=this.sideways?this.canvas.height:this.canvas.width,l=this.sideways?this.canvas.width:this.canvas.height,g=this.keyRange.max-this.keyRange.min,d=r/(g+1),b=d-E$*2,I0=this.noteFallingTimeMs/1e3,b0=this.noteAfterTriggerTimeMs/1e3,m0=this.seq.currentHighResolutionTime,Y0=m0-b0,m1=I0+b0,F=Y0+m1,j0=ry/m1,K0=[];this.synth.channelProperties.forEach(B2=>{if(this.showVisualPitch){let b1=B2.pitchBend-8192+this.visualPitchBendOffset;K0.push(B2.pitchBendRangeSemitones*(b1/8192*d))}else K0.push(0)});let F1=[];return this.noteTimes.forEach((B2,b1)=>{if(B2.renderStartIndex>=B2.notes.length||!this.renderChannels[b1])return;let _5=B2.renderStartIndex,v2=B2.notes,Y2=v2[_5],K5=-1;for(;Y2.start<=F&&(_5++,!(this.notesOnScreen>ny));){let U5=Y2.start+Y2.length;if(U5>Y0&&Y2.length>0){let $0=Y2.length/m1*l-E$*2;if(this.notesOnScreen<1e3||$0>j0){K5===-1&&(K5=_5-1);let H5=(Y2.start-Y0)/m1*l,n6;if(this._notesFall?n6=l-$0-H5+E$:n6=H5+E$,Y2.midiNotethis.keyRange.max){if(_5>=v2.length)break;Y2=v2[_5];continue}let b6=Y2.midiNote-this.keyRange.min,H6=d*b6+E$,c6,w4,M4,K4;if(this.sideways?(c6=n6,w4=H6,K4=b,M4=$0):(w4=n6,c6=H6,M4=b,K4=$0),this.notesOnScreen++,A)this.drawingContext.fillStyle=this.plainColors[b1],this.drawingContext.fillRect(c6+d$+E$,w4+d$,M4-d$*2,K4-d$*2);else{let _4;if(Y2.start>m0||U5=v2.length)break;Y2=v2[_5]}K5>-1&&(B2.renderStartIndex=K5)}),F1.sort((B2,b1)=>b1.height-B2.height),F1}function sy(){let A=this.canvas.width/4,r=this.canvas.height/4;this.channelAnalysers.forEach((l,g)=>{let d=g%4,b=Math.floor(g/4),I0=!1;for(let F=g;F0){I0=!0;break}if(!I0){let F=this.canvas.width/4,j0=this.canvas.height/4,K0=F*d,F1=j0*b+j0/2;this.drawingContext.lineWidth=this.lineThickness,this.drawingContext.strokeStyle=this.channelColors[g],this.drawingContext.beginPath(),this.drawingContext.moveTo(K0,F1),this.drawingContext.lineTo(K0+F,F1),this.drawingContext.stroke();return}let b0=new Float32Array(l.frequencyBinCount);l.getFloatTimeDomainData(b0);let m0=A*d,Y0=r*b+r/2,m1=this.waveMultiplier*r;if(this.drawingContext.lineWidth=this.lineThickness,this.drawingContext.strokeStyle=this.channelColors[g],this.drawingContext.beginPath(),this._stabilizeWaveforms){let F=b0.length/4,j0=A/F,K0=Math.floor(F/2),F1=b0.length-K0;for(let v2=F1;v2>=1;v2--)if(b0[v2-1]<0&&b0[v2]>=0){F1=v2;break}let B2=m0,b1=F1-K0,_5=F1+K0;for(let v2=b1;v2<_5;v2++)this.drawingContext.lineTo(B2,Y0+b0[v2]*m1),B2+=j0}else{let F=A/b0.length,j0=m0;for(let K0=0;K0{this.renderChannels[r.channel]=!r.isMuted}),this.updateFftSize()}function ay(){for(let A=0;A{this.updateFftSize()})}function ly(){for(let A of this.channelAnalysers)A.disconnect();J5("%cAnalysers disconnected!",S1.recognized)}function cy(A){this.seq=A,this.seq.addOnTimeChangeEvent(()=>this.resetIndexes(),"renderer-time-change"),this.seq.addOnSongChangeEvent(async r=>{if(this.calculateNoteTimes(await this.seq.getMIDI()),this.resetIndexes(),r.RMIDInfo?.IPIC!==void 0){let l=new Blob([r.RMIDInfo?.IPIC.buffer]),g=URL.createObjectURL(l),d=this.canvas.classList.contains("light_mode")?0:.9;this.canvas.style.background=`linear-gradient(rgba(0, 0, 0, ${d}), rgba(0, 0, 0, ${d})), center center / cover url("${g}")`}else this.canvas.style.background=""},"renderer-song-change")}function gy(){this.noteTimes&&this.noteTimes.forEach(A=>A.renderStartIndex=0)}function bB(A,r){let l=0;for(let g=8*(r-1);g>=0;g-=8)l|=A[A.currentIndex++]<>>0}function pC(A,r){let l=new Array(r).fill(0);for(let g=r-1;g>=0;g--)l[g]=A&255,A>>=8;return l}var $h=.02;function hy(A){function r(Y0){return Y0.messageData=new l6(Y0.messageData.buffer),Y0.messageData.currentIndex=0,6e7/bB(Y0.messageData,3)}let l=[],d=A.tracks.flat();d.sort((Y0,m1)=>Y0.ticks-m1.ticks);for(let Y0=0;Y0<16;Y0++)l.push({renderStartIndex:0,notes:[]});let b=0,I0=60/(120*A.timeDivision),b0=0,m0=0;for(;b0>4,F=Y0.messageStatusByte&15;if(m1===8){let j0=l[F].notes.findLast(K0=>K0.midiNote===Y0.messageData[0]&&K0.length===-1);if(j0){let K0=b-j0.start;j0.length=K0<$h&&F===ki?$h:K0}m0--}else if(m1===9)if(Y0.messageData[1]===0){let j0=l[F].notes.findLast(K0=>K0.midiNote===Y0.messageData[0]&&K0.length===-1);if(j0){let K0=b-j0.start;j0.length=K0<$h&&F===ki?$h:K0}m0--}else l[Y0.messageStatusByte&15].notes.push({midiNote:Y0.messageData[0],start:b,length:-1,velocity:Y0.messageData[1]/127}),m0++;else Y0.messageStatusByte===81&&(I0=60/(r(Y0)*A.timeDivision));if(++b0>=d.length)break;b+=I0*(d[b0].ticks-Y0.ticks)}m0>0&&l.forEach((Y0,m1)=>Y0.notes.filter(F=>F.length===-1).forEach(F=>{let j0=b-F.start;F.length=j0<$h&&m1===ki?$h:j0})),this.noteTimes=l,J5("%cFinished loading note times and ready to render the sequence!",S1.info)}var SD=1024,DD=4096,bD=2,_D=2,dm=.6,Em=.5,d$=1,E$=1,DB=16,iy=.6,ry=2,ny=81572,vi=class{constructor(r,l,g){this.noteFallingTimeMs=1e3,this.noteAfterTriggerTimeMs=0,this._keyRange={min:0,max:127},this.visualPitchBendOffset=0,this.lineThickness=_D,this._normalAnalyserFft=SD,this._drumAnalyserFft=DD,this.waveMultiplier=bD,this._notesFall=!0,this.sideways=!1,this._renderBool=!0,this.renderAnalysers=!0,this.renderNotes=!0,this.drawActiveNotes=!0,this.showVisualPitch=!0,this._stabilizeWaveforms=!0,this.renderChannels=Array(16).fill(!0),this.canvas=g,this.drawingContext=this.canvas.getContext("2d"),this.plainColors=r,this.computeColors(),this.synth=l,this.notesOnScreen=0,this.channelAnalysers=[],this.createChannelAnalysers(l),this.connectChannelAnalysers(l)}get stabilizeWaveforms(){return this._stabilizeWaveforms}set stabilizeWaveforms(r){this._stabilizeWaveforms=r,this.updateFftSize()}set direction(r){this._notesFall=r==="down"}get direction(){return this._notesFall?"down":"up"}computeColors(){this.channelColors=this.plainColors.map(r=>{let l=this.drawingContext.createLinearGradient(0,0,this.canvas.width/128,0);return l.addColorStop(0,I$(r,g=>g*Em)),l.addColorStop(1,r),l}),this.darkerColors=this.plainColors.map(r=>{let l=this.drawingContext.createLinearGradient(0,0,this.canvas.width/128,0);return l.addColorStop(0,I$(r,g=>g*Em*dm)),l.addColorStop(1,I$(r,g=>g*dm)),l}),this.sidewaysChannelColors=this.plainColors.map(r=>{let l=this.drawingContext.createLinearGradient(0,0,0,this.canvas.width/128);return l.addColorStop(0,I$(r,g=>g*Em)),l.addColorStop(1,r),l}),this.sidewaysDarkerColors=this.plainColors.map(r=>{let l=this.drawingContext.createLinearGradient(0,0,0,this.canvas.width/128);return l.addColorStop(0,I$(r,g=>g*Em*dm)),l.addColorStop(1,I$(r,g=>g*dm)),l})}toggleDarkMode(){this.canvas.classList.toggle("light_mode")}onRender;get normalAnalyserFft(){return this._normalAnalyserFft}set normalAnalyserFft(r){this._normalAnalyserFft=r,this.updateFftSize()}get drumAnalyserFft(){return this._drumAnalyserFft}set drumAnalyserFft(r){this._drumAnalyserFft=r,this.updateFftSize()}get renderBool(){return this._renderBool}set renderBool(r){this._renderBool=r,r===!0?this.connectChannelAnalysers(this.synth):this.disconnectChannelAnalysers()}get keyRange(){return this._keyRange}set keyRange(r){if(r.max===void 0||r.min===void 0)throw new TypeError("No min or max property!");if(r.min>r.max){let l=r.min;r.min=r.max,r.max=l}r.min=Math.max(0,r.min),r.max=Math.min(127,r.max),this._keyRange=r}};vi.prototype.render=ey;vi.prototype.computeNotePositions=ty;vi.prototype.createChannelAnalysers=oy;vi.prototype.updateFftSize=ay;vi.prototype.connectChannelAnalysers=$y;vi.prototype.disconnectChannelAnalysers=ly;vi.prototype.connectSequencer=cy;vi.prototype.calculateNoteTimes=hy;vi.prototype.resetIndexes=gy;vi.prototype.renderWaveforms=sy;function n3(A,r){let l=0;for(let g=0;g>>0}function C$(A,r,l){for(let g=0;g>g*8&255}function B9(A,r){A[A.currentIndex++]=r&255,A[A.currentIndex++]=r>>8}function $t(A,r){C$(A,r,4)}function lh(A,r){let l=r<<8|A;return l>32767?l-65536:l}function fy(A){return A>127?A-256:A}function Fe(A,r,l=void 0,g=!0){if(l){let d=A.slice(A.currentIndex,A.currentIndex+r);return A.currentIndex+=r,new TextDecoder(l.replace(/[^\x20-\x7E]/g,"")).decode(d.buffer)}else{let d=!1,b="";for(let I0=0;I0127){if(g){d=!0;continue}else if(b0===0){d=!0;continue}}b+=String.fromCharCode(b0)}}return b}}function So(A,r=0){let l=A.length;r>0&&(l=r);let g=new l6(l);return Ii(g,A,r),g}function Ii(A,r,l=0){l>0&&r.length>l&&(r=r.slice(0,l));for(let g=0;gr.length)for(let g=0;gl.header!=="LIST"?!1:(l.chunkData.currentIndex=0,Fe(l.chunkData,4)===r))}function Cm(A){let r=[A&127];for(A>>=7;A>0;)r.unshift(A&127|128),A>>=7;return r}function mm(A){let r=[];for(let d of A.tracks){let b=[],I0=0,b0;for(let m0 of d){let Y0=m0.ticks-I0,m1;m0.messageStatusByte<=J3.keySignature||m0.messageStatusByte===J3.sequenceSpecific?m1=[255,m0.messageStatusByte,...Cm(m0.messageData.length),...m0.messageData]:m0.messageStatusByte===J3.systemExclusive?m1=[240,...Cm(m0.messageData.length),...m0.messageData]:(m1=[],b0!==m0.messageStatusByte&&(b0=m0.messageStatusByte,m1.push(m0.messageStatusByte)),m1.push(...m0.messageData)),b.push(...Cm(Y0)),b.push(...m1),I0+=Y0}r.push(new Uint8Array(b))}function l(d,b){for(let I0=0;I0A.chunkData.currentIndex;)r.push(new _B(A.chunkData));return r.length>1&&r.pop(),r}var x7={noController:0,noteOnVelocity:2,noteOnKeyNum:3,polyPressure:10,channelPressure:13,pitchWheel:14,pitchWheelRange:16,link:127},Qn={linear:0,concave:1,convex:2,switch:3},RD=[];for(let A=0;A<4;A++)RD.push([[],[]]);var o7=class A{constructor(r){r.srcEnum?(this.modulatorSource=r.srcEnum,this.modulatorDestination=r.dest,this.modulationSecondarySrc=r.secSrcEnum,this.transformAmount=r.amt,this.transformType=r.transform):(this.modulatorSource=n3(r,2),this.modulatorDestination=n3(r,2),this.transformAmount=lh(r[r.currentIndex++],r[r.currentIndex++]),this.modulationSecondarySrc=n3(r,2),this.transformType=n3(r,2)),this.modulatorDestination>58&&(this.modulatorDestination=R1.INVALID),this.sourcePolarity=this.modulatorSource>>9&1,this.sourceDirection=this.modulatorSource>>8&1,this.sourceUsesCC=this.modulatorSource>>7&1,this.sourceIndex=this.modulatorSource&127,this.sourceCurveType=this.modulatorSource>>10&3,this.secSrcPolarity=this.modulationSecondarySrc>>9&1,this.secSrcDirection=this.modulationSecondarySrc>>8&1,this.secSrcUsesCC=this.modulationSecondarySrc>>7&1,this.secSrcIndex=this.modulationSecondarySrc&127,this.secSrcCurveType=this.modulationSecondarySrc>>10&3}sumTransform(r){return new A({srcEnum:this.modulatorSource,secSrcEnum:this.modulationSecondarySrc,dest:this.modulatorDestination,transform:this.transformType,amt:this.transformAmount+r.transformAmount})}debugString(){function r(d,b){return Object.keys(d).find(I0=>d[I0]===b)}let l=r(Qn,this.sourceCurveType);l+=this.sourcePolarity===0?" unipolar ":" bipolar ",l+=this.sourceDirection===0?"forwards ":"backwards ",this.sourceUsesCC?l+=r(A6,this.sourceIndex):l+=r(x7,this.sourceIndex);let g=r(Qn,this.secSrcCurveType);return g+=this.secSrcPolarity===0?" unipolar ":" bipolar ",g+=this.secSrcCurveType===0?"forwards ":"backwards ",this.secSrcUsesCC?g+=r(A6,this.secSrcIndex):g+=r(x7,this.secSrcIndex),`Modulator: +var gm=(A=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(A,{get:(r,l)=>(typeof require<"u"?require:r)[l]}):A)(function(A){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+A+'" is not supported')});var l6=class extends Uint8Array{constructor(r){super(r),this.currentIndex=0}currentIndex};function bs(A){let r=A.reduce((d,b)=>d+b.length,0),l=new l6(r),g=0;for(let d of A)l.set(d,g),g+=d.length;return l}function f$(A){A=Math.floor(A);let r=Math.floor(A/60),l=Math.round(A-r*60);return{minutes:r,seconds:l,time:`${r.toString().padStart(2,"0")}:${l.toString().padStart(2,"0")}`}}function yB(A){return A.trim().replaceAll(".mid","").replaceAll(".rmi","").replaceAll("_"," ")}var S1={warn:"color: orange;",unrecognized:"color: red;",info:"color: aqua;",recognized:"color: lime",value:"color: yellow; background-color: black;"};var ui=class{constructor(r,l,g){this.ticks=r,this.messageStatusByte=l,this.messageData=g}};var J3={noteOff:128,noteOn:144,polyPressure:160,controllerChange:176,programChange:192,channelPressure:208,pitchBend:224,systemExclusive:240,timecode:241,songPosition:242,songSelect:243,tuneRequest:246,clock:248,start:250,continue:251,stop:252,activeSensing:254,reset:255,sequenceNumber:0,text:1,copyright:2,trackName:3,instrumentName:4,lyric:5,marker:6,cuePoint:7,midiChannelPrefix:32,midiPort:33,endOfTrack:47,setTempo:81,smpteOffset:84,timeSignature:88,keySignature:89,sequenceSpecific:127};function VQ(A){let r=A&240,l=A&15,g=-1,d=A;return r>=128&&r<=224&&(g=l,d=r),{status:d,channel:g}}var A6={bankSelect:0,modulationWheel:1,breathController:2,footController:4,portamentoTime:5,dataEntryMsb:6,mainVolume:7,balance:8,pan:10,expressionController:11,effectControl1:12,effectControl2:13,generalPurposeController1:16,generalPurposeController2:17,generalPurposeController3:18,generalPurposeController4:19,lsbForControl0BankSelect:32,lsbForControl1ModulationWheel:33,lsbForControl2BreathController:34,lsbForControl4FootController:36,lsbForControl5PortamentoTime:37,lsbForControl6DataEntry:38,lsbForControl7MainVolume:39,lsbForControl8Balance:40,lsbForControl10Pan:42,lsbForControl11ExpressionController:43,lsbForControl12EffectControl1:44,lsbForControl13EffectControl2:45,sustainPedal:64,portamentoOnOff:65,sostenutoPedal:66,softPedal:67,legatoFootswitch:68,hold2Pedal:69,soundVariation:70,timbreHarmonicContent:71,releaseTime:72,attackTime:73,brightness:74,soundController6:75,soundController7:76,soundController8:77,soundController9:78,soundController10:79,generalPurposeController5:80,generalPurposeController6:81,generalPurposeController7:82,generalPurposeController8:83,portamentoControl:84,effects1Depth:91,effects2Depth:92,effects3Depth:93,effects4Depth:94,effects5Depth:95,dataIncrement:96,dataDecrement:97,NRPNLsb:98,NRPNMsb:99,RPNLsb:100,RPNMsb:101,allSoundOff:120,resetAllControllers:121,localControlOnOff:122,allNotesOff:123,omniModeOff:124,omniModeOn:125,monoModeOn:126,polyModeOn:127};var hm=class{constructor(){this.events={noteoff:{},noteon:{},pitchwheel:{},controllerchange:{},programchange:{},channelpressure:{},polypressure:{},drumchange:{},stopall:{},newchannel:{},mutechannel:{},presetlistchange:{},allcontrollerreset:{},soundfonterror:{}}}addEvent(r,l,g){this.events[r][l]=g}removeEvent(r,l){delete this.events[r][l]}callEvent(r,l){this.events[r]&&Object.values(this.events[r]).forEach(g=>g(l))}};var wB={nodesAmount:4,defaultDelay:.03,delayVariation:.01,stereoDifference:.02,oscillatorFrequency:.3,oscillatorFrequencyVariation:.05,oscillatorGain:.003},fm=class{constructor(r,l=wB){let g=r.context;this.input=new ChannelSplitterNode(g,{numberOfOutputs:2});let d=new ChannelMergerNode(g,{numberOfInputs:2}),b=[],I0=[],b0=l.oscillatorFrequency,m0=l.defaultDelay;for(let q0=0;q0{let b=await d.arrayBuffer();l.buffer=await A.decodeAudioData(b)})}return l}var Je={noteOff:0,noteOn:1,ccChange:2,programChange:3,channelPressure:4,polyPressure:5,killNote:6,ccReset:7,setChannelVibrato:8,soundFontManager:9,stopAll:10,killNotes:11,muteChannel:12,addNewChannel:13,customcCcChange:14,debugMessage:15,systemExclusive:16,setMasterParameter:17,setDrums:18,pitchWheel:19,transpose:20,highPerformanceMode:21,lockController:22,sequencerSpecific:23,requestSynthesizerSnapshot:24,setLogLevel:25},um={mainVolume:0,masterPan:1,voicesCap:2},Hi=-1,u$={channelProperties:0,eventCall:1,reportedCurrentTime:2,sequencerSpecific:3,synthesizerSnapshot:4,ready:5,soundfontError:6};var pD=!0,QD=!0,kB=!0;function Y5(...A){pD&&console.info(...A)}function _4(...A){QD&&console.warn(...A)}function ar(...A){kB&&console.group(...A)}function ei(...A){kB&&console.groupCollapsed(...A)}function t4(){kB&&console.groupEnd()}var ZQ={chorusEnabled:!0,chorusConfig:wB,reverbEnabled:!0,reverbImpulseResponse:void 0};var mC={reloadSoundFont:0,addNewSoundFont:2,deleteSoundFont:3,rearrangeSoundFonts:4};var Im=class{constructor(r){this.soundfontList=[{id:"main",bankOffset:0}],this._port=r.worklet.port,this.synth=r}_sendToWorklet(r,l){this._port.postMessage({messageType:Je.soundFontManager,messageData:[r,l]})}async addNewSoundFont(r,l,g=0){if(this.soundfontList.find(d=>d.id===l)!==void 0)throw new Error("Cannot overwrite the existing soundfont. Use soundfontManager.delete(id) instead.");this._sendToWorklet(mC.addNewSoundFont,[r,l,g]),await new Promise(d=>this.synth.resolveWhenReady=d),this.soundfontList.push({id:l,bankOffset:g})}deleteSoundFont(r){if(this.soundfontList.length===0){_4("1 soundfont left. Aborting!");return}if(this.soundfontList.findIndex(l=>l.id===r)===-1){_4(`No soundfont with id of "${r}" found. Aborting!`);return}this._sendToWorklet(mC.deleteSoundFont,r)}rearrangeSoundFonts(r){this._sendToWorklet(mC.rearrangeSoundFonts,r),this.soundfontList.sort((l,g)=>r.indexOf(l.id)-r.indexOf(g.id))}async reloadManager(r){this._sendToWorklet(mC.reloadSoundFont,r),await new Promise(l=>this.synth.resolveWhenReady=l)}};var yD="spessasynth-worklet-system",vB=450,ki=9,wD=16;var ah=class{constructor(r,l,g=!0,d=void 0,b=ZQ){Y5("%cInitializing SpessaSynth synthesizer...",S1.info),this.context=r.context;let I0=d?.oneOutput===!0;this.eventHandler=new hm,this._voiceCap=vB,this._outputsAmount=wD,this.channelsAmount=this._outputsAmount,this.resolveWhenReady=void 0,this.isReady=new Promise(q0=>this.resolveWhenReady=q0),this.channelProperties=[];for(let q0=0;q0this.handleMessage(q0.data),this.soundfontManager=new Im(this),this._snapshotCallback=void 0,this.sequencerCallbackFunction=void 0,b.reverbEnabled&&!I0&&(this.reverbProcessor=zQ(this.context,b.reverbImpulseResponse),this.reverbProcessor.connect(r),this.worklet.connect(this.reverbProcessor,0)),b.chorusEnabled&&!I0&&(this.chorusProcessor=new fm(r,b.chorusConfig),this.worklet.connect(this.chorusProcessor.input,1)),I0)this.worklet.connect(r,0);else for(let q0=2;q0{this.channelsAmount++})}get voiceCap(){return this._voiceCap}set voiceCap(r){this.post({messageType:Je.setMasterParameter,messageData:[um.voicesCap,r]}),this._voiceCap=r}set highPerformanceMode(r){this._highPerformanceMode=r}get highPerformanceMode(){return this._highPerformanceMode}setLogLevel(r,l,g,d){this.post({channelNumber:-1,messageType:Je.setLogLevel,messageData:[r,l,g,d]})}handleMessage(r){let l=r.messageData;switch(r.messageType){case u$.channelProperties:this.channelProperties=l,this._voicesAmount=this.channelProperties.reduce((g,d)=>g+d.voicesAmount,0);break;case u$.eventCall:this.eventHandler.callEvent(l.eventName,l.eventData);break;case u$.sequencerSpecific:this.sequencerCallbackFunction&&this.sequencerCallbackFunction(l.messageType,l.messageData);break;case u$.synthesizerSnapshot:this._snapshotCallback&&this._snapshotCallback(l);break;case u$.ready:this.resolveWhenReady();break;case u$.soundfontError:_4(new Error(l)),this.eventHandler.callEvent("soundfonterror",l)}}async getSynthesizerSnapshot(){return new Promise(r=>{this._snapshotCallback=l=>{this._snapshotCallback=void 0,r(l)},this.post({messageType:Je.requestSynthesizerSnapshot,messageData:void 0,channelNumber:Hi})})}addNewChannel(r=!0){this.channelProperties.push({voicesAmount:0,pitchBend:0,pitchBendRangeSemitones:0,isMuted:!1,isDrum:!1}),r&&this.post({channelNumber:0,messageType:Je.addNewChannel,messageData:null})}setVibrato(r,l){this.post({channelNumber:r,messageType:Je.setChannelVibrato,messageData:l})}connectIndividualOutputs(r){if(r.length!==this._outputsAmount)throw new Error(`input nodes amount differs from the system's outputs amount! + Expected ${this._outputsAmount} got ${r.length}`);for(let l=0;l0?this.noteOn(l.channel,r[1],g):this.noteOff(l.channel,r[1]);break;case J3.noteOff:this.noteOff(l.channel,r[1]);break;case J3.pitchBend:this.pitchWheel(l.channel,r[2],r[1]);break;case J3.controllerChange:this.controllerChange(l.channel,r[1],r[2]);break;case J3.programChange:this.programChange(l.channel,r[1]);break;case J3.polyPressure:this.polyPressure(l.channel,r[0],r[1]);break;case J3.channelPressure:this.channelPressure(l.channel,r[1]);break;case J3.systemExclusive:this.systemExclusive(new l6(r.slice(1)));break;case J3.reset:this.stopAll(!0),this.resetControllers();break;default:break}}get currentTime(){return this.context.currentTime}get voicesAmount(){return this._voicesAmount}reverbateEverythingBecauseWhyNot(){for(let r=0;r{this.pressedKeys.delete(g),this.releaseNote(g,this.channel),this.synth.noteOff(this.channel,g)},r=(g,d)=>{let b;if(Bn)b=127;else{let b0=this.keys[0].getBoundingClientRect();if(this.keyboard.classList.contains("sideways")){let m0=d.clientX-b0.left,q0=b0.width;b=Math.floor((q0-m0)/q0*127)}else{let m0=d.clientY-b0.top,q0=b0.height;b=Math.floor(m0/q0*127)}}this.synth.noteOn(this.channel,g,b,this.enableDebugging)},l=g=>{let d=g.touches?Array.from(g.touches):[g],b=new Set;d.forEach(I0=>{let b0=document.elementFromPoint(I0.clientX,I0.clientY),m0=parseInt(b0.id.replace("note",""));b.add(m0),!(isNaN(m0)||m0<0||this.pressedKeys.has(m0))&&(this.pressedKeys.add(m0),r(m0,I0))}),this.pressedKeys.forEach(I0=>{b.has(I0)||A(I0)})};Bn||(document.addEventListener("mousedown",g=>{this.mouseHeld=!0,l(g)}),document.addEventListener("mouseup",()=>{this.mouseHeld=!1,this.pressedKeys.forEach(g=>{A(g)})}),this.keyboard.onmousemove=g=>{this.mouseHeld&&l(g)},this.keyboard.onmouseleave=()=>{this.pressedKeys.forEach(g=>{A(g)})}),this.keyboard.ontouchstart=l.bind(this),this.keyboard.ontouchend=l.bind(this),this.keyboard.ontouchmove=l.bind(this)}var jQ=20,BC=class{constructor(r,l){this.mouseHeld=!1,this.pressedKeys=new Set,this.mode="light",this.enableDebugging=!1,this.sizeChangeAnimationId=-1,this.modeChangeAnimationId=-1,this._keyRange={min:0,max:127},document.addEventListener("keydown",g=>{g.key==="Shift"&&(this.synth.controllerChange(this.channel,A6.sustainPedal,127),this.keyboard.style.filter="brightness(0.5)")}),document.addEventListener("keyup",g=>{g.key==="Shift"&&(this.synth.controllerChange(this.channel,A6.sustainPedal,0),this.keyboard.style.filter="")}),this.synth=l,this.channel=0,this.channelColors=r,this._createKeyboard(),this.synth.eventHandler.addEvent("noteon","keyboard-note-on",g=>{this.pressNote(g.midiNote,g.channel,g.velocity)}),this.synth.eventHandler.addEvent("noteoff","keyboard-note-off",g=>{this.releaseNote(g.midiNote,g.channel)}),this.synth.eventHandler.addEvent("stopall","keyboard-stop-all",()=>{this.clearNotes()}),this.synth.eventHandler.addEvent("mutechannel","keyboard-mute-channel",g=>{if(g.isMuted)for(let d=0;d<128;d++)this.releaseNote(d,g.channel)})}_createKeyboard(){this.keyboard=document.getElementById("keyboard"),this.keyboard.innerHTML="",this.keys=[],this.keyColors=[];for(let r=this._keyRange.min;r=0&&(b=l(r-1)),r<127&&(I0=l(r+1)),I0&&b?g.classList.add("between_sharps"):b?g.classList.add("left_sharp"):I0&&g.classList.add("right_sharp")}return g}toggleMode(r=!0){if(this.mode==="light"?this.mode="dark":this.mode="light",!r){this.keys.forEach(g=>{g.classList.contains("flat_key")&&g.classList.toggle("flat_dark_key")});return}this.modeChangeAnimationId&&clearTimeout(this.modeChangeAnimationId),this.keyboard.classList.add("mode_transform"),document.body.scrollHeight<=window.innerHeight&&document.body.classList.add("no_scroll"),this.modeChangeAnimationId=setTimeout(()=>{this.keys.forEach(g=>{g.classList.contains("flat_key")&&g.classList.toggle("flat_dark_key")}),this.keyboard.classList.remove("mode_transform"),setTimeout(()=>document.body.classList.remove("no_scroll"),500)},500)}get keyRange(){return this._keyRange}set keyRange(r){if(r.max===void 0||r.min===void 0)throw new TypeError("No min or max property!");if(r.min>r.max){let l=r.min;r.min=r.max,r.max=l}r.min=Math.max(0,r.min),r.max=Math.min(127,r.max),this.setKeyRange(r,!0)}setKeyRange(r,l=!0){Math.abs(r.max-r.min)<24&&(r.min-=12,r.max=r.min+24);let d=900/(r.max-r.min+5),b=document.styleSheets[0].cssRules,I0;for(let b0 of b)if(b0.selectorText==="#keyboard .key"){I0=b0;break}if(I0.style.setProperty("--pressed-transform-skew",`${8e-4/(d/7)}`),l){this.sizeChangeAnimationId&&clearTimeout(this.sizeChangeAnimationId);let b0=getComputedStyle(this.keyboard),m0=parseFloat(b0.getPropertyValue("--current-min-height").replace(/[^\d.]+/g,"")),q0=this.keyboard.getBoundingClientRect().height,m1=d/m0,x=q0*m1-q0,j0=(this._keyRange.min+this._keyRange.max)/2,K0=(r.min+r.max)/2;this._keyRange=r;let F1=this.keys.find(_5=>_5.classList.contains("sharp_key")).getBoundingClientRect().width,B2=(j0-K0)*F1,b1=parseFloat(b0.getPropertyValue("--key-border-radius").replace(/[^\d.]+/g,""));this.keyboard.style.marginTop=`${x}px`,this.keyboard.style.transition="",this.keyboard.style.transform=`scale(${m1}) translateX(${B2}px)`,this.keyboard.style.setProperty("--key-border-radius",`${b1/m1}vmin`),this.sizeChangeAnimationId=setTimeout(()=>{this.keyboard.style.setProperty("--current-min-height",`${d}`),this.keyboard.style.transition="none",this.keyboard.style.transform="",this.keyboard.style.marginTop="",this.keyboard.style.setProperty("--key-border-radius",""),this._createKeyboard(),setTimeout(()=>this.keyboard.style.transition="",75)},500)}else this.keyboard.style.setProperty("--current-min-height",`${d}`),this._keyRange=r,this._createKeyboard()}selectChannel(r){this.channel=r}pressNote(r,l,g){let d=this.keys[r-this._keyRange.min];if(d===void 0)return;d.classList.add("pressed");let b=d.classList.contains("sharp_key"),I0=g/127,b0=this.channelColors[l%16].match(/\d+(\.\d+)?/g).map(parseFloat),m0;if(!b&&this.mode==="light"?m0=`rgba(${b0.slice(0,3).map(m1=>255-(255-m1)*I0).join(", ")}, ${b0[3]})`:m0=`rgba(${b0.slice(0,3).map(m1=>m1*I0).join(", ")}, ${b0[3]})`,d.style.background=m0,this.mode==="dark"){let q0=jQ*I0;d.style.boxShadow=`${m0} 0px 0px ${q0}px ${q0/5}px`}this.keyColors[r-this._keyRange.min].push(this.channelColors[l%16])}releaseNote(r,l){let g=this.keys[r-this._keyRange.min];if(g===void 0)return;l%=this.channelColors.length;let d=this.keyColors[r-this._keyRange.min];if(!d)return;let b=d.findLastIndex(I0=>I0===this.channelColors[l]);b!==-1&&(d.splice(b,1),g.style.background=d[d.length-1],this.mode==="dark"&&(g.style.boxShadow=`0px 0px ${jQ}px ${d[d.length-1]}`),d.length<1&&(g.classList.remove("pressed"),g.style.background="",g.style.boxShadow=""))}clearNotes(){this.keys.forEach((r,l)=>{r.classList.remove("pressed"),r.style.background="",r.style.boxShadow="",this.keyColors[l]=[]})}};BC.prototype._handlePointers=WQ;function I$(A,r){let l=A.replace(/[^\d,]/g,"").split(",");return`rgb(${r(parseInt(l[0]))}, ${r(parseInt(l[1]))}, ${r(parseInt(l[2]))})`}var vD="#000";function XQ(A,r,l){A.forEach(g=>{if(g.pressedProgress===0)return;r.fillStyle=g.color;let d=g.pressedProgress*g.velocity;if(r.globalAlpha=.5*d,l){r.fillRect(g.xPos,g.yPos-g.height*d,g.width,g.height*(d*2+1)),r.globalAlpha=1;return}r.fillRect(g.xPos-g.width*d,g.yPos,g.width*(d*2+1),g.height),r.globalAlpha=1}),A.forEach(g=>{r.fillStyle=g.color,r.save(),r.translate(g.xPos,g.yPos),r.fillRect(0,0,g.width,g.height),r.restore(),r.strokeStyle=vD,r.lineWidth=g.stroke,r.strokeRect(g.xPos,g.yPos,g.width,g.height)})}var SB=!1;function ey(A=!0,r=!1){let l=(this.seq===void 0||this?.seq?.paused===!0)&&this.synth.voicesAmount===0&&!r;if(!this.renderBool||l)if(SB){A&&requestAnimationFrame(this.render.bind(this));return}else SB=!0;else SB=!1;if(A&&this.drawingContext.clearRect(0,0,this.canvas.width,this.canvas.height),this.renderAnalysers&&!this.synth.highPerformanceMode&&this.renderWaveforms(),this.renderNotes&&this.noteTimes){let b=this.computeNotePositions(this.synth.highPerformanceMode);this.synth.highPerformanceMode||XQ(b,this.drawingContext,this.sideways)}let g=performance.now()-this.frameTimeStart;this.frameTimeStart=performance.now();let d=1e3/g;this.drawingContext.textBaseline="hanging",this.drawingContext.textAlign="end",this.drawingContext.font=`${DB}px Verdana`,this.drawingContext.fillStyle="white",this.drawingContext.strokeStyle="white",this.drawingContext.fillText(`${this.notesOnScreen} notes`,this.canvas.width,DB+5),this.drawingContext.fillText(Math.round(d).toString()+" FPS",this.canvas.width,5),this.onRender&&this.onRender(),A&&requestAnimationFrame(this.render.bind(this))}function ty(A=!1){this.notesOnScreen=0;let r=this.sideways?this.canvas.height:this.canvas.width,l=this.sideways?this.canvas.width:this.canvas.height,g=this.keyRange.max-this.keyRange.min,d=r/(g+1),b=d-E$*2,I0=this.noteFallingTimeMs/1e3,b0=this.noteAfterTriggerTimeMs/1e3,m0=this.seq.currentHighResolutionTime,q0=m0-b0,m1=I0+b0,x=q0+m1,j0=ry/m1,K0=[];this.synth.channelProperties.forEach(B2=>{if(this.showVisualPitch){let b1=B2.pitchBend-8192+this.visualPitchBendOffset;K0.push(B2.pitchBendRangeSemitones*(b1/8192*d))}else K0.push(0)});let F1=[];return this.noteTimes.forEach((B2,b1)=>{if(B2.renderStartIndex>=B2.notes.length||!this.renderChannels[b1])return;let _5=B2.renderStartIndex,v2=B2.notes,J2=v2[_5],n3=-1;for(;J2.start<=x&&(_5++,!(this.notesOnScreen>ny));){let U5=J2.start+J2.length;if(U5>q0&&J2.length>0){let a0=J2.length/m1*l-E$*2;if(this.notesOnScreen<1e3||a0>j0){n3===-1&&(n3=_5-1);let J5=(J2.start-q0)/m1*l,n6;if(this._notesFall?n6=l-a0-J5+E$:n6=J5+E$,J2.midiNotethis.keyRange.max){if(_5>=v2.length)break;J2=v2[_5];continue}let c6=J2.midiNote-this.keyRange.min,O6=d*c6+E$,g6,u4,Ke,R4;if(this.sideways?(g6=n6,u4=O6,R4=b,Ke=a0):(u4=n6,g6=O6,Ke=b,R4=a0),this.notesOnScreen++,A)this.drawingContext.fillStyle=this.plainColors[b1],this.drawingContext.fillRect(g6+d$+E$,u4+d$,Ke-d$*2,R4-d$*2);else{let F9;if(J2.start>m0||U5=v2.length)break;J2=v2[_5]}n3>-1&&(B2.renderStartIndex=n3)}),F1.sort((B2,b1)=>b1.height-B2.height),F1}function sy(){let A=this.canvas.width/4,r=this.canvas.height/4;this.channelAnalysers.forEach((l,g)=>{let d=g%4,b=Math.floor(g/4),I0=!1;for(let x=g;x0){I0=!0;break}if(!I0){let x=this.canvas.width/4,j0=this.canvas.height/4,K0=x*d,F1=j0*b+j0/2;this.drawingContext.lineWidth=this.lineThickness,this.drawingContext.strokeStyle=this.channelColors[g],this.drawingContext.beginPath(),this.drawingContext.moveTo(K0,F1),this.drawingContext.lineTo(K0+x,F1),this.drawingContext.stroke();return}let b0=new Float32Array(l.frequencyBinCount);l.getFloatTimeDomainData(b0);let m0=A*d,q0=r*b+r/2,m1=this.waveMultiplier*r;if(this.drawingContext.lineWidth=this.lineThickness,this.drawingContext.strokeStyle=this.channelColors[g],this.drawingContext.beginPath(),this._stabilizeWaveforms){let x=b0.length/4,j0=A/x,K0=Math.floor(x/2),F1=b0.length-K0;for(let v2=F1;v2>=1;v2--)if(b0[v2-1]<0&&b0[v2]>=0){F1=v2;break}let B2=m0,b1=F1-K0,_5=F1+K0;for(let v2=b1;v2<_5;v2++)this.drawingContext.lineTo(B2,q0+b0[v2]*m1),B2+=j0}else{let x=A/b0.length,j0=m0;for(let K0=0;K0{this.renderChannels[r.channel]=!r.isMuted}),this.updateFftSize()}function ay(){for(let A=0;A{this.updateFftSize()})}function ly(){for(let A of this.channelAnalysers)A.disconnect();Y5("%cAnalysers disconnected!",S1.recognized)}function cy(A){this.seq=A,this.seq.addOnTimeChangeEvent(()=>this.resetIndexes(),"renderer-time-change"),this.seq.addOnSongChangeEvent(async r=>{if(this.calculateNoteTimes(await this.seq.getMIDI()),this.resetIndexes(),r.RMIDInfo?.IPIC!==void 0){let l=new Blob([r.RMIDInfo?.IPIC.buffer]),g=URL.createObjectURL(l),d=this.canvas.classList.contains("light_mode")?0:.9;this.canvas.style.background=`linear-gradient(rgba(0, 0, 0, ${d}), rgba(0, 0, 0, ${d})), center center / cover url("${g}")`}else this.canvas.style.background=""},"renderer-song-change")}function gy(){this.noteTimes&&this.noteTimes.forEach(A=>A.renderStartIndex=0)}function bB(A,r){let l=0;for(let g=8*(r-1);g>=0;g-=8)l|=A[A.currentIndex++]<>>0}function pC(A,r){let l=new Array(r).fill(0);for(let g=r-1;g>=0;g--)l[g]=A&255,A>>=8;return l}var $h=.02;function hy(A){function r(q0){return q0.messageData=new l6(q0.messageData.buffer),q0.messageData.currentIndex=0,6e7/bB(q0.messageData,3)}let l=[],d=A.tracks.flat();d.sort((q0,m1)=>q0.ticks-m1.ticks);for(let q0=0;q0<16;q0++)l.push({renderStartIndex:0,notes:[]});let b=0,I0=60/(120*A.timeDivision),b0=0,m0=0;for(;b0>4,x=q0.messageStatusByte&15;if(m1===8){let j0=l[x].notes.findLast(K0=>K0.midiNote===q0.messageData[0]&&K0.length===-1);if(j0){let K0=b-j0.start;j0.length=K0<$h&&x===ki?$h:K0}m0--}else if(m1===9)if(q0.messageData[1]===0){let j0=l[x].notes.findLast(K0=>K0.midiNote===q0.messageData[0]&&K0.length===-1);if(j0){let K0=b-j0.start;j0.length=K0<$h&&x===ki?$h:K0}m0--}else l[q0.messageStatusByte&15].notes.push({midiNote:q0.messageData[0],start:b,length:-1,velocity:q0.messageData[1]/127}),m0++;else q0.messageStatusByte===81&&(I0=60/(r(q0)*A.timeDivision));if(++b0>=d.length)break;b+=I0*(d[b0].ticks-q0.ticks)}m0>0&&l.forEach((q0,m1)=>q0.notes.filter(x=>x.length===-1).forEach(x=>{let j0=b-x.start;x.length=j0<$h&&m1===ki?$h:j0})),this.noteTimes=l,Y5("%cFinished loading note times and ready to render the sequence!",S1.info)}var SD=1024,DD=4096,bD=2,_D=2,dm=.6,Em=.5,d$=1,E$=1,DB=16,iy=.6,ry=2,ny=81572,vi=class{constructor(r,l,g){this.noteFallingTimeMs=1e3,this.noteAfterTriggerTimeMs=0,this._keyRange={min:0,max:127},this.visualPitchBendOffset=0,this.lineThickness=_D,this._normalAnalyserFft=SD,this._drumAnalyserFft=DD,this.waveMultiplier=bD,this._notesFall=!0,this.sideways=!1,this._renderBool=!0,this.renderAnalysers=!0,this.renderNotes=!0,this.drawActiveNotes=!0,this.showVisualPitch=!0,this._stabilizeWaveforms=!0,this.renderChannels=Array(16).fill(!0),this.canvas=g,this.drawingContext=this.canvas.getContext("2d"),this.plainColors=r,this.computeColors(),this.synth=l,this.notesOnScreen=0,this.channelAnalysers=[],this.createChannelAnalysers(l),this.connectChannelAnalysers(l)}get stabilizeWaveforms(){return this._stabilizeWaveforms}set stabilizeWaveforms(r){this._stabilizeWaveforms=r,this.updateFftSize()}set direction(r){this._notesFall=r==="down"}get direction(){return this._notesFall?"down":"up"}computeColors(){this.channelColors=this.plainColors.map(r=>{let l=this.drawingContext.createLinearGradient(0,0,this.canvas.width/128,0);return l.addColorStop(0,I$(r,g=>g*Em)),l.addColorStop(1,r),l}),this.darkerColors=this.plainColors.map(r=>{let l=this.drawingContext.createLinearGradient(0,0,this.canvas.width/128,0);return l.addColorStop(0,I$(r,g=>g*Em*dm)),l.addColorStop(1,I$(r,g=>g*dm)),l}),this.sidewaysChannelColors=this.plainColors.map(r=>{let l=this.drawingContext.createLinearGradient(0,0,0,this.canvas.width/128);return l.addColorStop(0,I$(r,g=>g*Em)),l.addColorStop(1,r),l}),this.sidewaysDarkerColors=this.plainColors.map(r=>{let l=this.drawingContext.createLinearGradient(0,0,0,this.canvas.width/128);return l.addColorStop(0,I$(r,g=>g*Em*dm)),l.addColorStop(1,I$(r,g=>g*dm)),l})}toggleDarkMode(){this.canvas.classList.toggle("light_mode")}onRender;get normalAnalyserFft(){return this._normalAnalyserFft}set normalAnalyserFft(r){this._normalAnalyserFft=r,this.updateFftSize()}get drumAnalyserFft(){return this._drumAnalyserFft}set drumAnalyserFft(r){this._drumAnalyserFft=r,this.updateFftSize()}get renderBool(){return this._renderBool}set renderBool(r){this._renderBool=r,r===!0?this.connectChannelAnalysers(this.synth):this.disconnectChannelAnalysers()}get keyRange(){return this._keyRange}set keyRange(r){if(r.max===void 0||r.min===void 0)throw new TypeError("No min or max property!");if(r.min>r.max){let l=r.min;r.min=r.max,r.max=l}r.min=Math.max(0,r.min),r.max=Math.min(127,r.max),this._keyRange=r}};vi.prototype.render=ey;vi.prototype.computeNotePositions=ty;vi.prototype.createChannelAnalysers=oy;vi.prototype.updateFftSize=ay;vi.prototype.connectChannelAnalysers=$y;vi.prototype.disconnectChannelAnalysers=ly;vi.prototype.connectSequencer=cy;vi.prototype.calculateNoteTimes=hy;vi.prototype.resetIndexes=gy;vi.prototype.renderWaveforms=sy;function r3(A,r){let l=0;for(let g=0;g>>0}function C$(A,r,l){for(let g=0;g>g*8&255}function B9(A,r){A[A.currentIndex++]=r&255,A[A.currentIndex++]=r>>8}function $t(A,r){C$(A,r,4)}function lh(A,r){let l=r<<8|A;return l>32767?l-65536:l}function fy(A){return A>127?A-256:A}function xe(A,r,l=void 0,g=!0){if(l){let d=A.slice(A.currentIndex,A.currentIndex+r);return A.currentIndex+=r,new TextDecoder(l.replace(/[^\x20-\x7E]/g,"")).decode(d.buffer)}else{let d=!1,b="";for(let I0=0;I0127){if(g){d=!0;continue}else if(b0===0){d=!0;continue}}b+=String.fromCharCode(b0)}}return b}}function So(A,r=0){let l=A.length;r>0&&(l=r);let g=new l6(l);return Ii(g,A,r),g}function Ii(A,r,l=0){l>0&&r.length>l&&(r=r.slice(0,l));for(let g=0;gr.length)for(let g=0;gl.header!=="LIST"?!1:(l.chunkData.currentIndex=0,xe(l.chunkData,4)===r))}function Cm(A){let r=[A&127];for(A>>=7;A>0;)r.unshift(A&127|128),A>>=7;return r}function mm(A){let r=[];for(let d of A.tracks){let b=[],I0=0,b0;for(let m0 of d){let q0=m0.ticks-I0,m1;m0.messageStatusByte<=J3.keySignature||m0.messageStatusByte===J3.sequenceSpecific?m1=[255,m0.messageStatusByte,...Cm(m0.messageData.length),...m0.messageData]:m0.messageStatusByte===J3.systemExclusive?m1=[240,...Cm(m0.messageData.length),...m0.messageData]:(m1=[],b0!==m0.messageStatusByte&&(b0=m0.messageStatusByte,m1.push(m0.messageStatusByte)),m1.push(...m0.messageData)),b.push(...Cm(q0)),b.push(...m1),I0+=q0}r.push(new Uint8Array(b))}function l(d,b){for(let I0=0;I0A.chunkData.currentIndex;)r.push(new _B(A.chunkData));return r.length>1&&r.pop(),r}var x7={noController:0,noteOnVelocity:2,noteOnKeyNum:3,polyPressure:10,channelPressure:13,pitchWheel:14,pitchWheelRange:16,link:127},Qn={linear:0,concave:1,convex:2,switch:3},RD=[];for(let A=0;A<4;A++)RD.push([[],[]]);var o7=class A{constructor(r){r.srcEnum?(this.modulatorSource=r.srcEnum,this.modulatorDestination=r.dest,this.modulationSecondarySrc=r.secSrcEnum,this.transformAmount=r.amt,this.transformType=r.transform):(this.modulatorSource=r3(r,2),this.modulatorDestination=r3(r,2),this.transformAmount=lh(r[r.currentIndex++],r[r.currentIndex++]),this.modulationSecondarySrc=r3(r,2),this.transformType=r3(r,2)),this.modulatorDestination>58&&(this.modulatorDestination=R1.INVALID),this.sourcePolarity=this.modulatorSource>>9&1,this.sourceDirection=this.modulatorSource>>8&1,this.sourceUsesCC=this.modulatorSource>>7&1,this.sourceIndex=this.modulatorSource&127,this.sourceCurveType=this.modulatorSource>>10&3,this.secSrcPolarity=this.modulationSecondarySrc>>9&1,this.secSrcDirection=this.modulationSecondarySrc>>8&1,this.secSrcUsesCC=this.modulationSecondarySrc>>7&1,this.secSrcIndex=this.modulationSecondarySrc&127,this.secSrcCurveType=this.modulationSecondarySrc>>10&3}sumTransform(r){return new A({srcEnum:this.modulatorSource,secSrcEnum:this.modulationSecondarySrc,dest:this.modulatorDestination,transform:this.transformType,amt:this.transformAmount+r.transformAmount})}debugString(){function r(d,b){return Object.keys(d).find(I0=>d[I0]===b)}let l=r(Qn,this.sourceCurveType);l+=this.sourcePolarity===0?" unipolar ":" bipolar ",l+=this.sourceDirection===0?"forwards ":"backwards ",this.sourceUsesCC?l+=r(A6,this.sourceIndex):l+=r(x7,this.sourceIndex);let g=r(Qn,this.secSrcCurveType);return g+=this.secSrcPolarity===0?" unipolar ":" bipolar ",g+=this.secSrcCurveType===0?"forwards ":"backwards ",this.secSrcUsesCC?g+=r(A6,this.secSrcIndex):g+=r(x7,this.secSrcIndex),`Modulator: Source: ${l} Secondary source: ${g} Destination: ${r(R1,this.modulatorDestination)} @@ -7,7 +7,7 @@ var gm=(A=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(A,{get:(r,l)=>( Transform type: ${this.transformType} -`}};function pn(A,r,l,g,d){return A<<10|r<<9|l<<8|g<<7|d}var xB=960,FB=Qn.concave,uy=[new o7({srcEnum:pn(FB,0,1,0,x7.noteOnVelocity),dest:R1.initialAttenuation,amt:xB,secSrcEnum:0,transform:0}),new o7({srcEnum:129,dest:R1.vibLfoToPitch,amt:50,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(FB,0,1,1,A6.mainVolume),dest:R1.initialAttenuation,amt:xB,secSrcEnum:0,transform:0}),new o7({srcEnum:13,dest:R1.vibLfoToPitch,amt:50,secSrcEnum:0,transform:0}),new o7({srcEnum:526,dest:R1.fineTune,amt:12700,secSrcEnum:16,transform:0}),new o7({srcEnum:650,dest:R1.pan,amt:1e3,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(FB,0,1,1,A6.expressionController),dest:R1.initialAttenuation,amt:xB,secSrcEnum:0,transform:0}),new o7({srcEnum:219,dest:R1.reverbEffectsSend,amt:200,secSrcEnum:0,transform:0}),new o7({srcEnum:221,dest:R1.chorusEffectsSend,amt:200,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Qn.linear,0,0,0,x7.polyPressure),dest:R1.vibLfoToPitch,amt:50,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Qn.linear,0,0,1,A6.effects2Depth),dest:R1.modLfoToVolume,amt:24,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Qn.linear,1,0,1,A6.releaseTime),dest:R1.releaseVolEnv,amt:1200,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Qn.linear,1,0,1,A6.brightness),dest:R1.initialFilterFc,amt:4e3,secSrcEnum:0,transform:0})];function LB(A){let r=[];for(;A.chunkData.length>A.chunkData.currentIndex;)r.push(new o7(A.chunkData));return r}var m$=128,xD=147,Do=new Int16Array(xD).fill(0);Do[A6.mainVolume]=12800;Do[A6.expressionController]=16256;Do[A6.pan]=8192;Do[A6.releaseTime]=8192;Do[A6.brightness]=8192;Do[A6.effects1Depth]=5120;Do[m$+x7.pitchWheel]=8192;Do[m$+x7.pitchWheelRange]=256;var Bm={channelTuning:0,channelTransposeFine:1,modulationMultiplier:2,masterTuning:3,channelTuningSemitones:4},FD=Object.keys(Bm).length,LD=new Float32Array(FD);LD[Bm.modulationMultiplier]=1;function MB(A){return new ui(A,J3.systemExclusive,new l6([65,16,66,18,64,0,127,0,65,247]))}function Iy(A,r,l,g){return new ui(g,J3.controllerChange|A%16,new l6([r,l]))}function MD(A,r){let l=16|[1,2,3,4,5,6,7,8,0,9,10,11,12,13,14,15][A%16],g=[65,16,66,18,64,l,21,1],b=128-(64+l+21+1)%128;return new ui(r,J3.systemExclusive,new l6([...g,b,247]))}function TD(A,r=[],l=[],g=[],d=[]){ei("%cApplying changes to the MIDI file...",S1.info);let b=(j0,K0)=>{A.tracks.forEach((F1,B2)=>{if(A.midiPorts[B2]===K0)for(let b1=F1.length-1;b1>=0;b1--)F1[b1].messageStatusByte>=128&&F1[b1].messageStatusByte<240&&(F1[b1].messageStatusByte&15)===j0&&F1.splice(b1,1)})};g.forEach(j0=>{let K0=j0%16,F1=j0-K0,B2=A.midiPortChannelOffsets.findIndex(b1=>b1===F1);b(K0,B2),J5(`%cRemoving channel %c${j0}%c!`,S1.info,S1.recognized,S1.info)});let I0=!1,b0="gs",m0=[],Y0=[];A.tracks.forEach((j0,K0)=>{j0.forEach(F1=>{let B2=F1.messageStatusByte&240;B2===J3.controllerChange?m0.push({track:K0,message:F1,channel:F1.messageStatusByte&15}):B2===J3.programChange?Y0.push({track:K0,message:F1,channel:F1.messageStatusByte&15}):F1.messageStatusByte===J3.systemExclusive&&(F1.messageData[0]===67&&F1.messageData[2]===76&&F1.messageData[5]===126&&F1.messageData[6]===0?(J5("%cXG system on detected",S1.info),b0="xg",I0=!0):F1.messageData[0]===67&&F1.messageData[2]===76&&F1.messageData[3]===8&&F1.messageData[5]===3&&Y0.push({track:K0,message:F1,channel:F1.messageData[4]}))})});let m1=(j0,K0,F1)=>A.tracks.reduce((B2,b1,_5)=>{if(A.usedChannelsOnTrack[_5].has(j0)&&A.midiPorts[_5]===K0){let v2;F1?v2=b1.findIndex(Y2=>(Y2.messageStatusByte&240)===J3.noteOn):v2=b1.findIndex(Y2=>Y2.messageStatusByte>128&&Y2.messageStatusByte<240&&(Y2.messageStatusByte&15)===j0&&!(Y2.messageStatusByte&J3.controllerChange===240&&(Y2.messageData[0]===A6.resetAllControllers||Y2.messageData[0]===A6.allNotesOff||Y2.messageData[0]===A6.allSoundOff))),v2!==-1&&B2.push({index:v2,track:_5})}return B2},[]),F=(j0,K0,F1)=>{let B2=m0.filter(b1=>b1.channel===j0&&b1.message.messageData[0]===F1&&A.midiPorts[b1.track]===K0);for(let b1=0;b1{let K0=j0.channel,F1=K0%16,B2=K0-F1,b1=A.midiPortChannelOffsets.findIndex($0=>$0===B2),_5=j0.controllerValue,v2=j0.controllerNumber;F(F1,b1,v2),J5(`%cNo controller %c${v2}%c on channel %c${K0}%c found. Adding it!`,S1.info,S1.unrecognized,S1.info,S1.value,S1.info);let Y2=m1(F1,b1,B2>0);if(Y2.length===0){b4("Program change but no notes... ignoring!");return}let K5=Y2.reduce(($0,H5)=>A.tracks[H5.track][H5.index].ticks{let K0=j0.channel%16,F1=j0.channel-K0,B2=A.midiPortChannelOffsets.findIndex(b6=>b6===F1),b1=j0.isDrum?0:j0.bank,_5=j0.program,v2=Y0.filter(b6=>A.midiPorts[b6.track]===B2&&b6.channel===K0);if(F(K0,B2,A6.bankSelect),F(K0,B2,A6.lsbForControl0BankSelect),(j0.isDrum||b1>0)&&!I0&&(A.tracks.forEach(b6=>{for(let H6=0;H60);if(Y2.length===0){b4("Program change but no notes... ignoring!");return}let K5=Y2.reduce((b6,H6)=>A.tracks[H6.track][H6.index].ticks{if(A.midiPorts[v2]!==F1||!A.usedChannelsOnTrack[v2].has(K0))return;let Y2=J3.noteOn|K0,K5=J3.noteOff|K0,U5=J3.polyPressure|K0;_5.forEach($0=>{$0.messageStatusByte!==Y2&&$0.messageStatusByte!==K5&&$0.messageStatusByte!==U5||($0.messageData[0]=Math.max(0,Math.min(127,$0.messageData[0]+B2)))})}),b1!==0){let _5=A.tracks.find((c6,w4)=>A.usedChannelsOnTrack[w4].has(j0.channel));if(_5===void 0){b4(`Channel ${j0.channel} unused but transpose requested???`);continue}let v2=J3.noteOn|j0.channel%16,Y2=_5.findIndex(c6=>c6.messageStatusByte===v2);if(Y2===-1){b4(`No notes on channel ${j0.channel} but transpose requested???`);continue}let K5=_5[Y2].ticks,U5=b1*64+64,$0=J3.controllerChange|j0.channel%16,H5=new ui(K5,$0,new l6([A6.RPNMsb,0])),n6=new ui(K5,$0,new l6([A6.RPNLsb,1])),b6=new ui(K5,$0,new l6([A6.dataEntryMsb,U5])),H6=new ui(K5,$0,new l6([A6.lsbForControl6DataEntry,0]));_5.splice(Y2,0,H6),_5.splice(Y2,0,b6),_5.splice(Y2,0,n6),_5.splice(Y2,0,H5)}}e4()}function ch(A,r){let l=[],g=[],d=[],b=[];r.channelSnapshots.forEach((I0,b0)=>{if(I0.isMuted){g.push(b0);return}let m0=I0.channelTransposeKeyShift+I0.customControllers[Bm.channelTransposeFine]/100;m0!==0&&l.push({channel:b0,keyShift:m0}),I0.lockPreset&&d.push({channel:b0,program:I0.program,bank:I0.bank,isDrum:I0.drumChannel}),I0.lockedControllers.forEach((Y0,m1)=>{if(!Y0||m1>127||m1===A6.bankSelect)return;let F=I0.midiControllers[m1]>>7;b.push({channel:b0,controllerNumber:m1,controllerValue:F})})}),TD(A,d,b,g,l)}var F7={name:"INAM",album:"IPRD",artist:"IART",genre:"IGNR",picture:"IPIC",copyright:"ICOP",creationDate:"ICRD",comment:"ICMT",engineer:"IENG",software:"ISFT",encoding:"IENC",midiEncoding:"MENC",bankOffset:"DBNK"},bo="utf-8",GD="Created using SpessaSynth";function dy(A,r,l,g=0,d="Shift_JIS",b={},I0=!0){if(ar("%cWriting the RMIDI File...",S1.info),J5(`%cConfiguration: Bank offset: %c${g}%c, encoding: %c${d}`,S1.info,S1.value,S1.info,S1.value),J5("metadata",b),J5("Initial bank offset",r.bankOffset),I0){let _5=function(){let U5=0,$0=1/0;return r.tracks.forEach((H5,n6)=>{B2[n6]>=H5.length||H5[B2[n6]].ticks<$0&&(U5=n6,$0=H5[B2[n6]].ticks)}),U5},K0="gm",F1=[],B2=Array(r.tracks.length).fill(0),b1=r.tracks.length,v2=Array(r.tracks.length).fill(0),Y2=16+r.midiPortChannelOffsets.reduce((U5,$0)=>$0>U5?$0:U5),K5=[];for(let U5=0;U50;){let U5=_5(),$0=r.tracks[U5];if(B2[U5]>=$0.length){b1--;continue}let H5=$0[B2[U5]];B2[U5]++;let n6=r.midiPortChannelOffsets[v2[U5]];if(H5.messageStatusByte===J3.midiPort){v2[U5]=H5.messageData[0];continue}let b6=H5.messageStatusByte&240;if(b6!==J3.controllerChange&&b6!==J3.programChange&&b6!==J3.systemExclusive)continue;if(b6===J3.systemExclusive){if(H5.messageData[0]!==65||H5.messageData[2]!==66||H5.messageData[3]!==18||H5.messageData[4]!==64||!(H5.messageData[5]&16)||H5.messageData[6]!==21){H5.messageData[0]===67&&H5.messageData[2]===76&&H5.messageData[5]===126&&H5.messageData[6]===0?K0="xg":H5.messageData[0]===65&&H5.messageData[2]===66&&H5.messageData[6]===127?K0="gs":H5.messageData[0]===126&&H5.messageData[2]===9&&(K0="gm",F1.push({tNum:U5,e:H5}));continue}let w4=[9,0,1,2,3,4,5,6,7,8,10,11,12,13,14,15][H5.messageData[5]&15]+n6;K5[w4].drums=!!(H5.messageData[7]>0&&H5.messageData[5]>>4);continue}let H6=(H5.messageStatusByte&15)+n6,c6=K5[H6];if(b6===J3.programChange){c6.drums?l.presets.findIndex(K4=>K4.program===H5.messageData[0]&&K4.bank===128)===-1&&(H5.messageData[0]=l.presets.find(K4=>K4.bank===128)?.program||0):l.presets.findIndex(K4=>K4.program===H5.messageData[0]&&K4.bank!==128)===-1&&(H5.messageData[0]=l.presets.find(K4=>K4.bank!==128)?.program||0),c6.program=H5.messageData[0];let w4=Math.max(0,c6.lastBank?.messageData[1]-r.bankOffset),M4=c6.drums?128:w4;if(c6.lastBank===void 0)continue;if(K0==="xg"&&c6.drums&&(K5[H6].lastBank.messageData[1]=127),l.presets.findIndex(K4=>K4.bank===M4&&K4.program===H5.messageData[0])===-1){let K4=l.presets.find(_4=>_4.program===H5.messageData[0])?.bank+g||g;c6.lastBank.messageData[1]=K4,J5(`%cNo preset %c${M4}:${H5.messageData[0]}%c. Changing bank to ${K4}.`,S1.info,S1.recognized,S1.info)}else{let K4=(M4===128?0:w4)+g;c6.lastBank.messageData[1]=K4,J5(`%cPreset %c${M4}:${H5.messageData[0]}%c exists. Changing bank to ${K4}.`,S1.info,S1.recognized,S1.info)}continue}H5.messageData[0]===A6.bankSelect&&(c6.hasBankSelect=!0,K0==="xg"&&(c6.drums=H5.messageData[1]===120||H5.messageData[1]===126||H5.messageData[1]===127),c6.lastBank=H5)}if(K5.forEach((U5,$0)=>{if(U5.hasBankSelect===!0)return;let H5=$0%16,n6=J3.programChange|H5,b6=Math.floor($0/16)*16,H6=r.midiPortChannelOffsets.indexOf(b6),c6=r.tracks.find((_4,_t)=>r.midiPorts[_t]===H6&&r.usedChannelsOnTrack[_t].has(H5));if(c6===void 0)return;let w4=c6.findIndex(_4=>_4.messageStatusByte===n6);if(w4===-1){let _4=c6.findIndex(Go=>Go.messageStatusByte>128&&Go.messageStatusByte<240&&(Go.messageStatusByte&15)===H5);if(_4===-1)return;let _t=c6[_4].ticks,To=l.getPreset(0,0).program;c6.splice(_4,0,new ui(_t,J3.programChange|H5,new l6([To]))),w4=_4}J5(`%cAdding bank select for %c${$0}`,S1.info,S1.recognized);let M4=c6[w4].ticks,K4=l.getPreset(0,U5.program)?.bank+g||g;c6.splice(w4,0,new ui(M4,J3.controllerChange|H5,new l6([A6.bankSelect,K4])))}),K0!=="gs"&&K0!=="xg"){for(let $0 of F1)r.tracks[$0.tNum].splice(r.tracks[$0.tNum].indexOf($0.e),1);let U5=0;r.tracks[0][0].messageStatusByte===J3.trackName&&U5++,r.tracks[0].splice(U5,0,MB(0))}}let b0=new l6(mm(r).buffer),m0=[So("INFO")],Y0=new TextEncoder;if(m0.push(a8(F7.software,Y0.encode("SpessaSynth"),!0)),b.name!==void 0?(m0.push(a8(F7.name,Y0.encode(b.name),!0)),d=bo):m0.push(a8(F7.name,r.rawMidiName,!0)),b.creationDate!==void 0)d=bo,m0.push(a8(F7.creationDate,Y0.encode(b.creationDate),!0));else{let K0=new Date().toLocaleString(void 0,{weekday:"long",year:"numeric",month:"long",day:"numeric",hour:"numeric",minute:"numeric"});m0.push(a8(F7.creationDate,So(K0),!0))}if(b.comment!==void 0&&(d=bo,m0.push(a8(F7.comment,Y0.encode(b.comment)))),b.engineer!==void 0&&m0.push(a8(F7.engineer,Y0.encode(b.engineer),!0)),b.album!==void 0&&(d=bo,m0.push(a8(F7.album,Y0.encode(b.album),!0))),b.artist!==void 0&&(d=bo,m0.push(a8(F7.artist,Y0.encode(b.artist),!0))),b.genre!==void 0&&(d=bo,m0.push(a8(F7.genre,Y0.encode(b.genre),!0))),b.picture!==void 0&&m0.push(a8(F7.picture,new Uint8Array(b.picture))),b.copyright!==void 0)d=bo,m0.push(a8(F7.copyright,Y0.encode(b.copyright),!0));else{let K0=r.copyright.length>0?r.copyright:GD;m0.push(a8(F7.copyright,So(K0)))}let m1=new l6(2);C$(m1,g,2),m0.push(a8(F7.bankOffset,m1)),b.midiEncoding!==void 0&&(m0.push(a8(F7.midiEncoding,Y0.encode(b.midiEncoding))),d=bo),m0.push(a8(F7.encoding,So(d)));let F=bs(m0),j0=bs([So("RMID"),a8("data",b0),a8("LIST",F),A]);return J5("%cFinished!",S1.info),e4(),a8("RIFF",j0)}var Di={loadNewSongList:0,pause:1,stop:2,play:3,setTime:4,changeMIDIMessageSending:5,setPlaybackRate:6,setLoop:7,changeSong:8,getMIDI:9,setSkipToFirstNote:10},_o={midiEvent:0,songChange:1,textEvent:2,timeChange:3,pause:4,getMIDI:5,midiError:6};var Ey={duration:99999,firstNoteOn:0,loop:{start:0,end:123456},lastVoiceEventTick:123456,lyrics:[],copyright:"",midiPorts:[],midiPortChannelOffsets:[],tracksAmount:0,tempoChanges:[{ticks:0,tempo:120}],fileName:"NOT_LOADED.mid",midiName:"Loading...",rawMidiName:new Uint8Array([76,111,97,100,105,110,103,46,46,46]),usedChannelsOnTrack:[],timeDivision:0,keyRange:{min:0,max:127},isEmbedded:!1,RMIDInfo:void 0,bankOffset:0};var ND={skipToFirstNoteOn:!0},pm=class{constructor(r,l,g=ND){this.ignoreEvents=!1,this.synth=l,this.highResTimeOffset=0,this.absoluteStartTime=this.synth.currentTime,this._getMIDIResolve=void 0,this._playbackRate=1,this.songIndex=0,this.hasDummyData=!0,this._loop=!0,this.isFinished=!1,this.duration=0,this.synth.sequencerCallbackFunction=this._handleMessage.bind(this),this._skipToFirstNoteOn=g?.skipToFirstNoteOn??!0,this._skipToFirstNoteOn===!1&&this._sendMessage(Di.setSkipToFirstNote,!1),this.loadNewSongList(r),window.addEventListener("beforeunload",this.resetMIDIOut.bind(this))}get skipToFirstNoteOn(){return this._skipToFirstNoteOn}set skipToFirstNoteOn(r){this._skipToFirstNoteOn=r,this._sendMessage(Di.setSkipToFirstNote,this._skipToFirstNoteOn)}resetMIDIOut(){if(this.MIDIout){for(let r=0;r<16;r++)this.MIDIout.send([J3.controllerChange|r,120,0]),this.MIDIout.send([J3.controllerChange|r,123,0]);this.MIDIout.send([J3.reset])}}set loop(r){this._sendMessage(Di.setLoop,r),this._loop=r}get loop(){return this._loop}_sendMessage(r,l=void 0){this.synth.post({channelNumber:-1,messageType:Ke.sequencerSpecific,messageData:{messageType:r,messageData:l}})}onError;_handleMessage(r,l){if(!this.ignoreEvents)switch(r){default:break;case _o.midiEvent:let g=l;if(this.MIDIout&&g[0]>=128){this.MIDIout.send(g);return}break;case _o.songChange:let d=l[0];this.songIndex=l[1],this.midiData=d,this.hasDummyData=!1,this.absoluteStartTime=0,this.duration=this.midiData.duration,Object.entries(this.onSongChange).forEach(b0=>b0[1](d)),this.unpause();break;case _o.textEvent:let b=l;this.onTextEvent&&this.onTextEvent(b[0],b[1]);break;case _o.timeChange:let I0=this.synth.currentTime-l;Object.entries(this.onTimeChange).forEach(b0=>b0[1](I0)),this.unpause(),this._recalculateStartTime(I0);break;case _o.pause:this.pausedTime=this.currentTime,this.isFinished=l,this.isFinished&&Object.entries(this.onSongEnded).forEach(b0=>b0[1]());break;case _o.midiError:if(this.onError)this.onError(l);else throw new Error(l);return;case _o.getMIDI:this._getMIDIResolve&&this._getMIDIResolve(l)}}set playbackRate(r){this._sendMessage(Di.setPlaybackRate,r),this.highResTimeOffset*=r/this._playbackRate,this._playbackRate=r}get playbackRate(){return this._playbackRate}addOnSongChangeEvent(r,l){this.onSongChange[l]=r,r(this.midiData)}addOnSongEndedEvent(r,l){this.onSongEnded[l]=r}addOnTimeChangeEvent(r,l){this.onTimeChange[l]=r}async getMIDI(){return new Promise(r=>{this._getMIDIResolve=r,this._sendMessage(Di.getMIDI,void 0)})}loadNewSongList(r){this.pause(),this.midiData=Ey,this.hasDummyData=!0,this.duration=99999,this._sendMessage(Di.loadNewSongList,r),this.songIndex=0,this.songsAmount=r.length,this.songsAmount>1&&(this.loop=!1)}nextSong(){this._sendMessage(Di.changeSong,!0)}previousSong(){this._sendMessage(Di.changeSong,!1)}get currentTime(){return this.pausedTime?this.pausedTime:(this.synth.currentTime-this.absoluteStartTime)*this._playbackRate}_recalculateStartTime(r){this.absoluteStartTime=this.synth.currentTime-r/this._playbackRate,this.highResTimeOffset=(this.synth.currentTime-performance.now()/1e3)*this._playbackRate}get currentHighResolutionTime(){if(this.pausedTime)return this.pausedTime;let r=this.highResTimeOffset,l=this.absoluteStartTime,g=(performance.now()/1e3-l)*this._playbackRate,d=r+g,b=this.currentTime,I0=.01*this._playbackRate,b0=b-d;return this.highResTimeOffset+=b0*I0,d=this.highResTimeOffset+g,d}set currentTime(r){this.unpause(),this._sendMessage(Di.setTime,r)}connectMidiOutput(r){this.resetMIDIOut(),this.MIDIout=r,this._sendMessage(Di.changeMIDIMessageSending,r!==void 0),this.currentTime-=.1}pause(){if(this.paused){b4("Already paused");return}this.pausedTime=this.currentTime,this._sendMessage(Di.pause)}unpause(){this.pausedTime=void 0,this.isFinished=!1}get paused(){return this.pausedTime!==void 0}play(r=!1){this.isFinished&&(r=!0),this._recalculateStartTime(this.pausedTime||0),this.unpause(),this._sendMessage(Di.play,r)}stop(){this._sendMessage(Di.stop)}midiData;onSongChange={};onTextEvent;onTimeChange={};onSongEnded={}};var QC=["Shift_JIS","windows-1250","utf-8","utf-16","utf-16le","utf-16be","latin1","ISO-8859-1","ISO-8859-2","ISO-8859-3","ISO-8859-4","ISO-8859-5","ISO-8859-6","ISO-8859-7","ISO-8859-8","ISO-8859-9","ISO-8859-10","ISO-8859-11","ISO-8859-13","ISO-8859-14","ISO-8859-15","ISO-8859-16","windows-1251","windows-1252","windows-1253","windows-1254","windows-1255","windows-1256","windows-1257","windows-1258","EUC-JP","ISO-2022-JP","EUC-KR","Big5","GB18030"];function Cy(A){return` +`}};function pn(A,r,l,g,d){return A<<10|r<<9|l<<8|g<<7|d}var xB=960,FB=Qn.concave,uy=[new o7({srcEnum:pn(FB,0,1,0,x7.noteOnVelocity),dest:R1.initialAttenuation,amt:xB,secSrcEnum:0,transform:0}),new o7({srcEnum:129,dest:R1.vibLfoToPitch,amt:50,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(FB,0,1,1,A6.mainVolume),dest:R1.initialAttenuation,amt:xB,secSrcEnum:0,transform:0}),new o7({srcEnum:13,dest:R1.vibLfoToPitch,amt:50,secSrcEnum:0,transform:0}),new o7({srcEnum:526,dest:R1.fineTune,amt:12700,secSrcEnum:16,transform:0}),new o7({srcEnum:650,dest:R1.pan,amt:1e3,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(FB,0,1,1,A6.expressionController),dest:R1.initialAttenuation,amt:xB,secSrcEnum:0,transform:0}),new o7({srcEnum:219,dest:R1.reverbEffectsSend,amt:200,secSrcEnum:0,transform:0}),new o7({srcEnum:221,dest:R1.chorusEffectsSend,amt:200,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Qn.linear,0,0,0,x7.polyPressure),dest:R1.vibLfoToPitch,amt:50,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Qn.linear,0,0,1,A6.effects2Depth),dest:R1.modLfoToVolume,amt:24,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Qn.linear,1,0,1,A6.releaseTime),dest:R1.releaseVolEnv,amt:1200,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Qn.linear,1,0,1,A6.brightness),dest:R1.initialFilterFc,amt:4e3,secSrcEnum:0,transform:0})];function LB(A){let r=[];for(;A.chunkData.length>A.chunkData.currentIndex;)r.push(new o7(A.chunkData));return r}var m$=128,xD=147,Do=new Int16Array(xD).fill(0);Do[A6.mainVolume]=12800;Do[A6.expressionController]=16256;Do[A6.pan]=8192;Do[A6.releaseTime]=8192;Do[A6.brightness]=8192;Do[A6.effects1Depth]=5120;Do[m$+x7.pitchWheel]=8192;Do[m$+x7.pitchWheelRange]=256;var Bm={channelTuning:0,channelTransposeFine:1,modulationMultiplier:2,masterTuning:3,channelTuningSemitones:4},FD=Object.keys(Bm).length,LD=new Float32Array(FD);LD[Bm.modulationMultiplier]=1;function MB(A){return new ui(A,J3.systemExclusive,new l6([65,16,66,18,64,0,127,0,65,247]))}function Iy(A,r,l,g){return new ui(g,J3.controllerChange|A%16,new l6([r,l]))}function MD(A,r){let l=16|[1,2,3,4,5,6,7,8,0,9,10,11,12,13,14,15][A%16],g=[65,16,66,18,64,l,21,1],b=128-(64+l+21+1)%128;return new ui(r,J3.systemExclusive,new l6([...g,b,247]))}function TD(A,r=[],l=[],g=[],d=[]){ei("%cApplying changes to the MIDI file...",S1.info);let b=(j0,K0)=>{A.tracks.forEach((F1,B2)=>{if(A.midiPorts[B2]===K0)for(let b1=F1.length-1;b1>=0;b1--)F1[b1].messageStatusByte>=128&&F1[b1].messageStatusByte<240&&(F1[b1].messageStatusByte&15)===j0&&F1.splice(b1,1)})};g.forEach(j0=>{let K0=j0%16,F1=j0-K0,B2=A.midiPortChannelOffsets.findIndex(b1=>b1===F1);b(K0,B2),Y5(`%cRemoving channel %c${j0}%c!`,S1.info,S1.recognized,S1.info)});let I0=!1,b0="gs",m0=[],q0=[];A.tracks.forEach((j0,K0)=>{j0.forEach(F1=>{let B2=F1.messageStatusByte&240;B2===J3.controllerChange?m0.push({track:K0,message:F1,channel:F1.messageStatusByte&15}):B2===J3.programChange?q0.push({track:K0,message:F1,channel:F1.messageStatusByte&15}):F1.messageStatusByte===J3.systemExclusive&&(F1.messageData[0]===67&&F1.messageData[2]===76&&F1.messageData[5]===126&&F1.messageData[6]===0?(Y5("%cXG system on detected",S1.info),b0="xg",I0=!0):F1.messageData[0]===67&&F1.messageData[2]===76&&F1.messageData[3]===8&&F1.messageData[5]===3&&q0.push({track:K0,message:F1,channel:F1.messageData[4]}))})});let m1=(j0,K0,F1)=>A.tracks.reduce((B2,b1,_5)=>{if(A.usedChannelsOnTrack[_5].has(j0)&&A.midiPorts[_5]===K0){let v2;F1?v2=b1.findIndex(J2=>(J2.messageStatusByte&240)===J3.noteOn):v2=b1.findIndex(J2=>J2.messageStatusByte>128&&J2.messageStatusByte<240&&(J2.messageStatusByte&15)===j0&&!(J2.messageStatusByte&J3.controllerChange===240&&(J2.messageData[0]===A6.resetAllControllers||J2.messageData[0]===A6.allNotesOff||J2.messageData[0]===A6.allSoundOff))),v2!==-1&&B2.push({index:v2,track:_5})}return B2},[]),x=(j0,K0,F1)=>{let B2=m0.filter(b1=>b1.channel===j0&&b1.message.messageData[0]===F1&&A.midiPorts[b1.track]===K0);for(let b1=0;b1{let K0=j0.channel,F1=K0%16,B2=K0-F1,b1=A.midiPortChannelOffsets.findIndex(a0=>a0===B2),_5=j0.controllerValue,v2=j0.controllerNumber;x(F1,b1,v2),Y5(`%cNo controller %c${v2}%c on channel %c${K0}%c found. Adding it!`,S1.info,S1.unrecognized,S1.info,S1.value,S1.info);let J2=m1(F1,b1,B2>0);if(J2.length===0){_4("Program change but no notes... ignoring!");return}let n3=J2.reduce((a0,J5)=>A.tracks[J5.track][J5.index].ticks{let K0=j0.channel%16,F1=j0.channel-K0,B2=A.midiPortChannelOffsets.findIndex(c6=>c6===F1),b1=j0.isDrum?0:j0.bank,_5=j0.program,v2=q0.filter(c6=>A.midiPorts[c6.track]===B2&&c6.channel===K0);if(x(K0,B2,A6.bankSelect),x(K0,B2,A6.lsbForControl0BankSelect),(j0.isDrum||b1>0)&&!I0&&(A.tracks.forEach(c6=>{for(let O6=0;O60);if(J2.length===0){_4("Program change but no notes... ignoring!");return}let n3=J2.reduce((c6,O6)=>A.tracks[O6.track][O6.index].ticks{if(A.midiPorts[v2]!==F1||!A.usedChannelsOnTrack[v2].has(K0))return;let J2=J3.noteOn|K0,n3=J3.noteOff|K0,U5=J3.polyPressure|K0;_5.forEach(a0=>{a0.messageStatusByte!==J2&&a0.messageStatusByte!==n3&&a0.messageStatusByte!==U5||(a0.messageData[0]=Math.max(0,Math.min(127,a0.messageData[0]+B2)))})}),b1!==0){let _5=A.tracks.find((g6,u4)=>A.usedChannelsOnTrack[u4].has(j0.channel));if(_5===void 0){_4(`Channel ${j0.channel} unused but transpose requested???`);continue}let v2=J3.noteOn|j0.channel%16,J2=_5.findIndex(g6=>g6.messageStatusByte===v2);if(J2===-1){_4(`No notes on channel ${j0.channel} but transpose requested???`);continue}let n3=_5[J2].ticks,U5=b1*64+64,a0=J3.controllerChange|j0.channel%16,J5=new ui(n3,a0,new l6([A6.RPNMsb,0])),n6=new ui(n3,a0,new l6([A6.RPNLsb,1])),c6=new ui(n3,a0,new l6([A6.dataEntryMsb,U5])),O6=new ui(n3,a0,new l6([A6.lsbForControl6DataEntry,0]));_5.splice(J2,0,O6),_5.splice(J2,0,c6),_5.splice(J2,0,n6),_5.splice(J2,0,J5)}}t4()}function ch(A,r){let l=[],g=[],d=[],b=[];r.channelSnapshots.forEach((I0,b0)=>{if(I0.isMuted){g.push(b0);return}let m0=I0.channelTransposeKeyShift+I0.customControllers[Bm.channelTransposeFine]/100;m0!==0&&l.push({channel:b0,keyShift:m0}),I0.lockPreset&&d.push({channel:b0,program:I0.program,bank:I0.bank,isDrum:I0.drumChannel}),I0.lockedControllers.forEach((q0,m1)=>{if(!q0||m1>127||m1===A6.bankSelect)return;let x=I0.midiControllers[m1]>>7;b.push({channel:b0,controllerNumber:m1,controllerValue:x})})}),TD(A,d,b,g,l)}var F7={name:"INAM",album:"IPRD",artist:"IART",genre:"IGNR",picture:"IPIC",copyright:"ICOP",creationDate:"ICRD",comment:"ICMT",engineer:"IENG",software:"ISFT",encoding:"IENC",midiEncoding:"MENC",bankOffset:"DBNK"},bo="utf-8",GD="Created using SpessaSynth";function dy(A,r,l,g=0,d="Shift_JIS",b={},I0=!0){if(ar("%cWriting the RMIDI File...",S1.info),Y5(`%cConfiguration: Bank offset: %c${g}%c, encoding: %c${d}`,S1.info,S1.value,S1.info,S1.value),Y5("metadata",b),Y5("Initial bank offset",r.bankOffset),I0){let _5=function(){let U5=0,a0=1/0;return r.tracks.forEach((J5,n6)=>{B2[n6]>=J5.length||J5[B2[n6]].ticksa0>U5?a0:U5),n3=[];for(let U5=0;U50;){let U5=_5(),a0=r.tracks[U5];if(B2[U5]>=a0.length){b1--;continue}let J5=a0[B2[U5]];B2[U5]++;let n6=r.midiPortChannelOffsets[v2[U5]];if(J5.messageStatusByte===J3.midiPort){v2[U5]=J5.messageData[0];continue}let c6=J5.messageStatusByte&240;if(c6!==J3.controllerChange&&c6!==J3.programChange&&c6!==J3.systemExclusive)continue;if(c6===J3.systemExclusive){if(J5.messageData[0]!==65||J5.messageData[2]!==66||J5.messageData[3]!==18||J5.messageData[4]!==64||!(J5.messageData[5]&16)||J5.messageData[6]!==21){J5.messageData[0]===67&&J5.messageData[2]===76&&J5.messageData[5]===126&&J5.messageData[6]===0?K0="xg":J5.messageData[0]===65&&J5.messageData[2]===66&&J5.messageData[6]===127?K0="gs":J5.messageData[0]===126&&J5.messageData[2]===9&&(K0="gm",F1.push({tNum:U5,e:J5}));continue}let u4=[9,0,1,2,3,4,5,6,7,8,10,11,12,13,14,15][J5.messageData[5]&15]+n6;n3[u4].drums=!!(J5.messageData[7]>0&&J5.messageData[5]>>4);continue}let O6=(J5.messageStatusByte&15)+n6,g6=n3[O6];if(c6===J3.programChange){g6.drums?l.presets.findIndex(R4=>R4.program===J5.messageData[0]&&R4.bank===128)===-1&&(J5.messageData[0]=l.presets.find(R4=>R4.bank===128)?.program||0):l.presets.findIndex(R4=>R4.program===J5.messageData[0]&&R4.bank!==128)===-1&&(J5.messageData[0]=l.presets.find(R4=>R4.bank!==128)?.program||0),g6.program=J5.messageData[0];let u4=Math.max(0,g6.lastBank?.messageData[1]-r.bankOffset),Ke=g6.drums?128:u4;if(g6.lastBank===void 0)continue;if(K0==="xg"&&g6.drums&&(n3[O6].lastBank.messageData[1]=127),l.presets.findIndex(R4=>R4.bank===Ke&&R4.program===J5.messageData[0])===-1){let R4=l.presets.find(F9=>F9.program===J5.messageData[0])?.bank+g||g;g6.lastBank.messageData[1]=R4,Y5(`%cNo preset %c${Ke}:${J5.messageData[0]}%c. Changing bank to ${R4}.`,S1.info,S1.recognized,S1.info)}else{let R4=(Ke===128?0:u4)+g;g6.lastBank.messageData[1]=R4,Y5(`%cPreset %c${Ke}:${J5.messageData[0]}%c exists. Changing bank to ${R4}.`,S1.info,S1.recognized,S1.info)}continue}J5.messageData[0]===A6.bankSelect&&(g6.hasBankSelect=!0,K0==="xg"&&(g6.drums=J5.messageData[1]===120||J5.messageData[1]===126||J5.messageData[1]===127),g6.lastBank=J5)}if(n3.forEach((U5,a0)=>{if(U5.hasBankSelect===!0)return;let J5=a0%16,n6=J3.programChange|J5,c6=Math.floor(a0/16)*16,O6=r.midiPortChannelOffsets.indexOf(c6),g6=r.tracks.find((F9,_t)=>r.midiPorts[_t]===O6&&r.usedChannelsOnTrack[_t].has(J5));if(g6===void 0)return;let u4=g6.findIndex(F9=>F9.messageStatusByte===n6);if(u4===-1){let F9=g6.findIndex(Go=>Go.messageStatusByte>128&&Go.messageStatusByte<240&&(Go.messageStatusByte&15)===J5);if(F9===-1)return;let _t=g6[F9].ticks,To=l.getPreset(0,0).program;g6.splice(F9,0,new ui(_t,J3.programChange|J5,new l6([To]))),u4=F9}Y5(`%cAdding bank select for %c${a0}`,S1.info,S1.recognized);let Ke=g6[u4].ticks,R4=l.getPreset(0,U5.program)?.bank+g||g;g6.splice(u4,0,new ui(Ke,J3.controllerChange|J5,new l6([A6.bankSelect,R4])))}),K0!=="gs"&&K0!=="xg"){for(let a0 of F1)r.tracks[a0.tNum].splice(r.tracks[a0.tNum].indexOf(a0.e),1);let U5=0;r.tracks[0][0].messageStatusByte===J3.trackName&&U5++,r.tracks[0].splice(U5,0,MB(0))}}let b0=new l6(mm(r).buffer),m0=[So("INFO")],q0=new TextEncoder;if(m0.push(a8(F7.software,q0.encode("SpessaSynth"),!0)),b.name!==void 0?(m0.push(a8(F7.name,q0.encode(b.name),!0)),d=bo):m0.push(a8(F7.name,r.rawMidiName,!0)),b.creationDate!==void 0)d=bo,m0.push(a8(F7.creationDate,q0.encode(b.creationDate),!0));else{let K0=new Date().toLocaleString(void 0,{weekday:"long",year:"numeric",month:"long",day:"numeric",hour:"numeric",minute:"numeric"});m0.push(a8(F7.creationDate,So(K0),!0))}if(b.comment!==void 0&&(d=bo,m0.push(a8(F7.comment,q0.encode(b.comment)))),b.engineer!==void 0&&m0.push(a8(F7.engineer,q0.encode(b.engineer),!0)),b.album!==void 0&&(d=bo,m0.push(a8(F7.album,q0.encode(b.album),!0))),b.artist!==void 0&&(d=bo,m0.push(a8(F7.artist,q0.encode(b.artist),!0))),b.genre!==void 0&&(d=bo,m0.push(a8(F7.genre,q0.encode(b.genre),!0))),b.picture!==void 0&&m0.push(a8(F7.picture,new Uint8Array(b.picture))),b.copyright!==void 0)d=bo,m0.push(a8(F7.copyright,q0.encode(b.copyright),!0));else{let K0=r.copyright.length>0?r.copyright:GD;m0.push(a8(F7.copyright,So(K0)))}let m1=new l6(2);C$(m1,g,2),m0.push(a8(F7.bankOffset,m1)),b.midiEncoding!==void 0&&(m0.push(a8(F7.midiEncoding,q0.encode(b.midiEncoding))),d=bo),m0.push(a8(F7.encoding,So(d)));let x=bs(m0),j0=bs([So("RMID"),a8("data",b0),a8("LIST",x),A]);return Y5("%cFinished!",S1.info),t4(),a8("RIFF",j0)}var Di={loadNewSongList:0,pause:1,stop:2,play:3,setTime:4,changeMIDIMessageSending:5,setPlaybackRate:6,setLoop:7,changeSong:8,getMIDI:9,setSkipToFirstNote:10},_o={midiEvent:0,songChange:1,textEvent:2,timeChange:3,pause:4,getMIDI:5,midiError:6};var Ey={duration:99999,firstNoteOn:0,loop:{start:0,end:123456},lastVoiceEventTick:123456,lyrics:[],copyright:"",midiPorts:[],midiPortChannelOffsets:[],tracksAmount:0,tempoChanges:[{ticks:0,tempo:120}],fileName:"NOT_LOADED.mid",midiName:"Loading...",rawMidiName:new Uint8Array([76,111,97,100,105,110,103,46,46,46]),usedChannelsOnTrack:[],timeDivision:0,keyRange:{min:0,max:127},isEmbedded:!1,RMIDInfo:void 0,bankOffset:0};var ND={skipToFirstNoteOn:!0},pm=class{constructor(r,l,g=ND){this.ignoreEvents=!1,this.synth=l,this.highResTimeOffset=0,this.absoluteStartTime=this.synth.currentTime,this._getMIDIResolve=void 0,this._playbackRate=1,this.songIndex=0,this.hasDummyData=!0,this._loop=!0,this.isFinished=!1,this.duration=0,this.synth.sequencerCallbackFunction=this._handleMessage.bind(this),this._skipToFirstNoteOn=g?.skipToFirstNoteOn??!0,this._skipToFirstNoteOn===!1&&this._sendMessage(Di.setSkipToFirstNote,!1),this.loadNewSongList(r),window.addEventListener("beforeunload",this.resetMIDIOut.bind(this))}get skipToFirstNoteOn(){return this._skipToFirstNoteOn}set skipToFirstNoteOn(r){this._skipToFirstNoteOn=r,this._sendMessage(Di.setSkipToFirstNote,this._skipToFirstNoteOn)}resetMIDIOut(){if(this.MIDIout){for(let r=0;r<16;r++)this.MIDIout.send([J3.controllerChange|r,120,0]),this.MIDIout.send([J3.controllerChange|r,123,0]);this.MIDIout.send([J3.reset])}}set loop(r){this._sendMessage(Di.setLoop,r),this._loop=r}get loop(){return this._loop}_sendMessage(r,l=void 0){this.synth.post({channelNumber:-1,messageType:Je.sequencerSpecific,messageData:{messageType:r,messageData:l}})}onError;_handleMessage(r,l){if(!this.ignoreEvents)switch(r){default:break;case _o.midiEvent:let g=l;if(this.MIDIout&&g[0]>=128){this.MIDIout.send(g);return}break;case _o.songChange:let d=l[0];this.songIndex=l[1],this.midiData=d,this.hasDummyData=!1,this.absoluteStartTime=0,this.duration=this.midiData.duration,Object.entries(this.onSongChange).forEach(b0=>b0[1](d)),this.unpause();break;case _o.textEvent:let b=l;this.onTextEvent&&this.onTextEvent(b[0],b[1]);break;case _o.timeChange:let I0=this.synth.currentTime-l;Object.entries(this.onTimeChange).forEach(b0=>b0[1](I0)),this.unpause(),this._recalculateStartTime(I0);break;case _o.pause:this.pausedTime=this.currentTime,this.isFinished=l,this.isFinished&&Object.entries(this.onSongEnded).forEach(b0=>b0[1]());break;case _o.midiError:if(this.onError)this.onError(l);else throw new Error(l);return;case _o.getMIDI:this._getMIDIResolve&&this._getMIDIResolve(l)}}set playbackRate(r){this._sendMessage(Di.setPlaybackRate,r),this.highResTimeOffset*=r/this._playbackRate,this._playbackRate=r}get playbackRate(){return this._playbackRate}addOnSongChangeEvent(r,l){this.onSongChange[l]=r,r(this.midiData)}addOnSongEndedEvent(r,l){this.onSongEnded[l]=r}addOnTimeChangeEvent(r,l){this.onTimeChange[l]=r}async getMIDI(){return new Promise(r=>{this._getMIDIResolve=r,this._sendMessage(Di.getMIDI,void 0)})}loadNewSongList(r){this.pause(),this.midiData=Ey,this.hasDummyData=!0,this.duration=99999,this._sendMessage(Di.loadNewSongList,r),this.songIndex=0,this.songsAmount=r.length,this.songsAmount>1&&(this.loop=!1)}nextSong(){this._sendMessage(Di.changeSong,!0)}previousSong(){this._sendMessage(Di.changeSong,!1)}get currentTime(){return this.pausedTime?this.pausedTime:(this.synth.currentTime-this.absoluteStartTime)*this._playbackRate}_recalculateStartTime(r){this.absoluteStartTime=this.synth.currentTime-r/this._playbackRate,this.highResTimeOffset=(this.synth.currentTime-performance.now()/1e3)*this._playbackRate}get currentHighResolutionTime(){if(this.pausedTime)return this.pausedTime;let r=this.highResTimeOffset,l=this.absoluteStartTime,g=(performance.now()/1e3-l)*this._playbackRate,d=r+g,b=this.currentTime,I0=.01*this._playbackRate,b0=b-d;return this.highResTimeOffset+=b0*I0,d=this.highResTimeOffset+g,d}set currentTime(r){this.unpause(),this._sendMessage(Di.setTime,r)}connectMidiOutput(r){this.resetMIDIOut(),this.MIDIout=r,this._sendMessage(Di.changeMIDIMessageSending,r!==void 0),this.currentTime-=.1}pause(){if(this.paused){_4("Already paused");return}this.pausedTime=this.currentTime,this._sendMessage(Di.pause)}unpause(){this.pausedTime=void 0,this.isFinished=!1}get paused(){return this.pausedTime!==void 0}play(r=!1){this.isFinished&&(r=!0),this._recalculateStartTime(this.pausedTime||0),this.unpause(),this._sendMessage(Di.play,r)}stop(){this._sendMessage(Di.stop)}midiData;onSongChange={};onTextEvent;onTimeChange={};onSongEnded={}};var QC=["Shift_JIS","windows-1250","utf-8","utf-16","utf-16le","utf-16be","latin1","ISO-8859-1","ISO-8859-2","ISO-8859-3","ISO-8859-4","ISO-8859-5","ISO-8859-6","ISO-8859-7","ISO-8859-8","ISO-8859-9","ISO-8859-10","ISO-8859-11","ISO-8859-13","ISO-8859-14","ISO-8859-15","ISO-8859-16","windows-1251","windows-1252","windows-1253","windows-1254","windows-1255","windows-1256","windows-1257","windows-1258","EUC-JP","ISO-2022-JP","EUC-KR","Big5","GB18030"];function Cy(A){return` `}function B$(A){return` @@ -73,7 +73,7 @@ var gm=(A=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(A,{get:(r,l)=>( `}function GB(A){return` -`}function gh(A,r){let l=document.createElement("div");return l.classList.add("control_buttons"),l.title=A,l.innerHTML=r,l}var j7={synthesizerUIShow:"s",settingsShow:"r",blackMidiMode:"b",midiPanic:"backspace",playPause:" ",toggleLoop:"l",toggleLyrics:"t",seekBackwards:"arrowleft",seekForwards:"arrowright",previousSong:"[",nextSong:"]",cinematicMode:"c",videoMode:"v"};function _y(){navigator.mediaSession&&(navigator.mediaSession.metadata=new MediaMetadata({title:this.currentSongTitle,artist:"SpessaSynth"}),navigator.mediaSession.setActionHandler("play",()=>{this.seqPlay()}),navigator.mediaSession.setActionHandler("pause",()=>{this.seqPause()}),navigator.mediaSession.setActionHandler("stop",()=>{this.seq.currentTime=0,this.seqPause()}),navigator.mediaSession.setActionHandler("seekbackward",A=>{this.seq.currentTime-=A.seekOffset||10}),navigator.mediaSession.setActionHandler("seekforward",A=>{this.seq.currentTime+=A.seekOffset||10}),navigator.mediaSession.setActionHandler("seekto",A=>{this.seq.currentTime=A.seekTime}),navigator.mediaSession.setActionHandler("previoustrack",()=>{this.switchToPreviousSong()}),navigator.mediaSession.setActionHandler("nexttrack",()=>{this.switchToNextSong()}),navigator.mediaSession.playbackState="playing")}function Ry(A=!0){if(this.seq?.hasDummyData===!0)this.currentSongTitle=this.locale.getLocaleString("locale.synthInit.genericLoading");else{let r=this.infoDecoder.decode(this.seq.midiData.rawMidiName.buffer).replace(/\0$/,"");this.currentSongTitle=yB(r)}if(this.seq.midiData){let r=this.seq.midiData.lyrics;this.currentLyrics=new Uint8Array(r.reduce((g,d)=>g+d.length,0));let l=0;for(let g of r)this.currentLyrics.set(g,l),l+=g.length;this.currentLyricsString=this.decodeTextFix(this.currentLyrics.buffer)||this.locale.getLocaleString("locale.sequencerController.lyrics.noLyrics"),this.setLyricsText(""),A&&(this.rawOtherTextEvents=[])}if(document.getElementById("title").innerText=this.currentSongTitle,document.title=this.currentSongTitle+" - SpessaSynth",this.musicModeUI.setTitle(this.currentSongTitle),!!navigator.mediaSession)try{navigator.mediaSession.setPositionState({duration:this.seq.duration,playbackRate:this.seq.playbackRate,position:this.seq.currentTime})}catch{}}var UD=parseFloat(getComputedStyle(document.body).fontSize);function xy(){this.lyricsElement={};let A=document.createElement("div");A.classList.add("lyrics");let r=document.createElement("div");r.classList.add("lyrics_title_wrapper"),A.append(r),this.lyricsElement.titleWrapper=r;let l=document.createElement("h2");this.locale.bindObjectProperty(l,"textContent","locale.sequencerController.lyrics.title"),l.classList.add("lyrics_title"),r.appendChild(l),this.lyricsElement.title=l;let g=document.createElement("select");QC.forEach(m1=>{let F=document.createElement("option");F.innerText=m1,F.value=m1,g.appendChild(F)}),g.value=this.encoding,g.onchange=()=>this.changeEncoding(g.value),g.classList.add("lyrics_selector"),this.encodingSelector=g,r.appendChild(g);let d=document.createElement("p");d.classList.add("lyrics_text"),A.appendChild(d);let b=document.createElement("span");b.classList.add("lyrics_text_highlight"),d.appendChild(b);let I0=document.createElement("span");I0.classList.add("lyrics_text_gray"),d.appendChild(I0);let b0=document.createElement("details"),m0=document.createElement("summary");this.locale.bindObjectProperty(m0,"textContent","locale.sequencerController.lyrics.otherText.title"),b0.appendChild(m0);let Y0=document.createElement("div");Y0.innerText="",b0.appendChild(Y0),A.appendChild(b0),this.lyricsElement.text={highlight:b,gray:I0,main:d,other:Y0},this.lyricsElement.mainDiv=A,this.lyricsElement.selector=g,this.controls.appendChild(A),this.requiresTextUpdate=!0}function Fy(A){let r=this.lyricsElement.text.highlight,l=this.lyricsElement.text.gray;l.innerText=this.currentLyricsString.replace(A,""),r.innerText=A,this.lyricsElement.text.main.scrollTo(0,r.offsetHeight-UD*5)}function Ly(){let A="";for(let r of this.rawOtherTextEvents)A+=`
${Object.keys(J3).find(l=>J3[l]===r.type).replace(/([a-z])([A-Z])/g,"$1 $2")}:
${this.decodeTextFix(r.data.buffer)}

`;this.lyricsElement.text.other.innerHTML=A}var Fr=32,My="#ccc",Ty="#555",OD="#333",PD="#ddd",HD="Shift_JIS",_s=class{constructor(r,l,g){this.iconColor=My,this.iconDisabledColor=Ty,this.controls=r,this.encoding=HD,this.decoder=new TextDecoder(this.encoding),this.infoDecoder=new TextDecoder(this.encoding),this.hasInfoDecoding=!1,this.text="",this.requiresTextUpdate=!1,this.rawLyrics=[],this.rawOtherTextEvents=[],this.mode="dark",this.locale=l,this.currentSongTitle="",this.currentLyrics=new Uint8Array(0),this.currentLyricsString="",this.musicModeUI=g}toggleDarkMode(){if(this.mode==="dark"?(this.mode="light",this.iconColor=OD,this.iconDisabledColor=PD):(this.mode="dark",this.iconColor=My,this.iconDisabledColor=Ty),!this.seq){this.requiresThemeUpdate=!0;return}this.progressBar.classList.toggle("note_progress_light"),this.progressBarBackground.classList.toggle("note_progress_background_light"),this.lyricsElement.mainDiv.classList.toggle("lyrics_light"),this.lyricsElement.titleWrapper.classList.toggle("lyrics_light"),this.lyricsElement.selector.classList.toggle("lyrics_light")}seqPlay(r=!0){r&&this.seq.play(),this.playPause.innerHTML=B$(Fr),this.createNavigatorHandler(),this.updateTitleAndMediaStatus(),navigator.mediaSession&&(navigator.mediaSession.playbackState="playing")}seqPause(r=!0){r&&this.seq.pause(),this.playPause.innerHTML=Cy(Fr),this.createNavigatorHandler(),this.updateTitleAndMediaStatus(),navigator.mediaSession&&(navigator.mediaSession.playbackState="paused")}switchToNextSong(){this.seq.nextSong(),this.createNavigatorHandler(),this.updateTitleAndMediaStatus()}switchToPreviousSong(){this.seq.previousSong(),this.createNavigatorHandler(),this.updateTitleAndMediaStatus()}decodeTextFix(r,l=!1){let g=0;for(;;)try{return this.decoder.decode(r)}catch{g++,this.changeEncoding(QC[g]),this.encodingSelector.value=QC[g]}}connectSequencer(r){this.seq=r,this.createControls(),this.setSliderInterval(),this.createNavigatorHandler(),this.updateTitleAndMediaStatus(),this.seq.onTextEvent=(l,g)=>{let d=this.decodeTextFix(l.buffer);switch(g){default:return;case J3.text:case J3.copyright:case J3.cuePoint:case J3.trackName:case J3.instrumentName:case J3.marker:this.rawOtherTextEvents.push({type:g,data:l}),this.requiresTextUpdate=!0;return;case J3.lyric:this.text+=d,this.rawLyrics.push(...l),this.setLyricsText(this.text);break}},this.seq.addOnTimeChangeEvent(()=>{this.text="",this.rawLyrics=[],this.seqPlay(!1)},"sequi-time-change"),this.seq.addOnSongChangeEvent(l=>{if(this.createNavigatorHandler(),this.updateTitleAndMediaStatus(),this.seqPlay(!1),this.seq.songsAmount>1&&(this.seq.loop=!1,this.loopButton.firstElementChild.setAttribute("fill",this.iconDisabledColor)),this.hasInfoDecoding=this.seq.midiData.RMIDInfo?.[F7.encoding]!==void 0,l.isEmbedded){let g=(b0,m0,Y0,m1="")=>this.seq.midiData.RMIDInfo?.[b0]===void 0?m0:m1+Y0.decode(this.seq.midiData.RMIDInfo?.[b0]).replace(/\0$/,""),d=new TextDecoder,b=g(F7.midiEncoding,this.encoding,d),I0=g(F7.encoding,"utf-8",d);this.infoDecoder=new TextDecoder(I0),this.changeEncoding(b)}},"sequi-song-change"),this.requiresThemeUpdate&&this.mode==="light"&&(this.mode="dark",this.toggleDarkMode())}changeEncoding(r){this.encoding=r,this.decoder=new TextDecoder(r),this.hasInfoDecoding||(this.infoDecoder=new TextDecoder(r)),this.updateOtherTextEvents(),this.text=this.decodeTextFix(new Uint8Array(this.rawLyrics).buffer),this.lyricsElement.selector.value=r,this.updateTitleAndMediaStatus(!1),this.setLyricsText(this.text)}createControls(){this.progressTime=document.createElement("p"),this.progressTime.id="note_time",this.progressTime.onclick=F=>{F.preventDefault();let j0=r.getBoundingClientRect(),K0=F.clientX-j0.left,F1=j0.width;this.seq.currentTime=K0/F1*this.seq.duration,g.innerHTML=B$(Fr)},this.createLyrics();let r=document.createElement("div");r.id="note_progress_background",this.progressBarBackground=r,this.progressBar=document.createElement("div"),this.progressBar.id="note_progress",this.progressBar.min="0",this.progressBar.max=this.seq.duration.toString();let l=document.createElement("div"),g=gh("Play/Pause",B$(Fr));this.playPause=g,this.locale.bindObjectProperty(g,"title","locale.sequencerController.playPause");let d=()=>{this.seq.paused?this.seqPlay():this.seqPause()};g.onclick=d;let b=gh("Previous song",Qy(Fr));this.locale.bindObjectProperty(b,"title","locale.sequencerController.previousSong"),b.onclick=()=>this.switchToPreviousSong();let I0=gh("Next song",py(Fr));this.locale.bindObjectProperty(I0,"title","locale.sequencerController.nextSong"),I0.onclick=()=>this.switchToNextSong();let b0=gh("Loop this",my(Fr));this.locale.bindObjectProperty(b0,"title","locale.sequencerController.loopThis");let m0=()=>{this.seq.loop?this.seq.loop=!1:(this.seq.loop=!0,this.seq.currentTime>=this.seq.duration&&(this.seq.currentTime=0)),b0.firstElementChild.setAttribute("fill",this.seq.loop?this.iconColor:this.iconDisabledColor)};b0.onclick=m0,this.loopButton=b0;let Y0=gh("Show lyrics",By(Fr));this.locale.bindObjectProperty(Y0,"title","locale.sequencerController.lyrics.show"),Y0.firstElementChild.setAttribute("fill",this.iconDisabledColor);let m1=()=>{this.lyricsElement.mainDiv.classList.toggle("lyrics_show"),Y0.firstElementChild.setAttribute("fill",this.lyricsElement.mainDiv.classList.contains("lyrics_show")?this.iconColor:this.iconDisabledColor)};Y0.onclick=m1,document.addEventListener("keydown",F=>{switch(F.key.toLowerCase()){case j7.playPause:F.preventDefault(),d();break;case j7.toggleLoop:F.preventDefault(),m0();break;case j7.toggleLyrics:F.preventDefault(),m1();break;default:break}}),l.appendChild(b),l.appendChild(b0),l.appendChild(g),l.appendChild(Y0),l.appendChild(I0),this.controls.appendChild(r),r.appendChild(this.progressBar),this.controls.appendChild(this.progressTime),this.controls.appendChild(l),document.addEventListener("keydown",F=>{switch(F.key.toLowerCase()){case j7.seekBackwards:F.preventDefault(),this.seq.currentTime-=5,g.innerHTML=B$(Fr);break;case j7.seekForwards:F.preventDefault(),this.seq.currentTime+=5,g.innerHTML=B$(Fr);break;case j7.previousSong:this.switchToPreviousSong();break;case j7.nextSong:this.switchToNextSong();break;default:if(!isNaN(parseFloat(F.key))){F.preventDefault();let j0=parseInt(F.key);0<=j0&&j0<=9&&(this.seq.currentTime=this.seq.duration*(j0/10),g.innerHTML=B$(Fr))}break}})}_updateInterval(){this.progressBar.style.width=`${this.seq.currentTime/this.seq.duration*100}%`;let r=f$(this.seq.currentTime),l=f$(this.seq.duration);this.progressTime.innerText=`${r.time} / ${l.time}`,this.requiresTextUpdate&&(this.updateOtherTextEvents(),this.requiresTextUpdate=!1)}setSliderInterval(){setInterval(this._updateInterval.bind(this),100)}};_s.prototype.createNavigatorHandler=_y;_s.prototype.updateTitleAndMediaStatus=Ry;_s.prototype.createLyrics=xy;_s.prototype.setLyricsText=Fy;_s.prototype.updateOtherTextEvents=Ly;function Gy(){this.controllers.forEach(A=>{A.voiceMeter.hide(),A.pitchWheel.hide(),A.pan.hide(),A.expression.hide(),A.volume.hide(),A.mod.hide(),A.chorus.hide(),A.preset.hide()})}function Ny(){this.controllers.forEach(A=>{A.voiceMeter.show(),A.pitchWheel.show(),A.pan.show(),A.expression.show(),A.volume.show(),A.mod.show(),A.chorus.show(),A.preset.show()})}function Uy(){this.mainControllerDiv.classList.toggle("synthui_controller_light"),this.mainButtons.forEach(A=>{A.classList.toggle("synthui_button"),A.classList.toggle("synthui_button_light")}),this.mainMeters.forEach(A=>{A.toggleMode(!0)}),this.controllers.forEach(A=>{A.voiceMeter.toggleMode(),A.pitchWheel.toggleMode(),A.pan.toggleMode(),A.expression.toggleMode(),A.volume.toggleMode(),A.mod.toggleMode(),A.chorus.toggleMode(),A.preset.toggleMode(),A.presetReset.classList.toggle("voice_reset_light"),A.drumsToggle.classList.toggle("mute_button_light"),A.muteButton.classList.toggle("mute_button_light")})}var $r=class{constructor(r="none",l,g,d,b=0,I0=100,b0=!1,m0=void 0,Y0=void 0,m1=void 0){if(this.meterText="",g.bindObjectProperty(this,"meterText",l+".title"),this.min=b,this.max=I0,this.currentValue=-1,this.isShown=!0,this.isVisualValueSet=!0,this.isLocked=!1,this.lockCallback=Y0,this.unlockCallback=m1,this.div=document.createElement("div"),this.div.classList.add("voice_meter"),this.div.classList.add("controller_element"),r!=="none"&&r!==""&&(this.div.style.borderColor=r),g.bindObjectProperty(this.div,"title",l+".description",d),this.bar=document.createElement("div"),this.bar.classList.add("voice_meter_bar"),this.bar.style.background=r,this.div.appendChild(this.bar),this.text=document.createElement("p"),this.text.classList.add("voice_meter_text"),this.div.appendChild(this.text),this.isActive=!1,b0){if(m0===void 0)throw new Error("No editable function given!");this.div.onmousedown=F=>{F.preventDefault(),F.button===0?this.isActive=!0:this.lockMeter()},this.div.onmousemove=F=>{if(!this.isActive)return;let j0=F.currentTarget.getBoundingClientRect(),K0=j0.left,F1=j0.width,B2=F.clientX-K0,b1=Math.max(0,Math.min(1,B2/F1));m0(b1*(I0-b)+b)},this.div.onmouseup=()=>this.isActive=!1,this.div.onmouseleave=F=>{this.div.onmousemove(F),this.isActive=!1},this.text.oncontextmenu=F=>{F.preventDefault()},this.div.onclick=F=>{F.preventDefault(),this.isActive=!0,this.div.onmousemove(F),this.isActive=!1},this.div.classList.add("editable")}}lockMeter(){this.lockCallback!==void 0&&(this.isLocked?(this.text.classList.remove("locked_meter"),this.unlockCallback()):(this.text.classList.add("locked_meter"),this.lockCallback()),this.isLocked=!this.isLocked)}toggleMode(r=!1){r&&(this.bar.classList.toggle("voice_meter_light_color"),this.div.classList.toggle("voice_meter_light_color")),this.text.classList.toggle("voice_meter_text_light")}show(){if(this.isShown=!0,!this.isVisualValueSet){let r=Math.max(0,Math.min((this.currentValue-this.min)/(this.max-this.min),1));this.bar.style.width=`${r*100}%`,this.text.textContent=this.meterText+(Math.round(this.currentValue*100)/100).toString(),this.isVisualValueSet=!0}}hide(){this.isShown=!1}update(r,l=!1){if(!(r===this.currentValue&&l===!1))if(this.currentValue=r,this.isShown){let g=Math.max(0,Math.min((r-this.min)/(this.max-this.min),1));this.bar.style.width=`${g*100}%`,this.text.textContent=this.meterText+(Math.round(r*100)/100).toString(),this.isVisualValueSet=!0}else this.isVisualValueSet=!1}};var Oy=["Acoustic Grand Piano","Bright Acoustic Piano","Electric Grand Piano","Honky-tonk Piano","Electric Piano 1","Electric Piano 2","Harpsichord","Clavi","Celesta","Glockenspiel","Music Box","Vibraphone","Marimba","Xylophone","Tubular Bells","Dulcimer","Drawbar Organ","Percussive Organ","Rock Organ","Church Organ","Reed Organ","Accordion","Harmonica","Tango Accordion","Acoustic Guitar (nylon)","Acoustic Guitar (steel)","Electric Guitar (jazz)","Electric Guitar (clean)","Electric Guitar (muted)","Overdriven Guitar","Distortion Guitar","Guitar Harmonics","Acoustic Bass","Electric Bass (finger)","Electric Bass (pick)","Fretless Bass","Slap Bass 1","Slap Bass 2","Synth Bass 1","Synth Bass 2","Violin","Viola","Cello","Contrabass","Tremolo Strings","Pizzicato Strings","Orchestral Harp","Timpani","String Ensemble 1","String Ensemble 2","Synth Strings 1","Synth Strings 2","Choir Aahs","VoiceGroup Oohs","Synth Choir","Orchestra Hit","Trumpet","Trombone","Tuba","Muted Trumpet","French Horn","Brass Section","Synth Brass 1","Synth Brass 2","Soprano Sax","Alto Sax","Tenor Sax","Baritone Sax","Oboe","English Horn","Bassoon","Clarinet","Piccolo","Flute","Recorder","Pan Flute","Blown Bottle","Shakuhachi","Whistle","Ocarina","Lead 1 (square)","Lead 2 (sawtooth)","Lead 3 (calliope)","Lead 4 (chiff)","Lead 5 (charang)","Lead 6 (voice)","Lead 7 (fifths)","Lead 8 (bass + lead)","Pad 1 (new age)","Pad 2 (warm)","Pad 3 (polysynth)","Pad 4 (choir)","Pad 5 (bowed)","Pad 6 (metallic)","Pad 7 (halo)","Pad 8 (sweep)","FX 1 (rain)","FX 2 (soundtrack)","FX 3 (crystal)","FX 4 (atmosphere)","FX 5 (brightness)","FX 6 (goblins)","FX 7 (echoes)","FX 8 (sci-fi)","Sitar","Banjo","Shamisen","Koto","Kalimba","Bagpipe","Fiddle","Shanai","Tinkle Bell","Agogo","Steel Drums","Woodblock","Taiko Drum","Melodic Tom","Synth Drum","Reverse Cymbal","Guitar Fret Noise","Breath Noise","Seashore","Bird Tweet","Telephone Ring","Helicopter","Applause","Gunshot"];var km=class{constructor(r,l,g,d,b=void 0){this.isShown=!0,this.isReloaded=!0,this.elements=r,this.elements.length>0?this.value=`${this.elements[0].bank}:${this.elements[0].program}`:this.value="",this.mainDiv=document.createElement("select"),this.mainDiv.classList.add("voice_selector"),this.mainDiv.classList.add("controller_element"),l.bindObjectProperty(this.mainDiv,"title",g,d),this.reload(),this.mainDiv.onchange=()=>{b(this.mainDiv.value),this.mainDiv.blur()}}toggleMode(){this.mainDiv.classList.toggle("voice_selector_light")}reload(r=this.elements){if(this.elements=r,!this.isShown){this.isReloaded=!1;return}this.mainDiv.innerHTML="";let l=-20,g=!1,d="";for(let b of r){let I0=b.program;I0!==l&&(l=I0,r.filter(b0=>b0.program===l).length>1?(g=!0,d+=``):(g=!1,d+="")),g||b.bank!==0&&b.bank!==128?d+=``:d+=``}this.mainDiv.innerHTML=d,this.isReloaded=!0}set(r){this.value=r,this.isShown&&(this.isReloaded||this.reload(),this.mainDiv.value=r)}show(){this.isShown=!0,this.isReloaded||this.reload(),this.mainDiv.value=this.value}hide(){this.isShown=!1}};var yn=32;function Py(A){this.soloChannels=new Set;let r=document.createElement("div");r.classList.add("channel_controller");let l=new $r(this.channelColors[A%this.channelColors.length],$8+"channelController.voiceMeter",this.locale,[A+1],0,100);l.bar.classList.add("voice_meter_bar_smooth"),r.appendChild(l.div);let g=new $r(this.channelColors[A%this.channelColors.length],$8+"channelController.pitchBendMeter",this.locale,[A+1],-8192,8192,!0,v2=>{let Y2=g.isLocked;Y2&&this.synth.lockController(A,m$+x7.pitchWheel,!1),v2=Math.round(v2)+8192;let K5=v2>>7,U5=v2&127;this.synth.pitchWheel(A,K5,U5),Y2&&this.synth.lockController(A,m$+x7.pitchWheel,!0)},()=>this.synth.lockController(A,m$+x7.pitchWheel,!0),()=>this.synth.lockController(A,m$+x7.pitchWheel,!1));g.update(0),r.appendChild(g.div);let d=(v2,Y2,K5)=>{K5.isLocked?(this.synth.lockController(A,v2,!1),this.synth.controllerChange(A,v2,Y2),this.synth.lockController(A,v2,!0)):this.synth.controllerChange(A,v2,Y2)},b=(v2,Y2,K5)=>{let U5=new $r(this.channelColors[A%this.channelColors.length],$8+Y2,this.locale,[A+1],0,127,!0,$0=>d(v2,Math.round($0),U5),()=>this.synth.lockController(A,v2,!0),()=>this.synth.lockController(A,v2,!1));return U5.update(K5),U5},I0=b(A6.pan,"channelController.panMeter",64);r.appendChild(I0.div);let b0=b(A6.expressionController,"channelController.expressionMeter",127);r.appendChild(b0.div);let m0=b(A6.mainVolume,"channelController.volumeMeter",100);r.appendChild(m0.div);let Y0=b(A6.modulationWheel,"channelController.modulationWheelMeter",0);r.appendChild(Y0.div);let m1=b(A6.effects3Depth,"channelController.chorusMeter",0);r.appendChild(m1.div);let F=b(A6.effects1Depth,"channelController.reverbMeter",40);r.appendChild(F.div);let j0=new $r(this.channelColors[A%this.channelColors.length],$8+"channelController.transposeMeter",this.locale,[A+1],-36,36,!0,v2=>{v2=Math.round(v2),this.synth.transposeChannel(A,v2,!0),j0.update(v2)});j0.update(0),r.appendChild(j0.div);let K0=document.createElement("div"),F1=new km([],this.locale,$8+"channelController.presetSelector.description",[A+1],async v2=>{let Y2=v2.split(":");this.synth.lockController(A,Hi,!1),this.synth.controllerChange(A,A6.bankSelect,parseInt(Y2[0]),!0),this.synth.programChange(A,parseInt(Y2[1]),!0),F1.mainDiv.classList.add("locked_selector"),this.synth.lockController(A,Hi,!0)});r.appendChild(F1.mainDiv),K0.innerHTML=Dy(yn),this.locale.bindObjectProperty(K0,"title",$8+"channelController.presetReset.description",[A+1]),K0.classList.add("controller_element"),K0.classList.add("voice_reset"),K0.onclick=()=>{this.synth.lockController(A,Hi,!1),F1.mainDiv.classList.remove("locked_selector")},r.appendChild(K0);let B2=document.createElement("div");B2.innerHTML=Qm(yn),this.locale.bindObjectProperty(B2,"title",$8+"channelController.soloButton.description",[A+1]),B2.classList.add("controller_element"),B2.classList.add("mute_button"),B2.onclick=()=>{if(this.soloChannels.has(A)?this.soloChannels.delete(A):this.soloChannels.add(A),this.soloChannels.size===0||this.soloChannels.size>=this.synth.channelsAmount){for(let v2=0;v2=this.synth.channelsAmount&&this.soloChannels.clear();return}for(let v2=0;v2{if(b1.hasAttribute("is_muted")){b1.removeAttribute("is_muted");let v2=this.soloChannels.size===0||this.soloChannels.has(A);this.synth.muteChannel(A,!v2),b1.innerHTML=TB(yn)}else this.synth.muteChannel(A,!0),b1.setAttribute("is_muted","true"),b1.innerHTML=wy(yn)},r.appendChild(b1);let _5=document.createElement("div");return _5.innerHTML=A===ki?ym(yn):wm(yn),this.locale.bindObjectProperty(_5,"title",$8+"channelController.drumToggleButton.description",[A+1]),_5.classList.add("controller_element"),_5.classList.add("mute_button"),_5.onclick=()=>{this.synth.setDrums(A,!this.synth.channelProperties[A].isDrum)},r.appendChild(_5),{controller:r,voiceMeter:l,pitchWheel:g,pan:I0,expression:b0,volume:m0,mod:Y0,chorus:m1,reverb:F,preset:F1,presetReset:K0,drumsToggle:_5,soloButton:B2,muteButton:b1,transpose:j0}}function Hy(){let A=this.uiDiv.getElementsByClassName("synthui_controller")[0];this.controllers=[];for(let r=0;r{this.synth.setMainVolume(Math.round(m0)/100),this.volumeController.update(m0)}),this.volumeController.bar.classList.add("voice_meter_bar_smooth"),this.volumeController.div.classList.add("main_controller_element"),this.volumeController.update(100),this.panController=new $r("",$8+"mainPanMeter",this.locale,[],-1,1,!0,m0=>{this.synth.setMasterPan(m0),this.panController.update(m0)}),this.panController.bar.classList.add("voice_meter_bar_smooth"),this.panController.div.classList.add("main_controller_element"),this.panController.update(0),this.transposeController=new $r("",$8+"mainTransposeMeter",this.locale,[],-12,12,!0,m0=>{this.synth.transpose(Math.round(m0*2)/2),this.transposeController.update(Math.round(m0*2)/2)}),this.transposeController.bar.classList.add("voice_meter_bar_smooth"),this.transposeController.div.classList.add("main_controller_element"),this.transposeController.update(0);let r=document.createElement("button");this.locale.bindObjectProperty(r,"textContent",$8+"midiPanic.title"),this.locale.bindObjectProperty(r,"title",$8+"midiPanic.description"),r.classList.add("synthui_button"),r.classList.add("main_controller_element"),r.onclick=()=>this.synth.stopAll(!0);let l=document.createElement("button");this.locale.bindObjectProperty(l,"textContent",$8+"systemReset.title"),this.locale.bindObjectProperty(l,"title",$8+"systemReset.description"),l.classList.add("synthui_button"),l.classList.add("main_controller_element"),l.onclick=()=>this.synth.resetControllers();let g=document.createElement("button");this.locale.bindObjectProperty(g,"textContent",$8+"blackMidiMode.title"),this.locale.bindObjectProperty(g,"title",$8+"blackMidiMode.description"),g.classList.add("synthui_button"),g.classList.add("main_controller_element"),g.onclick=()=>{this.synth.highPerformanceMode=!this.synth.highPerformanceMode};let d=document.createElement("button");this.locale.bindObjectProperty(d,"textContent",$8+"disableCustomVibrato.title"),this.locale.bindObjectProperty(d,"title",$8+"disableCustomVibrato.description"),d.classList.add("synthui_button"),d.classList.add("main_controller_element"),d.onclick=()=>{this.synth.lockAndResetChannelVibrato(),d.parentNode.removeChild(d)};let b=document.createElement("a");b.href="https://github.com/spessasus/SpessaSynth/wiki/How-To-Use-App#synthesizer-controller",b.target="#",b.classList.add("main_controller_element"),b.classList.add("synthui_button"),this.locale.bindObjectProperty(b,"textContent",$8+"helpButton.title"),this.locale.bindObjectProperty(b,"title",$8+"helpButton.description");let I0=document.createElement("div");I0.classList.add("synthui_controller"),this.uiDiv.appendChild(I0);let b0=document.createElement("button");this.locale.bindObjectProperty(b0,"textContent",$8+"toggleButton.title"),this.locale.bindObjectProperty(b0,"title",$8+"toggleButton.description"),b0.classList.add("synthui_button"),b0.onclick=()=>{this.hideOnDocClick=!1,this.toggleVisibility()},A.appendChild(this.volumeController.div),A.appendChild(this.panController.div),A.appendChild(this.transposeController.div),A.appendChild(r),A.appendChild(l),A.appendChild(g),A.appendChild(d),A.appendChild(b),this.mainMeters=[this.volumeController,this.panController,this.transposeController,this.voiceMeter],this.mainButtons=[r,l,g,d,b0,b],this.uiDiv.appendChild(this.voiceMeter.div),this.uiDiv.appendChild(b0),I0.appendChild(A),this.mainControllerDiv=I0,this.mainControllerDiv.onclick=m0=>m0.stopPropagation(),document.addEventListener("click",()=>{if(!this.hideOnDocClick){this.hideOnDocClick=!0;return}I0.classList.remove("synthui_controller_show"),this.isShown=!1,this.hideControllers()})}function Yy(){let A=this.uiDiv.getElementsByClassName("synthui_controller")[0];this.synth.eventHandler.addEvent("programchange","synthui-program-change",r=>{this.controllers[r.channel].preset.set(`${r.bank}:${r.program}`)}),this.synth.eventHandler.addEvent("allcontrollerreset","synthui-all-controller-reset",()=>{for(let r of this.controllers)r.pan.update(64),r.mod.update(0),r.chorus.update(0),r.pitchWheel.update(0),r.expression.update(127),r.volume.update(100),r.reverb.update(40)}),this.synth.eventHandler.addEvent("controllerchange","synthui-controller-change",r=>{let l=r.controllerNumber,g=r.channel,d=r.controllerValue;switch(l){default:break;case A6.expressionController:this.controllers[g].expression.update(d);break;case A6.mainVolume:this.controllers[g].volume.update(d);break;case A6.pan:this.controllers[g].pan.update(d);break;case A6.modulationWheel:this.controllers[g].mod.update(d);break;case A6.effects3Depth:this.controllers[g].chorus.update(d);break;case A6.effects1Depth:this.controllers[g].reverb.update(d)}}),this.synth.eventHandler.addEvent("pitchwheel","synthui-pitch-wheel",r=>{let l=r.MSB<<7|r.LSB;this.controllers[r.channel].pitchWheel.update(l-8192)}),this.synth.eventHandler.addEvent("drumchange","synthui-drum-change",r=>{this.controllers[r.channel].drumsToggle.innerHTML=r.isDrumChannel?ym(32):wm(32),this.controllers[r.channel].preset.reload(r.isDrumChannel?this.percussionList:this.instrumentList)}),this.synth.eventHandler.addEvent("newchannel","synthui-new-channel",()=>{let r=this.createChannelController(this.controllers.length);this.controllers.push(r),A.appendChild(r.controller),this.hideControllers()})}var $8="locale.synthesizerController.",Lr=class{constructor(r,l,g){this.channelColors=r;let d=l;this.uiDiv=document.createElement("div"),this.uiDiv.classList.add("wrapper"),d.appendChild(this.uiDiv),this.uiDiv.style.visibility="visible",this.isShown=!1,this.animationId=-1,this.locale=g,this.hideOnDocClick=!0}connectSynth(r){this.synth=r,this.getInstrumentList(),this.createMainSynthController(),this.createChannelControllers(),document.addEventListener("keydown",l=>{switch(l.key.toLowerCase()){case j7.synthesizerUIShow:l.preventDefault(),this.toggleVisibility();break;case j7.settingsShow:this.isShown=!0,this.toggleVisibility();break;case j7.blackMidiMode:l.preventDefault(),this.synth.highPerformanceMode=!this.synth.highPerformanceMode;break;case j7.midiPanic:l.preventDefault(),this.synth.stopAll(!0);break}}),this.locale.onLocaleChanged.push(()=>{this.voiceMeter.update(this.voiceMeter.currentValue,!0),this.volumeController.update(this.volumeController.currentValue,!0),this.panController.update(this.panController.currentValue,!0),this.panController.update(this.panController.currentValue,!0),this.transposeController.update(this.transposeController.currentValue,!0);for(let l of this.controllers)l.voiceMeter.update(l.voiceMeter.currentValue,!0),l.pitchWheel.update(l.pitchWheel.currentValue,!0),l.pan.update(l.pan.currentValue,!0),l.volume.update(l.volume.currentValue,!0),l.expression.update(l.expression.currentValue,!0),l.mod.update(l.mod.currentValue,!0),l.chorus.update(l.chorus.currentValue,!0),l.reverb.update(l.reverb.currentValue,!0),l.transpose.update(l.transpose.currentValue,!0)})}toggleVisibility(){this.animationId!==-1&&clearTimeout(this.animationId);let r=document.getElementsByClassName("synthui_controller")[0];this.isShown=!this.isShown,this.isShown?(r.style.display="block",document.getElementsByClassName("top_part")[0].classList.add("synthui_shown"),this.showControllers(),setTimeout(()=>{r.classList.add("synthui_controller_show")},75)):(document.getElementsByClassName("top_part")[0].classList.remove("synthui_shown"),this.hideControllers(),r.classList.remove("synthui_controller_show"),this.animationId=setTimeout(()=>{r.style.display="none"},200))}updateVoicesAmount(){this.voiceMeter.update(this.synth.voicesAmount),this.controllers.forEach((r,l)=>{let g=this.synth.channelProperties[l].voicesAmount;r.voiceMeter.update(g),g<1&&this.synth.voicesAmount>0?r.controller.classList.add("no_voices"):r.controller.classList.remove("no_voices")})}getInstrumentList(){this.synth.eventHandler.addEvent("presetlistchange","synthui-preset-list-change",r=>{let l=r;this.instrumentList=l.filter(g=>g.bank!==128).sort((g,d)=>g.program===d.program?g.bank-d.bank:g.program-d.program).map(g=>({name:g.presetName,bank:g.bank,program:g.program})),this.percussionList=l.filter(g=>g.bank===128).sort((g,d)=>g.program-d.program).map(g=>({name:g.presetName,bank:g.bank,program:g.program})),this.percussionList.length===0?this.percussionList=this.instrumentList:this.instrumentList.length===0&&(this.instrumentList=this.percussionList),this.controllers.forEach((g,d)=>{let b=this.synth.channelProperties[d].isDrum?this.percussionList:this.instrumentList;g.preset.reload(b),g.preset.set(`${b[0].bank}:${b[0].program}`)})})}};Lr.prototype.hideControllers=Gy;Lr.prototype.showControllers=Ny;Lr.prototype.toggleDarkMode=Uy;Lr.prototype.createChannelController=Py;Lr.prototype.createChannelControllers=Hy;Lr.prototype.createMainSynthController=qy;Lr.prototype.setEventListeners=Yy;var wC=null,vm=class{constructor(){}async createMIDIDeviceHandler(){if(this.selectedInput=wC,this.selectedOutput=wC,navigator.requestMIDIAccess)try{let r=await navigator.requestMIDIAccess({sysex:!0,software:!0});return this.inputs=r.inputs,this.outputs=r.outputs,J5("%cMIDI handler created!",S1.recognized),!0}catch(r){return b4("Could not get MIDI Devices:",r),this.inputs=[],this.outputs=[],!1}else return b4("Web MIDI Api not supported!",S1.unrecognized),this.inputs=[],this.outputs=[],!1}connectMIDIOutputToSeq(r,l){this.selectedOutput=r,l.connectMidiOutput(r),J5(`%cPlaying MIDI to %c${r.name}`,S1.info,S1.recognized)}disconnectSeqFromMIDI(r){this.selectedOutput=wC,r.connectMidiOutput(void 0),J5("%cDisconnected from MIDI out.",S1.info)}connectDeviceToSynth(r,l){this.selectedInput=r,r.onmidimessage=g=>{l.sendMessage(g.data)},J5(`%cListening for messages on %c${r.name}`,S1.info,S1.recognized)}disconnectDeviceFromSynth(r){this.selectedInput=wC,r.onmidimessage=void 0,J5(`%cDisconnected from %c${r.name}`,S1.info,S1.recognized)}disconnectAllDevicesFromSynth(){this.selectedInput=wC;for(let r of this.inputs)r[1].onmidimessage=void 0}};var Sm=class{constructor(r){window.addEventListener("message",l=>{if(typeof l.data!="string")return;let g=l.data.split(",");if(g[0]!=="midi")return;g.shift();let d=g.map(b=>parseInt(b,16));r.sendMessage(d)}),J5("%cWeb MIDI Link handler created!",S1.recognized)}};var Ro="midi range";function Jy(A,r,l){let g=0,d=this.htmlControls.keyboard,b=()=>{let I0=document.createElement("option");I0.value=g.toString(),this.locale.bindObjectProperty(I0,"textContent","locale.settings.keyboardSettings.selectedChannel.channelOption",[g+1]),I0.style.background=r.channelColors[g%r.channelColors.length],I0.style.color="rgb(0, 0, 0)",d.channelSelector.appendChild(I0),g++};for(let I0=0;I0{A.selectChannel(parseInt(d.channelSelector.value))},d.sizeSelector.onchange=()=>{if(this.musicMode.visible){this.musicMode.setVisibility(!1,document.getElementById("keyboard_canvas_wrapper")),setTimeout(()=>{d.sizeSelector.value===Ro?(this.autoKeyRange=!0,this?.sequi?.seq&&(A.keyRange=this.sequi.seq.midiData.keyRange,l.keyRange=this.sequi.seq.midiData.keyRange)):(this.autoKeyRange=!1,A.keyRange=this.keyboardSizes[d.sizeSelector.value],l.keyRange=this.keyboardSizes[d.sizeSelector.value]),this._saveSettings()},600);return}d.sizeSelector.value===Ro?(this.autoKeyRange=!0,this?.sequi?.seq&&(A.keyRange=this.sequi.seq.midiData.keyRange,l.keyRange=this.sequi.seq.midiData.keyRange)):(this.autoKeyRange=!1,A.keyRange=this.keyboardSizes[d.sizeSelector.value],l.keyRange=this.keyboardSizes[d.sizeSelector.value]),this._saveSettings()},this.addSequencer=I0=>{I0.addOnSongChangeEvent(b0=>{this.autoKeyRange&&(A.keyRange=b0.keyRange,l.keyRange=b0.keyRange),b0.RMIDInfo?.IPIC!==void 0&&this.musicMode.visible===!1&&this.toggleMusicPlayerMode().then()},"settings-keyboard-handler-song-change")},r.synth.eventHandler.addEvent("newchannel","settings-new-channel",()=>{b()}),r.synth.eventHandler.addEvent("programchange","settings-keyboard-program-change",I0=>{I0.userCalled&&(A.selectChannel(I0.channel),d.channelSelector.value=I0.channel)}),r.synth.eventHandler.addEvent("mutechannel","settings-keuboard-mute-channel",I0=>{if(I0.isMuted&&I0.channel===A.channel){let b0=0;for(;r.synth.channelProperties[b0].isMuted;)b0++;b0{if(this.musicMode.visible){this.musicMode.setVisibility(!1,document.getElementById("keyboard_canvas_wrapper")),setTimeout(()=>{A.toggleMode(),this._saveSettings()},600);return}A.toggleMode(),this._saveSettings()}}var Ky=` +`}function gh(A,r){let l=document.createElement("div");return l.classList.add("control_buttons"),l.title=A,l.innerHTML=r,l}var j7={synthesizerUIShow:"s",settingsShow:"r",blackMidiMode:"b",midiPanic:"backspace",playPause:" ",toggleLoop:"l",toggleLyrics:"t",seekBackwards:"arrowleft",seekForwards:"arrowright",previousSong:"[",nextSong:"]",cinematicMode:"c",videoMode:"v"};function _y(){navigator.mediaSession&&(navigator.mediaSession.metadata=new MediaMetadata({title:this.currentSongTitle,artist:"SpessaSynth"}),navigator.mediaSession.setActionHandler("play",()=>{this.seqPlay()}),navigator.mediaSession.setActionHandler("pause",()=>{this.seqPause()}),navigator.mediaSession.setActionHandler("stop",()=>{this.seq.currentTime=0,this.seqPause()}),navigator.mediaSession.setActionHandler("seekbackward",A=>{this.seq.currentTime-=A.seekOffset||10}),navigator.mediaSession.setActionHandler("seekforward",A=>{this.seq.currentTime+=A.seekOffset||10}),navigator.mediaSession.setActionHandler("seekto",A=>{this.seq.currentTime=A.seekTime}),navigator.mediaSession.setActionHandler("previoustrack",()=>{this.switchToPreviousSong()}),navigator.mediaSession.setActionHandler("nexttrack",()=>{this.switchToNextSong()}),navigator.mediaSession.playbackState="playing")}function Ry(A=!0){if(this.seq?.hasDummyData===!0)this.currentSongTitle=this.locale.getLocaleString("locale.synthInit.genericLoading");else{let r=this.infoDecoder.decode(this.seq.midiData.rawMidiName.buffer).replace(/\0$/,"");this.currentSongTitle=yB(r)}if(this.seq.midiData){let r=this.seq.midiData.lyrics;this.currentLyrics=new Uint8Array(r.reduce((g,d)=>g+d.length,0));let l=0;for(let g of r)this.currentLyrics.set(g,l),l+=g.length;this.currentLyricsString=this.decodeTextFix(this.currentLyrics.buffer)||this.locale.getLocaleString("locale.sequencerController.lyrics.noLyrics"),this.setLyricsText(""),A&&(this.rawOtherTextEvents=[])}if(document.getElementById("title").innerText=this.currentSongTitle,document.title=this.currentSongTitle+" - SpessaSynth",this.musicModeUI.setTitle(this.currentSongTitle),!!navigator.mediaSession)try{navigator.mediaSession.setPositionState({duration:this.seq.duration,playbackRate:this.seq.playbackRate,position:this.seq.currentTime})}catch{}}var UD=parseFloat(getComputedStyle(document.body).fontSize);function xy(){this.lyricsElement={};let A=document.createElement("div");A.classList.add("lyrics");let r=document.createElement("div");r.classList.add("lyrics_title_wrapper"),A.append(r),this.lyricsElement.titleWrapper=r;let l=document.createElement("h2");this.locale.bindObjectProperty(l,"textContent","locale.sequencerController.lyrics.title"),l.classList.add("lyrics_title"),r.appendChild(l),this.lyricsElement.title=l;let g=document.createElement("select");QC.forEach(m1=>{let x=document.createElement("option");x.innerText=m1,x.value=m1,g.appendChild(x)}),g.value=this.encoding,g.onchange=()=>this.changeEncoding(g.value),g.classList.add("lyrics_selector"),this.encodingSelector=g,r.appendChild(g);let d=document.createElement("p");d.classList.add("lyrics_text"),A.appendChild(d);let b=document.createElement("span");b.classList.add("lyrics_text_highlight"),d.appendChild(b);let I0=document.createElement("span");I0.classList.add("lyrics_text_gray"),d.appendChild(I0);let b0=document.createElement("details"),m0=document.createElement("summary");this.locale.bindObjectProperty(m0,"textContent","locale.sequencerController.lyrics.otherText.title"),b0.appendChild(m0);let q0=document.createElement("div");q0.innerText="",b0.appendChild(q0),A.appendChild(b0),this.lyricsElement.text={highlight:b,gray:I0,main:d,other:q0},this.lyricsElement.mainDiv=A,this.lyricsElement.selector=g,this.controls.appendChild(A),this.requiresTextUpdate=!0}function Fy(A){let r=this.lyricsElement.text.highlight,l=this.lyricsElement.text.gray;l.innerText=this.currentLyricsString.replace(A,""),r.innerText=A,this.lyricsElement.text.main.scrollTo(0,r.offsetHeight-UD*5)}function Ly(){let A="";for(let r of this.rawOtherTextEvents)A+=`
${Object.keys(J3).find(l=>J3[l]===r.type).replace(/([a-z])([A-Z])/g,"$1 $2")}:
${this.decodeTextFix(r.data.buffer)}

`;this.lyricsElement.text.other.innerHTML=A}var Fr=32,My="#ccc",Ty="#555",OD="#333",PD="#ddd",HD="Shift_JIS",_s=class{constructor(r,l,g){this.iconColor=My,this.iconDisabledColor=Ty,this.controls=r,this.encoding=HD,this.decoder=new TextDecoder(this.encoding),this.infoDecoder=new TextDecoder(this.encoding),this.hasInfoDecoding=!1,this.text="",this.requiresTextUpdate=!1,this.rawLyrics=[],this.rawOtherTextEvents=[],this.mode="dark",this.locale=l,this.currentSongTitle="",this.currentLyrics=new Uint8Array(0),this.currentLyricsString="",this.musicModeUI=g}toggleDarkMode(){if(this.mode==="dark"?(this.mode="light",this.iconColor=OD,this.iconDisabledColor=PD):(this.mode="dark",this.iconColor=My,this.iconDisabledColor=Ty),!this.seq){this.requiresThemeUpdate=!0;return}this.progressBar.classList.toggle("note_progress_light"),this.progressBarBackground.classList.toggle("note_progress_background_light"),this.lyricsElement.mainDiv.classList.toggle("lyrics_light"),this.lyricsElement.titleWrapper.classList.toggle("lyrics_light"),this.lyricsElement.selector.classList.toggle("lyrics_light")}seqPlay(r=!0){r&&this.seq.play(),this.playPause.innerHTML=B$(Fr),this.createNavigatorHandler(),this.updateTitleAndMediaStatus(),navigator.mediaSession&&(navigator.mediaSession.playbackState="playing")}seqPause(r=!0){r&&this.seq.pause(),this.playPause.innerHTML=Cy(Fr),this.createNavigatorHandler(),this.updateTitleAndMediaStatus(),navigator.mediaSession&&(navigator.mediaSession.playbackState="paused")}switchToNextSong(){this.seq.nextSong(),this.createNavigatorHandler(),this.updateTitleAndMediaStatus()}switchToPreviousSong(){this.seq.previousSong(),this.createNavigatorHandler(),this.updateTitleAndMediaStatus()}decodeTextFix(r,l=!1){let g=0;for(;;)try{return this.decoder.decode(r)}catch{g++,this.changeEncoding(QC[g]),this.encodingSelector.value=QC[g]}}connectSequencer(r){this.seq=r,this.createControls(),this.setSliderInterval(),this.createNavigatorHandler(),this.updateTitleAndMediaStatus(),this.seq.onTextEvent=(l,g)=>{let d=this.decodeTextFix(l.buffer);switch(g){default:return;case J3.text:case J3.copyright:case J3.cuePoint:case J3.trackName:case J3.instrumentName:case J3.marker:this.rawOtherTextEvents.push({type:g,data:l}),this.requiresTextUpdate=!0;return;case J3.lyric:this.text+=d,this.rawLyrics.push(...l),this.setLyricsText(this.text);break}},this.seq.addOnTimeChangeEvent(()=>{this.text="",this.rawLyrics=[],this.seqPlay(!1)},"sequi-time-change"),this.seq.addOnSongChangeEvent(l=>{if(this.createNavigatorHandler(),this.updateTitleAndMediaStatus(),this.seqPlay(!1),this.seq.songsAmount>1&&(this.seq.loop=!1,this.loopButton.firstElementChild.setAttribute("fill",this.iconDisabledColor)),this.hasInfoDecoding=this.seq.midiData.RMIDInfo?.[F7.encoding]!==void 0,l.isEmbedded){let g=(b0,m0,q0,m1="")=>this.seq.midiData.RMIDInfo?.[b0]===void 0?m0:m1+q0.decode(this.seq.midiData.RMIDInfo?.[b0]).replace(/\0$/,""),d=new TextDecoder,b=g(F7.midiEncoding,this.encoding,d),I0=g(F7.encoding,"utf-8",d);this.infoDecoder=new TextDecoder(I0),this.changeEncoding(b)}},"sequi-song-change"),this.requiresThemeUpdate&&this.mode==="light"&&(this.mode="dark",this.toggleDarkMode())}changeEncoding(r){this.encoding=r,this.decoder=new TextDecoder(r),this.hasInfoDecoding||(this.infoDecoder=new TextDecoder(r)),this.updateOtherTextEvents(),this.text=this.decodeTextFix(new Uint8Array(this.rawLyrics).buffer),this.lyricsElement.selector.value=r,this.updateTitleAndMediaStatus(!1),this.setLyricsText(this.text)}createControls(){this.progressTime=document.createElement("p"),this.progressTime.id="note_time",this.progressTime.onclick=x=>{x.preventDefault();let j0=r.getBoundingClientRect(),K0=x.clientX-j0.left,F1=j0.width;this.seq.currentTime=K0/F1*this.seq.duration,g.innerHTML=B$(Fr)},this.createLyrics();let r=document.createElement("div");r.id="note_progress_background",this.progressBarBackground=r,this.progressBar=document.createElement("div"),this.progressBar.id="note_progress",this.progressBar.min="0",this.progressBar.max=this.seq.duration.toString();let l=document.createElement("div"),g=gh("Play/Pause",B$(Fr));this.playPause=g,this.locale.bindObjectProperty(g,"title","locale.sequencerController.playPause");let d=()=>{this.seq.paused?this.seqPlay():this.seqPause()};g.onclick=d;let b=gh("Previous song",Qy(Fr));this.locale.bindObjectProperty(b,"title","locale.sequencerController.previousSong"),b.onclick=()=>this.switchToPreviousSong();let I0=gh("Next song",py(Fr));this.locale.bindObjectProperty(I0,"title","locale.sequencerController.nextSong"),I0.onclick=()=>this.switchToNextSong();let b0=gh("Loop this",my(Fr));this.locale.bindObjectProperty(b0,"title","locale.sequencerController.loopThis");let m0=()=>{this.seq.loop?this.seq.loop=!1:(this.seq.loop=!0,this.seq.currentTime>=this.seq.duration&&(this.seq.currentTime=0)),b0.firstElementChild.setAttribute("fill",this.seq.loop?this.iconColor:this.iconDisabledColor)};b0.onclick=m0,this.loopButton=b0;let q0=gh("Show lyrics",By(Fr));this.locale.bindObjectProperty(q0,"title","locale.sequencerController.lyrics.show"),q0.firstElementChild.setAttribute("fill",this.iconDisabledColor);let m1=()=>{this.lyricsElement.mainDiv.classList.toggle("lyrics_show"),q0.firstElementChild.setAttribute("fill",this.lyricsElement.mainDiv.classList.contains("lyrics_show")?this.iconColor:this.iconDisabledColor)};q0.onclick=m1,document.addEventListener("keydown",x=>{switch(x.key.toLowerCase()){case j7.playPause:x.preventDefault(),d();break;case j7.toggleLoop:x.preventDefault(),m0();break;case j7.toggleLyrics:x.preventDefault(),m1();break;default:break}}),l.appendChild(b),l.appendChild(b0),l.appendChild(g),l.appendChild(q0),l.appendChild(I0),this.controls.appendChild(r),r.appendChild(this.progressBar),this.controls.appendChild(this.progressTime),this.controls.appendChild(l),document.addEventListener("keydown",x=>{switch(x.key.toLowerCase()){case j7.seekBackwards:x.preventDefault(),this.seq.currentTime-=5,g.innerHTML=B$(Fr);break;case j7.seekForwards:x.preventDefault(),this.seq.currentTime+=5,g.innerHTML=B$(Fr);break;case j7.previousSong:this.switchToPreviousSong();break;case j7.nextSong:this.switchToNextSong();break;default:if(!isNaN(parseFloat(x.key))){x.preventDefault();let j0=parseInt(x.key);0<=j0&&j0<=9&&(this.seq.currentTime=this.seq.duration*(j0/10),g.innerHTML=B$(Fr))}break}})}_updateInterval(){this.progressBar.style.width=`${this.seq.currentTime/this.seq.duration*100}%`;let r=f$(this.seq.currentTime),l=f$(this.seq.duration);this.progressTime.innerText=`${r.time} / ${l.time}`,this.requiresTextUpdate&&(this.updateOtherTextEvents(),this.requiresTextUpdate=!1)}setSliderInterval(){setInterval(this._updateInterval.bind(this),100)}};_s.prototype.createNavigatorHandler=_y;_s.prototype.updateTitleAndMediaStatus=Ry;_s.prototype.createLyrics=xy;_s.prototype.setLyricsText=Fy;_s.prototype.updateOtherTextEvents=Ly;function Gy(){this.controllers.forEach(A=>{A.voiceMeter.hide(),A.pitchWheel.hide(),A.pan.hide(),A.expression.hide(),A.volume.hide(),A.mod.hide(),A.chorus.hide(),A.preset.hide()})}function Ny(){this.controllers.forEach(A=>{A.voiceMeter.show(),A.pitchWheel.show(),A.pan.show(),A.expression.show(),A.volume.show(),A.mod.show(),A.chorus.show(),A.preset.show()})}function Uy(){this.mainControllerDiv.classList.toggle("synthui_controller_light"),this.mainButtons.forEach(A=>{A.classList.toggle("synthui_button"),A.classList.toggle("synthui_button_light")}),this.mainMeters.forEach(A=>{A.toggleMode(!0)}),this.controllers.forEach(A=>{A.voiceMeter.toggleMode(),A.pitchWheel.toggleMode(),A.pan.toggleMode(),A.expression.toggleMode(),A.volume.toggleMode(),A.mod.toggleMode(),A.chorus.toggleMode(),A.preset.toggleMode(),A.presetReset.classList.toggle("voice_reset_light"),A.drumsToggle.classList.toggle("mute_button_light"),A.muteButton.classList.toggle("mute_button_light")})}var $r=class{constructor(r="none",l,g,d,b=0,I0=100,b0=!1,m0=void 0,q0=void 0,m1=void 0){if(this.meterText="",g.bindObjectProperty(this,"meterText",l+".title"),this.min=b,this.max=I0,this.currentValue=-1,this.isShown=!0,this.isVisualValueSet=!0,this.isLocked=!1,this.lockCallback=q0,this.unlockCallback=m1,this.div=document.createElement("div"),this.div.classList.add("voice_meter"),this.div.classList.add("controller_element"),r!=="none"&&r!==""&&(this.div.style.borderColor=r),g.bindObjectProperty(this.div,"title",l+".description",d),this.bar=document.createElement("div"),this.bar.classList.add("voice_meter_bar"),this.bar.style.background=r,this.div.appendChild(this.bar),this.text=document.createElement("p"),this.text.classList.add("voice_meter_text"),this.div.appendChild(this.text),this.isActive=!1,b0){if(m0===void 0)throw new Error("No editable function given!");this.div.onmousedown=x=>{x.preventDefault(),x.button===0?this.isActive=!0:this.lockMeter()},this.div.onmousemove=x=>{if(!this.isActive)return;let j0=x.currentTarget.getBoundingClientRect(),K0=j0.left,F1=j0.width,B2=x.clientX-K0,b1=Math.max(0,Math.min(1,B2/F1));m0(b1*(I0-b)+b)},this.div.onmouseup=()=>this.isActive=!1,this.div.onmouseleave=x=>{this.div.onmousemove(x),this.isActive=!1},this.text.oncontextmenu=x=>{x.preventDefault()},this.div.onclick=x=>{x.preventDefault(),this.isActive=!0,this.div.onmousemove(x),this.isActive=!1},this.div.classList.add("editable")}}lockMeter(){this.lockCallback!==void 0&&(this.isLocked?(this.text.classList.remove("locked_meter"),this.unlockCallback()):(this.text.classList.add("locked_meter"),this.lockCallback()),this.isLocked=!this.isLocked)}toggleMode(r=!1){r&&(this.bar.classList.toggle("voice_meter_light_color"),this.div.classList.toggle("voice_meter_light_color")),this.text.classList.toggle("voice_meter_text_light")}show(){if(this.isShown=!0,!this.isVisualValueSet){let r=Math.max(0,Math.min((this.currentValue-this.min)/(this.max-this.min),1));this.bar.style.width=`${r*100}%`,this.text.textContent=this.meterText+(Math.round(this.currentValue*100)/100).toString(),this.isVisualValueSet=!0}}hide(){this.isShown=!1}update(r,l=!1){if(!(r===this.currentValue&&l===!1))if(this.currentValue=r,this.isShown){let g=Math.max(0,Math.min((r-this.min)/(this.max-this.min),1));this.bar.style.width=`${g*100}%`,this.text.textContent=this.meterText+(Math.round(r*100)/100).toString(),this.isVisualValueSet=!0}else this.isVisualValueSet=!1}};var Oy=["Acoustic Grand Piano","Bright Acoustic Piano","Electric Grand Piano","Honky-tonk Piano","Electric Piano 1","Electric Piano 2","Harpsichord","Clavi","Celesta","Glockenspiel","Music Box","Vibraphone","Marimba","Xylophone","Tubular Bells","Dulcimer","Drawbar Organ","Percussive Organ","Rock Organ","Church Organ","Reed Organ","Accordion","Harmonica","Tango Accordion","Acoustic Guitar (nylon)","Acoustic Guitar (steel)","Electric Guitar (jazz)","Electric Guitar (clean)","Electric Guitar (muted)","Overdriven Guitar","Distortion Guitar","Guitar Harmonics","Acoustic Bass","Electric Bass (finger)","Electric Bass (pick)","Fretless Bass","Slap Bass 1","Slap Bass 2","Synth Bass 1","Synth Bass 2","Violin","Viola","Cello","Contrabass","Tremolo Strings","Pizzicato Strings","Orchestral Harp","Timpani","String Ensemble 1","String Ensemble 2","Synth Strings 1","Synth Strings 2","Choir Aahs","VoiceGroup Oohs","Synth Choir","Orchestra Hit","Trumpet","Trombone","Tuba","Muted Trumpet","French Horn","Brass Section","Synth Brass 1","Synth Brass 2","Soprano Sax","Alto Sax","Tenor Sax","Baritone Sax","Oboe","English Horn","Bassoon","Clarinet","Piccolo","Flute","Recorder","Pan Flute","Blown Bottle","Shakuhachi","Whistle","Ocarina","Lead 1 (square)","Lead 2 (sawtooth)","Lead 3 (calliope)","Lead 4 (chiff)","Lead 5 (charang)","Lead 6 (voice)","Lead 7 (fifths)","Lead 8 (bass + lead)","Pad 1 (new age)","Pad 2 (warm)","Pad 3 (polysynth)","Pad 4 (choir)","Pad 5 (bowed)","Pad 6 (metallic)","Pad 7 (halo)","Pad 8 (sweep)","FX 1 (rain)","FX 2 (soundtrack)","FX 3 (crystal)","FX 4 (atmosphere)","FX 5 (brightness)","FX 6 (goblins)","FX 7 (echoes)","FX 8 (sci-fi)","Sitar","Banjo","Shamisen","Koto","Kalimba","Bagpipe","Fiddle","Shanai","Tinkle Bell","Agogo","Steel Drums","Woodblock","Taiko Drum","Melodic Tom","Synth Drum","Reverse Cymbal","Guitar Fret Noise","Breath Noise","Seashore","Bird Tweet","Telephone Ring","Helicopter","Applause","Gunshot"];var km=class{constructor(r,l,g,d,b=void 0){this.isShown=!0,this.isReloaded=!0,this.elements=r,this.elements.length>0?this.value=`${this.elements[0].bank}:${this.elements[0].program}`:this.value="",this.mainDiv=document.createElement("select"),this.mainDiv.classList.add("voice_selector"),this.mainDiv.classList.add("controller_element"),l.bindObjectProperty(this.mainDiv,"title",g,d),this.reload(),this.mainDiv.onchange=()=>{b(this.mainDiv.value),this.mainDiv.blur()}}toggleMode(){this.mainDiv.classList.toggle("voice_selector_light")}reload(r=this.elements){if(this.elements=r,!this.isShown){this.isReloaded=!1;return}this.mainDiv.innerHTML="";let l=-20,g=!1,d="";for(let b of r){let I0=b.program;I0!==l&&(l=I0,r.filter(b0=>b0.program===l).length>1?(g=!0,d+=``):(g=!1,d+="")),g||b.bank!==0&&b.bank!==128?d+=``:d+=``}this.mainDiv.innerHTML=d,this.isReloaded=!0}set(r){this.value=r,this.isShown&&(this.isReloaded||this.reload(),this.mainDiv.value=r)}show(){this.isShown=!0,this.isReloaded||this.reload(),this.mainDiv.value=this.value}hide(){this.isShown=!1}};var yn=32;function Py(A){this.soloChannels=new Set;let r=document.createElement("div");r.classList.add("channel_controller");let l=new $r(this.channelColors[A%this.channelColors.length],$8+"channelController.voiceMeter",this.locale,[A+1],0,100);l.bar.classList.add("voice_meter_bar_smooth"),r.appendChild(l.div);let g=new $r(this.channelColors[A%this.channelColors.length],$8+"channelController.pitchBendMeter",this.locale,[A+1],-8192,8192,!0,v2=>{let J2=g.isLocked;J2&&this.synth.lockController(A,m$+x7.pitchWheel,!1),v2=Math.round(v2)+8192;let n3=v2>>7,U5=v2&127;this.synth.pitchWheel(A,n3,U5),J2&&this.synth.lockController(A,m$+x7.pitchWheel,!0)},()=>this.synth.lockController(A,m$+x7.pitchWheel,!0),()=>this.synth.lockController(A,m$+x7.pitchWheel,!1));g.update(0),r.appendChild(g.div);let d=(v2,J2,n3)=>{n3.isLocked?(this.synth.lockController(A,v2,!1),this.synth.controllerChange(A,v2,J2),this.synth.lockController(A,v2,!0)):this.synth.controllerChange(A,v2,J2)},b=(v2,J2,n3)=>{let U5=new $r(this.channelColors[A%this.channelColors.length],$8+J2,this.locale,[A+1],0,127,!0,a0=>d(v2,Math.round(a0),U5),()=>this.synth.lockController(A,v2,!0),()=>this.synth.lockController(A,v2,!1));return U5.update(n3),U5},I0=b(A6.pan,"channelController.panMeter",64);r.appendChild(I0.div);let b0=b(A6.expressionController,"channelController.expressionMeter",127);r.appendChild(b0.div);let m0=b(A6.mainVolume,"channelController.volumeMeter",100);r.appendChild(m0.div);let q0=b(A6.modulationWheel,"channelController.modulationWheelMeter",0);r.appendChild(q0.div);let m1=b(A6.effects3Depth,"channelController.chorusMeter",0);r.appendChild(m1.div);let x=b(A6.effects1Depth,"channelController.reverbMeter",40);r.appendChild(x.div);let j0=new $r(this.channelColors[A%this.channelColors.length],$8+"channelController.transposeMeter",this.locale,[A+1],-36,36,!0,v2=>{v2=Math.round(v2),this.synth.transposeChannel(A,v2,!0),j0.update(v2)});j0.update(0),r.appendChild(j0.div);let K0=document.createElement("div"),F1=new km([],this.locale,$8+"channelController.presetSelector.description",[A+1],async v2=>{let J2=v2.split(":");this.synth.lockController(A,Hi,!1),this.synth.controllerChange(A,A6.bankSelect,parseInt(J2[0]),!0),this.synth.programChange(A,parseInt(J2[1]),!0),F1.mainDiv.classList.add("locked_selector"),this.synth.lockController(A,Hi,!0)});r.appendChild(F1.mainDiv),K0.innerHTML=Dy(yn),this.locale.bindObjectProperty(K0,"title",$8+"channelController.presetReset.description",[A+1]),K0.classList.add("controller_element"),K0.classList.add("voice_reset"),K0.onclick=()=>{this.synth.lockController(A,Hi,!1),F1.mainDiv.classList.remove("locked_selector")},r.appendChild(K0);let B2=document.createElement("div");B2.innerHTML=Qm(yn),this.locale.bindObjectProperty(B2,"title",$8+"channelController.soloButton.description",[A+1]),B2.classList.add("controller_element"),B2.classList.add("mute_button"),B2.onclick=()=>{if(this.soloChannels.has(A)?this.soloChannels.delete(A):this.soloChannels.add(A),this.soloChannels.size===0||this.soloChannels.size>=this.synth.channelsAmount){for(let v2=0;v2=this.synth.channelsAmount&&this.soloChannels.clear();return}for(let v2=0;v2{if(b1.hasAttribute("is_muted")){b1.removeAttribute("is_muted");let v2=this.soloChannels.size===0||this.soloChannels.has(A);this.synth.muteChannel(A,!v2),b1.innerHTML=TB(yn)}else this.synth.muteChannel(A,!0),b1.setAttribute("is_muted","true"),b1.innerHTML=wy(yn)},r.appendChild(b1);let _5=document.createElement("div");return _5.innerHTML=A===ki?ym(yn):wm(yn),this.locale.bindObjectProperty(_5,"title",$8+"channelController.drumToggleButton.description",[A+1]),_5.classList.add("controller_element"),_5.classList.add("mute_button"),_5.onclick=()=>{this.synth.setDrums(A,!this.synth.channelProperties[A].isDrum)},r.appendChild(_5),{controller:r,voiceMeter:l,pitchWheel:g,pan:I0,expression:b0,volume:m0,mod:q0,chorus:m1,reverb:x,preset:F1,presetReset:K0,drumsToggle:_5,soloButton:B2,muteButton:b1,transpose:j0}}function Hy(){let A=this.uiDiv.getElementsByClassName("synthui_controller")[0];this.controllers=[];for(let r=0;r{this.synth.setMainVolume(Math.round(m0)/100),this.volumeController.update(m0)}),this.volumeController.bar.classList.add("voice_meter_bar_smooth"),this.volumeController.div.classList.add("main_controller_element"),this.volumeController.update(100),this.panController=new $r("",$8+"mainPanMeter",this.locale,[],-1,1,!0,m0=>{this.synth.setMasterPan(m0),this.panController.update(m0)}),this.panController.bar.classList.add("voice_meter_bar_smooth"),this.panController.div.classList.add("main_controller_element"),this.panController.update(0),this.transposeController=new $r("",$8+"mainTransposeMeter",this.locale,[],-12,12,!0,m0=>{this.synth.transpose(Math.round(m0*2)/2),this.transposeController.update(Math.round(m0*2)/2)}),this.transposeController.bar.classList.add("voice_meter_bar_smooth"),this.transposeController.div.classList.add("main_controller_element"),this.transposeController.update(0);let r=document.createElement("button");this.locale.bindObjectProperty(r,"textContent",$8+"midiPanic.title"),this.locale.bindObjectProperty(r,"title",$8+"midiPanic.description"),r.classList.add("synthui_button"),r.classList.add("main_controller_element"),r.onclick=()=>this.synth.stopAll(!0);let l=document.createElement("button");this.locale.bindObjectProperty(l,"textContent",$8+"systemReset.title"),this.locale.bindObjectProperty(l,"title",$8+"systemReset.description"),l.classList.add("synthui_button"),l.classList.add("main_controller_element"),l.onclick=()=>this.synth.resetControllers();let g=document.createElement("button");this.locale.bindObjectProperty(g,"textContent",$8+"blackMidiMode.title"),this.locale.bindObjectProperty(g,"title",$8+"blackMidiMode.description"),g.classList.add("synthui_button"),g.classList.add("main_controller_element"),g.onclick=()=>{this.synth.highPerformanceMode=!this.synth.highPerformanceMode};let d=document.createElement("button");this.locale.bindObjectProperty(d,"textContent",$8+"disableCustomVibrato.title"),this.locale.bindObjectProperty(d,"title",$8+"disableCustomVibrato.description"),d.classList.add("synthui_button"),d.classList.add("main_controller_element"),d.onclick=()=>{this.synth.lockAndResetChannelVibrato(),d.parentNode.removeChild(d)};let b=document.createElement("a");b.href="https://github.com/spessasus/SpessaSynth/wiki/How-To-Use-App#synthesizer-controller",b.target="#",b.classList.add("main_controller_element"),b.classList.add("synthui_button"),this.locale.bindObjectProperty(b,"textContent",$8+"helpButton.title"),this.locale.bindObjectProperty(b,"title",$8+"helpButton.description");let I0=document.createElement("div");I0.classList.add("synthui_controller"),this.uiDiv.appendChild(I0);let b0=document.createElement("button");this.locale.bindObjectProperty(b0,"textContent",$8+"toggleButton.title"),this.locale.bindObjectProperty(b0,"title",$8+"toggleButton.description"),b0.classList.add("synthui_button"),b0.onclick=()=>{this.hideOnDocClick=!1,this.toggleVisibility()},A.appendChild(this.volumeController.div),A.appendChild(this.panController.div),A.appendChild(this.transposeController.div),A.appendChild(r),A.appendChild(l),A.appendChild(g),A.appendChild(d),A.appendChild(b),this.mainMeters=[this.volumeController,this.panController,this.transposeController,this.voiceMeter],this.mainButtons=[r,l,g,d,b0,b],this.uiDiv.appendChild(this.voiceMeter.div),this.uiDiv.appendChild(b0),I0.appendChild(A),this.mainControllerDiv=I0,this.mainControllerDiv.onclick=m0=>m0.stopPropagation(),document.addEventListener("click",()=>{if(!this.hideOnDocClick){this.hideOnDocClick=!0;return}I0.classList.remove("synthui_controller_show"),this.isShown=!1,this.hideControllers()})}function Yy(){let A=this.uiDiv.getElementsByClassName("synthui_controller")[0];this.synth.eventHandler.addEvent("programchange","synthui-program-change",r=>{this.controllers[r.channel].preset.set(`${r.bank}:${r.program}`)}),this.synth.eventHandler.addEvent("allcontrollerreset","synthui-all-controller-reset",()=>{for(let r of this.controllers)r.pan.update(64),r.mod.update(0),r.chorus.update(0),r.pitchWheel.update(0),r.expression.update(127),r.volume.update(100),r.reverb.update(40)}),this.synth.eventHandler.addEvent("controllerchange","synthui-controller-change",r=>{let l=r.controllerNumber,g=r.channel,d=r.controllerValue;switch(l){default:break;case A6.expressionController:this.controllers[g].expression.update(d);break;case A6.mainVolume:this.controllers[g].volume.update(d);break;case A6.pan:this.controllers[g].pan.update(d);break;case A6.modulationWheel:this.controllers[g].mod.update(d);break;case A6.effects3Depth:this.controllers[g].chorus.update(d);break;case A6.effects1Depth:this.controllers[g].reverb.update(d)}}),this.synth.eventHandler.addEvent("pitchwheel","synthui-pitch-wheel",r=>{let l=r.MSB<<7|r.LSB;this.controllers[r.channel].pitchWheel.update(l-8192)}),this.synth.eventHandler.addEvent("drumchange","synthui-drum-change",r=>{this.controllers[r.channel].drumsToggle.innerHTML=r.isDrumChannel?ym(32):wm(32),this.controllers[r.channel].preset.reload(r.isDrumChannel?this.percussionList:this.instrumentList)}),this.synth.eventHandler.addEvent("newchannel","synthui-new-channel",()=>{let r=this.createChannelController(this.controllers.length);this.controllers.push(r),A.appendChild(r.controller),this.hideControllers()})}var $8="locale.synthesizerController.",Lr=class{constructor(r,l,g){this.channelColors=r;let d=l;this.uiDiv=document.createElement("div"),this.uiDiv.classList.add("wrapper"),d.appendChild(this.uiDiv),this.uiDiv.style.visibility="visible",this.isShown=!1,this.animationId=-1,this.locale=g,this.hideOnDocClick=!0}connectSynth(r){this.synth=r,this.getInstrumentList(),this.createMainSynthController(),this.createChannelControllers(),document.addEventListener("keydown",l=>{switch(l.key.toLowerCase()){case j7.synthesizerUIShow:l.preventDefault(),this.toggleVisibility();break;case j7.settingsShow:this.isShown=!0,this.toggleVisibility();break;case j7.blackMidiMode:l.preventDefault(),this.synth.highPerformanceMode=!this.synth.highPerformanceMode;break;case j7.midiPanic:l.preventDefault(),this.synth.stopAll(!0);break}}),this.locale.onLocaleChanged.push(()=>{this.voiceMeter.update(this.voiceMeter.currentValue,!0),this.volumeController.update(this.volumeController.currentValue,!0),this.panController.update(this.panController.currentValue,!0),this.panController.update(this.panController.currentValue,!0),this.transposeController.update(this.transposeController.currentValue,!0);for(let l of this.controllers)l.voiceMeter.update(l.voiceMeter.currentValue,!0),l.pitchWheel.update(l.pitchWheel.currentValue,!0),l.pan.update(l.pan.currentValue,!0),l.volume.update(l.volume.currentValue,!0),l.expression.update(l.expression.currentValue,!0),l.mod.update(l.mod.currentValue,!0),l.chorus.update(l.chorus.currentValue,!0),l.reverb.update(l.reverb.currentValue,!0),l.transpose.update(l.transpose.currentValue,!0)})}toggleVisibility(){this.animationId!==-1&&clearTimeout(this.animationId);let r=document.getElementsByClassName("synthui_controller")[0];this.isShown=!this.isShown,this.isShown?(r.style.display="block",document.getElementsByClassName("top_part")[0].classList.add("synthui_shown"),this.showControllers(),setTimeout(()=>{r.classList.add("synthui_controller_show")},75)):(document.getElementsByClassName("top_part")[0].classList.remove("synthui_shown"),this.hideControllers(),r.classList.remove("synthui_controller_show"),this.animationId=setTimeout(()=>{r.style.display="none"},200))}updateVoicesAmount(){this.voiceMeter.update(this.synth.voicesAmount),this.controllers.forEach((r,l)=>{let g=this.synth.channelProperties[l].voicesAmount;r.voiceMeter.update(g),g<1&&this.synth.voicesAmount>0?r.controller.classList.add("no_voices"):r.controller.classList.remove("no_voices")})}getInstrumentList(){this.synth.eventHandler.addEvent("presetlistchange","synthui-preset-list-change",r=>{let l=r;this.instrumentList=l.filter(g=>g.bank!==128).sort((g,d)=>g.program===d.program?g.bank-d.bank:g.program-d.program).map(g=>({name:g.presetName,bank:g.bank,program:g.program})),this.percussionList=l.filter(g=>g.bank===128).sort((g,d)=>g.program-d.program).map(g=>({name:g.presetName,bank:g.bank,program:g.program})),this.percussionList.length===0?this.percussionList=this.instrumentList:this.instrumentList.length===0&&(this.instrumentList=this.percussionList),this.controllers.forEach((g,d)=>{let b=this.synth.channelProperties[d].isDrum?this.percussionList:this.instrumentList;g.preset.reload(b),g.preset.set(`${b[0].bank}:${b[0].program}`)})})}};Lr.prototype.hideControllers=Gy;Lr.prototype.showControllers=Ny;Lr.prototype.toggleDarkMode=Uy;Lr.prototype.createChannelController=Py;Lr.prototype.createChannelControllers=Hy;Lr.prototype.createMainSynthController=qy;Lr.prototype.setEventListeners=Yy;var wC=null,vm=class{constructor(){}async createMIDIDeviceHandler(){if(this.selectedInput=wC,this.selectedOutput=wC,navigator.requestMIDIAccess)try{let r=await navigator.requestMIDIAccess({sysex:!0,software:!0});return this.inputs=r.inputs,this.outputs=r.outputs,Y5("%cMIDI handler created!",S1.recognized),!0}catch(r){return _4("Could not get MIDI Devices:",r),this.inputs=[],this.outputs=[],!1}else return _4("Web MIDI Api not supported!",S1.unrecognized),this.inputs=[],this.outputs=[],!1}connectMIDIOutputToSeq(r,l){this.selectedOutput=r,l.connectMidiOutput(r),Y5(`%cPlaying MIDI to %c${r.name}`,S1.info,S1.recognized)}disconnectSeqFromMIDI(r){this.selectedOutput=wC,r.connectMidiOutput(void 0),Y5("%cDisconnected from MIDI out.",S1.info)}connectDeviceToSynth(r,l){this.selectedInput=r,r.onmidimessage=g=>{l.sendMessage(g.data)},Y5(`%cListening for messages on %c${r.name}`,S1.info,S1.recognized)}disconnectDeviceFromSynth(r){this.selectedInput=wC,r.onmidimessage=void 0,Y5(`%cDisconnected from %c${r.name}`,S1.info,S1.recognized)}disconnectAllDevicesFromSynth(){this.selectedInput=wC;for(let r of this.inputs)r[1].onmidimessage=void 0}};var Sm=class{constructor(r){window.addEventListener("message",l=>{if(typeof l.data!="string")return;let g=l.data.split(",");if(g[0]!=="midi")return;g.shift();let d=g.map(b=>parseInt(b,16));r.sendMessage(d)}),Y5("%cWeb MIDI Link handler created!",S1.recognized)}};var Ro="midi range";function Jy(A,r,l){let g=0,d=this.htmlControls.keyboard,b=()=>{let I0=document.createElement("option");I0.value=g.toString(),this.locale.bindObjectProperty(I0,"textContent","locale.settings.keyboardSettings.selectedChannel.channelOption",[g+1]),I0.style.background=r.channelColors[g%r.channelColors.length],I0.style.color="rgb(0, 0, 0)",d.channelSelector.appendChild(I0),g++};for(let I0=0;I0{A.selectChannel(parseInt(d.channelSelector.value))},d.sizeSelector.onchange=()=>{if(this.musicMode.visible){this.musicMode.setVisibility(!1,document.getElementById("keyboard_canvas_wrapper")),setTimeout(()=>{d.sizeSelector.value===Ro?(this.autoKeyRange=!0,this?.sequi?.seq&&(A.keyRange=this.sequi.seq.midiData.keyRange,l.keyRange=this.sequi.seq.midiData.keyRange)):(this.autoKeyRange=!1,A.keyRange=this.keyboardSizes[d.sizeSelector.value],l.keyRange=this.keyboardSizes[d.sizeSelector.value]),this._saveSettings()},600);return}d.sizeSelector.value===Ro?(this.autoKeyRange=!0,this?.sequi?.seq&&(A.keyRange=this.sequi.seq.midiData.keyRange,l.keyRange=this.sequi.seq.midiData.keyRange)):(this.autoKeyRange=!1,A.keyRange=this.keyboardSizes[d.sizeSelector.value],l.keyRange=this.keyboardSizes[d.sizeSelector.value]),this._saveSettings()},this.addSequencer=I0=>{I0.addOnSongChangeEvent(b0=>{this.autoKeyRange&&(A.keyRange=b0.keyRange,l.keyRange=b0.keyRange),b0.RMIDInfo?.IPIC!==void 0&&this.musicMode.visible===!1&&this.toggleMusicPlayerMode().then()},"settings-keyboard-handler-song-change")},r.synth.eventHandler.addEvent("newchannel","settings-new-channel",()=>{b()}),r.synth.eventHandler.addEvent("programchange","settings-keyboard-program-change",I0=>{I0.userCalled&&(A.selectChannel(I0.channel),d.channelSelector.value=I0.channel)}),r.synth.eventHandler.addEvent("mutechannel","settings-keuboard-mute-channel",I0=>{if(I0.isMuted&&I0.channel===A.channel){let b0=0;for(;r.synth.channelProperties[b0].isMuted;)b0++;b0{if(this.musicMode.visible){this.musicMode.setVisibility(!1,document.getElementById("keyboard_canvas_wrapper")),setTimeout(()=>{A.toggleMode(),this._saveSettings()},600);return}A.toggleMode(),this._saveSettings()}}var Ky=`

@@ -195,15 +195,15 @@ var gm=(A=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(A,{get:(r,l)=>(
-`;function wn(A){return A.parentElement.nextElementSibling}function Vy(A){let r=A.getElementsByTagName("spessarange");for(let l of r)l.parentElement.insertBefore(NB(l,!0),l);for(;r.length>0;)r[0].parentNode.removeChild(r[0])}function NB(A,r=!0){let l=document.createElement("div");l.classList.add("settings_slider_wrapper");let g=A.getAttribute("min"),d=A.getAttribute("max"),b=A.getAttribute("value"),I0=A.getAttribute("units"),b0=A.getAttribute("input_id"),m0=document.createElement("input");m0.classList.add("settings_slider"),m0.type="range",m0.id=b0,m0.min=g,m0.max=d,m0.value=b;let Y0;r&&(Y0=document.createElement("span"),Y0.textContent=b+I0);let m1=document.createElement("div");m1.classList.add("settings_visual_wrapper");let F=document.createElement("div");F.classList.add("settings_slider_progress"),m1.appendChild(F);let j0=document.createElement("div");return j0.classList.add("settings_slider_thumb"),m1.appendChild(j0),m1.appendChild(m0),m0.addEventListener("input",()=>{let K0=parseInt(m1.style.getPropertyValue("--visual-width").replace("%","")),F1=Math.round((m0.value-m0.min)/(m0.max-m0.min)*100);Math.abs((K0-F1)/100)>.05?m1.classList.add("settings_slider_transition"):m1.classList.remove("settings_slider_transition"),m1.style.setProperty("--visual-width",`${F1}%`)}),m1.style.setProperty("--visual-width",`${(m0.value-m0.min)/(m0.max-m0.min)*100}%`),l.appendChild(m1),r&&l.appendChild(Y0),l}async function zy(){let A=await window.savedSettings;if(!A.interface)return;J5("Loading saved settings...",A);let r=this.htmlControls.renderer,l=this.renderer,g=A.renderer;l.noteFallingTimeMs=g.noteFallingTimeMs,r.noteTimeSlider.value=g.noteFallingTimeMs,r.noteTimeSlider.dispatchEvent(new Event("input")),wn(r.noteTimeSlider).innerText=`${g.noteFallingTimeMs}ms`,r.analyserThicknessSlider.value=g.waveformThickness,r.analyserThicknessSlider.dispatchEvent(new Event("input")),l.lineThickness=g.waveformThickness,wn(r.analyserThicknessSlider).innerText=`${g.waveformThickness}px`;let d=g.sampleSize;r.analyserFftSlider.value=Math.log2(d),r.analyserFftSlider.dispatchEvent(new Event("input")),l.normalAnalyserFft=d,l.drumAnalyserFft=Math.pow(2,Math.min(15,Math.log2(d)+2)),l.updateFftSize(),wn(r.analyserFftSlider).innerText=`${d}`,l.waveMultiplier=g.amplifier,r.waveMultiplierSlizer.value=g.amplifier,r.waveMultiplierSlizer.dispatchEvent(new Event("input")),wn(r.waveMultiplierSlizer).innerText=g.amplifier.toString();let b=this.htmlControls.renderer;l.renderAnalysers=g.renderWaveforms,b.analyserToggler.checked=g.renderWaveforms,l.renderNotes=g.renderNotes,b.noteToggler.checked=g.renderNotes,l.drawActiveNotes=g.drawActiveNotes,b.activeNoteToggler.checked=g.drawActiveNotes,l.showVisualPitch=g.showVisualPitch,b.visualPitchToggler.checked=g.showVisualPitch,l.stabilizeWaveforms=g.stabilizeWaveforms,b.stabilizeWaveformsToggler.checked=g.stabilizeWaveforms,l.keyRange=g.keyRange;let I0=this.htmlControls.keyboard,b0=this.midiKeyboard,m0=A.keyboard;b0.setKeyRange(m0.keyRange,!1),m0.autoRange?(I0.sizeSelector.value=Ro,this.autoKeyRange=!0):(this.autoKeyRange=!1,I0.sizeSelector.value=Object.keys(this.keyboardSizes).find(Y0=>this.keyboardSizes[Y0].min===m0.keyRange.min&&this.keyboardSizes[Y0].max===m0.keyRange.max)),m0.mode==="dark"&&(b0.toggleMode(!1),this.htmlControls.keyboard.modeSelector.checked=!0),this.locale.changeGlobalLocale(A.interface.language,!0),setTimeout(()=>{this.htmlControls.interface.languageSelector.value=A.interface.language},100),A.interface.mode==="light"?(this._toggleDarkMode(),this.htmlControls.interface.themeSelector.checked=!1):this.htmlControls.interface.themeSelector.checked=!0,this.htmlControls.interface.layoutSelector.value=A.interface.layout||"downwards",this._changeLayout(A.interface.layout||"downwards")}function Zy(){window.saveSettings&&window.saveSettings(this._serializeSettings())}function Wy(){return{renderer:{noteFallingTimeMs:this.renderer.noteFallingTimeMs,waveformThickness:this.renderer.lineThickness,sampleSize:this.renderer.normalAnalyserFft,amplifier:this.renderer.waveMultiplier,renderWaveforms:this.renderer.renderAnalysers,renderNotes:this.renderer.renderNotes,drawActiveNotes:this.renderer.drawActiveNotes,showVisualPitch:this.renderer.showVisualPitch,stabilizeWaveforms:this.renderer.stabilizeWaveforms,keyRange:this.renderer.keyRange},keyboard:{selectedChannel:this.midiKeyboard.channel,keyRange:this.midiKeyboard.keyRange,mode:this.midiKeyboard.mode,autoRange:this.htmlControls.keyboard.sizeSelector.value===Ro},midi:{input:this.midiDeviceHandler.selectedInput===null?null:this.midiDeviceHandler.selectedInput.name,output:this.midiDeviceHandler.selectedOutput===null?null:this.midiDeviceHandler.selectedOutput.name},interface:{mode:this.mode,language:this.htmlControls.interface.languageSelector.value,layout:this.htmlControls.interface.layoutSelector.value}}}function jy(){let A=this.htmlControls.interface.themeSelector;A.onclick=()=>{this._toggleDarkMode(),this._saveSettings()};let r=this.htmlControls.interface.languageSelector;for(let[g,d]of Object.entries(this.locales)){let b=document.createElement("option");b.value=g,b.textContent=d.localeName,r.appendChild(b)}r.onchange=()=>{this.locale.changeGlobalLocale(r.value),this._saveSettings()};let l=this.htmlControls.interface.layoutSelector;l.onchange=()=>{this._changeLayout(l.value),this._saveSettings(),l.blur()}}function Xy(A){let r=document.getElementById("keyboard_canvas_wrapper"),l=document.getElementById("note_canvas"),g=document.getElementById("keyboard");switch(A){case"downwards":r.classList.remove("upwards"),r.classList.remove("left_to_right"),r.classList.remove("right_to_left"),l.classList.remove("sideways"),g.classList.remove("sideways"),this.renderer.direction="down",this.renderer.sideways=!1;break;case"upwards":r.classList.add("upwards"),r.classList.remove("left_to_right"),r.classList.remove("right_to_left"),l.classList.remove("sideways"),g.classList.remove("sideways"),this.renderer.direction="up",this.renderer.sideways=!1;break;case"left":r.classList.remove("upwards"),r.classList.add("left_to_right"),r.classList.remove("right_to_left"),l.classList.add("sideways"),g.classList.add("sideways"),this.renderer.direction="up",this.renderer.sideways=!0;break;case"right":r.classList.remove("upwards"),r.classList.remove("left_to_right"),r.classList.add("right_to_left"),l.classList.add("sideways"),g.classList.add("sideways"),this.renderer.direction="down",this.renderer.sideways=!0}}var Dm={start:"#101010",end:"#212121"},bm={start:"#bbb",end:"#f0f0f0"},ew="#eee",tw="#333",_m={start:"#222",end:"#333"},Rm={start:"#ccc",end:"#fff"},kn=.2;function iw(){this.mode==="dark"?(this.mode="light",this.renderer.drawActiveNotes=!1):(this.renderer.drawActiveNotes=!0,this.mode="dark"),this.renderer.toggleDarkMode(),this.synthui.toggleDarkMode(),this.sequi.toggleDarkMode(),this.musicMode.toggleDarkMode(),document.getElementsByClassName("spessasynth_main")[0].classList.toggle("light_mode"),document.getElementsByClassName("top_part")[0].classList.toggle("top_part_light"),this.mainDiv.classList.toggle("settings_menu_light");let A=document.styleSheets[0].cssRules;for(let r of A)if(r.selectorText==="*"){this.mode==="dark"?(vn(tw,ew,kn,r,"--font-color"),vn(Rm.start,_m.start,kn,r,"--top-buttons-color-start"),vn(Rm.end,_m.end,kn,r,"--top-buttons-color-end"),vn(bm.start,Dm.start,kn,r,"--top-color-start"),vn(bm.end,Dm.end,kn,r,"--top-color-end")):(vn(ew,tw,kn,r,"--font-color"),vn(_m.start,Rm.start,kn,r,"--top-buttons-color-start"),vn(_m.end,Rm.end,kn,r,"--top-buttons-color-end"),vn(Dm.start,bm.start,kn,r,"--top-color-start"),vn(Dm.end,bm.end,kn,r,"--top-color-end"));break}document.body.style.background=this.mode==="dark"?"black":"white"}var hh={};function vn(A,r,l,g,d){hh[d]&&(clearInterval(hh[d]),hh[d]=void 0);function b(F){F.length===4&&(F=`#${F[1]}${F[1]}${F[2]}${F[2]}${F[3]}${F[3]}`);let j0=parseInt(F.slice(1),16);return{r:j0>>16&255,g:j0>>8&255,b:j0&255}}function I0(F,j0,K0){return F+(j0-F)*K0}let b0=b(A),m0=b(r),Y0=performance.now()/1e3;function m1(){let j0=performance.now()/1e3-Y0,K0=Math.min(j0/l,1),F1=Math.round(I0(b0.r,m0.r,K0)),B2=Math.round(I0(b0.g,m0.g,K0)),b1=Math.round(I0(b0.b,m0.b,K0));g.style.setProperty(d,`rgb(${F1}, ${B2}, ${b1})`),K0>=1&&(clearInterval(hh[d]),hh[d]=void 0)}hh[d]=setInterval(m1,1e3/60)}function rw(A){let r=this.htmlControls.renderer;r.noteTimeSlider.addEventListener("input",()=>{A.noteFallingTimeMs=r.noteTimeSlider.value,wn(r.noteTimeSlider).innerText=`${r.noteTimeSlider.value}ms`}),r.noteTimeSlider.onchange=()=>{this._saveSettings()},r.analyserThicknessSlider.addEventListener("input",()=>{A.lineThickness=parseInt(r.analyserThicknessSlider.value),wn(r.analyserThicknessSlider).innerText=`${r.analyserThicknessSlider.value}px`}),r.analyserThicknessSlider.onchange=()=>{this._saveSettings()},r.analyserFftSlider.addEventListener("input",()=>{let l=Math.pow(2,parseInt(r.analyserFftSlider.value));A.normalAnalyserFft=l,A.drumAnalyserFft=Math.pow(2,Math.min(15,parseInt(r.analyserFftSlider.value)+2)),A.updateFftSize(),wn(r.analyserFftSlider).innerText=`${l}`}),r.analyserFftSlider.onchange=()=>{this._saveSettings()},r.waveMultiplierSlizer.addEventListener("input",()=>{A.waveMultiplier=parseInt(r.waveMultiplierSlizer.value),wn(r.waveMultiplierSlizer).innerText=r.waveMultiplierSlizer.value}),r.waveMultiplierSlizer.onchange=()=>{this._saveSettings()},r.analyserToggler.onclick=()=>{A.renderAnalysers=!A.renderAnalysers,this._saveSettings()},r.noteToggler.onclick=()=>{A.renderNotes=!A.renderNotes,this._saveSettings()},r.activeNoteToggler.onclick=()=>{A.drawActiveNotes=!A.drawActiveNotes,this._saveSettings()},r.visualPitchToggler.onclick=()=>{A.showVisualPitch=!A.showVisualPitch,this._saveSettings()},r.stabilizeWaveformsToggler.onclick=()=>{A.stabilizeWaveforms=!A.stabilizeWaveforms,this._saveSettings()}}function xo(A,r,l){if(r.textContent&&(A.textContent=r.textContent),r.translatePathTitle){if(!l)throw new Error("Translate path title provided but no locale provided.");l.bindObjectProperty(A,"textContent",r.translatePathTitle+".title"),l.bindObjectProperty(A,"title",r.translatePathTitle+".description")}}function nw(A,r){switch(A.type){case"button":let l=document.createElement("button");return xo(l,A,r),p$(A,[l]),l;case"text":let g=document.createElement("p");return xo(g,A,r),p$(A,[g]),g;case"input":let d=document.createElement("div");d.classList.add("notification_input_wrapper");let b=document.createElement("input");xo(b,A,r),b.addEventListener("keydown",_5=>_5.stopPropagation());let I0=document.createElement("label");return xo(I0,A,r),p$(A,[b,I0]),d.append(I0),d.appendChild(b),d;case"file":let b0=document.createElement("label");b0.classList.add("notification_input_wrapper");let m0=document.createElement("input");m0.type="file";let Y0=document.createElement("label");Y0.classList.add("notification_file_button"),xo(Y0,A,r);let m1=document.createElement("label");return xo(m1,A,r),p$(A,[Y0,m0,m1]),Y0.appendChild(m0),b0.append(m1),b0.appendChild(Y0),b0;case"progress":let F=document.createElement("div");F.classList.add("notification_progress_background");let j0=document.createElement("div");return j0.classList.add("notification_progress"),p$(A,[j0,F]),F.appendChild(j0),F;case"toggle":return qD(A,r);case"range":let K0=document.createElement("input");K0.type="range";let F1=document.createElement("label");p$(A,[K0,F1]),xo(F1,A,r);let B2=NB(K0,!1),b1=document.createElement("div");return b1.classList.add("notification_slider_wrapper"),b1.appendChild(F1),b1.appendChild(B2),b1}}function p$(A,r){if(A.attributes)for(let[l,g]of Object.entries(A.attributes))for(let d of r)d.setAttribute(l,g)}function qD(A,r){let l=document.createElement("label");l.classList.add("notification_switch_wrapper");let g=document.createElement("label");xo(g,A,r);let d=document.createElement("input");d.type="checkbox",p$(A,[g,d]);let b=document.createElement("div");b.classList.add("notification_switch"),b.appendChild(d);let I0=document.createElement("div");return I0.classList.add("notification_switch_slider"),b.appendChild(I0),l.appendChild(g),l.appendChild(b),l}var YD=13,JD=0,xm={};function U7(A,r,l=YD,g=!0,d=void 0,b=void 0){let I0=document.createElement("div"),b0=JD++;I0.classList.add("notification"),I0.innerHTML=` +`;function wn(A){return A.parentElement.nextElementSibling}function Vy(A){let r=A.getElementsByTagName("spessarange");for(let l of r)l.parentElement.insertBefore(NB(l,!0),l);for(;r.length>0;)r[0].parentNode.removeChild(r[0])}function NB(A,r=!0){let l=document.createElement("div");l.classList.add("settings_slider_wrapper");let g=A.getAttribute("min"),d=A.getAttribute("max"),b=A.getAttribute("value"),I0=A.getAttribute("units"),b0=A.getAttribute("input_id"),m0=document.createElement("input");m0.classList.add("settings_slider"),m0.type="range",m0.id=b0,m0.min=g,m0.max=d,m0.value=b;let q0;r&&(q0=document.createElement("span"),q0.textContent=b+I0);let m1=document.createElement("div");m1.classList.add("settings_visual_wrapper");let x=document.createElement("div");x.classList.add("settings_slider_progress"),m1.appendChild(x);let j0=document.createElement("div");return j0.classList.add("settings_slider_thumb"),m1.appendChild(j0),m1.appendChild(m0),m0.addEventListener("input",()=>{let K0=parseInt(m1.style.getPropertyValue("--visual-width").replace("%","")),F1=Math.round((m0.value-m0.min)/(m0.max-m0.min)*100);Math.abs((K0-F1)/100)>.05?m1.classList.add("settings_slider_transition"):m1.classList.remove("settings_slider_transition"),m1.style.setProperty("--visual-width",`${F1}%`)}),m1.style.setProperty("--visual-width",`${(m0.value-m0.min)/(m0.max-m0.min)*100}%`),l.appendChild(m1),r&&l.appendChild(q0),l}async function zy(){let A=await window.savedSettings;if(!A.interface)return;Y5("Loading saved settings...",A);let r=this.htmlControls.renderer,l=this.renderer,g=A.renderer;l.noteFallingTimeMs=g.noteFallingTimeMs,r.noteTimeSlider.value=g.noteFallingTimeMs,r.noteTimeSlider.dispatchEvent(new Event("input")),wn(r.noteTimeSlider).innerText=`${g.noteFallingTimeMs}ms`,r.analyserThicknessSlider.value=g.waveformThickness,r.analyserThicknessSlider.dispatchEvent(new Event("input")),l.lineThickness=g.waveformThickness,wn(r.analyserThicknessSlider).innerText=`${g.waveformThickness}px`;let d=g.sampleSize;r.analyserFftSlider.value=Math.log2(d),r.analyserFftSlider.dispatchEvent(new Event("input")),l.normalAnalyserFft=d,l.drumAnalyserFft=Math.pow(2,Math.min(15,Math.log2(d)+2)),l.updateFftSize(),wn(r.analyserFftSlider).innerText=`${d}`,l.waveMultiplier=g.amplifier,r.waveMultiplierSlizer.value=g.amplifier,r.waveMultiplierSlizer.dispatchEvent(new Event("input")),wn(r.waveMultiplierSlizer).innerText=g.amplifier.toString();let b=this.htmlControls.renderer;l.renderAnalysers=g.renderWaveforms,b.analyserToggler.checked=g.renderWaveforms,l.renderNotes=g.renderNotes,b.noteToggler.checked=g.renderNotes,l.drawActiveNotes=g.drawActiveNotes,b.activeNoteToggler.checked=g.drawActiveNotes,l.showVisualPitch=g.showVisualPitch,b.visualPitchToggler.checked=g.showVisualPitch,l.stabilizeWaveforms=g.stabilizeWaveforms,b.stabilizeWaveformsToggler.checked=g.stabilizeWaveforms,l.keyRange=g.keyRange;let I0=this.htmlControls.keyboard,b0=this.midiKeyboard,m0=A.keyboard;b0.setKeyRange(m0.keyRange,!1),m0.autoRange?(I0.sizeSelector.value=Ro,this.autoKeyRange=!0):(this.autoKeyRange=!1,I0.sizeSelector.value=Object.keys(this.keyboardSizes).find(q0=>this.keyboardSizes[q0].min===m0.keyRange.min&&this.keyboardSizes[q0].max===m0.keyRange.max)),m0.mode==="dark"&&(b0.toggleMode(!1),this.htmlControls.keyboard.modeSelector.checked=!0),this.locale.changeGlobalLocale(A.interface.language,!0),setTimeout(()=>{this.htmlControls.interface.languageSelector.value=A.interface.language},100),A.interface.mode==="light"?(this._toggleDarkMode(),this.htmlControls.interface.themeSelector.checked=!1):this.htmlControls.interface.themeSelector.checked=!0,this.htmlControls.interface.layoutSelector.value=A.interface.layout||"downwards",this._changeLayout(A.interface.layout||"downwards")}function Zy(){window.saveSettings&&window.saveSettings(this._serializeSettings())}function Wy(){return{renderer:{noteFallingTimeMs:this.renderer.noteFallingTimeMs,waveformThickness:this.renderer.lineThickness,sampleSize:this.renderer.normalAnalyserFft,amplifier:this.renderer.waveMultiplier,renderWaveforms:this.renderer.renderAnalysers,renderNotes:this.renderer.renderNotes,drawActiveNotes:this.renderer.drawActiveNotes,showVisualPitch:this.renderer.showVisualPitch,stabilizeWaveforms:this.renderer.stabilizeWaveforms,keyRange:this.renderer.keyRange},keyboard:{selectedChannel:this.midiKeyboard.channel,keyRange:this.midiKeyboard.keyRange,mode:this.midiKeyboard.mode,autoRange:this.htmlControls.keyboard.sizeSelector.value===Ro},midi:{input:this.midiDeviceHandler.selectedInput===null?null:this.midiDeviceHandler.selectedInput.name,output:this.midiDeviceHandler.selectedOutput===null?null:this.midiDeviceHandler.selectedOutput.name},interface:{mode:this.mode,language:this.htmlControls.interface.languageSelector.value,layout:this.htmlControls.interface.layoutSelector.value}}}function jy(){let A=this.htmlControls.interface.themeSelector;A.onclick=()=>{this._toggleDarkMode(),this._saveSettings()};let r=this.htmlControls.interface.languageSelector;for(let[g,d]of Object.entries(this.locales)){let b=document.createElement("option");b.value=g,b.textContent=d.localeName,r.appendChild(b)}r.onchange=()=>{this.locale.changeGlobalLocale(r.value),this._saveSettings()};let l=this.htmlControls.interface.layoutSelector;l.onchange=()=>{this._changeLayout(l.value),this._saveSettings(),l.blur()}}function Xy(A){let r=document.getElementById("keyboard_canvas_wrapper"),l=document.getElementById("note_canvas"),g=document.getElementById("keyboard");switch(A){case"downwards":r.classList.remove("upwards"),r.classList.remove("left_to_right"),r.classList.remove("right_to_left"),l.classList.remove("sideways"),g.classList.remove("sideways"),this.renderer.direction="down",this.renderer.sideways=!1;break;case"upwards":r.classList.add("upwards"),r.classList.remove("left_to_right"),r.classList.remove("right_to_left"),l.classList.remove("sideways"),g.classList.remove("sideways"),this.renderer.direction="up",this.renderer.sideways=!1;break;case"left":r.classList.remove("upwards"),r.classList.add("left_to_right"),r.classList.remove("right_to_left"),l.classList.add("sideways"),g.classList.add("sideways"),this.renderer.direction="up",this.renderer.sideways=!0;break;case"right":r.classList.remove("upwards"),r.classList.remove("left_to_right"),r.classList.add("right_to_left"),l.classList.add("sideways"),g.classList.add("sideways"),this.renderer.direction="down",this.renderer.sideways=!0}}var Dm={start:"#101010",end:"#212121"},bm={start:"#bbb",end:"#f0f0f0"},ew="#eee",tw="#333",_m={start:"#222",end:"#333"},Rm={start:"#ccc",end:"#fff"},kn=.2;function iw(){this.mode==="dark"?(this.mode="light",this.renderer.drawActiveNotes=!1):(this.renderer.drawActiveNotes=!0,this.mode="dark"),this.renderer.toggleDarkMode(),this.synthui.toggleDarkMode(),this.sequi.toggleDarkMode(),this.musicMode.toggleDarkMode(),document.getElementsByClassName("spessasynth_main")[0].classList.toggle("light_mode"),document.getElementsByClassName("top_part")[0].classList.toggle("top_part_light"),this.mainDiv.classList.toggle("settings_menu_light");let A=document.styleSheets[0].cssRules;for(let r of A)if(r.selectorText==="*"){this.mode==="dark"?(vn(tw,ew,kn,r,"--font-color"),vn(Rm.start,_m.start,kn,r,"--top-buttons-color-start"),vn(Rm.end,_m.end,kn,r,"--top-buttons-color-end"),vn(bm.start,Dm.start,kn,r,"--top-color-start"),vn(bm.end,Dm.end,kn,r,"--top-color-end")):(vn(ew,tw,kn,r,"--font-color"),vn(_m.start,Rm.start,kn,r,"--top-buttons-color-start"),vn(_m.end,Rm.end,kn,r,"--top-buttons-color-end"),vn(Dm.start,bm.start,kn,r,"--top-color-start"),vn(Dm.end,bm.end,kn,r,"--top-color-end"));break}document.body.style.background=this.mode==="dark"?"black":"white"}var hh={};function vn(A,r,l,g,d){hh[d]&&(clearInterval(hh[d]),hh[d]=void 0);function b(x){x.length===4&&(x=`#${x[1]}${x[1]}${x[2]}${x[2]}${x[3]}${x[3]}`);let j0=parseInt(x.slice(1),16);return{r:j0>>16&255,g:j0>>8&255,b:j0&255}}function I0(x,j0,K0){return x+(j0-x)*K0}let b0=b(A),m0=b(r),q0=performance.now()/1e3;function m1(){let j0=performance.now()/1e3-q0,K0=Math.min(j0/l,1),F1=Math.round(I0(b0.r,m0.r,K0)),B2=Math.round(I0(b0.g,m0.g,K0)),b1=Math.round(I0(b0.b,m0.b,K0));g.style.setProperty(d,`rgb(${F1}, ${B2}, ${b1})`),K0>=1&&(clearInterval(hh[d]),hh[d]=void 0)}hh[d]=setInterval(m1,1e3/60)}function rw(A){let r=this.htmlControls.renderer;r.noteTimeSlider.addEventListener("input",()=>{A.noteFallingTimeMs=r.noteTimeSlider.value,wn(r.noteTimeSlider).innerText=`${r.noteTimeSlider.value}ms`}),r.noteTimeSlider.onchange=()=>{this._saveSettings()},r.analyserThicknessSlider.addEventListener("input",()=>{A.lineThickness=parseInt(r.analyserThicknessSlider.value),wn(r.analyserThicknessSlider).innerText=`${r.analyserThicknessSlider.value}px`}),r.analyserThicknessSlider.onchange=()=>{this._saveSettings()},r.analyserFftSlider.addEventListener("input",()=>{let l=Math.pow(2,parseInt(r.analyserFftSlider.value));A.normalAnalyserFft=l,A.drumAnalyserFft=Math.pow(2,Math.min(15,parseInt(r.analyserFftSlider.value)+2)),A.updateFftSize(),wn(r.analyserFftSlider).innerText=`${l}`}),r.analyserFftSlider.onchange=()=>{this._saveSettings()},r.waveMultiplierSlizer.addEventListener("input",()=>{A.waveMultiplier=parseInt(r.waveMultiplierSlizer.value),wn(r.waveMultiplierSlizer).innerText=r.waveMultiplierSlizer.value}),r.waveMultiplierSlizer.onchange=()=>{this._saveSettings()},r.analyserToggler.onclick=()=>{A.renderAnalysers=!A.renderAnalysers,this._saveSettings()},r.noteToggler.onclick=()=>{A.renderNotes=!A.renderNotes,this._saveSettings()},r.activeNoteToggler.onclick=()=>{A.drawActiveNotes=!A.drawActiveNotes,this._saveSettings()},r.visualPitchToggler.onclick=()=>{A.showVisualPitch=!A.showVisualPitch,this._saveSettings()},r.stabilizeWaveformsToggler.onclick=()=>{A.stabilizeWaveforms=!A.stabilizeWaveforms,this._saveSettings()}}function xo(A,r,l){if(r.textContent&&(A.textContent=r.textContent),r.translatePathTitle){if(!l)throw new Error("Translate path title provided but no locale provided.");l.bindObjectProperty(A,"textContent",r.translatePathTitle+".title"),l.bindObjectProperty(A,"title",r.translatePathTitle+".description")}}function nw(A,r){switch(A.type){case"button":let l=document.createElement("button");return xo(l,A,r),p$(A,[l]),l;case"text":let g=document.createElement("p");return xo(g,A,r),p$(A,[g]),g;case"input":let d=document.createElement("div");d.classList.add("notification_input_wrapper");let b=document.createElement("input");xo(b,A,r),b.addEventListener("keydown",_5=>_5.stopPropagation());let I0=document.createElement("label");return xo(I0,A,r),p$(A,[b,I0]),d.append(I0),d.appendChild(b),d;case"file":let b0=document.createElement("label");b0.classList.add("notification_input_wrapper");let m0=document.createElement("input");m0.type="file";let q0=document.createElement("label");q0.classList.add("notification_file_button"),xo(q0,A,r);let m1=document.createElement("label");return xo(m1,A,r),p$(A,[q0,m0,m1]),q0.appendChild(m0),b0.append(m1),b0.appendChild(q0),b0;case"progress":let x=document.createElement("div");x.classList.add("notification_progress_background");let j0=document.createElement("div");return j0.classList.add("notification_progress"),p$(A,[j0,x]),x.appendChild(j0),x;case"toggle":return qD(A,r);case"range":let K0=document.createElement("input");K0.type="range";let F1=document.createElement("label");p$(A,[K0,F1]),xo(F1,A,r);let B2=NB(K0,!1),b1=document.createElement("div");return b1.classList.add("notification_slider_wrapper"),b1.appendChild(F1),b1.appendChild(B2),b1}}function p$(A,r){if(A.attributes)for(let[l,g]of Object.entries(A.attributes))for(let d of r)d.setAttribute(l,g)}function qD(A,r){let l=document.createElement("label");l.classList.add("notification_switch_wrapper");let g=document.createElement("label");xo(g,A,r);let d=document.createElement("input");d.type="checkbox",p$(A,[g,d]);let b=document.createElement("div");b.classList.add("notification_switch"),b.appendChild(d);let I0=document.createElement("div");return I0.classList.add("notification_switch_slider"),b.appendChild(I0),l.appendChild(g),l.appendChild(b),l}var YD=13,JD=0,xm={};function U7(A,r,l=YD,g=!0,d=void 0,b=void 0){let I0=document.createElement("div"),b0=JD++;I0.classList.add("notification"),I0.innerHTML=`

${A}

\xD7 -
`;let m0=document.createElement("div");if(m0.classList.add("notification_content"),b)for(let[m1,F]of Object.entries(b))m0.style[m1]=F;I0.appendChild(m0);for(let m1 of r){let F=nw(m1,d);m1.onClick&&(F.onclick=()=>m1.onClick({div:I0,id:b0},F)),m0.appendChild(F)}g?I0.getElementsByClassName("close_btn")[0].onclick=()=>{X7(b0)}:I0.getElementsByClassName("close_btn")[0].style.display="none",setTimeout(()=>{I0.classList.add("drop")},75);let Y0=setTimeout(()=>{X7(b0)},l*1e3+75);return document.getElementsByClassName("spessasynth_main")[0].appendChild(I0),xm[b0]={div:I0,timeout:Y0},{div:I0,id:b0}}function X7(A){let r=xm[A].div;clearTimeout(xm[A].timeout),r.classList.remove("drop"),setTimeout(()=>r.parentElement.removeChild(r),500),xm[A]=void 0}function sw(A,r,l){A.createMIDIDeviceHandler().then(g=>{g?(this._createMidiInputHandler(A,l.synth),this._createMidiOutputHandler(A,r)):(Bn||U7(this.locale.getLocaleString("locale.warnings.warning"),[{type:"text",textContent:this.locale.getLocaleString("locale.warnings.noMidiSupport")}]),document.getElementById("midi_settings").style.display="none")})}function Aw(A,r){if(A.inputs.length<1)return;let l=this.htmlControls.midi.inputSelector;for(let g of A.inputs){let d=document.createElement("option");d.value=g[0],d.innerText=g[1].name,l.appendChild(d)}l.onchange=()=>{l.value==="-1"?A.disconnectAllDevicesFromSynth():A.connectDeviceToSynth(A.inputs.get(l.value),r),this._saveSettings()}}function ow(A,r){if(!A.outputs){setTimeout(()=>{this._createMidiOutputHandler(A,r)},1e3);return}if(A.outputs.length<1)return;let l=this.htmlControls.midi.outputSelector;for(let g of A.outputs){let d=document.createElement("option");d.value=g[0],d.innerText=g[1].name,l.appendChild(d)}l.onchange=()=>{r.seq&&(l.value==="-1"?A.disconnectSeqFromMIDI(r.seq):A.connectMIDIOutputToSeq(A.outputs.get(l.value),r.seq),this._saveSettings())}}var aw={title:"Renderer settings",noteFallingTime:{title:"Note falling time (miliseconds)",description:"How fast the notes fall (visually)"},waveformThickness:{title:"Waveform line thickness (px)",description:"How thick the waveform lines are"},waveformSampleSize:{title:"Waveform sample size",description:"How detailed the waveforms are (Note: high values might impact performance)"},waveformAmplifier:{title:"Waveform amplifier",description:"How vibrant the waveforms are"},toggleWaveformsRendering:{title:"Enable waveforms rendering",description:"Enable rendering the channel waveforms (colorful lines showing audio)"},toggleNotesRendering:{title:"Enable notes rendering",description:"Enable rendering of the falling notes when playing a MIDI file"},toggleDrawingActiveNotes:{title:"Enable drawing active notes",description:"Enable notes lighting up and glowing when they get pressed"},toggleDrawingVisualPitch:{title:"Enable drawing visual pitch",description:"Enable notes sliding left or right when the pitch wheel is applied"},toggleStabilizeWaveforms:{title:"Stabilize waveforms",description:"Enable oscilloscope triggering"}};var $w={title:"Keyboard settings",selectedChannel:{title:"Selected channel",description:"The channel keyboard sends messages to",channelOption:"Channel {0}"},keyboardSize:{title:"Keyboard size",description:"The range of keys shown on the keyboard. Adjusts the MIDI note size accordingly",full:"128 keys (full)",piano:"88 keys (piano)",fiveOctaves:"5 octaves",useSongKeyRange:"Use song's key range"},toggleTheme:{title:"Use dark theme",description:"Use the dark keyboard theme"}};var lw={title:"MIDI settings",midiInput:{title:"MIDI input",description:"The port to listen on for MIDI messages",disabled:"Disabled"},midiOutput:{title:"MIDI output",description:"The port to play the MIDI file to",disabled:"Use SpessaSynth"}};var cw={toggleButton:"Settings",mainTitle:"Program settings",rendererSettings:aw,keyboardSettings:$w,midiSettings:lw,interfaceSettings:{title:"Interface settings",toggleTheme:{title:"Use dark theme",description:"Enable the dark theme for the interface"},selectLanguage:{title:"Language",description:"Change the program language"},layoutDirection:{title:"Layout direction",description:"The layout direction of the renderer and keyboard",values:{downwards:"Downwards",upwards:"Upwards",leftToRight:"Left to right",rightToLeft:"Right to left"}}}};var gw={toggleButton:{title:"Toggle music player mode",description:"Toggle the simplified UI version, hiding the keyboard and note visualizations"},currentlyPlaying:"Currently playing:",nothingPlaying:"Nothing is playing",nothingPlayingCopyright:"Upload a MIDI!"};var hw={voiceMeter:{title:"Voices: ",description:"The current amount of voices playing on channel {0}"},pitchBendMeter:{title:"Pitch: ",description:"The current pitch bend applied to channel {0}"},panMeter:{title:"Pan: ",description:"The current stereo panning applied to channel {0} (right-click to lock)"},expressionMeter:{title:"Expression: ",description:"The current expression (loudness) of channel {0} (right-click to lock)"},volumeMeter:{title:"Volume: ",description:"The current volume of channel {0} (right-click to lock)"},modulationWheelMeter:{title:"Mod wheel: ",description:"The current modulation (usually vibrato) depth of channel {0} (right-click to lock)"},chorusMeter:{title:"Chorus: ",description:"The current level of chorus effect applied to channel {0} (right-click to lock)"},reverbMeter:{title:"Reverb: ",description:"The current level of reverb effect applied to channel {0} (right-click to lock)"},transposeMeter:{title:"Transpose: ",description:"The current transposition (key shift) of channel {0}"},presetSelector:{description:"Change the patch (instrument) channel {0} is using"},presetReset:{description:"Unlock channel {0} to allow program changes"},soloButton:{description:"Solo on channel {0}"},muteButton:{description:"Mute/unmute channel {0}"},drumToggleButton:{description:"Toggle drums on channel {0}"}};var fw={toggleButton:{title:"Synthesizer controller",description:"Show the synthesizer controller"},mainVoiceMeter:{title:"Voices: ",description:"The total amount of voices currently playing"},mainVolumeMeter:{title:"Volume: ",description:"The current master volume of the synthesizer"},mainPanMeter:{title:"Pan: ",description:"The current master stereo panning of the synthesizer"},mainTransposeMeter:{title:"Transpose: ",description:"Transposes the synthesizer (in semitones or keys)"},midiPanic:{title:"MIDI Panic",description:"Stops all voices immediately"},systemReset:{title:"System reset",description:"Resets all controllers to their default values"},blackMidiMode:{title:"Black MIDI mode",description:"Toggles the High Performance Mode, simplifying the look and killing the notes faster"},disableCustomVibrato:{title:"Disable custom vibrato",description:"Disables the custom (NRPN) Vibrato permamently. Reload the website to reenable it"},helpButton:{title:"Help",description:"Opens an external website with the usage guide"},channelController:hw};var uw={previousSong:"Previous song",nextSong:"Next song",loopThis:"Loop this song",playPause:"Play/pause",lyrics:{show:"Show lyrics",title:"Decoded text",noLyrics:"No lyrics available...",otherText:{title:"Other text"}}};var Iw={button:{title:"Save audio",description:"Save audio as WAV, MIDI, SF2 or RMI file"},formats:{title:"Choose format",formats:{wav:{button:{title:"WAV audio",description:"Export the song with modifications as a .wav audio file"},options:{title:"WAV export options",confirm:"Export",normalizeVolume:{title:"Normalize volume",description:"Keep the volume at the same level, no matter how loud or quiet the MIDI is. Recommended."},additionalTime:{title:"Additional time (s)",description:"Additional time at the end of the song to allow for the sound to fade. (seconds)"},separateChannels:{title:"Separate channels",description:"Save each channel as a separate file. Useful for things like oscilloscope viewers. Note that this disables reverb and chorus.",saving:{title:"Channel files",save:"Save channel {0}"}}},exportMessage:{message:"Exporting WAV audio...",estimated:"Remaining:",convertWav:"Converting to wav..."}},midi:{button:{title:"Modified MIDI",description:"Export the MIDI file with the controller and instrument changes applied"}},soundfont:{button:{title:"Trimmed soundfont",description:"Export the soundfont trimmed to only use instruments and samples that the MIDI file uses"},options:{title:"SF export options",confirm:"Export",compress:{title:"Compress",description:"Compress samples with lossy Ogg Vorbis compression if uncompressed. Significantly reduces the file size.If the soundfont was already compressed, it won't be uncompressed even if this option is disabled"},quality:{title:"Compression quality",description:"The quality of compression. Higher is better"}}},rmidi:{button:{title:"Embedded MIDI (.rmi)",description:"Export the modified MIDI with the embedded trimmed soundfont as a single file. Note that this format isn't widely supported"},progress:{title:"Exporting embeded MIDI...",loading:"Loading Soundfont and MIDI...",modifyingMIDI:"Modifying MIDI...",modifyingSoundfont:"Trimming Soundfont...",saving:"Saving RMIDI...",done:"Done!"},options:{title:"RMIDI export options",confirm:"Export",compress:{title:"Compress",description:"Compress the Soundfont with lossy Ogg Vorbis compression. Significantly reduces the file size. Recommended."},quality:{title:"Compression quality",description:"The quality of compression. Higher is better."},bankOffset:{title:"Bank offset",description:"The bank offset of the file. Value of 0 is recommended. Only change if you know what you're doing."}}}},metadata:{songTitle:{title:"Title:",description:"The song's title"},album:{title:"Album:",description:"The song's album"},artist:{title:"Artist:",description:"The song's artist"},albumCover:{title:"Album cover:",description:"The song's album cover"},creationDate:{title:"Created:",description:"The song's creation date"},genre:{title:"Genre:",description:"The song's genre"},comment:{title:"Comment:",description:"The song's comment"},duration:{title:"Duration:",description:"The song's duration"}}}};var dw={localeName:"English",titleMessage:"SpessaSynth: SoundFont2 Javascript Synthesizer",demoTitleMessage:"SpessaSynth: SoundFont2 Javascript Synthesizer Online Demo",synthInit:{genericLoading:"Loading...",loadingSoundfont:"Loading SoundFont...",loadingBundledSoundfont:"Loading bundled SoundFont...",startingSynthesizer:"Starting Synthesizer...",savingSoundfont:"Saving SoundFont for reuse...",noWebAudio:"Your browser does not support Web Audio.",done:"Ready!"},midiUploadButton:"Upload your MIDI files",exportAudio:Iw,demoSoundfontUploadButton:"Upload the soundfont",demoGithubPage:"Project's page",demoSongButton:"Demo Song",credits:"Credits",warnings:{outOfMemory:"Your browser ran out of memory. Consider using Firefox or SF3 soundfont instead. (see console for error).",noMidiSupport:"MIDI Inputs are not supported by this browser, this functionality will not be available. Consider using Chrome or Firefox.",chromeMobile:"SpessaSynth performs poorly on Chrome Mobile. Consider using Firefox Android instead.",warning:"Warning"},hideTopBar:{title:"Hide top bar",description:"Hide the top (title) bar to provide a more seamless experience"},musicPlayerMode:gw,settings:cw,synthesizerController:fw,sequencerController:uw};var Ew={title:"Ustawienia wizualizacji",noteFallingTime:{title:"Czas spadania nut (ms)",description:"Jak szybko spadaj\u0105 z g\xF3ry nuty (w milisekundach)"},waveformThickness:{title:"Grubo\u015B\u0107 lini fal (px)",description:"Jak grube s\u0105 linie fal d\u017Awi\u0119kowych"},waveformSampleSize:{title:"Rozmiar pr\xF3bki fali",description:"Jak szczeg\xF3\u0142owe s\u0105 linei fal d\u017Awi\u0119kowcyh (Uwaga: wysokie warto\u015Bci mog\u0105 pogorszy\u0107 wydajno\u015B\u0107)"},waveformAmplifier:{title:"Wzmacniasz fal",description:"Jak '\u017Cywe' s\u0105 fale. Kontroluje ich amplitud\u0119"},toggleWaveformsRendering:{title:"W\u0142\u0105cz rysowanie fal",description:"W\u0142\u0105cz rysowanie fal d\u017Awi\u0119kowych (16-tu kolorowych linii z ty\u0142u)"},toggleNotesRendering:{title:"W\u0142\u0105cz rysowanie nut",description:"W\u0142\u0105cz rysowanie spadaj\u0105cych nut podczas odtwarzania pliku MIDI"},toggleDrawingActiveNotes:{title:"W\u0142\u0105cz rysowanie aktywnych nut",description:"W\u0142\u0105cz efekt pod\u015Bwietlania si\u0119 nut przy aktywacji"},toggleDrawingVisualPitch:{title:"W\u0142\u0105cz wizualizacj\u0119 wysoko\u015Bci tonu",description:"W\u0142\u0105cz przesuwanie nut w lewo lub w prawo gdy wysoko\u015B\u0107 nut jest zmieniana"},toggleStabilizeWaveforms:{title:"W\u0142\u0105cz stabilizacj\u0119 fal",description:"W\u0142\u0105cz stabilizowanie fal d\u017Awi\u0119kowych"}};var Cw={title:"Ustawienia pianina",selectedChannel:{title:"Wybrany kana\u0142",description:"Kana\u0142, do kt\xF3rego b\u0119dzie pod\u0142\u0105czone pianino",channelOption:"Kana\u0142 {0}"},keyboardSize:{title:"Rozmiar pianina",description:"Zakres klawiszy widocznych na pianine. Dostosowuje r\xF3wnie\u017C szeroko\u015B\u0107 wizualizowanych nut",full:"128 klawiszy (pe\u0142en zakres)",piano:"88 klawiszy (fortepian)",fiveOctaves:"5 oktaw",useSongKeyRange:"U\u017Cyj zakresu utworu"},toggleTheme:{title:"W\u0142\u0105cz ciemny motyw",description:"W\u0142\u0105cz ciemny motyw wbudowanego pianina"}};var mw={title:"Ustawienia MIDI",midiInput:{title:"Wej\u015Bcie MIDI",description:"Port MIDI, kt\xF3ry b\u0119dzie nas\u0142uchiwany",disabled:"Wy\u0142\u0105czony"},midiOutput:{title:"Wyj\u015Bcie MIDI",description:"Port MIDI, do kt\xF3rego b\u0119dzie grany utw\xF3r",disabled:"U\u017Cyj SpessaSynth"}};var Bw={toggleButton:"Ustawienia",mainTitle:"Ustawienia programu",rendererSettings:Ew,keyboardSettings:Cw,midiSettings:mw,interfaceSettings:{title:"Ustawienia interfejsu",toggleTheme:{title:"W\u0142\u0105cz ciemny motyw",description:"W\u0142\u0105cz ciemny motyw programu"},selectLanguage:{title:"J\u0119zyk",description:"Zmie\u0144 j\u0119zyk programu"},layoutDirection:{title:"Uk\u0142ad",description:"Kierunek uk\u0142adu wizualizacji i pianina",values:{downwards:"W d\xF3\u0142",upwards:"W g\xF3r\u0119",leftToRight:"Od lewej do prawej",rightToLeft:"Od prawej do lewej"}}}};var pw={toggleButton:{title:"Prze\u0142\u0105cz tryb odtwarzania muzyki",description:"Prze\u0142\u0105cz uproszczon\u0105 wersj\u0119 interfejsu, ukrywaj\u0105c pianino i wizualizacj\u0119 nut"},currentlyPlaying:"Teraz gramy:",nothingPlaying:"Nic teraz nie gra",nothingPlayingCopyright:"Wgraj jakie\u015B MIDI!"};var Qw={voiceMeter:{title:"D\u017Awi\u0119ki: ",description:"Aktualna ilo\u015B\u0107 d\u017Awi\u0119k\xF3w na kanale {0}"},pitchBendMeter:{title:"Wysoko\u015B\u0107: ",description:"Aktualna wysoko\u015B\u0107 tonu na kanale {0}"},panMeter:{title:"Stereo: ",description:"Aktualny efekt stereo na kanale {0} (kliknij prawym aby zablokowa\u0107)"},expressionMeter:{title:"Ekspresja: ",description:"Aktualna ekspresja (g\u0142o\u015Bno\u015Bc) kana\u0142u {0} (kliknij prawym aby zablokowa\u0107)"},volumeMeter:{title:"G\u0142o\u015Bno\u015B\u0107: ",description:"Aktualna g\u0142o\u015Bno\u015B\u0107 kana\u0142u {0} (kliknij prawym aby zablokowa\u0107)"},modulationWheelMeter:{title:"Modulacja: ",description:"Aktualna g\u0142\u0119boko\u015B\u0107 modulacji (zazwyczaj vibrato) kana\u0142u {0} (kliknij prawym aby zablokowa\u0107)"},chorusMeter:{title:"Ch\xF3r: ",description:"Aktualny efekt ch\xF3ru na kanale {0} (kliknij prawym aby zablokowa\u0107)"},reverbMeter:{title:"Pog\u0142os: ",description:"Aktualny efekt pog\u0142osu na kanale {0} (kliknij prawym aby zablokowa\u0107)"},transposeMeter:{title:"Transpozycja: ",description:"Aktualna transpozycja (przesuni\u0119cie klawiszy) kana\u0142u {0}"},presetSelector:{description:"Zmie\u0144 patch (instrument), kt\xF3rego u\u017Cywa kana\u0142 {0}"},presetReset:{description:"Odblokuj kana\u0142 {0}, aby program m\xF3g\u0142 go zmienia\u0107"},soloButton:{description:"Solo na kanale {0}"},muteButton:{description:"Wycisz/odcisz kana\u0142 {0}"},drumToggleButton:{description:"Prze\u0142\u0105cz perkusj\u0119 na kanale {0}"}};var yw={toggleButton:{title:"Kontroler syntezatora",description:"Poka\u017C kontroler syntezatora"},mainVoiceMeter:{title:"D\u017Awi\u0119ki: ",description:"Ca\u0142kowita ilo\u015B\u0107 aktualnie odtwarzanych d\u017Awi\u0119k\xF3w"},mainVolumeMeter:{title:"G\u0142o\u015Bno\u015B\u0107: ",description:"Aktualna g\u0142o\u015Bno\u015B\u0107 syntezatora"},mainPanMeter:{title:"Stereo: ",description:"Aktualna pozycja stereo syntezatora"},mainTransposeMeter:{title:"Transpozycja: ",description:"Transpozycjonuje syntezator (w semitonach)"},midiPanic:{title:"MIDI Panic",description:"Zatrzymuje wszystkie d\u017Awi\u0119ki"},systemReset:{title:"Reset systemu",description:"Resetuje wszystkie kontroleru do ich domy\u015Blnych warto\u015Bci"},blackMidiMode:{title:"Tryb black MIDI",description:"Prze\u0142\u0105cza tryb wysokiej wydajno\u015Bci, upraszczaj\u0105c wygl\u0105d i pogarszaj\u0105c jako\u015B\u0107 d\u017Awi\u0119ku"},disableCustomVibrato:{title:"Wy\u0142\u0105cz niestandardowe vibrato",description:"Wy\u0142\u0105cza niestandardowe (NRPN) vibrato. Wymaga prze\u0142adowania strony aby je ponownie w\u0142\u0105czy\u0107"},helpButton:{title:"Pomoc",description:"Poka\u017C instrukcj\u0119 obs\u0142ugi"},channelController:Qw};var ww={previousSong:"Poprzedni utw\xF3r",nextSong:"Nast\u0119pny utw\xF3r",loopThis:"Odtwarzaj w p\u0119tli",playPause:"Odtw\xF3rz/wstrzymaj",lyrics:{show:"Poka\u017C tekst",title:"Odczytany tekst",noLyrics:"Brak dost\u0119pnego tekstu...",otherText:{title:"Inny tekst"}}};var kw={button:{title:"Zapisz utw\xF3r",description:"Zapisz utw\xF3r jako plik WAV, MIDI, SF2 lub RMI"},formats:{title:"Wybierz format",formats:{wav:{button:{title:"Audio WAV",description:"Eksportuj utw\xF3r ze zmianami jako plik audio .wav"},options:{title:"Opcje eksportu audio",confirm:"Eksportuj",normalizeVolume:{title:"Normalizuj g\u0142o\u015Bno\u015B\u0107",description:"Eksportuj audio z tak\u0105 sam\u0105 g\u0142o\u015Bno\u015Bci\u0105, niezale\u017Cnie od g\u0142o\u015Bno\u015Bci MIDI."},additionalTime:{title:"Dodatkowy czas (s)",description:"Dodatkowy czas na ko\u0144cu utworu aby pozwoli\u0107 na wyciszenie si\u0119 d\u017Awi\u0119ku. (sekundy)"},separateChannels:{title:"Rozdziel kana\u0142y",description:"Zapisz ka\u017Cdy kana\u0142 w osobnym pliuku. Przydatne dla rzeczy jak widok oscyloskopowy. Nale\u017Cy pami\u0119ta\u0107 \u017Ce to wy\u0142\u0105cza ekfet pog\u0142osu i ch\xF3ru",saving:{title:"Pliki audio kana\u0142\xF3w",save:"Zapisz kana\u0142 {0}"}}},exportMessage:{message:"Eksportowanie audio...",estimated:"Pozosta\u0142o:",convertWav:"Konwertowanie do wav..."}},midi:{button:{title:"Zmodyfikowane MIDI",description:"Eksportuj plik MIDI wraz ze zmianami instrument\xF3w i kontroler\xF3w"}},soundfont:{button:{title:"Zmniejszony soundfont",description:"Eksportuj soundfont zawieraj\u0105cy tylko klawisze u\u017Cyte w MIDI"},options:{title:"Opcje eksportu soundfonta",confirm:"Eksportuj",compress:{title:"Kompresuj",description:"Zkompresuj pr\xF3bki kt\xF3re nie s\u0105 zkompresowane przy u\u017Cyciu stratnego kodeka Ogg Vorbis. Znacznie zmniejsza rozmiar pliku.Je\u015Bli soundfont by\u0142 ju\u017C skompresowany, nie zostanie zdekompresowany nawet gdy ta opcja jest wy\u0142\u0105czona"},quality:{title:"Jako\u015B\u0107 kompresji",description:"Jako\u015B\u0107 skompresowanych pr\xF3bek. Im wy\u017Csza tym lepsza"}}},rmidi:{button:{title:"Osadzone MIDI (.rmi)",description:"Eksportuj zmodyfikowane MIDI wraz ze zmniejszonym soundfontem jako jeden plik. Uwaga: ten format nie jest szeroko wspierany"},progress:{title:"Exportowanie osadzonego MIDI...",loading:"Wczytywanie soundfonta i MIDI...",modifyingMIDI:"Modyfikowanie MIDI...",modifyingSoundfont:"Zmniejszanie Soundfonta...",saving:"Zapisywanie RMIDI...",done:"Gotowe!"},options:{title:"Opcje eksportu RMIDI",confirm:"Eksportuj",compress:{title:"Kompresuj",description:"Skompresuj osadzonego soundfonta za pomoc\u0105 stratnego kodeka Ogg Vorbis. Znacznie zmniejsza rozmiar pliku. Zalecane."},quality:{title:"Jako\u015B\u0107 kompresji",description:"Jako\u015B\u0107 skompresowanych pr\xF3bek. Im wy\u017Csza tym lepsza"},bankOffset:{title:"Przesuni\u0119cie banku",description:"Przesuni\u0119cie banku w pliku. Zalecane 0. Zmie\u0144 tylko je\u015Bli wiesz co robisz."}}}},metadata:{songTitle:{title:"Tytu\u0142:",description:"Tytu\u0142 utworu"},album:{title:"Album:",description:"Album utworu"},artist:{title:"Tw\xF3rca:",description:"Tw\xF3rca utworu"},albumCover:{title:"Ok\u0142adka albumu:",description:"Ok\u0142adka albumu utworu"},creationDate:{title:"Stworzono:",description:"Data stworzenia utworu"},genre:{title:"Gatunek:",description:"Gatunek utworu"},comment:{title:"Komentarz:",description:"Komentarz do utworu"},duration:{title:"Czas trwania:",description:"Czas trwania utworu"}}}};var vw={localeName:"Polski",titleMessage:"SpessaSynth: JavaScriptowy Syntezator SoundFont2",demoTitleMessage:"SpessaSynth: JavaScriptowy Syntezator SoundFont2 Wersja Demo",synthInit:{genericLoading:"Wczytywanie...",loadingSoundfont:"Wczytywanie SoundFonta...",loadingBundledSoundfont:"Wczytywanie wbudowanego SoundFonta...",startingSynthesizer:"Uruchamianie syntezatora...",savingSoundfont:"Zapisywanie SoundFonta do przegl\u0105darki...",noWebAudio:"Twoja przegl\u0105darka nie wspiera Web Audio.",done:"Gotowe!"},midiUploadButton:"Wgraj Twoje pliki MIDI",midiRenderButton:{title:"Eksportuj audio",description:"Zapisz audio do pliku WAV lub MIDI"},exportAudio:kw,demoSoundfontUploadButton:"Wgraj SoundFonta",demoGithubPage:"Strona projektu",demoSongButton:"Piosenka demo",credits:"Tw\xF3rcy",warnings:{outOfMemory:"Twojej przegl\u0105darce sko\u0144czy\u0142a si\u0119 pami\u0119\u0107. Rozwa\u017C u\u017Cycie Firefoxa albo plik\xF3w SF3. (Zobacz b\u0142\u0105d w konsoli)",noMidiSupport:"Twoja przegl\u0105darka nie wspiera Web MIDI. Korzystanie z port\xF3w MIDI nie b\u0119dzie dost\u0119pne. Rozwa\u017C u\u017Cycie Chrome albo Firefoxa.",chromeMobile:"SpessaSynth dzia\u0142a wolno na Chromie na telefon. Rozwa\u017C u\u017Cycie Firefoxa Android.",warning:"Uwaga"},hideTopBar:{title:"Ukryj g\xF3rny pasek",description:"Ukryj pasek tytu\u0142owy w celu poprawy widoczno\u015Bci na pionowych ekranach"},musicPlayerMode:pw,settings:Bw,synthesizerController:yw,sequencerController:ww};var Sw={title:"\u30EC\u30F3\u30C0\u30E9\u30FC\u8A2D\u5B9A",noteFallingTime:{title:"\u30CE\u30FC\u30C8\u306E\u843D\u4E0B\u6642\u9593\uFF08\u30DF\u30EA\u79D2\uFF09",description:"\u30CE\u30FC\u30C8\u304C\u843D\u3061\u308B\u901F\u3055\uFF08\u8996\u899A\u7684\u306B\uFF09"},waveformThickness:{title:"\u6CE2\u5F62\u306E\u7DDA\u306E\u592A\u3055\uFF08\u30D4\u30AF\u30BB\u30EB\uFF09",description:"\u6CE2\u5F62\u306E\u7DDA\u306E\u592A\u3055"},waveformSampleSize:{title:"\u6CE2\u5F62\u306E\u30B5\u30F3\u30D7\u30EB\u30B5\u30A4\u30BA",description:"\u6CE2\u5F62\u306E\u8A73\u7D30\u5EA6\uFF08\u6CE8\uFF1A\u9AD8\u3044\u5024\u306F\u30D1\u30D5\u30A9\u30FC\u30DE\u30F3\u30B9\u306B\u5F71\u97FF\u3092\u4E0E\u3048\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\uFF09"},waveformAmplifier:{title:"\u6CE2\u5F62\u306E\u5897\u5E45\u5668",description:"\u6CE2\u5F62\u306E\u9BAE\u3084\u304B\u3055"},toggleWaveformsRendering:{title:"\u6CE2\u5F62\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u306E\u5207\u308A\u66FF\u3048",description:"\u30C1\u30E3\u30F3\u30CD\u30EB\u6CE2\u5F62\u306E\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u3092\u5207\u308A\u66FF\u3048\u307E\u3059\uFF08\u30AA\u30FC\u30C7\u30A3\u30AA\u3092\u8868\u793A\u3059\u308B\u30AB\u30E9\u30D5\u30EB\u306A\u7DDA\uFF09"},toggleNotesRendering:{title:"\u30CE\u30FC\u30C8\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u306E\u5207\u308A\u66FF\u3048",description:"MIDI\u30D5\u30A1\u30A4\u30EB\u3092\u518D\u751F\u3059\u308B\u969B\u306E\u843D\u4E0B\u30CE\u30FC\u30C8\u306E\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},toggleDrawingActiveNotes:{title:"\u30A2\u30AF\u30C6\u30A3\u30D6\u30CE\u30FC\u30C8\u306E\u63CF\u753B\u3092\u5207\u308A\u66FF\u3048",description:"\u30CE\u30FC\u30C8\u304C\u62BC\u3055\u308C\u305F\u3068\u304D\u306B\u5149\u308A\u8F1D\u304F\u63CF\u753B\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},toggleDrawingVisualPitch:{title:"\u30D3\u30B8\u30E5\u30A2\u30EB\u30D4\u30C3\u30C1\u63CF\u753B\u306E\u5207\u308A\u66FF\u3048",description:"\u30D4\u30C3\u30C1\u30DB\u30A4\u30FC\u30EB\u304C\u9069\u7528\u3055\u308C\u305F\u3068\u304D\u306B\u30CE\u30FC\u30C8\u304C\u5DE6\u53F3\u306B\u30B9\u30E9\u30A4\u30C9\u3059\u308B\u63CF\u753B\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},toggleStabilizeWaveforms:{title:"\u6CE2\u5F62\u3092\u5B89\u5B9A\u3055\u305B\u308B",description:"\u30AA\u30FC\u30C7\u30A3\u30AA\u6CE2\u5F62\u3092\u5B89\u5B9A\u3055\u305B\u308B\u8A2D\u5B9A\u3092\u5207\u308A\u66FF\u3048\u3001\u6CE2\u5F62\u3092\u56FA\u5B9A\u3057\u307E\u3059\u3002"}};var Dw={title:"\u30AD\u30FC\u30DC\u30FC\u30C9\u8A2D\u5B9A",selectedChannel:{title:"\u9078\u629E\u3055\u308C\u305F\u30C1\u30E3\u30F3\u30CD\u30EB",description:"\u30AD\u30FC\u30DC\u30FC\u30C9\u304C\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u9001\u4FE1\u3059\u308B\u30C1\u30E3\u30F3\u30CD\u30EB",channelOption:"\u30C1\u30E3\u30F3\u30CD\u30EB {0}"},keyboardSize:{title:"\u30AD\u30FC\u30DC\u30FC\u30C9\u30B5\u30A4\u30BA",description:"\u30AD\u30FC\u30DC\u30FC\u30C9\u306B\u8868\u793A\u3055\u308C\u308B\u30AD\u30FC\u306E\u7BC4\u56F2\u3002MIDI\u30CE\u30FC\u30C8\u306E\u30B5\u30A4\u30BA\u306B\u5FDC\u3058\u3066\u8ABF\u6574\u3055\u308C\u307E\u3059",full:"128\u30AD\u30FC\uFF08\u5168\u4F53\uFF09",piano:"88\u30AD\u30FC\uFF08\u30D4\u30A2\u30CE\uFF09",fiveOctaves:"5\u30AA\u30AF\u30BF\u30FC\u30D6",useSongKeyRange:"\u66F2\u306E\u30AD\u30FC\u7BC4\u56F2\u3092\u4F7F\u7528"},toggleTheme:{title:"\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048",description:"\u30AD\u30FC\u30DC\u30FC\u30C9\u306E\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"}};var bw={title:"MIDI\u8A2D\u5B9A",midiInput:{title:"MIDI\u5165\u529B",description:"MIDI\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u53D7\u4FE1\u3059\u308B\u30DD\u30FC\u30C8",disabled:"\u7121\u52B9"},midiOutput:{title:"MIDI\u51FA\u529B",description:"MIDI\u30D5\u30A1\u30A4\u30EB\u3092\u518D\u751F\u3059\u308B\u30DD\u30FC\u30C8",disabled:"SpessaSynth\u3092\u4F7F\u7528"}};var _w={toggleButton:"\u8A2D\u5B9A",mainTitle:"\u30D7\u30ED\u30B0\u30E9\u30E0\u8A2D\u5B9A",rendererSettings:Sw,keyboardSettings:Dw,midiSettings:bw,interfaceSettings:{title:"\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u8A2D\u5B9A",toggleTheme:{title:"\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048",description:"\u30D7\u30ED\u30B0\u30E9\u30E0\u306E\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},selectLanguage:{title:"\u8A00\u8A9E",description:"\u30D7\u30ED\u30B0\u30E9\u30E0\u306E\u8A00\u8A9E\u3092\u5909\u66F4\u3057\u307E\u3059"},layoutDirection:{title:"\u30EC\u30A4\u30A2\u30A6\u30C8\u306E\u65B9\u5411",description:"\u30EC\u30F3\u30C0\u30E9\u30FC\u3068\u30AD\u30FC\u30DC\u30FC\u30C9\u306E\u30EC\u30A4\u30A2\u30A6\u30C8\u65B9\u5411",values:{downwards:"\u4E0B\u5411\u304D",upwards:"\u4E0A\u5411\u304D",leftToRight:"\u5DE6\u304B\u3089\u53F3",rightToLeft:"\u53F3\u304B\u3089\u5DE6"}}}};var Rw={toggleButton:{title:"\u97F3\u697D\u30D7\u30EC\u30A4\u30E4\u30FC\u30E2\u30FC\u30C9\u306E\u5207\u308A\u66FF\u3048",description:"\u7C21\u7565\u5316\u3055\u308C\u305FUI\u30D0\u30FC\u30B8\u30E7\u30F3\u306B\u5207\u308A\u66FF\u3048\u3001\u30AD\u30FC\u30DC\u30FC\u30C9\u3068\u30CE\u30FC\u30C8\u306E\u8996\u899A\u5316\u3092\u96A0\u3057\u307E\u3059"},currentlyPlaying:"\u518D\u751F\u4E2D:",nothingPlaying:"\u518D\u751F\u3057\u3066\u3044\u308B\u3082\u306E\u306F\u3042\u308A\u307E\u305B\u3093",nothingPlayingCopyright:"MIDI\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3057\u3066\u304F\u3060\u3055\u3044\uFF01"};var xw={voiceMeter:{title:"\u30DC\u30A4\u30B9: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3067\u518D\u751F\u4E2D\u306E\u30DC\u30A4\u30B9\u306E\u73FE\u5728\u306E\u6570"},pitchBendMeter:{title:"\u30D4\u30C3\u30C1: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30D4\u30C3\u30C1\u30D9\u30F3\u30C9"},panMeter:{title:"\u30D1\u30F3: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30B9\u30C6\u30EC\u30AA\u30D1\u30F3\u30CB\u30F3\u30B0\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},expressionMeter:{title:"\u30A8\u30AF\u30B9\u30D7\u30EC\u30C3\u30B7\u30E7\u30F3: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u8868\u73FE\uFF08\u97F3\u91CF\uFF09\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},volumeMeter:{title:"\u30DC\u30EA\u30E5\u30FC\u30E0: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u97F3\u91CF\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},modulationWheelMeter:{title:"\u30E2\u30B8\u30E5\u30EC\u30FC\u30B7\u30E7\u30F3\u30DB\u30A4\u30FC\u30EB: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u30E2\u30B8\u30E5\u30EC\u30FC\u30B7\u30E7\u30F3\uFF08\u901A\u5E38\u306F\u30D3\u30D6\u30E9\u30FC\u30C8\uFF09\u306E\u6DF1\u3055\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},chorusMeter:{title:"\u30B3\u30FC\u30E9\u30B9: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30B3\u30FC\u30E9\u30B9\u30A8\u30D5\u30A7\u30AF\u30C8\u306E\u30EC\u30D9\u30EB\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},reverbMeter:{title:"\u30EA\u30D0\u30FC\u30D6: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30EA\u30D0\u30FC\u30D6\u30A8\u30D5\u30A7\u30AF\u30C8\u306E\u30EC\u30D9\u30EB\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},transposeMeter:{title:"\u30C8\u30E9\u30F3\u30B9\u30DD\u30FC\u30BA: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u79FB\u8ABF\uFF08\u30AD\u30FC\u30B7\u30D5\u30C8\uFF09"},presetSelector:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u304C\u4F7F\u7528\u3059\u308B\u30D1\u30C3\u30C1\uFF08\u697D\u5668\uFF09\u3092\u5909\u66F4"},presetReset:{description:"\u30D7\u30ED\u30B0\u30E9\u30E0\u5909\u66F4\u3092\u8A31\u53EF\u3059\u308B\u305F\u3081\u306B\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u30ED\u30C3\u30AF\u3092\u89E3\u9664"},soloButton:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3092\u5358\u72EC\u518D\u751F"},muteButton:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3092\u30DF\u30E5\u30FC\u30C8/\u30DF\u30E5\u30FC\u30C8\u89E3\u9664"},drumToggleButton:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3067\u30C9\u30E9\u30E0\u3092\u5207\u308A\u66FF\u3048"}};var Fw={toggleButton:{title:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC\u3092\u8868\u793A"},mainVoiceMeter:{title:"\u30DC\u30A4\u30B9: ",description:"\u73FE\u5728\u518D\u751F\u4E2D\u306E\u30DC\u30A4\u30B9\u306E\u7DCF\u6570"},mainVolumeMeter:{title:"\u30DC\u30EA\u30E5\u30FC\u30E0: ",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u306E\u73FE\u5728\u306E\u30DE\u30B9\u30BF\u30FC\u30DC\u30EA\u30E5\u30FC\u30E0"},mainPanMeter:{title:"\u30D1\u30F3: ",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u306E\u73FE\u5728\u306E\u30DE\u30B9\u30BF\u30FC\u30B9\u30C6\u30EC\u30AA\u30D1\u30F3\u30CB\u30F3\u30B0"},mainTransposeMeter:{title:"\u30C8\u30E9\u30F3\u30B9\u30DD\u30FC\u30BA: ",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u3092\u79FB\u8ABF\u3057\u307E\u3059\uFF08\u30BB\u30DF\u30C8\u30FC\u30F3\u307E\u305F\u306F\u30AD\u30FC\uFF09"},midiPanic:{title:"MIDI\u30D1\u30CB\u30C3\u30AF",description:"\u3059\u3079\u3066\u306E\u30DC\u30A4\u30B9\u3092\u5373\u5EA7\u306B\u505C\u6B62"},systemReset:{title:"\u30B7\u30B9\u30C6\u30E0\u30EA\u30BB\u30C3\u30C8",description:"\u3059\u3079\u3066\u306E\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC\u3092\u30C7\u30D5\u30A9\u30EB\u30C8\u5024\u306B\u30EA\u30BB\u30C3\u30C8"},blackMidiMode:{title:"\u30D6\u30E9\u30C3\u30AFMIDI\u30E2\u30FC\u30C9",description:"\u9AD8\u6027\u80FD\u30E2\u30FC\u30C9\u3092\u5207\u308A\u66FF\u3048\u3001\u898B\u305F\u76EE\u3092\u7C21\u7D20\u5316\u3057\u3001\u30CE\u30FC\u30C8\u3092\u901F\u304F\u6D88\u53BB"},disableCustomVibrato:{title:"\u30AB\u30B9\u30BF\u30E0\u30D3\u30D6\u30E9\u30FC\u30C8\u3092\u7121\u52B9\u5316",description:"\u30AB\u30B9\u30BF\u30E0\uFF08NRPN\uFF09\u30D3\u30D6\u30E9\u30FC\u30C8\u3092\u6C38\u4E45\u306B\u7121\u52B9\u5316\u3002\u518D\u5EA6\u6709\u52B9\u5316\u3059\u308B\u306B\u306F\u30A6\u30A7\u30D6\u30B5\u30A4\u30C8\u3092\u30EA\u30ED\u30FC\u30C9"},helpButton:{title:"\u30D8\u30EB\u30D7",description:"\u4F7F\u7528\u30AC\u30A4\u30C9\u3092\u8868\u793A\u3057\u307E\u3059"},channelController:xw};var Lw={previousSong:"\u524D\u306E\u66F2",nextSong:"\u6B21\u306E\u66F2",loopThis:"\u3053\u306E\u66F2\u3092\u30EB\u30FC\u30D7",playPause:"\u518D\u751F/\u4E00\u6642\u505C\u6B62",lyrics:{show:"\u6B4C\u8A5E\u3092\u8868\u793A",title:"\u30C7\u30B3\u30FC\u30C9\u3055\u308C\u305F\u30C6\u30AD\u30B9\u30C8",noLyrics:"\u6B4C\u8A5E\u304C\u3042\u308A\u307E\u305B\u3093...",otherText:{title:"\u305D\u306E\u4ED6\u306E\u30C6\u30AD\u30B9\u30C8"}}};var Mw={button:{title:"\u97F3\u58F0\u3092\u4FDD\u5B58",description:"\u97F3\u58F0\u3092WAV\u3001MIDI\u3001SF2\u3001\u307E\u305F\u306FRMI\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u4FDD\u5B58"},formats:{title:"\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u3092\u9078\u629E",formats:{wav:{button:{title:"WAV\u97F3\u58F0",description:"\u5909\u66F4\u3092\u52A0\u3048\u305F\u66F2\u3092.wav\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059"},options:{title:"\u97F3\u58F0\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3",confirm:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",normalizeVolume:{title:"\u97F3\u91CF\u306E\u6B63\u898F\u5316",description:"MIDI\u306E\u97F3\u91CF\u306B\u304B\u304B\u308F\u3089\u305A\u3001\u97F3\u91CF\u3092\u4E00\u5B9A\u306B\u4FDD\u3061\u307E\u3059\u3002\u63A8\u5968\u8A2D\u5B9A\u3067\u3059\u3002"},additionalTime:{title:"\u8FFD\u52A0\u6642\u9593\uFF08\u79D2\uFF09",description:"\u97F3\u304C\u30D5\u30A7\u30FC\u30C9\u30A2\u30A6\u30C8\u3059\u308B\u305F\u3081\u306B\u66F2\u306E\u6700\u5F8C\u306B\u8FFD\u52A0\u3059\u308B\u6642\u9593\u3067\u3059\u3002 (\u79D2)"},separateChannels:{title:"\u30C1\u30E3\u30F3\u30CD\u30EB\u3092\u5206\u5272",description:"\u5404\u30C1\u30E3\u30F3\u30CD\u30EB\u3092\u5225\u3005\u306E\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u4FDD\u5B58\u3057\u307E\u3059\u3002\u30AA\u30B7\u30ED\u30B9\u30B3\u30FC\u30D7\u30D3\u30E5\u30FC\u30A2\u306A\u3069\u306B\u4FBF\u5229\u3067\u3059\u3002\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u4F7F\u7528\u3059\u308B\u3068\u30EA\u30D0\u30FC\u30D6\u3084\u30B3\u30FC\u30E9\u30B9\u304C\u7121\u52B9\u306B\u306A\u308A\u307E\u3059\u3002",saving:{title:"\u30C1\u30E3\u30F3\u30CD\u30EB\u30D5\u30A1\u30A4\u30EB",save:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3092\u4FDD\u5B58"}}},exportMessage:{message:"\u97F3\u58F0\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u3059...",estimated:"\u6B8B\u308A\u6642\u9593:",convertWav:"WAV\u306B\u5909\u63DB\u4E2D..."}},midi:{button:{title:"\u5909\u66F4\u3055\u308C\u305FMIDI",description:"\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC\u3068\u697D\u5668\u306E\u5909\u66F4\u304C\u9069\u7528\u3055\u308C\u305FMIDI\u30D5\u30A1\u30A4\u30EB\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059"}},soundfont:{button:{title:"\u30C8\u30EA\u30DF\u30F3\u30B0\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8",description:"MIDI\u30D5\u30A1\u30A4\u30EB\u3067\u4F7F\u7528\u3055\u308C\u3066\u3044\u308B\u697D\u5668\u3068\u30B5\u30F3\u30D7\u30EB\u3060\u3051\u306B\u30C8\u30EA\u30DF\u30F3\u30B0\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059"},options:{title:"SF\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3",confirm:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",compress:{title:"\u5727\u7E2E",description:"\u672A\u5727\u7E2E\u306E\u30B5\u30F3\u30D7\u30EB\u3092Ogg Vorbis\u306E\u30ED\u30B9\u5727\u7E2E\u3067\u5727\u7E2E\u3057\u307E\u3059\u3002\u30D5\u30A1\u30A4\u30EB\u30B5\u30A4\u30BA\u304C\u5927\u5E45\u306B\u524A\u6E1B\u3055\u308C\u307E\u3059\u3002\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u304C\u3059\u3067\u306B\u5727\u7E2E\u3055\u308C\u3066\u3044\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u518D\u5727\u7E2E\u3055\u308C\u308B\u3053\u3068\u306F\u3042\u308A\u307E\u305B\u3093"},quality:{title:"\u5727\u7E2E\u54C1\u8CEA",description:"\u5727\u7E2E\u306E\u54C1\u8CEA\u3067\u3059\u3002\u9AD8\u3044\u307B\u3069\u826F\u3044"}}},rmidi:{button:{title:"\u57CB\u3081\u8FBC\u307E\u308C\u305FMIDI (.rmi)",description:"\u5909\u66F4\u3055\u308C\u305FMIDI\u3068\u30C8\u30EA\u30DF\u30F3\u30B0\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u30921\u3064\u306E\u30D5\u30A1\u30A4\u30EB\u306B\u57CB\u3081\u8FBC\u3093\u3067\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002 \u3053\u306E\u5F62\u5F0F\u306F\u5E83\u304F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u306A\u3044\u3053\u3068\u306B\u6CE8\u610F\u3057\u3066\u304F\u3060\u3055\u3044"},progress:{title:"\u57CB\u3081\u8FBC\u307E\u308C\u305FMIDI\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u4E2D...",loading:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3068MIDI\u3092\u8AAD\u307F\u8FBC\u307F\u4E2D...",modifyingMIDI:"MIDI\u3092\u4FEE\u6B63\u4E2D...",modifyingSoundfont:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u30C8\u30EA\u30DF\u30F3\u30B0\u4E2D...",saving:"RMIDI\u3092\u4FDD\u5B58\u4E2D...",done:"\u5B8C\u4E86\u3057\u307E\u3057\u305F\uFF01"},options:{title:"RMIDI\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3",confirm:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",compress:{title:"\u5727\u7E2E",description:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092Ogg Vorbis\u306E\u30ED\u30B9\u5727\u7E2E\u3067\u5727\u7E2E\u3057\u307E\u3059\u3002\u30D5\u30A1\u30A4\u30EB\u30B5\u30A4\u30BA\u304C\u5927\u5E45\u306B\u524A\u6E1B\u3055\u308C\u307E\u3059\u3002\u63A8\u5968\u8A2D\u5B9A\u3067\u3059\u3002"},quality:{title:"\u5727\u7E2E\u54C1\u8CEA",description:"\u5727\u7E2E\u306E\u54C1\u8CEA\u3067\u3059\u3002\u9AD8\u3044\u307B\u3069\u826F\u3044"},bankOffset:{title:"\u9280\u884C\u306E\u76F8\u6BBA",description:"\u30D5\u30A1\u30A4\u30EB\u306E\u30D0\u30F3\u30AF \u30AA\u30D5\u30BB\u30C3\u30C8\u3002\u5024 0 \u304C\u63A8\u5968\u3055\u308C\u307E\u3059\u3002\u4F55\u3092\u3057\u3066\u3044\u308B\u306E\u304B\u308F\u304B\u3063\u3066\u3044\u308B\u5834\u5408\u306B\u306E\u307F\u5909\u66F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002"}}}},metadata:{songTitle:{title:"\u30BF\u30A4\u30C8\u30EB:",description:"\u66F2\u306E\u30BF\u30A4\u30C8\u30EB"},album:{title:"\u30A2\u30EB\u30D0\u30E0:",description:"\u66F2\u306E\u30A2\u30EB\u30D0\u30E0"},artist:{title:"\u30A2\u30FC\u30C6\u30A3\u30B9\u30C8:",description:"\u66F2\u306E\u30A2\u30FC\u30C6\u30A3\u30B9\u30C8"},albumCover:{title:"\u30A2\u30EB\u30D0\u30E0\u30AB\u30D0\u30FC:",description:"\u66F2\u306E\u30A2\u30EB\u30D0\u30E0\u30AB\u30D0\u30FC"},creationDate:{title:"\u4F5C\u6210\u65E5:",description:"\u66F2\u306E\u4F5C\u6210\u65E5"},genre:{title:"\u30B8\u30E3\u30F3\u30EB:",description:"\u66F2\u306E\u30B8\u30E3\u30F3\u30EB"},comment:{title:"\u30B3\u30E1\u30F3\u30C8:",description:"\u66F2\u306E\u30B3\u30E1\u30F3\u30C8"},duration:{title:"\u9577\u3055:",description:"\u66F2\u306E\u9577\u3055"}}}};var Tw={localeName:"\u65E5\u672C\u8A9E",titleMessage:"SpessaSynth: SoundFont2 Javascript \u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC",demoTitleMessage:"SpessaSynth: SoundFont2 Javascript \u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC \u30AA\u30F3\u30E9\u30A4\u30F3\u30C7\u30E2",synthInit:{genericLoading:"\u8AAD\u307F\u8FBC\u307F\u4E2D...",loadingSoundfont:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u8AAD\u307F\u8FBC\u3093\u3067\u3044\u307E\u3059...",loadingBundledSoundfont:"\u30D0\u30F3\u30C9\u30EB\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u8AAD\u307F\u8FBC\u3093\u3067\u3044\u307E\u3059...",startingSynthesizer:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059...",savingSoundfont:"\u518D\u5229\u7528\u306E\u305F\u3081\u306B\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u4FDD\u5B58\u3057\u3066\u3044\u307E\u3059...",noWebAudio:"\u304A\u4F7F\u3044\u306E\u30D6\u30E9\u30A6\u30B6\u306FWeb Audio\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u305B\u3093\u3002",done:"\u6E96\u5099\u5B8C\u4E86\uFF01"},midiUploadButton:"MIDI\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9",exportAudio:Mw,demoSoundfontUploadButton:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9",demoGithubPage:"\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30DA\u30FC\u30B8",demoSongButton:"\u30C7\u30E2\u30BD\u30F3\u30B0",credits:"\u30AF\u30EA\u30A8\u30A4\u30BF\u30FC",warnings:{noMidiSupport:"\u3053\u306E\u30D6\u30E9\u30A6\u30B6\u306FMIDI\u5165\u529B\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u306A\u3044\u305F\u3081\u3001\u3053\u306E\u6A5F\u80FD\u306F\u5229\u7528\u3067\u304D\u307E\u305B\u3093\u3002Chrome\u307E\u305F\u306FFirefox\u3092\u4F7F\u7528\u3059\u308B\u3053\u3068\u3092\u691C\u8A0E\u3057\u3066\u304F\u3060\u3055\u3044\u3002",outOfMemory:`\u30D6\u30E9\u30A6\u30B6\u306E\u30E1\u30E2\u30EA\u304C\u4E0D\u8DB3\u3057\u307E\u3057\u305F\u3002Firefox\u3084SF3\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u306E\u4F7F\u7528\u3092\u691C\u8A0E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 + `;let m0=document.createElement("div");if(m0.classList.add("notification_content"),b)for(let[m1,x]of Object.entries(b))m0.style[m1]=x;I0.appendChild(m0);for(let m1 of r){let x=nw(m1,d);m1.onClick&&(x.onclick=()=>m1.onClick({div:I0,id:b0},x)),m0.appendChild(x)}g?I0.getElementsByClassName("close_btn")[0].onclick=()=>{X7(b0)}:I0.getElementsByClassName("close_btn")[0].style.display="none",setTimeout(()=>{I0.classList.add("drop")},75);let q0=setTimeout(()=>{X7(b0)},l*1e3+75);return document.getElementsByClassName("spessasynth_main")[0].appendChild(I0),xm[b0]={div:I0,timeout:q0},{div:I0,id:b0}}function X7(A){let r=xm[A].div;clearTimeout(xm[A].timeout),r.classList.remove("drop"),setTimeout(()=>r.parentElement.removeChild(r),500),xm[A]=void 0}function sw(A,r,l){A.createMIDIDeviceHandler().then(g=>{g?(this._createMidiInputHandler(A,l.synth),this._createMidiOutputHandler(A,r)):(Bn||U7(this.locale.getLocaleString("locale.warnings.warning"),[{type:"text",textContent:this.locale.getLocaleString("locale.warnings.noMidiSupport")}]),document.getElementById("midi_settings").style.display="none")})}function Aw(A,r){if(A.inputs.length<1)return;let l=this.htmlControls.midi.inputSelector;for(let g of A.inputs){let d=document.createElement("option");d.value=g[0],d.innerText=g[1].name,l.appendChild(d)}l.onchange=()=>{l.value==="-1"?A.disconnectAllDevicesFromSynth():A.connectDeviceToSynth(A.inputs.get(l.value),r),this._saveSettings()}}function ow(A,r){if(!A.outputs){setTimeout(()=>{this._createMidiOutputHandler(A,r)},1e3);return}if(A.outputs.length<1)return;let l=this.htmlControls.midi.outputSelector;for(let g of A.outputs){let d=document.createElement("option");d.value=g[0],d.innerText=g[1].name,l.appendChild(d)}l.onchange=()=>{r.seq&&(l.value==="-1"?A.disconnectSeqFromMIDI(r.seq):A.connectMIDIOutputToSeq(A.outputs.get(l.value),r.seq),this._saveSettings())}}var aw={title:"Renderer settings",noteFallingTime:{title:"Note falling time (miliseconds)",description:"How fast the notes fall (visually)"},waveformThickness:{title:"Waveform line thickness (px)",description:"How thick the waveform lines are"},waveformSampleSize:{title:"Waveform sample size",description:"How detailed the waveforms are (Note: high values might impact performance)"},waveformAmplifier:{title:"Waveform amplifier",description:"How vibrant the waveforms are"},toggleWaveformsRendering:{title:"Enable waveforms rendering",description:"Enable rendering the channel waveforms (colorful lines showing audio)"},toggleNotesRendering:{title:"Enable notes rendering",description:"Enable rendering of the falling notes when playing a MIDI file"},toggleDrawingActiveNotes:{title:"Enable drawing active notes",description:"Enable notes lighting up and glowing when they get pressed"},toggleDrawingVisualPitch:{title:"Enable drawing visual pitch",description:"Enable notes sliding left or right when the pitch wheel is applied"},toggleStabilizeWaveforms:{title:"Stabilize waveforms",description:"Enable oscilloscope triggering"}};var $w={title:"Keyboard settings",selectedChannel:{title:"Selected channel",description:"The channel keyboard sends messages to",channelOption:"Channel {0}"},keyboardSize:{title:"Keyboard size",description:"The range of keys shown on the keyboard. Adjusts the MIDI note size accordingly",full:"128 keys (full)",piano:"88 keys (piano)",fiveOctaves:"5 octaves",useSongKeyRange:"Use song's key range"},toggleTheme:{title:"Use dark theme",description:"Use the dark keyboard theme"}};var lw={title:"MIDI settings",midiInput:{title:"MIDI input",description:"The port to listen on for MIDI messages",disabled:"Disabled"},midiOutput:{title:"MIDI output",description:"The port to play the MIDI file to",disabled:"Use SpessaSynth"}};var cw={toggleButton:"Settings",mainTitle:"Program settings",rendererSettings:aw,keyboardSettings:$w,midiSettings:lw,interfaceSettings:{title:"Interface settings",toggleTheme:{title:"Use dark theme",description:"Enable the dark theme for the interface"},selectLanguage:{title:"Language",description:"Change the program language"},layoutDirection:{title:"Layout direction",description:"The layout direction of the renderer and keyboard",values:{downwards:"Downwards",upwards:"Upwards",leftToRight:"Left to right",rightToLeft:"Right to left"}}}};var gw={toggleButton:{title:"Toggle music player mode",description:"Toggle the simplified UI version, hiding the keyboard and note visualizations"},currentlyPlaying:"Currently playing:",nothingPlaying:"Nothing is playing",nothingPlayingCopyright:"Upload a MIDI!"};var hw={voiceMeter:{title:"Voices: ",description:"The current amount of voices playing on channel {0}"},pitchBendMeter:{title:"Pitch: ",description:"The current pitch bend applied to channel {0}"},panMeter:{title:"Pan: ",description:"The current stereo panning applied to channel {0} (right-click to lock)"},expressionMeter:{title:"Expression: ",description:"The current expression (loudness) of channel {0} (right-click to lock)"},volumeMeter:{title:"Volume: ",description:"The current volume of channel {0} (right-click to lock)"},modulationWheelMeter:{title:"Mod wheel: ",description:"The current modulation (usually vibrato) depth of channel {0} (right-click to lock)"},chorusMeter:{title:"Chorus: ",description:"The current level of chorus effect applied to channel {0} (right-click to lock)"},reverbMeter:{title:"Reverb: ",description:"The current level of reverb effect applied to channel {0} (right-click to lock)"},transposeMeter:{title:"Transpose: ",description:"The current transposition (key shift) of channel {0}"},presetSelector:{description:"Change the patch (instrument) channel {0} is using"},presetReset:{description:"Unlock channel {0} to allow program changes"},soloButton:{description:"Solo on channel {0}"},muteButton:{description:"Mute/unmute channel {0}"},drumToggleButton:{description:"Toggle drums on channel {0}"}};var fw={toggleButton:{title:"Synthesizer controller",description:"Show the synthesizer controller"},mainVoiceMeter:{title:"Voices: ",description:"The total amount of voices currently playing"},mainVolumeMeter:{title:"Volume: ",description:"The current master volume of the synthesizer"},mainPanMeter:{title:"Pan: ",description:"The current master stereo panning of the synthesizer"},mainTransposeMeter:{title:"Transpose: ",description:"Transposes the synthesizer (in semitones or keys)"},midiPanic:{title:"MIDI Panic",description:"Stops all voices immediately"},systemReset:{title:"System reset",description:"Resets all controllers to their default values"},blackMidiMode:{title:"Black MIDI mode",description:"Toggles the High Performance Mode, simplifying the look and killing the notes faster"},disableCustomVibrato:{title:"Disable custom vibrato",description:"Disables the custom (NRPN) Vibrato permamently. Reload the website to reenable it"},helpButton:{title:"Help",description:"Opens an external website with the usage guide"},channelController:hw};var uw={previousSong:"Previous song",nextSong:"Next song",loopThis:"Loop this song",playPause:"Play/pause",lyrics:{show:"Show lyrics",title:"Decoded text",noLyrics:"No lyrics available...",otherText:{title:"Other text"}}};var Iw={button:{title:"Save audio",description:"Save audio as WAV, MIDI, SF2 or RMI file"},formats:{title:"Choose format",formats:{wav:{button:{title:"WAV audio (.wav)",description:"Export the song with modifications as a .wav audio file"},options:{title:"WAV export options",confirm:"Export",normalizeVolume:{title:"Normalize volume",description:"Keep the volume at the same level, no matter how loud or quiet the MIDI is. Recommended."},additionalTime:{title:"Additional time (s)",description:"Additional time at the end of the song to allow for the sound to fade. (seconds)"},separateChannels:{title:"Separate channels",description:"Save each channel as a separate file. Useful for things like oscilloscope viewers. Note that this disables reverb and chorus.",saving:{title:"Channel files",save:"Save channel {0}"}}},exportMessage:{message:"Exporting WAV audio...",estimated:"Remaining:",convertWav:"Converting to wav..."}},midi:{button:{title:"MIDI (.mid)",description:"Export the MIDI file with the controller and instrument changes applied"}},soundfont:{button:{title:"SoundFont (.sf2)",description:"Export a SoundFont2 file"},options:{title:"SF export options",confirm:"Export",trim:{title:"Trim",description:"Export the soundfont trimmed to only use instruments and samples that the MIDI file uses"},compress:{title:"Compress",description:"Compress samples with lossy Ogg Vorbis compression if uncompressed. Significantly reduces the file size.If the soundfont was already compressed, it won't be uncompressed even if this option is disabled"},quality:{title:"Compression quality",description:"The quality of compression. Higher is better"}}},rmidi:{button:{title:"Embedded MIDI (.rmi)",description:"Export the modified MIDI with the embedded trimmed soundfont as a single file. Note that this format isn't widely supported"},progress:{title:"Exporting embeded MIDI...",loading:"Loading Soundfont and MIDI...",modifyingMIDI:"Modifying MIDI...",modifyingSoundfont:"Trimming Soundfont...",saving:"Saving RMIDI...",done:"Done!"},options:{title:"RMIDI export options",confirm:"Export",compress:{title:"Compress",description:"Compress the Soundfont with lossy Ogg Vorbis compression. Significantly reduces the file size. Recommended."},quality:{title:"Compression quality",description:"The quality of compression. Higher is better."},bankOffset:{title:"Bank offset",description:"The bank offset of the file. Value of 0 is recommended. Only change if you know what you're doing."},adjust:{title:"Adjust MIDI",description:"Adjusts the MIDI file to the SoundFont. Leave this on unless you know what you're doing."}}}},metadata:{songTitle:{title:"Title:",description:"The song's title"},album:{title:"Album:",description:"The song's album"},artist:{title:"Artist:",description:"The song's artist"},albumCover:{title:"Album cover:",description:"The song's album cover"},creationDate:{title:"Created:",description:"The song's creation date"},genre:{title:"Genre:",description:"The song's genre"},comment:{title:"Comment:",description:"The song's comment"},duration:{title:"Duration:",description:"The song's duration"}}}};var dw={localeName:"English",titleMessage:"SpessaSynth: SoundFont2 Javascript Synthesizer",demoTitleMessage:"SpessaSynth: SoundFont2 Javascript Synthesizer Online Demo",synthInit:{genericLoading:"Loading...",loadingSoundfont:"Loading SoundFont...",loadingBundledSoundfont:"Loading bundled SoundFont...",startingSynthesizer:"Starting Synthesizer...",savingSoundfont:"Saving SoundFont for reuse...",noWebAudio:"Your browser does not support Web Audio.",done:"Ready!"},midiUploadButton:"Upload your MIDI files",exportAudio:Iw,demoSoundfontUploadButton:"Upload the soundfont",demoGithubPage:"Project's page",demoSongButton:"Demo Song",credits:"Credits",warnings:{outOfMemory:"Your browser ran out of memory. Consider using Firefox or SF3 soundfont instead. (see console for error).",noMidiSupport:"No MIDI ports detected, this functionality will be disabled.",chromeMobile:"SpessaSynth performs poorly on Chrome Mobile. Consider using Firefox Android instead.",warning:"Warning"},hideTopBar:{title:"Hide top bar",description:"Hide the top (title) bar to provide a more seamless experience"},musicPlayerMode:gw,settings:cw,synthesizerController:fw,sequencerController:uw};var Ew={title:"Ustawienia wizualizacji",noteFallingTime:{title:"Czas spadania nut (ms)",description:"Jak szybko spadaj\u0105 z g\xF3ry nuty (w milisekundach)"},waveformThickness:{title:"Grubo\u015B\u0107 lini fal (px)",description:"Jak grube s\u0105 linie fal d\u017Awi\u0119kowych"},waveformSampleSize:{title:"Rozmiar pr\xF3bki fali",description:"Jak szczeg\xF3\u0142owe s\u0105 linei fal d\u017Awi\u0119kowcyh (Uwaga: wysokie warto\u015Bci mog\u0105 pogorszy\u0107 wydajno\u015B\u0107)"},waveformAmplifier:{title:"Wzmacniasz fal",description:"Jak '\u017Cywe' s\u0105 fale. Kontroluje ich amplitud\u0119"},toggleWaveformsRendering:{title:"W\u0142\u0105cz rysowanie fal",description:"W\u0142\u0105cz rysowanie fal d\u017Awi\u0119kowych (16-tu kolorowych linii z ty\u0142u)"},toggleNotesRendering:{title:"W\u0142\u0105cz rysowanie nut",description:"W\u0142\u0105cz rysowanie spadaj\u0105cych nut podczas odtwarzania pliku MIDI"},toggleDrawingActiveNotes:{title:"W\u0142\u0105cz rysowanie aktywnych nut",description:"W\u0142\u0105cz efekt pod\u015Bwietlania si\u0119 nut przy aktywacji"},toggleDrawingVisualPitch:{title:"W\u0142\u0105cz wizualizacj\u0119 wysoko\u015Bci tonu",description:"W\u0142\u0105cz przesuwanie nut w lewo lub w prawo gdy wysoko\u015B\u0107 nut jest zmieniana"},toggleStabilizeWaveforms:{title:"W\u0142\u0105cz stabilizacj\u0119 fal",description:"W\u0142\u0105cz stabilizowanie fal d\u017Awi\u0119kowych"}};var Cw={title:"Ustawienia pianina",selectedChannel:{title:"Wybrany kana\u0142",description:"Kana\u0142, do kt\xF3rego b\u0119dzie pod\u0142\u0105czone pianino",channelOption:"Kana\u0142 {0}"},keyboardSize:{title:"Rozmiar pianina",description:"Zakres klawiszy widocznych na pianine. Dostosowuje r\xF3wnie\u017C szeroko\u015B\u0107 wizualizowanych nut",full:"128 klawiszy (pe\u0142en zakres)",piano:"88 klawiszy (fortepian)",fiveOctaves:"5 oktaw",useSongKeyRange:"U\u017Cyj zakresu utworu"},toggleTheme:{title:"W\u0142\u0105cz ciemny motyw",description:"W\u0142\u0105cz ciemny motyw wbudowanego pianina"}};var mw={title:"Ustawienia MIDI",midiInput:{title:"Wej\u015Bcie MIDI",description:"Port MIDI, kt\xF3ry b\u0119dzie nas\u0142uchiwany",disabled:"Wy\u0142\u0105czony"},midiOutput:{title:"Wyj\u015Bcie MIDI",description:"Port MIDI, do kt\xF3rego b\u0119dzie grany utw\xF3r",disabled:"U\u017Cyj SpessaSynth"}};var Bw={toggleButton:"Ustawienia",mainTitle:"Ustawienia programu",rendererSettings:Ew,keyboardSettings:Cw,midiSettings:mw,interfaceSettings:{title:"Ustawienia interfejsu",toggleTheme:{title:"W\u0142\u0105cz ciemny motyw",description:"W\u0142\u0105cz ciemny motyw programu"},selectLanguage:{title:"J\u0119zyk",description:"Zmie\u0144 j\u0119zyk programu"},layoutDirection:{title:"Uk\u0142ad",description:"Kierunek uk\u0142adu wizualizacji i pianina",values:{downwards:"W d\xF3\u0142",upwards:"W g\xF3r\u0119",leftToRight:"Od lewej do prawej",rightToLeft:"Od prawej do lewej"}}}};var pw={toggleButton:{title:"Prze\u0142\u0105cz tryb odtwarzania muzyki",description:"Prze\u0142\u0105cz uproszczon\u0105 wersj\u0119 interfejsu, ukrywaj\u0105c pianino i wizualizacj\u0119 nut"},currentlyPlaying:"Teraz gramy:",nothingPlaying:"Nic teraz nie gra",nothingPlayingCopyright:"Wgraj jakie\u015B MIDI!"};var Qw={voiceMeter:{title:"D\u017Awi\u0119ki: ",description:"Aktualna ilo\u015B\u0107 d\u017Awi\u0119k\xF3w na kanale {0}"},pitchBendMeter:{title:"Wysoko\u015B\u0107: ",description:"Aktualna wysoko\u015B\u0107 tonu na kanale {0}"},panMeter:{title:"Stereo: ",description:"Aktualny efekt stereo na kanale {0} (kliknij prawym aby zablokowa\u0107)"},expressionMeter:{title:"Ekspresja: ",description:"Aktualna ekspresja (g\u0142o\u015Bno\u015Bc) kana\u0142u {0} (kliknij prawym aby zablokowa\u0107)"},volumeMeter:{title:"G\u0142o\u015Bno\u015B\u0107: ",description:"Aktualna g\u0142o\u015Bno\u015B\u0107 kana\u0142u {0} (kliknij prawym aby zablokowa\u0107)"},modulationWheelMeter:{title:"Modulacja: ",description:"Aktualna g\u0142\u0119boko\u015B\u0107 modulacji (zazwyczaj vibrato) kana\u0142u {0} (kliknij prawym aby zablokowa\u0107)"},chorusMeter:{title:"Ch\xF3r: ",description:"Aktualny efekt ch\xF3ru na kanale {0} (kliknij prawym aby zablokowa\u0107)"},reverbMeter:{title:"Pog\u0142os: ",description:"Aktualny efekt pog\u0142osu na kanale {0} (kliknij prawym aby zablokowa\u0107)"},transposeMeter:{title:"Transpozycja: ",description:"Aktualna transpozycja (przesuni\u0119cie klawiszy) kana\u0142u {0}"},presetSelector:{description:"Zmie\u0144 patch (instrument), kt\xF3rego u\u017Cywa kana\u0142 {0}"},presetReset:{description:"Odblokuj kana\u0142 {0}, aby program m\xF3g\u0142 go zmienia\u0107"},soloButton:{description:"Solo na kanale {0}"},muteButton:{description:"Wycisz/odcisz kana\u0142 {0}"},drumToggleButton:{description:"Prze\u0142\u0105cz perkusj\u0119 na kanale {0}"}};var yw={toggleButton:{title:"Kontroler syntezatora",description:"Poka\u017C kontroler syntezatora"},mainVoiceMeter:{title:"D\u017Awi\u0119ki: ",description:"Ca\u0142kowita ilo\u015B\u0107 aktualnie odtwarzanych d\u017Awi\u0119k\xF3w"},mainVolumeMeter:{title:"G\u0142o\u015Bno\u015B\u0107: ",description:"Aktualna g\u0142o\u015Bno\u015B\u0107 syntezatora"},mainPanMeter:{title:"Stereo: ",description:"Aktualna pozycja stereo syntezatora"},mainTransposeMeter:{title:"Transpozycja: ",description:"Transpozycjonuje syntezator (w semitonach)"},midiPanic:{title:"MIDI Panic",description:"Zatrzymuje wszystkie d\u017Awi\u0119ki"},systemReset:{title:"Reset systemu",description:"Resetuje wszystkie kontroleru do ich domy\u015Blnych warto\u015Bci"},blackMidiMode:{title:"Tryb black MIDI",description:"Prze\u0142\u0105cza tryb wysokiej wydajno\u015Bci, upraszczaj\u0105c wygl\u0105d i pogarszaj\u0105c jako\u015B\u0107 d\u017Awi\u0119ku"},disableCustomVibrato:{title:"Wy\u0142\u0105cz niestandardowe vibrato",description:"Wy\u0142\u0105cza niestandardowe (NRPN) vibrato. Wymaga prze\u0142adowania strony aby je ponownie w\u0142\u0105czy\u0107"},helpButton:{title:"Pomoc",description:"Poka\u017C instrukcj\u0119 obs\u0142ugi"},channelController:Qw};var ww={previousSong:"Poprzedni utw\xF3r",nextSong:"Nast\u0119pny utw\xF3r",loopThis:"Odtwarzaj w p\u0119tli",playPause:"Odtw\xF3rz/wstrzymaj",lyrics:{show:"Poka\u017C tekst",title:"Odczytany tekst",noLyrics:"Brak dost\u0119pnego tekstu...",otherText:{title:"Inny tekst"}}};var kw={button:{title:"Zapisz utw\xF3r",description:"Zapisz utw\xF3r jako plik WAV, MIDI, SF2 lub RMI"},formats:{title:"Wybierz format",formats:{wav:{button:{title:"Audio WAV (.wav)",description:"Eksportuj utw\xF3r ze zmianami jako plik audio .wav"},options:{title:"Opcje eksportu audio",confirm:"Eksportuj",normalizeVolume:{title:"Normalizuj g\u0142o\u015Bno\u015B\u0107",description:"Eksportuj audio z tak\u0105 sam\u0105 g\u0142o\u015Bno\u015Bci\u0105, niezale\u017Cnie od g\u0142o\u015Bno\u015Bci MIDI."},additionalTime:{title:"Dodatkowy czas (s)",description:"Dodatkowy czas na ko\u0144cu utworu aby pozwoli\u0107 na wyciszenie si\u0119 d\u017Awi\u0119ku. (sekundy)"},separateChannels:{title:"Rozdziel kana\u0142y",description:"Zapisz ka\u017Cdy kana\u0142 w osobnym pliuku. Przydatne dla rzeczy jak widok oscyloskopowy. Nale\u017Cy pami\u0119ta\u0107 \u017Ce to wy\u0142\u0105cza ekfet pog\u0142osu i ch\xF3ru",saving:{title:"Pliki audio kana\u0142\xF3w",save:"Zapisz kana\u0142 {0}"}}},exportMessage:{message:"Eksportowanie audio...",estimated:"Pozosta\u0142o:",convertWav:"Konwertowanie do wav..."}},midi:{button:{title:"MIDI (.mid)",description:"Eksportuj plik MIDI wraz ze zmianami instrument\xF3w i kontroler\xF3w"}},soundfont:{button:{title:"SoundFont (.sf2)",description:"Eksportuj SoundFont"},options:{title:"Opcje eksportu soundfonta",confirm:"Eksportuj",trim:{title:"Zmniejsz",description:"Zmniejsz SoundFont aby zawiera\u0142 tylko klawisze u\u017Cyte w MIDI"},compress:{title:"Kompresuj",description:"Zkompresuj pr\xF3bki kt\xF3re nie s\u0105 zkompresowane przy u\u017Cyciu stratnego kodeka Ogg Vorbis. Znacznie zmniejsza rozmiar pliku.Je\u015Bli soundfont by\u0142 ju\u017C skompresowany, nie zostanie zdekompresowany nawet gdy ta opcja jest wy\u0142\u0105czona"},quality:{title:"Jako\u015B\u0107 kompresji",description:"Jako\u015B\u0107 skompresowanych pr\xF3bek. Im wy\u017Csza tym lepsza"}}},rmidi:{button:{title:"Osadzone MIDI (.rmi)",description:"Eksportuj zmodyfikowane MIDI wraz ze zmniejszonym soundfontem jako jeden plik. Uwaga: ten format nie jest szeroko wspierany"},progress:{title:"Exportowanie osadzonego MIDI...",loading:"Wczytywanie soundfonta i MIDI...",modifyingMIDI:"Modyfikowanie MIDI...",modifyingSoundfont:"Zmniejszanie Soundfonta...",saving:"Zapisywanie RMIDI...",done:"Gotowe!"},options:{title:"Opcje eksportu RMIDI",confirm:"Eksportuj",compress:{title:"Kompresuj",description:"Skompresuj osadzonego soundfonta za pomoc\u0105 stratnego kodeka Ogg Vorbis. Znacznie zmniejsza rozmiar pliku. Zalecane."},quality:{title:"Jako\u015B\u0107 kompresji",description:"Jako\u015B\u0107 skompresowanych pr\xF3bek. Im wy\u017Csza tym lepsza"},bankOffset:{title:"Przesuni\u0119cie banku",description:"Przesuni\u0119cie banku w pliku. Zalecane 0. Zmie\u0144 tylko je\u015Bli wiesz co robisz."},adjust:{title:"Adjust MIDI",description:"Adjusts the MIDI file to the SoundFont. Leave this on unless you know what you're doing."}}}},metadata:{songTitle:{title:"Tytu\u0142:",description:"Tytu\u0142 utworu"},album:{title:"Album:",description:"Album utworu"},artist:{title:"Tw\xF3rca:",description:"Tw\xF3rca utworu"},albumCover:{title:"Ok\u0142adka albumu:",description:"Ok\u0142adka albumu utworu"},creationDate:{title:"Stworzono:",description:"Data stworzenia utworu"},genre:{title:"Gatunek:",description:"Gatunek utworu"},comment:{title:"Komentarz:",description:"Komentarz do utworu"},duration:{title:"Czas trwania:",description:"Czas trwania utworu"}}}};var vw={localeName:"Polski",titleMessage:"SpessaSynth: JavaScriptowy Syntezator SoundFont2",demoTitleMessage:"SpessaSynth: JavaScriptowy Syntezator SoundFont2 Wersja Demo",synthInit:{genericLoading:"Wczytywanie...",loadingSoundfont:"Wczytywanie SoundFonta...",loadingBundledSoundfont:"Wczytywanie wbudowanego SoundFonta...",startingSynthesizer:"Uruchamianie syntezatora...",savingSoundfont:"Zapisywanie SoundFonta do przegl\u0105darki...",noWebAudio:"Twoja przegl\u0105darka nie wspiera Web Audio.",done:"Gotowe!"},midiUploadButton:"Wgraj Twoje pliki MIDI",midiRenderButton:{title:"Eksportuj audio",description:"Zapisz audio do pliku WAV lub MIDI"},exportAudio:kw,demoSoundfontUploadButton:"Wgraj SoundFonta",demoGithubPage:"Strona projektu",demoSongButton:"Piosenka demo",credits:"Tw\xF3rcy",warnings:{outOfMemory:"Twojej przegl\u0105darce sko\u0144czy\u0142a si\u0119 pami\u0119\u0107. Rozwa\u017C u\u017Cycie Firefoxa albo plik\xF3w SF3. (Zobacz b\u0142\u0105d w konsoli)",noMidiSupport:"Nie wykryto MIDI. Korzystanie z port\xF3w MIDI nie b\u0119dzie dost\u0119pne.",chromeMobile:"SpessaSynth dzia\u0142a wolno na Chromie na telefon. Rozwa\u017C u\u017Cycie Firefoxa Android.",warning:"Uwaga"},hideTopBar:{title:"Ukryj g\xF3rny pasek",description:"Ukryj pasek tytu\u0142owy w celu poprawy widoczno\u015Bci na pionowych ekranach"},musicPlayerMode:pw,settings:Bw,synthesizerController:yw,sequencerController:ww};var Sw={title:"\u30EC\u30F3\u30C0\u30E9\u30FC\u8A2D\u5B9A",noteFallingTime:{title:"\u30CE\u30FC\u30C8\u306E\u843D\u4E0B\u6642\u9593\uFF08\u30DF\u30EA\u79D2\uFF09",description:"\u30CE\u30FC\u30C8\u304C\u843D\u3061\u308B\u901F\u3055\uFF08\u8996\u899A\u7684\u306B\uFF09"},waveformThickness:{title:"\u6CE2\u5F62\u306E\u7DDA\u306E\u592A\u3055\uFF08\u30D4\u30AF\u30BB\u30EB\uFF09",description:"\u6CE2\u5F62\u306E\u7DDA\u306E\u592A\u3055"},waveformSampleSize:{title:"\u6CE2\u5F62\u306E\u30B5\u30F3\u30D7\u30EB\u30B5\u30A4\u30BA",description:"\u6CE2\u5F62\u306E\u8A73\u7D30\u5EA6\uFF08\u6CE8\uFF1A\u9AD8\u3044\u5024\u306F\u30D1\u30D5\u30A9\u30FC\u30DE\u30F3\u30B9\u306B\u5F71\u97FF\u3092\u4E0E\u3048\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\uFF09"},waveformAmplifier:{title:"\u6CE2\u5F62\u306E\u5897\u5E45\u5668",description:"\u6CE2\u5F62\u306E\u9BAE\u3084\u304B\u3055"},toggleWaveformsRendering:{title:"\u6CE2\u5F62\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u306E\u5207\u308A\u66FF\u3048",description:"\u30C1\u30E3\u30F3\u30CD\u30EB\u6CE2\u5F62\u306E\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u3092\u5207\u308A\u66FF\u3048\u307E\u3059\uFF08\u30AA\u30FC\u30C7\u30A3\u30AA\u3092\u8868\u793A\u3059\u308B\u30AB\u30E9\u30D5\u30EB\u306A\u7DDA\uFF09"},toggleNotesRendering:{title:"\u30CE\u30FC\u30C8\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u306E\u5207\u308A\u66FF\u3048",description:"MIDI\u30D5\u30A1\u30A4\u30EB\u3092\u518D\u751F\u3059\u308B\u969B\u306E\u843D\u4E0B\u30CE\u30FC\u30C8\u306E\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},toggleDrawingActiveNotes:{title:"\u30A2\u30AF\u30C6\u30A3\u30D6\u30CE\u30FC\u30C8\u306E\u63CF\u753B\u3092\u5207\u308A\u66FF\u3048",description:"\u30CE\u30FC\u30C8\u304C\u62BC\u3055\u308C\u305F\u3068\u304D\u306B\u5149\u308A\u8F1D\u304F\u63CF\u753B\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},toggleDrawingVisualPitch:{title:"\u30D3\u30B8\u30E5\u30A2\u30EB\u30D4\u30C3\u30C1\u63CF\u753B\u306E\u5207\u308A\u66FF\u3048",description:"\u30D4\u30C3\u30C1\u30DB\u30A4\u30FC\u30EB\u304C\u9069\u7528\u3055\u308C\u305F\u3068\u304D\u306B\u30CE\u30FC\u30C8\u304C\u5DE6\u53F3\u306B\u30B9\u30E9\u30A4\u30C9\u3059\u308B\u63CF\u753B\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},toggleStabilizeWaveforms:{title:"\u6CE2\u5F62\u3092\u5B89\u5B9A\u3055\u305B\u308B",description:"\u30AA\u30FC\u30C7\u30A3\u30AA\u6CE2\u5F62\u3092\u5B89\u5B9A\u3055\u305B\u308B\u8A2D\u5B9A\u3092\u5207\u308A\u66FF\u3048\u3001\u6CE2\u5F62\u3092\u56FA\u5B9A\u3057\u307E\u3059\u3002"}};var Dw={title:"\u30AD\u30FC\u30DC\u30FC\u30C9\u8A2D\u5B9A",selectedChannel:{title:"\u9078\u629E\u3055\u308C\u305F\u30C1\u30E3\u30F3\u30CD\u30EB",description:"\u30AD\u30FC\u30DC\u30FC\u30C9\u304C\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u9001\u4FE1\u3059\u308B\u30C1\u30E3\u30F3\u30CD\u30EB",channelOption:"\u30C1\u30E3\u30F3\u30CD\u30EB {0}"},keyboardSize:{title:"\u30AD\u30FC\u30DC\u30FC\u30C9\u30B5\u30A4\u30BA",description:"\u30AD\u30FC\u30DC\u30FC\u30C9\u306B\u8868\u793A\u3055\u308C\u308B\u30AD\u30FC\u306E\u7BC4\u56F2\u3002MIDI\u30CE\u30FC\u30C8\u306E\u30B5\u30A4\u30BA\u306B\u5FDC\u3058\u3066\u8ABF\u6574\u3055\u308C\u307E\u3059",full:"128\u30AD\u30FC\uFF08\u5168\u4F53\uFF09",piano:"88\u30AD\u30FC\uFF08\u30D4\u30A2\u30CE\uFF09",fiveOctaves:"5\u30AA\u30AF\u30BF\u30FC\u30D6",useSongKeyRange:"\u66F2\u306E\u30AD\u30FC\u7BC4\u56F2\u3092\u4F7F\u7528"},toggleTheme:{title:"\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048",description:"\u30AD\u30FC\u30DC\u30FC\u30C9\u306E\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"}};var bw={title:"MIDI\u8A2D\u5B9A",midiInput:{title:"MIDI\u5165\u529B",description:"MIDI\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u53D7\u4FE1\u3059\u308B\u30DD\u30FC\u30C8",disabled:"\u7121\u52B9"},midiOutput:{title:"MIDI\u51FA\u529B",description:"MIDI\u30D5\u30A1\u30A4\u30EB\u3092\u518D\u751F\u3059\u308B\u30DD\u30FC\u30C8",disabled:"SpessaSynth\u3092\u4F7F\u7528"}};var _w={toggleButton:"\u8A2D\u5B9A",mainTitle:"\u30D7\u30ED\u30B0\u30E9\u30E0\u8A2D\u5B9A",rendererSettings:Sw,keyboardSettings:Dw,midiSettings:bw,interfaceSettings:{title:"\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u8A2D\u5B9A",toggleTheme:{title:"\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048",description:"\u30D7\u30ED\u30B0\u30E9\u30E0\u306E\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},selectLanguage:{title:"\u8A00\u8A9E",description:"\u30D7\u30ED\u30B0\u30E9\u30E0\u306E\u8A00\u8A9E\u3092\u5909\u66F4\u3057\u307E\u3059"},layoutDirection:{title:"\u30EC\u30A4\u30A2\u30A6\u30C8\u306E\u65B9\u5411",description:"\u30EC\u30F3\u30C0\u30E9\u30FC\u3068\u30AD\u30FC\u30DC\u30FC\u30C9\u306E\u30EC\u30A4\u30A2\u30A6\u30C8\u65B9\u5411",values:{downwards:"\u4E0B\u5411\u304D",upwards:"\u4E0A\u5411\u304D",leftToRight:"\u5DE6\u304B\u3089\u53F3",rightToLeft:"\u53F3\u304B\u3089\u5DE6"}}}};var Rw={toggleButton:{title:"\u97F3\u697D\u30D7\u30EC\u30A4\u30E4\u30FC\u30E2\u30FC\u30C9\u306E\u5207\u308A\u66FF\u3048",description:"\u7C21\u7565\u5316\u3055\u308C\u305FUI\u30D0\u30FC\u30B8\u30E7\u30F3\u306B\u5207\u308A\u66FF\u3048\u3001\u30AD\u30FC\u30DC\u30FC\u30C9\u3068\u30CE\u30FC\u30C8\u306E\u8996\u899A\u5316\u3092\u96A0\u3057\u307E\u3059"},currentlyPlaying:"\u518D\u751F\u4E2D:",nothingPlaying:"\u518D\u751F\u3057\u3066\u3044\u308B\u3082\u306E\u306F\u3042\u308A\u307E\u305B\u3093",nothingPlayingCopyright:"MIDI\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3057\u3066\u304F\u3060\u3055\u3044\uFF01"};var xw={voiceMeter:{title:"\u30DC\u30A4\u30B9: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3067\u518D\u751F\u4E2D\u306E\u30DC\u30A4\u30B9\u306E\u73FE\u5728\u306E\u6570"},pitchBendMeter:{title:"\u30D4\u30C3\u30C1: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30D4\u30C3\u30C1\u30D9\u30F3\u30C9"},panMeter:{title:"\u30D1\u30F3: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30B9\u30C6\u30EC\u30AA\u30D1\u30F3\u30CB\u30F3\u30B0\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},expressionMeter:{title:"\u30A8\u30AF\u30B9\u30D7\u30EC\u30C3\u30B7\u30E7\u30F3: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u8868\u73FE\uFF08\u97F3\u91CF\uFF09\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},volumeMeter:{title:"\u30DC\u30EA\u30E5\u30FC\u30E0: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u97F3\u91CF\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},modulationWheelMeter:{title:"\u30E2\u30B8\u30E5\u30EC\u30FC\u30B7\u30E7\u30F3\u30DB\u30A4\u30FC\u30EB: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u30E2\u30B8\u30E5\u30EC\u30FC\u30B7\u30E7\u30F3\uFF08\u901A\u5E38\u306F\u30D3\u30D6\u30E9\u30FC\u30C8\uFF09\u306E\u6DF1\u3055\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},chorusMeter:{title:"\u30B3\u30FC\u30E9\u30B9: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30B3\u30FC\u30E9\u30B9\u30A8\u30D5\u30A7\u30AF\u30C8\u306E\u30EC\u30D9\u30EB\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},reverbMeter:{title:"\u30EA\u30D0\u30FC\u30D6: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30EA\u30D0\u30FC\u30D6\u30A8\u30D5\u30A7\u30AF\u30C8\u306E\u30EC\u30D9\u30EB\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},transposeMeter:{title:"\u30C8\u30E9\u30F3\u30B9\u30DD\u30FC\u30BA: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u79FB\u8ABF\uFF08\u30AD\u30FC\u30B7\u30D5\u30C8\uFF09"},presetSelector:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u304C\u4F7F\u7528\u3059\u308B\u30D1\u30C3\u30C1\uFF08\u697D\u5668\uFF09\u3092\u5909\u66F4"},presetReset:{description:"\u30D7\u30ED\u30B0\u30E9\u30E0\u5909\u66F4\u3092\u8A31\u53EF\u3059\u308B\u305F\u3081\u306B\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u30ED\u30C3\u30AF\u3092\u89E3\u9664"},soloButton:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3092\u5358\u72EC\u518D\u751F"},muteButton:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3092\u30DF\u30E5\u30FC\u30C8/\u30DF\u30E5\u30FC\u30C8\u89E3\u9664"},drumToggleButton:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3067\u30C9\u30E9\u30E0\u3092\u5207\u308A\u66FF\u3048"}};var Fw={toggleButton:{title:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC\u3092\u8868\u793A"},mainVoiceMeter:{title:"\u30DC\u30A4\u30B9: ",description:"\u73FE\u5728\u518D\u751F\u4E2D\u306E\u30DC\u30A4\u30B9\u306E\u7DCF\u6570"},mainVolumeMeter:{title:"\u30DC\u30EA\u30E5\u30FC\u30E0: ",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u306E\u73FE\u5728\u306E\u30DE\u30B9\u30BF\u30FC\u30DC\u30EA\u30E5\u30FC\u30E0"},mainPanMeter:{title:"\u30D1\u30F3: ",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u306E\u73FE\u5728\u306E\u30DE\u30B9\u30BF\u30FC\u30B9\u30C6\u30EC\u30AA\u30D1\u30F3\u30CB\u30F3\u30B0"},mainTransposeMeter:{title:"\u30C8\u30E9\u30F3\u30B9\u30DD\u30FC\u30BA: ",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u3092\u79FB\u8ABF\u3057\u307E\u3059\uFF08\u30BB\u30DF\u30C8\u30FC\u30F3\u307E\u305F\u306F\u30AD\u30FC\uFF09"},midiPanic:{title:"MIDI\u30D1\u30CB\u30C3\u30AF",description:"\u3059\u3079\u3066\u306E\u30DC\u30A4\u30B9\u3092\u5373\u5EA7\u306B\u505C\u6B62"},systemReset:{title:"\u30B7\u30B9\u30C6\u30E0\u30EA\u30BB\u30C3\u30C8",description:"\u3059\u3079\u3066\u306E\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC\u3092\u30C7\u30D5\u30A9\u30EB\u30C8\u5024\u306B\u30EA\u30BB\u30C3\u30C8"},blackMidiMode:{title:"\u30D6\u30E9\u30C3\u30AFMIDI\u30E2\u30FC\u30C9",description:"\u9AD8\u6027\u80FD\u30E2\u30FC\u30C9\u3092\u5207\u308A\u66FF\u3048\u3001\u898B\u305F\u76EE\u3092\u7C21\u7D20\u5316\u3057\u3001\u30CE\u30FC\u30C8\u3092\u901F\u304F\u6D88\u53BB"},disableCustomVibrato:{title:"\u30AB\u30B9\u30BF\u30E0\u30D3\u30D6\u30E9\u30FC\u30C8\u3092\u7121\u52B9\u5316",description:"\u30AB\u30B9\u30BF\u30E0\uFF08NRPN\uFF09\u30D3\u30D6\u30E9\u30FC\u30C8\u3092\u6C38\u4E45\u306B\u7121\u52B9\u5316\u3002\u518D\u5EA6\u6709\u52B9\u5316\u3059\u308B\u306B\u306F\u30A6\u30A7\u30D6\u30B5\u30A4\u30C8\u3092\u30EA\u30ED\u30FC\u30C9"},helpButton:{title:"\u30D8\u30EB\u30D7",description:"\u4F7F\u7528\u30AC\u30A4\u30C9\u3092\u8868\u793A\u3057\u307E\u3059"},channelController:xw};var Lw={previousSong:"\u524D\u306E\u66F2",nextSong:"\u6B21\u306E\u66F2",loopThis:"\u3053\u306E\u66F2\u3092\u30EB\u30FC\u30D7",playPause:"\u518D\u751F/\u4E00\u6642\u505C\u6B62",lyrics:{show:"\u6B4C\u8A5E\u3092\u8868\u793A",title:"\u30C7\u30B3\u30FC\u30C9\u3055\u308C\u305F\u30C6\u30AD\u30B9\u30C8",noLyrics:"\u6B4C\u8A5E\u304C\u3042\u308A\u307E\u305B\u3093...",otherText:{title:"\u305D\u306E\u4ED6\u306E\u30C6\u30AD\u30B9\u30C8"}}};var Mw={button:{title:"\u97F3\u58F0\u3092\u4FDD\u5B58",description:"\u97F3\u58F0\u3092WAV\u3001MIDI\u3001SF2\u3001\u307E\u305F\u306FRMI\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u4FDD\u5B58"},formats:{title:"\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u3092\u9078\u629E",formats:{wav:{button:{title:"WAV\u97F3\u58F0",description:"\u5909\u66F4\u3092\u52A0\u3048\u305F\u66F2\u3092.wav\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059"},options:{title:"\u97F3\u58F0\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3",confirm:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",normalizeVolume:{title:"\u97F3\u91CF\u306E\u6B63\u898F\u5316",description:"MIDI\u306E\u97F3\u91CF\u306B\u304B\u304B\u308F\u3089\u305A\u3001\u97F3\u91CF\u3092\u4E00\u5B9A\u306B\u4FDD\u3061\u307E\u3059\u3002\u63A8\u5968\u8A2D\u5B9A\u3067\u3059\u3002"},additionalTime:{title:"\u8FFD\u52A0\u6642\u9593\uFF08\u79D2\uFF09",description:"\u97F3\u304C\u30D5\u30A7\u30FC\u30C9\u30A2\u30A6\u30C8\u3059\u308B\u305F\u3081\u306B\u66F2\u306E\u6700\u5F8C\u306B\u8FFD\u52A0\u3059\u308B\u6642\u9593\u3067\u3059\u3002 (\u79D2)"},separateChannels:{title:"\u30C1\u30E3\u30F3\u30CD\u30EB\u3092\u5206\u5272",description:"\u5404\u30C1\u30E3\u30F3\u30CD\u30EB\u3092\u5225\u3005\u306E\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u4FDD\u5B58\u3057\u307E\u3059\u3002\u30AA\u30B7\u30ED\u30B9\u30B3\u30FC\u30D7\u30D3\u30E5\u30FC\u30A2\u306A\u3069\u306B\u4FBF\u5229\u3067\u3059\u3002\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u4F7F\u7528\u3059\u308B\u3068\u30EA\u30D0\u30FC\u30D6\u3084\u30B3\u30FC\u30E9\u30B9\u304C\u7121\u52B9\u306B\u306A\u308A\u307E\u3059\u3002",saving:{title:"\u30C1\u30E3\u30F3\u30CD\u30EB\u30D5\u30A1\u30A4\u30EB",save:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3092\u4FDD\u5B58"}}},exportMessage:{message:"\u97F3\u58F0\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u3059...",estimated:"\u6B8B\u308A\u6642\u9593:",convertWav:"WAV\u306B\u5909\u63DB\u4E2D..."}},midi:{button:{title:"\u5909\u66F4\u3055\u308C\u305FMIDI",description:"\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC\u3068\u697D\u5668\u306E\u5909\u66F4\u304C\u9069\u7528\u3055\u308C\u305FMIDI\u30D5\u30A1\u30A4\u30EB\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059"}},soundfont:{button:{title:"\u30C8\u30EA\u30DF\u30F3\u30B0\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8",description:"MIDI\u30D5\u30A1\u30A4\u30EB\u3067\u4F7F\u7528\u3055\u308C\u3066\u3044\u308B\u697D\u5668\u3068\u30B5\u30F3\u30D7\u30EB\u3060\u3051\u306B\u30C8\u30EA\u30DF\u30F3\u30B0\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059"},options:{title:"SF\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3",confirm:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",compress:{title:"\u5727\u7E2E",description:"\u672A\u5727\u7E2E\u306E\u30B5\u30F3\u30D7\u30EB\u3092Ogg Vorbis\u306E\u30ED\u30B9\u5727\u7E2E\u3067\u5727\u7E2E\u3057\u307E\u3059\u3002\u30D5\u30A1\u30A4\u30EB\u30B5\u30A4\u30BA\u304C\u5927\u5E45\u306B\u524A\u6E1B\u3055\u308C\u307E\u3059\u3002\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u304C\u3059\u3067\u306B\u5727\u7E2E\u3055\u308C\u3066\u3044\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u518D\u5727\u7E2E\u3055\u308C\u308B\u3053\u3068\u306F\u3042\u308A\u307E\u305B\u3093"},quality:{title:"\u5727\u7E2E\u54C1\u8CEA",description:"\u5727\u7E2E\u306E\u54C1\u8CEA\u3067\u3059\u3002\u9AD8\u3044\u307B\u3069\u826F\u3044"}}},rmidi:{button:{title:"\u57CB\u3081\u8FBC\u307E\u308C\u305FMIDI (.rmi)",description:"\u5909\u66F4\u3055\u308C\u305FMIDI\u3068\u30C8\u30EA\u30DF\u30F3\u30B0\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u30921\u3064\u306E\u30D5\u30A1\u30A4\u30EB\u306B\u57CB\u3081\u8FBC\u3093\u3067\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002 \u3053\u306E\u5F62\u5F0F\u306F\u5E83\u304F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u306A\u3044\u3053\u3068\u306B\u6CE8\u610F\u3057\u3066\u304F\u3060\u3055\u3044"},progress:{title:"\u57CB\u3081\u8FBC\u307E\u308C\u305FMIDI\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u4E2D...",loading:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3068MIDI\u3092\u8AAD\u307F\u8FBC\u307F\u4E2D...",modifyingMIDI:"MIDI\u3092\u4FEE\u6B63\u4E2D...",modifyingSoundfont:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u30C8\u30EA\u30DF\u30F3\u30B0\u4E2D...",saving:"RMIDI\u3092\u4FDD\u5B58\u4E2D...",done:"\u5B8C\u4E86\u3057\u307E\u3057\u305F\uFF01"},options:{title:"RMIDI\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3",confirm:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",compress:{title:"\u5727\u7E2E",description:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092Ogg Vorbis\u306E\u30ED\u30B9\u5727\u7E2E\u3067\u5727\u7E2E\u3057\u307E\u3059\u3002\u30D5\u30A1\u30A4\u30EB\u30B5\u30A4\u30BA\u304C\u5927\u5E45\u306B\u524A\u6E1B\u3055\u308C\u307E\u3059\u3002\u63A8\u5968\u8A2D\u5B9A\u3067\u3059\u3002"},quality:{title:"\u5727\u7E2E\u54C1\u8CEA",description:"\u5727\u7E2E\u306E\u54C1\u8CEA\u3067\u3059\u3002\u9AD8\u3044\u307B\u3069\u826F\u3044"},bankOffset:{title:"\u9280\u884C\u306E\u76F8\u6BBA",description:"\u30D5\u30A1\u30A4\u30EB\u306E\u30D0\u30F3\u30AF \u30AA\u30D5\u30BB\u30C3\u30C8\u3002\u5024 0 \u304C\u63A8\u5968\u3055\u308C\u307E\u3059\u3002\u4F55\u3092\u3057\u3066\u3044\u308B\u306E\u304B\u308F\u304B\u3063\u3066\u3044\u308B\u5834\u5408\u306B\u306E\u307F\u5909\u66F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002"}}}},metadata:{songTitle:{title:"\u30BF\u30A4\u30C8\u30EB:",description:"\u66F2\u306E\u30BF\u30A4\u30C8\u30EB"},album:{title:"\u30A2\u30EB\u30D0\u30E0:",description:"\u66F2\u306E\u30A2\u30EB\u30D0\u30E0"},artist:{title:"\u30A2\u30FC\u30C6\u30A3\u30B9\u30C8:",description:"\u66F2\u306E\u30A2\u30FC\u30C6\u30A3\u30B9\u30C8"},albumCover:{title:"\u30A2\u30EB\u30D0\u30E0\u30AB\u30D0\u30FC:",description:"\u66F2\u306E\u30A2\u30EB\u30D0\u30E0\u30AB\u30D0\u30FC"},creationDate:{title:"\u4F5C\u6210\u65E5:",description:"\u66F2\u306E\u4F5C\u6210\u65E5"},genre:{title:"\u30B8\u30E3\u30F3\u30EB:",description:"\u66F2\u306E\u30B8\u30E3\u30F3\u30EB"},comment:{title:"\u30B3\u30E1\u30F3\u30C8:",description:"\u66F2\u306E\u30B3\u30E1\u30F3\u30C8"},duration:{title:"\u9577\u3055:",description:"\u66F2\u306E\u9577\u3055"}}}};var Tw={localeName:"\u65E5\u672C\u8A9E",titleMessage:"SpessaSynth: SoundFont2 Javascript \u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC",demoTitleMessage:"SpessaSynth: SoundFont2 Javascript \u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC \u30AA\u30F3\u30E9\u30A4\u30F3\u30C7\u30E2",synthInit:{genericLoading:"\u8AAD\u307F\u8FBC\u307F\u4E2D...",loadingSoundfont:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u8AAD\u307F\u8FBC\u3093\u3067\u3044\u307E\u3059...",loadingBundledSoundfont:"\u30D0\u30F3\u30C9\u30EB\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u8AAD\u307F\u8FBC\u3093\u3067\u3044\u307E\u3059...",startingSynthesizer:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059...",savingSoundfont:"\u518D\u5229\u7528\u306E\u305F\u3081\u306B\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u4FDD\u5B58\u3057\u3066\u3044\u307E\u3059...",noWebAudio:"\u304A\u4F7F\u3044\u306E\u30D6\u30E9\u30A6\u30B6\u306FWeb Audio\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u305B\u3093\u3002",done:"\u6E96\u5099\u5B8C\u4E86\uFF01"},midiUploadButton:"MIDI\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9",exportAudio:Mw,demoSoundfontUploadButton:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9",demoGithubPage:"\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30DA\u30FC\u30B8",demoSongButton:"\u30C7\u30E2\u30BD\u30F3\u30B0",credits:"\u30AF\u30EA\u30A8\u30A4\u30BF\u30FC",warnings:{noMidiSupport:"\u3053\u306E\u30D6\u30E9\u30A6\u30B6\u306FMIDI\u5165\u529B\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u306A\u3044\u305F\u3081\u3001\u3053\u306E\u6A5F\u80FD\u306F\u5229\u7528\u3067\u304D\u307E\u305B\u3093\u3002Chrome\u307E\u305F\u306FFirefox\u3092\u4F7F\u7528\u3059\u308B\u3053\u3068\u3092\u691C\u8A0E\u3057\u3066\u304F\u3060\u3055\u3044\u3002",outOfMemory:`\u30D6\u30E9\u30A6\u30B6\u306E\u30E1\u30E2\u30EA\u304C\u4E0D\u8DB3\u3057\u307E\u3057\u305F\u3002Firefox\u3084SF3\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u306E\u4F7F\u7528\u3092\u691C\u8A0E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 \uFF08\u30A8\u30E9\u30FC\u306B\u3064\u3044\u3066\u306F\u30B3\u30F3\u30BD\u30FC\u30EB\u3092\u53C2\u7167\u3057\u3066\u304F\u3060\u3055\u3044\uFF09\u3002`,chromeMobile:`SpessaSynth\u306FChrome Mobile\u3067\u306E\u52D5\u4F5C\u304C\u826F\u304F\u3042\u308A\u307E\u305B\u3093\u3002 -\u4EE3\u308F\u308A\u306BFirefox Android\u3092\u4F7F\u7528\u3059\u308B\u3053\u3068\u3092\u691C\u8A0E\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,warning:"\u6CE8\u610F"},hideTopBar:{title:"\u30C8\u30C3\u30D7\u30D0\u30FC\u3092\u96A0\u3059",description:"\u30C8\u30C3\u30D7\uFF08\u30BF\u30A4\u30C8\u30EB\uFF09\u30D0\u30FC\u3092\u96A0\u3057\u3066\u3001\u3088\u308A\u30B7\u30FC\u30E0\u30EC\u30B9\u306A\u4F53\u9A13\u3092\u63D0\u4F9B\u3057\u307E\u3059"},musicPlayerMode:Rw,settings:_w,synthesizerController:Fw,sequencerController:Lw};var UB="en",Q$={en:dw,pl:vw,ja:Tw};var KD=.2,di=class{constructor(r,l,g,d,b,I0,b0,m0){this.mode="dark",this.autoKeyRange=!1,this.renderer=d,this.midiKeyboard=b,this.midiDeviceHandler=I0,this.synthui=l,this.sequi=g,this.locale=m0,this.musicMode=b0,this.locales=Q$,this.keyboardSizes={full:{min:0,max:127},piano:{min:21,max:108},"5 octaves":{min:36,max:96}};let Y0=document.createElement("div");Y0.style.position="relative",Y0.classList.add("seamless_button"),Y0.classList.add("settings_button"),r.appendChild(Y0);let m1=document.createElement("div");m1.classList.add("seamless_button"),this.locale.bindObjectProperty(m1,"innerText","locale.musicPlayerMode.toggleButton.title"),this.locale.bindObjectProperty(m1,"title","locale.musicPlayerMode.toggleButton.description"),r.appendChild(m1);let F=document.createElement("div");F.classList.add("seamless_button"),this.locale.bindObjectProperty(F,"innerText","locale.hideTopBar.title"),this.locale.bindObjectProperty(F,"title","locale.hideTopBar.description"),r.appendChild(F);let j0=document.getElementsByClassName("show_top_button")[0];j0.innerHTML=Sy(20);let K0=document.createElement("span");this.locale.bindObjectProperty(K0,"innerText","locale.settings.toggleButton"),Y0.appendChild(K0);let F1=document.createElement("div");F1.innerHTML=ky(24),F1.classList.add("gear"),Y0.appendChild(F1),this.mainDiv=document.createElement("div"),this.mainDiv.classList.add("settings_menu"),this.visible=!1,this.animationId=-1,Y0.onclick=()=>this.setVisibility(!this.visible),r.appendChild(this.mainDiv),m1.onclick=this.toggleMusicPlayerMode.bind(this),F.onclick=this.hideTopPart.bind(this),this.hideOnDocClick=!0,this.mainDiv.onclick=()=>{this.hideOnDocClick=!1},document.addEventListener("click",()=>{if(!this.hideOnDocClick){this.hideOnDocClick=!0;return}this.setVisibility(!1)}),this.mainDiv.innerHTML=Ky,Vy(this.mainDiv);for(let b1 of this.mainDiv.querySelectorAll("*[translate-path]"))this.locale.bindObjectProperty(b1,"textContent",b1.getAttribute("translate-path"));for(let b1 of this.mainDiv.querySelectorAll("*[translate-path-title]")){let _5=b1.getAttribute("translate-path-title");this.locale.bindObjectProperty(b1,"textContent",_5+".title"),this.locale.bindObjectProperty(b1,"title",_5+".description")}this.getHtmlControls(),document.addEventListener("keydown",b1=>{switch(b1.key.toLowerCase()){case j7.settingsShow:this.setVisibility(!this.visible);break;case j7.synthesizerUIShow:this.setVisibility(!1)}}),window.savedSettings?this._loadSettings().then(()=>{this.createHandlers(d,b,I0,g,l)}):this.createHandlers(d,b,I0,g,l),this.topPartVisible=!0;let B2=!1;window.addEventListener("resize",()=>{let b1=window.screen.height,_5=window.screen.width,v2=window.outerHeight,Y2=window.outerWidth,K5;K5=_5===Y2&&b1===v2,K5!==B2&&(B2=K5,K5?this.hideTopPart():this.showTopPart())}),document.addEventListener("fullscreenchange",()=>{document.fullscreenElement===null?this.showTopPart():this.hideTopPart()})}addSequencer;async toggleMusicPlayerMode(){if(this.musicMode.visible===!1){try{await document.body.requestFullscreen()}catch{}await new Promise(r=>setTimeout(r,500))}this.musicMode.setVisibility(!this.musicMode.visible,document.getElementById("keyboard_canvas_wrapper")),this.renderer.renderBool=!this.musicMode.visible}showTopPart(){if(this.topPartVisible===!0)return;this.topPartVisible=!0;let r=document.getElementsByClassName("top_part")[0],l=document.getElementsByClassName("show_top_button")[0];r.style.display="",setTimeout(()=>{r.classList.remove("top_part_hidden")},75),l.classList.remove("shown"),l.style.display="none"}hideTopPart(){if(this.topPartVisible===!1)return;this.topPartVisible=!1;let r=document.getElementsByClassName("top_part")[0];r.classList.add("top_part_hidden"),setTimeout(()=>{r.style.display="none"},200);let l=document.getElementsByClassName("show_top_button")[0];l.style.display="flex",setTimeout(()=>{l.classList.add("shown")},75),l.onclick=this.showTopPart.bind(this)}setVisibility(r){this.animationId&&clearTimeout(this.animationId),r?(this.mainDiv.style.display="block",setTimeout(()=>{document.getElementsByClassName("top_part")[0].classList.add("settings_shown"),this.mainDiv.classList.add("settings_menu_show")},75),this.hideOnDocClick=!1):(document.getElementsByClassName("top_part")[0].classList.remove("settings_shown"),this.mainDiv.classList.remove("settings_menu_show"),this.animationId=setTimeout(()=>{this.mainDiv.style.display="none"},KD*1e3)),this.visible=r}createHandlers(r,l,g,d,b){this._createRendererHandler(r),this._createMidiSettingsHandler(g,d,b),this._createKeyboardHandler(l,b,r),this._createInterfaceSettingsHandler()}getHtmlControls(){this.htmlControls={renderer:{noteTimeSlider:document.getElementById("note_time_slider"),analyserToggler:document.getElementById("analyser_toggler"),noteToggler:document.getElementById("note_toggler"),activeNoteToggler:document.getElementById("active_note_toggler"),visualPitchToggler:document.getElementById("visual_pitch_toggler"),stabilizeWaveformsToggler:document.getElementById("stabilize_waveforms_toggler"),analyserThicknessSlider:document.getElementById("analyser_thickness_slider"),analyserFftSlider:document.getElementById("analyser_fft_slider"),waveMultiplierSlizer:document.getElementById("wave_multiplier_slider")},keyboard:{channelSelector:document.getElementById("channel_selector"),modeSelector:document.getElementById("mode_selector"),sizeSelector:document.getElementById("keyboard_size_selector")},midi:{outputSelector:document.getElementById("midi_output_selector"),inputSelector:document.getElementById("midi_input_selector")},interface:{themeSelector:document.getElementById("toggle_mode_button"),languageSelector:document.getElementById("language_selector"),layoutSelector:document.getElementById("layout_selector")}}}};di.prototype._toggleDarkMode=iw;di.prototype._createInterfaceSettingsHandler=jy;di.prototype._changeLayout=Xy;di.prototype._createRendererHandler=rw;di.prototype._createMidiSettingsHandler=sw;di.prototype._createMidiInputHandler=Aw;di.prototype._createMidiOutputHandler=ow;di.prototype._createKeyboardHandler=Jy;di.prototype._loadSettings=zy;di.prototype._serializeSettings=Wy;di.prototype._saveSettings=Zy;var Gw=.5,Fm=class{constructor(r,l){this.mainDiv=r,this.mainDiv.innerHTML=` +\u4EE3\u308F\u308A\u306BFirefox Android\u3092\u4F7F\u7528\u3059\u308B\u3053\u3068\u3092\u691C\u8A0E\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,warning:"\u6CE8\u610F"},hideTopBar:{title:"\u30C8\u30C3\u30D7\u30D0\u30FC\u3092\u96A0\u3059",description:"\u30C8\u30C3\u30D7\uFF08\u30BF\u30A4\u30C8\u30EB\uFF09\u30D0\u30FC\u3092\u96A0\u3057\u3066\u3001\u3088\u308A\u30B7\u30FC\u30E0\u30EC\u30B9\u306A\u4F53\u9A13\u3092\u63D0\u4F9B\u3057\u307E\u3059"},musicPlayerMode:Rw,settings:_w,synthesizerController:Fw,sequencerController:Lw};var UB="en",Q$={en:dw,pl:vw,ja:Tw};var KD=.2,di=class{constructor(r,l,g,d,b,I0,b0,m0){this.mode="dark",this.autoKeyRange=!1,this.renderer=d,this.midiKeyboard=b,this.midiDeviceHandler=I0,this.synthui=l,this.sequi=g,this.locale=m0,this.musicMode=b0,this.locales=Q$,this.keyboardSizes={full:{min:0,max:127},piano:{min:21,max:108},"5 octaves":{min:36,max:96}};let q0=document.createElement("div");q0.style.position="relative",q0.classList.add("seamless_button"),q0.classList.add("settings_button"),r.appendChild(q0);let m1=document.createElement("div");m1.classList.add("seamless_button"),this.locale.bindObjectProperty(m1,"innerText","locale.musicPlayerMode.toggleButton.title"),this.locale.bindObjectProperty(m1,"title","locale.musicPlayerMode.toggleButton.description"),r.appendChild(m1);let x=document.createElement("div");x.classList.add("seamless_button"),this.locale.bindObjectProperty(x,"innerText","locale.hideTopBar.title"),this.locale.bindObjectProperty(x,"title","locale.hideTopBar.description"),r.appendChild(x);let j0=document.getElementsByClassName("show_top_button")[0];j0.innerHTML=Sy(20);let K0=document.createElement("span");this.locale.bindObjectProperty(K0,"innerText","locale.settings.toggleButton"),q0.appendChild(K0);let F1=document.createElement("div");F1.innerHTML=ky(24),F1.classList.add("gear"),q0.appendChild(F1),this.mainDiv=document.createElement("div"),this.mainDiv.classList.add("settings_menu"),this.visible=!1,this.animationId=-1,q0.onclick=()=>this.setVisibility(!this.visible),r.appendChild(this.mainDiv),m1.onclick=this.toggleMusicPlayerMode.bind(this),x.onclick=this.hideTopPart.bind(this),this.hideOnDocClick=!0,this.mainDiv.onclick=()=>{this.hideOnDocClick=!1},document.addEventListener("click",()=>{if(!this.hideOnDocClick){this.hideOnDocClick=!0;return}this.setVisibility(!1)}),this.mainDiv.innerHTML=Ky,Vy(this.mainDiv);for(let b1 of this.mainDiv.querySelectorAll("*[translate-path]"))this.locale.bindObjectProperty(b1,"textContent",b1.getAttribute("translate-path"));for(let b1 of this.mainDiv.querySelectorAll("*[translate-path-title]")){let _5=b1.getAttribute("translate-path-title");this.locale.bindObjectProperty(b1,"textContent",_5+".title"),this.locale.bindObjectProperty(b1,"title",_5+".description")}this.getHtmlControls(),document.addEventListener("keydown",b1=>{switch(b1.key.toLowerCase()){case j7.settingsShow:this.setVisibility(!this.visible);break;case j7.synthesizerUIShow:this.setVisibility(!1)}}),window.savedSettings?this._loadSettings().then(()=>{this.createHandlers(d,b,I0,g,l)}):this.createHandlers(d,b,I0,g,l),this.topPartVisible=!0;let B2=!1;window.addEventListener("resize",()=>{let b1=window.screen.height,_5=window.screen.width,v2=window.outerHeight,J2=window.outerWidth,n3;n3=_5===J2&&b1===v2,n3!==B2&&(B2=n3,n3?this.hideTopPart():this.showTopPart())}),document.addEventListener("fullscreenchange",()=>{document.fullscreenElement===null?this.showTopPart():this.hideTopPart()})}addSequencer;async toggleMusicPlayerMode(){if(this.musicMode.visible===!1){try{await document.body.requestFullscreen()}catch{}await new Promise(r=>setTimeout(r,500))}this.musicMode.setVisibility(!this.musicMode.visible,document.getElementById("keyboard_canvas_wrapper")),this.renderer.renderBool=!this.musicMode.visible}showTopPart(){if(this.topPartVisible===!0)return;this.topPartVisible=!0;let r=document.getElementsByClassName("top_part")[0],l=document.getElementsByClassName("show_top_button")[0];r.style.display="",setTimeout(()=>{r.classList.remove("top_part_hidden")},75),l.classList.remove("shown"),l.style.display="none"}hideTopPart(){if(this.topPartVisible===!1)return;this.topPartVisible=!1;let r=document.getElementsByClassName("top_part")[0];r.classList.add("top_part_hidden"),setTimeout(()=>{r.style.display="none"},200);let l=document.getElementsByClassName("show_top_button")[0];l.style.display="flex",setTimeout(()=>{l.classList.add("shown")},75),l.onclick=this.showTopPart.bind(this)}setVisibility(r){this.animationId&&clearTimeout(this.animationId),r?(this.mainDiv.style.display="block",setTimeout(()=>{document.getElementsByClassName("top_part")[0].classList.add("settings_shown"),this.mainDiv.classList.add("settings_menu_show")},75),this.hideOnDocClick=!1):(document.getElementsByClassName("top_part")[0].classList.remove("settings_shown"),this.mainDiv.classList.remove("settings_menu_show"),this.animationId=setTimeout(()=>{this.mainDiv.style.display="none"},KD*1e3)),this.visible=r}createHandlers(r,l,g,d,b){this._createRendererHandler(r),this._createMidiSettingsHandler(g,d,b),this._createKeyboardHandler(l,b,r),this._createInterfaceSettingsHandler()}getHtmlControls(){this.htmlControls={renderer:{noteTimeSlider:document.getElementById("note_time_slider"),analyserToggler:document.getElementById("analyser_toggler"),noteToggler:document.getElementById("note_toggler"),activeNoteToggler:document.getElementById("active_note_toggler"),visualPitchToggler:document.getElementById("visual_pitch_toggler"),stabilizeWaveformsToggler:document.getElementById("stabilize_waveforms_toggler"),analyserThicknessSlider:document.getElementById("analyser_thickness_slider"),analyserFftSlider:document.getElementById("analyser_fft_slider"),waveMultiplierSlizer:document.getElementById("wave_multiplier_slider")},keyboard:{channelSelector:document.getElementById("channel_selector"),modeSelector:document.getElementById("mode_selector"),sizeSelector:document.getElementById("keyboard_size_selector")},midi:{outputSelector:document.getElementById("midi_output_selector"),inputSelector:document.getElementById("midi_input_selector")},interface:{themeSelector:document.getElementById("toggle_mode_button"),languageSelector:document.getElementById("language_selector"),layoutSelector:document.getElementById("layout_selector")}}}};di.prototype._toggleDarkMode=iw;di.prototype._createInterfaceSettingsHandler=jy;di.prototype._changeLayout=Xy;di.prototype._createRendererHandler=rw;di.prototype._createMidiSettingsHandler=sw;di.prototype._createMidiInputHandler=Aw;di.prototype._createMidiOutputHandler=ow;di.prototype._createKeyboardHandler=Jy;di.prototype._loadSettings=zy;di.prototype._serializeSettings=Wy;di.prototype._saveSettings=Zy;var Gw=.5,Fm=class{constructor(r,l){this.mainDiv=r,this.mainDiv.innerHTML=`
@@ -248,19 +248,19 @@ var gm=(A=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(A,{get:(r,l)=>(
`;for(let g of this.mainDiv.querySelectorAll("*[translate-path]"))l.bindObjectProperty(g,"textContent",g.getAttribute("translate-path"));for(let g of this.mainDiv.querySelectorAll("*[translate-path-title]"))l.bindObjectProperty(g,"textContent",g.getAttribute("translate-path-title")+".title"),l.bindObjectProperty(g,"title",g.getAttribute("translate-path-title")+".description");this.timeoutId=-1,this.visible=!1,this.locale=l}toggleDarkMode(){this.mainDiv.getElementsByClassName("player_info_wrapper")[0].classList.toggle("light_mode")}setTitle(r){document.getElementById("player_info_title").textContent=r}connectSequencer(r){this.seq=r,this.seq.addOnSongChangeEvent(l=>{let g=l.copyright.replaceAll(` `,""),d=(K0,F1,B2=!0)=>{let b1=document.getElementById(K0);if(F1.length>0)if(b1.parentElement.classList.remove("hidden"),b1.innerHTML="",F1.length>30&&B2){b1.classList.add("marquee");let _5=document.createElement("span");_5.textContent=F1,b1.appendChild(_5)}else b1.textContent=F1;else b1.parentElement.classList.add("hidden")};d("player_info_detail",g),d("player_info_time",f$(this.seq.duration).time),d("player_info_file_name",l.fileName,!1);let b=(K0,F1,B2,b1="")=>this.seq.midiData.RMIDInfo?.[K0]===void 0?F1:b1+B2.decode(this.seq.midiData.RMIDInfo?.[K0]).replace(/\0$/,""),I0=b("IENC","ascii",new TextDecoder),b0=new TextDecoder(I0);d("player_info_album",b("IPRD","",b0)),d("player_info_artist",b("IART","",b0)),d("player_info_genre",b("IGNR","",b0)),d("player_info_creation",b("ICRD","",b0)+b("ICRT","",b0,` -`)),d("player_info_comment",b("ICMT","",b0));let m0=this.mainDiv.getElementsByTagName("svg")[0],Y0=this.mainDiv.getElementsByTagName("img")[0],m1=document.getElementById("player_info_background_image");if(!l.isEmbedded){m0.style.display="",Y0.style.display="none",m1.style.setProperty("--bg-image","undefined");return}if(l.RMIDInfo.IPIC===void 0){m0.style.display="",Y0.style.display="none",m1.style.setProperty("--bg-image","undefined");return}m0.style.display="none",Y0.style.display="";let F=new Blob([l.RMIDInfo.IPIC.buffer]),j0=URL.createObjectURL(F);Y0.src=j0,m1.style.setProperty("--bg-image",`url('${j0}')`)},"player-js-song-change")}setVisibility(r,l){if(r===this.visible)return;this.visible=r,this.timeoutId&&clearTimeout(this.timeoutId);let g=this.mainDiv;if(r){l.classList.add("out_animation"),this.savedCKWrapperHeight=l.clientHeight;let d=l.clientHeight,b=l.getBoundingClientRect().top;g.style.position="absolute",g.style.top=`${b}px`,g.style.height=`${d}px`,g.style.display="flex",setTimeout(()=>{g.classList.add("player_info_show"),document.body.style.overflow="hidden"},75),this.timeoutId=setTimeout(async()=>{l.style.display="none",g.style.position="",g.style.top="",g.style.height="",document.body.style.overflow=""},Gw*1e3)}else{let d=g.getBoundingClientRect().top;l.style.display="",l.style.position="absolute",l.style.top=`${d}px`,l.style.height=`${this.savedCKWrapperHeight}px`,g.classList.remove("player_info_show"),setTimeout(()=>{l.classList.remove("out_animation"),document.body.style.overflow="hidden"},75),this.timeoutId=setTimeout(()=>{g.style.display="none",l.style.position="",l.style.top="",l.style.height="",document.body.style.overflow=""},Gw*1e3)}}};var Lm=class{constructor(r){this.locale=Q$[r]||Q$[UB],this.fallbackLocale=Q$[UB],this.localeCode=r,this._boundObjectProperties=[]}getLocaleString(r,l=[]){let g=this._resolveLocalePath(r);return l.length>0?this._formatLocale(g,l):g}_applyPropertyInternal(r){if(r.isEdited)return;let l=this._resolveLocalePath(r.localePath);r.formattingArguments.length>0&&(l=this._formatLocale(l,r.formattingArguments)),r.object[r.propertyName]=l}_validatePropertyIntegrity(r){let l=this._resolveLocalePath(r.localePath);r.formattingArguments.length>0&&(l=this._formatLocale(l,r.formattingArguments)),r.object[r.propertyName]!==l&&(r.isEdited=!0)}onLocaleChanged=[];_formatLocale(r,l){return r.replace(/{(\d+)}/g,(g,d)=>typeof l[d]<"u"?l[d]:g)}bindObjectProperty(r,l,g,d=[]){let b={object:r,propertyName:l,localePath:g,formattingArguments:d,isEdited:!1};this._applyPropertyInternal(b),this._boundObjectProperties.push(b)}_resolveLocalePath(r,l=!1){if(!r.startsWith("locale."))throw new Error(`Invalid locale path: ${r} (it should start with "locale.")`);let g=r.split("."),d=l?this.fallbackLocale:this.locale;for(let b=1;b{this._validatePropertyIntegrity(d)}),this.locale=g,this._boundObjectProperties.forEach(d=>{this._applyPropertyInternal(d)}),this.onLocaleChanged.forEach(d=>d())}};function OB(A,r=!0,l=0,g={}){let d=A.getChannelData(l),b=A.getChannelData(l+1),I0=d.length,b0=2,m0=new l6(0),Y0=Object.keys(g).length>0;if(Y0){let Y2=new TextEncoder,K5=[So("INFO"),a8("ICMT",Y2.encode("Created with SpessaSynth"),!0)];g.artist&&K5.push(a8("IART",Y2.encode(g.artist),!0)),g.album&&K5.push(a8("IPRD",Y2.encode(g.album),!0)),g.genre&&K5.push(a8("IGNR",Y2.encode(g.genre),!0)),g.title&&K5.push(a8("INAM",Y2.encode(g.title),!0)),m0=a8("LIST",bs(K5))}let m1=44,F=I0*2*b0,j0=m1+F+m0.length-8,K0=new Uint8Array(m1);K0.set([82,73,70,70],0),K0.set(new Uint8Array([j0&255,j0>>8&255,j0>>16&255,j0>>24&255]),4),K0.set([87,65,86,69],8),K0.set([102,109,116,32],12),K0.set([16,0,0,0],16),K0.set([1,0],20),K0.set([2,0],22);let F1=A.sampleRate;K0.set(new Uint8Array([F1&255,F1>>8&255,F1>>16&255,F1>>24&255]),24);let B2=F1*2*b0;K0.set(new Uint8Array([B2&255,B2>>8&255,B2>>16&255,B2>>24&255]),28),K0.set([4,0],32),K0.set([16,0],34),K0.set([100,97,116,97],36),K0.set(new Uint8Array([F&255,F>>8&255,F>>16&255,F>>24&255]),40);let b1,_5=m1;Y0?b1=new Uint8Array(m1+F+m0.length):b1=new Uint8Array(m1+F),b1.set(K0,0);let v2=32767;if(r){let Y2=d.map((K5,U5)=>Math.max(Math.abs(K5),Math.abs(b[U5]))).reduce((K5,U5)=>Math.max(K5,U5));v2=Y2>0?32767/Y2:1}for(let Y2=0;Y2>8&255,b1[_5++]=U5&255,b1[_5++]=U5>>8&255}return Y0&&b1.set(m0,_5),new Blob([b1.buffer],{type:"audio/wav"})}var Mm="synthetizer/worklet_processor.min.js";var Nw=1e3;async function Uw(A=!0,r=2,l=!1,g={}){if(this.isExporting=!0,!this.seq)throw new Error("No sequencer active");let d=manager.localeManager.getLocaleString("locale.exportAudio.formats.formats.wav.exportMessage.message"),b=manager.localeManager.getLocaleString("locale.exportAudio.formats.formats.wav.exportMessage.estimated"),I0=manager.localeManager.getLocaleString("locale.synthInit.genericLoading"),b0=U7(d,[{type:"text",textContent:I0},{type:"progress"}],9999999,!1),m0=await this.seq.getMIDI(),Y0=m0.duration+r,m1=new OfflineAudioContext({numberOfChannels:l?32:2,sampleRate:this.context.sampleRate,length:this.context.sampleRate*Y0});await m1.audioWorklet.addModule(new URL("../../spessasynth_lib/"+Mm,import.meta.url));let F=await this.synth.getSynthesizerSnapshot(),j0=this.soundFont,K0;try{K0=new ah(m1.destination,j0,!1,{parsedMIDI:m0,snapshot:F,oneOutput:l},{reverbEnabled:!0,chorusEnabled:!0,chorusConfig:void 0,reverbImpulseResponse:this.impulseResponse})}catch($0){throw U7(this.localeManager.getLocaleString("locale.warnings.warning"),[{type:"text",textContent:this.localeManager.getLocaleString("locale.warnings.outOfMemory")}]),$0}let F1=b0.div.getElementsByTagName("p")[0],B2=b0.div.getElementsByClassName("notification_progress")[0],b1=Nw/1e3,_5=K0.currentTime,v2=Y0,Y2=.1,K5=setInterval(()=>{let $0=K0.currentTime-_5;_5=K0.currentTime;let H5=K0.currentTime/Y0;B2.style.width=`${H5*100}%`;let n6=$0/b1,b6=(1-H5)/n6*Y0;b6!==1/0&&(v2=Y2*b6+(1-Y2)*v2,F1.innerText=`${b} ${f$(v2).time}`)},Nw),U5=await m1.startRendering();if(B2.style.width="100%",clearInterval(K5),F1.innerText=this.localeManager.getLocaleString("locale.exportAudio.formats.formats.wav.exportMessage.convertWav"),await new Promise($0=>setTimeout($0,75)),!l)this.saveBlob(OB(U5,A,0,g),`${this.seqUI.currentSongTitle||"unnamed_song"}.wav`);else{let $0="locale.exportAudio.formats.formats.wav.options.separateChannels.saving.",H5=[],n6=new Set;for(let H6 of m0.usedChannelsOnTrack)H6.forEach(c6=>n6.add(c6));for(let H6=0;H6<16;H6++){let c6=!0;for(let w4=H6;w4{let K4=M4.textContent;M4.textContent=this.localeManager.getLocaleString("locale.exportAudio.formats.formats.wav.exportMessage.convertWav"),await new Promise(To=>setTimeout(To,75));let _4=OB(U5,!1,H6*2),_t=`${H6+1} - ${F.channelSnapshots[H6].patchName}.wav`;this.saveBlob(_4,_t),M4.classList.add("green_button"),M4.textContent=K4}})}let b6=U7(this.localeManager.getLocaleString($0+"title"),H5,99999999,!0,void 0,{display:"flex",flexWrap:"wrap",justifyContent:"space-around"});b6.div.style.width="30rem"}X7(b0.id),this.isExporting=!1}async function Ow(){if(this.isExporting)return;let A="locale.exportAudio.formats.formats.wav.options.",r="locale.exportAudio.formats.metadata.",l=(Y0,m1,F)=>this.seq.midiData.RMIDInfo?.[Y0]===void 0?m1:F.decode(this.seq.midiData.RMIDInfo?.[Y0]).replace(/\0$/,""),g=l("IENC","ascii",new TextDecoder),d=new TextDecoder(g),b=l("IPRD","",d),I0=l("IART","",d),b0=l("IGNR","",d),m0=[{type:"toggle",translatePathTitle:A+"normalizeVolume",attributes:{"normalize-volume-toggle":"1",checked:"true"}},{type:"input",translatePathTitle:A+"additionalTime",attributes:{value:"2",type:"number"}},{type:"toggle",translatePathTitle:A+"separateChannels",attributes:{"separate-channels-toggle":"1"}},{type:"input",translatePathTitle:r+"songTitle",attributes:{name:"song_title",type:"text",value:this.seqUI.currentSongTitle}},{type:"input",translatePathTitle:r+"album",attributes:{value:b,name:"album",type:"text"}},{type:"input",translatePathTitle:r+"artist",attributes:{value:I0,name:"artist",type:"text"}},{type:"input",translatePathTitle:r+"genre",attributes:{value:b0,name:"genre",type:"text"}},{type:"button",textContent:this.localeManager.getLocaleString(A+"confirm"),onClick:Y0=>{X7(Y0.id);let m1=Y0.div.querySelector("input[normalize-volume-toggle]").checked,F=Y0.div.querySelector("input[type='number']").value,j0=Y0.div.querySelector("input[separate-channels-toggle]").checked,K0=Y0.div.querySelector("input[name='artist']").value,F1=Y0.div.querySelector("input[name='album']").value,B2=Y0.div.querySelector("input[name='song_title']").value,b1=Y0.div.querySelector("input[name='genre']").value,_5={artist:K0.length>0?K0:void 0,album:F1.length>0?F1:void 0,title:B2.length>0?B2:void 0,genre:b1.length>0?b1:void 0};this._doExportAudioData(m1,parseInt(F),j0,_5)}}];U7(this.localeManager.getLocaleString(A+"title"),m0,9999999,!0,this.localeManager)}async function Pw(){let A=await this.seq.getMIDI();ch(A,await this.synth.getSynthesizerSnapshot());let r=mm(A),l=new Blob([r],{type:"audio/mid"});this.saveBlob(l,`${this.seqUI.currentSongTitle||"unnamed_song"}.mid`)}function Hw(A,r){ei("%cSearching for all used programs and keys...",S1.info);let l=16+A.midiPortChannelOffsets.reduce((F,j0)=>j0>F?j0:F),g=[];for(let F=0;F{I0[F1]>=K0.length||K0[I0[F1]].ticks0;){let F=m0(),j0=A.tracks[F];if(I0[F]>=j0.length){b0--;continue}let K0=j0[I0[F]];if(I0[F]++,K0.messageStatusByte===J3.midiPort){Y0[F]=K0.messageData[0];continue}let F1=K0.messageStatusByte&240;if(F1!==J3.noteOn&&F1!==J3.controllerChange&&F1!==J3.programChange&&F1!==J3.systemExclusive)continue;let B2=(K0.messageStatusByte&15)+A.midiPortChannelOffsets[Y0[F]]||0,b1=g[B2];switch(F1){case J3.programChange:b1.program=K0.messageData[0],d(b1);break;case J3.controllerChange:if(K0.messageData[0]!==A6.bankSelect||m1==="gs"&&b1.drums)continue;let _5=K0.messageData[1],v2=Math.max(0,_5-A.bankOffset);if(m1==="xg"){let U5=_5===120||_5===126||_5===127;U5!==b1.drums?(b1.drums=U5,b1.bank=b1.drums?128:v2,d(b1)):b1.bank=b1.drums?128:v2;continue}g[B2].bank=v2;break;case J3.noteOn:if(K0.messageData[1]===0)continue;d(b1),b[b1.string].add(`${K0.messageData[0]}-${K0.messageData[1]}`);break;case J3.systemExclusive:if(K0.messageData[0]!==65||K0.messageData[2]!==66||K0.messageData[3]!==18||K0.messageData[4]!==64||!(K0.messageData[5]&16)||K0.messageData[6]!==21){K0.messageData[0]===67&&K0.messageData[2]===76&&K0.messageData[5]===126&&K0.messageData[6]===0&&(m1="xg");continue}let Y2=[9,0,1,2,3,4,5,6,7,8,10,11,12,13,14,15][K0.messageData[5]&15]+A.midiPortChannelOffsets[Y0[F]],K5=!!(K0.messageData[7]>0&&K0.messageData[5]>>4);b1=g[Y2],b1.drums=K5,b1.bank=K5?128:0,d(b1);break}}for(let F of Object.keys(b))b[F].size===0&&(J5(`%cDetected change but no keys for %c${F}`,S1.info,S1.value),delete b[F]);return e4(),b}function Tm(A,r){function l(d,b){let I0=0;for(let b0=0;b0=Y0.min&&j0.key<=Y0.max&&j0.velocity>=m1.min&&j0.velocity<=m1.max){F=!0;break}F||(J5(`%c${m0.sample.sampleName} %cremoved from %c${d.instrumentName}%c. Use count: %c${m0.useCount-1}`,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized),d.safeDeleteZone(b0)&&(I0++,b0--,J5(`%c${m0.sample.sampleName} %cdeleted`,S1.recognized,S1.info)),m0.sample.useCount<1&&A.deleteSample(m0.sample))}return I0}ar("%cTrimming soundfont...",S1.info);let g=Hw(r,A);ei("%cModifying soundfont...",S1.info),J5("Detected keys for midi:",g);for(let d=0;d{let F=m1.split("-");return{key:parseInt(F[0]),velocity:parseInt(F[1])}});ei(`%cTrimming %c${b.presetName}`,S1.info,S1.recognized),J5(`Keys for ${b.presetName}:`,m0);let Y0=0;for(let m1=0;m1=j0.min&&B2.key<=j0.max&&B2.velocity>=K0.min&&B2.velocity<=K0.max){F1=!0;let b1=l(F.instrument,m0);J5(`%cTrimmed off %c${b1}%c zones from %c${F.instrument.instrumentName}`,S1.info,S1.recognized,S1.info,S1.recognized);break}F1||(Y0++,b.deleteZone(m1),F.instrument.useCount<1&&A.deleteInstrument(F.instrument),m1--)}J5(`%cTrimmed off %c${Y0}%c zones from %c${b.presetName}`,S1.info,S1.recognized,S1.info,S1.recognized),e4()}}A.removeUnusedElements(),A.soundFontInfo.ICMT=`NOTE: This soundfont was trimmed by SpessaSynth to only contain presets used in "${r.midiName}" +`)),d("player_info_comment",b("ICMT","",b0));let m0=this.mainDiv.getElementsByTagName("svg")[0],q0=this.mainDiv.getElementsByTagName("img")[0],m1=document.getElementById("player_info_background_image");if(!l.isEmbedded){m0.style.display="",q0.style.display="none",m1.style.setProperty("--bg-image","undefined");return}if(l.RMIDInfo.IPIC===void 0){m0.style.display="",q0.style.display="none",m1.style.setProperty("--bg-image","undefined");return}m0.style.display="none",q0.style.display="";let x=new Blob([l.RMIDInfo.IPIC.buffer]),j0=URL.createObjectURL(x);q0.src=j0,m1.style.setProperty("--bg-image",`url('${j0}')`)},"player-js-song-change")}setVisibility(r,l){if(r===this.visible)return;this.visible=r,this.timeoutId&&clearTimeout(this.timeoutId);let g=this.mainDiv;if(r){l.classList.add("out_animation"),this.savedCKWrapperHeight=l.clientHeight;let d=l.clientHeight,b=l.getBoundingClientRect().top;g.style.position="absolute",g.style.top=`${b}px`,g.style.height=`${d}px`,g.style.display="flex",setTimeout(()=>{g.classList.add("player_info_show"),document.body.style.overflow="hidden"},75),this.timeoutId=setTimeout(async()=>{l.style.display="none",g.style.position="",g.style.top="",g.style.height="",document.body.style.overflow=""},Gw*1e3)}else{let d=g.getBoundingClientRect().top;l.style.display="",l.style.position="absolute",l.style.top=`${d}px`,l.style.height=`${this.savedCKWrapperHeight}px`,g.classList.remove("player_info_show"),setTimeout(()=>{l.classList.remove("out_animation"),document.body.style.overflow="hidden"},75),this.timeoutId=setTimeout(()=>{g.style.display="none",l.style.position="",l.style.top="",l.style.height="",document.body.style.overflow=""},Gw*1e3)}}};var Lm=class{constructor(r){this.locale=Q$[r]||Q$[UB],this.fallbackLocale=Q$[UB],this.localeCode=r,this._boundObjectProperties=[]}getLocaleString(r,l=[]){let g=this._resolveLocalePath(r);return l.length>0?this._formatLocale(g,l):g}_applyPropertyInternal(r){if(r.isEdited)return;let l=this._resolveLocalePath(r.localePath);r.formattingArguments.length>0&&(l=this._formatLocale(l,r.formattingArguments)),r.object[r.propertyName]=l}_validatePropertyIntegrity(r){let l=this._resolveLocalePath(r.localePath);r.formattingArguments.length>0&&(l=this._formatLocale(l,r.formattingArguments)),r.object[r.propertyName]!==l&&(r.isEdited=!0)}onLocaleChanged=[];_formatLocale(r,l){return r.replace(/{(\d+)}/g,(g,d)=>typeof l[d]<"u"?l[d]:g)}bindObjectProperty(r,l,g,d=[]){let b={object:r,propertyName:l,localePath:g,formattingArguments:d,isEdited:!1};this._applyPropertyInternal(b),this._boundObjectProperties.push(b)}_resolveLocalePath(r,l=!1){if(!r.startsWith("locale."))throw new Error(`Invalid locale path: ${r} (it should start with "locale.")`);let g=r.split("."),d=l?this.fallbackLocale:this.locale;for(let b=1;b{this._validatePropertyIntegrity(d)}),this.locale=g,this._boundObjectProperties.forEach(d=>{this._applyPropertyInternal(d)}),this.onLocaleChanged.forEach(d=>d())}};function OB(A,r=!0,l=0,g={}){let d=A.getChannelData(l),b=A.getChannelData(l+1),I0=d.length,b0=2,m0=new l6(0),q0=Object.keys(g).length>0;if(q0){let J2=new TextEncoder,n3=[So("INFO"),a8("ICMT",J2.encode("Created with SpessaSynth"),!0)];g.artist&&n3.push(a8("IART",J2.encode(g.artist),!0)),g.album&&n3.push(a8("IPRD",J2.encode(g.album),!0)),g.genre&&n3.push(a8("IGNR",J2.encode(g.genre),!0)),g.title&&n3.push(a8("INAM",J2.encode(g.title),!0)),m0=a8("LIST",bs(n3))}let m1=44,x=I0*2*b0,j0=m1+x+m0.length-8,K0=new Uint8Array(m1);K0.set([82,73,70,70],0),K0.set(new Uint8Array([j0&255,j0>>8&255,j0>>16&255,j0>>24&255]),4),K0.set([87,65,86,69],8),K0.set([102,109,116,32],12),K0.set([16,0,0,0],16),K0.set([1,0],20),K0.set([2,0],22);let F1=A.sampleRate;K0.set(new Uint8Array([F1&255,F1>>8&255,F1>>16&255,F1>>24&255]),24);let B2=F1*2*b0;K0.set(new Uint8Array([B2&255,B2>>8&255,B2>>16&255,B2>>24&255]),28),K0.set([4,0],32),K0.set([16,0],34),K0.set([100,97,116,97],36),K0.set(new Uint8Array([x&255,x>>8&255,x>>16&255,x>>24&255]),40);let b1,_5=m1;q0?b1=new Uint8Array(m1+x+m0.length):b1=new Uint8Array(m1+x),b1.set(K0,0);let v2=32767;if(r){let J2=d.map((n3,U5)=>Math.max(Math.abs(n3),Math.abs(b[U5]))).reduce((n3,U5)=>Math.max(n3,U5));v2=J2>0?32767/J2:1}for(let J2=0;J2>8&255,b1[_5++]=U5&255,b1[_5++]=U5>>8&255}return q0&&b1.set(m0,_5),new Blob([b1.buffer],{type:"audio/wav"})}var Mm="synthetizer/worklet_processor.min.js";var Nw=1e3;async function Uw(A=!0,r=2,l=!1,g={}){if(this.isExporting=!0,!this.seq)throw new Error("No sequencer active");let d=manager.localeManager.getLocaleString("locale.exportAudio.formats.formats.wav.exportMessage.message"),b=manager.localeManager.getLocaleString("locale.exportAudio.formats.formats.wav.exportMessage.estimated"),I0=manager.localeManager.getLocaleString("locale.synthInit.genericLoading"),b0=U7(d,[{type:"text",textContent:I0},{type:"progress"}],9999999,!1),m0=await this.seq.getMIDI(),q0=m0.duration+r,m1=new OfflineAudioContext({numberOfChannels:l?32:2,sampleRate:this.context.sampleRate,length:this.context.sampleRate*q0});await m1.audioWorklet.addModule(new URL("../../spessasynth_lib/"+Mm,import.meta.url));let x=await this.synth.getSynthesizerSnapshot(),j0=this.soundFont,K0;try{K0=new ah(m1.destination,j0,!1,{parsedMIDI:m0,snapshot:x,oneOutput:l},{reverbEnabled:!0,chorusEnabled:!0,chorusConfig:void 0,reverbImpulseResponse:this.impulseResponse})}catch(a0){throw U7(this.localeManager.getLocaleString("locale.warnings.warning"),[{type:"text",textContent:this.localeManager.getLocaleString("locale.warnings.outOfMemory")}]),a0}let F1=b0.div.getElementsByTagName("p")[0],B2=b0.div.getElementsByClassName("notification_progress")[0],b1=Nw/1e3,_5=K0.currentTime,v2=q0,J2=.1,n3=setInterval(()=>{let a0=K0.currentTime-_5;_5=K0.currentTime;let J5=K0.currentTime/q0;B2.style.width=`${J5*100}%`;let n6=a0/b1,c6=(1-J5)/n6*q0;c6!==1/0&&(v2=J2*c6+(1-J2)*v2,F1.innerText=`${b} ${f$(v2).time}`)},Nw),U5=await m1.startRendering();if(B2.style.width="100%",clearInterval(n3),F1.innerText=this.localeManager.getLocaleString("locale.exportAudio.formats.formats.wav.exportMessage.convertWav"),await new Promise(a0=>setTimeout(a0,75)),!l)this.saveBlob(OB(U5,A,0,g),`${this.seqUI.currentSongTitle||"unnamed_song"}.wav`);else{let a0="locale.exportAudio.formats.formats.wav.options.separateChannels.saving.",J5=[],n6=new Set;for(let O6 of m0.usedChannelsOnTrack)O6.forEach(g6=>n6.add(g6));for(let O6=0;O6<16;O6++){let g6=!0;for(let u4=O6;u4{let R4=Ke.textContent;Ke.textContent=this.localeManager.getLocaleString("locale.exportAudio.formats.formats.wav.exportMessage.convertWav"),await new Promise(To=>setTimeout(To,75));let F9=OB(U5,!1,O6*2),_t=`${O6+1} - ${x.channelSnapshots[O6].patchName}.wav`;this.saveBlob(F9,_t),Ke.classList.add("green_button"),Ke.textContent=R4}})}let c6=U7(this.localeManager.getLocaleString(a0+"title"),J5,99999999,!0,void 0,{display:"flex",flexWrap:"wrap",justifyContent:"space-around"});c6.div.style.width="30rem"}X7(b0.id),this.isExporting=!1}async function Ow(){if(this.isExporting)return;let A="locale.exportAudio.formats.formats.wav.options.",r="locale.exportAudio.formats.metadata.",l=(q0,m1,x)=>this.seq.midiData.RMIDInfo?.[q0]===void 0?m1:x.decode(this.seq.midiData.RMIDInfo?.[q0]).replace(/\0$/,""),g=l("IENC","ascii",new TextDecoder),d=new TextDecoder(g),b=l("IPRD","",d),I0=l("IART","",d),b0=l("IGNR","",d),m0=[{type:"toggle",translatePathTitle:A+"normalizeVolume",attributes:{"normalize-volume-toggle":"1",checked:"true"}},{type:"input",translatePathTitle:A+"additionalTime",attributes:{value:"2",type:"number"}},{type:"toggle",translatePathTitle:A+"separateChannels",attributes:{"separate-channels-toggle":"1"}},{type:"input",translatePathTitle:r+"songTitle",attributes:{name:"song_title",type:"text",value:this.seqUI.currentSongTitle}},{type:"input",translatePathTitle:r+"album",attributes:{value:b,name:"album",type:"text"}},{type:"input",translatePathTitle:r+"artist",attributes:{value:I0,name:"artist",type:"text"}},{type:"input",translatePathTitle:r+"genre",attributes:{value:b0,name:"genre",type:"text"}},{type:"button",textContent:this.localeManager.getLocaleString(A+"confirm"),onClick:q0=>{X7(q0.id);let m1=q0.div.querySelector("input[normalize-volume-toggle]").checked,x=q0.div.querySelector("input[type='number']").value,j0=q0.div.querySelector("input[separate-channels-toggle]").checked,K0=q0.div.querySelector("input[name='artist']").value,F1=q0.div.querySelector("input[name='album']").value,B2=q0.div.querySelector("input[name='song_title']").value,b1=q0.div.querySelector("input[name='genre']").value,_5={artist:K0.length>0?K0:void 0,album:F1.length>0?F1:void 0,title:B2.length>0?B2:void 0,genre:b1.length>0?b1:void 0};this._doExportAudioData(m1,parseInt(x),j0,_5)}}];U7(this.localeManager.getLocaleString(A+"title"),m0,9999999,!0,this.localeManager)}async function Pw(){let A=await this.seq.getMIDI();ch(A,await this.synth.getSynthesizerSnapshot());let r=mm(A),l=new Blob([r],{type:"audio/mid"});this.saveBlob(l,`${this.seqUI.currentSongTitle||"unnamed_song"}.mid`)}function Hw(A,r){ei("%cSearching for all used programs and keys...",S1.info);let l=16+A.midiPortChannelOffsets.reduce((x,j0)=>j0>x?j0:x),g=[];for(let x=0;x{I0[F1]>=K0.length||K0[I0[F1]].ticks0;){let x=m0(),j0=A.tracks[x];if(I0[x]>=j0.length){b0--;continue}let K0=j0[I0[x]];if(I0[x]++,K0.messageStatusByte===J3.midiPort){q0[x]=K0.messageData[0];continue}let F1=K0.messageStatusByte&240;if(F1!==J3.noteOn&&F1!==J3.controllerChange&&F1!==J3.programChange&&F1!==J3.systemExclusive)continue;let B2=(K0.messageStatusByte&15)+A.midiPortChannelOffsets[q0[x]]||0,b1=g[B2];switch(F1){case J3.programChange:b1.program=K0.messageData[0],d(b1);break;case J3.controllerChange:if(K0.messageData[0]!==A6.bankSelect||m1==="gs"&&b1.drums)continue;let _5=K0.messageData[1],v2=Math.max(0,_5-A.bankOffset);if(m1==="xg"){let U5=_5===120||_5===126||_5===127;U5!==b1.drums?(b1.drums=U5,b1.bank=b1.drums?128:v2,d(b1)):b1.bank=b1.drums?128:v2;continue}g[B2].bank=v2;break;case J3.noteOn:if(K0.messageData[1]===0)continue;d(b1),b[b1.string].add(`${K0.messageData[0]}-${K0.messageData[1]}`);break;case J3.systemExclusive:if(K0.messageData[0]!==65||K0.messageData[2]!==66||K0.messageData[3]!==18||K0.messageData[4]!==64||!(K0.messageData[5]&16)||K0.messageData[6]!==21){K0.messageData[0]===67&&K0.messageData[2]===76&&K0.messageData[5]===126&&K0.messageData[6]===0&&(m1="xg");continue}let J2=[9,0,1,2,3,4,5,6,7,8,10,11,12,13,14,15][K0.messageData[5]&15]+A.midiPortChannelOffsets[q0[x]],n3=!!(K0.messageData[7]>0&&K0.messageData[5]>>4);b1=g[J2],b1.drums=n3,b1.bank=n3?128:0,d(b1);break}}for(let x of Object.keys(b))b[x].size===0&&(Y5(`%cDetected change but no keys for %c${x}`,S1.info,S1.value),delete b[x]);return t4(),b}function Tm(A,r){function l(d,b){let I0=0;for(let b0=0;b0=q0.min&&j0.key<=q0.max&&j0.velocity>=m1.min&&j0.velocity<=m1.max){x=!0;break}x||(Y5(`%c${m0.sample.sampleName} %cremoved from %c${d.instrumentName}%c. Use count: %c${m0.useCount-1}`,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized),d.safeDeleteZone(b0)&&(I0++,b0--,Y5(`%c${m0.sample.sampleName} %cdeleted`,S1.recognized,S1.info)),m0.sample.useCount<1&&A.deleteSample(m0.sample))}return I0}ar("%cTrimming soundfont...",S1.info);let g=Hw(r,A);ei("%cModifying soundfont...",S1.info),Y5("Detected keys for midi:",g);for(let d=0;d{let x=m1.split("-");return{key:parseInt(x[0]),velocity:parseInt(x[1])}});ei(`%cTrimming %c${b.presetName}`,S1.info,S1.recognized),Y5(`Keys for ${b.presetName}:`,m0);let q0=0;for(let m1=0;m1=j0.min&&B2.key<=j0.max&&B2.velocity>=K0.min&&B2.velocity<=K0.max){F1=!0;let b1=l(x.instrument,m0);Y5(`%cTrimmed off %c${b1}%c zones from %c${x.instrument.instrumentName}`,S1.info,S1.recognized,S1.info,S1.recognized);break}F1||(q0++,b.deleteZone(m1),x.instrument.useCount<1&&A.deleteInstrument(x.instrument),m1--)}Y5(`%cTrimmed off %c${q0}%c zones from %c${b.presetName}`,S1.info,S1.recognized,S1.info,S1.recognized),t4()}}A.removeUnusedElements(),A.soundFontInfo.ICMT=`NOTE: This soundfont was trimmed by SpessaSynth to only contain presets used in "${r.midiName}" -`+A.soundFontInfo.ICMT,J5("%cSoundfont modified!",S1.recognized),e4(),e4()}function qw(){let A=4;for(let g of this.instruments)A+=g.instrumentZones.reduce((d,b)=>(b.generators=b.generators.filter(I0=>I0.generatorType!==R1.sampleID&&I0.generatorType!==R1.keyRange&&I0.generatorType!==R1.velRange),(b.velRange.max!==127||b.velRange.min!==0)&&b.generators.unshift({generatorType:R1.velRange,generatorValue:b.velRange.max<<8|b.velRange.min}),(b.keyRange.max!==127||b.keyRange.min!==0)&&b.generators.unshift({generatorType:R1.keyRange,generatorValue:b.keyRange.max<<8|b.keyRange.min}),b.isGlobal||b.generators.push({generatorType:R1.sampleID,generatorValue:this.samples.indexOf(b.sample)}),b.generators.length*4+d),0);let r=new l6(A),l=0;for(let g of this.instruments)for(let d of g.instrumentZones){d.generatorZoneStartIndex=l;for(let b of d.generators)B9(r,b.generatorType),B9(r,b.generatorValue),l++}return $t(r,0),o8(new ye("igen",r.length,r))}function Yw(A,r,l,g,d){let b=this.samples.map((Y0,m1)=>{l&&Y0.compressSample(g,d);let F=Y0.getRawData();return J5(`%cEncoded sample %c${m1}. ${Y0.sampleName}%c of %c${this.samples.length}`,S1.info,S1.recognized,S1.info,S1.recognized),F}),I0=this.samples.reduce((Y0,m1,F)=>Y0+b[F].length+46,0),b0=new l6(I0);this.samples.forEach((Y0,m1)=>{let F=b[m1],j0,K0,F1=F.length;Y0.isCompressed?(j0=b0.currentIndex,K0=j0+F.length):(j0=b0.currentIndex/2,K0=j0+F.length/2,F1+=46),A.push(j0),b0.set(F,b0.currentIndex),b0.currentIndex+=F1,r.push(K0)});let m0=o8(new ye("smpl",b0.length,b0),new l6([115,100,116,97]));return o8(new ye("LIST",m0.length,m0))}function Jw(A,r){let g=new l6(46*(this.samples.length+1));return this.samples.forEach((d,b)=>{Ii(g,d.sampleName,20);let I0=A[b];$t(g,I0);let b0=r[b];$t(g,b0);let m0=d.sampleLoopStartIndex/2+I0,Y0=d.sampleLoopEndIndex/2+I0;d.isCompressed&&(m0-=I0,Y0-=I0),$t(g,m0),$t(g,Y0),$t(g,d.sampleRate),g[g.currentIndex++]=d.samplePitch,g[g.currentIndex++]=d.samplePitchCorrection,B9(g,d.sampleLink),B9(g,d.sampleType)}),Ii(g,"EOS",46),o8(new ye("shdr",g.length,g))}function Kw(){let A=10;for(let g of this.instruments)A+=g.instrumentZones.reduce((d,b)=>b.modulators.length*10+d,0);let r=new l6(A),l=0;for(let g of this.instruments)for(let d of g.instrumentZones){d.modulatorZoneStartIndex=l;for(let b of d.modulators)B9(r,b.modulatorSource),B9(r,b.modulatorDestination),B9(r,b.transformAmount),B9(r,b.modulationSecondarySrc),B9(r,b.transformType),l++}return C$(r,0,10),o8(new ye("imod",r.length,r))}function Vw(){let A=this.instruments.reduce((b,I0)=>I0.instrumentZones.length*4+b,4),r=new l6(A),l=0,g=0,d=0;for(let b of this.instruments){b.instrumentZoneIndex=l;for(let I0 of b.instrumentZones)I0.zoneID=l,B9(r,g),B9(r,d),g+=I0.generators.length,d+=I0.modulators.length,l++}return B9(r,g),B9(r,d),o8(new ye("ibag",r.length,r))}function zw(){let A=this.instruments.length*22+22,r=new l6(A),l=0,g=0;for(let d of this.instruments)Ii(r,d.instrumentName,20),B9(r,l),l+=d.instrumentZones.length,d.instrumentID=g,g++;return Ii(r,"EOI",20),B9(r,l),o8(new ye("inst",r.length,r))}function Zw(){let A=4;for(let g of this.presets)A+=g.presetZones.reduce((d,b)=>(b.generators=b.generators.filter(I0=>I0.generatorType!==R1.instrument&&I0.generatorType!==R1.keyRange&&I0.generatorType!==R1.velRange),(b.velRange.max!==127||b.velRange.min!==0)&&b.generators.unshift({generatorType:R1.velRange,generatorValue:b.velRange.max<<8|b.velRange.min}),(b.keyRange.max!==127||b.keyRange.min!==0)&&b.generators.unshift({generatorType:R1.keyRange,generatorValue:b.keyRange.max<<8|b.keyRange.min}),b.isGlobal||b.generators.push({generatorType:R1.instrument,generatorValue:this.instruments.indexOf(b.instrument)}),b.generators.length*4+d),0);let r=new l6(A),l=0;for(let g of this.presets)for(let d of g.presetZones){d.generatorZoneStartIndex=l;for(let b of d.generators)B9(r,b.generatorType),B9(r,b.generatorValue);l+=d.generators.length}return B9(r,0),B9(r,0),o8(new ye("pgen",r.length,r))}function Ww(){let A=10;for(let g of this.presets)A+=g.presetZones.reduce((d,b)=>b.modulators.length*10+d,0);let r=new l6(A),l=0;for(let g of this.presets)for(let d of g.presetZones){d.modulatorZoneStartIndex=l;for(let b of d.modulators)B9(r,b.modulatorSource),B9(r,b.modulatorDestination),B9(r,b.transformAmount),B9(r,b.modulationSecondarySrc),B9(r,b.transformType),l++}return C$(r,0,10),o8(new ye("pmod",r.length,r))}function jw(){let A=this.presets.reduce((b,I0)=>I0.presetZones.length*4+b,4),r=new l6(A),l=0,g=0,d=0;for(let b of this.presets){b.presetZoneStartIndex=l;for(let I0 of b.presetZones)I0.zoneID=l,B9(r,g),B9(r,d),g+=I0.generators.length,d+=I0.modulators.length,l++}return B9(r,g),B9(r,d),o8(new ye("pbag",r.length,r))}function Xw(){let A=this.presets.length*38+38,r=new l6(A),l=0;for(let g of this.presets)Ii(r,g.presetName,20),B9(r,g.program),B9(r,g.bank),B9(r,l),$t(r,g.library),$t(r,g.genre),$t(r,g.morphology),l+=g.presetZones.length;return Ii(r,"EOP",20),B9(r,0),B9(r,0),B9(r,l),$t(r,0),$t(r,0),$t(r,0),o8(new ye("phdr",r.length,r))}var VD={compress:!1,compressionQuality:.5,compressionFunction:void 0};function ek(A=VD){if(A.compress&&typeof A.compressionFunction!="function")throw new TypeError("No compression function supplied but compression enabled.");ei("%cSaving soundfont...",S1.info),J5(`%cCompression: %c${A?.compress||"false"}%c quality: %c${A?.compressionQuality||"none"}`,S1.info,S1.recognized,S1.info,S1.recognized),J5("%cWriting INFO...",S1.info);let r=[];this.soundFontInfo.ISFT="SpessaSynth",A?.compress&&(this.soundFontInfo.ifil="3.0");for(let[K5,U5]of Object.entries(this.soundFontInfo))if(K5==="ifil"||K5==="iver"){let $0=parseInt(U5.split(".")[0]),H5=parseInt(U5.split(".")[1]),n6=new l6(4);B9(n6,$0),B9(n6,H5),r.push(o8(new ye(K5,4,n6)))}else{let $0=new l6(U5.length);Ii($0,U5),r.push(o8(new ye(K5,U5.length,$0)))}let l=bs([new l6([73,78,70,79]),...r]),g=o8(new ye("LIST",l.length,l));J5("%cWriting SDTA...",S1.info);let d=[],b=[],I0=Yw.call(this,d,b,A?.compress,A?.compressionQuality||.5,A.compressionFunction);J5("%cWriting PDTA...",S1.info),J5("%cWriting SHDR...",S1.info);let b0=Jw.call(this,d,b);J5("%cWriting IGEN...",S1.info);let m0=qw.call(this);J5("%cWriting IMOD...",S1.info);let Y0=Kw.call(this);J5("%cWriting IBAG...",S1.info);let m1=Vw.call(this);J5("%cWriting INST...",S1.info);let F=zw.call(this),j0=Zw.call(this);J5("%cWriting PMOD...",S1.info);let K0=Ww.call(this);J5("%cWriting PBAG...",S1.info);let F1=jw.call(this);J5("%cWriting PHDR...",S1.info);let B2=Xw.call(this),b1=bs([new l6([112,100,116,97]),B2,F1,K0,j0,F,m1,Y0,m0,b0]),_5=o8(new ye("LIST",b1.length,b1));J5("%cWriting the output file...",S1.info);let v2=bs([new l6([115,102,98,107]),g,I0,_5]),Y2=o8(new ye("RIFF",v2.length,v2));return J5(`%cSaved succesfully! Final file size: %c${Y2.length}`,S1.info,S1.recognized),e4(),Y2}var y$=class A{constructor(r=void 0){this.soundFontInfo={},this.presets=[],this.samples=[],this.instruments=[],r?.presets&&(this.presets.push(...r.presets),this.soundFontInfo=r.info)}removeUnusedElements(){this.instruments.forEach(r=>{r.useCount<1&&r.instrumentZones.forEach(l=>{l.isGlobal||l.sample.useCount--})}),this.instruments=this.instruments.filter(r=>r.useCount>0),this.samples=this.samples.filter(r=>r.useCount>0)}deleteInstrument(r){if(r.useCount>0)throw new Error(`Cannot delete an instrument that has ${r.useCount} usages.`);this.instruments.splice(this.instruments.indexOf(r),1),r.deleteInstrument(),this.removeUnusedElements()}deleteSample(r){if(r.useCount>0)throw new Error(`Cannot delete sample that has ${r.useCount} usages.`);this.samples.splice(this.samples.indexOf(r),1),this.removeUnusedElements()}deletePreset(r){r.deletePreset(),this.presets.splice(this.presets.indexOf(r),1),this.removeUnusedElements()}getPresetNoFallback(r,l,g=!1){let d=this.presets.find(b=>b.bank===r&&b.program===l);if(d)return d;if(g!==!1)return r===128?this.presets.find(b=>b.bank===128):this.presets.find(b=>b.program===l)}setSampleIDOffset(r){this.presets.forEach(l=>l.sampleIDOffset=r)}getPreset(r,l){let g=this.presets.find(d=>d.bank===r&&d.program===l);return g||(g=this.presets.find(d=>d.program===l&&d.bank!==128),r===128&&(g=this.presets.find(d=>d.bank===128&&d.program===l),g||(g=this.presets.find(d=>d.bank===128))),g&&b4(`%cPreset ${r}.${l} not found. Replaced with %c${g.presetName} (${g.bank}.${g.program})`,S1.warn,S1.recognized)),g||(b4(`Preset ${l} not found. Defaulting to`,this.presets[0].presetName),g=this.presets[0]),g}getPresetByName(r){let l=this.presets.find(g=>g.presetName===r);return l||(b4("Preset not found. Defaulting to:",this.presets[0].presetName),l=this.presets[0]),l}static mergeSoundfonts(...r){let l=r.shift(),g=l.presets;for(;r.length;)r.shift().presets.forEach(b=>{g.find(I0=>I0.bank===b.bank&&I0.program===b.program)===void 0&&g.push(b)});return new A({presets:g,info:l.soundFontInfo})}};y$.prototype.write=ek;function tk(A){ei("%cLoading instruments...",S1.info);for(let r=0;rr.deleteZone()),this.presetZones.length=0}deleteZone(r){this.presetZones[r].deleteZone(),this.presetZones.splice(r,1)}preload(r,l){for(let g=r;g{b.sample.isSampleLoaded||b.sample.getAudioData()})}preloadSpecific(r,l){this.getSamplesAndGenerators(r,l).forEach(g=>{g.sample.isSampleLoaded||g.sample.getAudioData()})}getSamplesAndGenerators(r,l){let g=this.foundSamplesAndGenerators[r][l];if(g)return g;if(this.presetZones.length<1)return[];function d(j0,K0,F1){return F1>=j0&&F1<=K0}function b(j0,K0){return j0.modulatorSource===K0.modulatorSource&&j0.modulatorDestination===K0.modulatorDestination&&j0.modulationSecondarySrc===K0.modulationSecondarySrc&&j0.transformType===K0.transformType}function I0(j0,K0){j0.push(...K0.filter(F1=>!j0.find(B2=>B2.generatorType===F1.generatorType)))}function b0(j0,K0){j0.push(...K0.filter(F1=>!j0.find(B2=>b(F1,B2))))}let m0=[],Y0=this.presetZones[0].isGlobal?[...this.presetZones[0].generators]:[],m1=this.presetZones[0].isGlobal?[...this.presetZones[0].modulators]:[];return this.presetZones.filter(j0=>d(j0.keyRange.min,j0.keyRange.max,r)&&d(j0.velRange.min,j0.velRange.max,l)&&!j0.isGlobal).forEach(j0=>{if(j0.instrument.instrumentZones.length<1)return;let K0=j0.generators,F1=j0.modulators,B2=j0.instrument.instrumentZones[0].isGlobal?[...j0.instrument.instrumentZones[0].generators]:[],b1=j0.instrument.instrumentZones[0].isGlobal?[...j0.instrument.instrumentZones[0].modulators]:[];j0.instrument.instrumentZones.filter(v2=>d(v2.keyRange.min,v2.keyRange.max,r)&&d(v2.velRange.min,v2.velRange.max,l)&&!v2.isGlobal).forEach(v2=>{let Y2=[...v2.generators],K5=[...v2.modulators];I0(K0,Y0),I0(Y2,B2),b0(F1,m1),b0(K5,b1),b0(K5,uy);let U5=[...K5];for(let $0=0;$0b(H5,b6));n6!==-1?U5[n6]=U5[n6].sumTransform(H5):U5.push(H5)}m0.push({instrumentGenerators:Y2,presetGenerators:K0,modulators:U5,sample:v2.sample,sampleID:v2.generators.find($0=>$0.generatorType===R1.sampleID).generatorValue})})}),this.foundSamplesAndGenerators[r][l]=m0,m0}};var kC=class{velRange={min:0,max:127};keyRange={min:0,max:127};isGlobal=!1;generators=[];modulators=[]};var Fo=class extends kC{sample=void 0;useCount=0;deleteZone(){this.useCount--,!this.isGlobal&&this.sample.useCount--}},uh=class extends kC{instrument=void 0;deleteZone(){this.isGlobal||this.instrument.removeUseCount()}};var Ih=class{constructor(){this.instrumentName="",this.instrumentZones=[],this._useCount=0}addUseCount(){this._useCount++,this.instrumentZones.forEach(r=>r.useCount++)}removeUseCount(){this._useCount--;for(let r=0;rr.deleteZone()),this.instrumentZones.length=0}safeDeleteZone(r){return this.instrumentZones[r].useCount--,this.instrumentZones[r].useCount<1?(this.deleteZone(r),!0):!1}deleteZone(r){this.instrumentZones[r].deleteZone(),this.instrumentZones.splice(r,1)}};var Gm=class extends fh{constructor(r,l){super(),this.program=l&127,this.bank=r>>8&127,r>>31&&(this.bank=128),this.DLSInstrument=new Ih,this.DLSInstrument.addUseCount();let d=new uh;d.instrument=this.DLSInstrument,this.presetZones=[d]}};function ik(A){this.verifyHeader(A,"LIST"),this.verifyText(Fe(A.chunkData,4),"ins ");let r=[];for(;A.chunkData.length>A.chunkData.currentIndex;)r.push(h4(A.chunkData));let l=r.find(K0=>K0.header==="insh");if(!l)throw e4(),new Error("No instrument header!");let g=n3(l.chunkData,4),d=n3(l.chunkData,4),b=n3(l.chunkData,4),I0=new Gm(d,b),b0="unnamedPreset",m0=Si(r,"INFO");if(m0){let K0=h4(m0.chunkData);for(;K0.header!=="INAM";)K0=h4(m0.chunkData);b0=Fe(K0.chunkData,K0.chunkData.length).trim()}I0.presetName=b0,I0.DLSInstrument.instrumentName=b0,ar(`%cParsing %c"${b0}"%c...`,S1.info,S1.recognized,S1.info);let Y0=Si(r,"lrgn");if(!Y0)throw e4(),new Error("No region list!");let m1=new Fo;m1.isGlobal=!0;let F=Si(r,"lart"),j0=Si(r,"lar2");this.readLart(F,j0,m1),I0.DLSInstrument.instrumentZones.push(m1);for(let K0=0;K0>10&15;_5===Qn.linear&&b1!==Qn.linear&&(_5=b1);let v2=g>>14&1,Y2=g>>15&1;I0===R1.initialAttenuation&&(Y2=!Y2),F=pn(_5,v2,Y2,b0.isCC,b0.enum)}let j0=g>>4&15,K0=g>>8&1,F1=g>>9&1,B2=pn(j0,K0,F1,m1.isCC,m1.enum);if(m0){let b1=B2;B2=F,F=b1}return new o7({srcEnum:F,secSrcEnum:B2,dest:I0,transform:0,amt:d})}function PB(A,r){let l=A.chunkData,g=[],d=[];n3(l,4);let b=n3(l,4);for(let I0=0;I0>16;if(b0===0&&m0===0&&m1===0){let j0;switch(Y0){case E6.pan:j0=new n9(R1.pan,F);break;case E6.gain:j0=new n9(R1.initialAttenuation,-F*10/.4);break;case E6.filterCutoff:j0=new n9(R1.initialFilterFc,F);break;case E6.filterQ:j0=new n9(R1.initialFilterQ,F);break;case E6.modLfoFreq:j0=new n9(R1.freqModLFO,F);break;case E6.modLfoDelay:j0=new n9(R1.delayModLFO,F);break;case E6.vibLfoFreq:j0=new n9(R1.freqVibLFO,F);break;case E6.vibLfoDelay:j0=new n9(R1.delayVibLFO,F);break;case E6.volEnvDelay:j0=new n9(R1.delayVolEnv,F);break;case E6.volEnvAttack:j0=new n9(R1.attackVolEnv,F);break;case E6.volEnvHold:j0=new n9(R1.holdVolEnv,F);break;case E6.volEnvDecay:j0=new n9(R1.decayVolEnv,F);break;case E6.volEnvRelease:j0=new n9(R1.releaseVolEnv,F);break;case E6.volEnvSustain:let K0=(1e3-F)/10;j0=new n9(R1.sustainVolEnv,K0*10);break;case E6.modEnvDelay:j0=new n9(R1.delayModEnv,F);break;case E6.modEnvAttack:j0=new n9(R1.attackModEnv,F);break;case E6.modEnvHold:j0=new n9(R1.holdModEnv,F);break;case E6.modEnvDecay:j0=new n9(R1.decayModEnv,F);break;case E6.modEnvRelease:j0=new n9(R1.releaseModEnv,F);break;case E6.modEnvSustain:let F1=1e3-F;j0=new n9(R1.sustainModEnv,F1);break;case E6.reverbSend:j0=new n9(R1.reverbEffectsSend,F);break;case E6.chorusSend:j0=new n9(R1.chorusEffectsSend,F);break;case E6.pitch:let B2=Math.floor(F/100),b1=Math.floor(F-B2*100);j0=new n9(R1.fineTune,b1),g.push(new n9(R1.coarseTune,B2));break}j0&&g.push(j0)}else{let j0=!0;if(m0===p4.none?b0===p4.modLfo&&Y0===E6.pitch?g.push(new n9(R1.modLfoToPitch,F)):b0===p4.modLfo&&Y0===E6.gain?g.push(new n9(R1.modLfoToVolume,F)):b0===p4.modLfo&&Y0===E6.filterCutoff?g.push(new n9(R1.modLfoToFilterFc,F)):b0===p4.vibratoLfo&&Y0===E6.pitch?g.push(new n9(R1.vibLfoToPitch,F)):b0===p4.modEnv&&Y0===E6.pitch?g.push(new n9(R1.modEnvToPitch,F)):b0===p4.modEnv&&Y0===E6.filterCutoff?g.push(new n9(R1.modEnvToFilterFc,F)):b0===p4.keyNum&&Y0===E6.volEnvHold?g.push(new n9(R1.keyNumToVolEnvHold,F/-127)):b0===p4.keyNum&&Y0===E6.volEnvDecay?g.push(new n9(R1.keyNumToVolEnvDecay,F/-127)):b0===p4.keyNum&&Y0===E6.modEnvHold?g.push(new n9(R1.keyNumToModEnvHold,F/-127)):b0===p4.keyNum&&Y0===E6.modEnvDecay?g.push(new n9(R1.keyNumToModEnvDecay,F/-127)):j0=!1:j0=!1,j0===!1){let K0=nk(b0,m0,Y0,m1,F);K0?(d.push(K0),J5("%cSucceeded converting to SF2 Modulator!",S1.recognized)):b4("Failed converting to SF2 Modulator!")}}}return d.push(new o7({srcEnum:219,dest:R1.reverbEffectsSend,amt:1e3,secSrcEnum:0,transform:0}),new o7({srcEnum:221,dest:R1.chorusEffectsSend,amt:1e3,secSrcEnum:0,transform:0})),r&&d.push(new o7({srcEnum:129,dest:R1.vibLfoToPitch,amt:0,secSrcEnum:0,transform:0}),new o7({srcEnum:13,dest:R1.vibLfoToPitch,amt:0,secSrcEnum:0,transform:0})),{modulators:d,generators:g}}function sk(A,r,l){if(A)for(;A.chunkData.currentIndexA.chunkData.currentIndex;)r.push(h4(A.chunkData));let l=r.find($0=>$0.header==="rgnh"),g=n3(l.chunkData,2),d=n3(l.chunkData,2),b=n3(l.chunkData,2),I0=n3(l.chunkData,2),b0=new Nm({min:g,max:d},{min:b,max:I0});n3(l.chunkData,2);let m0=n3(l.chunkData,2);m0!==0&&b0.generators.push(new n9(R1.exclusiveClass,m0));let Y0=Si(r,"lart"),m1=Si(r,"lar2");this.readLart(Y0,m1,b0),b0.isGlobal=!1;let F=r.find($0=>$0.header==="wsmp");n3(F.chunkData,4);let j0=n3(F.chunkData,2);n3(F.chunkData,2);let B2=(n3(F.chunkData,4)|0)/-655360*10/.4;n3(F.chunkData,4);let b1=n3(F.chunkData,4),_5,v2={start:0,end:0};if(b1===0)_5=0;else{n3(F.chunkData,4),n3(F.chunkData,4)===0?_5=1:_5=3,v2.start=n3(F.chunkData,4);let H5=n3(F.chunkData,4);v2.end=v2.start+H5}let Y2=r.find($0=>$0.header==="wlnk");if(Y2===void 0)return;n3(Y2.chunkData,2),n3(Y2.chunkData,2),n3(Y2.chunkData,4);let K5=n3(Y2.chunkData,4),U5=this.samples[K5];if(U5===void 0)throw new Error("Invalid sample ID!");return b0.setWavesample(B2,_5,v2,j0,U5,K5),b0}var dh=class{constructor(r,l,g,d,b,I0,b0,m0){this.sampleName=r,this.sampleRate=l,this.samplePitch=g,this.samplePitchCorrection=d,this.sampleLink=b,this.sampleType=I0,this.sampleLoopStartIndex=b0,this.sampleLoopEndIndex=m0,this.isCompressed=(I0&16)>0,this.compressedData=void 0,this.useCount=0}getRawData(){let r=new Error("Not implemented");throw r.name="NotImplementedError",r}compressSample(r,l){if(!this.isCompressed)try{this.compressedData=l([this.getAudioData()],1,this.sampleRate,r),this.sampleType|=16,this.isCompressed=!0}catch{b4(`Failed to compress ${this.sampleName}. Leaving as uncompressed!`),this.isCompressed=!1,this.compressedData=void 0,this.sampleType&=-17}}getAudioData(){let r=new Error("Not implemented");throw r.name="NotImplementedError",r}};var Um=class extends dh{constructor(r,l,g,d,b,I0,b0){super(r,l,g,d,0,1,b*2,(I0-1)*2),this.sampleData=b0}getAudioData(){return this.sampleData}sampleData;getRawData(){let r=new Uint8Array(this.sampleData.length*2);for(let l=0;l>8&255}return r}};function ok(A){ei("%cLoading Wave samples...",S1.recognized);let r=0;for(;A.chunkData.currentIndexn6.header==="fmt ");if(!d)throw new Error("No fmt chunk in the wave file!");if(n3(d.chunkData,2)!==1)throw new Error("Only PCM format in WAVE is supported.");if(n3(d.chunkData,2)!==1)throw new Error("Only mono samples are supported.");let b0=n3(d.chunkData,4);n3(d.chunkData,4),n3(d.chunkData,2);let m0=n3(d.chunkData,2),Y0=m0/8,m1=Math.pow(2,Y0*8-1),F=Math.pow(2,Y0*8),j0,K0=!1;m0===8?(j0=255,K0=!0):j0=m1;let F1=g.find(n6=>n6.header==="data");if(!F1)throw new Error("No data chunk in the wave chunk!");let B2=F1.size/Y0,b1=new Float32Array(B2);for(let n6=0;n6=m1&&(b6-=F),b1[n6]=b6/j0)}let _5=60,v2=0,Y2=0,K5=b1.length-1,U5=g.find(n6=>n6.header==="wsmp");if(U5){if(n3(U5.chunkData,4),_5=n3(U5.chunkData,2),v2=lh(U5.chunkData[U5.chunkData.currentIndex++],U5.chunkData[U5.chunkData.currentIndex++]),n3(U5.chunkData,4),n3(U5.chunkData,4),n3(U5.chunkData,4)===1){n3(U5.chunkData,8),Y2=n3(U5.chunkData,4);let b6=n3(U5.chunkData,4);K5=Y2+b6}}else b4("No wsmp chunk in wave... using sane defaults.");let $0=Si(g,"INFO"),H5=`Unnamed ${r}`;if($0){let n6=h4($0.chunkData);for(;n6.header!=="INAM"&&$0.chunkData.currentIndex<$0.chunkData.length;)n6=h4($0.chunkData);n6.header==="INAM"&&(H5=Fe(n6.chunkData,n6.size).trim())}this.samples.push(new Um(H5,b0,_5,v2,Y2,B2,b1)),r++,J5(`%cLoaded sample %c${H5}`,S1.info,S1.recognized)}e4()}var Rs=class extends y${constructor(r){if(super(),this.dataArray=new l6(r),ar("%cParsing DLS...",S1.info),!this.dataArray)throw e4(),new TypeError("No data!");let l=h4(this.dataArray,!1);this.verifyHeader(l,"riff"),this.verifyText(Fe(this.dataArray,4).toLowerCase(),"dls ");let g=[];for(;this.dataArray.currentIndex(b.generators=b.generators.filter(I0=>I0.generatorType!==R1.sampleID&&I0.generatorType!==R1.keyRange&&I0.generatorType!==R1.velRange),(b.velRange.max!==127||b.velRange.min!==0)&&b.generators.unshift({generatorType:R1.velRange,generatorValue:b.velRange.max<<8|b.velRange.min}),(b.keyRange.max!==127||b.keyRange.min!==0)&&b.generators.unshift({generatorType:R1.keyRange,generatorValue:b.keyRange.max<<8|b.keyRange.min}),b.isGlobal||b.generators.push({generatorType:R1.sampleID,generatorValue:this.samples.indexOf(b.sample)}),b.generators.length*4+d),0);let r=new l6(A),l=0;for(let g of this.instruments)for(let d of g.instrumentZones){d.generatorZoneStartIndex=l;for(let b of d.generators)B9(r,b.generatorType),B9(r,b.generatorValue),l++}return $t(r,0),o8(new Qe("igen",r.length,r))}function Yw(A,r,l,g,d){let b=this.samples.map((q0,m1)=>{l&&q0.compressSample(g,d);let x=q0.getRawData();return Y5(`%cEncoded sample %c${m1}. ${q0.sampleName}%c of %c${this.samples.length}`,S1.info,S1.recognized,S1.info,S1.recognized),x}),I0=this.samples.reduce((q0,m1,x)=>q0+b[x].length+46,0),b0=new l6(I0);this.samples.forEach((q0,m1)=>{let x=b[m1],j0,K0,F1=x.length;q0.isCompressed?(j0=b0.currentIndex,K0=j0+x.length):(j0=b0.currentIndex/2,K0=j0+x.length/2,F1+=46),A.push(j0),b0.set(x,b0.currentIndex),b0.currentIndex+=F1,r.push(K0)});let m0=o8(new Qe("smpl",b0.length,b0),new l6([115,100,116,97]));return o8(new Qe("LIST",m0.length,m0))}function Jw(A,r){let g=new l6(46*(this.samples.length+1));return this.samples.forEach((d,b)=>{Ii(g,d.sampleName,20);let I0=A[b];$t(g,I0);let b0=r[b];$t(g,b0);let m0=d.sampleLoopStartIndex/2+I0,q0=d.sampleLoopEndIndex/2+I0;d.isCompressed&&(m0-=I0,q0-=I0),$t(g,m0),$t(g,q0),$t(g,d.sampleRate),g[g.currentIndex++]=d.samplePitch,g[g.currentIndex++]=d.samplePitchCorrection,B9(g,d.sampleLink),B9(g,d.sampleType)}),Ii(g,"EOS",46),o8(new Qe("shdr",g.length,g))}function Kw(){let A=10;for(let g of this.instruments)A+=g.instrumentZones.reduce((d,b)=>b.modulators.length*10+d,0);let r=new l6(A),l=0;for(let g of this.instruments)for(let d of g.instrumentZones){d.modulatorZoneStartIndex=l;for(let b of d.modulators)B9(r,b.modulatorSource),B9(r,b.modulatorDestination),B9(r,b.transformAmount),B9(r,b.modulationSecondarySrc),B9(r,b.transformType),l++}return C$(r,0,10),o8(new Qe("imod",r.length,r))}function Vw(){let A=this.instruments.reduce((b,I0)=>I0.instrumentZones.length*4+b,4),r=new l6(A),l=0,g=0,d=0;for(let b of this.instruments){b.instrumentZoneIndex=l;for(let I0 of b.instrumentZones)I0.zoneID=l,B9(r,g),B9(r,d),g+=I0.generators.length,d+=I0.modulators.length,l++}return B9(r,g),B9(r,d),o8(new Qe("ibag",r.length,r))}function zw(){let A=this.instruments.length*22+22,r=new l6(A),l=0,g=0;for(let d of this.instruments)Ii(r,d.instrumentName,20),B9(r,l),l+=d.instrumentZones.length,d.instrumentID=g,g++;return Ii(r,"EOI",20),B9(r,l),o8(new Qe("inst",r.length,r))}function Zw(){let A=4;for(let g of this.presets)A+=g.presetZones.reduce((d,b)=>(b.generators=b.generators.filter(I0=>I0.generatorType!==R1.instrument&&I0.generatorType!==R1.keyRange&&I0.generatorType!==R1.velRange),(b.velRange.max!==127||b.velRange.min!==0)&&b.generators.unshift({generatorType:R1.velRange,generatorValue:b.velRange.max<<8|b.velRange.min}),(b.keyRange.max!==127||b.keyRange.min!==0)&&b.generators.unshift({generatorType:R1.keyRange,generatorValue:b.keyRange.max<<8|b.keyRange.min}),b.isGlobal||b.generators.push({generatorType:R1.instrument,generatorValue:this.instruments.indexOf(b.instrument)}),b.generators.length*4+d),0);let r=new l6(A),l=0;for(let g of this.presets)for(let d of g.presetZones){d.generatorZoneStartIndex=l;for(let b of d.generators)B9(r,b.generatorType),B9(r,b.generatorValue);l+=d.generators.length}return B9(r,0),B9(r,0),o8(new Qe("pgen",r.length,r))}function Ww(){let A=10;for(let g of this.presets)A+=g.presetZones.reduce((d,b)=>b.modulators.length*10+d,0);let r=new l6(A),l=0;for(let g of this.presets)for(let d of g.presetZones){d.modulatorZoneStartIndex=l;for(let b of d.modulators)B9(r,b.modulatorSource),B9(r,b.modulatorDestination),B9(r,b.transformAmount),B9(r,b.modulationSecondarySrc),B9(r,b.transformType),l++}return C$(r,0,10),o8(new Qe("pmod",r.length,r))}function jw(){let A=this.presets.reduce((b,I0)=>I0.presetZones.length*4+b,4),r=new l6(A),l=0,g=0,d=0;for(let b of this.presets){b.presetZoneStartIndex=l;for(let I0 of b.presetZones)I0.zoneID=l,B9(r,g),B9(r,d),g+=I0.generators.length,d+=I0.modulators.length,l++}return B9(r,g),B9(r,d),o8(new Qe("pbag",r.length,r))}function Xw(){let A=this.presets.length*38+38,r=new l6(A),l=0;for(let g of this.presets)Ii(r,g.presetName,20),B9(r,g.program),B9(r,g.bank),B9(r,l),$t(r,g.library),$t(r,g.genre),$t(r,g.morphology),l+=g.presetZones.length;return Ii(r,"EOP",20),B9(r,0),B9(r,0),B9(r,l),$t(r,0),$t(r,0),$t(r,0),o8(new Qe("phdr",r.length,r))}var VD={compress:!1,compressionQuality:.5,compressionFunction:void 0};function ek(A=VD){if(A.compress&&typeof A.compressionFunction!="function")throw new TypeError("No compression function supplied but compression enabled.");ei("%cSaving soundfont...",S1.info),Y5(`%cCompression: %c${A?.compress||"false"}%c quality: %c${A?.compressionQuality||"none"}`,S1.info,S1.recognized,S1.info,S1.recognized),Y5("%cWriting INFO...",S1.info);let r=[];this.soundFontInfo.ISFT="SpessaSynth",A?.compress&&(this.soundFontInfo.ifil="3.0");for(let[n3,U5]of Object.entries(this.soundFontInfo))if(n3==="ifil"||n3==="iver"){let a0=parseInt(U5.split(".")[0]),J5=parseInt(U5.split(".")[1]),n6=new l6(4);B9(n6,a0),B9(n6,J5),r.push(o8(new Qe(n3,4,n6)))}else{let a0=new l6(U5.length);Ii(a0,U5),r.push(o8(new Qe(n3,U5.length,a0)))}let l=bs([new l6([73,78,70,79]),...r]),g=o8(new Qe("LIST",l.length,l));Y5("%cWriting SDTA...",S1.info);let d=[],b=[],I0=Yw.call(this,d,b,A?.compress,A?.compressionQuality||.5,A.compressionFunction);Y5("%cWriting PDTA...",S1.info),Y5("%cWriting SHDR...",S1.info);let b0=Jw.call(this,d,b);Y5("%cWriting IGEN...",S1.info);let m0=qw.call(this);Y5("%cWriting IMOD...",S1.info);let q0=Kw.call(this);Y5("%cWriting IBAG...",S1.info);let m1=Vw.call(this);Y5("%cWriting INST...",S1.info);let x=zw.call(this),j0=Zw.call(this);Y5("%cWriting PMOD...",S1.info);let K0=Ww.call(this);Y5("%cWriting PBAG...",S1.info);let F1=jw.call(this);Y5("%cWriting PHDR...",S1.info);let B2=Xw.call(this),b1=bs([new l6([112,100,116,97]),B2,F1,K0,j0,x,m1,q0,m0,b0]),_5=o8(new Qe("LIST",b1.length,b1));Y5("%cWriting the output file...",S1.info);let v2=bs([new l6([115,102,98,107]),g,I0,_5]),J2=o8(new Qe("RIFF",v2.length,v2));return Y5(`%cSaved succesfully! Final file size: %c${J2.length}`,S1.info,S1.recognized),t4(),J2}var y$=class A{constructor(r=void 0){this.soundFontInfo={},this.presets=[],this.samples=[],this.instruments=[],r?.presets&&(this.presets.push(...r.presets),this.soundFontInfo=r.info)}removeUnusedElements(){this.instruments.forEach(r=>{r.useCount<1&&r.instrumentZones.forEach(l=>{l.isGlobal||l.sample.useCount--})}),this.instruments=this.instruments.filter(r=>r.useCount>0),this.samples=this.samples.filter(r=>r.useCount>0)}deleteInstrument(r){if(r.useCount>0)throw new Error(`Cannot delete an instrument that has ${r.useCount} usages.`);this.instruments.splice(this.instruments.indexOf(r),1),r.deleteInstrument(),this.removeUnusedElements()}deleteSample(r){if(r.useCount>0)throw new Error(`Cannot delete sample that has ${r.useCount} usages.`);this.samples.splice(this.samples.indexOf(r),1),this.removeUnusedElements()}deletePreset(r){r.deletePreset(),this.presets.splice(this.presets.indexOf(r),1),this.removeUnusedElements()}getPresetNoFallback(r,l,g=!1){let d=this.presets.find(b=>b.bank===r&&b.program===l);if(d)return d;if(g!==!1)return r===128?this.presets.find(b=>b.bank===128):this.presets.find(b=>b.program===l)}setSampleIDOffset(r){this.presets.forEach(l=>l.sampleIDOffset=r)}getPreset(r,l){let g=this.presets.find(d=>d.bank===r&&d.program===l);return g||(g=this.presets.find(d=>d.program===l&&d.bank!==128),r===128&&(g=this.presets.find(d=>d.bank===128&&d.program===l),g||(g=this.presets.find(d=>d.bank===128))),g&&_4(`%cPreset ${r}.${l} not found. Replaced with %c${g.presetName} (${g.bank}.${g.program})`,S1.warn,S1.recognized)),g||(_4(`Preset ${l} not found. Defaulting to`,this.presets[0].presetName),g=this.presets[0]),g}getPresetByName(r){let l=this.presets.find(g=>g.presetName===r);return l||(_4("Preset not found. Defaulting to:",this.presets[0].presetName),l=this.presets[0]),l}static mergeSoundfonts(...r){let l=r.shift(),g=l.presets;for(;r.length;)r.shift().presets.forEach(b=>{g.find(I0=>I0.bank===b.bank&&I0.program===b.program)===void 0&&g.push(b)});return new A({presets:g,info:l.soundFontInfo})}};y$.prototype.write=ek;function tk(A){ei("%cLoading instruments...",S1.info);for(let r=0;rr.deleteZone()),this.presetZones.length=0}deleteZone(r){this.presetZones[r].deleteZone(),this.presetZones.splice(r,1)}preload(r,l){for(let g=r;g{b.sample.isSampleLoaded||b.sample.getAudioData()})}preloadSpecific(r,l){this.getSamplesAndGenerators(r,l).forEach(g=>{g.sample.isSampleLoaded||g.sample.getAudioData()})}getSamplesAndGenerators(r,l){let g=this.foundSamplesAndGenerators[r][l];if(g)return g;if(this.presetZones.length<1)return[];function d(j0,K0,F1){return F1>=j0&&F1<=K0}function b(j0,K0){return j0.modulatorSource===K0.modulatorSource&&j0.modulatorDestination===K0.modulatorDestination&&j0.modulationSecondarySrc===K0.modulationSecondarySrc&&j0.transformType===K0.transformType}function I0(j0,K0){j0.push(...K0.filter(F1=>!j0.find(B2=>B2.generatorType===F1.generatorType)))}function b0(j0,K0){j0.push(...K0.filter(F1=>!j0.find(B2=>b(F1,B2))))}let m0=[],q0=this.presetZones[0].isGlobal?[...this.presetZones[0].generators]:[],m1=this.presetZones[0].isGlobal?[...this.presetZones[0].modulators]:[];return this.presetZones.filter(j0=>d(j0.keyRange.min,j0.keyRange.max,r)&&d(j0.velRange.min,j0.velRange.max,l)&&!j0.isGlobal).forEach(j0=>{if(j0.instrument.instrumentZones.length<1)return;let K0=j0.generators,F1=j0.modulators,B2=j0.instrument.instrumentZones[0].isGlobal?[...j0.instrument.instrumentZones[0].generators]:[],b1=j0.instrument.instrumentZones[0].isGlobal?[...j0.instrument.instrumentZones[0].modulators]:[];j0.instrument.instrumentZones.filter(v2=>d(v2.keyRange.min,v2.keyRange.max,r)&&d(v2.velRange.min,v2.velRange.max,l)&&!v2.isGlobal).forEach(v2=>{let J2=[...v2.generators],n3=[...v2.modulators];I0(K0,q0),I0(J2,B2),b0(F1,m1),b0(n3,b1),b0(n3,uy);let U5=[...n3];for(let a0=0;a0b(J5,c6));n6!==-1?U5[n6]=U5[n6].sumTransform(J5):U5.push(J5)}m0.push({instrumentGenerators:J2,presetGenerators:K0,modulators:U5,sample:v2.sample,sampleID:v2.generators.find(a0=>a0.generatorType===R1.sampleID).generatorValue})})}),this.foundSamplesAndGenerators[r][l]=m0,m0}};var kC=class{velRange={min:0,max:127};keyRange={min:0,max:127};isGlobal=!1;generators=[];modulators=[]};var Fo=class extends kC{sample=void 0;useCount=0;deleteZone(){this.useCount--,!this.isGlobal&&this.sample.useCount--}},uh=class extends kC{instrument=void 0;deleteZone(){this.isGlobal||this.instrument.removeUseCount()}};var Ih=class{constructor(){this.instrumentName="",this.instrumentZones=[],this._useCount=0}addUseCount(){this._useCount++,this.instrumentZones.forEach(r=>r.useCount++)}removeUseCount(){this._useCount--;for(let r=0;rr.deleteZone()),this.instrumentZones.length=0}safeDeleteZone(r){return this.instrumentZones[r].useCount--,this.instrumentZones[r].useCount<1?(this.deleteZone(r),!0):!1}deleteZone(r){this.instrumentZones[r].deleteZone(),this.instrumentZones.splice(r,1)}};var Gm=class extends fh{constructor(r,l){super(),this.program=l&127,this.bank=r>>8&127,r>>31&&(this.bank=128),this.DLSInstrument=new Ih,this.DLSInstrument.addUseCount();let d=new uh;d.instrument=this.DLSInstrument,this.presetZones=[d]}};function ik(A){this.verifyHeader(A,"LIST"),this.verifyText(xe(A.chunkData,4),"ins ");let r=[];for(;A.chunkData.length>A.chunkData.currentIndex;)r.push(f4(A.chunkData));let l=r.find(K0=>K0.header==="insh");if(!l)throw t4(),new Error("No instrument header!");let g=r3(l.chunkData,4),d=r3(l.chunkData,4),b=r3(l.chunkData,4),I0=new Gm(d,b),b0="unnamedPreset",m0=Si(r,"INFO");if(m0){let K0=f4(m0.chunkData);for(;K0.header!=="INAM";)K0=f4(m0.chunkData);b0=xe(K0.chunkData,K0.chunkData.length).trim()}I0.presetName=b0,I0.DLSInstrument.instrumentName=b0,ar(`%cParsing %c"${b0}"%c...`,S1.info,S1.recognized,S1.info);let q0=Si(r,"lrgn");if(!q0)throw t4(),new Error("No region list!");let m1=new Fo;m1.isGlobal=!0;let x=Si(r,"lart"),j0=Si(r,"lar2");this.readLart(x,j0,m1),I0.DLSInstrument.instrumentZones.push(m1);for(let K0=0;K0>10&15;_5===Qn.linear&&b1!==Qn.linear&&(_5=b1);let v2=g>>14&1,J2=g>>15&1;I0===R1.initialAttenuation&&(J2=!J2),x=pn(_5,v2,J2,b0.isCC,b0.enum)}let j0=g>>4&15,K0=g>>8&1,F1=g>>9&1,B2=pn(j0,K0,F1,m1.isCC,m1.enum);if(m0){let b1=B2;B2=x,x=b1}return new o7({srcEnum:x,secSrcEnum:B2,dest:I0,transform:0,amt:d})}function PB(A,r){let l=A.chunkData,g=[],d=[];r3(l,4);let b=r3(l,4);for(let I0=0;I0>16;if(b0===0&&m0===0&&m1===0){let j0;switch(q0){case C6.pan:j0=new n9(R1.pan,x);break;case C6.gain:j0=new n9(R1.initialAttenuation,-x*10/.4);break;case C6.filterCutoff:j0=new n9(R1.initialFilterFc,x);break;case C6.filterQ:j0=new n9(R1.initialFilterQ,x);break;case C6.modLfoFreq:j0=new n9(R1.freqModLFO,x);break;case C6.modLfoDelay:j0=new n9(R1.delayModLFO,x);break;case C6.vibLfoFreq:j0=new n9(R1.freqVibLFO,x);break;case C6.vibLfoDelay:j0=new n9(R1.delayVibLFO,x);break;case C6.volEnvDelay:j0=new n9(R1.delayVolEnv,x);break;case C6.volEnvAttack:j0=new n9(R1.attackVolEnv,x);break;case C6.volEnvHold:j0=new n9(R1.holdVolEnv,x);break;case C6.volEnvDecay:j0=new n9(R1.decayVolEnv,x);break;case C6.volEnvRelease:j0=new n9(R1.releaseVolEnv,x);break;case C6.volEnvSustain:let K0=(1e3-x)/10;j0=new n9(R1.sustainVolEnv,K0*10);break;case C6.modEnvDelay:j0=new n9(R1.delayModEnv,x);break;case C6.modEnvAttack:j0=new n9(R1.attackModEnv,x);break;case C6.modEnvHold:j0=new n9(R1.holdModEnv,x);break;case C6.modEnvDecay:j0=new n9(R1.decayModEnv,x);break;case C6.modEnvRelease:j0=new n9(R1.releaseModEnv,x);break;case C6.modEnvSustain:let F1=1e3-x;j0=new n9(R1.sustainModEnv,F1);break;case C6.reverbSend:j0=new n9(R1.reverbEffectsSend,x);break;case C6.chorusSend:j0=new n9(R1.chorusEffectsSend,x);break;case C6.pitch:let B2=Math.floor(x/100),b1=Math.floor(x-B2*100);j0=new n9(R1.fineTune,b1),g.push(new n9(R1.coarseTune,B2));break}j0&&g.push(j0)}else{let j0=!0;if(m0===y4.none?b0===y4.modLfo&&q0===C6.pitch?g.push(new n9(R1.modLfoToPitch,x)):b0===y4.modLfo&&q0===C6.gain?g.push(new n9(R1.modLfoToVolume,x)):b0===y4.modLfo&&q0===C6.filterCutoff?g.push(new n9(R1.modLfoToFilterFc,x)):b0===y4.vibratoLfo&&q0===C6.pitch?g.push(new n9(R1.vibLfoToPitch,x)):b0===y4.modEnv&&q0===C6.pitch?g.push(new n9(R1.modEnvToPitch,x)):b0===y4.modEnv&&q0===C6.filterCutoff?g.push(new n9(R1.modEnvToFilterFc,x)):b0===y4.keyNum&&q0===C6.volEnvHold?g.push(new n9(R1.keyNumToVolEnvHold,x/-127)):b0===y4.keyNum&&q0===C6.volEnvDecay?g.push(new n9(R1.keyNumToVolEnvDecay,x/-127)):b0===y4.keyNum&&q0===C6.modEnvHold?g.push(new n9(R1.keyNumToModEnvHold,x/-127)):b0===y4.keyNum&&q0===C6.modEnvDecay?g.push(new n9(R1.keyNumToModEnvDecay,x/-127)):j0=!1:j0=!1,j0===!1){let K0=nk(b0,m0,q0,m1,x);K0?(d.push(K0),Y5("%cSucceeded converting to SF2 Modulator!",S1.recognized)):_4("Failed converting to SF2 Modulator!")}}}return d.push(new o7({srcEnum:219,dest:R1.reverbEffectsSend,amt:1e3,secSrcEnum:0,transform:0}),new o7({srcEnum:221,dest:R1.chorusEffectsSend,amt:1e3,secSrcEnum:0,transform:0})),r&&d.push(new o7({srcEnum:129,dest:R1.vibLfoToPitch,amt:0,secSrcEnum:0,transform:0}),new o7({srcEnum:13,dest:R1.vibLfoToPitch,amt:0,secSrcEnum:0,transform:0})),{modulators:d,generators:g}}function sk(A,r,l){if(A)for(;A.chunkData.currentIndexA.chunkData.currentIndex;)r.push(f4(A.chunkData));let l=r.find(a0=>a0.header==="rgnh"),g=r3(l.chunkData,2),d=r3(l.chunkData,2),b=r3(l.chunkData,2),I0=r3(l.chunkData,2),b0=new Nm({min:g,max:d},{min:b,max:I0});r3(l.chunkData,2);let m0=r3(l.chunkData,2);m0!==0&&b0.generators.push(new n9(R1.exclusiveClass,m0));let q0=Si(r,"lart"),m1=Si(r,"lar2");this.readLart(q0,m1,b0),b0.isGlobal=!1;let x=r.find(a0=>a0.header==="wsmp");r3(x.chunkData,4);let j0=r3(x.chunkData,2);r3(x.chunkData,2);let B2=(r3(x.chunkData,4)|0)/-655360*10/.4;r3(x.chunkData,4);let b1=r3(x.chunkData,4),_5,v2={start:0,end:0};if(b1===0)_5=0;else{r3(x.chunkData,4),r3(x.chunkData,4)===0?_5=1:_5=3,v2.start=r3(x.chunkData,4);let J5=r3(x.chunkData,4);v2.end=v2.start+J5}let J2=r.find(a0=>a0.header==="wlnk");if(J2===void 0)return;r3(J2.chunkData,2),r3(J2.chunkData,2),r3(J2.chunkData,4);let n3=r3(J2.chunkData,4),U5=this.samples[n3];if(U5===void 0)throw new Error("Invalid sample ID!");return b0.setWavesample(B2,_5,v2,j0,U5,n3),b0}var dh=class{constructor(r,l,g,d,b,I0,b0,m0){this.sampleName=r,this.sampleRate=l,this.samplePitch=g,this.samplePitchCorrection=d,this.sampleLink=b,this.sampleType=I0,this.sampleLoopStartIndex=b0,this.sampleLoopEndIndex=m0,this.isCompressed=(I0&16)>0,this.compressedData=void 0,this.useCount=0}getRawData(){let r=new Error("Not implemented");throw r.name="NotImplementedError",r}compressSample(r,l){if(!this.isCompressed)try{this.compressedData=l([this.getAudioData()],1,this.sampleRate,r),this.sampleType|=16,this.isCompressed=!0}catch{_4(`Failed to compress ${this.sampleName}. Leaving as uncompressed!`),this.isCompressed=!1,this.compressedData=void 0,this.sampleType&=-17}}getAudioData(){let r=new Error("Not implemented");throw r.name="NotImplementedError",r}};var Um=class extends dh{constructor(r,l,g,d,b,I0,b0){super(r,l,g,d,0,1,b*2,(I0-1)*2),this.sampleData=b0}getAudioData(){return this.sampleData}sampleData;getRawData(){if(this.isCompressed){if(!this.compressedData)throw new Error("Compressed but no data??");return this.compressedData}let r=new Uint8Array(this.sampleData.length*2);for(let l=0;l>8&255}return r}};function ok(A){ei("%cLoading Wave samples...",S1.recognized);let r=0;for(;A.chunkData.currentIndexn6.header==="fmt ");if(!d)throw new Error("No fmt chunk in the wave file!");if(r3(d.chunkData,2)!==1)throw new Error("Only PCM format in WAVE is supported.");if(r3(d.chunkData,2)!==1)throw new Error("Only mono samples are supported.");let b0=r3(d.chunkData,4);r3(d.chunkData,4),r3(d.chunkData,2);let m0=r3(d.chunkData,2),q0=m0/8,m1=Math.pow(2,q0*8-1),x=Math.pow(2,q0*8),j0,K0=!1;m0===8?(j0=255,K0=!0):j0=m1;let F1=g.find(n6=>n6.header==="data");if(!F1)throw new Error("No data chunk in the wave chunk!");let B2=F1.size/q0,b1=new Float32Array(B2);for(let n6=0;n6=m1&&(c6-=x),b1[n6]=c6/j0)}let _5=60,v2=0,J2=0,n3=b1.length-1,U5=g.find(n6=>n6.header==="wsmp");if(U5){if(r3(U5.chunkData,4),_5=r3(U5.chunkData,2),v2=lh(U5.chunkData[U5.chunkData.currentIndex++],U5.chunkData[U5.chunkData.currentIndex++]),r3(U5.chunkData,4),r3(U5.chunkData,4),r3(U5.chunkData,4)===1){r3(U5.chunkData,8),J2=r3(U5.chunkData,4);let c6=r3(U5.chunkData,4);n3=J2+c6}}else _4("No wsmp chunk in wave... using sane defaults.");let a0=Si(g,"INFO"),J5=`Unnamed ${r}`;if(a0){let n6=f4(a0.chunkData);for(;n6.header!=="INAM"&&a0.chunkData.currentIndexm0.header==="colh");if(!b)throw e4(),new Error("No colh chunk!");this.instrumentAmount=n3(b.chunkData,4),J5(`%cInstruments amount: %c${this.instrumentAmount}`,S1.info,S1.recognized);let I0=Si(g,"wvpl");this.readDLSSamples(I0);let b0=Si(g,"lins");if(!b0)throw e4(),new Error("No lins chunk!");this.readDLSInstrumentList(b0),J5(`%cParsing finished! %c"${this.soundFontInfo.INAM||"UNNAMED"}"%c has %c${this.presets.length} %cpresets, - %c${this.instruments.length}%c instruments and %c${this.samples.length}%c samples.`,S1.info,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized,S1.info),e4()}verifyHeader(r,l){if(r.header.toLowerCase()!==l.toLowerCase())throw e4(),new SyntaxError(`Invalid DLS chunk header! Expected "${l.toLowerCase()}" got "${r.header.toLowerCase()}"`)}verifyText(r,l){if(r.toLowerCase()!==l.toLowerCase())throw e4(),new SyntaxError(`Invalid DLS soundfont! Expected "${l.toLowerCase()}" got "${r.toLowerCase()}"`)}};Rs.prototype.readDLSInstrumentList=tk;Rs.prototype.readDLSInstrument=ik;Rs.prototype.readRegion=Ak;Rs.prototype.readLart=sk;Rs.prototype.readDLSSamples=ok;var Lo=Lo!==void 0?Lo:{},ak=!1,$k;Lo.isInitialized=new Promise(A=>$k=A);var WD=function(A){var r,l,g,d,b,I0,b0,m0="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Y0="",m1=0;A=A.replace(/[^A-Za-z0-9\+\/\=]/g,"");do d=m0.indexOf(A.charAt(m1++)),b=m0.indexOf(A.charAt(m1++)),I0=m0.indexOf(A.charAt(m1++)),b0=m0.indexOf(A.charAt(m1++)),r=d<<2|b>>4,l=(15&b)<<4|I0>>2,g=(3&I0)<<6|b0,Y0+=String.fromCharCode(r),I0!==64&&(Y0+=String.fromCharCode(l)),b0!==64&&(Y0+=String.fromCharCode(g));while(m11&&($0.thisProgram=process.argv[1].replace(/\\/g,"/")),$0.arguments=process.argv.slice(2),typeof module<"u",process.on("uncaughtException",function(_0){if(!(_0 instanceof P$))throw _0}),process.on("unhandledRejection",function(_0,X0){process.exit(1)}),$0.quit=function(_0){process.exit(_0)},$0.inspect=function(){return"[Emscripten Module object]"}):c6?(typeof read<"u"&&($0.read=function(X0){return read(X0)}),$0.readBinary=function(X0){var C1;return typeof readbuffer=="function"?new Uint8Array(readbuffer(X0)):(lr(typeof(C1=read(X0,"binary"))=="object"),C1)},typeof scriptArgs<"u"?$0.arguments=scriptArgs:typeof arguments<"u"&&($0.arguments=arguments),typeof quit=="function"&&($0.quit=function(_0){quit(_0)})):(n6||b6)&&(n6?document.currentScript&&(w4=document.currentScript.src):w4=self.location.href,w4=w4.indexOf("blob:")!==0?w4.split("/").slice(0,-1).join("/")+"/":"",$0.read=function(X0){var C1=new XMLHttpRequest;return C1.open("GET",X0,!1),C1.send(null),C1.responseText},b6&&($0.readBinary=function(X0){var C1=new XMLHttpRequest;return C1.open("GET",X0,!1),C1.responseType="arraybuffer",C1.send(null),new Uint8Array(C1.response)}),$0.readAsync=function(X0,C1,D2){var K3=new XMLHttpRequest;K3.open("GET",X0,!0),K3.responseType="arraybuffer",K3.onload=function(){if(K3.status==200||K3.status==0&&K3.response){C1(K3.response);return}D2()},K3.onerror=D2,K3.send(null)},$0.setWindowTitle=function(_0){document.title=_0});var K4=$0.print||(typeof console<"u"?console.log.bind(console):typeof print<"u"?print:null),_4=$0.printErr||(typeof printErr<"u"?printErr:typeof console<"u"&&console.warn.bind(console)||K4);for(A in H5)H5.hasOwnProperty(A)&&($0[A]=H5[A]);function _t(_0){var X0=K0;return K0=K0+_0+15&-16,X0}function To(_0){var X0=m0[Y2>>2],C1=X0+_0+15&-16;return m0[Y2>>2]=C1,C1>=D9&&!Mr()?(m0[Y2>>2]=X0,0):X0}function Go(_0,X0){return X0||(X0=16),_0=Math.ceil(_0/X0)*X0}function ep(_0){switch(_0){case"i1":case"i8":return 1;case"i16":return 2;case"i32":case"float":return 4;case"i64":case"double":return 8;default:if(_0[_0.length-1]==="*")return 4;if(_0[0]!=="i")return 0;var X0=parseInt(_0.substr(1));return lr(X0%8==0),X0/8}}function S$(_0){S$.shown||(S$.shown={}),S$.shown[_0]||(S$.shown[_0]=1,_4(_0))}H5=void 0;var tp={"f64-rem":function(_0,X0){return _0%X0},debugger:function(){}},SC=[];function pk(_0,X0){for(var C1=0,D2=C1;D2>>0)+4294967296*+(X0>>>0):+(_0>>>0)+4294967296*+(0|X0)}function D$(_0,X0,C1){return C1&&C1.length?$0["dynCall_"+_0].apply(null,[X0].concat(C1)):$0["dynCall_"+_0].call(null,X0)}var No=0,Ch=0;function lr(_0,X0){_0||qi("Assertion failed: "+X0)}function Uo(_0){var X0=$0["_"+_0];return lr(X0,"Cannot call unknown function "+_0+", make sure it is exported"),X0}var DC={stackSave:function(){GC()},stackRestore:function(){O$()},arrayToC:function(_0){var X0,C1,D2=Oo(_0.length);return X0=_0,C1=D2,d.set(X0,C1),D2},stringToC:function(_0){var X0=0;if(_0!=null&&_0!==0){var C1=(_0.length<<2)+1;X0=Oo(C1),_C(_0,X0,C1)}return X0}},xs={string:DC.stringToC,array:DC.arrayToC};function mh(_0,X0,C1,D2,K3){var l9=Uo(_0),q9=[],g6=0;if(D2)for(var E7=0;E7>0]=X0;break;case"i16":I0[_0>>1]=X0;break;case"i32":m0[_0>>2]=X0;break;case"i64":tempI64=[X0>>>0,+Qh(tempDouble=X0)>=1?tempDouble>0?(0|wh(+yh(tempDouble/4294967296),4294967295))>>>0:~~+N$((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0],m0[_0>>2]=tempI64[0],m0[_0+4>>2]=tempI64[1];break;case"float":m1[_0>>2]=X0;break;case"double":F[_0>>3]=X0;break;default:qi("invalid type for setValue: "+C1)}}function d3(_0,X0,C1){switch((X0=X0||"i8").charAt(X0.length-1)==="*"&&(X0="i32"),X0){case"i1":case"i8":return d[_0>>0];case"i16":return I0[_0>>1];case"i32":case"i64":return m0[_0>>2];case"float":return m1[_0>>2];case"double":return F[_0>>3];default:qi("invalid type for getValue: "+X0)}return null}function ip(_0,X0,C1,D2){typeof _0=="number"?(l9=!0,q9=_0):(l9=!1,q9=_0.length);var K3=typeof X0=="string"?X0:null;if(g6=C1==4?D2:[typeof Ns=="function"?Ns:_t,Oo,_t,To][C1===void 0?2:C1](Math.max(q9,K3?1:X0.length)),l9){for(D2=g6,lr((3&g6)==0),E7=g6+(-4&q9);D2>2]=0;for(E7=g6+q9;D2>0]=0;return g6}if(K3==="i8")return _0.subarray||_0.slice?b.set(_0,g6):b.set(new Uint8Array(_0),g6),g6;for(var l9,q9,g6,E7,Le,Ve,we,c9=0;c9>0],(D2!=0||X0)&&(q9++,!X0||q9!=X0););X0||(X0=q9);var g6="";if(l9<128){for(;X0>0;)K3=String.fromCharCode.apply(String,b.subarray(_0,_0+Math.min(X0,1024))),g6=g6?g6+K3:K3,_0+=1024,X0-=1024;return g6}return C1=_0,function(Le,Ve){for(var we=Ve;Le[we];)++we;if(we-Ve>16&&Le.subarray&&bC)return bC.decode(Le.subarray(Ve,we));for(var c9,xt,xi,C7,Ft,Fi,Li="";;){if(!(c9=Le[Ve++]))return Li;if(!(128&c9)){Li+=String.fromCharCode(c9);continue}if(xt=63&Le[Ve++],(224&c9)==192){Li+=String.fromCharCode((31&c9)<<6|xt);continue}if(xi=63&Le[Ve++],(240&c9)==224?c9=(15&c9)<<12|xt<<6|xi:(C7=63&Le[Ve++],(248&c9)==240?c9=(7&c9)<<18|xt<<12|xi<<6|C7:(Ft=63&Le[Ve++],c9=(252&c9)==248?(3&c9)<<24|xt<<18|xi<<12|C7<<6|Ft:(1&c9)<<30|xt<<24|xi<<18|C7<<12|Ft<<6|(Fi=63&Le[Ve++]))),c9<65536)Li+=String.fromCharCode(c9);else{var _n=c9-65536;Li+=String.fromCharCode(55296|_n>>10,56320|1023&_n)}}}(b,C1)}function rp(_0){for(var X0="";;){var C1=d[_0++>>0];if(!C1)return X0;X0+=String.fromCharCode(C1)}}function Fs(_0,X0){return function(D2,K3,l9){for(var q9=0;q9>0]=D2.charCodeAt(q9);l9||(d[K3>>0]=0)}(_0,X0,!1)}var bC=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function Dn(_0,X0,C1,D2){if(!(D2>0))return 0;for(var K3=C1,l9=C1+D2-1,q9=0;q9<_0.length;++q9){var g6=_0.charCodeAt(q9);if(g6>=55296&&g6<=57343&&(g6=65536+((1023&g6)<<10)|1023&_0.charCodeAt(++q9)),g6<=127){if(C1>=l9)break;X0[C1++]=g6}else if(g6<=2047){if(C1+1>=l9)break;X0[C1++]=192|g6>>6,X0[C1++]=128|63&g6}else if(g6<=65535){if(C1+2>=l9)break;X0[C1++]=224|g6>>12,X0[C1++]=128|g6>>6&63,X0[C1++]=128|63&g6}else if(g6<=2097151){if(C1+3>=l9)break;X0[C1++]=240|g6>>18,X0[C1++]=128|g6>>12&63,X0[C1++]=128|g6>>6&63,X0[C1++]=128|63&g6}else if(g6<=67108863){if(C1+4>=l9)break;X0[C1++]=248|g6>>24,X0[C1++]=128|g6>>18&63,X0[C1++]=128|g6>>12&63,X0[C1++]=128|g6>>6&63,X0[C1++]=128|63&g6}else{if(C1+5>=l9)break;X0[C1++]=252|g6>>30,X0[C1++]=128|g6>>24&63,X0[C1++]=128|g6>>18&63,X0[C1++]=128|g6>>12&63,X0[C1++]=128|g6>>6&63,X0[C1++]=128|63&g6}}return X0[C1]=0,C1-K3}function _C(_0,X0,C1){return Dn(_0,b,X0,C1)}function Ls(_0){for(var X0=0,C1=0;C1<_0.length;++C1){var D2=_0.charCodeAt(C1);D2>=55296&&D2<=57343&&(D2=65536+((1023&D2)<<10)|1023&_0.charCodeAt(++C1)),D2<=127?++X0:D2<=2047?X0+=2:D2<=65535?X0+=3:D2<=2097151?X0+=4:D2<=67108863?X0+=5:X0+=6}return X0}var RC=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function np(_0){for(var X0=_0,C1=X0>>1;I0[C1];)++C1;if((X0=C1<<1)-_0>32&&RC)return RC.decode(b.subarray(_0,X0));for(var D2=0,K3="";;){var l9=I0[_0+2*D2>>1];if(l9==0)return K3;++D2,K3+=String.fromCharCode(l9)}}function sp(_0,X0,C1){if(C1===void 0&&(C1=2147483647),C1<2)return 0;for(var D2=X0,K3=(C1-=2)<2*_0.length?C1/2:_0.length,l9=0;l9>1]=q9,X0+=2}return I0[X0>>1]=0,X0-D2}function Ap(_0){return 2*_0.length}function op(_0){for(var X0=0,C1="";;){var D2=m0[_0+4*X0>>2];if(D2==0)return C1;if(++X0,D2>=65536){var K3=D2-65536;C1+=String.fromCharCode(55296|K3>>10,56320|1023&K3)}else C1+=String.fromCharCode(D2)}}function ap(_0,X0,C1){if(C1===void 0&&(C1=2147483647),C1<4)return 0;for(var D2=X0,K3=D2+C1-4,l9=0;l9<_0.length;++l9){var q9=_0.charCodeAt(l9);if(q9>=55296&&q9<=57343&&(q9=65536+((1023&q9)<<10)|1023&_0.charCodeAt(++l9)),m0[X0>>2]=q9,(X0+=4)+4>K3)break}return m0[X0>>2]=0,X0-D2}function $p(_0){for(var X0=0,C1=0;C1<_0.length;++C1){var D2=_0.charCodeAt(C1);D2>=55296&&D2<=57343&&++C1,X0+=4}return X0}function lp(_0){var X0=Ls(_0)+1,C1=Ns(X0);return C1&&Dn(_0,d,C1,X0),C1}function cp(_0){var X0=Ls(_0)+1,C1=Oo(X0);return Dn(_0,d,C1,X0),C1}function xC(_0){return _0}function qm(){var _0,X0=function(){var D2=Error();if(!D2.stack){try{throw Error(0)}catch(K3){D2=K3}if(!D2.stack)return"(no stack trace available)"}return D2.stack.toString()}();return $0.extraStackTrace&&(X0+=` -`+$0.extraStackTrace()),(_0=X0).replace(/__Z[\w\d_]+/g,function(C1){var D2,K3=D2=C1;return C1===K3?C1:C1+" ["+K3+"]"})}function Bh(_0,X0){return _0%X0>0&&(_0+=X0-_0%X0),_0}function FC(_0){$0.buffer=g=_0}function H9(){$0.HEAP8=d=new Int8Array(g),$0.HEAP16=I0=new Int16Array(g),$0.HEAP32=m0=new Int32Array(g),$0.HEAPU8=b=new Uint8Array(g),$0.HEAPU16=b0=new Uint16Array(g),$0.HEAPU32=Y0=new Uint32Array(g),$0.HEAPF32=m1=new Float32Array(g),$0.HEAPF64=F=new Float64Array(g)}function Mr(){var _0=$0.usingWasm?65536:16777216,X0=2147483648-_0;if(m0[Y2>>2]>X0)return!1;var C1=D9;for(D9=Math.max(D9,16777216);D9>2];)D9=D9<=536870912?Bh(2*D9,_0):Math.min(Bh((3*D9+2147483648)/4,_0),X0);var D2=$0.reallocBuffer(D9);return D2&&D2.byteLength==D9?(FC(D2),H9(),!0):(D9=C1,!1)}j0=K0=B2=b1=_5=v2=Y2=0,F1=!1,$0.reallocBuffer||($0.reallocBuffer=function(_0){try{if(ArrayBuffer.transfer)X0=ArrayBuffer.transfer(g,_0);else{var X0,C1=d;X0=new ArrayBuffer(_0),new Int8Array(X0).set(C1)}}catch{return!1}return!!Km(X0)&&X0});try{(K5=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get))(new ArrayBuffer(4))}catch{K5=function(X0){return X0.byteLength}}var R$=$0.TOTAL_STACK||5242880,D9=$0.TOTAL_MEMORY||16777216;function x$(){return D9}function Ms(_0){for(;_0.length>0;){var X0=_0.shift();if(typeof X0=="function"){X0();continue}var C1=X0.func;typeof C1=="number"?X0.arg===void 0?$0.dynCall_v(C1):$0.dynCall_vi(C1,X0.arg):C1(X0.arg===void 0?null:X0.arg)}}D9=0?_0:X0<=32?2*Math.abs(1<=D2&&(X0<=32||_0>D2)&&(_0=-2*D2+_0),_0}var Qh=Math.abs,N$=Math.ceil,yh=Math.floor,wh=Math.min,bn=0,kh=null,Gs=null;function gp(_0){return _0}$0.preloadedImages={},$0.preloadedAudios={};var TC="data:application/octet-stream;base64,";function U$(_0){return String.prototype.startsWith?_0.startsWith(TC):_0.indexOf(TC)===0}(function(){var X0="main.wast",C1="main.wasm",D2="main.temp.asm.js";U$(X0)||(X0=M4(X0)),U$(C1)||(C1=M4(C1)),U$(D2)||(D2=M4(D2));var K3={global:null,env:null,asm2wasm:tp,parent:$0},l9=null;function q9(we){return we}function g6(){try{if($0.wasmBinary)return new Uint8Array($0.wasmBinary);if($0.readBinary)return $0.readBinary(C1);throw"both async and sync fetching of the wasm failed"}catch(we){qi(we)}}$0.asmPreload=$0.asm;var E7=$0.reallocBuffer,Le=function(we){we=Bh(we,$0.usingWasm?65536:16777216);var c9=$0.buffer.byteLength;if($0.usingWasm)try{var xt=$0.wasmMemory.grow((we-c9)/65536);return xt!==-1?$0.buffer=$0.wasmMemory.buffer:null}catch{return null}};$0.reallocBuffer=function(we){return Ve==="asmjs"?E7(we):Le(we)};var Ve="";$0.asm=function(we,c9,xt){var xi;if(!(c9=xi=c9).table){var C7,Ft=$0.wasmTableSize;Ft===void 0&&(Ft=1024);var Fi=$0.wasmMaxTableSize;typeof WebAssembly=="object"&&typeof WebAssembly.Table=="function"?Fi!==void 0?c9.table=new WebAssembly.Table({initial:Ft,maximum:Fi,element:"anyfunc"}):c9.table=new WebAssembly.Table({initial:Ft,element:"anyfunc"}):c9.table=Array(Ft),$0.wasmTable=c9.table}return c9.memoryBase||(c9.memoryBase=$0.STATIC_BASE),c9.tableBase||(c9.tableBase=0),C7=function(_n,cr,NC){if(typeof WebAssembly!="object")return _4("no native wasm support detected"),!1;if(!($0.wasmMemory instanceof WebAssembly.Memory))return _4("no native wasm Memory in use"),!1;function vh(gr,Yi){if((l9=gr.exports).memory){var Po,Us,Os;Po=l9.memory,Us=$0.buffer,Po.byteLength0?C1:Ls(_0)+1,K3=Array(D2),l9=Dn(_0,K3,0,K3.length);return X0&&(K3.length=l9),K3}function Jm(_0){for(var X0=[],C1=0;C1<_0.length;C1++){var D2=_0[C1];D2>255&&(D2&=255),X0.push(String.fromCharCode(D2))}return X0.join("")}K0+=16,Y2=_t(4),_5=(B2=b1=Go(K0))+R$,v2=Go(_5),m0[Y2>>2]=v2,F1=!0,$0.wasmTableSize=4,$0.wasmMaxTableSize=4,$0.asmGlobalArg={},$0.asmLibraryArg={abort:qi,assert:lr,enlargeMemory:Mr,getTotalMemory:x$,abortOnCannotGrowMemory:function(){qi("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+D9+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")},invoke_iii:function(X0,C1,D2){var K3=GC();try{return $0.dynCall_iii(X0,C1,D2)}catch(l9){if(O$(K3),typeof l9!="number"&&l9!=="longjmp")throw l9;$0.setThrew(1,0)}},___assert_fail:function(X0,C1,D2,K3){qi("Assertion failed: "+_$(X0)+", at: "+[C1?_$(C1):"unknown filename",D2,K3?_$(K3):"unknown function"])},___setErrNo:function(X0){return $0.___errno_location&&(m0[$0.___errno_location()>>2]=X0),X0},_abort:function(){$0.abort()},_emscripten_memcpy_big:function(X0,C1,D2){return b.set(b.subarray(C1,C1+D2),X0),X0},_llvm_floor_f64:yh,DYNAMICTOP_PTR:Y2,tempDoublePtr:Rt,ABORT:No,STACKTOP:b1,STACK_MAX:_5};var Nr=$0.asm($0.asmGlobalArg,$0.asmLibraryArg,g);$0.asm=Nr,$0.___errno_location=function(){return $0.asm.___errno_location.apply(null,arguments)};var Km=$0._emscripten_replace_memory=function(){return $0.asm._emscripten_replace_memory.apply(null,arguments)};$0._free=function(){return $0.asm._free.apply(null,arguments)};var Ns=$0._malloc=function(){return $0.asm._malloc.apply(null,arguments)};$0._memcpy=function(){return $0.asm._memcpy.apply(null,arguments)},$0._memset=function(){return $0.asm._memset.apply(null,arguments)},$0._sbrk=function(){return $0.asm._sbrk.apply(null,arguments)},$0._stb_vorbis_js_channels=function(){return $0.asm._stb_vorbis_js_channels.apply(null,arguments)},$0._stb_vorbis_js_close=function(){return $0.asm._stb_vorbis_js_close.apply(null,arguments)},$0._stb_vorbis_js_decode=function(){return $0.asm._stb_vorbis_js_decode.apply(null,arguments)},$0._stb_vorbis_js_open=function(){return $0.asm._stb_vorbis_js_open.apply(null,arguments)},$0._stb_vorbis_js_sample_rate=function(){return $0.asm._stb_vorbis_js_sample_rate.apply(null,arguments)},$0.establishStackSpace=function(){return $0.asm.establishStackSpace.apply(null,arguments)},$0.getTempRet0=function(){return $0.asm.getTempRet0.apply(null,arguments)},$0.runPostSets=function(){return $0.asm.runPostSets.apply(null,arguments)},$0.setTempRet0=function(){return $0.asm.setTempRet0.apply(null,arguments)},$0.setThrew=function(){return $0.asm.setThrew.apply(null,arguments)};var Oo=$0.stackAlloc=function(){return $0.asm.stackAlloc.apply(null,arguments)},O$=$0.stackRestore=function(){return $0.asm.stackRestore.apply(null,arguments)},GC=$0.stackSave=function(){return $0.asm.stackSave.apply(null,arguments)};function P$(_0){this.name="ExitStatus",this.message="Program terminated with exit("+_0+")",this.status=_0}function H$(_0){_0=_0||$0.arguments,!(bn>0)&&(function(){if($0.preRun)for(typeof $0.preRun=="function"&&($0.preRun=[$0.preRun]);$0.preRun.length;)Ym($0.preRun.shift());Ms(Tr)}(),!(bn>0)&&($0.calledRun||($0.setStatus?($0.setStatus("Running..."),setTimeout(function(){setTimeout(function(){$0.setStatus("")},1),X0()},1)):X0())));function X0(){!$0.calledRun&&($0.calledRun=!0,No||(M$||(M$=!0,Ms(F$)),Ms(ph),$0.onRuntimeInitialized&&$0.onRuntimeInitialized(),function(){if($0.postRun)for(typeof $0.postRun=="function"&&($0.postRun=[$0.postRun]);$0.postRun.length;)Ri($0.postRun.shift());Ms(L$)}()))}}function Vm(_0,X0){(!X0||!$0.noExitRuntime||_0!==0)&&($0.noExitRuntime||(No=!0,Ch=_0,b1=U5,Ms(Ei),_i=!0,$0.onExit&&$0.onExit(_0)),$0.quit(_0,new P$(_0)))}function qi(_0){throw $0.onAbort&&$0.onAbort(_0),_0!==void 0?(K4(_0),_4(_0),_0=JSON.stringify(_0)):_0="",No=!0,Ch=1,"abort("+_0+"). Build with -s ASSERTIONS=1 for more info."}if($0.dynCall_iii=function(){return $0.asm.dynCall_iii.apply(null,arguments)},$0.asm=Nr,$0.ccall=mh,$0.cwrap=function(X0,C1,D2,K3){var l9=(D2=D2||[]).every(function(q9){return q9==="number"});return C1!=="string"&&l9&&!K3?Uo(X0):function(){return mh(X0,C1,D2,arguments,K3)}},P$.prototype=Error(),P$.prototype.constructor=P$,Gs=function _0(){$0.calledRun||H$(),$0.calledRun||(Gs=_0)},$0.run=H$,$0.abort=qi,$0.preInit)for(typeof $0.preInit=="function"&&($0.preInit=[$0.preInit]);$0.preInit.length>0;)$0.preInit.pop()();$0.noExitRuntime=!0,H$(),$0.onRuntimeInitialized=()=>{ak=!0,$k()},Lo.decode=function(_0){return function(C1){if(!ak)throw Error("Not initialized");var D2={};function K3(cr){return new Int32Array($0.HEAPU8.buffer,cr,1)[0]}function l9(cr,NC){var vh=new ArrayBuffer(NC*Float32Array.BYTES_PER_ELEMENT),p8=new Float32Array(vh);return p8.set(new Float32Array($0.HEAPU8.buffer,cr,NC)),p8}D2.open=$0.cwrap("stb_vorbis_js_open","number",[]),D2.close=$0.cwrap("stb_vorbis_js_close","void",["number"]),D2.channels=$0.cwrap("stb_vorbis_js_channels","number",["number"]),D2.sampleRate=$0.cwrap("stb_vorbis_js_sample_rate","number",["number"]),D2.decode=$0.cwrap("stb_vorbis_js_decode","number",["number","number","number","number","number"]);var q9,g6,E7,Le,Ve=D2.open(),we=(q9=C1,g6=C1.byteLength,E7=$0._malloc(g6),(Le=new Uint8Array($0.HEAPU8.buffer,E7,g6)).set(new Uint8Array(q9,0,g6)),Le),c9=$0._malloc(4),xt=$0._malloc(4),xi=D2.decode(Ve,we.byteOffset,we.byteLength,c9,xt);if($0._free(we.byteOffset),xi<0)throw D2.close(Ve),$0._free(c9),Error("stbvorbis decode failed: "+xi);for(var C7=D2.channels(Ve),Ft=Array(C7),Fi=new Int32Array($0.HEAPU32.buffer,K3(c9),C7),Li=0;LiA.chunkData.currentIndex;){let b=jD(d,A.chunkData,r,l);g.push(b),d++}return g.length>1&&g.pop(),g}function jD(A,r,l,g){let d=Fe(r,20),b=n3(r,4)*2,I0=n3(r,4)*2,b0=n3(r,4)*2,m0=n3(r,4)*2,Y0=n3(r,4),m1=r[r.currentIndex++];m1===255&&(m1=60);let F=fy(r[r.currentIndex++]),j0=n3(r,2),K0=n3(r,2);return new HB(d,b,I0,b0,m0,Y0,m1,F,j0,K0,l,A,g)}var qB=class extends Ih{constructor(r){super(),this.instrumentName=Fe(r.chunkData,20).trim(),this.instrumentZoneIndex=n3(r.chunkData,2),this.instrumentZonesAmount=0}getInstrumentZones(r,l){this.instrumentZonesAmount=r;for(let g=this.instrumentZoneIndex;gA.chunkData.currentIndex;){let g=new qB(A);if(l.length>0){let d=g.instrumentZoneIndex-l[l.length-1].instrumentZoneIndex;l[l.length-1].getInstrumentZones(d,r)}l.push(g)}return l.length>1&&l.pop(),l}var YB=class extends Fo{constructor(r){super(),this.generatorZoneStartIndex=n3(r,2),this.modulatorZoneStartIndex=n3(r,2),this.modulatorZoneSize=0,this.generatorZoneSize=0,this.isGlobal=!0}setZoneSize(r,l){this.modulatorZoneSize=r,this.generatorZoneSize=l}getGenerators(r){for(let l=this.generatorZoneStartIndex;lg.generatorType===R1.sampleID);l&&(this.sample=r[l.generatorValue],this.isGlobal=!1,this.sample.useCount++)}getKeyRange(){let r=this.generators.find(l=>l.generatorType===R1.keyRange);r&&(this.keyRange.min=r.generatorValue&127,this.keyRange.max=r.generatorValue>>8&127)}getVelRange(){let r=this.generators.find(l=>l.generatorType===R1.velRange);r&&(this.velRange.min=r.generatorValue&127,this.velRange.max=r.generatorValue>>8&127)}};function gk(A,r,l,g){let d=[];for(;A.chunkData.length>A.chunkData.currentIndex;){let b=new YB(A.chunkData);if(d.length>0){let I0=b.modulatorZoneStartIndex-d[d.length-1].modulatorZoneStartIndex,b0=b.generatorZoneStartIndex-d[d.length-1].generatorZoneStartIndex;d[d.length-1].setZoneSize(I0,b0),d[d.length-1].getGenerators(r),d[d.length-1].getModulators(l),d[d.length-1].getSample(g),d[d.length-1].getKeyRange(),d[d.length-1].getVelRange()}d.push(b)}return d.length>1&&d.pop(),d}var JB=class extends uh{constructor(r){super(),this.generatorZoneStartIndex=n3(r,2),this.modulatorZoneStartIndex=n3(r,2),this.modulatorZoneSize=0,this.generatorZoneSize=0,this.isGlobal=!0}setZoneSize(r,l){this.modulatorZoneSize=r,this.generatorZoneSize=l}getGenerators(r){for(let l=this.generatorZoneStartIndex;lg.generatorType===R1.instrument);l&&(this.instrument=r[l.generatorValue],this.instrument.addUseCount(),this.isGlobal=!1)}getKeyRange(){let r=this.generators.find(l=>l.generatorType===R1.keyRange);r&&(this.keyRange.min=r.generatorValue&127,this.keyRange.max=r.generatorValue>>8&127)}getVelRange(){let r=this.generators.find(l=>l.generatorType===R1.velRange);r&&(this.velRange.min=r.generatorValue&127,this.velRange.max=r.generatorValue>>8&127)}};function hk(A,r,l,g){let d=[];for(;A.chunkData.length>A.chunkData.currentIndex;){let b=new JB(A.chunkData);if(d.length>0){let I0=b.modulatorZoneStartIndex-d[d.length-1].modulatorZoneStartIndex,b0=b.generatorZoneStartIndex-d[d.length-1].generatorZoneStartIndex;d[d.length-1].setZoneSize(I0,b0),d[d.length-1].getGenerators(r),d[d.length-1].getModulators(l),d[d.length-1].getInstrument(g),d[d.length-1].getKeyRange(),d[d.length-1].getVelRange()}d.push(b)}return d.length>1&&d.pop(),d}var KB=class extends fh{constructor(r){super(),this.presetName=Fe(r.chunkData,20).trim().replace(/\d{3}:\d{3}/,""),this.program=n3(r.chunkData,2),this.bank=n3(r.chunkData,2),this.presetZoneStartIndex=n3(r.chunkData,2),this.library=n3(r.chunkData,4),this.genre=n3(r.chunkData,4),this.morphology=n3(r.chunkData,4),this.presetZonesAmount=0}getPresetZones(r,l){this.presetZonesAmount=r;for(let g=this.presetZoneStartIndex;gA.chunkData.currentIndex;){let g=new KB(A);if(l.length>0){let d=g.presetZoneStartIndex-l[l.length-1].presetZoneStartIndex;l[l.length-1].getPresetZones(d,r)}l.push(g)}return l.length>1&&l.pop(),l}var Om=class extends y${constructor(r,l=!0){if(super(),l&&console.warn("Using the constructor directly is deprecated. Use loadSoundFont instead."),this.dataArray=new l6(r),ar("%cParsing SoundFont...",S1.info),!this.dataArray)throw e4(),new TypeError("No data!");let g=h4(this.dataArray,!1);this.verifyHeader(g,"riff");let d=Fe(this.dataArray,4).toLowerCase();if(d!=="sfbk"&&d!=="sfpk")throw e4(),new SyntaxError(`Invalid soundFont! Expected "sfbk" or "sfpk" got "${d}"`);let b=d==="sfpk",I0=h4(this.dataArray);for(this.verifyHeader(I0,"list"),Fe(I0.chunkData,4);I0.chunkData.length>I0.chunkData.currentIndex;){let H6=h4(I0.chunkData),c6;switch(H6.header.toLowerCase()){case"ifil":case"iver":c6=`${n3(H6.chunkData,2)}.${n3(H6.chunkData,2)}`;break;case"icmt":c6=Fe(H6.chunkData,H6.chunkData.length,void 0,!1);break;default:c6=Fe(H6.chunkData,H6.chunkData.length)}J5(`%c"${H6.header}": %c"${c6}"`,S1.info,S1.recognized),this.soundFontInfo[H6.header]=c6}let b0=h4(this.dataArray,!1);this.verifyHeader(b0,"list"),this.verifyText(Fe(this.dataArray,4),"sdta"),J5("%cVerifying smpl chunk...",S1.warn);let m0=h4(this.dataArray,!1);this.verifyHeader(m0,"smpl");let Y0;if(b){J5("%cSF2Pack detected, attempting to decode the smpl chunk...",S1.info);try{Y0=Lo.decode(this.dataArray.buffer.slice(this.dataArray.currentIndex,this.dataArray.currentIndex+b0.size-12)).data[0]}catch(H6){throw e4(),new Error(`SF2Pack Ogg Vorbis decode error: ${H6}`)}J5(`%cDecoded the smpl chunk! Length: %c${Y0.length}`,S1.info,S1.value)}else Y0=this.dataArray,this.sampleDataStartIndex=this.dataArray.currentIndex;J5(`%cSkipping sample chunk, length: %c${b0.size-12}`,S1.info,S1.value),this.dataArray.currentIndex+=b0.size-12,J5("%cLoading preset data chunk...",S1.warn);let m1=h4(this.dataArray);this.verifyHeader(m1,"list"),Fe(m1.chunkData,4);let F=h4(m1.chunkData);this.verifyHeader(F,"phdr");let j0=h4(m1.chunkData);this.verifyHeader(j0,"pbag");let K0=h4(m1.chunkData);this.verifyHeader(K0,"pmod");let F1=h4(m1.chunkData);this.verifyHeader(F1,"pgen");let B2=h4(m1.chunkData);this.verifyHeader(B2,"inst");let b1=h4(m1.chunkData);this.verifyHeader(b1,"ibag");let _5=h4(m1.chunkData);this.verifyHeader(_5,"imod");let v2=h4(m1.chunkData);this.verifyHeader(v2,"igen");let Y2=h4(m1.chunkData);this.verifyHeader(Y2,"shdr"),this.dataArray.currentIndex=this.sampleDataStartIndex,this.samples.push(...lk(Y2,Y0,!b));let K5=RB(v2),U5=LB(_5),$0=gk(b1,K5,U5,this.samples);this.instruments=ck(B2,$0);let H5=RB(F1),n6=LB(K0),b6=hk(j0,H5,n6,this.instruments);this.presets.push(...fk(F,b6)),this.presets.sort((H6,c6)=>H6.program-c6.program+(H6.bank-c6.bank)),J5(`%cParsing finished! %c"${this.soundFontInfo.INAM}"%c has %c${this.presets.length} %cpresets, - %c${this.instruments.length}%c instruments and %c${this.samples.length}%c samples.`,S1.info,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized,S1.info),e4(),b&&delete this.dataArray}verifyHeader(r,l){if(r.header.toLowerCase()!==l.toLowerCase())throw e4(),new SyntaxError(`Invalid chunk header! Expected "${l.toLowerCase()}" got "${r.header.toLowerCase()}"`)}verifyText(r,l){if(r.toLowerCase()!==l.toLowerCase())throw e4(),new SyntaxError(`Invalid soundFont! Expected "${l.toLowerCase()}" got "${r.toLowerCase()}"`)}};function Eh(A){let r=A.slice(8,12),l=new l6(r);return Fe(l,4,void 0,!1).toLowerCase()==="dls "?new Rs(A):new Om(A,!1)}async function uk(){let A="locale.exportAudio.formats.formats.soundfont.options.";U7(this.localeManager.getLocaleString(A+"title"),[{type:"toggle",textContent:"Trim",attributes:{"trim-toggle":"1",checked:"checked"}},{type:"toggle",translatePathTitle:A+"compress",attributes:{"compress-toggle":"1"}},{type:"range",translatePathTitle:A+"quality",attributes:{min:"0",max:"10",value:"5"}},{type:"button",textContent:this.localeManager.getLocaleString(A+"confirm"),onClick:async r=>{let l=r.div.querySelector("input[trim-toggle='1']").checked,g=r.div.querySelector("input[compress-toggle='1']").checked,d=parseInt(r.div.querySelector("input[type='range']").value)/10;X7(r.id),ar("%cExporting minified soundfont...",S1.info);let b=await this.seq.getMIDI(),I0=Eh(b.embeddedSoundFont||this.soundFont);ch(b,await this.synth.getSynthesizerSnapshot()),l&&Tm(I0,b);let b0=I0.write({compress:g,compressionQuality:d,compressionFunction:this.compressionFunc}),m0=new Blob([b0.buffer],{type:"audio/soundfont"}),Y0=I0.soundFontInfo.ifil.split(".")[0]==="3"?"sf3":"sf2";this.saveBlob(m0,`${I0.soundFontInfo.INAM||"unnamed"}.${Y0}`),e4()}}],99999999,!0,this.localeManager)}async function Ik(){let A="locale.exportAudio.formats.";U7(this.localeManager.getLocaleString(A+"title"),[{type:"button",translatePathTitle:A+"formats.wav.button",onClick:r=>{X7(r.id),this._exportAudioData()}},{type:"button",translatePathTitle:A+"formats.midi.button",onClick:r=>{X7(r.id),this.exportMidi()}},{type:"button",translatePathTitle:A+"formats.soundfont.button",onClick:r=>{X7(r.id);try{this._exportSoundfont()}catch{U7("Warning",[{type:"text",textContent:this.localeManager.getLocaleString("locale.warnings.outOfMemory")}])}}},{type:"button",translatePathTitle:A+"formats.rmidi.button",onClick:r=>{X7(r.id);try{this._exportRMIDI()}catch{U7("Warning",[{type:"text",textContent:this.localeManager.getLocaleString("locale.warnings.outOfMemory")}])}}}],999999,!0,this.localeManager,{display:"flex",flexWrap:"wrap",justifyContent:"center"})}async function dk(){let A=(F,j0,K0)=>this.seq.midiData.RMIDInfo?.[F]===void 0?j0:K0.decode(this.seq.midiData.RMIDInfo?.[F]).replace(/\0$/,""),r=A("IENC","ascii",new TextDecoder),l=new TextDecoder(r),g=A("IPRD","",l),d=A("IART","",l),b=A("IGNR","",l),I0=A("ICMT","Created using SpessaSynth: https://spessasus.github.io/SpessaSynth",l),b0="locale.exportAudio.formats.formats.rmidi.options.",m0="locale.exportAudio.formats.metadata.",m1=U7(this.localeManager.getLocaleString(b0+"title"),[{type:"toggle",translatePathTitle:b0+"compress",attributes:{"compress-toggle":"1",checked:"true"}},{type:"range",translatePathTitle:b0+"quality",attributes:{min:"0",max:"10",value:"5"}},{type:"input",translatePathTitle:m0+"songTitle",attributes:{name:"song_title",type:"text",value:this.seqUI.currentSongTitle}},{type:"input",translatePathTitle:m0+"album",attributes:{value:g,name:"album",type:"text"}},{type:"input",translatePathTitle:m0+"artist",attributes:{value:d,name:"artist",type:"text"}},{type:"input",translatePathTitle:m0+"genre",attributes:{value:b,name:"genre",type:"text"}},{type:"input",translatePathTitle:m0+"comment",attributes:{value:I0,name:"comment",type:"text"}},{type:"file",translatePathTitle:m0+"albumCover",attributes:{value:this.seq.midiData.RMIDInfo?.IPIC!==void 0?this.seq.midiData.RMIDInfo.IPIC:"",name:"cover",accept:"image/*"}},{type:"button",textContent:this.localeManager.getLocaleString(b0+"confirm"),onClick:async F=>{let j0=F.div.querySelector("input[compress-toggle='1']").checked,K0=parseInt(F.div.querySelector("input[type='range']").value)/10,F1=F.div.querySelector("input[name='album']").value,B2=F.div.querySelector("input[name='artist']").value,b1=F.div.querySelector("input[name='song_title']").value,_5=F.div.querySelector("input[name='comment']").value,v2=F.div.querySelector("input[name='genre']").value,Y2=F.div.querySelector("input[type='file']")?.files[0];X7(F.id),ei("%cExporting RMIDI...",S1.info);let K5="locale.exportAudio.formats.formats.rmidi.progress.",U5=U7(this.localeManager.getLocaleString(K5+"title"),[{type:"text",textContent:this.localeManager.getLocaleString(K5+"loading"),attributes:{class:"export_rmidi_message"}}],9999999,!1);await new Promise(M4=>setTimeout(M4,500));let $0=U5.div.getElementsByClassName("export_rmidi_message")[0],H5=await this.seq.getMIDI(),n6=Eh(H5.embeddedSoundFont||this.soundFont);$0.textContent=this.localeManager.getLocaleString(K5+"modifyingMIDI"),await new Promise(M4=>setTimeout(M4,75)),ch(H5,await this.synth.getSynthesizerSnapshot()),$0.textContent=this.localeManager.getLocaleString(K5+"modifyingSoundfont"),await new Promise(M4=>setTimeout(M4,75)),Tm(n6,H5);let b6=n6.write({compress:j0,compressionQuality:K0,compressionFunction:this.compressionFunc});$0.textContent=this.localeManager.getLocaleString(K5+"saving"),await new Promise(M4=>setTimeout(M4,75));let H6;Y2?.type.split("/")[0]==="image"?H6=await Y2.arrayBuffer():H5.RMIDInfo?.IPIC!==void 0&&(H6=H5.RMIDInfo.IPIC.buffer);let c6=dy(b6,H5,n6,0,this.seqUI.encoding,{name:b1,comment:_5,engineer:n6.soundFontInfo.IENG,picture:H6,album:F1.length>0?F1:void 0,artist:B2.length>0?B2:void 0,genre:v2.length>0?v2:void 0,midiEncoding:this.seqUI.encoding}),w4=new Blob([c6.buffer],{type:"audio/rmid"});this.saveBlob(w4,`${b1||"unnamed_song"}.rmi`),$0.textContent=this.localeManager.getLocaleString(K5+"done"),X7(U5.id),e4()}}],9999999,!0,this.localeManager).div.querySelector("input[type='file']");m1.oninput=()=>{m1.files[0]&&(m1.parentElement.firstChild.textContent=m1.files[0].name)}}var Pm={init:function(){var A;A||(A=(typeof A<"u"?A:null)||{});var r={};for(var l in A)A.hasOwnProperty(l)&&(r[l]=A[l]);var g=typeof window=="object",d=typeof process=="object"&&typeof gm=="function"&&!g,b=typeof importScripts=="function",I0=!g&&!d&&!b;if(d){A.print||(A.print=function($){process.stdout.write($+` +`+this.soundFontInfo.ISBJ,delete this.soundFontInfo.ISBJ);for(let[m0,q0]of Object.entries(this.soundFontInfo))Y5(`%c"${m0}": %c"${q0}"`,S1.info,S1.recognized);let b=g.find(m0=>m0.header==="colh");if(!b)throw t4(),new Error("No colh chunk!");this.instrumentAmount=r3(b.chunkData,4),Y5(`%cInstruments amount: %c${this.instrumentAmount}`,S1.info,S1.recognized);let I0=Si(g,"wvpl");this.readDLSSamples(I0);let b0=Si(g,"lins");if(!b0)throw t4(),new Error("No lins chunk!");this.readDLSInstrumentList(b0),Y5(`%cParsing finished! %c"${this.soundFontInfo.INAM||"UNNAMED"}"%c has %c${this.presets.length} %cpresets, + %c${this.instruments.length}%c instruments and %c${this.samples.length}%c samples.`,S1.info,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized,S1.info),t4()}verifyHeader(r,l){if(r.header.toLowerCase()!==l.toLowerCase())throw t4(),new SyntaxError(`Invalid DLS chunk header! Expected "${l.toLowerCase()}" got "${r.header.toLowerCase()}"`)}verifyText(r,l){if(r.toLowerCase()!==l.toLowerCase())throw t4(),new SyntaxError(`Invalid DLS soundfont! Expected "${l.toLowerCase()}" got "${r.toLowerCase()}"`)}};Rs.prototype.readDLSInstrumentList=tk;Rs.prototype.readDLSInstrument=ik;Rs.prototype.readRegion=Ak;Rs.prototype.readLart=sk;Rs.prototype.readDLSSamples=ok;var Lo=Lo!==void 0?Lo:{},ak=!1,$k;Lo.isInitialized=new Promise(A=>$k=A);var WD=function(A){var r,l,g,d,b,I0,b0,m0="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",q0="",m1=0;A=A.replace(/[^A-Za-z0-9\+\/\=]/g,"");do d=m0.indexOf(A.charAt(m1++)),b=m0.indexOf(A.charAt(m1++)),I0=m0.indexOf(A.charAt(m1++)),b0=m0.indexOf(A.charAt(m1++)),r=d<<2|b>>4,l=(15&b)<<4|I0>>2,g=(3&I0)<<6|b0,q0+=String.fromCharCode(r),I0!==64&&(q0+=String.fromCharCode(l)),b0!==64&&(q0+=String.fromCharCode(g));while(m11&&(a0.thisProgram=process.argv[1].replace(/\\/g,"/")),a0.arguments=process.argv.slice(2),typeof module<"u",process.on("uncaughtException",function(_0){if(!(_0 instanceof P$))throw _0}),process.on("unhandledRejection",function(_0,X0){process.exit(1)}),a0.quit=function(_0){process.exit(_0)},a0.inspect=function(){return"[Emscripten Module object]"}):g6?(typeof read<"u"&&(a0.read=function(X0){return read(X0)}),a0.readBinary=function(X0){var C1;return typeof readbuffer=="function"?new Uint8Array(readbuffer(X0)):(lr(typeof(C1=read(X0,"binary"))=="object"),C1)},typeof scriptArgs<"u"?a0.arguments=scriptArgs:typeof arguments<"u"&&(a0.arguments=arguments),typeof quit=="function"&&(a0.quit=function(_0){quit(_0)})):(n6||c6)&&(n6?document.currentScript&&(u4=document.currentScript.src):u4=self.location.href,u4=u4.indexOf("blob:")!==0?u4.split("/").slice(0,-1).join("/")+"/":"",a0.read=function(X0){var C1=new XMLHttpRequest;return C1.open("GET",X0,!1),C1.send(null),C1.responseText},c6&&(a0.readBinary=function(X0){var C1=new XMLHttpRequest;return C1.open("GET",X0,!1),C1.responseType="arraybuffer",C1.send(null),new Uint8Array(C1.response)}),a0.readAsync=function(X0,C1,D2){var K3=new XMLHttpRequest;K3.open("GET",X0,!0),K3.responseType="arraybuffer",K3.onload=function(){if(K3.status==200||K3.status==0&&K3.response){C1(K3.response);return}D2()},K3.onerror=D2,K3.send(null)},a0.setWindowTitle=function(_0){document.title=_0});var R4=a0.print||(typeof console<"u"?console.log.bind(console):typeof print<"u"?print:null),F9=a0.printErr||(typeof printErr<"u"?printErr:typeof console<"u"&&console.warn.bind(console)||R4);for(A in J5)J5.hasOwnProperty(A)&&(a0[A]=J5[A]);function _t(_0){var X0=K0;return K0=K0+_0+15&-16,X0}function To(_0){var X0=m0[J2>>2],C1=X0+_0+15&-16;return m0[J2>>2]=C1,C1>=D9&&!Mr()?(m0[J2>>2]=X0,0):X0}function Go(_0,X0){return X0||(X0=16),_0=Math.ceil(_0/X0)*X0}function ep(_0){switch(_0){case"i1":case"i8":return 1;case"i16":return 2;case"i32":case"float":return 4;case"i64":case"double":return 8;default:if(_0[_0.length-1]==="*")return 4;if(_0[0]!=="i")return 0;var X0=parseInt(_0.substr(1));return lr(X0%8==0),X0/8}}function S$(_0){S$.shown||(S$.shown={}),S$.shown[_0]||(S$.shown[_0]=1,F9(_0))}J5=void 0;var tp={"f64-rem":function(_0,X0){return _0%X0},debugger:function(){}},SC=[];function pk(_0,X0){for(var C1=0,D2=C1;D2>>0)+4294967296*+(X0>>>0):+(_0>>>0)+4294967296*+(0|X0)}function D$(_0,X0,C1){return C1&&C1.length?a0["dynCall_"+_0].apply(null,[X0].concat(C1)):a0["dynCall_"+_0].call(null,X0)}var No=0,Ch=0;function lr(_0,X0){_0||qi("Assertion failed: "+X0)}function Uo(_0){var X0=a0["_"+_0];return lr(X0,"Cannot call unknown function "+_0+", make sure it is exported"),X0}var DC={stackSave:function(){GC()},stackRestore:function(){O$()},arrayToC:function(_0){var X0,C1,D2=Oo(_0.length);return X0=_0,C1=D2,d.set(X0,C1),D2},stringToC:function(_0){var X0=0;if(_0!=null&&_0!==0){var C1=(_0.length<<2)+1;X0=Oo(C1),_C(_0,X0,C1)}return X0}},xs={string:DC.stringToC,array:DC.arrayToC};function mh(_0,X0,C1,D2,K3){var l9=Uo(_0),Y9=[],h6=0;if(D2)for(var E7=0;E7>0]=X0;break;case"i16":I0[_0>>1]=X0;break;case"i32":m0[_0>>2]=X0;break;case"i64":tempI64=[X0>>>0,+Qh(tempDouble=X0)>=1?tempDouble>0?(0|wh(+yh(tempDouble/4294967296),4294967295))>>>0:~~+N$((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0],m0[_0>>2]=tempI64[0],m0[_0+4>>2]=tempI64[1];break;case"float":m1[_0>>2]=X0;break;case"double":x[_0>>3]=X0;break;default:qi("invalid type for setValue: "+C1)}}function d3(_0,X0,C1){switch((X0=X0||"i8").charAt(X0.length-1)==="*"&&(X0="i32"),X0){case"i1":case"i8":return d[_0>>0];case"i16":return I0[_0>>1];case"i32":case"i64":return m0[_0>>2];case"float":return m1[_0>>2];case"double":return x[_0>>3];default:qi("invalid type for getValue: "+X0)}return null}function ip(_0,X0,C1,D2){typeof _0=="number"?(l9=!0,Y9=_0):(l9=!1,Y9=_0.length);var K3=typeof X0=="string"?X0:null;if(h6=C1==4?D2:[typeof Ns=="function"?Ns:_t,Oo,_t,To][C1===void 0?2:C1](Math.max(Y9,K3?1:X0.length)),l9){for(D2=h6,lr((3&h6)==0),E7=h6+(-4&Y9);D2>2]=0;for(E7=h6+Y9;D2>0]=0;return h6}if(K3==="i8")return _0.subarray||_0.slice?b.set(_0,h6):b.set(new Uint8Array(_0),h6),h6;for(var l9,Y9,h6,E7,Fe,Ve,ye,c9=0;c9>0],(D2!=0||X0)&&(Y9++,!X0||Y9!=X0););X0||(X0=Y9);var h6="";if(l9<128){for(;X0>0;)K3=String.fromCharCode.apply(String,b.subarray(_0,_0+Math.min(X0,1024))),h6=h6?h6+K3:K3,_0+=1024,X0-=1024;return h6}return C1=_0,function(Fe,Ve){for(var ye=Ve;Fe[ye];)++ye;if(ye-Ve>16&&Fe.subarray&&bC)return bC.decode(Fe.subarray(Ve,ye));for(var c9,xt,xi,C7,Ft,Fi,Li="";;){if(!(c9=Fe[Ve++]))return Li;if(!(128&c9)){Li+=String.fromCharCode(c9);continue}if(xt=63&Fe[Ve++],(224&c9)==192){Li+=String.fromCharCode((31&c9)<<6|xt);continue}if(xi=63&Fe[Ve++],(240&c9)==224?c9=(15&c9)<<12|xt<<6|xi:(C7=63&Fe[Ve++],(248&c9)==240?c9=(7&c9)<<18|xt<<12|xi<<6|C7:(Ft=63&Fe[Ve++],c9=(252&c9)==248?(3&c9)<<24|xt<<18|xi<<12|C7<<6|Ft:(1&c9)<<30|xt<<24|xi<<18|C7<<12|Ft<<6|(Fi=63&Fe[Ve++]))),c9<65536)Li+=String.fromCharCode(c9);else{var _n=c9-65536;Li+=String.fromCharCode(55296|_n>>10,56320|1023&_n)}}}(b,C1)}function rp(_0){for(var X0="";;){var C1=d[_0++>>0];if(!C1)return X0;X0+=String.fromCharCode(C1)}}function Fs(_0,X0){return function(D2,K3,l9){for(var Y9=0;Y9>0]=D2.charCodeAt(Y9);l9||(d[K3>>0]=0)}(_0,X0,!1)}var bC=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function Dn(_0,X0,C1,D2){if(!(D2>0))return 0;for(var K3=C1,l9=C1+D2-1,Y9=0;Y9<_0.length;++Y9){var h6=_0.charCodeAt(Y9);if(h6>=55296&&h6<=57343&&(h6=65536+((1023&h6)<<10)|1023&_0.charCodeAt(++Y9)),h6<=127){if(C1>=l9)break;X0[C1++]=h6}else if(h6<=2047){if(C1+1>=l9)break;X0[C1++]=192|h6>>6,X0[C1++]=128|63&h6}else if(h6<=65535){if(C1+2>=l9)break;X0[C1++]=224|h6>>12,X0[C1++]=128|h6>>6&63,X0[C1++]=128|63&h6}else if(h6<=2097151){if(C1+3>=l9)break;X0[C1++]=240|h6>>18,X0[C1++]=128|h6>>12&63,X0[C1++]=128|h6>>6&63,X0[C1++]=128|63&h6}else if(h6<=67108863){if(C1+4>=l9)break;X0[C1++]=248|h6>>24,X0[C1++]=128|h6>>18&63,X0[C1++]=128|h6>>12&63,X0[C1++]=128|h6>>6&63,X0[C1++]=128|63&h6}else{if(C1+5>=l9)break;X0[C1++]=252|h6>>30,X0[C1++]=128|h6>>24&63,X0[C1++]=128|h6>>18&63,X0[C1++]=128|h6>>12&63,X0[C1++]=128|h6>>6&63,X0[C1++]=128|63&h6}}return X0[C1]=0,C1-K3}function _C(_0,X0,C1){return Dn(_0,b,X0,C1)}function Ls(_0){for(var X0=0,C1=0;C1<_0.length;++C1){var D2=_0.charCodeAt(C1);D2>=55296&&D2<=57343&&(D2=65536+((1023&D2)<<10)|1023&_0.charCodeAt(++C1)),D2<=127?++X0:D2<=2047?X0+=2:D2<=65535?X0+=3:D2<=2097151?X0+=4:D2<=67108863?X0+=5:X0+=6}return X0}var RC=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function np(_0){for(var X0=_0,C1=X0>>1;I0[C1];)++C1;if((X0=C1<<1)-_0>32&&RC)return RC.decode(b.subarray(_0,X0));for(var D2=0,K3="";;){var l9=I0[_0+2*D2>>1];if(l9==0)return K3;++D2,K3+=String.fromCharCode(l9)}}function sp(_0,X0,C1){if(C1===void 0&&(C1=2147483647),C1<2)return 0;for(var D2=X0,K3=(C1-=2)<2*_0.length?C1/2:_0.length,l9=0;l9>1]=Y9,X0+=2}return I0[X0>>1]=0,X0-D2}function Ap(_0){return 2*_0.length}function op(_0){for(var X0=0,C1="";;){var D2=m0[_0+4*X0>>2];if(D2==0)return C1;if(++X0,D2>=65536){var K3=D2-65536;C1+=String.fromCharCode(55296|K3>>10,56320|1023&K3)}else C1+=String.fromCharCode(D2)}}function ap(_0,X0,C1){if(C1===void 0&&(C1=2147483647),C1<4)return 0;for(var D2=X0,K3=D2+C1-4,l9=0;l9<_0.length;++l9){var Y9=_0.charCodeAt(l9);if(Y9>=55296&&Y9<=57343&&(Y9=65536+((1023&Y9)<<10)|1023&_0.charCodeAt(++l9)),m0[X0>>2]=Y9,(X0+=4)+4>K3)break}return m0[X0>>2]=0,X0-D2}function $p(_0){for(var X0=0,C1=0;C1<_0.length;++C1){var D2=_0.charCodeAt(C1);D2>=55296&&D2<=57343&&++C1,X0+=4}return X0}function lp(_0){var X0=Ls(_0)+1,C1=Ns(X0);return C1&&Dn(_0,d,C1,X0),C1}function cp(_0){var X0=Ls(_0)+1,C1=Oo(X0);return Dn(_0,d,C1,X0),C1}function xC(_0){return _0}function qm(){var _0,X0=function(){var D2=Error();if(!D2.stack){try{throw Error(0)}catch(K3){D2=K3}if(!D2.stack)return"(no stack trace available)"}return D2.stack.toString()}();return a0.extraStackTrace&&(X0+=` +`+a0.extraStackTrace()),(_0=X0).replace(/__Z[\w\d_]+/g,function(C1){var D2,K3=D2=C1;return C1===K3?C1:C1+" ["+K3+"]"})}function Bh(_0,X0){return _0%X0>0&&(_0+=X0-_0%X0),_0}function FC(_0){a0.buffer=g=_0}function q9(){a0.HEAP8=d=new Int8Array(g),a0.HEAP16=I0=new Int16Array(g),a0.HEAP32=m0=new Int32Array(g),a0.HEAPU8=b=new Uint8Array(g),a0.HEAPU16=b0=new Uint16Array(g),a0.HEAPU32=q0=new Uint32Array(g),a0.HEAPF32=m1=new Float32Array(g),a0.HEAPF64=x=new Float64Array(g)}function Mr(){var _0=a0.usingWasm?65536:16777216,X0=2147483648-_0;if(m0[J2>>2]>X0)return!1;var C1=D9;for(D9=Math.max(D9,16777216);D9>2];)D9=D9<=536870912?Bh(2*D9,_0):Math.min(Bh((3*D9+2147483648)/4,_0),X0);var D2=a0.reallocBuffer(D9);return D2&&D2.byteLength==D9?(FC(D2),q9(),!0):(D9=C1,!1)}j0=K0=B2=b1=_5=v2=J2=0,F1=!1,a0.reallocBuffer||(a0.reallocBuffer=function(_0){try{if(ArrayBuffer.transfer)X0=ArrayBuffer.transfer(g,_0);else{var X0,C1=d;X0=new ArrayBuffer(_0),new Int8Array(X0).set(C1)}}catch{return!1}return!!Km(X0)&&X0});try{(n3=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get))(new ArrayBuffer(4))}catch{n3=function(X0){return X0.byteLength}}var R$=a0.TOTAL_STACK||5242880,D9=a0.TOTAL_MEMORY||16777216;function x$(){return D9}function Ms(_0){for(;_0.length>0;){var X0=_0.shift();if(typeof X0=="function"){X0();continue}var C1=X0.func;typeof C1=="number"?X0.arg===void 0?a0.dynCall_v(C1):a0.dynCall_vi(C1,X0.arg):C1(X0.arg===void 0?null:X0.arg)}}D9=0?_0:X0<=32?2*Math.abs(1<=D2&&(X0<=32||_0>D2)&&(_0=-2*D2+_0),_0}var Qh=Math.abs,N$=Math.ceil,yh=Math.floor,wh=Math.min,bn=0,kh=null,Gs=null;function gp(_0){return _0}a0.preloadedImages={},a0.preloadedAudios={};var TC="data:application/octet-stream;base64,";function U$(_0){return String.prototype.startsWith?_0.startsWith(TC):_0.indexOf(TC)===0}(function(){var X0="main.wast",C1="main.wasm",D2="main.temp.asm.js";U$(X0)||(X0=Ke(X0)),U$(C1)||(C1=Ke(C1)),U$(D2)||(D2=Ke(D2));var K3={global:null,env:null,asm2wasm:tp,parent:a0},l9=null;function Y9(ye){return ye}function h6(){try{if(a0.wasmBinary)return new Uint8Array(a0.wasmBinary);if(a0.readBinary)return a0.readBinary(C1);throw"both async and sync fetching of the wasm failed"}catch(ye){qi(ye)}}a0.asmPreload=a0.asm;var E7=a0.reallocBuffer,Fe=function(ye){ye=Bh(ye,a0.usingWasm?65536:16777216);var c9=a0.buffer.byteLength;if(a0.usingWasm)try{var xt=a0.wasmMemory.grow((ye-c9)/65536);return xt!==-1?a0.buffer=a0.wasmMemory.buffer:null}catch{return null}};a0.reallocBuffer=function(ye){return Ve==="asmjs"?E7(ye):Fe(ye)};var Ve="";a0.asm=function(ye,c9,xt){var xi;if(!(c9=xi=c9).table){var C7,Ft=a0.wasmTableSize;Ft===void 0&&(Ft=1024);var Fi=a0.wasmMaxTableSize;typeof WebAssembly=="object"&&typeof WebAssembly.Table=="function"?Fi!==void 0?c9.table=new WebAssembly.Table({initial:Ft,maximum:Fi,element:"anyfunc"}):c9.table=new WebAssembly.Table({initial:Ft,element:"anyfunc"}):c9.table=Array(Ft),a0.wasmTable=c9.table}return c9.memoryBase||(c9.memoryBase=a0.STATIC_BASE),c9.tableBase||(c9.tableBase=0),C7=function(_n,cr,NC){if(typeof WebAssembly!="object")return F9("no native wasm support detected"),!1;if(!(a0.wasmMemory instanceof WebAssembly.Memory))return F9("no native wasm Memory in use"),!1;function vh(gr,Yi){if((l9=gr.exports).memory){var Po,Us,Os;Po=l9.memory,Us=a0.buffer,Po.byteLength0?C1:Ls(_0)+1,K3=Array(D2),l9=Dn(_0,K3,0,K3.length);return X0&&(K3.length=l9),K3}function Jm(_0){for(var X0=[],C1=0;C1<_0.length;C1++){var D2=_0[C1];D2>255&&(D2&=255),X0.push(String.fromCharCode(D2))}return X0.join("")}K0+=16,J2=_t(4),_5=(B2=b1=Go(K0))+R$,v2=Go(_5),m0[J2>>2]=v2,F1=!0,a0.wasmTableSize=4,a0.wasmMaxTableSize=4,a0.asmGlobalArg={},a0.asmLibraryArg={abort:qi,assert:lr,enlargeMemory:Mr,getTotalMemory:x$,abortOnCannotGrowMemory:function(){qi("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+D9+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")},invoke_iii:function(X0,C1,D2){var K3=GC();try{return a0.dynCall_iii(X0,C1,D2)}catch(l9){if(O$(K3),typeof l9!="number"&&l9!=="longjmp")throw l9;a0.setThrew(1,0)}},___assert_fail:function(X0,C1,D2,K3){qi("Assertion failed: "+_$(X0)+", at: "+[C1?_$(C1):"unknown filename",D2,K3?_$(K3):"unknown function"])},___setErrNo:function(X0){return a0.___errno_location&&(m0[a0.___errno_location()>>2]=X0),X0},_abort:function(){a0.abort()},_emscripten_memcpy_big:function(X0,C1,D2){return b.set(b.subarray(C1,C1+D2),X0),X0},_llvm_floor_f64:yh,DYNAMICTOP_PTR:J2,tempDoublePtr:Rt,ABORT:No,STACKTOP:b1,STACK_MAX:_5};var Nr=a0.asm(a0.asmGlobalArg,a0.asmLibraryArg,g);a0.asm=Nr,a0.___errno_location=function(){return a0.asm.___errno_location.apply(null,arguments)};var Km=a0._emscripten_replace_memory=function(){return a0.asm._emscripten_replace_memory.apply(null,arguments)};a0._free=function(){return a0.asm._free.apply(null,arguments)};var Ns=a0._malloc=function(){return a0.asm._malloc.apply(null,arguments)};a0._memcpy=function(){return a0.asm._memcpy.apply(null,arguments)},a0._memset=function(){return a0.asm._memset.apply(null,arguments)},a0._sbrk=function(){return a0.asm._sbrk.apply(null,arguments)},a0._stb_vorbis_js_channels=function(){return a0.asm._stb_vorbis_js_channels.apply(null,arguments)},a0._stb_vorbis_js_close=function(){return a0.asm._stb_vorbis_js_close.apply(null,arguments)},a0._stb_vorbis_js_decode=function(){return a0.asm._stb_vorbis_js_decode.apply(null,arguments)},a0._stb_vorbis_js_open=function(){return a0.asm._stb_vorbis_js_open.apply(null,arguments)},a0._stb_vorbis_js_sample_rate=function(){return a0.asm._stb_vorbis_js_sample_rate.apply(null,arguments)},a0.establishStackSpace=function(){return a0.asm.establishStackSpace.apply(null,arguments)},a0.getTempRet0=function(){return a0.asm.getTempRet0.apply(null,arguments)},a0.runPostSets=function(){return a0.asm.runPostSets.apply(null,arguments)},a0.setTempRet0=function(){return a0.asm.setTempRet0.apply(null,arguments)},a0.setThrew=function(){return a0.asm.setThrew.apply(null,arguments)};var Oo=a0.stackAlloc=function(){return a0.asm.stackAlloc.apply(null,arguments)},O$=a0.stackRestore=function(){return a0.asm.stackRestore.apply(null,arguments)},GC=a0.stackSave=function(){return a0.asm.stackSave.apply(null,arguments)};function P$(_0){this.name="ExitStatus",this.message="Program terminated with exit("+_0+")",this.status=_0}function H$(_0){_0=_0||a0.arguments,!(bn>0)&&(function(){if(a0.preRun)for(typeof a0.preRun=="function"&&(a0.preRun=[a0.preRun]);a0.preRun.length;)Ym(a0.preRun.shift());Ms(Tr)}(),!(bn>0)&&(a0.calledRun||(a0.setStatus?(a0.setStatus("Running..."),setTimeout(function(){setTimeout(function(){a0.setStatus("")},1),X0()},1)):X0())));function X0(){!a0.calledRun&&(a0.calledRun=!0,No||(M$||(M$=!0,Ms(F$)),Ms(ph),a0.onRuntimeInitialized&&a0.onRuntimeInitialized(),function(){if(a0.postRun)for(typeof a0.postRun=="function"&&(a0.postRun=[a0.postRun]);a0.postRun.length;)Ri(a0.postRun.shift());Ms(L$)}()))}}function Vm(_0,X0){(!X0||!a0.noExitRuntime||_0!==0)&&(a0.noExitRuntime||(No=!0,Ch=_0,b1=U5,Ms(Ei),_i=!0,a0.onExit&&a0.onExit(_0)),a0.quit(_0,new P$(_0)))}function qi(_0){throw a0.onAbort&&a0.onAbort(_0),_0!==void 0?(R4(_0),F9(_0),_0=JSON.stringify(_0)):_0="",No=!0,Ch=1,"abort("+_0+"). Build with -s ASSERTIONS=1 for more info."}if(a0.dynCall_iii=function(){return a0.asm.dynCall_iii.apply(null,arguments)},a0.asm=Nr,a0.ccall=mh,a0.cwrap=function(X0,C1,D2,K3){var l9=(D2=D2||[]).every(function(Y9){return Y9==="number"});return C1!=="string"&&l9&&!K3?Uo(X0):function(){return mh(X0,C1,D2,arguments,K3)}},P$.prototype=Error(),P$.prototype.constructor=P$,Gs=function _0(){a0.calledRun||H$(),a0.calledRun||(Gs=_0)},a0.run=H$,a0.abort=qi,a0.preInit)for(typeof a0.preInit=="function"&&(a0.preInit=[a0.preInit]);a0.preInit.length>0;)a0.preInit.pop()();a0.noExitRuntime=!0,H$(),a0.onRuntimeInitialized=()=>{ak=!0,$k()},Lo.decode=function(_0){return function(C1){if(!ak)throw Error("Not initialized");var D2={};function K3(cr){return new Int32Array(a0.HEAPU8.buffer,cr,1)[0]}function l9(cr,NC){var vh=new ArrayBuffer(NC*Float32Array.BYTES_PER_ELEMENT),p8=new Float32Array(vh);return p8.set(new Float32Array(a0.HEAPU8.buffer,cr,NC)),p8}D2.open=a0.cwrap("stb_vorbis_js_open","number",[]),D2.close=a0.cwrap("stb_vorbis_js_close","void",["number"]),D2.channels=a0.cwrap("stb_vorbis_js_channels","number",["number"]),D2.sampleRate=a0.cwrap("stb_vorbis_js_sample_rate","number",["number"]),D2.decode=a0.cwrap("stb_vorbis_js_decode","number",["number","number","number","number","number"]);var Y9,h6,E7,Fe,Ve=D2.open(),ye=(Y9=C1,h6=C1.byteLength,E7=a0._malloc(h6),(Fe=new Uint8Array(a0.HEAPU8.buffer,E7,h6)).set(new Uint8Array(Y9,0,h6)),Fe),c9=a0._malloc(4),xt=a0._malloc(4),xi=D2.decode(Ve,ye.byteOffset,ye.byteLength,c9,xt);if(a0._free(ye.byteOffset),xi<0)throw D2.close(Ve),a0._free(c9),Error("stbvorbis decode failed: "+xi);for(var C7=D2.channels(Ve),Ft=Array(C7),Fi=new Int32Array(a0.HEAPU32.buffer,K3(c9),C7),Li=0;LiA.chunkData.currentIndex;){let b=jD(d,A.chunkData,r,l);g.push(b),d++}return g.length>1&&g.pop(),g}function jD(A,r,l,g){let d=xe(r,20),b=r3(r,4)*2,I0=r3(r,4)*2,b0=r3(r,4)*2,m0=r3(r,4)*2,q0=r3(r,4),m1=r[r.currentIndex++];m1===255&&(m1=60);let x=fy(r[r.currentIndex++]),j0=r3(r,2),K0=r3(r,2);return new HB(d,b,I0,b0,m0,q0,m1,x,j0,K0,l,A,g)}var qB=class extends Ih{constructor(r){super(),this.instrumentName=xe(r.chunkData,20).trim(),this.instrumentZoneIndex=r3(r.chunkData,2),this.instrumentZonesAmount=0}getInstrumentZones(r,l){this.instrumentZonesAmount=r;for(let g=this.instrumentZoneIndex;gA.chunkData.currentIndex;){let g=new qB(A);if(l.length>0){let d=g.instrumentZoneIndex-l[l.length-1].instrumentZoneIndex;l[l.length-1].getInstrumentZones(d,r)}l.push(g)}return l.length>1&&l.pop(),l}var YB=class extends Fo{constructor(r){super(),this.generatorZoneStartIndex=r3(r,2),this.modulatorZoneStartIndex=r3(r,2),this.modulatorZoneSize=0,this.generatorZoneSize=0,this.isGlobal=!0}setZoneSize(r,l){this.modulatorZoneSize=r,this.generatorZoneSize=l}getGenerators(r){for(let l=this.generatorZoneStartIndex;lg.generatorType===R1.sampleID);l&&(this.sample=r[l.generatorValue],this.isGlobal=!1,this.sample.useCount++)}getKeyRange(){let r=this.generators.find(l=>l.generatorType===R1.keyRange);r&&(this.keyRange.min=r.generatorValue&127,this.keyRange.max=r.generatorValue>>8&127)}getVelRange(){let r=this.generators.find(l=>l.generatorType===R1.velRange);r&&(this.velRange.min=r.generatorValue&127,this.velRange.max=r.generatorValue>>8&127)}};function gk(A,r,l,g){let d=[];for(;A.chunkData.length>A.chunkData.currentIndex;){let b=new YB(A.chunkData);if(d.length>0){let I0=b.modulatorZoneStartIndex-d[d.length-1].modulatorZoneStartIndex,b0=b.generatorZoneStartIndex-d[d.length-1].generatorZoneStartIndex;d[d.length-1].setZoneSize(I0,b0),d[d.length-1].getGenerators(r),d[d.length-1].getModulators(l),d[d.length-1].getSample(g),d[d.length-1].getKeyRange(),d[d.length-1].getVelRange()}d.push(b)}return d.length>1&&d.pop(),d}var JB=class extends uh{constructor(r){super(),this.generatorZoneStartIndex=r3(r,2),this.modulatorZoneStartIndex=r3(r,2),this.modulatorZoneSize=0,this.generatorZoneSize=0,this.isGlobal=!0}setZoneSize(r,l){this.modulatorZoneSize=r,this.generatorZoneSize=l}getGenerators(r){for(let l=this.generatorZoneStartIndex;lg.generatorType===R1.instrument);l&&(this.instrument=r[l.generatorValue],this.instrument.addUseCount(),this.isGlobal=!1)}getKeyRange(){let r=this.generators.find(l=>l.generatorType===R1.keyRange);r&&(this.keyRange.min=r.generatorValue&127,this.keyRange.max=r.generatorValue>>8&127)}getVelRange(){let r=this.generators.find(l=>l.generatorType===R1.velRange);r&&(this.velRange.min=r.generatorValue&127,this.velRange.max=r.generatorValue>>8&127)}};function hk(A,r,l,g){let d=[];for(;A.chunkData.length>A.chunkData.currentIndex;){let b=new JB(A.chunkData);if(d.length>0){let I0=b.modulatorZoneStartIndex-d[d.length-1].modulatorZoneStartIndex,b0=b.generatorZoneStartIndex-d[d.length-1].generatorZoneStartIndex;d[d.length-1].setZoneSize(I0,b0),d[d.length-1].getGenerators(r),d[d.length-1].getModulators(l),d[d.length-1].getInstrument(g),d[d.length-1].getKeyRange(),d[d.length-1].getVelRange()}d.push(b)}return d.length>1&&d.pop(),d}var KB=class extends fh{constructor(r){super(),this.presetName=xe(r.chunkData,20).trim().replace(/\d{3}:\d{3}/,""),this.program=r3(r.chunkData,2),this.bank=r3(r.chunkData,2),this.presetZoneStartIndex=r3(r.chunkData,2),this.library=r3(r.chunkData,4),this.genre=r3(r.chunkData,4),this.morphology=r3(r.chunkData,4),this.presetZonesAmount=0}getPresetZones(r,l){this.presetZonesAmount=r;for(let g=this.presetZoneStartIndex;gA.chunkData.currentIndex;){let g=new KB(A);if(l.length>0){let d=g.presetZoneStartIndex-l[l.length-1].presetZoneStartIndex;l[l.length-1].getPresetZones(d,r)}l.push(g)}return l.length>1&&l.pop(),l}var Om=class extends y${constructor(r,l=!0){if(super(),l&&console.warn("Using the constructor directly is deprecated. Use loadSoundFont instead."),this.dataArray=new l6(r),ar("%cParsing SoundFont...",S1.info),!this.dataArray)throw t4(),new TypeError("No data!");let g=f4(this.dataArray,!1);this.verifyHeader(g,"riff");let d=xe(this.dataArray,4).toLowerCase();if(d!=="sfbk"&&d!=="sfpk")throw t4(),new SyntaxError(`Invalid soundFont! Expected "sfbk" or "sfpk" got "${d}"`);let b=d==="sfpk",I0=f4(this.dataArray);for(this.verifyHeader(I0,"list"),xe(I0.chunkData,4);I0.chunkData.length>I0.chunkData.currentIndex;){let O6=f4(I0.chunkData),g6;switch(O6.header.toLowerCase()){case"ifil":case"iver":g6=`${r3(O6.chunkData,2)}.${r3(O6.chunkData,2)}`;break;case"icmt":g6=xe(O6.chunkData,O6.chunkData.length,void 0,!1);break;default:g6=xe(O6.chunkData,O6.chunkData.length)}Y5(`%c"${O6.header}": %c"${g6}"`,S1.info,S1.recognized),this.soundFontInfo[O6.header]=g6}let b0=f4(this.dataArray,!1);this.verifyHeader(b0,"list"),this.verifyText(xe(this.dataArray,4),"sdta"),Y5("%cVerifying smpl chunk...",S1.warn);let m0=f4(this.dataArray,!1);this.verifyHeader(m0,"smpl");let q0;if(b){Y5("%cSF2Pack detected, attempting to decode the smpl chunk...",S1.info);try{q0=Lo.decode(this.dataArray.buffer.slice(this.dataArray.currentIndex,this.dataArray.currentIndex+b0.size-12)).data[0]}catch(O6){throw t4(),new Error(`SF2Pack Ogg Vorbis decode error: ${O6}`)}Y5(`%cDecoded the smpl chunk! Length: %c${q0.length}`,S1.info,S1.value)}else q0=this.dataArray,this.sampleDataStartIndex=this.dataArray.currentIndex;Y5(`%cSkipping sample chunk, length: %c${b0.size-12}`,S1.info,S1.value),this.dataArray.currentIndex+=b0.size-12,Y5("%cLoading preset data chunk...",S1.warn);let m1=f4(this.dataArray);this.verifyHeader(m1,"list"),xe(m1.chunkData,4);let x=f4(m1.chunkData);this.verifyHeader(x,"phdr");let j0=f4(m1.chunkData);this.verifyHeader(j0,"pbag");let K0=f4(m1.chunkData);this.verifyHeader(K0,"pmod");let F1=f4(m1.chunkData);this.verifyHeader(F1,"pgen");let B2=f4(m1.chunkData);this.verifyHeader(B2,"inst");let b1=f4(m1.chunkData);this.verifyHeader(b1,"ibag");let _5=f4(m1.chunkData);this.verifyHeader(_5,"imod");let v2=f4(m1.chunkData);this.verifyHeader(v2,"igen");let J2=f4(m1.chunkData);this.verifyHeader(J2,"shdr"),this.dataArray.currentIndex=this.sampleDataStartIndex,this.samples.push(...lk(J2,q0,!b));let n3=RB(v2),U5=LB(_5),a0=gk(b1,n3,U5,this.samples);this.instruments=ck(B2,a0);let J5=RB(F1),n6=LB(K0),c6=hk(j0,J5,n6,this.instruments);this.presets.push(...fk(x,c6)),this.presets.sort((O6,g6)=>O6.program-g6.program+(O6.bank-g6.bank)),Y5(`%cParsing finished! %c"${this.soundFontInfo.INAM}"%c has %c${this.presets.length} %cpresets, + %c${this.instruments.length}%c instruments and %c${this.samples.length}%c samples.`,S1.info,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized,S1.info),t4(),b&&delete this.dataArray}verifyHeader(r,l){if(r.header.toLowerCase()!==l.toLowerCase())throw t4(),new SyntaxError(`Invalid chunk header! Expected "${l.toLowerCase()}" got "${r.header.toLowerCase()}"`)}verifyText(r,l){if(r.toLowerCase()!==l.toLowerCase())throw t4(),new SyntaxError(`Invalid soundFont! Expected "${l.toLowerCase()}" got "${r.toLowerCase()}"`)}};function Eh(A){let r=A.slice(8,12),l=new l6(r);return xe(l,4,void 0,!1).toLowerCase()==="dls "?new Rs(A):new Om(A,!1)}async function uk(){let A="locale.exportAudio.formats.formats.soundfont.options.";U7(this.localeManager.getLocaleString(A+"title"),[{type:"toggle",translatePathTitle:A+"trim",attributes:{"trim-toggle":"1",checked:"checked"}},{type:"toggle",translatePathTitle:A+"compress",attributes:{"compress-toggle":"1"}},{type:"range",translatePathTitle:A+"quality",attributes:{min:"0",max:"10",value:"5"}},{type:"button",textContent:this.localeManager.getLocaleString(A+"confirm"),onClick:async r=>{let l=r.div.querySelector("input[trim-toggle='1']").checked,g=r.div.querySelector("input[compress-toggle='1']").checked,d=parseInt(r.div.querySelector("input[type='range']").value)/10;X7(r.id),ar("%cExporting minified soundfont...",S1.info);let b=await this.seq.getMIDI(),I0=Eh(b.embeddedSoundFont||this.soundFont);ch(b,await this.synth.getSynthesizerSnapshot()),l&&Tm(I0,b);let b0=I0.write({compress:g,compressionQuality:d,compressionFunction:this.compressionFunc}),m0=new Blob([b0.buffer],{type:"audio/soundfont"}),q0=I0.soundFontInfo.ifil.split(".")[0]==="3"?"sf3":"sf2";this.saveBlob(m0,`${I0.soundFontInfo.INAM||"unnamed"}.${q0}`),t4()}}],99999999,!0,this.localeManager)}async function Ik(){let A="locale.exportAudio.formats.";U7(this.localeManager.getLocaleString(A+"title"),[{type:"button",translatePathTitle:A+"formats.wav.button",onClick:r=>{X7(r.id),this._exportAudioData()}},{type:"button",translatePathTitle:A+"formats.midi.button",onClick:r=>{X7(r.id),this.exportMidi()}},{type:"button",translatePathTitle:A+"formats.soundfont.button",onClick:r=>{X7(r.id);try{this._exportSoundfont()}catch{U7("Warning",[{type:"text",textContent:this.localeManager.getLocaleString("locale.warnings.outOfMemory")}])}}},{type:"button",translatePathTitle:A+"formats.rmidi.button",onClick:r=>{X7(r.id);try{this._exportRMIDI()}catch{U7("Warning",[{type:"text",textContent:this.localeManager.getLocaleString("locale.warnings.outOfMemory")}])}}}],999999,!0,this.localeManager,{display:"flex",flexWrap:"wrap",justifyContent:"center"})}async function dk(){let A=(x,j0,K0)=>this.seq.midiData.RMIDInfo?.[x]===void 0?j0:K0.decode(this.seq.midiData.RMIDInfo?.[x]).replace(/\0$/,""),r=A("IENC","ascii",new TextDecoder),l=new TextDecoder(r),g=A("IPRD","",l),d=A("IART","",l),b=A("IGNR","",l),I0=A("ICMT","Created using SpessaSynth: https://spessasus.github.io/SpessaSynth",l),b0="locale.exportAudio.formats.formats.rmidi.options.",m0="locale.exportAudio.formats.metadata.",m1=U7(this.localeManager.getLocaleString(b0+"title"),[{type:"toggle",translatePathTitle:b0+"compress",attributes:{"compress-toggle":"1",checked:"true"}},{type:"range",translatePathTitle:b0+"quality",attributes:{min:"0",max:"10",value:"5"}},{type:"input",translatePathTitle:m0+"songTitle",attributes:{name:"song_title",type:"text",value:this.seqUI.currentSongTitle}},{type:"input",translatePathTitle:m0+"album",attributes:{value:g,name:"album",type:"text"}},{type:"input",translatePathTitle:m0+"artist",attributes:{value:d,name:"artist",type:"text"}},{type:"input",translatePathTitle:m0+"genre",attributes:{value:b,name:"genre",type:"text"}},{type:"input",translatePathTitle:m0+"comment",attributes:{value:I0,name:"comment",type:"text"}},{type:"file",translatePathTitle:m0+"albumCover",attributes:{value:this.seq.midiData.RMIDInfo?.IPIC!==void 0?this.seq.midiData.RMIDInfo.IPIC:"",name:"cover",accept:"image/*"}},{type:"input",translatePathTitle:b0+"bankOffset",attributes:{value:this.seq.midiData.bankOffset,name:"bank_offset",type:"number"}},{type:"toggle",translatePathTitle:b0+"adjust",attributes:{name:"adjust",checked:"checked"}},{type:"button",textContent:this.localeManager.getLocaleString(b0+"confirm"),onClick:async x=>{let j0=x.div.querySelector("input[compress-toggle='1']").checked,K0=parseInt(x.div.querySelector("input[type='range']").value)/10,F1=x.div.querySelector("input[name='album']").value,B2=x.div.querySelector("input[name='artist']").value,b1=x.div.querySelector("input[name='song_title']").value,_5=x.div.querySelector("input[name='comment']").value,v2=x.div.querySelector("input[name='genre']").value,J2=x.div.querySelector("input[name='bank_offset']").value,n3=x.div.querySelector("input[name='adjust']").checked,U5=x.div.querySelector("input[type='file']")?.files[0];X7(x.id),ei("%cExporting RMIDI...",S1.info);let a0="locale.exportAudio.formats.formats.rmidi.progress.",J5=U7(this.localeManager.getLocaleString(a0+"title"),[{type:"text",textContent:this.localeManager.getLocaleString(a0+"loading"),attributes:{class:"export_rmidi_message"}}],9999999,!1);await new Promise(F9=>setTimeout(F9,500));let n6=J5.div.getElementsByClassName("export_rmidi_message")[0],c6=await this.seq.getMIDI(),O6=Eh(c6.embeddedSoundFont||this.soundFont);n6.textContent=this.localeManager.getLocaleString(a0+"modifyingMIDI"),await new Promise(F9=>setTimeout(F9,75)),ch(c6,await this.synth.getSynthesizerSnapshot()),n6.textContent=this.localeManager.getLocaleString(a0+"modifyingSoundfont"),await new Promise(F9=>setTimeout(F9,75)),Tm(O6,c6);let g6=O6.write({compress:j0,compressionQuality:K0,compressionFunction:this.compressionFunc});n6.textContent=this.localeManager.getLocaleString(a0+"saving"),await new Promise(F9=>setTimeout(F9,75));let u4;U5?.type.split("/")[0]==="image"?u4=await U5.arrayBuffer():c6.RMIDInfo?.IPIC!==void 0&&(u4=c6.RMIDInfo.IPIC.buffer);let Ke=dy(g6,c6,O6,J2,this.seqUI.encoding,{name:b1,comment:_5,engineer:O6.soundFontInfo.IENG,picture:u4,album:F1.length>0?F1:void 0,artist:B2.length>0?B2:void 0,genre:v2.length>0?v2:void 0,midiEncoding:this.seqUI.encoding},n3),R4=new Blob([Ke.buffer],{type:"audio/rmid"});this.saveBlob(R4,`${b1||"unnamed_song"}.rmi`),n6.textContent=this.localeManager.getLocaleString(a0+"done"),X7(J5.id),t4()}}],9999999,!0,this.localeManager).div.querySelector("input[type='file']");m1.oninput=()=>{m1.files[0]&&(m1.parentElement.firstChild.textContent=m1.files[0].name)}}var Pm={init:function(){var A;A||(A=(typeof A<"u"?A:null)||{});var r={};for(var l in A)A.hasOwnProperty(l)&&(r[l]=A[l]);var g=typeof window=="object",d=typeof process=="object"&&typeof gm=="function"&&!g,b=typeof importScripts=="function",I0=!g&&!d&&!b;if(d){A.print||(A.print=function($){process.stdout.write($+` `)}),A.printErr||(A.printErr=function($){process.stderr.write($+` -`)});var b0=void 0,m0=void 0;A.read=function($,h){$=m0.normalize($);var u=b0.readFileSync($);return!u&&$!=m0.resolve($)&&($=path.join(__dirname,"..","src",$),u=b0.readFileSync($)),u&&!h&&(u=u.toString()),u},A.readBinary=function($){return A.read($,!0)},A.load=function($){m1(read($))},A.thisProgram||(process.argv.length>1?A.thisProgram=process.argv[1].replace(/\\/g,"/"):A.thisProgram="unknown-program"),A.arguments=process.argv.slice(2),typeof module<"u"&&A!=null,process.on("uncaughtException",function(i){if(!(i instanceof Ho))throw i}),A.inspect=function(){return"[Emscripten Module object]"}}else if(I0)A.print||(A.print=print),typeof printErr<"u"&&(A.printErr=printErr),typeof read<"u"?A.read=read:A.read=function(){throw"no read() available (jsc?)"},A.readBinary=function($){if(typeof readbuffer=="function")return new Uint8Array(readbuffer($));var h=read($,"binary");return V4(typeof h=="object"),h},typeof scriptArgs<"u"?A.arguments=scriptArgs:typeof arguments<"u"&&(A.arguments=arguments);else if(g||b){if(A.read=function($){var h=new XMLHttpRequest;return h.open("GET",$,!1),h.send(null),h.responseText},typeof arguments<"u"&&(A.arguments=arguments),typeof console<"u")A.print||(A.print=function($){console.log($)}),A.printErr||(A.printErr=function($){console.log($)});else{var Y0=!1;A.print||(A.print=Y0&&typeof dump<"u"?function(i){dump(i)}:function(i){})}b&&(A.load=importScripts),typeof A.setWindowTitle>"u"&&(A.setWindowTitle=function(i){document.title=i})}else throw"Unknown runtime environment. Where are we?";function m1(i){eval.call(null,i)}!A.load&&A.read&&(A.load=function($){m1(A.read($))}),A.print||(A.print=function(){}),A.printErr||(A.printErr=A.print),A.arguments||(A.arguments=[]),A.thisProgram||(A.thisProgram="./this.program"),A.print=A.print,A.printErr=A.printErr,A.preRun=[],A.postRun=[];for(var l in r)r.hasOwnProperty(l)&&(A[l]=r[l]);var F={setTempRet0:function(i){_4=i},getTempRet0:function(){return _4},stackSave:function(){return Ei},stackRestore:function(i){Ei=i},getNativeTypeSize:function(i){switch(i){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(i[i.length-1]==="*")return F.QUANTUM_SIZE;if(i[0]==="i"){var $=parseInt(i.substr(1));return V4($%8===0),$/8}else return 0}}},getNativeFieldSize:function(i){return Math.max(F.getNativeTypeSize(i),F.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(i,$){return $==="double"||$==="i64"?i&7&&(V4((i&7)===4),i+=4):V4((i&3)===0),i},getAlignSize:function(i,$,h){return!h&&(i=="i64"||i=="double")?8:i?Math.min($||(i?F.getNativeFieldSize(i):0),F.QUANTUM_SIZE):Math.min($,8)},dynCall:function(i,$,h){return h&&h.length?(h.splice||(h=Array.prototype.slice.call(h)),h.splice(0,0,$),A["dynCall_"+i].apply(null,h)):A["dynCall_"+i].call(null,$)},functionPointers:[],addFunction:function(i){for(var $=0;$=Ts){var h=Ym();if(!h)return _i=$,0}return $},alignMemory:function(i,$){var h=i=Math.ceil(i/($||16))*($||16);return h},makeBigInt:function(i,$,h){var u=h?+(i>>>0)+ +($>>>0)*4294967296:+(i>>>0)+ +($|0)*4294967296;return u},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};A.Runtime=F;var j0=0,K0=!1,F1=0,B2=0,b1,_5,v2,Y2,K5,U5,$0,H5,n6,b6,H6,c6,w4,M4,K4,_4,_t,To,Go,ep,S$,tp,SC,pk,Qk;function V4(i,$){i||Ps("Assertion failed: "+$)}var yk=this;function Hm(i){var $=A["_"+i];if(!$)try{$=void("_"+i)}catch{}return V4($,"Cannot call unknown function "+i+" (perhaps LLVM optimizations or closure removed it?)"),$}var D$,No;(function(){var i={stackSave:function(){F.stackSave()},stackRestore:function(){F.stackRestore()},arrayToC:function(Z0){var t1=F.stackAlloc(Z0.length);return Oo(Z0,t1),t1},stringToC:function(Z0){var t1=0;return Z0!=null&&Z0!==0&&(t1=F.stackAlloc((Z0.length<<2)+1),Ns(Z0,t1)),t1}},$={string:i.stringToC,array:i.arrayToC};No=function(t1,b2,s,o1,m){var Q5=Hm(t1),p2=[],M5=0;if(o1)for(var b9=0;b9>0]=$;break;case"i8":H9[i>>0]=$;break;case"i16":Mr[i>>1]=$;break;case"i32":D9[i>>2]=$;break;case"i64":M4=[$>>>0,(c6=$,+H$(c6)>=1?c6>0?(xt(+Le(c6/4294967296),4294967295)|0)>>>0:~~+E7((c6-+(~~c6>>>0))/4294967296)>>>0:0)],D9[i>>2]=M4[0],D9[i+4>>2]=M4[1];break;case"float":Y$[i>>2]=$;break;case"double":x$[i>>3]=$;break;default:Ps("invalid type for setValue: "+h)}}A.setValue=Ch;function lr(i,$,h){switch($=$||"i8",$.charAt($.length-1)==="*"&&($="i32"),$){case"i1":return H9[i>>0];case"i8":return H9[i>>0];case"i16":return Mr[i>>1];case"i32":return D9[i>>2];case"i64":return D9[i>>2];case"float":return Y$[i>>2];case"double":return x$[i>>3];default:Ps("invalid type for setValue: "+$)}return null}A.getValue=lr;var Uo=0,DC=1,xs=2,mh=3,L3=4;A.ALLOC_NORMAL=Uo,A.ALLOC_STACK=DC,A.ALLOC_STATIC=xs,A.ALLOC_DYNAMIC=mh,A.ALLOC_NONE=L3;function d3(i,$,h,u){var O,e;typeof i=="number"?(O=!0,e=i):(O=!1,e=i.length);var Z0=typeof $=="string"?$:null,t1;if(h==L3?t1=u:t1=[Sh,F.stackAlloc,F.staticAlloc,F.dynamicAlloc][h===void 0?xs:h](Math.max(e,Z0?1:$.length)),O){var u=t1,b2;for(V4((t1&3)==0),b2=t1+(e&-4);u>2]=0;for(b2=t1+e;u>0]=0;return t1}if(Z0==="i8")return i.subarray||i.slice?Ci.set(i,t1):Ci.set(new Uint8Array(i),t1),t1;for(var s=0,o1,m,Q5;s>0],h|=u,!(u==0&&!$||(O++,$&&O==$)););$||($=O);var e="";if(h<128){for(var Z0=1024,t1;$>0;)t1=String.fromCharCode.apply(String,Ci.subarray(i,i+Math.min($,Z0))),e=e?e+t1:t1,i+=Z0,$-=Z0;return e}return A.UTF8ToString(i)}A.Pointer_stringify=b$;function _$(i){for(var $="";;){var h=H9[i++>>0];if(!h)return $;$+=String.fromCharCode(h)}}A.AsciiToString=_$;function rp(i,$){return O$(i,$,!1)}A.stringToAscii=rp;function Fs(i,$){for(var h,u,O,e,Z0,t1,b2="";;){if(h=i[$++],!h)return b2;if(!(h&128)){b2+=String.fromCharCode(h);continue}if(u=i[$++]&63,(h&224)==192){b2+=String.fromCharCode((h&31)<<6|u);continue}if(O=i[$++]&63,(h&240)==224?h=(h&15)<<12|u<<6|O:(e=i[$++]&63,(h&248)==240?h=(h&7)<<18|u<<12|O<<6|e:(Z0=i[$++]&63,(h&252)==248?h=(h&3)<<24|u<<18|O<<12|e<<6|Z0:(t1=i[$++]&63,h=(h&1)<<30|u<<24|O<<18|e<<12|Z0<<6|t1))),h<65536)b2+=String.fromCharCode(h);else{var s=h-65536;b2+=String.fromCharCode(55296|s>>10,56320|s&1023)}}}A.UTF8ArrayToString=Fs;function bC(i){return Fs(Ci,i)}A.UTF8ToString=bC;function Dn(i,$,h,u){if(!(u>0))return 0;for(var O=h,e=h+u-1,Z0=0;Z0=55296&&t1<=57343&&(t1=65536+((t1&1023)<<10)|i.charCodeAt(++Z0)&1023),t1<=127){if(h>=e)break;$[h++]=t1}else if(t1<=2047){if(h+1>=e)break;$[h++]=192|t1>>6,$[h++]=128|t1&63}else if(t1<=65535){if(h+2>=e)break;$[h++]=224|t1>>12,$[h++]=128|t1>>6&63,$[h++]=128|t1&63}else if(t1<=2097151){if(h+3>=e)break;$[h++]=240|t1>>18,$[h++]=128|t1>>12&63,$[h++]=128|t1>>6&63,$[h++]=128|t1&63}else if(t1<=67108863){if(h+4>=e)break;$[h++]=248|t1>>24,$[h++]=128|t1>>18&63,$[h++]=128|t1>>12&63,$[h++]=128|t1>>6&63,$[h++]=128|t1&63}else{if(h+5>=e)break;$[h++]=252|t1>>30,$[h++]=128|t1>>24&63,$[h++]=128|t1>>18&63,$[h++]=128|t1>>12&63,$[h++]=128|t1>>6&63,$[h++]=128|t1&63}}return $[h]=0,h-O}A.stringToUTF8Array=Dn;function _C(i,$,h){return Dn(i,Ci,$,h)}A.stringToUTF8=_C;function Ls(i){for(var $=0,h=0;h=55296&&u<=57343&&(u=65536+((u&1023)<<10)|i.charCodeAt(++h)&1023),u<=127?++$:u<=2047?$+=2:u<=65535?$+=3:u<=2097151?$+=4:u<=67108863?$+=5:$+=6}return $}A.lengthBytesUTF8=Ls;function RC(i){for(var $=0,h="";;){var u=Mr[i+$*2>>1];if(u==0)return h;++$,h+=String.fromCharCode(u)}}A.UTF16ToString=RC;function np(i,$,h){if(h===void 0&&(h=2147483647),h<2)return 0;h-=2;for(var u=$,O=h>1]=Z0,$+=2}return Mr[$>>1]=0,$-u}A.stringToUTF16=np;function sp(i){return i.length*2}A.lengthBytesUTF16=sp;function Ap(i){for(var $=0,h="";;){var u=D9[i+$*4>>2];if(u==0)return h;if(++$,u>=65536){var O=u-65536;h+=String.fromCharCode(55296|O>>10,56320|O&1023)}else h+=String.fromCharCode(u)}}A.UTF32ToString=Ap;function op(i,$,h){if(h===void 0&&(h=2147483647),h<4)return 0;for(var u=$,O=u+h-4,e=0;e=55296&&Z0<=57343){var t1=i.charCodeAt(++e);Z0=65536+((Z0&1023)<<10)|t1&1023}if(D9[$>>2]=Z0,$+=4,$+4>O)break}return D9[$>>2]=0,$-u}A.stringToUTF32=op;function ap(i){for(var $=0,h=0;h=55296&&u<=57343&&++h,$+=4}return $}A.lengthBytesUTF32=ap;function $p(i){var $=!!A.___cxa_demangle;if($)try{var h=Sh(i.length);Ns(i.substr(1),h);var u=Sh(4),O=A.___cxa_demangle(h,0,0,u);if(lr(u,"i32")===0&&O)return b$(O)}catch{}finally{h&&Zm(h),u&&Zm(u),O&&Zm(O)}var e=3,Z0={v:"void",b:"bool",c:"char",s:"short",i:"int",l:"long",f:"float",d:"double",w:"wchar_t",a:"signed char",h:"unsigned char",t:"unsigned short",j:"unsigned int",m:"unsigned long",x:"long long",y:"unsigned long long",z:"..."},t1=[],b2=!0;function s(p2){p2&&A.print(p2),A.print(i);for(var M5="",b9=0;b9"}else U9=J9;e:for(;e0;){var hr=i[e++];if(hr in Z0)f4.push(Z0[hr]);else switch(hr){case"P":f4.push(m(!0,1,!0)[0]+"*");break;case"R":f4.push(m(!0,1,!0)[0]+"&");break;case"L":{e++;var K$=i.indexOf("E",e),c8=K$-e;f4.push(i.substr(e,c8)),e+=c8+2;break}case"A":{var c8=parseInt(i.substr(e));if(e+=c8.toString().length,i[e]!=="_")throw"?";e++,f4.push(m(!0,1,!0)[0]+" ["+c8+"]");break}case"E":break e;default:U9+="?"+hr;break e}}return!b9&&f4.length===1&&f4[0]==="void"&&(f4=[]),p2?(U9&&f4.push(U9+"?"),f4):U9+Q8()}var Q5=i;try{if(i=="Object._main"||i=="_main")return"main()";if(typeof i=="number"&&(i=b$(i)),i[0]!=="_"||i[1]!=="_"||i[2]!=="Z")return i;switch(i[3]){case"n":return"operator new()";case"d":return"operator delete()"}Q5=m()}catch{Q5+="?"}return Q5.indexOf("?")>=0&&!$&&F.warnOnce("warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),Q5}function lp(i){return i.replace(/__Z[\w\d_]+/g,function($){var h=$p($);return $===h?$:$+" ["+h+"]"})}function cp(){var i=new Error;if(!i.stack){try{throw new Error(0)}catch($){i=$}if(!i.stack)return"(no stack trace available)"}return i.stack.toString()}function xC(){return lp(cp())}A.stackTrace=xC;var qm=4096;function Bh(i){return i%4096>0&&(i+=4096-i%4096),i}var FC,H9,Ci,Mr,R$,D9,q$,Y$,x$,Ms=0,Tr=0,F$=!1,ph=0,Ei=0,L$=0,M$=0,_i=0;function Ym(){Ps("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+Ts+", (2) compile with ALLOW_MEMORY_GROWTH which adjusts the size at runtime but prevents some optimizations, or (3) set Module.TOTAL_MEMORY before the program runs.")}for(var LC=A.TOTAL_STACK||5242880,Ts=A.TOTAL_MEMORY||16777216,Gr=64*1024;Gr0;){var $=i.shift();if(typeof $=="function"){$();continue}var h=$.func;typeof h=="number"?$.arg===void 0?F.dynCall("v",h):F.dynCall("vi",h,[$.arg]):h($.arg===void 0?null:$.arg)}}var MC=[],G$=[],Qh=[],N$=[],yh=[],wh=!1,bn=!1;function kh(){if(A.preRun)for(typeof A.preRun=="function"&&(A.preRun=[A.preRun]);A.preRun.length;)Rt(A.preRun.shift());T$(MC)}function Gs(){wh||(wh=!0,T$(G$))}function gp(){T$(Qh)}function TC(){T$(N$),bn=!0}function U$(){if(A.postRun)for(typeof A.postRun=="function"&&(A.postRun=[A.postRun]);A.postRun.length;)Jm(A.postRun.shift());T$(yh)}function Rt(i){MC.unshift(i)}A.addOnPreRun=A.addOnPreRun=Rt;function hp(i){G$.unshift(i)}A.addOnInit=A.addOnInit=hp;function fp(i){Qh.unshift(i)}A.addOnPreMain=A.addOnPreMain=fp;function up(i){N$.unshift(i)}A.addOnExit=A.addOnExit=up;function Jm(i){yh.unshift(i)}A.addOnPostRun=A.addOnPostRun=Jm;function Nr(i,$,h){var u=h>0?h:Ls(i)+1,O=new Array(u),e=Dn(i,O,0,O.length);return $&&(O.length=e),O}A.intArrayFromString=Nr;function Km(i){for(var $=[],h=0;h255&&(u&=255),$.push(String.fromCharCode(u))}return $.join("")}A.intArrayToString=Km;function Ns(i,$,h){for(var u=Nr(i,h),O=0;O>0]=e,O=O+1}}A.writeStringToMemory=Ns;function Oo(i,$){for(var h=0;h>0]=i[h]}A.writeArrayToMemory=Oo;function O$(i,$,h){for(var u=0;u>0]=i.charCodeAt(u);h||(H9[$>>0]=0)}A.writeAsciiToMemory=O$;function GC(i,$,h){return i>=0?i:$<=32?2*Math.abs(1<<$-1)+i:Math.pow(2,$)+i}function P$(i,$,h){if(i<=0)return i;var u=$<=32?Math.abs(1<<$-1):Math.pow(2,$-1);return i>=u&&($<=32||i>u)&&(i=-2*u+i),i}(!Math.imul||Math.imul(4294967295,5)!==-5)&&(Math.imul=function($,h){var u=$>>>16,O=$&65535,e=h>>>16,Z0=h&65535;return O*Z0+(u*Z0+O*e<<16)|0}),Math.imul=Math.imul,Math.clz32||(Math.clz32=function(i){i=i>>>0;for(var $=0;$<32;$++)if(i&1<<31-$)return $;return 32}),Math.clz32=Math.clz32;var H$=Math.abs,Vm=Math.cos,qi=Math.sin,_0=Math.tan,X0=Math.acos,C1=Math.asin,D2=Math.atan,K3=Math.atan2,l9=Math.exp,q9=Math.log,g6=Math.sqrt,E7=Math.ceil,Le=Math.floor,Ve=Math.pow,we=Math.imul,c9=Math.fround,xt=Math.min,xi=Math.clz32,C7=0,Ft=null,Fi=null;function Li(i){return i}function _n(i){C7++,A.monitorRunDependencies&&A.monitorRunDependencies(C7)}A.addRunDependency=_n;function cr(i){if(C7--,A.monitorRunDependencies&&A.monitorRunDependencies(C7),C7==0&&(Ft!==null&&(clearInterval(Ft),Ft=null),Fi)){var $=Fi;Fi=null,$()}}A.removeRunDependency=cr,A.preloadedImages={},A.preloadedAudios={};var NC=null,vh=[];Ms=8,Tr=Ms+553552,G$.push(),d3([0,0,0,0,1,0,0,0,3,0,0,0,7,0,0,0,15,0,0,0,31,0,0,0,63,0,0,0,127,0,0,0,255,0,0,0,255,1,0,0,255,3,0,0,255,7,0,0,255,15,0,0,255,31,0,0,255,63,0,0,255,127,0,0,255,255,0,0,255,255,1,0,255,255,3,0,255,255,7,0,255,255,15,0,255,255,31,0,255,255,63,0,255,255,127,0,255,255,255,0,255,255,255,1,255,255,255,3,255,255,255,7,255,255,255,15,255,255,255,31,255,255,255,63,255,255,255,127,255,255,255,255,0,0,0,0,0,0,0,0,183,29,193,4,110,59,130,9,217,38,67,13,220,118,4,19,107,107,197,23,178,77,134,26,5,80,71,30,184,237,8,38,15,240,201,34,214,214,138,47,97,203,75,43,100,155,12,53,211,134,205,49,10,160,142,60,189,189,79,56,112,219,17,76,199,198,208,72,30,224,147,69,169,253,82,65,172,173,21,95,27,176,212,91,194,150,151,86,117,139,86,82,200,54,25,106,127,43,216,110,166,13,155,99,17,16,90,103,20,64,29,121,163,93,220,125,122,123,159,112,205,102,94,116,224,182,35,152,87,171,226,156,142,141,161,145,57,144,96,149,60,192,39,139,139,221,230,143,82,251,165,130,229,230,100,134,88,91,43,190,239,70,234,186,54,96,169,183,129,125,104,179,132,45,47,173,51,48,238,169,234,22,173,164,93,11,108,160,144,109,50,212,39,112,243,208,254,86,176,221,73,75,113,217,76,27,54,199,251,6,247,195,34,32,180,206,149,61,117,202,40,128,58,242,159,157,251,246,70,187,184,251,241,166,121,255,244,246,62,225,67,235,255,229,154,205,188,232,45,208,125,236,119,112,134,52,192,109,71,48,25,75,4,61,174,86,197,57,171,6,130,39,28,27,67,35,197,61,0,46,114,32,193,42,207,157,142,18,120,128,79,22,161,166,12,27,22,187,205,31,19,235,138,1,164,246,75,5,125,208,8,8,202,205,201,12,7,171,151,120,176,182,86,124,105,144,21,113,222,141,212,117,219,221,147,107,108,192,82,111,181,230,17,98,2,251,208,102,191,70,159,94,8,91,94,90,209,125,29,87,102,96,220,83,99,48,155,77,212,45,90,73,13,11,25,68,186,22,216,64,151,198,165,172,32,219,100,168,249,253,39,165,78,224,230,161,75,176,161,191,252,173,96,187,37,139,35,182,146,150,226,178,47,43,173,138,152,54,108,142,65,16,47,131,246,13,238,135,243,93,169,153,68,64,104,157,157,102,43,144,42,123,234,148,231,29,180,224,80,0,117,228,137,38,54,233,62,59,247,237,59,107,176,243,140,118,113,247,85,80,50,250,226,77,243,254,95,240,188,198,232,237,125,194,49,203,62,207,134,214,255,203,131,134,184,213,52,155,121,209,237,189,58,220,90,160,251,216,238,224,12,105,89,253,205,109,128,219,142,96,55,198,79,100,50,150,8,122,133,139,201,126,92,173,138,115,235,176,75,119,86,13,4,79,225,16,197,75,56,54,134,70,143,43,71,66,138,123,0,92,61,102,193,88,228,64,130,85,83,93,67,81,158,59,29,37,41,38,220,33,240,0,159,44,71,29,94,40,66,77,25,54,245,80,216,50,44,118,155,63,155,107,90,59,38,214,21,3,145,203,212,7,72,237,151,10,255,240,86,14,250,160,17,16,77,189,208,20,148,155,147,25,35,134,82,29,14,86,47,241,185,75,238,245,96,109,173,248,215,112,108,252,210,32,43,226,101,61,234,230,188,27,169,235,11,6,104,239,182,187,39,215,1,166,230,211,216,128,165,222,111,157,100,218,106,205,35,196,221,208,226,192,4,246,161,205,179,235,96,201,126,141,62,189,201,144,255,185,16,182,188,180,167,171,125,176,162,251,58,174,21,230,251,170,204,192,184,167,123,221,121,163,198,96,54,155,113,125,247,159,168,91,180,146,31,70,117,150,26,22,50,136,173,11,243,140,116,45,176,129,195,48,113,133,153,144,138,93,46,141,75,89,247,171,8,84,64,182,201,80,69,230,142,78,242,251,79,74,43,221,12,71,156,192,205,67,33,125,130,123,150,96,67,127,79,70,0,114,248,91,193,118,253,11,134,104,74,22,71,108,147,48,4,97,36,45,197,101,233,75,155,17,94,86,90,21,135,112,25,24,48,109,216,28,53,61,159,2,130,32,94,6,91,6,29,11,236,27,220,15,81,166,147,55,230,187,82,51,63,157,17,62,136,128,208,58,141,208,151,36,58,205,86,32,227,235,21,45,84,246,212,41,121,38,169,197,206,59,104,193,23,29,43,204,160,0,234,200,165,80,173,214,18,77,108,210,203,107,47,223,124,118,238,219,193,203,161,227,118,214,96,231,175,240,35,234,24,237,226,238,29,189,165,240,170,160,100,244,115,134,39,249,196,155,230,253,9,253,184,137,190,224,121,141,103,198,58,128,208,219,251,132,213,139,188,154,98,150,125,158,187,176,62,147,12,173,255,151,177,16,176,175,6,13,113,171,223,43,50,166,104,54,243,162,109,102,180,188,218,123,117,184,3,93,54,181,180,64,247,177,1,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,88,105,112,104,46,79,114,103,32,108,105,98,86,111,114,98,105,115,32,73,32,50,48,49,53,48,49,48,53,32,40,226,155,132,226,155,132,226,155,132,226,155,132,41,0,0,0,0,1,0,0,0,4,0,0,0,3,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,0,0,76,194,0,0,80,194,0,0,84,194,0,0,88,194,0,0,92,194,0,0,96,194,0,0,100,194,0,0,104,194,0,0,108,194,0,0,112,194,0,0,116,194,0,0,120,194,0,0,124,194,0,0,128,194,0,0,130,194,0,0,132,194,0,0,134,194,0,0,136,194,0,0,138,194,0,0,140,194,0,0,142,194,0,0,144,194,0,0,146,194,0,0,148,194,0,0,150,194,0,0,152,194,0,0,154,194,0,0,156,194,0,0,160,194,0,0,162,194,0,0,164,194,0,0,166,194,0,0,168,194,0,0,170,194,0,0,172,194,0,0,174,194,0,0,176,194,0,0,176,194,0,0,178,194,0,0,178,194,0,0,180,194,0,0,182,194,0,0,182,194,0,0,184,194,0,0,186,194,0,0,188,194,0,0,190,194,0,0,192,194,0,0,192,194,0,0,194,194,0,0,196,194,0,0,196,194,0,0,198,194,0,0,198,194,0,0,200,194,0,0,200,194,0,0,202,194,0,0,204,194,0,0,206,194,0,0,208,194,0,0,212,194,0,0,214,194,0,0,214,194,0,0,214,194,0,0,214,194,0,0,210,194,0,0,206,194,0,0,204,194,0,0,202,194,0,0,198,194,0,0,196,194,0,0,192,194,0,0,190,194,0,0,190,194,0,0,192,194,0,0,194,194,0,0,192,194,0,0,190,194,0,0,186,194,0,0,180,194,0,0,160,194,0,0,140,194,0,0,72,194,0,0,32,194,0,0,240,193,0,0,240,193,0,0,240,193,0,0,240,193,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,4,64,0,0,0,0,0,0,18,64,0,0,0,0,0,0,33,64,0,0,0,0,0,128,48,64,0,0,0,4,107,244,52,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,4,64,0,0,0,0,0,0,18,64,0,0,0,0,0,0,33,64,0,0,0,4,107,244,52,66,62,180,228,51,9,145,243,51,139,178,1,52,60,32,10,52,35,26,19,52,96,169,28,52,167,215,38,52,75,175,49,52,80,59,61,52,112,135,73,52,35,160,86,52,184,146,100,52,85,109,115,52,136,159,129,52,252,11,138,52,147,4,147,52,105,146,156,52,50,191,166,52,63,149,177,52,147,31,189,52,228,105,201,52,173,128,214,52,54,113,228,52,166,73,243,52,136,140,1,53,192,247,9,53,6,239,18,53,118,123,28,53,192,166,38,53,55,123,49,53,218,3,61,53,94,76,73,53,59,97,86,53,185,79,100,53,252,37,115,53,138,121,129,53,134,227,137,53,124,217,146,53,133,100,156,53,82,142,166,53,51,97,177,53,37,232,188,53,220,46,201,53,206,65,214,53,65,46,228,53,87,2,243,53,143,102,1,54,79,207,9,54,245,195,18,54,152,77,28,54,232,117,38,54,50,71,49,54,116,204,60,54,94,17,73,54,101,34,86,54,206,12,100,54,184,222,114,54,151,83,129,54,28,187,137,54,114,174,146,54,175,54,156,54,129,93,166,54,53,45,177,54,199,176,188,54,228,243,200,54,1,3,214,54,96,235,227,54,30,187,242,54,162,64,1,55,235,166,9,55,241,152,18,55,201,31,28,55,30,69,38,55,61,19,49,55,30,149,60,55,111,214,72,55,162,227,85,55,247,201,99,55,137,151,114,55,175,45,129,55,190,146,137,55,116,131,146,55,230,8,156,55,190,44,166,55,71,249,176,55,121,121,188,55,254,184,200,55,71,196,213,55,146,168,227,55,248,115,242,55,192,26,1,56,147,126,9,56,249,109,18,56,6,242,27,56,98,20,38,56,86,223,48,56,216,93,60,56,146,155,72,56,242,164,85,56,51,135,99,56,110,80,114,56,211,7,129,56,107,106,137,56,130,88,146,56,42,219,155,56,9,252,165,56,104,197,176,56,59,66,188,56,41,126,200,56,160,133,213,56,217,101,227,56,232,44,242,56,233,244,0,57,70,86,9,57,14,67,18,57,81,196,27,57,181,227,37,57,127,171,48,57,162,38,60,57,197,96,72,57,83,102,85,57,131,68,99,57,104,9,114,57,1,226,128,57,36,66,137,57,157,45,146,57,123,173,155,57,99,203,165,57,153,145,176,57,13,11,188,57,102,67,200,57,11,71,213,57,50,35,227,57,237,229,241,57,29,207,0,58,5,46,9,58,48,24,18,58,169,150,27,58,21,179,37,58,183,119,48,58,124,239,59,58,10,38,72,58,199,39,85,58,230,1,99,58,120,194,113,58,59,188,128,58,233,25,137,58,198,2,146,58,219,127,155,58,203,154,165,58,216,93,176,58,239,211,187,58,179,8,200,58,136,8,213,58,159,224,226,58,7,159,241,58,92,169,0,59,208,5,9,59,94,237,17,59,15,105,27,59,132,130,37,59,253,67,48,59,103,184,59,59,97,235,71,59,77,233,84,59,93,191,98,59,156,123,113,59,127,150,128,59,186,241,136,59,249,215,145,59,71,82,155,59,65,106,165,59,39,42,176,59,226,156,187,59,18,206,199,59,23,202,212,59,32,158,226,59,53,88,241,59,166,131,0,60,167,221,8,60,152,194,17,60,130,59,27,60,1,82,37,60,84,16,48,60,97,129,59,60,200,176,71,60,229,170,84,60,232,124,98,60,212,52,113,60,207,112,128,60,150,201,136,60,58,173,145,60,192,36,155,60,197,57,165,60,133,246,175,60,229,101,187,60,130,147,199,60,185,139,212,60,180,91,226,60,121,17,241,60,251,93,0,61,137,181,8,61,223,151,17,61,2,14,27,61,141,33,37,61,185,220,47,61,109,74,59,61,64,118,71,61,145,108,84,61,133,58,98,61,34,238,112,61,42,75,128,61,127,161,136,61,136,130,145,61,72,247,154,61,88,9,165,61,242,194,175,61,248,46,187,61,3,89,199,61,109,77,212,61,92,25,226,61,209,202,240,61,91,56,0,62,119,141,8,62,51,109,17,62,144,224,26,62,39,241,36,62,46,169,47,62,135,19,59,62,202,59,71,62,77,46,84,62,55,248,97,62,132,167,112,62,143,37,128,62,115,121,136,62,226,87,145,62,220,201,154,62,249,216,164,62,109,143,175,62,27,248,186,62,149,30,199,62,51,15,212,62,23,215,225,62,61,132,240,62,198,18,0,63,114,101,8,63,147,66,17,63,43,179,26,63,206,192,36,63,177,117,47,63,178,220,58,63,101,1,71,63,29,240,83,63,251,181,97,63,251,96,112,63,0,0,128,63,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,120,194,0,0,120,194,0,0,130,194,0,0,146,194,0,0,138,194,0,0,136,194,0,0,136,194,0,0,134,194,0,0,140,194,0,0,140,194,0,0,144,194,0,0,148,194,0,0,150,194,0,0,158,194,0,0,158,194,0,0,160,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,84,194,0,0,116,194,0,0,132,194,0,0,132,194,0,0,136,194,0,0,134,194,0,0,140,194,0,0,152,194,0,0,152,194,0,0,144,194,0,0,146,194,0,0,150,194,0,0,152,194,0,0,156,194,0,0,158,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,24,194,0,0,32,194,0,0,40,194,0,0,56,194,0,0,64,194,0,0,84,194,0,0,92,194,0,0,120,194,0,0,130,194,0,0,104,194,0,0,96,194,0,0,96,194,0,0,116,194,0,0,112,194,0,0,130,194,0,0,134,194,0,0,138,194,0,0,142,194,0,0,154,194,0,0,154,194,0,0,156,194,0,0,160,194,0,0,164,194,0,0,168,194,0,0,176,194,0,0,186,194,0,0,196,194,0,0,212,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,208,193,0,0,216,193,0,0,232,193,0,0,0,194,0,0,24,194,0,0,64,194,0,0,80,194,0,0,80,194,0,0,72,194,0,0,64,194,0,0,64,194,0,0,76,194,0,0,80,194,0,0,88,194,0,0,112,194,0,0,134,194,0,0,134,194,0,0,132,194,0,0,136,194,0,0,138,194,0,0,146,194,0,0,146,194,0,0,152,194,0,0,160,194,0,0,162,194,0,0,162,194,0,0,170,194,0,0,170,194,0,0,172,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,136,193,0,0,152,193,0,0,160,193,0,0,176,193,0,0,208,193,0,0,224,193,0,0,248,193,0,0,32,194,0,0,60,194,0,0,28,194,0,0,28,194,0,0,32,194,0,0,40,194,0,0,44,194,0,0,60,194,0,0,76,194,0,0,100,194,0,0,80,194,0,0,92,194,0,0,92,194,0,0,112,194,0,0,104,194,0,0,120,194,0,0,124,194,0,0,140,194,0,0,134,194,0,0,138,194,0,0,144,194,0,0,146,194,0,0,154,194,0,0,160,194,0,0,164,194,0,0,166,194,0,0,174,194,0,0,180,194,0,0,188,194,0,0,196,194,0,0,208,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,32,193,0,0,48,193,0,0,112,193,0,0,152,193,0,0,200,193,0,0,240,193,0,0,8,194,0,0,248,193,0,0,240,193,0,0,248,193,0,0,232,193,0,0,0,194,0,0,12,194,0,0,40,194,0,0,64,194,0,0,40,194,0,0,48,194,0,0,56,194,0,0,72,194,0,0,72,194,0,0,76,194,0,0,80,194,0,0,108,194,0,0,88,194,0,0,92,194,0,0,92,194,0,0,104,194,0,0,120,194,0,0,124,194,0,0,132,194,0,0,144,194,0,0,146,194,0,0,152,194,0,0,150,194,0,0,156,194,0,0,160,194,0,0,160,194,0,0,162,194,0,0,168,194,0,0,176,194,0,0,180,194,0,0,188,194,0,0,196,194,0,0,202,194,0,0,212,194,0,0,220,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,134,194,0,0,134,194,0,0,134,194,0,0,152,194,0,0,144,194,0,0,142,194,0,0,148,194,0,0,152,194,0,0,152,194,0,0,150,194,0,0,156,194,0,0,158,194,0,0,158,194,0,0,162,194,0,0,166,194,0,0,172,194,0,0,178,194,0,0,186,194,0,0,194,194,0,0,200,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,64,194,0,0,76,194,0,0,92,194,0,0,108,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,134,194,0,0,132,194,0,0,136,194,0,0,138,194,0,0,140,194,0,0,148,194,0,0,158,194,0,0,154,194,0,0,154,194,0,0,156,194,0,0,160,194,0,0,162,194,0,0,164,194,0,0,168,194,0,0,172,194,0,0,176,194,0,0,182,194,0,0,190,194,0,0,200,194,0,0,216,194,0,0,232,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,20,194,0,0,20,194,0,0,36,194,0,0,48,194,0,0,64,194,0,0,76,194,0,0,104,194,0,0,120,194,0,0,112,194,0,0,100,194,0,0,108,194,0,0,108,194,0,0,112,194,0,0,124,194,0,0,130,194,0,0,144,194,0,0,142,194,0,0,140,194,0,0,144,194,0,0,148,194,0,0,154,194,0,0,152,194,0,0,156,194,0,0,162,194,0,0,162,194,0,0,160,194,0,0,166,194,0,0,172,194,0,0,182,194,0,0,192,194,0,0,200,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,240,193,0,0,0,194,0,0,0,194,0,0,4,194,0,0,12,194,0,0,36,194,0,0,68,194,0,0,72,194,0,0,68,194,0,0,60,194,0,0,64,194,0,0,64,194,0,0,80,194,0,0,76,194,0,0,100,194,0,0,130,194,0,0,116,194,0,0,108,194,0,0,116,194,0,0,128,194,0,0,138,194,0,0,140,194,0,0,148,194,0,0,154,194,0,0,154,194,0,0,156,194,0,0,162,194,0,0,168,194,0,0,170,194,0,0,174,194,0,0,180,194,0,0,184,194,0,0,192,194,0,0,200,194,0,0,214,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,160,193,0,0,168,193,0,0,184,193,0,0,216,193,0,0,240,193,0,0,12,194,0,0,16,194,0,0,36,194,0,0,56,194,0,0,48,194,0,0,40,194,0,0,32,194,0,0,36,194,0,0,36,194,0,0,44,194,0,0,64,194,0,0,92,194,0,0,84,194,0,0,80,194,0,0,84,194,0,0,96,194,0,0,108,194,0,0,104,194,0,0,112,194,0,0,134,194,0,0,132,194,0,0,138,194,0,0,142,194,0,0,144,194,0,0,150,194,0,0,158,194,0,0,162,194,0,0,168,194,0,0,174,194,0,0,180,194,0,0,186,194,0,0,194,194,0,0,202,194,0,0,214,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,48,193,0,0,64,193,0,0,64,193,0,0,112,193,0,0,128,193,0,0,160,193,0,0,184,193,0,0,240,193,0,0,20,194,0,0,8,194,0,0,4,194,0,0,8,194,0,0,248,193,0,0,0,194,0,0,0,194,0,0,24,194,0,0,60,194,0,0,48,194,0,0,36,194,0,0,32,194,0,0,60,194,0,0,68,194,0,0,56,194,0,0,56,194,0,0,104,194,0,0,72,194,0,0,72,194,0,0,88,194,0,0,104,194,0,0,120,194,0,0,128,194,0,0,134,194,0,0,134,194,0,0,140,194,0,0,144,194,0,0,152,194,0,0,158,194,0,0,166,194,0,0,174,194,0,0,182,194,0,0,192,194,0,0,200,194,0,0,208,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,124,194,0,0,128,194,0,0,132,194,0,0,134,194,0,0,132,194,0,0,136,194,0,0,150,194,0,0,144,194,0,0,152,194,0,0,150,194,0,0,152,194,0,0,156,194,0,0,158,194,0,0,164,194,0,0,168,194,0,0,170,194,0,0,180,194,0,0,188,194,0,0,202,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,112,194,0,0,112,194,0,0,116,194,0,0,124,194,0,0,132,194,0,0,142,194,0,0,136,194,0,0,140,194,0,0,140,194,0,0,142,194,0,0,144,194,0,0,144,194,0,0,150,194,0,0,162,194,0,0,156,194,0,0,158,194,0,0,164,194,0,0,166,194,0,0,172,194,0,0,180,194,0,0,194,194,0,0,206,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,88,194,0,0,92,194,0,0,100,194,0,0,96,194,0,0,100,194,0,0,92,194,0,0,116,194,0,0,130,194,0,0,112,194,0,0,112,194,0,0,120,194,0,0,124,194,0,0,124,194,0,0,132,194,0,0,136,194,0,0,148,194,0,0,146,194,0,0,150,194,0,0,150,194,0,0,156,194,0,0,160,194,0,0,160,194,0,0,164,194,0,0,170,194,0,0,180,194,0,0,192,194,0,0,202,194,0,0,216,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,64,194,0,0,76,194,0,0,100,194,0,0,76,194,0,0,68,194,0,0,72,194,0,0,76,194,0,0,84,194,0,0,88,194,0,0,108,194,0,0,132,194,0,0,112,194,0,0,120,194,0,0,134,194,0,0,134,194,0,0,140,194,0,0,144,194,0,0,150,194,0,0,152,194,0,0,156,194,0,0,162,194,0,0,170,194,0,0,176,194,0,0,188,194,0,0,194,194,0,0,208,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,28,194,0,0,36,194,0,0,40,194,0,0,40,194,0,0,28,194,0,0,24,194,0,0,36,194,0,0,44,194,0,0,80,194,0,0,48,194,0,0,32,194,0,0,28,194,0,0,20,194,0,0,20,194,0,0,32,194,0,0,60,194,0,0,88,194,0,0,72,194,0,0,64,194,0,0,72,194,0,0,92,194,0,0,116,194,0,0,108,194,0,0,120,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,138,194,0,0,138,194,0,0,146,194,0,0,148,194,0,0,148,194,0,0,150,194,0,0,154,194,0,0,158,194,0,0,164,194,0,0,174,194,0,0,182,194,0,0,190,194,0,0,200,194,0,0,216,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,224,193,0,0,208,193,0,0,192,193,0,0,176,193,0,0,160,193,0,0,160,193,0,0,184,193,0,0,232,193,0,0,240,193,0,0,248,193,0,0,224,193,0,0,216,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,12,194,0,0,32,194,0,0,4,194,0,0,0,194,0,0,232,193,0,0,240,193,0,0,240,193,0,0,240,193,0,0,20,194,0,0,52,194,0,0,36,194,0,0,20,194,0,0,24,194,0,0,52,194,0,0,60,194,0,0,60,194,0,0,64,194,0,0,84,194,0,0,68,194,0,0,64,194,0,0,72,194,0,0,68,194,0,0,68,194,0,0,76,194,0,0,80,194,0,0,104,194,0,0,96,194,0,0,100,194,0,0,96,194,0,0,112,194,0,0,116,194,0,0,120,194,0,0,140,194,0,0,144,194,0,0,148,194,0,0,156,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,212,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,200,194,0,0,190,194,0,0,182,194,0,0,174,194,0,0,166,194,0,0,160,194,0,0,156,194,0,0,152,194,0,0,156,194,0,0,156,194,0,0,162,194,0,0,166,194,0,0,170,194,0,0,172,194,0,0,170,194,0,0,172,194,0,0,174,194,0,0,180,194,0,0,194,194,0,0,214,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,162,194,0,0,154,194,0,0,146,194,0,0,140,194,0,0,134,194,0,0,134,194,0,0,136,194,0,0,150,194,0,0,146,194,0,0,140,194,0,0,138,194,0,0,140,194,0,0,144,194,0,0,150,194,0,0,158,194,0,0,168,194,0,0,166,194,0,0,168,194,0,0,172,194,0,0,176,194,0,0,178,194,0,0,178,194,0,0,186,194,0,0,196,194,0,0,210,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,152,194,0,0,142,194,0,0,136,194,0,0,136,194,0,0,130,194,0,0,124,194,0,0,124,194,0,0,120,194,0,0,120,194,0,0,128,194,0,0,130,194,0,0,128,194,0,0,116,194,0,0,120,194,0,0,124,194,0,0,128,194,0,0,132,194,0,0,136,194,0,0,146,194,0,0,146,194,0,0,148,194,0,0,150,194,0,0,152,194,0,0,162,194,0,0,166,194,0,0,170,194,0,0,176,194,0,0,178,194,0,0,184,194,0,0,190,194,0,0,200,194,0,0,216,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,160,194,0,0,150,194,0,0,142,194,0,0,136,194,0,0,130,194,0,0,124,194,0,0,120,194,0,0,116,194,0,0,116,194,0,0,116,194,0,0,116,194,0,0,108,194,0,0,96,194,0,0,100,194,0,0,84,194,0,0,72,194,0,0,104,194,0,0,80,194,0,0,72,194,0,0,72,194,0,0,80,194,0,0,84,194,0,0,88,194,0,0,104,194,0,0,134,194,0,0,124,194,0,0,134,194,0,0,136,194,0,0,144,194,0,0,150,194,0,0,156,194,0,0,160,194,0,0,162,194,0,0,162,194,0,0,164,194,0,0,170,194,0,0,178,194,0,0,180,194,0,0,186,194,0,0,194,194,0,0,202,194,0,0,214,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,130,194,0,0,116,194,0,0,108,194,0,0,100,194,0,0,96,194,0,0,92,194,0,0,92,194,0,0,96,194,0,0,96,194,0,0,100,194,0,0,92,194,0,0,84,194,0,0,80,194,0,0,60,194,0,0,48,194,0,0,48,194,0,0,72,194,0,0,48,194,0,0,36,194,0,0,28,194,0,0,28,194,0,0,40,194,0,0,32,194,0,0,56,194,0,0,76,194,0,0,68,194,0,0,72,194,0,0,84,194,0,0,88,194,0,0,124,194,0,0,112,194,0,0,116,194,0,0,120,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,140,194,0,0,146,194,0,0,148,194,0,0,150,194,0,0,152,194,0,0,150,194,0,0,158,194,0,0,170,194,0,0,178,194,0,0,182,194,0,0,192,194,0,0,204,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,80,194,0,0,72,194,0,0,68,194,0,0,68,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,68,194,0,0,72,194,0,0,72,194,0,0,68,194,0,0,56,194,0,0,44,194,0,0,28,194,0,0,12,194,0,0,4,194,0,0,24,194,0,0,16,194,0,0,0,194,0,0,232,193,0,0,0,194,0,0,0,194,0,0,0,194,0,0,12,194,0,0,48,194,0,0,28,194,0,0,24,194,0,0,24,194,0,0,56,194,0,0,72,194,0,0,52,194,0,0,56,194,0,0,84,194,0,0,72,194,0,0,72,194,0,0,72,194,0,0,88,194,0,0,88,194,0,0,84,194,0,0,84,194,0,0,96,194,0,0,100,194,0,0,108,194,0,0,132,194,0,0,140,194,0,0,144,194,0,0,148,194,0,0,158,194,0,0,166,194,0,0,170,194,0,0,180,194,0,0,194,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,172,194,0,0,160,194,0,0,150,194,0,0,150,194,0,0,158,194,0,0,160,194,0,0,158,194,0,0,160,194,0,0,162,194,0,0,164,194,0,0,176,194,0,0,190,194,0,0,206,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,176,194,0,0,166,194,0,0,158,194,0,0,156,194,0,0,150,194,0,0,142,194,0,0,134,194,0,0,136,194,0,0,146,194,0,0,146,194,0,0,144,194,0,0,146,194,0,0,150,194,0,0,154,194,0,0,160,194,0,0,164,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,214,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,202,194,0,0,192,194,0,0,180,194,0,0,172,194,0,0,162,194,0,0,154,194,0,0,146,194,0,0,138,194,0,0,132,194,0,0,116,194,0,0,120,194,0,0,132,194,0,0,128,194,0,0,120,194,0,0,130,194,0,0,132,194,0,0,140,194,0,0,144,194,0,0,152,194,0,0,162,194,0,0,160,194,0,0,168,194,0,0,180,194,0,0,190,194,0,0,204,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,206,194,0,0,194,194,0,0,184,194,0,0,176,194,0,0,166,194,0,0,158,194,0,0,148,194,0,0,140,194,0,0,132,194,0,0,108,194,0,0,84,194,0,0,104,194,0,0,120,194,0,0,92,194,0,0,88,194,0,0,88,194,0,0,88,194,0,0,104,194,0,0,116,194,0,0,120,194,0,0,144,194,0,0,140,194,0,0,144,194,0,0,150,194,0,0,156,194,0,0,160,194,0,0,162,194,0,0,160,194,0,0,166,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,214,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,150,194,0,0,140,194,0,0,132,194,0,0,120,194,0,0,96,194,0,0,64,194,0,0,48,194,0,0,64,194,0,0,56,194,0,0,56,194,0,0,44,194,0,0,56,194,0,0,64,194,0,0,64,194,0,0,76,194,0,0,104,194,0,0,104,194,0,0,108,194,0,0,112,194,0,0,120,194,0,0,120,194,0,0,116,194,0,0,116,194,0,0,130,194,0,0,128,194,0,0,130,194,0,0,136,194,0,0,140,194,0,0,148,194,0,0,150,194,0,0,156,194,0,0,162,194,0,0,172,194,0,0,190,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,150,194,0,0,140,194,0,0,130,194,0,0,116,194,0,0,92,194,0,0,68,194,0,0,28,194,0,0,4,194,0,0,32,194,0,0,12,194,0,0,0,194,0,0,24,194,0,0,32,194,0,0,4,194,0,0,12,194,0,0,20,194,0,0,56,194,0,0,36,194,0,0,52,194,0,0,48,194,0,0,56,194,0,0,40,194,0,0,52,194,0,0,56,194,0,0,80,194,0,0,72,194,0,0,72,194,0,0,72,194,0,0,88,194,0,0,88,194,0,0,92,194,0,0,100,194,0,0,120,194,0,0,128,194,0,0,132,194,0,0,136,194,0,0,140,194,0,0,152,194,0,0,162,194,0,0,180,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,196,194,0,0,180,194,0,0,170,194,0,0,164,194,0,0,166,194,0,0,160,194,0,0,156,194,0,0,168,194,0,0,158,194,0,0,160,194,0,0,166,194,0,0,174,194,0,0,178,194,0,0,182,194,0,0,186,194,0,0,198,194,0,0,212,194,0,0,234,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,196,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,150,194,0,0,140,194,0,0,136,194,0,0,148,194,0,0,144,194,0,0,148,194,0,0,154,194,0,0,160,194,0,0,164,194,0,0,170,194,0,0,174,194,0,0,184,194,0,0,178,194,0,0,182,194,0,0,190,194,0,0,200,194,0,0,212,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,196,194,0,0,180,194,0,0,166,194,0,0,150,194,0,0,142,194,0,0,124,194,0,0,128,194,0,0,134,194,0,0,120,194,0,0,128,194,0,0,134,194,0,0,140,194,0,0,146,194,0,0,154,194,0,0,162,194,0,0,168,194,0,0,166,194,0,0,170,194,0,0,178,194,0,0,180,194,0,0,186,194,0,0,196,194,0,0,208,194,0,0,218,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,206,194,0,0,192,194,0,0,176,194,0,0,162,194,0,0,150,194,0,0,136,194,0,0,104,194,0,0,88,194],"i8",L3,F.GLOBAL_BASE),d3([0,0,96,194,0,0,88,194,0,0,96,194,0,0,96,194,0,0,104,194,0,0,112,194,0,0,124,194,0,0,132,194,0,0,148,194,0,0,138,194,0,0,144,194,0,0,144,194,0,0,150,194,0,0,148,194,0,0,154,194,0,0,162,194,0,0,162,194,0,0,164,194,0,0,168,194,0,0,174,194,0,0,186,194,0,0,192,194,0,0,198,194,0,0,208,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,204,194,0,0,192,194,0,0,182,194,0,0,170,194,0,0,160,194,0,0,148,194,0,0,136,194,0,0,112,194,0,0,76,194,0,0,56,194,0,0,64,194,0,0,56,194,0,0,44,194,0,0,52,194,0,0,60,194,0,0,60,194,0,0,68,194,0,0,64,194,0,0,96,194,0,0,84,194,0,0,92,194,0,0,104,194,0,0,100,194,0,0,124,194,0,0,104,194,0,0,112,194,0,0,132,194,0,0,128,194,0,0,134,194,0,0,140,194,0,0,140,194,0,0,148,194,0,0,154,194,0,0,168,194,0,0,172,194,0,0,178,194,0,0,182,194,0,0,186,194,0,0,188,194,0,0,202,194,0,0,218,194,0,0,236,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,176,194,0,0,166,194,0,0,156,194,0,0,146,194,0,0,136,194,0,0,112,194,0,0,84,194,0,0,48,194,0,0,12,194,0,0,24,194,0,0,24,194,0,0,8,194,0,0,8,194,0,0,16,194,0,0,32,194,0,0,36,194,0,0,48,194,0,0,76,194,0,0,52,194,0,0,56,194,0,0,60,194,0,0,56,194,0,0,88,194,0,0,72,194,0,0,68,194,0,0,72,194,0,0,72,194,0,0,72,194,0,0,76,194,0,0,88,194,0,0,100,194,0,0,104,194,0,0,112,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,128,194,0,0,130,194,0,0,136,194,0,0,154,194,0,0,164,194,0,0,174,194,0,0,190,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,204,194,0,0,194,194,0,0,184,194,0,0,174,194,0,0,166,194,0,0,156,194,0,0,150,194,0,0,164,194,0,0,158,194,0,0,166,194,0,0,170,194,0,0,178,194,0,0,184,194,0,0,190,194,0,0,196,194,0,0,202,194,0,0,210,194,0,0,218,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,172,194,0,0,162,194,0,0,156,194,0,0,148,194,0,0,138,194,0,0,148,194,0,0,148,194,0,0,152,194,0,0,158,194,0,0,166,194,0,0,168,194,0,0,172,194,0,0,178,194,0,0,184,194,0,0,194,194,0,0,186,194,0,0,200,194,0,0,206,194,0,0,214,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,174,194,0,0,166,194,0,0,160,194,0,0,150,194,0,0,138,194,0,0,112,194,0,0,132,194,0,0,132,194,0,0,136,194,0,0,140,194,0,0,148,194,0,0,156,194,0,0,158,194,0,0,162,194,0,0,162,194,0,0,166,194,0,0,168,194,0,0,174,194,0,0,186,194,0,0,192,194,0,0,198,194,0,0,206,194,0,0,214,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,178,194,0,0,170,194,0,0,164,194,0,0,156,194,0,0,142,194,0,0,120,194,0,0,92,194,0,0,104,194,0,0,104,194,0,0,88,194,0,0,88,194,0,0,92,194,0,0,108,194,0,0,116,194,0,0,120,194,0,0,140,194,0,0,132,194,0,0,132,194,0,0,134,194,0,0,140,194,0,0,144,194,0,0,150,194,0,0,156,194,0,0,168,194,0,0,168,194,0,0,168,194,0,0,176,194,0,0,182,194,0,0,180,194,0,0,190,194,0,0,196,194,0,0,204,194,0,0,206,194,0,0,212,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,188,194,0,0,180,194,0,0,174,194,0,0,164,194,0,0,158,194,0,0,146,194,0,0,134,194,0,0,104,194,0,0,60,194,0,0,72,194,0,0,52,194,0,0,36,194,0,0,52,194,0,0,64,194,0,0,48,194,0,0,48,194,0,0,68,194,0,0,88,194,0,0,76,194,0,0,64,194,0,0,60,194,0,0,68,194,0,0,72,194,0,0,76,194,0,0,100,194,0,0,104,194,0,0,112,194,0,0,124,194,0,0,138,194,0,0,140,194,0,0,138,194,0,0,142,194,0,0,148,194,0,0,156,194,0,0,164,194,0,0,180,194,0,0,190,194,0,0,202,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,202,194,0,0,194,194,0,0,186,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,154,194,0,0,144,194,0,0,130,194,0,0,96,194,0,0,64,194,0,0,20,194,0,0,32,194,0,0,16,194,0,0,8,194,0,0,32,194,0,0,72,194,0,0,60,194,0,0,24,194,0,0,36,194,0,0,60,194,0,0,24,194,0,0,12,194,0,0,28,194,0,0,24,194,0,0,44,194,0,0,32,194,0,0,52,194,0,0,72,194,0,0,52,194,0,0,48,194,0,0,60,194,0,0,72,194,0,0,92,194,0,0,64,194,0,0,64,194,0,0,80,194,0,0,132,194,0,0,140,194,0,0,152,194,0,0,164,194,0,0,180,194,0,0,194,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,172,194,0,0,158,194,0,0,152,194,0,0,166,194,0,0,162,194,0,0,170,194,0,0,174,194,0,0,178,194,0,0,186,194,0,0,196,194,0,0,204,194,0,0,214,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,172,194,0,0,158,194,0,0,142,194,0,0,154,194,0,0,148,194,0,0,154,194,0,0,158,194,0,0,162,194,0,0,168,194,0,0,170,194,0,0,180,194,0,0,184,194,0,0,186,194,0,0,184,194,0,0,196,194,0,0,202,194,0,0,216,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,174,194,0,0,156,194,0,0,136,194,0,0,130,194,0,0,132,194,0,0,120,194,0,0,130,194,0,0,134,194,0,0,140,194,0,0,146,194,0,0,150,194,0,0,156,194,0,0,164,194,0,0,164,194,0,0,166,194,0,0,168,194,0,0,182,194,0,0,186,194,0,0,196,194,0,0,204,194,0,0,212,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,164,194,0,0,148,194,0,0,120,194,0,0,100,194,0,0,104,194,0,0,96,194,0,0,76,194,0,0,80,194,0,0,80,194,0,0,88,194,0,0,88,194,0,0,104,194,0,0,132,194,0,0,108,194,0,0,112,194,0,0,124,194,0,0,132,194,0,0,138,194,0,0,146,194,0,0,158,194,0,0,166,194,0,0,168,194,0,0,160,194,0,0,162,194,0,0,162,194,0,0,164,194,0,0,176,194,0,0,184,194,0,0,196,194,0,0,210,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,204,194,0,0,194,194,0,0,184,194,0,0,168,194,0,0,158,194,0,0,138,194,0,0,100,194,0,0,60,194,0,0,80,194,0,0,60,194,0,0,48,194,0,0,52,194,0,0,72,194,0,0,80,194,0,0,40,194,0,0,40,194,0,0,84,194,0,0,44,194,0,0,44,194,0,0,64,194,0,0,76,194,0,0,96,194,0,0,92,194,0,0,80,194,0,0,100,194,0,0,108,194,0,0,116,194,0,0,120,194,0,0,134,194,0,0,142,194,0,0,156,194,0,0,166,194,0,0,172,194,0,0,188,194,0,0,196,194,0,0,206,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,168,194,0,0,156,194,0,0,140,194,0,0,116,194,0,0,76,194,0,0,36,194,0,0,32,194,0,0,24,194,0,0,32,194,0,0,56,194,0,0,80,194,0,0,76,194,0,0,36,194,0,0,32,194,0,0,56,194,0,0,32,194,0,0,24,194,0,0,24,194,0,0,36,194,0,0,56,194,0,0,36,194,0,0,56,194,0,0,60,194,0,0,44,194,0,0,44,194,0,0,52,194,0,0,36,194,0,0,52,194,0,0,96,194,0,0,134,194,0,0,136,194,0,0,166,194,0,0,174,194,0,0,180,194,0,0,190,194,0,0,204,194,0,0,214,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,218,194,0,0,210,194,0,0,202,194,0,0,192,194,0,0,182,194,0,0,168,194,0,0,154,194,0,0,164,194,0,0,164,194,0,0,170,194,0,0,178,194,0,0,188,194,0,0,200,194,0,0,212,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,206,194,0,0,196,194,0,0,184,194,0,0,170,194,0,0,160,194,0,0,142,194,0,0,150,194,0,0,144,194,0,0,152,194,0,0,160,194,0,0,168,194,0,0,172,194,0,0,178,194,0,0,186,194,0,0,200,194,0,0,214,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,208,194,0,0,202,194,0,0,194,194,0,0,184,194,0,0,176,194,0,0,168,194,0,0,160,194,0,0,128,194,0,0,132,194,0,0,124,194,0,0,128,194,0,0,132,194,0,0,138,194,0,0,146,194,0,0,154,194,0,0,166,194,0,0,166,194,0,0,172,194,0,0,182,194,0,0,196,194,0,0,208,194,0,0,222,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,208,194,0,0,202,194,0,0,194,194,0,0,184,194,0,0,180,194,0,0,168,194,0,0,148,194,0,0,100,194,0,0,104,194,0,0,80,194,0,0,92,194,0,0,88,194,0,0,72,194,0,0,80,194,0,0,72,194,0,0,80,194,0,0,124,194,0,0,120,194,0,0,138,194,0,0,152,194,0,0,154,194,0,0,156,194,0,0,156,194,0,0,158,194,0,0,164,194,0,0,176,194,0,0,188,194,0,0,200,194,0,0,212,194,0,0,222,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,204,194,0,0,196,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,166,194,0,0,156,194,0,0,140,194,0,0,72,194,0,0,72,194,0,0,36,194,0,0,48,194,0,0,68,194,0,0,60,194,0,0,72,194,0,0,72,194,0,0,48,194,0,0,92,194,0,0,56,194,0,0,60,194,0,0,64,194,0,0,64,194,0,0,88,194,0,0,68,194,0,0,68,194,0,0,104,194,0,0,120,194,0,0,142,194,0,0,162,194,0,0,174,194,0,0,184,194,0,0,194,194,0,0,204,194,0,0,216,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,204,194,0,0,196,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,166,194,0,0,156,194,0,0,140,194,0,0,52,194,0,0,44,194,0,0,36,194,0,0,60,194,0,0,72,194,0,0,76,194,0,0,72,194,0,0,68,194,0,0,52,194,0,0,60,194,0,0,36,194,0,0,48,194,0,0,36,194,0,0,28,194,0,0,44,194,0,0,24,194,0,0,20,194,0,0,32,194,0,0,36,194,0,0,48,194,0,0,72,194,0,0,104,194,0,0,130,194,0,0,146,194,0,0,158,194,0,0,170,194,0,0,184,194,0,0,194,194,0,0,202,194,0,0,210,194,0,0,218,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,200,194,0,0,190,194,0,0,174,194,0,0,162,194,0,0,170,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,214,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,202,194,0,0,190,194,0,0,176,194,0,0,166,194,0,0,152,194,0,0,146,194,0,0,144,194,0,0,158,194,0,0,168,194,0,0,180,194,0,0,190,194,0,0,200,194,0,0,210,194,0,0,220,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,208,194,0,0,196,194,0,0,184,194,0,0,174,194,0,0,162,194,0,0,140,194,0,0,130,194,0,0,120,194,0,0,134,194,0,0,142,194,0,0,148,194,0,0,160,194,0,0,170,194,0,0,182,194,0,0,190,194,0,0,198,194,0,0,206,194,0,0,216,194,0,0,222,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,206,194,0,0,194,194,0,0,180,194,0,0,170,194,0,0,152,194,0,0,112,194,0,0,96,194,0,0,88,194,0,0,112,194,0,0,120,194,0,0,116,194,0,0,96,194,0,0,124,194,0,0,130,194,0,0,146,194,0,0,148,194,0,0,154,194,0,0,150,194,0,0,156,194,0,0,162,194,0,0,172,194,0,0,174,194,0,0,176,194,0,0,182,194,0,0,188,194,0,0,196,194,0,0,206,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,194,194,0,0,184,194,0,0,172,194,0,0,162,194,0,0,158,194,0,0,140,194,0,0,100,194,0,0,76,194,0,0,60,194,0,0,76,194,0,0,104,194,0,0,112,194,0,0,96,194,0,0,84,194,0,0,72,194,0,0,104,194,0,0,80,194,0,0,72,194,0,0,72,194,0,0,84,194,0,0,92,194,0,0,128,194,0,0,138,194,0,0,142,194,0,0,170,194,0,0,164,194,0,0,156,194,0,0,162,194,0,0,170,194,0,0,190,194,0,0,204,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,194,194,0,0,184,194,0,0,170,194,0,0,166,194,0,0,158,194,0,0,144,194,0,0,68,194,0,0,32,194,0,0,44,194,0,0,44,194,0,0,88,194,0,0,96,194,0,0,76,194,0,0,72,194,0,0,32,194,0,0,44,194,0,0,24,194,0,0,16,194,0,0,12,194,0,0,20,194,0,0,24,194,0,0,20,194,0,0,48,194,0,0,88,194,0,0,112,194,0,0,100,194,0,0,112,194,0,0,140,194,0,0,150,194,0,0,168,194,0,0,184,194,0,0,206,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,204,194,0,0,190,194,0,0,178,194,0,0,164,194,0,0,166,194,0,0,168,194,0,0,180,194,0,0,184,194,0,0,198,194,0,0,214,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,202,194,0,0,190,194,0,0,178,194,0,0,166,194,0,0,144,194,0,0,148,194,0,0,156,194,0,0,170,194,0,0,176,194,0,0,176,194,0,0,180,194,0,0,184,194,0,0,196,194,0,0,210,194,0,0,222,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,218,194,0,0,206,194,0,0,194,194,0,0,186,194,0,0,174,194,0,0,162,194,0,0,140,194,0,0,140,194,0,0,134,194,0,0,150,194,0,0,146,194,0,0,152,194,0,0,158,194,0,0,162,194,0,0,166,194,0,0,176,194,0,0,178,194,0,0,194,194,0,0,206,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,200,194,0,0,188,194,0,0,176,194,0,0,166,194,0,0,150,194,0,0,124,194,0,0,108,194,0,0,108,194,0,0,124,194,0,0,132,194,0,0,112,194,0,0,120,194,0,0,134,194,0,0,134,194,0,0,154,194,0,0,152,194,0,0,162,194,0,0,176,194,0,0,172,194,0,0,184,194,0,0,192,194,0,0,204,194,0,0,218,194,0,0,232,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,196,194,0,0,184,194,0,0,172,194,0,0,162,194,0,0,146,194,0,0,96,194,0,0,80,194,0,0,60,194,0,0,92,194,0,0,112,194,0,0,104,194,0,0,80,194,0,0,76,194,0,0,52,194,0,0,68,194,0,0,72,194,0,0,84,194,0,0,88,194,0,0,116,194,0,0,142,194,0,0,140,194,0,0,138,194,0,0,156,194,0,0,158,194,0,0,174,194,0,0,180,194,0,0,192,194,0,0,208,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,206,194,0,0,192,194,0,0,180,194,0,0,172,194,0,0,156,194,0,0,140,194,0,0,76,194,0,0,40,194,0,0,60,194,0,0,64,194,0,0,92,194,0,0,88,194,0,0,88,194,0,0,84,194,0,0,40,194,0,0,12,194,0,0,224,193,0,0,4,194,0,0,24,194,0,0,20,194,0,0,48,194,0,0,60,194,0,0,68,194,0,0,88,194,0,0,124,194,0,0,136,194,0,0,156,194,0,0,164,194,0,0,178,194,0,0,188,194,0,0,198,194,0,0,208,194,0,0,218,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,180,194,0,0,158,194,0,0,170,194,0,0,162,194,0,0,164,194,0,0,164,194,0,0,178,194,0,0,188,194,0,0,198,194,0,0,206,194,0,0,218,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,194,194,0,0,170,194,0,0,144,194,0,0,148,194,0,0,140,194,0,0,140,194,0,0,140,194,0,0,152,194,0,0,170,194,0,0,182,194,0,0,186,194,0,0,194,194,0,0,206,194,0,0,218,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,224,194,0,0,186,194,0,0,162,194,0,0,136,194,0,0,120,194,0,0,112,194,0,0,112,194,0,0,100,194,0,0,124,194,0,0,140,194,0,0,154,194,0,0,164,194,0,0,180,194,0,0,186,194,0,0,196,194,0,0,208,194,0,0,218,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,226,194,0,0,200,194,0,0,186,194,0,0,168,194,0,0,124,194,0,0,104,194,0,0,64,194,0,0,84,194,0,0,88,194,0,0,80,194,0,0,80,194,0,0,100,194,0,0,128,194,0,0,132,194,0,0,152,194,0,0,166,194,0,0,162,194,0,0,170,194,0,0,170,194,0,0,180,194,0,0,190,194,0,0,196,194,0,0,202,194,0,0,206,194,0,0,212,194,0,0,216,194,0,0,222,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,190,194,0,0,172,194,0,0,148,194,0,0,84,194,0,0,72,194,0,0,24,194,0,0,44,194,0,0,68,194,0,0,44,194,0,0,40,194,0,0,28,194,0,0,28,194,0,0,56,194,0,0,80,194,0,0,100,194,0,0,96,194,0,0,144,194,0,0,138,194,0,0,148,194,0,0,162,194,0,0,174,194,0,0,184,194,0,0,188,194,0,0,194,194,0,0,198,194,0,0,204,194,0,0,210,194,0,0,216,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,198,194,0,0,180,194,0,0,152,194,0,0,132,194,0,0,52,194,0,0,44,194,0,0,36,194,0,0,48,194,0,0,60,194,0,0,44,194,0,0,60,194,0,0,32,194,0,0,240,193,0,0,248,193,0,0,248,193,0,0,28,194,0,0,4,194,0,0,32,194,0,0,36,194,0,0,44,194,0,0,84,194,0,0,108,194,0,0,140,194,0,0,146,194,0,0,154,194,0,0,158,194,0,0,164,194,0,0,168,194,0,0,174,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,182,194,0,0,152,194,0,0,150,194,0,0,170,194,0,0,186,194,0,0,196,194,0,0,208,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,182,194,0,0,140,194,0,0,140,194,0,0,150,194,0,0,172,194,0,0,178,194,0,0,188,194,0,0,196,194,0,0,202,194,0,0,212,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,190,194,0,0,160,194,0,0,112,194,0,0,130,194,0,0,128,194,0,0,148,194,0,0,166,194,0,0,176,194,0,0,182,194,0,0,190,194,0,0,198,194,0,0,206,194,0,0,214,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,190,194,0,0,160,194,0,0,104,194,0,0,92,194,0,0,68,194,0,0,132,194,0,0,136,194,0,0,142,194,0,0,156,194,0,0,156,194,0,0,160,194,0,0,176,194,0,0,170,194,0,0,178,194,0,0,194,194,0,0,200,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,190,194,0,0,160,194,0,0,84,194,0,0,80,194,0,0,36,194,0,0,108,194,0,0,108,194,0,0,68,194,0,0,104,194,0,0,96,194,0,0,124,194,0,0,172,194,0,0,158,194,0,0,180,194,0,0,186,194,0,0,196,194,0,0,206,194,0,0,214,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,194,194,0,0,182,194,0,0,146,194,0,0,52,194,0,0,32,194,0,0,4,194,0,0,84,194,0,0,116,194,0,0,68,194,0,0,88,194,0,0,72,194,0,0,72,194,0,0,112,194,0,0,80,194,0,0,134,194,0,0,148,194,0,0,162,194,0,0,184,194,0,0,192,194,0,0,200,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,226,194,0,0,212,194,0,0,198,194,0,0,184,194,0,0,154,194,0,0,160,194,0,0,176,194,0,0,194,194,0,0,212,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196],"i8",L3,F.GLOBAL_BASE+10240),d3([0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,232,194,0,0,218,194,0,0,204,194,0,0,190,194,0,0,178,194,0,0,148,194,0,0,144,194,0,0,176,194,0,0,174,194,0,0,190,194,0,0,204,194,0,0,218,194,0,0,232,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,232,194,0,0,218,194,0,0,204,194,0,0,190,194,0,0,178,194,0,0,150,194,0,0,132,194,0,0,148,194,0,0,154,194,0,0,156,194,0,0,172,194,0,0,174,194,0,0,180,194,0,0,192,194,0,0,210,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,230,194,0,0,216,194,0,0,202,194,0,0,188,194,0,0,176,194,0,0,132,194,0,0,96,194,0,0,116,194,0,0,140,194,0,0,130,194,0,0,156,194,0,0,144,194,0,0,166,194,0,0,168,194,0,0,186,194,0,0,196,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,190,194,0,0,178,194,0,0,164,194,0,0,100,194,0,0,80,194,0,0,80,194,0,0,108,194,0,0,96,194,0,0,108,194,0,0,104,194,0,0,138,194,0,0,134,194,0,0,176,194,0,0,164,194,0,0,164,194,0,0,178,194,0,0,188,194,0,0,200,194,0,0,216,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,202,194,0,0,192,194,0,0,180,194,0,0,166,194,0,0,154,194,0,0,88,194,0,0,44,194,0,0,24,194,0,0,72,194,0,0,64,194,0,0,80,194,0,0,64,194,0,0,40,194,0,0,40,194,0,0,76,194,0,0,80,194,0,0,84,194,0,0,108,194,0,0,130,194,0,0,142,194,0,0,156,194,0,0,170,194,0,0,190,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,240,194,0,0,210,194,0,0,172,194,0,0,136,194,0,0,156,194,0,0,158,194,0,0,180,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,240,194,0,0,210,194,0,0,172,194,0,0,132,194,0,0,146,194,0,0,154,194,0,0,176,194,0,0,192,194,0,0,210,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,240,194,0,0,210,194,0,0,184,194,0,0,160,194,0,0,116,194,0,0,128,194,0,0,136,194,0,0,160,194,0,0,174,194,0,0,184,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,240,194,0,0,208,194,0,0,182,194,0,0,158,194,0,0,80,194,0,0,112,194,0,0,88,194,0,0,128,194,0,0,138,194,0,0,154,194,0,0,160,194,0,0,164,194,0,0,168,194,0,0,170,194,0,0,174,194,0,0,176,194,0,0,180,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,236,194,0,0,200,194,0,0,174,194,0,0,154,194,0,0,68,194,0,0,72,194,0,0,48,194,0,0,104,194,0,0,116,194,0,0,116,194,0,0,134,194,0,0,130,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,130,194,0,0,136,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,230,194,0,0,196,194,0,0,168,194,0,0,120,194,0,0,68,194,0,0,48,194,0,0,24,194,0,0,56,194,0,0,68,194,0,0,68,194,0,0,56,194,0,0,28,194,0,0,20,194,0,0,28,194,0,0,32,194,0,0,40,194,0,0,44,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,176,194,0,0,148,194,0,0,154,194,0,0,164,194,0,0,164,194,0,0,170,194,0,0,180,194,0,0,188,194,0,0,198,194,0,0,208,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,176,194,0,0,132,194,0,0,140,194,0,0,162,194,0,0,160,194,0,0,162,194,0,0,168,194,0,0,176,194,0,0,182,194,0,0,186,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,176,194,0,0,116,194,0,0,124,194,0,0,140,194,0,0,142,194,0,0,148,194,0,0,154,194,0,0,160,194,0,0,166,194,0,0,170,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,172,194,0,0,120,194,0,0,124,194,0,0,120,194,0,0,120,194,0,0,104,194,0,0,80,194,0,0,72,194,0,0,72,194,0,0,80,194,0,0,88,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,236,194,0,0,216,194,0,0,168,194,0,0,84,194,0,0,72,194,0,0,72,194,0,0,72,194,0,0,92,194,0,0,60,194,0,0,52,194,0,0,32,194,0,0,32,194,0,0,32,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,236,194,0,0,200,194,0,0,146,194,0,0,44,194,0,0,20,194,0,0,40,194,0,0,44,194,0,0,84,194,0,0,24,194,0,0,20,194,0,0,12,194,0,0,12,194,0,0,24,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,182,194,0,0,168,194,0,0,148,194,0,0,160,194,0,0,160,194,0,0,160,194,0,0,160,194,0,0,160,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,182,194,0,0,168,194,0,0,148,194,0,0,136,194,0,0,136,194,0,0,136,194,0,0,136,194,0,0,136,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,172,194,0,0,156,194,0,0,140,194,0,0,112,194,0,0,52,194,0,0,240,193,0,0,168,193,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,174,194,0,0,156,194,0,0,134,194,0,0,64,194,0,0,24,194,0,0,232,193,0,0,168,193,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,172,194,0,0,138,194,0,0,96,194,0,0,52,194,0,0,12,194,0,0,4,194,0,0,232,193,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,166,194,0,0,142,194,0,0,64,194,0,0,216,193,0,0,24,194,0,0,20,194,0,0,8,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,0,0,144,4,0,0,72,100,0,0,104,100,0,0,136,100,0,0,0,0,0,0,224,4,0,0,0,0,0,0,0,0,0,0,6,0,0,0,7,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,6,0,0,0,7,0,0,0,4,0,0,0,5,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,6,0,0,0,7,0,0,0,4,0,0,0,5,0,0,0,4,0,0,0,2,0,0,0,5,0,0,0,4,0,0,0,2,0,0,0,3,0,0,0,5,0,0,0,255,255,255,255,0,0,12,195,0,0,12,195,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,194,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,128,0,0,0,63,0,0,0,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,210,66,0,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,40,103,0,0,200,103,0,0,104,104,0,0,8,105,0,0,168,105,0,0,72,106,0,0,232,106,0,0,136,107,0,0,40,108,0,0,200,108,0,0,104,109,0,0,8,110,0,0,168,110,0,0,72,111,0,0,232,111,0,0,136,112,0,0,40,113,0,0,0,0,0,0,11,0,0,0,48,240,7,0,64,164,1,0,2,0,0,0,64,156,0,0,80,195,0,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,200,160,2,0,0,0,0,0,11,0,0,0,160,87,5,0,64,164,1,0,6,0,0,0,64,156,0,0,112,17,1,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,3,0,0,0,120,217,1,0,0,88,5,0,0,0,0,0,11,0,0,0,64,87,5,0,64,164,1,0,255,255,255,255,64,156,0,0,80,195,0,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,136,217,1,0,0,0,0,0,11,0,0,0,224,86,5,0,64,164,1,0,2,0,0,0,144,101,0,0,64,156,0,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,128,86,5,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,200,160,2,0,0,0,0,0,11,0,0,0,32,86,5,0,64,164,1,0,255,255,255,255,144,101,0,0,64,156,0,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,128,86,5,0,24,120,0,0,24,217,1,0,0,0,0,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,136,217,1,0,0,0,0,0,3,0,0,0,0,86,5,0,16,172,4,0,2,0,0,0,56,74,0,0,144,101,0,0,48,172,4,0,64,172,4,0,80,172,4,0,136,114,0,0,184,114,0,0,160,172,4,0,160,172,4,0,160,172,4,0,176,173,4,0,224,173,4,0,16,177,4,0,16,177,4,0,64,180,4,0,56,118,0,0,104,118,0,0,112,183,4,0,112,183,4,0,144,183,4,0,144,183,4,0,160,183,4,0,160,183,4,0,176,183,4,0,208,183,4,0,224,183,4,0,224,85,5,0,24,120,0,0,16,184,4,0,48,184,4,0,160,132,0,0,208,132,0,0,2,0,0,0,240,187,4,0,8,240,4,0,0,0,0,0,3,0,0,0,192,85,5,0,16,172,4,0,255,255,255,255,56,74,0,0,144,101,0,0,48,172,4,0,64,172,4,0,80,172,4,0,136,114,0,0,184,114,0,0,160,172,4,0,160,172,4,0,160,172,4,0,176,173,4,0,224,173,4,0,16,177,4,0,16,177,4,0,64,180,4,0,56,118,0,0,104,118,0,0,112,183,4,0,112,183,4,0,144,183,4,0,144,183,4,0,160,183,4,0,160,183,4,0,176,183,4,0,208,183,4,0,224,183,4,0,224,85,5,0,24,120,0,0,16,184,4,0,48,184,4,0,160,132,0,0,208,132,0,0,2,0,0,0,240,187,4,0,248,187,4,0,0,0,0,0,3,0,0,0,232,239,4,0,16,172,4,0,2,0,0,0,152,58,0,0,56,74,0,0,48,172,4,0,64,172,4,0,80,172,4,0,136,114,0,0,184,114,0,0,160,172,4,0,160,172,4,0,160,172,4,0,176,173,4,0,224,173,4,0,16,177,4,0,16,177,4,0,64,180,4,0,56,118,0,0,104,118,0,0,112,183,4,0,112,183,4,0,144,183,4,0,144,183,4,0,160,183,4,0,160,183,4,0,176,183,4,0,208,183,4,0,224,183,4,0,240,183,4,0,24,120,0,0,16,184,4,0,48,184,4,0,160,132,0,0,208,132,0,0,2,0,0,0,240,187,4,0,8,240,4,0,0,0,0,0,3,0,0,0,240,171,4,0,16,172,4,0,255,255,255,255,152,58,0,0,56,74,0,0,48,172,4,0,64,172,4,0,80,172,4,0,136,114,0,0,184,114,0,0,160,172,4,0,160,172,4,0,160,172,4,0,176,173,4,0,224,173,4,0,16,177,4,0,16,177,4,0,64,180,4,0,56,118,0,0,104,118,0,0,112,183,4,0,112,183,4,0,144,183,4,0,144,183,4,0,160,183,4,0,160,183,4,0,176,183,4,0,208,183,4,0,224,183,4,0,240,183,4,0,24,120,0,0,16,184,4,0,48,184,4,0,160,132,0,0,208,132,0,0,2,0,0,0,240,187,4,0,248,187,4,0,0,0,0,0,2,0,0,0,216,171,4,0,0,168,4,0,2,0,0,0,40,35,0,0,152,58,0,0,24,168,4,0,24,168,4,0,32,168,4,0,136,114,0,0,184,114,0,0,96,168,4,0,0,0,0,0,96,168,4,0,184,115,0,0,48,169,4,0,48,169,4,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,152,171,4,0,224,119,0,0,240,119,0,0,176,171,4,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,200,171,4,0,184,47,1,0,0,0,0,0,2,0,0,0,232,167,4,0,0,168,4,0,255,255,255,255,40,35,0,0,152,58,0,0,24,168,4,0,24,168,4,0,32,168,4,0,136,114,0,0,184,114,0,0,96,168,4,0,0,0,0,0,96,168,4,0,184,115,0,0,48,169,4,0,48,169,4,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,152,171,4,0,224,119,0,0,240,119,0,0,176,171,4,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,200,171,4,0,248,180,0,0,0,0,0,0,2,0,0,0,208,167,4,0,40,114,0,0,2,0,0,0,64,31,0,0,40,35,0,0,64,114,0,0,64,114,0,0,72,114,0,0,136,114,0,0,184,114,0,0,232,114,0,0,0,0,0,0,232,114,0,0,184,115,0,0,208,115,0,0,208,115,0,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,208,119,0,0,224,119,0,0,240,119,0,0,0,120,0,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,240,180,0,0,184,47,1,0,0,0,0,0,2,0,0,0,184,167,4,0,40,114,0,0,255,255,255,255,64,31,0,0,40,35,0,0,64,114,0,0,64,114,0,0,72,114,0,0,136,114,0,0,184,114,0,0,232,114,0,0,0,0,0,0,232,114,0,0,184,115,0,0,208,115,0,0,208,115,0,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,208,119,0,0,224,119,0,0,240,119,0,0,0,120,0,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,240,180,0,0,248,180,0,0,0,0,0,0,11,0,0,0,200,113,0,0,64,164,1,0,2,0,0,0,80,195,0,0,64,13,3,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,200,160,2,0,0,0,0,0,11,0,0,0,200,113,0,0,64,164,1,0,255,255,255,255,80,195,0,0,64,13,3,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,0,0,0,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,136,217,1,0,0,0,0,0,2,0,0,0,200,113,0,0,40,114,0,0,2,0,0,0,0,0,0,0,64,31,0,0,64,114,0,0,64,114,0,0,72,114,0,0,136,114,0,0,184,114,0,0,232,114,0,0,0,0,0,0,232,114,0,0,184,115,0,0,208,115,0,0,208,115,0,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,208,119,0,0,224,119,0,0,240,119,0,0,0,120,0,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,240,180,0,0,184,47,1,0,0,0,0,0,2,0,0,0,200,113,0,0,40,114,0,0,255,255,255,255,0,0,0,0,64,31,0,0,64,114,0,0,64,114,0,0,72,114,0,0,136,114,0,0,184,114,0,0,232,114,0,0,0,0,0,0,232,114,0,0,184,115,0,0,208,115,0,0,208,115,0,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,208,119,0,0,224,119,0,0,240,119,0,0,0,120,0,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,240,180,0,0,248,180,0,0,0,0,0,0,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,154,153,153,153,153,153,185,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,2,0,0,0,2,0,0,32,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,30,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,242,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,90,0,0,0,90,0,0,0,95,0,0,0,95,0,0,0,95,0,0,0,95,0,0,0,105,0,0,0,105,0,0,0,105,0,0,0,105,0,0,0,105,0,0,0,105,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,232,255,255,255,226,255,255,255,216,255,255,255,216,255,255,255,211,255,255,255,211,255,255,255,211,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,0,0,0,0,10,0,0,0,10,0,0,0,255,255,255,255,10,0,0,0,10,0,0,0,255,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,226,255,255,255,216,255,255,255,216,255,255,255,211,255,255,255,211,255,255,255,211,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,9,0,0,0,9,0,0,0,10,0,0,0,10,0,0,0,11,0,0,0,11,0,0,0,12,0,0,0,12,0,0,0,13,0,0,0,13,0,0,0,14,0,0,0,14,0,0,0,15,0,0,0,15,0,0,0,16,0,0,0,16,0,0,0,17,0,0,0,17,0,0,0,17,0,0,0,18,0,0,0,18,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,64,0,0,0,64,0,0,0,8,0,0,0,8,0,0,0,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,156,255,255,255,156,255,255,255,151,255,255,255,0,0,0,0,126,255,255,255,126,255,255,255,116,255,255,255,0,0,0,0,0,0,0,0,0,0,8,64],"i8",L3,F.GLOBAL_BASE+20480),d3([0,0,0,0,0,0,16,64,0,0,0,0,0,0,16,64,8,0,0,0,0,0,160,65,0,0,96,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,112,194,0,0,240,193,0,0,32,194,0,0,32,194,0,0,32,194,0,0,32,194,0,0,32,194,0,0,0,64,0,0,150,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,96,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,194,0,0,240,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,0,64,0,0,160,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,64,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,160,193,0,0,160,193,0,0,112,193,0,0,112,193,0,0,112,193,0,0,112,193,0,0,112,193,0,0,0,0,0,0,160,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,32,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,160,193,0,0,112,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,0,0,0,0,160,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,32,65,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,112,193,0,0,112,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,0,0,0,0,170,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,8,64,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,3,1,0,24,3,1,0,48,3,1,0,80,3,1,0,112,3,1,0,160,3,1,0,208,3,1,0,232,3,1,0,40,4,1,0,104,4,1,0,152,4,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,128,0,0,0,33,0,0,0,8,0,0,0,16,0,0,0,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,66,0,0,0,16,0,0,0,32,0,0,0,140,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,0,1,0,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,5,0,0,0,6,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,128,0,0,0,14,0,0,0,4,0,0,0,58,0,0,0,2,0,0,0,8,0,0,0,28,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,128,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,5,0,0,0,6,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,28,0,0,0,8,0,0,0,116,0,0,0,4,0,0,0,16,0,0,0,56,0,0,0,180,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,0,1,0,0,4,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,6,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,128,0,0,0,8,0,0,0,33,0,0,0,4,0,0,0,16,0,0,0,70,0,0,0,2,0,0,0,6,0,0,0,12,0,0,0,23,0,0,0,46,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,128,0,0,0,6,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,6,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,128,0,0,0,12,0,0,0,46,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,23,0,0,0,33,0,0,0,70,0,0,0,2,0,0,0,6,0,0,0,10,0,0,0,14,0,0,0,19,0,0,0,28,0,0,0,39,0,0,0,58,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2],"i8",L3,F.GLOBAL_BASE+30720),d3([1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,66,0,0,0,16,0,0,0,32,0,0,0,140,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,0,1,0,0,8,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,3,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,12,0,0,0,13,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,4,0,0,93,0,0,0,23,0,0,0,116,1,0,0,6,0,0,0,46,0,0,0,186,0,0,0,238,2,0,0,14,0,0,0,33,0,0,0,65,0,0,0,130,0,0,0,4,1,0,0,44,2,0,0,3,0,0,0,10,0,0,0,18,0,0,0,28,0,0,0,39,0,0,0,55,0,0,0,79,0,0,0,111,0,0,0,158,0,0,0,220,0,0,0,56,1,0,0,208,1,0,0,138,2,0,0,82,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,64,64,0,0,144,65,0,4,0,0,8,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,3,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,12,0,0,0,13,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,8,0,0,186,0,0,0,46,0,0,0,232,2,0,0,12,0,0,0,92,0,0,0,116,1,0,0,220,5,0,0,28,0,0,0,66,0,0,0,130,0,0,0,4,1,0,0,8,2,0,0,88,4,0,0,6,0,0,0,20,0,0,0,36,0,0,0,56,0,0,0,78,0,0,0,110,0,0,0,158,0,0,0,222,0,0,0,60,1,0,0,184,1,0,0,112,2,0,0,160,3,0,0,20,5,0,0,164,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,64,64,0,0,144,65,0,8,0,0,6,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,6,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,2,0,0,46,0,0,0,186,0,0,0,16,0,0,0,33,0,0,0,65,0,0,0,93,0,0,0,130,0,0,0,22,1,0,0,7,0,0,0,23,0,0,0,39,0,0,0,55,0,0,0,79,0,0,0,110,0,0,0,156,0,0,0,232,0,0,0,104,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,10,0,0,0,248,2,1,0,0,0,0,0,8,181,0,0,24,206,0,0,8,181,0,0,56,206,0,0,1],"i8",L3,F.GLOBAL_BASE+41032),d3([1],"i8",L3,F.GLOBAL_BASE+49544),d3([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],"i8",L3,F.GLOBAL_BASE+50572),d3([1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,8,245,0,0,8,245,0,0,48,245,0,0,48,245,0,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,112,217,0,0,112,217,0,0,152,217,0,0,152,217,0,0,0,0,0,0,255,255,255,255,255,255,255,255,10,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,F.GLOBAL_BASE+52752),d3([1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,16,0,0,0,60,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,30,0,0,0,255,255,255,255,50,0,0,0,255,255,255,255,80,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,136,233,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,168,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,219,0,0,0,0,0,0,72,219,0,0,112,219,0,0,0,0,0,0,0,0,0,0,152,219,0,0,192,219,0,0,0,0,0,0,0,0,0,0,232,219,0,0,16,220,0,0,56,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,81,0,0,0,32,233,0,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,120,233,0,0,0,0,0,0,4,0,0,0,81,0,0,0,184,232,0,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,16,233,0,0,0,0,0,0,4,0,0,0,113,2,0,0,40,230,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,232,0,0,0,0,0,0,4,0,0,0,113,2,0,0,152,227,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,230,0,0,0,0,0,0,2,0,0,0,81,0,0,0,24,227,0,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,112,227,0,0,0,0,0,0,2,0,0,0,81,0,0,0,152,226,0,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,240,226,0,0,0,0,0,0,4,0,0,0,81,0,0,0,48,226,0,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,136,226,0,0,0,0,0,0,2,0,0,0,121,0,0,0,128,225,0,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,0,226,0,0,0,0,0,0,2,0,0,0,121,0,0,0,208,224,0,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,80,225,0,0,0,0,0,0,2,0,0,0,121,0,0,0,32,224,0,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,160,224,0,0,0,0,0,0,2,0,0,0,225,0,0,0,248,222,0,0,1,0,0,0,0,228,91,225,0,224,255,96,4,0,0,0,0,0,0,0,224,223,0,0,0,0,0,0,2,0,0,0,225,0,0,0,208,221,0,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,184,222,0,0,0,0,0,0,2,0,0,0,33,1,0,0,96,220,0,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,136,221,0,0,0,0,0,0,2,5,4,6,6,8,8,8,8,8,9,9,9,9,9,9,9,5,6,6,7,7,8,8,9,8,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,8,9,9,9,9,9,9,9,9,9,7,7,7,8,8,9,9,9,9,9,9,9,9,9,10,10,9,7,7,7,8,8,9,9,9,9,9,9,9,9,9,9,10,10,8,8,8,9,9,9,9,10,10,10,9,10,10,10,10,10,10,8,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,7,7,9,9,7,7,8,8,10,10,11,11,4,7,7,9,9,10,10,8,8,10,10,10,11,10,11,4,7,7,9,9,10,10,8,8,10,9,11,11,11,11,7,9,9,12,12,11,12,10,10,11,10,12,11,11,11,7,9,9,11,11,13,12,9,9,11,10,11,11,12,11,9,10,10,12,12,14,14,10,10,11,12,12,11,11,11,9,10,11,11,13,14,13,10,11,11,11,12,11,12,12,7,8,8,10,9,11,10,11,12,12,11,12,14,12,13,7,8,8,9,10,10,11,12,12,12,11,12,12,12,13,9,9,9,11,11,13,12,12,12,12,11,12,12,13,12,8,10,10,11,10,11,12,12,12,12,12,12,14,12,12,9,11,11,11,12,12,12,12,13,13,12,12,13,13,12,10,11,11,12,11,12,12,12,11,12,13,12,12,12,13,11,11,12,12,12,13,12,12,11,12,13,13,12,12,13,12,11,12,12,13,13,12,13,12,13,13,13,13,14,13,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,4,4,11,11,11,11,11,11,11,11,11,11,11,11,3,11,8,11,11,11,11,11,11,11,11,11,11,11,11,3,9,9,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,5,5,6,6,7,7,7,7,8,8,5,6,6,7,7,7,7,8,8,8,8,5,6,6,7,7,7,7,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,7,8,8,8,8,8,8,9,8,9,9,8,8,8,8,8,8,8,9,9,9,9,8,8,8,8,8,8,8,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,10,11,11,4,6,6,7,7,9,9,11,11,13,12,4,6,6,7,7,9,9,11,11,12,12,6,7,7,9,9,11,11,12,12,13,13,6,7,7,9,9,11,11,12,12,13,13,8,9,9,11,11,12,12,13,13,14,14,8,9,9,11,11,12,12,13,13,14,14,9,11,11,12,12,13,13,14,14,15,15,9,11,11,12,12,13,13,14,14,15,14,11,12,12,13,13,14,14,15,15,16,16,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,4,5,5,7,7,8,8,9,9,9,9,4,5,5,7,7,8,8,9,9,9,9,6,7,7,8,8,8,8,9,9,9,9,6,7,7,8,8,8,8,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,9,9,8,10,10,8,10,10,5,9,9,7,10,10,8,10,10,4,10,10,9,12,12,9,11,11,7,12,11,10,11,13,10,13,13,7,12,12,10,13,12,10,13,13,4,10,10,9,12,12,9,12,12,7,12,12,10,13,13,10,12,13,7,11,12,10,13,13,10,13,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,6,6,7,7,9,9,4,4,5,6,6,7,7,9,9,4,4,4,6,6,7,7,9,9,6,6,6,7,7,8,8,9,9,6,6,6,7,7,8,8,9,9,7,7,7,8,8,8,9,10,10,7,7,7,8,8,9,8,10,10,9,9,9,9,9,10,10,10,10,9,9,9,9,9,10,10,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,5,8,7,8,8,10,10,4,6,6,8,8,8,8,10,10,7,8,8,9,9,9,9,11,11,7,8,8,9,9,9,9,11,11,8,8,8,9,9,10,10,12,11,8,8,8,9,9,10,10,11,11,9,10,10,11,11,11,11,13,12,9,10,10,11,11,12,12,12,13,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,9,9,6,7,7,9,9,6,7,7,9,9,9,9,9,11,11,9,9,9,11,11,6,7,7,9,9,7,7,8,9,10,7,7,8,9,10,9,9,10,10,11,9,9,10,10,12,6,7,7,9,9,7,8,7,10,9,7,8,7,10,9,9,10,9,12,11,10,10,9,12,10,9,10,10,12,11,9,10,10,12,11,9,10,10,12,12,11,11,12,12,13,11,11,12,12,13,9,9,10,12,11,9,10,10,12,12,10,10,10,12,12,11,12,11,13,12,11,12,11,13,12,6,7,7,9,9,7,8,8,10,10,7,8,7,10,9,10,10,10,12,12,10,10,10,12,11,7,8,7,10,10,7,7,9,10,11,8,9,9,11,10,10,10,11,10,12,10,10,11,12,12,7,8,8,10,10,7,9,8,11,10,8,8,9,11,11,10,11,10,12,11,10,11,11,12,12,9,10,10,12,12,9,10,10,12,12,10,11,11,13,12,11,10,12,10,14,12,12,12,13,14,9,10,10,12,12,9,11,10,12,12,10,11,11,12,12,11,12,11,14,12,12,12,12,14,14,5,7,7,9,9,7,7,7,9,10,7,8,8,10,10,10,10,10,11,11,10,10,10,12,12,7,8,8,10,10,8,9,8,11,10,7,8,9,10,11,10,10,10,11,12,10,10,11,11,13,6,7,8,10,10,8,9,9,10,10,7,9,7,11,10,10,11,10,12,12,10,11,10,12,10,9,10,10,12,12,10,11,11,13,12,9,10,10,12,12,12,12,12,14,13,11,11,12,11,14,9,10,10,11,12,10,11,11,12,13,9,10,10,12,12,12,12,12,14,13,11,12,10,14,11,9,9,10,11,12,9,10,10,12,12,9,10,10,12,12,12,12,12,14,14,11,12,12,13,12,9,10,9,12,12,9,10,11,12,13,10,11,10,13,11,12,12,13,13,14,12,12,12,13,13,9,10,10,12,12,10,11,10,13,12,10,10,11,12,13,12,13,12,14,13,12,12,12,13,14,11,12,11,14,13,10,10,11,13,13,12,12,12,14,13,12,10,14,10,15,13,14,14,14,14,11,11,12,13,14,10,12,11,13,13,12,12,12,13,15,12,13,11,15,12,13,13,14,14,14,9,10,9,12,12,9,10,10,12,12,10,10,10,12,12,11,11,12,12,13,12,12,12,14,14,9,10,10,12,12,10,11,10,13,12,10,10,11,12,13,12,12,12,14,13,12,12,13,13,14,9,10,10,12,13,10,10,11,11,12,9,11,10,13,12,12,12,12,13,14,12,13,12,14,13,11,12,11,13,13,12,13,12,14,13,10,11,12,13,13,13,13,13,14,15,12,11,14,12,14,11,11,12,12,13,12,12,12,13,14,10,12,10,14,13,13,13,13,14,15,12,14,11,15,10,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,7,7,6,7,7,9,9,6,7,7,9,9,8,10,9,11,11,9,9,9,11,11,6,8,8,10,10,8,10,10,11,11,8,9,10,11,11,10,11,11,12,12,10,11,11,12,13,6,8,8,10,10,8,10,9,11,11,8,10,9,11,11,10,11,11,12,12,10,11,11,12,12,9,11,11,14,13,10,12,11,14,14,10,12,11,14,13,12,13,13,15,14,12,13,13,15,14,8,11,11,13,14,10,11,12,13,15,10,11,12,14,14,12,13,13,14,15,12,13,13,14,15,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,13,11,12,12,13,14,8,10,10,12,12,9,11,12,13,14,10,12,12,13,13,12,12,13,14,14,11,13,13,15,15,7,10,10,12,12,9,12,11,14,12,10,11,12,13,14,12,13,12,14,14,12,13,13,15,16,10,12,12,15,14,11,12,13,15,15,11,13,13,15,16,14,14,15,15,16,13,14,15,17,15,9,12,12,14,15,11,13,12,15,15,11,13,13,15,15,13,14,13,15,14,13,14,14,17,0,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,14,7,10,10,12,12,10,12,12,13,13,9,11,12,12,13,11,12,13,15,15,11,12,13,14,15,8,10,10,12,12,10,12,11,13,13,10,12,11,13,13,11,13,13,15,14,12,13,12,15,13,9,12,12,14,14,11,13,13,16,15,11,12,13,16,15,13,14,15,16,16,13,13,15,15,16,10,12,12,15,14,11,13,13,14,16,11,13,13,15,16,13,15,15,16,17,13,15,14,16,15,8,11,11,14,15,10,12,12,15,15,10,12,12,15,16,14,15,15,16,17,13,14,14,16,16,9,12,12,15,15,11,13,14,15,17,11,13,13,15,16,14,15,16,19,17,13,15,15,0,17,9,12,12,15,15,11,14,13,16,15,11,13,13,15,16,15,15,15,18,17,13,15,15,17,17,11,15,14,18,16,12,14,15,17,17,12,15,15,18,18,15,15,16,15,19,14,16,16,0,0,11,14,14,16,17,12,15,14,18,17,12,15,15,18,18,15,17,15,18,16,14,16,16,18,18,7,11,11,14,14,10,12,12,15,15,10,12,13,15,15,13,14,15,16,16,14,15,15,18,18,9,12,12,15,15,11,13,13,16,15,11,12,13,16,16,14,15,15,17,16,15,16,16,17,17,9,12,12,15,15,11,13,13,15,17,11,14,13,16,15,13,15,15,17,17,15,15,15,18,17,11,14,14,17,15,12,14,15,17,18,13,13,15,17,17,14,16,16,19,18,16,15,17,17,0,11,14,14,17,17,12,15,15,18,0,12,15,14,18,16,14,17,17,19,0,16,18,15,0,16,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,5,5,6,6,5,6,6,5,7,6,6,7,8,6,7,8,5,6,6,6,8,7,6,8,7,5,6,6,7,8,8,6,7,7,6,8,7,7,7,9,8,9,9,6,7,8,7,9,7,8,9,9,5,6,6,6,7,7,7,8,8,6,8,7,8,9,9,7,7,9,6,7,8,8,9,9,7,9,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,7,9,10,7,9,9,5,8,8,7,10,9,7,9,9,5,8,8,8,10,10,8,10,10,7,10,10,9,10,12,10,12,12,7,10,10,9,12,11,10,12,12,5,8,8,8,10,10,8,10,10,7,10,10,10,12,12,9,11,12,7,10,10,10,12,12,9,12,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,13,9,15,9,16,8,10,13,7,5,8,6,9,7,10,7,10,11,11,6,7,8,8,9,9,9,12,16,8,5,8,6,8,6,9,7,10,12,11,7,7,7,6,7,7,7,11,15,7,5,8,6,7,5,7,6,9,13,13,9,9,8,6,6,5,5,9,14,8,6,8,6,6,4,5,3,5,13,9,9,11,8,10,7,8,4,5,12,11,16,17,15,17,12,13,8,8,15,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,8,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,F.GLOBAL_BASE+55148),d3([1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,25,0,0,0,255,255,255,255,45,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,184,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,245,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,246,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,246,0,0,0,0,0,0,0,0,0,0,0,0,0,0,104,246,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,246,0,0,0,0,0,0,184,246,0,0,224,246,0,0,0,0,0,0,0,0,0,0,8,247,0,0,48,247,0,0,88,247,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,81,0,0,0,80,2,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,2,1,0,0,0,0,0,4,0,0,0,81,0,0,0,232,1,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,64,2,1,0,0,0,0,0,4,0,0,0,113,2,0,0,88,255,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,1,1,0,0,0,0,0,4,0,0,0,113,2,0,0,200,252,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,255,0,0,0,0,0,0,2,0,0,0,81,0,0,0,72,252,0,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,160,252,0,0,0,0,0,0,2,0,0,0,169,0,0,0,96,251,0,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,16,252,0,0,0,0,0,0,2,0,0,0,25,0,0,0,40,251,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,251,0,0,0,0,0,0,4,0,0,0,81,0,0,0,192,250,0,0,1,0,0,0,0,176,19,225,0,176,19,97,2,0,0,0,0,0,0,0,24,251,0,0,0,0,0,0,2,0,0,0,225,0,0,0,152,249,0,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,128,250,0,0,0,0,0,0,2,0,0,0,185,1,0,0,128,247,0,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,64,249,0,0,0,0,0,0,1,6,5,7,7,9,9,9,9,10,12,12,10,11,11,10,11,11,11,10,11,6,8,8,9,9,10,10,9,10,11,11,10,11,11,11,11,10,11,11,11,11,6,7,8,9,9,9,10,11,10,11,12,11,10,11,11,11,11,11,11,12,10,8,9,9,10,9,10,10,9,10,10,10,10,10,9,10,10,10,10,9,10,10,9,9,9,9,10,10,9,9,10,10,11,10,9,12,10,11,10,9,10,10,10,8,9,9,10,9,10,9,9,10,10,9,10,9,11,10,10,10,10,10,9,10,8,8,9,9,10,9,11,9,8,9,9,10,11,10,10,10,11,12,9,9,11,8,9,8,11,10,11,10,10,9,11,10,10,10,10,10,10,10,11,11,11,11,8,9,9,9,10,10,10,11,11,12,11,12,11,10,10,10,12,11,11,11,10,8,10,9,11,10,10,11,12,10,11,12,11,11,12,11,12,12,10,11,11,10,9,9,10,11,12,10,10,10,11,10,11,11,10,12,12,10,11,10,11,12,10,9,10,10,11,10,11,11,11,11,11,12,11,11,11,9,11,10,11,10,11,10,9,9,10,11,11,11,10,10,11,12,12,11,12,11,11,11,12,12,12,12,11,9,11,11,12,10,11,11,11,11,11,11,12,11,11,12,11,11,11,10,11,11,9,11,10,11,11,11,10,10,10,11,11,11,12,10,11,10,11,11,11,11,12,9,11,10,11,11,10,10,11,11,9,11,11,12,10,10,10,10,10,11,11,10,9,10,11,11,12,11,10,10,12,11,11,12,11,12,11,11,10,10,11,11,10,12,11,10,11,10,11,10,10,10,11,11,10,10,11,11,11,11,10,10,10,12,11,11,11,11,10,9,10,11,11,11,12,11,11,11,12,10,11,11,11,9,10,11,11,11,11,11,11,10,10,11,11,12,11,10,11,12,11,10,10,11,9,10,11,11,11,11,11,10,11,11,10,12,11,11,11,12,11,11,11,10,10,11,11,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,5,5,5,5,10,10,11,11,11,11,11,11,11,11,5,7,6,8,8,9,10,11,11,11,11,11,11,11,11,6,6,7,9,7,11,10,11,11,11,11,11,11,11,11,5,6,6,11,8,11,11,11,11,11,11,11,11,11,11,5,6,6,9,10,11,10,11,11,11,11,11,11,11,11,7,10,10,11,11,11,11,11,11,11,11,11,11,11,11,7,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,4,6,5,7,7,4,5,6,7,7,6,7,7,7,7,6,7,7,7,7,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,9,9,11,11,12,12,16,16,3,6,6,9,9,11,11,12,12,13,14,18,16,3,6,7,9,9,11,11,13,12,14,14,17,16,7,9,9,11,11,12,12,14,14,14,14,17,16,7,9,9,11,11,13,12,13,13,14,14,17,0,9,11,11,12,13,14,14,14,13,15,14,17,17,9,11,11,12,12,14,14,13,14,14,15,0,0,11,12,12,15,14,15,14,15,14,15,16,17,0,11,12,13,13,13,14,14,15,14,15,15,0,0,12,14,14,15,15,14,16,15,15,17,16,0,18,13,14,14,15,14,15,14,15,16,17,16,0,0,17,17,18,0,16,18,16,0,0,0,17,0,0,16,0,0,16,16,0,15,0,17,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,7,8,8,10,10,4,6,6,8,8,8,8,10,10,6,8,8,9,9,9,9,11,11,7,8,8,9,9,9,9,11,11,7,8,8,9,9,10,10,12,11,7,8,8,9,9,10,10,11,11,9,10,10,11,11,11,12,12,12,9,10,10,11,11,12,12,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,5,6,7,9,9,6,7,6,9,9,9,9,9,10,11,9,9,9,11,10,6,7,7,10,10,7,7,8,10,10,7,8,8,10,10,10,10,10,10,11,9,10,10,11,12,6,7,7,10,10,7,8,8,10,10,7,8,7,10,10,9,10,10,12,11,10,10,10,11,10,9,10,10,12,11,10,10,10,13,11,9,10,10,12,12,11,11,12,12,13,11,11,11,12,13,9,10,10,12,12,10,10,11,12,12,10,10,11,12,12,11,11,11,13,13,11,12,12,13,13,5,7,7,10,10,7,8,8,10,10,7,8,8,10,10,10,11,11,12,12,10,11,10,12,12,7,8,8,11,11,7,8,9,10,11,8,9,9,11,11,11,10,11,10,12,10,11,11,12,13,7,8,8,10,11,8,9,8,12,10,8,9,9,11,12,10,11,10,13,11,10,11,11,13,12,9,11,10,13,12,10,10,11,12,12,10,11,11,13,13,12,10,13,11,14,11,12,12,15,13,9,11,11,13,13,10,11,11,13,12,10,11,11,12,14,12,13,11,14,12,12,12,12,14,14,5,7,7,10,10,7,8,8,10,10,7,8,8,11,10,10,11,11,12,12,10,11,10,12,12,7,8,8,10,11,8,9,9,12,11,8,8,9,10,11,10,11,11,12,13,11,10,11,11,13,6,8,8,10,11,8,9,9,11,11,7,9,7,11,10,10,11,11,12,12,10,11,10,13,10,9,11,10,13,12,10,12,11,13,13,10,10,11,12,13,11,12,13,15,14,11,11,13,12,13,9,10,11,12,13,10,11,11,12,13,10,11,10,13,12,12,13,13,13,14,12,12,11,14,11,8,10,10,12,13,10,11,11,13,13,10,11,10,13,13,12,13,14,15,14,12,12,12,14,13,9,10,10,13,12,10,10,12,13,13,10,11,11,15,12,12,12,13,15,14,12,13,13,15,13,9,10,11,12,13,10,12,10,13,12,10,11,11,12,13,12,14,12,15,13,12,12,12,15,14,11,12,11,14,13,11,11,12,14,14,12,13,13,14,13,13,11,15,11,15,14,14,14,16,15,11,12,12,13,14,11,13,11,14,14,12,12,13,14,15,12,14,12,15,12,13,15,14,16,15,8,10,10,12,12,10,10,10,12,13,10,11,11,13,13,12,12,12,13,14,13,13,13,15,15,9,10,10,12,12,10,11,11,13,12,10,10,11,13,13,12,12,12,14,14,12,12,13,15,14,9,10,10,13,12,10,10,12,12,13,10,11,10,13,13,12,13,13,14,14,12,13,12,14,13,11,12,12,14,13,12,13,12,14,14,10,12,12,14,14,14,14,14,16,14,13,12,14,12,15,10,12,12,14,15,12,13,13,14,16,11,12,11,15,14,13,14,14,14,15,13,14,11,14,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,7,7,6,7,7,9,9,6,7,7,9,9,8,10,9,11,11,8,9,9,11,11,6,8,8,10,10,8,10,10,11,11,8,10,10,11,11,10,11,11,12,12,10,11,11,12,13,6,8,8,10,10,8,10,10,11,11,8,10,10,11,11,9,10,11,12,12,10,11,11,12,12,8,11,11,14,13,10,12,11,15,13,10,12,11,14,14,12,13,12,16,14,12,14,12,16,15,8,11,11,13,14,10,11,12,13,15,10,11,12,13,15,11,12,13,14,15,12,12,14,14,16,5,8,8,11,11,9,11,11,12,12,8,10,11,12,12,11,12,12,15,14,11,12,12,14,14,7,11,10,13,12,10,11,12,13,14,10,12,12,14,13,12,13,13,14,15,12,13,13,15,15,7,10,11,12,13,10,12,11,14,13,10,12,13,13,15,12,13,12,14,14,11,13,13,15,16,9,12,12,15,14,11,13,13,15,16,11,13,13,16,16,13,14,15,15,15,12,14,15,17,16,9,12,12,14,15,11,13,13,15,16,11,13,13,16,18,13,14,14,17,16,13,15,15,17,18,5,8,9,11,11,8,11,11,12,12,8,10,11,12,12,11,12,12,14,14,11,12,12,14,15,7,11,10,12,13,10,12,12,14,13,10,11,12,13,14,11,13,13,15,14,12,13,13,14,15,7,10,11,13,13,10,12,12,13,14,10,12,12,13,13,11,13,13,16,16,12,13,13,15,14,9,12,12,16,15,10,13,13,15,15,11,13,13,17,15,12,15,15,18,17,13,14,14,15,16,9,12,12,15,15,11,13,13,15,16,11,13,13,15,15,12,15,15,16,16,13,15,14,17,15,7,11,11,15,15,10,13,13,16,15,10,13,13,15,16,14,15,15,17,19,13,15,14,15,18,9,12,12,16,16,11,13,14,17,16,11,13,13,17,16,15,15,16,17,19,13,15,16,0,18,9,12,12,16,15,11,14,13,17,17,11,13,14,16,16,15,16,16,19,18,13,15,15,17,19,11,14,14,19,16,12,14,15,0,18,12,16,15,18,17,15,15,18,16,19,14,15,17,19,19,11,14,14,18,19,13,15,14,19,19,12,16,15,18,17,15,17,15,0,16,14,17,16,19,0,7,11,11,14,14,10,12,12,15,15,10,13,13,16,15,13,15,15,17,0,14,15,15,16,19,9,12,12,16,16,11,14,14,16,16,11,13,13,16,16,14,17,16,19,0,14,18,17,17,19,9,12,12,15,16,11,13,13,15,17,12,14,13,19,16,13,15,15,17,19,15,17,16,17,19,11,14,14,19,16,12,15,15,19,17,13,14,15,17,19,14,16,17,19,19,16,15,16,17,19,11,15,14,16,16,12,15,15,19,0,12,14,15,19,19,14,16,16,0,18,15,19,14,18,16,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,6,7,8,6,7,8,5,7,7,6,8,8,7,9,7,5,7,7,7,9,9,7,8,8,6,9,8,7,7,10,8,10,10,6,8,8,8,10,8,8,10,10,5,7,7,7,8,8,7,8,9,6,8,8,8,10,10,8,8,10,6,8,9,8,10,10,7,10,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,8,10,10,7,10,10,5,8,8,7,10,10,8,10,10,4,9,8,8,11,11,8,11,11,7,11,11,10,11,13,10,13,13,7,11,11,10,13,12,10,13,13,5,9,8,8,11,11,8,11,11,7,11,11,9,13,13,10,12,13,7,11,11,10,13,13,10,13,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,11,9,12,8,7,10,6,4,5,5,7,5,6,16,9,5,5,6,7,7,9,16,7,4,6,5,7,5,7,17,10,7,7,8,7,7,8,18,7,5,6,4,5,4,5,15,7,6,7,5,6,4,5,15,12,13,18,12,17,11,9,17,6,0,0,0,6,0,0,0,120,45,1,0,160,45,1,0,200,45,1,0,240,45,1,0,24,46,1,0,0,0,0,0,56,43,1,0,96,43,1,0,136,43,1,0,176,43,1,0,216,43,1,0,0,0,0,0,216,39,1,0,0,40,1,0,40,40,1,0,80,40,1,0,120,40,1,0,160,40,1,0,200,40,1,0,240,40,1,0,120,36,1,0,160,36,1,0,200,36,1,0,240,36,1,0,24,37,1,0,64,37,1,0,104,37,1,0,144,37,1,0,80,31,1,0,120,31,1,0,160,31,1,0,200,31,1,0,240,31,1,0,24,32,1,0,64,32,1,0,104,32,1,0,144,32,1,0,184,32,1,0,224,32,1,0,8,33,1,0,40,26,1,0,80,26,1,0,120,26,1,0,160,26,1,0,200,26,1,0,240,26,1,0,24,27,1,0,64,27,1,0,104,27,1,0,144,27,1,0,184,27,1,0,224,27,1,0,232,23,1,0,16,24,1,0,56,24,1,0,96,24,1,0,136,24,1,0,0,0,0,0,216,16,1,0,0,17,1,0,40,17,1,0,80,17,1,0,120,17,1,0,160,17,1,0,200,17,1,0,240,17,1,0,24,18,1,0,64,18,1,0,104,18,1,0,144,18,1,0,184,18,1,0,224,18,1,0,8,19,1,0,0,0,0,0,200,9,1,0,240,9,1,0,24,10,1,0,64,10,1,0,104,10,1,0,144,10,1,0,184,10,1,0,224,10,1,0,8,11,1,0,48,11,1,0,88,11,1,0,128,11,1,0,168,11,1,0,208,11,1,0,248,11,1,0,0,0,0,0,160,4,1,0,200,4,1,0,240,4,1,0,24,5,1,0,64,5,1,0,104,5,1,0,144,5,1,0,184,5,1,0,224,5,1,0,8,6,1,0,48,6,1,0,88,6,1,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,192,9,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,128,9,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,64,9,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,192,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,160,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,32,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,8,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,208,7,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,80,7,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,56,7,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,0,7,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,128,6,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,8,4,8,4,8,4,8,5,8,5,8,6,8,4,8,4,8,5,8,5,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,3,4,3,5,4,6,4,6,5,7,6,7,6,8,6,8,7,9,8,10,8,12,9,13,10,15,10,15,11,14,0,0,0,0,0,0,0,4,4,4,4,4,4,3,4,4,4,4,4,5,4,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,3,4,3,4,4,5,5,6,6,7,7,7,8,8,11,8,9,9,9,10,11,11,11,9,10,10,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,3,4,3,4,4,5,4,5,4,6,4,6,5,6,5,7,5,7,6,8,6,8,6,8,7,8,7,9,7,9,8,0,0,0,0,0,0,0,4,5,4,4,4,5,4,4,4,5,4,5,4,5,3,5,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,3,5,3,5,4,5,4,5,4,5,5,5,5,6,5,6,5,7,5,8,6,8,6,8,6,8,6,8,7,9,7,9,7,11,9,11,11,12,11,14,12,14,16,14,16,13,16,14,16,12,15,13,16,14,16,13,14,12,15,13,15,13,13,13,15,12,14,14,15,13,15,12,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,2,4,5,4,5,4,5,4,5,5,5,5,5,5,6,5,6,5,6,6,7,6,7,6,8,7,8,7,8,7,8,7,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,5,6,6,6,6,5,6,6,7,6,7,6,7,6,7,6,8,7,8,7,8,7,8,7,8,7,9,7,9,7,9,7,9,8,9,8,10,8,10,8,10,7,10,6,10,8,10,8,11,7,10,7,11,8,11,11,12,12,11,11,12,11,13,11,13,11,13,12,15,12,13,13,14,14,14,14,14,15,15,15,16,14,17,19,19,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,2,4,6,17,4,5,7,17,8,7,10,17,17,17,17,17,3,4,6,15,3,3,6,15,7,6,9,17,17,17,17,17,6,8,10,17,6,6,8,16,9,8,10,17,17,15,16,17,17,17,17,17,12,15,15,16,12,15,15,16,16,16,16,16,3,3,3,14,5,4,4,11,8,6,6,10,17,12,11,17,6,5,5,15,5,3,4,11,8,5,5,8,16,9,10,14,10,8,9,17,8,6,6,13,10,7,7,10,16,11,13,14,17,17,17,17,17,16,16,16,16,15,16,16,16,16,16,16,1,2,3,6,5,4,7,7,1,0,0,0,16,0,0,0,200,16,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,192,16,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,192,15,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,128,15,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,0,15,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,224,14,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,96,14,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,64,14,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,192,13,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,168,13,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,112,13,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,240,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,216,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,160,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,32,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,6,5,7,5,7,7,7,7,7,5,7,5,7,5,7,5,7,7,7,7,7,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,2,4,3,4,4,4,5,5,6,5,6,5,7,6,6,6,7,7,7,8,9,9,9,12,10,11,10,10,12,10,10,0,0,0,0,0,0,0,3,4,4,4,4,4,4,4,4,5,4,5,4,5,4,4,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,6,3,7,3,7,5,7,7,7,7,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,4,4,4,4,4,4,5,5,5,5,6,6,7,6,7,6,8,6,9,7,9,7,9,9,11,9,12,10,12,0,0,0,0,0,0,0,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,3,4,3,4,4,5,4,5,5,5,6,6,6,7,6,8,6,8,6,9,7,10,7,10,7,10,7,12,7,12,7,12,9,12,11,12,10,12,10,12,11,12,12,12,10,12,10,12,10,12,9,12,11,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,10,10,12,12,12,12,12,10,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,2,4,5,4,5,4,5,4,5,5,5,5,5,5,6,5,6,5,6,6,6,6,7,7,7,7,7,7,8,8,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,5,7,5,7,4,7,4,8,4,8,4,8,4,8,3,8,4,9,4,9,4,9,4,9,4,9,5,9,5,9,6,9,7,9,8,9,9,9,10,9,11,9,14,9,15,10,15,10,15,10,15,10,15,11,15,10,14,12,14,11,14,13,14,13,15,15,15,12,15,15,15,13,15,13,15,13,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,14,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,7,6,7,6,7,6,7,6,5,5,5,5,5,5,6,5,6,5,6,5,6,5,6,5,6,5,7,5,7,5,7,5,8,5,8,5,8,5,9,5,9,6,10,6,10,6,11,6,11,6,11,6,11,6,11,6,11,6,11,6,12,7,11,7,11,7,11,7,11,7,10,7,11,7,11,7,12,7,11,8,11,8,11,8,11,8,13,8,12,9,11,9,11,9,11,10,12,10,12,9,12,10,12,11,14,12,16,12,12,11,14,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,16,16,16,16,2,4,7,13,4,5,7,15,8,7,10,16,16,14,16,16,2,4,7,16,3,4,7,14,8,8,10,16,16,16,15,16,6,8,11,16,7,7,9,16,11,9,13,16,16,16,15,16,16,16,16,16,14,16,16,16,16,16,16,16,16,16,16,16,3,3,6,16,5,5,7,16,9,8,11,16,16,16,16,16,5,5,8,16,5,5,7,16,8,7,9,16,16,16,16,16,9,9,12,16,6,8,11,16,9,10,11,16,16,16,16,16,16,16,16,16,13,16,16,16,15,16,16,16,16,16,16,16,5,4,7,16,6,5,8,16,9,8,10,16,16,16,16,16,5,5,7,15,5,4,6,15,7,6,8,16,16,16,16,16,9,9,11,15,7,7,9,16,8,8,9,16,16,16,16,16,16,16,16,16,15,15,15,16,15,15,14,16,16,16,16,16,8,8,11,16,8,9,10,16,11,10,14,16,16,16,16,16,6,8,10,16,6,7,10,16,8,8,11,16,14,16,16,16,10,11,14,16,9,9,11,16,10,10,11,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,12,16,15,16,12,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,1,2,3,6,4,7,5,7,2,6,8,9,7,11,13,13,1,3,5,5,6,6,12,10,1,0,0,0,16,0,0,0,216,23,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,208,23,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,208,22,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,144,22,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,16,22,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,240,21,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,112,21,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,80,21,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,208,20,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,184,20,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,128,20,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,0,20,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,232,19,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,176,19,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,48,19,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,5,2,6,3,6,4,7,4,7,5,9,5,11,6,11,6,11,7,11,6,11,6,11,9,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,2,4,2,5,3,5,4,6,6,6,7,7,8,7,8,7,8,7,9,8,9,8,9,8,10,8,11,9,12,9,12,0,0,0,0,0,0,0,4,5,4,5,4,5,4,5,3,5,3,5,3,5,4,5,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,7,3,8,3,10,3,8,3,9,3,8,4,9,4,9,5,9,6,10,6,9,7,11,7,12,9,13,10,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,4,3,4,4,4,4,5,5,5,5,5,6,5,7,5,8,6,8,6,9,7,10,7,10,8,10,8,11,9,11,0,0,0,0,0,0,0,4,5,4,5,3,5,3,5,3,5,4,4,4,4,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,3,4,3,4,4,5,4,5,4,5,5,6,5,6,5,7,5,7,6,7,6,8,7,8,7,8,7,9,8,9,9,9,9,10,10,10,11,9,12,9,12,9,15,10,14,9,13,10,13,10,12,10,12,10,13,10,12,11,13,11,14,12,13,13,14,14,13,14,15,14,16,13,13,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,15,1,5,5,5,5,5,5,5,6,5,6,5,6,5,6,5,6,6,7,7,7,7,8,7,8,8,9,8,10,9,10,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,5,8,4,9,4,9,4,9,4,9,4,9,4,9,4,9,4,9,4,9,4,8,4,8,4,9,5,9,5,9,5,9,5,9,6,10,6,10,7,10,8,11,9,11,11,12,13,12,14,13,15,13,15,14,16,14,17,15,17,15,15,16,16,15,16,16,16,15,18,16,15,17,17,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,2,5,5,4,5,4,5,4,5,4,6,5,6,5,6,5,6,5,7,5,7,6,8,6,8,6,8,6,9,6,9,6,5,5,5,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,7,5,7,5,7,5,7,5,8,6,8,6,8,6,9,6,9,6,10,6,10,6,11,6,11,7,11,7,12,7,12,7,12,7,12,7,12,7,12,7,12,7,12,8,13,8,12,8,12,8,13,8,13,9,13,9,13,9,13,9,12,10,12,10,13,10,14,11,14,12,14,13,14,13,14,14,15,16,15,15,15,14,15,17,21,22,22,21,22,22,22,22,22,22,21,21,21,21,21,21,21,21,21,21,2,3,7,13,4,4,7,15,8,6,9,17,21,16,15,21,2,5,7,11,5,5,7,14,9,7,10,16,17,15,16,21,4,7,10,17,7,7,9,15,11,9,11,16,21,18,15,21,18,21,21,21,15,17,17,19,21,19,18,20,21,21,21,20,1,5,7,21,5,8,9,21,10,9,12,20,20,16,20,20,4,8,9,20,6,8,9,20,11,11,13,20,20,15,17,20,9,11,14,20,8,10,15,20,11,13,15,20,20,20,20,20,20,20,20,20,13,20,20,20,18,18,20,20,20,20,20,20,3,6,8,20,6,7,9,20,10,9,12,20,20,20,20,20,5,7,9,20,6,6,9,20,10,9,12,20,20,20,20,20,8,10,13,20,8,9,12,20,11,10,12,20,20,20,20,20,18,20,20,20,15,17,18,20,18,17,18,20,20,20,20,20,7,10,12,20,8,9,11,20,14,13,14,20,20,20,20,20,6,9,12,20,7,8,11,20,12,11,13,20,20,20,20,20,9,11,15,20,8,10,14,20,12,11,14,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,11,16,18,20,15,15,17,20,20,17,20,20,20,20,20,20,9,14,16,20,12,12,15,20,17,15,18,20,20,20,20,20,16,19,18,20,15,16,20,20,17,17,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,1,4,2,6,3,7,5,7,2,10,8,14,7,12,11,14,1,5,3,7,4,9,7,13,1,0,0,0,0,1,0,0,40,25,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,32,25,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,0,0,0,16,25,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,240,24,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,176,24,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,2,4,3,5,4,5,5,5,5,6,6,6,6,6,6,6,7,7,8,6,9,7,12,11,16,13,16,12,15,13,15,12,14,12,15,15,15,0,0,0,0,0,0,0,0,0,0,3,3,3,4,3,4,4,4,4,4,5,5,5,6,6,0,0,0,0,0,0,0,0,0,0,0,2,3,2,3,3,3,0,0,0,0,0,0,1,3,2,3,0,0,0,0,4,5,6,11,5,5,6,10,7,7,6,6,14,13,9,9,6,6,6,10,6,6,6,9,8,7,7,9,14,12,8,11,8,7,7,11,8,8,7,11,9,9,7,9,13,11,9,13,19,19,18,19,15,16,16,19,11,11,10,13,10,10,9,15,5,5,6,13,6,6,6,11,8,7,6,7,14,11,10,11,6,6,6,12,7,6,6,11,8,7,7,11,13,11,9,11,9,7,6,12,8,7,6,12,9,8,8,11,13,10,7,13,19,19,17,19,17,14,14,19,12,10,8,12,13,10,9,16,7,8,7,12,7,7,7,11,8,7,7,8,12,12,11,11,8,8,7,12,8,7,6,11,8,7,7,10,10,11,10,11,9,8,8,13,9,8,7,12,10,9,7,11,9,8,7,11,18,18,15,18,18,16,17,18,15,11,10,18,11,9,9,18,16,16,13,16,12,11,10,16,12,11,9,6,15,12,11,13,16,16,14,14,13,11,12,16,12,9,9,13,13,10,10,12,17,18,17,17,14,15,14,16,14,12,14,15,12,10,11,12,18,18,18,18,18,18,18,18,18,12,13,18,16,11,9,18,1,0,0,0,8,0,0,0,72,31,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,8,31,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,200,30,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,72,30,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,40,30,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,168,29,1],"i8",L3,F.GLOBAL_BASE+62212),d3([1,0,0,0,18,0,0,0,144,29,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,88,29,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,216,28,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,192,28,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,136,28,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,8,28,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,2,4,3,4,4,4,5,4,7,5,8,5,11,6,10,6,12,7,12,7,12,8,12,8,12,10,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,3,6,3,6,4,7,4,7,4,7,4,8,4,8,4,8,4,8,4,9,4,9,5,10,5,10,7,10,8,10,8,0,0,0,0,0,0,0,4,4,4,4,4,4,4,5,3,5,3,5,4,6,4,6,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,1,5,3,5,3,5,4,7,5,10,7,10,7,12,10,14,10,14,9,14,11,14,14,14,13,13,13,13,13,13,13,0,0,0,0,0,0,0,4,5,4,6,4,8,3,9,3,9,2,9,3,8,4,9,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,3,5,3,5,3,6,3,6,4,6,4,7,4,7,5,8,5,8,6,9,7,9,7,9,8,10,9,10,9,11,10,11,11,11,11,11,11,12,12,12,13,12,13,12,14,12,15,12,14,12,16,13,17,13,17,14,17,14,16,13,17,14,17,14,17,15,17,15,15,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,16,16,16,16,16,16,16,16,16,16,2,5,5,4,5,4,5,4,5,5,5,5,5,5,6,5,6,5,6,5,7,6,7,6,7,6,8,6,9,7,9,7,5,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,7,5,7,5,7,5,7,5,7,5,7,5,8,5,8,5,8,5,8,5,8,6,8,6,8,6,9,6,9,6,9,6,9,6,9,7,9,7,9,7,9,7,10,7,10,8,10,8,10,8,10,8,10,8,11,8,11,8,11,8,11,8,11,9,12,9,12,9,12,9,12,9,12,10,12,10,13,11,13,11,14,12,14,13,15,14,16,14,17,15,18,16,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,3,6,10,17,4,8,11,20,8,10,11,20,20,20,20,20,2,4,8,18,4,6,8,17,7,8,10,20,20,17,20,20,3,5,8,17,3,4,6,17,8,8,10,17,17,12,16,20,13,13,15,20,10,10,12,20,15,14,15,20,20,20,19,19,1,4,10,19,3,8,13,19,7,12,19,19,19,19,19,19,2,6,11,19,8,13,19,19,9,11,19,19,19,19,19,19,6,7,13,19,9,13,19,19,10,13,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,1,3,4,7,2,5,6,7,1,0,0,0,8,0,0,0,112,36,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,48,36,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,240,35,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,112,35,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,80,35,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,208,34,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,184,34,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,128,34,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,0,34,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,232,33,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,176,33,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,48,33,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,1,6,3,7,3,8,4,8,5,8,8,8,9,7,8,8,7,7,7,8,9,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,3,5,4,6,4,6,4,7,4,7,4,8,4,8,4,9,4,9,4,10,4,10,5,10,5,11,5,12,6,12,6,0,0,0,0,0,0,0,4,4,4,4,4,4,4,4,4,4,4,4,4,5,4,5,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,8,3,8,4,8,4,8,6,8,5,8,4,8,4,8,6,8,7,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,4,4,4,4,5,4,5,4,6,5,7,5,7,6,8,6,8,6,9,7,9,7,10,7,9,8,11,8,11,0,0,0,0,0,0,0,4,5,4,5,4,5,3,5,3,5,3,5,4,4,4,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,3,5,3,6,4,6,4,7,4,7,4,7,4,8,4,8,4,9,5,9,5,9,5,9,6,10,6,10,6,11,7,10,7,10,8,11,9,11,9,11,10,11,11,12,11,11,12,15,15,12,14,11,14,12,14,11,14,13,14,12,14,11,14,11,14,12,14,11,14,11,14,13,13,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,2,5,5,5,5,5,5,4,5,5,5,5,5,5,5,5,6,5,6,5,6,5,7,6,7,6,7,6,8,6,8,6,5,5,5,5,5,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,6,6,6,7,6,7,6,7,6,7,6,7,6,7,6,8,6,8,6,8,7,8,7,8,7,8,7,9,7,9,8,9,8,9,8,10,8,10,9,10,9,10,9,11,9,11,9,10,10,11,10,11,10,11,11,11,11,11,11,12,13,14,14,14,15,15,16,16,16,17,15,16,15,16,16,17,17,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,7,6,9,17,7,6,8,17,12,9,11,16,16,16,16,16,5,4,7,16,5,3,6,14,9,6,8,15,16,16,16,16,5,4,6,13,3,2,4,11,7,4,6,13,16,11,10,14,12,12,12,16,9,7,10,15,12,9,11,16,16,15,15,16,1,6,12,16,4,12,15,16,9,15,16,16,16,16,16,16,2,5,11,16,5,11,13,16,9,13,16,16,16,16,16,16,4,8,12,16,5,9,12,16,9,13,15,16,16,16,16,16,15,16,16,16,11,14,13,16,12,15,16,16,16,16,16,15,1,6,3,7,2,4,5,7,1,0,0,0,64,0,0,0,152,39,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,152,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,9,0,0,0,136,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,104,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,40,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,9,0,0,0,24,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,248,37,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,184,37,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,2,4,3,6,3,7,3,8,5,8,6,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,0,0,0,0,0,0,0,0,0,2,3,3,4,3,4,4,5,4,6,5,6,7,6,8,8,0,0,0,0,0,0,0,0,3,3,3,3,2,4,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,5,2,5,3,5,3,6,3,6,4,7,6,7,8,7,9,8,9,9,9,10,9,11,13,11,13,10,10,13,13,13,13,13,13,12,12,12,12,0,0,0,0,0,0,0,0,0,3,4,3,4,3,5,3,6,3,6,4,6,4,7,5,7,0,0,0,0,0,0,0,0,2,3,3,3,3,4,3,4,0,0,0,0,0,0,0,5,6,8,15,6,9,10,15,10,11,12,15,15,15,15,15,4,6,7,15,6,7,8,15,9,8,9,15,15,15,15,15,6,8,9,15,7,7,8,15,10,9,10,15,15,15,15,15,15,13,15,15,15,10,11,15,15,13,13,15,15,15,15,15,4,6,7,15,6,8,9,15,10,10,12,15,15,15,15,15,2,5,6,15,5,6,7,15,8,6,7,15,15,15,15,15,5,6,8,15,5,6,7,15,9,6,7,15,15,15,15,15,14,12,13,15,12,10,11,15,15,15,15,15,15,15,15,15,7,8,9,15,9,10,10,15,15,14,14,15,15,15,15,15,5,6,7,15,7,8,9,15,12,9,10,15,15,15,15,15,7,7,9,15,7,7,8,15,12,8,9,15,15,15,15,15,13,13,14,15,12,11,12,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,13,13,13,15,15,15,15,15,15,15,15,15,15,15,15,15,15,12,13,15,15,12,13,15,15,14,15,15,15,15,15,15,15,15,15,15,15,15,13,15,15,15,15,15,15,15,15,15,7,5,5,9,9,6,6,9,12,8,7,8,11,8,9,15,6,3,3,7,7,4,3,6,9,6,5,6,8,6,8,15,8,5,5,9,8,5,4,6,10,7,5,5,11,8,7,15,14,15,13,13,13,13,8,11,15,10,7,6,11,9,10,15,1,0,0,0,64,0,0,0,248,42,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,248,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,9,0,0,0,232,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,200,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,136,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,9,0,0,0,120,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,88,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,24,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,7,2,7,3,8,4,9,5,9,8,10,11,11,12,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,13,13,13,13,0,0,0,0,0,0,0,0,0,3,4,3,6,3,6,3,6,3,7,3,8,4,9,4,9,0,0,0,0,0,0,0,0,3,3,2,3,3,4,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,5,3,5,3,5,4,5,4,5,5,5,5,6,5,6,5,6,5,6,5,6,5,7,8,9,11,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,0,0,0,0,0,0,3,3,3,4,4,4,4,5,4,5,4,5,4,6,4,6,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,8,13,17,17,8,11,17,17,11,13,17,17,17,17,17,17,6,10,16,17,6,10,15,17,8,10,16,17,17,17,17,17,9,13,15,17,8,11,17,17,10,12,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,6,11,15,17,7,10,15,17,8,10,17,17,17,15,17,17,4,8,13,17,4,7,13,17,6,8,15,17,16,15,17,17,6,11,15,17,6,9,13,17,8,10,17,17,15,17,17,17,16,17,17,17,12,14,15,17,13,14,15,17,17,17,17,17,5,10,14,17,5,9,14,17,7,9,15,17,15,15,17,17,3,7,12,17,3,6,11,17,5,7,13,17,12,12,17,17,5,9,14,17,3,7,11,17,5,8,13,17,13,11,16,17,12,17,17,17,9,14,15,17,10,11,14,17,16,14,17,17,8,12,17,17,8,12,17,17,10,12,17,17,17,17,17,17,5,10,17,17,5,9,15,17,7,9,17,17,13,13,17,17,7,11,17,17,6,10,15,17,7,9,15,17,12,11,17,17,12,15,17,17,11,14,17,17,11,10,15,17,17,16,17,17,10,7,8,13,9,6,7,11,10,8,8,12,17,17,17,17,7,5,5,9,6,4,4,8,8,5,5,8,16,14,13,16,7,5,5,7,6,3,3,5,8,5,4,7,14,12,12,15,10,7,8,9,7,5,5,6,9,6,5,5,15,12,9,10,1,0,0,0,0,1,0,0,120,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,112,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,0,0,0,96,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,64,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,0,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,4,3,5,3,5,3,6,4,7,4,7,5,7,6,7,6,7,8,10,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,0,0,0,0,0,0,0,0,0,0,4,3,4,3,4,3,5,3,5,4,5,4,6,4,6,0,0,0,0,0,0,0,0,0,0,0,2,2,3,3,3,3,0,0,0,0,0,0,2,2,2,2,0,0,0,0,6,7,7,12,6,6,7,12,7,6,6,10,15,12,11,13,7,7,8,13,7,7,8,12,7,7,7,11,12,12,11,13,10,9,9,11,9,9,9,10,10,8,8,12,14,12,12,14,11,11,12,14,11,12,11,15,15,12,13,15,15,15,15,15,6,6,7,10,6,6,6,11,7,6,6,9,14,12,11,13,7,7,7,10,6,6,7,9,7,7,6,10,13,12,10,12,9,9,9,11,9,9,8,9,9,8,8,10,13,12,10,12,12,12,11,13,12,12,11,12,15,13,12,15,15,15,14,14,6,6,6,8,6,6,5,6,7,7,6,5,11,10,9,8,7,6,6,7,6,6,5,6,7,7,6,6,11,10,9,8,8,8,8,9,8,8,7,8,8,8,6,7,11,10,9,9,14,11,10,14,14,11,10,15,13,11,9,11,15,12,12,11,11,9,8,8,10,9,8,9,11,10,9,8,12,11,12,11,13,10,8,9,11,10,8,9,10,9,8,9,10,8,12,12,15,11,10,10,13,11,10,10,8,8,7,12,10,9,11,12,15,12,11,15,13,11,11,15,12,14,11,13,15,15,13,13,1,0,0,0,0,1,0,0,184,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,176,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,0,0,0,160,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,128,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,64,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,4,3,5,3,5,3,5,4,6,5,6,5,7,6,6,7,7,9,9,11,11,16,11,14,10,11,11,13,16,15,15,15,15,15,15,15,15,15,0,0,0,0,0,0,0,0,0,0,3,3,4,3,4,3,4,4,5,4,5,4,6,5,6,0,0,0,0,0,0,0,0,0,0,0,3,2,3,2,3,3,0,0,0,0,0,0,2,2,2,2,0,0,0,0,7,7,7,11,6,6,7,11,7,6,6,10,12,10,10,13,7,7,8,11,7,7,7,11,7,6,7,10,11,10,10,13,10,10,9,12,9,9,9,11,8,8,8,11,13,11,10,14,15,15,14,15,15,14,13,14,15,12,12,17,17,17,17,17,7,7,6,9,6,6,6,9,7,6,6,8,11,11,10,12,7,7,7,9,7,6,6,9,7,6,6,9,13,10,10,11,10,9,8,10,9,8,8,10,8,8,7,9,13,12,10,11,17,14,14,13,15,14,12,13,17,13,12,15,17,17,14,17,7,6,6,7,6,6,5,7,6,6,6,6,11,9,9,9,7,7,6,7,7,6,6,7,6,6,6,6,10,9,8,9,10,9,8,8,9,8,7,8,8,7,6,8,11,10,9,10,17,17,12,15,15,15,12,14,14,14,10,12,15,13,12,13,11,10,8,10,11,10,8,8,10,9,7,7,10,9,9,11,11,11,9,10,11,10,8,9,10,8,6,8,10,9,9,11,14,13,10,12,12,11,10,10,8,7,8,10,10,11,11,12,17,17,15,17,17,17,17,17,17,13,12,17,17,17,14,17,200,47,1,0,216,72,1,0,200,47,1,0,248,72,1,0,1],"i8",L3,F.GLOBAL_BASE+72464),d3([1],"i8",L3,F.GLOBAL_BASE+78916),d3([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],"i8",L3,F.GLOBAL_BASE+79944),d3([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],"i8",L3,F.GLOBAL_BASE+81996),d3([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,120,124,1,0,120,124,1,0,160,124,1,0,160,124,1,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,48,84,1,0,48,84,1,0,88,84,1,0,88,84,1,0,0,0,0,0,255,255,255,255,255,255,255,255,10,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,F.GLOBAL_BASE+83152),d3([1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,231,3,0,0,0,0,0,0,231,3,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,16,124,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,85,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,85,1,0,0,0,0,0,0,0,0,0,0,0,0,0,104,85,1,0,0,0,0,0,0,0,0,0,0,0,0,0,144,85,1,0,0,0,0,0,0,0,0,0,0,0,0,0,184,85,1,0,0,0,0,0,224,85,1,0,8,86,1,0,0,0,0,0,0,0,0,0,48,86,1,0,88,86,1,0,0,0,0,0,0,0,0,0,128,86,1,0,168,86,1,0,208,86,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,88,98,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,0,124,1,0,0,0,0,0,4,0,0,0,113,2,0,0,200,95,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,98,1,0,0,0,0,0,2,0,0,0,81,0,0,0,72,95,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,160,95,1,0,0,0,0,0,2,0,0,0,81,0,0,0,200,94,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,32,95,1,0,0,0,0,0,2,0,0,0,33,1,0,0,88,93,1,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,128,94,1,0,0,0,0,0,4,0,0,0,81,0,0,0,240,92,1,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,72,93,1,0,0,0,0,0,2,0,0,0,121,0,0,0,64,92,1,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,192,92,1,0,0,0,0,0,2,0,0,0,169,0,0,0,88,91,1,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,8,92,1,0,0,0,0,0,2,0,0,0,25,0,0,0,32,91,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,91,1,0,0,0,0,0,2,0,0,0,169,0,0,0,56,90,1,0,1,0,0,0,0,136,93,225,0,176,19,97,4,0,0,0,0,0,0,0,232,90,1,0,0,0,0,0,2,0,0,0,225,0,0,0,16,89,1,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,248,89,1,0,0,0,0,0,2,0,0,0,185,1,0,0,248,86,1,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,184,88,1,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,9,8,9,9,9,9,9,9,9,9,11,11,12,7,7,7,7,8,8,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,7,7,7,7,8,8,9,8,9,9,9,9,9,9,10,10,10,10,11,11,12,8,8,8,8,8,8,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,7,7,8,8,8,8,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,12,11,9,9,8,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,8,8,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,12,11,12,11,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,12,11,12,11,11,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,12,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,12,11,11,12,11,10,10,10,10,10,10,10,10,10,10,10,10,11,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,12,11,12,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,12,11,12,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,12,11,11,12,11,11,12,10,10,11,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,12,12,11,12,11,11,12,12,12,11,11,10,10,10,10,10,10,10,10,10,11,12,12,11,12,12,11,12,11,11,11,11,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,5,5,7,7,9,9,11,11,12,12,13,13,6,5,5,6,6,9,9,10,10,12,12,12,13,15,14,6,5,5,7,7,9,9,10,10,12,12,12,13,14,13,17,7,7,8,8,10,10,11,11,12,13,13,13,13,13,17,7,7,8,8,10,10,11,11,13,13,13,13,14,14,17,11,11,9,9,11,11,12,12,12,13,13,14,15,13,17,12,12,9,9,11,11,12,12,13,13,13,13,14,16,17,17,17,11,12,12,12,13,13,13,14,15,14,15,15,17,17,17,12,12,11,11,13,13,14,14,15,14,15,15,17,17,17,15,15,13,13,14,14,15,14,15,15,16,15,17,17,17,15,15,13,13,13,14,14,15,15,15,15,16,17,17,17,17,16,14,15,14,14,15,14,14,15,15,15,17,17,17,17,17,14,14,16,14,15,15,15,15,15,15,17,17,17,17,17,17,16,16,15,17,15,15,14,17,15,17,16,17,17,17,17,16,15,14,15,15,15,15,15,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,3,10,10,10,10,10,10,10,10,10,10,5,6,6,10,10,10,10,10,10,10,10,10,10,6,7,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,8,8,9,9,10,10,7,5,5,7,7,8,8,8,8,9,10,11,11,7,5,5,7,7,8,8,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,9,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,9,10,9,10,11,11,11,0,13,12,9,8,9,9,10,10,11,11,12,11,0,0,0,9,9,9,9,10,10,11,11,12,12,0,0,0,10,10,9,9,10,10,11,11,12,12,0,0,0,13,13,10,10,11,11,12,11,13,12,0,0,0,14,14,10,10,11,10,11,11,12,12,0,0,0,0,0,12,12,11,11,12,12,13,13,0,0,0,0,0,12,12,11,10,12,11,13,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,7,7,7,7,7,7,10,10,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,6,7,6,6,4,7,7,10,9,9,10,9,9,5,7,7,10,9,9,10,9,9,6,10,10,10,10,10,11,10,10,6,9,9,10,9,10,11,10,10,6,9,9,10,9,9,11,9,10,7,10,10,11,11,11,11,10,10,6,9,9,10,10,10,11,9,9,6,9,9,10,10,10,10,9,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,5,5,8,8,8,8,9,9,10,10,11,11,11,11,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,9,9,8,8,10,10,10,10,11,11,12,12,12,12,0,0,0,9,9,8,8,10,10,10,10,11,11,12,12,12,12,0,0,0,10,10,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,10,10,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,11,11,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,11,12,12,13,13,0,0,0,0,0,10,10,11,11,11,11,12,12,13,12,13,13,0,0,0,0,0,0,0,11,10,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,13,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,4,5,6,6,8,8,0,0,0,8,8,7,7,9,9,0,0,0,8,8,7,7,9,9,0,0,0,9,10,8,8,9,9,0,0,0,10,10,8,8,9,9,0,0,0,11,10,8,8,10,10,0,0,0,11,11,8,8,10,10,0,0,0,12,12,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,2,3,7,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,8,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,8,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,8,10,8],"i8",L3,F.GLOBAL_BASE+86572),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,18,8,11,8,8,9,9,10,4,4,18,5,9,5,6,7,8,10,18,18,18,18,17,17,17,17,17,17,7,5,17,6,11,6,7,8,9,12,12,9,17,12,8,8,9,10,10,13,7,5,17,6,8,4,5,6,8,10,6,5,17,6,8,5,4,5,7,9,7,7,17,8,9,6,5,5,6,8,8,8,17,9,11,8,6,6,6,7,9,10,17,12,12,10,9,7,7,8,0,0,0,0,2,0,0,0,100,0,0,0,216,163,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,176,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,216,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,126,1,0,0,0,0,0,40,126,1,0,80,126,1,0,0,0,0,0,0,0,0,0,120,126,1,0,160,126,1,0,0,0,0,0,0,0,0,0,200,126,1,0,240,126,1,0,24,127,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,32,138,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,200,163,1,0,0,0,0,0,4,0,0,0,113,2,0,0,144,135,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,8,138,1,0,0,0,0,0,2,0,0,0,81,0,0,0,16,135,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,104,135,1,0,0,0,0,0,2,0,0,0,81,0,0,0,144,134,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,232,134,1,0,0,0,0,0,2,0,0,0,33,1,0,0,32,133,1,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,72,134,1,0,0,0,0,0,4,0,0,0,81,0,0,0,184,132,1,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,16,133,1,0,0,0,0,0,2,0,0,0,121,0,0,0,8,132,1,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,136,132,1,0,0,0,0,0,2,0,0,0,169,0,0,0,32,131,1,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,208,131,1,0,0,0,0,0,2,0,0,0,25,0,0,0,232,130,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,8,131,1,0,0,0,0,0,4,0,0,0,81,0,0,0,128,130,1,0,1,0,0,0,0,176,19,225,0,176,19,97,2,0,0,0,0,0,0,0,216,130,1,0,0,0,0,0,2,0,0,0,225,0,0,0,88,129,1,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,64,130,1,0,0,0,0,0,2,0,0,0,185,1,0,0,64,127,1,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,0,129,1,0,0,0,0,0,1,5,5,7,7,8,7,8,8,10,10,9,9,10,10,10,11,11,10,12,11,12,12,12,9,8,8,8,8,8,9,10,10,10,10,11,11,11,10,11,11,12,12,11,12,8,8,7,7,8,9,10,10,10,9,10,10,9,10,10,11,11,11,11,11,11,9,9,9,9,8,9,10,10,11,10,10,11,11,12,10,10,12,12,11,11,10,9,9,10,8,9,10,10,10,9,10,10,11,11,10,11,10,10,10,12,12,12,9,10,9,10,9,9,10,10,11,11,11,11,10,10,10,11,12,11,12,11,12,10,11,10,11,9,10,9,10,9,10,10,9,10,10,11,10,11,11,11,11,12,11,9,10,10,10,10,11,11,11,11,11,10,11,11,11,11,10,12,10,12,12,11,12,10,10,11,10,9,11,10,11,9,10,11,10,10,10,11,11,11,11,12,12,10,9,9,11,10,9,12,11,10,12,12,11,11,11,11,10,11,11,12,11,10,12,9,11,10,11,10,10,11,10,11,9,10,10,10,11,12,11,11,12,11,10,10,11,11,9,10,10,12,10,11,10,10,10,9,10,10,10,10,9,10,10,11,11,11,11,12,11,10,10,10,10,11,11,10,11,11,9,11,10,12,10,12,11,10,11,10,10,10,11,10,10,11,11,10,11,10,10,10,10,11,11,12,10,10,10,11,10,11,12,11,10,11,10,10,11,11,10,12,10,9,10,10,11,11,11,10,12,10,10,11,11,11,10,10,11,10,10,10,11,10,11,10,12,11,11,10,10,10,12,10,10,11,9,10,11,11,11,10,10,11,10,10,9,11,11,12,12,11,12,11,11,11,11,11,11,9,10,11,10,12,10,10,10,10,11,10,10,11,10,10,12,10,10,10,10,10,9,12,10,10,10,10,12,9,11,10,10,11,10,12,12,10,12,12,12,10,10,10,10,9,10,11,10,10,12,10,10,12,11,10,11,10,10,12,11,10,12,10,10,11,9,11,10,9,10,9,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,5,5,10,8,11,11,11,11,11,11,11,11,6,6,6,7,6,11,10,11,11,11,11,11,11,11,11,7,5,6,6,6,8,7,11,11,11,11,11,11,11,11,11,7,8,8,8,9,9,11,11,11,11,11,11,11,11,11,9,8,7,8,9,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,4,5,5,7,6,6,6,5,7,7,7,6,6,7,7,7,6,6,7,7,7,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,6,7,7,7,7,8,8,9,9,7,6,6,7,7,8,8,7,7,8,9,10,10,7,6,6,7,7,8,7,7,7,9,9,10,12,0,8,8,8,8,8,9,8,8,9,9,10,10,0,8,8,8,8,8,9,8,9,9,9,11,10,0,0,13,9,8,9,9,9,9,10,10,11,11,0,13,0,9,9,9,9,9,9,11,10,11,11,0,0,0,8,9,10,9,10,10,13,11,12,12,0,0,0,8,9,9,9,10,10,13,12,12,13,0,0,0,12,0,10,10,12,11,10,11,12,12,0,0,0,13,13,10,10,10,11,12,0,13,0,0,0,0,0,0,13,11,0,12,12,12,13,12,0,0,0,0,0,0,13,13,11,13,13,11,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,6,6,8,8,9,9,9,9,10,10,10,7,7,8,8,9,9,9,9,10,10,9,7,7,8,8,9,9,9,9,10,10,10,8,8,9,9,9,9,9,9,10,10,10,8,8,9,9,9,9,8,9,10,10,10,8,8,9,9,9,10,10,10,10,10,10,9,9,9,9,9,9,10,10,11,10,11,9,9,9,9,10,10,10,10,11,11,11,10,10,9,9,10,10,10,9,11,10,10,10,10,10,10,9,9,10,10,11,11,10,10,10,9,9,9,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,11,9,10,12,9,10,4,7,7,10,10,10,11,9,9,6,11,10,11,11,12,11,11,11,6,10,10,11,11,12,11,10,10,6,9,10,11,11,11,11,10,10,7,10,11,12,11,11,12,11,12,6,9,9,10,9,9,11,10,10,6,9,9,10,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,6,6,8,8,9,9,8,8,10,9,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,11,0,0,0,8,8,9,9,10,10,9,9,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,9,9,11,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,11,12,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,10,10,10,10,11,11,10,10,11,11,12,12,13,13,0,0,0,0,0,10,9,10,11,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,9,10,11,12,12,13,13,14,13,0,0,0,0,0,9,9,9,10,10,10,11,11,13,12,13,13,0,0,0,0,0,10,10,10,10,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,10,10,11,11,12,12,13,13,13,14,0,0,0,0,0,0,0,11,11,11,11,12,12,13,14,14,14,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,14,13,0,0,0,0,0,0,0,11,11,12,12,13,13,14,14,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,5,5,7,6,8,8,0,0,0,7,7,7,7,8,8,0,0,0,7,7,7,7,8,9,0,0,0,8,8,8,8,9,9,0,0,0,8,8,8,8,9,9,0,0,0,9,9,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,10,10,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,2,3,7,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,8,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,6,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,4,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,9,0,0,0,0,0,0,8,9,11,0,0,0,0,0,0,9,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,9,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,11,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,9,11,11,0,0,0,0,0,0,8,11,9],"i8",L3,F.GLOBAL_BASE+97272),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,5,18,7,10,6,7,8,9,10,5,2,18,5,7,5,6,7,8,11,17,17,17,17,17,17,17,17,17,17,7,4,17,6,9,6,8,10,12,15,11,7,17,9,6,6,7,9,11,15,6,4,17,6,6,4,5,8,11,16,6,6,17,8,6,5,6,9,13,16,8,9,17,11,9,8,8,11,13,17,9,12,17,15,14,13,12,13,14,17,12,15,17,17,17,17,17,16,17,17,0,0,0,0,154,153,153,153,153,153,185,191,0,0,0,0,0,0,0,0,154,153,153,153,153,153,185,63,154,153,153,153,153,153,201,63,51,51,51,51,51,51,211,63,154,153,153,153,153,153,217,63,0,0,0,0,0,0,224,63,51,51,51,51,51,51,227,63,102,102,102,102,102,102,230,63,154,153,153,153,153,153,233,63,205,204,204,204,204,204,236,63,0,0,0,0,0,0,240,63,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,16,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,0,0,0,35,0,0,0,21,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,30,0,0,0,20,0,0,0,8,0,0,0,0,0,0,192,0,0,160,63,25,0,0,0,12,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,9,0,0,0,253,255,255,255,0,0,0,0,0,0,0,0,20,0,0,0,9,0,0,0,252,255,255,255,0,0,0,0,0,0,0,0,20,0,0,0,9,0,0,0,252,255,255,255,0,0,0,0,0,0,0,0,20,0,0,0,6,0,0,0,250,255,255,255,0,0,0,0,0,0,0,0,20,0,0,0,3,0,0,0,246,255,255,255,0,0,0,0,0,0,0,0,18,0,0,0,1,0,0,0,242,255,255,255,0,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,240,255,255,255,0,0,0,0,0,0,0,0,18,0,0,0,254,255,255,255,240,255,255,255,0,0,0,0,0,0,0,0,12,0,0,0,254,255,255,255,236,255,255,255,0,0,0,0,0,0,0,0,253,255,255,255,248,255,255,255,243,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,247,255,255,255,247,255,255,255,247,255,255,255,247,255,255,255,247,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,252,255,255,255,246,255,255,255,242,255,255,255,240,255,255,255,242,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,245,255,255,255,245,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,250,255,255,255,244,255,255,255,242,255,255,255,240,255,255,255,241,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,254,255,255,255,254,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,244,255,255,255,243,255,255,255,242,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,251,255,255,255,254,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,243,255,255,255,245,255,255,255,246,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,243,255,255,255,245,255,255,255,246,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,248,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,253,255,255,255,248,255,255,255,243,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,255,255,255,246,255,255,255,242,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,245,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,250,255,255,255,244,255,255,255,242,255,255,255,240,255,255,255,241,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,254,255,255,255,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,244,255,255,255,243,255,255,255,242,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,250,255,255,255,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,243,255,255,255,245,255,255,255,246,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,243,255,255,255,245,255,255,255,246,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,248,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,3,0,0,0,3,0,0,0,15,0,0,0,3,0,0,0,3,0,0,0,15,0,0,0,10,0,0,0,10,0,0,0,100,0,0,0,10,0,0,0,10,0,0,0,100,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,6,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,250,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,2,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,16,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,252,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,14,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,252,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,250,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,252,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,6,0,0,0,11,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,234,255,255,255,240,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,247,255,255,255,251,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,6,0,0,0,11,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,228,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,240,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,6,0,0,0,11,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,234,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,224,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,234,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,3,0,0,0,3,0,0,0,5,0,0,0,10,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,224,255,255,255,224,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,224,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,2,0,0,0,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,224,255,255,255,224,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,224,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,244,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,221,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,6,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,2,0,0,0,3,0,0,0,6,0,0,0,6,0,0,0,8,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,2,0,0,0,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,16,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,14,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,250,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,2,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,234,255,255,255,240,255,255,255,244,255,255,255,250,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,0,0,0,0,4,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,253,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,253,255,255,255,255,255,255,255,4,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,245,255,255,255,248,255,255,255,250,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,240,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,251,255,255,255,253,255,255,255,1,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,234,255,255,255,238,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,5,0,0,0,5,0,0,0,11,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,249,255,255,255,251,255,255,255,254,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,228,255,255,255,234,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,242,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,2,0,0,0,6,0,0,0,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,224,255,255,255,224,255,255,255,232,255,255,255,240,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,224,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,238,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,221,255,255,255,226,255,255,255,231,255,255,255,231,255,255,255,231,255,255,255,231,255,255,255,231,255,255,255,231,255,255,255,241,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,6,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,250,255,255,255,252,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,1,0,0,0,4,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,255,255,255,255,0,0,0,0,3,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,249,255,255,255,252,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,8,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,0,0,0,0,2,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,252,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,255,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,255,255,255,255,1,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,252,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,255,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,234,255,255,255,240,255,255,255,244,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,253,255,255,255,255,255,255,255,0,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,247,255,255,255,251,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,255,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,251,255,255,255,254,255,255,255,0,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,234,255,255,255,237,255,255,255,237,255,255,255,237,255,255,255,237,255,255,255,238,255,255,255,239,255,255,255,240,255,255,255,244,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,255,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,240,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,234,255,255,255,236,255,255,255,241,255,255,255,246,255,255,255,248,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,7,0,0,0,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,249,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,226,255,255,255,228,255,255,255,230,255,255,255,232,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,2,0,0,0,218,255,255,255,218,255,255,255,218,255,255,255,218,255,255,255,220,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,218,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,228,255,255,255,236,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,221,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,236,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,20,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,246,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,6,0,0,0,15,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,10,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,252,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,10,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,1,0,0,0,4,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,4],"i8",L3,F.GLOBAL_BASE+107456),d3([4,0,0,0,5,0,0,0,6,0,0,0,10,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,255,255,255,255,0,0,0,0,3,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,252,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,8,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,0,0,0,0,2,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,251,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,255,255,255,255,1,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,249,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,240,255,255,255,244,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,253,255,255,255,255,255,255,255,0,0,0,0,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,247,255,255,255,248,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,251,255,255,255,254,255,255,255,0,0,0,0,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,238,255,255,255,240,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,243,255,255,255,243,255,255,255,244,255,255,255,246,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,0,0,0,0,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,237,255,255,255,237,255,255,255,237,255,255,255,237,255,255,255,238,255,255,255,239,255,255,255,240,255,255,255,244,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,7,0,0,0,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,240,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,2,0,0,0,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,234,255,255,255,238,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,249,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,236,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,17,0,0,0,17,0,0,0,18,0,0,0,18,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,12,0,0,0,13,0,0,0,13,0,0,0,13,0,0,0,14,0,0,0,14,0,0,0,14,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0,16,0,0,0,16,0,0,0,17,0,0,0,17,0,0,0,17,0,0,0,18,0,0,0,18,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,7,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,0,0,0,0,0,0,224,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,205,204,204,204,204,204,244,63,154,153,153,153,153,153,249,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,12,64,0,0,0,0,0,0,16,64,0,0,0,0,0,0,16,64,51,51,51,51,51,51,17,64,102,102,102,102,102,102,18,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,32,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,32,0,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,0,0,0,0,0,1,0,0,128,0,0,0,128,0,0,0,0,1,0,0,0,2,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,0,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,0,0,0,0,154,153,153,153,153,153,201,63,154,153,153,153,153,153,201,63,154,153,153,153,153,153,201,63,154,153,153,153,153,153,217,63,51,51,51,51,51,51,227,63,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,156,255,255,255,156,255,255,255,156,255,255,255,156,255,255,255,156,255,255,255,156,255,255,255,151,255,255,255,151,255,255,255,151,255,255,255,151,255,255,255,146,255,255,255,136,255,255,255,126,255,255,255,126,255,255,255,126,255,255,255,126,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,106,255,255,255,205,204,204,204,204,204,43,64,51,51,51,51,51,51,46,64,154,153,153,153,153,153,47,64,0,0,0,0,0,128,48,64,51,51,51,51,51,51,49,64,102,102,102,102,102,230,50,64,154,153,153,153,153,25,52,64,0,0,0,0,0,0,72,64,0,0,0,0,0,56,143,64,0,0,0,0,0,56,143,64,0,0,0,0,0,56,143,64,0,0,0,0,0,56,143,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,4,64,154,153,153,153,153,153,5,64,0,0,0,0,0,0,8,64,154,153,153,153,153,153,13,64,0,0,0,0,0,0,16,64,0,0,0,0,0,0,16,64,248,148,2,0,40,149,2,0,88,149,2,0,0,0,0,0,8,181,0,0,224,217,1,0,8,181,0,0,32,218,1,0,8,181,0,0,96,218,1,0,8,181,0,0,160,218,1,0,8,181,0,0,224,218,1,0,8,181,0,0,32,219,1,0,8,181,0,0,96,219,1,0,8,181,0,0,160,219,1,0,8,181,0,0,224,219,1,0,8,181,0,0,32,220,1,0,8,181,0,0,96,220,1,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,232,133,2,0,232,133,2,0,16,134,2,0,16,134,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,208,134,2,0,208,134,2,0,16,134,2,0,16,134,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,216,118,2,0,216,118,2,0,0,119,2,0,0,119,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,192,119,2,0,192,119,2,0,0,119,2,0,0,119,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,0,106,2,0,0,106,2,0,40,106,2,0,40,106,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,232,106,2,0,232,106,2,0,40,106,2,0,40,106,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,0,93,2,0,0,93,2,0,40,93,2,0,40,93,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,232,93,2,0,232,93,2,0,40,93,2,0,40,93,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,56,79,2,0,56,79,2,0,96,79,2,0,96,79,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,32,80,2,0,32,80,2,0,96,79,2,0,96,79,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,8,65,2,0,8,65,2,0,48,65,2,0,48,65,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,240,65,2,0,240,65,2,0,48,65,2,0,48,65,2,0,1,0,0,0,0,0,0,0,16,0,0,0,88,206,0,0,56,48,2,0,56,48,2,0,96,48,2,0,96,48,2,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,32,49,2,0,32,49,2,0,96,48,2,0,96,48,2,0,1,0,0,0,0,0,0,0,16,0,0,0,88,206,0,0,40,31,2,0,40,31,2,0,80,31,2,0,80,31,2,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,16,32,2,0,16,32,2,0,80,31,2,0,80,31,2,0,1,0,0,0,0,0,0,0,16,0,0,0,88,206,0,0,64,15,2,0,64,15,2,0,104,15,2,0,104,15,2,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,40,16,2,0,40,16,2,0,104,15,2,0,104,15,2,0,1,0,0,0,0,0,0,0,16,0,0,0,160,220,1,0,208,251,1,0,208,251,1,0,248,251,1,0,248,251,1,0,1,0,0,0,0,0,0,0,32,0,0,0,160,220,1,0,184,252,1,0,184,252,1,0,248,251,1,0,248,251,1,0,1,0,0,0,0,0,0,0,16,0,0,0,160,220,1,0,184,231,1,0,184,231,1,0,224,231,1,0,224,231,1,0,1,0,0,0,0,0,0,0,32,0,0,0,160,220,1,0,160,232,1,0,160,232,1,0,224,231,1,0,224,231,1,0,0,0,0,0,255,255,255,255,255,255,255,255,10,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,F.GLOBAL_BASE+117696),d3([1,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,71,0,0,0,157,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,104,251,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,233,1,0,0,0,0,0,0,0,0,0,0,0,0,0,88,233,1,0,0,0,0,0,0,0,0,0,0,0,0,0,128,233,1,0,0,0,0,0,0,0,0,0,0,0,0,0,168,233,1,0,0,0,0,0,208,233,1,0,248,233,1,0,0,0,0,0,0,0,0,0,32,234,1,0,72,234,1,0,0,0,0,0,0,0,0,0,112,234,1,0,152,234,1,0,0,0,0,0,0,0,0,0,192,234,1,0,232,234,1,0,0,0,0,0,0,0,0,0,16,235,1,0,56,235,1,0,96,235,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,200,232,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,9,13,13,14,15,14,14,15,15,5,5,9,10,12,12,13,14,16,15,10,6,6,6,8,11,12,13,16,15,11,7,5,3,5,8,10,12,15,15,10,10,7,4,3,5,8,10,12,12,12,12,9,7,5,4,6,8,10,13,13,12,11,9,7,5,5,6,9,12,14,12,12,10,8,6,6,6,7,11,13,12,14,13,10,8,7,7,7,10,11,11,12,13,12,11,10,8,8,9,0,0,0,0,4,0,0,0,81,0,0,0,0,251,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,88,251,1,0,0,0,0,0,4,0,0,0,113,2,0,0,112,248,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,250,1,0,0,0,0,0,2,0,0,0,81,0,0,0,240,247,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,72,248,1,0,0,0,0,0,2,0,0,0,33,1,0,0,128,246,1,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,168,247,1,0,0,0,0,0,4,0,0,0,81,0,0,0,24,246,1,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,112,246,1,0,0,0,0,0,2,0,0,0,121,0,0,0,104,245,1,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,232,245,1,0,0,0,0,0,2,0,0,0,169,0,0,0,128,244,1,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,48,245,1,0,0,0,0,0,2,0,0,0,25,0,0,0,72,244,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,104,244,1,0,0,0,0,0,2,0,0,0,169,0,0,0,96,243,1,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,16,244,1,0,0,0,0,0,2,0,0,0,121,0,0,0,176,242,1,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,48,243,1,0,0,0,0,0,2,0,0,0,225,0,0,0,136,241,1,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,112,242,1,0,0,0,0,0,2,0,0,0,185,1,0,0,112,239,1,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,48,241,1,0,0,0,0,0,2,0,0,0,225,0,0,0,72,238,1,0,1,0,0,0,0,117,153,225,0,24,61,97,4,0,0,0,0,0,0,0,48,239,1,0,0,0,0,0,2,0,0,0,105,1,0,0,136,236,1,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,248,237,1,0,0,0,0,0,1,0,0,0,49,0,0,0,136,235,1,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,192,235,1,0,0,0,0,0,2,4,4,5,4,5,5,5,5,6,6,6,6,6,6,6,6,6,6,7,6,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,8,7,8,7,9,8,10,9,10,10,11,11,12,12,4,7,6,9,9,10,9,9,8,10,10,11,10,12,10,13,12,13,12,4,6,6,9,9,9,9,9,9,10,10,11,11,11,12,12,12,12,12,7,9,8,11,10,10,10,11,10,11,11,12,12,13,12,13,13,13,13,7,8,9,10,10,11,11,10,10,11,11,11,12,13,13,13,13,14,14,8,9,9,11,11,12,11,12,12,13,12,12,13,13,14,15,14,14,14,8,9,9,10,11,11,11,12,12,13,12,13,13,14,14,14,15,14,16,8,9,9,11,10,12,12,12,12,15,13,13,13,17,14,15,15,15,14,8,9,9,10,11,11,12,13,12,13,13,13,14,15,14,14,14,16,15,9,11,10,12,12,13,13,13,13,14,14,16,15,14,14,14,15,15,17,9,10,10,11,11,13,13,13,14,14,13,15,14,15,14,15,16,15,16,10,11,11,12,12,13,14,15,14,15,14,14,15,17,16,15,15,17,17,10,12,11,13,12,14,14,13,14,15,15,15,15,16,17,17,15,17,16,11,12,12,14,13,15,14,15,16,17,15,17,15,17,15,15,16,17,15,11,11,12,14,14,14,14,14,15,15,16,15,17,17,17,16,17,16,15,12,12,13,14,14,14,15,14,15,15,16,16,17,16,17,15,17,17,16,12,14,12,14,14,15,15,15,14,14,16,16,16,15,16,16,15,17,15,12,13,13,14,15,14,15,17,15,17,16,17,17,17,16,17,16,17,17,12,13,13,14,16,15,15,15,16,15,17,17,15,17,15,17,16,16,17,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,3,3,11,11,11,11,11,11,11,11,11,11,11,11,4,10,11,11,11,11,11,11,11,11,11,11,11,11,11,4,10,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,4,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,6,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,6,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,8,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,8,8,8,9,9,9,9,9,9,9,9,9,9,10,9,10,9,10,10,10,10,8,8,8,9,9,9,9,9,9,9,9,9,9,10,10,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,8,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,8,9,9,10,9,11,10,4,6,6,8,8,9,9,9,9,10,10,11,10,12,10,4,6,6,8,8,9,10,9,9,10,10,11,11,12,12,7,8,8,10,10,11,11,10,10,11,11,12,12,13,12,7,8,8,10,10,11,11,10,10,11,11,12,12,12,13,8,10,9,11,11,12,12,11,11,12,12,13,13,14,13,8,9,9,11,11,12,12,11,12,12,12,13,13,14,13,8,9,9,10,10,12,11,13,12,13,13,14,13,15,14,8,9,9,10,10,11,12,12,12,13,13,13,14,14,14,9,10,10,12,11,13,12,13,13,14,13,14,14,14,15,9,10,10,11,12,12,12,13,13,14,14,14,15,15,15,10,11,11,12,12,13,13,14,14,14,14,15,14,16,15,10,11,11,12,12,13,13,13,14,14,14,14,14,15,16,11,12,12,13,13,14,13,14,14,15,14,15,16,16,16,11,12,12,13,13,14,13,14,14,15,15,15,16,15,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,5,6,6,7,7,7,7,7,7,7,7,6,6,6,7,7,7,7,7,7,7,7,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,7,7,7,7,7,7,7,8,7,8,8,7,7,7,7,7,7,7,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,5,6,6,7,7,8,9,10,10,11,11,5,6,6,7,7,8,8,9,9,10,10,11,11,5,6,6,7,7,8,8,9,9,10,10,11,11,6,7,7,8,8,9,9,10,10,11,11,12,12,6,7,7,8,8,9,9,10,10,11,11,12,12,8,8,8,9,9,10,10,11,11,12,12,13,13,8,8,8,9,9,10,10,11,11,12,12,13,13,9,9,9,10,10,11,11,12,12,13,13,13,13,9,9,9,10,10,11,11,12,12,13,13,14,14,10,10,10,11,11,12,12,13,13,14,13,15,14,10,10,10,11,11,12,12,13,13,14,14,14,14,11,11,12,12,12,13,13,14,14,14,14,15,15,11,11,12,12,12,13,13,14,14,14,15,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,4,4,4,5,5,4,5,4,5,5,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,9,9,10,10,4,6,5,7,7,8,8,8,8,9,9,10,10,4,5,6,7,7,8,8,8,8,9,9,10,10,6,7,7,8,8,8,8,9,9,10,10,10,10,6,7,7,8,8,8,8,9,9,10,10,10,10,7,8,8,8,8,9,9,9,9,10,10,11,11,7,8,8,8,8,9,9,9,9,10,10,11,11,8,8,8,9,9,9,9,9,10,10,10,11,11,8,8,8,9,9,9,9,10,9,10,10,11,11,9,9,9,10,10,10,10,10,11,11,11,11,12,9,9,9,10,10,10,10,10,10,11,10,12,11,10,10,10,10,10,11,11,11,11,11,12,12,12,10,10,10,10,10,11,11,11,11,12,11,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,5,5,5,6,6,7,7,7,7,7,7,5,6,6,6,6,7,7,7,7,8,7,5,6,6,6,6,7,7,7,7,7,7,6,6,6,7,7,7,7,7,7,8,8,6,6,6,7,7,7,7,7,7,8,8,7,7,7,7,7,8,7,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,8,7,8,8,8,8,8,8,7,7,7,7,8,8,8,8,8,8,8,7,8,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,8,9,9,7,9,9,5,8,8,7,9,9,8,9,9,5,8,8,8,10,10,8,10,10,7,10,10,9,10,12,9,11,11,7,10,10,9,11,10,9,11,12,5,8,8,8,10,10,8,10,10,7,10,10,9,12,11,9,10,11,7,10,10,9,11,11,10,12,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,5,5,6,6,7,7,8,8,8,8,9,9,10,10,11,11,5,5,5,6,6,7,7,8,8,8,8,9,9,10,10,11,11,5,5,5,6,6,7,7,8,8,8,8,9,9,10,10,11,11,6,6,6,7,6,7,7,8,8,9,9,10,10,11,11,12,11,6,6,6,6,7,7,7,8,8,9,9,10,10,11,11,11,12,7,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,7,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,8,8,8,8,8,9,8,10,9,10,10,11,10,12,11,13,12,8,8,8,8,8,9,9,9,10,10,10,10,11,11,12,12,12,8,8,8,9,9,9,9,10,10,11,10,12,11,12,12,13,12,8,8,8,9,9,9,9,10,10,10,11,11,11,12,12,12,13,9,9,9,10,10,10,10,11,10,11,11,12,11,13,12,13,13,9,9,10,10,10,10,10,10,11,11,11,11,12,12,13,13,13,10,11,10,11,11,11,11,12,11,12,12,13,12,13,13,14,13,10,10,10,11,11,11,11,11,12,12,12,12,13,13,13,13,14,11,11,11,12,11,12,12,12,12,13,13,13,13,14,13,14,14,11,11,11,11,12,12,12,12,12,12,13,13,13,13,14,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,3,4,4,5,5,7,7,8,8,4,5,5,6,6,7,7,9,9,4,4,5,6,6,7,7,9,9,5,6,6,7,7,8,8,9,9,5,6,6,7,7,8,8,9,9,7,7,7,8,8,9,9,10,10,7,7,7,8,8,9,9,10,10,8,9,9,10,9,10,10,11,11,8,9,9,9,10,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,5,7,7,9,9,6,7,7,9,9,8,9,9,11,10,8,9,9,11,11,6,7,7,9,9,7,8,8,10,10,7,8,8,9,10,9,10,10,11,11,9,9,10,11,11,6,7,7,9,9,7,8,8,10,9,7,8,8,10,10,9,10,9,11,11,9,10,10,11,11,8,9,9,11,11,9,10,10,12,11,9,10,10,11,12,11,11,11,13,13,11,11,11,12,13,8,9,9,11,11,9,10,10,11,11,9,10,10,12,11,11,12,11,13,12,11,11,12,13,13,6,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,11,9,10,10,11,12,7,8,8,10,10,8,9,9,11,11,8,9,9,10,10,10,11,11,12,12,10,10,11,12,12,7,8,8,10,10,8,9,8,10,10,8,9,9,10,10,10,11,10,12,11,10,10,11,12,12,9,10,10,11,12,10,11,11,12,12,10,11,10,12,12,12,12,12,13,13,11,12,12,13,13,9,10,10,11,11,9,10,10,12,12,10,11,11,12,13,11,12,11,13,12,12,12,12,13,14,6,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,11,11,9,10,10,11,12,7,8,8,10,10,8,9,9,11,10,8,8,9,10,10,10,11,10,12,12,10,10,11,11,12,7,8,8,10,10,8,9,9,10,10,8,9,9,10,10,10,11,10,12,12,10,11,10,12,12,9,10,10,12,11,10,11,11,12,12,9,10,10,12,12,12,12,12,13,13,11,11,12,12,14,9,10,10,11,12,10,11,11,12,12,10,11,11,12,12,11,12,12,14,14,12,12,12,13,13,8,9,9,11,11,9,10,10,12,11,9,10,10,12,12,11,12,11,13,13,11,11,12,13,13,9,10,10,12,12,10,11,11,12,12,10,11,11,12,12,12,12,12,14,14,12,12,12,13,13,9,10,10,12,11,10,11,10,12,12,10,11,11,12,12,11,12,12,14,13,12,12,12,13,14,11,12,11,13,13,11,12,12,13,13,12,12,12,14,14,13,13,13,13,15,13,13,14,15,15,11,11,11,13,13,11,12,11,13,13,11,12,12,13,13,12,13,12,15,13,13,13,14,14,15,8,9,9,11,11,9,10,10,11,12,9,10,10,11,12,11,12,11,13,13,11,12,12,13,13,9,10,10,11,12,10,11,10,12,12,10,10,11,12,13,12,12,12,14,13,11,12,12,13,14,9,10,10,12,12,10,11,11,12,12,10,11,11,12,12,12,12,12,14,13,12,12,12,14,13,11,11,11,13,13,11,12,12,14,13,11,11,12,13,13,13,13,13,15,14,12,12,13,13,15,11,12,12,13,13,12,12,12,13,14,11,12,12,13,13,13,13,14,14,15,13,13,13,14,14,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,7,5,7,7,5,7,7,7,9,9,7,9,9,5,7,7,7,9,9,7,9,9,5,7,7,7,9,9,7,9,9,8,9,9,9,10,11,9,11,11,7,9,9,9,11,10,9,11,11,5,7,7,7,9,9,8,9,10,7,9,9,9,11,11,9,10,11,7,9,10,9,11,11,9,11,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,9,16,18,18,17,17,17,17,17,17,5,8,11,12,11,12,17,17,16,16,6,6,8,8,9,10,14,15,16,16,6,7,7,4,6,9,13,16,16,16,6,6,7,4,5,8,11,15,17,16,7,6,7,6,6,8,9,10,14,16,11,8,8,7,6,6,3,4,10,15,14,12,12,10,5,6,3,3,8,13,15,17,15,11,6,8,6,6,9,14,17,15,15,12,8,10,9,9,12,15,0,0,0,0,2,0,0,0,100,0,0,0,216,14,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,72,253,1,0,0,0,0,0,0,0,0,0,0,0,0,0,112,253,1,0,0,0,0,0,0,0,0,0,0,0,0,0,152,253,1,0,0,0,0,0,0,0,0,0,0,0,0,0,192,253,1,0,0,0,0,0,232,253,1,0,16,254,1,0,0,0,0,0,0,0,0,0,56,254,1,0,96,254,1,0,0,0,0,0,0,0,0,0,136,254,1,0,176,254,1,0,0,0,0,0,0,0,0,0,216,254,1,0,0,255,1,0,0,0,0,0,0,0,0,0,40,255,1,0,80,255,1,0,120,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,224,252,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,9,13,14,14,15,14,14,15,15,5,4,6,8,10,12,12,14,15,15,9,5,4,5,8,10,11,13,16,16,10,7,4,3,5,7,9,11,13,13,10,9,7,4,4,6,8,10,12,14,13,11,9,6,5,5,6,8,12,14,13,11,10,8,7,6,6,7,10,14,13,11,12,10,8,7,6,6,9,13,12,11,14,12,11,9,8,7,9,11,11,12,14,13,14,11,10,8,8,9,0,0,0,0,4,0,0,0,81,0,0,0,112,14,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,200,14,2,0,0,0,0,0,4,0,0,0,113,2,0,0,224,11,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,14,2,0,0,0,0,0,2,0,0,0,81,0,0,0,96,11,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,184,11,2,0,0,0,0,0,2,0,0,0,33,1,0,0,240,9,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,24,11,2,0,0,0,0,0,4,0,0,0,81,0,0,0,136,9,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,224,9,2,0,0,0,0,0,2,0,0,0,121,0,0,0,216,8,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,88,9,2,0,0,0,0,0,2,0,0,0,169,0,0,0,240,7,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,160,8,2,0,0,0,0,0,2,0,0,0,25,0,0,0,184,7,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,7,2,0,0,0,0,0,2,0,0,0,169,0,0,0,208,6,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,128,7,2,0,0,0,0,0,2,0,0,0,121,0,0,0,32,6,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,160,6,2,0,0,0,0,0,2,0,0,0,225,0,0,0,248,4,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,224,5,2,0,0,0,0,0,2,0,0,0,185,1,0,0,224,2,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,160,4,2,0,0,0,0,0,2,0,0,0,81,0,0,0,96,2,2,0,1,0,0,0,0,24,125,225,0,24,61,97,4,0,0,0,0,0,0,0,184,2,2,0,0,0,0,0,2,0,0,0,105,1,0,0,160,0,2,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,16,2,2,0,0,0,0,0,1,0,0,0,49,0,0,0,160,255,1,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,216,255,1,0,0,0,0,0,2,3,4,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,8,7,8,6,9,7,10,8,11,10,11,11,11,11,4,7,6,9,9,10,9,9,9,10,10,11,10,11,10,11,11,13,11,4,7,7,9,9,9,9,9,9,10,10,11,10,11,11,11,12,11,12,7,9,8,11,11,11,11,10,10,11,11,12,12,12,12,12,12,14,13,7,8,9,10,11,11,11,10,10,11,11,11,11,12,12,14,12,13,14,8,9,9,11,11,11,11,11,11,12,12,14,12,15,14,14,14,15,14,8,9,9,11,11,11,11,12,11,12,12,13,13,13,13,13,13,14,14,8,9,9,11,10,12,11,12,12,13,13,13,13,15,14,14,14,16,16,8,9,9,10,11,11,12,12,12,13,13,13,14,14,14,15,16,15,15,9,10,10,11,12,12,13,13,13,14,14,16,14,14,16,16,16,16,15,9,10,10,11,11,12,13,13,14,15,14,16,14,15,16,16,16,16,15,10,11,11,12,13,13,14,15,15,15,15,15,16,15,16,15,16,15,15,10,11,11,13,13,14,13,13,15,14,15,15,16,15,15,15,16,15,16,10,12,12,14,14,14,14,14,16,16,15,15,15,16,16,16,16,16,16,11,12,12,14,14,14,14,15,15,16,15,16,15,16,15,16,16,16,16,12,12,13,14,14,15,16,16,16,16,16,16,15,16,16,16,16,16,16,12,13,13,14,14,14,14,15,16,15,16,16,16,16,16,16,16,16,16,12,13,14,14,14,16,15,16,15,16,16,16,16,16,16,16,16,16,16,12,14,13,14,15,15,15,16,15,16,16,15,16,16,16,16,16,16,16,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,3,3,9,9,9,9,9,9,4,9,9,9,9,9,9,9,9,5,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,6,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,9,8,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,10,9,10,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,9,10,10,9,10,8,9,8,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,8,9,8,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,9,10,10,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,7,9,8,10,9,11,10,4,6,6,8,8,10,9,9,9,10,10,11,10,12,10,4,6,6,8,8,10,10,9,9,10,10,11,11,11,12,7,8,8,10,10,11,11,11,10,12,11,12,12,13,11,7,8,8,10,10,11,11,10,10,11,11,12,12,13,13,8,10,10,11,11,12,11,12,11,13,12,13,12,14,13,8,10,9,11,11,12,12,12,12,12,12,13,13,14,13,8,9,9,11,10,12,11,13,12,13,13,14,13,14,13,8,9,9,10,11,12,12,12,12,13,13,14,15,14,14,9,10,10,12,11,13,12,13,13,14,13,14,14,14,14,9,10,10,12,12,12,12,13,13,14,14,14,15,14,14,10,11,11,13,12,13,12,14,14,14,14,14,14,15,15,10,11,11,12,12,13,13,14,14,14,15,15,14,16,15,11,12,12,13,12,14,14,14,13,15,14,15,15,15,17,11,12,12,13,13,14,14,14,15,15,14,15,15,14,17,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,7,7,5,6,6,7,7,7,7,7,7,7,7,5,6,6,7,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,8,8,6,7,7,7,7,7,7,7,7,7,8,7,7,7,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,8,8,8,8,7,7,7,8,7,8,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,5,6,6,7,7,8,8,10,10,11,11,5,6,6,7,7,8,8,9,9,11,10,12,11,5,6,6,7,7,8,8,9,9,10,11,11,12,6,7,7,8,8,9,9,10,10,11,11,12,12,6,7,7,8,8,9,9,10,10,11,12,13,12,7,8,8,9,9,10,10,11,11,12,12,13,13,8,8,8,9,9,10,10,11,11,12,12,13,13,9,9,9,10,10,11,11,12,12,13,13,14,14,9,9,9,10,10,11,11,12,12,13,13,14,14,10,11,11,12,11,13,12,13,13,14,14,15,15,10,11,11,11,12,12,13,13,14,14,14,15,15,11,12,12,13,13,14,13,15,14,15,15,16,15,11,11,12,13,13,13,14,14,14,15,15,15,16,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,4,4,5,5,4,5,5,5,5,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,9,9,10,10,4,6,5,7,7,8,8,8,8,9,9,10,10,4,6,6,7,7,8,8,8,8,9,9,10,10,6,7,7,7,8,8,8,8,9,9,10,10,10,6,7,7,8,8,8,8,9,8,10,9,11,10,7,8,8,8,8,8,9,9,9,10,10,11,11,7,8,8,8,8,9,8,9,9,10,10,11,11,8,8,8,9,9,9,9,9,10,10,10,11,11,8,8,8,9,9,9,9,10,9,10,10,11,11,9,9,9,9,10,10,10,10,10,10,11,11,12,9,9,9,10,9,10,10,10,10,11,10,12,11,10,10,10,10,10,11,11,11,11,11,12,12,12,10,10,10,10,11,11,11,11,11,12,11,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,8,8,5,5,5,6,6,7,7,8,8,8,8,5,5,5,6,6,7,7,7,8,8,8,6,6,6,7,7,7,7,8,8,8,8,6,6,6,7,7,7,7,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,8,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,8,8,8,8,8,8,8,8,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,8,9,9,7,9,9,5,8,8,7,9,9,8,9,9,5,8,8,8,10,10,8,10,10,7,10,10,9,10,12,9,12,11,7,10,10,9,11,10,9,11,12,5,8,8,8,10,10,8,10,10,7,10,10,9,11,11,9,10,11,7,10,10,9,11,11,10,12,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,4,4,6,6,7,7,8,8,8,8,10,10,11,11,11,11,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,6,6,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,6,6,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,7,7,7,8,8,9,8,10,9,10,9,11,10,12,11,13,12,7,7,7,8,8,8,9,9,10,9,10,10,11,11,12,12,13,8,8,8,9,9,9,9,10,10,11,10,11,11,12,12,13,13,8,8,8,9,9,9,10,10,10,10,11,11,11,12,12,12,13,8,9,9,9,9,10,9,11,10,11,11,12,11,13,12,13,13,8,9,9,9,9,9,10,10,11,11,11,11,12,12,13,13,13,10,10,10,10,10,11,10,11,11,12,11,13,12,13,13,14,13,10,10,10,10,10,10,11,11,11,11,12,12,13,13,13,13,14,11,11,11,11,11,12,11,12,12,13,12,13,13,14,13,14,14,11,11,11,11,11,11,12,12,12,12,13,13,13,13,14,14,14,11,12,12,12,12,13,12,13,12,13,13,14,13,14,14,14,14,11,12,12,12,12,12,12,13,13,13,13,13,14,14,14,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,3,4,4,5,5,7,7,9,9,4,5,4,6,6,7,7,9,9,4,4,5,6,6,7,7,9,9,5,6,6,7,7,8,8,10,10,6,6,6,7,7,8,8,10,10,7,7,7,8,8,9,9,11,10,7,7,7,8,8,9,9,10,11,9,9,9,10,10,11,10,12,11,9,9,9,9,10,11,11,11,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,5,7,6,9,9,5,6,7,9,9,8,9,9,11,11,8,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,11,12,5,7,7,9,9,7,8,7,10,10,7,8,8,10,10,9,10,9,12,11,9,10,10,12,12,8,9,9,12,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,14,11,11,12,13,14,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,11,13,13,11,12,12,14,14,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,11,12,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,11,12,13,10,11,11,12,13,6,8,8,10,10,8,9,8,11,10,8,9,9,11,11,10,11,10,13,12,10,11,11,13,13,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,12,13,13,14,12,13,13,14,14,9,10,10,12,12,10,11,10,13,12,10,11,11,13,13,11,13,12,14,13,12,13,13,14,14,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,12,12,7,8,8,10,10,8,9,9,11,11,8,8,9,10,11,10,11,11,13,13,10,10,11,12,13,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,11,13,13,10,11,11,13,12,9,10,10,12,12,10,11,11,13,13,10,10,11,12,13,12,13,13,14,14,12,12,13,13,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,15,14,12,13,13,14,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,12,12,12,14,13,11,12,12,14,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,14,15,12,13,13,14,15,9,10,10,12,12,10,11,10,13,12,10,11,11,13,13,12,13,12,15,14,12,13,13,14,15,11,12,12,14,14,12,13,13,14,14,12,13,13,15,14,14,14,14,14,16,14,14,15,16,16,11],"i8",L3,F.GLOBAL_BASE+124340),d3([12,12,14,14,11,12,12,14,14,12,13,13,14,15,13,14,13,16,14,14,14,14,16,16,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,14,14,9,10,10,12,12,10,11,11,13,13,10,10,11,12,13,12,13,13,15,14,12,12,13,13,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,14,14,12,13,13,15,14,11,12,12,14,13,12,13,13,15,14,11,12,12,13,14,14,15,14,16,15,13,13,14,13,16,11,12,12,14,14,12,13,13,14,15,12,13,12,15,14,14,14,14,16,15,14,15,13,16,14,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,7,5,7,7,5,7,7,8,9,9,7,9,9,5,7,7,7,9,9,8,9,9,5,7,7,7,9,9,7,9,9,7,9,9,9,10,11,9,11,10,7,9,9,9,11,10,9,10,11,5,7,7,7,9,9,7,9,9,7,9,9,9,11,10,9,10,10,8,9,9,9,11,11,9,11,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,6,14,18,18,17,17,17,17,17,17,4,7,9,9,10,13,15,17,17,17,6,7,5,6,8,11,16,17,16,17,5,7,5,4,6,10,14,17,17,17,6,6,6,5,7,10,13,16,17,17,7,6,7,7,7,8,7,10,15,16,12,9,9,6,6,5,3,5,11,15,14,14,13,5,5,7,3,4,8,15,17,17,13,7,7,10,6,6,10,15,17,17,16,10,11,14,10,10,15,17,0,0,0,0,2,0,0,0,100,0,0,0,192,30,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,184,16,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,16,2,0,0,0,0,0,0,0,0,0,0,0,0,0,8,17,2,0,0,0,0,0,0,0,0,0,0,0,0,0,48,17,2,0,0,0,0,0,0,0,0,0,0,0,0,0,88,17,2,0,0,0,0,0,0,0,0,0,0,0,0,0,128,17,2,0,0,0,0,0,168,17,2,0,208,17,2,0,0,0,0,0,0,0,0,0,248,17,2,0,32,18,2,0,0,0,0,0,0,0,0,0,72,18,2,0,112,18,2,0,152,18,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,80,16,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,9,14,13,15,14,16,13,13,14,5,5,7,7,8,9,11,10,12,15,10,6,5,6,6,9,10,10,13,16,10,6,6,6,6,8,9,9,12,15,14,7,6,6,5,6,6,8,12,15,10,8,7,7,6,7,7,7,11,13,14,10,9,8,5,6,4,5,9,12,10,9,9,8,6,6,5,3,6,11,12,11,12,12,10,9,8,5,5,8,10,11,15,13,13,13,12,8,6,7,0,0,0,0,4,0,0,0,81,0,0,0,88,30,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,176,30,2,0,0,0,0,0,4,0,0,0,81,0,0,0,240,29,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,72,30,2,0,0,0,0,0,4,0,0,0,113,2,0,0,96,27,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,29,2,0,0,0,0,0,4,0,0,0,113,2,0,0,208,24,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,27,2,0,0,0,0,0,2,0,0,0,81,0,0,0,80,24,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,168,24,2,0,0,0,0,0,2,0,0,0,81,0,0,0,208,23,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,40,24,2,0,0,0,0,0,4,0,0,0,81,0,0,0,104,23,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,192,23,2,0,0,0,0,0,2,0,0,0,121,0,0,0,184,22,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,56,23,2,0,0,0,0,0,2,0,0,0,121,0,0,0,8,22,2,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,136,22,2,0,0,0,0,0,2,0,0,0,121,0,0,0,88,21,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,216,21,2,0,0,0,0,0,2,0,0,0,121,0,0,0,168,20,2,0,1,0,0,0,0,226,120,225,0,232,51,97,4,0,0,0,0,0,0,0,40,21,2,0,0,0,0,0,2,0,0,0,169,0,0,0,192,19,2,0,1,0,0,0,0,96,18,225,0,128,184,96,4,0,0,0,0,0,0,0,112,20,2,0,0,0,0,0,1,0,0,0,49,0,0,0,192,18,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,248,18,2,0,0,0,0,0,2,4,4,4,4,5,5,5,5,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,6,5,8,6,9,8,10,9,11,10,4,6,6,8,8,9,9,11,10,11,11,11,11,4,6,6,8,8,10,9,11,11,11,11,11,12,6,8,8,10,10,11,11,12,12,13,12,13,13,6,8,8,10,10,11,11,12,12,12,13,14,13,8,10,10,11,11,12,13,14,14,14,14,15,15,8,10,10,11,12,12,13,13,14,14,14,14,15,9,11,11,13,13,14,14,15,14,16,15,17,15,9,11,11,12,13,14,14,15,14,15,15,15,16,10,12,12,13,14,15,15,15,15,16,17,16,17,10,13,12,13,14,14,16,16,16,16,15,16,17,11,13,13,14,15,14,17,15,16,17,17,17,17,11,13,13,14,15,15,15,15,17,17,16,17,16,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,10,10,10,10,10,10,10,10,4,10,10,10,10,10,10,10,10,10,10,4,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,7,7,5,6,6,7,7,7,7,7,7,7,7,5,6,6,6,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,8,8,6,7,7,7,7,7,7,7,7,8,8,7,7,7,7,7,8,7,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,10,11,11,4,6,6,7,7,9,9,11,10,12,12,5,6,5,7,7,9,9,10,11,12,12,6,7,7,8,8,10,10,11,11,13,13,6,7,7,8,8,10,10,11,12,13,13,8,9,9,10,10,11,11,12,12,14,14,8,9,9,10,10,11,11,12,12,14,14,10,10,10,11,11,13,12,14,14,15,15,10,10,10,12,12,13,13,14,14,15,15,11,12,12,13,13,14,14,15,14,16,15,11,12,12,13,13,14,14,15,15,15,16,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,3,4,4,6,6,7,7,8,8,8,8,4,5,5,6,6,8,7,8,8,8,8,4,5,5,6,6,7,8,8,8,8,8,6,7,6,7,7,8,8,9,9,9,9,6,6,7,7,7,8,8,9,9,9,9,7,8,7,8,8,9,9,9,9,9,9,7,7,8,8,8,9,9,9,9,9,9,8,8,8,9,9,9,9,10,9,9,9,8,8,8,9,9,9,9,9,9,9,10,8,8,8,9,9,9,9,10,9,10,10,8,8,8,9,9,9,9,9,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,9,8,8,9,9,7,10,10,5,8,9,7,9,10,8,9,9,4,9,9,9,11,10,8,10,10,7,11,10,10,10,12,10,12,12,7,10,10,10,12,11,10,12,12,5,9,9,8,10,10,9,11,11,7,11,10,10,12,12,10,11,12,7,10,11,10,12,12,10,12,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,9,9,4,5,4,6,6,8,7,9,9,4,4,5,6,6,7,7,9,9,5,6,6,7,7,8,8,10,10,5,6,6,7,7,8,8,10,10,7,8,7,8,8,10,9,11,11,7,7,8,8,8,9,10,11,11,9,9,9,10,10,11,10,12,11,9,9,9,10,10,11,11,11,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,7,8,10,10,4,5,5,8,7,8,8,11,11,3,5,5,7,7,8,9,11,11,6,8,7,9,9,10,10,12,12,6,7,8,9,10,10,10,12,12,8,8,8,10,10,12,11,13,13,8,8,9,10,10,11,11,13,13,10,11,11,12,12,13,13,14,14,10,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,6,7,6,9,9,6,6,7,9,9,8,9,9,11,11,8,9,9,10,11,6,7,7,9,9,7,8,8,10,10,6,7,8,9,10,9,10,10,12,12,9,9,10,11,12,6,7,7,9,9,6,8,7,10,9,7,8,8,10,10,9,10,9,12,11,9,10,10,12,11,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,13,14,11,11,12,13,13,8,9,9,11,11,9,10,10,12,11,9,10,10,12,12,11,12,11,13,13,11,12,12,13,13,6,7,7,9,9,7,8,7,10,10,7,7,8,10,10,9,10,10,12,11,9,10,10,12,12,7,8,8,10,10,8,8,9,11,11,8,9,9,11,11,10,11,11,12,12,10,10,11,12,13,6,7,7,10,10,7,9,8,11,10,8,8,9,10,11,10,11,10,13,11,10,11,11,12,12,9,10,10,12,12,10,10,11,13,13,10,11,11,13,12,12,12,13,13,14,12,12,13,14,14,9,10,10,12,12,9,10,10,12,12,10,11,11,13,13,11,12,11,14,12,12,13,13,14,14,6,7,7,9,9,7,8,7,10,10,7,7,8,10,10,9,10,10,12,11,9,10,10,11,12,6,7,7,10,10,8,9,8,11,10,7,8,9,10,11,10,11,11,13,12,10,10,11,11,13,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,10,13,12,10,11,11,12,12,9,10,10,12,12,10,11,11,13,12,9,10,10,12,13,12,13,12,14,14,11,11,12,12,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,12,14,14,12,13,12,14,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,13,13,9,10,10,12,12,10,11,11,13,13,10,11,11,13,12,12,13,13,14,14,12,12,13,14,14,9,10,10,12,12,9,11,10,13,12,10,10,11,12,13,11,13,12,14,13,12,12,13,14,14,11,12,12,13,13,11,12,13,14,14,12,13,13,14,14,13,13,14,14,16,13,14,14,16,16,11,11,11,13,13,11,12,11,14,13,12,12,13,14,15,13,14,12,16,13,14,14,14,15,16,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,13,14,9,10,10,12,12,10,11,10,13,12,9,10,11,12,13,12,13,12,14,14,12,12,13,13,14,9,10,10,12,12,10,11,11,12,13,10,11,11,13,13,12,13,12,14,14,12,13,13,14,14,11,12,12,13,13,12,13,12,14,14,11,11,12,13,14,13,15,14,16,15,13,12,14,13,16,11,12,12,13,13,12,13,13,14,14,12,12,12,14,14,13,14,14,15,15,13,14,13,16,14,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,4,8,8,5,7,6,9,9,5,6,7,9,9,8,9,9,13,12,8,9,10,12,13,5,7,7,10,9,7,9,9,11,11,6,8,9,11,11,10,11,11,14,14,9,10,11,13,14,5,7,7,9,9,7,9,8,11,11,7,9,9,11,11,9,11,10,14,13,10,11,11,14,14,8,10,10,14,13,10,11,12,15,14,9,11,11,15,14,13,14,14,16,16,12,13,14,17,16,8,10,10,13,13,9,11,11,14,15,10,11,12,14,15,12,14,13,16,16,13,14,15,15,17,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,12,11,15,14,10,11,12,14,14,7,9,9,12,12,9,11,11,13,13,9,11,11,13,13,11,13,13,14,17,11,13,13,15,16,6,9,9,11,11,8,11,10,13,12,9,11,11,13,13,11,13,12,16,14,11,13,13,16,16,10,12,12,15,15,11,13,13,16,16,11,13,13,16,15,14,16,17,17,19,14,16,16,18,0,9,11,11,14,15,10,13,12,16,15,11,13,13,16,16,14,15,14,0,16,14,16,16,18,0,5,7,7,10,10,7,9,9,12,11,7,9,9,11,12,10,11,11,15,14,10,11,12,14,14,6,9,9,11,11,9,11,11,13,13,8,10,11,12,13,11,13,13,17,15,11,12,13,14,15,7,9,9,11,12,9,11,11,13,13,9,11,11,13,13,11,13,12,16,16,11,13,13,15,14,9,11,11,14,15,11,13,13,16,15,10,12,13,16,16,15,16,16,0,0,14,13,15,16,18,10,11,11,15,15,11,13,14,16,18,11,13,13,16,15,15,16,16,19,0,14,15,15,16,16,8,10,10,13,13,10,12,11,16,15,10,11,11,16,15,13,15,16,18,0,13,14,15,17,17,9,11,11,15,15,11,13,13,16,18,11,13,13,16,17,15,16,16,0,0,15,18,16,0,17,9,11,11,15,15,11,13,12,17,15,11,13,14,16,17,15,18,15,0,17,15,16,16,18,19,13,15,14,0,18,14,16,16,19,18,14,16,15,19,19,16,18,19,0,0,16,17,0,0,0,12,14,14,17,17,13,16,14,0,18,14,16,15,18,0,16,18,16,19,17,18,19,17,0,0,8,10,10,14,14,9,12,11,15,15,10,11,12,15,17,13,15,15,18,16,14,16,15,18,17,9,11,11,16,15,11,13,13,0,16,11,12,13,16,15,15,16,16,0,17,15,15,16,18,17,9,12,11,15,17,11,13,13,16,16,11,14,13,16,16,15,15,16,18,19,16,18,16,0,0,12,14,14,0,16,14,16,16,0,18,13,14,15,16,0,17,16,18,0,0,16,16,17,19,0,13,14,14,17,0,14,17,16,0,19,14,15,15,18,19,17,16,18,0,0,15,19,16,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,5,6,6,5,6,6,5,6,6,6,8,8,6,7,8,5,6,6,6,8,7,6,8,8,5,6,6,6,8,7,6,8,8,6,8,8,8,9,9,8,9,9,6,8,7,7,9,8,8,9,9,5,6,6,6,8,7,6,8,8,6,8,8,8,9,9,7,8,9,6,8,8,8,9,9,8,9,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,4,7,7,5,7,7,5,8,8,8,10,10,7,10,10,5,8,8,7,10,10,8,10,10,5,8,8,8,11,10,8,10,10,8,10,10,10,12,13,10,13,13,7,10,10,10,13,12,10,13,13,5,8,8,8,11,10,8,10,11,7,10,10,10,13,13,10,12,13,8,11,11,10,13,13,10,13,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,12,17,16,16,17,17,17,17,17,4,7,11,11,12,9,17,10,17,17,7,7,8,9,7,9,11,10,15,17,7,9,10,11,10,12,14,12,16,17,7,8,5,7,4,7,7,8,16,16,6,10,9,10,7,10,11,11,16,17,6,8,8,9,5,7,5,8,16,17,5,5,8,7,6,7,7,6,6,14,12,10,12,11,7,11,4,4,2,7,17,15,15,15,8,15,6,8,5,9,0,0,0,0,2,0,0,0,100,0,0,0,208,47,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,32,2,0,0,0,0,0,0,0,0,0,0,0,0,0,200,32,2,0,0,0,0,0,0,0,0,0,0,0,0,0,240,32,2,0,0,0,0,0,0,0,0,0,0,0,0,0,24,33,2,0,0,0,0,0,0,0,0,0,0,0,0,0,64,33,2,0,0,0,0,0,0,0,0,0,0,0,0,0,104,33,2,0,0,0,0,0,144,33,2,0,184,33,2,0,0,0,0,0,0,0,0,0,224,33,2,0,8,34,2,0,0,0,0,0,0,0,0,0,48,34,2,0,88,34,2,0,128,34,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,56,32,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,9,14,13,14,13,16,12,13,14,5,4,6,6,8,9,11,10,12,15,10,5,5,6,6,8,10,10,13,16,10,6,6,6,6,8,9,9,12,14,13,7,6,6,4,6,6,7,11,14,10,7,7,7,6,6,6,7,10,13,15,10,9,8,5,6,5,6,10,14,10,9,8,8,6,6,5,4,6,11,11,11,12,11,10,9,9,5,5,9,10,12,15,13,13,13,13,8,7,7,0,0,0,0,4,0,0,0,81,0,0,0,104,47,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,192,47,2,0,0,0,0,0,4,0,0,0,81,0,0,0,0,47,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,88,47,2,0,0,0,0,0,4,0,0,0,113,2,0,0,112,44,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,46,2,0,0,0,0,0,4,0,0,0,113,2,0,0,224,41,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,44,2,0,0,0,0,0,2,0,0,0,81,0,0,0,96,41,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,184,41,2,0,0,0,0,0,2,0,0,0,81,0,0,0,224,40,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,56,41,2,0,0,0,0,0,4,0,0,0,81,0,0,0,120,40,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,208,40,2,0,0,0,0,0,2,0,0,0,121,0,0,0,200,39,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,72,40,2,0,0,0,0,0,2,0,0,0,121,0,0,0,24,39,2,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,152,39,2,0,0,0,0,0,2,0,0,0,121,0,0,0,104,38,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,232,38,2,0,0,0,0,0,2,0,0,0,225,0,0,0,64,37,2,0,1,0,0,0,0,228,91,225,0,224,255,96,4,0,0,0,0,0,0,0,40,38,2,0,0,0,0,0,2,0,0,0,225,0,0,0,24,36,2,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,0,37,2,0,0,0,0,0,2,0,0,0,33,1,0,0,168,34,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,208,35,2,0,0,0,0,0,3,5,5,7,7,8,8,8,8,8,8,9,8,8,9,9,9,5,6,6,7,7,8,8,8,8,8,8,9,9,9,9,9,9,5,6,6,7,7,8,8,8,8,8,8,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,9,9,9,9,9,9,9,9,9,9,9,10,9,9,9,10,9,9,9,9,9,9,9,9,9,9,10,9,9,9,10,9,9,10,9,9,9,9,9,9,9,9,9,10,10,10,9,10,9,10,10,9,9,9,9,9,9,9,9,9,10,10,9,10,10,9,9,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,7,7,8,9,8,8,9,8,9,8,9,9,4,7,6,8,8,9,9,9,9,9,9,9,9,9,9,4,7,6,9,9,10,10,9,9,10,10,10,10,11,11,7,9,8,10,10,11,11,10,10,11,11,11,11,11,11,7,8,9,10,10,11,11,10,10,11,11,11,11,11,12,8,10,10,11,11,12,12,11,11,12,12,12,12,13,12,8,10,10,11,11,12,11,11,11,11,12,12,12,12,13,8,9,9,11,10,11,11,12,12,12,12,13,12,13,12,8,9,9,11,11,11,11,12,12,12,12,12,13,13,13,9,10,10,11,12,12,12,12,12,13,13,13,13,13,13,9,10,10,11,11,12,12,12,12,13,13,13,13,14,13,10,10,10,12,11,12,12,13,13,13,13,13,13,13,13,10,10,11,11,11,12,12,13,13,13,13,13,13,13,13,10,11,11,12,12,13,12,12,13,13,13,13,13,13,14,10,11,11,12,12,13,12,13,13,13,14,13,13,14,13,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,2,9,8,15,15,15,15,15,15,15,15,15,15,4,8,9,13,14,14,14,14,14,14,14,14,14,14,14,5,8,9,14,14,14,14,14,14,14,14,14,14,14,14,11,14,14,14,14,14,14,14,14,14,14,14,14,14,14,11,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,3,5,5,6,6,7,7,7,7,7,7,5,6,5,7,7,7,7,8,7,8,8,5,5,6,6,7,7,7,7,7,8,8,6,7,7,7,7,8,7,8,8,8,8,6,6,7,7,7,7,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,7,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,10,10,4,6,6,7,7,9,9,10,10,11,11,4,6,6,7,7,9,9,10,10,11,11,6,8,8,9,9,10,10,11,11,12,12,6,8,8,9,9,10,10,11,11,12,12,8,9,9,10,10,11,11,12,12,13,13,8,9,9,10,10,11,11,12,12,13,13,10,10,10,11,11,13,13,13,13,15,14,9,10,10,12,11,12,13,13,13,14,15,11,12,12,13,13,13,13,15,14,15,15,11,11,12,13,13,14,14,14,15,15,15,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,3,4,4,6,6,7,7,8,8,8,8,4,5,5,7,6,8,8,8,8,8,8,4,5,5,6,7,8,8,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,7,8,8,8,8,8,8,9,9,9,9,7,8,8,8,8,8,8,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,9,8,7,10,10,8,10,10,5,8,9,7,10,10,7,10,9,4,8,8,9,11,11,8,11,11,7,11,11,10,10,13,10,13,13,7,11,11,10,13,12,10,13,13,5,9,8,8,11,11,9,11,11,7,11,11,10,13,13,10,12,13,7,11,11,10,13,13,9,13,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,9,9,4,5,4,6,6,7,7,9,9,4,4,5,6,6,7,8,9,9,5,6,6,7,7,8,8,10,10,5,6,6,7,7,8,8,10,10,7,8,7,8,8,10,9,11,11,7,7,8,8,8,9,10,10,11,9,9,9,10,10,11,11,12,11,9,9,9,10,10,11,11,11,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,8,8,10,10,4,5,5,8,7,8,8,11,11,3,5,5,7,8,8,8,11,11,6,8,7,9,9,10,9,12,11,6,7,8,9,9,9,10,11,12,8,8,8,10,9,12,11,13,13,8,8,9,9,10,11,12,13,13,10,11,11,12,12,13,13,14,14,10,10,11,11,12,13,13,14,14,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,6,7,6,9,9,6,6,7,9,9,8,9,9,11,11,8,9,9,11,11,6,7,7,9,9,7,8,8,10,10,7,7,8,9,10,9,10,10,11,11,9,9,10,11,12,6,7,7,9,9,7,8,7,10,9,7,8,8,10,10,9,10,9,12,11,9,10,10,12,11,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,11,12,13,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,11,13,12,11,12,12,13,13,5,7,7,9,9,7,8,7,10,10,7,7,8,10,10,9,10,10,12,11,9,10,10,11,12,7,8,8,10,10,8,8,9,11,11,8,9,9,11,11,10,10,11,12,13,10,10,11,12,12,6,7,7,10,10,7,9,8,11,10,8,8,9,10,11,10,11,10,13,11,10,11,11,12,12,9,10,10,12,12,10,10,11,13,13,10,11,11,12,13,12,12,12,13,14,12,12,13,14,14,9,10,10,12,12,9,10,10,13,12,10,11,11,13,13,11,12,11,14,12,12,13,13,14,14,6,7,7,9,9,7,8,7,10,10,7,8,8,10,10,9,10,10,12,11,9,10,10,11,12,6,7,7,10,10,8,9,8,11,10,7,8,9,10,11,10,11,11,12,12,10,10,11,11,13,7,8,8,10,10,8,9,9,11,11,8,9,8,11,11,10,11,10,13,12,10,11,11,13,12,9,10,10,12,12,10,11,11,13,12,9,10,10,12,13,12,13,12,14,14,11,11,12,12,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,12,12,14,14,12,13,12,14,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,13,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,12,13,14,15,12,12,13,14,14,9,10,10,12,12,9,11,10,13,12,10,10,11,12,13,12,13,12,14,13,12,12,13,14,15,11,12,12,14,13,11,12,12,14,14,12,13,13,14,14,13,13,14,14,16,13,14,14,15,15,11,12,11,13,13,11,12,11,14,13,12,12,13,14,15,12,14,12,15,12,13,14,15,15,16,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,13,13,9,10,10,12,12,10,11,10,13,12,9,10,11,12,13,12,13,12,14,14,12,12,13,13,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,12,14,14,12,13,13,14,14,11,11,11,13,13,12,13,12,14,14,11,11,12,13,14,14,14,14,16,15,12,12,14,12,15,11,12,12,13,14,12,13,13,14,15,11,12,12,14,14,13,14,14,16,16,13,14,13,16,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,4,8,8,5,7,6,9,9,5,6,7,9,9,8,9,9,13,12,8,9,10,12,13,5,7,7,10,9,7,9,9,11,11,7,8,9,11,11,10,11,11,14,14,9,10,11,13,14,5,7,7,9,10,6,9,8,11,11,7,9,9,11,11,9,11,10,14,13,10,11,11,14,13,8,10,10,13,13,10,11,11,15,15,9,11,11,14,14,13,14,14,17,16,12,13,14,16,16,8,10,10,13,14,9,11,11,14,15,10,11,12,14,15,12,14,13,16,15,13,14,14,15,17,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,12,11,14,14,10,11,11,14,14,7,9,9,12,11,9,11,11,13,13,9,11,11,13,13,11,13,13,14,15,11,12,13,15,16,6,9,9,11,12,8,11,10,13,12,9,11,11,13,14,11,13,12,16,14,11,13,13,15,16,10,12,11,14,15,11,13,13,15,17,11,13,13,17,16,15,15,16,17,16,14,15,16,18,0,9,11,11,14,15,10,12,12,16,15,11,13,13,16,16,13,15,14,18,15,14,16,16,0,0,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,11,11,14,14,10,11,12,14,14,6,9,9,11,11,9,11,11,13,13,8,10,11,12,13,11,13,13,16,15,11,12,13,14,16,7,9,9,11,12,9,11,11,13,13,9,11,11,13,13,11,13,13,16,15,11,13,12,15,15,9,11,11,15,14,11,13,13,17,16,10,12,13,15,16,14,16,16,0,18,14,14,15,15,17,10,11,12,15,15,11,13,13,16,16,11,13,13,16,16,14,16,16,19,17,14,15,15,17,17,8,10,10,14,14,10,12,11,15,15,10,11,12,16,15,14,15,15,18,20,13,14,16,17,18,9,11,11,15,16,11,13,13,17,17,11,13,13,17,16,15,16,16,0,0,15,16,16,0,0,9,11,11,15,15,10,13,12,17,15,11,13,13,17,16,15,17,15,20,19,15,16,16,19,0,13,15,14,0,17,14,15,16,0,20,15,16,16,0,19,17,18,0,0,0,16,17,18,0,0,12,14,14,19,18,13,15,14,0,17,14,15,16,19,19,16,18,16,0,19,19,20,17,20,0,8,10,10,13,14,10,11,11,15,15,10,12,12,15,16,14,15,14,19,16,14,15,15,0,18,9,11,11,16,15,11,13,13,0,16,11,12,13,16,17,14,16,17,0,19,15,16,16,18,0,9,11,11,15,16,11,13,13,16,16,11,14,13,18,17,15,16,16,18,20,15,17,19,0,0,12,14,14,17,17,14,16,15,0,0,13,14,15,19,0,16,18,20,0,0,16,16,18,18,0,12,14,14,17,20,14,16,16,19,0,14,16,14,0,20,16,20,17,0,0,17,0,15,0,19,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,5,6,6,5,6,6,5,6,6,6,8,8,6,7,8,5,6,6,6,8,7,6,8,8,5,6,6,6,8,8,6,8,8,6,8,8,8,9,9,8,9,9,6,7,7,7,9,8,8,9,9,5,6,6,6,8,7,6,8,8,6,8,8,8,9,9,7,8,9,6,8,8,8,9,9,8,9,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,4,8,7,5,7,7,5,8,8,8,10,10,7,9,10,5,8,8,7,10,9,8,10,10,5,8,8,8,10,10,8,10,10,8,10,10,10,12,13,10,13,13,7,10,10,10,13,11,10,13,13,5,8,8,8,11,10,8,10,10,7,10,10,10,13,13,10,11,13,8,10,11,10,13,13,10,13,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,11,16,13,17,13,17,16,17,17,4,7,9,9,13,10,16,12,16,17,7,6,5,7,8,9,12,12,16,17,6,9,7,9,10,10,15,15,17,17,6,7,5,7,5,7,7,10,16,17,7,9,8,9,8,10,11,11,15,17,7,7,7,8,5,8,8,9,15,17,8,7,9,9,7,8,7,2,7,15,14,13,13,15,5,10,4,3,6,17,17,15,13,17,7,11,7,6,9,16,0,0,0,0,2,0,0,0,100,0,0,0,160,64,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,176,49,2,0,0,0,0,0,0,0,0,0,0,0,0,0,216,49,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,2,0,0,0,0,0,0,0,0,0,0,0,0,0,40,50,2,0,0,0,0,0,0,0,0,0,0,0,0,0,80,50,2,0,0,0,0,0,0,0,0,0,0,0,0,0,120,50,2,0,0,0,0,0,160,50,2,0,200,50,2,0,0,0,0,0,0,0,0,0,240,50,2,0,24,51,2,0,0,0,0,0,0,0,0,0,64,51,2,0,104,51,2,0,144,51,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,72,49,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,13,12,14,12,16,11,13,14,5,4,5,6,7,8,10,9,12,15,10,5,5,5,6,8,9,9,13,15,10,5,5,6,6,7,8,8,11,13,12,7,5,6,4,6,7,7,11,14,11,7,7,6,6,6,7,6,10,14,14,9,8,8,6,7,7,7,11,16,11,8,8,7,6,6,7,4,7,12,10,10,12,10,10,9,10,5,6,9,10,12,15,13,14,14,14,8,7,8,0,0,0,0,4,0,0,0,81,0,0,0,56,64,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,144,64,2,0,0,0,0,0,4,0,0,0,81,0,0,0,208,63,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,40,64,2,0,0,0,0,0,4,0,0,0,113,2,0,0,64,61,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,184,63,2,0,0,0,0,0,4,0,0,0,113,2,0,0,176,58,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,40,61,2,0,0,0,0,0,2,0,0,0,81,0,0,0,48,58,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,136,58,2,0,0,0,0,0,2,0,0,0,81,0,0,0,176,57,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,8,58,2,0,0,0,0,0,4,0,0,0,81,0,0,0,72,57,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,160,57,2,0,0,0,0,0,2,0,0,0,121,0,0,0,152,56,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,24,57,2,0,0,0,0,0,2,0,0,0,121,0,0,0,232,55,2,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,104,56,2,0,0,0,0,0,2,0,0,0,121,0,0,0,56,55,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,184,55,2,0,0,0,0,0,2,0,0,0,169,0,0,0,80,54,2,0,1,0,0,0,0,232,87,225,0,224,255,96,4,0,0,0,0,0,0,0,0,55,2,0,0,0,0,0,2,0,0,0,225,0,0,0,40,53,2,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,16,54,2,0,0,0,0,0,2,0,0,0,33,1,0,0,184,51,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,52,2,0,0,0,0,0,2,5,5,7,7,8,8,8,8,8,8,9,9,9,9,9,9,5,6,6,7,7,8,8,9,8,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,9,8,9,9,9,9,9,9,9,9,7,7,7,8,8,9,8,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,9,8,9,9,9,9,9,9,9,9,9,9,8,8,8,8,9,9,9,9,9,9,9,9,10,9,10,10,10,8,8,8,9,8,9,9,9,9,9,9,9,10,9,10,9,10,8,9,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,8,9,9,9,9,9,9,10,9,10,9,10,10,10,10,10,10,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,9,10,9,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,10,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,7,8,7,9,8,9,9,4,7,6,9,8,10,10,9,8,9,9,9,9,9,8,5,6,6,8,9,10,10,9,9,9,10,10,10,10,11,7,8,8,10,10,11,11,10,10,11,11,11,12,11,11,7,8,8,10,10,11,11,10,10,11,11,12,11,11,11,8,9,9,11,11,12,12,11,11,12,11,12,12,12,12,8,9,10,11,11,12,12,11,11,12,12,12,12,12,12,8,9,9,10,10,12,11,12,12,12,12,12,12,12,13,8,9,9,11,11,11,11,12,12,12,12,13,12,13,13,9,10,10,11,11,12,12,12,13,12,13,13,13],"i8",L3,F.GLOBAL_BASE+134580),d3([14,13,9,10,10,11,11,12,12,12,13,13,12,13,13,14,13,9,11,10,12,11,13,12,12,13,13,13,13,13,13,14,9,10,10,12,12,12,12,12,13,13,13,13,13,14,14,10,11,11,12,12,12,13,13,13,14,14,13,14,14,14,10,11,11,12,12,12,12,13,12,13,14,13,14,14,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,2,12,10,13,13,13,13,13,13,13,13,4,9,9,13,13,13,13,13,13,13,13,13,13,5,10,9,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,6,6,7,7,7,7,7,7,5,6,5,7,6,7,7,8,8,8,8,5,5,5,6,6,7,7,8,8,8,8,6,7,6,7,7,8,8,8,8,8,8,6,6,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,10,10,4,6,6,7,7,9,9,10,10,11,11,4,6,6,7,7,9,9,10,10,11,11,6,8,7,9,9,10,10,11,11,13,12,6,8,8,9,9,10,10,11,11,12,13,8,9,9,10,10,12,12,13,12,14,13,8,9,9,10,10,12,12,13,13,14,14,9,11,11,12,12,13,13,14,14,15,14,9,11,11,12,12,13,13,14,14,15,14,11,12,12,13,13,14,14,15,14,15,14,11,11,12,13,13,14,14,14,14,15,15,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,4,5,5,7,7,8,8,9,8,8,9,4,5,5,7,7,8,8,9,9,8,9,6,7,7,8,8,9,8,9,9,9,9,6,7,7,8,8,9,9,9,9,9,9,7,8,8,9,9,9,9,9,9,9,9,7,8,8,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,9,9,8,11,10,7,11,10,5,9,9,7,10,10,8,10,11,4,9,9,9,12,12,9,12,12,8,12,12,11,12,12,10,12,13,7,12,12,11,12,12,10,12,13,4,9,9,9,12,12,9,12,12,7,12,11,10,13,13,11,12,12,7,12,12,10,13,13,11,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,9,9,4,5,4,6,6,7,7,9,9,4,4,5,6,6,7,7,9,9,5,6,6,7,7,8,8,10,10,6,6,6,7,7,8,8,10,10,7,7,7,8,8,9,9,11,10,7,7,7,8,8,9,9,10,11,9,9,9,10,10,11,10,11,11,9,9,9,10,10,11,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,8,8,10,10,4,5,5,8,7,8,8,11,10,3,5,5,7,8,8,8,10,11,6,8,7,10,9,10,10,11,11,6,7,8,9,9,9,10,11,12,8,8,8,10,10,11,11,13,12,8,8,9,9,10,11,11,12,13,10,11,10,12,11,13,12,14,14,10,10,11,11,12,12,13,14,14,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,6,7,6,9,9,6,6,7,9,9,8,9,9,11,11,8,9,9,11,11,6,7,7,9,9,7,8,8,10,10,6,7,8,9,10,9,10,10,11,12,9,9,10,11,12,6,7,7,9,9,6,8,7,10,9,7,8,8,10,10,9,10,9,12,11,9,10,10,12,11,8,9,9,12,11,9,10,10,12,12,9,10,10,12,12,11,12,12,13,14,11,11,12,13,14,8,9,9,11,12,9,10,10,12,12,9,10,10,12,12,11,12,11,14,13,11,12,12,13,13,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,12,12,7,8,8,10,10,8,8,9,10,11,8,9,9,11,11,10,10,11,11,13,10,11,11,12,13,6,7,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,13,11,10,11,11,12,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,11,13,12,15,12,13,13,14,15,9,10,10,12,12,9,11,10,13,12,10,11,11,13,13,11,13,11,14,12,12,13,13,14,15,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,12,12,6,8,7,10,10,8,9,9,11,11,7,8,9,10,11,10,11,11,12,12,10,10,11,11,13,7,8,8,10,10,8,9,9,11,11,8,9,8,11,10,10,11,11,13,12,10,11,10,13,11,9,10,10,12,12,10,11,11,13,12,9,10,10,12,13,12,13,13,14,15,11,11,13,12,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,13,13,14,14,12,13,11,14,12,8,9,9,12,12,9,10,10,12,12,9,10,10,12,12,12,12,12,14,14,11,12,12,14,13,9,10,10,12,12,10,11,11,13,13,10,11,11,13,12,12,12,13,14,15,12,13,13,15,14,9,10,10,12,12,10,11,10,13,12,10,11,11,12,13,12,13,12,15,13,12,13,13,14,15,11,12,12,14,13,11,12,12,14,15,12,13,13,15,14,13,12,14,12,16,13,14,14,15,15,11,11,12,14,14,11,12,11,14,13,12,13,13,14,15,13,14,12,16,12,14,14,15,16,16,8,9,9,11,12,9,10,10,12,12,9,10,10,12,13,11,12,12,13,13,12,12,13,14,14,9,10,10,12,12,10,11,10,13,12,10,10,11,12,13,12,13,13,15,14,12,12,13,13,15,9,10,10,12,13,10,11,11,12,13,10,11,11,13,13,12,13,13,14,15,12,13,12,15,14,11,12,11,14,13,12,13,13,15,14,11,11,12,13,14,14,15,14,16,15,13,12,14,13,16,11,12,12,13,14,12,13,13,14,15,11,12,11,14,14,14,14,14,15,16,13,15,12,16,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,5,8,8,5,7,6,9,9,5,6,7,9,9,8,10,9,13,12,8,9,10,12,12,5,7,7,10,10,7,9,9,11,11,6,8,9,11,11,10,11,11,14,14,9,10,11,13,14,5,7,7,9,10,7,9,8,11,11,7,9,9,11,11,9,11,10,14,13,10,11,11,14,14,8,10,10,13,13,10,11,11,15,14,9,11,11,14,14,13,14,14,17,16,12,13,13,15,16,8,10,10,13,13,9,11,11,14,15,10,11,11,14,15,12,14,13,16,16,13,15,14,15,17,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,11,11,14,14,10,11,12,14,14,7,9,9,12,11,9,11,11,13,13,9,11,11,13,13,12,13,13,15,16,11,12,13,15,16,6,9,9,11,11,8,11,10,13,12,9,11,11,13,14,11,13,12,16,14,11,13,13,16,17,10,12,11,15,15,11,13,13,16,16,11,13,13,17,16,14,15,15,17,17,14,16,16,17,18,9,11,11,14,15,10,12,12,15,15,11,13,13,16,17,13,15,13,17,15,14,15,16,18,0,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,11,11,14,14,10,11,12,14,15,6,9,9,12,11,9,11,11,13,13,8,10,11,12,13,11,13,13,16,15,11,12,13,14,15,7,9,9,11,12,9,11,11,13,13,9,11,11,13,13,11,13,13,15,16,11,13,13,15,14,9,11,11,15,14,11,13,13,17,15,10,12,12,15,15,14,16,16,17,17,13,13,15,15,17,10,11,12,15,15,11,13,13,16,16,11,13,13,15,15,14,15,15,18,18,14,15,15,17,17,8,10,10,13,13,10,12,11,15,15,10,11,12,15,15,14,15,15,18,18,13,14,14,18,18,9,11,11,15,16,11,13,13,17,17,11,13,13,16,16,15,15,16,17,0,14,15,17,0,0,9,11,11,15,15,10,13,12,18,16,11,13,13,15,16,14,16,15,20,20,14,15,16,17,0,13,14,14,20,16,14,15,16,19,18,14,15,15,19,0,18,16,0,20,20,16,18,18,0,0,12,14,14,18,18,13,15,14,18,16,14,15,16,18,20,16,19,16,0,17,17,18,18,19,0,8,10,10,14,14,10,11,11,14,15,10,11,12,15,15,13,15,14,19,17,13,15,15,17,0,9,11,11,16,15,11,13,13,16,16,10,12,13,15,17,14,16,16,18,18,14,15,15,18,0,9,11,11,15,15,11,13,13,16,17,11,13,13,18,17,14,18,16,18,18,15,17,17,18,0,12,14,14,18,18,14,15,15,20,0,13,14,15,17,0,16,18,17,0,0,16,16,0,17,20,12,14,14,18,18,14,16,15,0,18,14,16,15,18,0,16,19,17,0,0,17,18,16,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,5,6,6,5,6,6,5,6,6,6,8,8,6,7,8,5,6,6,6,8,7,6,8,8,5,6,6,6,8,8,6,8,8,6,8,8,8,9,9,8,9,9,6,8,7,7,9,8,8,9,9,5,6,6,6,8,7,6,8,8,6,8,7,8,9,9,7,8,9,6,8,8,8,9,9,8,9,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,7,5,8,8,8,10,10,7,9,10,5,8,8,7,10,9,8,10,10,5,8,8,8,10,10,8,10,10,8,10,10,10,12,13,10,13,13,7,10,10,10,13,11,10,13,13,4,8,8,8,11,10,8,10,10,7,10,10,10,13,13,10,11,13,8,10,11,10,13,13,10,13,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,10,17,13,17,13,17,17,17,17,3,6,8,9,11,9,15,12,16,17,6,5,5,7,7,8,10,11,17,17,7,8,7,9,9,10,13,13,17,17,8,6,5,7,4,7,5,8,14,17,9,9,8,9,7,9,8,10,16,17,12,10,7,8,4,7,4,7,16,17,12,11,9,10,6,9,5,7,14,17,14,13,10,15,4,8,3,5,14,17,17,14,11,15,6,10,6,8,15,17,0,0,0,0,2,0,0,0,64,0,0,0,248,78,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,128,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,168,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,208,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,248,66,2,0,0,0,0,0,32,67,2,0,72,67,2,0,0,0,0,0,0,0,0,0,112,67,2,0,152,67,2,0,192,67,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,24,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,12,12,13,12,11,13,5,4,6,7,8,8,9,13,9,5,4,5,5,7,9,13,9,6,5,6,6,7,8,12,12,7,5,6,4,5,8,13,11,7,6,6,5,5,6,12,10,8,8,7,7,5,3,8,10,12,13,12,12,9,6,7,4,0,0,0,81,0,0,0,144,78,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,232,78,2,0,0,0,0,0,4,0,0,0,81,0,0,0,40,78,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,128,78,2,0,0,0,0,0,4,0,0,0,113,2,0,0,152,75,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,78,2,0,0,0,0,0,4,0,0,0,113,2,0,0,8,73,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,128,75,2,0,0,0,0,0,2,0,0,0,81,0,0,0,136,72,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,224,72,2,0,0,0,0,0,2,0,0,0,169,0,0,0,160,71,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,80,72,2,0,0,0,0,0,2,0,0,0,25,0,0,0,104,71,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,71,2,0,0,0,0,0,2,0,0,0,169,0,0,0,128,70,2,0,1,0,0,0,0,232,87,225,0,224,255,96,4,0,0,0,0,0,0,0,48,71,2,0,0,0,0,0,2,0,0,0,225,0,0,0,88,69,2,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,64,70,2,0,0,0,0,0,2,0,0,0,33,1,0,0,232,67,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,16,69,2,0,0,0,0,0,2,5,5,7,7,7,7,8,8,8,8,9,9,9,9,9,9,5,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,7,7,7,8,8,8,8,9,9,9,9,10,9,10,9,10,10,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,8,9,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,8,8,8,9,9,9,9,9,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,10,10,10,10,10,10,10,10,11,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,10,10,10,10,10,10,10,10,10,10,11,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,9,8,10,8,10,9,11,11,4,7,6,8,7,9,9,10,10,11,10,11,10,12,10,4,6,7,8,8,9,9,10,10,11,11,11,11,12,12,6,8,8,10,9,11,10,12,11,12,12,12,12,13,13,6,8,8,10,10,10,11,11,11,12,12,13,12,13,13,8,9,9,11,11,12,11,12,12,13,13,13,13,13,13,8,9,9,11,11,11,12,12,12,13,13,13,13,13,13,9,10,10,12,11,13,13,13,13,14,13,13,14,14,14,9,10,11,11,12,12,13,13,13,13,13,14,15,14,14,10,11,11,12,12,13,13,14,14,14,14,14,15,16,16,10,11,11,12,13,13,13,13,15,14,14,15,16,15,16,10,12,12,13,13,14,14,14,15,15,15,15,15,15,16,11,12,12,13,13,14,14,14,15,15,15,16,15,17,16,11,12,12,13,13,13,15,15,14,16,16,16,16,16,17,11,12,12,13,13,14,14,15,14,15,15,17,17,16,16,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,3,12,12,12,12,12,12,12,12,12,12,3,12,11,12,12,12,12,12,12,12,12,12,12,4,11,10,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,6,5,4,5,5,5,6,5,6,5,6,6,5,5,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,11,10,13,13,4,6,5,8,8,9,9,10,10,11,11,14,14,4,6,6,8,8,9,9,10,10,11,11,14,14,6,8,8,9,9,10,10,11,11,12,12,15,15,6,8,8,9,9,10,11,11,11,12,12,15,15,8,9,9,11,10,11,11,12,12,13,13,16,16,8,9,9,10,10,11,11,12,12,13,13,16,16,10,10,10,12,11,12,12,13,13,14,14,16,16,10,10,10,11,12,12,12,13,13,13,14,16,17,11,12,11,12,12,13,13,14,14,15,14,18,17,11,11,12,12,12,13,13,14,14,14,15,19,18,14,15,14,15,15,17,16,17,17,17,17,21,0,14,15,15,16,16,16,16,17,17,18,17,20,21,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,7,7,9,9,4,5,5,7,7,8,8,10,9,4,5,5,7,7,8,8,10,10,6,7,7,8,8,9,9,11,10,6,7,7,8,8,9,9,10,11,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,10,10,11,10,11,11,12,12,9,10,10,10,11,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,5,7,6,9,9,5,6,7,9,9,9,9,9,11,11,8,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,7,8,10,10,9,10,10,11,12,9,10,10,11,12,5,7,7,9,9,7,8,7,10,10,7,8,8,10,10,9,10,10,12,11,9,10,10,12,11,9,10,9,12,12,9,10,10,13,12,9,10,10,12,12,12,12,12,14,14,11,12,12,13,14,9,9,10,12,12,9,10,10,13,13,9,10,10,12,13,11,12,12,14,13,11,12,12,14,14,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,9,10,10,12,12,7,8,8,11,10,8,8,9,11,11,8,9,9,11,11,11,11,11,12,13,10,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,13,11,10,11,11,13,13,9,11,10,13,12,10,11,11,13,14,10,11,11,14,13,12,12,13,12,15,12,13,13,15,15,9,10,10,12,13,10,11,10,13,12,10,11,11,13,14,12,13,11,15,13,13,13,13,15,15,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,10,10,11,12,13,6,8,8,10,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,7,8,8,10,11,8,9,9,11,11,8,9,8,11,11,10,11,11,13,13,11,12,11,13,12,9,10,10,13,12,10,11,11,14,13,10,10,11,12,13,12,13,13,15,15,12,11,13,13,14,9,10,11,12,13,10,11,11,13,14,10,11,11,13,13,12,13,13,15,15,12,13,12,15,12,8,9,9,12,12,9,11,10,13,13,9,10,10,13,13,12,13,13,15,15,12,12,12,14,14,9,10,10,13,13,10,11,11,13,14,10,11,11,14,13,13,13,14,14,16,13,13,13,15,15,9,10,10,13,13,10,11,10,14,13,10,11,11,13,14,12,14,13,16,14,12,13,13,14,15,11,12,12,15,14,11,12,13,14,15,12,13,13,16,15,14,12,15,12,16,14,15,15,16,16,11,12,12,14,14,11,13,12,15,14,12,13,13,15,16,13,15,13,17,13,14,15,15,16,17,8,9,9,12,12,9,10,10,12,13,9,10,10,13,13,12,12,12,14,14,12,13,13,15,15,9,10,10,13,12,10,11,11,14,13,10,10,11,13,14,13,13,13,15,15,12,13,14,14,16,9,10,10,13,13,10,11,11,13,14,10,11,11,14,14,13,13,13,15,15,13,14,13,16,14,11,12,12,15,14,12,13,13,16,15,11,12,13,14,15,14,15,15,17,16,13,13,15,13,16,11,12,13,14,15,13,13,13,15,16,11,13,12,15,14,14,15,15,16,16,14,15,12,17,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,8,8,5,7,7,9,9,5,7,7,9,9,8,10,9,12,12,8,9,10,12,12,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,12,11,14,14,9,10,11,13,14,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,9,11,10,14,13,10,11,11,14,14,8,10,10,14,13,10,12,12,15,14,9,11,11,15,14,13,14,14,17,17,12,14,14,16,16,8,10,10,14,14,9,11,11,14,15,10,12,12,14,15,12,14,13,16,16,13,14,15,15,18,4,7,7,10,10,7,9,9,12,11,7,9,9,11,12,10,12,11,15,14,10,11,12,14,15,7,9,9,12,12,9,11,12,13,13,9,11,12,13,13,12,13,13,15,16,11,13,13,15,16,7,9,9,12,12,9,11,10,13,12,9,11,12,13,14,11,13,12,16,14,12,13,13,15,16,10,12,12,16,15,11,13,13,17,16,11,13,13,17,16,14,15,15,17,17,14,16,16,18,20,9,11,11,15,16,11,13,12,16,16,11,13,13,16,17,14,15,14,18,16,14,16,16,17,20,5,7,7,10,10,7,9,9,12,11,7,9,10,11,12,10,12,11,15,15,10,12,12,14,14,7,9,9,12,12,9,12,11,14,13,9,10,11,12,13,12,13,14,16,16,11,12,13,14,16,7,9,9,12,12,9,12,11,13,13,9,12,11,13,13,11,13,13,16,16,12,13,13,16,15,9,11,11,16,14,11,13,13,16,16,11,12,13,16,16,14,16,16,17,17,13,14,15,16,17,10,12,12,15,15,11,13,13,16,17,11,13,13,16,16,14,16,15,19,19,14,15,15,17,18,8,10,10,14,14,10,12,12,15,15,10,12,12,16,16,14,16,15,20,19,13,15,15,17,16,9,12,12,16,16,11,13,13,16,18,11,14,13,16,17,16,17,16,20,0,15,16,18,18,20,9,11,11,15,15,11,14,12,17,16,11,13,13,17,17,15,17,15,20,20,14,16,16,17,0,13,15,14,18,16,14,15,16,0,18,14,16,16,0,0,18,16,0,0,20,16,18,18,0,0,12,14,14,17,18,13,15,14,20,18,14,16,15,19,19,16,20,16,0,18,16,19,17,19,0,8,10,10,14,14,10,12,12,16,15,10,12,12,16,16,13,15,15,18,17,14,16,16,19,0,9,11,11,16,15,11,14,13,18,17,11,12,13,17,18,14,17,16,18,18,15,16,17,18,18,9,12,12,16,16,11,13,13,16,18,11,14,13,17,17,15,16,16,18,20,16,17,17,20,20,12,14,14,18,17,14,16,16,0,19,13,14,15,18,0,16,0,0,0,0,16,16,0,19,20,13,15,14,0,0,14,16,16,18,19,14,16,15,0,20,16,20,18,0,20,17,20,17,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,6,6,5,6,6,5,6,6,7,8,8,6,8,8,5,6,6,6,8,8,7,8,8,5,7,6,6,8,8,6,8,8,6,8,8,8,9,10,8,10,10,6,8,8,8,10,8,8,10,10,5,6,6,6,8,8,6,8,8,6,8,8,8,10,10,8,8,10,6,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,10,11,8,10,11,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,11,11,11,13,14,11,15,14,8,11,11,10,13,12,11,14,14,4,8,8,8,11,11,8,11,11,7,11,11,11,15,14,10,12,14,8,11,11,11,14,14,11,14,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,14,17,15,17,16,14,13,16,10,7,7,10,13,10,15,16,9,4,4,6,5,7,9,16,12,8,7,8,8,8,11,16,14,7,4,6,3,5,8,15,13,8,5,7,4,5,7,16,12,9,6,8,3,3,5,16,14,13,7,10,5,5,7,15,2,0,0,0,64,0,0,0,192,92,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,80,2,0,0,0,0,0,0,0,0,0,0,0,0,0,176,80,2,0,0,0,0,0,0,0,0,0,0,0,0,0,216,80,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,81,2,0,0,0,0,0,0,0,0,0,0,0,0,0,40,81,2,0,0,0,0,0,80,81,2,0,120,81,2,0,0,0,0,0,0,0,0,0,160,81,2,0,200,81,2,0,240,81,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,72,80,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,9,13,12,14,11,10,13,8,4,5,7,8,7,8,12,11,4,3,5,5,7,9,14,11,6,5,6,6,6,7,13,13,7,5,6,4,5,7,14,11,7,6,6,5,5,6,13,9,7,8,6,7,5,3,9,9,12,13,12,14,10,6,7,4,0,0,0,81,0,0,0,88,92,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,176,92,2,0,0,0,0,0,4,0,0,0,81,0,0,0,240,91,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,72,92,2,0,0,0,0,0,4,0,0,0,113,2,0,0,96,89,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,91,2,0,0,0,0,0,4,0,0,0,113,2,0,0,208,86,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,89,2,0,0,0,0,0,2,0,0,0,81,0,0,0,80,86,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,168,86,2,0,0,0,0,0,2,0,0,0,169,0,0,0,104,85,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,24,86,2,0,0,0,0,0,2,0,0,0,25,0,0,0,48,85,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,80,85,2,0,0,0,0,0,2,0,0,0,81,0,0,0,176,84,2,0,1,0,0,0,0,224,63,225,0,224,255,96,4,0,0,0,0,0,0,0,8,85,2,0,0,0,0,0,2,0,0,0,225,0,0,0,136,83,2,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,112,84,2,0,0,0,0,0,2,0,0,0,33,1,0,0,24,82,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,64,83,2,0,0,0,0,0,2,5,5,7,6,7,7,8,8,8,8,9,9,9,9,9,9,5,6,6,7,7,8,8,8,8,9,9,9,9,9,9,10,10,5,6,6,7,7,8,8,8,8,9,8,9,9,9,9,10,9,7,7,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,7,7,7,8,8,8,8,9,9,9,9,10,9,10,10,10,10,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,7,8,8,9,8,9,9,9,9,10,9,10,10,10,10,10,10,8,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,8,9,8,9,9,9,9,10,9,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,11,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,11,11,11,10,11,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,6,8,7,9,8,10,9,11,11,4,7,7,8,7,9,9,10,10,11,11,11,11,12,12,4,7,7,7,7,9,9,10,10,11,11,12,12,12,11,6,8,8,9,9,10,10,11,11,12,12,13,12,13,13,6,8,8,9,9,10,11,11,11,12,12,13,14,13,13,8,9,9,11,11,12,12,12,13,14,13,14,14,14,15,8,9,9,11,11,11,12,13,14,13,14,15,17,14,15,9,10,10,12,12,13,13,13,14,15,15,15,16,16,16,9,11,11,12,12,13,13,14,14,14,15,16,16,16,16,10,12,12,13,13,14,14,15,15,15,16,17,17,17,17,10,12,11,13,13,15,14,15,14,16,17,16,16,16,16,11,13,12,14,14,14,14,15,16,17,16,17,17,17,17,11,13,12,14,14,14,15,17,16,17,17,17,17,17,17,12,13,13,15,16,15,16,17,17,16,16,17,17,17,17,12,13,13,15,15,15,16,17,17,17,16,17,16,17,17,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,3,10,10,10,10,10,10,4,10,10,10,10,10,10,10,10,4,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,6,5,4,5,5,5,6,5,6,5,6,6,5,5,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,10,11,13,14,4,6,5,8,8,9,9,10,10,11,11,14,14,4,6,6,8,8,9,9,10,10,11,11,14,14,6,8,8,9,9,10,10,11,11,12,12,15,15,6,8,8,9,9,10,11,11,11,12,12,15,15,8,9,9,11,10,11,11,12,12,13,13,15,16,8,9,9,10,11,11,11,12,12,13,13,16,16,10,10,11,11,11,12,12,13,13,13,14,17,16,9,10,11,12,11,12,12,13,13,13,13,16,18,11,12,11,12,12,13,13,13,14,15,14,17,17,11,11,12,12,12,13,13,13,14,14,15,18,17,14,15,15,15,15,16,16,17,17,19,18,0,20,14,15,14,15,15,16,16,16,17,18,16,20,18,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,7,7,9,9,4,5,5,7,7,8,8,10,10,4,5,5,7,7,8,8,10,10,6,7,7,8,8,9,9,11,10,6,7,7,8,8,9,9,10,10,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,10,10,11,10,11,11,12,12,9,10,10,10,10,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,5,7,6,9,9,5,6,7,9,9,9,9,9,11,11,9,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,7,8,10,10,9,10,10,11,12,9,10,10,11,12,5,7,7,9,9,7,8,7,10,10,7,8,8,10,10,9,10,9,12,11,9,10,10,12,11,9,10,9,12,12,9,10,10,13,12,9,10,10,12,13,12,12,12,14,14,11,12,12,13,14,9,9,10,12,12,9,10,10,12,12,9,10,10,12,13,11,12,11,14,13,12,12,12,14,13,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,9,10,10,12,12,7,8,8,11,10,8,8,9,11,11,8,9,9,11,11,11,11,11,12,13,10,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,13,11,10,11,11,13,13,9,11,10,13,12,10,11,11,13,13,10,11,11,13,13,12,12,13,12,15,12,13,13,15,15,9,10,10,12,13,10,11,10,13,12,10,11,11,13,14,12,13,11,15,13,12,13,13,15,15,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,10,10,11,12,12,6,8,8,10,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,11,13,13,11,11,11,13,12,9,10,10,13,12,10,11,11,14,13,10,10,11,12,13,12,13,13,15,15,12,11,13,13,14,9,10,11,12,13,10,11,11,13,13,10,11,11,13,13,12,13,13,15,15,12,13,12,15,12,8,9,9,12,12,9,11,10,13,13,9,10,10,13,13,12,13,13,15,14,12,12,12,14,13,9,10,10,13,12,10,11,11,13,13,10,11,11,14,12,13,13,14,14,16,12,13,13,15,15,9,10,10,13,13,10,11,10,14,13,10,11,11,13,14,12,14,13,15,14,13,13,13,15,15,11,13,12,15,14,11,12,13,14,15,12,13,13,16,14,14,12,15,12,16,14,15,15,17,15,11,12,12,14,14,11,13,11,15,14,12,13,13,15,15,13,15,12,17,13,14,15,15,16,16,8,9,9,12,12,9,10,10,12,13,9,10,10,13,13,12,12,12,14,14,12,13,13,15,15,9,10,10,13,12,10,11,11,14,13,10,10,11,13,14,12,13,13,15,15,12,12,13,14,16,9,10,10,13,13,10,11,11,13,14,10,11,11,14,13,12,13,13,14,15,13,14,13,16,14,11,12,12,14,14,12,13,13,15,14,11,12,13,14,15,14,15,15,16,16,13,13,15,13,16,11,12,12,14,15,12,13,13,14,15,11,13,12,15,14,14,15,15,16,16,14,15,12,16,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,7,7,5,7,7,9,9,5,7,7,9,9,8,9,9,12,12,8,9,9,11,12,5,7,7,10,10,7,9,9,11,11,7,9,9,10,11,10,11,11,13,13,9,10,11,13,13,5,7,7,10,10,7,9,9,11,10,7,9,9,11,11,9,11,10,13,13,10,11,11,14,13,8,10,10,14,13,10,11,11,15,14,9,11,11,14,14,13,14,13,16,16,12,13,13,15,15,8,10,10,13,14,9,11,11,14,14,10,11,11,14,15,12,13,13,15,15,13,14,14,15,16,5,7,7,10,10,7,9,9,11,11,7,9,9,11,12,10,11,11,14,14,10,11,11,14,14,7,9,9,12,12,9,11,11,13,13,9,11,11,13,13,12,12,13,15,15,11,12,13,15,16,7,9,9,11,11,8,11,10,13,12,9,11,11,13,13,11,13,12,15,13,11,13,13,15,16,9,12,11,15,14,11,12,13,16,15,11,13,13,15,16,14,14,15,17,16,13,15,16,0,17,9,11,11,15,15,10,13,12,15,15,11,13,13,15,16,13,15,13,16,15,14,16,15,0,19,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,12,11,14,14,10,11,12,14,14,7,9,9,12,12,9,11,11,14,13,9,10,11,12,13,11,13,13,16,16,11,12,13,13,16,7,9,9,12,12,9,11,11,13,13,9,11,11,13,13,11,13,13,15,15,12,13,12,15,14,9,11,11,15,14,11,13,12,16,16,10,12,12,15,15,13,15,15,17,19,13,14,15,16,17,10,12,12,15,15,11,13,13,16,16,11,13,13,15,16,13,15,15,0,0,14,15,15,16,16,8,10,10,14,14,10,12,12,15,15,10,12,11,15,16,14,15,15,19,20,13,14,14,18,16,9,11,11,15,15,11,13,13,17,16,11,13,13,16,16,15,17,17,20,20,14,15,16,17,20,9,11,11,15,15,10,13,12,16,15,11,13,13,15,17,14,16,15,18,0,14,16,15,18,20,12,14,14,0,0,14,14,16,0,0,13,16,15,0,0,17,17,18,0,0,16,17,19,19,0,12,14,14,18,0,12,16,14,0,17,13,15,15,18,0,16,18,17,0,17,16,18,17,0,0,7,10,10,14,14,10,12,11,15,15,10,12,12,16,15,13,15,15,18,0,14,15,15,17,0,9,11,11,15,15,11,13,13,16,16,11,12,13,16,16,14,15,16,17,17,14,16,16,16,18,9,11,12,16,16,11,13,13,17,17,11,14,13,20,17,15,16,16,19,0,15,16,17,0,19,11,13,14,17,16,14,15,15,20,18,13,14,15,17,19,16,18,18,0,20,16,16,19,17,0,12,15,14,17,0,14,15,15,18,19,13,16,15,19,20,15,18,18,0,20,17,0,16,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,4,5,6,6,5,6,6,5,6,6,7,8,8,6,8,8,5,6,6,6,8,8,7,8,8,5,7,6,7,8,8,6,8,8,7,8,8,8,9,10,8,10,10,6,8,8,8,10,8,8,10,10,5,6,6,6,8,8,7,8,8,6,8,8,8,10,10,8,8,10,7,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,10,11,8,10,11,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,11,11,11,13,14,11,14,14,8,11,11,10,14,12,11,14,14,4,8,8,8,11,11,8,11,11,7,11,11,11,14,14,10,12,14,8,11,11,11,14,14,11,14,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,14,14,14,15,13,15,12,16,10,8,7,9,9,8,12,16,10,5,4,6,5,6,9,16,14,8,6,8,7,8,10,16,14,7,4,6,3,5,8,16,15,9,5,7,4,4,7,16,13,10,6,7,4,3,4,13,13,12,7,9,5,5,6,12,2,0,0,0,64,0,0,0,192,105,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,120,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,160,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,200,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,240,94,2,0,0,0,0,0,24,95,2,0,64,95,2,0,0,0,0,0,0,0,0,0,104,95,2,0,144,95,2,0,184,95,2],"i8",L3,F.GLOBAL_BASE+144820),d3([2,0,0,0,64,0,0,0,16,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,9,14,12,15,13,10,13,7,4,5,6,8,7,8,12,13,4,3,5,5,6,9,15,12,6,5,6,6,6,7,14,14,7,4,6,4,6,8,15,12,6,6,5,5,5,6,14,9,7,8,6,7,5,4,10,10,13,14,14,15,10,6,8,4,0,0,0,81,0,0,0,88,105,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,176,105,2,0,0,0,0,0,4,0,0,0,81,0,0,0,240,104,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,72,105,2,0,0,0,0,0,4,0,0,0,113,2,0,0,96,102,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,104,2,0,0,0,0,0,4,0,0,0,113,2,0,0,208,99,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,102,2,0,0,0,0,0,2,0,0,0,81,0,0,0,80,99,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,168,99,2,0,0,0,0,0,2,0,0,0,169,0,0,0,104,98,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,24,99,2,0,0,0,0,0,2,0,0,0,25,0,0,0,48,98,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,80,98,2,0,0,0,0,0,2,0,0,0,81,0,0,0,176,97,2,0,1,0,0,0,0,32,53,225,0,32,245,96,4,0,0,0,0,0,0,0,8,98,2,0,0,0,0,0,2,0,0,0,169,0,0,0,200,96,2,0,1,0,0,0,0,128,211,224,0,0,122,96,4,0,0,0,0,0,0,0,120,97,2,0,0,0,0,0,2,0,0,0,169,0,0,0,224,95,2,0,1,0,0,0,0,0,88,224,0,0,16,96,4,0,0,0,0,0,0,0,144,96,2,0,0,0,0,0,2,5,5,6,6,7,7,8,7,8,8,8,8,5,6,6,7,7,8,8,8,8,8,8,8,8,5,6,6,7,7,8,7,8,8,8,8,8,8,6,7,7,7,8,8,8,8,8,9,9,9,9,6,7,7,8,7,8,8,9,9,9,9,9,9,7,8,8,8,8,8,8,9,9,9,9,9,9,7,8,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,9,9,9,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,9,9,9,9,8,8,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,6,7,6,8,7,9,7,9,8,4,7,6,8,8,9,8,10,9,10,10,11,11,4,7,7,8,8,8,8,9,10,11,11,11,11,6,8,8,10,10,10,10,11,11,12,12,12,12,7,8,8,10,10,10,10,11,11,12,12,13,13,7,9,9,11,10,12,12,13,13,14,13,14,14,7,9,9,10,11,11,12,13,13,13,13,16,14,9,10,10,12,12,13,13,14,14,15,16,15,16,9,10,10,12,12,12,13,14,14,14,15,16,15,10,12,12,13,13,15,13,16,16,15,17,17,17,10,11,11,12,14,14,14,15,15,17,17,15,17,11,12,12,14,14,14,15,15,15,17,16,17,17,10,12,12,13,14,14,14,17,15,17,17,17,17,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,12,12,12,12,12,12,4,12,12,12,12,12,12,12,12,5,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,6,5,4,5,5,5,6,5,6,5,6,6,5,5,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,10,11,11,14,13,4,6,5,8,8,9,9,11,10,12,11,15,14,4,5,6,8,8,9,9,11,11,11,11,14,14,6,8,8,10,9,11,11,11,11,12,12,15,15,6,8,8,9,9,11,11,11,12,12,12,15,15,8,10,10,11,11,11,11,12,12,13,13,15,16,8,10,10,11,11,11,11,12,12,13,13,16,16,10,11,11,12,12,12,12,13,13,13,13,17,16,10,11,11,12,12,12,12,13,13,13,14,16,17,11,12,12,13,13,13,13,14,14,15,14,18,17,11,12,12,13,13,13,13,14,14,14,15,19,18,14,15,15,15,15,16,16,18,19,18,18,0,0,14,15,15,16,15,17,17,16,18,17,18,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,8,8,9,9,4,6,5,8,8,8,8,10,10,4,5,6,8,8,8,8,10,10,7,8,8,9,9,9,9,11,11,7,8,8,9,9,9,9,11,11,8,8,8,9,9,10,11,12,12,8,8,8,9,9,10,10,12,12,10,10,10,11,11,12,12,13,13,10,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,5,7,6,9,9,5,6,7,9,9,9,9,9,11,11,9,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,7,8,10,10,10,10,10,11,12,9,10,10,11,12,5,7,7,9,9,6,8,7,10,10,7,8,8,10,10,9,10,10,12,11,9,10,10,12,11,9,10,10,12,12,10,10,10,13,12,9,10,10,12,13,12,12,12,14,14,11,12,12,13,14,9,10,10,12,12,9,10,10,12,13,10,10,10,12,13,11,12,12,14,13,12,12,12,14,13,5,7,7,10,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,10,10,10,12,12,7,8,8,11,10,8,8,9,11,11,8,9,9,11,11,10,11,11,12,13,10,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,13,11,10,11,11,13,13,9,10,10,13,13,10,11,11,13,13,10,11,11,14,13,12,11,13,12,15,12,13,13,15,15,9,10,10,12,13,10,11,10,13,13,10,11,11,13,13,12,13,11,15,13,12,13,13,15,15,5,7,7,9,10,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,10,10,11,12,12,6,8,8,10,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,7,8,8,10,11,8,9,9,11,11,8,9,8,11,11,10,11,11,13,13,10,11,11,13,12,9,10,10,13,12,10,11,11,14,13,10,10,11,13,13,12,13,13,15,15,12,11,13,12,14,9,10,10,12,13,10,11,11,13,14,10,11,11,13,13,12,13,13,15,15,12,13,12,15,12,8,9,9,12,12,9,11,10,13,13,9,10,10,13,13,12,13,13,15,15,12,12,12,14,14,9,10,10,13,13,10,11,11,13,14,10,11,11,14,12,13,13,14,14,16,12,13,13,15,14,9,10,10,13,13,10,11,10,14,13,10,11,11,13,14,12,14,13,16,14,13,13,13,14,15,11,13,12,15,14,11,12,13,14,15,12,13,13,16,15,14,12,15,12,16,14,15,15,17,16,11,12,12,14,15,11,13,11,15,14,12,13,13,15,16,13,15,12,17,13,14,15,15,16,16,8,9,9,12,12,9,10,10,13,13,9,10,10,13,13,12,13,12,14,14,12,13,13,15,15,9,10,10,13,13,10,11,11,14,13,10,10,11,13,14,12,13,13,15,14,12,12,14,14,16,9,10,10,13,13,10,11,11,13,14,10,11,11,14,13,13,13,13,15,15,13,14,13,16,14,11,12,12,14,14,12,13,13,16,15,11,12,13,14,15,14,15,15,16,16,14,13,15,13,17,11,12,12,14,15,12,13,13,15,16,11,13,12,15,15,14,15,14,16,16,14,15,12,17,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,7,8,5,7,7,9,9,5,7,7,9,9,8,9,9,12,11,8,9,9,11,12,5,7,7,10,10,7,9,9,11,11,7,9,9,10,11,10,11,11,13,13,9,10,11,12,13,5,7,7,10,10,7,9,9,11,10,7,9,9,11,11,9,11,10,13,13,10,11,11,13,13,8,10,10,14,13,10,11,11,15,14,9,11,11,15,14,13,14,13,16,14,12,13,13,15,16,8,10,10,13,14,9,11,11,14,15,10,11,11,14,15,12,13,13,15,15,12,13,14,15,16,5,7,7,10,10,7,9,9,11,11,7,9,9,11,12,10,11,11,14,13,10,11,11,14,14,7,9,9,12,12,9,11,11,13,13,9,11,11,13,13,12,13,12,14,14,11,12,13,15,15,7,9,9,12,12,8,11,10,13,12,9,11,11,13,13,11,13,12,15,13,11,13,13,15,16,9,12,11,15,15,11,12,12,16,15,11,12,13,16,16,13,14,15,16,15,13,15,15,17,17,9,11,11,14,15,10,12,12,15,15,11,13,12,15,16,13,15,14,16,16,13,15,15,17,19,5,7,7,10,10,7,9,9,12,11,7,9,9,11,11,10,11,11,14,14,10,11,11,13,14,7,9,9,12,12,9,11,11,13,13,9,10,11,12,13,11,13,12,16,15,11,12,12,14,15,7,9,9,12,12,9,11,11,13,13,9,11,11,13,12,11,13,12,15,16,12,13,13,15,14,9,11,11,15,14,11,13,12,16,15,10,11,12,15,15,13,14,14,18,17,13,14,14,15,17,10,11,11,14,15,11,13,12,15,17,11,13,12,15,16,13,15,14,18,17,14,15,15,16,18,7,10,10,14,14,10,12,12,15,15,10,12,12,15,15,14,15,15,18,17,13,15,15,16,16,9,11,11,16,15,11,13,13,16,18,11,13,13,16,16,15,16,16,0,0,14,15,16,18,17,9,11,11,15,15,10,13,12,17,16,11,12,13,16,17,14,15,16,19,19,14,15,15,0,20,12,14,14,0,0,13,14,16,19,18,13,15,16,20,17,16,18,0,0,0,15,16,17,18,19,11,14,14,0,19,12,15,14,17,17,13,15,15,0,0,16,17,15,20,19,15,17,16,19,0,8,10,10,14,15,10,12,11,15,15,10,11,12,16,15,13,14,14,19,17,14,15,15,0,0,9,11,11,16,15,11,13,13,17,16,10,12,13,16,17,14,15,15,18,18,14,15,16,20,19,9,12,12,0,15,11,13,13,16,17,11,13,13,19,17,14,16,16,18,17,15,16,16,17,19,11,14,14,18,18,13,14,15,0,0,12,14,15,19,18,15,16,19,0,19,15,16,19,19,17,12,14,14,16,19,13,15,15,0,17,13,15,14,18,18,15,16,15,0,18,16,17,17,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,6,6,5,6,6,5,6,6,7,8,8,6,8,8,5,6,6,6,8,7,7,8,8,5,6,6,7,8,8,6,8,8,6,8,8,8,9,10,8,10,10,6,8,8,7,10,8,8,10,10,5,6,6,6,8,8,7,8,8,6,8,8,8,10,10,8,8,10,6,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,11,11,8,10,11,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,11,11,11,13,14,11,13,13,7,11,11,10,13,12,11,14,14,4,8,8,8,11,11,8,11,11,8,11,11,11,14,13,10,12,13,8,11,11,11,13,13,11,13,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,13,15,17,17,15,15,12,17,11,9,7,10,10,9,12,17,10,6,3,6,5,7,10,17,15,10,6,9,8,9,11,17,15,8,4,7,3,5,9,16,16,10,5,8,4,5,8,16,13,11,5,8,3,3,5,14,13,12,7,10,5,5,7,14,2,0,0,0,64,0,0,0,152,118,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,120,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,160,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,200,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,240,107,2,0,0,0,0,0,24,108,2,0,64,108,2,0,0,0,0,0,0,0,0,0,104,108,2,0,144,108,2,0,184,108,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,16,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,13,10,17,11,11,15,7,2,4,5,8,7,9,16,13,4,3,5,6,8,11,20,10,4,5,5,7,6,8,18,15,7,6,7,8,10,14,20,10,6,7,6,9,7,8,17,9,8,10,8,10,5,4,11,12,17,19,14,16,10,7,12,4,0,0,0,81,0,0,0,48,118,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,136,118,2,0,0,0,0,0,4,0,0,0,81,0,0,0,200,117,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,32,118,2,0,0,0,0,0,4,0,0,0,113,2,0,0,56,115,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,176,117,2,0,0,0,0,0,4,0,0,0,113,2,0,0,168,112,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,32,115,2,0,0,0,0,0,2,0,0,0,81,0,0,0,40,112,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,112,2,0,0,0,0,0,2,0,0,0,169,0,0,0,64,111,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,240,111,2,0,0,0,0,0,2,0,0,0,25,0,0,0,8,111,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,40,111,2,0,0,0,0,0,2,0,0,0,49,0,0,0,176,110,2,0,1,0,0,0,0,176,31,225,0,32,245,96,3,0,0,0,0,0,0,0,232,110,2,0,0,0,0,0,2,0,0,0,169,0,0,0,200,109,2,0,1,0,0,0,0,128,211,224,0,0,122,96,4,0,0,0,0,0,0,0,120,110,2,0,0,0,0,0,2,0,0,0,169,0,0,0,224,108,2,0,1,0,0,0,0,0,88,224,0,0,16,96,4,0,0,0,0,0,0,0,144,109,2,0,0,0,0,0,2,5,4,6,6,7,7,8,8,8,8,9,8,5,5,6,7,7,8,8,8,8,9,9,9,9,5,6,5,7,7,8,8,8,8,9,9,9,9,6,7,7,8,8,8,8,9,8,9,9,9,9,6,7,7,8,7,8,8,9,9,9,9,9,9,7,8,8,8,8,9,9,9,9,9,9,9,9,7,8,8,9,8,9,8,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,9,9,10,10,8,8,9,9,9,9,9,9,9,9,10,9,10,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,10,9,9,10,10,9,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,6,6,6,6,7,7,8,8,9,9,5,7,7,8,7,7,7,9,8,10,9,10,11,5,7,7,8,8,7,7,8,9,10,10,11,11,6,8,8,9,9,9,9,11,10,12,12,15,12,6,8,8,9,9,9,9,11,11,12,11,14,12,7,8,8,10,10,12,12,13,13,13,15,13,13,7,8,8,10,10,11,11,13,12,14,15,15,15,9,10,10,11,12,13,13,14,15,14,15,14,15,8,10,10,12,12,14,14,15,14,14,15,15,14,10,12,12,14,14,15,14,15,15,15,14,15,15,10,12,12,13,14,15,14,15,15,14,15,15,15,12,15,13,15,14,15,15,15,15,15,15,15,15,13,13,15,15,15,15,15,15,15,15,15,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,5,5,4,5,5,5,5,5,6,6,6,6,5,6,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,9,11,10,14,13,4,6,5,8,8,9,9,11,10,11,11,14,14,4,5,6,8,8,9,9,10,10,11,11,14,14,6,8,8,9,9,10,10,11,11,12,12,16,15,7,8,8,9,9,10,10,11,11,12,12,15,15,9,10,10,10,10,11,11,12,12,12,12,15,15,9,10,9,10,11,11,11,12,12,12,13,15,15,10,10,11,11,11,12,12,13,12,13,13,16,15,10,11,11,11,11,12,12,13,12,13,13,16,17,11,11,12,12,12,13,13,13,14,14,15,17,17,11,11,12,12,12,13,13,13,14,14,14,16,18,14,15,15,15,15,16,16,16,16,17,18,0,0,14,15,15,15,15,17,16,17,18,17,17,18,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,8,8,8,9,9,4,6,6,8,8,8,8,9,9,7,8,8,9,9,9,9,11,10,7,8,8,9,9,9,9,10,10,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,9,9,10,10,11,11,12,12,9,9,9,10,11,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,9,9,5,6,6,9,9,5,6,6,9,9,9,10,9,12,12,9,9,10,12,12,5,7,7,10,10,7,7,8,10,10,6,7,8,10,10,10,10,10,11,13,10,9,10,12,13,5,7,7,10,10,6,8,7,10,10,7,8,7,10,10,9,10,10,12,12,10,10,10,13,11,9,10,10,13,13,10,11,10,13,13,10,10,10,13,13,12,12,13,14,14,12,12,13,14,14,9,10,10,13,13,10,10,10,13,13,10,10,10,13,13,12,13,12,15,14,12,13,12,15,15,5,7,6,10,10,7,8,8,10,10,7,8,8,10,10,10,11,10,13,13,10,10,10,12,12,7,8,8,11,10,8,8,9,10,11,8,9,9,11,11,11,10,11,11,14,11,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,14,11,10,11,11,13,13,10,11,11,14,13,10,10,11,14,13,10,11,11,14,14,12,11,13,12,16,13,14,14,15,15,10,10,11,13,14,10,11,10,14,13,10,11,11,14,14,12,13,12,15,13,13,13,14,15,16,5,7,7,10,10,7,8,8,10,10,7,8,8,10,10,10,10,10,13,13,10,10,11,12,13,6,8,8,11,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,6,8,8,10,11,8,9,9,11,11,8,9,8,12,10,10,11,11,13,13,10,11,10,14,11,10,10,10,14,13,10,11,11,14,13,10,10,11,13,13,12,14,14,16,16,12,12,13,13,15,10,11,11,13,14,10,11,11,14,15,10,11,10,13,13,13,14,13,16,16,12,13,11,15,12,9,10,10,13,13,10,11,11,14,13,10,10,11,13,14,13,14,13,16,16,13,13,13,15,16,9,10,10,13,13,10,10,11,13,14,10,11,11,15,13,13,13,14,14,18,13,13,14,16,15,9,10,10,13,14,10,11,10,14,13,10,11,11,13,14,13,14,13,16,15,13,13,14,15,16,12,13,12,16,14,11,11,13,15,15,13,14,13,16,15,15,12,16,12,17,14,15,15,17,17,12,13,13,14,16,11,13,11,16,15,12,13,14,15,16,14,15,13,0,14,14,16,16,0,0,9,10,10,13,13,10,11,10,14,14,10,11,11,13,13,12,13,13,14,16,13,14,14,16,16,9,10,10,14,14,11,11,11,14,13,10,10,11,14,14,13,13,13,16,16,13,13,14,14,17,9,10,10,13,14,10,11,11,13,15,10,11,10,14,14,13,13,13,14,17,13,14,13,17,14,12,13,13,16,14,13,14,13,16,15,12,12,13,15,16,15,15,16,18,16,15,13,15,14,0,12,12,13,14,16,13,13,14,15,16,11,12,11,16,14,15,16,16,17,17,14,15,12,17,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,8,8,5,8,7,9,9,5,7,8,9,9,9,10,9,12,12,9,9,10,12,12,6,8,8,11,10,8,10,10,11,11,8,9,10,11,11,10,11,11,14,13,10,11,11,13,13,5,8,8,10,10,8,10,10,11,11,8,10,10,11,11,10,11,11,13,13,10,11,11,13,13,9,11,11,15,14,10,12,12,15,14,10,12,11,15,14,13,14,14,16,16,12,14,13,17,15,9,11,11,14,15,10,11,12,14,16,10,11,12,14,16,12,13,14,16,16,13,13,15,15,18,5,8,8,11,11,8,10,10,12,12,8,10,10,12,13,11,12,12,14,14,11,12,12,15,15,8,10,10,13,13,10,12,12,13,13,10,12,12,14,14,12,13,13,15,15,12,13,13,16,16,7,10,10,12,12,10,12,11,13,13,10,12,12,13,14,12,13,12,15,14,12,13,13,16,16,10,12,12,17,16,12,13,13,16,15,11,13,13,17,17,15,15,15,16,17,14,15,15,19,19,10,12,12,15,16,11,13,12,15,18,11,13,13,16,16,14,15,15,17,17,14,15,15,17,19,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,16,15,11,12,12,14,15,7,10,10,13,13,10,12,12,14,13,10,11,12,13,13,12,13,13,16,16,12,12,13,15,15,8,10,10,13,13,10,12,12,14,14,10,12,12,13,13,12,13,13,16,16,12,13,13,15,15,10,12,12,16,15,11,13,13,17,16,11,12,13,16,15,13,15,15,19,17,14,15,14,17,16,10,12,12,16,16,11,13,13,16,17,12,13,13,15,17,14,15,15,17,19,14,15,15,17,17,8,11,11,16,16,10,13,12,17,17,10,12,13,16,16,15,17,16,20,19,14,15,17,18,19,9,12,12,16,17,11,13,14,17,18,11,13,13,19,18,16,17,18,19,19,15,16,16,19,19,9,12,12,16,17,11,14,13,18,17,11,13,13,17,17,16,17,16,20,19,14,16,16,18,18,12,15,15,19,17,14,15,16,0,20,13,15,16,20,17,18,16,20,0,0,15,16,19,20,0,12,15,14,18,19,13,16,15,20,19,13,16,15,20,18,17,18,17,0,20,16,17,16,0,0,8,11,11,16,15,10,12,12,17,17,10,13,13,17,16,14,16,15,18,20,15,16,16,19,19,9,12,12,16,16,11,13,13,17,16,11,13,14,17,18,15,15,16,20,20,16,16,17,19,19,9,13,12,16,17,11,14,13,17,17,11,14,14,18,17,14,16,15,18,19,16,17,18,18,19,12,14,15,19,18,13,15,16,18,0,13,14,15,0,0,16,16,17,20,0,17,17,20,20,0,12,15,15,19,20,13,15,15,0,0,14,16,15,0,0,15,18,16,0,0,17,18,16,0,19,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,7,8,8,6,8,8,5,7,7,6,8,8,7,8,8,4,7,7,7,8,8,7,8,8,7,8,8,8,9,10,8,10,10,6,8,8,8,10,8,8,10,10,5,7,7,7,8,8,7,8,8,6,8,8,8,10,10,8,8,10,6,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,11,11,8,10,10,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,12,11,11,13,13,11,13,14,7,11,11,10,13,12,11,13,14,4,8,8,8,11,11,8,11,12,8,11,11,11,13,13,10,12,13,8,11,11,11,14,13,11,14,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,12,13,14,13,17,12,15,17,5,5,6,10,10,11,15,16,4,3,3,7,5,7,10,16,7,7,7,10,9,11,12,16,6,5,5,9,5,6,10,16,8,7,7,9,6,7,9,16,11,7,3,6,4,5,8,16,12,9,4,8,5,7,9,16,2,0,0,0,64,0,0,0,168,133,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,120,2,0,0,0,0,0,0,0,0,0,0,0,0,0,80,120,2,0,0,0,0,0,0,0,0,0,0,0,0,0,120,120,2,0,0,0,0,0,0,0,0,0,0,0,0,0,160,120,2,0,0,0,0,0,0,0,0,0,0,0,0,0,200,120,2,0,0,0,0,0,240,120,2,0,24,121,2,0,0,0,0,0,0,0,0,0,64,121,2,0,104,121,2,0,144,121,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,232,119,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,13,10,17,11,11,15,7,2,4,5,8,7,9,16,13,4,3,5,6,8,11,20,10,4,5,5,7,6,8,18,15,7,6,7,8,10,14,20,10,6,7,6,9,7,8,17,9,8,10,8,10,5,4,11,12,17,19,14,16,10,7,12,4,0,0,0,81,0,0,0,64,133,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,152,133,2,0,0,0,0,0,4,0,0,0,81,0,0,0,216,132,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,48,133,2,0,0,0,0,0,4,0,0,0,113,2,0,0,72,130,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,132,2,0,0,0,0,0,4,0,0,0,113,2,0,0,184,127,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,48,130,2,0,0,0,0,0,2,0,0,0,81,0,0,0,56,127,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,144,127,2,0,0,0,0,0,2,0,0,0,169,0,0,0,80,126,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,0,127,2,0,0,0,0,0,2,0,0,0,25,0,0,0,24,126,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,126,2,0,0,0,0,0,4,0,0,0,113,2,0,0,136,123,2,0,1,0,0,0,0,32,21,225,0,32,245,96,3,0,0,0,0,0,0,0,0,126,2,0,0,0,0,0,2,0,0,0,169,0,0,0,160,122,2,0,1,0,0,0,0,128,211,224,0,0,122,96,4,0,0,0,0,0,0,0,80,123,2,0,0,0,0,0,2,0,0,0,169,0,0,0,184,121,2,0,1,0,0,0,0,0,88,224,0,0,16,96,4,0,0,0,0,0,0,0,104,122,2,0,0,0,0,0,2,5,4,6,6,7,7,8,8,8,8,9,8,5,5,6,7,7,8,8,8,8,9,9,9,9,5,6,5,7,7,8,8,8,8,9,9,9,9,6,7,7,8,8,8,8,9,8,9,9,9,9,6,7,7,8,7,8,8,9,9,9,9,9,9,7,8,8,8,8,9,9,9,9,9,9,9,9,7,8,8,9,8,9,8,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,9,9,10,10,8,8,9,9,9,9,9,9,9,9,10,9,10,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,10,9,9,10,10,9,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,6,6,6,6,7,7,8,8,9,9,5,7,7,8,7,7,7,9,8,10,9,10,11,5,7,7,8,8,7,7,8,9,10,10,11,11,6,8,8,9,9,9,9,11,10,12,12,15,12,6,8,8,9,9,9,9,11,11,12,11,14,12,7,8,8,10,10,12,12,13,13,13,15,13,13,7,8,8,10,10,11,11,13,12,14,15,15,15,9,10,10,11,12,13,13,14,15,14,15,14,15,8,10,10,12,12,14,14,15,14,14,15,15,14,10,12,12,14,14,15,14,15,15,15,14,15,15,10,12,12,13,14,15,14,15,15,14,15,15,15,12,15,13,15,14,15,15,15,15,15,15,15,15,13,13,15,15,15,15,15,15,15,15,15,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,11,11,9,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,9,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,5,5,4,5,5,5,5,5,6,6,6,6,5,6,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,9,11,10,14,13,4,6,5,8,8,9,9,11,10,11,11,14,14,4,5,6,8,8,9,9,10,10,11,11,14,14,6,8,8,9,9,10,10,11,11,12,12,16,15,7,8,8,9,9,10,10,11,11,12,12,15,15,9,10,10,10,10,11,11,12,12,12,12,15,15,9,10,9,10,11,11,11,12,12,12,13,15,15,10,10,11,11,11,12,12,13,12,13,13,16,15,10,11,11,11,11,12,12,13,12,13,13,16,17,11,11,12,12,12,13,13,13,14,14,15,17,17,11,11,12,12,12,13,13,13,14,14,14,16,18,14,15,15,15,15,16,16,16,16,17,18,0,0,14,15,15,15,15,17,16,17,18,17,17,18,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,8,8,8,9,9,4,6,6,8,8,8,8,9,9,7,8,8,9,9,9,9,11,10,7,8,8,9,9,9,9,10,10,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,9,9,10,10,11,11,12,12,9,9,9,10,11,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,9,9,5,6,6,9,9,5,6,6,9,9,9,10,9,12,12,9,9,10,12,12,5,7,7,10,10,7,7,8,10,10,6,7,8,10,10,10,10,10,11,13,10,9,10,12,13,5,7,7,10,10,6,8,7,10,10,7,8,7,10,10,9,10,10,12,12,10,10,10,13,11,9,10,10,13,13,10,11,10,13,13,10,10,10,13,13,12,12,13,14,14,12,12,13,14,14,9,10,10,13,13,10,10,10,13,13,10,10,10,13,13,12,13,12,15,14,12,13,12,15,15,5,7,6,10,10,7,8,8,10,10,7,8,8,10,10,10,11,10,13,13,10,10,10,12,12,7,8,8,11,10,8,8,9,10,11,8,9,9,11,11,11,10,11,11,14,11,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,14,11,10,11,11,13,13,10,11,11,14,13,10,10,11,14,13,10,11,11,14,14,12,11,13,12,16,13,14,14,15,15,10,10,11,13,14,10,11,10,14,13,10,11,11,14,14,12,13,12,15,13,13,13,14,15,16,5,7,7,10,10,7,8,8,10,10,7,8,8,10,10,10,10,10,13,13,10,10,11,12,13,6,8,8,11,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,6,8,8,10,11,8,9,9,11,11,8,9,8,12,10,10,11,11,13,13,10,11,10,14,11,10,10,10,14,13,10,11,11,14,13,10,10,11,13,13,12,14,14,16,16,12,12,13,13,15,10,11,11,13,14,10,11,11,14,15,10,11,10,13,13,13,14,13,16,16,12,13,11,15,12,9,10,10,13,13,10,11,11,14,13,10,10,11,13,14,13,14,13,16,16,13,13,13,15,16,9,10,10,13,13,10,10,11,13,14,10,11,11,15,13,13,13,14,14,18,13,13,14,16,15,9,10,10,13,14,10,11,10,14,13,10,11,11,13,14,13,14,13,16,15,13,13,14,15,16,12,13,12,16,14,11,11,13,15,15,13,14,13,16,15,15,12,16,12,17,14,15,15,17,17,12,13,13,14,16,11,13,11,16,15,12,13,14,15,16,14,15,13,0,14,14,16,16,0,0,9,10,10,13,13,10,11,10,14,14,10,11,11,13,13,12,13,13,14,16,13,14,14,16,16,9,10,10,14,14,11,11,11,14,13,10,10,11,14,14,13,13,13,16,16,13,13,14,14,17,9,10,10,13,14,10,11,11,13,15,10,11,10,14,14,13,13,13,14,17,13,14,13,17,14,12,13,13,16,14,13,14,13,16,15,12,12,13,15,16,15,15,16,18,16,15,13,15,14,0,12,12,13,14,16,13,13,14,15,16,11,12,11,16,14,15,16,16,17,17,14,15,12,17,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,8,8,5,8,7,9,9,5,7,8,9,9,9,10,9,12,12,9,9,10,12,12,6,8,8,11,10,8,10,10,11,11,8,9,10,11,11,10,11,11,14,13,10,11,11,13,13,5,8,8,10,10,8,10,10,11,11,8,10,10,11,11,10,11,11,13,13,10,11,11,13,13,9,11,11,15,14,10,12,12,15,14,10,12,11,15,14,13,14,14,16,16,12,14,13,17,15,9,11,11,14,15,10,11,12,14,16,10,11,12,14,16,12,13,14,16,16,13,13,15,15,18,5,8,8,11,11,8,10,10,12,12,8,10,10,12,13,11,12,12,14,14,11,12,12,15,15,8,10,10,13,13,10,12,12,13,13,10,12,12,14,14,12,13,13,15,15,12,13,13,16,16,7,10,10,12,12,10,12,11,13,13,10,12,12,13,14,12,13,12,15,14,12,13,13,16,16,10,12,12,17,16,12,13,13,16,15,11,13,13,17,17,15,15,15,16,17,14,15,15,19,19,10,12,12,15,16,11,13,12,15,18,11,13,13,16,16,14,15,15,17,17,14,15,15,17,19,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,16,15,11,12,12,14,15,7,10,10,13,13,10,12,12,14,13,10,11,12,13,13,12,13,13,16,16,12,12,13,15,15,8,10,10,13,13,10,12,12,14,14,10,12,12,13,13,12,13,13,16,16,12,13,13,15,15,10,12,12,16,15,11,13,13,17,16,11,12,13,16,15,13,15,15,19,17,14,15,14,17,16,10,12,12,16,16,11,13,13,16,17,12,13,13,15,17,14,15,15,17,19,14,15,15,17,17,8,11,11,16,16,10,13,12,17,17,10,12,13,16,16,15,17,16,20,19,14,15,17,18,19,9,12,12,16,17,11,13,14,17,18,11,13,13,19,18,16,17,18,19,19,15,16,16,19,19,9,12,12,16,17,11,14,13,18,17,11,13,13,17,17,16,17,16,20,19,14,16,16,18,18,12,15,15,19,17,14,15,16,0,20,13,15,16,20,17,18,16,20,0,0,15,16,19,20,0,12,15,14,18,19,13,16,15,20,19,13,16,15,20,18,17,18,17,0,20,16,17,16,0,0,8,11,11,16,15,10,12,12,17,17,10,13,13,17,16,14,16,15,18,20,15,16,16,19,19,9,12,12,16,16,11,13,13,17,16,11,13,14,17,18,15,15,16,20,20,16,16,17,19,19,9,13,12,16,17,11,14,13,17,17,11,14,14,18,17,14,16,15,18,19,16,17,18,18,19,12,14,15,19,18,13,15,16,18,0,13,14,15,0,0,16,16,17,20,0,17,17,20,20,0,12,15,15,19,20,13,15,15,0,0,14,16,15,0,0,15,18,16,0,0,17,18,16,0,19,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,7,8,8,6,8,8,5,7,7,6,8,8,7,8,8,4,7,7,7,8,8,7,8,8,7,8,8,8,9,10,8,10,10,6,8,8,8,10,8,8,10,10,5,7,7,7,8,8,7,8,8,6,8,8,8,10,10,8,8,10,6,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,11,11,8,10,10,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,12,11,11,13,13,11,13,14,7,11,11,10,13,12,11,13,14,4,8,8,8,11,11,8,11,12,8,11,11,11,13,13,10,12,13,8,11,11,11,14,13,11,14,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,12,13,14,13,17,12,15,17,5,5,6,10,10,11,15,16,4,3,3,7,5,7,10,16,7,7,7,10,9,11,12,16,6,5,5,9,5,6,10,16,8,7,7,9,6,7,9,16,11,7,3,6,4,5,8,16,12,9,4,8,5,7,9,16],"i8",L3,F.GLOBAL_BASE+155104),d3([2,0,0,0,64,0,0,0,184,148,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,135,2,0,0,0,0,0,0,0,0,0,0,0,0,0,96,135,2,0,0,0,0,0,0,0,0,0,0,0,0,0,136,135,2,0,0,0,0,0,0,0,0,0,0,0,0,0,176,135,2,0,0,0,0,0,0,0,0,0,0,0,0,0,216,135,2,0,0,0,0,0,0,136,2,0,40,136,2,0,0,0,0,0,0,0,0,0,80,136,2,0,120,136,2,0,160,136,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,248,134,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,12,9,14,9,9,19,6,1,5,5,8,7,9,19,12,4,4,7,7,9,11,18,9,5,6,6,8,7,8,17,14,8,7,8,8,10,12,18,9,6,8,6,8,6,8,18,9,8,11,8,11,7,5,15,16,18,18,18,17,15,11,18,4,0,0,0,81,0,0,0,80,148,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,148,2,0,0,0,0,0,4,0,0,0,81,0,0,0,232,147,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,64,148,2,0,0,0,0,0,4,0,0,0,113,2,0,0,88,145,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,147,2,0,0,0,0,0,4,0,0,0,113,2,0,0,200,142,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,145,2,0,0,0,0,0,2,0,0,0,81,0,0,0,72,142,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,160,142,2,0,0,0,0,0,2,0,0,0,169,0,0,0,96,141,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,16,142,2,0,0,0,0,0,2,0,0,0,25,0,0,0,40,141,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,141,2,0,0,0,0,0,4,0,0,0,113,2,0,0,152,138,2,0,1,0,0,0,0,32,21,225,0,32,245,96,3,0,0,0,0,0,0,0,16,141,2,0,0,0,0,0,2,0,0,0,169,0,0,0,176,137,2,0,1,0,0,0,0,128,211,224,0,0,122,96,4,0,0,0,0,0,0,0,96,138,2,0,0,0,0,0,2,0,0,0,169,0,0,0,200,136,2,0,1,0,0,0,0,0,88,224,0,0,16,96,4,0,0,0,0,0,0,0,120,137,2,0,0,0,0,0,3,4,4,6,6,7,7,8,8,9,9,9,8,4,5,5,6,6,8,8,9,8,9,9,9,9,4,5,5,7,6,8,8,8,8,9,8,9,8,6,7,7,7,8,8,8,9,9,9,9,9,9,6,7,7,7,7,8,8,9,9,9,9,9,9,7,8,8,8,8,9,8,9,9,10,9,9,10,7,8,8,8,8,9,9,9,9,9,9,10,10,8,9,9,9,9,9,9,9,9,10,10,9,10,8,9,9,9,9,9,9,9,9,9,9,10,10,9,9,9,10,9,9,10,9,9,10,10,10,10,9,9,9,9,9,9,9,10,9,10,10,10,10,9,9,9,10,9,9,10,10,9,10,10,10,10,9,9,9,10,9,9,9,10,10,10,10,10,10,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,6,6,6,6,9,8,9,8,8,8,5,7,7,7,7,8,8,8,10,8,10,8,9,5,7,7,8,7,7,8,10,10,11,10,12,11,7,8,8,9,9,9,10,11,11,11,11,11,11,7,8,8,8,9,9,9,10,10,10,11,11,12,7,8,8,9,9,10,11,11,12,11,12,11,11,7,8,8,9,9,10,10,11,11,11,12,12,11,8,10,10,10,10,11,11,14,11,12,12,12,13,9,10,10,10,10,12,11,14,11,14,11,12,13,10,11,11,11,11,13,11,14,14,13,13,13,14,11,11,11,12,11,12,12,12,13,14,14,13,14,12,11,12,12,12,12,13,13,13,14,13,14,14,11,12,12,14,12,13,13,12,13,13,14,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,5,3,11,11,11,11,11,11,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,5,5,4,5,5,6,5,5,6,5,6,6,5,6,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,10,11,11,15,15,4,5,5,8,8,9,9,11,11,12,12,16,16,4,5,6,8,8,9,9,11,11,12,12,14,14,7,8,8,9,9,10,10,11,12,13,13,16,17,7,8,8,9,9,10,10,12,12,12,13,15,15,9,10,10,10,10,11,11,12,12,13,13,15,16,9,9,9,10,10,11,11,13,12,13,13,17,17,10,11,11,11,12,12,12,13,13,14,15,0,18,10,11,11,12,12,12,13,14,13,14,14,17,16,11,12,12,13,13,14,14,14,14,15,16,17,16,11,12,12,13,13,14,14,14,14,15,15,17,17,14,15,15,16,16,16,17,17,16,0,17,0,18,14,15,15,16,16,0,15,18,18,0,16,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,8,8,9,9,4,6,5,8,7,8,8,10,9,4,6,6,8,8,8,8,10,10,7,8,7,9,9,9,9,11,10,7,8,8,9,9,9,9,10,11,8,8,8,9,9,10,10,11,11,8,8,8,9,9,10,10,11,11,9,10,10,11,10,11,11,12,12,9,10,10,10,11,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,9,9,5,6,6,10,9,5,6,6,9,10,10,10,10,12,11,9,10,10,12,12,5,7,7,10,10,7,7,8,10,11,7,7,8,10,11,10,10,11,11,13,10,10,11,11,13,6,7,7,10,10,7,8,7,11,10,7,8,7,10,10,10,11,9,13,11,10,11,10,13,11,10,10,10,14,13,10,11,11,14,13,10,10,11,13,14,12,12,13,15,15,12,12,13,13,14,10,10,10,12,13,10,11,10,13,13,10,11,11,13,13,12,13,12,14,13,12,13,13,14,13,5,7,7,10,10,7,8,8,11,10,7,8,8,10,10,11,11,11,13,13,10,11,11,12,12,7,8,8,11,11,7,8,9,10,12,8,9,9,11,11,11,10,12,11,14,11,11,12,13,13,6,8,8,10,11,7,9,7,12,10,8,9,10,11,12,10,12,10,14,11,11,12,11,13,13,10,11,11,14,14,10,10,11,13,14,11,12,12,15,13,12,11,14,12,16,12,13,14,15,16,10,10,11,13,14,10,11,10,14,12,11,12,12,13,14,12,13,11,15,12,14,14,14,15,15,5,7,7,10,10,7,8,8,10,10,7,8,8,10,11,10,11,10,12,12,10,11,11,12,13,6,8,8,11,11,8,9,9,12,11,7,7,9,10,12,11,11,11,12,13,11,10,12,11,15,7,8,8,11,11,8,9,9,11,11,7,9,8,12,10,11,12,11,13,12,11,12,10,15,11,10,11,10,14,12,11,12,11,14,13,10,10,11,13,14,13,13,13,17,15,12,11,14,12,15,10,10,11,13,14,11,12,12,14,14,10,11,10,14,13,13,14,13,16,17,12,14,11,16,12,9,10,10,14,13,10,11,10,14,14,10,11,11,13,13,13,14,14,16,15,12,13,13,14,14,9,11,10,14,13,10,10,12,13,14,11,12,11,14,13,13,14,14,14,15,13,14,14,15,15,9,10,11,13,14,10,11,10,15,13,11,11,12,12,15,13,14,12,15,14,13,13,14,14,15,12,13,12,16,14,11,11,12,15,14,13,15,13,16,14,13,12,15,12,17,15,16,15,16,16,12,12,13,13,15,11,13,11,15,14,13,13,14,15,17,13,14,12,0,13,14,15,14,15,0,9,10,10,13,13,10,11,11,13,13,10,11,11,13,13,12,13,12,14,14,13,14,14,15,17,9,10,10,13,13,11,12,11,15,12,10,10,11,13,16,13,14,13,15,14,13,13,14,15,16,10,10,11,13,14,11,11,12,13,14,10,12,11,14,14,13,13,13,14,15,13,15,13,16,15,12,13,12,15,13,12,15,13,15,15,11,11,13,14,15,15,15,15,15,17,13,12,14,13,17,12,12,14,14,15,13,13,14,14,16,11,13,11,16,15,14,16,16,17,0,14,13,11,16,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,8,8,5,8,7,9,9,5,7,8,9,9,9,10,9,12,12,9,9,10,11,12,6,8,8,10,10,8,10,10,11,11,8,9,10,11,11,10,11,11,13,13,10,11,11,12,13,6,8,8,10,10,8,10,9,11,11,8,10,10,11,11,10,11,11,13,12,10,11,11,13,12,9,11,11,15,13,10,12,11,15,13,10,11,11,15,14,12,14,13,16,15,12,13,13,17,16,9,11,11,13,15,10,11,12,14,15,10,11,12,14,15,12,13,13,15,16,12,13,13,16,16,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,14,8,11,10,13,12,10,11,12,12,13,10,12,12,13,13,12,12,13,13,15,11,12,13,15,14,7,10,10,12,12,9,12,11,13,12,10,12,12,13,14,12,13,12,15,13,11,13,12,14,15,10,12,12,16,14,11,12,12,16,15,11,13,12,17,16,13,13,15,15,17,13,15,15,20,17,10,12,12,14,16,11,12,12,15,15,11,13,13,15,18,13,14,13,15,15,13,15,14,16,16,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,15,7,10,10,13,12,10,12,12,14,13,9,10,12,12,13,11,13,13,15,15,11,12,13,13,15,8,10,10,12,13,10,12,12,13,13,10,12,11,13,13,11,13,12,15,15,12,13,12,15,13,10,12,12,16,14,11,12,12,16,15,10,12,12,16,14,14,15,14,18,16,13,13,14,15,16,10,12,12,14,16,11,13,13,16,16,11,13,12,14,16,13,15,15,18,18,13,15,13,16,14,8,11,11,16,16,10,13,13,17,16,10,12,12,16,15,14,16,15,20,17,13,14,14,17,17,9,12,12,16,16,11,13,14,16,17,11,13,13,16,16,15,15,19,18,0,14,15,15,18,18,9,12,12,17,16,11,13,12,17,16,11,12,13,15,17,15,16,15,0,19,14,15,14,19,18,12,14,14,0,16,13,14,14,19,18,13,15,16,17,16,15,15,17,18,0,14,16,16,19,0,12,14,14,16,18,13,15,13,17,18,13,15,14,17,18,15,18,14,18,18,16,17,16,0,17,8,11,11,15,15,10,12,12,16,16,10,13,13,16,16,13,15,14,17,17,14,15,17,17,18,9,12,12,16,15,11,13,13,16,16,11,12,13,17,17,14,14,15,17,17,14,15,16,0,18,9,12,12,16,17,11,13,13,16,17,11,14,13,18,17,14,16,14,17,17,15,17,17,18,18,12,14,14,0,16,13,15,15,19,0,12,13,15,0,0,14,17,16,19,0,16,15,18,18,0,12,14,14,17,0,13,14,14,17,0,13,15,14,0,18,15,16,16,0,18,15,18,15,0,17,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,7,8,8,6,7,9,5,7,7,6,8,7,7,9,8,4,7,7,7,9,8,7,8,8,7,9,8,8,8,10,9,10,10,6,8,8,7,10,8,9,10,10,5,7,7,7,8,8,7,8,9,6,8,8,9,10,10,7,8,10,6,8,9,9,10,10,8,10,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,10,11,8,10,11,5,8,8,8,11,10,8,11,10,4,9,9,8,11,11,8,11,11,8,12,11,10,12,14,11,13,13,7,11,11,10,13,11,11,13,14,4,8,9,8,11,11,8,11,12,7,11,11,11,14,13,10,11,13,8,11,12,11,13,13,10,14,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,12,12,14,12,14,14,14,14,12,6,6,8,9,9,11,14,12,4,2,6,6,7,11,14,13,6,5,7,8,9,11,14,13,8,5,8,6,8,12,14,12,7,7,8,8,8,10,14,12,6,3,4,4,4,7,14,11,7,4,6,6,6,8,14,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,0,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,5,0,0,0,4,0,0,0,3,0,0,0,0,0,128,63,0,0,0,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,160,64,0,0,192,64,0,0,224,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,64,65,0,0,72,65,0,0,80,65,0,0,88,65,0,0,96,65,0,0,104,65,0,0,112,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,4,0,0,0,3,0,0,0,0,0,128,63,0,0,0,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,160,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,64,65,0,0,72,65,0,0,80,65,0,0,88,65,0,0,96,65,0,0,104,65,0,0,112,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,4,0,0,0,3,0,0,0,0,0,128,63,0,0,0,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,160,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,64,64,0,0,128,64,0,0,128,64,0,0,160,64,0,0,160,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,128,64,0,0,128,64,0,0,160,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,2,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,2,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,64,0,0,224,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,32,65,0,0,32,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,200,47,1,0,32,161,2,0,200,47,1,0,96,161,2,0,200,47,1,0,160,161,2,0,200,47,1,0,224,161,2,0,200,47,1,0,32,162,2,0,200,47,1,0,96,162,2,0,200,47,1,0,160,162,2,0,200,47,1,0,224,162,2,0,200,47,1,0,32,163,2,0,200,47,1,0,96,163,2,0,200,47,1,0,160,163,2,0,2,0,0,0,0,0,0,0,32,0,0,0,64,171,3,0,216,86,4,0,0,87,4,0,40,87,4,0,232,87,4,0,2,0,0,0,0,0,0,0,32,0,0,0,64,171,3,0,168,88,4,0,208,88,4,0,40,87,4,0,232,87,4,0,2,0,0,0,0,0,0,0,16,0,0,0,64,171,3,0,248,5,4,0,32,6,4,0,72,6,4,0,8,7,4,0,2,0,0,0,0,0,0,0,32,0,0,0,64,171,3,0,200,7,4,0,240,7,4,0,72,6,4,0,8,7,4,0,2,0,0,0,0,0,0,0,16,0,0,0,64,171,3,0,88,182,3,0,128,182,3,0,168,182,3,0,104,183,3,0,2,0,0,0,0,0,0,0,32,0,0,0,64,171,3,0,40,184,3,0,80,184,3,0,168,182,3,0,104,183,3,0,2,0,0,0,0,0,0,0,16,0,0,0,24,73,1,0,152,128,3,0,152,128,3,0,192,128,3,0,192,128,3,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,128,129,3,0,128,129,3,0,192,128,3,0,192,128,3,0,2,0,0,0,0,0,0,0,16,0,0,0,24,73,1,0,176,85,3,0,176,85,3,0,216,85,3,0,216,85,3,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,152,86,3,0,152,86,3,0,216,85,3,0,216,85,3,0,2,0,0,0,0,0,0,0,16,0,0,0,24,73,1,0,32,42,3,0,32,42,3,0,72,42,3,0,72,42,3,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,8,43,3,0,8,43,3,0,72,42,3,0,72,42,3,0,2,0,0,0,0,0,0,0,16,0,0,0,24,73,1,0,8,254,2,0,8,254,2,0,48,254,2,0,48,254,2,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,240,254,2,0,240,254,2,0,48,254,2,0,48,254,2,0,2,0,0,0,0,0,0,0,16,0,0,0,224,163,2,0,8,235,2,0,8,235,2,0,48,235,2,0,48,235,2,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,240,235,2,0,240,235,2,0,48,235,2,0,48,235,2,0,2,0,0,0,0,0,0,0,16,0,0,0,224,163,2,0,8,216,2,0,8,216,2,0,48,216,2,0,48,216,2,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,240,216,2,0,240,216,2,0,48,216,2,0,48,216,2,0,2,0,0,0,0,0,0,0,16,0,0,0,224,163,2,0,168,195,2,0,168,195,2,0,208,195,2,0,208,195,2,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,144,196,2,0,144,196,2,0,208,195,2,0,208,195,2,0,2,0,0,0,0,0,0,0,16,0,0,0,224,163,2,0,248,174,2,0,248,174,2,0,32,175,2,0,32,175,2,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,224,175,2,0,224,175,2,0,32,175,2,0,32,175,2,0,0,0,0,0,255,255,255,255,255,255,255,255,10,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,F.GLOBAL_BASE+165344),d3([1,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,71,0,0,0,157,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,71,0,0,0,157,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,64,195,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,176,2,0,0,0,0,0,0,0,0,0,0,0,0,0,152,176,2,0,0,0,0,0,0,0,0,0,0,0,0,0,192,176,2,0,0,0,0,0,0,0,0,0,0,0,0,0,232,176,2,0,0,0,0,0,16,177,2,0,56,177,2,0,0,0,0,0,0,0,0,0,96,177,2,0,136,177,2,0,0,0,0,0,0,0,0,0,176,177,2,0,216,177,2,0,0,0,0,0,0,0,0,0,0,178,2,0,40,178,2,0,0,0,0,0,0,0,0,0,80,178,2,0,120,178,2,0,160,178,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,8,176,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,12,14,15,15,15,13,15,15,6,5,8,10,12,12,13,12,14,13,10,6,5,6,8,9,11,11,13,13,13,8,5,4,5,6,8,10,11,13,14,10,7,5,4,5,7,9,11,12,13,11,8,6,5,4,5,7,9,11,12,11,10,8,7,5,4,5,9,10,13,13,11,10,8,6,5,4,7,9,15,14,13,12,10,9,8,7,8,9,12,12,14,13,12,11,10,9,8,9,0,0,0,0,4,0,0,0,81,0,0,0,216,194,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,48,195,2,0,0,0,0,0,4,0,0,0,113,2,0,0,72,192,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,194,2,0,0,0,0,0,2,0,0,0,81,0,0,0,200,191,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,32,192,2,0,0,0,0,0,2,0,0,0,33,1,0,0,88,190,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,128,191,2,0,0,0,0,0,4,0,0,0,81,0,0,0,240,189,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,72,190,2,0,0,0,0,0,2,0,0,0,121,0,0,0,64,189,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,192,189,2,0,0,0,0,0,2,0,0,0,169,0,0,0,88,188,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,8,189,2,0,0,0,0,0,2,0,0,0,25,0,0,0,32,188,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,188,2,0,0,0,0,0,2,0,0,0,169,0,0,0,56,187,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,232,187,2,0,0,0,0,0,2,0,0,0,121,0,0,0,136,186,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,8,187,2,0,0,0,0,0,2,0,0,0,225,0,0,0,96,185,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,72,186,2,0,0,0,0,0,2,0,0,0,185,1,0,0,72,183,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,8,185,2,0,0,0,0,0,2,0,0,0,105,1,0,0,136,181,2,0,1,0,0,0,128,93,176,225,0,24,61,97,5,0,0,0,0,0,0,0,248,182,2,0,0,0,0,0,2,0,0,0,105,1,0,0,200,179,2,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,56,181,2,0,0,0,0,0,1,0,0,0,49,0,0,0,200,178,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,0,179,2,0,0,0,0,0,2,4,4,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,8,7,9,8,9,9,10,10,11,11,11,11,6,5,5,8,8,9,9,9,8,10,9,11,10,12,12,13,12,13,13,5,5,5,8,8,9,9,9,9,10,10,11,11,12,12,13,12,13,13,17,8,8,9,9,9,9,9,9,10,10,12,11,13,12,13,13,13,13,18,8,8,9,9,9,9,9,9,11,11,12,12,13,13,13,13,13,13,17,13,12,9,9,10,10,10,10,11,11,12,12,12,13,13,13,14,14,18,13,12,9,9,10,10,10,10,11,11,12,12,13,13,13,14,14,14,17,18,18,10,10,10,10,11,11,11,12,12,12,14,13,14,13,13,14,18,18,18,10,9,10,9,11,11,12,12,12,12,13,13,15,14,14,14,18,18,16,13,14,10,11,11,11,12,13,13,13,13,14,13,13,14,14,18,18,18,14,12,11,9,11,10,13,12,13,13,13,14,14,14,13,14,18,18,17,18,18,11,12,12,12,13,13,14,13,14,14,13,14,14,14,18,18,18,18,17,12,10,12,9,13,11,13,14,14,14,14,14,15,14,18,18,17,17,18,14,15,12,13,13,13,14,13,14,14,15,14,15,14,18,17,18,18,18,15,15,12,10,14,10,14,14,13,13,14,14,14,14,18,16,18,18,18,18,17,14,14,13,14,14,13,13,14,14,14,15,15,18,18,18,18,17,17,17,14,14,14,12,14,13,14,14,15,14,15,14,18,18,18,18,18,18,18,17,16,13,13,13,14,14,14,14,15,16,15,18,18,18,18,18,18,18,17,17,13,13,13,13,14,13,14,15,15,15,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,4,3,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,4,5,6,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,4,6,6,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,4,6,6,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,7,7,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,10,9,9,9,10,10,10,10,10,10,10,9,9,9,9,9,9,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,9,9,10,9,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,9,9,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,10,10,9,9,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,9,9,9,9,9,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,6,8,8,8,8,9,9,10,10,11,10,6,5,5,7,7,9,9,8,9,10,10,11,11,12,12,6,5,5,7,7,9,9,9,9,10,10,11,11,12,12,21,7,8,8,8,9,9,9,9,10,10,11,11,12,12,21,8,8,8,8,9,9,9,9,10,10,11,11,12,12,21,11,12,9,9,10,10,10,10,10,11,11,12,12,12,21,12,12,9,8,10,10,10,10,11,11,12,12,13,13,21,21,21,9,9,9,9,11,11,11,11,12,12,12,13,21,20,20,9,9,9,9,10,11,11,11,12,12,13,13,20,20,20,13,13,10,10,11,11,12,12,13,13,13,13,20,20,20,13,13,10,10,11,11,12,12,13,13,13,13,20,20,20,20,20,12,12,12,12,12,12,13,13,14,14,20,20,20,20,20,12,12,12,11,13,12,13,13,14,14,20,20,20,20,20,15,16,13,12,13,13,14,13,14,14,20,20,20,20,20,16,15,12,12,13,12,14,13,14,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,5,6,6,6,6,7,7,7,7,7,7,7,6,6,6,6,7,7,7,7,7,7,7,6,6,6,6,7,7,7,7,7,7,8,6,6,6,6,7,7,7,7,7,7,8,8,8,6,6,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,10,10,11,11,6,4,4,6,6,8,8,9,9,10,10,12,12,6,4,5,6,6,8,8,9,9,10,10,12,12,20,6,6,6,6,8,8,9,10,11,11,12,12,20,6,6,6,6,8,8,10,10,11,11,12,12,20,10,10,7,7,9,9,10,10,11,11,12,12,20,11,11,7,7,9,9,10,10,11,11,12,12,20,20,20,9,9,9,9,11,11,12,12,13,13,20,20,20,9,9,9,9,11,11,12,12,13,13,20,20,20,13,13,10,10,11,11,12,13,13,13,20,20,20,13,13,10,10,11,11,12,13,13,13,20,20,20,20,19,12,12,12,12,13,13,14,15,19,19,19,19,19,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,4,4,4,5,5,5,4,4,5,5,5,4,4,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,9,9,5,4,4,6,6,8,8,9,9,9,9,10,10,6,4,4,6,6,8,8,9,9,9,9,10,10,0,6,6,7,7,8,8,9,9,10,10,11,11,0,6,6,7,7,8,8,9,9,10,10,11,11,0,10,10,8,8,9,9,10,10,11,11,12,12,0,11,11,8,8,9,9,10,10,11,11,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,7,7,11,5,5,6,6,7,7,7,7,8,8,11,5,5,6,6,7,7,7,7,8,8,11,5,5,6,6,7,7,8,8,8,8,11,11,11,6,6,7,7,7,8,8,8,11,11,11,6,6,7,7,7,8,8,8,11,11,11,6,6,7,7,7,7,8,8,11,11,11,7,7,7,7,7,7,8,8,11,11,11,10,10,7,7,7,7,8,8,11,11,11,11,11,7,7,7,7,7,7,11,11,11,11,11,7,7,7,7,7,7,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,7,6,9,10,10,10,10,9,4,6,7,9,10,10,10,9,10,5,9,9,9,11,11,10,11,11,7,10,9,11,12,11,12,12,12,7,9,10,11,11,12,12,12,12,6,10,10,10,12,12,10,12,11,7,10,10,11,12,12,11,12,12,7,10,10,11,12,12,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,10,10,0,5,4,5,5,7,7,8,8,8,8,9,9,10,10,11,11,0,5,5,6,6,7,7,8,8,8,8,9,9,10,10,11,11,0,6,5,6,6,7,7,8,8,9,9,10,10,11,11,11,12,0,0,0,6,6,7,7,8,8,9,9,10,10,11,11,12,12,0,0,0,7,7,7,7,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,7,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,3,4,4,5,5,6,6,8,8,0,4,4,5,5,6,7,8,8,0,4,4,5,5,7,7,8,8,0,5,5,6,6,7,7,9,9,0,0,0,6,6,7,7,9,9,0,0,0,7,7,8,8,9,9,0,0,0,7,7,8,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,0,5,5,8,8,0,5,5,8,8,0,7,7,9,9,0,0,0,9,9,6,7,7,9,8,0,8,8,9,9,0,8,7,9,9,0,9,10,10,10,0,0,0,11,10,6,7,7,8,9,0,8,8,9,9,0,7,8,9,9,0,10,9,11,10,0,0,0,10,10,8,9,8,10,10,0,10,10,12,11,0,10,10,11,11,0,12,13,13,13,0,0,0,13,12,8,8,9,10,10,0,10,10,11,12,0,10,10,11,11,0,13,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,7,10,10,0,7,7,10,9,0,7,7,10,10,0,9,9,10,10,0,0,0,10,10,6,7,8,10,10,0,7,7,9,10,0,7,7,10,10,0,9,9,10,10,0,0,0,10,10,8,9,9,11,11,0,10,10,11,11,0,10,10,11,11,0,12,12,12,12,0,0,0,12,12,8,9,10,11,11,0,9,10,11,11,0,10,10,11,11,0,12,12,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,10,10,0,7,7,10,10,0,7,7,10,9,0,9,9,10,10,0,0,0,10,10,6,7,8,10,10,0,7,7,10,10,0,7,7,9,10,0,9,9,10,10,0,0,0,10,10,8,10,9,12,11,0,10,10,12,11,0,10,9,11,11,0,11,12,12,12,0,0,0,12,12,8,9,10,11,12,0,10,10,11,11,0,9,10,11,11,0,12,11,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,9,12,12,0,9,9,12,11,0,9,9,11,11,0,10,10,12,11,0,0,0,11,12,7,9,10,12,12,0,9,9,11,12,0,9,9,11,11,0,10,10,11,12,0,0,0,11,11,9,11,10,13,12,0,10,10,12,12,0,10,10,12,12,0,11,11,12,12,0,0,0,13,12,9,10,11,12,13,0,10,10,12,12,0,10,10,12,12,0,11,12,12,12,0,0,0,12,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,11,10,13,13,0,10,10,12,12,0,10,10,12,12,0,11,12,12,12,0,0,0,12,12,9,10,11,13,13,0,10,10,12,12,0,10,10,12,12,0,12,11,13,12,0,0,0,12,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,5,5,0,5,5,6,8,8,0,9,8,0,9,8,6,8,8,0,8,9,0,8,9,0,0,0,0,0,0,0,0,0,5,8,8,0,7,7,0,8,8,5,8,8,0,7,8,0,8,8,0,0,0,0,0,0,0,0,0,5,9,8,0,8,8,0,7,7,5,8,9,0,8,8,0,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,13,18,16,17,17,19,18,19,19,5,7,10,11,12,12,13,16,17,18,6,6,7,7,9,9,10,14,17,19,8,7,6,5,6,7,9,12,19,17,8,7,7,6,5,6,8,11,15,19,9,8,7,6,5,5,6,8,13,15,11,10,8,8,7,5,4,4,10,14,12,13,11,9,7,6,4,2,6,12,18,16,16,13,8,7,7,5,8,13,16,17,18,15,11,9,9,8,10,13,0,0,0,0,2,0,0,0,100,0,0,0,160,215,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,197,2,0,0,0,0,0,0,0,0,0,0,0,0,0,72,197,2,0,0,0,0,0,0,0,0,0,0,0,0,0,112,197,2,0,0,0,0,0,0,0,0,0,0,0,0,0,152,197,2,0,0,0,0,0,192,197,2,0,232,197,2,0,0,0,0,0,0,0,0,0,16,198,2,0,56,198,2,0,0,0,0,0,0,0,0,0,96,198,2,0,136,198,2,0,0,0,0,0,0,0,0,0,176,198,2,0,216,198,2,0,0,0,0,0,0,0,0,0,0,199,2,0,40,199,2,0,80,199,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,184,196,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,12,13,14,14,14,13,14,14,6,4,5,8,10,10,11,11,14,13,9,5,4,5,7,8,9,10,13,13,12,7,5,4,5,6,8,9,12,13,13,9,6,5,5,5,7,9,11,14,12,10,7,6,5,4,6,7,10,11,12,11,9,8,7,5,5,6,10,10,13,12,10,9,8,6,6,5,8,10,14,13,12,12,11,10,9,7,8,10,12,13,14,14,13,12,11,9,9,10,0,0,0,0,4,0,0,0,81,0,0,0,56,215,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,144,215,2,0,0,0,0,0,4,0,0,0,113,2,0,0,168,212,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,32,215,2,0,0,0,0,0,2,0,0,0,81,0,0,0,40,212,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,212,2,0,0,0,0,0,2,0,0,0,33,1,0,0,184,210,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,211,2,0,0,0,0,0,4,0,0,0,81,0,0,0,80,210,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,168,210,2,0,0,0,0,0,2,0,0,0,121,0,0,0,160,209,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,32,210,2,0,0,0,0,0,2,0,0,0,169,0,0,0,184,208,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,104,209,2,0,0,0,0,0,2,0,0,0,25,0,0,0,128,208,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,208,2,0,0,0,0,0,2,0,0,0,169,0,0,0,152,207,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,72,208,2,0,0,0,0,0,2,0,0,0,121,0,0,0,232,206,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,104,207,2,0,0,0,0,0,2,0,0,0,225,0,0,0,192,205,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,168,206,2,0,0,0,0,0,2,0,0,0,185,1,0,0,168,203,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,104,205,2,0,0,0,0,0,2,0,0,0,33,1,0,0,56,202,2,0,1,0,0,0,0,24,157,225,0,24,61,97,5,0,0,0,0,0,0,0,96,203,2,0,0,0,0,0,2,0,0,0,105,1,0,0,120,200,2,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,232,201,2,0,0,0,0,0,1,0,0,0,49,0,0,0,120,199,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,176,199,2,0,0,0,0,0,2,4,4,4,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,6,7,7,7,7,8,8,9,9,10,10,10,10,11,11,6,6,6,8,8,9,8,8,7,10,8,11,10,12,11,12,12,13,13,5,5,6,8,8,9,9,8,8,10,9,11,11,12,12,13,13,13,13,17,8,8,9,9,9,9,9,9,10,9,12,10,12,12,13,12,13,13,17,9,8,9,9,9,9,9,9,10,10,12,12,12,12,13,13,13,13,17,13,13,9,9,10,10,10,10,11,11,12,11,13,12,13,13,14,15,17,13,13,9,8,10,9,10,10,11,11,12,12,14,13,15,13,14,15,17,17,17,9,10,9,10,11,11,12,12,12,12,13,13,14,14,15,15,17,17,17,9,8,9,8,11,11,12,12,12,12,14,13,14,14,14,15,17,17,17,12,14,9,10,11,11,12,12,14,13,13,14,15,13,15,15,17,17,17,13,11,10,8,11,9,13,12,13,13,13,13,13,14,14,14,17,17,17,17,17,11,12,11,11,13,13,14,13,15,14,13,15,16,15,17,17,17,17,17,11,11,12,8,13,12,14,13,17,14,15,14,15,14,17,17,17,17,17,15,15,12,12,12,12,13,14,14,14,15,14,17,14,17,17,17,17,17,16,17,12,12,13,12,13,13,14,14,14,14,14,14,17,17,17,17,17,17,17,14,14,13,12,13,13,15,15,14,13,15,17,17,17,17,17,17,17,17,13,14,13,13,13,13,14,15,15,15,14,15,17,17,17,17,17,17,17,16,15,13,14,13,13,14,14,15,14,14,16,17,17,17,17,17,17,17,16,16,13,14,13,13,14,14,15,14,15,14,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,4,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,4,7,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,4,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,4,5,5,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,10,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,9,10,10,9,10,10,10,10,9,10,9,10,10,9,10,10,10,10,10,10,10,9,10,10,10,10,10,10,9,9,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,9,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,10,9,10,9,9,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,6,8,8,8,7,9,8,10,10,11,10,6,5,5,7,7,9,9,8,8,10,10,11,11,12,11,6,5,5,7,7,9,9,9,9,10,10,11,11,12,12,20,8,8,8,8,9,9,9,9,10,10,11,11,12,12,20,8,8,8,8,10,9,9,9,10,10,11,11,12,12,20,12,12,9,9,10,10,10,10,10,11,12,12,12,12,20,12,12,9,9,10,10,10,10,11,11,12,12,13,13,20,20,20,9,9,9,9,11,10,11,11,12,12,12,13,20,19,19,9,9,9,9,11,11,11,12,12,12,13,13,19,19,19,13,13,10,10,11,11,12,12,13,13,13,13,19,19,19,14,13,11,10,11,11,12,12,12,13,13,13,19,19,19,19,19,12,12,12,12,13,13,13,13,14,13,19,19,19,19,19,12,12,12,11,12,12,13,14,14,14,19,19,19,19,19,16,15,13,12,13,13,13,14,14,14,19,19,19,19,19,17,17,13,12,13,11,14,13,15,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,4,5,6,6,6,7,7,7,7,7,7,8,6,6,6,7,7,7,7,7,7,7,8,6,6,6,6,7,7,7,7,7,7,8,6,6,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,7,9,9,10,10,12,12,6,5,5,7,7,8,8,10,10,11,11,12,12,7,5,5,7,7,8,8,10,10,11,11,12,12,21,7,7,7,7,8,9,10,10,11,11,12,12,21,7,7,7,7,9,9,10,10,12,12,13,13,21,11,11,8,8,9,9,11,11,12,12,13,13,21,11,11,8,8,9,9,11,11,12,12,13,13,21,21,21,10,10,10,10,11,11,12,13,13,13,21,21,21,10,10,10,10,11,11,13,13,14,13,21,21,21,13,13,11,11,12,12,13,13,14,14,21,21,21,14,14,11,11,12,12,13,13,14,14,21,21,21,21,20,13,13,13,12,14,14,16,15,20,20,20,20,20,13,13,13,13,14,13,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,4,4,5,5,5,4,4,5,5,5,4,4,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,9,9,10,10,11,11,6,5,5,7,7,8,8,9,9,10,10,11,11,0,7,7,7,7,9,9,10,10,10,10,11,11,0,7,7,7,7,9,9,10,10,10,10,11,11,0,11,11,9,9,10,10,11,11,11,11,12,12,0,12,12,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,6,6,7,7,8,8,8,8,11,4,5,6,6,7,7,8,8,8,8,11,5,5,6,6,7,7,8,8,8,9,12,5,5,6,6,7,7,8,8,9,9,12,12,12,6,6,7,7,8,8,9,9,11,11,11,6,6,7,7,8,8,8,8,11,11,11,6,6,7,7,8,8,8,8,11,11,11,7,7,7,8,8,8,8,8,11,11,11,11,11,7,7,8,8,8,8,11,11,11,11,11,7,7,7,7,8,8,11,11,11,11,11,7,7,7,7,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,7,6,10,10,10,10,10,10,4,6,6,10,10,10,10,9,10,5,10,10,9,11,11,10,11,11,7,10,10,11,12,12,12,12,12,7,10,10,11,12,12,12,12,12,6,10,10,10,12,12,10,12,12,7,10,10,11,12,12,12,12,12,7,10,10,11,12,12,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,8,8,8,8,9,9,10,10,11,11,0,4,4,6,6,7,7,8,8,9,8,10,10,11,11,11,11,0,4,4,6,6,7,7,8,8,9,9,10,10,11,11,11,11,0,6,5,6,6,7,7,9,9,9,9,10,10,11,11,12,12,0,0,0,6,6,7,7,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,11,12,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,11,12,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,4,5,5,7,7,9,9,0,4,4,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,5,5,6,6,8,8,10,10,0,0,0,6,6,8,8,10,10,0,0,0,7,7,9,9,10,10,0,0,0,7,7,8,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,0,5,5,8,8,0,5,5,8,8,0,7,7,9,9,0,0,0,9,9,5,7,7,9,9,0,8,7,10,9,0,8,7,10,9,0,10,10,11,11,0,0,0,11,11,5,7,7,9,9,0,7,8,9,10,0,7,8,9,10,0,10,10,11,11,0,0,0,11,11,8,9,9,11,10,0,11,10,12],"i8",L3,F.GLOBAL_BASE+175348),d3([11,0,11,10,12,12,0,13,13,14,14,0,0,0,14,13,8,9,9,10,11,0,10,11,12,12,0,10,11,12,12,0,13,13,14,14,0,0,0,13,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,11,10,0,7,7,10,10,0,7,7,10,10,0,9,9,10,10,0,0,0,11,10,5,7,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,10,0,0,0,10,10,8,10,9,12,12,0,10,10,12,11,0,10,10,12,12,0,12,12,13,12,0,0,0,13,12,8,9,10,12,12,0,10,10,11,12,0,10,10,11,12,0,12,12,13,13,0,0,0,12,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,7,11,10,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,10,10,6,7,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,10,0,0,0,10,10,9,10,9,12,12,0,10,10,12,12,0,10,10,12,11,0,12,12,13,13,0,0,0,13,12,8,9,10,12,12,0,10,10,12,12,0,10,10,11,12,0,12,12,13,13,0,0,0,12,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,13,13,0,9,9,12,12,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,7,10,10,13,13,0,9,9,12,12,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,9,11,11,14,13,0,10,10,13,12,0,11,10,13,12,0,12,12,13,12,0,0,0,13,13,9,11,11,13,14,0,10,11,12,13,0,10,11,13,13,0,12,12,12,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,11,11,14,14,0,10,11,13,13,0,11,10,13,13,0,11,12,13,13,0,0,0,13,12,9,11,11,14,14,0,11,10,13,13,0,10,11,13,13,0,12,12,13,13,0,0,0,12,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,5,5,0,5,5,5,7,7,0,9,8,0,9,8,6,7,7,0,8,9,0,8,9,0,0,0,0,0,0,0,0,0,5,9,8,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,0,0,5,9,8,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,11,13,14,15,15,18,17,19,17,5,6,8,9,10,10,12,15,19,19,6,6,6,6,8,8,11,14,18,19,8,6,5,4,6,7,10,13,16,17,9,7,6,5,6,7,9,12,15,19,10,8,7,6,6,6,7,9,13,15,12,10,9,8,7,6,4,5,10,15,13,13,11,8,6,6,4,2,7,12,17,15,16,10,8,8,7,6,9,12,19,18,17,13,11,10,10,9,11,14,0,0,0,0,2,0,0,0,100,0,0,0,160,234,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,217,2,0,0,0,0,0,0,0,0,0,0,0,0,0,168,217,2,0,0,0,0,0,0,0,0,0,0,0,0,0,208,217,2,0,0,0,0,0,0,0,0,0,0,0,0,0,248,217,2,0,0,0,0,0,32,218,2,0,72,218,2,0,0,0,0,0,0,0,0,0,112,218,2,0,152,218,2,0,0,0,0,0,0,0,0,0,192,218,2,0,232,218,2,0,0,0,0,0,0,0,0,0,16,219,2,0,56,219,2,0,0,0,0,0,0,0,0,0,96,219,2,0,136,219,2,0,176,219,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,24,217,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,11,13,15,14,14,13,15,14,6,4,5,7,9,10,11,11,14,13,10,4,3,5,7,8,9,10,13,13,12,7,4,4,5,6,8,9,12,14,13,9,6,5,5,6,8,9,12,14,12,9,7,6,5,5,6,8,11,11,12,11,9,8,7,6,6,7,10,11,13,11,10,9,8,7,6,6,9,11,13,13,12,12,12,10,9,8,9,11,12,14,15,15,14,12,11,10,10,12,0,0,0,0,4,0,0,0,81,0,0,0,56,234,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,144,234,2,0,0,0,0,0,4,0,0,0,113,2,0,0,168,231,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,32,234,2,0,0,0,0,0,2,0,0,0,81,0,0,0,40,231,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,231,2,0,0,0,0,0,2,0,0,0,33,1,0,0,184,229,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,230,2,0,0,0,0,0,4,0,0,0,81,0,0,0,80,229,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,168,229,2,0,0,0,0,0,2,0,0,0,121,0,0,0,160,228,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,32,229,2,0,0,0,0,0,2,0,0,0,169,0,0,0,184,227,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,104,228,2,0,0,0,0,0,2,0,0,0,25,0,0,0,128,227,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,227,2,0,0,0,0,0,2,0,0,0,169,0,0,0,152,226,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,72,227,2,0,0,0,0,0,2,0,0,0,121,0,0,0,232,225,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,104,226,2,0,0,0,0,0,2,0,0,0,225,0,0,0,192,224,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,168,225,2,0,0,0,0,0,2,0,0,0,185,1,0,0,168,222,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,104,224,2,0,0,0,0,0,2,0,0,0,169,0,0,0,192,221,2,0,1,0,0,0,0,220,125,225,0,232,51,97,4,0,0,0,0,0,0,0,112,222,2,0,0,0,0,0,2,0,0,0,169,0,0,0,216,220,2,0,1,0,0,0,0,96,18,225,0,128,184,96,4,0,0,0,0,0,0,0,136,221,2,0,0,0,0,0,1,0,0,0,49,0,0,0,216,219,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,16,220,2,0,0,0,0,0,2,4,3,4,5,5,5,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,6,8,8,8,8,6,6,6,8,8,9,8,8,7,9,8,11,10,5,6,6,8,8,9,8,8,8,10,9,11,11,16,8,8,9,8,9,9,9,8,10,9,11,10,16,8,8,9,9,10,10,9,9,10,10,11,11,16,13,13,9,9,10,10,9,10,11,11,12,11,16,13,13,9,8,10,9,10,10,10,10,11,11,16,14,16,8,9,9,9,11,10,11,11,12,11,16,16,16,9,7,10,7,11,10,11,11,12,11,16,16,16,12,12,9,10,11,11,12,11,12,12,16,16,16,12,10,10,7,11,8,12,11,12,12,16,16,15,16,16,11,12,10,10,12,11,12,12,16,16,16,15,15,11,11,10,10,12,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,11,11,11,11,11,11,11,11,11,11,4,6,6,11,11,11,11,11,11,11,11,11,11,4,7,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,7,6,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,11,10,10,10,9,9,9,9,9,9,9,9,9,9,10,9,9,10,9,9,10,11,10,11,10,9,9,9,9,9,9,9,10,10,10,9,10,9,9,9,9,11,10,11,10,10,9,9,9,9,9,9,10,9,9,10,9,9,10,9,9,10,11,10,10,11,10,9,9,9,9,9,10,10,9,10,10,10,10,9,10,10,10,10,10,10,11,11,11,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,9,10,11,11,10,11,10,11,10,9,10,10,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,10,11,11,10,10,10,10,10,10,9,10,9,10,10,9,10,9,10,10,10,11,10,11,10,11,11,10,10,10,10,10,10,9,10,10,10,10,10,10,10,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,10,11,11,10,10,10,10,9,9,10,10,9,9,10,9,10,10,10,10,11,11,10,10,10,10,10,10,10,9,9,10,10,10,9,9,10,10,10,10,10,11,10,11,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,7,9,8,9,9,10,10,6,5,5,7,7,9,9,8,8,10,9,11,10,12,11,6,5,5,8,7,9,9,8,8,10,10,11,11,12,11,19,8,8,8,8,10,10,9,9,10,10,11,11,12,11,19,8,8,8,8,10,10,9,9,10,10,11,11,12,12,19,12,12,9,9,10,10,9,10,10,10,11,11,12,12,19,12,12,9,9,10,10,10,10,10,10,12,12,12,12,19,19,19,9,9,9,9,11,10,11,11,12,11,13,13,19,19,19,9,9,9,9,11,10,11,11,11,12,13,13,19,19,19,13,13,10,10,11,11,12,12,12,12,13,12,19,19,19,14,13,10,10,11,11,12,12,12,13,13,13,19,19,19,19,19,12,12,12,11,12,13,14,13,13,13,19,19,19,19,19,12,12,12,11,12,12,13,14,13,14,19,19,19,19,19,16,16,12,13,12,13,13,14,15,14,19,18,18,18,18,16,15,12,11,12,11,14,12,14,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,7,7,8,6,6,7,7,7,7,7,7,7,7,8,6,6,6,7,7,7,7,7,7,7,8,6,6,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,7,8,9,9,10,10,12,11,6,5,5,7,7,8,8,9,10,11,11,12,12,7,5,5,7,7,8,8,10,10,11,11,12,12,20,7,7,7,7,8,9,10,10,11,11,12,13,20,7,7,7,7,9,9,10,10,11,12,13,13,20,11,11,8,8,9,9,11,11,12,12,13,13,20,11,11,8,8,9,9,11,11,12,12,13,13,20,20,20,10,10,10,10,12,12,13,13,13,13,20,20,20,10,10,10,10,12,12,13,13,13,14,20,20,20,14,14,11,11,12,12,13,13,14,14,20,20,20,14,14,11,11,12,12,13,13,14,14,20,20,20,20,19,13,13,13,13,14,14,15,14,19,19,19,19,19,13,13,13,13,14,14,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,4,4,5,5,5,4,4,5,5,5,4,4,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,7,9,8,10,10,6,5,5,7,7,8,8,9,9,9,10,11,11,7,5,5,7,7,8,8,9,9,10,10,11,11,0,7,7,7,7,9,8,9,9,10,10,11,11,0,8,8,7,7,8,9,9,9,10,10,11,11,0,11,11,9,9,10,10,11,10,11,11,12,12,0,12,12,9,9,10,10,11,11,11,11,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,6,6,7,7,8,8,8,8,11,4,4,6,6,7,7,8,8,9,9,11,4,4,6,6,7,7,8,8,9,9,12,5,5,6,6,7,7,9,9,9,9,12,12,12,6,6,7,7,9,9,9,9,11,11,11,7,7,7,7,8,8,9,9,11,11,11,7,7,7,7,8,8,9,9,11,11,11,7,7,8,8,8,8,9,9,11,11,11,11,11,8,8,8,8,8,9,11,11,11,11,11,8,8,8,8,8,8,11,11,11,11,11,7,7,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,6,7,10,10,10,10,10,9,4,6,6,10,10,10,10,9,10,5,10,10,9,11,12,10,11,12,7,10,10,11,12,12,12,12,12,7,10,10,11,12,12,12,12,12,6,10,10,10,12,12,11,12,12,7,10,10,12,12,12,12,11,12,7,10,10,11,12,12,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,8,8,8,8,9,9,10,10,11,11,0,4,4,6,6,7,7,8,8,9,9,10,10,11,11,12,12,0,4,4,6,6,7,7,8,8,9,9,10,10,11,11,12,12,0,5,5,6,6,8,8,9,9,9,9,10,10,11,12,12,12,0,0,0,6,6,8,7,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,13,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,12,13,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,4,5,5,7,7,9,9,0,4,4,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,5,5,6,6,8,8,10,10,0,0,0,6,6,8,8,10,10,0,0,0,7,7,9,9,10,10,0,0,0,7,7,8,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,0,5,5,8,8,0,5,5,8,8,0,7,7,9,9,0,0,0,9,9,5,7,7,9,9,0,8,8,10,10,0,8,7,10,9,0,10,10,11,11,0,0,0,11,11,5,7,7,9,9,0,8,8,10,10,0,7,8,9,10,0,10,10,11,11,0,0,0,11,11,8,9,9,11,10,0,11,11,12,12,0,11,10,12,12,0,13,14,14,14,0,0,0,14,13,8,9,9,10,11,0,11,11,12,12,0,10,11,12,12,0,13,13,14,14,0,0,0,13,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,11,10,0,7,7,10,10,0,7,7,10,10,0,9,9,11,10,0,0,0,11,11,5,7,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,11,11,8,10,9,12,12,0,10,10,12,12,0,10,10,12,12,0,12,12,13,13,0,0,0,13,13,8,9,10,12,12,0,10,10,12,12,0,10,10,11,12,0,12,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,11,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,11,10,5,8,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,11,10,0,0,0,10,11,9,10,10,12,12,0,10,10,12,12,0,10,10,12,12,0,12,13,13,13,0,0,0,13,12,9,10,10,12,12,0,10,10,12,12,0,10,10,12,12,0,13,12,13,13,0,0,0,12,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,14,13,0,9,9,12,12,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,7,10,10,13,14,0,9,9,12,13,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,9,11,11,14,13,0,11,10,13,12,0,11,11,13,13,0,12,12,13,13,0,0,0,13,13,9,11,11,13,14,0,10,11,12,13,0,11,11,13,13,0,12,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,11,11,14,14,0,10,11,13,13,0,11,10,13,13,0,12,12,13,13,0,0,0,13,12,9,11,11,14,14,0,11,10,13,13,0,10,11,13,13,0,12,12,14,13,0,0,0,13,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,5,5,0,5,5,5,8,7,0,9,9,0,9,8,5,7,8,0,9,9,0,8,9,0,0,0,0,0,0,0,0,0,5,9,9,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,0,0,5,9,9,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,11,12,14,15,15,17,17,18,18,5,6,6,8,9,10,13,17,18,19,7,5,4,6,8,9,11,15,19,19,8,6,5,5,6,7,11,14,16,17,9,7,7,6,7,7,10,13,15,19,10,8,7,6,7,6,7,9,14,16,12,10,9,7,7,6,4,5,10,15,14,13,11,7,6,6,4,2,7,13,16,16,15,9,8,8,8,6,9,13,19,19,17,12,11,10,10,9,11,14,0,0,0,0,2,0,0,0,100,0,0,0,160,253,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,236,2,0,0,0,0,0,0,0,0,0,0,0,0,0,168,236,2,0,0,0,0,0,0,0,0,0,0,0,0,0,208,236,2,0,0,0,0,0,0,0,0,0,0,0,0,0,248,236,2,0,0,0,0,0,32,237,2,0,72,237,2,0,0,0,0,0,0,0,0,0,112,237,2,0,152,237,2,0,0,0,0,0,0,0,0,0,192,237,2,0,232,237,2,0,0,0,0,0,0,0,0,0,16,238,2,0,56,238,2,0,0,0,0,0,0,0,0,0,96,238,2,0,136,238,2,0,176,238,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,24,236,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,11,13,14,14,13,13,16,14,6,3,4,7,9,9,10,11,14,13,10,4,3,5,7,7,9,10,13,15,12,7,4,4,6,6,8,10,13,15,12,8,6,6,6,6,8,10,13,14,11,9,7,6,6,6,7,8,12,11,13,10,9,8,7,6,6,7,11,11,13,11,10,9,9,7,7,6,10,11,13,13,13,13,13,11,9,8,10,12,12,15,15,16,15,12,11,10,10,12,0,0,0,0,4,0,0,0,81,0,0,0,56,253,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,144,253,2,0,0,0,0,0,4,0,0,0,113,2,0,0,168,250,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,32,253,2,0,0,0,0,0,2,0,0,0,81,0,0,0,40,250,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,250,2,0,0,0,0,0,2,0,0,0,33,1,0,0,184,248,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,249,2,0,0,0,0,0,4,0,0,0,81,0,0,0,80,248,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,168,248,2,0,0,0,0,0,2,0,0,0,121,0,0,0,160,247,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,32,248,2,0,0,0,0,0,2,0,0,0,169,0,0,0,184,246,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,104,247,2,0,0,0,0,0,2,0,0,0,25,0,0,0,128,246,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,246,2,0,0,0,0,0,2,0,0,0,169,0,0,0,152,245,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,72,246,2,0,0,0,0,0,2,0,0,0,121,0,0,0,232,244,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,104,245,2,0,0,0,0,0,2,0,0,0,225,0,0,0,192,243,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,168,244,2,0,0,0,0,0,2,0,0,0,185,1,0,0,168,241,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,104,243,2,0,0,0,0,0,2,0,0,0,169,0,0,0,192,240,2,0,1,0,0,0,0,220,125,225,0,232,51,97,4,0,0,0,0,0,0,0,112,241,2,0,0,0,0,0,2,0,0,0,169,0,0,0,216,239,2,0,1,0,0,0,0,96,18,225,0,128,184,96,4,0,0,0,0,0,0,0,136,240,2,0,0,0,0,0,1,0,0,0,49,0,0,0,216,238,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,16,239,2,0,0,0,0,0,2,4,3,4,5,5,5,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,6,8,8,8,8,6,6,6,8,8,8,8,8,7,9,8,10,10,5,6,6,8,8,9,9,8,8,10,10,10,10,16,9,9,9,9,9,9,9,8,10,9,11,11,16,8,9,9,9,9,9,9,9,10,10,11,11,16,13,13,9,9,10,9,9,10,11,11,11,12,16,13,14,9,8,10,8,9,9,10,10,12,11,16,14,16,9,9,9,9,11,11,12,11,12,11,16,16,16,9,7,9,6,11,11,11,10,11,11,16,16,16,11,12,9,10,11,11,12,11,13,13,16,16,16,12,11,10,7,12,10,12,12,12,12,16,16,15,16,16,10,11,10,11,13,13,14,12,16,16,16,15,15,12,10,11,11,13,11,12,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,11,11,11,11,11,11,11,11,11,11,4,7,7,11,11,11,11,11,11,11,11,11,11,5,8,9,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,6,6,7,7,7,7,8,7,8,8,8,8,8,8,8,8,8,8,10,6,6,7,7,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,8,8,9,8,9,9,9,9,9,9,9,9,10,7,7,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,10,11,11,8,7,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,9,11,11,11,11,11,9,9,9,9,9,9,10,9,9,10,9,10,9,9,10,9,11,11,11,11,11,9,9,9,9,9,9,9,10,10,10,10,9,10,10,9,10,11,11,11,11,11,9,9,9,9,10,10,10,9,10,10,10,10,9,10,10,9,11,11,11,11,11,11,11,9,9,9,9,10,10,10,10,9,10,10,10,10,10,11,11,11,11,11,11,11,10,9,10,10,10,10,10,10,10,9,10,9,10,10,11,11,11,11,11,11,11,10,9,10,9,10,10,9,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,9,10,10,10,10,10,9,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,9,10,10,11,11,11,11,11,11,11,11,11,10,10,10,9,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,10,11,9,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,7,7,8,7,9,8,10,9,6,5,5,8,8,9,9,8,8,9,9,11,10,11,10,6,5,5,8,8,9,9,8,8,9,9,10,10,11,11,18,8,8,9,8,10,10,9,9,10,10,10,10,11,10,18,8,8,9,9,10,10,9,9,10,10,11,11,12,12,18,12,13,9,10,10,10,9,10,10,10,11,11,12,11,18,13,13,9,9,10,10,10,10,10,10,11,11,12,12,18,18,18,10,10,9,9,11,11,11,11,11,12,12,12,18,18,18,10,9,10,9,11,10,11,11,11,11,13,12,18,18,18,14,13,10,10,11,11,12,12,12,12,12,12,18,18,18,14,13,10,10,11,10,12,12,12,12,12,12,18,18,18,18,18,12,12,11,11,12,12,13,13,13,14,18,18,18,18,18,12,12,11,11,12,11,13,13,14,13,18,18,18,18,18,16,16,11,12,12,13,13,13,14,13,18,18,18,18,18,16,15,12,11,12,11,13,11,15,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,3,5,5,6,6,7,7,7,7,7,7,9,5,5,6,6,7,7,7,7,8,7,8,5,5,6,6,7,7,7,7,7,7,9,6,6,7,7,7,7,8,7,7,8,9,9,9,7,7,7,7,7,7,7,8,9,9,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,7,7,8,8,9,9,9,8,8,8,8,7,7,8,8,9,9,9,9,8,8,8,7,7,8,8,9,9,9,8,8,8,8,7,7,8,8,9,9,9,8,8,7,7,7,7,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,8,8,10,10,11,10,6,5,5,7,7,8,8,9,9,10,10,12,11,6,5,5,7,7,8,8,9,9,10,10,12,11,21,7,7,7,7,9,9,10,10,11,11,12,12,21,7,7,7,7,9,9,10,10,11,11,12,12,21,12,12,9,9,10,10,11,11,11,11,12,12,21,12,12,9,9,10,10,11,11,12,12,12,12,21,21,21,11,11,10,10,11,12,12,12,13,13,21,21,21,11,11,10,10,12,12,12,12,13,13,21,21,21,15,15,11,11,12,12,13,13,13,13,21,21,21,15,16,11,11,12,12,13,13,14,14,21,21,21,21,20,13,13,13,13,13,13,14,14,20,20,20,20,20,13,13,13,13,13,13,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,4,4,5,5,5,4,4,5,5,5,4,4,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,8,8,10,9,10,10,6,5,5,7,7,9,9,9,9,10,10,11,11,6,5,5,7,7,9,9,10,9,11,10,11,11,0,6,6,7,7,9,9,10,10,11,11,12,12,0,7,7,7,7,9,9,10,10,11,11,12,12,0,11,11,8,8,10,10,11,11,12,12,12,12,0,11,12,9,8,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,4,6,6,7,7,8,8,8,8,11,4,4,6,6,7,7,8,8,8,8,11,4,4,6,6,7,7,8,8,8,8,11,6,6,6,6,8,8,8,8,9,9,11,11,11,6,6,7,8,8,8,8,9,11,11,11,7,7,8,8,8,8,8,8,11,11,11,7,7,8,8,8,8,8,8,11,11,11,8,8,8,8,8,8,8,8,11,11,11,10,10,8,8,8,8,8,8,11,11,11,10,10,8,8,8,8,8,8,11,11,11,10,10,7,7,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,6,6,9,9,10,10,10,9,4,6,6,9,10,9,10,9,10,6,9,9,10,12,11,10,11,11,7,10,9,11,12,12,12,12,12,7,10,10,11,12,12,12,12,12,6,10,10,10,12,12,11,12,12,7,9,10,11,12,12,12,12,12,7,10,9,12,12,12,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,9,9,9,10,10,10,0,4,4,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,4,4,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,7,7,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,3,4,6,6,7,7,9,9,0,4,4,6,6,7,7,9,10,0,4,4,6,6,7,7,10,9,0,5,5,7,7,8,8,10,10,0,0,0,7,6,8,8,10,10,0,0,0,7,7,9,9,11,11,0,0,0,7,7,9,9,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,0,5,5,8,8,0,5,5,8,8,0,7,7,9,9,0,0,0,9,9,5,7,7,9,9,0,8,8,10,10,0,8,7,10,9,0,10,10,11,11,0,0,0,11,11,5,7,7,9,9,0,8,8,10,10,0,7,8,9,10,0,10,10,11,11,0,0,0,11,11,8,9,9,11,11,0,11,11,12,12,0,11,10,12,12,0,13,14,14,14,0,0,0,14,13,8,9,9,11,11,0,11,11,12,12,0,10,11,12,12,0,14,13,14,14,0,0,0,13,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,11,10,0,7,7,10,10,0,7,7,10,10,0,9,9,11,10,0,0,0,11,11,5,7,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,11,11,8,10,9,12,12,0,10,10,12,12,0,10,10,12,12,0,12,12,13,13,0,0,0,13,13,8,9,10,12,12,0,10,10,11,12,0,10,10,12,12,0,12,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,11,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,11,10,5,8,8,11,11,0,7,7,10,10,0,7,7,10,10,0,9,9,11,11,0,0,0,10,11,8,10,10,12,12,0,10,10,12,12,0,10,10,12,12,0,12,13,13,13,0,0,0,14,13,8,10,10,12,12,0,10,10,12,12,0,10,10,12,12,0,13,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,14,13,0,9,9,13,12,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,7,10,10,13,14,0,9,9,12,13,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,9,11,11,14,13,0,11,10,14,13,0,11,11,13,13,0,12,12,13,13,0,0,0,13,13,9,11,11,13,14,0,10,11,13,14,0,11,11,13,13,0,12,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,11,11,14,14,0,11,11,13,13,0,11,10,13,13,0,12,12,13,13],"i8",L3,F.GLOBAL_BASE+185588),d3([13,13,9,11,11,14,14,0,11,11,13,13,0,10,11,13,13,0,12,12,14,13,0,0,0,13,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,5,5,0,5,5,5,8,7,0,9,9,0,9,8,5,7,8,0,9,9,0,8,9,0,0,0,0,0,0,0,0,0,5,9,8,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,0,0,5,9,9,0,8,8,0,8,8,5,9,9,0,8,8,0,8,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,9,11,11,13,14,19,17,17,19,5,4,5,8,10,10,13,16,18,19,7,4,4,5,8,9,12,14,17,19,8,6,5,5,7,7,10,13,16,18,10,8,7,6,5,5,8,11,17,19,11,9,7,7,5,4,5,8,17,19,13,11,8,7,7,5,5,7,16,18,14,13,8,6,6,5,5,7,16,18,18,16,10,8,8,7,7,9,16,18,18,18,12,10,10,9,9,10,17,18,0,0,0,0,2,0,0,0,100,0,0,0,184,41,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,168,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,208,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,248,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,72,0,3,0,0,0,0,0,112,0,3,0,152,0,3,0,0,0,0,0,0,0,0,0,192,0,3,0,232,0,3,0,0,0,0,0,0,0,0,0,16,1,3,0,56,1,3,0,96,1,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,24,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,9,13,10,12,12,12,12,12,6,4,6,8,6,8,10,10,11,12,8,5,4,10,4,7,8,9,10,11,13,8,10,8,9,9,11,12,13,14,10,6,4,9,3,5,6,8,10,11,11,8,6,9,5,5,6,7,9,11,12,9,7,11,6,6,6,7,8,10,12,11,9,12,7,7,6,6,7,9,13,12,10,13,9,8,7,7,7,8,11,15,11,15,11,10,9,8,7,7,0,0,0,0,8,0,0,0,161,25,0,0,0,16,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,41,3,0,0,0,0,0,4,0,0,0,113,2,0,0,112,13,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,15,3,0,0,0,0,0,4,0,0,0,113,2,0,0,224,10,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,13,3,0,0,0,0,0,2,0,0,0,81,0,0,0,96,10,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,184,10,3,0,0,0,0,0,2,0,0,0,81,0,0,0,224,9,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,56,10,3,0,0,0,0,0,2,0,0,0,33,1,0,0,112,8,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,152,9,3,0,0,0,0,0,4,0,0,0,81,0,0,0,8,8,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,96,8,3,0,0,0,0,0,2,0,0,0,121,0,0,0,88,7,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,216,7,3,0,0,0,0,0,2,0,0,0,169,0,0,0,112,6,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,32,7,3,0,0,0,0,0,2,0,0,0,25,0,0,0,56,6,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,6,3,0,0,0,0,0,2,0,0,0,225,0,0,0,16,5,3,0,1,0,0,0,0,134,115,225,0,80,22,97,4,0,0,0,0,0,0,0,248,5,3,0,0,0,0,0,2,0,0,0,33,1,0,0,160,3,3,0,1,0,0,0,0,0,245,224,0,0,149,96,5,0,0,0,0,0,0,0,200,4,3,0,0,0,0,0,2,0,0,0,185,1,0,0,136,1,3,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,72,3,3,0,0,0,0,0,3,5,5,6,6,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,9,11,5,6,7,7,8,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,11,5,5,7,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,11,7,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,10,9,10,11,11,11,7,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,5,5,7,7,9,8,10,9,10,10,11,10,11,11,6,5,5,7,7,8,9,10,10,11,10,12,11,12,11,13,12,6,5,5,7,7,9,9,10,10,11,11,12,12,13,12,13,13,18,8,8,8,8,9,9,10,11,11,11,12,11,13,11,13,12,18,8,8,8,8,10,10,11,11,12,12,13,13,13,13,13,14,18,12,12,9,9,11,11,11,11,12,12,13,12,13,12,13,13,20,13,12,9,9,11,11,11,11,12,12,13,13,13,14,14,13,20,18,19,11,12,11,11,12,12,13,13,13,13,13,13,14,13,18,19,19,12,11,11,11,12,12,13,12,13,13,13,14,14,13,18,17,19,14,15,12,12,12,13,13,13,14,14,14,14,14,14,19,19,19,16,15,12,11,13,12,14,14,14,13,13,14,14,14,19,18,19,18,19,13,13,13,13,14,14,14,13,14,14,14,14,18,17,19,19,19,13,13,13,11,13,11,13,14,14,14,14,14,19,17,17,18,18,16,16,13,13,13,13,14,13,15,15,14,14,19,19,17,17,18,16,16,13,11,14,10,13,12,14,14,14,14,19,19,19,19,19,18,17,13,14,13,11,14,13,14,14,15,15,19,19,19,17,19,18,18,14,13,12,11,14,11,15,15,15,15,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,13,13,13,13,13,13,13,13,13,13,13,13,4,7,7,13,13,13,13,13,13,13,13,13,13,13,13,3,8,6,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,4,4,5,5,6,5,5,5,5,6,4,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,8,9,10,10,10,10,7,5,5,7,7,8,8,9,9,10,10,10,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,10,10,10,10,10,11,11,0,13,13,9,9,9,9,10,10,11,11,11,11,0,0,0,10,10,10,10,10,10,11,11,11,11,0,0,0,10,10,10,10,10,10,11,11,12,12,0,0,0,14,14,11,11,11,11,12,12,12,12,0,0,0,14,14,11,11,11,11,12,12,12,12,0,0,0,0,0,12,12,12,12,12,12,13,13,0,0,0,0,0,12,12,12,12,12,12,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,6,6,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,9,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,11,11,10,11,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,7,11,11,12,11,11,12,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,4,4,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,4,4,6,6,8,8,9,9,9,9,10,10,11,11,12,12,0,4,4,6,6,8,8,9,9,9,9,10,10,11,11,12,12,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,7,7,8,9,10,10,10,10,11,11,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,9,10,10,10,11,11,12,12,12,12,0,0,0,0,0,10,10,10,10,11,11,11,12,12,12,13,13,0,0,0,0,0,0,0,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,13,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,12,12,12,12,13,12,13,13,13,13,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,3,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,6,6,7,7,7,7,9,9,0,0,0,7,6,7,7,9,9,0,0,0,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,9,9,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,5,5,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,7,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,3,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,5,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,5,5,0,0,0,5,5,0,0,0,8,7,0,0,0,0,0,0,0,4,6,6,0,0,0,8,8,0,0,0,8,7,0,0,0,10,10,0,0,0,0,0,0,0,4,6,6,0,0,0,8,8,0,0,0,7,8,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,5,7,8,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,5,8,8,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,10,10,0,0,0,10,10,0,0,0,9,10,0,0,0,11,10,0,0,0,0,0,0,0,8,10,10,0,0,0,10,10,0,0,0,10,10,0,0,0,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,4,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,11,10],"i8",L3,F.GLOBAL_BASE+195830),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,8,10,14,11,11,12,16,15,17,5,5,7,9,7,8,10,13,17,17,7,5,5,10,5,7,8,11,13,15,10,8,10,8,8,8,11,15,18,18,8,5,5,8,3,4,6,10,14,16,9,7,6,7,4,3,5,9,14,18,10,9,8,10,6,5,6,9,14,18,12,12,11,12,8,7,8,11,14,18,14,13,12,10,7,5,6,9,14,18,14,14,13,10,6,5,6,8,11,16,0,0,0,0,2,0,0,0,100,0,0,0,72,85,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,43,3,0,0,0,0,0,0,0,0,0,0,0,0,0,192,43,3,0,0,0,0,0,0,0,0,0,0,0,0,0,232,43,3,0,0,0,0,0,0,0,0,0,0,0,0,0,16,44,3,0,0,0,0,0,0,0,0,0,0,0,0,0,56,44,3,0,0,0,0,0,0,0,0,0,0,0,0,0,96,44,3,0,0,0,0,0,136,44,3,0,176,44,3,0,0,0,0,0,0,0,0,0,216,44,3,0,0,45,3,0,0,0,0,0,0,0,0,0,40,45,3,0,80,45,3,0,120,45,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,48,43,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,11,11,11,11,10,11,12,11,5,2,11,5,6,6,7,9,11,12,11,9,6,10,6,7,8,9,10,11,11,5,11,7,8,8,9,11,13,14,11,6,5,8,4,5,7,8,10,11,10,6,7,7,5,5,6,8,9,11,10,7,8,9,6,6,6,7,8,9,11,9,9,11,7,7,6,6,7,9,12,12,10,13,9,8,7,7,7,8,11,13,11,14,11,10,9,8,7,7,0,0,0,0,8,0,0,0,161,25,0,0,144,59,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,56,85,3,0,0,0,0,0,4,0,0,0,113,2,0,0,0,57,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,59,3,0,0,0,0,0,4,0,0,0,113,2,0,0,112,54,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,56,3,0,0,0,0,0,2,0,0,0,81,0,0,0,240,53,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,72,54,3,0,0,0,0,0,2,0,0,0,81,0,0,0,112,53,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,200,53,3,0,0,0,0,0,2,0,0,0,33,1,0,0,0,52,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,40,53,3,0,0,0,0,0,4,0,0,0,81,0,0,0,152,51,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,240,51,3,0,0,0,0,0,2,0,0,0,121,0,0,0,232,50,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,104,51,3,0,0,0,0,0,2,0,0,0,169,0,0,0,0,50,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,176,50,3,0,0,0,0,0,2,0,0,0,25,0,0,0,200,49,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,49,3,0,0,0,0,0,2,0,0,0,169,0,0,0,224,48,3,0,1,0,0,0,0,136,93,225,0,176,19,97,4,0,0,0,0,0,0,0,144,49,3,0,0,0,0,0,2,0,0,0,225,0,0,0,184,47,3,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,160,48,3,0,0,0,0,0,2,0,0,0,185,1,0,0,160,45,3,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,96,47,3,0,0,0,0,0,2,5,5,6,6,7,7,7,7,8,8,8,8,8,8,8,8,9,9,9,9,11,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,10,11,6,6,7,7,8,8,8,8,9,9,9,9,9,9,10,9,10,10,10,10,11,7,7,7,7,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,12,11,11,7,7,8,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,12,11,12,8,8,8,8,9,9,9,9,9,10,10,10,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,12,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,12,11,11,11,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,12,12,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,12,11,12,11,11,11,9,10,10,10,10,10,10,10,10,10,10,10,10,10,11,12,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,12,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,12,11,11,12,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,12,12,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,12,12,12,11,11,11,12,11,11,11,10,10,10,10,10,10,10,10,10,10,10,12,11,12,12,12,12,12,11,12,11,11,10,10,10,10,10,10,10,10,10,10,12,12,12,12,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,5,5,7,7,9,8,10,9,10,10,10,10,6,5,5,7,7,9,8,10,9,11,10,12,12,13,13,6,5,5,7,7,9,9,10,10,11,11,12,12,12,13,19,8,8,8,8,9,9,10,10,12,11,12,12,13,13,19,8,8,8,8,9,9,11,11,12,12,13,13,13,13,19,12,12,9,9,11,11,11,11,12,11,13,12,13,13,18,12,12,9,9,11,10,11,11,12,12,12,13,13,14,19,18,18,11,11,11,11,12,12,13,12,13,13,14,14,16,18,18,11,11,11,10,12,11,13,13,13,13,13,14,17,18,18,14,15,11,12,12,13,13,13,13,14,14,14,18,18,18,15,15,12,10,13,10,13,13,13,13,13,14,18,17,18,17,18,12,13,12,13,13,13,14,14,16,14,18,17,18,18,17,13,12,13,10,12,12,14,14,14,14,17,18,18,18,18,14,15,12,12,13,12,14,14,15,15,18,18,18,17,18,15,14,12,11,12,12,14,14,14,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,3,12,12,12,12,12,12,12,12,12,12,4,7,7,12,12,12,12,12,12,12,12,12,12,3,8,8,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,5,6,5,5,5,5,6,5,4,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,8,8,9,10,11,11,7,5,5,7,7,8,8,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,9,10,10,10,10,11,11,0,13,13,9,9,10,9,10,10,11,11,11,12,0,0,0,10,10,10,10,10,10,11,11,12,12,0,0,0,10,10,10,10,10,10,11,11,12,12,0,0,0,14,14,11,11,11,11,12,12,12,12,0,0,0,14,14,11,11,11,11,12,12,12,13,0,0,0,0,0,12,12,12,12,12,12,13,13,0,0,0,0,0,13,12,12,12,12,12,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,6,6,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,9,8,10,10,10,10,10,8,8,8,8,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,11,11,10,11,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,7,11,11,12,11,11,12,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,4,4,6,6,8,8,9,9,8,8,9,9,10,10,11,11,0,4,4,6,6,8,8,9,9,9,9,10,10,11,11,11,11,0,4,4,7,6,8,8,9,9,9,9,10,10,11,11,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,9,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,9,9,10,10,11,11,11,12,12,12,0,0,0,0,0,10,10,10,10,11,11,11,11,12,12,13,12,0,0,0,0,0,0,0,10,10,11,11,11,11,12,12,12,12,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,12,12,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,0,0,12,12,12,12,12,13,13,13,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,3,3,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,4,5,6,6,7,7,9,9,0,6,6,7,7,8,8,10,10,0,0,0,7,7,8,8,10,9,0,0,0,9,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,10,10,9,9,11,11,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,5,5,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,8,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,0,0,0,5,5,0,0,0,5,5,0,0,0,7,7,0,0,0,0,0,0,0,5,6,6,0,0,0,7,7,0,0,0,7,7,0,0,0,10,10,0,0,0,0,0,0,0,5,6,6,0,0,0,7,7,0,0,0,7,7,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,5,7,8,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,9,9,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,8,10,10,0,0,0,9,9,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,5,6,6,0,0,0,0,0,0,5,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,6,8,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9],"i8",L3,F.GLOBAL_BASE+207264),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,14,10,15,10,12,15,16,15,4,2,11,5,10,6,8,11,14,14,14,10,7,11,6,8,10,11,13,15,9,4,11,5,9,6,9,12,14,15,14,9,6,9,4,5,7,10,12,13,9,5,7,6,5,5,7,10,13,13,10,8,9,8,7,6,8,10,14,14,13,11,10,10,7,7,8,11,14,15,13,12,9,9,6,5,7,10,14,17,15,13,11,10,6,6,7,9,12,17,0,0,0,0,2,0,0,0,100,0,0,0,48,128,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,80,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,120,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,160,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,200,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,240,87,3,0,0,0,0,0,24,88,3,0,64,88,3,0,0,0,0,0,0,0,0,0,104,88,3,0,144,88,3,0,0,0,0,0,0,0,0,0,184,88,3,0,224,88,3,0,8,89,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,192,86,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,11,11,11,11,10,10,12,11,5,2,11,5,6,6,7,9,11,13,13,10,7,11,6,7,8,9,10,12,11,5,11,6,8,7,9,11,14,15,11,6,6,8,4,5,7,8,10,13,10,5,7,7,5,5,6,8,10,11,10,7,7,8,6,5,5,7,9,9,11,8,8,11,8,7,6,6,7,9,12,11,10,13,9,9,7,7,7,9,11,13,12,15,12,11,9,8,8,8,0,0,0,0,8,0,0,0,161,25,0,0,120,102,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,32,128,3,0,0,0,0,0,4,0,0,0,113,2,0,0,232,99,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,96,102,3,0,0,0,0,0,4,0,0,0,113,2,0,0,88,97,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,99,3,0,0,0,0,0,2,0,0,0,81,0,0,0,216,96,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,48,97,3,0,0,0,0,0,2,0,0,0,81,0,0,0,88,96,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,176,96,3,0,0,0,0,0,2,0,0,0,33,1,0,0,232,94,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,16,96,3,0,0,0,0,0,4,0,0,0,81,0,0,0,128,94,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,216,94,3,0,0,0,0,0,2,0,0,0,121,0,0,0,208,93,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,80,94,3,0,0,0,0,0,2,0,0,0,169,0,0,0,232,92,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,152,93,3,0,0,0,0,0,2,0,0,0,25,0,0,0,176,92,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,92,3,0,0,0,0,0,2,0,0,0,169,0,0,0,200,91,3,0,1,0,0,0,0,232,87,225,0,224,255,96,4,0,0,0,0,0,0,0,120,92,3,0,0,0,0,0,2,0,0,0,225,0,0,0,160,90,3,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,136,91,3,0,0,0,0,0,2,0,0,0,33,1,0,0,48,89,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,88,90,3,0,0,0,0,0,2,5,5,6,6,7,7,7,7,7,7,8,8,8,8,8,8,10,6,6,7,7,8,7,8,8,8,8,8,9,9,9,9,9,10,6,6,7,7,7,7,8,8,8,8,9,9,9,9,9,9,10,7,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,8,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,8,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,10,11,11,11,9,9,9,9,9,9,10,10,9,9,10,9,11,10,11,11,11,9,9,9,9,9,9,9,9,10,10,10,9,11,11,11,11,11,9,9,9,9,10,10,9,9,9,9,10,9,11,11,11,11,11,11,11,9,9,9,9,9,9,10,10,10,10,11,11,11,11,11,11,11,10,9,10,10,9,10,9,9,10,9,11,10,10,11,11,11,11,9,10,9,9,9,9,10,10,10,10,11,11,11,11,11,11,10,10,10,9,9,10,9,10,9,10,10,10,10,11,11,11,11,11,11,11,9,9,9,9,9,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,7,9,9,10,10,10,10,6,5,5,7,7,8,8,10,8,11,10,12,12,13,13,6,5,5,7,7,8,8,10,9,11,11,12,12,13,12,18,8,8,8,8,9,9,10,9,11,10,12,12,13,13,18,8,8,8,8,9,9,10,10,11,11,13,12,14,13,18,11,11,9,9,10,10,11,11,11,12,13,12,13,14,18,11,11,9,8,11,10,11,11,11,11,12,12,14,13,18,18,18,10,11,10,11,12,12,12,12,13,12,14,13,18,18,18,10,11,11,9,12,11,12,12,12,13,13,13,18,18,17,14,14,11,11,12,12,13,12,14,12,14,13,18,18,18,14,14,11,10,12,9,12,13,13,13,13,13,18,18,17,16,18,13,13,12,12,13,11,14,12,14,14,17,18,18,17,18,13,12,13,10,12,11,14,14,14,14,17,18,18,18,18,15,16,12,12,13,10,14,12,14,15,18,18,18,16,17,16,14,12,11,13,10,13,13,14,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,4,4,12,12,12,12,12,12,12,12,12,12,4,9,8,12,12,12,12,12,12,12,12,12,12,2,9,7,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,5,6,5,5,5,5,6,4,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,8,8,9,9,10,10,7,5,5,7,7,8,8,8,8,9,9,11,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,12,0,13,13,9,9,10,10,10,10,11,11,12,12,0,0,0,10,10,10,10,11,11,12,12,12,12,0,0,0,10,10,10,10,11,11,12,12,12,12,0,0,0,14,14,11,11,11,11,12,12,13,13,0,0,0,14,14,11,11,11,11,12,12,13,13,0,0,0,0,0,12,12,12,12,13,13,14,13,0,0,0,0,0,13,13,12,12,13,12,14,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,6,6,7,7,8,8,8,8,8,8,10,10,10,7,7,8,7,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,7,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,9,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,11,11,10,12,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,7,11,11,11,11,11,12,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,6,6,7,7,8,8,8,8,9,9,10,10,11,10,0,5,5,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,5,5,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,10,11,11,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,8,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,8,8,9,9,10,10,11,11,12,11,12,12,0,0,0,0,0,9,10,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,0,0,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,4,6,6,7,7,9,9,0,5,5,7,7,7,8,9,9,0,5,5,7,7,8,8,9,9,0,7,7,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,9,9,9,9,10,10,0,0,0,9,9,9,9,10,10,0,0,0,10,10,10,10,11,11,0,0,0,0,0,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,5,5,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,8,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,3,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,0,0,0,5,5,0,0,0,5,5,0,0,0,7,8,0,0,0,0,0,0,0,5,6,6,0,0,0,7,7,0,0,0,7,7,0,0,0,10,10,0,0,0,0,0,0,0,5,6,6,0,0,0,7,7,0,0,0,7,7,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,10,10,0,0,0,9,9,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,8,10,10,0,0,0,9,9,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,5,6,6,0,0,0,0,0,0,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,6,7,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,6,8,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,8,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,8],"i8",L3,F.GLOBAL_BASE+218416),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,10,9,13,11,14,10,12,13,13,14,7,2,12,5,10,5,7,10,12,14,12,6,9,8,7,7,9,11,13,16,10,4,12,5,10,6,8,12,14,16,12,6,8,7,6,5,7,11,12,16,10,4,8,5,6,4,6,9,13,16,10,6,10,7,7,6,7,9,13,15,12,9,11,9,8,6,7,10,12,14,14,11,10,9,6,5,6,9,11,13,15,13,11,10,6,5,6,8,9,11,0,0,0,0,2,0,0,0,100,0,0,0,216,170,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,56,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,96,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,136,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,176,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,216,130,3,0,0,0,0,0,0,131,3,0,40,131,3,0,0,0,0,0,0,0,0,0,80,131,3,0,120,131,3,0,0,0,0,0,0,0,0,0,160,131,3,0,200,131,3,0,240,131,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,168,129,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,12,10,10,10,9,10,12,12,6,1,10,5,6,6,7,9,11,14,12,9,8,11,7,8,9,11,13,15,10,5,12,7,8,7,9,12,14,15,10,6,7,8,5,6,7,9,12,14,9,6,8,7,6,6,7,9,12,12,9,7,9,9,7,6,6,7,10,10,10,9,10,11,8,7,6,6,8,10,12,11,13,13,11,10,8,8,8,10,11,13,15,15,14,13,10,8,8,9,0,0,0,0,8,0,0,0,161,25,0,0,32,145,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,200,170,3,0,0,0,0,0,4,0,0,0,113,2,0,0,144,142,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,8,145,3,0,0,0,0,0,4,0,0,0,113,2,0,0,0,140,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,142,3,0,0,0,0,0,2,0,0,0,81,0,0,0,128,139,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,216,139,3,0,0,0,0,0,2,0,0,0,81,0,0,0,0,139,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,88,139,3,0,0,0,0,0,2,0,0,0,33,1,0,0,144,137,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,184,138,3,0,0,0,0,0,4,0,0,0,81,0,0,0,40,137,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,128,137,3,0,0,0,0,0,2,0,0,0,121,0,0,0,120,136,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,248,136,3,0,0,0,0,0,2,0,0,0,169,0,0,0,144,135,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,64,136,3,0,0,0,0,0,2,0,0,0,25,0,0,0,88,135,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,135,3,0,0,0,0,0,2,0,0,0,169,0,0,0,112,134,3,0,1,0,0,0,0,184,84,225,0,160,251,96,4,0,0,0,0,0,0,0,32,135,3,0,0,0,0,0,2,0,0,0,169,0,0,0,136,133,3,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,56,134,3,0,0,0,0,0,2,0,0,0,33,1,0,0,24,132,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,64,133,3,0,0,0,0,0,2,4,4,6,6,7,7,7,7,7,7,8,8,8,8,8,8,10,7,7,7,7,7,7,8,8,8,8,9,9,9,9,9,9,10,7,7,7,7,8,8,8,8,8,8,9,9,9,9,9,9,10,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,8,7,8,8,8,8,9,9,9,9,9,9,9,9,10,11,11,8,8,8,8,9,9,9,9,9,9,10,9,9,9,10,11,10,8,8,8,8,9,9,9,9,9,9,9,10,10,10,10,11,10,8,8,9,9,9,9,9,9,10,9,9,10,9,10,11,10,11,11,11,8,8,9,9,9,9,9,9,9,9,10,10,11,11,11,11,11,9,9,9,9,9,9,10,9,9,9,10,10,11,11,11,11,11,9,9,9,9,9,9,9,9,9,10,9,10,11,11,11,11,11,9,9,9,9,10,10,9,9,9,10,10,10,11,11,11,11,11,11,11,9,9,9,10,9,9,10,10,10,10,11,11,10,11,11,11,11,10,9,10,10,9,9,9,9,10,10,11,10,11,11,11,11,11,9,9,9,9,10,9,10,10,10,10,11,10,11,11,11,11,11,10,10,9,9,10,9,10,10,10,10,10,10,10,11,11,11,11,11,11,9,9,10,9,10,9,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,6,8,8,10,9,10,10,6,5,5,7,7,8,7,10,9,11,11,12,13,6,5,5,7,7,8,8,10,10,11,11,13,13,18,8,8,8,8,9,9,10,10,12,12,12,13,18,8,8,8,8,9,9,10,10,12,12,13,13,18,11,11,8,8,10,10,11,11,12,11,13,12,18,11,11,9,7,10,10,11,11,11,12,12,13,17,17,17,10,10,11,11,12,12,12,10,12,12,17,17,17,11,10,11,10,13,12,11,12,12,12,17,17,17,15,14,11,11,12,11,13,10,13,12,17,17,17,14,14,12,10,11,11,13,13,13,13,17,17,16,17,16,13,13,12,10,13,10,14,13,17,16,17,16,17,13,12,12,10,13,11,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,5,4,12,12,12,12,12,12,12,12,12,12,4,9,8,11,11,11,11,11,11,11,11,11,11,2,8,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,4,6,5,5,5,5,6,5,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,6,5,5,7,7,8,8,8,8,9,9,10,10,7,6,5,7,7,8,8,8,8,9,9,10,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,11,0,13,13,9,9,10,10,10,10,11,11,12,12,0,0,0,10,10,10,10,11,11,12,12,12,13,0,0,0,10,10,10,10,11,11,12,12,12,12,0,0,0,14,14,10,11,11,11,12,12,13,13,0,0,0,14,14,11,10,11,11,13,12,13,13,0,0,0,0,0,12,12,11,12,13,12,14,14,0,0,0,0,0,12,12,12,12,13,12,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,4,6,6,7,7,7,7,7,7,9,7,7,6,6,7,7,8,8,8,8,9,6,6,6,6,7,7,8,8,8,8,10,7,7,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,10,9,9,7,10,10,11,10,11,11,10,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,10,11,11,11,12,11,11,6,9,9,11,10,10,11,11,10,6,9,9,11,10,10,12,10,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,6,6,8,8,9,9,9,9,9,9,10,10,11,11,0,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,11,0,7,7,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,8,8,7,7,9,9,10,10,9,9,10,10,11,11,12,12,0,0,0,7,7,9,9,10,10,10,9,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,10,10,10,10,11,11,12,12,13,12,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,7,7,9,9,0,7,7,7,7,7,7,9,9,0,7,7,7,7,7,7,9,9,0,8,8,7,7,8,8,10,10,0,0,0,7,7,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,10,10,9,9,11,11,0,0,0,0,0,9,9,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,3,6,6,0,0,0,0,0,6,6,6,6,0,0,0,0,0,6,6,6,6,0,0,0,0,0,7,7,6,6,0,0,0,0,0,0,0,6,7,0,0,0,0,0,0,0,7,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,3,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,0,0,0,7,7,0,0,0,7,7,0,0,0,8,8,0,0,0,0,0,0,0,4,6,6,0,0,0,8,8,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,4,6,6,0,0,0,8,8,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,11,11,0,0,0,11,11,0,0,0,12,11,0,0,0,0,0,0,0,7,8,8,0,0,0,10,11,0,0,0,11,11,0,0,0,11,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,11,11,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,6,8,8,0,0,0,10,11,0,0,0,10,11,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,9,0,0,0,11,12,0,0,0,11,12,0,0,0,12,11,0,0,0,0,0,0,0,8,10,9,0,0,0,12,11,0,0,0,12,11,0,0,0,11,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,5,6,6,0,0,0,0,0,0,5,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,6,8,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9],"i8",L3,F.GLOBAL_BASE+229400),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,11,9,13,12,12,11,12,12,13,15,8,2,11,4,8,5,7,10,12,15,13,7,10,9,8,8,10,13,17,17,11,4,12,5,9,5,8,11,14,16,12,6,8,7,6,6,8,11,13,16,11,4,9,5,6,4,6,10,13,16,11,6,11,7,7,6,7,10,13,15,13,9,12,9,8,6,8,10,12,14,14,10,10,8,6,5,6,9,11,13,15,11,11,9,6,5,6,8,9,12,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,9,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,F.GLOBAL_BASE+240320),d3([1,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,231,3,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,160,5,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,72,5,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,223,3,0,0,0,0,0,0,0,0,0,0,0,0,0,96,223,3,0,0,0,0,0,0,0,0,0,0,0,0,0,136,223,3,0,0,0,0,0,0,0,0,0,0,0,0,0,176,223,3,0,0,0,0,0,0,0,0,0,0,0,0,0,216,223,3,0,0,0,0,0,0,224,3,0,40,224,3,0,0,0,0,0,0,0,0,0,80,224,3,0,120,224,3,0,0,0,0,0,0,0,0,0,160,224,3,0,200,224,3,0,240,224,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,80,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,120,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,160,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,200,185,3,0,0,0,0,0,240,185,3,0,24,186,3,0,0,0,0,0,0,0,0,0,64,186,3,0,104,186,3,0,0,0,0,0,0,0,0,0,144,186,3,0,184,186,3,0,224,186,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,208,184,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,120,184,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,4,8,10,9,9,10,11,12,4,2,5,6,6,8,10,11,13,8,4,6,8,7,9,12,12,14,10,6,8,4,5,6,9,11,12,9,5,6,5,5,6,9,11,11,9,7,9,6,5,5,7,10,10,10,9,11,8,7,6,7,9,11,11,12,13,10,10,9,8,9,11,11,15,15,12,13,11,9,10,11,0,0,0,0,0,0,0,5,5,9,10,9,9,10,11,12,5,1,5,6,6,7,10,12,14,9,5,6,8,8,10,12,14,14,10,5,8,5,6,8,11,13,14,9,5,7,6,6,8,10,12,11,9,7,9,7,6,6,7,10,10,10,9,12,9,8,7,7,10,12,11,11,13,12,10,9,8,9,11,11,14,15,15,13,11,9,9,11,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,128,197,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,40,223,3,0,0,0,0,0,4,0,0,0,113,2,0,0,240,194,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,104,197,3,0,0,0,0,0,2,0,0,0,81,0,0,0,112,194,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,200,194,3,0,0,0,0,0,2,0,0,0,81,0,0,0,240,193,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,72,194,3,0,0,0,0,0,2,0,0,0,33,1,0,0,128,192,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,168,193,3,0,0,0,0,0,4,0,0,0,81,0,0,0,24,192,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,112,192,3,0,0,0,0,0,2,0,0,0,121,0,0,0,104,191,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,232,191,3,0,0,0,0,0,2,0,0,0,169,0,0,0,128,190,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,48,191,3,0,0,0,0,0,2,0,0,0,25,0,0,0,72,190,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,104,190,3,0,0,0,0,0,2,0,0,0,169,0,0,0,96,189,3,0,1,0,0,0,0,184,84,225,0,160,251,96,4,0,0,0,0,0,0,0,16,190,3,0,0,0,0,0,2,0,0,0,169,0,0,0,120,188,3,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,40,189,3,0,0,0,0,0,2,0,0,0,33,1,0,0,8,187,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,48,188,3,0,0,0,0,0,2,5,5,6,6,7,6,7,7,8,8,8,8,8,8,8,8,10,6,6,7,7,7,7,8,8,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,7,7,7,7,8,8,8,9,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,9,9,9,9,9,9,9,9,9,9,10,11,11,8,8,8,8,9,9,9,9,9,9,10,10,9,10,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,10,10,11,10,10,8,8,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,11,11,8,8,9,9,9,9,9,9,9,9,9,9,11,11,11,11,11,9,9,9,9,9,9,9,9,10,9,10,9,11,11,11,11,11,9,8,9,9,9,9,9,9,9,10,10,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,10,10,9,11,11,11,11,11,11,11,9,9,10,9,9,9,9,10,9,10,10,11,10,11,11,11,11,9,10,10,10,9,9,9,9,9,9,10,11,11,11,11,11,11,9,9,9,9,9,9,9,9,10,9,11,11,10,11,11,11,11,10,10,9,9,9,9,9,9,10,9,10,11,10,11,11,11,11,11,11,9,9,10,9,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,9,9,10,11,12,12,6,5,5,7,7,8,7,10,10,11,11,12,12,6,5,5,7,7,8,8,10,10,11,11,12,12,16,7,7,8,8,9,9,11,11,12,12,13,13,17,7,7,8,7,9,9,11,10,12,12,13,13,19,11,10,8,8,10,10,11,11,12,12,13,13,19,11,11,9,7,11,10,11,11,12,12,13,12,19,19,19,10,10,10,10,11,12,12,12,13,14,18,19,19,11,9,11,9,13,12,12,12,13,13,19,20,19,13,15,11,11,12,12,13,13,14,13,18,19,20,15,13,12,10,13,10,13,13,13,14,20,20,20,20,20,13,14,12,12,13,12,13,13,20,20,20,20,20,13,12,12,12,14,12,14,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,13,13,13,13,13,13,13,13,13,13,3,6,6,13,13,13,13,13,13,13,13,13,13,4,8,7,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,4,5,6,5,5,5,5,6,5,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,7,5,5,7,7,8,8,8,8,9,9,10,10,7,5,6,7,7,8,8,8,8,9,9,11,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,11,0,13,13,9,9,9,9,10,10,11,11,12,12,0,0,0,9,10,9,10,11,11,12,11,13,12,0,0,0,10,10,9,9,11,11,12,12,13,12,0,0,0,13,13,10,10,11,11,12,12,13,13,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,11,12,11,11,12,13,14,13,0,0,0,0,0,12,12,11,11,13,12,14,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,7,7,7,7,8,8,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,9,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,10,11,11,11,10,10,6,9,9,11,11,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,11,11,11,11,11,11,11,6,9,9,11,10,10,11,11,10,6,9,9,10,10,10,11,10,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,6,6,7,7,8,8,8,8,9,9,10,10,11,11,0,5,5,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,5,5,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,10,10,10,11,11,11,12,12,0,0,0,8,8,8,8,9,9,10,10,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,7,7,9,9,0,6,6,7,7,8,8,9,9,0,6,6,7,7,8,8,9,9,0,7,7,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,8,8,9,9,11,11,0,0,0,9,9,9,9,11,11,0,0,0,10,10,10,10,11,11,0,0,0,0,0,9,9,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,3,7,7,0,0,0,0,0,5,5,6,6,0,0,0,0,0,5,5,7,7,0,0,0,0,0,7,7,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,9,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,9,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,10,9],"i8",L3,F.GLOBAL_BASE+242772),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,144,235,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,56,5,4,0,0,0,0,0,4,0,0,0,113,2,0,0,0,233,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,235,3,0,0,0,0,0,2,0,0,0,81,0,0,0,128,232,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,216,232,3,0,0,0,0,0,2,0,0,0,81,0,0,0,0,232,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,88,232,3,0,0,0,0,0,2,0,0,0,33,1,0,0,144,230,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,184,231,3,0,0,0,0,0,4,0,0,0,81,0,0,0,40,230,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,128,230,3,0,0,0,0,0,2,0,0,0,121,0,0,0,120,229,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,248,229,3,0,0,0,0,0,2,0,0,0,169,0,0,0,144,228,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,64,229,3,0,0,0,0,0,2,0,0,0,25,0,0,0,88,228,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,228,3,0,0,0,0,0,2,0,0,0,169,0,0,0,112,227,3,0,1,0,0,0,0,184,84,225,0,160,251,96,4,0,0,0,0,0,0,0,32,228,3,0,0,0,0,0,2,0,0,0,169,0,0,0,136,226,3,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,56,227,3,0,0,0,0,0,2,0,0,0,33,1,0,0,24,225,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,64,226,3,0,0,0,0,0,2,4,4,6,6,6,6,7,7,8,8,8,8,8,8,8,8,10,10,10,7,7,7,7,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,7,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,8,9,9,9,9,9,9,10,9,9,10,10,10,7,7,8,8,9,8,9,9,9,9,10,9,9,10,10,11,11,8,8,8,8,9,9,9,9,9,9,10,9,9,10,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,10,10,11,11,11,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,10,11,11,11,8,8,9,9,9,9,10,9,9,9,9,9,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,10,10,11,11,9,9,9,9,9,9,9,9,9,10,10,10,10,11,10,11,11,9,9,9,9,9,9,9,9,9,10,10,9,10,10,11,11,11,11,11,9,9,9,10,9,9,9,9,9,9,10,11,11,11,11,11,11,10,10,10,10,9,9,9,9,9,9,10,11,11,11,11,11,11,9,10,9,9,9,9,10,9,9,9,11,11,11,11,11,11,11,10,10,9,9,9,9,9,9,10,9,11,11,10,11,11,11,11,10,11,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,5,7,7,9,9,10,10,12,12,6,5,5,7,7,8,8,10,10,12,11,12,12,6,5,5,7,7,8,8,10,10,11,11,12,12,15,7,7,8,8,9,9,11,11,12,12,13,12,15,8,8,8,7,9,9,10,10,12,12,13,13,16,11,10,8,8,10,10,11,11,12,12,13,13,16,11,11,9,8,11,10,11,11,12,12,13,12,16,16,16,10,11,10,11,12,12,12,12,13,13,16,16,16,11,9,11,9,14,12,12,12,13,13,16,16,16,12,14,11,12,12,12,13,13,14,13,16,16,16,15,13,12,10,13,10,13,14,13,13,16,16,16,16,16,13,14,12,13,13,12,13,13,16,16,16,16,16,13,12,12,11,14,12,15,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,3,10,10,10,10,10,10,10,10,10,10,4,8,6,10,10,10,10,10,10,10,10,10,10,4,8,7,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,10,9,7,5,6,7,7,8,8,8,8,9,9,10,10,7,5,5,7,7,8,8,8,8,9,9,10,10,0,8,8,8,8,9,9,9,9,10,10,11,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,10,10,10,11,11,11,11,0,13,13,9,9,9,9,10,10,11,11,11,11,0,0,0,10,10,10,10,11,11,12,11,12,12,0,0,0,10,10,10,9,11,11,12,11,13,12,0,0,0,13,13,10,10,11,11,12,12,13,13,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,11,12,11,11,12,12,14,13,0,0,0,0,0,12,11,11,11,13,10,14,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,7,7,7,7,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,6,10,10,11,11,11,11,10,10,6,9,9,11,10,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,10,11,11,11,12,11,11,7,9,9,11,10,10,11,11,10,6,9,9,10,10,10,12,10,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,6,6,7,7,8,8,8,8,9,9,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,11,0,0,0,8,8,9,9,9,10,10,10,10,10,11,11,12,12,0,0,0,8,8,9,9,10,9,10,10,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,11,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,10,10,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,12,12,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,5,6,6,8,8,0,0,0,7,7,7,7,9,9,0,0,0,7,7,7,7,9,9,0,0,0,7,7,8,8,10,10,0,0,0,7,7,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,10,10,9,9,11,11,0,0,0,0,0,9,9,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,2,7,7,0,0,0,0,0,13,13,6,6,0,0,0,0,0,12,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,9,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,11,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,4,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,5,7,6,0,0,0,0,0,0,5,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,8,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9],"i8",L3,F.GLOBAL_BASE+253728),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,13,14,14,15,16,18,18,4,2,5,8,7,9,12,15,15,10,4,5,10,6,8,11,15,17,12,5,7,5,6,8,11,14,17,11,5,6,6,5,6,9,13,17,12,6,7,6,5,6,8,12,14,14,7,8,6,6,7,9,11,14,14,8,9,6,5,6,9,11,13,16,10,10,7,6,7,8,10,11,0,0,0,0,0,0,0,6,8,13,12,13,14,15,16,16,4,2,4,7,6,8,11,13,15,10,4,4,8,6,8,11,14,17,11,5,6,5,6,8,12,14,17,11,5,5,6,5,7,10,13,16,12,6,7,8,7,8,10,13,15,13,8,8,7,7,8,10,12,15,15,7,7,5,5,7,9,12,14,15,8,8,6,6,7,8,10,11,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,128,86,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,40,86,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,46,4,0,0,0,0,0,0,0,0,0,0,0,0,0,152,46,4,0,0,0,0,0,0,0,0,0,0,0,0,0,192,46,4,0,0,0,0,0,0,0,0,0,0,0,0,0,232,46,4,0,0,0,0,0,0,0,0,0,0,0,0,0,16,47,4,0,0,0,0,0,56,47,4,0,96,47,4,0,0,0,0,0,0,0,0,0,136,47,4,0,176,47,4,0,0,0,0,0,0,0,0,0,216,47,4,0,0,48,4,0,40,48,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,8,4,0,0,0,0,0,0,0,0,0,0,0,0,0,240,8,4,0,0,0,0,0,0,0,0,0,0,0,0,0,24,9,4,0,0,0,0,0,0,0,0,0,0,0,0,0,64,9,4,0,0,0,0,0,0,0,0,0,0,0,0,0,104,9,4,0,0,0,0,0,144,9,4,0,184,9,4,0,0,0,0,0,0,0,0,0,224,9,4,0,8,10,4,0,0,0,0,0,0,0,0,0,48,10,4,0,88,10,4,0,128,10,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,112,8,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,24,8,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,4,9,10,9,10,11,12,13,4,1,5,7,7,9,11,12,14,8,5,7,9,8,10,13,13,13,10,7,9,4,6,7,10,12,14,9,6,7,6,6,7,10,12,12,9,8,9,7,6,7,8,11,12,11,11,11,9,8,7,8,10,12,12,13,14,12,11,9,9,9,12,12,17,17,15,16,12,10,11,13,0,0,0,0,0,0,0,5,4,8,9,8,9,10,12,15,4,1,5,5,6,8,11,12,12,8,5,8,9,9,11,13,12,12,9,5,8,5,7,9,12,13,13,8,6,8,7,7,9,11,11,11,9,7,9,7,7,7,7,10,12,10,10,11,9,8,7,7,9,11,11,12,13,12,11,9,8,9,11,13,16,16,15,15,12,10,11,12,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,184,20,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,96,46,4,0,0,0,0,0,4,0,0,0,113,2,0,0,40,18,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,20,4,0,0,0,0,0,2,0,0,0,81,0,0,0,168,17,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,0,18,4,0,0,0,0,0,2,0,0,0,81,0,0,0,40,17,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,17,4,0,0,0,0,0,2,0,0,0,33,1,0,0,184,15,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,16,4,0,0,0,0,0,4,0,0,0,81,0,0,0,80,15,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,168,15,4,0,0,0,0,0,2,0,0,0,121,0,0,0,160,14,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,32,15,4,0,0,0,0,0,2,0,0,0,169,0,0,0,184,13,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,104,14,4,0,0,0,0,0,2,0,0,0,25,0,0,0,128,13,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,13,4,0,0,0,0,0,2,0,0,0,81,0,0,0,0,13,4,0,1,0,0,0,0,160,59,225,0,160,251,96,4,0,0,0,0,0,0,0,88,13,4,0,0,0,0,0,2,0,0,0,169,0,0,0,24,12,4,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,200,12,4,0,0,0,0,0,2,0,0,0,33,1,0,0,168,10,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,208,11,4,0,0,0,0,0,2,5,5,6,6,7,7,7,7,8,8,8,8,8,8,8,8,10,6,6,7,7,7,7,8,8,9,9,9,9,9,9,9,9,10,6,6,7,7,8,7,8,8,9,9,9,9,9,9,9,9,10,7,7,7,7,8,8,8,9,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,9,8,9,9,9,9,10,9,9,10,10,10,11,8,8,8,8,9,9,9,9,9,9,9,10,9,10,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,10,10,11,10,10,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,11,11,8,8,9,9,9,9,9,9,9,9,9,10,11,11,11,11,11,9,9,9,9,9,9,9,9,10,9,10,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,9,10,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,9,10,9,11,10,11,11,11,11,11,9,9,10,9,9,9,9,9,9,9,10,11,10,11,11,11,11,10,10,10,10,9,9,9,9,9,9,10,11,11,11,11,11,11,9,10,9,9,9,9,9,9,9,9,11,11,10,11,11,11,10,10,10,9,9,9,9,9,9,9,9,10,11,10,11,11,11,11,11,11,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,9,9,10,11,12,12,6,5,5,7,7,8,8,10,10,12,11,12,12,6,5,5,7,7,8,8,10,10,12,11,12,12,17,7,7,8,8,9,9,10,10,12,12,13,13,18,7,7,8,7,9,9,10,10,12,12,12,13,19,10,10,8,8,10,10,11,11,12,12,13,14,19,11,10,8,7,10,10,11,11,12,12,13,12,19,19,19,10,10,10,10,11,11,12,12,13,13,19,19,19,11,9,11,9,14,12,13,12,13,13,19,20,18,13,14,11,11,12,12,13,13,14,13,20,20,20,15,13,11,10,13,11,13,13,14,13,20,20,20,20,20,13,14,12,12,13,13,13,13,20,20,20,20,20,13,13,12,12,16,13,15,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,11,11,11,11,11,11,3,7,6,11,11,11,11,11,11,4,8,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,4,4,6,5,5,5,5,6,5,5,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,7,5,5,7,7,8,8,8,8,9,9,10,10,7,6,5,7,7,8,8,8,8,9,9,10,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,11,0,13,13,9,9,9,9,10,10,11,11,11,12,0,0,0,9,10,10,10,11,11,12,11,12,12,0,0,0,10,10,9,9,11,11,12,12,12,12,0,0,0,13,13,10,10,11,11,12,12,13,13,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,11,12,11,11,13,12,13,13,0,0,0,0,0,12,12,11,11,13,12,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,7,8,9,5,5,6,6,7,7,8,8,8,8,9,5,5,6,6,7,7,8,8,8,8,10,7,7,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,10,11,11,11,10,10,6,9,9,11,11,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,10,11,11,11,11,11,11,6,9,9,11,10,10,11,11,10,6,9,9,11,10,10,11,10,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,8,8,8,8,8,8,9,9,10,10,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,10,11,11,11,0,5,6,7,7,8,8,9,9,9,9,10,10,10,11,11,11,0,7,7,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,12,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,10,11,11,12,12,13,13,0,0,0,0,0,10,10,10,10,11,11,12,12,12,13,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,12,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,12,11,12,12,13,13,13,13,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,3,6,6,7,7,9,9,0,5,5,7,7,8,7,9,9,0,5,5,7,7,8,8,9,9,0,7,7,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,9,9,9,9,11,11,0,0,0,9,9,9,9,11,11,0,0,0,10,10,10,10,11,11,0,0,0,0,0,9,9,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,3,7,7,0,0,0,0,0,5,4,7,7,0,0,0,0,0,5,5,7,7,0,0,0,0,0,6,7,8,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,10,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,10,10],"i8",L3,F.GLOBAL_BASE+263472),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,112,60,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,24,86,4,0,0,0,0,0,4,0,0,0,113,2,0,0,224,57,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,60,4,0,0,0,0,0,2,0,0,0,81,0,0,0,96,57,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,184,57,4,0,0,0,0,0,2,0,0,0,81,0,0,0,224,56,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,56,57,4,0,0,0,0,0,2,0,0,0,33,1,0,0,112,55,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,152,56,4,0,0,0,0,0,4,0,0,0,81,0,0,0,8,55,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,96,55,4,0,0,0,0,0,2,0,0,0,121,0,0,0,88,54,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,216,54,4,0,0,0,0,0,2,0,0,0,169,0,0,0,112,53,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,32,54,4,0,0,0,0,0,2,0,0,0,25,0,0,0,56,53,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,53,4,0,0,0,0,0,4,0,0,0,113,2,0,0,168,50,4,0,1,0,0,0,0,160,27,225,0,160,251,96,3,0,0,0,0,0,0,0,32,53,4,0,0,0,0,0,2,0,0,0,169,0,0,0,192,49,4,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,112,50,4,0,0,0,0,0,2,0,0,0,33,1,0,0,80,48,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,120,49,4,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,8,8,8,8,8,8,10,10,10,7,7,7,8,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,7,7,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,8,8,9,9,9,9,9,10,9,9,10,10,10,7,7,8,8,9,8,9,9,9,9,10,9,9,10,10,10,10,8,8,8,8,9,8,9,9,9,9,9,10,9,10,10,10,10,7,7,8,8,9,9,9,9,9,9,10,9,10,10,10,10,10,8,8,8,9,9,9,9,9,9,9,10,10,10,9,11,10,10,10,10,8,8,9,9,9,9,9,10,9,9,9,10,10,10,10,11,11,9,9,9,9,9,9,9,9,10,9,9,10,11,10,10,11,11,9,9,9,9,9,9,9,9,9,9,10,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,9,10,9,11,10,10,11,11,11,11,9,9,9,9,9,9,9,9,9,9,10,10,10,11,11,11,11,9,10,9,10,9,9,9,9,10,9,10,11,10,11,10,10,10,10,10,9,9,9,10,9,9,9,10,11,11,10,11,11,10,11,10,10,10,9,9,9,9,10,9,9,10,11,10,11,11,11,11,10,11,10,10,9,10,9,9,9,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,9,9,11,12,13,12,6,5,5,7,7,8,8,10,9,12,12,12,12,6,5,5,7,7,8,8,10,9,12,11,11,13,16,7,7,8,8,9,9,10,10,12,12,13,12,16,7,7,8,7,9,9,10,10,11,12,12,13,16,10,10,8,8,10,10,11,12,12,12,13,13,16,11,10,8,7,11,10,11,11,12,11,13,13,16,16,16,10,10,10,10,11,11,13,12,13,13,16,16,16,11,9,11,9,15,13,12,13,13,13,16,16,16,15,13,11,11,12,13,12,12,14,13,16,16,16,14,13,11,11,13,12,14,13,13,13,16,16,16,16,16,13,13,13,12,14,13,14,14,16,16,16,16,16,13,13,12,12,14,14,15,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,5,5,10,10,6,9,8,10,10,6,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,7,5,5,7,7,8,8,8,8,9,9,10,10,7,5,6,7,7,8,8,8,8,9,9,10,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,11,0,13,13,9,9,9,9,10,10,11,11,11,12,0,0,0,10,10,10,10,11,11,11,11,12,12,0,0,0,10,10,9,9,11,11,11,12,12,12,0,0,0,13,13,10,10,11,11,12,12,13,13,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,11,11,11,11,13,12,13,13,0,0,0,0,0,12,12,11,11,12,12,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,7,7,7,7,7,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,8,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,10,9,9,4,6,7,10,9,9,11,9,9,7,10,10,11,11,11,12,10,11,6,9,9,11,10,11,11,10,10,6,9,9,11,10,11,11,10,10,7,11,10,12,11,11,11,11,11,7,9,9,10,10,10,11,11,10,6,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,6,6,8,7,8,8,8,8,9,9,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,9,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,8,8,9,9,9,9,10,10,10,10,11,11,12,12,0,0,0,8,8,9,9,9,9,10,10,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,11,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,10,10,11,11,11,11,11,12,12,12,13,13,0,0,0,0,0,0,0,11,10,11,11,11,11,12,12,13,13,0,0,0,0,0,0,0,11,11,12,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,11,12,12,12,12,13,13,13,0,0,0,0,0,0,0,12,12,12,12,12,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,6,6,8,8,0,0,0,7,7,7,7,9,9,0,0,0,7,7,7,7,9,9,0,0,0,7,7,7,8,9,9,0,0,0,7,7,7,7,9,9,0,0,0,9,9,8,8,10,10,0,0,0,8,9,8,8,10,10,0,0,0,10,10,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,2,8,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,6,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,9,9,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,9,11,10],"i8",L3,F.GLOBAL_BASE+274008),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,6,6,12,13,13,14,16,17,17,4,2,5,8,7,9,12,15,15,9,4,5,9,7,9,12,16,18,11,6,7,4,6,8,11,14,18,10,5,6,5,5,7,10,14,17,10,5,7,7,6,7,10,13,16,11,5,7,7,7,8,10,12,15,13,6,7,5,5,7,9,12,13,16,8,9,6,6,7,9,10,12,0,0,0,0,0,0,0,9,8,12,11,12,13,14,14,16,6,1,5,6,6,9,12,14,17,9,4,5,9,7,9,13,15,16,8,5,8,6,8,10,13,17,17,9,6,7,7,8,9,13,15,17,11,8,9,9,9,10,12,16,16,13,7,8,7,7,9,12,14,15,13,6,7,5,5,7,10,13,13,14,7,8,5,6,7,9,10,12,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,96,167,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,8,167,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,127,4,0,0,0,0,0,0,0,0,0,0,0,0,0,120,127,4,0,0,0,0,0,0,0,0,0,0,0,0,0,160,127,4,0,0,0,0,0,0,0,0,0,0,0,0,0,200,127,4,0,0,0,0,0,0,0,0,0,0,0,0,0,240,127,4,0,0,0,0,0,24,128,4,0,64,128,4,0,0,0,0,0,0,0,0,0,104,128,4,0,144,128,4,0,0,0,0,0,0,0,0,0,184,128,4,0,224,128,4,0,8,129,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,168,89,4,0,0,0,0,0,0,0,0,0,0,0,0,0,208,89,4,0,0,0,0,0,0,0,0,0,0,0,0,0,248,89,4,0,0,0,0,0,0,0,0,0,0,0,0,0,32,90,4,0,0,0,0,0,0,0,0,0,0,0,0,0,72,90,4,0,0,0,0,0,112,90,4,0,152,90,4,0,0,0,0,0,0,0,0,0,192,90,4,0,232,90,4,0,0,0,0,0,0,0,0,0,16,91,4,0,56,91,4,0,96,91,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,80,89,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,248,88,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,8,8,8,8,10,12,14,3,2,6,7,7,8,10,12,16,7,6,7,9,8,10,12,14,16,8,6,8,4,5,7,9,11,13,7,6,8,5,6,7,9,11,14,8,8,10,7,7,6,8,10,13,9,11,12,9,9,7,8,10,12,10,13,15,11,11,10,9,10,13,13,16,17,14,15,14,13,14,17,0,0,0,0,0,0,0,4,4,7,8,7,8,10,12,17,3,1,6,6,7,8,10,12,15,7,6,9,9,9,11,12,14,17,8,6,9,6,7,9,11,13,17,7,6,9,7,7,8,9,12,15,8,8,10,8,7,7,7,10,14,9,10,12,10,8,8,8,10,14,11,13,15,13,12,11,11,12,16,17,18,18,19,20,18,16,16,20,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,152,101,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,64,127,4,0,0,0,0,0,4,0,0,0,113,2,0,0,8,99,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,128,101,4,0,0,0,0,0,2,0,0,0,81,0,0,0,136,98,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,224,98,4,0,0,0,0,0,2,0,0,0,81,0,0,0,8,98,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,96,98,4,0,0,0,0,0,2,0,0,0,33,1,0,0,152,96,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,192,97,4,0,0,0,0,0,4,0,0,0,81,0,0,0,48,96,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,136,96,4,0,0,0,0,0,2,0,0,0,121,0,0,0,128,95,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,0,96,4,0,0,0,0,0,2,0,0,0,169,0,0,0,152,94,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,72,95,4,0,0,0,0,0,2,0,0,0,25,0,0,0,96,94,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,128,94,4,0,0,0,0,0,2,0,0,0,81,0,0,0,224,93,4,0,1,0,0,0,0,160,59,225,0,160,251,96,4,0,0,0,0,0,0,0,56,94,4,0,0,0,0,0,2,0,0,0,169,0,0,0,248,92,4,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,168,93,4,0,0,0,0,0,2,0,0,0,33,1,0,0,136,91,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,176,92,4,0,0,0,0,0,3,4,4,6,6,7,7,8,8,8,8,9,9,9,9,9,9,10,6,6,6,6,7,7,8,8,8,9,9,9,9,9,9,9,10,6,6,6,6,7,7,8,8,8,8,9,9,9,9,9,9,10,7,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,7,8,8,8,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,8,8,9,9,9,9,9,9,9,9,11,10,11,8,8,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,11,11,8,8,8,8,9,9,9,9,9,9,9,9,11,10,11,11,11,9,9,9,9,9,9,9,9,9,9,9,9,10,11,10,11,11,9,9,9,9,9,9,9,9,9,9,9,10,11,11,10,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,10,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,10,11,11,11,11,11,11,9,10,10,10,9,9,9,9,9,9,11,10,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,11,11,11,11,11,11,11,10,10,9,9,9,9,9,9,9,9,10,11,11,11,11,11,11,11,11,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,10,11,11,11,6,5,5,7,7,8,8,10,10,10,11,11,11,6,5,5,7,7,8,8,10,10,11,12,12,12,14,7,7,7,8,9,9,11,11,11,12,11,12,17,7,7,8,7,9,9,11,11,12,12,12,12,14,11,11,8,8,10,10,11,12,12,13,11,12,14,11,11,8,8,10,10,11,12,12,13,13,12,14,15,14,10,10,10,10,11,12,12,12,12,11,14,13,16,10,10,10,9,12,11,12,12,13,14,14,15,14,14,13,10,10,11,11,12,11,13,11,14,12,15,13,14,11,10,12,10,12,12,13,13,13,13,14,15,15,12,12,11,11,12,11,13,12,14,14,14,14,17,12,12,11,10,13,11,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,12,11,13,13,14,14,4,7,7,11,13,14,14,14,14,3,8,3,14,14,14,14,14,14,14,10,12,14,14,14,14,14,14,14,14,5,14,8,14,14,14,14,14,12,14,13,14,14,14,14,14,14,14,13,14,10,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,4,5,6,5,5,5,5,6,5,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,9,9,10,10,7,5,5,7,7,8,8,8,8,10,9,11,10,7,5,5,7,7,8,8,8,8,9,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,10,10,10,11,11,12,12,0,13,13,9,9,9,9,10,10,11,11,12,12,0,0,0,10,10,10,10,11,11,12,12,12,13,0,0,0,10,10,10,10,11,11,12,12,12,12,0,0,0,14,14,11,11,11,11,12,13,13,13,0,0,0,14,14,11,10,11,11,12,12,13,13,0,0,0,0,0,12,12,12,12,13,13,13,14,0,0,0,0,0,13,12,12,12,13,13,13,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,5,7,7,7,7,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,7,7,7,7,8,8,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,9,9,10,10,10,10,10,8,8,8,8,9,9,10,10,10,10,10,9,9,9,9,8,9,10,10,10,10,10,8,9,8,8,9,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,6,10,9,9,11,9,9,4,6,7,10,9,9,11,9,9,7,10,10,10,11,11,11,11,10,6,9,9,11,10,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,11,11,11,11,12,11,11,7,9,9,11,10,10,12,10,10,7,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,8,8,9,9,10,10,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,6,5,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,13,13,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,13,13,13,0,0,0,0,0,10,10,11,11,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,12,12,12,13,13,13,14,14,14,14,0,0,0,0,0,0,0,0,0,12,12,13,13,14,14,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,3,6,6,7,7,9,9,0,5,5,7,7,8,7,9,9,0,5,5,7,7,8,8,9,9,0,7,7,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,9,9,9,9,10,10,0,0,0,9,9,9,9,10,10,0,0,0,10,10,10,10,11,11,0,0,0,0,0,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,4,7,7,0,0,0,0,0,4,4,7,7,0,0,0,0,0,4,5,7,7,0,0,0,0,0,6,7,8,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,10,9,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,9,0,0,0,0,0,0,9,9,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,10,9],"i8",L3,F.GLOBAL_BASE+284176),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,80,141,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,248,166,4,0,0,0,0,0,4,0,0,0,113,2,0,0,192,138,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,141,4,0,0,0,0,0,2,0,0,0,81,0,0,0,64,138,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,152,138,4,0,0,0,0,0,2,0,0,0,81,0,0,0,192,137,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,24,138,4,0,0,0,0,0,2,0,0,0,33,1,0,0,80,136,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,120,137,4,0,0,0,0,0,4,0,0,0,81,0,0,0,232,135,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,64,136,4,0,0,0,0,0,2,0,0,0,121,0,0,0,56,135,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,184,135,4,0,0,0,0,0,2,0,0,0,169,0,0,0,80,134,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,0,135,4,0,0,0,0,0,2,0,0,0,25,0,0,0,24,134,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,134,4,0,0,0,0,0,4,0,0,0,113,2,0,0,136,131,4,0,1,0,0,0,0,160,27,225,0,160,251,96,3,0,0,0,0,0,0,0,0,134,4,0,0,0,0,0,2,0,0,0,169,0,0,0,160,130,4,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,80,131,4,0,0,0,0,0,2,0,0,0,33,1,0,0,48,129,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,88,130,4,0,0,0,0,0,3,4,3,6,6,7,7,8,8,9,9,9,9,9,9,9,9,10,11,11,6,6,7,7,8,8,9,9,9,9,9,9,9,9,10,10,10,6,6,7,7,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,7,8,8,8,9,9,9,9,9,9,10,9,10,11,10,7,6,7,7,8,8,9,9,9,9,9,9,9,10,10,10,11,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,8,8,9,9,9,9,9,9,9,10,11,11,11,8,8,8,8,8,8,9,9,9,9,9,9,9,9,11,10,10,11,11,8,8,8,9,9,9,9,9,9,10,9,10,10,10,10,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,10,10,10,10,11,10,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,10,10,11,11,11,11,9,9,9,9,9,9,9,9,10,10,10,11,11,10,11,11,11,9,10,10,9,9,9,9,9,9,9,10,11,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,11,11,11,11,11,11,11,10,10,9,9,9,9,9,9,9,9,11,11,11,10,11,11,11,11,11,9,9,9,10,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,10,10,11,11,11,6,5,5,7,7,8,8,9,10,9,11,11,12,5,5,5,7,7,8,9,10,10,12,12,14,13,15,7,7,8,8,9,10,11,11,10,12,10,11,15,7,8,8,8,9,9,11,11,13,12,12,13,15,10,10,8,8,10,10,12,12,11,14,10,10,15,11,11,8,8,10,10,12,13,13,14,15,13,15,15,15,10,10,10,10,12,12,13,12,13,10,15,15,15,10,10,11,10,13,11,13,13,15,13,15,15,15,13,13,10,11,11,11,12,10,14,11,15,15,14,14,13,10,10,12,11,13,13,14,14,15,15,15,15,15,11,11,11,11,12,11,15,12,15,15,15,15,15,12,12,11,11,14,12,13,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,7,7,11,11,8,11,11,11,11,4,11,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,8,8,9,9,11,11,7,5,5,7,7,8,8,8,8,9,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,10,10,10,11,11,11,12,0,13,13,9,9,9,9,10,10,11,11,11,12,0,0,0,10,10,10,10,11,11,12,12,12,13,0,0,0,10,10,10,10,11,11,12,12,13,12,0,0,0,14,14,11,10,11,12,12,13,13,14,0,0,0,15,15,11,11,12,11,12,12,14,13,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,13,13,12,12,13,13,13,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,8,8,10,10,10,7,6,8,8,8,8,8,8,10,10,10,7,6,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,6,6,10,9,9,11,9,9,4,6,6,10,9,9,10,9,9,7,10,10,11,11,11,12,11,11,7,9,9,11,11,10,11,10,10,7,9,9,11,10,11,11,10,10,7,10,10,11,11,11,12,11,11,7,9,9,11,10,10,11,10,10,7,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,6,6,7,7,8,8,8,8,9,9,10,10,10,10,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,8,8,9,9,9,9,10,10,10,10,11,11,12,12,0,0,0,8,8,9,9,9,9,10,10,10,11,11,11,12,12,0,0,0,9,9,10,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,11,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,10,10,11,10,11,11,11,12,13,12,13,13,0,0,0,0,0,0,0,11,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,12,12,12,13,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,13,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,6,6,8,8,0,0,0,6,6,7,7,9,9,0,0,0,6,6,7,7,9,9,0,0,0,7,7,8,8,10,10,0,0,0,7,7,8,8,10,10,0,0,0,9,9,9,9,10,10,0,0,0,9,9,9,9,10,10,0,0,0,10,10,10,10,11,11,0,0,0,0,0,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,2,3,7,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,9,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,7,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,10,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,9,9,11,0,0,0,0,0,0,10,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,9,11,9,0,0,0,0,0,0,10,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,10,11,11,0,0,0,0,0,0,9,9,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,10,11,11,0,0,0,0,0,0,9,11,9],"i8",L3,F.GLOBAL_BASE+294712),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,6,12,14,12,14,16,17,18,4,2,5,11,7,10,12,14,15,9,4,5,11,7,10,13,15,18,15,6,7,5,6,8,11,13,16,11,5,6,5,5,6,9,13,15,12,5,7,6,5,6,9,12,14,12,6,7,8,6,7,9,12,13,14,8,8,7,5,5,8,10,12,16,9,9,8,6,6,7,9,9,0,0,0,0,0,0,0,10,9,12,15,12,13,16,14,16,7,1,5,14,7,10,13,16,16,9,4,6,16,8,11,16,16,16,14,4,7,16,9,12,14,16,16,10,5,7,14,9,12,14,15,15,13,8,9,14,10,12,13,14,15,13,9,9,7,6,8,11,12,12,14,8,8,5,4,5,8,11,12,16,10,10,6,5,6,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,64,191,64,0,0,0,0,0,88,203,64,0,0,0,0,0,130,228,64,0,0,0,0,0,112,183,64,0,0,0,0,0,148,193,64,0,0,0,0,0,64,223,64,0,0,0,0,0,112,199,64,0,0,0,0,0,136,211,64,0,0,0,0,0,106,232,64,154,153,153,153,153,153,185,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,2,0,0,0,2,0,0,30,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,30,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,242,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,2,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,0,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,12,0,0,0,12,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,10,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,12,0,0,0,12,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,0,0,0,0,51,51,51,51,51,51,211,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,18,64,0,0,0,0,0,0,22,64,0,0,0,0,0,0,62,64,208,171,4,0,0,0,0,0,6,0,0,0,6,0,0,0,0,0,0,0,0,64,191,64,0,0,0,0,0,100,201,64,0,0,0,0,0,124,229,64,0,0,0,0,0,64,207,64,0,0,0,0,0,88,219,64,0,0,0,0,0,64,239,64,0,0,0,0,0,106,248,64,154,153,153,153,153,153,185,191,154,153,153,153,153,153,169,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,240,63,0,4,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,30,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,22,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,242,255,255,255,0,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,246,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,10,0,0,0,255,255,255,255,10,0,0,0,10,0,0,0,255,255,255,255,20,0,0,0,20,0,0,0,255,255,255,255,20,0,0,0,20,0,0,0,255,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,4,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,15,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,10,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,244,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,249,255,255,255,251,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,238,255,255,255,238,255,255,255,238,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,4,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,4,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,20,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,4,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,12,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,244,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,5,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,14,0,0,0,20,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,20,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,12,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,244,255,255,255,236,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,5,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,0,0,0,0,0,0,0,0,154,153,153,153,153,153,233,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,1,0,0,0,1,0,0,15,39,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,51,51,51,51,51,51,211,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,156,255,255,255,156,255,255,255,156,255,255,255,151,255,255,255,126,255,255,255,126,255,255,255,126,255,255,255,116,255,255,255,0,0,0,0,0,0,26,64,0,0,0,0,0,0,32,64,0,0,0,0,0,0,62,64,0,0,0,0,0,192,88,64,0,0,0,0,0,0,240,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,8,64,0,0,0,0,0,0,16,64,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,64,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,200,239,4,0,216,239,4,0,8,181,0,0,16,188,4,0,8,181,0,0,48,188,4,0,8,181,0,0,112,188,4,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,216,225,4,0,216,225,4,0,0,226,4,0,0,226,4,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,200,208,4,0,200,208,4,0,240,208,4,0,240,208,4,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,176,209,4,0,176,209,4,0,240,208,4,0,240,208,4,0,1,0,0,0,0,0,0,0,32,0,0,0,160,220,1,0,176,188,4,0,176,188,4,0,216,188,4,0,216,188,4,0,1,0,0,0,0,0,0,0,32,0,0,0,160,220,1,0,152,189,4,0,152,189,4,0,216,188,4,0,216,188,4,0,2,0,0,0,100,0,0,0,96,208,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,190,4,0,0,0,0,0,0,0,0,0,0,0,0,0,80,190,4,0,0,0,0,0,0,0,0,0,0,0,0,0,120,190,4,0,0,0,0,0,0,0,0,0,0,0,0,0,160,190,4,0,0,0,0,0,200,190,4,0,240,190,4,0,0,0,0,0,0,0,0,0,24,191,4,0,64,191,4,0,0,0,0,0,0,0,0,0,104,191,4,0,144,191,4,0,0,0,0,0,0,0,0,0,184,191,4,0,224,191,4,0,0,0,0,0,0,0,0,0,8,192,4,0,48,192,4,0,88,192,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,192,189,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,10,10,10,11,11,12,14,18,7,5,5,6,8,9,10,12,14,17,9,5,4,5,6,8,10,11,13,19,9,5,4,4,5,6,9,10,12,17,8,6,5,4,4,5,7,10,11,15,8,7,7,6,5,5,6,9,11,14,8,9,8,7,6,5,6,7,11,14,9,11,11,9,7,6,6,6,9,14,11,14,15,13,9,8,7,7,9,14,13,15,19,17,12,11,10,9,10,14,0,0,0,0,4,0,0,0,81,0,0,0,248,207,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,80,208,4,0,0,0,0,0,4,0,0,0,113,2,0,0,104,205,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,224,207,4,0,0,0,0,0,2,0,0,0,81,0,0,0,232,204,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,64,205,4,0,0,0,0,0,2,0,0,0,33,1,0,0,120,203,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,160,204,4,0,0,0,0,0,4,0,0,0,81,0,0,0,16,203,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,104,203,4,0,0,0,0,0,2,0,0,0,121,0,0,0,96,202,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,224,202,4,0,0,0,0,0,2,0,0,0,169,0,0,0,120,201,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,40,202,4,0,0,0,0,0,2,0,0,0,25,0,0,0,64,201,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,96,201,4,0,0,0,0,0,2,0,0,0,169,0,0,0,88,200,4,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,8,201,4,0,0,0,0,0,2,0,0,0,121,0,0,0,168,199,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,40,200,4,0,0,0,0,0,2,0,0,0,225,0,0,0,128,198,4,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,104,199,4,0,0,0,0,0,2,0,0,0,185,1,0,0,104,196,4,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,40,198,4,0,0,0,0,0,2,0,0,0,225,0,0,0,64,195,4,0,1,0,0,0,0,117,153,225,0,24,61,97,4,0,0,0,0,0,0,0,40,196,4,0,0,0,0,0,2,0,0,0,105,1,0,0,128,193,4,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,240,194,4,0,0,0,0,0,1,0,0,0,49,0,0,0,128,192,4,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,184,192,4,0,0,0,0,0,2,3,4,4,4,5,5,6,5,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,7,8,8,8,8,8,8,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,6,9,7,10,8,12,12,13,13,14,14,4,7,7,9,9,9,8,9,8,10,9,11,9,14,9,14,10,13,11,4,7,7,9,9,9,9,8,9,10,10,11,11,12,13,12,13,14,15,7,9,9,10,11,10,10,10,10,11,12,13,13,13,14,17,14,15,16,7,9,9,10,10,10,10,10,10,11,12,13,13,14,14,15,15,18,18,8,9,9,11,10,11,11,11,12,13,12,14,14,16,15,15,17,18,15,8,9,9,10,10,11,11,11,11,13,13,14,14,15,15,15,16,16,18,7,9,8,10,10,11,11,12,12,14,14,15,15,16,16,15,17,16,18,8,9,9,10,10,11,12,12,12,13,13,16,15,17,16,17,18,17,18,9,10,10,12,11,13,13,14,13,14,14,15,17,16,18,17,18,17,18,9,10,10,12,11,12,13,13,14,15,16,14,15,16,18,18,18,18,17,11,11,11,13,13,14,14,16,15,15,15,16,15,15,18,18,18,17,16,11,11,12,13,13,15,14,15,16,16,16,17,16,15,18,17,18,16,18,12,13,13,15,15,15,16,18,16,17,16,17,16,17,17,17,18,18,17,13,13,13,15,13,16,15,17,16,16,16,18,18,18,18,16,17,17,18,13,15,14,15,15,18,17,18,18,18,16,18,17,18,17,18,16,17,17,14,14,14,15,16,17,16,18,18,18,17,18,17,18,18,18,16,16,16,14,17,16,17,15,16,18,18,17,18,17,18,17,18,18,18,17,18,17,15,16,15,18,15,18,17,16,18,18,18,18,18,18,17,18,16,18,17,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,5,3,9,8,9,9,9,9,9,9,9,9,9,9,5,7,8,9,9,9,9,9,9,9,9,9,9,9,9,5,7,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,3,5,5,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,10,5,6,6,7,7,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,9,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,7,7,7,8,8,9,9,9,9,9,9,9,9,10,9,10,10,10,9,10,9,8,8,8,9,8,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,8,8,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,8,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,7,7,9,8,10,9,11,11,4,7,6,9,8,9,9,9,9,10,9,11,9,12,9,4,6,7,8,8,9,9,9,9,10,10,10,11,11,12,7,9,8,10,10,11,11,10,10,11,11,12,12,13,12,7,8,8,10,10,10,11,10,10,11,11,11,12,12,13,8,9,9,11,11,11,11,11,11,12,12,13,13,13,13,8,9,9,11,11,11,11,11,11,12,12,13,13,13,14,8,9,9,10,10,11,11,12,11,13,13,14,13,14,14,8,9,9,10,10,11,11,12,12,12,12,13,13,14,14,9,10,10,11,11,12,12,13,12,13,13,14,14,15,15,9,10,10,11,11,12,12,12,13,13,13,14,14,14,15,10,11,11,12,12,13,13,14,13,14,14,15,14,15,15,10,11,11,12,12,13,12,13,14,14,14,14,14,15,15,11,12,12,13,13,13,13,14,14,15,14,15,15,16,16,11,12,12,13,13,13,13,14,14,14,15,15,15,16,16,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,5,5,7,7,7,7,7,7,8,8,5,6,6,7,7,7,7,8,8,8,8,5,6,6,7,7,7,7,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,8,9,9,10,10,4,6,6,8,8,9,9,9,9,10,10,11,10,4,6,6,8,8,9,9,9,9,10,10,11,11,7,8,8,10,9,10,10,10,10,11,11,12,12,7,8,8,10,10,10,10,10,10,11,11,12,12,8,9,9,10,10,11,11,11,11,12,12,13,13,8,9,9,10,10,11,11,11,11,12,12,13,13,8,9,9,11,10,11,11,12,12,13,13,14,13,8,9,9,10,10,11,11,12,12,13,13,13,13,9,10,10,11,11,12,12,13,13,13,13,14,14,9,10,10,11,11,12,12,13,13,13,13,14,14,10,11,11,12,12,13,13,14,13,14,14,15,14,10,11,11,12,12,13,13,14,13,14,14,15,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,4,7,7,8,8,8,8,10,10,11,11,4,6,6,7,7,9,9,9,9,10,10,11,11,4,6,6,7,7,9,9,9,9,10,10,11,11,7,8,8,9,9,9,9,10,10,11,11,12,12,7,7,7,9,8,10,9,10,10,11,11,12,12,8,9,9,9,10,10,10,11,11,12,12,13,13,8,9,9,10,9,10,10,11,11,12,12,13,13,8,9,9,10,10,11,11,11,11,12,12,13,13,8,9,9,10,10,11,11,12,11,12,12,13,13,10,10,10,11,11,12,12,12,12,13,13,14,14,10,10,10,11,11,12,12,12,12,13,13,14,14,11,11,11,12,12,13,13,13,13,14,14,14,14,11,11,11,12,12,13,13,13,13,14,14,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,5,5,6,6,7,7,8,8,8,8,5,6,6,7,7,7,7,8,8,8,8,5,6,6,6,7,7,7,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,8,8,8,8,8,8,8,8,9,9,8,8,8,8,8,8,8,9,9,9,9,8,8,8,8,8,8,8,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,7,9,9,7,9,10,5,8,8,7,10,9,7,10,9,5,8,8,8,11,10,8,10,10,7,10,10,9,9,12,10,12,12,7,10,10,9,12,10,10,11,12,5,8,8,8,10,10,8,11,11,7,11,10,10,12,11,9,10,12,7,10,11,10,12,12,9,12,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,5,6,6,7,7,8,8,9,9,10,10,11,11,11,11,5,5,5,7,6,8,7,9,9,9,9,10,10,11,11,12,12,5,5,5,6,6,7,8,8,9,9,9,10,10,11,11,12,12,6,7,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,6,6,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,7,8,8,8,8,9,9,9,9,10,10,11,11,11,11,12,12,7,7,8,8,8,9,9,9,9,10,10,11,11,11,11,12,12,8,9,9,9,9,9,9,10,10,10,10,11,11,12,12,12,12,8,9,9,9,9,9,9,10,10,10,10,11,11,12,12,12,12,9,9,9,9,9,10,10,10,10,10,11,11,11,12,12,13,13,9,9,9,9,9,10,10,10,10,11,10,11,11,12,12,13,13,10,10,10,10,10,11,11,11,11,11,11,11,12,12,12,13,13,10,10,10,10,10,11,11,11,11,11,11,12,11,12,12,13,13,11,11,11,11,11,11,11,12,12,12,12,12,12,13,13,13,13,11,11,11,11,11,11,11,12,12,12,12,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,13,13,13,13,13,14,14,11,12,12,12,12,12,12,12,13,13,13,13,13,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,4,6,6,7,7,9,9,4,5,5,6,6,8,7,9,9,4,5,5,6,6,7,8,9,9,6,6,6,7,7,8,8,10,10,6,6,6,7,7,8,8,10,10,7,8,7,8,8,9,9,11,10,7,7,8,8,8,9,9,10,11,9,9,9,10,10,11,10,11,11,9,9,9,10,10,10,11,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,5,7,7,9,9,5,7,7,9,9,9,10,9,11,11,9,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,9,10,10,11,12,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,11,10,10,10,12,12,9,10,10,12,12,10,10,10,12,12,9,10,10,12,12,12,12,12,14,14,11,12,12,13,14,9,10,10,12,12,9,10,10,12,12,10,10,10,12,12,11,12,12,14,13,12,12,12,14,13,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,10,10,10,12,12,7,8,8,11,10,8,9,9,11,11,8,9,9,11,11,10,11,11,12,13,10,11,11,12,13,7,8,8,10,10,8,9,8,11,10,8,9,9,11,11,10,11,10,13,12,10,11,11,13,13,10,11,10,13,12,10,11,11,13,13,10,11,11,13,13,12,12,13,13,14,12,13,13,14,14,9,10,10,12,12,10,11,10,13,12,10,11,11,13,13,12,13,12,14,13,12,13,13,14,15,5,7,7,9,10,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,10,10,11,12,12,7,8,8,10,10,8,9,9,11,11,8,8,9,10,11,10,11,11,13,13,10,10,11,12,13,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,11,13,12,10,11,11,13,12,9,10,10,12,12,10,11,11,13,13,10,10,11,12,13,12,13,13,15,14,12,12,13,12,14,9,10,11,12,13,10,11,11,13,13,10,11,11,13,13,12,13,13,14,14,12,13,12,14,13,8,10,10,12,12,9,11,10,13,12,9,10,10,12,13,12,13,13,14,14,12,12,12,14,14],"i8",L3,F.GLOBAL_BASE+304880),d3([9,10,10,13,13,10,11,11,13,13,10,11,11,13,13,13,13,13,14,15,12,13,13,14,15,9,10,10,12,13,10,11,10,13,13,10,11,11,12,13,12,13,12,15,14,12,13,13,14,15,11,12,12,15,14,12,12,13,14,15,12,13,13,15,14,13,13,15,14,16,14,14,14,16,15,11,12,12,14,14,11,12,12,14,14,12,13,13,14,15,13,14,13,15,13,14,14,14,15,16,8,9,10,12,12,9,10,10,13,12,9,10,11,12,13,12,12,12,14,14,12,13,13,14,14,9,10,10,13,12,10,11,11,13,13,10,10,11,13,13,12,13,13,15,14,12,12,13,14,15,9,10,10,13,13,10,11,11,13,13,10,11,11,13,13,12,13,13,14,14,13,13,13,15,15,11,12,12,14,13,12,13,13,15,14,11,12,12,14,14,14,14,14,16,15,13,13,14,13,16,11,12,12,14,14,12,13,13,14,15,12,13,12,14,14,14,14,14,16,16,14,15,13,16,14,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,7,5,7,7,5,7,7,7,9,9,7,9,9,5,7,7,7,9,9,8,9,9,5,7,7,8,9,9,7,9,9,7,9,9,9,10,11,9,10,10,7,9,9,9,10,9,9,10,11,5,8,7,7,9,9,8,9,9,7,9,9,9,11,10,9,9,10,7,9,9,9,10,10,9,11,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,8,11,13,13,15,16,19,19,19,19,11,8,8,9,9,11,13,15,19,20,14,8,7,7,8,9,12,13,15,20,15,9,6,5,5,7,10,12,14,18,14,9,7,5,3,4,7,10,12,16,13,10,8,6,3,3,5,8,11,14,11,10,9,7,5,4,4,6,11,14,10,10,10,8,6,5,5,6,10,14,10,10,10,9,8,7,7,7,10,14,11,12,12,12,11,10,10,10,12,16,0,0,0,0,2,0,0,0,100,0,0,0,112,225,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,104,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,144,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,184,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,8,211,4,0,0,0,0,0,48,211,4,0,88,211,4,0,0,0,0,0,0,0,0,0,128,211,4,0,168,211,4,0,0,0,0,0,0,0,0,0,208,211,4,0,248,211,4,0,32,212,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,216,209,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,6,10,8,12,8,14,8,14,19,5,3,5,5,7,6,11,7,16,19,7,5,6,7,7,9,11,12,19,19,6,4,7,5,7,6,10,7,18,18,8,6,7,7,7,7,8,9,18,18,7,5,8,5,7,5,8,6,18,18,12,9,10,9,9,9,8,9,18,18,8,7,10,6,8,5,6,4,11,18,11,15,16,12,11,8,8,6,9,18,14,18,18,18,16,16,16,13,16,18,0,0,0,0,4,0,0,0,81,0,0,0,8,225,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,96,225,4,0,0,0,0,0,4,0,0,0,81,0,0,0,160,224,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,248,224,4,0,0,0,0,0,4,0,0,0,113,2,0,0,16,222,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,224,4,0,0,0,0,0,4,0,0,0,113,2,0,0,128,219,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,248,221,4,0,0,0,0,0,2,0,0,0,81,0,0,0,0,219,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,88,219,4,0,0,0,0,0,2,0,0,0,81,0,0,0,128,218,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,216,218,4,0,0,0,0,0,4,0,0,0,81,0,0,0,24,218,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,112,218,4,0,0,0,0,0,2,0,0,0,121,0,0,0,104,217,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,232,217,4,0,0,0,0,0,2,0,0,0,121,0,0,0,184,216,4,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,56,217,4,0,0,0,0,0,2,0,0,0,121,0,0,0,8,216,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,136,216,4,0,0,0,0,0,2,0,0,0,225,0,0,0,224,214,4,0,1,0,0,0,0,228,91,225,0,224,255,96,4,0,0,0,0,0,0,0,200,215,4,0,0,0,0,0,2,0,0,0,225,0,0,0,184,213,4,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,160,214,4,0,0,0,0,0,2,0,0,0,33,1,0,0,72,212,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,112,213,4,0,0,0,0,0,1,6,6,7,8,8,11,10,9,9,11,9,10,9,11,11,9,6,7,6,11,8,11,9,10,10,11,9,11,10,10,10,11,9,5,7,7,8,8,10,11,8,8,11,9,9,10,11,9,10,11,8,9,6,8,8,9,9,10,10,11,11,11,9,11,10,9,11,8,8,8,9,8,9,10,11,9,9,11,11,10,9,9,11,10,8,11,8,9,8,11,9,10,9,10,11,11,10,10,9,10,10,8,8,9,10,10,10,9,11,9,10,11,11,11,11,10,9,11,9,9,11,11,10,8,11,11,11,9,10,10,11,10,11,11,9,11,10,9,11,10,10,10,10,9,11,10,11,10,9,9,10,11,9,8,10,11,11,10,10,11,9,11,10,11,11,10,11,9,9,8,10,8,9,11,9,8,10,10,9,11,10,11,10,11,9,11,8,10,11,11,11,11,10,10,11,11,11,11,10,11,11,10,9,8,10,10,9,11,10,11,11,11,9,9,9,11,11,11,10,10,9,9,10,9,11,11,11,11,8,10,11,10,11,11,10,11,11,9,9,9,10,9,11,9,11,11,11,11,11,10,11,11,10,11,10,11,11,9,11,10,11,10,9,10,9,10,10,11,11,11,11,9,10,9,10,11,11,10,11,11,11,11,11,11,10,11,11,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,6,5,9,9,10,10,6,7,9,9,10,10,10,10,5,10,8,10,8,10,10,8,8,10,9,10,10,10,10,5,8,9,10,10,10,10,8,10,10,10,10,10,10,10,9,10,10,10,10,10,10,9,9,10,10,10,10,10,10,9,9,8,9,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,8,10,10,10,10,10,10,10,10,10,10,10,10,10,6,8,8,10,10,10,8,10,10,10,10,10,10,10,10,5,8,8,10,10,10,9,9,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,5,5,6,6,7,7,8,8,8,8,4,6,6,7,7,8,7,8,8,8,8,4,6,6,7,7,7,7,8,8,8,8,6,7,7,7,7,8,8,8,8,8,9,6,7,7,7,7,8,8,8,8,9,9,7,7,7,8,8,8,8,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,5,8,8,10,10,12,12,4,7,7,8,8,9,9,12,11,14,13,4,7,7,7,8,9,10,11,11,13,12,5,8,8,9,9,11,11,12,13,15,14,5,7,8,9,9,11,11,13,13,17,15,8,9,10,11,11,12,13,17,14,17,16,8,10,9,11,11,12,12,13,15,15,17,10,11,11,12,13,14,15,15,16,16,17,9,11,11,12,12,14,15,17,15,15,16,11,14,12,14,15,16,15,16,16,16,15,11,13,13,14,14,15,15,16,16,15,16,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,4,6,5,7,7,8,8,8,8,8,8,4,5,6,7,7,8,8,8,8,8,8,6,7,7,8,8,8,8,9,9,9,9,6,7,7,8,8,8,8,9,9,9,9,7,8,8,8,8,9,9,9,10,9,10,7,8,8,8,8,9,9,9,9,10,9,8,8,8,9,9,10,10,10,10,10,10,8,8,8,9,9,9,9,10,10,10,10,8,8,8,9,9,9,10,10,10,10,10,8,8,8,9,9,10,10,10,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,4,8,8,4,8,8,5,11,9,8,12,11,8,12,11,5,10,11,8,11,12,8,11,12,4,11,11,11,14,13,10,13,13,8,14,13,12,14,16,12,16,15,8,14,14,13,16,14,12,15,16,4,11,11,10,14,13,11,14,14,8,15,14,12,15,15,12,14,16,8,14,14,11,16,15,12,15,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,6,6,7,7,9,9,4,4,4,6,6,8,8,9,9,4,4,4,6,6,7,7,9,9,6,6,6,7,7,8,8,10,9,6,6,6,7,7,8,8,9,10,7,8,7,8,8,9,9,10,10,7,8,8,8,8,9,9,10,10,9,9,9,10,10,10,10,11,11,9,9,9,10,10,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,8,8,8,10,10,4,5,6,8,8,8,8,10,10,7,8,8,9,9,9,9,11,11,7,8,8,9,9,9,9,11,11,7,8,8,10,9,11,11,12,11,7,8,8,9,9,11,11,12,12,9,10,10,11,11,12,12,13,12,9,10,10,11,11,12,12,12,13,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,6,6,7,9,9,6,6,6,9,9,9,10,9,11,11,9,9,10,11,11,6,7,7,10,9,7,7,8,9,10,7,7,8,10,10,10,10,10,10,12,9,9,10,11,12,6,7,7,9,9,7,8,7,10,10,7,8,7,10,10,9,10,9,12,11,10,10,9,12,10,9,10,10,12,11,10,10,10,12,12,9,10,10,12,12,12,11,12,13,13,11,11,12,12,13,9,10,10,11,12,9,10,10,12,12,10,10,10,12,12,11,12,11,14,13,11,12,12,14,13,5,7,7,10,10,7,8,8,10,10,7,8,7,10,10,10,10,10,12,12,10,10,10,12,12,6,8,7,10,10,7,7,9,10,11,8,9,9,11,10,10,10,11,11,13,10,10,11,12,13,6,8,8,10,10,7,9,8,11,10,8,9,9,10,11,10,11,10,13,11,10,11,10,12,12,10,11,10,12,11,10,10,10,12,13,10,11,11,13,12,11,11,13,11,14,12,12,13,14,14,9,10,10,12,13,10,11,10,13,12,10,11,11,12,13,11,12,11,14,12,12,13,13,15,14,5,7,7,10,10,7,7,8,10,10,7,8,8,10,10,10,10,10,11,12,10,10,10,12,12,7,8,8,10,10,8,9,8,11,10,7,8,9,10,11,10,11,11,12,12,10,10,11,11,13,7,7,8,10,10,8,8,9,10,11,7,9,7,11,10,10,11,11,13,12,11,11,10,13,11,9,10,10,12,12,10,11,11,13,12,10,10,11,12,12,12,13,13,14,14,11,11,12,12,14,10,10,11,12,12,10,11,11,12,13,10,10,10,13,12,12,13,13,15,14,12,13,10,14,11,8,10,10,12,12,10,11,10,13,13,9,10,10,12,12,12,13,13,15,14,11,12,12,13,13,9,10,10,13,12,10,10,11,13,13,10,11,10,13,12,12,12,13,14,15,12,13,12,15,13,9,10,10,12,13,10,11,10,13,12,10,10,11,12,13,12,14,12,15,13,12,12,13,14,15,11,12,11,14,13,11,11,12,14,15,12,13,12,15,14,13,11,15,11,16,13,14,14,16,15,11,12,12,14,14,11,12,11,14,13,12,12,13,14,15,13,14,12,16,12,14,14,14,15,15,8,10,10,12,12,9,10,10,12,12,10,10,11,13,13,11,12,12,13,13,12,13,13,14,15,9,10,10,13,12,10,11,11,13,12,10,10,11,13,13,12,13,12,15,14,12,12,13,13,16,9,9,10,12,13,10,10,11,12,13,10,11,10,13,13,12,12,13,13,15,13,13,12,15,13,11,12,12,14,14,12,13,12,15,14,11,11,12,13,14,14,14,14,16,15,13,12,15,12,16,11,11,12,13,14,12,13,13,14,15,10,12,11,14,13,14,15,14,16,16,13,14,11,15,11,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,8,8,6,7,7,9,9,5,7,7,9,9,9,10,9,11,11,9,9,10,11,11,6,8,8,10,10,8,9,10,11,11,8,9,10,11,11,10,11,11,12,13,10,11,11,13,13,6,8,8,10,10,8,10,9,11,11,8,10,9,11,11,10,11,11,13,13,10,11,11,13,12,9,11,11,14,13,10,12,12,15,14,10,12,11,14,13,12,13,13,15,15,12,13,13,16,14,9,11,11,13,14,10,11,12,14,14,10,12,12,14,15,12,13,13,14,15,12,13,14,15,16,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,14,8,10,10,12,12,9,11,12,12,13,10,12,12,13,13,12,12,13,14,15,11,13,13,15,15,7,10,10,12,12,9,12,11,13,12,10,11,12,13,13,12,13,12,15,14,11,12,13,15,15,10,12,12,15,14,11,13,13,16,15,11,13,13,16,15,14,13,14,15,16,13,15,15,17,17,10,12,12,14,15,11,12,12,15,15,11,13,13,15,16,13,15,13,16,15,13,15,15,16,17,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,14,7,10,10,12,12,10,12,12,14,13,9,11,12,12,13,12,13,13,15,15,12,12,13,13,15,7,10,10,12,13,10,11,12,13,13,10,12,11,13,13,11,13,13,15,15,12,13,12,15,14,9,12,12,15,14,11,13,13,15,15,11,12,13,15,15,13,14,14,17,19,13,13,14,16,16,10,12,12,14,15,11,13,13,15,16,11,13,12,16,15,13,15,15,17,18,14,15,13,16,15,8,11,11,15,14,10,12,12,16,15,10,12,12,16,16,14,15,15,18,17,13,14,15,16,18,9,12,12,15,15,11,12,14,16,17,11,13,13,16,15,15,15,15,17,18,14,15,16,17,17,9,12,12,15,15,11,14,13,16,16,11,13,13,16,16,15,16,15,17,18,14,16,15,17,16,12,14,14,17,16,12,14,15,18,17,13,15,15,17,17,15,15,18,16,20,15,16,17,18,18,11,14,14,16,17,13,15,14,18,17,13,15,15,17,17,15,17,15,18,17,15,17,16,19,18,8,11,11,14,15,10,12,12,15,15,10,12,12,16,16,13,14,14,17,16,14,15,15,17,17,9,12,12,15,16,11,13,13,16,16,11,12,13,16,16,14,16,15,20,17,14,16,16,17,17,9,12,12,15,16,11,13,13,16,17,11,13,13,17,16,14,15,15,17,18,15,15,15,18,18,11,14,14,17,16,13,15,15,17,17,13,14,14,18,17,15,16,16,18,19,15,15,17,17,19,11,14,14,16,17,13,15,14,17,19,13,15,14,18,17,15,17,16,18,18,15,17,15,18,16,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,5,6,6,5,6,6,5,6,6,6,7,8,6,7,8,5,6,6,6,8,7,6,8,7,5,6,6,6,8,8,6,8,8,6,8,8,7,7,10,8,9,9,6,8,8,7,9,8,8,9,10,5,6,6,6,8,8,7,8,8,6,8,8,8,10,9,7,8,9,6,8,8,8,9,9,7,10,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,7,7,10,10,7,9,10,5,7,8,7,10,9,7,10,10,5,8,8,8,10,10,8,10,10,7,10,10,10,11,12,10,12,13,7,10,10,9,13,11,10,12,13,5,8,8,8,10,10,8,10,10,7,10,10,10,12,12,9,11,12,7,10,11,10,12,12,10,13,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,7,10,9,11,10,15,11,13,16,6,4,6,6,7,7,10,9,12,16,10,6,5,6,6,7,10,11,16,16,9,6,7,6,7,7,10,8,14,16,11,6,5,4,5,6,8,9,15,16,9,6,6,5,6,6,9,8,14,16,12,7,6,6,5,6,6,7,13,16,8,6,7,6,5,5,4,4,11,16,9,8,9,9,7,7,6,5,13,16,14,14,16,15,16,15,16,16,16,16,0,0,0,0,2,0,0,0,64,0,0,0,136,239,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,226,4,0,0,0,0,0,0,0,0,0,0,0,0,0,232,226,4,0,0,0,0,0,0,0,0,0,0,0,0,0,16,227,4,0,0,0,0,0,0,0,0,0,0,0,0,0,56,227,4,0,0,0,0,0,0,0,0,0,0,0,0,0,96,227,4,0,0,0,0,0,136,227,4,0,176,227,4,0,0,0,0,0,0,0,0,0,216,227,4,0,0,228,4,0,40,228,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,81,0,0,0,32,239,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,120,239,4,0,0,0,0,0,4,0,0,0,81,0,0,0,184,238,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,16,239,4,0,0,0,0,0,4,0,0,0,113,2,0,0,40,236,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,238,4,0,0,0,0,0,4,0,0,0,113,2,0,0,152,233,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,236,4,0,0,0,0,0,2,0,0,0,81,0,0,0,24,233,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,112,233,4,0,0,0,0,0,2,0,0,0,169,0,0,0,48,232,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,224,232,4,0,0,0,0,0,2,0,0,0,25,0,0,0,248,231,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,24,232,4,0,0,0,0,0,4,0,0,0,81,0,0,0,144,231,4,0,1,0,0,0,0,176,19,225,0,176,19,97,2,0,0,0,0,0,0,0,232,231,4,0,0,0,0,0,2,0,0,0,225,0,0,0,104,230,4,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,80,231,4,0,0,0,0,0,2,0,0,0,185,1,0,0,80,228,4,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,16,230,4,0,0,0,0,0,1,6,6,7,8,7,7,10,9,10,9,11,10,9,11,10,9,9,9,9,10,6,8,7,9,9,8,8,10,10,9,11,11,12,12,10,9,11,9,12,10,9,6,9,8,9,12,8,8,11,9,11,11,12,11,12,12,10,11,11,10,10,11,7,10,9,9,9,9,9,10,9,10,9,10,10,12,10,10,10,11,12,10,10,7,9,9,9,10,9,9,10,10,9,9,9,11,11,10,10,10,10,9,9,12,7,9,10,9,11,9,10,9,10,11,11,11,10,11,12,9,12,11,10,10,10,7,9,9,9,9,10,12,10,9,11,12,10,11,12,12,11,9,10,11,10,11,7,9,10,10,11,10,9,10,11,11,11,10,12,12,12,11,11,10,11,11,12,8,9,10,12,11,10,10,12,12,12,12,12,10,11,11,9,11,10,12,11,11,8,9,10,10,11,12,11,11,10,10,10,12,12,12,9,10,12,12,12,12,12,8,10,11,10,10,12,9,11,12,12,11,12,12,12,12,10,12,10,10,10,10,8,12,11,11,11,10,10,11,12,12,12,12,11,12,12,12,11,11,11,12,10,9,10,10,12,10,12,10,12,12,10,10,10,11,12,12,12,11,12,12,12,11,10,11,12,12,12,11,12,12,11,12,12,11,12,12,12,12,11,12,12,10,10,10,10,11,11,12,11,12,12,12,12,12,12,12,11,12,11,10,11,11,12,11,11,9,10,10,10,12,10,10,11,9,11,12,11,12,11,12,12,10,11,10,12,9,9,9,12,11,10,11,10,12,10,12,10,12,12,12,11,11,11,11,11,10,9,10,10,11,10,11,11,12,11,10,11,12,12,12,11,11,9,12,10,12,9,10,12,10,10,11,10,11,11,12,11,10,11,10,11,11,11,11,12,11,11,10,9,10,10,10,9,11,11,10,9,12,10,11,12,11,12,12,11,12,11,12,11,10,11,10,12,11,12,11,12,11,12,10,11,10,10,12,11,10,11,11,11,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,5,5,6,5,9,10,11,11,10,10,10,10,10,10,5,8,8,8,10,10,10,10,10,10,10,10,10,10,10,5,8,9,9,9,10,10,10,10,10,10,10,10,10,10,5,10,8,10,10,10,10,10,10,10,10,10,10,10,10,4,8,9,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,5,6,6,4,6,6,6,6,4,6,6,6,6,6,6,6,7,7,6,6,6,7,7,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,10,10,12,12,13,13,18,17,3,6,6,9,9,11,11,13,13,14,14,18,17,3,6,6,9,9,11,11,13,13,14,14,17,18,7,9,9,11,11,13,13,14,14,15,15,0,0,7,9,9,11,11,13,13,14,14,15,16,19,18,10,11,11,13,13,14,14,16,15,17,18,0,0,10,11,11,13,13,14,14,15,15,16,18,0,0,11,13,13,14,14,15,15,17,17,0,19,0,0,11,13,13,14,14,14,15,16,18,0,19,0,0,13,14,14,15,15,18,17,18,18,0,19,0,0,13,14,14,15,16,16,16,18,18,19,0,0,0,16,17,17,0,17,19,19,0,19,0,0,0,0,16,19,16,17,18,0,19,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,8,8,8,9,9,4,6,6,8,8,8,8,9,9,7,8,8,9,9,9,9,11,10,7,8,8,9,9,9,9,10,11,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,9,9,10,10,11,11,12,12,9,9,9,10,10,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,6,6,6,9,9,6,6,6,9,9,9,10,9,11,11,9,9,9,11,11,6,7,7,10,10,7,7,8,10,10,7,7,8,10,10,10,10,10,11,12,9,10,10,11,12,6,7,7,10,10,7,8,7,10,10,7,8,7,10,10,10,11,10,12,11,10,10,10,13,10,9,10,10,12,12,10,11,10,14,12,9,11,11,13,13,11,12,13,13,13,11,12,12,15,13,9,10,10,12,13,9,11,10,12,13,10,10,11,12,13,11,12,12,12,13,11,12,12,13,13,5,7,7,10,10,7,8,8,10,10,7,8,8,10,10,10,11,10,12,13,10,10,11,12,12,6,8,8,11,10,7,8,9,10,12,8,9,9,11,11,11,10,11,11,12,10,11,11,13,12,7,8,8,10,11,8,9,8,11,10,8,9,9,11,11,10,12,10,13,11,10,11,11,13,13,10,11,10,14,13,10,10,11,13,13,10,12,11,14,13,12,11,13,12,13,13,12,13,14,14,10,11,11,13,13,10,11,10,12,13,10,12,12,12,14,12,12,12,14,12,12,13,12,17,15,5,7,7,10,10,7,8,8,10,10,7,8,8,11,10,10,10,11,12,12,10,11,11,12,13,6,8,8,11,10,8,9,9,11,11,7,8,9,10,11,11,11,11,12,12,10,10,11,12,13,6,8,8,10,11,8,9,9,11,11,7,9,7,11,10,10,12,12,13,13,11,11,10,13,11,9,11,10,14,13,11,11,11,15,13,10,10,11,13,13,12,13,13,14,14,12,11,12,12,13,10,11,11,12,13,10,11,12,13,13,10,11,10,13,12,12,12,13,14,0,12,13,11,13,11,8,10,10,13,13,10,11,11,14,13,10,11,11,13,12,13,14,14,14,15,12,12,12,15,14,9,11,10,13,12,10,10,11,13,14,11,11,11,15,12,13,12,14,15,16,13,13,13,14,13,9,11,11,12,12,10,12,11,13,13,10,11,11,13,14,13,13,13,15,15,13,13,14,17,15,11,12,12,14,14,10,11,12,13,15,12,13,13,0,15,13,11,14,12,16,14,16,14,0,15,11,12,12,14,16,11,13,12,16,15,12,13,13,14,15,12,14,12,15,13,15,14,14,16,16,8,10,10,13,13,10,11,10,13,14,10,11,11,13,13,13,13,12,14,14,14,13,13,16,17,9,10,10,12,14,10,12,11,14,13,10,11,12,13,14,12,12,12,15,15,13,13,13,14,14,9,10,10,13,13,10,11,12,12,14,10,11,10,13,13,13,13,13,14,16,13,13,13,14,14,11,12,13,15,13,12,14,13,14,16,12,12,13,13,14,13,14,14,17,15,13,12,17,13,16,11,12,13,14,15,12,13,14,14,17,11,12,11,14,14,13,16,14,16,0,14,15,11,15,11,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,7,7,6,7,7,8,8,6,7,8,8,8,8,9,9,11,11,8,9,9,11,11,6,9,8,10,10,8,10,10,11,11,8,10,10,11,11,10,11,10,13,12,9,11,10,13,13,6,8,9,10,10,8,10,10,11,11,8,10,10,11,11,9,10,11,13,12,10,10,11,12,12,8,11,11,14,13,10,12,11,15,13,9,12,11,15,14,12,14,13,16,14,12,13,13,17,14,8,11,11,13,14,9,11,12,14,15,10,11,12,13,15,11,13,13,14,16,12,13,14,14,16,5,9,9,11,11,9,11,11,12,12,8,11,11,12,12,11,12,12,15,14,10,12,12,15,15,8,11,11,13,12,10,12,12,13,13,10,12,12,14,13,12,12,13,14,15,11,13,13,17,16,7,11,11,13,13,10,12,12,14,13,10,12,12,13,14,12,13,12,15,14,11,13,13,15,14,9,12,12,16,15,11,13,13,17,16,10,13,13,16,16,13,14,15,15,16,13,15,14,19,17,9,12,12,14,16,11,13,13,15,16,10,13,13,17,16,13,14,13,17,15,12,15,15,16,17,5,9,9,11,11,8,11,11,13,12,9,11,11,12,12,10,12,12,14,15,11,12,12,14,14,7,11,10,13,12,10,12,12,14,13,10,11,12,13,13,11,13,13,15,16,12,12,13,15,15,7,11,11,13,13,10,13,13,14,14,10,12,12,13,13,11,13,13,16,15,12,13,13,15,14,9,12,12,15,15,10,13,13,17,16,11,12,13,15,15,12,15,14,18,18,13,14,14,16,17,9,12,12,15,16,10,13,13,15,16,11,13,13,15,16,13,15,15,17,17,13,15,14,16,15,7,11,11,15,16,10,13,12,16,17,10,12,13,15,17,15,16,16,18,17,13,15,15,17,18,8,12,12,16,16,11,13,14,17,18,11,13,13,18,16,15,17,16,17,19,14,15,15,17,16,8,12,12,16,15,11,14,13,18,17,11,13,14,18,17,15,16,16,18,17,13,16,16,18,18,11,15,14,18,17,13,14,15,18,0,12,15,15,0,17,17,16,17,17,18,14,16,18,18,0,11,14,14,17,0,12,15,14,17,19,12,15,14,18,0,15,18,16,0,17,14,18,16,18,0,7,11,11,16,15,10,12,12,18,16,10,13,13,16,15,13,15,14,17,17,14,16,16,19,18,8,12,12,16,16,11,13,13,18,16,11,13,14,17,16,14,15,15,19,18,15,16,16,0,19,8,12,12,16,17,11,13,13,17,17,11,14,13,17,17,13,15,15,17,19,15,17,17,19,0,11,14,15,19,17,12,15,16,18,18,12,14,15,19,17,14,16,17,0,18,16,16,19,17,0,11,14,14,18,19,12,15,14,17,17,13,16,14,17,16,14,17,16,18,18,15,18,15,0,18,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,7,8,9,7,8,9,5,7,7,7,9,8,7,9,7,4,7,7,7,9,9,7,8,8,6,9,8,7,8,11,9,11,10,6,8,9,8,11,8,9,10,11,4,7,7,7,8,8,7,9,9,6,9,8,9,11,10,8,8,11,6,8,9,9,10,11,8,11,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,8,5,8,8,8,10,10,8,10,11,5,8,8,8,10,10,8,10,10,4,9,9,9,12,11,8,11,11,8,12,11,10,12,14,10,13,13,7,11,11,10,14,12,11,14,14,4,9,9,8,11,11,9,11,12,7,11,11,10,13,14,10,12,14,8,11,12,10,14,14,10,13,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,5,8,7,14,8,9,19,5,2,5,5,9,6,9,19,8,4,5,7,8,9,13,19,7,4,6,5,9,6,9,19,12,8,7,9,10,11,13,19,8,5,8,6,9,6,7,19,8,8,10,7,7,4,5,19,12,17,19,15,18,13,11,18,9,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,9,0,0,0,9,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,112,199,64,0,0,0,0,0,136,211,64,0,0,0,0,0,124,229,64,0,0,0,0,0,255,244,64,200,47,1,0,32,240,4,0,200,47,1,0,64,240,4,0,200,47,1,0,128,240,4,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,248,45,5,0,248,45,5,0,32,46,5,0,32,46,5,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,32,5,5,0,32,5,5,0,72,5,5,0,72,5,5,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,8,6,5,0,8,6,5,0,72,5,5,0,72,5,5,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,192,240,4,0,192,240,4,0,232,240,4,0,232,240,4,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,168,241,4,0,168,241,4,0,232,240,4,0,232,240,4,0,2,0,0,0,100,0,0,0,184,4,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,242,4,0,0,0,0,0,0,0,0,0,0,0,0,0,96,242,4,0,0,0,0,0,0,0,0,0,0,0,0,0,136,242,4,0,0,0,0,0,0,0,0,0,0,0,0,0,176,242,4,0,0,0,0,0,216,242,4,0,0,243,4,0,0,0,0,0,0,0,0,0,40,243,4,0,80,243,4,0,0,0,0,0,0,0,0,0,120,243,4,0,160,243,4,0,0,0,0,0,0,0,0,0,200,243,4,0,240,243,4,0,0,0,0,0,0,0,0,0,24,244,4,0,64,244,4,0,104,244,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,208,241,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,9,9,9,8,9,10,13,16,5,4,5,6,7,7,8,9,12,16,6,5,5,5,7,7,9,10,12,15,7,6,5,4,5,6,8,9,10,13,8,7,7,5,5,5,7,9,10,12,7,7,7,6,5,5,6,7,10,12,8,8,8,7,7,5,5,6,9,11,8,9,9,8,8,6,6,5,8,11,10,11,12,12,11,9,9,8,9,12,13,14,15,15,14,12,12,11,11,13,0,0,0,0,4,0,0,0,81,0,0,0,80,4,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,4,5,0,0,0,0,0,4,0,0,0,113,2,0,0,192,1,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,4,5,0,0,0,0,0,2,0,0,0,81,0,0,0,64,1,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,152,1,5,0,0,0,0,0,2,0,0,0,33,1,0,0,208,255,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,248,0,5,0,0,0,0,0,4,0,0,0,81,0,0,0,104,255,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,192,255,4,0,0,0,0,0,2,0,0,0,121,0,0,0,184,254,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,56,255,4,0,0,0,0,0,2,0,0,0,169,0,0,0,208,253,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,128,254,4,0,0,0,0,0,2,0,0,0,25,0,0,0,152,253,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,184,253,4,0,0,0,0,0,2,0,0,0,169,0,0,0,176,252,4,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,96,253,4,0,0,0,0,0,2,0,0,0,121,0,0,0,0,252,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,128,252,4,0,0,0,0,0,2,0,0,0,225,0,0,0,216,250,4,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,192,251,4,0,0,0,0,0,2,0,0,0,185,1,0,0,192,248,4,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,128,250,4,0,0,0,0,0,2,0,0,0,33,1,0,0,80,247,4,0,1,0,0,0,0,24,157,225,0,24,61,97,5,0,0,0,0,0,0,0,120,248,4,0,0,0,0,0,2,0,0,0,105,1,0,0,144,245,4,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,0,247,4,0,0,0,0,0,1,0,0,0,49,0,0,0,144,244,4,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,200,244,4,0,0,0,0,0,2,4,4,4,4,5,5,5,5,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,7,8,8,10,9,11,10,13,11,14,13,6,6,6,8,8,8,8,8,7,9,8,11,9,13,11,14,12,14,13,5,6,6,8,8,8,8,8,8,9,9,11,11,13,11,14,13,15,15,17,8,8,8,8,9,9,9,8,11,9,12,10,13,11,14,12,14,13,17,8,8,8,8,9,9,9,9,10,10,11,11,13,13,13,14,16,15,17,12,12,8,8,9,9,10,10,11,11,12,11,13,12,13,12,14,13,16,12,12,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,17,17,17,9,9,9,9,11,11,12,12,12,13,13,13,16,14,14,14,17,17,17,9,8,9,8,11,10,12,12,13,13,14,14,15,15,16,16,17,17,17,12,12,10,10,11,12,12,13,13,14,13,15,15,14,16,15,17,17,17,12,12,10,8,12,9,13,12,14,14,15,14,15,16,16,16,17,17,17,17,17,11,11,12,12,14,14,14,16,15,16,15,16,15,17,17,17,17,17,17,11,9,12,10,13,11,15,14,16,16,17,16,16,15,17,17,17,17,17,15,15,12,12,14,14,15,16,16,15,16,16,17,17,17,17,17,17,17,14,14,12,10,14,11,15,12,17,16,15,16,17,16,17,17,17,17,17,17,17,13,13,14,14,14,16,17,17,16,17,17,17,17,17,17,17,17,17,17,13,9,13,12,15,13,16,16,17,17,17,17,17,17,17,17,17,17,17,15,17,14,14,15,16,16,17,16,17,16,17,17,17,17,17,17,17,17,17,17,14,13,15,16,16,17,16,17,17],"i8",L3,F.GLOBAL_BASE+315120),d3([17,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,4,3,10,8,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,11,11,11,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,11,10,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,10,9,10,10,10,10,11,11,11,8,8,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,11,11,11,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,10,10,6,6,6,8,8,9,9,8,8,9,9,10,10,11,11,6,5,5,8,7,9,9,8,8,9,9,10,10,11,11,20,8,8,8,8,9,9,9,9,10,10,11,10,12,11,20,8,8,8,8,9,9,9,9,10,10,11,11,12,12,20,12,12,9,9,10,10,10,10,11,11,12,12,13,12,20,13,13,9,9,10,10,10,10,11,11,12,12,13,13,20,20,20,9,9,9,9,10,10,11,11,12,12,13,12,20,20,20,9,9,9,8,10,10,12,11,12,12,13,13,20,20,20,13,13,10,10,11,11,12,12,13,13,13,13,20,20,20,13,13,10,10,11,10,12,11,13,13,14,14,20,20,20,20,20,11,11,11,11,12,12,13,13,14,14,20,20,20,20,20,11,10,11,11,13,11,13,13,14,14,20,20,21,21,21,14,14,11,12,13,13,13,13,14,14,21,21,21,21,21,15,15,12,11,13,12,14,13,15,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,7,7,9,9,9,6,7,7,7,7,7,8,8,9,9,9,6,6,7,7,7,7,8,8,9,9,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,7,7,8,8,9,9,9,7,7,8,8,7,7,8,8,9,9,9,9,9,8,8,7,7,8,8,9,9,9,9,9,8,8,7,7,8,8,9,9,9,9,9,7,7,7,7,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,8,10,9,10,10,5,5,5,7,7,9,9,10,10,11,10,12,11,6,5,5,7,7,9,9,10,10,11,11,12,12,20,7,7,7,7,9,9,10,10,11,11,12,12,20,7,7,7,7,9,9,11,10,12,11,12,12,20,11,11,8,8,10,10,11,11,12,12,13,13,20,12,12,8,8,9,9,11,11,12,12,13,13,20,20,21,10,10,10,10,11,11,12,12,13,13,21,21,21,10,10,10,10,11,11,12,12,13,13,21,21,21,14,14,11,11,12,12,13,13,13,14,21,21,21,16,15,11,11,12,11,13,13,14,14,21,21,21,21,21,13,13,12,12,13,13,14,14,21,21,21,21,21,13,13,12,12,13,13,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,7,8,8,9,9,10,10,5,5,5,7,7,9,9,9,9,11,11,12,12,6,5,5,7,7,9,9,10,9,11,11,12,12,0,7,7,7,7,9,9,10,10,11,11,12,12,0,7,7,7,7,9,9,10,10,11,11,12,12,0,11,11,8,8,10,10,11,11,12,12,13,13,0,12,12,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,6,6,7,7,7,7,11,10,10,6,6,7,7,8,8,8,8,10,10,10,6,6,7,7,8,8,8,8,11,11,11,7,7,8,8,8,8,9,9,11,11,11,6,7,8,8,8,8,9,9,11,11,11,7,7,8,8,8,8,8,8,11,11,11,7,7,8,8,8,8,9,9,11,11,11,8,8,8,8,8,8,8,8,11,11,11,11,11,8,8,8,8,8,8,12,11,11,11,11,8,8,8,8,8,8,12,11,11,11,11,7,7,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,6,6,10,11,10,10,10,11,4,6,6,10,10,11,10,11,10,5,10,10,9,12,11,10,12,12,7,10,10,12,12,12,12,13,13,7,11,10,11,12,12,12,13,13,6,11,10,10,12,12,11,12,12,7,11,10,12,13,13,12,12,12,7,10,11,12,13,13,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,6,7,7,8,8,8,8,9,9,0,0,0,6,6,7,7,8,8,8,8,9,9,10,10,11,10,0,0,0,6,6,7,7,8,8,8,8,9,9,10,10,10,10,0,0,0,6,6,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,6,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,10,10,11,11,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,11,11,12,12,0,0,0,7,8,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,5,5,7,7,8,8,0,0,0,6,6,8,8,9,9,0,0,0,6,6,8,8,9,9,0,0,0,7,7,8,9,10,10,0,0,0,7,7,9,9,10,10,0,0,0,8,8,9,9,11,11,0,0,0,7,7,9,9,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,7,7,0,0,0,8,8,0,0,0,8,8,0,0,0,8,8,0,0,0,8,8,4,4,4,8,7,0,0,0,8,8,0,0,0,8,8,0,0,0,9,9,0,0,0,9,9,4,4,4,7,8,0,0,0,8,8,0,0,0,8,8,0,0,0,9,9,0,0,0,9,9,7,8,8,10,9,0,0,0,12,11,0,0,0,11,12,0,0,0,14,13,0,0,0,14,14,7,8,8,9,10,0,0,0,11,12,0,0,0,11,11,0,0,0,14,14,0,0,0,14,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,8,11,11,0,0,0,12,11,0,0,0,12,12,0,0,0,13,12,0,0,0,13,13,8,8,8,11,11,0,0,0,11,11,0,0,0,12,12,0,0,0,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,8,12,11,0,0,0,12,12,0,0,0,12,11,0,0,0,13,13,0,0,0,13,13,8,8,8,11,12,0,0,0,11,12,0,0,0,11,12,0,0,0,13,14,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,9,14,14,0,0,0,13,13,0,0,0,13,13,0,0,0,13,12,0,0,0,13,13,8,9,9,14,14,0,0,0,13,13,0,0,0,13,13,0,0,0,12,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,9,14,14,0,0,0,13,13,0,0,0,13,13,0,0,0,13,13,0,0,0,13,12,8,9,9,14,14,0,0,0,13,13,0,0,0,13,13,0,0,0,13,13,0,0,0,12,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,3,3,0,0,0,0,0,0,4,5,5,0,0,0,0,0,0,4,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,7,10,12,11,12,13,15,16,18,15,10,8,8,8,9,10,12,13,14,17,10,7,7,7,7,8,10,12,15,18,10,7,7,5,5,6,8,10,13,15,10,7,6,5,4,4,6,9,12,15,11,7,7,5,4,3,4,7,11,13,12,9,8,7,5,4,4,5,10,13,11,11,11,9,7,5,5,5,9,12,13,12,13,12,10,8,8,7,9,13,14,14,14,14,13,11,11,10,10,13,0,0,0,0,2,0,0,0,100,0,0,0,144,45,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,232,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,16,7,5,0,0,0,0,0,0,0,0,0,0,0,0,0,56,7,5,0,0,0,0,0,96,7,5,0,136,7,5,0,0,0,0,0,0,0,0,0,176,7,5,0,216,7,5,0,0,0,0,0,0,0,0,0,0,8,5,0,40,8,5,0,80,8,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,48,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,5,20,7,10,7,8,10,11,11,4,2,20,5,8,6,7,9,10,10,20,20,20,20,19,19,19,19,19,19,7,5,19,6,10,7,9,11,13,17,11,8,19,10,7,7,8,10,11,15,7,5,19,7,7,5,6,9,11,16,7,6,19,8,7,6,6,7,9,13,9,9,19,11,9,8,6,7,8,13,12,14,19,16,13,10,9,8,9,13,14,17,19,18,18,17,12,11,11,13,0,0,0,0,8,0,0,0,161,25,0,0,216,19,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,128,45,5,0,0,0,0,0,4,0,0,0,113,2,0,0,72,17,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,19,5,0,0,0,0,0,2,0,0,0,81,0,0,0,200,16,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,32,17,5,0,0,0,0,0,2,0,0,0,81,0,0,0,72,16,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,160,16,5,0,0,0,0,0,2,0,0,0,33,1,0,0,216,14,5,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,0,16,5,0,0,0,0,0,4,0,0,0,81,0,0,0,112,14,5,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,200,14,5,0,0,0,0,0,2,0,0,0,121,0,0,0,192,13,5,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,64,14,5,0,0,0,0,0,2,0,0,0,169,0,0,0,216,12,5,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,136,13,5,0,0,0,0,0,2,0,0,0,25,0,0,0,160,12,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,12,5,0,0,0,0,0,2,0,0,0,169,0,0,0,184,11,5,0,1,0,0,0,0,136,93,225,0,176,19,97,4,0,0,0,0,0,0,0,104,12,5,0,0,0,0,0,2,0,0,0,225,0,0,0,144,10,5,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,120,11,5,0,0,0,0,0,2,0,0,0,185,1,0,0,120,8,5,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,56,10,5,0,0,0,0,0,1,4,4,6,6,7,7,8,7,8,8,9,9,9,9,10,10,10,9,10,10,11,12,12,8,8,8,8,9,9,9,9,10,10,10,10,10,11,11,10,12,11,11,13,11,7,7,8,8,8,8,9,9,9,10,10,10,10,9,10,10,11,11,12,11,11,8,8,8,8,9,9,10,10,10,10,11,11,11,11,11,11,11,12,11,12,12,8,8,9,9,9,9,9,10,10,10,10,10,10,11,11,11,11,11,11,12,11,9,9,9,9,10,10,10,10,11,10,11,11,11,11,11,11,12,12,12,12,11,9,9,9,9,10,10,10,10,11,11,11,11,11,11,11,11,11,12,12,12,13,9,10,10,9,11,10,10,10,10,11,11,11,11,11,10,11,12,11,12,12,11,12,11,10,9,10,10,11,10,11,11,11,11,11,11,11,11,11,12,12,11,12,12,12,10,10,10,11,10,11,11,11,11,11,11,11,11,11,11,11,12,13,12,12,11,9,10,10,11,11,10,11,11,11,12,11,11,11,11,11,12,12,13,13,12,13,10,10,12,10,11,11,11,11,11,11,11,11,11,12,12,11,13,12,12,12,12,13,12,11,11,11,11,11,11,12,11,12,11,11,11,11,12,12,13,12,11,12,12,11,11,11,11,11,12,11,11,11,11,12,11,11,12,11,12,13,13,12,12,12,12,11,11,11,11,11,12,11,11,12,11,12,11,11,11,11,13,12,12,12,12,13,11,11,11,12,12,11,11,11,12,11,12,12,12,11,12,13,12,11,11,12,12,11,12,11,11,11,12,12,11,12,11,11,11,12,12,12,12,13,12,13,12,12,12,12,11,11,12,11,11,11,11,11,11,12,12,12,13,12,11,13,13,12,12,11,12,10,11,11,11,11,12,11,12,12,11,12,12,13,12,12,13,12,12,12,12,12,11,12,12,12,11,12,11,11,11,12,13,12,13,13,13,13,13,12,13,13,12,12,13,11,11,11,11,11,12,11,11,12,11,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,4,4,8,8,12,13,14,14,14,14,14,14,6,6,6,6,6,10,9,14,14,14,14,14,14,14,14,7,6,5,6,6,10,9,12,13,13,13,13,13,13,13,13,7,7,9,9,11,11,12,13,13,13,13,13,13,13,13,7,7,8,8,11,12,13,13,13,13,13,13,13,13,13,12,12,10,10,13,12,13,13,13,13,13,13,13,13,13,12,12,10,10,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,6,5,5,7,8,8,9,8,8,9,9,10,11,6,5,5,8,8,9,9,8,8,9,10,10,11,0,8,8,8,9,9,9,9,9,10,10,11,11,0,9,9,9,8,9,9,9,9,10,10,11,11,0,13,13,9,9,10,10,10,10,11,11,12,12,0,14,13,9,9,10,10,10,10,11,11,12,12,0,0,0,10,10,9,9,11,11,12,12,13,12,0,0,0,10,10,9,9,10,10,12,12,13,13,0,0,0,13,14,11,10,11,11,12,12,13,14,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,12,12,12,12,13,13,14,15,0,0,0,0,0,12,12,12,12,13,13,14,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,6,7,7,7,7,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,9,9,10,10,10,10,10,8,8,8,8,9,9,10,10,10,10,10,9,9,8,8,9,9,10,10,10,10,10,8,8,8,8,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,6,7,6,6,4,7,7,10,9,10,10,10,9,4,7,7,10,10,10,11,10,10,6,10,10,11,11,11,11,10,10,6,10,9,11,11,11,11,10,10,6,10,10,11,11,11,11,10,10,7,11,11,11,11,11,12,12,11,6,10,10,11,10,10,11,11,11,6,10,10,10,11,10,11,11,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,6,6,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,9,10,9,10,10,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,11,12,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,10,10,11,10,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,5,5,6,6,8,8,0,0,0,7,7,7,7,9,9,0,0,0,7,7,7,7,9,9,0,0,0,8,8,8,8,9,9,0,0,0,8,8,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,10,10,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,2,3,7,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,8,9,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,9,11,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,11,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,8,9,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,9,11,9],"i8",L3,F.GLOBAL_BASE+325360),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,6,17,8,12,9,10,10,12,13,5,2,17,4,9,5,7,8,11,13,16,16,16,16,16,16,16,16,16,16,6,4,16,5,10,5,7,10,14,16,13,9,16,11,8,7,8,9,13,16,7,4,16,5,7,4,6,8,11,13,8,6,16,7,8,5,5,7,9,13,9,8,16,9,8,6,6,7,9,13,11,11,16,10,10,7,7,7,9,13,13,13,16,13,13,9,9,9,10,13,0,0,0,0,2,0,0,0,100,0,0,0,88,85,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,46,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,47,5,0,0,0,0,0,0,0,0,0,0,0,0,0,48,47,5,0,0,0,0,0,0,0,0,0,0,0,0,0,88,47,5,0,0,0,0,0,0,0,0,0,0,0,0,0,128,47,5,0,0,0,0,0,168,47,5,0,208,47,5,0,0,0,0,0,0,0,0,0,248,47,5,0,32,48,5,0,0,0,0,0,0,0,0,0,72,48,5,0,112,48,5,0,152,48,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,160,59,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,72,85,5,0,0,0,0,0,4,0,0,0,113,2,0,0,16,57,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,59,5,0,0,0,0,0,2,0,0,0,81,0,0,0,144,56,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,232,56,5,0,0,0,0,0,2,0,0,0,81,0,0,0,16,56,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,104,56,5,0,0,0,0,0,2,0,0,0,33,1,0,0,160,54,5,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,200,55,5,0,0,0,0,0,4,0,0,0,81,0,0,0,56,54,5,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,144,54,5,0,0,0,0,0,2,0,0,0,121,0,0,0,136,53,5,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,8,54,5,0,0,0,0,0,2,0,0,0,169,0,0,0,160,52,5,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,80,53,5,0,0,0,0,0,2,0,0,0,25,0,0,0,104,52,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,52,5,0,0,0,0,0,4,0,0,0,81,0,0,0,0,52,5,0,1,0,0,0,0,176,19,225,0,176,19,97,2,0,0,0,0,0,0,0,88,52,5,0,0,0,0,0,2,0,0,0,225,0,0,0,216,50,5,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,192,51,5,0,0,0,0,0,2,0,0,0,185,1,0,0,192,48,5,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,128,50,5,0,0,0,0,0,1,5,5,7,8,8,7,9,9,9,12,12,11,12,12,10,10,11,12,12,12,11,12,12,8,9,8,7,9,10,10,11,11,10,11,12,10,12,10,12,12,12,11,12,11,9,8,8,9,10,9,8,9,10,12,12,11,11,12,11,10,11,12,11,12,12,8,9,9,9,10,11,12,11,12,11,11,11,11,12,12,11,11,12,12,11,11,9,9,8,9,9,11,9,9,10,9,11,11,11,11,12,11,11,10,12,12,12,9,12,11,10,11,11,11,11,12,12,12,11,11,11,12,10,12,12,12,10,10,9,10,9,10,10,9,9,9,10,10,12,10,11,11,9,11,11,10,11,11,11,10,10,10,9,9,10,10,9,9,10,11,11,10,11,10,11,10,11,11,10,11,11,11,10,9,10,10,9,10,9,9,11,9,9,11,10,10,11,11,10,10,11,10,11,8,9,11,11,10,9,10,11,11,10,11,11,10,10,10,11,10,9,10,10,11,9,10,10,9,11,10,10,10,10,11,10,11,11,9,11,10,11,10,10,11,11,10,10,10,9,10,10,11,11,11,9,10,10,10,10,10,11,10,10,10,9,10,10,11,10,10,10,10,10,9,10,11,10,10,10,10,11,11,11,10,10,10,10,10,11,10,11,10,11,10,10,10,9,11,11,10,10,10,11,11,10,10,10,10,10,10,10,10,11,11,9,10,10,10,11,10,11,10,10,10,11,9,10,11,10,11,10,10,9,10,10,10,11,10,11,10,10,10,10,10,11,11,10,11,11,10,10,11,11,10,9,9,10,10,10,10,10,9,11,9,10,10,10,11,11,10,10,10,10,11,11,11,10,9,9,10,10,11,10,10,10,10,10,11,11,11,10,10,10,11,11,11,9,10,10,10,10,9,10,9,10,11,10,11,10,10,11,11,10,11,11,11,11,11,10,11,10,10,10,9,11,11,10,11,11,11,11,11,11,11,11,11,10,11,10,10,10,10,11,10,10,11,9,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,5,5,5,5,9,11,11,10,10,10,10,10,10,10,7,6,6,6,6,10,10,10,10,10,10,10,10,10,10,7,6,6,6,6,10,9,10,10,10,10,10,10,10,10,10,7,7,8,9,10,10,10,10,10,10,10,10,10,10,10,8,7,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,5,5,7,7,7,6,6,7,7,7,5,5,7,7,7,6,6,7,7,7,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,6,8,8,10,10,6,5,6,8,8,8,8,8,8,8,9,10,10,7,6,6,8,8,8,8,8,8,8,8,10,10,0,8,8,8,8,9,8,9,9,9,10,10,10,0,9,8,8,8,9,9,8,8,9,9,10,10,0,12,11,8,8,9,9,9,9,10,10,11,10,0,12,13,8,8,9,10,9,9,11,11,11,12,0,0,0,8,8,8,8,10,9,12,13,12,14,0,0,0,8,8,8,9,10,10,12,12,13,14,0,0,0,13,13,9,9,11,11,0,0,14,0,0,0,0,14,14,10,10,12,11,12,14,14,14,0,0,0,0,0,11,11,13,13,14,13,14,14,0,0,0,0,0,12,13,13,12,13,14,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,4,6,6,7,7,8,8,8,8,10,10,10,7,7,8,8,8,9,9,9,10,10,10,6,7,8,8,8,8,9,8,10,10,10,7,7,8,8,9,9,9,9,10,10,10,7,7,8,8,9,9,8,9,10,10,10,8,8,9,9,9,9,9,9,11,11,11,8,8,9,9,9,9,9,10,10,11,11,9,9,9,9,9,9,9,10,11,11,11,10,11,9,9,9,9,10,9,11,11,11,10,11,10,10,9,9,10,10,11,11,11,11,11,9,9,9,9,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,6,7,6,6,4,7,7,11,10,10,11,11,10,4,7,7,10,10,10,11,10,10,6,10,10,11,11,11,11,11,10,6,9,9,11,12,12,11,9,9,6,9,10,11,12,12,11,9,10,7,11,11,11,11,11,12,13,12,6,9,10,11,10,10,12,13,13,6,10,9,11,10,10,11,12,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,4,6,6,7,7,8,8,8,8,9,9,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,11,11,11,0,0,0,6,6,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,13,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,10,10,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,13,13,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,13,13,13,14,0,0,0,0,0,10,10,10,11,11,11,12,12,13,13,13,14,0,0,0,0,0,0,0,10,10,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,12,13,13,14,15,14,0,0,0,0,0,0,0,12,12,12,12,13,13,13,14,14,15,0,0,0,0,0,0,0,0,0,12,12,13,13,14,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,6,6,8,8,0,0,0,7,7,7,7,8,8,0,0,0,7,7,7,7,8,8,0,0,0,7,7,8,8,9,9,0,0,0,7,7,8,8,9,9,0,0,0,8,9,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,10,10,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,2,7,8,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,6,6,7,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,6,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,9,9,12,0,0,0,0,0,0,10,12,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,9,12,10,0,0,0,0,0,0,10,11,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,10,12,11,0,0,0,0,0,0,9,10,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,10,11,12,0,0,0,0,0,0,9,12,9],"i8",L3,F.GLOBAL_BASE+339320),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,19,7,9,7,8,11,9,12,4,1,19,6,7,7,8,10,11,13,18,18,18,18,18,18,18,18,18,18,8,6,18,8,9,9,11,12,14,18,9,6,18,9,7,8,9,11,12,18,7,6,18,8,7,7,7,9,11,17,8,8,18,9,7,6,6,8,11,17,10,10,18,12,9,8,7,9,12,18,13,15,18,15,13,11,10,11,15,18,14,18,18,18,18,18,16,16,18,18,0,0,0,0,0,0,0,0,0,64,207,64,0,0,0,0,0,88,219,64,0,0,0,0,0,106,232,64,0,0,0,0,0,249,245,64,0,0,0,0,0,0,35,64,0,0,0,0,0,0,38,64,0,0,0,0,0,0,62,64,0,0,0,0,0,192,88,64,0,0,0,0,0,76,205,64,0,0,0,0,0,136,211,64,0,0,0,0,0,124,229,64,0,0,0,0,0,255,244,64,0,0,0,0,0,76,221,64,0,0,0,0,0,130,228,64,0,0,0,0,0,100,233,64,0,0,0,0,0,64,239,64,0,0,0,0,0,148,241,64,0,0,0,0,0,11,243,64,0,0,0,0,0,255,244,64,0,0,0,0,0,118,246,64,0,0,0,0,0,219,250,64,0,0,0,0,0,76,253,64,0,0,0,0,0,23,1,65,0,0,0,0,128,49,7,65,154,153,153,153,153,153,40,64,0,0,0,0,0,0,42,64,0,0,0,0,0,0,42,64,0,0,0,0,0,0,44,64,0,0,0,0,0,0,46,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,148,209,64,0,0,0,0,0,88,219,64,0,0,0,0,0,23,225,64,0,0,0,0,0,249,229,64,0,0,0,0,0,88,235,64,0,0,0,0,0,76,237,64,0,0,0,0,128,79,242,64,0,0,0,0,0,249,245,64,0,0,0,0,0,106,248,64,0,0,0,0,128,19,252,64,0,0,0,0,128,79,2,65,0,0,0,0,128,49,7,65,0,0,0,0,0,64,223,64,0,0,0,0,0,112,231,64,0,0,0,0,0,76,237,64,0,0,0,0,0,23,241,64,0,0,0,0,0,136,243,64,0,0,0,0,0,255,244,64,0,0,0,0,0,112,247,64,0,0,0,0,0,219,250,64,0,0,0,0,0,76,253,64,0,0,0,0,0,23,1,65,0,0,0,0,0,136,3,65,0,0,0,0,8,76,13,65,0,0,0,0,0,88,203,64,0,0,0,0,0,136,211,64,0,0,0,0,0,88,219,64,0,0,0,0,0,142,226,64,0,0,0,0,0,118,230,64,0,0,0,0,0,94,234,64,0,0,0,0,128,79,242,64,0,0,0,0,0,112,247,64,0,0,0,0,0,76,253,64,0,0,0,0,0,23,1,65,0,0,0,0,0,249,5,65,0,0,0,0,8,76,13,65,88,88,5,0,104,113,5,0,88,88,5,0,200,113,5,0,88,88,5,0,40,114,5,0,88,88,5,0,136,114,5,0,88,88,5,0,232,114,5,0,88,88,5,0,72,115,5,0,168,115,5,0,184,140,5,0,168,115,5,0,24,141,5,0,168,115,5,0,120,141,5,0,168,115,5,0,216,141,5,0,168,115,5,0,56,142,5,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,30,0,0,0,208,111,7,0,24,201,7,0,24,201,7,0,64,201,7,0,64,201,7,0,2,0,0,0,0,0,0,0,30,0,0,0,208,111,7,0,0,202,7,0,0,202,7,0,64,201,7,0,64,201,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,40,202,7,0,40,202,7,0,80,202,7,0,80,202,7,0,2,0,0,0,0,0,0,0,15,0,0,0,208,111,7,0,0,162,7,0,0,162,7,0,40,162,7,0,40,162,7,0,2,0,0,0,0,0,0,0,30,0,0,0,208,111,7,0,232,162,7,0,232,162,7,0,40,162,7,0,40,162,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,16,163,7,0,16,163,7,0,56,163,7,0,56,163,7,0,2,0,0,0,0,0,0,0,15,0,0,0,208,111,7,0,232,122,7,0,232,122,7,0,16,123,7,0,16,123,7,0,2,0,0,0,0,0,0,0,30,0,0,0,208,111,7,0,208,123,7,0,208,123,7,0,16,123,7,0,16,123,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,248,123,7,0,248,123,7,0,32,124,7,0,32,124,7,0,2,0,0,0,0,0,0,0,15,0,0,0,72,198,6,0,0,59,7,0,0,59,7,0,40,59,7,0,40,59,7,0,2,0,0,0,0,0,0,0,30,0,0,0,72,198,6,0,232,59,7,0,232,59,7,0,40,59,7,0,40,59,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,16,60,7,0,16,60,7,0,56,60,7,0,56,60,7,0,2,0,0,0,0,0,0,0,15,0,0,0,72,198,6,0,48,6,7,0,48,6,7,0,88,6,7,0,88,6,7,0,2,0,0,0,0,0,0,0,30,0,0,0,72,198,6,0,24,7,7,0,24,7,7,0,88,6,7,0,88,6,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,64,7,7,0,64,7,7,0,104,7,7,0,104,7,7,0,2,0,0,0,0,0,0,0,15,0,0,0,72,198,6,0,96,209,6,0,96,209,6,0,136,209,6,0,136,209,6,0,2,0,0,0,0,0,0,0,30,0,0,0,72,198,6,0,72,210,6,0,72,210,6,0,136,209,6,0,136,209,6,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,112,210,6,0,112,210,6,0,152,210,6,0,152,210,6,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2],"i8",L3,F.GLOBAL_BASE+349504),d3([2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2],"i8",L3,F.GLOBAL_BASE+360488),d3([2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,120,145,6,0,120,145,6,0,160,145,6,0,160,145,6,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,96,146,6,0,96,146,6,0,160,145,6,0,160,145,6,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,136,146,6,0,136,146,6,0,176,146,6,0,176,146,6,0,2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,176,96,6,0,176,96,6,0,216,96,6,0,216,96,6,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,152,97,6,0,152,97,6,0,216,96,6,0,216,96,6,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,216,165,5,0,216,165,5,0,0,166,5,0,0,166,5,0,2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,136,46,6,0,136,46,6,0,176,46,6,0,176,46,6,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,112,47,6,0,112,47,6,0,176,46,6,0,176,46,6,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,216,165,5,0,216,165,5,0,0,166,5,0,0,166,5,0,2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,24,241,5,0,24,241,5,0,64,241,5,0,64,241,5,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,0,242,5,0,0,242,5,0,64,241,5,0,64,241,5,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,216,165,5,0,216,165,5,0,0,166,5,0,0,166,5,0,2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,176,153,5,0,176,153,5,0,216,153,5,0,216,153,5,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,152,154,5,0,152,154,5,0,216,153,5,0,216,153,5,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,216,165,5,0,216,165,5,0,0,166,5,0,0,166,5,0,0,0,0,0,255,255,255,255,255,255,255,255,8,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,F.GLOBAL_BASE+363696),d3([1,0,0,0,2,0,0,0,4,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,16,241,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,232,169,5,0,0,0,0,0,0,0,0,0,16,170,5,0,0,0,0,0,0,0,0,0,56,170,5,0,96,170,5,0,0,0,0,0,0,0,0,0,136,170,5,0,176,170,5,0,0,0,0,0,0,0,0,0,216,170,5,0,0,171,5,0,0,0,0,0,0,0,0,0,40,171,5,0,80,171,5,0,0,171,5,0,0,0,0,0,120,171,5,0,160,171,5,0,200,171,5,0,240,171,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,224,169,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,2,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,F.GLOBAL_BASE+366508),d3([32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,216,169,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,166,5,0,232,166,5,0,0,0,0,0,0,0,0,0,16,167,5,0,56,167,5,0,96,167,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,240,168,5,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,160,169,5,0,0,0,0,0,2,0,0,0,25,0,0,0,184,168,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,168,5,0,0,0,0,0,2,0,0,0,9,0,0,0,152,168,5,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,168,168,5,0,0,0,0,0,1,0,0,0,25,0,0,0,16,168,5,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,48,168,5,0,0,0,0,0,1,0,0,0,25,0,0,0,136,167,5,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,168,167,5,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,2,3,4,5,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,5,6,6,6,6,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,4,4,5,5,4,5,5,5,5,4,5,5,5,5,5,5,5,4,5,5,5,5,5,4,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,10,10,12,12,12,12,13,12,5,5,5,8,6,11,9,12,12,13,12,12,12,4,5,5,6,8,9,11,12,12,13,12,12,12,7,7,8,9,9,11,8,12,9,12,12,12,12,7,8,8,9,9,8,11,9,12,12,12,11,12,10,10,10,11,11,11,11,11,10,11,11,12,11,10,10,10,11,11,11,11,10,11,11,11,11,12,11,11,11,12,11,12,11,12,11,13,11,13,11,11,11,11,11,12,11,12,10,13,11,12,11,13,12,12,12,13,12,13,13,13,12,14,12,14,13,12,12,12,12,13,13,13,12,14,12,14,13,14,13,14,14,14,14,14,14,14,14,15,14,15,14,13,14,13,14,14,14,14,14,15,14,14,14,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,1,3,0,0,0,0,3,3,3,3,3,3,3,3,5,0,0,0,243,0,0,0,8,240,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,0,241,5,0,0,0,0,0,5,0,0,0,53,12,0,0,184,227,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,240,239,5,0,0,0,0,0,5,0,0,0,243,0,0,0,176,226,5,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,168,227,5,0,0,0,0,0,5,0,0,0,243,0,0,0,168,225,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,160,226,5,0,0,0,0,0,5,0,0,0,243,0,0,0,160,224,5,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,152,225,5,0,0,0,0,0,5,0,0,0,53,12,0,0,80,212,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,224,5,0,0,0,0,0,5,0,0,0,53,12,0,0,0,200,5,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,56,212,5,0,0,0,0,0,1,0,0,0,7,0,0,0,216,199,5,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,224,199,5,0,0,0,0,0,5,0,0,0,243,0,0,0,208,198,5,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,200,199,5,0,0,0,0,0,5,0,0,0,243,0,0,0,200,197,5,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,192,198,5,0,0,0,0,0,5,0,0,0,53,12,0,0,120,185,5,0,1,0,0,0,0,106,152,225,0,106,120,97,3,0,0,0,0,0,0,0,176,197,5,0,0,0,0,0,5,0,0,0,53,12,0,0,40,173,5,0,1,0,0,0,0,136,83,225,0,136,51,97,3,0,0,0,0,0,0,0,96,185,5,0,0,0,0,0,1,0,0,0,25,0,0,0,160,172,5,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,192,172,5,0,0,0,0,0,1,0,0,0,25,0,0,0,24,172,5,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,56,172,5,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,10,10,10,11,11,11,12,12,12,13,13,13,13,13,13,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,16,16,4,9,11,15,16,4,12,8,16,16,12,16,16,16,16,13,16,16,16,16,5,8,10,16,16,9,9,14,15,16,12,14,14,16,16,16,16,16,16,16,16,16,16,16,16,5,11,8,16,15,12,14,16,16,16,9,15,9,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,6,11,11,16,16,12,13,16,16,16,12,16,14,16,16,16,16,16,16,16,16,16,16,16,16,11,15,15,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,12,15,16,16,16,16,16,16,16,16,14,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,5,11,11,16,16,12,15,16,16,16,12,16,14,16,16,16,16,16,16,16,16,16,16,16,16,12,15,15,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,11,15,15,16,16,16,16,16,16,16,15,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,6,11,12,16,16,11,15,16,16,16,13,16,14,16,16,16,16,16,16,16,16,16,16,16,16,11,16,14,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,12,14,14,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,8,13,15,16,16,15,15,16,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,7,12,12,16,16,13,12,16,16,16,14,16,14,16,16,16,16,16,16,16,16,16,16,16,16,13,16,16,16,16,14,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,12,14,16,16,16,16,16,16,16,16,14,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,6,11,11,16,16,13,15,16,16,16,11,15,14,16,16,16,16,16,16,16,14,16,16,16,16,11,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,11,16,14,16,16,14,16,16,16,16,13,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,7,11,11,16,16,13,13,16,16,16,13,16,13,16,16,16,16,16,16,16,16,16,16,16,16,12,16,15,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,12,14,16,16,16,16,16,16,16,16,14,16,13,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,8,13,14,16,16,15,16,16,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,15,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,6,7,7,7,7,7,7,7,7,7,7,8,7,8,8,7,8,8,7,8,7,7,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,8,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,5,5,7,7,5,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,5,7,8,8,9,10,8,9,10,8,9,10,10,10,12,10,11,11,8,10,10,10,11,12,10,11,10,5,8,7,8,10,10,8,10,9,8,10,10,10,10,11,10,12,11,8,10,9,10,11,11,10,12,10,5,8,8,7,9,10,8,10,9,7,9,10,9,10,11,9,11,11,8,10,9,10,11,11,9,11,10,7,9,9,9,10,11,9,11,11,9,9,11,10,10,13,11,12,12,9,11,11,11,12,13,11,13,11,7,9,9,9,10,11,9,11,10,9,11,10,10,10,12,11,13,12,9,11,11,11,12,12,10,12,10,5,8,8,8,9,10,7,10,9,8,9,10,9,10,11,10,11,11,7,10,9,9,11,11,9,11,10,7,9,9,9,10,11,9,11,10,9,11,11,10,10,12,11,12,12,9,10,11,11,12,13,10,12,10,7,9,9,9,11,11,9,11,10,9,11,11,11,11,13,11,13,12,9,11,9,11,12,12,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,4,6,6,9,9,6,7,8,10,11,6,8,7,10,10,8,10,10,12,12,8,10,10,12,12,6,7,8,10,10,7,8,9,10,11,8,9,9,11,11,10,10,11,12,13,10,11,11,13,13,6,8,7,10,10,8,9,9,11,11,7,9,8,11,10,10,11,11,13,13,10,11,10,13,12,9,10,10,11,12,10,10,11,12,13,10,11,11,12,13,12,12,13,12,14,12,13,13,14,14,9,10,10,12,11,10,11,11,13,12,10,11,10,13,12,12,13,13,14,14,12,13,12,14,12,7,8,8,10,11,8,9,10,11,12,8,9,9,11,12,10,11,12,13,14,10,11,11,13,13,8,9,10,11,12,9,10,11,12,13,10,10,11,12,12,11,12,12,13,14,11,12,12,14,14,8,9,9,11,12,10,10,11,12,13,9,10,10,12,12,11,12,12,14,14,11,12,12,14,13,11,11,12,12,13,11,12,12,13,14,12,12,13,14,14,13,13,14,14,16,13,14,14,15,15,11,12,11,13,13,12,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,15,14,7,8,8,11,10,8,10,9,12,11,8,10,9,12,11,10,11,11,13,13,10,12,11,14,13,8,9,9,12,11,9,10,10,12,12,10,11,10,13,12,11,12,12,13,14,11,12,12,14,14,8,10,9,12,11,10,11,10,12,12,9,11,10,13,11,11,12,12,14,14,11,12,12,14,13,11,11,12,13,13,11,12,12,13,14,12,12,12,14,14,13,13,14,14,15,13,14,14,15,15,11,12,11,13,12,12,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,15,14,10,11,11,12,13,11,12,12,13,14,11,12,12,13,14,13,13,14,14,16,13,14,14,15,15,11,12,12,12,14,12,12,13,13,15,12,13,13,13,15,14,14,15,15,16,14,14,15,15,16,11,12,12,13,14,12,13,13,14,15,12,13,13,14,14,14,14,15,15,16,14,14,14,15,15,13,14,14,14,15,14,14,15,15,16,14,15,15,15,16,15,15,16,16,18,16,16,16,17,17,13,14,14,15,15,14,14,15,16,16,14,14,14,16,15,16,16,16,17,17,15,16,16,17,16,10,11,11,13,12,11,12,12,14,13,11,12,12,14,13,13,14,14,15,15,13,14,13,16,14,11,12,12,14,13,12,13,13,14,14,12,13,13,15,14,14,14,14,15,15,14,15,14,16,15,11,12,12,14,12,12,13,13,15,14,12,13,12,15,13,14,15,14,16,15,14,15,14,16,15,13,14,14,15,15,14,14,14,15,16,14,15,14,16,16,15,16,16,16,17,16,16,16,17,17,13,14,14,15,14,14,15,15,16,15,14,15,14,16,15,16,16,16,17,17,15,16,15,18,16,6,8,8,11,11,8,9,10,11,12,8,10,9,12,12,10,11,11,13,13,10,12,11,14,13,8,9,9,11,12,9,10,10,12,12,9,10,10,12,12,11,11,12,13,14,11,12,12,14,14,8,10,9,12,11,10,11,11,12,12,9,11,10,13,12,11,12,12,14,14,11,12,12,14,13,10,11,11,13,13,11,12,12,13,14,11,12,12,14,14,13,13,14,13,15,13,14,14,15,15,11,12,11,13,13,12,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,15,14,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,13,14,11,12,12,14,14,9,9,10,11,12,10,10,11,12,13,10,10,11,12,13,12,12,13,13,15,12,12,13,14,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,14,15,12,13,12,14,14,11,11,12,12,14,12,12,13,13,14,12,12,13,13,14,13,13,14,14,16,14,14,14,15,15,11,12,12,14,13,12,13,13,14,14,12,13,13,15,14,14,14,14,16,16,13,14,14,16,14,7,9,9,12,11,9,10,10,12,12,9,11,10,13,12,11,12,12,13,14,11,13,12,14,13,9,10,10,12,12,10,10,11,12,13,10,12,11,13,13,12,12,13,13,14,12,13,13,15,14,9,10,10,12,12,11,11,11,13,13,10,12,10,13,12,12,13,13,14,15,12,13,12,15,13,11,12,12,14,13,12,12,13,13,14,12,13,13,15,14,13,13,14,13,16,14,15,14,16,15,12,12,12,14,14,13,13,13,14],"i8",L3,F.GLOBAL_BASE+369616),d3([14,12,13,12,14,13,14,15,15,16,16,13,14,13,16,13,10,11,12,13,14,11,12,13,13,15,12,12,13,14,14,13,14,14,15,16,13,14,14,16,15,12,12,13,12,14,12,12,13,13,15,13,13,13,13,15,14,14,15,14,16,14,15,15,15,16,12,13,12,14,14,13,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,15,16,16,13,14,14,13,16,14,14,15,14,16,14,14,15,14,16,15,15,16,15,18,16,16,16,16,17,14,14,14,16,15,14,15,15,16,16,14,15,15,16,16,16,16,16,17,17,15,16,16,17,16,10,12,11,14,13,12,13,13,14,14,12,13,12,15,14,14,14,14,15,15,14,15,14,16,15,12,13,12,14,13,12,13,13,15,14,13,14,13,15,14,14,15,15,16,16,14,15,15,17,15,12,13,12,14,14,13,14,14,15,15,13,14,13,15,14,15,15,15,16,16,14,15,15,17,15,14,14,14,16,15,14,15,15,16,16,14,15,15,16,15,16,16,16,16,17,16,17,16,18,17,14,14,14,16,15,15,15,15,16,16,14,15,14,16,15,16,16,17,17,17,15,16,15,17,16,6,8,8,11,11,8,9,10,12,12,8,10,9,12,11,10,11,12,13,13,10,11,11,13,13,8,9,10,11,12,9,10,11,12,13,10,11,11,12,12,11,12,12,13,14,11,12,12,14,14,8,9,9,12,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,14,11,12,11,14,13,11,11,12,13,13,11,12,12,13,14,12,12,12,14,14,13,13,14,14,15,13,14,14,15,15,10,11,11,13,13,11,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,15,13,7,9,9,11,12,9,10,11,12,13,9,10,10,12,12,11,12,13,13,14,11,12,12,14,14,9,10,10,12,12,10,10,11,12,13,11,12,11,13,13,12,12,13,13,15,12,13,13,15,14,9,10,10,12,12,10,11,12,13,13,10,11,10,13,12,12,13,13,14,15,12,13,12,14,13,12,12,12,14,14,12,12,13,13,14,13,13,13,15,14,14,13,14,13,16,14,15,15,16,16,11,12,12,13,14,12,13,13,14,15,12,13,12,14,13,14,14,15,15,16,13,14,13,15,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,14,11,12,11,14,13,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,12,13,14,15,12,13,13,15,14,9,10,9,12,11,10,11,10,13,12,10,11,10,13,12,12,13,12,14,14,12,13,12,15,13,11,12,12,13,14,12,13,13,14,14,12,13,13,14,14,14,14,14,14,16,14,14,14,16,15,11,12,11,14,12,12,13,12,15,13,12,13,12,15,13,14,14,14,16,15,13,14,13,16,14,10,11,12,13,14,12,12,13,13,15,12,13,13,14,14,14,14,15,15,16,14,14,14,15,16,12,12,13,14,14,12,13,14,14,15,13,14,14,15,15,14,15,15,15,17,15,15,15,16,16,12,12,13,13,14,13,13,14,14,15,12,13,13,14,15,15,15,15,15,17,14,15,15,15,15,14,14,14,16,16,14,15,15,15,16,15,15,15,16,16,16,15,16,16,18,16,16,17,17,17,14,14,14,15,16,15,15,15,16,17,14,15,14,16,16,16,16,17,17,18,16,16,15,17,16,10,12,11,14,13,12,12,12,14,14,11,13,12,14,13,13,14,14,15,15,13,14,13,16,15,12,12,13,14,14,12,13,13,15,15,13,13,13,15,15,14,15,15,16,16,14,15,15,17,16,12,13,12,14,12,13,13,13,15,13,12,13,12,15,13,14,15,15,16,15,14,15,14,16,14,14,14,14,16,16,14,15,15,16,16,14,15,15,16,16,15,16,16,16,17,16,17,16,18,17,13,14,14,16,13,14,15,15,16,14,14,15,14,16,14,16,16,16,17,16,15,16,15,18,15,9,11,11,13,13,11,12,12,14,14,11,12,12,14,14,13,14,14,15,15,13,14,14,15,15,11,12,12,14,14,11,12,13,14,15,12,13,13,15,14,13,14,14,15,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,14,14,14,14,16,16,14,15,14,16,15,12,13,13,14,15,12,13,14,15,16,13,14,14,16,16,14,14,15,16,17,15,15,15,17,17,13,14,14,15,15,14,15,14,16,16,14,15,14,16,15,15,16,16,17,17,15,16,15,17,16,10,12,12,13,14,11,12,13,14,14,12,13,12,14,14,13,14,14,15,16,13,14,14,16,15,11,12,12,14,14,12,12,13,14,15,12,13,13,15,15,13,13,15,15,17,14,14,15,16,16,12,13,12,14,14,12,13,13,15,15,12,13,13,15,14,14,15,15,16,16,14,15,14,16,16,13,12,14,13,16,13,13,15,14,16,14,13,15,15,16,14,14,16,15,17,15,15,16,16,17,13,14,14,16,15,14,15,15,16,16,14,15,14,16,15,16,16,16,17,17,15,16,16,18,16,10,12,12,14,14,12,12,13,14,14,12,13,12,15,14,13,14,14,15,16,14,15,14,16,15,11,12,12,14,14,12,13,13,14,15,13,14,13,15,15,14,14,15,15,16,14,15,15,17,16,12,13,13,14,14,13,13,14,15,15,12,14,13,15,15,14,15,15,16,16,14,15,15,17,15,13,14,13,15,15,13,14,14,15,16,14,15,14,17,16,15,15,15,15,17,16,16,16,18,17,14,14,14,16,16,15,15,15,16,16,14,15,14,16,16,16,16,17,17,17,16,16,16,17,16,11,12,13,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,15,17,16,12,13,13,14,15,13,13,14,14,16,13,14,14,15,16,15,14,16,15,17,15,15,16,16,17,12,13,13,15,15,13,14,14,16,16,13,14,14,16,15,15,15,16,17,17,15,16,15,17,16,14,14,15,13,16,15,14,16,14,17,15,15,16,14,17,16,15,17,15,18,16,16,17,16,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,16,17,17,18,18,16,17,15,18,16,11,12,12,14,14,13,13,14,14,15,13,14,13,16,14,15,15,15,16,16,15,16,15,17,16,12,13,13,15,14,13,13,14,15,15,14,15,14,16,15,15,15,16,15,16,16,16,16,18,16,12,13,13,15,15,14,14,15,15,16,13,14,13,16,15,16,16,16,17,17,15,16,15,17,15,14,15,14,16,15,14,15,15,16,16,15,16,15,17,16,16,15,16,15,17,17,18,17,18,17,15,15,15,16,16,16,16,16,17,17,14,15,15,17,16,17,17,18,18,18,16,17,15,18,15,9,11,11,13,13,11,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,15,15,11,12,12,14,14,12,13,13,14,15,12,13,13,14,14,14,14,15,15,16,14,14,14,16,16,11,12,12,14,14,12,13,13,14,15,11,13,12,14,14,13,14,14,16,16,13,14,14,16,15,13,14,14,15,15,14,14,15,15,16,14,15,14,16,16,15,15,16,16,17,15,16,16,17,17,12,13,13,15,15,13,14,14,16,15,12,14,13,16,15,15,16,15,17,17,14,15,15,17,15,10,12,12,14,14,12,12,13,14,15,12,13,12,14,14,14,14,15,15,16,13,14,14,16,16,12,13,13,14,14,13,13,14,14,15,13,14,13,15,15,14,15,15,15,17,14,15,15,16,16,11,12,12,14,14,13,13,14,15,15,12,13,13,15,14,14,15,15,16,17,14,15,14,16,15,14,14,14,16,16,14,15,15,16,16,15,15,15,16,16,15,16,16,16,18,16,17,16,18,17,13,13,14,15,15,14,14,15,16,16,13,14,14,16,15,16,16,17,17,17,15,15,15,17,15,10,12,12,14,13,12,12,13,14,14,11,13,12,14,14,13,14,14,16,16,13,14,14,16,15,12,12,13,14,14,12,13,13,14,15,13,13,13,15,15,14,14,15,16,16,14,15,15,16,16,11,12,12,14,14,12,13,13,15,15,12,13,12,15,14,14,15,14,16,16,13,15,13,16,15,13,14,14,15,16,14,15,15,15,17,14,15,15,16,16,16,15,16,16,17,16,16,16,17,17,13,14,12,16,13,14,15,13,16,15,13,15,13,16,14,15,16,15,17,16,15,16,14,17,15,11,12,12,14,15,13,13,14,14,16,13,14,13,15,14,15,15,16,16,17,15,15,15,16,16,12,13,13,15,15,13,13,14,15,16,14,15,14,16,15,15,15,16,15,17,16,16,16,17,17,12,13,13,14,15,14,14,15,15,16,13,14,13,15,15,16,16,16,17,17,15,16,15,16,15,15,15,15,16,16,14,15,15,16,17,16,16,16,17,17,16,15,17,15,18,17,18,17,18,18,14,14,15,15,17,15,15,16,16,17,14,15,15,16,16,17,17,17,17,18,16,16,15,17,15,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,14,17,16,13,13,13,15,15,13,14,14,15,16,13,14,14,16,16,15,15,16,16,17,15,16,16,17,17,12,13,13,15,14,13,14,14,16,15,13,14,13,16,14,15,16,16,17,16,15,16,14,17,15,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,15,17,16,18,16,17,17,18,18,14,15,14,16,13,15,16,15,17,14,15,16,14,17,14,16,17,16,18,16,16,17,15,18,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,6,8,8,10,9,8,9,9,10,10,8,9,9,10,10,8,10,10,10,10,8,10,10,10,10,9,9,9,10,10,9,10,10,10,11,9,10,10,11,11,10,10,10,11,11,10,10,10,11,11,9,9,9,10,10,9,10,10,11,11,9,10,10,11,10,10,10,10,11,11,10,10,10,11,11,10,10,10,10,11,10,10,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,11,10,10,11,11,11,11,10,11,10,11,11,11,11,11,11,11,10,11,11,11,11,9,10,10,10,11,10,10,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,10,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,12,12,11,11,11,12,12,10,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,9,10,10,11,10,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,12,12,12,11,11,11,12,12,10,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,11,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,7,10,10,11,11,10,10,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,10,10,11,11,10,11,11,11,11,11,11,11,11,12,11,11,11,12,12,11,11,11,12,12,10,11,11,11,11,11,11,11,12,11,11,11,11,12,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,11,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,12,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,10,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,11,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,7,10,10,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,12,12,11,11,11,12,12,10,10,10,11,11,11,11,11,12,11,10,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,11,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,10,10,10,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,11,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,13,12,13,12,12,13,13,13,13,12,13,13,13,13,8,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,8,11,11,11,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,13,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,13,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,4,7,7,4,7,6,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,6,7,8,8,9,10,8,10,10,8,9,10,10,11,12,10,11,12,8,10,10,10,11,12,10,12,11,6,8,7,8,10,10,8,10,9,8,10,10,10,11,12,10,12,12,8,10,9,10,12,11,10,12,11,5,8,8,8,10,10,8,10,10,7,9,10,9,10,11,10,11,11,8,10,10,10,12,12,10,12,11,7,9,9,9,11,11,9,11,11,9,10,11,11,11,12,11,12,12,9,11,11,11,12,12,11,12,12,7,9,9,10,11,12,10,12,11,9,11,10,11,11,12,12,13,13,9,11,11,12,13,13,11,13,11,5,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,12,7,9,9,9,11,11,9,11,10,7,9,9,10,11,12,10,12,11,9,11,11,11,11,13,12,13,13,9,10,11,12,13,13,11,12,11,7,9,9,9,11,11,9,11,11,9,11,11,11,12,12,11,12,12,9,11,10,11,12,12,10,12,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,6,7,7,6,7,7,6,7,7,7,7,8,7,7,8,6,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,5,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,8,8,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,7,8,8,8,9,9,8,9,9,8,9,8,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,6,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,7,8,8,8,9,9,8,9,9,8,8,9,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,8,8,8,8,9,9,8,9,9,8,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,4,4,7,7,4,7,6,5,6,7,7,8,9,7,9,9,5,7,6,7,9,9,7,9,8,6,8,8,8,10,10,8,10,10,8,9,10,10,11,12,10,12,12,8,10,10,10,12,12,10,12,11,6,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,12,8,10,9,10,12,11,10,12,11,5,8,8,8,10,10,8,10,10,8,9,10,10,11,11,10,11,11,8,10,10,10,11,12,10,12,11,8,10,10,10,11,11,10,11,11,10,11,11,11,12,13,11,12,13,10,11,11,11,13,13,11,13,13,7,9,9,10,11,12,10,12,11,9,11,11,11,12,13,12,14,13,9,11,11,12,13,14,11,13,12,5,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,12,8,10,9,10,12,11,9,11,11,7,9,9,10,11,12,10,12,11,9,11,11,11,12,13,12,14,13,9,11,11,12,13,14,11,13,12,8,10,10,10,11,11,10,11,11,10,11,11,11,13,13,11,13,13,10,11,10,11,13,12,11,13,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,8,8,5,7,7,9,9,5,7,7,9,9,6,8,8,11,11,6,8,8,11,11,6,7,7,9,9,7,8,9,10,11,7,9,9,11,10,8,9,10,12,12,8,10,10,12,12,6,7,7,9,9,7,9,9,10,10,7,9,8,11,10,8,10,10,12,12,8,10,9,12,12,8,9,9,11,11,9,10,10,12,12,9,11,11,12,13,11,12,12,13,14,11,12,12,14,14,8,9,9,11,11,9,11,10,13,12,9,10,10,13,12,11,12,12,14,14,11,12,12,14,13,7,8,9,10,10,8,10,10,11,11,8,10,10,11,11,10,11,11,13,13,10,11,11,13,13,8,9,10,10,11,10,11,11,12,13,10,11,11,12,12,11,11,12,13,14,11,12,12,14,14,8,10,10,11,11,10,11,11,12,13,10,11,11,12,12,11,12,12,14,14,11,12,12,14,14,10,11,11,12,13,11,12,12,13,14,12,13,13,14,14,13,13,14,14,16,13,14,14,15,16,10,11,11,13,13,12,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,16,15,7,8,8,10,10,8,10,10,11,11,8,10,10,12,11,10,11,11,13,13,10,11,11,13,13,8,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,14,14,11,12,12,14,14,8,10,9,11,10,10,11,11,13,12,10,11,10,13,12,11,12,12,14,14,11,12,11,14,13,10,11,11,13,13,11,12,12,14,14,12,12,12,14,14,13,14,14,15,16,13,14,14,15,15,10,11,11,13,12,12,12,12,14,14,11,12,12,14,13,13,14,14,16,15,13,14,13,16,14,10,11,11,13,13,12,12,13,14,15,12,13,13,14,15,13,14,15,15,16,13,14,14,16,16,11,12,13,14,14,13,13,14,15,16,13,14,14,15,16,14,15,15,16,17,14,15,16,17,17,11,12,12,14,14,13,14,14,15,16,13,14,14,15,15,14,15,15,16,18,14,15,15,17,16,13,14,15,15,16,15,15,16,16,18,15,15,15,17,17,16,16,17,17,18,16,16,16,18,18,14,14,14,16,16,15,15,15,16,17,15,15,15,16,17,16,17,17,18,18,16,16,17,18,17,10,11,11,14,13,12,13,13,15,14,11,13,13,15,14,13,15,15,16,16,13,14,14,16,16,11,12,12,14,14,13,13,13,15,15,13,14,13,15,15,15,15,15,17,16,14,15,15,17,16,11,13,12,14,14,13,14,13,15,15,13,14,13,15,15,14,15,15,17,17,14,15,15,17,16,14,14,14,16,16,14,15,15,17,17,15,15,16,17,16,17,16,17,18,18,16,17,17,18,18,13,14,14,16,15,15,15,15,17,17,14,16,15,16,16,17,17,17,18,18,16,17,16,20,19,6,8,8,10,10,8,10,10,11,11,8,10,10,12,11,10,11,11,13,13,10,11,11,13,13,8,9,10,11,11,10,11,11,12,12,10,11,11,13,12,11,12,12,14,14,11,12,12,14,14,9,10,10,11,11,10,11,11,12,12,10,11,11,13,12,11,12,12,14,14,11,12,12,14,14,10,10,11,12,13,11,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,15,16,10,11,11,13,13,12,12,12,14,14,12,13,12,14,14,13,14,14,16,16,13,14,14,15,15,9,10,10,11,12,10,11,11,12,13,10,11,11,13,12,11,12,12,14,14,11,12,12,14,14,10,10,11,12,13,11,12,12,13,14,11,12,12,13,14,12,13,14,14,15,12,13,13,15,15,10,11,11,13,13,11,12,12,13,14,11,12,12,14,13,12,13,13,15,15,12,13,13,15,15,12,11,13,12,14,13,13,14,14,15,13,13,14,14,15,14,15,15,16,17,14,15,15,16,17,12,13,12,14,14,13,14,14,15,15,13,14,14,15,15,14,15,15,16,17,14,15,15,16,17,8,9,9,11,11,10,11,11,12,13,10,11,11,13,12,12,13,13,14,15,11,13,12,15,14,9,11,10,12,12,11,12,12,13,14,11,12,12,14,13,13,13,14,15,15,13,14,13,15,15,9,11,11,12,12,11,12,12,14,14,11,12,12,14,13,13,14,14,15,16,13,14,13,15,14,11,12,12,14,13,12,13,13,14,15,13,14,14,16,15,15,15,15,15,16,15,16,15,17,17,11,12,12,14,14,13,14,14,15,15,12,13,13,15,14,15,15,15,17,17,14,15,15,17,15,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,16,16,12,13,13,14,15,13,14,14,16,16,14,14,14,15,16,15,16,16,17,17,15,16,16,17,17,12,13,13,15,15,14,14,14,16,16,14,14,15,16,16,15,16,16,17,17,15,16,16,17,17,14,15,15,15,16,15,15,16,16,18,15,16,16,17,17,17,17,17,18,18,16,17,17,19,18,14,15,15,16,17,15,16,16,17,17,15,16,16,18,17,16,17,17,19,18,17,17,17,19,18,10,12,12,14,14,13,13,14,15,15,12,14,13,16,15,15,15,15,17,17,14,15,15,17,16,12,13,13,15,14,13,14,14,16,16,14,14,15,17,16,15,16,16,17,17,15,16,16,18,17,12,13,13,15,14,14,15,15,16,16,13,15,14,16,15,16,17,16,19,17,15,16,16,17,17,14,15,15,17,15,15,16,15,17,17,16,17,16,18,17,17,17,18,18,18,17,17,18,19,18,14,15,15,16,16,15,16,16,17,18,15,16,16,18,16,17,18,18,19,19,17,18,17,18,19,6,8,8,10,10,8,10,10,11,11,8,10,10,12,11,10,11,11,13,13,9,11,11,13,13,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,14,14,11,12,12,14,14,8,10,9,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,14,14,11,12,12,14,14,10,11,11,13,13,11,12,13,14,14,12,12,12,14,14,13,14,14,15,16,13,14,14,16,16,10,11,10,13,12,11,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,16,15,8,9,9,11,11,10,11,11,12,13,10,11,11,13,12,12,13,13,14,15,12,13,13,15,14,10,11,11,12,12,11,11,12,13,14,11,12,12,14,14,13,13,14,15,16,13,14,14,15,15,9,10,11,12,12,11,12,12,13,14,11,12,12,14,13,13,14,14,15,16,12,14,13,15,15,11,12,12,14,14,12,13,13,14,15,13,14,14,16,15,14,15,15,15,17,15,15,16,16,17,11,12,12,13,14,13,14,14,15,15,12,13,13,15,14,15,16,15,16,17,14,16,15,17,15,9,10,10,12,11,10,11,11,13,13,10,11,11,13,12,11,12,12,14,14,11,12,12,14,14,10,11,11,12,13,11,12,12,13,14,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,10,11,10,13,12,11,12,12,13,13,11,12,12,14,13,12,13,13,15,15,12,13,13,15,14,12,13,12,14,14,13,14,14,15,15,13,14,14,15,15,14,15,15,16,16,14,15,15,16,16,11,13,11,14,12,13,13,13,15,14,12,14,13,15,14,15,15,15,17,16,14,15,14,17,15,10,12,12,14,14,13,13,14,15,16,12,14,13,15,15,14,15,16,17,17,14,15,16,17,17,12,13,13,14,15,13,14,14,16,16,14,14,15,16,16,16,16,16,17,17,16,16,16,18,18,12,13,13,14,15,14,14,15,16,16,13,14,14,16,15,16,16,16,17,18,15,16,16,17,17,14,15,15,16,16,15,15,16,17,17,15,16,16,17,18,17,18,18,18,19,17,18,18,19,19,14,15,15,16,16,15,16,16,17,17,15,16,16,17,17,17,17,18,20,18,17,18,17,18,18,11,12,12,14,14,12,13,14,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,17,12,13,13,15,15,14,14,14,16,16,14,14,14,16,16,15,16,16,17,17,15,16,16,17,17,12,13,13,15,14,13,14,14,16,15,14,15,14,16,15,15,16,16,17,17,15,16,16,17,16,14,15,15,16,16,15,16,16,17,17,16,16,16,17,17,17,17,17,19,18,17,17,17,18,19,14,15,14,17,15,15,16,16,17,17,15,16,15,17,17,16,17,17,18,18,16,17,17,18,17,6,11,11,13,13,11,12,12,14,14,11,12,12,14,14,13,14,14,16,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,17,18,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,16,16,13,14,14,15,16,14,15,15,16,17,14,15,15,17,16,15,16,17,18,17,16,16,16,18,17,14,14,15,16,16,14,15,15,18,16,14,15,15,17,16,16,17,17,18,18,16,17,16,18,17,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,16,16,12,13,13,15,15,13,14,14,15,16,13,14,14,16,16,15,16,16,17,17,15,15,16,17,17,12,13,13,15,15,14,14,14,16,16,13,14,14,16,16,15,16,16,17,17,15,16,16,17,17,14,14,15,15,16,15,15,16,16,17,15,15,16,16,17,16,17,17,17,18,16,17,17,18,18,14,15,15,16,16,15,16,16,17,17,15,16,16,17,17,17,17,17,18,19,17,17,17,18,18,10,12,12,14,14,12,13,14,15,16,13,14,13,15,15,14,15,15,17,17,14,15,16,17,17,12,13,13,15,15,13,14,14,15,15,14,15,14,16,16,15,16,16,17,18,15,17,16,18,17,12,13,13,15,15,14,14,14,16,16,13,14,14,16,15,15,16,16,17,18,15,16,16,17,17,14,14,14,16,16,15,15,16,17,17,15,16,16,17,17,17,17,17,18,20,17,17,17,19,19,14,15,15,16,16,15,17,16,18,18,15,16,15,17,16,17,18,19,19,19,17,17,17,18,17,13,14,14,16,16,14,15,15,17,17,14,15,15,16,17,15,17,17,18,18,16,16,17,18,17,14,15,15,16,17,15,16,16,17,17,15,16,16,17,17,16,17,17,18,18,17,17,17,18,19,14,15,15,16,17,15,16,16,17,17,15,16,16,17,17,16,17,17,18,18,17,17,17,19,19,16,16,16,16,18,16,17,17,17,18,17,17,17,17,19,18,18,18,19,19,18,18,18,19,20,16,16,17,18,18,16,18,17,18,18,17,17,17,20,19,18,18,19,21,20,18,20,18,18,19,10,12,12,14,14,14,14,15,15,17,14,15,14,17,15,16,16,17,18,18,16,18,17,19,18,12,14,13,16,15,14,14,15,15,17,15,16,16,18,17,16,17,18,17,19,17,19,18,20,19,12,13,13,15,15,15,16,17,17,18,14,16,14,17,16,17,18,18,19,19,17,17,17,18,18,15,15,15,17,16,15,16,16,17,17,17,19,17,18,18,18,18,18,18,21,19,20,19,20,19,15,15,16,16,17,17,17,18,20,20,15,16,16,18,17,18,19,19,19,20,18,19,18,19,17,6,11,11,13,13,11,12,12,14,14,11,12,12,14,14,13,14,14,16,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,17,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,15,16,16,13,14,14,16,16,15,15,15,16,16,14,15,15,17,16,16,17,17,19,18,16,17,17,18,18,13,14,14,15,15,14,15,15,17,16,14,15,15,17,16,16,17,16,17,18,15,16,16,18,18,10,12,12,14,14,12,13,14,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,17,16,12,13,13,15,15,14,14,14,15,16,14,15,15,16,16,15,16,16,17,18,16,16,16,18,18,12,13,13,14,14,14,14,15,16,16,13,14,14,16,16,15,16,16,18,18,15,16,16,19,17,14,15,15,16,17,15,15,16,17,17,16,17,16,17,18,17,17,18,17,19,17,17,18,18,19,14,14,14,16,16,15,16,16,17,17,15,16,15,17,17,17,17,17,19,20,16,17,17,18,18,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,14,16,16,12,13,13,15,15,14,14,14,16,16,13,14,14,16,16,15,16,16,18,17,15,16,16,17,17,12,13,13,15,15,13,14,14,16,16,13,14,14,16,16,15,16,15,18,18,15,16,15,17,16,14,15,15,16,16,15,16,16,17,17,15,16,16,18,17,16,17,17,18,18,16,17,17,18,18,14,15,14,16,15,15,16,15,17,17,15,16,15,17,16,16,17,17,18,18,17,17,16,19,17,10,12,12,14,15,14,14,15,15,17,14,15,14,17,15,16,17,17,17,18,16,17,17,18,18,12,14,13,16,15,14,14,16,15,17,15,17,16,18,17,17,17,18,17,19,18,18,18,19,18,12,13,14,15,15,15,16,16,16,17,14,15,14,18,16,18,17,18,19,19,17,18,17,20,18,15,15,15,17,17,15,16,16,17,18,18,18,18,19,18,18,18,19,18,20,18,19,19,21,21,15,15,16,16,17,17,18,18,18,18,15,16,16,17,17,17,19,20,19,20,17,18,18,19,17,13,14,14,16,16,14,15,15,16,17,14,15,15,17,17,16,16,17,17,18,15,17,16,17,17,14,15,15,16,16,15,16,16,17,17,16,16,16,17,17,17,17,18,17,18,17,17,17,18,20,14,15,15,17,16,15,16,16,17,17,15,16,16,17,17,17,17,17,18,18,16,17,17,19,18,16,16,17,17,17,17,18,17,19,18,17,17,17,18,19,17,20,18,19,21,17,19,18,19,20,15,17,15,17,16,16,17,17,18,18,17,17,17,18,17,18,19,18,19,21,18,18,17,19,19,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,4,8,8,4,8,8,5,7,8,8,9,10,8,10,10,5,8,7,8,10,10,8,10,9,7,9,9,9,11,11,9,11,11,9,11,11,11,12,13,11,13,13,9,11,11,11,13,13,11,13,13,7,9,9,9,11,11,9,11,11,9,11,11,11,13,13,11,13,13,9,11,11,11,13,13,11,13,12,5,9,9,9,11,11,9,11,11,9,11,11,11,12,13,11,13,13,9,11,11,11,13,13,11,13,13,9,11,12,11,13,13,12,13,13,11,12,13,13,14,15,13,14,14,12,13,13,13,15,15,13,15,14,8,10,10,11,13,13,12,14,13,11,12,12,13,14,15,13,15,15,11,12,12,13,15,15,13,15,14,5,9,9,9,11,11,9,11,11,9,11,11,11,13,13,11,13,13,9,11,10,11,13,13,11,13,12,8,10,10,11,13,13,12,13,13,11,12,12,13,14,15,14,15,15,10,12,12,13,14,15,13,15,14,9,12,11,12,13,13,11,13,13,12,13,13,13,15,15,13,14,15,11,13,12,13,15,14,13,15,14,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,2,0,0,0,64,0,0,0,72,46,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,104,242,5,0,0,0,0,0,0,0,0,0,144,242,5,0,0,0,0,0,0,0,0,0,184,242,5,0,224,242,5,0,0,0,0,0,0,0,0,0,8,243,5,0,48,243,5,0,0,0,0,0,0,0,0,0,88,243,5,0,128,243,5,0,0,0,0,0,0,0,0,0,168,243,5,0,208,243,5,0,128,243,5,0,0,0,0,0,248,243,5,0,32,244,5,0,72,244,5,0,112,244,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,40,242,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,7,14,16,17,18,20,21,7,4,6,8,11,12,14,16,13,5,4,4,8,9,11,13,15,8,4,3,5,7,9,10,17,11,8,4,4,6,9,9,17,11,9,7,6,5,7,8,19,13,11,9,9,7,8,8,21,15,13,11,10,8,8,7,5,0,0,0,243,0,0,0,64,45,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,56,46,6,0,0,0,0,0,5,0,0,0,53,12,0,0,240,32,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,40,45,6,0,0,0,0,0,5,0,0,0,243,0,0,0,232,31,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,224,32,6,0,0,0,0,0,5,0,0,0,243,0,0,0,224,30,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,216,31,6,0,0,0,0,0,5,0,0,0,243,0,0,0,216,29,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,208,30,6,0,0,0,0,0,5,0,0,0,53,12,0,0,136,17,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,29,6,0,0,0,0,0,5,0,0,0,53,12,0,0,56,5,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,112,17,6,0,0,0,0,0,1,0,0,0,7,0,0,0,16,5,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,24,5,6,0,0,0,0,0,5,0,0,0,243,0,0,0,8,4,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,0,5,6,0,0,0,0,0,5,0,0,0,243],"i8",L3,F.GLOBAL_BASE+379856),d3([3,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,248,3,6,0,0,0,0,0,5,0,0,0,243,0,0,0,248,1,6,0,1,0,0,0,0,106,120,225,0,106,120,97,2,0,0,0,0,0,0,0,240,2,6,0,0,0,0,0,5,0,0,0,53,12,0,0,168,245,5,0,1,0,0,0,0,136,83,225,0,136,51,97,3,0,0,0,0,0,0,0,224,1,6,0,0,0,0,0,1,0,0,0,25,0,0,0,32,245,5,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,64,245,5,0,0,0,0,0,1,0,0,0,25,0,0,0,152,244,5,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,184,244,5,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,4,5,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,7,7,12,12,5,11,12,12,12,5,12,11,12,12,12,12,12,12,12,12,13,13,13,13,7,11,11,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,7,13,10,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,7,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,11,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,11,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,7,7,7,8,7,8,7,7,7,8,7,8,8,8,8,8,7,8,7,8,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,9,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,9,9,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,8,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,8,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,5,7,7,5,7,7,5,7,7,7,7,9,7,9,9,6,7,7,8,9,9,7,9,7,6,8,8,8,9,10,8,9,9,8,9,10,9,9,10,10,10,10,8,9,9,10,10,11,9,10,10,6,8,8,8,9,9,8,10,9,8,9,9,9,10,10,10,11,10,8,10,9,10,11,10,9,11,9,6,8,8,7,9,9,7,9,9,7,9,9,8,9,10,9,10,10,8,9,9,9,10,10,9,10,9,7,9,9,9,9,10,9,10,10,9,9,10,10,9,11,10,11,11,9,10,10,10,11,11,10,11,10,6,9,8,9,9,10,9,10,9,8,10,10,9,9,10,10,11,11,9,10,10,10,11,11,9,11,9,6,8,8,7,9,9,7,9,9,8,9,9,9,9,10,9,10,10,7,9,9,9,10,10,8,10,9,6,8,9,9,9,10,9,10,9,9,10,10,9,9,11,10,11,11,8,9,10,10,11,11,9,10,9,7,9,9,9,10,10,9,10,9,9,10,10,10,10,11,10,11,11,9,10,9,10,11,11,10,11,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,9,9,5,7,8,10,11,5,8,7,11,10,8,10,11,12,13,8,11,10,13,12,6,7,8,10,11,7,8,10,10,12,8,9,9,12,12,10,10,12,12,14,10,12,12,14,13,6,8,7,11,10,8,9,9,12,12,7,10,8,12,11,10,12,12,13,14,10,12,10,14,12,9,10,11,11,13,10,10,11,11,13,11,12,12,13,14,12,12,13,11,15,13,14,14,15,14,9,11,10,13,11,11,12,12,13,13,10,11,10,13,11,13,14,14,15,15,12,13,12,15,11,6,8,9,11,12,8,9,11,12,13,8,10,10,13,13,11,12,13,14,15,11,12,13,14,14,9,9,10,12,13,10,10,12,12,14,10,11,11,13,14,12,12,14,14,15,13,13,14,15,15,9,10,10,13,13,10,11,11,13,14,10,11,10,14,13,13,13,14,15,15,12,14,13,15,14,12,12,13,13,14,12,13,14,13,15,13,14,14,15,15,14,14,15,14,16,15,15,15,16,16,12,13,13,14,14,13,14,14,15,15,12,14,13,15,14,14,15,15,16,16,14,15,14,16,14,6,9,8,12,11,8,10,10,13,13,8,11,9,13,12,11,12,12,14,14,11,13,12,15,14,9,10,10,13,13,10,10,11,13,14,10,12,11,14,13,12,13,14,14,15,13,13,13,15,14,9,10,9,13,12,10,11,11,14,13,10,12,10,14,12,13,14,13,15,15,12,14,12,15,14,12,13,13,14,14,13,13,13,14,15,13,14,14,15,15,14,14,15,14,16,14,15,15,16,16,12,13,12,14,13,13,14,14,15,15,12,14,13,15,13,15,15,15,16,16,14,15,14,16,14,11,12,12,13,14,12,13,14,14,16,12,13,13,15,15,14,14,16,15,17,14,15,15,16,16,12,13,14,14,15,13,13,15,15,16,14,14,14,15,16,15,15,16,16,17,15,15,16,16,17,13,13,13,15,15,14,14,15,15,16,13,14,14,15,16,15,15,16,16,17,15,16,15,17,16,14,15,15,16,16,15,15,16,16,17,15,16,16,17,17,16,16,17,16,18,16,17,17,17,17,15,15,15,16,16,15,16,16,17,17,15,16,16,17,16,16,17,17,18,18,16,17,16,17,16,11,12,12,15,13,13,13,13,15,15,12,14,13,16,14,14,15,15,16,16,14,15,14,17,15,13,13,13,15,14,13,14,14,16,15,14,14,14,16,15,15,15,16,16,17,15,16,15,17,16,12,14,13,15,14,14,14,14,16,15,13,14,13,16,15,15,16,16,17,16,15,16,15,17,16,15,15,15,16,16,15,15,16,16,17,15,16,16,17,17,16,16,17,17,17,17,17,17,18,17,14,15,15,16,16,15,16,16,17,16,15,16,15,17,16,17,17,17,18,17,16,17,16,18,16,6,9,9,12,12,8,10,10,12,13,8,10,10,13,12,10,12,12,14,15,11,13,12,15,14,8,9,10,12,13,9,10,11,13,14,10,11,11,14,13,12,12,13,14,15,12,13,13,15,15,8,10,10,13,13,10,11,11,13,14,10,12,10,14,13,12,13,13,15,15,12,14,13,15,14,11,12,12,13,14,12,12,13,13,15,12,13,13,15,15,14,13,15,14,16,14,15,15,16,16,12,13,13,14,14,13,13,14,15,14,12,14,13,15,14,14,15,15,16,15,14,15,14,16,14,7,9,10,12,12,9,10,11,13,14,9,11,10,13,13,11,12,13,14,15,12,13,13,15,14,9,10,11,12,13,10,10,12,13,14,11,11,12,14,14,12,12,14,14,15,13,13,14,15,15,9,11,11,13,13,11,12,12,14,14,10,12,10,14,13,13,14,14,15,15,13,14,13,16,14,12,12,13,14,15,13,13,14,14,16,13,14,14,15,15,14,14,15,14,17,14,15,15,16,16,12,13,13,15,14,13,14,14,15,15,13,14,13,16,14,15,15,15,16,16,14,15,14,16,14,7,10,9,13,12,10,11,12,12,14,10,12,11,14,12,12,13,13,14,15,12,14,13,15,14,9,11,10,13,13,10,11,12,13,14,12,13,12,15,13,13,13,14,13,15,13,14,14,16,15,10,11,11,13,13,12,12,13,14,14,11,12,11,14,13,14,14,14,15,16,13,14,13,16,13,12,13,13,14,14,12,13,13,14,15,14,14,14,15,15,14,13,15,13,16,15,15,15,17,16,13,13,13,14,14,14,14,14,15,15,12,13,13,15,14,15,16,16,16,16,14,15,14,16,13,11,12,13,14,15,12,13,14,15,16,13,14,14,15,15,14,14,15,15,17,14,15,15,16,16,13,13,14,14,15,13,13,15,14,16,14,14,15,15,16,15,14,16,15,17,15,16,16,16,17,13,14,14,15,15,14,14,15,16,16,13,15,14,16,16,15,16,16,17,17,15,16,15,17,16,14,15,15,15,17,15,15,16,15,17,15,16,16,16,17,16,16,17,16,18,17,17,17,17,18,15,15,15,17,16,15,16,16,17,17,15,16,16,17,16,16,17,17,18,18,16,17,16,18,17,11,13,12,15,14,13,13,14,15,15,13,14,13,16,14,15,15,15,16,16,15,16,15,17,16,13,14,13,15,14,13,13,14,15,15,14,15,14,16,15,15,15,16,16,16,15,16,15,18,16,13,14,14,15,15,14,15,15,15,16,13,15,13,16,15,15,16,16,17,17,15,16,15,17,16,15,15,15,16,16,15,15,15,16,17,16,16,16,17,16,16,16,17,16,17,17,17,17,18,17,15,15,15,16,16,16,16,16,17,17,15,16,15,17,16,17,17,17,18,18,16,17,16,17,15,6,9,9,12,12,8,10,10,12,13,8,10,10,13,12,11,12,13,14,15,10,12,12,14,14,9,10,10,13,13,10,10,12,13,14,10,11,11,14,13,12,13,14,14,15,12,13,13,15,15,8,10,9,13,12,10,11,11,13,14,9,11,10,14,13,12,13,13,15,15,12,13,12,15,14,12,13,13,14,14,12,13,13,14,15,13,14,14,14,15,14,14,15,14,16,14,15,15,16,16,11,12,12,14,13,13,13,13,15,15,12,13,12,15,13,14,15,15,16,16,14,15,14,16,14,7,9,10,12,13,10,10,12,12,14,10,12,11,14,13,12,13,14,14,15,12,13,13,15,14,10,11,11,13,13,11,11,12,13,14,12,13,12,14,14,13,13,14,13,16,14,14,14,15,15,9,10,11,13,14,12,12,13,13,15,10,12,10,14,13,13,14,14,15,16,13,14,13,15,13,13,14,13,14,15,12,13,13,14,15,14,14,14,15,15,14,13,15,13,16,15,16,16,16,16,12,13,13,14,14,14,14,14,15,15,12,13,13,15,14,15,15,16,16,16,14,15,13,16,13,7,10,9,12,12,9,10,11,13,13,9,11,10,14,13,12,13,13,14,15,11,13,12,15,14,9,11,11,13,13,10,10,12,13,14,11,12,12,14,14,13,13,14,14,16,13,14,14,16,15,9,11,10,13,12,11,12,11,14,14,10,12,10,14,13,13,14,13,15,15,12,14,12,16,14,12,13,13,14,15,13,13,14,14,16,13,14,14,15,15,14,14,15,14,16,15,15,15,16,16,12,13,12,15,14,13,14,14,15,15,12,14,13,16,14,14,15,15,16,16,14,15,14,17,14,11,12,13,14,15,13,13,14,14,16,13,14,13,15,15,15,15,16,16,17,15,15,15,16,16,13,14,13,15,15,13,13,15,15,16,14,15,15,16,16,15,15,16,15,17,16,16,16,17,17,13,13,14,14,15,14,14,15,15,16,13,14,13,15,15,15,16,16,16,17,15,16,15,16,16,15,15,15,16,16,15,15,16,16,17,16,16,16,17,17,16,16,17,16,18,17,17,17,18,18,15,15,15,16,16,16,16,16,17,17,15,15,15,16,16,17,17,17,17,18,16,16,16,17,15,11,13,12,15,14,13,13,14,15,15,12,14,13,16,14,14,15,15,16,16,14,15,14,16,15,13,14,14,15,15,13,14,14,16,16,14,15,14,16,16,15,15,16,17,17,15,16,16,17,17,13,14,13,15,14,14,14,14,16,15,13,15,13,16,14,15,16,15,17,16,15,16,14,17,15,14,16,15,16,17,15,16,16,16,17,15,16,16,17,17,16,16,17,17,18,16,17,17,18,17,14,15,15,17,15,15,16,16,17,16,15,16,15,17,15,16,17,17,18,17,16,17,16,18,15,10,12,12,14,14,12,13,13,15,15,12,13,13,15,15,13,14,14,15,16,14,15,14,16,16,12,13,13,15,15,12,13,14,15,15,13,14,14,15,15,14,14,15,16,17,14,15,15,17,16,12,13,13,15,15,13,14,14,15,16,13,14,14,16,15,14,15,15,16,17,14,15,15,17,16,13,14,14,15,16,14,14,15,15,16,14,15,15,16,16,15,15,16,16,17,15,16,16,17,17,14,15,15,16,16,15,15,15,16,16,15,15,15,16,16,16,17,16,17,17,16,16,16,18,16,11,12,12,14,14,12,13,14,15,15,12,13,13,15,15,13,14,15,16,16,14,15,15,16,16,12,13,13,15,15,13,13,14,15,16,13,14,14,15,16,14,14,15,16,17,15,15,15,16,17,12,13,13,15,15,13,14,14,15,16,13,14,14,16,15,15,15,15,16,17,15,16,15,17,16,14,14,15,15,16,14,14,15,15,17,15,15,16,16,17,15,15,16,15,18,16,16,16,17,17,14,15,15,16,16,15,16,16,17,17,15,15,15,17,16,16,17,16,17,17,16,16,16,18,16,11,12,12,14,14,13,13,14,15,15,13,14,13,15,15,14,15,15,16,16,14,15,15,16,16,12,13,13,15,15,13,13,14,15,15,14,14,14,16,15,15,15,15,15,16,15,16,15,17,16,12,13,13,15,15,14,14,15,15,16,13,14,13,16,15,15,15,16,16,17,15,16,15,17,15,14,15,14,16,16,14,15,15,16,16,15,16,15,17,16,15,15,16,15,17,16,17,16,17,17,14,15,15,16,16,15,16,16,16,17,14,15,15,16,16,16,17,17,17,18,16,16,16,17,16,12,13,13,15,15,13,13,14,15,16,13,14,14,16,15,14,15,15,16,17,14,15,15,17,16,13,14,14,15,16,14,14,15,15,17,14,15,15,16,16,15,14,16,15,17,15,16,16,17,17,13,14,14,16,16,14,15,15,16,16,14,15,14,16,16,15,16,16,17,17,15,16,15,17,16,15,15,16,15,17,15,15,16,15,17,15,16,16,16,17,16,15,17,15,18,17,17,17,17,17,15,15,15,17,17,16,16,16,17,17,15,16,15,17,17,16,17,17,18,18,16,17,15,18,15,11,12,12,15,15,13,13,15,14,16,13,14,13,16,14,15,15,16,16,17,15,16,15,17,15,12,14,13,16,14,13,13,14,14,16,14,15,14,16,15,15,15,16,15,17,16,16,16,17,16,12,13,14,15,16,15,15,15,15,16,13,15,13,16,14,16,16,16,17,17,15,16,15,17,15,15,16,15,16,15,14,14,15,16,16,16,16,16,17,16,15,15,16,15,17,17,17,17,18,17,15,15,15,16,16,16,16,16,16,17,14,15,15,17,16,17,17,17,17,18,15,16,15,18,14,10,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,14,15,15,16,13,15,14,16,16,12,13,13,15,15,13,14,14,15,16,13,14,14,15,15,14,15,15,16,17,14,15,15,17,16,12,13,13,15,15,13,14,14,15,15,12,14,13,15,15,14,15,15,16,17,14,15,14,17,15,14,15,15,16,16,14,15,15,16,17,15,15,15,17,16,16,16,16,16,17,16,16,16,17,17,13,14,14,16,15,14,15,15,16,16,14,15,14,16,16,15,16,16,17,17,15,16,15,17,16,11,12,12,14,15,13,13,14,14,15,13,14,13,15,15,14,15,15,16,16,14,15,15,16,16,12,14,13,15,15,13,13,14,15,16,14,15,14,16,15,15,15,16,15,17,15,16,16,17,16,12,13,13,15,15,14,14,15,15,16,13,14,13,16,15,15,15,16,16,17,15,15,15,16,16,14,15,15,16,16,14,15,15,16,16,15,16,16,17,17,16,16,16,16,17,16,17,17,18,17,14,14,15,15,16,15,15,16,16,17,14,15,15,16,16,16,16,16,17,17,15,16,15,17,15,11,12,12,14,14,12,13,14,15,15,12,13,13,15,15,14,15,15,16,16,13,15,14,16,16,12,13,13,15,15,13,14,14,15,16,13,14,14,16,16,15,15,15,16,17,15,15,15,17,16,12,13,13,15,15,13,14,14,16,15,13,14,13,16,15,15,16,15,17,17,14,15,14,17,16,14,15,15,16,16,15,15,16,16,17,15,16,16,17,17,16,16,16,16,18,16,17,16,18,17,14,15,14,16,15,15,15,15,17,16,14,15,14,17,15,16,17,16,17,17,15,16,15,17,15,11,12,12,15,15,13,13,15,14,16,13,15,13,16,14,15,15,16,15,17,15,16,15,17,16,12,14,13,15,15,13,13,15,15,16,15,15,15,16,15,15,15,16,15,17,16,16,16,17,16,12,13,14,15,16,14,14,15,15,16,13,14,13,16,14,16,16,16,16,17,15,16,15,17,15,15,16,15,16,16,14,15,15,16,16,16,16,16,17,16,15,15,16,15,17,17,17,17,18,17,15,15,15,15,16,16,16,16,16,17,14,15,14,16,15,17,17,17,17,18,15,16,15,17,15,12,13,13,15,15,13,14,14,15,16,13,14,14,16,15,14,15,15,16,17,14,15,15,17,16,13,14,14,16,15,13,14,15,16,16,14,15,15,16,16,15,15,16,16,17,15,16,16,17,17,13,14,13,16,15,14,15,15,16,16,13,15,14,16,15,15,16,16,17,17,15,16,14,17,15,15,15,16,17,17,15,15,16,16,17,16,16,16,17,17,16,15,17,16,18,17,17,17,18,18,15,15,15,17,14,16,16,16,17,16,15,16,15,17,15,16,17,17,18,17,16,17,15,18,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,7,9,9,10,10,9,10,10,10,11,9,10,10,11,10,9,10,10,11,11,9,10,10,11,11,9,10,10,11,11,10,10,10,11,11,10,10,10,11,11,10,11,11,11,11,10,11,11,11,11,9,10,10,11,11,10,10,10,11,11,9,10,10,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,10,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,9,10,10,11,11,10,10,11,11,11,10,10,11,11,11,10,11,11,11,12,10,11,11,12,12,10,10,11,11,11,10,11,11,11,12,11,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,11,11,11,11,11,11,11,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,10,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,11,10,11,11,11,11,10,11,11,11,12,11,11,11,12,12,11,11,12,12,12,11,11,11,12,12,10,11,10,11,11,11,11,11,12,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,10,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,13,12,13,12,9,10,10,11,11,10,10,11,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,11,11,11,10,11,11,11,12,10,11,11,12,12,11,11,12,12,12,11,11,11,12,12,10,11,10,11,11,11,11,11,12,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,10,11,11,11,10,11,11,12,12,10,11,11,12,12,11,11,11,12,12,11,11,12,12,12,10,11,11,11,12,11,11,12,12,12,11,11,12,12,12,11,11,12,12,12,11,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,11,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,10,11,11,12,11,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,9,10,10,11,11,10,10,11,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,10,11,11,11,11,10,11,11,12,12,11,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,11,10,11,11,10,11,11,12,12,10,11,11,12,11,11,12,11,12,12,11,11,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,11,12,10,11,11,12,11,11,11,12,12,12,11,11,12,12,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,12,12,12,12,12,12,12,13,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,12,10,11,11,12,12,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,12,13,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,13,12,13,12,12,12,12,13,12,12,13,12,13,12,13,13,12,13,12,12,12,12,12,12,13,13,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,13,13,13,12,12,12,12,12,12,12,13,12,13,12,12,12,12,13,12,12,13,13,13,12,12,13,12,13,12,10,11,11,12,12,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,11],"i8",L3,F.GLOBAL_BASE+390097),d3([12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,12,13,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,13,13,13,12,12,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,13,12,13,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,13,12,13,12,12,12,12,12,12,12,12,12,12,13,12,13,12,13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,13,12,13,12,12,13,12,13,12,12,13,12,13,12,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,4,7,8,4,8,7,5,7,8,7,7,10,8,9,9,5,7,7,8,9,9,7,10,7,5,7,8,8,9,11,8,10,10,8,9,10,10,10,12,11,12,12,8,10,10,10,12,12,10,12,11,5,8,7,8,10,10,8,11,9,8,10,10,10,11,12,10,12,12,8,10,9,11,12,12,10,12,10,5,8,8,7,10,10,8,11,10,7,9,10,9,10,12,10,12,12,8,10,10,10,12,12,10,12,11,7,9,10,9,11,12,10,12,11,9,9,12,10,10,13,12,12,13,10,12,11,12,13,13,11,13,11,7,10,9,10,11,12,10,13,11,9,11,11,11,11,13,12,14,13,10,11,11,12,14,14,11,14,11,5,8,8,8,10,11,7,10,10,8,10,10,10,11,12,10,12,12,7,10,9,10,12,12,9,12,10,7,9,10,10,11,13,10,12,11,10,11,11,11,11,14,12,14,14,9,11,11,12,13,14,11,13,11,7,10,9,10,11,12,9,12,10,10,11,12,11,11,13,12,13,13,9,12,9,12,13,12,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,6,7,7,7,7,8,7,8,7,7,7,8,7,8,8,8,8,8,7,8,7,7,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,8,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,5,5,7,7,5,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,5,7,8,7,9,10,8,9,9,8,9,10,9,10,12,10,11,11,8,10,9,10,11,12,9,11,10,5,8,7,8,10,9,7,10,9,8,9,10,9,10,11,10,12,11,8,10,9,10,11,11,9,12,10,5,8,8,7,9,10,8,10,9,7,9,10,9,10,11,9,11,11,8,10,9,10,11,11,10,12,10,7,9,10,9,10,12,9,11,11,9,9,12,11,10,13,11,11,13,10,12,11,11,13,13,11,13,12,7,9,9,9,11,11,9,12,11,9,11,10,10,11,12,11,13,12,9,11,11,12,13,13,11,13,11,5,8,8,8,9,10,7,10,9,8,9,10,10,10,12,10,11,11,7,10,9,9,11,11,9,11,10,7,9,9,9,11,12,9,11,11,9,11,11,11,11,13,12,13,13,9,10,11,11,12,13,10,12,11,7,10,9,9,11,11,9,12,10,10,11,12,11,12,13,12,13,13,9,12,9,11,13,11,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,9,9,6,8,8,10,10,6,8,8,10,10,8,9,10,12,12,8,10,9,12,12,6,8,8,10,10,8,8,9,10,11,8,9,9,11,11,9,10,11,12,13,10,11,11,13,13,6,8,8,10,10,8,9,9,11,11,8,9,8,11,10,10,11,11,13,13,9,11,10,13,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,12,13,13,15,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,13,13,14,15,12,13,12,15,12,7,8,8,10,11,8,9,10,11,12,8,9,9,11,11,10,11,11,13,14,10,11,11,13,13,8,9,9,11,12,9,10,11,11,13,9,10,10,12,12,11,11,12,13,15,11,12,12,14,14,8,9,9,11,11,9,10,11,12,13,9,10,10,12,12,11,12,12,14,15,11,12,12,14,14,10,11,12,13,13,11,12,12,13,14,12,12,12,14,14,13,13,14,14,16,14,14,14,16,15,10,11,11,13,13,12,12,12,14,14,11,12,12,14,13,14,14,14,15,16,13,14,13,16,14,7,8,8,11,10,8,9,9,11,11,8,10,9,12,11,10,11,11,13,13,10,11,11,14,13,8,9,9,12,11,9,10,10,12,12,9,11,10,13,12,11,12,12,13,14,11,12,12,15,14,8,9,9,12,11,9,10,10,12,12,9,11,10,13,11,11,12,12,14,14,11,12,12,14,13,10,11,11,13,13,11,12,12,13,14,12,13,12,14,14,13,13,14,14,16,13,14,14,16,15,10,11,11,13,13,12,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,16,14,9,10,11,12,13,11,11,12,12,14,11,11,12,13,14,13,13,14,14,16,13,13,14,15,15,11,11,12,12,14,12,12,13,13,15,12,12,13,13,15,14,14,15,15,16,14,14,14,15,16,11,12,12,13,14,12,12,13,14,15,12,13,12,14,14,14,14,15,15,16,14,14,14,16,16,13,13,14,15,16,14,14,15,15,16,14,15,15,16,16,15,15,16,16,18,16,16,16,17,17,13,14,14,15,15,14,14,15,16,16,14,15,14,16,16,16,16,16,17,18,15,16,16,17,16,9,11,10,13,12,11,12,11,14,13,11,12,11,14,12,13,14,13,15,14,13,14,13,16,14,11,12,12,14,13,12,12,13,14,14,12,13,12,15,14,14,14,14,16,16,14,15,14,17,15,11,12,11,14,12,12,13,12,15,13,12,13,12,15,13,14,14,14,16,15,14,15,14,16,15,13,14,14,15,15,14,14,15,16,16,14,15,14,16,16,15,15,16,16,17,16,16,16,17,17,13,14,14,16,15,14,15,15,16,16,14,15,14,17,15,16,16,16,17,17,15,16,15,18,16,7,8,8,10,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,11,11,14,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,13,14,11,12,12,14,14,8,9,9,12,11,9,10,11,12,13,9,11,10,13,12,11,12,12,14,14,11,12,12,14,13,10,11,11,13,13,11,12,12,13,14,11,12,12,14,14,13,13,14,14,16,13,14,14,16,15,10,12,11,13,13,12,12,12,14,14,11,12,12,14,13,14,14,14,15,16,13,14,14,16,14,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,11,12,13,14,11,12,12,14,14,9,9,10,11,12,10,10,11,12,13,10,10,11,12,13,12,12,13,14,15,12,12,13,14,15,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,15,15,12,13,13,15,14,11,11,12,13,14,12,12,13,13,15,12,12,13,14,15,14,14,15,14,16,14,14,15,15,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,14,14,15,15,16,16,14,15,14,17,15,8,9,9,11,11,9,10,10,12,12,9,11,10,13,12,11,12,12,14,14,11,13,12,15,13,9,10,10,12,12,10,10,11,12,13,10,12,11,13,13,12,12,13,13,15,12,13,13,15,14,9,10,10,12,12,11,11,12,13,13,10,12,10,13,12,12,13,13,15,15,12,13,13,15,13,11,12,12,14,14,12,12,13,14,14,12,13,13,15,14,13,13,14,13,16,14,15,14,16,16,11,12,12,14,14,13,13,13,15,15,12,13,12,15,14,14,15,15,16,17,14,15,13,16,13,10,11,11,13,14,11,12,12,13,15,11,12,12,14,14,13,14,14,15,16,13,14,14,16,16,11,11,12,12,14,12,12,13,13,15,12,13,13,13,15,14,14,15,14,17,14,14,15,15,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,16,13,14,14,14,16,14,14,15,14,17,14,15,15,14,17,16,16,17,15,18,16,16,17,16,18,13,14,14,16,16,14,15,15,17,16,14,15,15,17,16,16,17,17,18,18,16,17,16,18,17,10,11,11,14,13,11,12,12,14,14,11,13,12,15,14,14,14,14,16,15,14,15,14,16,15,11,12,12,14,13,12,13,13,15,14,13,14,13,15,14,14,15,15,16,16,14,15,15,17,15,11,12,12,14,14,13,13,13,15,15,12,13,13,15,14,15,15,15,17,17,14,15,15,17,15,13,14,14,16,15,14,15,15,16,16,15,15,15,17,16,16,16,16,16,17,16,17,16,18,17,14,14,14,16,16,15,15,15,16,16,14,15,14,17,16,16,17,17,17,18,16,17,16,18,16,7,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,11,10,13,12,11,12,12,13,14,11,12,12,14,14,8,9,9,11,11,9,10,10,12,12,9,10,10,13,12,11,12,12,14,14,11,12,11,14,13,10,11,12,13,13,11,12,12,13,14,12,13,12,14,14,13,13,14,14,16,13,14,14,16,15,10,11,11,13,13,11,12,12,14,14,11,12,12,14,13,13,14,14,15,16,13,14,13,16,14,8,9,9,11,11,9,10,11,12,13,9,10,10,12,12,11,12,13,13,14,11,12,12,14,14,9,10,10,12,12,10,10,11,12,13,11,12,11,13,13,12,12,13,13,15,12,13,13,15,15,9,10,10,12,12,10,11,12,13,14,10,11,10,13,12,12,13,13,14,15,12,13,12,15,13,12,12,12,14,14,12,12,13,14,15,13,13,13,15,15,14,14,15,13,16,14,15,15,16,16,11,12,12,14,14,12,13,13,14,15,12,13,12,14,14,14,14,15,16,16,13,14,13,16,14,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,14,11,12,11,14,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,14,15,12,13,13,15,14,9,10,9,12,11,10,11,10,13,12,10,11,10,13,12,12,13,12,15,14,12,13,12,15,14,11,12,12,14,14,12,13,13,14,15,12,13,13,15,15,14,14,15,15,17,14,15,15,16,16,11,12,11,14,13,12,13,12,15,14,12,13,12,15,13,14,15,14,16,15,13,15,14,17,14,10,11,11,13,14,11,12,13,13,15,11,12,12,14,14,14,14,15,15,17,13,14,14,15,16,11,12,12,14,14,12,12,13,14,15,13,13,13,15,15,14,15,15,15,17,15,15,15,16,16,11,12,12,13,14,13,13,14,14,15,12,13,13,14,15,14,15,15,16,17,14,15,15,16,16,14,14,14,16,16,14,14,15,15,17,15,15,15,17,16,16,16,17,16,18,16,17,17,18,17,13,14,14,15,16,14,15,15,16,17,14,15,15,16,16,16,17,17,17,18,16,16,16,17,16,10,11,11,14,13,11,12,12,14,14,11,12,12,15,13,13,14,14,16,15,13,14,14,16,15,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,17,16,11,12,11,14,12,12,13,13,15,13,12,13,12,15,13,14,15,15,16,15,14,15,14,17,14,13,14,14,16,16,14,15,15,16,17,14,15,15,16,17,16,16,17,17,18,16,17,17,18,18,13,14,14,16,13,14,15,15,17,14,14,15,14,17,14,16,17,16,17,16,16,17,16,18,15,8,11,11,13,13,10,12,12,14,14,11,12,12,14,14,13,13,14,15,16,13,14,14,16,15,10,11,11,14,14,11,12,12,14,15,11,12,12,15,14,13,14,14,15,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,12,15,14,14,14,15,16,16,14,15,14,16,16,12,13,13,15,15,12,13,14,15,16,13,14,14,16,16,14,15,15,16,17,15,15,16,17,17,13,14,14,16,15,14,15,15,16,16,14,15,14,16,16,16,16,16,17,17,15,16,16,18,16,10,11,11,13,14,11,12,12,14,15,11,12,12,15,14,13,14,14,16,16,13,14,14,16,16,11,11,12,14,14,12,12,13,14,15,12,13,13,15,15,14,14,15,15,17,14,14,15,16,16,11,12,12,15,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,17,16,13,12,14,14,16,13,13,15,14,17,14,13,15,15,17,15,14,16,15,18,16,15,16,16,18,13,14,14,16,16,14,15,15,17,17,14,15,15,17,16,16,17,17,18,18,16,17,16,18,17,10,11,11,14,13,11,12,12,14,14,11,13,12,15,14,13,14,14,15,16,13,14,14,16,16,11,12,12,14,14,12,13,13,14,15,12,13,13,15,15,14,14,15,15,16,14,15,15,17,16,11,12,12,14,14,13,13,13,15,15,12,13,13,15,14,14,15,15,16,17,14,15,14,17,15,13,14,13,16,15,14,14,14,15,16,14,15,14,16,16,15,15,16,16,17,16,16,16,18,17,14,14,14,16,16,15,15,15,17,16,14,15,14,17,16,16,16,17,17,18,16,17,16,18,16,11,13,13,15,15,12,13,14,15,16,12,14,14,15,15,14,15,15,16,17,14,15,15,17,17,12,13,14,14,16,13,14,14,14,16,14,14,14,15,16,15,15,16,15,18,15,16,16,17,17,13,14,14,16,16,14,14,15,16,16,14,15,14,16,16,15,16,16,17,18,15,16,16,18,17,14,14,16,13,17,15,15,16,14,18,15,15,16,14,18,16,16,18,15,19,17,17,18,16,18,15,16,15,17,17,15,16,17,18,18,16,16,16,18,17,17,18,18,19,19,17,18,17,19,18,11,12,12,15,14,13,13,14,15,16,13,14,13,16,14,15,15,15,16,17,15,16,15,17,16,12,13,13,15,14,13,13,14,15,15,14,15,14,16,15,15,15,16,16,17,16,16,16,18,17,12,13,13,15,15,14,14,15,16,16,13,14,13,16,15,16,16,16,17,18,15,16,15,17,16,14,15,14,17,15,14,15,15,16,16,15,16,15,17,16,16,15,16,15,17,17,18,17,18,17,15,15,15,16,17,16,16,16,17,17,15,16,15,17,16,17,18,18,18,18,16,17,16,18,15,8,11,11,13,13,11,12,12,14,14,10,12,12,14,14,13,14,14,15,16,13,14,13,16,15,11,12,12,14,14,12,12,13,14,15,12,13,13,15,15,14,14,15,15,16,14,14,14,16,16,10,11,11,14,14,11,12,12,14,15,11,12,12,15,14,13,14,14,16,16,13,14,14,16,15,13,14,14,15,16,14,14,15,16,16,14,15,15,16,16,15,16,16,16,18,16,16,16,17,17,12,13,13,15,15,13,14,14,16,16,12,14,13,16,15,15,16,15,17,17,14,16,15,17,16,10,11,11,13,14,11,12,13,14,15,11,13,12,14,14,14,14,15,16,16,13,14,14,16,16,11,12,12,14,14,12,13,13,14,15,13,14,13,15,15,14,15,15,16,17,14,15,15,17,16,11,12,12,14,14,12,13,13,15,15,12,13,12,15,14,14,15,15,16,17,14,15,15,16,16,14,14,14,16,16,14,14,15,16,16,15,15,15,16,16,16,16,17,16,18,16,17,17,18,18,13,13,14,15,16,14,14,15,16,17,13,14,14,16,16,16,16,17,17,18,15,16,15,17,16,10,11,11,14,13,11,12,12,14,14,11,12,12,15,14,13,14,14,16,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,17,16,11,12,11,14,14,12,13,13,15,15,12,13,12,15,14,14,15,14,16,16,14,15,14,17,16,14,14,14,16,16,14,15,15,16,17,14,15,15,17,17,16,16,17,17,18,16,17,17,18,18,13,14,12,16,14,14,15,13,17,15,13,15,13,17,14,16,16,15,18,16,15,17,14,18,15,11,12,12,14,15,13,13,14,14,16,13,14,13,15,14,15,15,16,16,17,15,16,15,17,16,12,13,13,15,15,13,13,14,15,16,14,15,14,16,16,15,15,16,15,18,16,16,16,18,17,12,13,13,15,15,14,14,15,15,16,13,14,13,15,15,16,16,16,16,18,15,16,15,17,16,15,15,15,17,16,15,15,16,16,17,16,16,16,18,17,16,16,17,15,18,17,18,17,19,18,14,14,15,15,17,15,15,16,16,17,14,15,15,16,16,17,17,18,17,19,16,17,15,17,15,11,13,12,15,15,12,14,14,15,15,12,14,13,16,15,15,15,15,17,17,14,15,15,17,16,12,14,14,16,16,14,14,15,16,16,14,14,14,16,16,15,16,17,17,18,15,16,16,18,17,12,14,13,16,14,13,14,14,16,15,13,15,14,16,14,15,16,16,17,17,15,16,15,18,15,15,15,16,17,17,15,16,16,17,18,16,16,16,18,18,17,17,18,18,19,17,17,18,19,19,14,15,14,17,13,15,16,15,18,14,15,16,15,18,14,17,18,17,18,16,16,18,16,19,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,4,7,7,4,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,6,7,8,8,9,10,8,9,10,8,9,10,10,10,12,10,11,12,8,10,10,10,11,12,10,11,11,6,8,7,8,10,9,8,10,9,8,10,10,10,11,11,10,12,11,8,10,9,10,12,11,10,12,10,5,8,8,8,10,10,8,10,10,7,9,10,9,10,11,9,11,11,8,10,10,10,12,12,10,12,11,7,9,9,9,10,11,9,11,11,9,9,11,10,11,12,10,11,12,9,11,11,11,12,12,11,12,12,7,9,9,10,11,11,10,12,11,9,11,10,11,11,12,11,13,12,10,11,11,12,13,13,11,13,11,5,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,11,7,10,9,9,11,11,9,11,10,7,9,9,10,11,12,10,11,11,10,11,11,11,11,13,12,13,13,9,10,11,12,12,13,11,12,11,7,9,9,9,11,11,9,11,10,9,11,11,11,12,12,11,12,12,9,11,9,10,12,11,10,12,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,9,15,17,20,21,22,23,5,5,7,9,11,13,17,20,9,5,5,6,8,10,15,18,11,7,5,4,6,9,13,17,14,9,7,5,6,7,10,14,17,10,8,6,6,4,5,8,20,14,13,10,8,4,3,4,23,17,16,14,12,6,4,4,2,0,0,0,64,0,0,0,112,96,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,216,47,6,0,0,0,0,0,0,0,0,0,0,48,6,0,0,0,0,0,0,0,0,0,40,48,6,0,80,48,6,0,0,0,0,0,0,0,0,0,120,48,6,0,160,48,6,0,0,0,0,0,0,0,0,0,200,48,6,0,240,48,6,0,0,0,0,0,0,0,0,0,24,49,6,0,64,49,6,0,240,48,6,0,0,0,0,0,104,49,6,0,144,49,6,0,184,49,6,0,224,49,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,152,47,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,7,14,16,17,17,18,20,6,3,5,8,10,11,13,15,13,5,3,5,8,9,11,12,15,7,4,3,5,7,9,11,16,10,7,5,6,7,9,10,17,11,8,7,7,6,8,8,19,13,11,9,9,8,8,9,20,14,13,11,10,8,9,9,5,0,0,0,243,0,0,0,104,95,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,96,96,6,0,0,0,0,0,5,0,0,0,53,12,0,0,24,83,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,80,95,6,0,0,0,0,0,5,0,0,0,243,0,0,0,16,82,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,8,83,6,0,0,0,0,0,5,0,0,0,243,0,0,0,8,81,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,0,82,6,0,0,0,0,0,5,0,0,0,243,0,0,0,0,80,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,248,80,6,0,0,0,0,0,5,0,0,0,53,12,0,0,176,67,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,79,6,0,0,0,0,0,5,0,0,0,53,12,0,0,96,55,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,152,67,6,0,0,0,0,0,1,0,0,0,7,0,0,0,56,55,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,64,55,6,0,0,0,0,0,5,0,0,0,243,0,0,0,48,54,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,40,55,6,0,0,0,0,0,5,0,0,0,243,0,0,0,40,53,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,32,54,6,0,0,0,0,0,5,0,0,0,243,0,0,0,32,52,6,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,24,53,6,0,0,0,0,0,5,0,0,0,243,0,0,0,24,51,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,16,52,6,0,0,0,0,0,1,0,0,0,25,0,0,0,144,50,6,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,176,50,6,0,0,0,0,0,1,0,0,0,25,0,0,0,8,50,6,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,40,50,6,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,4,5,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,5,5,4,10,10,5,10,10,5,10,10,10,10,10,10,10,10,5,10,10,10,10,10,9,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,7,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,7,6,7,8,6,8,7,7,7,8,7,7,8,8,8,8,7,7,7,8,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,9,8,9,8,8,8,8,8,8,9,8,9,9,8,8,8,9,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,9,9,9,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,6,5,7,8,5,8,7,5,7,7,7,7,9,8,9,9,5,7,7,8,9,9,7,9,7,6,8,8,8,9,10,8,9,9,8,9,10,9,9,11,10,10,11,8,10,9,10,10,11,9,10,10,6,8,8,8,9,9,8,10,9,8,9,10,9,10,10,10,11,10,8,10,9,10,11,10,9,11,9,6,8,8,7,9,9,8,9,9,7,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,10,9,7,9,9,9,10,10,9,10,10,9,9,10,10,9,11,10,11,11,9,10,10,10,11,11,10,11,10,6,9,8,9,10,10,9,10,9,8,10,10,9,9,10,10,11,11,9,10,10,10,11,11,9,11,9,6,8,8,8,9,9,7,9,9,8,9,9,9,9,10,9,10,10,7,9,9,9,10,10,9,10,9,6,8,9,9,9,10,9,10,10,9,10,10,9,9,11,10,11,11,8,10,10,10,11,11,9,10,9,7,9,9,9,10,10,9,10,10,9,10,10,10,10,11,10,11,11,9,10,9,10,11,11,10,11,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,9,9,5,7,8,10,11,5,8,7,11,10,8,10,11,12,13,8,11,10,13,12,6,7,8,10,11,7,8,10,10,12,8,9,9,12,11,10,10,12,11,14,10,11,12,14,13,6,8,7,11,10,8,9,9,11,12,7,10,8,12,10,10,12,12,13,14,10,12,10,14,11,9,10,11,11,12,10,10,11,11,13,11,12,12,13,13,12,11,13,11,15,13,14,13,14,14,9,11,10,12,11,11,12,12,13,13,10,11,10,13,11,13,13,14,14,14,12,13,11,14,11,7,8,9,11,12,9,9,11,12,13,9,10,10,13,12,11,12,13,13,15,11,12,12,14,14,9,10,10,12,13,10,10,12,12,14,11,11,11,13,13,12,12,13,13,15,12,13,13,15,14,9,10,10,12,13,10,11,11,13,14,10,12,11,14,13,12,13,13,14,15,12,13,13,15,14,12,12,13,13,14,12,13,13,13,15,13,14,14,14,15,14,14,15,14,16,14,15,15,16,16,12,13,13,14,14,13,13,14,15,14,12,13,13,15,14,14,15,15,15,16,14,15,14,16,14,7,9,8,12,11,9,10,10,12,13,9,11,9,13,12,11,12,12,14,14,11,13,12,15,13,9,10,10,13,12,10,11,12,13,14,10,12,11,14,13,12,13,13,14,15,13,13,13,15,14,9,10,10,13,12,11,11,11,13,13,10,12,10,14,12,13,13,13,14,15,12,13,12,15,13,12,13,13,14,14,12,13,13,14,15,13,14,13,15,15,14,14,15,14,16,14,15,15,16,15,12,13,12,14,13,13,13,13,15,14,12,13,13,15,13,14,15,15,16,15,14,15,14,16,14,11,12,12,13,14,12,13,14,14,15,12,13,13,14,15,14,14,15,15,16,14,15,15,16,16,12,13,13,14,15,13,13,14,14,16,13,14,14,15,15,15,15,16,15,17,15,15,15,16,16,12,13,13,14,15,13,14,14,15,16,13,14,14,15,15,15,15,16,16,17,15,15,15,17,16,14,15,15,16,16,15,15,16,15,16,15,16,16,16,17,16,16,17,16,18,16,16,17,18,17,14,15,15,16,16,15,16,16,16,17,15,16,15,17,16,16,17,17,17,18,16,16,16,17,16,11,12,12,14,13,12,13,13,15,14,12,14,13,15,14,14,15,15,16,16,14,15,14,16,15,12,13,13,15,14,13,14,14,15,15,13,14,14,16,15,15,15,15,16,16,15,16,15,17,16,12,13,13,15,14,13,14,14,15,15,13,14,13,16,14,15,15,15,16,16,15,15,15,17,15,14,15,15,16,16,15,15,15,16,16,15,16,16,17,17,16,16,17,17,17,16,17,17,18,17,14,15,15,16,15,15,15,16,16,16,15,15,15,17,15,17,17,17,18,17,16,17,16,18,16,6,9,9,12,12,8,10,10,12,13,9,11,10,13,12,10,12,12,14,14,11,13,12,14,14,8,10,10,12,12,9,10,11,12,14,10,11,11,13,13,12,12,13,13,15,12,13,13,15,14,9,10,10,13,13,10,11,11,13,13,10,12,10,14,13,12,13,13,14,15,12,13,13,15,14,11,12,12,13,14,12,12,13,13,15,12,13,13,14,14,13,13,14,13,16,14,15,15,16,15,11,12,12,14,14,13,13,13,15,14,12,13,13,15,14,14,15,15,16,15,14,14,14,16,14,7,9,10,12,12,9,10,11,13,13,9,11,10,13,13,11,12,13,14,15,12,13,13,15,14,9,10,11,12,13,10,10,12,13,14,11,11,12,14,14,12,12,14,14,15,13,13,13,15,15,9,11,11,13,13,11,12,12,14,14,10,12,10,14,13,13,14,13,15,15,12,14,13,15,14,12,12,13,13,15,12,12,14,13,15,13,14,14,15,15,14,14,15,14,17,14,15,15,16,16,12,13,13,15,14,13,14,14,15,15,12,14,13,15,14,14,15,15,16,16,14,15,14,16,14,7,10,10,12,12,10,11,11,12,13,10,12,10,14,12,12,13,13,14,15,12,13,13,15,14,9,11,10,13,12,10,10,12,12,14,11,13,12,14,13,13,13,14,13,15,13,14,14,15,14,10,11,11,13,13,12,12,12,13,14,10,12,10,14,12,13,14,14,15,15,13,14,13,15,13,12,13,13,14,14,12,12,13,14,15,13,14,14,15,15,13,13,14,13,15,14,15,15,16,16,12,13,13,14,14,13,14,14,15,15,12,13,13,15,13,15,15,15,16,16,13,14,13,16,13,11,12,13,14,14,12,13,14,14,15,12,13,13,15,15,14,14,15,15,17,14,15,15,16,16,12,13,14,14,15,13,13,14,14,16,13,14,14,15,16,14,14,16,15,17,15,15,16,16,16,12,13,13,15,15,13,14,14,15,16,13,14,14,15,16,15,15,16,17,17,15,16,15,17,16,14,15,15,15,16,15,15,16,15,17,15,15,16,16,17,16,16,16,16,18,16,16,17,17,17,14,15,15,16,16,15,16,16,16,17,15,16,15,17,16,16,17,17,17,17,16,17,16,18,17,11,12,12,14,14,13,13,14,14,15,13,14,13,15,14,14,15,15,15,16,14,15,15,17,15,12,13,13,15,14,13,13,14,15,15,14,15,14,16,15,15,15,15,15,16,15,16,15,17,16,12,13,13,15,15,14,14,14,15,16,13,14,13,16,15,15,15,16,16,17,15,16,15,17,15,14,15,15,16,16,14,15,15,16,16,15,16,16,17,16,15,15,16,15,17,16,17,17,18,17,14,15,15,16,16,15,16,16,16,17,14,15,15,17,16,17,17,17,17,18,15,16,16,18,15,6,9,9,12,12,9,10,11,12,13,8,10,10,13,12,11,12,13,14,14,10,12,12,14,13,9,10,10,12,13,10,10,12,13,14,10,11,11,13,13,12,13,13,14,15,12,13,13,15,14,8,10,10,12,12,10,11,11,13,13,9,11,10,13,13,12,13,13,14,15,12,13,12,15,13,11,12,12,14,14,12,13,13,13,15,13,13,13,14,15,14,14,15,14,16,14,15,15,15,15,11,12,12,14,13,12,13,13,15,14,12,13,12,15,13,14,14,15,16,16,13,14,13,16,13,7,10,10,12,12,10,10,12,12,14,10,11,11,13,12,12,13,13,13,15,12,13,13,15,14,10,11,11,13,13,10,10,12,12,14,12,12,12,14,13,13,13,14,13,15,13,14,14,15,14,9,10,11,13,13,11,12,12,13,14,10,12,10,14,12,13,13,14,14,15,13,13,12,15,13,12,13,13,14,14,12,13,13,14,15,13,14,14,15,15,13,13,15,13,16,15,15,15,16,16,12,13,13,14,14,13,14,14,15,15,12,13,12,15,14,15,15,15,16,16,13,14,13,15,13,7,10,9,12,12,9,10,11,13,13,9,11,10,13,13,11,13,13,14,15,11,13,12,15,14,9,11,11,13,13,10,10,12,13,14,11,12,12,14,14,12,13,14,14,15,13,13,13,15,15,9,11,10,13,12,11,12,11,14,14,10,12,10,14,13,13,14,13,15,15,12,14,12,15,14,12,13,13,14,15,13,13,14,14,15,13,14,14,15,15,14,14,15,14,17,14,15,15,16,16,12,13,12,15,13,13,14,14,15,15,12,14,13,15,13,14,15,15,16,16,14,15,14,16,14,11,12,12,14,14,13,13,14,14,15,13,14,13,15,15,14,15,15,16,17,14,15,15,16,15,12,13,13,15,15,13,13,14,15,16,14,14,14,16,15,15,15,16,15,17,15,16,15,17,16,12,13,13,14,15,14,14,15,15,16,13,14,13,15,15,15,15,16,16,17,15,15,15,16,15,14,15,15,16,16,14,15,15,16,17,15,16,16,17,17,16,15,16,15,17,16,17,17,17,17,14,15,15,15,16,15,15,16,16,17,14,15,15,16,16,16,16,17,17,18,15,16,15,17,15,11,13,12,14,14,12,13,13,15,15,12,14,13,15,14,14,15,15,16,16,14,15,14,16,15,12,13,13,15,15,13,14,14,15,16,13,14,14,16,16,15,15,16,16,17,15,16,15,17,16,12,13,13,15,14,13,14,14,16,15,13,14,13,16,14,15,16,15,17,16,15,15,14,18,15,14,15,15,16,16,15,15,16,16,17,15,16,15,17,16,16,16,17,17,18,16,17,17,18,17,14,15,15,16,15,15,16,15,17,16,15,15,15,17,15,16,17,17,18,17,16,17,16,18,15,10,12,12,14,14,12,13,13,14,14,12,13,13,14,14,13,14,14,15,15,13,14,14,16,15,11,12,13,14,14,12,13,13,15,15,12,13,13,15,15,13,14,15,15,16,14,15,15,16,16,12,13,13,14,14,13,13,14,15,15,13,14,13,15,15,14,15,15,16,16,14,15,14,16,15,13,14,14,15,15,13,14,14,15,16,14,14,15,16,16,14,15,15,15,17,15,16,16,17,17,13,14,14,15,15,14,15,15,16,16,14,15,15,16,16,15,16,16,16,17,15,16,15,17,16,11,12,12,14,14,12,13,13,14,15,12,13,13,15,14,13,14,14,15,16,13,14,14,16,15,12,13,13,14,15,13,13,14,15,15,13,14,14,15,15,14,14,15,15,17,14,15,15,16,16,12,13,13,15,15,13,14,14,15,15,13,14,13,15,15,14,15,15,16,17,14,15,15,16,16,13,13,14,15,16,14,14,15,15,16,14,15,15,16,16,15,15,16,15,18,15,16,16,17,17,14,15,15,16,16,15,15,15,16,16,14,15,15,17,16,16,16,16,17,17,15,16,16,17,16,10,12,12,14,14,12,13,13,14,15,12,13,13,15,14,14,14,15,15,16,14,15,14,16,15,12,13,13,15,14,13,13,14,15,15,13,14,14,15,15,14,14,15,15,16,14,15,15,16,16,12,13,13,15,15,13,14,14,15,16,13,14,13,15,14,15,15,15,16,16,14,15,15,16,15,13,14,14,16,15,14,14,14,15,16,14,15,15,16,16,15,15,16,15,17,16,17,16,17,17,14,14,15,15,16,15,15,16,16,16,14,15,14,16,15,16,16,16,17,17,15,16,15,17,15,11,13,13,14,15,13,13,14,15,15,13,14,13,15,15,14,15,15,15,16,14,15,15,17,15,13,13,14,15,15,13,14,15,15,16,14,14,14,16,16,15,14,16,15,17,15,16,16,17,16,13,14,14,15,15,14,14,14,16,16,13,15,14,16,15,15,15,16,17,17,15,16,15,17,16,14,15,15,15,16,15,15,16,15,17,15,16,16,16,17,16,16,17,15,18,16,17,17,17,17,14,15,15,16,16,15,16,16,17,17,15,16,15,17,16,16,17,17,18,18,16,17,15,18,16,10,12,12,14,14,13,13,14,14,15,13,14,13,15,14,14,15,15,15,16,15,15,15,16,15,12,13,13,15,14,12,12,14,14,15,14,15,14,16,15,15,14,15,14,17,15,16,16,17,16,12,13,13,14,15,14,14,15,15,16,13,14,12,16,14,15,16,16,16,17,15,16,14,17,15,14,15,14,16,15,14,14,15,15,15,15,16,15,17,16,15,14,16,14,16,16,17,17,18,17,14,14,15,15,16,15,16,16,16,17,14,15,14,16,15,16,16,17,17,17,15,16,14,17,14,10,12,12,14,13,12,13,13,14,14,11,13,12,14,14,13,14,14,15,16,13,14,14,16,15,12,13,13,14,14,13,13,14,15,15,13,14,13,15,15,14,14,15,15,16,14,15,15,16,16,11,13,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,13,14,14,16,15,13,14,14,15,15,14,15,15,15,16,14,15,15,16,16,15,16,16,16,17,16,16,16,17,17,13,14,14,15,15,14,15,15,16,16,13,14,14,16,15,15,16,16,17,17,15,15,15,17,15,11,12,12,14,14,12,13,13,14,15,12,13,13,15,14,14,14,15,15,16,14,14,14,16,15,12,13,13,15,14,13,13,14,15,15,13,14,14,16,15,14,15,15,15,16,15,15,15,16,16,12,13,13,14,15,13,13,14,15,15,13,14,13,15,15,15,15,15,16,16,14,15,14,16,15,14,14,15,16,16,14,15,15,15,16,15,16,15,16,16,15,15,16,15,17,16,16,16,17,17,13,14,14,15,16,14,15,15,16,16,14,14,14,16,16,16,16,16,17,17,15,15,15,17,15,11,12,12,14,14,12,13,13,14,15,12,13,13,15,14,14,14,14,15,16,13,14,14,16,15,12,13,13,15,15,13,13,14,15,16,13,14,14,15,15,14,15,15,16,17,14,15,15,17,16,12,13,13,15,14,13,14,14,15,15,13,14,13,15,15,14,15,15,16,16,14,15,14,17,15,14,15,15,16,16,14,15,15,16,17,15,15,15,17,17,15,16,16,16,17,16,17,16,17,17,13,15,14,16,15,14,15,15,16,16,14,15,14,16,15,16,16,16,17,17,15,16,15,17,15,10,12,12,14,14,13,13,14,14,15,13,14,13,15,14,14,15,15,15,17,14,15,15,16,15,12,13,13,15,14,12,12,14,14,15,14,15,14,16,15,15,14,16,15,17,15,16,16,17,16,12,13,13,14,15,14,14,15,15,16,12,14,12,15,14,15,16,16,16,17,15,16,14,17,14,14,15,14,16,16,14,14,15,15,16,15,16,16,17,16,15,14,16,14,17,16,17,17,18,17,14,14,15,15,16,15,15,16,16,17,14,15,14,16,15,16,17,17,17,18,15,16,14,17,14,11,13,13,15,14,13,13,14,15,15,12,14,13,15,15,14,15,15,15,17,14,15,14,16,15,13,14,14,15,15,13,14,15,15,16,14,15,14,16,16,15,15,16,16,17,15,16,16,17,17,13,14,13,15,15,14,14,14,16,16,13,15,14,16,15,15,16,16,17,17,15,16,14,17,15,15,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,15,17,16,17,17,17,17,18,18,14,15,15,17,15,15,16,16,17,16,15,16,15,17,15,16,17,17,17,17,16,17,15,18,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,7,8,8,10,10,8,9,9,10,11,8,9,9,10,10,9,10,10,11,11,9,10,10,11,11,8,9,9,10,10,9,9,10,11,11,9,10,10,11,11,10],"i8",L3,F.GLOBAL_BASE+400337),d3([10,11,11,11,10,11,11,11,11,8,9,9,10,10,9,10,10,11,11,9,10,9,11,11,10,11,11,11,11,10,11,10,11,11,10,10,10,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,11,12,11,11,11,11,12,10,10,10,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,12,11,11,11,11,12,11,8,9,10,11,11,9,10,11,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,10,11,11,10,10,11,11,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,10,10,11,11,10,11,11,12,12,10,11,11,12,11,11,12,12,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,8,10,9,11,11,9,10,10,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,10,10,11,11,10,11,11,12,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,11,12,11,11,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,13,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,10,11,11,12,11,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,12,12,13,13,13,13,13,13,13,13,13,8,10,10,11,11,9,10,10,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,11,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,10,10,11,11,10,11,11,12,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,11,12,10,11,11,12,12,11,11,11,12,12,11,11,11,12,12,10,10,11,11,12,11,11,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,10,11,11,12,12,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,13,12,12,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,11,12,12,12,12,12,12,12,13,12,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,11,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,10,10,11,11,9,10,10,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,10,11,11,10,11,11,11,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,11,12,12,11,12,11,12,12,10,11,11,12,12,11,11,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,10,12,11,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,11,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,11,11,12,12,11,12,12,12,12,11,12,11,13,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,12,13,13,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,11,12,12,12,11,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,12,13,12,13,12,12,13,13,13,12,12,13,13,13,12,13,13,13,13,12,12,12,12,13,12,12,13,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,11,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,13,13,13,13,12,13,13,12,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,13,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,11,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,12,13,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,11,12,12,12,12,12,13,13,11,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,13,13,13,13,13,12,13,12,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,13,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,13,13,13,13,13,13,13,13,13,12,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,8,5,8,7,5,7,8,7,8,10,8,10,10,5,8,7,8,10,10,7,10,8,6,8,9,9,10,12,9,11,11,9,10,11,11,11,13,11,13,13,9,11,11,11,12,13,11,13,11,6,9,8,9,11,11,9,12,10,9,11,11,11,11,13,11,13,13,9,11,10,11,13,13,11,13,11,6,9,9,8,10,11,9,12,11,8,10,11,10,11,13,11,13,13,9,11,11,11,13,12,11,13,11,8,10,10,9,11,12,10,12,12,10,10,12,11,11,14,12,13,14,10,12,12,12,13,13,11,14,11,8,11,10,11,12,13,11,14,12,10,12,11,11,12,14,13,15,14,10,12,12,13,14,15,12,14,12,5,9,9,9,11,12,8,11,10,9,11,11,11,11,13,11,12,13,8,11,10,11,13,13,10,13,11,8,10,11,11,12,14,11,13,12,10,12,12,12,12,14,14,15,14,10,11,12,13,14,15,11,14,12,8,10,10,10,12,12,9,12,11,10,12,12,11,11,14,12,13,13,10,12,10,12,14,13,11,13,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,6,7,7,7,7,7,7,7,7,7,7,8,7,8,8,7,8,8,7,8,7,7,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,8,8,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,8,8,8,8,8,9,8,8,9,8,7,8,8,7,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,7,8,8,8,8,9,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,9,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,7,8,8,7,8,8,8,8,8,8,8,9,8,8,9,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,9,8,8,8,8,8,9,9,9,9,9,8,8,8,8,9,9,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,5,4,7,7,4,7,7,5,7,8,7,8,10,8,9,9,5,7,7,8,9,9,7,10,8,5,7,8,8,9,10,8,10,10,8,9,10,10,10,12,10,12,12,8,10,10,10,12,12,10,12,11,5,8,7,8,10,10,8,10,9,8,10,10,10,11,12,10,12,12,8,10,9,10,12,12,10,12,10,5,8,8,7,10,10,8,10,10,7,9,10,9,10,12,10,12,12,8,10,10,10,12,12,10,12,11,7,9,10,9,11,12,10,12,11,9,9,12,11,10,14,12,12,13,10,12,11,12,13,13,11,14,12,7,10,9,10,11,11,10,12,11,9,11,11,11,11,13,12,14,13,10,12,12,12,14,14,11,14,12,5,8,8,8,10,10,7,10,10,8,10,10,10,11,12,10,12,12,7,10,9,10,12,12,9,12,10,7,9,10,10,11,12,10,11,11,10,12,12,11,12,14,12,14,14,9,11,11,12,13,14,11,13,11,7,10,9,10,11,12,9,12,11,10,11,12,11,12,14,12,13,13,9,12,9,12,13,12,11,14,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,9,9,6,8,8,10,10,6,8,8,10,10,8,10,10,12,13,8,10,10,13,12,6,8,8,10,10,8,8,9,10,11,8,9,9,11,11,10,10,11,12,13,10,11,11,13,13,6,8,8,10,10,8,9,9,11,11,8,9,8,11,10,10,11,11,13,13,10,11,10,13,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,13,13,13,15,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,13,13,14,15,12,13,12,15,12,6,8,8,10,11,8,9,10,11,12,8,9,9,11,11,10,11,12,13,14,10,11,11,13,13,8,9,9,11,12,9,10,11,12,13,9,10,10,12,13,11,12,13,13,15,11,12,12,14,14,8,9,9,11,12,9,10,11,12,13,9,10,10,13,12,11,12,13,14,15,11,12,12,14,13,10,11,12,13,14,11,12,13,13,15,12,13,13,14,14,13,13,14,14,16,14,15,14,16,15,10,12,11,14,13,12,12,13,14,14,11,12,12,14,14,14,14,15,15,16,13,14,14,16,14,6,8,8,11,10,8,9,9,11,11,8,10,9,12,11,10,11,11,13,13,10,12,11,14,13,8,9,9,12,11,9,10,10,12,13,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,8,9,9,12,11,9,10,10,13,12,9,11,10,13,12,11,12,12,14,14,11,13,12,15,13,10,11,12,13,14,11,12,13,13,14,12,13,12,14,14,13,13,14,14,16,14,15,14,16,16,10,12,11,14,13,12,13,13,14,14,11,13,12,15,13,14,14,15,16,16,13,14,13,16,14,9,10,11,12,13,11,11,12,13,14,11,11,12,13,14,13,13,14,14,16,13,14,14,15,15,11,11,12,13,14,12,12,13,13,15,12,13,13,14,15,14,14,15,15,17,14,14,15,16,16,11,12,12,13,14,12,12,13,14,15,12,13,12,14,15,14,14,15,15,17,14,15,14,16,16,13,14,14,15,16,14,14,15,15,17,14,15,15,16,16,15,16,17,16,18,16,17,16,17,17,13,14,14,16,15,14,15,15,16,16,14,15,14,16,15,16,16,17,17,18,16,16,16,17,16,9,11,10,13,12,11,12,11,14,13,11,12,11,14,13,13,14,14,16,15,13,14,13,16,14,11,12,12,14,13,12,12,13,14,14,12,13,13,15,14,14,14,15,16,16,14,15,14,17,15,11,12,11,14,13,12,13,13,15,14,12,13,12,15,13,14,15,14,16,16,14,15,14,17,15,13,14,14,15,16,14,14,15,16,16,14,15,15,16,16,15,16,16,16,17,16,16,16,17,17,13,14,14,16,15,14,15,15,17,16,14,15,14,17,15,16,17,17,17,17,16,16,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,11,11,14,13,8,9,9,11,12,9,10,10,12,13,9,10,10,13,12,11,11,12,13,15,11,12,12,15,14,8,9,9,12,11,9,10,11,12,13,9,11,10,13,12,11,12,12,14,15,11,13,12,15,14,10,11,11,13,14,11,12,12,13,14,11,12,12,14,14,13,13,14,14,16,13,14,14,16,15,11,12,11,14,13,12,13,13,14,14,11,13,12,14,13,14,14,15,16,16,13,14,14,16,14,8,9,9,11,12,9,10,10,12,13,9,10,10,13,12,11,12,12,14,15,11,12,12,14,14,9,9,10,11,13,10,10,12,12,14,10,10,11,13,13,12,12,13,14,16,12,12,13,15,15,9,10,10,13,12,10,11,11,13,14,10,12,11,14,13,12,13,13,15,15,12,13,13,15,15,11,11,12,13,15,12,12,13,13,15,12,13,13,14,15,14,14,15,15,17,14,15,15,16,16,11,13,12,15,14,13,13,13,15,15,12,14,13,15,14,15,15,15,16,16,14,15,15,17,15,7,9,9,12,11,9,10,10,12,12,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,9,10,10,12,12,10,10,11,12,13,10,11,11,14,13,12,12,13,14,15,12,13,13,15,14,9,10,10,12,12,10,11,11,13,13,10,11,10,14,12,12,13,13,15,15,12,13,12,15,13,11,12,12,14,14,12,12,13,14,15,12,13,13,15,15,14,13,14,13,16,14,15,15,16,16,11,12,12,14,14,13,13,14,15,15,12,13,12,15,14,15,15,15,16,16,14,15,14,17,14,10,11,12,13,14,11,12,13,14,15,11,12,12,14,15,13,14,15,15,17,14,14,14,16,16,11,12,13,12,15,12,12,14,13,16,13,13,14,13,16,14,14,15,14,17,15,15,15,15,17,11,13,12,15,15,13,13,14,15,16,12,14,13,16,15,15,15,15,17,17,15,15,15,17,16,14,14,15,14,16,14,14,16,14,17,15,15,15,14,17,16,16,17,15,18,17,17,17,16,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,17,17,17,18,18,16,17,16,18,17,10,11,11,14,13,11,12,12,14,14,11,13,12,15,14,14,14,14,16,16,14,15,14,16,15,11,12,12,15,13,12,13,13,15,14,13,14,13,16,14,14,15,15,16,16,15,16,15,17,16,11,13,12,15,14,13,13,14,15,15,12,14,13,16,14,15,15,15,17,17,14,16,15,17,16,14,14,14,16,15,14,15,15,16,16,15,16,15,17,16,16,16,16,16,17,16,17,17,18,17,14,15,15,16,16,15,15,16,17,16,14,15,15,17,16,17,17,17,18,18,16,17,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,12,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,11,10,13,12,11,12,13,14,15,11,12,12,15,14,8,9,9,12,11,9,10,10,12,13,9,10,10,13,12,11,12,12,14,15,11,12,12,14,13,11,11,12,13,14,11,12,13,13,15,12,13,13,14,14,13,14,14,14,16,14,15,14,16,16,10,11,11,14,13,11,12,12,14,14,11,12,12,14,13,13,14,14,15,16,13,14,13,16,14,7,9,9,11,11,9,10,11,12,13,9,10,10,12,12,11,12,13,14,15,11,12,12,14,14,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,13,15,12,13,13,15,15,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,13,13,14,15,12,13,12,15,13,11,12,12,14,14,12,12,13,14,15,13,14,13,15,15,14,13,15,13,16,15,15,15,16,16,11,12,12,14,14,12,13,13,14,15,12,13,12,15,14,14,15,15,16,17,13,14,13,16,13,8,9,9,12,11,9,10,10,12,13,9,10,10,13,12,11,12,12,14,15,11,12,12,15,14,9,10,10,12,13,10,11,12,13,14,10,11,11,14,13,12,13,13,15,15,12,13,13,15,15,9,10,9,13,11,10,11,10,13,13,10,12,10,14,12,12,13,12,15,15,12,13,12,15,14,11,12,13,14,15,12,13,14,14,15,13,13,13,15,15,14,15,15,15,17,15,15,15,16,16,11,12,11,15,13,12,13,13,15,14,12,13,12,16,13,14,15,15,16,16,14,15,14,17,14,10,11,11,13,14,11,12,13,14,15,11,12,12,14,14,14,14,15,15,17,14,14,14,15,16,11,12,13,14,15,12,13,14,14,16,13,14,13,15,15,14,15,16,15,17,15,15,15,17,17,11,12,12,13,15,13,13,14,14,16,12,13,13,14,15,15,15,15,16,17,14,15,15,16,16,14,15,15,16,16,14,15,15,16,17,15,15,16,16,17,16,16,17,16,18,17,17,17,18,18,14,14,15,15,16,15,15,15,16,17,14,15,15,16,16,16,17,17,17,18,16,16,16,17,16,10,11,11,14,13,11,13,12,15,14,11,13,12,15,14,14,15,14,16,16,13,15,14,17,15,11,12,13,15,15,12,13,14,15,16,13,14,13,16,15,15,15,15,16,17,15,15,15,17,16,11,13,11,15,12,13,14,13,16,13,12,14,12,16,13,15,15,15,17,15,14,16,14,17,14,14,15,15,16,17,15,15,16,16,17,15,16,15,17,17,16,16,17,17,18,16,17,17,18,18,14,15,14,17,13,15,16,15,17,15,15,16,15,17,14,16,17,16,18,16,16,17,16,18,15,9,11,11,13,13,10,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,16,16,10,11,12,14,14,11,12,13,14,15,11,13,13,15,15,13,14,14,15,16,14,15,15,16,16,11,12,12,14,14,12,13,13,15,15,12,13,12,15,14,14,15,15,16,16,14,15,14,17,16,12,13,13,15,16,13,13,14,15,16,13,14,14,16,16,14,15,16,16,17,15,16,16,17,17,13,14,14,16,15,14,15,15,17,16,14,15,14,17,15,16,16,17,17,17,16,16,16,18,16,10,11,12,14,14,11,12,13,14,15,11,13,12,15,15,13,14,15,16,16,14,15,15,17,16,11,11,13,14,15,12,12,14,14,16,12,13,14,15,15,14,14,15,16,17,15,15,15,17,17,12,13,12,15,15,13,14,14,16,15,13,14,13,16,15,15,16,15,17,17,15,16,15,17,16,13,12,15,14,16,14,13,15,14,17,14,13,15,15,17,15,14,17,15,18,16,15,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,16,17,17,18,18,16,17,16,18,17,10,11,11,14,14,11,12,12,14,15,11,13,12,15,14,13,14,14,16,16,14,15,14,16,16,11,12,12,14,14,12,12,13,15,15,12,13,13,15,15,14,14,15,16,16,14,15,15,17,16,11,12,12,15,15,13,13,13,15,15,12,13,13,15,15,15,15,15,17,17,14,15,15,17,16,13,14,13,16,15,14,14,14,16,16,14,15,14,17,16,15,15,16,16,17,16,17,16,18,17,14,15,15,16,16,15,15,15,17,17,14,15,15,17,16,16,17,17,18,18,16,17,16,18,16,12,13,13,15,15,13,14,14,16,16,13,14,14,16,16,14,15,16,16,18,15,16,16,17,17,13,13,14,14,16,14,14,15,15,17,14,14,15,15,17,15,15,17,15,18,16,16,17,17,18,13,14,14,16,16,14,15,15,16,17,14,15,15,17,16,16,17,16,17,18,16,17,16,18,17,15,14,16,13,18,16,15,17,14,18,16,15,17,14,18,17,16,18,15,19,17,17,18,16,19,15,16,16,17,17,16,17,17,18,18,16,17,16,18,17,18,18,18,19,18,17,18,17,19,17,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,15,15,16,17,15,16,15,17,16,12,13,13,15,15,13,13,14,15,16,14,15,14,16,15,15,15,16,16,17,16,16,16,18,17,12,13,13,15,15,14,14,15,16,16,13,14,13,16,15,16,16,16,17,17,15,16,15,18,16,15,15,15,17,15,14,15,15,16,16,16,17,16,17,16,16,16,17,16,17,17,18,17,19,18,15,15,16,17,17,16,16,16,17,17,15,16,15,17,16,17,18,18,18,18,16,17,16,18,16,9,11,11,13,13,11,12,12,14,14,10,12,12,14,14,13,14,14,15,16,13,14,14,16,15,11,12,12,14,14,12,12,13,14,15,12,13,13,15,15,14,14,15,16,17,14,15,15,16,16,10,12,11,14,14,11,13,13,15,15,11,13,12,15,14,14,14,15,16,16,13,14,14,16,15,13,14,14,15,16,14,14,15,15,17,14,15,15,16,17,16,16,16,16,18,16,16,17,17,17,12,13,13,16,15,13,14,14,16,16,12,14,13,16,15,15,16,16,17,17,14,16,15,17,16,10,11,11,14,14,11,12,13,14,15,11,12,12,15,14,14,14,15,16,16,13,14,14,16,16,11,12,12,14,15,12,13,14,15,15,13,13,13,15,15,14,15,15,16,17,15,15,15,16,17,11,12,12,14,14,12,13,13,15,15,12,13,12,15,15,14,15,15,16,17,14,15,14,16,16,14,14,15,16,16,14,15,15,16,17,15,16,15,17,17,16,16,17,16,18,16,17,17,18,18,13,13,14,15,16,14,14,15,16,17,14,14,14,16,15,16,16,17,17,18,15,16,15,17,16,10,12,11,14,14,11,13,13,15,15,11,13,12,15,15,14,15,15,16,16,13,15,14,16,16,12,12,13,15,15,13,13,14,15,16,13,14,14,16,15,15,15,16,16,17,15,15,15,17,17,11,13,11,15,14,12,14,13,16,15,12,14,12,16,14,15,15,15,17,17,14,15,14,17,15,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,17,18,16,17,17,18,18,13,14,12,16,14,14,15,13,17,15,14,15,13,17,14,16,17,15,18,17,15,17,14,18,15,11,12,12,14,15,13,13,14,15,16,13,14,13,16,15,15,15,16,16,17,15,15,15,16,16,12,13,13,15,15,13,13,14,15,16,14,15,14,16,16,15,15,16,16,18,16,16,16,18,17,12,13,13,15,15,14,14,15,15,16,13,14,13,15,15,16,16,16,17,18,15,16,15,17,16,15,16,15,17,16,15,15,16,16,17,16,17,16,17,17,16,16,17,16,18,17,18,18,18,18,14,15,15,15,17,16,15,17,16,17,14,15,15,16,16,17,17,18,18,19,16,16,16,17,16,12,13,13,15,15,13,14,14,16,16,13,14,14,16,16,15,16,16,17,17,15,16,15,18,16,13,14,14,16,16,14,15,15,16,17,14,15,15,17,16,16,16,17,17,18,16,17,16,18,18,13,14,13,16,14,14,15,14,17,15,14,15,14,17,14,16,17,16,18,17,15,17,15,18,15,15,16,16,17,18,16,16,17,17,18,16,17,17,17,18,17,17,18,18,19,17,18,18,19,18,15,16,14,17,13,16,17,15,18,14,16,17,15,18,14,18,18,17,19,16,17,18,16,19,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,4,7,7,4,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,6,7,8,8,9,10,8,9,10,8,9,10,10,10,12,10,11,11,8,10,10,10,11,12,10,11,11,6,8,7,8,10,9,8,10,9,8,10,10,10,11,11,10,12,11,8,10,9,10,11,11,10,12,10,5,8,8,8,10,10,8,10,10,7,9,10,9,10,11,9,11,11,8,10,10,10,11,12,10,12,11,7,9,9,9,10,11,9,11,11,9,9,11,10,11,12,11,11,12,9,11,11,11,12,12,11,12,12,7,9,9,10,11,11,10,12,11,9,11,10,11,11,12,11,13,12,10,11,11,12,13,13,11,13,11,5,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,11,7,10,9,9,11,11,9,11,10,7,9,9,10,11,12,10,11,11,10,11,11,11,11,13,12,13,13,9,10,11,11,12,13,11,12,11,7,9,9,9,11,11,9,11,10,9,11,11,11,12,12,11,12,12,9,11,9,11,12,11,10,12,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,9,14,16,17,19,22,22,5,4,6,9,11,13,17,20,9,5,5,6,9,11,15,19,11,7,5,5,7,9,13,17,14,9,7,6,6,7,11,14,16,11,9,7,6,4,4,8,19,15,13,11,9,4,3,4,21,16,16,15,12,6,4,4,2,0,0,0,64,0,0,0,56,145,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,98,6,0,0,0,0,0,0,0,0,0,40,98,6,0,0,0,0,0,0,0,0,0,80,98,6,0,120,98,6,0,0,0,0,0,0,0,0,0,160,98,6,0,200,98,6,0,0,0,0,0,0,0,0,0,240,98,6,0,24,99,6,0,0,0,0,0,0,0,0,0,64,99,6,0,104,99,6,0,24,99,6,0,0,0,0,0,144,99,6,0,184,99,6,0,56,167,5,0,96,167,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,192,97,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,7,13,15,16,17,19,20,6,3,4,7,9,10,12,15,13,4,3,4,7,8,11,13,14,7,4,4,6,7,10,11,16,9,7,6,7,8,9,10,16,9,8,7,7,6,8,8,18,12,10,10,9,8,8,9,20,14,13,12,11,8,9,9,5,0,0,0,243,0,0,0,48,144,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,40,145,6,0,0,0,0,0,5,0,0,0,53,12,0,0,224,131,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,24,144,6,0,0,0,0,0,5,0,0,0,243,0,0,0,216,130,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,208,131,6,0,0,0,0,0,5,0,0,0,243,0,0,0,208,129,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,200,130,6,0,0,0,0,0,5,0,0,0,243,0,0,0,200,128,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,192,129,6,0,0,0,0,0,5,0,0,0,53,12,0,0,120,116,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,176,128,6,0,0,0,0,0,5,0,0,0,53,12,0,0,40,104,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,96,116,6,0,0,0,0,0,1,0,0,0,7,0,0,0,0,104,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,8,104,6,0,0,0,0,0,5,0,0,0,243,0,0,0,248,102,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,240,103,6,0,0,0,0,0,5,0,0,0,243,0,0,0,240,101,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,232,102,6,0,0,0,0,0,5,0,0,0,243,0,0,0,232,100,6,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,224,101,6,0,0,0,0,0,5,0,0,0,243,0,0,0,224,99,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,216,100,6,0,0,0,0,0,1,4,5,5,10,10,5,10,10,5,10,10,10,10,10,10,10,10,5,10,10,10,10,10,10,10,10,7,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,6,7,8,6,8,7,6,7,7,7,7,8,7,8,8,6,7,7,7,8,8,7,8,7,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,10,9,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,9,9,10,9,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,9,10,8,9,9,9,10,9,9,10,9,7,8,8,8,9,9,8,9,9,8,8,9,9,9,9,9,9,9,8,9,9,9,10,9,9,9,9,7,9,9,9,9,10,9,10,9,9,9,9,9,9,10,10,10,10,9,9,9,10,10,10,9,10,9,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,9,9,10,9,7,9,9,9,9,10,9,10,9,9,9,9,9,9,10,10,10,10,9,9,9,10,10,10,9,10,9,7,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,9,10,8,9,8,9,9,9,9,10,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,5,7,9,5,9,7,5,7,8,7,7,10,9,10,10,5,8,7,9,10,10,7,10,7,6,9,9,9,10,12,9,11,11,9,10,11,11,11,13,12,13,13,9,11,11,12,13,13,11,13,11,6,9,9,9,11,11,9,12,10,9,11,11,11,11,13,12,13,13,9,11,10,12,13,13,11,13,11,6,9,9,9,11,12,9,12,11,9,10,11,10,10,13,12,13,13,9,11,11,12,13,12,11,13,11,7,9,10,9,10,12,10,12,11,10,10,12,10,10,12,12,12,13,10,11,11,12,12,13,10,12,10,7,10,10,11,11,14,11,14,11,10,12,11,11,11,14,14,14,14,10,11,12,14,14,14,11,14,11,6,9,9,9,11,12,9,12,11,9,11,11,11,11,13,12,12,13,9,11,10,12,13,13,10,13,10,7,10,10,11,11,14,11,14,11,10,12,11,11,11,14,14,15,14,10,11,12,13,14,15,11,14,11,7,10,9,10,11,12,9,12,10,10,11,11,10,10,12,12,13,12,9,12,10,12,13,12,10,12,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,10,10,5,7,8,11,12,5,8,7,12,11,9,11,11,13,15,9,11,11,15,13,6,7,8,11,11,7,7,9,11,13,8,9,9,13,12,11,11,12,12,15,11,12,12,15,14,6,8,7,11,11,8,9,9,12,13,7,9,7,13,11,11,12,12,14,15,11,12,11,15,12,10,11,11,12,14,10,11,12,12,15,12,13,13,14,15,13,12,14,12,16,15,15,15,16,16,10,11,11,14,12,12,13,13,15,14,10,12,11,15,12,15,15,15,16,17,13,14,12,17,12,6,8,8,12,12,8,9,10,13,13,8,9,9,13,13,12,12,13,15,16,12,13,13,16,15,8,9,10,12,13,9,9,11,13,14,10,11,11,14,14,13,13,14,15,16,13,14,14,16,16,8,10,9,13,13,10,11,11,14,14,9,10,10,14,13,13,14,14,16,17,13,13,13,16,15,12,13,13,14,16,13,13,14,14,16,14,14,14,16,16,15,15,16,15,18,16,17,17,18,18,12,13,13,15,15,14,14,14,16,16,13,14,13,16,15,16,16,17,18,18,15,16,15,18,15,6,8,8,12,12,8,9,9,13,13,8,10,9,13,13,12,13,13,15,16,12,13,12,16,15,8,9,10,13,13,9,10,10,13,14,10,11,11,14,14,13,13,13,15,16,13,14,14,17,16,8,10,9,13,13,10,11,11,14,14,9,11,9,14,13,13,14,14,16,16,13,14,13,16,14,12,13,13,15,16,13,13,14,15,16,14,14,14,16,16,15,15,16,15,18,17,17,17,18,18,12,13,13,16,14,14,14,14,16,16,13,14,13,16,14,16,17,17,18,18,15,16,15,18,15,11,12,13,14,16,13,13,14,15,17,13,14,14,16,17,16,16,17,17,19,16,17,17,18,19,13,13,14,16,16,14,14,15,16,17,14,15,15,17,17,17,16,17,17,19,17,17,18,19,19,13,14,14,16,16,14,14,15,17,18,14,15,14,17,17,17,17,18,18,19,17,17,17,18,19,16,16,16,17,18,17,17,17,18,19,17,17,17,18,19,18,18,19,18,20,19,20,19,21,20,16,17,17,18,18,17,17,18,19,19,17,17,17,19,18,19,19,19,19,20,19,19,19,20,19,11,13,12,16,14,13,14,14,17,16,13,14,13,17,15,16,17,17,18,18,16,17,16,19,17,13,14,14,16,16,14,14,14,17,17,14,15,15,17,16,17,17,17,19,19,17,18,17,19,18,13,14,13,17,16,14,15,15,17,17,14,15,14,18,16,17,17,17,19,19,17,17,16,19,17,16,17,17,18,19,17,17,17,18,18,17,18,17,19,18,18,19,18,19,19,19,20,19,20,20,16,17,16,18,17,17,17,17,18,18,17,18,17,19,17,19,19,19,19,20,18,19,19,20,18,6,8,8,12,12,8,9,9,13,13,8,10,9,13,13,11,13,13,15,16,12,13,13,16,15,8,9,9,13,13,9,9,10,13,14,10,11,11,14,14,12,12,13,14,16,13,14,14,17,16,8,10,9,13,13,10,11,11,14,14,9,11,10,14,13,13,14,14,16,16,13,14,13,16,15,12,13,13,14,16,12,13,14,14,16,13,14,14,16,16,15,14,16,15,18,16,17,17,18,17,12,13,13,16,15,14,14,14,16,16,13,14,13,16,15,16,16,17,17,17,15,16,15,18,15,7,9,9,13,13,9,9,11,13,14,9,10,10,14,13,12,13,14,15,16,12,14,13,17,15,9,9,10,13,14,10,9,11,13,15,11,11,11,14,14,13,12,14,14,17,14,14,14,17,16,9,10,10,14,13,11,11,11,14,14,10,11,10,15,13,14,14,14,16,17,13,14,13,17,14,13,13,14,14,16,13,13,14,14,17,14,14,14,16,16,15,14,16,15,18,17,17,17,18,18,13,14,13,16,15,14,14,15,17,16,13,14,13,17,15,17,16,17,17,17,15,16,14,18,14,7,9,9,13,13,9,10,10,13,14,9,11,10,14,13,13,14,14,16,16,13,14,14,17,15,9,10,10,14,13,9,10,11,13,14,11,12,11,15,14,13,13,14,14,16,14,15,15,17,17,9,10,10,14,14,11,12,12,14,15,10,11,10,15,13,14,15,15,17,17],"i8",L3,F.GLOBAL_BASE+410577),d3([14,15,13,17,14,13,14,13,16,16,13,13,14,15,16,14,15,15,17,17,15,14,16,15,18,17,18,17,20,18,13,14,14,16,16,15,15,15,17,17,13,14,13,17,15,17,17,18,18,18,15,16,14,19,14,12,13,13,15,16,13,13,15,16,17,13,14,14,16,16,15,15,17,17,19,16,17,17,19,18,13,13,14,15,17,14,13,15,15,17,14,15,15,16,17,16,15,18,16,19,17,17,17,18,19,13,14,14,17,16,14,15,15,17,17,14,15,14,17,16,17,17,17,18,19,16,17,16,19,17,16,16,17,16,18,16,16,17,16,19,17,17,18,18,19,18,17,18,17,21,19,19,19,20,19,16,17,17,18,18,17,17,18,18,19,16,17,16,18,18,19,19,19,19,20,18,18,17,20,18,11,13,13,16,15,13,14,14,16,17,13,15,14,17,16,16,17,17,18,18,17,17,17,19,18,13,14,13,17,16,14,13,14,16,17,15,16,15,18,16,17,16,17,17,19,18,18,18,20,18,13,14,14,16,17,15,15,15,17,18,14,15,14,18,16,18,18,18,19,20,17,18,16,20,17,16,17,16,18,18,16,16,17,18,18,17,18,18,19,18,18,17,19,17,20,19,20,19,22,20,16,16,17,18,18,18,17,17,19,19,16,17,16,18,17,19,20,19,22,21,18,19,18,21,17,6,8,8,12,12,8,9,10,13,13,8,9,9,13,13,12,13,13,15,16,11,13,13,16,15,8,9,10,13,13,9,10,11,13,14,10,11,11,14,14,13,13,14,15,16,13,14,14,16,16,8,9,9,13,13,10,11,11,14,14,9,10,9,14,13,13,14,14,16,17,12,14,12,16,14,12,13,13,15,16,13,13,14,15,16,13,14,14,15,17,15,15,16,15,18,16,16,17,17,17,12,13,13,16,14,13,14,14,16,16,12,14,13,16,14,16,17,17,18,18,15,15,14,18,14,7,9,9,13,13,9,10,11,13,14,9,10,10,14,13,13,14,14,15,17,13,14,14,16,15,9,10,10,14,14,10,10,11,13,15,11,12,12,15,14,14,13,15,14,17,14,15,15,17,17,9,10,10,13,14,11,11,12,14,15,9,11,10,14,13,14,15,15,16,18,13,14,13,16,14,13,14,14,16,16,13,13,14,15,17,15,15,15,16,17,15,14,16,15,18,17,17,18,19,18,13,14,14,16,16,14,15,15,17,17,13,14,13,16,15,17,17,18,18,18,15,16,14,18,15,7,9,9,13,13,9,10,10,13,14,9,11,10,14,13,12,13,14,15,16,12,14,13,16,15,9,10,10,13,14,10,10,11,13,14,11,11,11,15,14,13,13,14,14,16,14,14,14,17,16,9,10,9,14,13,11,11,11,14,14,10,11,9,15,13,14,14,14,16,16,13,14,12,17,14,13,13,14,15,16,13,13,14,15,16,14,15,14,16,17,15,14,16,14,18,16,17,17,18,18,13,14,13,16,14,14,14,14,16,16,13,14,13,17,14,17,17,17,18,18,15,16,14,18,15,11,13,13,16,16,13,14,15,16,17,13,14,14,17,16,16,17,17,18,19,17,17,17,19,18,13,14,14,17,17,13,13,15,16,18,15,15,15,17,17,17,16,18,17,20,18,17,18,19,19,13,14,14,16,17,15,15,16,16,18,14,15,14,16,16,17,17,18,18,20,17,18,16,18,17,16,17,16,19,18,16,16,17,18,19,18,18,18,19,19,18,17,18,17,21,20,19,19,21,21,16,16,17,18,18,17,17,18,19,19,16,17,16,19,18,20,20,20,19,21,18,18,17,20,18,12,13,13,16,15,13,14,14,16,16,13,14,13,17,16,16,17,17,18,18,15,17,15,19,17,13,14,14,16,17,14,14,15,16,17,14,15,15,17,17,16,16,17,17,18,17,17,17,19,19,13,14,13,17,15,14,15,15,17,16,14,15,13,17,15,17,18,17,19,18,16,17,15,20,16,16,17,17,18,18,16,16,17,18,18,17,18,17,19,18,17,17,18,18,20,19,20,19,20,19,16,16,16,19,16,17,17,17,19,18,16,17,16,19,16,19,19,19,19,19,18,19,17,19,17,11,13,13,16,16,13,14,14,17,17,13,14,14,17,17,15,17,17,19,19,16,18,17,20,19,12,14,14,17,17,13,14,15,17,18,14,15,15,17,18,16,16,17,18,20,17,18,18,20,18,13,14,14,17,17,14,15,15,17,18,14,15,15,17,17,17,18,17,19,19,17,18,17,19,19,15,16,16,18,18,15,16,17,18,19,16,17,17,19,19,17,17,18,18,21,18,19,19,21,19,16,17,17,18,18,17,17,18,19,19,17,18,17,19,19,19,19,19,20,20,18,19,18,21,19,12,13,13,16,16,13,14,14,16,17,13,15,14,17,16,15,16,17,17,19,16,17,17,19,18,13,13,14,16,17,14,13,15,16,17,14,15,15,17,17,15,15,17,17,20,17,17,18,19,18,13,14,14,17,16,15,15,15,17,18,14,15,14,17,16,17,17,17,18,18,16,17,16,19,17,16,15,17,17,19,16,15,17,16,19,17,16,17,18,19,17,16,19,16,20,19,18,19,19,19,16,17,17,18,18,17,17,17,18,19,16,17,16,19,18,20,19,19,20,19,18,18,17,20,17,11,13,13,16,16,13,14,15,16,17,14,15,14,18,16,17,17,17,18,21,17,18,17,20,19,13,14,14,17,16,13,14,15,16,18,15,16,15,18,17,17,16,17,17,19,17,18,18,20,19,13,14,14,16,17,15,15,16,17,18,14,15,14,18,17,17,18,18,19,20,17,18,16,19,17,16,17,15,19,18,16,16,16,18,18,17,18,17,20,19,18,17,18,17,20,20,20,19,22,20,16,17,17,18,19,18,18,18,19,20,16,17,16,19,18,20,19,19,20,20,18,19,17,20,17,13,14,14,16,17,14,14,16,16,18,14,16,15,17,16,16,16,17,17,18,17,17,16,19,18,14,14,15,16,17,14,14,16,16,18,16,16,16,17,17,16,15,17,16,19,18,18,18,19,19,14,15,15,17,17,15,16,16,17,18,14,16,14,18,16,17,17,18,18,19,16,17,16,19,17,16,16,17,16,18,16,16,17,16,19,18,18,18,17,18,17,16,18,16,20,19,19,19,19,19,16,17,17,18,18,17,17,18,19,19,16,17,16,19,17,18,19,19,19,20,17,18,16,20,16,11,14,13,17,17,14,14,16,16,18,14,16,14,19,16,18,18,19,18,19,18,19,18,21,18,13,15,14,18,16,14,14,16,16,18,16,17,16,19,17,18,16,19,17,20,19,19,19,21,19,13,14,15,17,18,17,16,17,17,19,14,16,14,18,16,20,19,19,20,21,18,19,16,21,17,17,18,16,19,17,16,16,17,18,18,19,19,18,21,18,17,17,18,17,20,20,20,20,22,20,17,17,18,18,20,19,19,19,18,20,16,17,17,19,19,21,21,21,20,21,17,19,17,23,17,11,13,13,16,16,13,14,14,17,17,13,14,14,17,17,16,17,17,19,20,15,16,16,19,19,13,14,14,16,17,14,15,15,17,18,14,15,15,17,17,17,17,18,19,19,17,17,18,19,19,13,14,14,17,16,14,15,15,17,17,13,15,14,18,17,17,18,18,19,20,16,17,16,19,18,16,16,17,18,18,17,17,17,18,19,17,18,17,19,19,19,19,19,19,20,19,20,19,20,20,15,16,16,18,17,16,17,17,20,18,15,16,16,19,17,19,19,19,20,20,17,18,17,21,17,11,13,13,16,16,13,14,15,16,17,13,15,14,17,16,17,17,18,18,20,17,17,17,19,19,13,14,14,17,17,14,14,15,17,18,15,15,15,18,17,17,17,18,17,20,18,18,17,20,18,13,14,14,16,17,15,15,16,17,18,14,15,13,17,17,17,18,18,19,20,17,17,16,19,17,16,17,17,18,18,16,16,17,18,18,18,18,18,19,19,18,17,19,18,21,19,20,20,20,20,16,15,17,18,18,17,17,18,18,20,16,16,16,18,17,20,19,20,21,22,17,18,17,20,17,12,13,13,16,16,13,14,15,16,17,13,14,14,17,16,16,17,18,18,19,15,16,16,19,18,13,14,14,16,17,14,14,15,16,17,14,15,15,17,17,16,16,17,17,19,17,17,17,19,18,13,14,13,17,16,14,15,15,17,17,13,15,13,17,16,17,17,17,19,19,15,17,15,19,17,16,17,17,18,18,16,16,17,17,19,17,18,17,19,19,18,17,19,17,19,19,19,19,20,19,15,17,15,19,16,17,17,16,19,18,16,17,15,18,16,19,19,19,20,19,17,19,16,19,16,11,14,14,17,17,15,14,16,16,18,15,16,14,18,16,18,18,19,18,21,18,19,18,20,18,13,15,14,18,17,14,14,16,16,18,16,17,16,19,17,17,17,19,17,22,19,19,19,21,19,13,14,15,17,18,17,16,17,17,19,14,16,14,18,16,19,19,19,20,21,18,18,16,20,17,17,18,16,19,18,15,17,17,19,19,19,19,18,21,19,18,17,20,17,21,22,21,20,21,21,17,16,19,18,20,19,18,19,18,20,16,17,16,19,18,21,20,21,19,23,18,19,16,20,17,13,14,14,17,16,14,14,15,16,18,14,16,14,17,16,16,16,17,17,19,16,17,16,19,17,14,15,15,17,17,14,14,16,16,17,15,16,16,18,17,16,16,17,17,19,17,18,17,19,18,14,15,14,17,16,16,16,16,17,17,14,16,14,17,16,18,18,18,18,19,16,17,15,19,16,17,17,17,18,18,16,15,17,17,18,18,18,18,19,19,17,16,18,16,19,19,19,19,19,19,16,17,16,19,16,18,18,17,19,18,16,17,16,19,16,19,19,20,19,19,17,18,16,20,16,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,6,8,8,10,10,8,9,9,10,11,8,10,9,11,10,9,10,10,11,11,9,10,10,11,11,8,9,9,10,10,9,9,10,11,11,10,10,10,11,11,10,11,11,11,11,10,11,11,11,11,8,9,9,11,10,10,10,10,11,11,9,10,9,11,11,10,11,11,11,11,10,11,10,11,11,10,10,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,10,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,8,9,10,11,11,10,10,11,11,11,10,10,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,11,11,11,10,10,11,11,12,11,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,10,10,11,11,11,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,8,10,9,11,11,10,10,10,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,10,11,11,10,11,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,10,11,11,11,11,11,12,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,11,12,11,11,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,12,12,12,13,12,10,11,11,12,11,11,11,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,13,12,8,10,10,11,11,10,10,11,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,11,11,11,10,10,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,10,11,11,11,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,11,11,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,11,11,12,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,12,13,13,12,13,13,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,13,12,13,12,12,13,13,13,13,12,13,13,13,13,8,10,10,11,11,10,10,11,11,11,9,11,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,11,11,11,10,11,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,9,11,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,12,13,12,12,13,12,13,12,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,12,13,13,13,12,12,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,12,13,12,13,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,12,13,12,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,13,13,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,12,13,12,13,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,12,12,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,13,12,13,12,12,13,13,13,13,12,13,12,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,7,8,5,8,7,5,7,7,7,7,9,7,9,9,5,7,7,8,9,9,7,9,7,6,8,8,8,9,10,8,9,9,8,9,10,9,9,11,10,11,11,8,9,9,10,11,11,9,11,10,6,8,8,8,9,9,8,10,9,8,9,9,9,10,11,10,11,10,8,10,9,10,11,11,9,11,9,6,8,8,7,9,9,8,10,9,7,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,11,10,7,9,9,8,10,10,9,10,10,9,9,10,10,10,11,10,11,11,9,10,10,10,11,11,10,11,10,7,9,9,9,9,10,9,10,9,8,10,9,9,9,11,10,11,11,9,10,10,10,11,11,9,11,9,6,8,8,8,9,10,7,9,9,8,9,9,9,10,10,9,10,10,7,9,9,9,10,10,9,10,9,7,9,9,9,9,10,9,10,9,9,10,10,9,9,11,10,11,11,8,9,10,10,11,11,9,11,9,7,9,9,9,10,10,8,10,10,9,10,10,10,10,11,10,11,11,9,10,9,10,11,11,10,11,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,7,7,6,7,7,6,7,7,6,7,7,7,8,8,7,8,8,6,7,7,7,8,8,7,8,8,7,7,8,7,8,8,7,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,7,7,8,8,7,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,6,8,8,7,8,8,7,8,8,7,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,9,8,9,9,8,8,9,8,9,9,9,9,9,8,9,9,9,9,9,9,9,9,7,8,8,8,9,9,8,9,8,8,8,8,8,9,9,9,9,9,8,9,8,9,9,9,9,9,9,6,8,8,7,8,8,7,8,8,8,8,8,8,8,9,8,9,9,7,8,8,8,9,9,8,9,8,7,8,8,8,8,9,8,9,8,8,8,9,9,9,9,9,9,9,8,8,8,9,9,9,8,9,9,7,8,8,8,9,9,8,9,8,8,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,5,7,8,5,8,7,5,7,8,8,8,10,8,10,10,5,8,7,8,10,10,8,10,8,6,8,9,8,10,12,9,11,11,9,10,11,11,11,13,12,13,13,9,11,11,11,13,13,11,13,12,6,9,8,9,11,11,8,12,10,9,11,11,11,12,13,11,13,13,9,11,10,11,13,13,11,13,11,5,9,9,8,11,11,9,12,11,8,10,11,10,11,13,11,13,13,9,11,11,11,13,13,11,13,12,8,10,11,10,12,13,10,13,12,10,10,13,11,11,14,12,13,14,11,13,12,13,14,14,12,14,12,8,11,10,11,12,13,11,14,12,10,13,12,12,12,13,13,15,14,11,12,13,13,14,15,12,14,12,5,9,9,9,11,12,8,11,11,9,11,11,11,12,13,11,13,13,8,11,10,11,13,13,10,13,11,8,10,11,11,12,14,11,13,12,11,13,12,12,12,14,13,15,14,10,12,13,13,14,15,12,13,12,8,11,10,10,12,13,10,13,12,11,12,13,12,12,14,13,14,14,10,13,10,12,14,13,11,14,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,9,9,6,7,8,10,10,6,8,7,10,10,8,10,10,12,13,8,10,10,13,12,6,8,8,10,10,7,8,9,10,11,8,9,9,11,11,10,10,11,12,13,10,11,11,14,13,6,8,8,10,10,8,9,9,11,11,7,9,8,11,10,10,11,11,13,14,10,11,10,13,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,13,14,13,15,14,9,10,10,13,12,10,11,11,13,13,10,11,10,13,12,13,13,14,14,15,12,13,12,15,12,6,8,8,10,11,8,9,10,11,12,8,9,9,11,11,10,11,12,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,10,11,12,13,11,11,13,13,15,11,12,12,14,14,8,9,9,12,12,9,10,11,12,13,9,10,10,13,12,11,12,13,14,15,11,12,12,14,14,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,13,13,14,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,14,14,11,13,12,14,13,14,15,15,16,16,13,14,14,16,14,6,8,8,11,10,8,9,9,12,11,8,10,9,12,11,10,11,11,13,13,10,12,11,14,13,8,9,9,12,12,9,10,10,12,13,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,8,9,9,12,11,9,10,10,13,12,9,11,10,13,12,12,12,12,14,14,11,13,12,15,13,11,11,12,13,14,11,12,13,13,14,12,13,13,14,15,13,13,14,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,15,13,14,15,15,16,16,13,15,13,16,14,9,10,11,12,13,11,11,12,13,14,11,12,12,13,14,13,13,14,14,16,13,14,14,15,16,11,11,12,13,14,12,12,13,14,15,12,13,13,14,15,14,14,15,15,17,14,15,15,16,17,11,12,12,14,14,12,13,13,14,15,12,13,12,15,15,14,15,15,16,17,14,15,15,16,16,13,14,14,15,16,14,14,15,15,17,15,15,15,16,17,16,16,17,16,18,16,17,17,18,18,13,14,14,16,15,14,15,15,17,16,14,15,15,16,16,16,17,17,18,18,16,16,16,17,16,9,11,10,13,12,11,12,12,14,13,11,12,11,15,13,13,14,14,16,15,13,14,13,17,14,11,12,12,14,14,12,12,13,15,15,12,13,13,15,14,14,14,15,16,16,14,15,15,17,16,11,12,11,14,13,12,13,13,15,14,12,13,12,15,13,14,15,15,16,16,14,15,14,17,15,13,14,14,15,16,14,15,15,16,17,14,15,15,16,17,16,16,16,17,17,16,17,17,18,18,13,15,14,16,15,15,15,15,17,16,14,15,14,17,15,16,17,17,18,18,16,17,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,12,11,14,13,7,9,9,11,12,9,10,10,12,13,9,10,10,13,12,11,11,12,13,15,11,12,12,15,14,8,9,9,12,11,9,10,10,13,13,9,11,10,13,12,12,12,12,14,15,11,13,12,15,13,10,11,11,13,14,11,12,12,13,15,11,12,12,14,14,13,13,14,14,16,14,15,14,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,15,13,14,15,15,16,16,13,14,14,16,14,8,9,9,11,12,9,10,11,12,13,9,10,10,13,12,11,12,13,14,15,11,12,12,15,14,9,9,11,11,13,10,10,12,12,14,10,10,11,13,14,12,12,13,14,16,12,13,13,15,15,9,11,10,13,12,10,11,11,13,14,10,12,11,14,13,12,13,13,15,16,12,13,13,15,15,11,11,13,13,15,12,12,14,13,15,13,13,14,14,15,14,14,15,14,17,15,15,15,16,16,12,13,12,15,14,13,14,14,15,15,12,14,13,15,14,15,15,15,17,17,14,15,14,17,15,7,9,9,12,11,9,10,10,12,12,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,9,10,10,12,12,10,10,11,12,13,10,11,11,14,13,12,12,13,14,15,12,13,13,16,15,9,10,10,13,12,10,11,11,13,13,10,11,10,14,12,13,13,13,15,15,12,13,12,15,14,11,12,12,14,14,12,12,13,14,15,13,14,13,15,15,14,13,15,14,16,15,16,15,17,16,12,12,12,14,14,13,13,14,15,15,12,13,12,15,14,15,15,16,16,17,14,15,14,17,14,10,11,12,13,14,11,12,13,14,15,11,12,13,14,15,13,14,15,15,17,14,15,15,16,16,11,12,13,12,15,12,12,14,13,16,13,13,14,13,16,14,14,16,14,18,15,15,16,16,17,12,13,12,15,15,13,14,14,15,16,13,14,13,16,15,15,15,16,17,18,15,15,15,17,16,14,14,15,14,17,15,14,16,14,17,15,15,16,15,18,16,16,17,16,19,17,17,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,18,16,17,17,18,18,18,16,17,16,18,17,10,11,11,14,13,11,12,12,15,14,11,13,12,15,14,14,15,15,16,16,14,15,15,17,16,11,12,12,15,14,12,13,13,15,14,13,14,13,16,14,14,15,15,16,16,15,16,15,18,16,11,13,12,15,15,13,14,14,15,15,12,14,13,16,15,15,16,16,17,17,15,16,15,17,16,14,15,14,16,16,14,15,15,16,16,15,16,15,17,16,16,16,17,16,17,17,18,17,19,18,14,15,15,17,16,15,16,16,17,17,15,15,15,18,16,17,18,18,18,18,16,17,16,19,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,12,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,10,10,13,13,11,12,13,13,15,11,12,12,15,14,7,9,9,12,11,9,10,10,12,13,9,10,10,13,12,11,12,12,14,15,11,12,11,14,13,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,13,14,14,14,16,14,15,15,16,16,10,11,11,14,13,11,12,12,14,14,11,12,12,15,13,14,14,14,16,16,13,14,13,16,14,7,9,9,11,12,9,10,10,12,13,9,10,10,12,12,11,12,13,14,15,11,12,12,14,14,9,10,10,12,13,10,10,11,12,14,10,11,11,13,13,12,12,13,14,15,13,13,13,15,15,9,10,10,12,12,10,11,11,13,14,10,11,10,13,12,12,13,13,15,16,12,13,12,15,14,11,12,13,14,14,12,12,13,14,15,13,14,13,15,15,14,14,15,14,17,15,16,15,17,16,11,12,12,14,14,13,13,13,15,15,12,13,12,15,14,15,15,15,16,17,14,15,14,16,14,8,9,9,12,11,9,10,10,12,13,9,11,10,13,12,11,12,12,14,15,11,12,12,15,14,9,10,11,13,13,10,11,12,13,14,10,11,11,14,13,12,13,13,15,15,12,13,13,16,15,9,11,9,13,11,10,11,10,14,13,10,12,10,14,12,12,13,13,15,15,12,13,12,16,14,12,12,13,14,15,12,13,14,14,16,13,14,14,15,15,14,14,15,15,17,15,16,15,17,16,11,13,11,15,13,13,14,13,15,14,12,14,12,16,13,15,15,15,16,16,14,15,14,17,14,10,11,11,13,14,11,12,13,14,15,11,12,12,14,15,14,14,15,16,17,14,15,15,16,16,11,12,13,14,15,12,13,14,15,16,13,14,14,15,16,15,15,16,16,18,15,16,16,17,17,11,12,12,14,15,13,13,14,14,16,12,13,13,15,15,15,15,16,16,18,14,15,15,16,16,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,16,19,17,18,17,18,18,14,14,15,16,16,15,15,16,16,17,14,15,15,16,16,17,17,18,18,19,16,17,16,17,16,10,12,11,14,13,11,13,12,15,14,11,13,12,15,14,14,15,15,16,16,13,15,14,17,15,12,13,13,15,15,13,13,14,15,16,13,14,14,16,16,14,15,15,17,17,15,16,16,17,17,11,13,12,15,12,13,14,13,16,13,12,14,12,16,13,15,16,15,17,16,14,16,14,18,14,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,17,18,17,18,17,18,18,14,15,14,17,14,15,16,15,18,15,15,16,15,18,14,17,17,17,18,17,16,17,16,19,16,9,11,11,13,13,10,12,12,14,14,11,12,12,15,14,13,14,14,16,16,13,14,14,16,16,10,11,12,14,14,11,12,13,14,15,12,13,13,15,15,13,14,15,16,16,14,15,15,17,16,11,12,12,15,14,12,13,13,15,15,12,13,12,15,15,14,15,15,16,17,14,15,14,17,16,12,13,14,15,16,13,13,14,15,16,13,14,15,16,16,14,15,16,16,18,15,16,16,18,18,13,14,14,16,15,14,15,15,17,16,14,15,15,17,16,16,17,17,18,18,16,17,16,18,17,10,12,12,14,14,11,12,13,15,15,12,13,13,15,15,13,14,15,16,17,14,15,15,17,16,11,11,13,14,15,12,12,14,15,16,13,13,14,15,16,14,14,15,16,17,15,15,16,17,17,12,13,12,15,15,13,14,14,16,16,13,14,13,16,15,15,16,15,17,17,15,16,15,18,16,13,12,15,14,17,14,13,16,14,17,14,14,16,15,18,15,14,17,16,18,16,16,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,18,16,17,17,17,18,18,16,17,16,19,17,10,11,11,14,14,11,12,12,15,15,11,13,12,15,15,14,15,14,16,16,14,15,15,17,16,11,12,12,15,14,12,12,13,15,15,13,14,13,16,15,14,15,15,16,16,15,16,15,18,17,11,13,12,15,15,13,14,13,15,15,12,14,13,16,15,15,16,15,17,17,15,16,15,18,16,13,14,13,16,16,14,15,14,16,16,14,15,15,17,16,16,16,16,16,18,16,18,17,19,18,14,15,15,17,16,15,16,16,17,17,15,15,15,17,16,17,17,18,18,19,16,17,16,18,16,12,13,13,15,16,13,14,14,16,17,13,14,14,16,16,15,15,16,17,18,15,16,16,18,17,13,13,14,14,17,14,14,15,15,17,14,14,15,16,17,15,15,17,16,18,16,17,17,18,18,13,14,14,17,16,14,15,15,17,17,14,15,14,17,16,16,17,17,18,18,16,17,16,18,17,15,14,16,13,18,16,15,17,14,19,16,16,17,15,18,17,16,18,15,19,18,18,18,17,19,15,16,16,18,17,16,17,17,18,18,16,17,16,19,17,18,19,18,19,19,17,18,17,20,18,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,16,16,17,17,15,16,16,18,17,12,14,13,16,15,13,13,14,15,16,14,15,14,17,16,16,16,16,16,17,16,17,17,19,17,12,13,14,16,16,14,15,15,16,17,13,15,13,17,15,16,17,17,18,18,16,17,16,18,16,15,16,15,17,16,15,15,15,17,17,16,17,16,18,17,17,16,17,16,18,18,19,18,20,18,15,16,16,17,17,16,17,17,18,18,15,16,15,18,17,18,18,19,19,19,17,18,16,19,16,9,11,11,13,13,11,12,12,14,15,10,12,12,14,14,13,14,14,16,16,13,14,14,16,16,11,12,12,14,14,12,12,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,16,10,12,11,14,14,12,13,13,15,15,11,13,12,15,14,14,15,15,16,17,13,15,14,17,16,13,14,14,15,16,14,15,15,16,17,14,15,15,16,17,16,16,17,17,18,16,17,17,18,18,12,14,13,16,15,13,15,14,17,16,13,14,13,17,15,15,16,16,18,18,15,16,15,18,16,10,11,11,14,14,11,12,13,14,15,11,12,12,15,15,14,15,15,16,17,14,15,15,16,16,11,12,13,15,15,12,13,14,15,16,13,14,14,15,16,15,15,16,16,18,15,15,16,17,17,11,12,12,14,15,13,13,14,15,16,12,13,13,15,15,15,15,16,17,18,14,15,15,17,16,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,16,19,17,17,18,19,18,13,13,14,16,16,14,15,16,17,17,14,14,15,16,16,16,16,17,18,18,16,16,16,18,16,10,12,12,14,14,12,13,13,15,15,11,13,12,15,15,14,15,15,16,17,13,15,14,17,16,12,13,13,15,15,13,13,14,15,16,13,14,14,16,16,15,15,16,17,18,15,15,16,17,17,11,13,12,15,14,13,14,13,16,15,12,14,12,16,14,15,16,15,17,17,14,16,14,17,16,14,15,15,16,17,15,15,16,16,18,15,16,16,17,17,16,17,17,17,19,17,17,17,18,18,13,15,12,17,14,14,16,14,17,15,14,15,13,17,14,16,17,16,18,17,15,17,14,19,15,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,16,16,17,18,15,16,16,17,17,12,14,13,16,16,13,13,15,15,17,14,15,15,17,16,16,16,17,16,19,16,17,17,18,18,12,13,14,15,16,14,14,15,16,17,13,14,13,16,15,16,17,17,18,19,15,16,16,17,16,15,16,16,18,17,15,15,16,17,18,16,17,17,18,18,16,16,18,16,19,18,19,19,20,19,15,15,16,16,17,16,16,17,17,18,15,15,15,17,16,18,18,19,18,20,17,17,16,18,16,12,13,13,16,15,13,14,14,16,16,13,14,14,16,16,15,16,16,17,18,15,16,15,18,17,13,14,14,16,16,14,15,15,16,17,14,15,15,17,17,16,17,17,18,18,16,17,17,18,18,13,14,13,17,14,14,15,14,17,16,14,15,14,17,15,16,17,17,18,18,15,17,15,19,15,16,16,16,17,18,16,16,17,17,19,16,17,17,18,19,17,17,18,18,20,18,18,18,19,19,15,16,14,18,13,16,17,16,19,15,16,17,15,19,14,18,18,18,19,17,17,18,16,20,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,7,7,5,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,5,7,8,8,9,10,8,9,9,8,9,10,9,10,12,10,11,11,8,9,10,10,11,11,9,11,11,5,8,7,8,9,9,8,10,9,8,10,9,9,11,11,10,11,11,8,10,9,10,11,11,9,12,10,5,8,8,7,9,10,8,10,9,7,9,9,9,10,11,9,11,11,8,10,10,10,11,11,10,12,11,7,9,9,9,10,11,9,11,11,9,9,11,10,10,13,11,11,12,9,11,11,11,12,13,11,13,12,7,9,9,9,11,11,9,12,10,9,11,10,10,11,12,11,13,12,9,11,11,11,13,13,11,13,11,5,8,8,8,9,10,7,10,9,8,10,10,10,11,11,10,11,11,7,9,9,9,11,11,9,11,10,7,9,9,9,10,12,9,11,11,9,11,11,11,11,13,11,13,13,9,10,11,11,12,13,10,12,11,7,9,9,9,11,11,9,11,10,9,11,11,11,12,13,11,13,12,9,11,9,11,12,11,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,8,13,15,16,18,21,22,5,4,6,8,10,12,17,21,9,5,5,6,8,11,15,19,11,6,5,5,6,7,12,14,14,8,7,5,4,4,9,11,16,11,9,7,4,3,7,10,22,15,14,12,8,7,9,11,21,16,15,12,9,5,6,8,2,0,0,0,64,0,0,0,8,198,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,150,6,0,0,0,0,0,0,0,0,0,248,150,6,0,0,0,0,0,0,0,0,0,32,151,6,0,72,151,6,0,0,0,0,0,0,0,0,0,112,151,6,0,152,151,6,0,0,0,0,0,0,0,0,0,192,151,6,0,232,151,6,0,0,0,0,0,0,0,0,0,16,152,6,0,56,152,6,0,232,151,6,0,0,0,0,0,96,152,6,0,136,152,6,0,232,147,6,0,16,148,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,144,150,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,136,150,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,147,6,0,152,147,6,0,0,0,0,0,0,0,0,0,192,147,6,0,232,147,6,0,16,148,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,160,149,6,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,80,150,6,0,0,0,0,0,2,0,0,0,25,0,0,0,104,149,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,149,6,0,0,0,0,0,2,0,0,0,9,0,0,0,72,149,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2],"i8",L3,F.GLOBAL_BASE+420817),d3([0,0,0,0,0,0,0,88,149,6,0,0,0,0,0,1,0,0,0,25,0,0,0,192,148,6,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,224,148,6,0,0,0,0,0,1,0,0,0,25,0,0,0,56,148,6,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,88,148,6,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,2,3,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,14,14,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,4,4,5,5,4,5,5,5,5,4,5,4,4,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,8,8,10,10,10,10,9,8,11,11,4,6,5,8,6,10,10,10,10,10,9,10,9,4,5,6,6,9,10,10,10,10,9,10,9,10,8,9,8,9,8,9,9,10,9,11,10,12,10,8,8,9,8,9,9,9,9,10,10,11,10,12,9,10,10,11,10,11,10,12,11,12,11,13,11,9,10,10,10,11,10,11,11,12,11,12,11,12,11,12,12,12,12,13,12,13,12,13,12,13,13,11,12,12,12,12,12,12,12,13,13,13,13,13,12,12,12,13,13,13,13,13,13,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,12,13,13,13,14,14,13,13,13,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,7,12,14,14,16,18,19,6,2,4,6,8,9,12,14,12,3,3,5,7,8,11,13,13,6,4,5,7,8,10,11,14,8,7,7,7,7,9,10,15,9,8,7,7,6,8,9,17,11,11,10,9,8,9,9,19,14,13,11,10,9,9,9,5,0,0,0,243,0,0,0,0,197,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,248,197,6,0,0,0,0,0,5,0,0,0,53,12,0,0,176,184,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,196,6,0,0,0,0,0,5,0,0,0,243,0,0,0,168,183,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,160,184,6,0,0,0,0,0,5,0,0,0,243,0,0,0,160,182,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,152,183,6,0,0,0,0,0,5,0,0,0,243,0,0,0,152,181,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,144,182,6,0,0,0,0,0,5,0,0,0,53,12,0,0,72,169,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,128,181,6,0,0,0,0,0,5,0,0,0,53,12,0,0,248,156,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,48,169,6,0,0,0,0,0,1,0,0,0,7,0,0,0,208,156,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,216,156,6,0,0,0,0,0,5,0,0,0,243,0,0,0,200,155,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,192,156,6,0,0,0,0,0,5,0,0,0,243,0,0,0,192,154,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,184,155,6,0,0,0,0,0,5,0,0,0,243,0,0,0,184,153,6,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,176,154,6,0,0,0,0,0,5,0,0,0,243,0,0,0,176,152,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,168,153,6,0,0,0,0,0,1,7,7,6,9,9,7,9,9,6,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,5,7,8,5,8,7,6,7,7,7,7,8,8,8,8,6,7,7,7,8,8,7,8,7,6,8,8,8,9,10,8,9,9,8,9,9,9,9,10,10,10,10,8,9,9,10,10,10,9,10,10,6,8,8,8,9,9,8,10,9,9,9,9,9,9,10,10,10,10,8,9,9,10,10,10,9,10,9,6,8,9,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,10,9,7,8,9,8,9,9,9,9,9,8,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,7,9,9,9,10,10,9,10,10,9,10,9,9,9,10,10,10,10,9,10,9,10,10,10,9,10,9,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,10,9,7,9,9,9,10,10,9,10,9,9,9,10,10,9,10,10,10,10,9,9,9,10,10,10,9,10,9,7,9,8,8,9,9,8,9,9,9,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,5,7,9,5,9,7,5,7,8,7,7,10,9,9,10,5,8,7,9,10,9,7,10,7,6,9,9,9,10,12,10,12,11,9,10,11,11,10,13,12,12,13,10,11,11,12,13,13,11,13,11,6,9,9,10,11,12,9,12,11,10,11,11,11,11,13,12,13,13,9,11,10,12,13,13,11,13,10,6,9,10,9,11,12,10,12,11,9,10,11,10,10,13,11,13,13,10,11,11,12,13,12,11,13,11,7,9,10,9,10,12,10,11,11,10,10,11,10,10,12,12,11,12,10,11,10,12,12,12,10,12,10,7,10,10,11,11,13,11,13,11,10,12,11,11,10,13,13,14,13,10,11,12,13,13,14,11,13,10,6,10,9,10,11,12,9,12,11,9,11,11,11,11,13,12,12,13,9,11,10,12,13,13,10,13,10,7,10,10,11,11,14,11,13,11,10,12,11,11,10,14,13,14,13,10,11,12,13,13,14,11,13,10,7,10,9,10,10,12,9,12,10,10,11,11,10,10,12,12,12,12,9,11,10,11,12,12,10,12,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,1,6,6,10,10,6,7,9,11,13,5,9,7,13,11,8,11,12,13,15,8,12,11,15,13,6,7,8,11,11,7,8,10,11,13,9,10,10,13,13,11,11,13,12,16,12,13,13,16,15,6,8,7,11,11,9,10,10,13,13,7,10,7,13,11,12,13,13,15,16,11,13,11,16,12,10,11,11,11,13,11,11,13,12,15,13,13,13,14,15,13,12,15,12,17,15,16,16,16,16,10,11,11,14,11,13,13,13,15,14,11,13,11,15,12,15,15,16,16,16,13,15,12,17,12,6,8,9,12,12,9,10,12,13,15,9,11,11,15,14,12,13,15,16,18,13,14,14,17,16,9,10,11,13,14,11,10,13,14,16,11,12,12,15,15,14,13,16,15,18,14,15,15,17,17,9,11,11,14,14,11,12,13,15,16,11,13,11,15,14,15,15,15,17,18,14,15,14,17,15,13,14,14,15,16,14,14,15,15,17,15,16,15,17,17,16,16,17,15,19,17,18,18,19,18,13,14,14,16,15,15,15,16,17,17,14,15,14,18,15,17,17,17,19,19,16,17,15,19,16,6,9,8,13,12,9,11,11,14,15,9,12,10,15,13,13,14,14,16,17,12,15,13,18,16,9,11,11,14,14,11,11,13,14,15,11,13,12,16,15,14,14,15,15,18,14,15,15,18,17,9,11,10,14,13,11,12,12,15,15,11,13,10,16,14,14,15,15,16,18,14,16,13,18,15,13,14,14,16,16,14,14,15,15,17,15,16,15,17,17,16,16,17,16,19,17,18,17,18,19,13,14,14,16,15,15,15,15,17,17,14,15,14,17,15,17,17,17,18,19,16,17,15,19,15,11,13,13,15,16,13,14,15,16,18,14,15,15,17,17,16,16,18,18,20,17,18,17,19,20,13,14,14,16,17,15,15,16,17,18,15,16,16,17,17,18,17,19,18,19,18,18,18,19,21,14,14,15,16,17,15,15,16,18,18,15,16,16,17,18,18,18,19,19,21,18,19,19,22,20,16,16,17,17,19,17,17,17,18,20,17,18,18,20,19,19,19,20,19,0,19,19,20,20,21,17,17,17,19,18,18,18,20,19,19,18,18,18,20,20,19,19,20,20,20,20,21,20,21,19,11,13,13,16,15,14,15,15,17,17,14,15,14,18,16,16,18,18,20,19,16,19,17,21,18,13,14,15,16,17,15,15,16,18,18,15,16,15,19,18,18,18,18,19,19,18,18,18,22,20,13,14,14,16,16,15,16,16,18,17,15,16,15,18,17,18,18,18,19,19,17,18,17,21,18,16,17,17,18,18,17,18,19,19,19,18,20,18,19,19,19,20,21,19,21,20,20,20,0,21,16,17,17,19,19,18,18,18,19,21,17,18,18,19,18,20,19,21,20,21,19,20,20,22,19,7,9,9,13,13,8,10,11,14,15,9,12,11,15,14,11,13,14,16,17,13,15,14,17,16,8,10,11,14,14,10,10,12,14,16,11,12,12,16,15,13,12,15,15,18,14,15,15,19,17,9,11,11,14,14,11,12,12,15,15,11,13,11,16,14,14,15,14,17,17,14,16,14,18,15,12,13,14,15,16,13,13,15,14,17,15,15,15,17,17,15,14,17,14,19,17,18,18,19,18,13,14,14,16,16,15,15,15,17,17,14,15,14,18,15,17,18,17,18,17,16,18,16,19,15,7,10,10,13,13,9,10,12,14,15,10,12,11,15,14,12,13,14,16,17,13,15,14,18,16,10,10,12,13,14,10,10,13,13,16,12,12,13,15,15,13,12,15,15,18,15,15,16,18,17,10,11,11,14,14,12,13,13,15,16,10,13,10,16,14,14,15,15,17,17,14,15,13,17,15,13,13,14,15,16,14,13,15,14,18,15,15,16,16,17,16,15,18,15,18,17,18,18,18,18,13,15,14,17,16,15,16,16,17,17,14,15,13,17,15,17,17,18,18,18,16,17,14,20,14,8,10,10,14,14,11,11,13,14,16,11,13,11,16,14,14,15,16,16,18,14,16,15,18,16,10,12,11,15,14,11,11,13,14,16,13,14,13,16,15,15,14,16,15,19,16,17,16,20,18,10,11,12,14,15,13,13,14,16,16,11,14,11,16,14,16,16,17,18,19,15,17,14,20,15,14,15,14,17,16,13,14,15,15,18,16,17,16,19,18,16,15,18,15,19,18,19,18,21,21,14,14,15,16,17,16,16,17,18,18,13,15,14,17,15,18,18,19,18,22,16,18,15,21,15,12,13,14,16,16,14,14,16,16,18,14,15,15,17,18,16,16,18,18,20,18,18,17,20,20,13,14,15,15,17,15,14,16,16,18,16,16,16,17,19,17,15,18,17,21,18,18,18,19,19,14,15,15,18,17,15,16,16,18,19,15,16,15,18,18,17,18,18,20,21,17,19,17,20,19,16,16,17,16,19,17,17,18,17,20,18,18,18,18,19,19,18,20,17,22,20,20,19,20,20,17,17,18,18,19,18,18,20,21,20,17,18,17,20,20,21,21,21,21,21,19,21,18,22,20,11,13,13,17,16,14,14,16,16,18,14,16,14,18,16,17,18,19,19,20,18,19,18,21,19,14,15,14,17,16,14,14,16,18,18,16,17,16,18,17,18,17,19,18,20,19,19,18,20,20,13,14,15,16,17,16,16,17,18,19,14,16,14,19,17,18,19,18,20,20,18,20,17,21,18,17,17,17,19,18,16,17,18,18,19,18,19,18,21,21,18,18,20,17,21,19,20,20,22,21,16,17,18,18,19,18,18,19,21,20,16,17,17,20,18,21,21,22,21,22,18,21,18,0,18,7,9,9,13,13,9,11,12,14,15,8,11,10,15,14,13,14,15,16,18,11,14,13,17,15,9,11,11,14,14,11,11,13,14,16,11,12,12,15,15,14,14,16,15,18,14,14,15,17,17,8,11,10,14,14,11,12,12,15,15,10,12,10,16,14,14,15,15,17,18,13,15,12,18,15,13,14,14,16,16,14,14,15,15,17,15,15,15,16,17,16,15,17,15,19,17,17,17,18,18,12,14,13,16,15,15,15,15,17,17,13,15,13,17,14,17,18,18,18,19,15,17,14,19,14,8,10,10,14,14,11,11,13,14,16,11,13,11,16,14,14,15,16,17,19,14,16,15,18,17,10,12,11,15,14,11,11,14,14,17,13,14,13,17,15,15,14,17,15,19,16,17,16,19,17,10,11,12,14,15,13,13,14,15,17,11,13,11,17,14,16,16,17,18,19,15,16,14,18,15,14,15,14,16,16,13,14,15,15,18,16,16,16,18,18,16,15,18,15,20,18,19,18,21,18,14,14,15,16,17,16,16,17,17,18,13,15,14,17,16,19,19,19,19,19,15,18,15,20,15,7,10,10,13,13,10,11,12,14,15,9,12,10,15,14,13,14,15,16,17,12,15,13,17,16,10,11,11,14,14,10,10,13,14,16,12,13,13,16,15,14,13,16,15,18,15,15,16,17,17,10,12,10,14,13,12,13,12,15,15,10,13,10,16,13,15,16,15,17,18,13,16,12,18,15,13,14,14,16,17,14,13,15,15,18,15,16,15,17,17,16,14,17,15,19,17,18,18,19,19,13,15,13,17,14,15,15,15,18,17,14,15,13,17,14,18,17,18,18,19,15,17,15,19,15,11,13,13,16,17,14,14,16,16,18,14,16,15,18,17,17,18,19,18,21,18,18,17,20,18,13,15,14,17,16,14,14,16,17,18,16,17,16,19,17,18,17,19,18,22,18,19,19,21,21,13,14,15,16,18,16,16,17,17,20,14,16,14,18,17,18,18,19,19,21,17,18,17,21,18,17,18,17,19,18,16,17,17,18,19,18,18,18,22,22,18,17,19,17,0,20,21,19,21,20,17,17,18,18,21,18,18,18,19,21,17,17,17,19,19,20,20,22,21,21,19,20,18,20,17,12,14,13,17,16,14,15,15,17,18,14,16,14,18,16,17,18,18,21,20,16,18,16,21,18,14,15,15,17,17,15,15,16,18,18,15,17,16,18,18,17,17,19,19,20,18,19,18,20,19,14,15,14,17,15,15,16,16,18,17,15,16,14,19,15,18,18,18,19,20,17,20,15,21,17,16,17,18,18,19,17,17,18,18,20,18,19,18,19,21,19,18,19,19,21,20,0,19,21,20,16,17,16,19,16,18,18,18,19,19,17,18,17,20,17,19,20,20,22,0,19,20,17,21,17,11,13,14,16,17,14,15,15,17,18,14,15,15,18,18,16,17,17,19,20,16,18,17,19,21,13,14,15,17,17,14,15,16,17,19,15,16,16,18,19,16,17,18,19,21,17,18,20,21,21,13,15,15,17,17,15,16,16,18,19,15,16,16,18,19,17,17,18,19,22,17,19,18,22,19,15,16,17,19,19,16,17,18,18,20,17,18,18,19,20,19,18,20,18,22,20,19,19,22,21,16,17,17,18,19,18,18,18,19,20,17,18,18,20,19,20,19,20,22,20,19,20,21,21,20,12,14,14,16,16,13,14,16,17,18,14,16,15,18,18,15,17,17,19,19,17,18,18,19,19,13,14,15,16,17,14,14,16,16,20,15,16,16,17,19,16,15,18,17,20,18,17,19,19,19,14,15,15,17,17,16,16,16,18,18,15,16,15,19,18,17,18,18,20,21,17,18,17,21,18,16,15,17,17,19,17,15,18,17,20,19,17,18,19,20,18,16,19,17,22,20,19,20,19,20,17,17,18,19,19,18,18,19,20,20,17,18,17,18,18,21,21,20,20,21,18,20,17,21,19,11,14,14,16,17,15,14,16,17,19,14,16,14,18,17,18,18,19,19,21,17,19,18,20,20,13,15,14,17,17,14,14,16,17,18,16,17,16,19,18,18,17,19,18,20,18,21,18,20,20,13,15,15,16,17,16,16,17,18,19,14,16,15,19,18,19,19,19,21,20,18,19,17,20,18,16,17,16,19,18,16,17,17,19,20,17,19,18,20,19,18,17,21,18,0,21,20,20,0,20,17,17,18,18,19,18,19,19,20,22,16,17,17,20,18,21,22,20,20,22,18,22,18,22,18,12,14,14,17,17,14,15,16,17,19,14,16,15,17,17,17,17,18,18,21,17,19,17,20,19,14,15,15,16,18,15,14,16,16,19,16,17,16,19,18,17,16,20,17,20,18,20,19,19,20,14,15,15,18,17,16,16,17,18,19,14,16,15,19,17,18,21,18,19,21,17,18,17,19,18,17,17,18,17,20,17,16,18,17,21,18,19,19,19,19,18,17,19,17,20,20,21,20,21,20,17,17,17,19,19,19,18,18,20,21,16,18,16,19,18,20,20,21,21,20,18,19,16,0,17,12,14,14,17,17,15,15,18,17,19,15,18,15,20,16,20,19,21,18,22,20,20,20,22,19,14,16,14,20,17,14,15,17,17,20,18,18,17,20,18,18,17,19,17,21,20,21,20,0,21,14,15,16,17,19,18,17,19,18,21,14,18,15,21,17,21,20,21,20,0,18,21,17,21,17,18,19,17,20,18,16,17,17,19,19,19,21,20,0,20,18,17,21,17,0,22,0,21,0,22,17,17,19,18,20,20,20,21,19,22,16,17,18,20,18,22,22,0,22,0,17,21,17,22,17,11,14,13,16,16,14,15,15,17,18,14,15,14,18,17,17,18,18,19,20,16,17,17,21,19,13,14,15,17,17,15,16,16,18,18,15,16,16,19,18,18,18,18,19,20,17,18,18,20,19,13,15,14,17,17,15,16,16,17,18,14,16,15,19,17,17,18,19,21,21,17,18,17,20,18,16,17,17,19,19,17,18,19,19,20,18,19,18,21,21,21,20,19,21,22,20,20,19,21,20,15,17,16,19,19,17,18,18,20,21,16,18,17,20,18,19,19,21,21,21,19,19,19,20,18,11,14,13,17,16,14,14,16,16,19,14,16,15,19,16,18,18,18,19,22,17,18,17,20,19,13,15,14,17,17,15,15,16,17,19,16,17,16,20,18,18,17,19,18,21,19,19,18,22,0,13,14,15,17,18,16,16,17,17,19,14,16,15,19,18,18,19,19,20,21,18,18,17,20,18,17,18,17,20,18,16,17,17,18,20,18,19,18,20,20,18,18,21,17,21,20,21,21,0,19,16,16,18,18,19,19,18,20,19,20,16,17,17,20,18,21,20,21,22,22,18,20,17,21,17,12,14,14,17,16,14,15,16,18,18,13,15,14,18,17,17,18,18,19,19,15,17,16,19,19,14,15,15,17,17,15,15,16,18,19,15,16,16,19,18,17,17,18,18,20,18,18,18,21,20,13,15,14,17,16,15,16,15,18,18,14,16,14,18,17,18,18,18,19,21,16,18,16,20,17,17,18,17,18,19,17,17,18,18,19,18,19,19,21,19,19,18,20,18,21,21,20,20,21,20,16,17,15,20,17,17,19,17,19,19,17,18,15,20,17,19,20,19,21,22,17,20,16,0,17,12,14,14,17,18,16,15,18,16,20,16,18,15,21,17,20,18,21,19,22,19,21,19,0,19,14,16,15,19,17,14,15,17,16,21,18,19,18,21,17,19,17,21,17,22,20,21,21,0,21,14,15,16,17,19,18,17,19,18,21,14,17,15,20,17,21,22,21,20,22,18,21,17,21,17,17,19,17,21,18,16,17,17,19,20,19,21,20,21,20,17,18,20,17,21,0,22,20,21,22,17,17,20,18,21,21,20,22,20,21,16,17,17,21,19,0,22,0,21,21,18,22,17,21,17,12,14,14,17,16,14,15,16,17,18,14,16,15,18,17,17,17,20,19,20,16,18,17,21,18,14,15,15,17,17,14,15,16,17,19,16,17,16,18,18,17,16,19,18,19,18,19,18,21,20,14,15,15,18,17,16,16,16,19,18,15,16,14,20,16,18,18,19,19,20,16,19,16,21,17,17,17,18,19,19,16,16,18,18,19,19,19,18,20,20,18,16,19,18,20,22,21,20,19,20,16,18,17,20,16,18,19,18,19,18,16,18,16,20,17,21,20,21,20,20,18,19,17,21,16,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,5,7,7,10,10,7,8,9,10,11,7,9,8,11,10,9,10,10,11,11,9,10,10,11,11,7,9,9,10,10,8,9,10,10,11,9,10,10,11,11,10,10,11,11,11,10,11,11,12,12,7,9,9,10,10,9,10,10,11,11,8,10,9,11,10,10,11,11,11,11,10,11,10,11,11,10,10,10,11,11,10,10,11,11,11,11,11,11,11,11,11,11,12,11,12,11,12,11,12,12,10,10,10,11,11,10,11,11,11,11,10,11,10,11,11,11,12,11,12,12,11,12,11,12,11,8,9,9,11,11,9,10,10,11,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,11,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,8,9,9,11,11,9,10,10,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,11,11,12,12,12,12,11,12,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,13,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,13,12,12,12,12,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,9,9,11,11,9,10,10,11,11,9,10,10,12,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,11,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,10,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,10,11,11,12,11,11,12,12,12,11,11,12,12,12,11,11,12,12,13,12,12,12,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,8,10,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,12,12,12,10,11,10,12,12,10,10,11,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,10,11,11,12,12,11,12,12,12,12,10,12,11,12,12,12,12,12,13,13,12,13,12,13,12,11,12,12,12,12,11,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,13,11,12,12,12,12,12,12,12,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,13,13,13,12,12,13,13,13,13,13,13,13,13,11,12,12,12,12,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,12,12,13,12,12,13,12,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,9,9,11,11,9,10,10,11,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,8,10,10,11,11,10,10,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,12,10,11,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,10,10,11,12,12,11,12,12,12,12,10,11,10,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,11,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,11,12,12,13,12,12,13,13,13,13,12,13,12,13,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,12,12,12,12,13,12,12,12,13,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,12,12,12,12,12,12,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,13,13,13,13,11,12,11,12,12,12,12,12,13,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,12,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,12,13,13,13,12,13,13,13,13,11,12,12,12,13,12,12,13,13,13,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,11,12,12,12,12,12,12,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,13,13,13,12,13,12,13,13,11,12,12,12,12,12,12,13,13,13,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,13,12,13,13,12,12,12,13,12,13,13,13,13,13,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,11,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,13,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,13,13,13,13,12,13,12,13,13,11,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,11,12,12,13,12,12,13,12,13,13,12,13,12,13,13,13,13,13,13,13,12,13,13,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,13,13,13,13,12,13,13,12,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,12,13,13,13,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,13,12,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,13,13,13,13,13,11,12,12,12,12,12,13,12,13,13,12,13,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,11,12,12,12,12,12,13,13,11,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,12,13,13,13,12,13,13,13,13,11,12,12,13,13,12,12,13,13,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,11,12,12,13,12,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,12,11,12,12,11,12,12,12,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,13,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,13,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,13,12,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,12,13,13,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,13,13,13,12,13,13,13,13,12,12,13,13,13,13,13,13,13,13,11,12,12,12,12,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,13,13,13,13,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,13,13,13,12,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,13,13,13,13,13,13,13,13,13,12,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,9,5,9,7,5,7,8,7,7,10,9,10,10,5,8,7,9,10,10,7,10,7,6,8,9,9,10,12,9,11,11,9,10,11,11,11,13,12,13,13,9,11,11,11,12,13,11,13,11,6,9,8,9,11,11,9,12,10,9,11,11,11,11,13,11,13,12,9,11,10,12,13,13,11,13,11,6,9,9,8,10,11,9,12,11,9,10,11,10,10,12,11,13,13,9,11,11,11,13,12,11,13,11,8,10,10,9,10,12,10,12,11,10,10,12,10,10,13,12,13,13,10,12,11,12,13,13,10,13,10,7,10,10,11,11,13,11,14,11,10,12,11,11,11,13,13,14,13,10,12,12,14,14,14,11,14,11,6,9,9,9,11,12,8,11,10,9,11,11,11,11,13,11,12,13,8,11,10,11,13,13,10,12,10,7,10,10,11,11,14,11,13,11,10,12,12,11,11,14,14,14,14,10,11,12,13,13,14,11,13,11,8,10,10,10,11,12,9,12,10,10,11,12,11,10,13,12,13,13,10,12,10,12,13,13,11,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,6,6,6,7,7,6,7,7,6,7,7,7,7,8,7,8,8,6,7,7,7,8,8,7,8,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,9,7,8,7,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,8,6,8,8,7,8,8,7,8,8,7,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,9,9,8,9,9,8,8,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,7,8,8,8,8,9,8,9,8,8,8,8,8,9,9,9,9,9,8,9,8,9,9,9,8,9,9,6,8,8,7,8,8,7,8,8,8,8,8,8,8,9,8,9,9,7,8,8,8,9,9,8,9,8,7,8,8,8,8,9,8,9,8,8,8,9,8,9,9,9,9,9,8,8,8,9,9,9,8,9,9,7,8,8,8,9,9,8,9,9,8,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,6,5,7,8,5,8,7,5,7,8,7,8,10,8,10,10,5,8,7,8,10,10,7,10,8,6,8,9,8,10,11,9,10,10,9,10,11,10,11,12,11,12,12,9,11,10,11,12,12,10,12,11,6,9,8,9,10,10,8,11,10,9,10,11,10,11,12,11,12,12,9,11,10,11,12,12,10,12,11,6,9,9,8,10,11,9,11,10,8,10,10,10,10,12,11,12,12,9,11,10,11,12,12,10,12,11,8,10,10,10,11,12,10,12,11,10,10,12,11,11,13,12,13,13,10,12,11,12,13,13,11,13,11,7,10,10,10,11,12,10,12,11,10,12,11,11,11,12,12,14,13,10,12,12,12,14,14,11,13,11,6,9,9,9,10,11,8,11,10,9,10,11,10,11,12,11,12,12,8,11,10,11,12,12,10,12,10,7,10,10,10,11,12,10,12,11,10,12,12,11,11,13,12,13,13,10,11,12,12,13,14,11,12,11,8,10,10,10,11,12,10,12,11,10,11,12,11,11,13,12,13,13,10,12,10,12,13,13,11,13,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,9,9,6,7,8,10,10,6,8,7,10,10,8,10,10,12,13,8,10,10,13,12,6,7,8,10,10,7,8,9,10,11,8,9,9,11,11,10,10,11,12,14,10,11,11,14,13,6,8,7,10,10,8,9,9,11,11,7,9,8,11,10,10,11,11,13,14,10,11,10,14,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,13,14,13,15,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,13,13,14,14,15,12,13,12,15,12,6,7,8,10,11,8,9,10,11,12,8,9,9,11,12,10,11,12,13,14,10,11,11,14,13,8,9,10,11,12,9,10,11,12,13,9,10,11,12,13,11,12,13,13,15,12,12,13,15,14,8,9,9,12,12,9,10,11,12,13,9,10,10,13,12,12,12,13,14,15,11,12,12,14,14,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,14,13,15,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,14,13,14,15,15,15,16,13,14,14,16,14,6,8,7,11,10,8,9,9,11,12,8,10,9,12,11,10,11,11,13,14,10,12,11,14,13,8,9,9,12,12,9,10,10,12,13,9,11,10,13,12,11,12,12,13,14,12,13,12,15,14,8,10,9,12,11,9,11,10,13,12,9,11,10,13,12,12,13,12,14,15,11,13,12,15,13,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,13,14,14,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,15,13,14,15,15,16,16,13,15,13,16,14,9,10,11,12,14,11,11,12,13,15,11,12,12,13,14,13,14,15,15,17,13,14,14,15,16,11,11,12,13,15,12,12,13,14,16,12,13,13,14,15,14,14,16,15,17,15,15,15,16,17,11,12,12,14,14,12,13,13,15,16,12,13,13,15,15,15,15,15,16,17,14,15,15,16,16,14,14,15,15,17,14,15,15,15,17,15,15,16,16,17,16,16,17,16,18,17,17,17,18,18,14,15,14,16,16,15,15,16,17,17,14,15,15,17,16,17,17,17,18,18,16,16,16,17,17,9,11,10,14,12,11,12,12,14,13,11,12,11,15,13,13,14,14,16,15,13,15,14,17,15,11,12,12,15,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,15,15,15,17,16,11,12,11,15,13,12,13,13,15,14,12,13,12,16,14,15,15,15,17,16,14,15,14,17,15,14,14,15,16,16,14,15,15,16,16,15,16,15,17,17,16,16,16,17,17,17,17,17,18,17,14,15,14,16,15,15,15,15,17,16,15,15,15,17,15,17,17,17,18,18,16,17,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,12,11,14,13,7,9,9,11,12,9,10,10,12,13,9,10,10,13,13,11,11,12,13,15,11,12,12,15,14,8,9,9,12,11,9,11,10,13,13,9,11,10,13,12,12,13,12,14,15,11,13,12,15,13,10,11,12,13,14,11,12,12,13,15,12,12,13,14,15,13,13,14,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,15,13,14,15,15,15,16,13,14,14,16,14,7,9,9,11,12,9,10,11,12,13,9,10,10,13,12,11,12,12,14,15,11,12,12,15,14,9,9,11,11,13,10,10,12,12,14,10,11,12,13,14,12,12,13,14,16,12,13,13,15,15,9,11,10,13,13,10,12,12,13],"i8",L3,F.GLOBAL_BASE+431057),d3([14,10,12,11,14,13,12,13,13,15,16,12,13,13,15,14,11,11,13,13,15,12,12,14,13,16,13,13,13,14,15,14,14,15,14,17,15,15,15,16,16,12,13,12,15,14,13,14,14,15,15,12,14,13,16,14,15,15,16,16,17,14,15,14,17,15,7,9,9,12,11,9,10,10,12,13,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,9,10,10,13,12,10,10,11,12,13,10,12,11,14,13,12,12,13,13,15,12,14,13,16,15,9,10,10,13,12,11,11,12,13,13,10,12,10,14,12,13,13,13,15,15,12,13,12,15,13,11,12,12,14,14,12,12,13,14,15,13,14,13,15,15,14,13,15,13,16,15,16,15,17,16,12,13,12,14,14,13,14,14,15,15,12,13,12,15,14,15,15,16,16,17,14,15,13,16,13,10,11,12,13,14,11,12,13,14,15,12,13,13,15,15,14,14,15,15,17,14,15,15,16,16,12,12,13,12,15,12,12,14,13,16,13,13,14,14,16,14,14,16,15,17,15,15,16,16,17,12,13,13,15,15,13,14,14,16,16,13,14,13,16,15,15,16,16,17,17,14,15,15,17,16,14,14,15,14,17,15,15,16,15,17,15,15,16,15,17,16,16,17,16,18,17,17,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,17,17,17,18,18,16,17,16,18,17,10,12,11,14,14,12,13,13,15,15,12,13,12,15,14,14,15,15,16,16,14,15,15,17,16,11,13,12,15,14,12,13,13,15,15,13,14,13,16,14,15,15,15,16,16,15,16,15,17,16,12,13,13,15,15,13,14,14,16,16,12,14,13,16,15,15,16,16,17,17,15,16,15,17,16,14,15,15,16,16,14,15,15,16,16,15,16,16,17,16,16,16,16,16,17,17,18,17,18,17,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,17,17,18,18,18,16,17,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,12,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,10,11,13,13,11,12,13,13,15,12,12,12,15,14,7,9,9,12,11,9,10,10,13,13,9,10,10,13,12,11,12,12,14,15,11,12,11,15,13,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,13,14,14,14,16,14,15,15,16,16,10,12,11,14,13,12,13,12,14,14,11,12,12,15,13,14,15,15,16,16,13,14,13,16,14,7,9,9,11,12,9,10,11,12,13,9,10,10,13,12,11,12,13,14,15,11,12,12,14,14,9,10,10,12,13,10,10,12,12,14,11,12,11,13,13,12,12,14,13,15,13,13,13,15,15,9,10,10,12,13,10,11,12,13,14,10,11,10,13,12,13,13,14,15,16,12,13,12,15,13,12,13,13,14,14,12,12,13,14,15,13,14,14,15,15,14,13,15,13,16,15,16,15,17,16,11,12,12,14,14,13,13,14,15,15,12,13,12,15,14,15,15,16,16,17,14,14,13,16,13,7,9,9,12,11,9,10,10,12,13,9,11,10,13,12,11,12,12,14,15,11,12,12,15,14,9,10,11,13,13,10,11,12,13,14,10,12,12,14,13,12,13,13,14,16,12,13,13,16,15,9,11,9,13,11,10,12,11,13,13,10,12,10,14,12,12,13,13,15,15,12,13,12,16,14,12,12,13,14,15,12,13,14,14,15,13,14,14,15,15,14,14,15,15,17,15,16,15,17,16,11,13,11,15,13,13,14,13,15,14,12,14,12,16,13,15,15,15,16,16,14,15,14,17,14,10,11,12,14,14,12,12,13,14,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,16,12,12,13,15,15,13,13,14,15,16,13,14,14,16,16,15,15,16,16,17,15,16,16,17,17,11,12,13,14,15,13,13,14,15,16,12,13,13,15,15,15,15,16,16,17,15,15,15,16,16,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,16,18,17,17,17,18,18,14,15,15,16,16,15,16,16,16,17,15,15,15,16,16,17,17,17,18,18,16,16,16,17,16,10,12,11,14,13,12,13,13,15,15,11,13,12,15,14,14,15,15,16,16,14,15,14,17,15,12,13,13,15,15,13,13,14,16,16,13,14,14,16,16,15,15,15,16,17,15,16,16,17,17,12,13,12,15,12,13,14,13,16,14,12,14,12,16,13,15,16,15,17,16,14,16,14,17,15,14,15,15,16,17,15,15,16,17,17,15,16,16,17,17,16,16,17,17,18,17,18,17,18,18,14,15,14,17,14,15,16,15,17,15,15,16,15,17,15,17,17,17,18,17,16,17,16,18,16,9,11,11,14,14,11,12,12,14,14,11,12,12,15,14,13,14,14,16,16,13,15,14,16,16,10,11,12,14,14,11,12,13,15,15,12,13,13,15,15,13,14,15,16,17,14,15,15,17,16,11,12,12,15,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,15,17,16,12,13,14,15,16,13,14,14,15,16,13,14,15,16,16,15,15,16,16,18,16,16,16,18,17,14,14,14,16,15,15,15,15,17,16,14,15,15,17,16,16,17,17,18,17,16,16,16,18,16,10,12,12,14,14,11,12,13,15,15,12,13,13,15,15,13,14,15,16,17,14,15,15,17,16,11,12,13,14,15,12,12,14,15,16,13,13,14,15,16,14,14,15,16,17,15,15,16,17,17,12,13,13,15,15,13,14,14,16,16,13,14,13,16,15,15,16,15,17,17,15,16,15,17,16,13,13,15,14,17,14,13,16,15,17,15,14,16,15,17,15,15,17,16,18,16,16,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,17,17,17,18,18,16,17,16,18,17,10,12,11,14,14,11,12,13,15,15,12,13,12,15,15,14,15,15,16,16,14,15,15,17,16,11,12,12,15,15,12,13,13,15,15,13,14,13,16,15,14,15,15,16,16,15,16,15,17,16,11,13,13,15,15,13,14,14,15,15,12,14,13,16,15,15,16,15,17,17,15,16,15,17,16,13,15,14,16,16,14,15,14,16,16,15,16,15,17,16,15,16,16,16,17,16,17,16,18,17,14,15,15,16,16,15,16,16,17,17,15,15,15,17,16,17,17,17,18,18,16,16,16,18,16,12,13,13,15,16,13,14,14,15,16,13,14,14,16,16,15,15,16,16,18,15,16,16,17,17,13,13,14,15,16,14,14,15,15,17,14,15,15,16,17,15,15,17,16,18,16,16,17,17,17,13,14,14,16,16,14,15,15,17,17,14,15,14,17,16,16,17,16,17,18,16,17,16,18,17,15,15,16,14,17,16,15,17,14,18,16,16,16,15,18,16,16,18,15,19,18,18,18,17,19,15,16,16,18,17,16,17,17,18,17,16,17,16,18,17,18,18,18,19,19,17,18,16,18,17,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,16,16,16,17,15,16,16,17,16,12,14,13,16,15,13,13,14,15,16,14,15,14,17,15,15,15,16,16,17,16,17,16,18,17,12,13,14,15,16,14,15,15,16,16,13,14,13,16,15,16,16,16,17,17,15,16,15,17,15,15,16,15,17,16,15,15,15,16,16,16,17,16,18,16,16,15,16,15,17,17,18,17,18,17,15,15,16,17,17,16,16,17,17,17,15,16,15,17,16,18,18,18,18,18,16,17,16,18,15,9,11,11,14,14,11,12,12,14,15,10,12,12,15,14,13,14,15,16,16,13,14,14,16,16,11,12,12,14,15,12,12,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,16,10,12,12,14,14,12,13,13,15,15,11,13,12,15,15,14,15,15,16,17,13,15,14,16,16,14,14,14,15,16,14,15,15,16,17,14,15,15,16,17,16,16,17,16,18,16,17,17,17,17,12,14,13,16,15,13,15,14,16,16,13,14,14,16,15,16,16,16,17,17,15,16,15,17,16,10,11,11,14,14,12,12,13,14,15,11,13,12,15,14,14,15,15,16,17,14,15,15,16,16,12,13,13,15,15,12,13,14,15,16,13,14,14,15,15,15,15,16,16,17,15,15,16,17,17,11,12,12,15,15,13,13,14,15,16,12,13,13,15,15,15,15,16,16,17,14,15,15,16,16,14,15,15,16,16,15,15,15,16,17,15,16,16,17,17,16,16,17,16,18,17,17,17,17,18,13,14,15,16,16,15,15,16,16,17,14,14,14,16,16,16,16,17,17,18,16,16,16,17,16,10,12,12,14,14,12,13,13,15,15,11,13,12,15,15,14,15,15,16,17,13,15,14,17,16,12,13,13,15,15,13,13,14,15,16,13,14,14,16,16,15,15,16,16,17,15,15,16,17,17,11,13,12,15,14,13,14,13,16,15,12,14,12,16,15,15,16,15,17,17,14,15,14,17,16,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,17,18,17,17,17,18,18,13,15,13,17,14,14,16,14,17,16,14,15,13,17,15,16,17,16,18,17,15,17,15,18,16,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,16,16,16,17,15,16,16,17,16,12,14,13,16,15,13,13,14,15,16,14,15,15,16,16,16,15,16,16,17,16,16,16,17,17,12,13,14,15,16,14,14,15,15,17,13,14,13,16,15,16,16,17,17,18,15,16,15,17,15,15,16,15,17,17,15,15,16,16,17,16,17,16,17,17,16,15,17,15,18,17,18,17,18,18,15,15,16,16,17,16,16,17,16,18,15,15,15,16,16,17,17,18,17,18,16,16,15,17,15,12,13,13,15,15,13,14,14,16,16,13,14,14,16,16,15,16,16,17,18,15,16,15,18,16,13,14,14,16,16,14,14,15,16,17,14,15,15,17,17,16,16,17,17,18,16,16,17,18,17,13,14,13,16,14,14,15,15,17,16,14,15,14,17,15,16,17,17,18,17,15,17,15,18,16,15,16,16,17,17,16,16,17,17,18,16,17,17,18,18,17,16,18,17,19,18,18,18,18,18,15,16,15,17,14,16,16,16,18,15,16,17,15,18,14,18,18,18,18,17,17,18,16,19,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,7,7,5,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,5,7,8,8,9,10,8,9,10,8,9,10,9,10,12,10,11,11,8,10,10,10,11,11,9,11,11,5,8,7,8,9,9,8,10,9,8,10,10,9,11,11,10,11,11,8,10,9,10,11,11,9,12,10,5,8,8,7,9,10,8,10,9,7,9,9,9,10,11,9,11,11,8,10,9,10,11,11,10,11,11,7,9,9,9,10,11,9,11,11,9,9,11,10,10,13,11,11,12,9,11,11,11,12,13,11,13,12,7,9,9,9,11,11,9,11,10,9,11,10,10,11,12,11,13,12,9,11,11,11,12,13,11,13,11,5,8,8,8,9,10,7,10,9,8,9,10,10,11,11,10,11,11,7,9,9,9,11,11,9,11,10,7,9,9,9,10,11,9,11,11,9,11,11,11,11,13,11,13,12,9,10,11,11,12,13,10,12,11,7,9,9,9,11,11,9,11,10,9,11,11,11,12,13,11,13,12,9,11,9,11,12,11,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,12,14,15,18,20,20,5,3,4,6,9,11,15,19,9,4,3,4,7,9,13,18,11,6,3,3,5,8,13,19,14,9,6,5,7,10,16,20,16,11,9,8,10,10,14,16,21,14,13,11,8,7,11,14,21,14,13,9,6,5,10,12,0,0,0,0,255,255,255,255,255,255,255,255,8,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,F.GLOBAL_BASE+441297),d3([1,0,0,0,1,0,0,0,2,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,240,5,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,184,214,6,0,0,0,0,0,0,0,0,0,224,214,6,0,0,0,0,0,0,0,0,0,8,215,6,0,48,215,6,0,0,0,0,0,0,0,0,0,88,215,6,0,128,215,6,0,0,0,0,0,0,0,0,0,168,215,6,0,208,215,6,0,0,0,0,0,0,0,0,0,248,215,6,0,32,216,6,0,208,215,6,0,0,0,0,0,72,216,6,0,112,216,6,0,208,211,6,0,248,211,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,120,214,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,112,214,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,211,6,0,128,211,6,0,0,0,0,0,0,0,0,0,168,211,6,0,208,211,6,0,248,211,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,136,213,6,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,56,214,6,0,0,0,0,0,2,0,0,0,25,0,0,0,80,213,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,112,213,6,0,0,0,0,0,2,0,0,0,9,0,0,0,48,213,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,64,213,6,0,0,0,0,0,1,0,0,0,25,0,0,0,168,212,6,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,200,212,6,0,0,0,0,0,1,0,0,0,25,0,0,0,32,212,6,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,64,212,6,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,4,4,5,5,5,4,5,4,5,5,5,5,6,5,6,5,6,5,6,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,8,8,9,8,9,9,10,10,10,10,4,6,5,8,7,9,9,9,9,10,9,10,10,4,5,6,7,8,9,9,9,9,9,10,9,10,8,9,8,9,8,10,9,11,9,12,10,11,10,8,8,9,8,9,9,10,9,11,10,11,10,12,9,10,10,11,10,11,11,12,11,12,12,12,12,9,10,10,11,11,11,11,11,12,12,12,12,12,10,11,11,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,13,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,11,13,12,12,12,13,12,12,12,12,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,5,13,9,9,12,16,18,4,2,20,6,7,10,15,20,10,7,5,5,6,8,10,13,8,5,5,3,5,7,10,11,9,7,6,5,5,7,9,9,11,10,8,7,6,6,8,8,15,15,10,10,9,7,8,9,17,19,13,12,10,8,9,9,5,0,0,0,243,0,0,0,232,4,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,224,5,7,0,0,0,0,0,5,0,0,0,53,12,0,0,152,248,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,4,7,0,0,0,0,0,5,0,0,0,243,0,0,0,144,247,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,136,248,6,0,0,0,0,0,5,0,0,0,243,0,0,0,136,246,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,128,247,6,0,0,0,0,0,5,0,0,0,243,0,0,0,128,245,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,120,246,6,0,0,0,0,0,5,0,0,0,53,12,0,0,48,233,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,104,245,6,0,0,0,0,0,5,0,0,0,53,12,0,0,224,220,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,24,233,6,0,0,0,0,0,1,0,0,0,7,0,0,0,184,220,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,192,220,6,0,0,0,0,0,5,0,0,0,243,0,0,0,176,219,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,168,220,6,0,0,0,0,0,5,0,0,0,243,0,0,0,168,218,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,160,219,6,0,0,0,0,0,5,0,0,0,243,0,0,0,160,217,6,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,152,218,6,0,0,0,0,0,5,0,0,0,243,0,0,0,152,216,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,144,217,6,0,0,0,0,0,1,9,9,7,9,9,8,8,9,9,9,9,9,9,9,8,9,9,7,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,6,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,5,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,5,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,6,7,7,7,7,7,7,8,8,9,9,9,9,7,7,8,8,8,9,9,9,9,8,8,6,7,7,8,8,8,8,8,8,9,8,8,9,8,9,9,8,8,10,8,8,10,9,9,10,8,8,6,6,6,8,6,6,8,7,7,8,7,7,10,8,8,9,7,7,9,7,7,10,8,8,9,7,7,7,7,7,10,8,8,11,9,9,10,9,9,11,9,9,11,8,8,11,9,9,12,9,9,12,8,8,7,7,7,10,9,9,10,9,9,10,9,9,11,10,10,10,9,9,11,9,10,11,10,11,10,9,9,9,8,8,10,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,9,9,11,10,10,11,9,9,8,8,8,11,9,9,11,9,9,11,9,9,12,9,9,12,8,8,11,9,9,12,9,9,12,8,8,8,7,7,10,9,9,10,9,9,10,9,9,11,11,11,11,9,9,11,10,10,11,11,11,11,9,9,10,9,9,11,9,9,11,9,10,11,10,10,11,10,10,11,9,9,11,10,10,11,10,10,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,7,7,7,8,8,7,8,8,7,9,9,11,11,11,9,8,8,8,9,9,12,11,12,9,8,8,6,7,7,10,11,11,10,10,10,11,11,11,14,14,14,12,11,12,11,11,11,15,15,14,13,12,12,5,6,6,8,5,5,8,7,7,8,7,7,12,10,10,10,7,6,9,8,8,12,10,10,10,6,6,7,8,8,12,10,10,12,10,10,11,10,10,16,14,14,13,10,10,12,10,10,15,14,14,14,10,10,7,7,7,13,11,11,13,11,11,12,11,11,16,14,14,14,12,12,12,11,11,18,15,15,14,12,12,10,9,10,14,11,11,13,11,11,12,11,11,17,14,14,14,11,11,13,11,11,16,15,15,14,11,11,7,8,8,13,11,11,12,10,10,12,10,10,16,14,13,13,10,10,12,10,10,17,14,14,14,10,10,8,7,7,12,11,11,13,11,11,12,11,11,16,15,14,14,12,12,12,11,11,16,15,15,14,12,12,11,10,10,14,11,11,13,11,11,13,11,11,17,14,14,14,11,11,13,11,11,18,14,15,15,11,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,1,7,6,15,15,7,8,8,15,15,8,8,8,15,15,0,13,13,16,16,0,14,14,16,16,7,9,9,16,16,10,11,11,17,17,10,8,8,15,16,0,14,14,18,18,0,14,14,16,16,9,9,9,16,16,12,11,11,17,17,10,9,9,15,15,0,14,14,19,19,0,14,14,16,16,0,15,15,18,17,0,0,0,20,20,0,13,13,16,16,0,17,17,22,20,0,15,15,17,17,0,15,15,18,18,0,22,21,20,21,0,13,13,16,16,0,18,18,0,22,0,15,15,17,17,6,7,7,13,13,9,10,10,15,15,11,10,10,15,15,0,21,22,18,18,0,0,0,18,18,10,10,10,15,15,12,13,13,17,17,12,11,11,15,15,0,22,22,18,18,0,0,21,18,18,12,11,11,15,15,15,14,14,18,18,13,11,11,15,15,0,0,21,18,19,0,21,22,18,19,0,22,0,18,19,0,0,0,0,0,0,21,21,18,18,0,22,0,0,21,0,0,0,19,18,0,0,0,18,19,0,0,0,0,0,0,20,20,18,17,0,0,22,0,21,0,0,0,19,19,6,6,6,13,13,8,6,6,11,11,9,7,7,13,13,0,10,10,11,11,0,12,12,14,14,9,8,8,14,14,12,10,10,13,13,10,7,7,13,13,0,11,11,15,15,0,11,11,13,13,9,8,8,14,14,13,10,10,13,14,11,7,7,13,13,0,11,11,15,15,0,11,11,13,13,0,12,12,15,15,0,21,21,17,17,0,10,10,13,13,0,14,14,20,20,0,12,12,13,13,0,12,12,15,15,0,21,22,17,18,0,10,10,13,13,0,16,16,20,21,0,12,12,13,13,0,11,11,13,13,0,12,12,16,16,0,12,12,16,16,0,16,16,0,21,0,17,18,0,0,0,12,12,15,15,0,15,15,18,18,0,12,12,16,16,0,16,16,21,22,0,17,17,22,21,0,12,12,16,16,0,15,15,19,19,0,12,12,16,16,0,16,16,22,22,0,17,16,22,0,0,17,18,0,0,0,0,0,0,0,0,15,15,21,20,0,19,20,0,22,0,18,18,0,0,0,18,17,0,0,0,0,0,0,0,0,16,16,22,21,0,20,20,0,22,0,20,19,0,0,0,11,11,12,12,0,10,10,11,11,0,11,11,12,12,0,12,12,10,10,0,13,13,12,12,0,11,11,13,13,0,13,13,12,12,0,10,10,12,12,0,13,13,14,13,0,12,12,12,12,0,12,12,13,13,0,14,14,13,13,0,10,10,12,12,0,13,13,14,14,0,13,12,12,12,0,14,14,14,14,0,21,21,16,16,0,12,12,12,12,0,16,16,20,21,0,13,13,11,11,0,14,14,14,14,0,20,20,16,15,0,12,12,12,12,0,17,17,20,20,0,13,13,11,11,7,8,8,16,16,11,10,10,15,15,12,10,10,17,17,0,14,14,16,15,0,15,15,17,17,11,9,9,16,16,14,12,12,17,17,13,9,9,16,15,0,14,14,19,18,0,14,14,16,16,12,10,10,17,18,16,13,13,17,18,14,10,10,16,16,0,14,14,19,19,0,14,15,17,17,0,15,15,18,19,0,0,0,20,20,0,13,13,17,17,0,17,18,0,22,0,15,15,16,17,0,15,15,18,18,0,0,0,20,21,0,14,14,17,17,0,19,18,0,0,0,16,16,17,17,8,7,7,14,14,12,11,11,15,15,13,11,11,15,15,0,0,0,18,19,0,21,20,18,18,12,10,11,15,16,14,13,13,18,18,14,11,11,15,15,0,20,20,19,18,0,20,0,18,18,13,11,11,16,16,17,15,15,19,19,14,12,12,15,15,0,21,0,18,20,0,22,22,18,19,0,22,22,19,19,0,0,0,0,0,0,21,22,19,18,0,0,0,0,21,0,0,0,19,19,0,0,22,20,20,0,0,0,0,0,0,22,0,18,18,0,0,0,0,22,0,0,0,19,20,11,10,10,14,14,14,11,11,13,13,14,11,11,15,15,0,14,13,12,12,0,15,15,16,16,13,11,11,15,15,16,13,13,15,15,15,10,10,14,15,0,14,14,16,16,0,14,14,15,15,13,11,11,15,15,18,14,14,15,15,15,10,10,15,14,0,14,14,16,16,0,14,14,15,15,0,15,15,17,16,0,21,22,18,18,0,13,13,14,14,0,18,17,20,21,0,15,15,14,14,0,15,16,16,17,0,0,0,19,18,0,13,13,15,14,0,19,19,0,0,0,15,15,14,14,0,12,12,14,13,0,13,13,16,16,0,12,12,16,16,0,16,16,22,0,0,17,18,0,22,0,13,13,16,16,0,15,15,18,18,0,12,12,16,16,0,16,16,22,22,0,17,17,0,0,0,13,13,17,17,0,16,16,19,20,0,12,12,17,17,0,17,17,22,0,0,17,17,22,21,0,18,18,0,0,0,0,0,0,0,0,16,16,21,21,0,19,19,0,0,0,18,18,0,22,0,18,18,0,22,0,0,0,0,0,0,16,16,22,0,0,20,20,0,0,0,19,18,0,0,0,12,12,15,15,0,12,12,15,14,0,13,13,15,15,0,14,14,14,14,0,15,15,16,16,0,13,13,15,16,0,15,15,16,16,0,12,12,15,15,0,14,14,16,16,0,14,14,15,15,0,13,13,15,16,0,15,15,16,16,0,12,12,15,15,0,15,15,17,17,0,14,14,15,15,0,15,15,17,17,0,21,21,19,19,0,13,13,14,14,0,17,17,22,0,0,14,14,15,15,0,15,15,17,17,0,22,0,18,20,0,13,13,15,15,0,18,18,0,22,0,15,15,14,15,8,8,8,17,16,12,10,10,16,16,13,10,10,17,16,0,15,15,17,17,0,15,15,17,17,12,11,11,18,18,15,12,12,18,18,15,10,10,16,17,0,14,14,18,18,0,14,14,17,17,13,10,10,16,16,17,14,14,17,17,15,10,10,16,15,0,15,15,19,20,0,14,14,15,16,0,16,16,19,19,0,0,0,21,22,0,13,13,17,17,0,18,17,0,21,0,15,15,17,17,0,15,15,18,19,0,0,22,0,21,0,13,13,16,17,0,19,19,0,22,0,16,15,16,16,9,8,8,14,14,12,11,11,15,15,13,11,11,15,15,0,21,20,19,18,0,0,0,19,18,12,11,11,16,15,15,13,13,17,18,14,11,11,15,15,0,22,22,19,18,0,22,21,18,18,14,11,11,15,15,17,14,14,18,18,15,12,12,15,15,0,22,22,20,19,0,0,21,18,18,0,0,22,20,20,0,0,0,0,0,0,20,21,18,18,0,0,0,21,21,0,0,0,20,19,0,22,21,19,19,0,0,0,0,0,0,0,22,17,18,0,0,22,0,22,0,22,0,19,19,0,11,11,15,15,0,11,11,14,14,0,12,12,15,15,0,15,15,14,14,0,16,16,16,16,0,12,12,16,16,0,14,14,16,16,0,11,11,15,15,0,15,15,17,17,0,15,15,15,15,0,12,12,16,16,0,14,14,15,15,0,11,11,15,15,0,15,15,17,17,0,15,15,14,15,0,16,16,17,17,0,0,0,19,19,0,14,14,15,15,0,18,18,21,0,0,15,15,14,15,0,16,16,17,17,0,21,0,19,19,0,14,14,15,15,0,20,20,22,0,0,16,15,14,14,0,12,12,13,13,0,12,12,16,16,0,12,12,16,16,0,16,16,22,21,0,18,17,21,0,0,13,13,16,16,0,15,15,18,19,0,12,12,16,16,0,16,17,22,0,0,17,17,0,22,0,13,13,17,16,0,15,15,19,19,0,12,12,16,16,0,16,16,21,20,0,17,16,22,0,0,18,18,22,21,0,0,0,0,0,0,15,16,21,21,0,19,19,0,0,0,18,17,0,0,0,18,18,21,0,0,0,0,0,0,0,16,16,22,22,0,20,21,0,0,0,18,19,0,22,0,13,13,16,16,0,12,12,15,15,0,13,13,16,16,0,14,14,15,15,0,15,15,17,17,0,13,13,17,16,0,15,15,17,17,0,12,12,16,16,0,15,15,17,17,0,14,14,16,16,0,13,13,16,17,0,15,15,17,17,0,12,12,16,16,0,14,14,17,17,0,14,14,16,16,0,16,16,17,17,0,21,0,21,19,0,13,13,16,16,0,17,17,0,0,0,15,15,16,16,0,16,15,18,18,0,22,0,20,20,0,13,13,15,15,0,18,18,0,0,0,15,15,15,15,0,12,12,17,17,0,14,14,17,17,0,14,14,17,17,0,17,17,18,17,0,17,17,19,18,0,13,13,17,17,0,16,16,18,18,0,13,13,16,16,0,17,17,19,19,0,16,16,17,17,0,13,13,18,18,0,17,17,18,18,0,13,13,17,17,0,17,17,19,19,0,16,17,17,17,0,17,17,19,19,0,21,0,21,19,0,14,14,16,16,0,20,19,0,21,0,16,16,16,16,0,17,18,19,19,0,0,0,0,21,0,15,15,16,17,0,21,20,0,0,0,17,18,16,17,0,9,9,14,14,0,14,14,15,16,0,14,14,15,15,0,0,0,18,18,0,21,0,18,19,0,12,12,15,15,0,16,16,17,17,0,14,14,14,14,0,22,0,19,18,0,22,0,17,18,0,14,14,16,15,0,18,18,19,18,0,14,15,15,15,0,0,21,20,20,0,0,0,18,18,0,21,21,19,19,0,0,0,0,0,0,21,21,18,18,0,22,0,20,20,0,22,0,19,19,0,22,0,19,20,0,0,0,0,0,0,0,21,17,18,0,0,0,22,22,0,0,0,19,18,0,18,20,16,16,0,21,20,17,17,0,0,21,18,18,0,22,21,18,18,0,0,22,19,19,0,20,20,17,17,0,0,0,18,18,0,19,20,17,17,0,22,0,19,21,0,22,21,18,18,0,20,19,17,18,0,0,0,19,19,0,20,20,17,17,0,22,22,21,21,0,20,0,18,18,0,22,22,18,18,0,0,0,20,22,0,20,20,16,16,0,0,0,21,0,0,21,20,16,17,0,22,0,19,20,0,0,0,21,20,0,19,21,17,17,0,0,0,0,0,0,21,21,17,17,0,12,12,13,13,0,14,14,16,16,0,14,14,16,16,0,18,18,0,0,0,19,18,22,0,0,13,13,16,16,0,16,16,18,18,0,13,13,16,16,0,17,18,21,0,0,18,18,21,0,0,13,13,16,16,0,17,17,19,20,0,13,13,16,17,0,18,18,21,0,0,18,18,21,0,0,18,19,0,21,0,0,0,0,0,0,16,16,21,20,0,20,20,0,0,0,18,19,0,0,0,18,18,0,0,0,0,0,0,0,0,16,16,0,21,0,22,22,0,0,0,19,19,0,0,0,16,16,19,20,0,17,16,22,21,0,17,17,21,20,0,19,18,0,22,0,19,19,22,22,0,16,15,22,22,0,19,19,0,21,0,15,15,20,20,0,18,19,0,21,0,18,18,22,22,0,16,16,21,20,0,20,19,21,22,0,16,15,20,20,0,19,19,0,22,0,18,18,21,0,0,19,18,21,22,0,0,0,0,0,0,16,16,19,21,0,20,22,0,22,0,18,18,20,21,0,19,18,0,22,0,0,0,22,0,0,16,16,20,20,0,21,21,0,0,0,18,18,21,0,0,12,12,17,17,0,15,14,17,17,0,14,14,18,18,0,17,17,17,18,0,18,18,18,18,0,13,13,18,18,0,16,17,19,18,0,13,13,16,17,0,17,17,18,19,0,17,17,17,17,0,13,13,17,17,0,17,18,18,18,0,13,13,16,16,0,18,18,19,20,0,16,17,17,16,0,17,18,19,18,0,0,0,22,21,0,15,15,16,16,0,20,20,21,22,0,17,17,16,16,0,16,17,18,18,0,0,0,21,21,0,15,15,16,16,0,21,20,0,0,0,17,17,16,16,0,10,10,14,14,0,14,14,15,15,0,14,14,15,15,0,22,0,18,18,0,0,0,19,19,0,13,13,15,16,0,17,16,18,18,0,14,14,15,15,0,21,21,19,18,0,22,21,18,17,0,14,14,15,15,0,18,18,19,18,0,15,15,14,14,0,22,21,19,19,0,22,21,17,18,0,0,0,19,19,0,0,0,0,0,0,20,22,17,17,0,0,22,22,20,0,0,0,19,18,0,21,22,19,18,0,0,0,0,0,0,22,22,17,18,0,0,0,21,22,0,0,0,19,18,0,20,20,17,17,0,21,21,17,18,0,21,22,18,18,0,21,0,18,18,0,22,0,19,19,0,19,21,18,18,0,0,22,18,18,0,22,21,17,17,0,22,0,20,20,0,0,0,18,18,0,22,21,18,18,0,21,0,19,19,0,20,21,17,17,0,0,22,22,20,0,21,22,17,17,0,0,21,19,18,0,0,0,21,21,0,21,20,16,17,0,0,0,0,0,0,21,0,17,17,0,21,0,19,20,0,0,0,20,22,0,20,20,17,17,0,0,0,0,0,0,21,21,17,17,0,12,12,13,13,0,14,14,16,16,0,14,14,16,16,0,18,18,21,0,0,19,19,22,0,0,13,13,16,16,0,16,16,18,18,0,13,13,16,16,0,18,18,21,22,0,18,18,0,22,0,13,13,16,16,0,17,17,20,18,0,13,13,16,16,0,19,18,0,22,0,18,18,22,21,0,18,19,0,0,0,0,0,0,0,0,16,16,21,21,0,21,21,0,0,0,18,19,0,0,0,19,19,21,0,0,0,0,0,0,0,16,16,0,21,0,20,20,0,0,0,20,20,0,0,0,16,16,21,20,0,18,17,21,22,0,17,18,0,21,0,18,19,22,22,0,19,19,0,22,0,16,17,21,22,0,20,19,0,0,0,16,16,20,21,0,19,19,0,0,0,19,19,0,22,0,17,17,21,21,0,19,20,0,0,0,16,16,0,20,0,19,20,0,21,0,18,18,0,22,0,19,20,22,22,0,0,0,0,22,0,17,17,0,21,0,21,21,0,0,0,18,19,23,21,0,20,19,0,0,0,0,0,0,0,0,17,17,0,20,0,0,0,0,0,0,19,19,23,22,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,4,5,5,9,9,12,9,9,12,12,12,10,10,13,13,13,11,11,12,12,13,13,13,12,12,13,10,10,13,13,13,13,13,13,13,13,10,10,13,12,13,11,11,13,13,13,14,14,13,12,13,10,10,13,13,12,13,13,13,13,13,10,10,12,12,13,11,11,13,13,13,14,14,12,12,13,12,12,13,13,13,13,13,13,13,13,11,11,12,12,13,11,11,13,13,13,14,14,12,12,13,14,14,13,13,14,13,13,14,14,14,14,14,12,12,13,14,14,13,13,14,14,14,12,12,12,8,8,12,12,13,12,12,11,11,13,11,11,11,11,14,12,12,11,11,14,12,12,10,11,14,12,12,12,12,14,12,12,12,12,13,13,13,11,11,14,12,12,11,11,14,12,12,12,12,14,12,12,12,12,14,12,12,12,12,14,13,13,11,11,14,12,12,11,11,14,12,12,12,12,14,13,13,12,12,14,12,12,12,12,14,13,13,11,11,14,12,12,11,11,14,13,13,11,11,15,13,13,12,12,14,12,12,12,12,15,13,13,12,12,14,12,12,11,11,15,13,13,11,11,12,9,9,11,11,13,7,7,11,11,13,8,8,12,12,14,10,10,10,10,14,14,14,11,11,14,8,8,12,12,14,14,14,12,12,14,7,7,11,11,14,9,9,12,12,14,14,14,11,11,14,8,8,12,12,14,14,14,12,12,14,7,7,11,11,14,9,9,12,12,14,14,14,11,11,14,10,10,12,12,14,14,14,13,13,14,9,9,11,11,14,10,10,12,11,15,14,14,11,11,14,15,15,12,12,15,14,14,14,14,15,14,14,11,11,15,14,14,12,12,15,14,14,11,11,14,11,11,10,10,15,10,10,10,10,15,10,10,10,10,15,11,11,9,9,15,12,13,9,9,15,11,11,11,11,15,13,13,11,11,15,10,10,10,10,15,11,11,10,10,15,13,13,11,11,15,11,11,11,11,15,13,13,11,11,15,10,10,10,10,15,11,11,10,10,15,13,13,10,11,15,12,12,11,11,15,13,13,11,10,15,11,11,10,10,15,11,12,10,9,15,13,13,10,10,15,14,14,11,11,15,13,13,11,11,15,14,14,10,10,15,13,13,10,10,15,14,14,10,10,14,13,13,10,10,15,13,13,10,10,15,13,13,10,10,14,14,14,8,9,15,14,14,9,9,15,14,14,11,11,15,14,14,10,10,15,14,14,10,10,15,14,14,11,11,15,14,14,10,10,15,14,14,11,11,15,14,14,10,10,15,14,14,10,10,15,14,14,10,10,15,14,14,9,9,15,14,14,11,11,15,14,14,11,11,15,14,14,10,10,15,14,14,10,10,14,14,14,9,9,15,15,15,11,11,15,14,14,12,12,15,15,15,10,10,15,14,15,10,10,15,15,15,9,9,15,10,10,13,13,17,8,8,12,12,17,10,9,13,13,18,11,11,12,12,18,14,14,12,12,17,9,9,13,13,17,13,13,12,12,18,8,8,12,12,18,10,10,12,12,18,14,14,12,12,18,10,10,13,13,18,13,13,13,13,18,9,9,12,12,18,10,10,13,13,18,14,14,12,12,18,11,11,13,13,18,14,14,13,13,18,10,10,12,12,17,11,11,12,12,18,14,14,12,12,18,14,14,13,13,18,14,14,13,13,19,14,15,12,12,18,14,14,12,12,18,15,15,12,12,13,7,7,11,11,14,15,15,11,11,14,16,15,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,11,12,14,15,15,12,12,13,15,15,11,11,14,15,15,11,11,15,15,15,12,12,14,15,15,12,12,14,16,16,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,15,15,15,12,12,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,14,15,12,12,15,15,15,12,12,15,16,16,12,12,15,15,15,12,12,14,15,15,12,12,15,15,15,12,12,13,13,13,11,11,14,14,15,11,11,14,14,14,12,12,14,15,15,10,10,15,15,15,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,15,15,12,12,15,15,15,11,11,14,15,15,12,12,14,14,15,11,11,14,15,15,11,11,14,15,15,12,12,15,15,15,11,11,15,15,15,12,12,14,15,15,12,12,14,15,15,10,10,14,15,15,11,11,15,15,15,10,10,15,15,15,12,12,15,15,15,14,14,15,15,15,11,11,15,15,15,11,11,15,15,15,11,11,14,10,10,10,10,15,9,9,12,11,15,10,10,12,12,15,11,11,11,11,15,13,13,12,12,16,10,10,12,12,15,13,13,12,12,15,9,9,11,11,15,10,10,13,12,15,13,13,11,11,15,10,10,12,12,15,13,13,12,12,15,9,9,11,11,15,10,10,12,12,15,13,13,11,11,15,11,11,12,12,15,13,13,13,13,15,10,10,11,11,15,11,11,12,12,15,13,14,11,11,15,14,14,13,13,16,14,14,20,19,15,14,14,11,11,15,13,14,12,12,15,14,14,11,11,14,13,13,10,10,14,14,13,11,11,15,13,14,12,12,15,14,14,12,12,15,14,14,11,11,15,14,14,12,12,15,15,14,13,13,15,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,13,13,15,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,15,14,14,11,11,15,15,15,12,12,15,15,15,13,13,16,14,14,12,12,15,15,15,13,13,15,15,15,12,12,15,15,15,12,12,14,10,10,13,13,17,9,9,12,12,17,9,9,13,13,17,11,11,12,12,18,14,14,12,12,18,10,10,13,13,18,14,13,12,12,18,9,9,12,12,18,10,10,12,13,18,14,14,12,12,17,9,9,12,12,17,13,14,12,12,17,9,9,12,12,17,10,10,12,12,17,14,14,11,11,18,11,11,12,12,18,14,14,12,13,18,10,10,12,12,18,11,11,12,12,18,14,14,11,11,18,15,15,12,12,18,14,14,13,13,18,14,15,12,12,17,14,14,12,12,17,15,15,12,12,13,7,7,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,14,15,15,11,11,14,15,15,12,12,14,15,15,11,11,15,15,15,11,11,15,15,15,12,12,14,15,15,12,12,14,15,16,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,15,15,15,12,12,15,16,16,12,12,15,15,15,12,12,15,15,15,12,12,15,15,15,12,12,13,13,13,12,12,14,14,14,11,11,14,14,14,12,12,14,14,14,10,10,15,15,15,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,14,14,12,12,15,15,14,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,14,14,11,11,15,14,14,10,10,14,15,15,12,12,14,14,14,12,12,14,15,15,10,10,14,15,15,11,11,15,15,15,10,10,15,15,15,12,12,15,14,14,13,13,15,15,15,10,10,15,14,14,11,11,15,15,15,10,10,14,10,10,10,10,14,9,9,12,12,15,10,10,12,12,14,11,11,11,11,15,13,14,12,12,15,10,10,13,13,15,13,13,12,12,15,9,9,12,12,15,10,10,13,13,15,13,14,11,11,15,10,10,12,12,15,13,13,12,12,15,9,9,11,11,15,10,10,12,12,15,13,13,11,11,15,11,11,12,12,15,13,13,13,13,15,10,10,11,11,15,11,11,12,12,15,14,14,11,11,15,14,14,13,13,15,14,14,20,19,15,14,14,11,11,15,14,14,12,12,15,14,14,11,11,14,13,13,11,11,15,13,13,11,11,15,14,13,12,12,15,14,14,11,12,15,14,14,11,11,15,14,14,12,12,14,14,14,13,13,15,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,13,13,14,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,15,14,14,11,11,14,14,14,12,12,15,15,15,13,13,16,14,14,12,12,15,15,15,13,13,15,14,14,12,12,15,15,15,12,12,15,11,11,13,13,18,10,10,12,12,17,11,11,12,12,18,12,12,11,11,18,14,14,12,12,18,10,10,13,13,18,14,14,12,12,18,10,10,12,12,18,11,11,12,12,18,14,14,12,12,18,11,11,12,13,18,14,14,12,12,18,10,10,12,12,18,11,11,12,12,18,14,14,11,11,18,11,11,12,12,18,14,14,12,12,17,10,10,11,11,17,12,12,11,11,17,14,14,11,11,18,15,15,12,12,18,14,14,13,13,18,15,15,11,11,18,15,14,12,12,18,15,15,11,11,14,8,8,11,11,14,15,15,10,10,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,15,15,15,11,11,15,15,15,12,12,14,15,15,10,10,15,15,15,11,11,15,15,15,12,12,15,15,15,11,11,15,15,15,13,13,14,15,15,10,10,15,15,15,11,11,15,15,15,12,12,15,15,15,12,12,15,16,16,12,12,15,14,14,11,11,15,15,15,11,11,15,15,15,12,12,16,15,15,13,13,15,16,16,13,13,16,15,15,12,12,15,15,15,12,12,15,15,15,12,12,14,13,13,11,11,14,14,14,11,11,14,14,14,12,12,15,14,14,11,11,15,15,14,11,11,15,14,14,12,12,15,14,14,12,12,14,15,15,11,11,15,14,14,12,12,15,14,14,11,11,15,14,15,12,12,15,14,14,12,12,14,15,15,11,11,15,14,14,11,11,15,14,14,11,11,15,15,14,12,12,15,14,14,12,12,15,15,15,10,11,15,14,14,11,11,15,15,15,10,10,15,15,15,12,12,16,14,14,13,13,15,15,15,11,11,15,14,14,11,11,15,15,15,11,11,14,11,11,9,9,14,10,10,12,12,15,11,11,12,12,15,12,12,12,12,15,14,14,13,13,15,11,11,12,12,15,14,14,13,13,14,10,10,12,12,15,11,11,13,13,15,14,14,12,12,15,10,10,12,12,14,14,14,13,13,14,10,10,11,11,15,11,11,12,12,15,14,14,12,12,15,12,12,13,13,15,14,14,14,14,15,11,11,11,11,15,12,11,12,12,15,14,14,11,11,15,15,15,13,14,15,14,14,20,19,15,14,14,12,12,15,14,14,13,13,15,14,14,12,12,14,13,13,10,10,14,13,13,11,11,14,13,13,11,11,15,14,14,12,12,15,14,14,12,12,15,14,14,12,11,14,14,14,13,13,15,14,14,11,11,15,14,14,11,11,15,14,14,14,14,15,14,14,11,12,15,14,14,13,13,14,14,14,11,11,15,14,14,11,11,15,14,14,14,14,15,14,14,12,12,15,14,14,13,13,15,14,14,11,11,14,14,14,12,12,15,14,14,13,13,15,15,15,13,13,15,14,14,13,13,15,15,15,13,13,15,14,14,13,13,15,15,15,13,13,15,14,14,13,13,18,15,15,12,12,18,15,15,12,12,18,16,16,11,11,18,17,17,12,12,18,15,15,13,13,18,17,17,12,12,18,15,15,12,12,18,15,16,12,12,18,17,17,12,12,18,15,15,13,12,17,16,17,12,12,17,15,15,11,12,18,15,15,12,12,18,17,17,11,11,18,16,16,12,12,18,17,16,12,12,18,15,15,11,11,18,15,15,12,12,18,17,17,11,11,18,17,17,12,12,18,16,16,13,13,18,17,17,11,11,17,16,16,11,11,18,17,17,11,11,15,15,15,11,11,16,15,15,11,11,16,15,15,11,11,16,15,15,12,12,17,15,15,14,14,16,15,15,11,11,17,15,15,14,14,16,15,15,11,11,16,15,15,12,12,18,15,15,13,13,16,15,15,11,11,17,15,15,14,14,16,15,15,11,11,16,15,15,12,12,17,15,15,13,13,16,15,15,12,12,17,16,15,14,14,16,15,15,11,11,16,15,15,12,12,18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,18,14,15,13,13,18,15,15,14,14,18,15,15,13,13,15,13,13,12,12,15,14,14,12,12,16,14,14,12,12,16,14,14,12,12,17,14,15,12,12,16,14,14,12,12,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,17,14,14,12,12,16,14,14,12,12,17,14,14,13,13,15,15,15,11,11,16,14,14,12,12,17,14,14,12,12,16,15,15,12,12,17,14,14,13,12,16,15,15,11,11,16,14,14,12,12,17,15,15,11,11,17,15,15,13,13,17,14,14,13,13,18,15,15,12,12,17,14,14,12,12,17,15,15,12,12,14,15,15,9,9,14,15,15,12,12,15,16,15,13,13,15,15,15,14,14,15,15,15,21,19,15,15,15,13,13,15,15,15,19,19,15,15,15,12,12,15,16,16,14,14,15,15,15,19,19,15,16,15,13,13,15,16,16,19,20,15,15,15,12,13,15,16,16,14,14,15,15,15,20,19,15,15,15,14,14,15,16,16,19,19,15,15,15,14,13,15,15,15,14,14,15,15,15,19,19,15,16,16,20,19,15,17,16,21,20,15,15,15,20,19,15,16,16,20,20,15,15,15,19,20,14,13,13,10,10,14,14,14,11,11,14,14,14,12,12,15,14,14,13,13,15,15,14,20,20,15,14,14,12,12,14,14,14,19,19,15,14,14,11,11,15,14,14,12,12,15,14,14,20,19,15,14,14,12,12,14,14,14,20,20,14,14,14,11,11,15,14,14,12,12,15,14,14,20,21,15,14,14,13,13,15,14,14,20,20,15,14,14,12,12,15,14,14,13,13,14,15,15,20,20,15,15,15,20,19,15,14,14,20,19,15,15,15,20,20,15,14,14,21,20,15,15,15,20,20,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,6,7,7,7,8,8,7,8,8,10,11,11,9,8,8,8,8,8,11,11,12,9,8,8,5,7,7,9,11,11,10,11,11,10,11,11,12,14,14,11,12,12,10,12,12,13,14,14,12,12,12,5,6,6,7,6,6,8,7,7,8,7,7,11,10,10,10,7,7,9,8,8,12,11,11,10,7,7,7,7,7,11,10,10,12,10,10,11,10,10,15,13,13,13,10,10,12,11,11,15,13,13,14,11,11,7,7,7,11,11,11,12,11,11,12,11,11,14,14,14,13,12,12,12,12,12,16,15,15,14,12,12,0,10,10,0,11,11,0,12,12,0,11,11,0,14,14,0,11,11,0,12,12,0,15,15,0,11,11,7,8,8,12,11,10,12,10,10,12,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,12,11,11,12,11,11,15,14,14,14,12,12,13,12,12,15,14,14,15,13,13,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,13,13,0,15,14,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,5,5,0,8,8,0,8,8,0,9,9,0,10,10,0,8,8,0,8,8,0,10,10,0,8,8,0,7,7,0,8,8,0,7,7,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,7,7,0,6,6,0,7,7,0,7,7,0,10,10,0,6,6,0,7,7,0,10,10,0,5,5,0,8,8,0,7,7,0,8,8,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,7,7,0,6,6,0,9,10,0,10,10,0,10,10,0,11,11,0,9,9,0,10,10,0,11,11,0,9,9,0,8,8,0,8,8,0,8,8,0,9,9,0,9,9,0,7,7,0,8,8,0,9,9,0,7,7,0,8,8,0,7,7,0,7,7,0,8,8,0,9,9,0,7,7,0,7,7,0,8,8,0,6,6,0,6,6,0,10,10,0,10,10,0,10,10,0,12,12,0,9,9,0,10,10,0,12,12,0,9,9,0,8,8],"i8",L3,F.GLOBAL_BASE+446300),d3([7,7,0,7,7,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,6,6,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,6,6,5,7,8,0,8,8,6,9,9,7,10,10,0,8,8,0,9,9,0,12,12,0,8,8,4,7,7,6,10,10,0,12,12,7,11,11,8,12,12,0,12,12,0,13,12,0,15,15,0,12,12,0,7,7,0,7,7,0,7,7,0,8,8,0,10,10,0,7,7,0,8,8,0,11,11,0,7,7,5,7,7,8,9,9,0,10,10,8,9,9,11,11,11,0,10,9,0,11,11,0,13,13,0,10,10,6,7,7,8,10,10,0,12,12,9,10,10,10,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,10,10,0,11,11,0,11,11,0,11,11,0,13,13,0,11,11,0,11,11,0,15,15,0,10,10,0,8,8,0,10,10,0,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,11,11,0,7,7,0,10,10,0,12,12,0,10,10,0,12,12,0,12,12,0,13,13,0,14,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,9,9,0,0,0,8,8,0,0,0,9,9,0,0,0,12,12,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,5,5,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,5,5,0,0,0,7,7,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,5,5,0,0,0,7,7,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,11,0,0,0,9,9,0,0,0,10,10,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,7,7,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,8,8,0,0,0,10,11,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,7,7,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,7,8,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,9,9,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,9,9,0,0,0,10,10,0,0,0,12,12,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,5,16,9,9,13,18,21,4,2,21,6,6,10,15,21,16,19,6,5,7,10,13,16,8,6,5,4,4,8,13,16,8,5,6,4,4,7,12,15,13,10,9,7,7,9,13,16,18,15,13,12,9,7,10,14,21,18,13,13,7,5,8,12,2,0,0,0,64,0,0,0,192,58,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,11,7,0,0,0,0,0,0,0,0,0,176,11,7,0,0,0,0,0,0,0,0,0,216,11,7,0,0,12,7,0,0,0,0,0,0,0,0,0,40,12,7,0,80,12,7,0,0,0,0,0,0,0,0,0,120,12,7,0,160,12,7,0,0,0,0,0,0,0,0,0,200,12,7,0,240,12,7,0,160,12,7,0,0,0,0,0,24,13,7,0,64,13,7,0,160,8,7,0,200,8,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,72,11,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,64,11,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,8,7,0,80,8,7,0,0,0,0,0,0,0,0,0,120,8,7,0,160,8,7,0,200,8,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,88,10,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,8,11,7,0,0,0,0,0,2,0,0,0,25,0,0,0,32,10,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,10,7,0,0,0,0,0,2,0,0,0,9,0,0,0,0,10,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,16,10,7,0,0,0,0,0,1,0,0,0,25,0,0,0,120,9,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,152,9,7,0,0,0,0,0,1,0,0,0,25,0,0,0,240,8,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,16,9,7,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,4,4,5,5,5,4,5,4,5,5,5,5,6,5,6,5,6,5,6,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,8,8,8,8,9,9,10,10,10,10,4,6,5,8,7,9,9,9,9,10,9,11,9,4,5,6,7,8,9,9,9,9,9,10,9,10,8,9,8,9,8,10,9,11,9,12,10,12,10,8,8,9,8,9,9,10,9,11,10,12,10,12,9,10,10,11,10,12,11,12,11,12,12,12,12,9,10,10,11,11,11,11,11,12,12,12,12,12,10,11,11,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,13,12,13,12,13,12,12,11,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,12,13,12,12,12,13,12,13,12,13,12,13,12,13,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,4,13,9,9,12,15,17,4,2,18,5,7,10,14,18,11,8,6,5,6,8,11,14,8,5,5,3,5,8,11,13,9,6,7,5,5,7,9,10,11,10,9,8,6,6,8,10,14,14,11,11,9,8,9,10,17,17,14,13,10,9,10,10,5,0,0,0,243,0,0,0,184,57,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,176,58,7,0,0,0,0,0,5,0,0,0,53,12,0,0,104,45,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,57,7,0,0,0,0,0,5,0,0,0,243,0,0,0,96,44,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,88,45,7,0,0,0,0,0,5,0,0,0,243,0,0,0,88,43,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,80,44,7,0,0,0,0,0,5,0,0,0,243,0,0,0,80,42,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,72,43,7,0,0,0,0,0,5,0,0,0,53,12,0,0,0,30,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,42,7,0,0,0,0,0,5,0,0,0,53,12,0,0,176,17,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,232,29,7,0,0,0,0,0,1,0,0,0,7,0,0,0,136,17,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,144,17,7,0,0,0,0,0,5,0,0,0,243,0,0,0,128,16,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,120,17,7,0,0,0,0,0,5,0,0,0,243,0,0,0,120,15,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,112,16,7,0,0,0,0,0,5,0,0,0,243,0,0,0,112,14,7,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,104,15,7,0,0,0,0,0,5,0,0,0,243,0,0,0,104,13,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,96,14,7,0,0,0,0,0,1,9,9,6,9,9,5,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,7,7,7,7,7,7,7,8,8,9,9,9,9,7,7,8,8,8,9,9,9,9,7,8,6,7,7,8,8,8,8,8,8,9,8,8,10,9,9,10,8,8,10,8,8,10,9,9,10,8,8,6,6,6,8,6,6,8,7,7,8,7,7,10,8,8,9,7,7,9,7,7,10,8,9,9,7,7,7,7,7,10,8,8,11,8,8,10,8,8,12,9,9,12,8,8,11,9,9,12,9,9,11,8,8,7,7,7,10,9,9,10,9,9,10,9,9,11,10,10,10,9,9,11,9,9,11,10,10,11,9,9,9,8,8,10,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,9,9,11,10,10,11,9,9,8,8,8,11,9,9,11,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,9,9,12,8,8,8,7,7,10,9,9,10,9,9,11,9,9,11,11,11,11,9,9,11,10,10,11,11,11,11,9,9,10,9,9,11,9,9,11,9,10,11,10,9,11,10,10,11,9,9,11,9,10,11,10,10,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,6,6,7,7,7,7,8,8,7,9,9,11,11,11,9,8,8,8,9,9,12,11,11,9,8,8,6,7,7,10,11,10,10,10,10,11,11,10,14,13,14,12,11,11,11,11,11,15,14,14,13,12,12,5,6,6,8,5,5,8,7,7,8,8,8,12,10,10,9,7,7,9,7,8,12,10,10,10,7,7,7,8,8,12,10,10,12,10,10,11,10,10,15,13,13,13,10,10,11,10,10,16,13,14,14,10,10,7,7,7,12,11,11,12,11,11,11,11,11,16,15,15,14,12,12,12,11,11,16,15,16,14,12,12,10,9,9,14,11,11,13,11,11,12,11,11,16,14,14,14,11,11,12,11,11,17,15,15,14,11,11,7,8,8,12,11,11,12,10,10,12,10,10,16,14,13,14,10,10,12,10,10,17,14,14,14,10,10,8,7,7,13,11,11,12,11,11,12,11,11,16,15,14,14,12,12,12,11,11,16,15,14,15,12,12,11,10,10,13,11,11,13,12,11,13,11,11,17,14,14,14,11,11,13,11,11,17,14,15,14,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,14,14,6,7,7,14,14,7,7,7,15,15,0,12,12,15,15,0,13,13,15,15,7,8,8,15,15,10,10,10,16,16,9,8,8,15,15,0,13,13,18,17,0,13,13,16,16,8,8,8,15,15,12,11,11,16,16,9,8,8,15,15,0,13,13,18,18,0,13,13,16,16,0,14,14,17,17,0,20,0,19,20,0,12,12,16,16,0,16,16,20,22,0,14,14,16,16,0,14,14,17,17,0,20,22,20,19,0,13,13,15,16,0,17,18,0,21,0,15,15,16,16,5,7,7,13,13,8,9,9,14,14,10,10,10,14,14,0,20,22,18,18,0,22,21,18,17,9,10,10,14,14,12,12,12,17,17,12,10,10,14,14,0,0,20,17,17,0,22,21,17,18,11,10,10,14,14,14,13,13,18,18,12,11,11,14,14,0,22,21,18,19,0,20,0,17,17,0,22,0,18,18,0,0,0,0,0,0,20,20,17,17,0,22,0,22,21,0,21,0,19,18,0,22,22,18,18,0,0,0,0,0,0,21,0,17,17,0,22,0,20,20,0,0,0,19,18,6,6,6,12,12,8,6,6,10,10,8,6,6,13,12,0,10,10,11,11,0,11,11,13,13,8,7,7,13,13,11,9,9,13,13,10,6,6,12,12,0,10,10,14,14,0,10,10,13,13,9,7,7,13,13,12,10,10,13,13,10,6,6,12,12,0,11,11,15,15,0,10,10,13,13,0,12,12,15,14,0,19,20,16,17,0,9,9,13,13,0,14,14,20,21,0,12,11,13,12,0,12,12,15,14,0,20,19,17,17,0,10,10,12,13,0,15,15,22,21,0,12,12,12,13,0,10,10,12,12,0,11,11,15,15,0,11,11,15,15,0,15,15,22,22,0,16,17,0,0,0,11,11,15,15,0,14,14,18,18,0,11,11,16,16,0,16,15,0,21,0,16,16,0,0,0,12,12,15,15,0,14,14,19,19,0,11,11,15,15,0,15,15,22,0,0,16,16,22,0,0,16,16,0,21,0,0,0,0,0,0,15,15,19,20,0,18,18,0,0,0,17,17,0,0,0,17,17,0,0,0,0,0,0,0,0,16,15,22,21,0,20,20,0,0,0,18,18,0,0,0,10,10,12,12,0,10,10,11,11,0,11,11,12,12,0,11,11,9,9,0,13,12,12,12,0,11,11,13,13,0,13,13,12,12,0,10,10,12,12,0,13,12,13,13,0,12,12,12,12,0,11,11,13,13,0,13,13,12,12,0,10,10,12,12,0,13,13,14,13,0,12,12,12,12,0,14,13,13,14,0,20,21,15,15,0,11,11,12,12,0,15,16,20,20,0,12,13,10,10,0,13,13,14,13,0,20,20,15,15,0,11,11,12,12,0,16,17,21,21,0,13,13,11,11,6,7,7,16,15,11,9,9,14,15,12,9,9,16,16,0,13,13,15,15,0,14,14,17,17,10,9,9,16,16,14,12,12,16,16,12,9,9,15,15,0,13,13,17,18,0,13,13,15,15,12,10,10,17,17,15,12,12,17,17,13,9,9,16,16,0,13,13,18,19,0,14,14,16,16,0,15,15,18,18,0,0,0,20,19,0,12,12,17,16,0,16,17,0,21,0,14,15,16,16,0,15,15,18,18,0,0,22,19,21,0,13,13,16,16,0,18,17,22,22,0,15,15,16,16,7,7,7,13,13,11,10,10,15,15,12,10,10,14,14,0,21,0,18,17,0,21,22,18,18,11,10,10,15,15,14,12,12,17,17,14,11,11,14,14,0,21,20,18,18,0,22,21,18,17,12,11,10,16,16,16,14,14,17,19,14,11,11,15,15,0,0,22,19,19,0,21,22,18,18,0,21,0,18,19,0,0,0,22,0,0,22,21,17,17,0,0,0,20,22,0,0,21,18,18,0,0,0,19,20,0,0,0,0,0,0,0,21,17,17,0,0,0,22,21,0,0,0,19,19,10,9,9,14,13,13,10,10,12,12,13,10,10,14,14,0,13,13,12,12,0,15,14,16,15,13,10,10,14,14,15,12,12,14,14,15,10,10,14,14,0,14,14,15,15,0,14,13,14,14,13,10,10,15,15,17,13,13,15,15,14,10,10,14,14,0,14,14,15,16,0,14,14,15,15,0,15,15,16,16,0,21,22,17,18,0,12,12,14,14,0,17,17,20,21,0,14,14,14,14,0,15,15,16,16,0,21,22,18,18,0,13,13,14,14,0,18,18,22,0,0,15,15,14,14,0,11,11,13,13,0,12,12,16,15,0,12,12,16,16,0,16,16,0,0,0,16,17,0,22,0,12,12,16,16,0,14,14,17,18,0,11,11,16,16,0,15,15,0,21,0,16,16,21,22,0,12,12,16,16,0,15,15,19,19,0,12,12,17,16,0,16,16,21,22,0,16,16,0,0,0,17,17,0,22,0,0,0,0,0,0,15,15,19,20,0,17,19,0,0,0,17,17,22,0,0,17,17,0,22,0,0,0,0,0,0,15,15,21,0,0,19,20,0,0,0,19,18,22,0,0,11,12,14,14,0,11,11,14,14,0,12,12,15,15,0,13,13,13,13,0,14,14,16,16,0,12,12,15,15,0,14,14,16,15,0,11,11,15,15,0,13,13,16,16,0,13,13,15,15,0,12,12,15,15,0,15,14,16,16,0,11,11,15,15,0,14,14,17,17,0,13,13,15,15,0,15,15,16,16,0,0,0,18,18,0,12,12,14,14,0,16,16,22,0,0,14,14,15,15,0,15,15,16,17,0,21,22,18,18,0,13,13,15,14,0,18,17,22,0,0,14,14,15,15,8,8,8,16,15,12,10,10,16,15,12,10,10,16,16,0,14,14,16,17,0,14,14,17,16,12,10,10,17,18,14,12,12,18,18,14,10,10,16,16,0,14,14,18,18,0,14,14,16,16,12,9,9,16,16,17,13,13,16,17,14,9,9,15,15,0,14,14,18,19,0,13,13,15,15,0,15,15,18,19,0,0,0,22,21,0,13,13,16,16,0,16,16,22,0,0,15,15,16,16,0,14,14,18,17,0,0,0,20,0,0,13,13,16,16,0,18,18,0,0,0,15,15,16,16,8,7,7,13,13,12,10,10,15,15,12,10,10,14,14,0,22,22,19,18,0,0,0,18,18,12,10,10,15,15,14,13,13,17,17,14,11,11,15,15,0,19,20,18,18,0,22,21,17,18,13,11,11,15,15,16,13,13,18,18,14,11,11,14,15,0,22,21,20,19,0,22,21,17,17,0,0,22,19,18,0,0,0,0,0,0,22,20,17,17,0,0,0,21,20,0,0,0,19,17,0,0,22,19,19,0,0,0,0,0,0,22,20,18,17,0,0,0,0,0,0,0,0,18,18,0,10,10,14,14,0,11,11,14,14,0,11,11,15,15,0,14,14,14,14,0,15,15,16,16,0,11,11,16,16,0,13,13,16,16,0,11,11,15,15,0,14,14,16,16,0,14,14,15,15,0,11,11,15,15,0,13,13,15,15,0,10,10,15,15,0,15,15,17,17,0,14,14,14,14,0,16,16,16,16,0,0,22,19,19,0,13,13,14,14,0,17,17,0,0,0,15,15,14,14,0,16,16,17,17,0,0,22,18,18,0,13,13,14,14,0,21,18,0,0,0,15,15,14,14,0,11,11,13,13,0,12,12,15,15,0,12,12,16,15,0,16,16,0,0,0,17,17,22,22,0,12,12,16,16,0,14,14,18,18,0,11,12,16,16,0,15,16,0,21,0,16,16,22,21,0,12,12,16,16,0,15,15,19,20,0,11,12,16,16,0,15,15,20,22,0,16,16,0,22,0,17,17,22,0,0,0,0,0,0,0,15,15,21,22,0,19,18,0,0,0,17,17,0,0,0,17,17,0,22,0,0,0,0,0,0,16,15,22,0,0,19,19,0,0,0,17,18,0,0,0,12,12,15,15,0,12,12,15,15,0,12,12,15,15,0,13,13,14,14,0,15,15,16,17,0,12,12,16,16,0,14,14,16,16,0,12,11,15,16,0,14,14,16,17,0,14,14,16,16,0,13,12,16,16,0,15,15,16,16,0,11,11,15,15,0,14,14,16,16,0,14,14,15,15,0,15,15,18,17,0,0,22,0,20,0,13,13,15,15,0,16,17,22,22,0,14,14,15,15,0,15,15,17,18,0,20,0,19,19,0,13,13,15,15,0,18,18,22,0,0,14,14,15,15,0,11,11,16,16,0,14,14,17,16,0,13,13,17,17,0,16,16,17,17,0,17,17,18,19,0,12,12,16,17,0,15,15,18,18,0,12,12,16,16,0,16,16,19,18,0,16,16,17,16,0,12,13,17,17,0,17,16,18,17,0,13,12,16,16,0,16,16,18,19,0,16,16,16,17,0,16,16,18,18,0,22,0,22,22,0,13,13,16,16,0,19,18,22,20,0,16,15,16,16,0,16,17,18,18,0,0,0,22,20,0,14,14,16,16,0,19,19,0,0,0,16,16,16,16,0,9,9,13,13,0,13,13,15,15,0,14,14,15,15,0,0,22,17,18,0,22,0,18,19,0,12,12,15,15,0,15,16,17,17,0,14,14,14,14,0,22,0,18,18,0,21,22,17,17,0,13,13,15,15,0,17,17,17,18,0,14,14,15,15,0,22,21,21,19,0,20,21,17,17,0,21,21,19,18,0,0,0,0,0,0,21,21,17,17,0,0,0,22,22,0,0,22,19,18,0,0,21,19,18,0,0,0,0,22,0,19,20,17,17,0,0,0,0,22,0,0,0,19,18,0,19,19,15,16,0,21,19,16,17,0,0,21,17,17,0,0,22,17,17,0,22,22,18,19,0,20,20,16,16,0,0,22,18,18,0,20,19,16,17,0,22,21,20,19,0,0,21,17,17,0,21,20,17,17,0,0,0,18,18,0,19,19,17,16,0,22,0,19,19,0,21,22,17,18,0,0,22,19,18,0,0,0,19,20,0,19,19,16,16,0,22,22,22,0,0,20,22,16,16,0,22,20,18,19,0,0,0,20,19,0,20,20,16,16,0,0,0,0,0,0,22,20,17,16,0,11,11,13,13,0,14,13,15,15,0,13,13,16,15,0,18,17,21,0,0,18,18,21,0,0,12,12,15,15,0,15,16,17,18,0,12,12,15,15,0,17,17,22,20,0,17,18,22,0,0,12,12,17,16,0,16,17,19,19,0,13,13,16,16,0,17,17,0,22,0,17,17,0,21,0,18,18,20,22,0,0,0,0,0,0,15,15,21,20,0,20,19,0,0,0,18,18,22,0,0,17,17,22,0,0,0,0,0,0,0,15,16,20,22,0,20,21,0,0,0,19,18,0,0,0,15,15,19,19,0,17,16,20,20,0,16,17,20,21,0,18,17,0,0,0,19,19,0,0,0,15,15,21,19,0,19,19,0,0,0,15,15,22,22,0,18,18,0,22,0,17,18,22,21,0,15,15,20,19,0,19,19,0,0,0,15,15,20,22,0,18,19,20,0,0,18,17,21,21,0,18,18,19,22,0,0,0,0,0,0,15,15,20,19,0,19,19,0,0,0,18,18,21,22,0,18,18,22,0,0,0,0,0,0,0,15,15,19,20,0,21,21,0,0,0,17,17,20,20,0,12,12,17,17,0,14,14,16,17,0,13,14,17,17,0,16,16,17,17,0,17,17,17,19,0,13,13,17,17,0,16,16,18,18,0,13,13,16,16,0,16,16,18,18,0,16,16,17,17,0,13,13,17,17,0,17,17,18,17,0,12,12,15,16,0,17,18,19,20,0,16,16,16,16,0,17,16,18,19,0,0,22,21,22,0,14,14,16,16,0,19,19,0,0,0,16,16,16,16,0,16,16,18,17,0,0,22,21,21,0,14,14,16,16,0,22,20,22,0,0,16,16,15,15,0,9,9,13,13,0,14,14,15,15,0,14,14,14,14,0,22,22,18,18,0,0,22,18,18,0,12,12,15,15,0,16,16,18,17,0,14,14,14,14,0,20,21,18,18,0,22,21,17,17,0,13,13,15,15,0,17,17,18,18,0,14,14,14,14,0,0,21,18,19,0,0,22,17,17,0,22,22,19,18,0,0,0,0,0,0,19,21,17,17,0,0,0,22,20,0,0,21,18,19,0,0,22,18,18,0,0,0,0,22,0,20,22,17,17,0,0,0,20,22,0,0,0,18,18,0,19,21,16,16,0,20,22,16,17,0,20,0,17,17,0,22,0,18,17,0,21,0,18,19,0,20,20,17,17,0,22,0,18,18,0,21,20,17,17,0,0,20,20,19,0,0,21,18,17,0,21,21,17,17,0,22,0,18,17,0,19,19,17,17,0,0,22,20,21,0,0,21,17,17,0,22,0,18,18,0,0,0,20,22,0,20,19,16,16,0,0,0,0,0,0,22,22,17,17,0,22,0,18,19,0,0,0,21,20,0,19,21,16,17,0,0,0,0,0,0,22,22,17,16,0,11,11,13,13,0,13,13,15,15,0,13,13,15,15,0,17,17,22,21,0,18,18,22,0,0,12,13,16,15,0,15,16,18,18,0,13,13,16,16,0,17,17,0,22,0,17,17,22,22,0,13,13,16,16,0,16,16,19,18,0,13,13,16,16,0,18,17,0,20,0,18,17,20,0,0,17,17,21,0,0,0,0,0,0,0,15,15,21,22,0,19,20,0,0,0,18,18,0,0,0,18,17,0,0,0,0,0,0,0,0,16,16,22,22,0,20,20,0,0,0,21,19,0,0,0,15,15,20,19,0,16,16,22,20,0,17,17,0,22,0,18,18,0,22,0,19,17,0,0,0,15,16,22,20,0,18,19,0,0,0,16,16,22,20,0,18,18,0,22,0,18,18,22,0,0,16,16,21,20,0,19,20,0,22,0,16,16,0,22,0,18,18,0,22,0,18,18,0,21,0,19,18,0,22,0,0,0,0,0,0,16,16,21,20,0,20,0,0,0,0,18,18,21,0,0,18,18,0,0,0,0,0,0,0,0,16,16,21,19,0,0,0,0,0,0,18,18,0,21,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,5,8,8,12,10,10,12,12,12,10,10,12,12,13,11,11,12,12,13,12,12,12,12,13,10,10,13,13,13,13,13,13,13,13,10,10,13,13,13,11,11,13,13,14,13,13,12,12,13,10,10,13,13,13,13,13,13,13,13,10,10,12,12,13,11,11,13,13,13,13,13,12,12,13,12,12,13,13,13,13,13,13,13,14,11,11,12,12,14,12,12,13,12,14,14,14,12,12,13,14,14,13,13,14,13,13,13,13,14,14,14,12,12,14,13,13,13,13,14,14,14,12,12,12,8,8,11,11,12,12,12,11,11,12,11,11,10,10,13,12,12,10,10,13,12,12,10,10,13,12,12,12,12,14,12,12,12,12,13,13,13,11,11,14,12,12,11,11,14,12,12,12,12,14,12,12,12,12,13,12,12,12,12,13,13,13,11,11,14,12,12,11,11,14,12,12,12,12,14,13,13,12,12,14,12,12,12,11,14,13,13,11,11,14,13,12,11,11,14,13,13,11,11,14,13,13,12,12,14,12,12,12,12,15,13,13,12,12,14,12,12,11,11,14,13,13,11,11,12,9,9,10,10,12,7,7,11,11,12,9,9,12,12,13,10,10,10,10,14,14,14,11,11,13,9,9,12,12,14,14,14,12,12,13,8,8,11,11,14,9,9,12,12,14,14,14,11,11,13,9,9,12,12,14,14,14,12,12,14,8,8,11,11,14,9,9,12,12,14,14,14,11,11,14,10,10,12,12,14,14,14,13,13,14,9,9,11,11,14,10,10,12,12,14,14,14,11,11,14,14,15,12,12,15],"i8",L3,F.GLOBAL_BASE+456540),d3([14,14,14,14,15,14,14,11,11,14,14,14,12,12,14,14,14,11,11,14,11,11,10,10,14,10,10,10,10,14,10,10,10,10,15,11,11,9,9,14,12,12,9,9,15,11,11,11,11,15,13,13,11,11,15,10,10,10,10,15,11,11,10,10,15,13,13,11,11,15,11,11,11,11,15,13,13,11,11,15,10,10,10,10,15,11,11,10,10,15,13,13,11,11,15,12,12,11,11,15,13,13,11,11,15,11,11,10,10,15,12,12,10,10,15,13,13,10,10,15,14,14,11,11,15,13,13,11,11,15,14,14,10,11,15,13,13,10,10,15,13,14,10,10,14,13,13,10,10,14,13,13,10,10,14,13,13,10,10,14,13,13,9,9,14,14,14,9,9,15,14,14,11,11,15,14,14,10,10,15,14,14,10,10,15,14,14,11,11,15,14,14,10,10,15,14,14,11,11,15,14,14,10,10,14,14,14,10,10,15,14,14,10,10,14,14,14,10,10,15,14,14,11,11,15,14,14,11,11,14,14,14,10,10,15,14,14,10,10,14,14,14,9,9,15,15,15,11,11,15,14,14,12,12,15,15,14,10,10,15,14,14,10,10,14,15,15,9,9,14,10,10,12,12,17,9,9,12,12,17,10,10,13,13,17,11,11,12,12,18,14,14,12,12,17,10,10,13,13,17,14,14,12,12,17,9,9,12,12,17,11,11,12,12,17,14,14,12,12,18,10,10,13,13,18,14,14,13,13,18,9,9,12,12,18,10,10,13,13,18,14,14,12,12,18,11,11,13,13,18,14,14,13,13,18,10,10,12,12,17,11,11,12,12,17,14,14,12,12,18,15,15,13,13,18,14,14,14,14,18,15,15,12,12,18,14,14,12,12,18,15,15,12,12,13,7,7,11,11,14,15,15,11,11,14,15,15,12,12,14,15,15,11,11,15,15,15,11,11,14,15,15,12,12,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,14,15,15,12,12,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,15,15,15,12,12,14,15,15,12,12,14,15,14,12,12,14,15,15,11,11,15,14,14,12,12,15,15,15,12,12,15,16,16,12,12,15,15,15,12,12,15,15,15,12,12,15,15,15,12,12,13,13,13,11,10,14,14,15,11,11,14,14,14,12,12,15,14,14,10,10,15,15,15,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,15,15,12,12,15,15,15,11,11,14,15,15,12,12,14,14,14,12,12,14,15,15,11,11,14,15,15,12,12,15,15,15,11,11,15,15,15,12,12,15,14,14,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,10,10,15,15,16,12,12,15,15,15,14,14,15,15,15,11,11,15,15,15,12,12,15,15,15,11,11,14,11,11,10,10,15,9,9,12,12,15,10,10,12,12,15,11,11,11,11,15,14,14,12,12,15,10,10,13,13,15,14,14,12,12,15,9,9,12,12,15,10,10,13,13,15,13,13,12,11,15,10,10,12,12,15,14,14,12,12,15,9,9,11,11,15,11,11,12,12,15,13,13,11,11,15,11,11,13,13,15,13,14,13,14,15,11,11,11,11,15,11,11,12,12,15,14,14,11,11,15,14,14,13,13,15,14,14,20,20,15,14,14,12,12,15,14,14,12,12,15,14,14,11,11,14,13,13,10,10,14,13,13,12,12,14,14,13,12,12,15,14,14,12,12,15,14,14,11,11,15,14,14,12,12,15,14,14,13,13,15,14,14,12,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,13,13,15,14,14,12,11,15,14,14,12,12,15,14,14,13,13,15,14,14,13,13,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,15,15,15,13,13,15,15,15,13,13,15,14,14,13,13,15,15,15,13,13,15,14,15,12,12,15,15,15,13,13,14,10,10,12,13,17,9,9,12,12,17,10,10,13,13,17,11,11,12,12,18,14,14,12,12,18,10,10,13,13,18,14,14,12,12,17,9,9,12,12,18,10,11,13,13,18,14,14,12,12,17,10,10,12,12,17,14,14,12,12,17,9,9,12,12,17,11,11,12,12,17,14,14,12,12,18,11,11,12,12,18,14,14,13,13,18,11,11,12,12,18,11,11,12,12,18,14,14,12,12,18,15,15,12,12,18,14,14,13,13,18,15,15,12,12,17,14,14,12,12,17,15,15,12,12,13,7,7,11,11,14,15,15,11,11,14,15,15,11,11,14,15,14,12,12,15,15,15,12,11,14,15,15,12,12,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,13,13,14,15,15,11,11,14,15,15,13,12,14,15,15,11,11,14,15,15,11,11,15,15,15,13,13,14,15,15,12,12,15,15,15,12,12,15,15,15,11,11,15,15,15,11,11,15,15,15,12,12,15,15,15,13,13,15,16,16,12,12,15,15,15,12,13,15,15,15,12,12,15,15,15,12,12,13,13,13,11,11,14,14,14,11,11,14,14,14,12,12,14,14,14,10,10,15,14,14,11,11,14,15,15,12,12,14,14,14,12,12,14,15,15,11,11,14,15,14,12,12,15,14,14,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,14,14,12,12,15,15,14,11,11,15,15,15,12,12,15,14,14,12,12,14,15,15,11,11,14,15,14,11,11,15,15,15,10,10,15,15,15,12,12,15,14,14,14,13,15,15,15,11,11,15,15,15,11,11,15,15,15,10,10,14,11,11,10,10,15,9,9,12,12,15,10,10,12,12,15,11,11,11,11,15,14,14,12,12,15,10,10,13,13,15,13,13,12,12,15,9,9,12,12,15,11,11,13,13,15,14,14,12,12,15,10,10,13,13,15,13,14,12,12,15,9,9,12,12,15,10,10,13,13,15,13,13,11,11,15,11,11,13,13,15,14,14,13,13,15,10,10,11,11,15,11,11,12,12,15,14,14,11,11,15,14,14,13,13,15,14,14,21,20,15,14,14,11,11,15,14,14,12,12,15,14,14,11,11,14,13,13,10,10,14,13,13,11,11,15,14,14,12,12,15,14,14,12,12,14,14,14,12,12,15,14,14,12,12,15,14,14,13,13,14,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,13,13,14,14,14,11,11,15,14,14,11,11,14,14,14,13,13,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,14,14,14,13,13,15,15,15,13,13,16,14,14,12,13,15,15,15,13,13,15,14,14,12,12,15,15,15,13,13,15,11,11,13,12,18,10,10,12,12,17,11,11,12,12,18,12,12,11,11,18,14,14,12,12,18,11,11,13,13,17,14,14,12,12,18,10,10,12,12,18,12,12,12,12,18,14,15,12,12,18,11,11,13,13,18,14,14,12,12,17,10,10,12,12,18,11,11,12,12,18,15,14,12,12,17,12,12,12,12,17,14,14,12,12,17,11,11,11,11,17,12,12,12,11,17,15,15,11,11,18,15,15,12,12,18,14,15,13,13,18,15,15,11,11,17,15,15,12,12,18,15,15,11,11,14,9,9,11,11,14,15,15,11,11,15,15,15,11,11,15,15,15,12,11,15,15,15,12,12,15,15,15,11,11,15,15,15,13,13,14,15,15,11,11,15,15,15,11,11,15,15,15,13,13,15,15,15,11,11,15,15,15,13,13,15,15,15,11,11,15,15,15,11,11,15,15,15,13,13,15,15,15,12,12,15,15,15,13,13,15,15,14,11,11,15,15,15,12,12,15,15,15,12,12,16,15,15,13,13,15,16,16,13,13,16,15,15,12,12,15,15,15,13,12,15,15,15,12,12,13,12,12,11,11,14,14,14,11,11,14,14,14,12,12,15,14,14,11,11,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,14,15,15,11,11,15,14,14,12,12,15,14,14,11,11,15,14,14,12,12,15,14,14,12,12,14,15,15,11,11,15,14,14,12,12,15,14,14,11,11,15,15,15,12,12,15,14,14,12,12,15,15,15,11,11,15,14,14,11,11,15,14,15,11,11,15,15,15,12,12,15,14,14,13,13,16,15,15,11,11,15,14,14,12,12,15,15,15,11,11,14,11,11,9,9,15,10,10,12,12,14,11,11,12,12,15,12,12,12,12,15,14,14,13,13,15,11,11,13,13,15,14,14,13,13,15,10,10,12,12,15,12,12,13,13,15,14,14,13,13,15,11,11,12,12,15,14,14,13,13,14,10,10,12,12,15,12,12,13,13,15,14,14,12,12,15,12,12,13,13,15,14,14,15,15,15,11,11,12,12,15,12,12,12,13,15,14,14,12,12,15,15,15,14,14,15,14,14,20,20,15,14,14,12,12,15,14,14,13,13,15,14,14,12,12,14,13,13,10,10,14,13,13,11,11,14,13,13,12,12,14,14,14,12,12,15,14,14,13,13,15,14,14,12,12,14,14,14,14,14,14,14,14,11,11,15,14,14,12,12,15,14,14,14,14,15,14,14,12,12,14,14,14,14,14,14,14,14,11,11,15,14,14,12,12,14,14,14,14,14,15,14,14,12,12,15,14,14,13,13,15,14,14,12,12,15,14,14,12,12,14,14,14,14,13,15,15,15,14,14,15,14,14,13,13,15,15,15,14,14,15,14,14,13,13,15,15,15,13,13,14,13,13,13,13,18,15,15,12,12,18,15,15,13,12,18,15,16,11,11,18,16,17,12,12,18,15,15,13,13,18,17,17,12,12,18,15,15,12,12,17,15,15,12,12,18,17,17,12,12,18,15,15,13,13,18,16,17,12,12,17,15,15,12,12,18,15,15,12,12,18,16,17,11,12,18,16,16,12,12,17,16,17,12,12,18,15,15,11,11,18,15,15,12,12,18,17,17,11,11,17,17,17,12,12,18,16,16,13,13,18,17,17,11,11,18,16,16,12,12,18,17,17,11,11,15,14,14,11,11,16,15,15,11,11,16,15,15,12,12,16,15,15,12,12,17,15,15,14,13,16,15,15,12,12,17,15,15,14,14,16,15,15,11,11,16,15,15,12,12,18,15,15,13,13,16,15,15,11,11,17,15,15,14,14,16,15,15,11,11,16,15,15,12,12,17,15,15,13,13,16,15,15,12,12,17,16,15,14,14,16,14,15,12,12,16,15,15,12,12,18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,15,12,13,11,11,15,14,14,12,12,16,14,14,12,12,16,14,14,12,12,16,14,14,12,12,16,14,14,13,12,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,17,14,14,12,12,16,14,14,12,12,17,14,14,13,13,15,15,15,12,12,16,14,14,12,12,17,14,14,12,12,17,15,15,12,12,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,17,15,15,12,12,18,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,17,15,15,12,12,14,15,15,9,9,15,15,15,12,12,15,15,15,13,13,15,15,15,14,14,15,15,15,19,19,15,15,16,13,13,15,15,16,19,20,15,15,15,13,12,15,16,16,14,14,15,15,15,19,19,15,15,15,13,13,15,16,15,20,19,14,15,15,13,13,15,15,15,14,14,15,15,15,19,19,15,15,15,14,14,15,16,16,19,20,15,15,15,14,14,15,15,15,14,14,15,15,15,19,19,15,15,15,20,19,15,16,16,20,19,15,15,15,19,19,15,16,16,20,20,15,15,15,19,20,14,13,13,10,10,14,14,14,11,11,14,14,14,12,12,15,14,14,13,13,15,14,14,19,20,15,14,14,12,12,14,14,14,20,19,14,14,14,11,11,15,14,14,12,12,15,14,14,20,20,15,14,14,12,12,14,14,14,20,19,14,14,14,11,11,15,14,14,12,12,15,14,14,19,20,15,14,14,13,13,15,14,14,22,19,15,15,14,12,12,15,14,14,13,13,14,15,15,22,20,15,15,15,20,20,15,14,14,21,20,15,15,15,20,21,15,14,14,20,20,14,15,15,20,20,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,7,7,7,7,7,7,7,8,8,10,11,11,9,8,8,8,8,8,11,11,11,10,8,8,5,7,7,9,11,11,10,11,11,10,11,11,12,13,14,11,12,12,10,11,11,13,14,14,12,12,12,5,6,6,8,6,6,8,7,7,8,7,7,11,10,10,10,7,7,9,7,7,12,11,11,11,7,7,7,7,7,11,10,10,12,10,10,11,10,10,15,13,13,13,10,10,12,11,11,15,13,13,14,11,11,7,7,7,11,11,11,12,11,11,12,11,11,14,14,14,14,12,12,12,12,12,16,15,15,14,12,12,0,10,10,0,11,11,0,11,12,0,11,11,0,14,14,0,11,11,0,12,12,0,15,15,0,11,11,8,8,8,12,10,10,12,10,10,13,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,13,11,11,12,11,11,15,14,14,14,12,12,13,12,12,15,14,14,15,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,13,13,0,14,15,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,0,8,8,0,8,8,0,9,9,0,10,10,0,8,8,0,9,9,0,10,10,0,8,8,0,7,7,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,7,7,0,6,6,0,7,7,0,7,7,0,10,10,0,6,6,0,7,7,0,10,10,0,6,5,0,8,8,0,7,7,0,8,8,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,7,7,0,6,6,0,9,10,0,10,10,0,10,10,0,11,11,0,9,9,0,10,10,0,11,11,0,9,9,0,8,8,0,8,8,0,8,8,0,9,9,0,9,9,0,8,8,0,8,8,0,9,9,0,7,7,0,8,8,0,7,7,0,7,7,0,8,8,0,9,9,0,7,7,0,7,7,0,9,9,0,6,6,0,6,6,0,10,10,0,10,10,0,10,10,0,12,12,0,9,9,0,10,10,0,12,12,0,9,9,0,8,8,0,7,7,0,8,8,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,7,7,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,5,8,8,0,8,8,6,9,9,8,10,10,0,8,8,0,9,9,0,12,12,0,8,8,4,7,7,6,10,10,0,12,12,7,11,11,9,12,12,0,12,12,0,13,13,0,15,15,0,12,12,0,7,7,0,7,7,0,8,8,0,8,8,0,10,10,0,7,7,0,8,8,0,11,11,0,7,7,5,7,7,9,9,9,0,11,10,9,9,9,11,12,12,0,10,10,0,11,11,0,13,13,0,11,11,6,7,7,9,10,10,0,12,12,10,11,11,11,12,12,0,12,12,0,13,13,0,15,15,0,12,12,0,10,10,0,11,11,0,11,11,0,12,12,0,13,13,0,11,11,0,12,12,0,15,15,0,11,11,0,8,8,0,10,10,0,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,11,11,0,7,7,0,10,10,0,12,12,0,10,10,0,12,13,0,12,12,0,13,13,0,14,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,7,7,0,0,0,8,8,0,0,0,8,8,0,0,0,11,11,0,0,0,0,0,0,0,0,10,9,0,0,0,0,0,0,0,0,9,9,0,0,0,10,11,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,5,5,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,5,5,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,5,6,0,0,0,7,7,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,11,0,0,0,9,9,0,0,0,10,10,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,11,12,0,0,0,0,0,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,7,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,9,9,0,0,0,10,10,0,0,0,11,12,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,8,8,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,9,9,0,0,0,10,10,0,0,0,12,12,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,5,16,9,9,12,17,18,4,2,18,6,5,9,13,15,10,7,7,6,7,9,13,13,8,5,6,5,5,7,11,12,8,4,7,4,3,6,10,12,11,8,9,7,6,8,11,12,15,13,13,11,9,7,10,12,16,12,16,12,6,5,8,11,2,0,0,0,64,0,0,0,144,111,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,64,7,0,0,0,0,0,0,0,0,0,128,64,7,0,0,0,0,0,0,0,0,0,168,64,7,0,208,64,7,0,0,0,0,0,0,0,0,0,248,64,7,0,32,65,7,0,0,0,0,0,0,0,0,0,72,65,7,0,112,65,7,0,0,0,0,0,0,0,0,0,152,65,7,0,192,65,7,0,112,65,7,0,0,0,0,0,232,65,7,0,16,66,7,0,112,61,7,0,152,61,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,24,64,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,16,64,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,60,7,0,32,61,7,0,0,0,0,0,0,0,0,0,72,61,7,0,112,61,7,0,152,61,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,40,63,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,216,63,7,0,0,0,0,0,2,0,0,0,25,0,0,0,240,62,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,63,7,0,0,0,0,0,2,0,0,0,9,0,0,0,208,62,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,224,62,7,0,0,0,0,0,1,0,0,0,25,0,0,0,72,62,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,104,62,7,0,0,0,0,0,1,0,0,0,25,0,0,0,192,61,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,224,61,7,0,0,0,0,0,3,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,6,5,4,5,5,5,6,5,5,6,6,6,5,6,5,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,8,8,9,9,10,10,11,11,4,6,5,8,7,9,8,10,9,11,10,11,11,4,5,6,7,8,8,9,9,10,10,10,10,11,8,9,8,10,8,10,9,11,10,11,11,11,11,8,8,9,8,10,9,10,10,11,11,11,11,11,9,10,10,11,11,11,11,11,11,12,11,12,11,9,10,10,10,11,11,11,11,11,11,12,11,12,10,11,11,12,11,12,12,12,12,12,12,12,12,10,11,11,11,11,12,12,12,13,12,12,12,12,11,12,12,12,12,13,13,12,12,12,12,12,12,11,12,12,12,12,13,13,12,13,12,12,12,12,12,13,13,13,13,13,13,12,13,12,13,12,12,12,13,13,13,13,13,13,13,12,13,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,4,9,8,8,10,13,16,4,2,9,5,7,10,14,18,9,7,6,5,7,9,12,16,7,5,5,3,5,8,11,13,8,7,7,5,5,7,9,11,10,10,9,8,6,6,8,10,13,14,13,11,9,8,9,10,17,18,16,14,11,10,10,10,5,0,0,0,243,0,0,0,136,110,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,128,111,7,0,0,0,0,0,5,0,0,0,53,12,0,0,56,98,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,112,110,7,0,0,0,0,0,5,0,0,0,243,0,0,0,48,97,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,40,98,7,0,0,0,0,0,5,0,0,0,243,0,0,0,40,96,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,32,97,7,0,0,0,0,0,5,0,0,0,243,0,0,0,32,95,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,24,96,7,0,0,0,0,0,5,0,0,0,53,12,0,0,208,82,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,8,95,7,0,0,0,0,0,5,0,0,0,53,12,0,0,128,70,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,184,82,7,0,0,0,0,0,1,0,0,0,7,0,0,0,88,70,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,96,70,7,0,0,0,0,0,5,0,0,0,243,0,0,0,80,69,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,72,70,7,0,0,0,0,0,5,0,0,0,243,0,0,0,72,68,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,64,69,7,0,0,0,0,0,5,0,0,0,243,0,0,0,64,67,7,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,56,68,7,0,0,0,0,0,5,0,0,0,243,0,0,0,56,66,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,48,67,7,0,0,0,0,0,1,9,9,6,9,9,5,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,7,7,7,7,7,7,7,8,8,9,9,9,8,7,7,8,8,8,9,9,9,9,8,8,6,7,7,9,8,8,9,7,7,9,8,8,10,8,8,10,8,8,10,8,8,10,8,9,10,8,8,7,6,6,8,6,6,9,6,6,9,7,7,10,8,8,9,6,6,9,7,7,10,9,8,9,7,7,7,7,7,11,8,8,11,9,9,10,9,9,12,9,9,12,8,8,11,9,9,12,9,9,12,8,8,8,7,7,10,9,9,10,9,9,10,9,9,11,10,11,11,9,9,11,9,9,11,11,11,11,9,9,10,8,8,11,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,9,9,12,10,10,11,9,9,8,8,8,11,9,9,12,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,9,10,12,8,8,9,7,7,11,9,9,11,10,10,11,9,9,11,11,11,11,9,9,11,10,10,12,11,11,11,9,10,10,9,9,11,9,9,11,10,10,11,10,10,11,11,11,11,9,9,11,9,10,11,11,11,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,7,7,7,8,8,7,8,8,7,9,9,10,11,11,9,8,8,7,8,9,11,11,11,9,8,8,6,7,7,10,10,10,10,10,10,10,10,10,14,14,14,12,11,11,10,11,11,15,14,14,13,11,11,6,6,6,8,5,5,8,7,7,8,7,7,11,10,10,9,7,7,9,7,7,12,10,10,10,7,7,6,8,7,12,10,10,12,10,10,11,10,10,15,14,13,13,10,10,11,10,10,16,14,14,14,10,10,7,7,7,12,11,11,12,11,11,11,11,11,16,14,14,13,12,12,11,11,11,17,15,15,14,12,12,10,9,9,13,11,11,13,11,11,12,11,11,16,14,13,14,11,11,12,11,11,17,15,14,14,11,11,7,8,8,12,11,11,12,10,10,12,10,10,16,13,14,13,10,10,11,10,10,17,14,14,14,10,10,7,7,7,12,11,11,12,11,11,12,11,11,15,14,15,14,12,12,12,11,11,17,15,15,14,12,12,10,10,9,13,11,11,13,11,11,13,11,11,16,14,14,14,11,11,13,11,11,16,15,15,15,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,14,14,6,7,7,14,14,7,7,7,15,15,0,13,13,16,16,0,13,13,15,15,7,8,8,15,15,9,10,10,17,16,9,8,8,15,15,0,13,13,18,17,0,13,13,16,16,8,8,8,15,15,12,11,11,16,17,9,8,8,14,14,0,13,13,18,17,0,13,13,16,15,0,14,14,18,17,0,20,22,18,20,0,12,12,16,16,0,16,16,22,20,0,14,14,16,16,0,14,14,17,17,0,22,22,22,19,0,12,13,16,16,0,17,17,0,0,0,15,15,16,16,5,7,7,13,13,9,9,9,15,14,10,10,10,14,14,0,21,21,18,17,0,21,22,18,17,9,10,10,14,14,12,12,12,17,17,12,10,10,14,14,0,19,21,18,17,0,20,22,18,18,11,10,10,14,14,14,13,13,18,17,12,11,11,14,14,0,22,19,17,18,0,20,0,18,17,0,22,21,17,17,0,0,0,0,0,0,20,22,17,17,0,22,0,21,19,0,22,0,18,18,0,0,22],"i8",L3,F.GLOBAL_BASE+466780),d3([18,19,0,0,0,0,0,0,19,21,17,17,0,0,0,20,20,0,0,0,18,18,6,6,6,13,12,8,6,6,11,11,8,6,6,13,13,0,9,9,11,11,0,11,11,14,14,9,7,7,13,13,11,9,9,13,13,10,6,6,13,13,0,10,10,14,14,0,10,10,13,13,9,7,7,13,14,13,9,9,13,13,10,6,6,13,12,0,11,11,15,15,0,10,10,13,13,0,12,12,15,15,0,19,0,17,17,0,9,9,13,13,0,13,14,19,20,0,11,11,13,13,0,11,11,14,14,0,19,20,17,18,0,10,10,13,13,0,15,15,21,19,0,12,12,13,13,0,10,10,12,13,0,11,11,15,15,0,11,11,15,15,0,15,15,22,0,0,16,17,22,0,0,11,11,15,15,0,14,14,18,17,0,11,11,15,16,0,15,15,22,21,0,16,16,0,20,0,12,12,16,15,0,15,14,19,19,0,11,11,16,16,0,15,15,21,0,0,16,15,0,0,0,16,16,22,21,0,0,0,0,0,0,15,15,20,20,0,18,18,0,0,0,16,17,0,0,0,17,17,0,22,0,0,0,0,0,0,15,15,21,22,0,20,18,0,0,0,18,17,22,0,0,10,10,12,11,0,10,10,10,10,0,11,11,12,12,0,11,11,9,9,0,13,13,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,13,12,13,13,0,12,12,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,13,13,13,14,0,12,12,12,12,0,13,14,14,14,0,20,21,15,15,0,12,11,12,12,0,15,16,20,22,0,13,12,11,11,0,13,13,14,13,0,20,0,16,15,0,12,12,12,12,0,16,16,22,21,0,13,13,12,12,6,7,7,16,16,11,9,9,15,15,12,9,9,16,16,0,13,13,14,14,0,14,14,16,17,10,9,9,16,16,14,12,12,16,16,12,9,9,15,15,0,13,13,18,18,0,13,13,15,16,12,10,10,17,18,15,12,12,17,17,13,9,9,16,16,0,13,13,17,18,0,14,14,16,16,0,15,15,18,18,0,22,0,20,20,0,12,12,16,16,0,16,16,20,22,0,14,14,16,16,0,15,14,18,18,0,0,22,19,21,0,13,13,16,17,0,17,17,22,22,0,15,15,16,16,7,7,7,14,14,11,10,10,15,15,12,10,10,15,14,0,22,0,18,18,0,0,21,17,18,11,10,10,15,15,14,12,12,17,17,14,11,11,15,15,0,22,20,18,18,0,0,20,18,17,12,10,10,16,16,17,14,14,19,18,14,11,11,15,15,0,21,22,19,19,0,21,22,18,18,0,22,0,19,21,0,0,0,0,0,0,22,22,18,17,0,0,0,21,20,0,22,22,20,19,0,0,22,20,20,0,0,0,0,0,0,20,21,17,17,0,0,22,21,21,0,0,0,18,18,10,9,9,14,14,13,10,10,13,13,13,10,11,14,14,0,13,13,12,12,0,15,15,16,16,13,10,10,15,15,15,12,12,14,14,15,10,10,14,15,0,14,14,16,15,0,14,14,15,15,13,10,10,15,15,18,13,13,15,15,15,10,10,14,15,0,14,14,16,16,0,14,14,15,15,0,15,15,16,16,0,22,0,18,18,0,12,13,14,14,0,17,17,22,0,0,14,14,14,14,0,15,15,16,16,0,22,0,18,17,0,13,13,14,14,0,19,18,21,22,0,15,15,14,14,0,11,11,13,13,0,12,12,16,16,0,12,12,16,16,0,15,16,21,0,0,16,17,0,22,0,12,12,16,16,0,14,14,17,18,0,11,11,16,16,0,15,15,21,22,0,16,16,0,0,0,12,12,16,16,0,15,15,0,19,0,12,12,16,17,0,16,16,22,0,0,16,16,0,22,0,17,17,0,22,0,0,0,0,0,0,15,15,20,19,0,18,18,0,0,0,17,18,0,0,0,17,17,0,0,0,0,0,0,0,0,15,15,0,22,0,20,18,0,0,0,18,18,22,22,0,11,11,14,14,0,12,12,14,14,0,12,12,15,15,0,13,13,14,14,0,14,14,17,16,0,12,12,16,16,0,14,14,16,16,0,11,11,15,15,0,13,13,16,16,0,13,13,15,15,0,12,12,15,15,0,15,14,16,16,0,11,11,15,15,0,14,14,17,17,0,13,13,15,15,0,15,15,17,17,0,0,0,19,18,0,13,12,15,15,0,16,16,0,0,0,14,14,15,15,0,14,14,16,17,0,22,0,18,18,0,13,13,15,15,0,17,17,0,0,0,14,14,15,15,8,8,8,16,16,12,10,10,16,16,13,9,9,16,16,0,14,14,17,17,0,14,14,17,16,12,10,10,18,17,14,11,11,18,18,14,9,10,16,16,0,13,13,18,19,0,14,13,16,16,12,9,9,16,16,17,13,13,17,17,14,9,9,15,15,0,14,14,19,20,0,13,13,15,15,0,15,15,18,19,0,0,22,22,22,0,13,13,17,17,0,16,16,19,21,0,14,14,16,16,0,14,14,18,18,0,0,0,0,0,0,13,13,16,16,0,18,18,0,0,0,15,15,16,16,8,7,7,14,14,12,10,10,15,15,13,10,10,15,14,0,22,0,18,18,0,22,0,18,18,12,10,10,16,15,15,12,12,17,17,14,11,11,15,15,0,20,21,19,18,0,0,0,17,18,13,11,11,15,15,16,13,13,18,18,15,11,11,14,14,0,22,21,19,19,0,21,22,18,18,0,22,22,20,18,0,0,0,0,0,0,22,19,17,17,0,0,0,22,21,0,0,22,19,17,0,0,22,19,19,0,0,0,0,0,0,22,21,18,17,0,0,0,22,0,0,0,0,19,19,0,10,10,14,14,0,11,11,15,14,0,11,11,15,15,0,14,14,15,14,0,15,15,16,16,0,11,11,16,16,0,13,13,16,16,0,11,11,15,15,0,14,14,17,16,0,14,14,15,15,0,11,11,16,16,0,14,13,15,15,0,11,11,15,15,0,15,15,17,17,0,14,14,15,14,0,16,16,17,17,0,0,22,18,18,0,13,13,15,15,0,17,17,22,0,0,15,15,15,14,0,15,16,16,17,0,0,22,18,19,0,13,13,15,15,0,20,18,21,0,0,15,15,14,14,0,11,11,13,13,0,12,12,16,16,0,12,12,16,15,0,15,16,22,22,0,17,17,0,0,0,12,12,16,16,0,14,14,18,18,0,11,11,16,16,0,15,16,22,20,0,16,16,0,22,0,12,12,16,16,0,15,15,18,20,0,11,11,16,16,0,15,15,0,0,0,16,16,0,0,0,17,17,22,0,0,0,0,0,0,0,15,15,0,21,0,18,18,0,0,0,17,16,0,0,0,17,17,22,22,0,0,0,0,0,0,15,15,21,0,0,20,22,0,0,0,18,18,0,0,0,12,12,15,15,0,12,12,15,15,0,12,12,16,16,0,13,13,15,15,0,15,15,17,17,0,13,12,16,16,0,14,14,16,16,0,12,11,16,16,0,14,14,17,17,0,14,14,16,16,0,12,12,16,16,0,15,15,17,16,0,11,11,15,16,0,14,14,17,17,0,14,14,16,16,0,15,15,18,18,0,0,0,22,19,0,13,13,15,16,0,16,17,0,0,0,14,14,16,16,0,15,15,18,17,0,0,0,20,20,0,13,13,16,15,0,17,17,22,22,0,14,14,15,15,0,11,11,16,16,0,13,13,16,17,0,13,13,17,18,0,16,16,17,17,0,17,17,18,18,0,12,12,17,17,0,16,15,18,18,0,12,12,16,16,0,16,16,18,18,0,15,15,17,17,0,12,12,17,17,0,16,16,19,18,0,12,12,16,17,0,16,16,19,19,0,15,16,16,17,0,16,16,19,17,0,0,0,20,22,0,13,13,16,16,0,19,18,21,0,0,15,15,16,16,0,16,16,18,18,0,0,0,22,21,0,14,14,16,16,0,21,19,21,22,0,16,16,16,16,0,9,9,14,14,0,13,13,15,15,0,14,14,15,15,0,0,20,18,19,0,0,22,18,18,0,12,12,15,15,0,15,15,17,18,0,14,13,14,14,0,20,0,18,18,0,21,0,18,17,0,13,13,15,16,0,17,17,18,18,0,14,14,15,15,0,22,22,20,19,0,20,21,18,18,0,20,22,19,19,0,0,0,0,0,0,20,20,17,17,0,0,22,22,21,0,22,0,18,18,0,20,22,19,19,0,0,0,0,0,0,21,21,17,18,0,0,0,21,20,0,0,22,19,18,0,18,18,15,15,0,22,21,17,16,0,0,22,17,17,0,20,22,18,18,0,0,22,20,20,0,21,19,16,16,0,21,21,18,18,0,19,19,17,17,0,0,22,19,19,0,22,20,17,17,0,21,19,16,16,0,22,22,19,18,0,19,20,16,16,0,22,21,19,21,0,21,22,17,18,0,21,20,18,18,0,0,0,19,20,0,20,19,16,16,0,22,22,0,0,0,21,21,17,16,0,22,20,19,18,0,0,0,20,20,0,20,19,16,16,0,0,0,0,0,0,21,22,17,17,0,11,11,13,13,0,13,13,15,16,0,13,13,16,16,0,17,18,21,0,0,17,18,0,0,0,12,12,15,16,0,15,15,19,18,0,12,12,16,16,0,17,17,22,0,0,17,17,0,22,0,12,12,17,16,0,16,16,19,20,0,12,12,16,16,0,17,17,0,0,0,17,17,0,21,0,17,16,22,0,0,0,0,0,0,0,15,15,20,22,0,20,18,0,0,0,18,18,0,0,0,17,17,21,0,0,0,0,0,0,0,15,15,21,22,0,19,20,22,0,0,19,18,0,0,0,14,14,18,18,0,16,16,22,20,0,16,16,22,19,0,17,17,20,22,0,19,19,0,0,0,15,15,20,0,0,18,21,0,20,0,15,15,21,20,0,18,17,0,0,0,17,17,0,22,0,15,15,19,19,0,19,18,0,0,0,15,15,20,0,0,18,18,22,22,0,17,17,0,20,0,18,18,0,0,0,0,22,0,0,0,15,15,19,20,0,20,19,0,0,0,17,17,20,21,0,17,18,20,22,0,0,0,0,22,0,15,15,20,20,0,22,20,0,0,0,17,18,20,0,0,12,12,17,16,0,14,14,17,17,0,13,13,17,17,0,16,16,18,18,0,17,16,17,17,0,13,13,17,17,0,15,16,18,18,0,13,13,16,16,0,16,16,18,18,0,16,16,17,16,0,13,13,16,16,0,17,17,18,17,0,12,12,15,16,0,17,17,19,19,0,16,16,16,16,0,16,17,19,18,0,0,0,21,22,0,14,14,16,16,0,18,18,0,22,0,16,16,16,16,0,16,16,18,17,0,0,0,21,20,0,14,14,16,16,0,21,22,22,0,0,16,16,16,16,0,9,9,14,13,0,13,14,15,16,0,14,13,15,14,0,22,0,18,18,0,21,0,17,18,0,13,13,15,15,0,15,16,18,17,0,14,14,15,14,0,20,22,18,18,0,22,21,17,17,0,13,13,15,15,0,17,17,19,19,0,14,14,14,14,0,0,22,18,18,0,0,22,17,17,0,0,22,19,20,0,0,0,0,0,0,21,20,17,16,0,0,0,21,22,0,0,0,18,19,0,0,0,18,18,0,0,0,0,0,0,22,0,17,17,0,0,0,20,22,0,0,0,18,19,0,18,19,16,16,0,22,20,17,17,0,22,22,17,18,0,22,22,18,17,0,0,22,18,19,0,20,20,17,18,0,0,22,19,18,0,22,22,17,17,0,22,0,19,19,0,0,22,18,18,0,20,22,17,17,0,0,22,18,18,0,19,20,17,17,0,22,0,20,19,0,22,21,17,17,0,0,0,18,18,0,0,0,22,19,0,20,0,17,17,0,22,0,0,22,0,0,20,17,18,0,22,0,19,19,0,0,0,0,19,0,19,21,17,17,0,0,0,0,0,0,20,21,17,16,0,11,11,13,13,0,13,13,16,16,0,13,13,15,16,0,17,17,21,22,0,17,18,0,0,0,12,12,16,16,0,15,15,18,18,0,13,13,16,16,0,17,16,21,21,0,17,17,0,0,0,13,13,16,16,0,16,16,19,18,0,13,13,16,16,0,17,17,0,22,0,17,18,20,22,0,17,18,0,0,0,0,0,0,0,0,15,15,20,0,0,18,19,0,0,0,17,17,0,0,0,18,17,22,0,0,0,0,0,0,0,15,16,21,20,0,20,20,0,0,0,18,19,0,0,0,15,15,22,22,0,17,16,20,22,0,17,17,20,22,0,18,18,0,21,0,19,18,0,0,0,16,16,20,20,0,19,19,22,0,0,15,16,21,22,0,18,19,22,0,0,17,18,0,0,0,16,16,22,0,0,19,19,0,21,0,15,16,20,0,0,18,18,0,22,0,18,17,0,0,0,18,18,0,0,0,0,0,0,0,0,16,16,22,21,0,20,21,0,0,0,17,18,22,0,0,18,18,0,0,0,0,0,0,0,0,16,16,20,19,0,22,21,0,0,0,18,18,22,22,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,8,8,11,9,9,12,12,11,10,10,12,12,12,10,10,11,11,12,12,12,12,12,12,11,11,13,13,12,12,12,13,13,12,10,10,12,12,12,11,11,13,13,12,13,13,13,13,12,11,11,13,13,12,12,12,13,13,12,10,10,12,12,12,11,11,13,13,12,13,13,12,12,12,11,11,13,13,12,13,13,13,13,12,11,11,12,12,12,11,11,12,12,12,13,13,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,12,12,12,13,13,13,13,12,13,13,12,12,11,8,8,10,10,12,11,11,11,11,12,10,10,10,10,13,11,11,10,10,13,11,11,10,10,13,12,12,12,12,13,11,11,11,11,13,12,12,11,11,13,12,12,11,11,13,12,12,12,11,13,12,12,12,12,13,11,11,11,11,13,12,12,11,11,13,11,12,11,11,13,12,12,11,11,14,12,12,11,11,13,11,11,11,11,14,12,12,11,11,13,11,12,10,10,14,12,12,11,11,14,12,12,11,11,14,11,11,11,11,14,12,12,11,11,13,12,12,11,11,14,12,12,11,11,11,8,8,10,10,12,7,7,10,10,12,9,9,11,11,13,9,9,9,9,13,13,13,10,10,13,9,9,12,12,13,13,13,12,12,13,9,8,11,11,13,10,10,12,12,14,13,13,11,11,13,9,9,11,11,13,13,13,12,12,13,9,9,10,10,13,10,10,11,11,13,13,13,10,10,14,10,10,11,11,14,14,14,12,12,13,9,9,10,10,13,10,10,11,11,14,13,14,10,10,14,14,14,11,12,14,14,14,14,14,14,13,13,10,10,13,14,14,11,11,14,14,14,10,10,14,9,9,9,9,14,9,9,9,9,14,10,10,9,9,14,10,10,8,8,14,11,11,8,8,15,11,11,10,10,15,12,12,10,10,15,10,10,10,10,15,11,11,10,10,15,13,13,10,10,15,11,11,10,10,15,12,12,10,10,15,10,10,10,10,15,11,11,10,10,15,13,13,10,10,15,11,11,10,10,15,12,12,10,10,15,11,11,9,9,15,11,11,9,9,15,13,13,9,9,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,13,12,9,9,15,13,13,9,9,14,12,12,9,9,14,13,13,9,9,14,13,13,9,9,14,13,13,7,7,14,13,13,8,8,15,14,14,10,10,15,14,14,10,10,15,14,14,10,10,15,14,14,10,10,15,14,14,9,9,15,14,14,10,10,15,14,14,10,10,14,14,14,9,9,15,14,14,10,10,14,14,14,9,9,15,14,14,10,10,15,14,14,10,10,14,14,14,9,9,14,14,14,9,9,14,14,14,8,8,15,14,14,10,10,15,14,14,11,11,15,14,14,9,9,15,14,14,9,9,14,14,14,8,8,13,9,9,12,12,17,11,11,12,12,17,12,12,12,12,17,12,12,11,11,18,15,15,12,12,17,12,12,12,12,17,14,15,13,13,17,12,12,12,12,17,13,13,12,13,17,15,15,12,12,18,13,13,13,13,18,15,15,13,13,18,12,12,12,12,18,13,13,13,13,18,15,15,12,12,18,13,13,12,12,18,15,15,13,13,18,13,13,12,12,17,13,13,12,12,17,15,15,12,12,18,15,15,13,13,18,15,15,13,14,18,15,16,12,12,18,15,15,12,12,18,16,16,12,12,13,8,8,10,10,14,15,14,11,11,14,15,15,12,12,15,14,14,12,11,15,15,15,12,12,15,15,15,12,12,15,15,15,13,13,15,15,15,12,12,15,15,15,13,13,15,15,15,13,13,15,15,15,13,13,15,15,16,13,13,15,15,15,12,12,15,15,15,13,13,15,15,15,13,13,15,15,15,13,13,15,15,15,13,13,15,15,14,12,12,15,15,15,12,12,16,15,14,12,12,16,15,15,13,13,16,16,16,13,13,16,15,15,12,12,15,15,15,13,13,15,15,15,12,12,13,12,12,10,10,14,14,14,11,11,15,14,14,12,12,15,14,14,11,11,15,14,14,11,11,15,15,15,13,13,15,14,14,13,13,15,15,15,12,12,15,14,15,13,13,16,15,15,12,12,15,15,15,13,13,16,14,14,13,13,15,15,15,12,12,15,15,15,13,13,16,15,15,12,12,16,15,15,12,12,16,14,14,13,13,15,15,15,11,11,15,15,15,12,12,16,15,15,11,11,16,15,15,13,13,16,14,15,14,14,16,15,15,12,12,16,15,14,12,12,16,15,15,12,12,14,10,10,9,9,14,11,11,12,12,14,12,12,13,13,14,12,12,12,12,15,14,14,13,13,15,13,13,14,14,15,14,14,15,15,15,12,12,13,13,15,13,13,14,14,15,14,14,13,13,15,13,13,13,14,15,14,14,15,15,15,12,12,13,13,15,13,13,14,14,15,14,14,13,13,15,13,13,14,14,15,14,14,15,15,15,13,13,12,12,15,13,13,13,13,15,14,14,13,12,15,15,15,14,15,15,15,14,20,20,15,14,14,13,13,15,14,14,13,13,15,14,14,13,13,14,12,12,9,9,14,14,14,12,12,14,13,13,12,13,14,14,14,12,12,15,14,14,12,12,15,14,14,14,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,15,15,15,14,14,15,14,14,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,15,15,15,15,14,15,15,15,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,14,15,15,14,14,15,15,15,14,14,15,14,14,14,14,15,15,15,14,14,15,14,14,13,14,15,15,15,14,14,13,10,10,12,12,17,11,11,12,12,17,12,12,12,12,17,12,12,11,11,17,15,15,12,11,18,13,13,13,13,18,15,15,13,13,17,12,12,12,12,18,13,13,13,13,17,15,15,12,12,17,12,12,12,12,17,15,15,13,13,17,12,12,12,12,17,13,13,12,12,17,15,15,12,12,18,14,13,12,12,18,15,15,13,13,18,13,13,12,12,18,13,13,12,12,18,16,16,12,12,18,16,16,12,12,18,15,15,13,13,18,16,16,12,12,17,15,15,12,12,17,16,16,12,12,13,8,8,10,10,14,14,15,12,12,14,15,15,12,12,15,14,14,12,12,15,15,14,12,12,15,15,15,13,13,15,15,15,13,13,15,15,15,12,12,16,15,15,13,13,16,15,15,13,13,15,15,15,12,12,15,15,15,14,14,15,15,15,12,12,15,15,15,13,13,16,15,15,13,13,15,15,15,13,13,16,15,15,13,13,15,15,14,12,12,15,15,15,12,12,16,14,15,13,13,16,15,15,13,13,15,16,15,13,13,16,15,14,13,13,16,15,15,13,13,16,15,15,13,13,13,12,12,11,11,14,14,14,11,11,14,14,14,12,12,15,14,14,11,11,16,14,14,11,11,15,15,15,12,13,16,14,14,13,13,15,15,15,12,12,15,14,14,13,13,16,15,15,12,12,15,15,15,12,12,15,14,14,13,13,15,15,15,12,12,15,14,14,12,12,16,15,15,12,12,16,15,15,12,12,16,14,14,13,13,15,15,15,11,11,15,15,14,12,12,16,15,15,11,11,16,15,15,12,12,16,14,14,13,13,16,15,15,11,11,16,14,14,12,12,16,15,15,11,11,14,10,10,9,9,14,11,11,12,12,14,12,12,13,14,14,12,12,12,12,14,14,14,13,13,15,13,13,14,14,15,14,14,15,15,15,12,12,13,13,15,13,13,14,14,15,15,15,14,14,15,13,13,14,14,15,15,15,15,15,15,12,12,13,13,15,13,13,14,14,15,14,14,13,13,15,13,13,14,14,15,14,14,15,15,15,12,12,13,13,15,13,13,13,13,14,14,14,13,13,15,15,15,14,15,15,15,15,21,19,15,14,14,13,13,15,14,14,14,14,14,14,14,13,13,14,12,12,9,9,14,14,14,12,12,14,14,13,13,13,14,14,14,12,12,14,14,14,12,12,15,14,14,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,15,15,15,15,15,15,14,14,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,14,15,15,15,15,15,14,15,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,14,15,15,14,14,15,15,15,14,14,15,14,14,14,14,15,15,15,15,15,15,14,14,14,13,14,15,15,14,14,13,10,10,12,12,18,12,12,12,12,17,12,12,12,12,18,13,13,11,11,18,15,14,11,11,17,13,13,13,13,18,15,15,12,12,18,12,12,12,12,17,13,13,12,12,18,15,15,12,12,18,13,13,13,12,18,15,15,13,13,18,13,13,12,12,18,13,13,12,12,18,15,15,12,12,17,13,13,12,12,17,15,15,12,12,17,12,12,11,11,17,13,13,11,11,17,15,15,11,11,18,16,16,12,12,18,15,15,13,13,18,15,15,11,11,17,15,15,12,12,18,15,15,11,11,13,8,8,10,10,14,14,14,11,11,15,15,15,12,12,15,14,14,11,11,16,14,14,12,12,15,15,15,12,12,15,15,15,13,13,15,15,15,12,12,15,15,15,12,12,16,15,15,13,13,15,15,15,12,12,15,15,15,13,13,16,15,15,12,12,15,15,15,12,12,16,15,15,13,13,16,15,15,12,12,15,15,15,13,13,15,14,14,12,12,15,15,15,12,12,16,15,14,12,12,16,15,15,13,13,16,16,16,13,13,16,14,15,13,13,15,15,15,13,13,16,15,15,12,12,13,12,12,10,10,14,14,14,11,11,15,14,14,12,12,15,14,14,11,11,16,14,14,11,11,15,14,15,12,12,15,14,14,13,13,15,15,15,12,12,15,14,14,12,12,15,14,15,12,12,15,15,15,12,12,16,14,14,13,13,15,15,15,11,12,16,14,14,12,12,16,15,15,12,12,15,15,15,12,12,16,14,14,12,12,15,15,15,11,11,15,14,14,11,12,15,15,14,11,11,16,15,15,12,12,16,14,14,13,13,16,15,15,11,11,16,14,14,12,12,16,15,15,11,11,13,10,10,8,8,14,12,12,12,12,14,12,12,13,13,14,12,12,12,12,14,14,14,13,13,15,13,13,14,14,15,15,14,15,15,15,13,13,13,13,15,13,13,14,14,15,14,15,14,14,15,13,13,13,13,15,15,15,15,15,15,12,12,13,12,15,13,13,14,14,15,14,14,13,13,15,13,13,14,13,15,15,15,16,16,15,13,13,12,12,15,13,13,13,13,14,14,14,12,12,15,15,15,14,14,15,15,15,20,20,15,14,14,13,13,15,15,14,14,14,15,14,14,13,13,13,12,12,9,9,14,13,13,12,12,14,13,13,12,12,14,14,14,12,12,14,14,14,13,13,15,14,14,13,13,15,14,14,14,14,15,15,14,12,12,15,14,14,13,13,15,14,15,14,15,15,14,14,13,13,15,14,14,14,14,15,14,14,12,12,15,14,14,13,13,14,15,14,15,14,15,14,14,13,13,15,14,14,14,14,15,14,14,12,12,15,14,14,13,13,15,15,15,14,14,15,15,15,14,14,16,14,14,14,14,15,15,15,14,14,15,14,14,14,14,14,15,15,14,14,13,13,13,12,13,17,15,15,12,12,17,15,15,12,12,18,15,15,11,11,17,16,16,11,11,18,16,16,13,13,18,17,16,13,13,18,16,16,12,12,18,16,16,12,12,18,17,17,12,12,17,16,16,12,13,17,16,16,12,13,17,16,16,12,12,17,16,16,12,12,18,17,16,12,12,18,16,16,12,12,17,16,17,12,12,18,15,15,11,11,18,15,15,12,12,17,17,17,11,11,17,17,17,12,12,17,16,16,13,13,18,16,16,11,11,18,16,16,12,12,18,17,16,11,11,14,14,14,10,10,16,15,14,11,11,16,15,15,12,12,16,14,14,12,12,17,14,14,13,13,17,15,15,13,13,17,15,15,14,14,16,15,15,12,12,16,15,15,13,13,18,15,15,14,14,16,15,15,12,12,16,15,15,14,14,16,15,15,12,12,16,15,15,13,13,17,15,15,13,13,17,15,15,13,13,17,15,15,14,14,16,14,14,12,12,17,15,15,12,12,18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,17,15,14,13,13,17,15,15,14,14,17,15,15,13,13,14,12,12,11,11,15,14,14,12,12,16,14,14,12,12,16,14,14,11,11,17,14,14,12,12,16,15,14,13,13,16,14,14,13,13,16,15,15,12,12,16,14,14,13,13,17,15,15,13,13,16,15,15,13,13,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,16,15,15,12,12,17,15,15,12,12,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,16,15,15,12,12,17,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,17,15,15,12,12,14,14,14,8,8,14,14,14,13,13,14,15,15,14,14,14,14,14,14,14,15,15,15,19,19,15,15,15,14,14,15,15,16,20,19,15,15,15,14,14,15,16,16,15,15,15,15,15,19,19,15,15,15,14,14,15,16,16,19,20,15,15,15,14,14,15,15,15,15,15,15,15,15,19,19,15,15,15,15,15,15,15,16,19,20,15,14,15,14,14,15,15,15,15,15,15,15,15,20,19,15,15,15,21,19,15,16,16,20,20,15,15,14,19,19,15,15,16,20,21,15,15,15,20,19,13,12,12,9,9,14,14,14,12,12,14,13,13,13,13,14,14,14,13,13,15,14,14,20,19,15,14,14,14,13,15,14,14,19,19,15,15,14,13,13,15,14,14,14,14,15,15,15,19,20,15,14,14,13,13,15,14,14,20,19,14,15,14,13,13,15,14,14,14,13,15,15,15,19,20,15,15,14,14,14,15,14,14,21,19,15,15,15,13,13,15,14,14,14,14,14,15,15,20,20,15,15,15,21,20,15,14,14,19,20,15,15,15,20,20,15,14,14,19,20,15,15,15,21,19,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,6,7,7,7,8,8,7,8,8,10,11,11,9,8,8,7,8,8,11,11,11,9,8,8,6,7,7,9,11,11,9,11,11,10,11,11,12,13,13,11,12,12,10,11,11,13,14,14,12,12,12,6,6,6,8,6,6,8,7,7,9,7,7,11,10,10,10,6,6,9,7,7,12,10,10,11,6,7,7,7,7,11,10,10,12,10,10,11,10,10,14,13,13,13,10,10,12,11,11,15,13,13,14,10,10,8,7,7,12,11,11,12,11,11,11,11,11,14,14,14,13,12,12,12,11,11,15,15,15,13,12,12,0,10,10,0,11,11,0,11,11,0,11,11,0,14,14,0,11,11,0,11,11,0,15,15,0,11,11,7,8,8,12,10,10,12,10,10,12,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,12,11,11,12,11,11,16,14,14,14,12,12,13,12,12,15,14,14,15,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,12,12,0,14,14,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,0,8,8,0,8,8,0,9,9,0,9,9,0,9,9,0,9,9,0,9,9,0,8,8,0,6,6,0,7,7,0,7,7,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,6,6,0,6,6,0,6,6,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,6,6,0,8,8,0,9,9,0,9,9,0,10,10,0,10,10,0,10,10,0,10,10,0,11,11,0,9,9,0,7,7,0,10,10,0,10,10,0,12,11,0,12,12,0,11,11,0,11,11,0,12,12,0,10,10,0,7,7,0,10,10,0,10,10,0,12,12,0,11,12,0,11,11,0,11,11,0,11,11,0,10,10,0,8,8,0,9,9,0,9,9,0,10,10,0,10,10,0,10,9,0,10,10,0,10,10,0,9,9,0,6,6,0,10,10,0,10,10,0,11,11,0,12,12,0,11,11,0,11,11,0,12,12,0,11,11,0,7,7,0,9,9,0,9,9,0,11,11,0,11,11,0,10,10,0,10,10,0,11,11,0,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,6,7,7,0,8,8,6,9,9,8,11,11,0,8,8,0,9,9,0,12,12,0,8,8,5,7,7,7,10,10,0,12,12,8,11,11,9,12,12,0,11,12,0,12,12,0,15,15,0,12,12,0,6,6,0,6,6,0,7,7,0,7,7,0,10,10,0,7,7,0,8,8,0,11,11,0,7,7,6,7,7,10,9,9,0,11,10,10,9,9,12,12,12,0,10,10,0,11,11,0,13,13,0,11,11,7,6,6,10,10,10,0,11,11,11,11,11,12,12,12,0,11,11,0,12,12,0,15,15,0,11,11,0,11,11,0,11,11,0,12,12,0,12,12,0,14,14,0,12,12,0,12,12,0,15,15,0,11,11,0,8,8,0,10,10,0,11,11,0,11,11,0,12,12,0,12,12,0,11,11,0,15,15,0,11,11,0,6,6,0,10,10,0,12,12,0,10,10,0,13,13,0,12,12,0,13,13,0,14,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,0,0,0,8,8,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,6,6,0,0,0,7,7,0,0,0,8,8,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,10,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,0,0,10,10,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,11,0,0,0,12,12,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,0,0,10,10,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,13,13,0,0,0,0,0,0,0,0,14,13,0,0,0,0,0,0,0,0,13,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,14,14,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,12,13,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,14,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,12,12,0,0,0,14,14,0,0,0,0,0,0,0,0,14,14,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,2,2],"i8",L3,F.GLOBAL_BASE+477020),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,4,12,9,8,12,15,17,4,2,11,6,5,9,13,15,11,7,8,7,7,10,14,13,8,5,7,5,5,8,12,12,8,4,7,4,3,6,11,12,11,8,9,7,6,8,11,12,15,13,14,12,9,7,10,13,16,12,17,12,7,5,8,11,0,0,0,0,255,255,255,255,255,255,255,255,7,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,F.GLOBAL_BASE+487288),d3([1,0,0,0,2,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,200,161,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,128,7,0,0,0,0,0,0,0,0,0,96,128,7,0,136,128,7,0,0,0,0,0,0,0,0,0,176,128,7,0,216,128,7,0,0,0,0,0,0,0,0,0,0,129,7,0,40,129,7,0,0,0,0,0,0,0,0,0,80,129,7,0,120,129,7,0,40,129,7,0,0,0,0,0,160,129,7,0,88,125,7,0,128,125,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,0,128,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,248,127,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,124,7,0,8,125,7,0,0,0,0,0,0,0,0,0,48,125,7,0,88,125,7,0,128,125,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,16,127,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,192,127,7,0,0,0,0,0,2,0,0,0,25,0,0,0,216,126,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,248,126,7,0,0,0,0,0,2,0,0,0,9,0,0,0,184,126,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,200,126,7,0,0,0,0,0,1,0,0,0,25,0,0,0,48,126,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,80,126,7,0,0,0,0,0,1,0,0,0,25,0,0,0,168,125,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,200,125,7,0,0,0,0,0,3,4,4,5,4,5,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,13,14,16,16,16,16,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,5,5,5,6,6,5,6,5,6,6,6,6,7,7,7,6,7,6,7,7,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,8,8,9,9,10,10,11,11,4,6,5,8,6,9,8,10,9,10,10,11,10,5,5,6,6,8,8,9,9,10,10,10,10,11,7,8,8,9,8,10,9,10,9,11,10,11,10,7,8,8,8,10,9,10,10,10,10,11,10,11,9,10,10,11,11,11,11,12,11,12,11,12,11,9,10,10,11,11,11,11,11,11,11,12,11,12,11,11,11,12,12,12,12,12,12,12,12,12,11,11,12,11,12,12,12,12,12,12,12,12,11,12,12,12,12,12,13,12,13,12,12,12,12,12,12,12,12,12,13,13,13,13,12,13,12,12,12,12,12,13,13,12,13,12,13,12,13,12,12,12,12,13,13,13,13,13,13,12,12,12,12,12,11,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,3,7,7,9,13,16,3,2,4,6,10,13,17,7,4,4,6,9,12,14,7,6,6,5,7,9,12,10,10,9,6,6,9,12,14,14,13,9,8,10,11,18,18,15,13,11,10,11,0,0,0,0,0,0,0,5,0,0,0,243,0,0,0,192,160,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,184,161,7,0,0,0,0,0,5,0,0,0,243,0,0,0,184,159,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,176,160,7,0,0,0,0,0,5,0,0,0,243,0,0,0,176,158,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,159,7,0,0,0,0,0,5,0,0,0,243,0,0,0,168,157,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,160,158,7,0,0,0,0,0,5,0,0,0,53,12,0,0,88,145,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,144,157,7,0,0,0,0,0,5,0,0,0,53,12,0,0,8,133,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,64,145,7,0,0,0,0,0,1,0,0,0,7,0,0,0,224,132,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,232,132,7,0,0,0,0,0,5,0,0,0,243,0,0,0,216,131,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,208,132,7,0,0,0,0,0,5,0,0,0,243,0,0,0,208,130,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,200,131,7,0,0,0,0,0,5,0,0,0,243,0,0,0,200,129,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,192,130,7,0,0,0,0,0,1,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,7,7,7,7,7,7,7,7,7,8,8,9,8,8,8,7,7,8,8,8,9,8,8,9,7,7,6,6,6,9,8,7,9,7,7,9,8,8,10,8,8,10,8,8,10,8,8,10,8,8,10,8,8,7,6,6,9,6,6,9,7,7,9,7,7,10,8,8,9,6,6,9,7,7,10,8,8,9,7,7,7,8,8,11,9,9,11,9,9,11,8,9,12,9,9,12,8,8,11,9,9,12,9,9,12,8,8,8,7,7,10,9,9,10,10,9,10,9,9,11,10,10,11,9,9,11,9,9,11,10,11,11,9,9,10,8,8,11,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,9,9,11,10,10,11,9,9,9,8,8,11,9,9,12,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,9,9,12,8,8,9,7,7,11,9,9,11,10,10,11,9,9,11,11,11,11,9,9,11,10,10,11,11,11,11,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,10,10,11,9,9,11,9,10,11,10,10,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,6,6,7,8,8,7,8,8,7,9,8,10,11,11,9,8,8,7,8,8,11,11,11,9,8,8,6,7,7,10,10,10,10,10,10,10,10,10,14,13,13,12,11,11,10,10,10,14,14,13,12,11,11,6,6,6,8,5,5,8,7,7,9,7,7,11,10,10,9,7,7,9,7,7,12,10,10,10,7,7,7,8,8,12,11,10,12,10,10,11,10,10,15,13,13,13,10,10,11,10,10,17,14,13,13,10,10,7,7,7,12,11,12,12,11,11,12,11,11,16,14,14,13,12,12,12,11,11,17,15,14,14,12,12,10,9,9,13,11,11,13,11,11,13,11,11,17,14,13,14,11,11,12,11,11,16,15,14,14,11,11,7,8,8,12,11,11,12,10,10,12,10,10,15,13,13,14,11,10,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,12,11,11,12,11,11,17,14,14,14,12,12,12,11,11,16,15,15,14,12,12,10,10,10,13,11,11,13,11,11,13,11,12,16,14,14,14,11,11,13,12,11,16,15,15,14,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,14,14,6,7,7,14,14,7,7,7,14,14,0,13,13,16,16,0,13,13,15,14,7,8,8,15,15,9,10,10,16,16,9,8,8,15,15,0,13,13,17,16,0,13,13,15,16,8,8,8,15,15,12,11,11,16,16,9,8,8,14,14,0,13,13,17,18,0,13,13,15,15,0,14,14,16,16,0,0,0,19,18,0,12,12,16,15,0,15,16,0,20,0,14,14,16,16,0,14,14,17,17,0,0,0,19,18,0,12,12,15,15,0,17,17,0,20,0,14,14,16,16,5,6,7,12,12,9,9,9,14,14,10,10,10,14,14,0,21,21,18,17,0,20,20,18,17,9,10,10,14,14,12,12,12,16,16,12,10,10,14,14,0,20,19,18,17,0,0,20,17,18,11,10,10,14,14,14,13,13,18,18,13,11,11,14,14,0,20,20,17,18,0,21,21,17,17,0,21,0,18,18,0,0,0,0,0,0,20,19,16,17,0,0,0,19,19,0,0,0,18,18,0,21,21,18,18,0,0,0,0,0,0,20,20,16,17,0,0,0,21,21,0,0,0,18,19,6,6,6,13,12,8,6,6,11,11,8,6,6,13,13,0,9,9,11,11,0,11,10,14,14,9,7,7,13,13,11,9,9,13,13,10,6,6,13,13,0,10,10,14,15,0,10,10,13,13,9,7,7,13,13,13,10,9,13,13,10,6,6,13,13,0,10,10,15,14,0,10,10,13,13,0,11,11,15,15,0,19,20,17,17,0,9,9,13,13,0,13,13,20,20,0,11,11,13,13,0,11,11,15,15,0,19,19,17,17,0,10,10,13,13,0,15,15,20,20,0,12,12,13,13,0,10,10,12,12,0,11,11,15,15,0,11,11,15,15,0,15,15,20,0,0,16,16,0,21,0,11,11,15,15,0,14,14,18,17,0,11,11,15,15,0,15,16,19,20,0,16,16,21,21,0,12,12,15,15,0,15,14,18,18,0,11,11,16,16,0,15,15,21,21,0,16,15,0,0,0,16,16,21,0,0,0,0,0,0,0,14,14,20,20,0,18,18,0,0,0,16,17,21,0,0,16,16,21,21,0,0,0,0,0,0,15,15,21,21,0,20,19,0,21,0,17,17,0,0,0,10,10,12,11,0,10,10,10,11,0,11,11,12,12,0,11,11,9,9,0,13,13,11,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,12,12,13,13,0,12,12,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,13,13,14,14,0,12,12,12,12,0,14,14,14,13,0,19,20,15,15,0,12,11,12,12,0,15,15,21,20,0,13,13,11,11,0,13,13,13,13,0,19,0,15,15,0,12,12,12,12,0,17,16,19,0,0,13,13,12,12,7,7,7,16,16,11,9,9,15,15,12,9,9,16,16,0,13,13,15,14,0,14,14,17,16,10,9,9,16,16,14,11,11,17,16,12,9,8,15,15,0,13,13,18,18,0,13,13,15,15,12,10,10,18,17,15,12,12,17,17,14,9,9,16,16,0,13,13,18,19,0,14,13,17,16,0,14,14,18,18,0,0,0,20,21,0,12,12,16,16,0,16,16,20,21,0,14,14,17,16,0,14,14,18,19,0,0,0,19,21,0,13,13,17,17,0,17,17,0,21,0,15,15,16,16,8,7,7,14,14,11,10,10,15,15,12,10,10,15,15,0,20,20,18,18,0,0,0,17,17,11,10,10,16,16,14,12,12,18,17,14,11,11,15,15,0,20,21,18,18,0,0,19,18,17,12,10,10,16,16,17,14,14,19,19,14,11,11,15,15,0,21,21,19,19,0,21,20,19,18,0,21,0,18,19,0,0,0,0,0,0,20,20,18,17,0,21,0,0,0,0,0,0,19,18,0,0,0,18,19,0,0,0,0,0,0,0,21,17,18,0,0,0,0,21,0,0,21,18,19,11,9,9,14,14,13,10,10,13,13,13,11,11,15,15,0,13,13,12,12,0,15,15,16,16,13,10,10,15,15,16,12,12,15,15,15,10,10,15,15,0,14,13,16,15,0,14,13,15,15,13,10,10,15,15,18,14,14,15,15,15,10,10,14,15,0,14,14,16,16,0,14,14,16,15,0,15,15,17,16,0,21,0,18,18,0,12,13,15,15,0,16,16,0,0,0,14,14,15,15,0,15,15,16,16,0,21,20,18,18,0,13,13,15,15,0,19,18,0,0,0,15,15,15,15,0,11,11,13,13,0,12,12,16,16,0,12,12,16,16,0,15,16,20,0,0,16,17,0,0,0,12,12,16,16,0,14,14,18,18,0,11,11,16,17,0,15,15,20,0,0,16,16,0,0,0,12,12,16,16,0,15,15,19,19,0,11,11,17,17,0,16,16,21,0,0,16,16,0,0,0,17,17,20,20,0,0,0,0,0,0,15,15,20,0,0,17,18,0,0,0,17,17,0,0,0,16,16,0,21,0,0,0,0,0,0,15,15,21,0,0,19,18,0,0,0,18,17,0,0,0,11,11,14,14,0,11,11,15,15,0,12,12,16,16,0,13,13,14,14,0,14,14,17,17,0,12,12,16,16,0,14,14,16,16,0,11,11,16,15,0,13,13,16,17,0,13,13,16,16,0,12,12,15,16,0,15,14,16,16,0,11,11,15,15,0,14,14,17,17,0,13,13,16,16,0,15,14,18,18,0,21,0,19,19,0,13,13,15,15,0,16,16,20,20,0,14,14,16,15,0,14,14,17,17,0,21,0,20,18,0,13,13,15,15,0,17,17,0,0,0,14,14,16,15,8,8,8,16,16,12,9,9,16,16,13,9,9,16,16,0,14,14,18,17,0,14,14,16,17,12,10,10,18,17,14,11,11,18,18,14,9,9,16,16,0,13,13,18,18,0,13,13,17,16,12,9,9,16,17,17,13,13,16,16,14,9,9,15,15,0,14,14,20,20,0,13,13,15,15,0,15,14,18,18,0,0,0,20,21,0,12,13,16,17,0,16,16,20,21,0,14,14,16,17,0,14,14,18,17,0,0,0,20,21,0,13,13,16,16,0,19,17,0,21,0,14,15,16,16,8,7,7,14,13,12,10,10,15,15,13,10,10,15,15,0,21,21,18,19,0,20,21,18,18,12,10,10,16,15,15,12,12,17,17,14,11,11,15,15,0,21,21,19,18,0,0,21,17,18,13,11,11,15,15,16,13,13,18,19,15,11,11,15,14,0,21,0,19,19,0,0,21,18,18,0,0,21,19,19,0,0,0,0,0,0,20,19,17,17,0,0,0,21,0,0,21,0,18,19,0,0,20,20,19,0,0,0,0,0,0,21,20,18,17,0,0,0,0,20,0,0,0,18,19,0,10,10,15,14,0,11,11,14,14,0,11,11,15,16,0,14,14,15,15,0,15,15,16,16,0,11,11,16,16,0,14,13,16,16,0,11,11,15,15,0,14,14,16,16,0,14,14,15,15,0,11,11,15,15,0,13,13,15,15,0,11,11,15,15,0,15,15,18,17,0,14,14,15,15,0,15,16,18,18,0,0,0,20,20,0,14,13,16,15,0,17,17,21,0,0,15,15,15,15,0,16,15,17,17,0,0,0,19,19,0,13,13,15,15,0,20,19,0,0,0,15,15,15,15,0,11,11,13,13,0,12,12,16,16,0,12,12,16,16,0,15,15,21,21,0,17,16,0,0,0,12,12,16,16,0,14,14,17,17,0,11,11,16,16,0,15,15,0,0,0,16,16,21,0,0,12,12,17,16,0,14,15,20,20,0,11,11,16,16,0,15,15,0,20,0,16,16,0,21,0,16,17,21,0,0,0,0,0,0,0,15,15,0,21,0,18,18,0,0,0,17,16,0,0,0,17,17,21,0,0,0,0,0,0,0,15,15,0,20,0,19,20,21,0,0,17,18,0,0,0,12,12,15,15,0,12,12,15,15,0,12,12,16,16,0,13,13,15,15,0,15,15,17,17,0,13,12,17,16,0,14,14,17,16,0,11,11,16,16,0,14,14,17,17,0,14,14,17,17,0,12,12,16,16,0,15,15,17,17,0,11,11,16,16,0,14,14,17,17,0,14,14,16,16,0,15,15,18,17,0,0,0,19,0,0,13,13,16,16,0,16,16,0,21,0,14,14,16,16,0,15,15,18,17,0,0,0,19,19,0,13,13,16,16,0,18,17,0,21,0,14,15,16,16,0,11,11,16,16,0,13,13,17,17,0,13,13,17,17,0,16,16,16,17,0,16,16,18,18,0,12,12,17,17,0,16,15,18,17,0,12,12,16,16,0,16,15,19,19,0,16,15,17,17,0,12,12,17,18,0,16,16,18,18,0,12,12,16,16,0,16,16,19,19,0,15,16,17,17,0,15,16,18,18,0,0,0,20,20,0,13,13,16,16,0,18,18,21,20,0,15,15,16,16,0,16,16,19,18,0,0,0,19,20,0,14,14,17,17,0,19,19,0,21,0,15,16,16,16,0,9,9,14,14,0,13,13,15,15,0,14,14,15,15,0,0,21,19,19,0,0,21,18,18,0,12,12,15,15,0,15,15,18,18,0,14,13,15,15,0,21,21,18,19,0,21,20,18,18,0,13,13,16,16,0,17,17,18,19,0,14,14,15,15,0,0,21,19,19,0,21,20,18,19,0,20,20,19,19,0,0,0,0,0,0,19,20,17,17,0,0,0,21,21,0,21,0,18,20,0,21,0,18,21,0,0,0,0,0,0,21,21,19,18,0,0,0,0,0,0,0,0,19,19,0,18,18,15,15,0,18,20,17,16,0,20,0,17,17,0,21,0,17,17,0,21,20,19,20,0,19,19,16,16,0,21,21,17,18,0,19,19,17,17,0,20,21,21,21,0,20,20,18,18,0,19,19,16,16,0,0,21,18,19,0,18,19,16,17,0,21,21,19,20,0,21,19,18,18,0,21,20,19,21,0,0,0,20,21,0,19,19,17,16,0,0,0,0,0,0,21,20,17,17,0,20,21,19,18,0,0,0,0,21,0,19,18,16,17,0,0,0,0,0,0,20,20,17,17,0,11,11,14,14,0,13,13,16,16,0,13,13,16,16,0,17,17,21,0,0,17,18,0,0,0,12,12,16,16,0,15,15,17,18,0,12,12,16,16,0,16,16,0,20,0,17,17,0,21,0,12,12,17,17,0,16,16,19,20,0,12,12,17,17,0,17,17,0,20,0,17,17,0,0,0,17,17,21,0,0,0,0,0,0,0,15,15,0,20,0,19,19,0,0,0,18,18,0,0,0,17,17,0,0,0,0,0,0,0,0,15,15,0,0,0,20,19,0,0,0,19,18,0,0,0,14,14,21,19,0,16,16,20,21,0,16,16,20,20,0,17,17,20,0,0,17,17,20,20,0,15,15,20,20,0,19,18,20,0,0,15,15,20,20,0,17,18,21,20,0,17,17,20,21,0,15,15,19,19,0,19,18,21,21,0,15,15,19,20,0,17,18,0,0,0,17,17,20,20,0,17,18,20,21,0,0,0,0,0,0,15,15,20,20,0,19,19,0,0,0,17,17,19,21,0,17,17,0,21,0,0,0,0,21,0,15,15,20,19,0,0,20,0,0,0,17,17,21,20,0,12,12,16,16,0,14,14,17,17,0,13,13,17,17,0,16,16,17,18,0,17,16,18,18,0,13,13,18,17,0,15,16,19,18,0,13,13,16,16,0,16,16,19,19,0,16,16,17,17,0,13,12,17,17,0,16,16,18,17,0,12,12,16,16,0,17,17,19,18,0,16,15,16,16,0,16,17,18,19,0,0,0,20,20,0,14,14,17,16,0,18,18,21,0,0,16,16,16,16,0,16,16,18,17,0,0,21,21,21,0,14,14,16,16,0,21,20,21,0,0,16,16,16,16,0,10,10,14,14,0,14,14,15,16,0,14,14,15,15,0,0,21,18,18,0,0,21,18,19,0,13,13,16,16,0,16,16,18,17,0,14,14,15,15,0,20,0,18,18,0,21,0,18,17,0,13,13,16,15,0,17,17,19,19,0,14,14,15,15,0,20,20,18,19,0,0,0,18,17,0,0,21,18,18,0,0,0,0,0,0,20,21,18,17,0,0,0,0,0,0,0,0,19,19,0,0,21,18,18,0,0,0,0,0,0,21,0,18,17,0,0,0,0,21,0,0,0,19,20,0,19,19,16,16,0,0,21,18,17,0,21,0,18,18,0,20,0,19,18,0,21,20,19,19,0,21,19,17,18,0,0,21,19,19,0,21,19,18,18,0,21,0,20,18,0,0,21,18,18,0,20,21,17,17,0,21,0,18,18,0,21,19,17,17,0,21,0,0,20,0,0,20,17,18,0,0,0,19,20,0,0,0,20,19,0,19,21,17,18,0,21,0,0,0,0,21,21,18,17,0,0,21,18,18,0,0,0,0,21,0,20,19,16,17,0,0,0,0,0,0,21,20,17,17,0,11,11,13,13,0,13,13,16,16,0,13,13,16,16,0,17,17,0,21,0,18,19,21,0,0,12,12,16,16,0,15,15,19,18,0,13,13,16,16,0,16,17,21,19,0,17,17,21,21,0,13,13,16,16,0,16,16,20,18,0,13,13,16,16,0,17,17,0,0,0,18,18,0,0,0,18,17,0,20,0,0,0,0,0,0,15,15,21,21,0,19,18,0,0,0,17,17,21,21,0,17,17,0,0,0,0,0,0,0,0,15,15,20,21,0,20,20,0,0,0,19,19,0,0,0,14,15,21,19,0,16,16,0,21,0,17,16,21,21,0,17,18,21,20,0,18,18,0,21,0,16,16,0,20,0,19,19,0,0,0,16,15,0,20,0,18,18,0,0,0,17,17,0,21,0,16,16,20,20,0,20,19,0,0,0,15,16,21,22,0,18,18,0,0,0,18,17,0,0,0,18,18,0,0,0,0,0,0,0,0,16,16,21,20,0,19,20,0,0,0,18,17,21,0,0,17,18,0,0,0,0,0,0,0,0,16,16,0,20,0,0,20,0,0,0,18,18,22,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,3,4,7,7,10,12,12,12,12,10,11,11,13,13,11,12,12,11,11,12,12,12,12,12,11,13,13,13,13,12,12,12,13,14,12,13,13,13,13,12,13,13,13,13,12,13,13,13,13,11,13,13,13,13,12,12,12,14,14,12,13,13,12,12,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,14,14,12,13,13,12,12,12,13,13,13,13,12,13,13,12,12,12,13,13,13,13,12,12,12,14,14,12,13,13,12,12,12,13,13,13,13,12,13,13,12,12,10,10,11,10,10,11,11,11,11,11,11,9,9,10,10,12,11,11,10,10,12,10,10,10,10,13,12,12,12,12,13,11,11,11,11,13,12,12,12,12,13,11,11,11,11,13,12,12,12,12,13,12,12,12,12,13,11,11,11,11,13,12,12,12,12,13,11,11,11,11,13,12,12,11,11,13,12,12,11,11,13,11,11,11,11,13,12,12,11,11,13,11,11,11,11,13,12,12,11,11,13,12,12,11,11,13,11,11,11,11,13,12,12,11,11,13,11,11,11,11,13,12,12,11,11,11,11,11,10,10,11,11,11,9,9,11,12,12,11,11,12,12,12,9,9,13,13,13,10,10,13,13,13,11,11,13,13,13,14,14,13,13,13,11,10,13,13,14,12,12,13,13,13,11,11,13,13,13,11,11,13,13,13,14,14,13,13,13,10,10,13,13,13,11,11,13,13,13,10,10,13,14,13,11,11,13,14,14,14,14,13,13,13,10,10,13,14,14,11,11,13,13,13,10,10,13,14,14,11,11,13,13,13,14,14,14,13,13,10,10,13,14,14,11,11,13,13,13,10,10,14,12,12,9,9,14,12,12,9,9,14,11,11,9,9,14,12,12,8,8,14,11,11,7,7,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,9,9,15,12,12,9,9,14,13,13,9,9,15,13,13,10,10,15,12,12,10,10,15,13,13,9,9,15,12,12,9,9,15,13,13,9,9,13,12,12,9,9,13,13,13,8,8,13,13,13,9,9,13,13,13,7,7,14,13,13,8,8,14,14,14,10,10,15,14,14,11,11,14,14,14,9,9,15,14,14,10,10,15,14,14,9,9,14,14,14,10,10,15,14,14,11,11,15,14,14,9,9,14,14,14,10,10,14,14,14,9,9,15,14,15,10,10,15,14,14,11,11,14,14,14,9,9,14,14,14,9,9,14,14,14,8,8,15,14,14,10,10,15,14,14,11,11,14,14,14,9,9,15,14,14,9,9,14,14,14,8,8,12,12,12,13,13,16,16,16,11,11,17,16,16,12,12,17,16,16,11,11,17,16,16,11,11,17,17,16,13,13,17,16,16,13,13,18,17,16,12,12,17,16,16,13,13,17,16,17,12,12,18,17,17,13,13,17,16,16,14,14,18,17,17,12,12,18,16,16,13,13,17,17,17,13,12,17,17,17,13,13,17,16,16,13,13,18,17,17,12,12,17,16,16,13,12,17,17,17,12,12,18,17,17,13,13,18,16,16,14,14,18,17,17,12,12,17,17,17,13,13,18,17,18,12,12,13,14,14,10,10,16,14,14,13,13,17,15,15,14,14,17,14,14,12,13,16,14,14,13,13,17,15,15,14,14,16,16,16,15,15,17,15,15,14,14,17,16,16,14,15,17,15,15,14,14,17,15,16,14,14,17,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,14,17,15,15,14,14,16,16,16,15,15,17,15,15,13,13,17,15,15,14,14,17,15,15,13,13,17,15,15,14,14,16,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,13,11,11,10,10,16,14,14,13,12,16,14,14,13,13,16,15,14,12,12,16,14,14,12,12,16,15,15,14,14,16,14,14,14,14,17,15,15,13,13,16,15,15,14,14,17,15,15,13,14,17,15,15,14,14,17,15,14,14,14,17,15,15,13,13,17,15,15,14,14,17,15,15,13,13,17,15,15,14,14,17,14,14,14,14,17,15,15,13,13,17,15,15,13,13,17,15,15,13,13,17,15,15,14,14,17,15,15,14,14,17,15,15,13,13,17,15,15,13,13,17,15,15,13,13,14,14,15,8,8,14,14,14,19,19,14,15,15,18,19,14,14,14,19,18,14,14,14,19,19,15,15,15,19,18,15,16,16,19,19,15,15,15,19,19,15,16,16,20,19,15,15,15,19,19,15,15,15,19,19,16,16,16,20,19,15,15,15,19,18,15,16,16,20,19,15,15,15,18,18,15,15,15,19,20,15,16,16,19,19,15,15,15,20,19,15,15,15,20,19,15,15,15,19,18,15,15,15,19,19,15,16,16,19,20,15,15,15,19,19,15,15,15,19,20,15,15,15,19,19,14,12,12,9,9,14,14,14,19,19,14,14,14,19,19,14,14,15,20,19,15,14,14,18,19,15,15,15,19,19,15,15,14,20,19,15,15,15,20,19,15,15,14,20,19,15,15,15,20,19,15,15,15,19,20,15,14,14,19,20,15,15,15,20,20,15,14,14,20,19,15,15,15,19,19,15,15,15,19,19,15,14,14,19,19,15,15,15,19,20,15,15,15,20,20,15,15,15,19,19,15,15,15,20,19,16,14,14,19,19,15,15,15,20,19,15,14,15,20,19,14,15,15,20,19,12,12,12,13,13,16,16,16,11,11,16,16,16,12,12,17,16,16,11,11,17,15,16,11,11,17,17,17,13,13,18,16,17,13,13,18,17,17,13,12,17,16,17,13,13,17,17,17,13,13,16,16,16,12,12,17,16,16,13,13,17,16,16,12,12,17,16,16,12,13,17,17,17,12,12,17,17,17,13,13,18,16,16,13,13,18,17,17,12,12,18,17,17,12,12,17,17,17,12,12,17,17,17,12,12,17,16,16,13,13,17,17,17,12,12,17,16,16,12,12,17,17,17,12,12,13,14,14,9,9,16,14,14,13,13,16,15,15,14,14,17,14,14,13,13,16,14,14,13,13,17,15,15,15,15,16,16,16,15,15,17,15,15,14,14,17,15,15,15,15,17,15,15,14,14,17,15,15,14,14,16,16,16,15,15,17,15,15,14,14,17,15,15,14,14,17,15,15,14,14,17,15,15,14,14,16,16,16,15,15,18,15,15,14,13,17,15,15,14,14,17,15,15,13,13,17,15,15,14,14,16,16,16,15,15,17,15,15,14,13,17,15,15,14,14,17,15,15,13,13,13,11,11,11,11,16,14,14,12,12,16,14,14,13,13,16,15,14,12,12,17,14,14,12,12,17,15,15,13,13,17,14,14,14,14,17,15,15,13,13,17,14,15,14,13,17,15,15,13,13,16,15,15,13,13,16,14,14,14,14,17,15,15,13,13,16,14,14,13,13,16,15,15,13,13,17,15,15,13,13,17,14,14,14,14,17,15,15,12,12,17,15,15,13,13,17,15,15,12,12,16,15,15,13,13,17,14,14,13,14,17,15,15,12,12,17,14,14,13,13,17,15,15,12,12,14,14,14,8,8,14,14,14,18,18,14,15,15,19,19,14,14,14,19,19,14,15,14,18,19,15,15,15,18,19,15,16,16,20,20,15,15,15,19,20,15,16,16,19,20,15,15,15,19,20,15,15,16,19,19,15,16,16,20,20,15,15,15,20,19,15,16,16,20,19,15,15,15,19,20,15,15,15,19,19,15,16,16,20,19,15,15,15,19,19,15,16,15,20,19,15,15,15,19,19,15,15,15,19,20,15,16,16,20,20,15,15,15,19,19,15,15,15,20,20,15,15,15,19,19,14,12,12,9,9,14,14,14,18,18,14,14,14,19,20,14,14,14,18,18,14,14,14,18,19,15,15,15,19,20,15,14,14,19,19,15,15,15,19,19,15,14,15,19,19,15,15,15,18,20,15,15,15,19,19,15,14,14,19,19,15,15,15,20,19,15,15,14,20,20,15,15,15,19,19,15,15,15,19,19,15,14,14,19,19,15,15,15,19,19,15,14,14,19,20,14,15,15,19,19,15,15,15,19,19,15,14,14,20,19,15,15,15,19,19,15,14,14,20,19,15,15,15,19,19,13,12,12,13,13,17,17,16,11,11,16,16,16,12,12,17,17,16,11,11,17,16,16,11,11,17,17,17,13,13,17,16,16,13,13,18,17,17,12,12,17,16,16,13,13,18,17,17,12,12,18,17,17,13,13,18,16,17,13,13,17,17,17,12,12,18,17,17,13,13,18,17,17,12,12,17,16,17,12,12,17,16,16,13,13,17,16,16,11,11,17,16,16,12,12,17,17,17,11,11,17,17,17,12,12,18,16,16,13,13,18,17,17,12,11,17,16,16,12,12,18,17,17,11,11,13,14,14,9,9,16,14,14,13,13,16,15,15,14,14,17,14,14,12,12,16,14,14,13,13,17,15,15,14,14,17,16,16,15,16,18,15,15,14,14,17,15,15,14,14,17,15,15,14,14,18,15,15,14,14,16,16,16,15,16,18,15,15,14,14,17,16,15,14,14,18,15,15,14,14,17,15,15,14,14,17,16,16,15,15,18,14,15,13,13,17,15,15,14,14,18,15,15,13,13,17,15,15,14,14,17,16,15,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,13,11,11,10,10,16,14,14,12,12,16,14,14,12,12,17,14,15,11,11,17,14,14,11,11,17,15,15,13,13,17,14,14,14,13,17,15,15,13,13,16,15,15,13,13,17,15,15,13,13,17,15,15,13,13,17,14,14,14,14,17,15,15,13,13,17,14,15,13,13,16,15,15,13,13,17,15,15,13,13,17,14,14,13,13,17,15,15,12,12,16,14,14,12,12,17,15,15,12,12,17,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,17,15,15,12,12,13,15,14,8,8,14,14,14,19,19,14,15,15,18,19,14,14,14,18,19,14,15,14,19,19,15,16,15,19,19,15,16,16,19,20,15,15,15,19,19,15,16,16,19,19,15,16,16,19,19,15,15,15,19,19,15,16,16,20,20,15,15,15,19,19,15,15,15,19,19,15,15,15,19,19,15,15,15,19,19,15,16,16,20,19,15,15,15,19,19,15,15,15,19,19,15,15,15,19,19,15,16,15,19,19,15,16,16,21,19,15,15,15,20,20,15,15,15,20,21,15,15,15,19,20,14,12,12,8,8,14,14,14,19,19,14,13,13,19,19,14,14,14,19,19,14,13,14,19,19,15,15,15,20,20,15,14,14,20,19,15,15,15,19,20,15,14,14,19,20,15,15,15,20,19,15,15,15,19,20,15,14,14,20,20,15,15,15,20,19,15,14,14,19,19,15,15,15,19,19,15,15,15,20,19,15,14,14,21,19,15,15,15,20,21,15,14,14,21,19,15,15,15,19,19,15,15,15,20,20,15,14,14,19,21,15,15,15,19,19,15,14,14,19,20,15,15,15,19,19,13,12,12,13,13,17,16,16,11,11,17,16,15,12,12,18,16,16,11,11,17,16,16,11,11,18,17,17,13,13,18,16,16,13,13,17,17,17,12,13,18,17,16,13,13,18,17,17,13,13,17,17,17,13,13,17,16,16,13,13,18,16,17,12,12,17,16,16,13,12,17,17,17,12,12,18,17,17,13,12,18,16,16,13,13,18,17,17,12,12,17,16,16,12,12,17,17,17,11,11,17,16,16,12,12,17,16,16,13,13,17,16,16,11,11,17,16,16,12,12,17,17,17,11,11,13,14,14,9,9,16,14,14,13,13,16,15,15,14,14,17,14,14,12,12,16,14,14,13,13,17,15,15,14,14,17,15,16,15,15,17,15,15,14,14,17,15,16,14,15,18,15,15,14,14,17,15,15,14,14,16,16,16,15,15,18,15,15,13,14,17,15,15,14,14,18,15,15,14,14,17,15,15,14,14,17,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,13,11,11,10,10,16,14,14,12,12,16,14,14,13,13,17,14,14,11,11,17,14,14,12,12,17,15,15,14,14,17,14,14,14,14,17,15,15,13,13,17,15,14,13,13,16,15,15,13,13,16,15,15,13,13,17,14,14,14,14,17,15,15,13,13,17,14,14,13,13,16,15,15,13,13,16,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,16,15,15,12,12,17,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,16,15,15,12,12,14,14,14,8,8,14,14,14,18,18,14,15,15,19,18,14,14,14,18,18,14,14,14,18,19,15,16,15,19,19,15,17,16,20,20,15,15,15,19,19,15,16,16,19,19,15,15,15,19,19,15,16,15,18,19,15,16,16,20,20,15,15,15,19,19,15,16,16,19,20,15,15,15,19,19,15,15,16,19,19,15,16,16,20,20,15,15,15,19,19,15,15,15,19,20,15,15,15,19,19,15,15,15,19,19,15,16,16,20,20,15,15,15,19,20,15,16,16,20,20,15,15,15,19,19,13,12,12,8,8,14,14,14,19,20,14,14,14,19,19,14,14,14,18,19,14,14,14,19,20,15,15,15,19,20,15,14,14,21,20,15,15,15,20,20,15,15,14,19,19,15,15,15,19,19,15,15,15,19,19,15,14,14,19,20,15,15,15,19,20,15,14,14,19,19,15,15,15,19,19,15,15,15,19,19,16,14,14,19,19,15,15,15,20,20,15,14,14,21,19,15,15,15,19,19,15,15,15,19,20,16,14,14,19,20,15,15,15,19,19,15,14,14,19,19,15,15,15,20,19,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,6,7,7,7,8,8,7,8,8,10,11,11,9,8,8,7,9,9,11,12,12,9,8,8,6,7,7,9,11,11,10,11,11,10,11,11,13,13,13,11,12,12,10,11,11,13,14,14,12,12,12,6,6,6,8,6,6,8,6,6,9,7,7,12,10,10,10,6,6,9,7,7,12,10,10,11,7,6,7,8,8,12,10,10,12,10,10,11,10,10,15,13,13,13,10,10,12,11,11,15,13,13,14,11,11,8,7,7,12,11,11,12,11,11,11,11,11,14,14,14,13,12,12,12,11,11,16,15,15,14,12,12,0,10,10,0,11,11,0,12,12,0,11,11,0,14,14,0,11,11,0,11,11,0,15,15,0,11,11,7,8,8,13,10,10,12,10,10,12,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,13,11,11,12,11,11,15,14,14,14,12,12,13,12,12,15,14,14,15,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,12,12,0,15,14,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,0,8,8,0,8,8,0,10,10,0,9,9,0,10,10,0,10,10,0,9,9,0,10,10,0,7,7,0,7,7,0,7,7,0,8,8,0,8,8,0,8,8,0,9,9,0,8,8,0,8,8,0,7,7,0,8,8,0,8,8,0,10,10,0,9,9,0,9,9,0,10,10,0,9,9,0,10,10,0,8,8,0,11,11,0,11,11,0,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,12,12,0,8,8,0,11,11,0,11,11,0,13,12,0,12,12,0,13,12,0,13,13,0,12,12,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,11,11,0,11,11,0,13,12,0,12,12,0,12,12,0,12,12,0,11,11,0,12,12,0,8,8,0,12,12,0,12,12,0,13,13,0,12,12,0,13,13,0,13,13,0,12,13,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,0,7,7,0,8,8,0,9,9,0,12,12,0,8,8,0,9,9,0,12,12,0,8,8,0,6,6,0,11,11,0,11,11,0,12,12,0,14,14,0,11,11,0,12,12,0,14,14,0,11,11,0,6,6,0,6,5,0,7,6,0,7,7,0,10,10,0,6,6,0,7,7,0,10,10,0,7,7,0,7,7,0,10,10,0,11,11,0,11,11,0,14,14,0,10,10,0,12,12,0,14,14,0,12,12,0,6,6,0,11,11,0,11,11,0,12,12,0,14,14,0,11,11,0,12,12,0,15,15,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,11,11,0,11,11,0,12,12,0,15,15,0,12,12,0,11,11,0,15,15,0,11,11,0,6,6,0,11,11,0,12,12,0,12,12,0,15,15,0,11,11,0,12,12,0,14,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,2,2],"i8",L3,F.GLOBAL_BASE+489700),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,5,7,8,10,13,14,4,2,4,6,8,11,12,7,4,3,5,8,12,14,8,5,4,4,8,12,12,9,7,7,7,9,10,11,13,11,11,9,7,8,10,13,11,10,6,5,7,9,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,224,200,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,167,7,0,0,0,0,0,0,0,0,0,120,167,7,0,160,167,7,0,0,0,0,0,0,0,0,0,200,167,7,0,240,167,7,0,0,0,0,0,0,0,0,0,24,168,7,0,64,168,7,0,0,0,0,0,0,0,0,0,104,168,7,0,144,168,7,0,64,168,7,0,0,0,0,0,184,168,7,0,112,164,7,0,152,164,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,24,167,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,16,167,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,163,7,0,32,164,7,0,0,0,0,0,0,0,0,0,72,164,7,0,112,164,7,0,152,164,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,40,166,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,216,166,7,0,0,0,0,0,2,0,0,0,25,0,0,0,240,165,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,166,7,0,0,0,0,0,2,0,0,0,9,0,0,0,208,165,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,224,165,7,0,0,0,0,0,1,0,0,0,25,0,0,0,72,165,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,104,165,7,0,0,0,0,0,1,0,0,0,25,0,0,0,192,164,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,224,164,7,0,0,0,0,0,3,4,4,5,4,5,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,12,14,14,14,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,5,5,5,7,5,5,5,5,6,7,7,6,7,7,7,6,7,7,7,7,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,3,4,7,7,8,8,9,9,9,10,10,10,5,6,5,8,7,9,8,9,9,10,9,11,10,5,5,7,7,8,8,9,9,9,9,10,10,11,8,9,8,10,9,10,9,10,9,11,10,11,10,8,8,9,9,10,9,10,9,11,10,11,10,11,10,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,12,11,11,11,11,11,11,10,12,12,12,12,12,12,12,11,12,12,12,11,11,11,12,12,12,12,12,12,12,11,12,11,12,11,11,13,12,12,12,13,12,12,12,12,11,12,11,11,13,13,13,12,12,12,12,12,12,11,11,11,10,13,13,13,12,13,12,13,11,13,10,12,11,11,13,13,12,13,12,12,12,12,11,12,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,2,3,6,7,10,14,16,3,2,5,7,11,14,17,6,5,5,7,10,12,14,7,7,6,6,7,9,13,10,11,9,6,6,9,11,15,15,13,10,9,10,12,18,18,16,14,12,13,16,0,0,0,0,0,0,0,5,0,0,0,243,0,0,0,216,199,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,208,200,7,0,0,0,0,0,5,0,0,0,243,0,0,0,208,198,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,200,199,7,0,0,0,0,0,5,0,0,0,243,0,0,0,200,197,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,192,198,7,0,0,0,0,0,5,0,0,0,243,0,0,0,192,196,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,184,197,7,0,0,0,0,0,5,0,0,0,53,12,0,0,112,184,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,168,196,7,0,0,0,0,0,5,0,0,0,53,12,0,0,32,172,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,88,184,7,0,0,0,0,0,1,0,0,0,7,0,0,0,248,171,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,0,172,7,0,0,0,0,0,5,0,0,0,243,0,0,0,240,170,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,232,171,7,0,0,0,0,0,5,0,0,0,243,0,0,0,232,169,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,224,170,7,0,0,0,0,0,5,0,0,0,243,0,0,0,224,168,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,216,169,7,0,0,0,0,0,1,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,7,7,7,8,8,7,7,7,7,8,8,8,8,9,8,7,7,8,8,8,9,9,9,9,7,7,6,6,6,9,7,7,9,7,7,9,8,8,10,8,8,10,8,8,10,8,8,10,8,8,10,8,8,7,6,6,9,6,6,9,6,6,9,7,7,10,8,8,9,6,6,9,7,7,10,8,8,9,7,7,7,8,8,11,9,9,11,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,10,9,12,8,8,8,7,7,10,9,9,11,9,9,11,9,9,11,11,10,11,9,9,11,10,9,11,10,11,11,9,9,10,8,8,11,9,9,11,9,9,11,9,9,11,10,10,11,9,9,11,9,9,11,10,10,11,9,9,9,8,8,12,9,9,12,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,9,9,12,8,8,9,7,7,11,9,10,11,10,9,11,9,9,11,11,11,11,9,9,11,10,10,11,11,11,11,9,9,10,9,9,11,9,9,11,10,10,11,10,9,11,10,10,11,9,9,11,10,10,11,10,11,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,6,6,6,8,8,7,8,8,7,9,8,10,11,11,9,8,8,7,8,8,11,11,11,9,8,8,6,7,7,10,10,10,10,10,10,10,10,10,14,13,13,12,11,11,10,10,10,14,14,13,13,11,11,6,6,6,8,5,5,8,7,7,8,7,7,11,9,9,9,7,7,8,7,7,12,10,10,10,7,7,7,8,8,12,11,11,12,10,10,11,10,10,14,13,13,13,10,10,11,10,11,16,14,14,13,10,10,7,8,7,12,12,12,12,11,11,12,11,11,16,14,15,13,12,12,11,11,11,17,15,14,14,13,13,10,9,9,13,11,11,13,11,11,12,11,11,16,14,13,14,11,11,12,11,11,16,15,14,14,11,11,7,8,8,12,11,11,12,10,10,12,10,10,16,14,13,13,11,11,12,10,10,16,14,14,13,10,10,8,8,8,12,12,12,12,11,11,12,11,11,16,14,15,14,12,12,12,11,11,16,15,15,14,12,12,10,10,10,13,11,11,13,11,11,12,12,12,16,14,14,14,11,11,12,11,11,17,14,15,14,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,14,14,6,8,8,14,14,7,7,7,14,14,0,13,13,15,16,0,13,13,15,15,7,8,8,15,15,9,10,10,16,16,9,8,8,14,15,0,13,13,17,17,0,13,13,16,16,8,8,8,15,15,12,11,11,16,16,9,8,8,14,14,0,13,13,17,17,0,13,13,15,15,0,14,14,16,16,0,0,0,18,19,0,12,12,16,15,0,16,16,0,20,0,14,14,16,16,0,14,14,17,17,0,0,0,19,19,0,12,12,15,15,0,18,17,21,21,0,14,14,16,16,5,7,7,12,13,9,10,9,14,14,11,10,10,14,14,0,0,0,18,17,0,20,21,18,18,9,10,10,14,14,12,12,12,17,16,12,10,10,14,14,0,20,20,18,17,0,21,21,17,17,11,10,10,14,14,15,13,13,18,18,13,11,11,14,14,0,20,0,18,18,0,20,21,18,17,0,21,0,18,19,0,0,0,0,21,0,21,20,16,17,0,0,0,21,21,0,0,0,20,18,0,20,0,17,18,0,0,0,0,0,0,0,20,16,17,0,0,0,20,0,0,0,0,18,18,6,6,6,13,13,8,5,5,11,11,9,6,6,13,13,0,9,9,12,12,0,10,10,14,14,9,7,7,13,13,12,9,9,13,13,10,6,6,13,13,0,10,10,14,14,0,10,10,13,13,9,7,7,13,13,13,10,10,13,13,11,6,6,13,13,0,10,10,15,15,0,10,10,13,13,0,12,11,15,15,0,20,19,17,16,0,9,9,13,13,0,13,13,20,19,0,11,11,13,13,0,11,11,15,15,0,20,19,17,17,0,10,10,13,13,0,14,15,0,21,0,12,12,13,13,0,10,10,12,12,0,11,11,15,15,0,11,11,15,15,0,15,15,20,20,0,16,16,0,0,0,11,11,15,15,0,14,14,17,17,0,11,11,15,15,0,15,15,20,21,0,16,16,21,21,0,12,12,15,15,0,15,15,18,20,0,11,11,16,15,0,15,15,21,21,0,16,16,0,21,0,16,16,0,0,0,0,0,0,0,0,14,14,21,21,0,17,18,0,0,0,16,17,20,0,0,16,16,0,0,0,0,0,0,0,0,15,15,20,20,0,19,18,0,21,0,18,17,0,0,0,10,10,11,11,0,10,10,10,10,0,11,11,12,12,0,11,11,9,9,0,13,13,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,12,12,13,13,0,12,12,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,13,13,13,13,0,12,12,12,12,0,14,13,13,13,0,19,21,15,15,0,12,11,12,12,0,16,15,19,19,0,13,13,11,11,0,13,13,13,13,0,0,21,15,16,0,12,12,12,12,0,16,16,19,21,0,13,13,12,12,7,7,7,16,16,11,9,9,16,16,12,9,9,16,16,0,13,13,16,16,0,14,14,17,16,11,9,9,16,16,14,12,11,17,17,13,8,9,15,15,0,13,13,19,19,0,13,13,16,15,12,10,10,17,17,15,12,12,19,18,14,9,9,17,16,0,14,14,18,0,0,14,13,16,16,0,14,15,18,17,0,21,0,19,21,0,12,12,16,16,0,16,16,0,0,0,14,14,16,16,0,14,14,18,18,0,0,21,20,0,0,13,13,16,17,0,18,18,0,0,0,15,14,17,16,8,7,7,14,14,11,10,10,15,15,13,10,10,15,15,0,21,20,19,19,0,21,0,17,18,11,10,10,15,16,14,12,12,18,18,14,11,11,15,14,0,21,20,18,19,0,0,21,18,18,12,11,11,16,16,16,14,14,18,20,14,11,11,16,15,0,20,20,19,19,0,0,20,18,18,0,21,0,18,19,0,0,0,0,0,0,20,20,17,18,0,0,0,20,20,0,0,0,19,19,0,0,0,20,18,0,0,0,0,0,0,0,21,18,18,0,21,21,0,21,0,0,0,19,20,11,9,9,14,14,13,10,10,14,14,13,11,11,15,15,0,13,13,13,13,0,14,14,16,16,13,11,11,15,15,16,12,12,15,15,14,10,10,14,14,0,14,14,16,16,0,14,14,15,15,13,10,10,15,15,17,13,14,15,16,15,10,10,15,15,0,14,14,17,16,0,14,14,15,15,0,15,15,17,17,0,0,21,18,18,0,13,13,15,15,0,16,16,21,20,0,14,14,15,14,0,15,14,16,17,0,0,20,20,19,0,13,13,15,15,0,19,18,0,0,0,15,15,15,15,0,11,11,14,14,0,12,12,16,16,0,12,12,16,16,0,15,16,21,21,0,16,17,21,0,0,12,12,17,16,0,14,14,18,19,0,11,11,16,16,0,15,15,20,21,0,16,16,21,0,0,12,12,17,16,0,15,15,19,19,0,12,12,16,17,0,16,15,0,0,0,16,16,0,0,0,17,17,0,21,0,0,0,0,0,0,14,15,20,0,0,17,17,0,0,0,17,17,0,0,0,17,16,0,0,0,0,0,0,0,0,15,15,0,0,0,18,18,0,0,0,18,17,0,0,0,11,11,14,14,0,12,12,15,15,0,12,12,15,15,0,13,13,14,14,0,14,14,17,17,0,12,12,16,16,0,14,14,16,16,0,11,11,15,15,0,13,13,16,17,0,13,13,16,16,0,12,12,15,15,0,14,14,17,16,0,11,11,15,15,0,14,14,17,17,0,13,13,16,16,0,15,15,17,18,0,21,20,20,21,0,12,12,15,15,0,16,16,20,21,0,14,14,15,15,0,14,14,17,17,0,0,0,18,19,0,12,13,15,15,0,18,17,21,0,0,14,15,15,15,8,8,8,16,16,12,10,10,16,16,13,9,9,16,16,0,14,14,18,17,0,14,14,16,17,12,10,10,18,17,14,12,11,18,18,14,9,9,16,16,0,13,13,18,18,0,13,13,17,16,12,9,9,16,17,17,13,13,17,17,14,9,9,15,15,0,14,14,20,19,0,13,13,16,16,0,15,15,19,18,0,0,0,20,19,0,12,13,17,17,0,16,16,20,0,0,14,14,16,17,0,14,14,19,18,0,0,0,20,20,0,13,13,16,16,0,18,17,0,0,0,15,15,16,16,9,7,7,14,14,12,10,10,15,15,13,10,10,15,15,0,21,0,18,19,0,20,21,19,18,12,10,10,16,15,15,13,13,18,18,14,11,11,15,15,0,0,0,19,18,0,0,21,18,18,13,11,11,15,15,16,14,14,17,19,15,11,11,15,15,0,21,21,20,18,0,0,21,18,18,0,0,21,21,19,0,0,0,0,0,0,19,20,18,17,0,0,0,21,21,0,21,0,20,18,0,0,21,19,19,0,0,0,0,0,0,20,21,17,17,0,0,0,0,0,0,21,0,18,20,0,10,10,14,14,0,11,11,15,15,0,11,11,15,15,0,14,14,15,15,0,15,15,16,16,0,11,12,16,16,0,13,13,16,16,0,11,11,15,15,0,14,14,17,17,0,14,14,15,15,0,11,11,16,15,0,14,14,15,15,0,11,11,15,15,0,15,15,17,17,0,14,14,15,15,0,16,16,18,18,0,0,0,20,19,0,14,13,16,15,0,17,17,21,0,0,15,15,15,15,0,16,15,17,16,0,20,0,20,18,0,13,14,15,15,0,19,18,0,21,0,15,15,15,15,0,11,11,14,14,0,12,12,16,16,0,12,12,16,16,0,16,15,20,21,0,17,16,0,0,0,12,12,16,16,0,14,14,18,18,0,11,11,16,16,0,15,15,21,20,0,16,16,0,0,0,12,12,16,17,0,15,14,19,19,0,11,12,16,16,0,15,15,21,0,0,16,16,0,0,0,16,17,0,0,0,0,0,0,0,0,15,15,21,0,0,17,17,0,0,0,17,17,0,0,0,17,16,0,0,0,0,0,0,0,0,15,15,0,20,0,19,20,0,0,0,17,17,0,0,0,12,12,15,15,0,12,12,15,15,0,12,12,16,16,0,13,13,15,15,0,15,15,17,17,0,13,13,17,16,0,14,14,17,17,0,11,11,16,16,0,14,14,17,17,0,13,13,16,16,0,12,12,16,16,0,15,15,16,17,0,11,11,15,16,0,14,14,17,17,0,13,14,16,16,0,15,15,18,18,0,21,20,20,19,0,13,13,16,17,0,16,16,0,0,0,14,14,16,16,0,15,15,18,18,0,0,0,20,19,0,13,13,16,16,0,17,17,0,0,0,14,14,16,16,0,11,11,16,16,0,13,13,18,17,0,13,13,17,17,0,16,16,17,17,0,16,16,17,18,0,12,12,17,17,0,15,15,18,18,0,12,12,16,16,0,16,16,19,19,0,15,15,16,17,0,12,12,17,17,0,17,17,18,18,0,12,12,17,17,0,16,16,19,19,0,15,16,17,17,0,16,16,18,17,0,0,0,21,21,0,13,13,16,16,0,17,17,0,20,0,15,15,16,17,0,16,16,19,18,0,0,21,20,21,0,14,14,17,16,0,20,0,0,0,0,15,16,16,17,0,9,9,14,14,0,13,13,16,16,0,14,14,15,15,0,0,20,19,19,0,0,0,19,19,0,12,12,15,15,0,15,16,19,18,0,14,14,15,15,0,21,0,18,18,0,20,0,17,18,0,13,13,16,16,0,17,17,17,19,0,14,14,16,15,0,21,20,20,19,0,0,0,19,19,0,0,0,19,18,0,0,0,0,0,0,20,20,17,18,0,0,0,21,21,0,0,0,18,18,0,21,0,18,19,0,0,0,0,0,0,20,21,18,18,0,0,0,20,21,0,0,0,19,19,0,18,18,15,15,0,20,21,17,17,0,19,21,17,17,0,0,0,17,18,0,0,0,20,19,0,19,19,17,17,0,0,0,18,18,0,19,20,16,17,0,0,21,20,20,0,19,20,19,18,0,19,20,16,16,0,0,0,18,19,0,19,20,17,17,0,0,21,0,20,0,21,21,17,19,0,20,0,19,20,0,0,0,20,0,0,19,18,17,16,0,0,0,0,0,0,0,20,17,17,0,20,21,18,20,0,0,0,0,21,0,19,20,17,17,0,0,0,0,0,0,20,21,17,17,0,11,11,14,14,0,13,13,16,17,0,13,13,16,16,0,17,17,0,21,0,18,17,21,0,0,13,13,16,16,0,15,15,18,18,0,12,12,16,16,0,17,16,21,0,0,17,17,0,0,0,12,12,17,17,0,17,17,19,21,0,13,12,16,16,0,17,17,0,0,0,17,17,0,0,0,18,17,0,21,0,0,0,0,0,0,15,15,20,0,0,20,18,0,0,0,17,18,0,0,0,16,17,0,0,0,0,0,0,0,0,15,15,0,0,0,19,19,0,0,0,18,18,0,0,0,14,14,18,18,0,16,16,0,21,0,16,16,21,21,0,17,17,0,20,0,17,17,20,0,0,16,15,0,0,0,20,20,0,0,0,15,15,20,20,0,17,17,21,0,0,17,18,20,20,0,15,15,20,20,0,18,18,0,0,0,15,15,19,20,0,17,18,0,0,0,17,17,20,20,0,18,17,21,0,0,0,0,0,21,0,15,15,20,20,0,19,19,0,0,0,17,17,21,0,0,17,17,0,0,0,0,0,21,0,0,15,15,19,19,0,20,21,0,0,0,18,17,21,21,0,12,12,16,16,0,14,14,17,17,0,13,13,17,18,0,16,16,18,17,0,16,16,18,18,0,13,13,18,18,0,15,16,19,18,0,13,13,16,16,0,16,16,20,18,0,16,16,17,17,0,12,13,17,17,0,17,16,18,18,0,12,12,16,16,0,17,16,20,19,0,16,16,16,16,0,16,17,18,20,0,0,0,21,20,0,14,14,17,16,0,19,18,0,20,0,16,16,17,16,0,16,16,17,18,0,0,21,21,21,0,14,14,16,16,0,20,20,21,0,0,16,16,16,16,0,10,10,14,14,0,14,14,15,16,0,14,14,15,15,0,0,21,18,18,0,0,21,18,19,0,13,13,16,16,0,16,16,18,18,0,14,14,15,15,0,21,0,18,18,0,21,0,18,18,0,13,13,16,16,0,17,17,19,20,0,14,14,15,15,0,0,0,18,20,0,0,21,18,18,0,0,21,19,18,0,0,0,0,0,0,20,21,18,17,0,0,0,21,21,0,0,0,19,19,0,21,0,18,19,0,0,0,0,0,0,21,20,17,17,0,0,21,20,0,0,0,0,19,19,0,19,20,15,16,0,0,20,18,17,0,20,21,17,18,0,21,0,18,18,0,0,0,19,19,0,20,20,17,18,0,0,0,18,19,0,20,20,18,17,0,0,0,0,20,0,0,21,17,18,0,20,21,17,17,0,0,0,18,18,0,19,19,17,17,0,0,0,21,21,0,20,20,17,17,0,0,0,21,19,0,0,0,20,19,0,21,20,17,18,0,0,0,0,0,0,0,20,18,17,0,21,20,18,18,0,0,0,20,21,0,20,20,17,17,0,0,0,0,0,0,20,0,17,17,0,11,11,13,14,0,13,13,16,16,0,13,13,16,16,0,17,17,0,0,0,17,18,0,0,0,13,13,16,16,0,15,16,18,18,0,13,13,16,17,0,16,17,20,0,0,17,18,20,0,0,13,13,17,17,0,16,16,20,21,0,13,13,16,16,0,17,17,21,0,0,17,18,0,0,0,17,18,0,21,0,0,0,0,0,0,15,15,20,0,0,19,19,0,0,0,17,17,0,0,0,18,17,21,20,0,0,0,0,0,0,16,16,20,21,0,21,20,0,21,0,19,21,0,0,0,15,15,0,0,0,16,17,0,19,0,16,16,0,0,0,17,17,0,0,0,19,18,0,0,0,16,16,20,20,0,20,18,21,0,0,15,15,21,21,0,18,18,0,0,0,18,19,0,0,0,16,15,0,21,0,20,19,0,0,0,16,16,0,0,0,20,18,0,21,0,17,18,21,0,0,18,19,0,0,0,0,0,0,0,0,16,16,20,20,0,19,20,0,0,0,17,17,0,0,0,18,17,20,21,0,0,0,0,0,0,16,16,0,20,0,20,22,0,0,0,18,18,0,22,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,8,8,10,12,12,11,11,9,11,11,12,13,11,12,12,11,11,11,12,12,12,12,10,13,12,13,13,11,12,12,13,13,11,12,12,13,13,11,12,13,13,13,11,13,13,13,13,10,13,13,12,13,11,12,12,14,14,11,13,12,12,12,11,12,12,13,13,11,13,13,12,12,11,13,13,13,13,11,12,12,13,13,11,13,13,12,12,11,12,12,13,13,11,13,13,12,12,11,13,13,13,13,11,12,12,14,14,11,13,13,12,12,11,12,12,13,13,11,13,13,12,12,11,10,10,10,10,12,10,10,11,11,11,8,8,11,11,13,10,10,10,10,12,10,10,10,10,13,11,11,11,11,13,10,10,11,11,13,11,11,12,12,13,11,11,11,11,13,11,11,12,12,13,11,11,12,12,13,10,10,11,11,13,11,11,11,11,13,11,10,11,11,13,11,11,11,11,13,11,11,11,11,13,10,10,11,11,13,11,11,11,11,12,10,11,11,11,13,11,11,11,11,13,11,11,11,11,13,10,10,11,11,13,11,11,11,11,13,11,11,11,11,13,11,11,11,11,11,10,10,10,10,12,10,10,9,9,12,12,12,11,11,13,12,12,9,9,13,12,12,10,10,12,12,12,12,12,13,13,13,14,14,13,12,12,11,11,13,13,13,12,12,13,12,12,11,11,13,12,13,11,11,13,13,13,14,14,13,12,12,10,10,13,13,13,11,11,13,12,12,10,10,13,13,13,11,11,13,13,13,14,14,13,12,12,10,10,13,13,13,11,11,13,12,13,10,10,13,13,13,11,11,13,13,13,14,14,13,12,12,10,10,13,13,13,11,11,13,13,12,10,10,14,12,12,8,8,14,12,12,9,9,14,11,11,9,9,14,12,12,8,8,14,11,11,7,7,14,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,12,12,9,9,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,14,12,12,9,9,14,13,13,9,9,14,13,13,9,9,15,12,12,9,9,15,13,13,9,9,14,12,12,9,9,14,13,13,9,9,14,13,13,9,9,15,12,12,9,9,14,13,13,9,9,14,12,12,9,9,14,13,13,9,9,13,12,12,8,8,13,13,13,8,8,14,13,13,9,9,13,13,13,7,7,14,13,13,8,8,14,14,14,10,10,14,14,14,11,11,14,14,14,9,9,14,14,14,10,10,14,14,14,9,9,14,14,14,10,9,15,14,14,11,11,14,14,14,9,9,14,14,14,10,10,14,14,14,9,9,14,14,14,9,9,15,14,14,11,11,14,14,14,8,8,14,14,14,9,9,14,14,14,8,8,14,14,14,9,9,15,14,14,11,11,14,14,14,8,8,14,14,14,9,9,14,14,14,8,8,12,12,12,13,13,16,15,15,11,11,16,15,16,12,12,17,16,16,11,11,17,15,15,12,11,16,16,16,12,13,16,15,15,13,13,16,16,16,12,12,16,16,15,13,13,16,16,16,12,12,16,16,16,13,13,17,16,16,14,14,17,17,16,12,12,17,16,16,13,13,17,17,16,12,13,16,16,17,13,12,17,16,16,14,13,17,16,16,12,12,17,16,16,12,12,17,16,17,12,12,17,17,17,13,13,16,16,16,13,14,17,17,16,12,12,16,16,16,13,13,17,17,17,12,12,13,14,14,10,10,16,14,14,12,12,16,15,15,14,14,16,14,14,12,12,15,14,14,13,13,17,15,15,14,13,16,16,15,15,15,16,15,15,14,14,16,15,15,14,14,17,15,15,14,14,16,15,15,14,14,16,16,15,15,15,17,15,15,13,13,16,15,15,14,14,17,15,15,13,13,17,15,15,14,14,16,15,15,15,15,16,14,14,13,13,16,15,15,14,14,16,14,14,13,13,17,15,15,14,14,16,16,15,15,15,17,14,14,13,13,16,15,15,14,14,17,14,14,13,13,13,11,11,10,10,16,14,14,13,13,15,14,14,13,13,16,14,14,12,12,16,14,14,12,12,15,15,15,14,14,16,14,14,14,14,16,15,14,14,14,16,14,14,14,14,16,15,15,14,13,16,15,15,14,14,16,14,14,14,14,17,15,15,14,14,16,14,14,14,14,16,15,15,13,14,16,15,15,14,14,16,14,14,14,14,16,15,15,13,13,16,14,14,13,13,16,15,15,13,13,16,15,15,14,14,16,14,14,14,14,17,15,15,13,13,16,15,14,13,13,17,15,15,13,13,14,14,14,9,9,14,14,14,17,17,14,15,15,18,18,14,14,14,18,19,14,14,14,18,18,15,15,15,19,18,15,16,15,18,20,15,15,15,18,19,15,15,15,19,19,15,15,15,18,20,15,15,15,18,19,15,15,16,20,18,15,15,15,18,18,15,15,15,19,19,15,15,15,18,19,15,15,15,18,19,15,15,15,19,19,14,15,14,19,19,15,15,15,20,19,15,14,14,19,18,14,15,15,18,19,15,15,16,20,20,14,14,14,18,19,15,15,15,19,18,14,14,14,18,18,14,12,12,9,9,13,14,14,18,18,14,13,13,18,19,14,14,14,18,18,14,14,14,18,18,15,15,15,19,19,15,14,14,19,18,14,15,15,19,18,15,14,14,18,18,15,15,15,19,18,14,15,15,19,19,15,14,14,19,18,14,15,15,19,18,15,14,14,19,18,14,15,15,19,18,15,15,15,21,18,15,14,14,19,18,14,15,15,18,19,14,15,14,20,19,14,15,15,18,19,14,15,15,19,19,15,14,14,19,20,14,15,15,18,18,14,14,14,19,19,14,15,15,19,18,12,12,12,13,13,16,15,15,11,11,16,15,15,12,12,16,16,16,11,11,16,15,15,11,11,16,16,16,13,13,17,16,16,13,13,17,17,17,12,12,16,16,16,13,13,17,16,17,13,12,15,16,16,12,12,16,15,15,13,13,17,16,16,12,12,16,16,15,12,12,16,16,16,12,12,17,17,16,13,12,16,16,16,13,13,17,16,16,12,12,17,16,16,12,12,17,17,16,12,12,16,17,16,12,12,17,15,15,13,13,17,16,16,12,12,16,16,16,12,12,16,16,16,12,12,13,13,13,9,9,15,14,14,13,13,16,15,14,14,14,16,14,14,13,13,15,14,14,13,13,17,15,15,14,14,16,15,15,15,15,16,15,15,14,14,16,15,15,15,15,17,15,15,14,14,16,15,15,14,14,16,15,15,15,15,17,14,15,14,14,16,15,15,14,14,17,15,15,13,14,17,15,15,14,14,16,15,15,15,15,17,14,14,13,13,16,15,15,14,14,17,14,14,13,13,17,15,15,14,14,16,15,16,15,15,17,14,14,13,13,16,15,15,14,14,18,14,14,13,13,13,11,11,11,11,15,14,14,12,12,15,14,14,13,13,16,14,14,12,12,16,13,14,12,12,16,15,15,13,13,16,14,14,14,14,16,15,15,13,13,16,14,14,13,13,16,14,15,13,13,15,15,15,13,13,16,14,14,14,13,16,14,14,13,13,16,14,14,13,13,16,15,15,13,13,16,15,15,13,13,16,14,14,14,14,16,15,15,12,12,16,14,14,13,13,16,15,15,12,12,16,15,15,13,13,16,14,14,14,14,17,15,14,12,12,16,14,14,13,13,16,15,15,12,12,14,14,14,8,8,14,14,14,17,18,14,15,15,17,18,14,14,14,17,18,14,14,14,18,18,14,15,15,18,18,14,16,15,19,19,15,15,15,18,19,15,16,15,20,19,15,15,15,18,18,14,15,15,18,19,15,16,16,20,19,15,15,15,19,17,14,15,15,20,18,14,15,15,18,18,14,15,15,18,19,14,15,15,19,20,14,14,14,18,18,14,15,15,18,19,14,14,14,18,19,14,15,15,19,18,15,16,16,20,21,14,14,15,19,19,14,15,15,19,19,14,14,14,19,18,13,12,12,9,9,13,14,14,18,19,14,14,14,18,19,14,14,14,18,18,14,14,14,18,18,14,15,15,19,19,15,14,14,19,18,15,15,15,19,19,15,14,14,19,20,14,15,15,18,19,14,15,15,20,18,15,14,14,18,18,14,15,15,18,18,14,14,14,19,19,14,15,15,18,18,14,15,15,19,18,15,14,14,19,19,14,15,15,19,18,15,14,14,19,18,14,14,15,18,19,14,15,15,19,18,15,14,14,18,19,14,15,14,19,20,14,14,14,19,19,14,15,15,19,19,12,12,12,13,13,16,16,16,11,11,16,16,16,12,12,17,16,16,11,11,17,15,15,11,11,16,16,16,13,13,17,15,16,13,13,16,16,16,12,12,17,16,16,13,13,17,17,16,12,12,17,17,16,13,13,17,16,16,13,13,17,17,17,12,12,17,16,16,13,13,17,17,17,12,12,16,16,16,12,12,17,15,15,13,13,17,16,16,11,11,17,16,16,12,12,16,16,16,11,11,16,17,16,12,12,17,16,16,13,13,17,17,16,12,12,17,17,16,12,12,17,16,16,11,11,13,14,14,9,9,16,14,14,13,13,16,14,15,14,14,16,14,14,12,12,16,14,14,13,13,17,15,15,14,14,16,15,15,15,15,17,15,15,14,14,16,15,15,14,14,17,15,15,14,14,16,15,15,14,14,16,15,15,15,16,17,14,15,14,14,16,15,15,14,14,17,15,15,14,14,16,15,15,14,14,16,15,15,15,15,17,14,14,13,13,16,15,15,14,14,16,14,14,13,13,17,15,15,14,14,16,16,15,15,15,17,14,14,13,13,16,15,15,14,14,17,14,14,13,13,13,11,11,10,10,16,14,14,12,12,15,13,13,13,12,16,14,14,11,11,16,14,14,11,11,16,14,15,13,14,16,14,14,13,13,16,15,15,13,13,16,14,14,13,13,16,15,15,13,13,16,15,15,13,13,17,14,14,14,14,17,15,15,13,13,16,14,15,13,13,16,15,15,13,13,16,15,15,13,13,16,14,14,13,13,17,15,15,12,12,16,14,14,12,12,16,15,15,12,12,16,15,15,13,13,16,14,14,13,13,17,15,15,12,12,17,14,14,12,12,16,15,15,12,12,13,14,14,8,8,13,14,14,18,18,13,15,15,17,18,14,14,14,18,19,14,14,14,19,18,14,15,15,19,18,15,15,16,21,18,15,15,15,19,19,14,16,16,19,19,14,15,15,18,19,14,15,15,19,20,14,16,16,19,18,15,15,15,18,19,14,15,15,19,18,15,15,15,18,18,15,15,15,20,18,15,16,16,20,19,14,15,14,18,19,14,15,16,19,20,14,15,15,19,18,15,15,15,19,18,15,16,16,20,19,15,14,14,18,18,14,15,15,19,19,14,15,15,18,18,13,12,12,8,8,13,14,14,19,18,14,13,13,20,18,14,14,14,19,18,14,13,13,18,19,14,15,15,20,19,15,14,14,19,19,14,15,15,19,18,15,14,14,20,20,15,15,15,19,18,14,15,15,19,18,15,14,14,19,18,14,15,15,20,19,14,14,14,20,19,14,15,15,19,18,15,15,15,18,18,15,14,14,18,18,14,15,15,19,19,14,14,14,19,19,14,15,15,19,19,15,15,15,19,18,15,14,14,20,19,15,15,15,19,19,14,14,14,20,19,14,15,15,20,20,12,12,12,13,13,17,16,16,11,11,16,16,15,12,12,17,16,16,11,11,17,15,15,11,11,17,17,17,13,13,17,16,16,13,13,17,17,17,12,12,17,16,16,13,13,17,17,16,12,13,16,17,16,13,13,17,16,15,13,13,17,16,16,12,12,17,16,16,12,13,17,16,17,12,12,17,17,17,12,12,17,16,15,13,13,17,16,16,12,12,17,16,16,12,12,17,16,16,11,11,16,16,16,12,12,17,15,15,13,13,17,16,15,11,11,16,16,16,12,12,17,16,16,11,11,13,14,14,9,9,16,14,14,13,13,16,14,15,14,14,16,14,14,12,12,16,14,14,13,13,17,15,15,14,15,16,15,15,15,15,17,15,15,14,14,16,15,15,15,14,16,15,15,14,14,16,15,15,14,14,16,15,16,15,15,17,15,14,14,14,16,15,15,14,14,17,15,15,13,13,16,15,15,14,14,16,16,16,15,15,17,14,14,13,13,16,15,15,14,14,18,14,15,13,13,16,15,15,14,14,16,16,15,15,15,16,14,14,13,13,16,15,15,14,14,17,14,15,13,13,13,11,11,10,10,15,14,14,12,12,15,14,14,13,13,16,14,14,12,12,16,13,14,12,12,16,14,15,14,13,16,14,14,14,14,16,15,15,13,13,16,14,14,13,13,16,15,15,13,13,15,15,15,13,13,16,14,14,14,14,17,15,15,13,13,16,14,14,13,13,16,15,15,13,13,16,15,15,13,13,16,14,14,13,13,17,15,15,12,12,16,14,14,12,12,16,14,15,12,12,16,15,15,13,13,16,14,14,13,13,17,15,15,12,12,16,14,14,12,12,16,15,15,12,12,14,14,14,8,8,14,14,14,17,17,14,15,15,18,18,14,14,14,18,17,14,14,14,18,18,14,15,15,18,20,15,16,15,19,18,15,15,15,19,18,15,15,16,19,18,15,15,15,18,18,14,15,15,18,18,15,16,16,18,19,15,15,15,18,18,15,15,15,19,20,15,15,15,18,18,15,15,15,18,18,15,16,16,19,19,15,14,15,19,19,15,15,15,19,20,14,14,15,18,18,15,15,15,19,19,15,16,16,19,19,15,15,14,18,19,15,15,15,20,20,15,15,14,18,18,13,12,12,8,8,13,14,14,18,18,14,14,14,18,18,14,14,14,18,20,14,14,14,18,18,14,15,15,19,18,15,14,14,18,19,15,15,15,18,19,15,14,14,18,19,15,15,15,18,18,14,15,14,18,19,15,14,14,21,19,15,15,15,19,18,14,14,14,19,18,14,15,15,19,18,15,15,15,20,19,15,14,14,20,18,14,15,15,18,19,14,14,14,19,18,14,15,15,18,19,15,15,15,18,19,15,14,14,19,19,15,15,15,19,19,14,14,14,19,20,14,15,15,18,19,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,7,8,8,7,8,8,7,9,9,10,12,11,9,8,8,7,9,9,11,12,12,9,9,9,6,7,7,10,11,11,10,11,11,10,11,11,13,13,14,12,12,12,11,11,11,14,14,14,12,12,12,6,5,5,9,6,5,9,6,6,9,7,7,12,10,10,11,6,6,10,7,7,13,10,10,12,7,7,7,8,8,12,10,10,12,10,10,11,10,10,15,13,13,13,9,9,12,11,11,16,13,13,15,11,11,8,7,7,12,12,12,12,11,11,12,11,11,14,14,14,14,12,12,12,12,12,16,15,15,14,12,12,0,10,10,0,12,12,0,12,12,0,11,11,0,14,14,0,11,11,0,12,12,0,15,15,0,11,11,8,8,8,13,11,11,13,10,10,13,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,9,7,7,13,11,11,13,11,11,12,11,11,16,14,14,14,12,12,13,12,12,15,14,14,15,13,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,13,12,0,14,15,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,0,9,9,0,9,9,0,10,10,0,9,9,0,10,10,0,10,10,0,9,9,0,10,10,0,7,7,0,7,7,0,6,6,0,8,8,0,7,7,0,8,8,0,8,9,0,8,8,0,8,8,0,7,7,0,9,9,0,8,8,0,10,10,0,9,9,0,10,10,0,10,10,0,9,9,0,10,10,0,9,9,0,11,11,0,11,11,0,12,12,0,11,11,0,12,12,0,13,13,0,12,12,0,13,12,0,8,8,0,12,12,0,12,12,0,13,13,0,12,12,0,13,13,0,13,13,0,13,13,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,11,11,0,12,12,0,13,13,0,12,12,0,13,13,0,13,13,0,12,12,0,12,12,0,8,8,0,12,12,0,12,12,0,13,13,0,13,13,0,13,14,0,14,13,0,13,13,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,0,7,7,0,8,8,0,9,9,0,12,12,0,8,8,0,9,9,0,12,12,0,8,8,0,6,6,0,11,11,0,12,12,0,12,12,0,15,15,0,11,11,0,12,12,0,15,15,0,12,12,0,5,5,0,5,5,0,6,6,0,7,7,0,11,11,0,6,6,0,7,7,0,10,11,0,6,6,0,7,7,0,11,11,0,12,12,0,11,11,0,15,15,0,10,10,0,12,12,0,15,15,0,12,12,0,6,6,0,12,12,0,12,12,0,12,12,0,15,15,0,11,11,0,12,12,0,15,15,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,11,12,0,15,16,0,11,11,0,6,6,0,11,12,0,12,12,0,12,12,0,16,15,0,12,12,0,13,12,0,15,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,3,7,8,10,13,16,3,2,5,7,9,13,16,6,4,4,6,10,14,15,7,5,5,7,10,13,14,9,8,9,9,9,11,13,12,11,12,9,7,8,11,14,12,10,6,5,7,10,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,248,239,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,104,206,7,0,0,0,0,0,0,0,0,0,144,206,7,0,184,206,7,0,0,0,0,0,0,0,0,0,224,206,7,0,8,207,7,0,0,0,0,0,0,0,0,0,48,207,7,0,88,207,7,0,0,0,0,0,0,0,0,0,128,207,7,0,168,207,7,0,88,207,7,0,0,0,0,0,208,207,7,0,136,203,7,0,176,203,7],"i8",L3,F.GLOBAL_BASE+500144),d3([2,0,0,0,49,0,0,0,48,206,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,40,206,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,203,7,0,56,203,7,0,0,0,0,0,0,0,0,0,96,203,7,0,136,203,7,0,176,203,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,64,205,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,240,205,7,0,0,0,0,0,2,0,0,0,25,0,0,0,8,205,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,40,205,7,0,0,0,0,0,2,0,0,0,9,0,0,0,232,204,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,248,204,7,0,0,0,0,0,1,0,0,0,25,0,0,0,96,204,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,128,204,7,0,0,0,0,0,1,0,0,0,25,0,0,0,216,203,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,248,203,7,0,0,0,0,0,3,5,4,5,4,5,4,5,5,5,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,7,7,4,5,6,7,7,4,6,5,7,7,7,6,7,6,7,7,7,6,7,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,3,3,8,8,10,10,10,10,10,10,10,10,5,7,5,9,8,10,10,10,10,11,10,11,10,5,5,7,8,9,10,10,11,10,10,11,10,11,10,10,10,11,11,11,11,11,11,11,10,11,11,10,10,10,10,11,11,11,11,11,10,11,11,11,11,11,11,11,11,12,11,10,11,11,11,11,11,11,11,11,11,11,11,11,10,10,11,11,12,11,11,11,11,11,11,12,11,11,11,10,11,11,11,11,11,11,11,11,10,11,11,10,11,10,11,11,11,11,11,11,11,11,11,11,12,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,10,11,11,11,11,11,11,11,12,11,13,11,11,11,11,11,11,11,11,11,11,11,12,11,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,2,3,6,7,9,13,17,3,2,5,7,9,13,17,6,5,5,6,9,12,16,7,7,6,6,7,10,13,10,10,9,7,6,10,13,13,13,12,10,10,11,15,17,17,17,14,14,15,17,0,0,0,0,0,0,0,5,0,0,0,243,0,0,0,240,238,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,232,239,7,0,0,0,0,0,5,0,0,0,243,0,0,0,232,237,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,224,238,7,0,0,0,0,0,5,0,0,0,243,0,0,0,224,236,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,216,237,7,0,0,0,0,0,5,0,0,0,243,0,0,0,216,235,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,208,236,7,0,0,0,0,0,5,0,0,0,53,12,0,0,136,223,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,235,7,0,0,0,0,0,5,0,0,0,53,12,0,0,56,211,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,112,223,7,0,0,0,0,0,1,0,0,0,7,0,0,0,16,211,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,24,211,7,0,0,0,0,0,5,0,0,0,243,0,0,0,8,210,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,0,211,7,0,0,0,0,0,5,0,0,0,243,0,0,0,0,209,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,248,209,7,0,0,0,0,0,5,0,0,0,243,0,0,0,248,207,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,240,208,7,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,7,6,8,8,7,7,8,7,8,8,9,9,9,8,7,7,8,8,8,9,9,9,9,8,8,6,6,6,9,7,7,9,7,7,9,8,8,10,8,8,10,8,8,10,8,8,10,9,8,10,8,8,7,6,6,9,6,6,9,6,6,9,7,7,10,8,8,10,6,6,9,7,7,10,8,8,10,6,6,7,7,7,11,9,9,11,9,9,10,9,9,12,10,10,12,8,8,11,9,9,13,9,10,12,8,8,8,7,7,11,9,10,11,10,10,10,9,9,11,11,11,11,9,9,11,10,9,12,11,11,11,9,10,10,8,8,11,9,10,11,9,9,11,9,9,12,10,10,11,9,9,11,9,9,12,10,11,11,9,9,8,8,8,12,9,9,12,9,9,11,9,9,13,9,9,13,8,8,12,9,9,13,10,10,12,8,8,9,7,7,11,10,10,11,10,10,11,10,10,12,11,11,11,10,9,11,10,10,11,11,11,11,9,9,11,9,9,12,10,10,11,10,10,12,10,10,11,11,11,11,9,9,11,10,10,12,11,11,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,7,7,6,8,8,7,8,8,7,9,9,11,11,11,9,8,8,7,9,9,11,12,11,9,9,9,6,7,7,10,11,11,10,10,10,10,11,11,15,14,14,12,12,12,11,11,11,14,14,14,12,12,12,5,6,6,8,5,5,8,7,7,8,8,8,12,10,10,10,7,7,8,7,7,12,10,10,10,7,7,6,7,7,12,11,11,12,10,10,11,10,10,14,14,13,13,10,10,11,10,10,16,14,14,14,11,10,7,7,7,13,12,12,12,12,11,11,11,11,15,14,17,13,12,12,12,11,11,15,15,15,14,13,13,10,9,9,14,12,11,13,11,11,12,11,11,16,15,14,14,11,11,12,11,11,17,14,14,15,11,11,7,8,8,12,11,11,13,10,10,11,10,10,17,14,13,14,10,10,12,10,10,18,15,15,14,10,10,8,7,7,13,12,12,13,11,11,12,11,11,16,14,15,14,12,12,12,11,11,18,16,16,14,12,12,11,10,10,13,12,11,13,11,11,13,12,12,0,15,14,14,11,11,13,11,11,16,15,15,15,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,1,7,7,14,14,6,8,8,15,16,7,8,8,16,15,0,14,14,17,17,0,14,14,16,16,7,9,9,16,16,10,11,11,17,18,9,8,8,16,16,0,14,14,19,19,0,14,14,17,16,8,9,9,16,16,12,12,12,17,17,10,9,9,16,16,0,15,14,18,20,0,14,14,17,17,0,15,15,18,17,0,21,0,0,21,0,13,13,17,17,0,17,17,0,0,0,15,15,17,17,0,15,15,17,18,0,0,0,0,21,0,13,13,17,17,0,18,18,0,21,0,16,15,17,18,6,7,7,14,14,9,10,10,16,16,11,10,10,15,15,0,21,0,20,21,0,0,0,18,20,10,10,10,15,16,12,13,13,18,18,12,11,11,15,15,0,0,0,20,20,0,0,21,19,19,12,11,11,15,15,15,14,14,18,18,13,11,11,15,16,0,0,0,20,19,0,0,0,20,21,0,0,20,19,19,0,0,0,0,0,0,20,0,17,18,0,0,21,0,0,0,0,0,21,0,0,21,0,20,19,0,0,0,0,0,0,21,0,18,18,0,0,0,21,0,0,0,0,0,20,7,6,6,13,13,9,6,6,12,12,9,7,7,14,14,0,10,10,12,12,0,11,11,15,15,9,7,7,14,14,12,9,9,14,14,10,7,7,14,13,0,11,11,16,15,0,11,11,14,14,9,7,7,14,14,13,10,10,14,14,11,7,7,14,13,0,11,11,16,16,0,11,11,14,14,0,12,12,16,16,0,19,0,17,18,0,10,10,14,14,0,15,14,0,0,0,12,12,14,14,0,12,12,15,15,0,20,0,18,19,0,10,10,14,14,0,16,15,0,20,0,13,13,14,14,0,11,11,13,13,0,12,13,16,16,0,12,12,16,16,0,16,16,0,21,0,17,18,0,0,0,12,12,16,16,0,15,15,18,0,0,12,12,16,16,0,17,16,21,21,0,16,17,0,0,0,13,13,17,16,0,16,16,20,21,0,12,12,17,16,0,17,17,0,21,0,17,17,21,21,0,17,18,0,0,0,0,0,0,0,0,15,15,0,0,0,18,21,0,0,0,18,19,0,0,0,18,17,21,21,0,0,0,0,0,0,16,16,0,0,0,0,0,0,0,0,19,19,0,0,0,11,11,12,12,0,11,11,10,10,0,12,12,13,13,0,12,12,9,9,0,14,14,13,13,0,12,12,13,13,0,14,14,12,13,0,11,11,12,12,0,13,13,13,13,0,13,13,13,13,0,12,12,13,13,0,14,14,12,12,0,11,11,12,12,0,14,13,14,14,0,13,13,13,13,0,15,15,14,15,0,0,0,16,16,0,12,12,13,13,0,16,17,20,21,0,14,13,12,12,0,14,14,14,14,0,21,0,16,16,0,12,12,13,13,0,18,17,21,0,0,14,14,13,13,7,8,8,17,17,11,10,10,18,18,12,10,10,17,17,0,15,15,20,18,0,15,15,17,17,11,9,9,17,17,14,12,12,19,19,13,9,9,16,16,0,15,14,0,19,0,14,14,16,16,12,10,10,20,18,16,13,13,21,20,14,10,10,17,17,0,15,15,21,20,0,15,14,17,17,0,15,15,21,21,0,0,21,0,0,0,13,13,18,18,0,19,16,0,0,0,15,15,17,16,0,16,16,0,21,0,0,0,0,21,0,13,14,18,17,0,20,19,0,0,0,15,15,18,18,8,7,7,15,15,12,11,11,17,16,13,11,11,16,16,0,0,0,21,20,0,0,0,0,20,11,10,10,17,17,14,13,13,19,18,14,11,11,16,16,0,20,0,21,19,0,0,21,0,20,12,11,11,17,17,16,15,15,0,19,14,11,11,17,16,0,21,0,0,19,0,0,0,21,20,0,0,21,20,0,0,0,0,0,0,0,0,0,19,21,0,0,0,0,0,0,0,0,19,20,0,0,0,20,21,0,0,0,0,0,0,20,0,19,21,0,0,0,0,0,0,0,0,21,20,11,10,9,15,15,14,11,11,15,15,14,11,11,16,16,0,14,14,14,14,0,16,15,17,16,13,11,11,16,16,16,13,13,16,16,15,10,10,15,15,0,14,15,17,17,0,14,14,16,15,13,11,11,16,16,17,15,14,16,16,15,10,10,15,15,0,15,15,17,18,0,15,15,16,16,0,16,16,17,17,0,21,0,21,20,0,13,13,15,15,0,18,18,0,21,0,15,15,15,15,0,16,16,17,17,0,0,0,0,18,0,13,13,15,15,0,19,18,0,0,0,15,15,16,16,0,12,12,15,15,0,13,13,17,17,0,13,13,17,18,0,16,17,21,0,0,20,18,0,0,0,13,13,17,17,0,15,15,0,18,0,12,12,17,18,0,16,16,0,0,0,17,17,21,0,0,13,13,18,18,0,16,16,21,21,0,12,12,17,18,0,16,17,21,0,0,17,17,0,21,0,17,18,0,0,0,0,0,0,0,0,16,15,0,21,0,21,19,0,0,0,18,18,0,0,0,18,19,0,0,0,0,0,0,0,0,16,16,21,21,0,20,19,0,0,0,19,21,0,21,0,12,12,15,15,0,12,12,15,16,0,13,13,16,16,0,14,14,15,15,0,16,15,17,17,0,13,13,17,17,0,15,15,16,18,0,12,12,16,16,0,14,14,17,17,0,15,14,16,16,0,13,13,16,16,0,16,15,17,17,0,12,12,16,16,0,15,15,18,18,0,14,14,17,16,0,16,16,17,18,0,0,0,20,21,0,13,13,16,17,0,17,17,0,0,0,15,15,16,16,0,15,16,17,17,0,0,0,19,0,0,13,13,15,16,0,19,18,0,0,0,16,15,16,17,8,8,8,17,17,13,11,10,17,18,13,10,10,17,17,0,15,15,20,19,0,15,15,17,17,12,10,10,19,18,15,12,12,20,18,14,10,10,17,16,0,15,15,20,20,0,14,15,16,16,13,10,10,17,17,17,14,14,0,18,15,10,10,17,17,0,16,15,20,20,0,14,14,17,17,0,15,16,20,20,0,0,21,0,0,0,13,13,17,17,0,18,17,0,0,0,15,16,17,18,0,15,15,18,21,0,0,0,21,0,0,13,13,18,18,0,19,19,0,0,0,16,16,18,17,9,8,8,15,15,12,11,11,16,16,13,11,11,16,15,0,0,0,0,21,0,21,0,19,19,12,11,11,17,18,15,13,13,18,19,14,11,11,16,16,0,0,21,21,19,0,0,0,21,20,13,11,11,18,17,17,14,15,20,21,15,11,12,16,16,0,0,0,20,0,0,0,21,0,19,0,0,0,0,19,0,0,0,0,0,0,21,21,19,19,0,0,0,21,0,0,0,0,19,21,0,0,0,19,20,0,0,0,21,0,0,0,21,19,19,0,0,0,0,0,0,0,0,21,20,0,11,11,15,15,0,12,12,15,16,0,12,12,16,16,0,15,15,16,15,0,16,16,17,17,0,12,12,17,17,0,14,14,17,17,0,11,11,16,16,0,15,15,19,18,0,15,15,16,16,0,12,12,17,16,0,14,15,16,16,0,11,11,15,15,0,16,16,18,19,0,15,15,15,16,0,17,17,18,20,0,21,0,21,19,0,14,14,16,16,0,18,18,0,0,0,16,16,15,15,0,16,16,18,17,0,0,0,19,20,0,14,14,16,16,0,19,19,0,0,0,16,17,15,15,0,12,12,14,15,0,13,13,16,17,0,12,12,17,17,0,17,16,0,0,0,18,17,21,0,0,13,13,19,17,0,15,15,20,21,0,12,12,17,17,0,17,17,0,0,0,17,17,0,0,0,13,13,17,18,0,16,16,21,0,0,12,12,17,17,0,17,17,0,0,0,17,17,0,0,0,18,21,0,0,0,0,0,0,0,0,15,15,21,0,0,20,21,0,0,0,18,19,0,0,0,18,17,0,0,0,0,0,0,0,0,16,16,21,0,0,21,21,0,0,0,18,19,0,0,0,12,12,16,16,0,13,13,16,17,0,13,13,17,16,0,14,14,16,16,0,16,15,19,18,0,13,13,17,17,0,15,15,18,18,0,12,12,16,16,0,15,15,18,19,0,15,15,17,16,0,13,13,17,17,0,16,16,18,17,0,12,12,17,16,0,15,15,18,18,0,15,15,17,17,0,16,16,0,19,0,0,0,0,0,0,14,14,16,17,0,18,18,0,0,0,15,15,17,17,0,16,16,21,19,0,21,0,21,21,0,13,14,16,16,0,19,19,0,0,0,15,16,16,16,0,11,11,17,16,0,15,14,19,18,0,14,14,19,19,0,18,17,18,20,0,17,17,18,19,0,13,13,17,17,0,16,17,21,18,0,13,13,17,16,0,18,17,19,0,0,16,17,18,18,0,12,12,19,18,0,18,18,20,20,0,13,13,17,17,0,17,17,21,0,0,16,17,17,18,0,18,17,19,18,0,0,0,0,0,0,14,14,17,17,0,19,19,21,0,0,16,16,16,17,0,17,17,19,20,0,0,0,0,21,0,15,15,17,18,0,21,21,0,0,0,17,17,17,18,0,10,10,15,15,0,15,14,17,18,0,14,14,16,16,0,0,0,18,0,0,21,0,19,0,0,13,13,17,16,0,17,17,18,0,0,14,14,16,15,0,0,0,21,0,0,21,0,19,18,0,13,13,17,17,0,18,18,20,20,0,15,15,16,16,0,0,0,21,21,0,0,0,20,20,0,0,0,19,0,0,0,0,0,0,0,21,20,18,18,0,0,0,0,0,0,0,0,0,20,0,0,0,0,20,0,0,0,0,0,0,0,0,19,18,0,0,0,0,21,0,0,0,18,20,0,18,19,16,17,0,21,19,17,17,0,0,21,18,18,0,0,21,20,19,0,0,0,20,20,0,0,21,17,17,0,0,0,19,19,0,20,20,17,17,0,0,0,0,20,0,0,20,18,18,0,21,20,17,17,0,0,0,20,21,0,19,0,17,17,0,0,21,0,0,0,20,0,18,19,0,0,0,21,21,0,0,0,0,21,0,20,20,17,17,0,0,0,0,0,0,21,0,18,17,0,0,0,20,19,0,0,0,0,21,0,20,20,17,17,0,0,0,0,0,0,21,21,18,18,0,12,12,15,14,0,14,14,17,17,0,14,14,17,16,0,18,18,21,0,0,19,20,0,0,0,13,13,18,17,0,16,16,19,18,0,13,13,17,17,0,17,17,0,0,0,17,17,21,0,0,13,13,17,17,0,17,17,21,20,0,13,13,18,17,0,18,19,21,21,0,19,18,0,0,0,18,17,0,0,0,0,0,0,0,0,15,16,0,0,0,21,21,0,0,0,20,18,21,0,0,17,18,0,0,0,0,0,0,0,0,15,16,0,0,0,0,20,0,0,0,0,19,0,0,0,15,15,18,19,0,18,17,21,0,0,16,18,0,20,0,17,18,21,0,0,18,20,0,0,0,16,16,21,21,0,19,20,21,0,0,16,15,0,21,0,18,20,0,0,0,18,19,0,0,0,16,15,21,21,0,21,0,0,0,0,16,15,21,0,0,20,19,0,0,0,18,21,21,0,0,20,18,0,0,0,0,0,0,0,0,16,16,0,20,0,21,0,0,0,0,17,18,20,21,0,18,18,21,21,0,0,0,0,0,0,16,16,20,0,0,0,21,0,0,0,21,18,0,0,0,12,12,20,17,0,15,15,19,18,0,14,14,19,18,0,18,17,21,19,0,17,17,21,17,0,13,13,21,19,0,16,17,20,19,0,13,13,16,16,0,17,17,20,21,0,16,16,19,17,0,13,13,18,18,0,17,19,19,19,0,13,13,17,17,0,18,18,0,19,0,16,17,18,18,0,16,17,19,21,0,0,0,0,0,0,15,15,16,17,0,20,19,21,0,0,17,17,17,17,0,17,17,21,19,0,0,0,0,0,0,15,15,17,17,0,21,0,0,0,0,18,18,17,17,0,10,10,15,15,0,15,15,17,17,0,15,14,16,16,0,0,0,21,19,0,21,21,19,21,0,13,13,17,16,0,17,17,18,19,0,14,15,16,15,0,0,0,21,19,0,21,21,18,19,0,14,14,16,17,0,18,18,18,19,0,15,15,15,16,0,0,21,0,21,0,0,0,19,20,0,0,0,21,19,0,0,0,0,0,0,21,21,19,17,0,0,0,0,0,0,0,0,21,21,0,21,0,0,21,0,0,0,0,0,0,21,21,19,18,0,0,0,0,0,0,0,0,0,19,0,21,18,18,17,0,21,0,20,20,0,0,0,18,20,0,0,21,18,21,0,0,0,21,18,0,0,0,0,19,0,0,0,21,21,0,20,21,17,19,0,21,0,21,0,0,21,0,18,18,0,20,21,17,18,0,0,0,21,19,0,20,21,17,18,0,0,0,21,21,0,0,0,20,19,0,0,0,21,21,0,0,0,0,0,0,21,21,19,18,0,0,0,0,0,0,0,21,19,18,0,21,21,19,0,0,0,0,21,0,0,21,21,18,17,0,0,0,0,0,0,21,0,21,18,0,12,12,14,14,0,15,14,17,17,0,14,14,17,16,0,19,17,0,0,0,19,19,0,0,0,13,13,17,17,0,17,17,20,20,0,13,13,18,18,0,18,17,0,0,0,18,21,0,0,0,13,13,17,17,0,18,18,21,20,0,14,14,18,19,0,19,18,21,0,0,19,19,0,0,0,20,18,20,0,0,0,0,0,0,0,15,16,0,0,0,21,21,0,0,0,19,19,0,0,0,18,18,0,0,0,0,0,0,0,0,16,16,0,21,0,0,0,0,0,0,19,20,0,0,0,15,15,20,21,0,17,17,21,21,0,17,17,0,0,0,19,18,0,0,0,18,19,0,0,0,17,16,0,21,0,0,20,0,0,0,16,16,0,20,0,19,19,0,21,0,19,18,0,21,0,16,16,0,0,0,21,21,0,0,0,16,16,0,0,0,21,21,0,0,0,19,19,0,0,0,20,0,0,0,0,0,0,0,0,0,17,17,0,21,0,0,20,0,0,0,20,18,21,21,0,19,18,0,20,0,0,0,0,0,0,16,17,21,0,0,0,21,0,0,0,19,20,21,20,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,3,4,9,9,10,12,12,12,11,10,12,12,13,12,11,13,12,11,11,11,12,12,12,11,11,13,13,13,13,11,12,12,14,14,12,13,13,13,13,11,13,13,13,13,11,13,13,13,13,11,13,13,13,13,11,12,12,14,14,12,13,13,12,12,11,13,13,13,13,11,13,13,12,12,11,13,13,13,13,12,12,13,14,14,12,13,13,12,12,11,13,13,13,13,11,13,13,12,12,11,13,13,13,13,12,13,13,14,14,12,13,13,12,12,11,13,13,13,13,11,13,13,12,12,11,10,10,10,10,12,10,10,11,11,12,9,9,11,11,13,11,11,10,10,13,10,10,10,10,13,11,11,12,12,13,10,10,12,12,14,12,11,12,12,13,11,11,11,12,13,12,12,12,12,13,11,11,12,12,13,10,10,12,12,14,11,11,12,12,13,11,11,12,12,13,11,11,12,12,14,12,12,12,12,14,10,10,11,11,14,12,11,11,11,13,11,11,11,11,13,12,12,11,11,14,12,12,12,11,14,10,10,11,11,14,12,11,11,11,13,11,11,11,11,13,12,12,11,11,11,11,11,10,10,12,10,11,9,9,12,12,12,11,11,13,12,12,9,9,13,13,13,10,10,13,13,13,12,12,13,13,13,14,14,13,12,12,11,11,14,13,13,12,12,14,13,13,11,11,13,13,13,12,11,13,13,13,14,14,13,12,12,10,10,14,13,13,11,11,13,13,13,10,10,13,13,13,11,11,14,13,13,14,14,14,12,12,10,10,13,13,13,11,11,13,13,13,10,10,13,13,13,11,11,14,13,13,14,14,14,13,13,10,10,13,13,13,11,11,13,13,13,10,10,14,12,12,8,8,14,12,12,9,9,14,11,11,9,9,14,12,12,8,8,14,12,12,7,7,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,12,13,9,9,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,13,13,9,9,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,9,9,14,13,12,9,9,14,13,13,9,9,15,13,13,10,10,15,12,12,10,10,15,13,13,9,9,15,13,13,9,9,14,13,13,9,9,14,12,12,8,8,13,13,13,8,8,14,14,13,9,9,14,14,13,7,7,14,14,14,8,8,14,14,14,10,10,15,14,14,12,12,14,14,14,9,9,15,14,14,10,10,14,14,14,9,9,14,14,14,10,9,15,14,14,12,12,14,14,14,9,9,15,14,14,10,10,14,14,14,9,9,15,14,15,9,9,15,14,14,11,11,14,14,14,8,8,14,14,14,9,9,14,14,14,8,8,14,15,14,10,10,15,14,14,11,11,14,14,14,8,8,15,14,14,9,9,14,14,14,8,8,12,12,12,13,13,16,16,15,12,12,17,16,16,13,13,17,16,16,11,11,17,16,16,12,12,17,16,17,13,13,17,16,16,14,14,17,17,16,12,12,18,16,16,13,13,17,16,17,12,12,17,17,17,13,13,18,16,16,14,14,18,17,17,12,12,17,17,17,13,13,18,17,17,13,13,17,17,17,13,13,17,16,16,14,14,17,17,17,12,12,16,16,17,13,13,17,17,16,12,12,18,17,17,13,13,18,16,16,14,14,18,17,17,12,12,19,16,17,13,13,17,16,17,12,12,13,14,14,10,10,16,14,14,13,13,17,15,15,14,14,17,14,14,13,13,16,14,14,13,13,17,16,15,14,14,16,16,16,15,15,17,15,15,14,14,17,15,15,14,14,17,15,15,14,14,17,16,15,14,14,16,16,16,15,15,18,15,15,13,13,16,16,15,14,14,17,15,15,14,13,17,15,15,14,14,16,16,16,15,15,18,15,14,13,13,17,15,15,14,14,18,14,15,13,13,18,15,15,14,14,16,16,16,15,15,17,15,15,13,13,17,15,15,14,14,17,15,15,13,13,13,11,11,10,10,16,14,14,13,13,17,14,15,14,14,17,15,15,12,12,17,14,14,12,12,16,15,15,14,14,16,14,14,14,14,16,15,15,14,14,16,15,15,14,14,16,15,15,14,14,16,15,15,14,14,16,15,14,15,15,17,15,15,14,14,17,15,15,14,14,17,15,15,14,14,17,15,16,14,14,16,14,14,14,14,17,15,15,13,13,17,15,15,13,13,16,15,15,13,13,17,16,16,14,14,17,15,14,15,14,17,15,15,13,13,17,15,15,13,13,17,15,15,13,13,14,14,14,9,9,14,14,14,18,19,14,15,15,19,18,14,14,14,19,19,15,14,14,19,19,15,16,16,19,19,15,16,16,19,19,15,15,15,19,19,15,16,16,19,20,15,15,15,19,19,15,15,15,19,19,15,16,16,20,20,15,15,15,18,19,15,15,16,19,20,15,15,15,19,18,15,15,15,18,18,15,16,16,21,20,15,15,15,19,19,15,15,15,19,19,15,15,14,19,20,15,15,15,20,19,15,16,16,19,20,15,15,15,19,19,15,15,15,20,21,15,14,15,19,19,14,12,12,9,9,14,14,15,21,19,14,14,14,18,19,14,15,15,19,20,14,14,14,19,19,15,15,15,19,20,15,15,14,21,19,15,15,15,20,19,15,14,15,20,21,15,15,15,18,18,15,15,15,20,21,16,14,14,18,19,15,15,15,20,19,15,15,15,18,21,15,15,15,19,19,15,15,15,19,20,16,15,14,20,19,15,16,15,19,19,15,15,15,19,0,14,15,15,19,19,15,15,15,19,19,15,15,14,20,19,15,15,15,20,19,15,15,15,19,19,15,15,15,20,19,12,12,12,13,13,16,15,16,11,11,16,16,16,12,12,17,16,16,11,11,17,16,16,12,11,17,17,17,13,13,18,16,16,14,14,18,18,17,13,13,17,16,16,13,13,17,17,17,13,13,17,16,17,12,12,17,15,16,13,13,17,16,17,12,12,17,16,16,13,12,17,16,16,12,12,18,17,17,13,13,18,16,16,13,14,18,17,17,12,12,17,16,16,12,12,17,17,17,12,12,18,17,17,13,13,17,16,16,14,14,17,17,17,12,12,17,16,16,12,12,18,17,17,12,12,13,14,14,9,9,16,14,14,13,13,16,15,15,14,14,16,14,14,13,13,16,14,14,13,13,17,16,15,15,15,16,15,16,16,15,17,15,15,14,14,17,15,15,15,15,17,15,15,14,14,17,15,15,14,14,16,15,16,16,16,17,15,15,14,14,16,15,15,14,15,16,15,15,14,14,17,15,15,15,15,16,16,16,15,16,18,15,14,13,14,17,15,15,14,14,17,14,14,13,13,17,15,15,14,14,16,15,15,15,15,17,15,14,14,14,17,15,15,14,14,17,14,14,13,13,13,11,11,11,11,16,14,14,12,12,16,14,14,13,13,16,14,14,12,12,16,14,14,12,12,16,15,15,13,13,17,14,14,14,14,17,15,15,13,13,16,15,15,14,13,16,15,15,13,13,16,15,15,13,13,16,14,14,14,14,16,15,15,13,13,16,14,15,13,13,17,15,15,13,13,17,15,15,13,13,16,14,14,14,14,17,15,15,12,12,17,14,15,13,13,17,15,15,12,12,16,15,15,13,13,17,14,14,14,14,17,15,15,12,12,17,15,15,13,13,16,15,15,12,12,14,15,15,8,8,14,14,14,19,18,14,15,15,19,20,14,14,14,19,19,14,14,15,19,20,15,16,15,19,21,15,16,16,21,19,15,15,15,20,19,15,16,16,19,20,15,15,15,19,18,15,16,15,20,19,15,16,16,19,20,15,15,15,19,19,15,16,15,20,20,14,15,15,19,19,15,15,15,21,19,15,17,16,19,20,15,14,15,0,21,15,15,15,19,20,14,14,14,19,19,15,15,15,20,19,15,16,16,19,19,15,15,15,19,18,15,15,15,20,19,14,14,15,18,18,14,12,12,9,9,14,14,14,18,18,14,14,14,18,18,14,15,14,19,18,14,14,14,19,18,15,15,15,19,20,15,14,14,18,18,15,15,15,20,19,15,15,15,18,20,15,15,15,19,18,15,15,15,19,19,15,14,14,19,21,15,15,15,20,20,15,15,15,18,19,14,15,15,19,20,15,15,15,20,19,15,14,14,19,21,15,15,15,18,19,15,14,15,20,19,14,15,15,21,21,14,15,15,19,20,15,14,14,19,20,15,15,15,19,20,15,15,14,20,20,14,15,15,20,19,13,12,12,13,13,17,16,16,11,11,17,16,16,12,12,18,17,16,11,11,18,16,16,11,11,17,17,17,13,13,18,16,16,13,13,18,17,17,12,12,18,16,16,13,13,18,17,17,12,12,18,17,17,13,13,18,16,16,14,14,18,16,17,12,12,18,17,17,13,13,17,17,17,12,12,17,17,17,12,12,17,16,15,13,13,18,16,16,11,11,17,16,16,12,12,17,16,17,11,11,18,17,17,13,12,17,16,16,13,13,17,17,17,12,12,17,16,17,12,12,18,17,17,11,11,14,14,14,9,9,16,14,14,13,13,17,15,15,14,14,17,14,14,13,13,16,14,14,13,13,17,15,15,14,14,16,16,16,16,15,18,15,15,14,14,17,16,15,15,15,17,15,15,14,14,17,15,15,14,15,16,16,16,15,16,18,15,15,14,14,17,15,15,14,15,17,15,15,14,14,17,15,15,14,14,16,16,16,15,16,17,14,14,13,13,17,15,15,14,14,18,15,15,13,13,17,15,15,14,14,16,16,16,15,15,17,14,14,13,13,17,15,15,14,14,17,14,14,13,13,13,11,11,11,11,16,14,14,12,12,16,14,14,12,13,17,15,14,11,11,17,14,14,11,11,17,15,15,13,14,17,14,14,14,14,17,15,15,13,13,17,14,14,13,13,17,15,15,13,13,17,15,15,13,13,17,14,14,14,14,17,15,15,13,13,18,14,15,13,13,17,15,15,13,13,16,15,15,13,13,17,14,14,13,13,17,15,15,12,12,16,14,14,12,12,16,15,15,12,12,17,16,15,13,13,17,14,14,13,13,17,15,15,12,12,16,15,15,12,12,16,15,15,12,12,13,15,15,8,8,14,14,14,18,19,14,15,15,19,20,14,14,14,18,18,14,15,15,18,18,15,16,16,19,19,15,16,17,20,20,15,15,15,19,19,15,16,16,18,20,15,15,15,19,19,15,15,16,18,18,15,17,16,19,19,15,15,15,18,21,15,16,16,21,20,15,15,15,19,21,15,16,15,20,19,15,16,17,20,20,15,15,15,19,19,15,16,16,21,20,15,15,15,19,20,15,15,15,19,19,15,16,16,20,19,15,15,15,19,19,15,16,15,20,21,15,15,15,21,19,14,12,12,8,8,14,14,14,20,18,14,13,13,19,19,14,14,14,19,18,15,14,14,19,20,14,15,15,20,20,15,14,14,21,20,15,15,15,20,20,15,15,14,21,19,15,15,15,19,19,15,15,15,19,20,15,14,14,20,20,15,15,15,19,20,15,14,14,19,20,15,15,15,20,20,15,15,15,20,19,15,14,14,20,21,15,15,15,20,21,15,14,14,20,0,15,16,15,20,21,15,15,15,19,20,15,14,14,19,19,15,15,15,19,20,15,15,15,19,19,15,15,15,18,20,13,12,12,13,13,18,16,17,12,12,17,16,16,12,12,17,17,16,11,11,18,16,16,11,11,17,17,18,13,13,18,16,16,14,14,18,17,17,13,13,18,16,16,13,13,18,17,17,12,12,17,17,16,13,13,17,16,16,13,14,18,17,17,12,12,18,16,16,12,13,17,16,17,12,12,17,18,17,13,13,18,16,16,13,13,18,17,17,12,12,17,16,16,12,12,17,17,17,11,11,17,16,17,12,12,17,16,16,13,13,17,16,16,11,11,17,16,16,12,12,18,16,17,11,11,14,14,14,9,9,16,14,15,13,13,17,15,15,14,14,17,14,14,12,12,16,14,14,13,13,18,15,15,15,15,17,15,16,15,16,18,15,15,14,14,17,15,16,15,15,17,15,15,14,14,18,15,15,14,14,16,16,16,16,15,17,15,15,14,14,16,15,15,14,14,17,15,15,14,14,17,15,15,14,14,17,16,16,15,15,17,15,14,13,13,17,15,15,14,14,17,15,15,13,13,17,15,15,14,14,16,16,16,15,15,18,15,14,14,14,17,15,15,14,14,18,15,15,13,13,13,12,12,11,11,16,14,14,12,12,16,14,14,13,13,17,15,15,12,12,17,14,14,12,12,17,15,15,14,14,17,14,14,14,14,17,15,15,13,13,17,15,14,13,13,17,15,15,13,13,17,15,15,13,13,16,14,14,14,14,17,15,15,13,13,16,14,14,13,13,16,15,15,13,13,17,15,16,13,13,17,14,14,14,13,17,15,15,12,12,16,15,14,12,12,17,15,15,12,12,16,15,16,13,13,16,14,14,14,13,17,15,15,12,12,16,14,14,12,12,17,15,15,12,12,14,15,15,8,8,14,14,14,18,18,14,15,15,19,18,14,14,14,18,18,14,15,15,19,20,15,16,15,21,18,15,16,16,18,0,15,15,15,19,20,15,16,16,20,0,15,16,15,19,18,15,15,15,19,19,15,16,16,21,19,15,15,15,19,19,15,16,16,20,20,15,15,15,19,19,15,15,15,19,18,15,16,16,20,20,15,14,15,20,19,15,15,15,19,20,15,15,15,19,19,15,16,15,19,20,15,16,16,19,20,15,15,15,19,19,15,16,15,20,20,15,15,15,20,18,13,12,12,8,8,14,14,14,19,20,14,14,14,19,19,14,15,15,20,20,14,14,14,18,19,15,15,15,20,0,15,14,14,18,20,15,15,15,19,19,15,15,15,21,19,15,15,15,19,20,15,15,15,20,21,15,14,14,20,19,15,15,15,20,19,15,15,14,21,19,15,15,15,19,18,15,15,15,20,19,15,14,14,19,19,15,15,16,20,19,15,15,15,20,0,15,15,15,19,21,15,15,15,22,20,15,14,14,22,19,15,15,15,19,20,15,14,14,20,19,14,15,15,19,21,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,6,8,8,6,8,8,7,9,9,10,11,11,8,8,8,7,9,9,11,12,12,9,9,9,6,7,7,10,11,11,10,11,11,10,11,11,13,13,13,12,12,12,10,12,11,14,14,14,12,12,12,6,5,5,9,6,6,9,6,6,9,7,7,12,10,10,11,7,6,9,7,7,13,11,11,12,7,7,7,8,8,12,10,10,12,10,10,11,10,10,15,13,13,13,9,9,12,11,11,15,14,14,15,11,11,8,7,7,12,11,11,12,11,11,11,11,11,14,13,14,14,12,12,12,11,11,16,15,15,14,12,12,0,10,10,0,12,12,0,12,12,0,11,11,0,14,14,0,11,11,0,11,11,0,15,15,0,11,11,7,8,8,13,11,11,12,10,10,12,11,11,15,13,13,14,11,11,12,10,10,16,14,14,15,10,10,9,7,7,13,11,12,13,12,11,12,11,11,15,14,14,14,12,12,13,12,12,16,15,15,15,12,12,0,11,11,0,12,12,0,12,13,0,12,12,0,15,15,0,12,12,0,12,12,0,16,15,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,0,9,9,0,9,9,0,10,10,0,9,9,0,10,10,0,10,10,0,10,10,0,10,10,0,7,7,0,7,7,0,6,6,0,8,8,0,7,7,0,8,8,0,8,8,0,7,7,0,8,8,0,7,7,0,9,9,0,8,9,0,10,10,0,9,9,0,10,10,0,10,11,0,9,9,0,10,10,0,9,9,0,11,11,0,12,12,0,12,12,0,11,11,0,12,12,0,13,13,0,12,12,0,13,13,0,8,8,0,12,12,0,12,12,0,13,13,0,13,13,0,13,13,0,13,13,0,13,13,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,11,11,0,12,12,0,13,13,0,12,12,0,13,13,0,13,13,0,12,12,0,12,12,0,9,9,0,12,12,0,13,13,0,14,14,0,13,13,0,14,14,0,14,14,0,13,13,0,14,14,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,0,7,7,0,8,8,0,9,9,0,12,12,0,8,8,0,9,9,0,13,13,0,8,8,0,6,6,0,11,11,0,12,12,0,12,12,0,14,14,0,11,12,0,12,12,0,15,15,0,12,12,0,5,5,0,5,5,0,6,6,0,7,7,0,10,10,0,6,6,0,7,7,0,11,11,0,6,6,0,7,7,0,11,11,0,12,11,0,11,11,0,14,14,0,10,10,0,12,12,0,15,15,0,12,12,0,6,6,0,12,12,0,12,12,0,12,12,0,14,14,0,11,11,0,12,12,0,16,16,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,11,11,0,16,16,0,11,11,0,6,6,0,12,12,0,12,12,0,13,13,0,15,15,0,12,12,0,13,13,0,15,15,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,3,7,9,12,16,16,3,2,5,7,11,14,15,7,4,5,6,9,12,15,8,5,5,5,8,10,14,9,7,6,6,8,10,12,12,10,10,7,6,8,10,15,12,10,6,4,7,9,0,0,0,0,0,0,0,0,0,0,0,0,249,213,64,0,0,0,0,0,64,223,64,0,0,0,0,0,136,227,64,0,0,0,0,0,112,231,64,0,0,0,0,0,88,235,64,0,0,0,0,0,64,239,64,0,0,0,0,0,136,243,64,0,0,0,0,0,112,247,64,0,0,0,0,0,88,251,64,0,0,0,0,0,64,255,64,0,0,0,0,0,136,3,65,0,0,0,0,136,132,14,65,176,240,7,0,48,241,7,0,48,242,7,0,48,244,7,0,48,248,7,0,48,0,8,0,48,16,8,0,48,48,8,0,24,0,120,58,76,70,11,60,242,204,192,60,116,252,59,61,86,73,154,61,241,93,228,61,248,163,29,62,180,231,78,62,54,157,130,62,78,220,159,62,193,174,190,62,65,132,222,62,173,194,254,62,186,101,15,63,248,0,31,63,29,233,45,63,249,219,59,63,45,162,72,63,160,17,84,63,38,15,94,63,46,143,102,63,112,149,109,63,174,51,115,63,159,135,119,63,66,184,122,63,196,242,124,63,75,103,126,63,196,69,127,63,241,186,127,63,217,237,127,63,162,253,127,63,248,255,127,63,168,9,120,57,17,119,11,59,135,139,193,59,74,113,61,60,148,82,156,60,94,8,233,60,42,83,34,61,74,118,87,61,138,227,137,61,7,140,171,61,34,154,208,61,108,239,248,61,164,52,18,62,100,112,41,62,65,21,66,62,67,11,92,62,47,56,119,62,197,191,137,62,92,97,152,62,135,112,167,62,4,220,182,62,188,145,198,62,231,126,214,62,48,144,230,62,227,177,246,62,13,104,3,63,121,107,11,63,98,89,19,63,42,40,27,63,137,206,34,63,166,67,42,63,49,127,49,63,126,121,56,63,153,43,63,63,92,143,69,63,127,159,75,63,165,87,81,63,104,180,86,63,89,179,91,63,8,83,96,63,252,146,100,63,177,115,104,63,138,246,107,63,198,29,111,63,109,236,113,63,62,102,116,63,154,143,118,63,104,109,120,63,3,5,122,63,26,92,123,63,153,120,124,63,143,96,125,63],"i8",L3,F.GLOBAL_BASE+510456),d3([17,26,126,63,39,171,126,63,176,25,127,63,74,107,127,63,68,165,127,63,132,204,127,63,123,229,127,63,17,244,127,63,158,251,127,63,219,254,127,63,218,255,127,63,0,0,128,63,5,12,120,56,50,131,11,58,118,186,193,58,226,203,61,59,38,207,156,59,139,32,234,59,245,102,35,60,63,100,89,60,184,127,139,60,59,23,174,60,239,114,212,60,96,140,254,60,45,46,22,61,114,237,46,61,155,127,73,61,220,223,101,61,123,4,130,61,159,250,145,61,71,207,162,61,38,127,180,61,173,6,199,61,16,98,218,61,63,141,238,61,244,193,1,62,185,160,12,62,128,224,23,62,182,126,35,62,166,120,47,62,116,203,59,62,34,116,72,62,141,111,85,62,107,186,98,62,83,81,112,62,180,48,126,62,110,42,134,62,252,92,141,62,9,174,148,62,138,27,156,62,100,163,163,62,112,67,171,62,119,249,178,62,54,195,186,62,93,158,194,62,147,136,202,62,118,127,210,62,154,128,218,62,142,137,226,62,217,151,234,62,2,169,242,62,139,186,250,62,251,100,1,63,99,106,5,63,65,108,9,63,89,105,13,63,116,96,17,63,94,80,21,63,231,55,25,63,231,21,29,63,58,233,32,63,197,176,36,63,116,107,40,63,62,24,44,63,35,182,47,63,43,68,51,63,109,193,54,63,10,45,58,63,48,134,61,63,26,204,64,63,17,254,67,63,107,27,71,63,142,35,74,63,238,21,77,63,15,242,79,63,132,183,82,63,239,101,85,63,3,253,87,63,129,124,90,63,60,228,92,63,21,52,95,63,254,107,97,63,246,139,99,63,14,148,101,63,98,132,103,63,33,93,105,63,133,30,107,63,213,200,108,63,103,92,110,63,155,217,111,63,224,64,113,63,172,146,114,63,131,207,115,63,241,247,116,63,139,12,118,63,239,13,119,63,193,252,119,63,172,217,120,63,99,165,121,63,155,96,122,63,15,12,123,63,124,168,123,63,163,54,124,63,71,183,124,63,41,43,125,63,13,147,125,63,183,239,125,63,229,65,126,63,89,138,126,63,205,201,126,63,251,0,127,63,150,48,127,63,78,89,127,63,205,123,127,63,182,152,127,63,167,176,127,63,53,196,127,63,239,211,127,63,91,224,127,63,245,233,127,63,51,241,127,63,127,246,127,63,59,250,127,63,190,252,127,63,84,254,127,63,64,255,127,63,186,255,127,63,238,255,127,63,254,255,127,63,0,0,128,63,169,12,120,55,54,134,11,57,38,198,193,57,94,226,61,58,234,237,156,58,85,101,234,58,56,170,35,59,207,219,89,59,169,226,139,59,42,178,174,59,13,91,213,59,204,219,255,59,91,25,23,60,250,46,48,60,194,45,75,60,156,20,104,60,46,113,131,60,225,202,147,60,185,22,165,60,1,84,183,60,245,129,202,60,198,159,222,60,155,172,243,60,199,211,4,61,213,71,16,61,250,49,28,61,174,145,40,61,101,102,53,61,141,175,66,61,140,108,80,61,193,156,94,61,133,63,109,61,41,84,124,61,252,236,133,61,26,232,141,61,13,27,150,61,110,133,158,61,212,38,167,61,210,254,175,61,245,12,185,61,200,80,194,61,209,201,203,61,146,119,213,61,139,89,223,61,51,111,233,61,2,184,243,61,105,51,254,61,106,112,4,62,214,223,9,62,171,103,15,62,153,7,21,62,77,191,26,62,116,142,32,62,181,116,38,62,184,113,44,62,34,133,50,62,149,174,56,62,178,237,62,62,21,66,69,62,92,171,75,62,30,41,82,62,243,186,88,62,112,96,95,62,40,25,102,62,170,228,108,62,132,194,115,62,68,178,122,62,185,217,128,62,203,98,132,62,26,244,135,62,105,141,139,62,120,46,143,62,6,215,146,62,211,134,150,62,156,61,154,62,29,251,157,62,19,191,161,62,57,137,165,62,71,89,169,62,249,46,173,62,5,10,177,62,36,234,180,62,13,207,184,62,117,184,188,62,18,166,192,62,153,151,196,62,190,140,200,62,52,133,204,62,175,128,208,62,225,126,212,62,125,127,216,62,52,130,220,62,184,134,224,62,185,140,228,62,233,147,232,62,248,155,236,62,150,164,240,62,117,173,244,62,67,182,248,62,178,190,252,62,57,99,0,63,153,102,2,63,82,105,4,63,60,107,6,63,48,108,8,63,6,108,10,63,151,106,12,63,188,103,14,63,78,99,16,63,39,93,18,63,33,85,20,63,21,75,22,63,222,62,24,63,87,48,26,63,92,31,28,63,199,11,30,63,117,245,31,63,66,220,33,63,12,192,35,63,176,160,37,63,12,126,39,63,254,87,41,63,104,46,43,63,39,1,45,63,29,208,46,63,43,155,48,63,51,98,50,63,23,37,52,63,188,227,53,63,4,158,55,63,214,83,57,63,23,5,59,63,173,177,60,63,128,89,62,63,120,252,63,63,126,154,65,63,124,51,67,63,93,199,68,63,12,86,70,63,119,223,71,63,138,99,73,63,54,226,74,63,104,91,76,63,17,207,77,63,35,61,79,63,145,165,80,63,76,8,82,63,75,101,83,63,130,188,84,63,231,13,86,63,114,89,87,63,26,159,88,63,218,222,89,63,172,24,91,63,138,76,92,63,113,122,93,63,93,162,94,63,78,196,95,63,67,224,96,63,58,246,97,63,54,6,99,63,56,16,100,63,67,20,101,63,92,18,102,63,133,10,103,63,198,252,103,63,37,233,104,63,168,207,105,63,89,176,106,63,64,139,107,63,102,96,108,63,216,47,109,63,159,249,109,63,201,189,110,63,97,124,111,63,118,53,112,63,23,233,112,63,81,151,113,63,53,64,114,63,212,227,114,63,61,130,115,63,131,27,116,63,184,175,116,63,238,62,117,63,56,201,117,63,171,78,118,63,90,207,118,63,90,75,119,63,192,194,119,63,162,53,120,63,21,164,120,63,48,14,121,63,8,116,121,63,182,213,121,63,79,51,122,63,235,140,122,63,162,226,122,63,139,52,123,63,191,130,123,63,85,205,123,63,102,20,124,63,9,88,124,63,88,152,124,63,106,213,124,63,88,15,125,63,58,70,125,63,41,122,125,63,62,171,125,63,143,217,125,63,54,5,126,63,75,46,126,63,228,84,126,63,27,121,126,63,7,155,126,63,190,186,126,63,88,216,126,63,236,243,126,63,144,13,127,63,91,37,127,63,99,59,127,63,188,79,127,63,125,98,127,63,185,115,127,63,135,131,127,63,249,145,127,63,36,159,127,63,26,171,127,63,238,181,127,63,179,191,127,63,122,200,127,63,85,208,127,63,84,215,127,63,136,221,127,63,0,227,127,63,204,231,127,63,249,235,127,63,150,239,127,63,177,242,127,63,85,245,127,63,144,247,127,63,109,249,127,63,246,250,127,63,54,252,127,63,55,253,127,63,1,254,127,63,156,254,127,63,18,255,127,63,103,255,127,63,163,255,127,63,204,255,127,63,229,255,127,63,244,255,127,63,252,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,60,12,120,54,253,134,11,56,19,201,193,56,248,231,61,57,148,245,156,57,115,118,234,57,238,186,35,58,113,249,89,58,32,251,139,58,96,216,174,58,34,148,213,58,3,23,0,59,209,82,23,59,65,125,48,59,21,150,75,59,8,157,104,59,233,200,131,59,20,58,148,59,218,161,165,59,16,0,184,59,136,84,203,59,16,159,223,59,118,223,244,59,194,138,5,60,128,32,17,60,217,48,29,60,172,187,41,60,219,192,54,60,67,64,68,60,194,57,82,60,52,173,96,60,115,154,111,60,88,1,127,60,222,112,135,60,186,157,143,60,42,7,152,60,25,173,160,60,112,143,169,60,23,174,178,60,246,8,188,60,243,159,197,60,245,114,207,60,225,129,217,60,156,204,227,60,10,83,238,60,14,21,249,60,70,9,2,61,177,165,7,61,187,95,13,61,81,55,19,61,102,44,25,61,230,62,31,61,195,110,37,61,233,187,43,61,71,38,50,61,202,173,56,61,97,82,63,61,247,19,70,61,121,242,76,61,210,237,83,61,240,5,91,61,187,58,98,61,32,140,105,61,8,250,112,61,93,132,120,61,132,21,128,61,249,246,131,61,130,230,135,61,19,228,139,61,159,239,143,61,26,9,148,61,119,48,152,61,169,101,156,61,163,168,160,61,88,249,164,61,186,87,169,61,186,195,173,61,76,61,178,61,95,196,182,61,230,88,187,61,209,250,191,61,18,170,196,61,152,102,201,61,85,48,206,61,56,7,211,61,48,235,215,61,47,220,220,61,34,218,225,61,248,228,230,61,161,252,235,61,11,33,241,61,35,82,246,61,217,143,251,61,13,109,0,62,105,24,3,62,247,201,5,62,174,129,8,62,133,63,11,62,113,3,14,62,104,205,16,62,96,157,19,62,79,115,22,62,42,79,25,62,232,48,28,62,124,24,31,62,221,5,34,62,255,248,36,62,215,241,39,62,90,240,42,62,125,244,45,62,51,254,48,62,114,13,52,62,45,34,55,62,88,60,58,62,232,91,61,62,208,128,64,62,3,171,67,62,118,218,70,62,26,15,74,62,229,72,77,62,199,135,80,62,181,203,83,62,162,20,87,62,127,98,90,62,63,181,93,62,213,12,97,62,50,105,100,62,73,202,103,62,12,48,107,62,108,154,110,62,92,9,114,62,203,124,117,62,173,244,120,62,241,112,124,62,138,241,127,62,52,187,129,62,190,127,131,62,91,70,133,62,4,15,135,62,176,217,136,62,89,166,138,62,245,116,140,62,126,69,142,62,234,23,144,62,50,236,145,62,78,194,147,62,54,154,149,62,224,115,151,62,70,79,153,62,93,44,155,62,31,11,157,62,130,235,158,62,127,205,160,62,11,177,162,62,31,150,164,62,177,124,166,62,186,100,168,62,47,78,170,62,9,57,172,62,62,37,174,62,198,18,176,62,150,1,178,62,167,241,179,62,238,226,181,62,100,213,183,62,254,200,185,62,179,189,187,62,122,179,189,62,74,170,191,62,25,162,193,62,221,154,195,62,142,148,197,62,34,143,199,62,142,138,201,62,203,134,203,62,205,131,205,62,140,129,207,62,253,127,209,62,24,127,211,62,210,126,213,62,33,127,215,62,252,127,217,62,88,129,219,62,45,131,221,62,112,133,223,62,23,136,225,62,25,139,227,62,108,142,229,62,5,146,231,62,219,149,233,62,228,153,235,62,21,158,237,62,102,162,239,62,203,166,241,62,59,171,243,62,173,175,245,62,21,180,247,62,107,184,249,62,164,188,251,62,181,192,253,62,150,196,255,62,30,228,0,63,207,229,1,63,88,231,2,63,182,232,3,63,226,233,4,63,215,234,5,63,146,235,6,63,12,236,7,63,66,236,8,63,45,236,9,63,202,235,10,63,19,235,11,63,4,234,12,63,151,232,13,63,200,230,14,63,145,228,15,63,239,225,16,63,220,222,17,63,84,219,18,63,81,215,19,63,208,210,20,63,202,205,21,63,61,200,22,63,34,194,23,63,117,187,24,63,50,180,25,63,85,172,26,63,215,163,27,63,182,154,28,63,236,144,29,63,117,134,30,63,77,123,31,63,110,111,32,63,214,98,33,63,126,85,34,63,100,71,35,63,130,56,36,63,212,40,37,63,87,24,38,63,5,7,39,63,219,244,39,63,213,225,40,63,239,205,41,63,36,185,42,63,113,163,43,63,209,140,44,63,64,117,45,63,188,92,46,63,63,67,47,63,199,40,48,63,78,13,49,63,211,240,49,63,80,211,50,63,195,180,51,63,39,149,52,63,122,116,53,63,184,82,54,63,220,47,55,63,229,11,56,63,206,230,56,63,149,192,57,63,54,153,58,63,174,112,59,63,249,70,60,63,21,28,61,63,255,239,61,63,179,194,62,63,48,148,63,63,113,100,64,63,116,51,65,63,55,1,66,63,182,205,66,63,239,152,67,63,224,98,68,63,134,43,69,63,222,242,69,63,230,184,70,63,156,125,71,63,253,64,72,63,7,3,73,63,184,195,73,63,14,131,74,63,6,65,75,63,159,253,75,63,215,184,76,63,172,114,77,63,28,43,78,63,38,226,78,63,199,151,79,63,253,75,80,63,201,254,80,63,39,176,81,63,22,96,82,63,150,14,83,63,164,187,83,63,63,103,84,63,103,17,85,63,26,186,85,63,86,97,86,63,28,7,87,63,105,171,87,63,62,78,88,63,152,239,88,63,120,143,89,63,221,45,90,63,198,202,90,63,50,102,91,63,33,0,92,63,147,152,92,63,134,47,93,63,251,196,93,63,242,88,94,63,105,235,94,63,98,124,95,63,219,11,96,63,213,153,96,63,80,38,97,63,76,177,97,63,201,58,98,63,199,194,98,63,70,73,99,63,71,206,99,63,202,81,100,63,208,211,100,63,88,84,101,63,100,211,101,63,244,80,102,63,9,205,102,63,163,71,103,63,195,192,103,63,107,56,104,63,154,174,104,63,82,35,105,63,147,150,105,63,96,8,106,63,184,120,106,63,157,231,106,63,16,85,107,63,19,193,107,63,166,43,108,63,203,148,108,63,132,252,108,63,209,98,109,63,180,199,109,63,48,43,110,63,68,141,110,63,244,237,110,63,64,77,111,63,42,171,111,63,181,7,112,63,225,98,112,63,177,188,112,63,38,21,113,63,67,108,113,63,10,194,113,63,123,22,114,63,155,105,114,63,106,187,114,63,234,11,115,63,31,91,115,63,9,169,115,63,172,245,115,63,9,65,116,63,35,139,116,63,252,211,116,63,151,27,117,63,245,97,117,63,26,167,117,63,8,235,117,63,193,45,118,63,72,111,118,63,159,175,118,63,202,238,118,63,201,44,119,63,161,105,119,63,84,165,119,63,228,223,119,63,85,25,120,63,168,81,120,63,226,136,120,63,3,191,120,63,16,244,120,63,11,40,121,63,247,90,121,63,215,140,121,63,173,189,121,63,125,237,121,63,73,28,122,63,20,74,122,63,226,118,122,63,181,162,122,63,144,205,122,63,118,247,122,63,107,32,123,63,112,72,123,63,138,111,123,63,186,149,123,63,5,187,123,63,109,223,123,63,245,2,124,63,160,37,124,63,113,71,124,63,108,104,124,63,147,136,124,63,233,167,124,63,114,198,124,63,48,228,124,63,38,1,125,63,89,29,125,63,201,56,125,63,124,83,125,63,115,109,125,63,178,134,125,63,60,159,125,63,19,183,125,63,60,206,125,63,184,228,125,63,139,250,125,63,184,15,126,63,66,36,126,63,44,56,126,63,120,75,126,63,43,94,126,63,70,112,126,63,204,129,126,63,194,146,126,63,41,163,126,63,4,179,126,63,86,194,126,63,35,209,126,63,109,223,126,63,55,237,126,63,131,250,126,63,85,7,127,63,175,19,127,63,148,31,127,63,7,43,127,63,10,54,127,63,160,64,127,63,205,74,127,63,146,84,127,63,242,93,127,63,239,102,127,63,141,111,127,63,206,119,127,63,181,127,127,63,67,135,127,63,124,142,127,63,98,149,127,63,247,155,127,63,61,162,127,63,56,168,127,63,233,173,127,63,83,179,127,63,120,184,127,63,90,189,127,63,252,193,127,63,95,198,127,63,134,202,127,63,116,206,127,63,41,210,127,63,168,213,127,63,244,216,127,63,13,220,127,63,247,222,127,63,179,225,127,63,67,228,127,63,168,230,127,63,229,232,127,63,252,234,127,63,237,236,127,63,188,238,127,63,105,240,127,63,246,241,127,63,101,243,127,63,183,244,127,63,238,245,127,63,11,247,127,63,16,248,127,63,254,248,127,63,214,249,127,63,155,250,127,63,76,251,127,63,236,251,127,63,124,252,127,63,252,252,127,63,110,253,127,63,211,253,127,63,44,254,127,63,121,254,127,63,189,254,127,63,247,254,127,63,42,255,127,63,84,255,127,63,120,255,127,63,150,255,127,63,175,255,127,63,195,255,127,63,211,255,127,63,224,255,127,63,234,255,127,63,241,255,127,63,246,255,127,63,250,255,127,63,253,255,127,63,254,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,171,15,120,53,24,135,11,55,225,201,193,55,107,233,61,56,128,247,156,56,187,122,234,56,24,191,35,57,213,0,90,57,56,1,140,57,229,225,174,57,88,162,213,57,60,33,0,58,24,97,23,58,175,144,48,58,243,175,75,58,212,190,104,58,159,222,131,58,143,85,148,58,48,196,165,58,119,42,184,58,90,136,203,58,204,221,223,58,191,42,245,58,148,183,5,59,124,85,17,59,16,111,29,59,73,4,42,59,31,21,55,59,138,161,68,59,129,169,82,59,252,44,97,59,241,43,112,59,88,166,127,59,19,206,135,59,169,6,144,59,233,124,152,59,204,48,161,59,79,34,170,59,106,81,179,59,26,190,188,59,86,104,198,59,26,80,208,59,95,117,218,59,31,216,228,59,83,120,239,59,244,85,250,59,126,184,2,60,177,100,8,60,145,47,14,60,25,25,20,60,70,33,26,60,19,72,32,60,126,141,38,60,129,241,44,60,25,116,51,60,65,21,58,60,246,212,64,60,50,179,71,60,243,175,78,60,50,203,85,60,235,4,93,60,26,93,100,60,186,211,107,60,198,104,115,60,58,28,123,60,7,119,129,60,33,111,133,60,102,118,137,60,212,140,141,60,105,178,145,60,33,231,149,60,251,42,154,60,243,125,158,60,6,224,162,60,50,81,167,60,115,209,171,60,199,96,176,60,43,255,180,60,154,172,185,60,19,105,190,60,146,52,195,60,20,15,200,60,149,248,204,60,19,241,209,60,137,248,214,60,245,14,220,60,83,52,225,60,160,104,230,60,215,171,235,60,246,253,240,60,249,94,246,60,220,206,251,60,205,166,0,61,153,109,3,61,207,59,6,61,109,17,9,61,114,238,11,61,220,210,14,61,167,190,17,61,211,177,20,61,94,172,23,61,68,174,26,61,133,183,29,61,30,200,32,61,12,224,35,61,78,255,38,61,225,37,42,61,196,83,45,61,243,136,48,61,109,197,51,61,47,9,55,61,55,84,58,61,130,166,61,61,15,0,65,61,218,96,68,61,226,200,71,61,35,56,75,61,156,174,78,61,73,44,82,61,40,177,85,61,55,61,89,61,115,208,92,61,217,106,96,61,103,12,100,61,25,181,103,61,238,100,107,61,227,27,111,61,244,217,114,61,30,159,118,61,96,107,122,61,182,62,126,61,143,12,129,61,73,253,130,61,138,241,132,61,79,233,134,61,150,228,136,61,94,227,138,61,167,229,140,61,109,235,142,61,175,244,144,61,109,1,147,61,164,17,149,61,83,37,151,61,120,60,153,61,17,87,155,61,30,117,157,61,155,150,159,61,136,187,161,61,226,227,163,61,169,15,166,61,218,62,168,61,116,113,170,61,116,167,172,61,218,224,174,61,162,29,177,61,205,93,179,61,87,161,181,61,62,232,183,61,130,50,186,61,32,128,188,61,22,209,190,61,98,37,193,61,2,125,195,61,245,215,197,61,57,54,200,61,203,151,202,61,169,252,204,61,211,100,207,61,68,208,209,61,252,62,212,61,249,176,214,61,56,38,217,61,184,158,219,61,117,26,222,61,111,153,224,61,163,27,227,61,14,161,229,61,175,41,232,61,132,181,234,61,138,68,237,61,191,214,239,61,33,108,242,61,174,4,245,61,99,160,247,61,62,63,250,61,61,225,252,61,93,134,255,61,78,23,1,62,252,108,2,62,56,196,3,62,255,28,5,62,81,119,6,62,45,211,7,62,145,48,9,62,125,143,10,62,238,239,11,62,228,81,13,62,94,181,14,62,89,26,16,62,214,128,17,62,210,232,18,62,77,82,20,62,69,189,21,62,184,41,23,62,166,151,24,62,13,7,26,62,236,119,27,62,65,234,28,62,11,94,30,62,73,211,31,62,250,73,33,62,28,194,34,62,173,59,36,62,172,182,37,62,24,51,39,62,240,176,40,62,50,48,42,62,220,176,43,62,238,50,45,62,101,182,46,62,64,59,48,62,126,193,49,62,30,73,51,62,29,210,52,62,123,92,54,62,54,232,55,62,76,117,57,62,187,3,59,62,131,147,60,62,162,36,62,62,22,183,63,62,222,74,65,62,248,223,66,62,98,118,68,62,28,14,70,62,35,167,71,62,117,65,73,62,18,221,74,62,247,121,76,62,35,24,78,62,149,183,79,62,74,88,81,62,66,250,82,62,121,157,84,62,240,65,86,62,163,231,87,62,146,142,89,62,186,54,91,62,26,224,92,62,177,138,94,62,124,54,96,62,122,227,97,62,169,145,99,62,7,65,101,62,147,241,102,62,75,163,104,62,44,86,106,62,54,10,108,62,102,191,109,62,187,117,111,62,51,45,113,62,204,229,114,62,132,159,116,62,90,90,118,62,75,22,120,62,85,211,121,62,120,145,123,62,176,80,125,62,253,16,127,62,46,105,128,62,101,74,129,62,36,44,130,62,105,14,131,62,52,241,131,62,130,212,132,62,84,184,133,62,169,156,134,62,127,129,135,62,213,102,136,62,171,76,137,62,255,50,138,62,209,25,139,62,32,1,140,62,233,232,140,62,46,209,141,62,236,185,142,62,34,163,143,62,208,140,144,62,244,118,145,62,142,97,146,62,156,76,147,62,29,56,148,62,17,36,149,62,118,16,150,62,76,253,150,62,144,234,151,62,67,216,152,62,99,198,153,62,239,180,154,62,230,163,155,62,71,147,156,62,17,131,157,62,67,115,158,62,219,99,159,62,218,84,160,62,60,70,161,62,3,56,162,62,43,42,163,62,181,28,164,62,160,15,165,62,233,2,166,62,145,246,166,62,149,234,167,62,245,222,168,62,176,211,169,62,197,200,170,62,50,190,171,62,246,179,172,62,17,170,173,62,129,160,174,62,69,151,175,62,91,142,176,62,196,133,177,62,125,125,178,62,133,117,179,62,220,109,180,62,128,102,181,62,112,95,182,62,171,88,183,62,47,82,184,62,252,75,185,62,17,70,186,62,108,64,187,62,11,59,188,62,239,53,189,62,22,49,190,62,126,44,191,62,38,40,192,62,13,36,193,62,51,32,194,62,150,28,195,62,52,25,196,62,12,22,197,62,30,19,198,62,104,16,199,62,233,13,200,62,159,11,201,62,138,9,202,62,169,7,203,62,249,5,204,62,123,4,205,62,44,3,206,62,11,2,207,62,24,1,208,62,81,0,209,62,181,255,209,62,66,255,210,62,248,254,211,62,213,254,212,62,216,254,213,62,255,254,214,62,75,255,215,62,184,255,216,62,71,0,218,62,245,0,219,62,195,1,220,62,173,2,221,62,180,3,222,62,214,4,223,62,17,6,224,62,101,7,225,62,208,8,226,62,81,10,227,62,231,11,228,62,144,13,229,62,76,15,230,62,25,17,231,62,245,18,232,62,224,20,233,62,217,22,234,62,221,24,235,62,236,26,236,62,5,29,237,62,39,31,238,62,79,33,239,62,125,35,240,62,176,37,241,62,230,39,242,62,31,42,243,62,88,44,244,62,145,46,245,62,200,48,246,62,253,50,247,62,45,53,248,62,88,55,249,62,124,57,250,62,153,59,251,62,172,61,252,62,181,63,253,62,179,65,254,62,163,67,255,62,195,34,0,63,173,163,0,63,142,36,1,63,102,165,1,63,53,38,2,63,250,166,2,63,180,39,3,63,99,168,3,63,5,41,4,63,155,169,4,63,36,42,5,63,159,170,5,63,12,43,6,63,105,171,6,63,183,43,7,63,244,171,7,63,32,44,8,63,59,172,8,63,68,44,9,63,58,172,9,63,28,44,10,63,235,171,10,63,164,43,11,63,73,171,11,63,216,42,12,63,80,170,12,63,177,41,13,63,251,168,13,63,44,40,14,63,69,167,14,63,68,38,15,63,41,165,15,63,243,35,16,63,162,162,16,63,53,33,17,63,172,159,17,63,5,30,18,63,65,156,18,63,95,26,19,63,94,152,19,63,61,22,20,63,252,147,20,63,155,17,21,63,24,143,21,63,116,12,22,63,173,137,22,63,195,6,23,63,182,131,23,63,133,0,24,63,46,125,24,63,179,249,24,63,18,118,25,63,74,242,25,63,91,110,26,63,69,234,26,63,6,102,27,63,159,225,27,63,14,93,28,63,84,216,28,63,111,83,29,63,95,206,29,63,36,73,30,63,188,195,30,63,40,62,31,63,102,184,31,63,119,50,32,63,90,172,32,63,14,38,33,63,146,159,33,63,230,24,34,63,10,146,34,63,253,10,35,63,190,131,35,63,77,252,35,63,169,116,36,63,211,236,36,63,200,100,37,63,138,220,37,63,22,84,38,63,110,203,38,63,143,66,39,63,122,185,39,63,47,48,40,63,172,166,40,63,241,28,41,63,254,146,41,63,210,8,42,63,108,126,42,63,205,243,42,63,243,104,43,63,223,221,43,63,143,82,44,63,3,199,44,63,59,59,45,63,54,175,45,63,244,34,46,63,116,150,46,63,182,9,47,63,185,124,47,63,125,239,47,63,1,98,48,63,69,212,48,63,72,70,49,63,10,184,49,63,139,41,50,63,202,154,50,63,198,11,51,63,127,124,51,63,246,236,51,63,40,93,52,63,22,205,52,63,191,60,53,63,36,172,53,63,66,27,54,63,27,138,54,63,174,248,54,63,249,102,55,63,254,212,55,63,187,66,56,63,47,176,56,63,91,29,57,63,63,138,57,63,217,246,57,63,41,99,58,63,48,207,58,63,236,58,59,63,93,166,59,63,130,17,60,63,93,124,60,63,235,230,60,63,44,81,61,63,33,187,61,63,201,36,62,63,35,142,62,63,48,247,62,63,238,95,63,63,94,200,63,63,126,48,64,63,80,152,64,63,209,255,64,63,3,103,65,63,228,205,65,63,117,52,66,63,181,154,66,63,163,0,67,63,64,102,67,63,139,203,67,63,131,48,68,63,41,149,68,63,124,249,68,63,123,93,69,63,39,193,69,63,127,36,70,63,132,135,70,63,51,234,70,63,142,76,71,63,148,174,71,63,68,16,72,63,159,113,72,63,164,210,72,63,83,51,73,63,172,147,73,63,174,243,73,63,89,83,74,63,173,178,74,63,169,17,75,63,77,112,75,63,154,206,75,63,143,44,76,63,43,138,76,63,110,231,76,63,89,68,77,63,234,160,77,63,34,253,77,63,0,89,78,63,133,180,78,63,176,15,79,63,128,106,79,63,246,196,79,63,18,31,80,63,210,120,80,63,56,210,80,63,66,43,81,63,242,131,81,63,69,220,81,63,61,52,82,63,217,139,82,63,24,227,82,63,252,57,83,63,131,144,83,63,174,230,83,63,123,60,84,63,236,145,84,63,0,231,84,63,183,59,85,63,16,144,85,63,12,228,85,63,170,55,86,63,235,138,86,63,206,221,86,63,83,48,87,63,121,130,87,63,66,212,87,63,172,37,88,63,184,118,88,63,101,199,88,63,180,23,89,63,164,103,89,63,53,183,89,63,104,6,90,63,59,85,90,63,175,163,90,63,197,241,90,63,123,63,91,63,210,140,91,63,201,217,91,63,97,38,92,63,154,114,92,63,115,190,92,63,237,9,93,63,7,85,93,63,194,159,93,63,29,234,93,63,24,52,94,63,179,125,94,63,239,198,94,63,203,15,95,63,72,88,95,63,100,160,95,63,33,232,95,63,126,47,96,63,123,118,96,63,24,189,96,63,85,3,97,63,51,73,97,63,177,142,97,63,207,211,97,63,141,24,98,63,236,92,98,63,235,160,98,63,138,228,98,63,202,39,99,63,170,106,99,63,42,173,99,63,75,239,99,63,13,49,100,63,111,114,100,63,114,179,100,63,21,244,100,63,90,52,101,63,63,116,101,63,197,179,101,63,236,242,101,63,180,49,102,63,29,112,102,63,39,174,102,63,211,235,102,63,32,41,103,63,15,102,103,63,159,162,103,63,209,222,103,63,164,26,104,63,26,86,104,63,49,145,104,63,235,203,104,63,71,6,105,63,69,64,105,63,230,121,105,63,42,179,105,63,16,236,105,63,153,36,106,63,197,92,106,63,148,148,106,63,7,204,106,63,29,3,107,63,214,57,107,63,52,112,107,63,53,166,107,63,218,219,107,63,36,17,108,63,18,70,108,63,164,122,108,63,220,174,108,63,184,226,108,63,57,22,109,63,96,73,109,63,44,124,109,63,157,174,109,63,181,224,109,63,115,18,110,63,214,67,110,63,225,116,110,63,146,165,110,63,233,213,110,63,232,5,111,63,142,53,111,63,219,100,111,63,209,147,111,63,110,194,111,63,179,240,111,63,160,30,112,63,54,76,112,63,117,121,112,63,93,166,112,63,239,210,112,63,41,255,112,63,14,43,113,63,156,86,113,63,213,129,113,63,184,172,113,63,70,215,113,63,127,1,114,63,99,43,114,63,243,84,114,63,46,126,114,63,21,167,114,63,169,207,114,63,233,247,114,63,214,31,115,63,113,71,115,63,184,110,115,63,173,149,115,63,80,188,115,63,162,226,115,63,161,8,116,63,80,46,116,63,174,83,116,63,187,120,116,63,119,157,116,63,228,193,116,63,1,230,116,63,206,9,117,63,76,45,117,63,123,80,117,63,92,115,117,63,238,149,117,63,51,184,117,63,42,218,117,63,211,251,117,63,48,29,118,63,64,62,118,63,3,95,118,63,122,127,118,63,166,159,118,63,134,191,118,63,27,223,118,63,101,254,118,63,101,29,119,63,27,60,119,63,135,90,119,63,169,120,119,63,131,150,119,63,19,180,119,63,91,209,119,63,91,238,119,63,20,11,120,63,132,39,120,63,174,67,120,63,145,95,120,63,46,123,120,63,132,150,120,63,149,177,120,63,96,204,120,63,231,230,120,63,41,1,121,63,38,27,121,63,223,52,121,63,85,78,121,63,136,103,121,63,120,128,121,63,37,153,121,63,144,177,121,63,185,201,121,63,161,225,121,63,72,249,121,63,174,16,122,63,212,39,122,63,185,62,122,63,96,85,122,63,198,107,122,63,238,129,122,63,216,151,122,63,131,173,122,63,241,194,122,63,33,216,122,63,20,237,122,63,202,1,123,63,68,22,123,63,130,42,123,63,133,62,123,63,77,82,123,63,217,101,123,63,43,121,123,63,68,140,123,63,34,159,123,63,200,177,123,63,52,196,123,63,104,214,123,63,99,232,123,63,39,250,123,63,180,11,124,63,9,29,124,63,40,46,124,63,17,63,124,63,196,79,124,63,65,96,124,63,137,112,124,63,156,128,124,63,124,144,124,63,39,160,124,63,158,175,124,63,226,190,124,63,244,205,124,63,211,220,124,63,128,235,124,63,251,249,124,63,69,8,125,63,94,22,125,63,71,36,125,63,255,49,125,63,136,63,125,63,225,76,125,63,11,90,125,63,7,103,125,63,212,115,125,63,115,128,125,63,229,140,125,63,42,153,125,63,66,165,125,63,46,177,125,63,238,188,125,63,130,200,125,63,235,211,125,63,41,223,125,63,61,234,125,63,38,245,125,63,230,255,125,63,124,10,126,63,234,20,126,63,47,31,126,63,75,41,126,63,64,51,126,63,13,61,126,63,180,70,126,63,51,80,126,63,140,89,126,63,191,98,126,63,205,107,126,63,181,116,126,63,120,125,126,63,23,134,126,63,146,142,126,63,233,150,126,63,28,159,126,63,44,167,126,63,26,175,126,63,229,182,126,63,142,190,126,63,22,198,126,63,124,205,126,63,194,212,126,63,231,219,126,63,235,226,126,63,208,233,126,63,149,240,126,63,59,247,126,63,195,253,126,63,44,4,127,63,118,10,127,63,163,16,127,63,179,22,127,63,165,28,127,63,123,34,127,63,52,40,127,63,210,45,127,63,83,51,127,63,186,56,127,63,5,62,127,63,53,67,127,63,75,72,127,63,72,77,127,63,42,82,127,63,243,86,127,63,163,91,127,63,58,96,127,63,185,100,127,63,32,105,127,63,111,109,127,63,166,113,127,63,199,117,127,63,208,121,127,63,196,125,127,63,161,129,127,63,104,133,127,63,25,137,127,63,182,140,127,63,61,144,127,63,176,147,127,63,14,151,127,63,89,154,127,63,143,157,127,63,179,160,127,63,195,163,127,63,192,166,127,63,171,169,127,63,132,172,127,63,74,175,127,63,255,177,127,63,163,180,127,63,53,183,127,63,183,185,127,63,40,188,127,63,137,190,127,63,217,192,127,63,26,195,127,63,76,197,127,63,111,199,127,63,130,201,127,63,135,203,127,63,126,205,127,63,102,207,127,63,65,209,127,63,14,211,127,63,205,212,127,63,128,214,127,63,38,216,127,63,191,217,127,63,76,219,127,63,204,220,127,63,65,222,127,63,170,223,127,63,8,225,127,63,91,226,127,63,163,227,127,63,224,228,127,63,19,230,127,63,59,231,127,63,90,232,127,63,110,233,127,63,122,234,127,63,124,235,127,63,116,236,127,63,100,237,127,63,75,238,127,63,42,239,127,63,1,240,127,63,207,240,127,63,149,241,127,63,84,242,127,63,12,243,127,63,188,243,127,63,101,244,127,63,7,245,127,63,162,245,127,63,55,246,127,63,198,246,127,63,78,247,127,63,209,247,127,63,77,248,127,63,196,248,127,63,54,249,127,63,162,249,127,63,9,250,127,63,108,250,127,63,201,250,127,63,34,251,127,63,118,251,127,63,198,251,127,63,18,252,127,63,89,252,127,63,157,252,127,63,221,252,127,63,26,253,127,63,83,253,127,63,136,253,127,63,187,253,127,63,234,253,127,63,22,254,127,63,64,254,127,63,103,254,127,63,139,254,127,63,173,254,127,63,204,254,127,63,234,254,127,63,5,255,127,63,30,255,127,63,53,255,127,63,74,255,127,63,94,255,127,63,112,255,127,63,128,255,127,63,143,255,127,63,157,255,127,63,169,255,127,63,180,255,127,63,191,255,127,63,200,255,127,63,208,255,127,63,215,255,127,63,221,255,127,63,227,255,127,63,232,255,127,63,236,255,127,63,239,255,127,63,243,255,127,63,245,255,127,63,248,255,127,63,249,255,127,63,251,255,127,63,252,255,127,63,253,255,127,63,254,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,204,8,120,52,171,134,11,54,79,202,193,54,190,233,61,55,238,247,156,55,192,123,234,55,43,192,35,56,161,2,90,56,189,2,140,56,76,228,174,56,227,165,213,56,199,35,0,57,168,100,23,57,134,149,48,57,104,182,75,57,64,199,104,57,7,228,131,57,105,92,148,57,191,204,165,57,6,53,184,57,65,149,203,57,105,237,223,57,120,61,245,57,184,194,5,58,166,98,17,58,134,126,29,58,81,22,42,58,9,42,55,58,172,185,68,58,54,197,82,58,165,76,97,58,250,79,112,58,47,207,127,58,34,229,135,58,154,32,144,58,255,153,152,58,80,81,161,58,139,70,170,58,174,121,179,58,186,234,188,58,171,153,198,58,129,134,208,58,58,177,218,58,212,25,229,58,79,192,239,58,167,164,250,58,109,227,2,59,117,147,8,59,105,98,14,59,73,80,20,59,19,93,26,59,199,136,32,59,100,211,38,59,232,60,45,59,83,197,51,59,164,108,58,59,218,50,65,59,243,23,72,59,239,27,79,59,204,62,86,59,138,128,93,59,38,225,100,59,161,96,108,59,249,254,115,59,45,188,123,59,29,204,129,59,145,201,133,59,113,214,137,59,188,242,141,59,113,30,146,59,145,89,150,59,26,164,154,59,12,254,158,59,102,103,163,59,40,224,167,59,80,104,172,59,222,255,176,59,209,166,181,59,40,93,186,59,228,34,191,59,2,248,195,59,131,220,200,59,101,208,205,59,168,211,210,59,74,230,215,59,76,8,221,59,172,57,226,59,105,122,231,59,131,202,236,59,249,41,242,59,202,152,247,59,245,22,253,59,60,82,1,60,170,32,4,60,196,246,6,60,137,212,9,60,249,185,12,60,19,167,15,60,216,155,18,60,69,152,21,60,92,156,24,60,26,168,27,60,129,187,30,60,143,214,33,60,69,249,36,60,160,35,40,60,162,85,43,60,73,143,46,60,149,208,49,60,133,25,53,60,26,106,56,60,81,194,59,60,44,34,63,60,168,137,66,60,199,248,69,60,134,111,73,60,230,237,76,60,231,115,80,60,134,1,84,60,197,150,87,60,162,51,91,60,28,216,94,60,52,132,98,60,232,55,102,60,56,243,105,60,35,182,109,60,170,128,113,60,202,82,117,60,131,44,121,60,214,13,125,60,96,123,128,60,161,115,130,60,174,111,132,60,134,111,134,60,40,115,136,60,149,122,138,60,205,133,140,60,206,148,142,60,152,167,144,60,44,190,146,60,136,216,148,60,173,246,150,60,154,24,153,60,78,62,155,60,202,103,157,60,13,149,159,60,23,198,161,60,231,250,163,60,125,51,166,60,217,111,168,60,249,175,170,60,223,243,172,60,137,59,175,60,247,134,177,60,40,214,179,60,29,41,182,60,213,127,184,60,80,218,186,60,140,56,189,60,138,154,191,60,74,0,194,60,202,105,196,60,11,215,198,60,12,72,201,60,205,188,203,60,77,53,206,60,140,177,208,60,137,49,211,60,69,181,213,60,189,60,216,60,243,199,218,60,230,86,221,60,149,233,223,60,0,128,226,60,39,26,229,60,8,184,231,60,164,89,234,60,250,254,236,60,9,168,239,60,210,84,242,60,83,5,245,60,141,185,247,60,126,113,250,60,39,45,253,60,134,236,255,60,206,87,1,61,52,187,2,61,117,32,4,61,144,135,5,61,133,240,6,61,84,91,8,61,253,199,9,61,128,54,11,61,219,166,12,61,16,25,14,61,29,141,15,61,3,3,17,61,193,122,18,61,87,244,19,61,197,111,21,61,10,237,22,61,39,108,24,61,26,237,25,61,228,111,27,61,132,244,28,61,251,122,30,61,71,3,32,61,105,141,33,61,96,25,35,61,45,167,36,61,206,54,38,61,67,200,39,61,141,91,41,61,171,240,42,61,156,135,44,61,96,32,46,61,248,186,47,61,99,87,49,61,160,245,50,61,175,149,52,61,144,55,54,61,67,219,55,61,199,128,57,61,28,40,59,61,65,209,60,61,56,124,62,61,254,40,64,61,148,215,65,61,250,135,67,61,47,58,69,61,51,238,70,61,5,164,72,61,166,91,74,61,20,21,76,61,80,208,77,61,90,141,79,61,49,76,81,61,212,12,83,61,68,207,84,61,128,147,86,61,135,89,88,61,90,33,90,61,248,234,91,61,97,182,93,61,148,131,95,61,145,82,97,61,88,35,99,61,232,245,100,61,65,202,102,61,100,160,104,61,78,120,106,61,1,82,108,61,123,45,110,61,188,10,112,61,197,233,113,61,148,202,115,61,41,173,117,61,133,145,119,61,166,119,121,61,140,95,123,61,55,73,125,61,166,52,127,61,237,144,128,61,105,136,129,61,198,128,130,61,5,122,131,61,37,116,132,61,39,111,133,61,9,107,134,61,204,103,135,61,112,101,136,61,244,99,137,61,88,99,138,61,157,99,139,61,193,100,140,61,196,102,141,61,167,105,142,61,106,109,143,61,11,114,144,61,139,119,145,61,234,125,146,61,40,133,147,61,67,141,148,61,61,150,149,61,20,160,150,61,201,170,151,61,92,182,152,61,203,194,153,61,24,208,154,61,66,222,155,61,72,237,156,61,42,253,157,61,233,13,159,61,132,31,160,61,250,49,161,61,76,69,162,61,122,89,163,61,130,110,164,61,101,132,165,61,35,155,166,61,188,178,167,61,47,203,168,61,124,228,169,61,162,254,170,61,163,25,172,61,124,53,173,61,47,82,174,61,187,111,175,61,31,142,176,61,92,173,177,61,113,205,178,61,94,238,179,61,35,16,181,61,192,50,182,61,52,86,183,61,127,122,184,61,160,159,185,61,153,197,186,61,104,236,187,61,13,20,189,61,136,60,190,61,217,101,191,61,255,143,192,61,250,186,193,61,202,230,194,61,111,19,196,61,233,64,197,61,55,111,198,61,89,158,199,61,78,206,200,61,23,255,201,61,179,48,203,61,35,99,204,61,101,150,205,61,121,202,206,61,96,255,207,61,25,53,209,61,164,107,210,61,0,163,211,61,45,219,212,61,44,20,214,61,251,77,215,61,154,136,216,61,10,196,217,61,74,0,219,61,89,61,220,61,56,123,221,61,230,185,222,61,99,249,223,61,174,57,225,61,200,122,226,61,176,188,227,61,102,255,228,61,233,66,230,61,58,135,231,61,88,204,232,61,66,18,234,61,249,88,235,61,124,160,236,61,203,232,237,61,230,49,239,61,204,123,240,61,125,198,241,61,249,17,243,61,63,94,244,61,79,171,245,61,42,249,246,61,206,71,248,61,60,151,249,61,114,231,250,61,114,56,252,61,58,138,253,61,202,220,254,61,17,24,0,62,33,194,0,62,149,108,1,62,108,23,2,62,166,194,2,62,68,110,3,62,69,26,4,62,168,198,4,62,111,115,5,62,152,32,6,62,35,206,6,62,17,124,7,62,98,42,8,62,20,217,8,62,40,136,9,62,157,55,10,62,117,231,10,62,173,151,11,62,71,72,12,62,66,249,12,62,158,170,13,62,91,92,14,62,120,14,15,62,246,192,15,62,213,115,16,62,19,39,17,62,177,218,17,62,175,142,18,62,13,67,19,62,202,247,19,62,231,172,20,62,99,98,21,62,62,24,22,62,120,206,22,62,16,133,23,62,7,60,24,62,92,243,24,62,16,171,25,62,33,99,26,62,145,27,27,62,94,212,27,62,137,141,28,62,17,71,29,62,246,0,30,62,56,187,30,62,215,117,31,62,211,48,32,62,43,236,32,62,224,167,33,62,241,99,34,62,93,32,35,62,38,221,35,62,74,154,36,62,202,87,37,62,165,21,38,62,219,211,38,62,108,146,39,62,88,81,40,62,159,16,41,62,64,208,41,62,59,144,42,62,144,80,43,62,63,17,44,62,72,210,44,62,170,147,45,62,102,85,46,62,122,23,47,62,232,217,47,62,175,156,48,62,206,95,49,62,69,35,50,62,21,231,50,62,61,171,51,62,189,111,52,62,148,52,53,62,195,249,53,62,73,191,54,62,38,133,55,62,91,75,56,62,230,17,57,62,199,216,57,62,255,159,58,62,141,103,59,62,113,47,60,62,171,247,60,62,59,192,61,62,31,137,62,62,89,82,63,62,232,27,64,62,204,229,64,62,5,176,65,62,146,122,66,62,115,69,67,62,168,16,68,62,49,220,68,62,14,168,69,62,62,116,70,62,194,64,71,62,152,13,72,62,193,218,72,62,61,168,73,62,12,118,74,62,44,68,75,62,159,18,76,62,100,225,76,62,122,176,77,62,225,127,78,62,154,79,79,62,164,31,80,62,255,239,80,62,170,192,81,62,166,145,82,62,242,98,83,62,141,52,84,62,121,6,85,62,180,216,85,62,63,171,86,62,25,126,87,62,65,81,88,62,185,36,89,62,126,248,89,62,147,204,90,62,245,160,91,62,165,117,92,62,163,74,93,62,238,31,94,62,135,245,94,62,109,203,95,62,159,161,96,62,30,120,97,62,233,78,98,62,1,38,99,62,100,253,99,62,19,213,100,62,14,173,101,62,84,133,102,62,229,93,103,62,193,54,104,62,231,15,105,62,88,233,105,62,19,195,106,62,24,157,107,62,103,119,108,62,255,81,109,62,224,44,110,62,11,8,111,62,126,227,111,62,58,191,112,62,62,155,113,62,139,119,114,62,31,84,115,62,251,48,116,62,31,14,117,62,138,235,117,62,59,201,118,62,52,167,119,62,115,133,120,62,248,99,121,62,196,66,122,62,213,33,123,62,44,1,124,62,200,224,124,62,170,192,125,62,208,160,126,62,59,129,127,62,245,48,128,62,111,161,128,62,11,18,129,62,201,130,129,62,168,243,129,62,169,100,130,62,204,213,130,62,15,71,131,62,117,184,131,62,251,41,132,62,162,155,132,62,107,13,133,62,84,127,133,62,93,241,133,62,136,99,134,62,210,213,134,62,61,72,135,62,200,186,135,62,116,45,136,62,63,160,136,62,42,19,137,62,52,134,137,62,94,249,137,62,168,108,138,62,17,224,138,62,153,83,139,62,64,199,139,62,6,59,140,62,235,174,140,62,239,34,141,62,17,151,141,62,82,11,142,62,177,127,142,62,46,244,142,62,201,104,143,62,130,221,143,62,89,82,144,62,78,199,144,62,96,60,145,62,143,177,145,62,220,38,146,62,70,156,146,62,205,17,147,62,113,135,147,62,50,253,147,62,16,115,148,62,9,233,148,62,32,95,149,62,82,213,149,62,161,75,150,62,12,194,150,62,146,56,151,62,53,175,151,62,243,37,152,62,204,156,152,62,193,19,153,62,209,138,153,62,252,1,154,62,66,121,154,62,163,240,154,62,31,104,155,62,181,223,155,62,101,87,156,62,48,207,156,62,21,71,157,62,20,191,157,62,45,55,158,62,96,175,158,62,172,39,159,62,18,160,159,62,145,24,160,62,41,145,160,62,218,9,161,62,165,130,161,62,136,251,161,62,132,116,162,62,152,237,162,62,197,102,163,62,10,224,163,62,103,89,164,62,220,210,164,62,105,76,165,62,14,198,165,62,202,63,166,62,158,185,166,62,137,51,167,62,139,173,167,62,164,39,168,62,213,161,168,62,27,28,169,62],"i8",L3,F.GLOBAL_BASE+520696),d3([121,150,169,62,237,16,170,62,119,139,170,62,24,6,171,62,206,128,171,62,155,251,171,62,125,118,172,62,117,241,172,62,130,108,173,62,165,231,173,62,221,98,174,62,42,222,174,62,140,89,175,62,2,213,175,62,142,80,176,62,46,204,176,62,226,71,177,62,170,195,177,62,135,63,178,62,119,187,178,62,124,55,179,62,148,179,179,62,191,47,180,62,254,171,180,62,80,40,181,62,181,164,181,62,45,33,182,62,184,157,182,62,85,26,183,62,5,151,183,62,199,19,184,62,156,144,184,62,130,13,185,62,123,138,185,62,133,7,186,62,161,132,186,62,206,1,187,62,13,127,187,62,93,252,187,62,190,121,188,62,48,247,188,62,178,116,189,62,70,242,189,62,233,111,190,62,157,237,190,62,98,107,191,62,54,233,191,62,26,103,192,62,14,229,192,62,17,99,193,62,36,225,193,62,70,95,194,62,119,221,194,62,184,91,195,62,7,218,195,62,100,88,196,62,209,214,196,62,75,85,197,62,212,211,197,62,107,82,198,62,16,209,198,62,195,79,199,62,132,206,199,62,82,77,200,62,45,204,200,62,21,75,201,62,11,202,201,62,13,73,202,62,29,200,202,62,56,71,203,62,97,198,203,62,149,69,204,62,214,196,204,62,34,68,205,62,123,195,205,62,223,66,206,62,79,194,206,62,202,65,207,62,81,193,207,62,226,64,208,62,127,192,208,62,38,64,209,62,216,191,209,62,148,63,210,62,91,191,210,62,44,63,211,62,7,191,211,62,235,62,212,62,218,190,212,62,210,62,213,62,211,190,213,62,222,62,214,62,242,190,214,62,15,63,215,62,53,191,215,62,99,63,216,62,154,191,216,62,217,63,217,62,32,192,217,62,112,64,218,62,199,192,218,62,38,65,219,62,140,193,219,62,250,65,220,62,112,194,220,62,236,66,221,62,112,195,221,62,250,67,222,62,139,196,222,62,34,69,223,62,192,197,223,62,100,70,224,62,14,199,224,62,189,71,225,62,115,200,225,62,46,73,226,62,239,201,226,62,181,74,227,62,127,203,227,62,79,76,228,62,36,205,228,62,253,77,229,62,219,206,229,62,190,79,230,62,164,208,230,62,142,81,231,62,125,210,231,62,111,83,232,62,100,212,232,62,93,85,233,62,89,214,233,62,89,87,234,62,91,216,234,62,96,89,235,62,104,218,235,62,114,91,236,62,126,220,236,62,141,93,237,62,158,222,237,62,176,95,238,62,196,224,238,62,218,97,239,62,241,226,239,62,10,100,240,62,35,229,240,62,62,102,241,62,89,231,241,62,116,104,242,62,145,233,242,62,173,106,243,62,202,235,243,62,230,108,244,62,3,238,244,62,31,111,245,62,59,240,245,62,86,113,246,62,112,242,246,62,137,115,247,62,161,244,247,62,184,117,248,62,206,246,248,62,226,119,249,62,244,248,249,62,4,122,250,62,18,251,250,62,30,124,251,62,40,253,251,62,47,126,252,62,52,255,252,62,54,128,253,62,52,1,254,62,48,130,254,62,40,3,255,62,29,132,255,62,135,2,0,63,254,66,0,63,115,131,0,63,230,195,0,63,86,4,1,63,197,68,1,63,49,133,1,63,155,197,1,63,3,6,2,63,103,70,2,63,202,134,2,63,42,199,2,63,135,7,3,63,225,71,3,63,56,136,3,63,141,200,3,63,222,8,4,63,44,73,4,63,119,137,4,63,191,201,4,63,3,10,5,63,68,74,5,63,130,138,5,63,188,202,5,63,242,10,6,63,36,75,6,63,83,139,6,63,126,203,6,63,165,11,7,63,199,75,7,63,230,139,7,63,1,204,7,63,23,12,8,63,41,76,8,63,54,140,8,63,63,204,8,63,67,12,9,63,67,76,9,63,62,140,9,63,52,204,9,63,37,12,10,63,18,76,10,63,249,139,10,63,219,203,10,63,184,11,11,63,144,75,11,63,98,139,11,63,47,203,11,63,246,10,12,63,184,74,12,63,116,138,12,63,43,202,12,63,219,9,13,63,134,73,13,63,43,137,13,63,202,200,13,63,98,8,14,63,245,71,14,63,129,135,14,63,7,199,14,63,135,6,15,63,0,70,15,63,114,133,15,63,222,196,15,63,67,4,16,63,161,67,16,63,249,130,16,63,73,194,16,63,147,1,17,63,213,64,17,63,17,128,17,63,69,191,17,63,114,254,17,63,151,61,18,63,181,124,18,63,203,187,18,63,218,250,18,63,225,57,19,63,225,120,19,63,216,183,19,63,200,246,19,63,176,53,20,63,143,116,20,63,103,179,20,63,54,242,20,63,253,48,21,63,188,111,21,63,114,174,21,63,32,237,21,63,197,43,22,63,98,106,22,63,246,168,22,63,129,231,22,63,3,38,23,63,125,100,23,63,237,162,23,63,84,225,23,63,178,31,24,63,7,94,24,63,83,156,24,63,149,218,24,63,206,24,25,63,253,86,25,63,35,149,25,63,63,211,25,63,82,17,26,63,90,79,26,63,89,141,26,63,78,203,26,63,57,9,27,63,25,71,27,63,240,132,27,63,188,194,27,63,126,0,28,63,54,62,28,63,227,123,28,63,134,185,28,63,30,247,28,63,172,52,29,63,47,114,29,63,167,175,29,63,20,237,29,63,118,42,30,63,206,103,30,63,26,165,30,63,91,226,30,63,145,31,31,63,188,92,31,63,219,153,31,63,239,214,31,63,247,19,32,63,244,80,32,63,230,141,32,63,203,202,32,63,165,7,33,63,115,68,33,63,53,129,33,63,235,189,33,63,150,250,33,63,52,55,34,63,198,115,34,63,75,176,34,63,197,236,34,63,50,41,35,63,146,101,35,63,230,161,35,63,46,222,35,63,105,26,36,63,151,86,36,63,185,146,36,63,205,206,36,63,213,10,37,63,208,70,37,63,190,130,37,63,158,190,37,63,114,250,37,63,56,54,38,63,241,113,38,63,157,173,38,63,59,233,38,63,204,36,39,63,79,96,39,63,197,155,39,63,45,215,39,63,135,18,40,63,211,77,40,63,18,137,40,63,66,196,40,63,101,255,40,63,121,58,41,63,128,117,41,63,120,176,41,63,98,235,41,63,62,38,42,63,11,97,42,63,202,155,42,63,122,214,42,63,28,17,43,63,175,75,43,63,52,134,43,63,170,192,43,63,16,251,43,63,105,53,44,63,178,111,44,63,236,169,44,63,23,228,44,63,51,30,45,63,64,88,45,63,61,146,45,63,43,204,45,63,10,6,46,63,218,63,46,63,154,121,46,63,74,179,46,63,235,236,46,63,124,38,47,63,254,95,47,63,112,153,47,63,210,210,47,63,36,12,48,63,102,69,48,63,152,126,48,63,186,183,48,63,204,240,48,63,205,41,49,63,191,98,49,63,160,155,49,63,113,212,49,63,49,13,50,63,225,69,50,63,128,126,50,63,15,183,50,63,141,239,50,63,251,39,51,63,87,96,51,63,163,152,51,63,222,208,51,63,8,9,52,63,34,65,52,63,42,121,52,63,33,177,52,63,7,233,52,63,219,32,53,63,159,88,53,63,81,144,53,63,242,199,53,63,129,255,53,63,255,54,54,63,108,110,54,63,198,165,54,63,16,221,54,63,71,20,55,63,109,75,55,63,129,130,55,63,131,185,55,63,116,240,55,63,82,39,56,63,30,94,56,63,217,148,56,63,129,203,56,63,23,2,57,63,155,56,57,63,13,111,57,63,108,165,57,63,185,219,57,63,244,17,58,63,28,72,58,63,50,126,58,63,53,180,58,63,38,234,58,63,4,32,59,63,207,85,59,63,135,139,59,63,45,193,59,63,192,246,59,63,64,44,60,63,173,97,60,63,7,151,60,63,78,204,60,63,130,1,61,63,163,54,61,63,177,107,61,63,171,160,61,63,146,213,61,63,102,10,62,63,39,63,62,63,212,115,62,63,110,168,62,63,244,220,62,63,103,17,63,63,198,69,63,63,17,122,63,63,73,174,63,63,109,226,63,63,126,22,64,63,122,74,64,63,99,126,64,63,56,178,64,63,248,229,64,63,165,25,65,63,62,77,65,63,195,128,65,63,52,180,65,63,144,231,65,63,216,26,66,63,13,78,66,63,44,129,66,63,56,180,66,63,47,231,66,63,18,26,67,63,224,76,67,63,154,127,67,63,64,178,67,63,208,228,67,63,77,23,68,63,180,73,68,63,7,124,68,63,69,174,68,63,111,224,68,63,131,18,69,63,131,68,69,63,110,118,69,63,68,168,69,63,5,218,69,63,177,11,70,63,72,61,70,63,202,110,70,63,55,160,70,63,143,209,70,63,210,2,71,63,255,51,71,63,23,101,71,63,26,150,71,63,8,199,71,63,224,247,71,63,163,40,72,63,81,89,72,63,233,137,72,63,107,186,72,63,216,234,72,63,48,27,73,63,114,75,73,63,158,123,73,63,181,171,73,63,181,219,73,63,161,11,74,63,118,59,74,63,54,107,74,63,224,154,74,63,116,202,74,63,242,249,74,63,90,41,75,63,173,88,75,63,233,135,75,63,15,183,75,63,32,230,75,63,26,21,76,63,254,67,76,63,204,114,76,63,132,161,76,63,38,208,76,63,177,254,76,63,38,45,77,63,133,91,77,63,206,137,77,63,0,184,77,63,28,230,77,63,34,20,78,63,17,66,78,63,234,111,78,63,172,157,78,63,88,203,78,63,238,248,78,63,108,38,79,63,213,83,79,63,38,129,79,63,97,174,79,63,134,219,79,63,147,8,80,63,138,53,80,63,107,98,80,63,52,143,80,63,231,187,80,63,131,232,80,63,8,21,81,63,119,65,81,63,206,109,81,63,15,154,81,63,57,198,81,63,76,242,81,63,71,30,82,63,44,74,82,63,250,117,82,63,177,161,82,63,81,205,82,63,218,248,82,63,76,36,83,63,166,79,83,63,234,122,83,63,22,166,83,63,44,209,83,63,42,252,83,63,17,39,84,63,224,81,84,63,153,124,84,63,58,167,84,63,196,209,84,63,54,252,84,63,146,38,85,63,214,80,85,63,2,123,85,63,24,165,85,63,22,207,85,63,252,248,85,63,204,34,86,63,131,76,86,63,36,118,86,63,172,159,86,63,30,201,86,63,120,242,86,63,186,27,87,63,229,68,87,63,248,109,87,63,244,150,87,63,216,191,87,63,165,232,87,63,90,17,88,63,248,57,88,63,126,98,88,63,236,138,88,63,67,179,88,63,130,219,88,63,169,3,89,63,185,43,89,63,177,83,89,63,145,123,89,63,90,163,89,63,11,203,89,63,164,242,89,63,37,26,90,63,143,65,90,63,225,104,90,63,27,144,90,63,62,183,90,63,72,222,90,63,59,5,91,63,22,44,91,63,217,82,91,63,133,121,91,63,24,160,91,63,148,198,91,63,248,236,91,63,68,19,92,63,120,57,92,63,149,95,92,63,153,133,92,63,134,171,92,63,91,209,92,63,24,247,92,63,189,28,93,63,74,66,93,63,191,103,93,63,28,141,93,63,98,178,93,63,143,215,93,63,165,252,93,63,162,33,94,63,136,70,94,63,86,107,94,63,11,144,94,63,169,180,94,63,47,217,94,63,157,253,94,63,243,33,95,63,49,70,95,63,88,106,95,63,102,142,95,63,92,178,95,63,59,214,95,63,1,250,95,63,175,29,96,63,70,65,96,63,196,100,96,63,43,136,96,63,122,171,96,63,176,206,96,63,207,241,96,63,214,20,97,63,197,55,97,63,155,90,97,63,90,125,97,63,1,160,97,63,144,194,97,63,8,229,97,63,103,7,98,63,174,41,98,63,221,75,98,63,245,109,98,63,244,143,98,63,220,177,98,63,171,211,98,63,99,245,98,63,3,23,99,63,139,56,99,63,251,89,99,63,83,123,99,63,147,156,99,63,188,189,99,63,204,222,99,63,197,255,99,63,166,32,100,63,110,65,100,63,32,98,100,63,185,130,100,63,58,163,100,63,164,195,100,63,245,227,100,63,47,4,101,63,82,36,101,63,92,68,101,63,78,100,101,63,41,132,101,63,236,163,101,63,151,195,101,63,43,227,101,63,167,2,102,63,11,34,102,63,87,65,102,63,139,96,102,63,168,127,102,63,174,158,102,63,155,189,102,63,113,220,102,63,47,251,102,63,214,25,103,63,101,56,103,63,220,86,103,63,59,117,103,63,132,147,103,63,180,177,103,63,205,207,103,63,206,237,103,63,184,11,104,63,138,41,104,63,69,71,104,63,233,100,104,63,116,130,104,63,233,159,104,63,69,189,104,63,139,218,104,63,185,247,104,63,207,20,105,63,207,49,105,63,182,78,105,63,135,107,105,63,64,136,105,63,225,164,105,63,108,193,105,63,223,221,105,63,59,250,105,63,127,22,106,63,172,50,106,63,195,78,106,63,193,106,106,63,169,134,106,63,121,162,106,63,51,190,106,63,213,217,106,63,96,245,106,63,212,16,107,63,48,44,107,63,118,71,107,63,165,98,107,63,188,125,107,63,189,152,107,63,167,179,107,63,121,206,107,63,53,233,107,63,218,3,108,63,104,30,108,63,223,56,108,63,63,83,108,63,136,109,108,63,187,135,108,63,214,161,108,63,219,187,108,63,201,213,108,63,161,239,108,63,97,9,109,63,11,35,109,63,159,60,109,63,27,86,109,63,129,111,109,63,209,136,109,63,9,162,109,63,44,187,109,63,56,212,109,63,45,237,109,63,12,6,110,63,212,30,110,63,134,55,110,63,33,80,110,63,166,104,110,63,21,129,110,63,110,153,110,63,176,177,110,63,220,201,110,63,241,225,110,63,241,249,110,63,218,17,111,63,173,41,111,63,106,65,111,63,16,89,111,63,161,112,111,63,28,136,111,63,128,159,111,63,207,182,111,63,7,206,111,63,42,229,111,63,54,252,111,63,45,19,112,63,14,42,112,63,217,64,112,63,142,87,112,63,46,110,112,63,184,132,112,63,43,155,112,63,138,177,112,63,210,199,112,63,5,222,112,63,35,244,112,63,42,10,113,63,29,32,113,63,249,53,113,63,193,75,113,63,114,97,113,63,15,119,113,63,150,140,113,63,7,162,113,63,99,183,113,63,170,204,113,63,220,225,113,63,249,246,113,63,0,12,114,63,242,32,114,63,207,53,114,63,151,74,114,63,73,95,114,63,231,115,114,63,112,136,114,63,227,156,114,63,66,177,114,63,140,197,114,63,193,217,114,63,225,237,114,63,236,1,115,63,227,21,115,63,197,41,115,63,146,61,115,63,74,81,115,63,238,100,115,63,125,120,115,63,248,139,115,63,94,159,115,63,175,178,115,63,236,197,115,63,21,217,115,63,41,236,115,63,41,255,115,63,21,18,116,63,236,36,116,63,175,55,116,63,94,74,116,63,248,92,116,63,127,111,116,63,241,129,116,63,80,148,116,63,154,166,116,63,208,184,116,63,242,202,116,63,1,221,116,63,251,238,116,63,226,0,117,63,181,18,117,63,116,36,117,63,31,54,117,63,183,71,117,63,59,89,117,63,171,106,117,63,8,124,117,63,81,141,117,63,135,158,117,63,169,175,117,63,184,192,117,63,179,209,117,63,155,226,117,63,112,243,117,63,50,4,118,63,224,20,118,63,123,37,118,63,3,54,118,63,120,70,118,63,217,86,118,63,40,103,118,63,100,119,118,63,140,135,118,63,162,151,118,63,165,167,118,63,149,183,118,63,114,199,118,63,61,215,118,63,245,230,118,63,154,246,118,63,44,6,119,63,172,21,119,63,26,37,119,63,117,52,119,63,189,67,119,63,243,82,119,63,22,98,119,63,40,113,119,63,39,128,119,63,19,143,119,63,238,157,119,63,182,172,119,63,108,187,119,63,16,202,119,63,162,216,119,63,34,231,119,63,144,245,119,63,236,3,120,63,55,18,120,63,111,32,120,63,150,46,120,63,170,60,120,63,174,74,120,63,159,88,120,63,127,102,120,63,77,116,120,63,10,130,120,63,181,143,120,63,79,157,120,63,215,170,120,63,78,184,120,63,180,197,120,63,8,211,120,63,76,224,120,63,126,237,120,63,158,250,120,63,174,7,121,63,173,20,121,63,155,33,121,63,119,46,121,63,67,59,121,63,254,71,121,63,168,84,121,63,66,97,121,63,202,109,121,63,66,122,121,63,169,134,121,63,0,147,121,63,70,159,121,63,124,171,121,63,161,183,121,63,181,195,121,63,186,207,121,63,173,219,121,63,145,231,121,63,100,243,121,63,40,255,121,63,219,10,122,63,126,22,122,63,16,34,122,63,147,45,122,63,6,57,122,63,105,68,122,63,188,79,122,63,255,90,122,63,51,102,122,63,86,113,122,63,106,124,122,63,111,135,122,63,99,146,122,63,72,157,122,63,30,168,122,63,228,178,122,63,155,189,122,63,66,200,122,63,218,210,122,63,99,221,122,63,221,231,122,63,71,242,122,63,162,252,122,63,238,6,123,63,43,17,123,63,89,27,123,63,120,37,123,63,137,47,123,63,138,57,123,63,124,67,123,63,96,77,123,63,53,87,123,63,252,96,123,63,179,106,123,63,92,116,123,63,247,125,123,63,131,135,123,63,1,145,123,63,112,154,123,63,209,163,123,63,36,173,123,63,104,182,123,63,158,191,123,63,198,200,123,63,224,209,123,63,236,218,123,63,234,227,123,63,218,236,123,63,188,245,123,63,144,254,123,63,86,7,124,63,14,16,124,63,185,24,124,63,86,33,124,63,230,41,124,63,104,50,124,63,220,58,124,63,67,67,124,63,156,75,124,63,232,83,124,63,39,92,124,63,88,100,124,63,124,108,124,63,147,116,124,63,157,124,124,63,153,132,124,63,137,140,124,63,107,148,124,63,65,156,124,63,9,164,124,63,197,171,124,63,116,179,124,63,22,187,124,63,172,194,124,63,52,202,124,63,176,209,124,63,32,217,124,63,131,224,124,63,217,231,124,63,35,239,124,63,97,246,124,63,146,253,124,63,183,4,125,63,208,11,125,63,221,18,125,63,221,25,125,63,209,32,125,63,185,39,125,63,150,46,125,63,102,53,125,63,42,60,125,63,227,66,125,63,143,73,125,63,48,80,125,63,197,86,125,63,78,93,125,63,204,99,125,63,62,106,125,63,165,112,125,63,0,119,125,63,80,125,125,63,148,131,125,63,205,137,125,63,251,143,125,63,29,150,125,63,52,156,125,63,64,162,125,63,65,168,125,63,55,174,125,63,34,180,125,63,2,186,125,63,215,191,125,63,161,197,125,63,96,203,125,63,21,209,125,63,190,214,125,63,93,220,125,63,242,225,125,63,124,231,125,63,251,236,125,63,112,242,125,63,218,247,125,63,58,253,125,63,143,2,126,63,219,7,126,63,28,13,126,63,82,18,126,63,127,23,126,63,161,28,126,63,186,33,126,63,200,38,126,63,204,43,126,63,199,48,126,63,183,53,126,63,158,58,126,63,123,63,126,63,78,68,126,63,23,73,126,63,215,77,126,63,141,82,126,63,58,87,126,63,221,91,126,63,118,96,126,63,6,101,126,63,141,105,126,63,10,110,126,63,126,114,126,63,233,118,126,63,75,123,126,63,164,127,126,63,243,131,126,63,57,136,126,63,119,140,126,63,171,144,126,63,214,148,126,63,249,152,126,63,18,157,126,63,35,161,126,63,44,165,126,63,43,169,126,63,34,173,126,63,16,177,126,63,246,180,126,63,211,184,126,63,167,188,126,63,115,192,126,63,55,196,126,63,243,199,126,63,166,203,126,63,81,207,126,63,243,210,126,63,142,214,126,63,32,218,126,63,171,221,126,63,45,225,126,63,167,228,126,63,26,232,126,63,132,235,126,63,231,238,126,63,66,242,126,63,149,245,126,63,224,248,126,63,36,252,126,63,96,255,126,63,148,2,127,63,193,5,127,63,230,8,127,63,4,12,127,63,27,15,127,63,42,18,127,63,50,21,127,63,50,24,127,63,43,27,127,63,29,30,127,63,8,33,127,63,236,35,127,63,201,38,127,63,158,41,127,63,109,44,127,63,53,47,127,63,246,49,127,63,175,52,127,63,99,55,127,63,15,58,127,63,181,60,127,63,83,63,127,63,236,65,127,63,125,68,127,63,8,71,127,63,141,73,127,63,11,76,127,63,131,78,127,63,244,80,127,63,95,83,127,63,195,85,127,63,33,88,127,63,121,90,127,63,203,92,127,63,23,95,127,63,92,97,127,63,155,99,127,63,213,101,127,63,8,104,127,63,54,106,127,63,93,108,127,63,127,110,127,63,155,112,127,63,177,114,127,63,193,116,127,63,203,118,127,63,208,120,127,63,207,122,127,63,201,124,127,63,189,126,127,63,171,128,127,63,148,130,127,63,120,132,127,63,86,134,127,63,47,136,127,63,2,138,127,63,209,139,127,63,153,141,127,63,93,143,127,63,28,145,127,63,213,146,127,63,137,148,127,63,57,150,127,63,227,151,127,63,136,153,127,63,40,155,127,63,196,156,127,63,90,158,127,63,236,159,127,63,121,161,127,63,1,163,127,63,132,164,127,63,3,166,127,63,125,167,127,63,242,168,127,63,99,170,127,63,207,171,127,63,55,173,127,63,154,174,127,63,249,175,127,63,84,177,127,63,170,178,127,63,251,179,127,63,73,181,127,63,146,182,127,63,215,183,127,63,24,185,127,63,85,186,127,63,141,187,127,63,193,188,127,63,242,189,127,63,30,191,127,63,71,192,127,63,107,193,127,63,140,194,127,63,168,195,127,63,193,196,127,63,214,197,127,63,231,198,127,63,245,199,127,63,255,200,127,63,5,202,127,63,7,203,127,63,6,204,127,63,1,205,127,63,249,205,127,63,237,206,127,63,222,207,127,63,203,208,127,63,181,209,127,63,156,210,127,63,127,211,127,63,95,212,127,63,59,213,127,63,20,214,127,63,234,214,127,63,189,215,127,63,141,216,127,63,90,217,127,63,35,218,127,63,233,218,127,63,173,219,127,63,109,220,127,63,43,221,127,63,229,221,127,63,156,222,127,63,81,223,127,63,3,224,127,63,178,224,127,63,94,225,127,63,7,226,127,63,174,226,127,63,82,227,127,63,243,227,127,63,146,228,127,63,46,229,127,63,199,229,127,63,94,230,127,63,242,230,127,63,132,231,127,63,19,232,127,63,160,232,127,63,42,233,127,63,178,233,127,63,56,234,127,63,187,234,127,63,60,235,127,63,187,235,127,63,55,236,127,63,177,236,127,63,41,237,127,63,159,237,127,63,18,238,127,63,132,238,127,63,243,238,127,63,96,239,127,63,204,239,127,63,53,240,127,63,156,240,127,63,1,241,127,63,101,241,127,63,198,241,127,63,37,242,127,63,131,242,127,63,222,242,127,63,56,243,127,63,144,243,127,63,231,243,127,63,59,244,127,63,142,244,127,63,223,244,127,63,46,245,127,63,124,245,127,63,200,245,127,63,19,246,127,63,91,246,127,63,163,246,127,63,233,246,127,63,45,247,127,63,111,247,127,63,177,247,127,63,240,247,127,63,47,248,127,63,108,248,127,63,167,248,127,63,225,248,127,63,26,249,127,63,82,249,127,63,136,249,127,63,188,249,127,63,240,249,127,63,34,250,127,63,83,250,127,63,131,250,127,63,178,250,127,63,224,250,127,63,12,251,127,63,55,251,127,63,97,251,127,63,138,251,127,63,178,251,127,63,217,251,127,63,255,251,127,63,36,252,127,63,72,252,127,63,107,252,127,63,141,252,127,63,173,252,127,63,205,252,127,63,237,252,127,63,11,253,127,63,40,253,127,63,69,253,127,63,96,253,127,63,123,253,127,63,149,253,127,63,174,253,127,63,199,253,127,63,222,253,127,63,245,253,127,63,12,254,127,63,33,254,127,63,54,254,127,63,74,254,127,63,93,254,127,63,112,254,127,63,130,254,127,63,148,254,127,63,165,254,127,63,181,254,127,63,197,254,127,63,212,254,127,63,227,254,127,63,241,254,127,63,254,254,127,63,11,255,127,63,24,255,127,63,36,255,127,63,47,255,127,63,59,255,127,63,69,255,127,63,79,255,127,63,89,255,127,63,99,255,127,63,108,255,127,63,116,255,127,63,124,255,127,63,132,255,127,63,140,255,127,63,147,255,127,63,154,255,127,63,160,255,127,63,166,255,127,63,172,255,127,63,178,255,127,63,183,255,127,63,188,255,127,63,193,255,127,63,197,255,127,63,202,255,127,63,206,255,127,63,209,255,127,63,213,255,127,63,216,255,127,63,220,255,127,63,223,255,127,63,225,255,127,63,228,255,127,63,230,255,127,63,233,255,127,63,235,255,127,63,237,255,127,63,239,255,127,63,240,255,127,63,242,255,127,63,243,255,127,63,245,255,127,63,246,255,127,63,247,255,127,63,248,255,127,63,249,255,127,63,250,255,127,63,251,255,127,63,251,255,127,63,252,255,127,63,252,255,127,63,253,255,127,63,253,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,198,63,120,51,98,136,11,53,151,200,193,53,80,233,61,54,183,247,156,54,46,124,234,54,153,192,35,55,244,2,90,55,56,3,140,55,227,228,174,55,177,166,213,55,108,36,0,56,146,101,23,56,201,150,48,56,18,184,75,56,81,201,104,56,94,229,131,56,29,94,148,56,229,206,165,56,167,55,184,56,128,152,203,56,85,241,223,56,36,66,245,56,126,197,5,57,238,101,17,57,99,130,29,57,207,26,42,57,63,47,55,57,179,191,68,57,30,204,82,57,141,84,97,57,243,88,112,57,94,217,127,57,227,234,135,57,18,39,144,57,64,161,152,57,105,89,161,57,146,79,170,57,181,131,179,57,215,245,188,57,245,165,198,57,14,148,208,57,34,192,218,57,46,42,229,57,57,210,239,57,60,184,250,57,27,238,2,58,22,159,8,58,13,111,14,58,0,94,20,58,239,107,26,58,218,152,32,58,192,228,38,58,161,79,45,58,124,217,51,58,83,130,58,58,37,74,65,58,240,48,72,58,182,54,79,58,116,91,86,58,45,159,93,58,222,1,101,58,136,131,108,58,42,36,116,58,196,227,123,58,44,225,129,58,241,223,133,58,49,238,137,58,238,11,142,58,37,57,146,58,215,117,150,58,5,194,154,58,174,29,159,58,209,136,163,58,110,3,168,58,134,141,172,58,24,39,177,58,36,208,181,58,169,136,186,58,169,80,191,58,33,40,196,58,19,15,201,58,126,5,206,58,98,11,211,58,191,32,216,58,148,69,221,58,225,121,226,58,166,189,231,58,227,16,237,58,152,115,242,58,196,229,247,58,103,103,253,58,65,124,1,59,137,76,4,59,141,36,7,59,76,4,10,59,198,235,12,59,251,218,15,59,235,209,18,59,149,208,21,59,251,214,24,59,26,229,27,59,244,250,30,59,136,24,34,59,215,61,37,59,223,106,40,59,161,159,43,59,29,220,46,59,83,32,50,59,66,108,53,59,234,191,56,59,76,27,60,59,103,126,63,59,59,233,66,59,199,91,70,59,12,214,73,59,10,88,77,59,193,225,80,59,48,115,84,59,86,12,88,59,53,173,91,59,204,85,95,59,26,6,99,59,32,190,102,59,222,125,106,59,82,69,110,59,127,20,114,59,97,235,117,59,251,201,121,59,76,176,125,59,41,207,128,59,8,202,130,59,194,200,132,59,87,203,134,59,198,209,136,59,17,220,138,59,55,234,140,59,55,252,142,59,18,18,145,59,199,43,147,59,87,73,149,59,194,106,151,59,6,144,153,59,37,185,155,59,30,230,157,59,241,22,160,59,158,75,162,59,37,132,164,59,134,192,166,59,192,0,169,59,212,68,171,59,193,140,173,59,137,216,175,59,41,40,178,59,163,123,180,59,245,210,182,59,33,46,185,59,38,141,187,59,4,240,189,59,186,86,192,59,73,193,194,59,177,47,197,59,242,161,199,59,10,24,202,59,251,145,204,59,196,15,207,59,102,145,209,59,223,22,212,59,49,160,214,59,90,45,217,59,91,190,219,59,51,83,222,59,227,235,224,59,107,136,227,59,201,40,230,59,255,204,232,59,12,117,235,59,240,32,238,59,171,208,240,59,61,132,243,59,165,59,246,59,228,246,248,59,250,181,251,59,229,120,254,59,212,159,0,60,32,5,2,60,87,108,3,60,121,213,4,60,134,64,6,60,126,173,7,60,96,28,9,60,45,141,10,60,229,255,11,60,136,116,13,60,21,235,14,60,141,99,16,60,239,221,17,60,59,90,19,60,114,216,20,60,147,88,22,60,158,218,23,60,147,94,25,60,115,228,26,60,60,108,28,60,240,245,29,60,141,129,31,60,20,15,33,60,133,158,34,60,224,47,36,60,36,195,37,60,82,88,39,60,105,239,40,60,106,136,42,60,84,35,44,60,40,192,45,60,229,94,47,60,139,255,48,60,26,162,50,60,146,70,52,60,243,236,53,60,61,149,55,60,112,63,57,60,140,235,58,60,145,153,60,60,126,73,62,60,84,251,63,60,18,175,65,60,185,100,67,60,72,28,69,60,192,213,70,60,31,145,72,60,103,78,74,60,151,13,76,60,175,206,77,60,176,145,79,60,152,86,81,60,103,29,83,60,31,230,84,60,190,176,86,60,69,125,88,60,179,75,90,60,9,28,92,60,71,238,93,60,107,194,95,60,119,152,97,60,106,112,99,60,68,74,101,60,5,38,103,60,173,3,105,60,60,227,106,60,178,196,108,60,14,168,110,60,81,141,112,60,123,116,114,60,139,93,116,60,130,72,118,60,95,53,120,60,34,36,122,60,203,20,124,60,90,7,126,60,208,251,127,60,22,249,128,60,54,245,129,60,74,242,130,60,80,240,131,60,73,239,132,60,53,239,133,60,19,240,134,60,229,241,135,60,169,244,136,60,95,248,137,60,8,253,138,60,164,2,140,60,50,9,141,60,178,16,142,60,37,25,143,60,139,34,144,60,226,44,145,60,44,56,146,60,104,68,147,60,150,81,148,60,182,95,149,60,201,110,150,60,205,126,151,60,196,143,152,60,172,161,153,60,135,180,154,60,83,200,155,60,17,221,156,60,193,242,157,60,98,9,159,60,245,32,160,60,122,57,161,60,241,82,162,60,89,109,163,60,178,136,164,60,253,164,165,60,57,194,166,60,103,224,167,60,134,255,168,60,151,31,170,60,152,64,171,60,139,98,172,60,111,133,173,60,68,169,174,60,10,206,175,60,193,243,176,60,105,26,178,60,2,66,179,60,139,106,180,60,6,148,181,60,113,190,182,60,205,233,183,60,26,22,185,60,87,67,186,60,133,113,187,60,163,160,188,60,177,208,189,60,177,1,191,60,160,51,192,60,128,102,193,60,80,154,194,60,16,207,195,60,193,4,197,60,97,59,198,60,242,114,199,60,114,171,200,60,227,228,201,60,67,31,203,60,147,90,204,60,211,150,205,60,3,212,206,60,34,18,208,60,49,81,209,60,48,145,210,60,30,210,211,60,252,19,213,60,201,86,214,60,133,154,215,60,49,223,216,60,204,36,218,60,86,107,219,60,208,178,220,60,56,251,221,60,144,68,223,60,214,142,224,60,12,218,225,60,48,38,227,60,67,115,228,60,69,193,229,60,54,16,231,60,21,96,232,60,227,176,233,60,160,2,235,60,75,85,236,60,228,168,237,60,108,253,238,60,226,82,240,60,70,169,241,60,153,0,243,60,218,88,244,60,8,178,245,60,37,12,247,60,48,103,248,60,41,195,249,60,15,32,251,60,228,125,252,60,166,220,253,60,85,60,255,60,121,78,0,61,63,255,0,61,123,176,1,61,46,98,2,61,88,20,3,61,248,198,3,61,15,122,4,61,156,45,5,61,161,225,5,61,27,150,6,61,12,75,7,61,116,0,8,61,82,182,8,61,167,108,9,61,113,35,10,61,179,218,10,61,106,146,11,61,152,74,12,61,60,3,13,61,87,188,13,61,231,117,14,61,238,47,15,61,107,234,15,61,94,165,16,61,199,96,17,61,166,28,18,61,251,216,18,61,198,149,19,61,7,83,20,61,190,16,21,61,234,206,21,61,141,141,22,61,165,76,23,61,52,12,24,61,56,204,24,61,177,140,25,61,161,77,26,61,6,15,27,61,224,208,27,61,48,147,28,61,246,85,29,61,49,25,30,61,226,220,30,61,8,161,31,61,164,101,32,61,181,42,33,61,59,240,33,61,55,182,34,61,168,124,35,61,142,67,36,61,233,10,37,61,186,210,37,61,255,154,38,61,186,99,39,61,234,44,40,61,143,246,40,61,168,192,41,61,55,139,42,61,59,86,43,61,180,33,44,61,161,237,44,61,4,186,45,61,219,134,46,61,38,84,47,61,231,33,48,61,28,240,48,61,198,190,49,61,229,141,50,61,120,93,51,61,127,45,52,61,251,253,52,61,236,206,53,61,81,160,54,61,42,114,55,61,120,68,56,61,58,23,57,61,112,234,57,61,27,190,58,61,58,146,59,61,204,102,60,61,211,59,61,61,79,17,62,61,62,231,62,61,161,189,63,61,120,148,64,61,195,107,65,61,130,67,66,61,181,27,67,61,92,244,67,61,118,205,68,61,4,167,69,61,6,129,70,61,124,91,71,61,101,54,72,61,194,17,73,61,146,237,73,61,214,201,74,61,141,166,75,61,184,131,76,61,86,97,77,61,104,63,78,61,236,29,79,61,229,252,79,61,80,220,80,61,46,188,81,61,128,156,82,61,69,125,83,61,125,94,84,61,40,64,85,61,69,34,86,61,214,4,87,61,218,231,87,61,81,203,88,61,58,175,89,61,150,147,90,61,101,120,91,61,167,93,92,61,91,67,93,61,130,41,94,61,28,16,95,61,40,247,95,61,167,222,96,61,152,198,97,61,251,174,98,61,209,151,99,61,25,129,100,61,212,106,101,61,0,85,102,61,159,63,103,61,176,42,104,61,51,22,105,61,41,2,106,61,144,238,106,61,105,219,107,61,180,200,108,61,113,182,109,61,160,164,110,61,65,147,111,61,84,130,112,61,216,113,113,61,206,97,114,61,54,82,115,61,15,67,116,61,89,52,117,61,22,38,118,61,67,24,119,61,226,10,120,61,243,253,120,61,117,241,121,61,104,229,122,61,204,217,123,61,162,206,124,61,232,195,125,61,160,185,126,61,201,175,127,61,49,83,128,61,183,206,128,61,117,74,129,61,107,198,129,61,154,66,130,61,1,191,130,61,160,59,131,61,120,184,131,61,136,53,132,61,209,178,132,61,81,48,133,61,10,174,133,61,251,43,134,61,37,170,134,61,134,40,135,61,32,167,135,61,242,37,136,61,252,164,136,61,62,36,137,61,184,163,137,61,106,35,138,61,84,163,138,61,118,35,139,61,209,163,139,61,99,36,140,61,45,165,140,61,46,38,141,61,104,167,141,61,218,40,142,61,131,170,142,61,100,44,143,61,125,174,143,61,206,48,144,61,86,179,144,61,23,54,145,61,14,185,145,61,62,60,146,61,165,191,146,61,67,67,147,61,26,199,147,61,39,75,148,61,109,207,148,61,234,83,149,61,158,216,149,61,138,93,150,61,173,226,150,61,7,104,151,61,153,237,151,61,98,115,152,61,99,249,152,61,155,127,153,61,10,6,154,61,176,140,154,61,142,19,155,61,163,154,155,61,239,33,156,61,114,169,156,61,44,49,157,61,29,185,157,61,69,65,158,61,165,201,158,61,59,82,159,61,8,219,159,61,13,100,160,61,72,237,160,61,186,118,161,61,99,0,162,61,67,138,162,61,90,20,163,61,167,158,163,61,43,41,164,61,230,179,164,61,216,62,165,61,0,202,165,61,95,85,166,61,245,224,166,61,193,108,167,61,196,248,167,61,254,132,168,61,110,17,169,61,20,158,169,61,241,42,170,61,4,184,170,61,78,69,171,61,206,210,171,61,133,96,172,61,113,238,172,61,149,124,173,61,238,10,174,61,126,153,174,61,67,40,175,61,63,183,175,61,114,70,176,61,218,213,176,61,120,101,177,61,77,245,177,61,88,133,178,61,152,21,179,61,15,166,179,61,187,54,180,61,158,199,180,61,182,88,181,61,4,234,181,61,137,123,182,61,67,13,183,61,50,159,183,61,88,49,184,61,179,195,184,61,68,86,185,61,11,233,185,61,7,124,186,61,57,15,187,61,160,162,187,61,61,54,188,61,16,202,188,61,24,94,189,61,85,242,189,61,200,134,190,61,112,27,191,61,78,176,191,61,97,69,192,61,170,218,192,61,39,112,193,61,218,5,194,61,194,155,194,61,224,49,195,61,50,200,195,61,186,94,196,61,119,245,196,61,104,140,197,61,143,35,198,61,235,186,198,61,124,82,199,61,66,234,199,61,61,130,200,61,108,26,201,61,209,178,201,61,106,75,202,61,57,228,202,61,59,125,203,61,115,22,204,61,224,175,204,61,129,73,205,61,86,227,205,61,97,125,206,61,159,23,207,61,19,178,207,61,187,76,208,61,151,231,208,61,168,130,209,61,237,29,210,61,103,185,210,61,21,85,211,61,248,240,211,61,14,141,212,61,89,41,213,61,216,197,213,61,140,98,214,61,115,255,214,61,143,156,215,61,223,57,216,61,99,215,216,61,27,117,217,61,7,19,218,61,38,177,218,61,122,79,219,61,2,238,219,61,189,140,220,61,173,43,221,61,208,202,221,61,39,106,222,61,178,9,223,61,112,169,223,61,98,73,224,61,136,233,224,61,226,137,225,61,111,42,226,61,47,203,226,61,35,108,227,61,74,13,228,61,165,174,228,61,52,80,229,61,245,241,229,61,234,147,230,61,19,54,231,61,110,216,231,61,253,122,232,61,191,29,233,61,180,192,233,61,221,99,234,61,56,7,235,61,199,170,235,61,136,78,236,61,125,242,236,61,164,150,237,61,255,58,238,61,140,223,238,61,76,132,239,61,63,41,240,61,101,206,240,61,189,115,241,61,73,25,242,61,7,191,242,61,247,100,243,61,26,11,244,61,112,177,244,61,248,87,245,61,179,254,245,61,160,165,246,61,192,76,247,61,18,244,247,61,151,155,248,61,77,67,249,61,55,235,249,61,82,147,250,61,159,59,251,61,31,228,251,61,209,140,252,61,181,53,253,61,203,222,253,61,19,136,254,61,141,49,255,61,57,219,255,61,140,66,0,62,148,151,0,62,181,236,0,62,238,65,1,62,65,151,1,62,173,236,1,62,49,66,2,62,206,151,2,62,132,237,2,62,83,67,3,62,59,153,3,62,59,239,3,62,84,69,4,62,134,155,4,62,209,241,4,62,52,72,5,62,176,158,5,62,68,245,5,62,242,75,6,62,183,162,6,62,150,249,6,62,141,80,7,62,156,167,7,62,196,254,7,62,5,86,8,62,94,173,8,62,207,4,9,62,89,92,9,62,252,179,9,62,183,11,10,62,138,99,10,62,118,187,10,62,122,19,11,62,150,107,11,62,203,195,11,62,24,28,12,62,125,116,12,62,250,204,12,62,144,37,13,62,62,126,13,62,4,215,13,62,227,47,14,62,217,136,14,62,232,225,14,62,15,59,15,62,78,148,15,62,165,237,15,62,20,71,16,62,155,160,16,62,58,250,16,62,241,83,17,62,193,173,17,62,168,7,18,62,167,97,18,62,190,187,18,62,237,21,19,62,51,112,19,62,146,202,19,62,9,37,20,62,151,127,20,62,61,218,20,62,251,52,21,62,209,143,21,62,190,234,21,62,195,69,22,62,224,160,22,62,21,252,22,62,97,87,23,62,197,178,23,62,64,14,24,62,211,105,24,62,126,197,24,62,64,33,25,62,26,125,25,62,11,217,25,62,20,53,26,62,52,145,26,62,108,237,26,62,187,73,27,62,34,166,27,62,160,2,28,62,53,95,28,62,226,187,28,62,166,24,29,62,129,117,29,62,116,210,29,62,126,47,30,62,159,140,30,62,215,233,30,62,39,71,31,62,141,164,31,62,11,2,32,62,160,95,32,62,76,189,32,62,16,27,33,62,234,120,33,62,219,214,33,62,228,52,34,62,3,147,34,62,58,241,34,62,135,79,35,62,235,173,35,62,103,12,36,62,249,106,36,62,162,201,36,62,98,40,37,62,56,135,37,62,38,230,37,62,42,69,38,62,69,164,38,62,119,3,39,62,192,98,39,62,31,194,39,62,149,33,40,62,33,129,40,62,197,224,40,62,126,64,41,62,79,160,41,62,54,0,42,62,51,96,42,62,72,192,42,62,114,32,43,62,179,128,43,62,11,225,43,62,121,65,44,62,253,161,44,62,152,2,45,62,73,99,45,62,16,196,45,62,238,36,46,62,226,133,46,62,237,230,46,62,13,72,47,62,68,169,47,62,145,10,48,62,245,107,48,62,110,205,48,62,254,46,49,62,163,144,49,62,95,242,49,62,49,84,50,62,25,182,50,62,23,24,51,62,43,122,51,62,85,220,51,62,148,62,52,62,234,160,52,62,86,3,53,62,216,101,53,62,111,200,53,62,28,43,54,62,223,141,54,62,184,240,54,62,167,83,55,62,171,182,55,62,197,25,56,62,245,124,56,62,59,224,56,62,150,67,57,62,7,167,57,62,141,10,58,62,41,110,58,62,219,209,58,62,162,53,59,62,126,153,59,62,112,253,59,62,120,97,60,62,149,197,60,62,199,41,61,62,15,142,61,62,108,242,61,62,222,86,62,62,102,187,62,62,3,32,63,62,181,132,63,62,125,233,63,62,90,78,64,62,75,179,64,62,83,24,65,62,111,125,65,62,160,226,65,62,231,71,66,62,66,173,66,62,179,18,67,62,57,120,67,62,211,221,67,62,131,67,68,62,71,169,68,62,33,15,69,62,15,117,69,62,18,219,69,62,42,65,70,62,87,167,70,62,153,13,71,62,240,115,71,62,91,218,71,62,219,64,72,62,111,167,72,62,25,14,73,62,215,116,73,62,169,219,73,62,144,66,74,62,140,169,74,62,157,16,75,62,193,119,75,62,251,222,75,62,73,70,76,62,171,173,76,62,34,21,77,62,173,124,77,62,76,228,77,62,0,76,78,62,200,179,78,62,164,27,79,62,149,131,79,62,154,235,79,62,179,83,80,62,225,187,80,62,34,36,81,62,120,140,81,62,225,244,81,62,95,93,82,62,241,197,82,62,151,46,83,62,81,151,83,62,31,0,84,62,1,105,84,62,247,209,84,62,0,59,85,62,30,164,85,62,79,13,86,62,149,118,86,62,238,223,86,62,91,73,87,62,219,178,87,62,112,28,88,62,24,134,88,62,211,239,88,62,163,89,89,62,134,195,89,62,124,45,90,62,134,151,90,62,164,1,91,62,213,107,91,62,26,214,91,62,114,64,92,62,221,170,92,62,92,21,93,62,239,127,93,62,148,234,93,62,77,85,94,62,26,192,94,62,249,42,95,62,236,149,95,62,242,0,96,62,11,108,96,62,55,215,96,62,119,66,97,62,202,173,97,62,47,25,98,62,168,132,98,62,52,240,98,62,210,91,99,62,132,199,99,62,73,51,100,62,32,159,100,62,11,11,101,62,8,119,101,62,24,227,101,62,59,79,102,62,113,187,102,62,186,39,103,62,21,148,103,62,131,0,104,62,3,109,104,62,151,217,104,62,60,70,105,62,245,178,105,62,192,31,106,62,157,140,106,62,141,249,106,62,144,102,107,62,165,211,107,62,204,64,108,62,6,174,108,62,82,27,109,62,176,136,109,62,33,246,109,62,164,99,110,62,57,209,110,62,225,62,111,62,154,172,111,62,102,26,112,62,68,136,112,62,52,246,112,62,55,100,113,62,75,210,113,62,113,64,114,62,169,174,114,62,243,28,115,62,80,139,115,62,190,249,115,62,61,104,116,62,207,214,116,62,115,69,117,62,40,180,117,62,239,34,118,62,200,145,118,62,179,0,119,62,175,111,119,62,189,222,119,62,221,77,120,62,14,189,120,62,80,44,121,62,165,155,121,62,10,11,122,62,130,122,122,62,10,234,122,62,164,89,123,62,80,201,123,62,13,57,124,62,219,168,124,62,186,24,125,62,171,136,125,62,173,248,125,62,192,104,126,62,228,216,126,62,26,73,127,62,96,185,127,62,220,20,128,62,16,77,128,62,77,133,128,62,147,189,128,62,225,245,128,62,55,46,129,62,150,102,129,62,253,158,129,62,109,215,129,62,229,15,130,62,102,72,130,62,238,128,130,62,128,185,130,62,25,242,130,62,187,42,131,62,102,99,131,62,24,156,131,62,211,212,131,62,150,13,132,62,98,70,132,62,53,127,132,62,17,184,132,62,245,240,132,62,226,41,133,62,214,98,133,62,211,155,133,62,216,212,133,62,229,13,134,62,250,70,134,62,23,128,134,62,61,185,134,62,106,242,134,62,160,43,135,62,221,100,135,62,35,158,135,62,112,215,135,62,198,16,136,62,35,74,136,62,137,131,136,62,247,188,136,62,108,246,136,62,233,47,137,62,111,105,137,62,252,162,137,62,145,220,137,62,46,22,138,62,211,79,138,62,127,137,138,62,52,195,138,62,240,252,138,62,180,54,139,62,128,112,139,62,84,170,139,62,47,228,139,62,18,30,140,62,253,87,140,62,239,145,140,62,233,203,140,62,235,5,141,62,245,63,141,62,6,122,141,62,31,180,141,62,63,238,141,62,103,40,142,62],"i8",L3,F.GLOBAL_BASE+530936),d3([150,98,142,62,205,156,142,62,12,215,142,62,82,17,143,62,159,75,143,62,245,133,143,62,81,192,143,62,181,250,143,62,33,53,144,62,147,111,144,62,14,170,144,62,143,228,144,62,25,31,145,62,169,89,145,62,65,148,145,62,224,206,145,62,134,9,146,62,52,68,146,62,233,126,146,62,165,185,146,62,105,244,146,62,52,47,147,62,6,106,147,62,223,164,147,62,191,223,147,62,167,26,148,62,150,85,148,62,139,144,148,62,136,203,148,62,140,6,149,62,152,65,149,62,170,124,149,62,195,183,149,62,227,242,149,62,11,46,150,62,57,105,150,62,111,164,150,62,171,223,150,62,238,26,151,62,56,86,151,62,138,145,151,62,226,204,151,62,65,8,152,62,167,67,152,62,19,127,152,62,135,186,152,62,1,246,152,62,130,49,153,62,10,109,153,62,153,168,153,62,47,228,153,62,203,31,154,62,110,91,154,62,24,151,154,62,200,210,154,62,127,14,155,62,61,74,155,62,2,134,155,62,205,193,155,62,158,253,155,62,119,57,156,62,85,117,156,62,59,177,156,62,39,237,156,62,25,41,157,62,18,101,157,62,18,161,157,62,24,221,157,62,36,25,158,62,55,85,158,62,80,145,158,62,112,205,158,62,150,9,159,62,195,69,159,62,246,129,159,62,47,190,159,62,111,250,159,62,180,54,160,62,1,115,160,62,83,175,160,62,172,235,160,62,11,40,161,62,112,100,161,62,219,160,161,62,77,221,161,62,196,25,162,62,66,86,162,62,198,146,162,62,81,207,162,62,225,11,163,62,119,72,163,62,20,133,163,62,182,193,163,62,95,254,163,62,13,59,164,62,194,119,164,62,125,180,164,62,61,241,164,62,4,46,165,62,208,106,165,62,162,167,165,62,123,228,165,62,89,33,166,62,61,94,166,62,39,155,166,62,23,216,166,62,12,21,167,62,7,82,167,62,8,143,167,62,15,204,167,62,28,9,168,62,46,70,168,62,70,131,168,62,100,192,168,62,136,253,168,62,177,58,169,62,223,119,169,62,20,181,169,62,78,242,169,62,141,47,170,62,211,108,170,62,29,170,170,62,109,231,170,62,195,36,171,62,31,98,171,62,127,159,171,62,230,220,171,62,81,26,172,62,194,87,172,62,57,149,172,62,181,210,172,62,54,16,173,62,189,77,173,62,73,139,173,62,218,200,173,62,113,6,174,62,13,68,174,62,174,129,174,62,85,191,174,62,0,253,174,62,177,58,175,62,103,120,175,62,35,182,175,62,227,243,175,62,169,49,176,62,116,111,176,62,68,173,176,62,25,235,176,62,243,40,177,62,210,102,177,62,182,164,177,62,160,226,177,62,142,32,178,62,129,94,178,62,121,156,178,62,119,218,178,62,121,24,179,62,128,86,179,62,140,148,179,62,157,210,179,62,178,16,180,62,205,78,180,62,236,140,180,62,16,203,180,62,57,9,181,62,103,71,181,62,154,133,181,62,209,195,181,62,13,2,182,62,78,64,182,62,147,126,182,62,221,188,182,62,44,251,182,62,127,57,183,62,215,119,183,62,52,182,183,62,149,244,183,62,251,50,184,62,101,113,184,62,212,175,184,62,71,238,184,62,191,44,185,62,59,107,185,62,188,169,185,62,65,232,185,62,202,38,186,62,88,101,186,62,235,163,186,62,129,226,186,62,28,33,187,62,188,95,187,62,95,158,187,62,7,221,187,62,180,27,188,62,100,90,188,62,25,153,188,62,210,215,188,62,143,22,189,62,80,85,189,62,22,148,189,62,223,210,189,62,173,17,190,62,127,80,190,62,85,143,190,62,47,206,190,62,13,13,191,62,239,75,191,62,213,138,191,62,191,201,191,62,173,8,192,62,159,71,192,62,149,134,192,62,143,197,192,62,141,4,193,62,143,67,193,62,148,130,193,62,158,193,193,62,171,0,194,62,188,63,194,62,209,126,194,62,234,189,194,62,6,253,194,62,38,60,195,62,74,123,195,62,113,186,195,62,157,249,195,62,204,56,196,62,254,119,196,62,52,183,196,62,110,246,196,62,171,53,197,62,236,116,197,62,49,180,197,62,121,243,197,62,196,50,198,62,19,114,198,62,102,177,198,62,188,240,198,62,21,48,199,62,114,111,199,62,210,174,199,62,54,238,199,62,157,45,200,62,7,109,200,62,117,172,200,62,230,235,200,62,90,43,201,62,209,106,201,62,76,170,201,62,202,233,201,62,75,41,202,62,208,104,202,62,88,168,202,62,226,231,202,62,112,39,203,62,1,103,203,62,149,166,203,62,45,230,203,62,199,37,204,62,100,101,204,62,4,165,204,62,168,228,204,62,78,36,205,62,248,99,205,62,164,163,205,62,83,227,205,62,5,35,206,62,186,98,206,62,114,162,206,62,45,226,206,62,234,33,207,62,171,97,207,62,110,161,207,62,52,225,207,62,253,32,208,62,200,96,208,62,150,160,208,62,103,224,208,62,59,32,209,62,17,96,209,62,234,159,209,62,198,223,209,62,164,31,210,62,133,95,210,62,104,159,210,62,78,223,210,62,55,31,211,62,33,95,211,62,15,159,211,62,255,222,211,62,241,30,212,62,230,94,212,62,221,158,212,62,215,222,212,62,211,30,213,62,209,94,213,62,210,158,213,62,213,222,213,62,219,30,214,62,226,94,214,62,236,158,214,62,248,222,214,62,7,31,215,62,24,95,215,62,42,159,215,62,63,223,215,62,87,31,216,62,112,95,216,62,139,159,216,62,169,223,216,62,200,31,217,62,234,95,217,62,14,160,217,62,51,224,217,62,91,32,218,62,133,96,218,62,176,160,218,62,222,224,218,62,13,33,219,62,63,97,219,62,114,161,219,62,167,225,219,62,222,33,220,62,23,98,220,62,82,162,220,62,142,226,220,62,204,34,221,62,12,99,221,62,78,163,221,62,146,227,221,62,215,35,222,62,29,100,222,62,102,164,222,62,176,228,222,62,252,36,223,62,73,101,223,62,152,165,223,62,232,229,223,62,58,38,224,62,142,102,224,62,227,166,224,62,57,231,224,62,145,39,225,62,234,103,225,62,69,168,225,62,161,232,225,62,255,40,226,62,94,105,226,62,190,169,226,62,32,234,226,62,131,42,227,62,231,106,227,62,76,171,227,62,179,235,227,62,27,44,228,62,132,108,228,62,238,172,228,62,90,237,228,62,199,45,229,62,52,110,229,62,163,174,229,62,19,239,229,62,133,47,230,62,247,111,230,62,106,176,230,62,222,240,230,62,83,49,231,62,202,113,231,62,65,178,231,62,185,242,231,62,50,51,232,62,172,115,232,62,38,180,232,62,162,244,232,62,31,53,233,62,156,117,233,62,26,182,233,62,153,246,233,62,25,55,234,62,153,119,234,62,26,184,234,62,156,248,234,62,31,57,235,62,162,121,235,62,38,186,235,62,170,250,235,62,47,59,236,62,181,123,236,62,59,188,236,62,194,252,236,62,73,61,237,62,209,125,237,62,89,190,237,62,226,254,237,62,107,63,238,62,245,127,238,62,127,192,238,62,10,1,239,62,149,65,239,62,32,130,239,62,171,194,239,62,55,3,240,62,196,67,240,62,80,132,240,62,221,196,240,62,106,5,241,62,247,69,241,62,132,134,241,62,18,199,241,62,160,7,242,62,45,72,242,62,187,136,242,62,74,201,242,62,216,9,243,62,102,74,243,62,244,138,243,62,131,203,243,62,17,12,244,62,159,76,244,62,46,141,244,62,188,205,244,62,74,14,245,62,216,78,245,62,102,143,245,62,244,207,245,62,129,16,246,62,15,81,246,62,156,145,246,62,41,210,246,62,182,18,247,62,67,83,247,62,207,147,247,62,91,212,247,62,231,20,248,62,115,85,248,62,254,149,248,62,136,214,248,62,19,23,249,62,157,87,249,62,38,152,249,62,175,216,249,62,56,25,250,62,192,89,250,62,72,154,250,62,207,218,250,62,86,27,251,62,220,91,251,62,97,156,251,62,230,220,251,62,106,29,252,62,238,93,252,62,113,158,252,62,243,222,252,62,117,31,253,62,245,95,253,62,118,160,253,62,245,224,253,62,116,33,254,62,241,97,254,62,110,162,254,62,235,226,254,62,102,35,255,62,224,99,255,62,90,164,255,62,211,228,255,62,165,18,0,63,225,50,0,63,27,83,0,63,86,115,0,63,144,147,0,63,201,179,0,63,2,212,0,63,58,244,0,63,114,20,1,63,169,52,1,63,224,84,1,63,22,117,1,63,76,149,1,63,129,181,1,63,181,213,1,63,233,245,1,63,28,22,2,63,78,54,2,63,128,86,2,63,178,118,2,63,226,150,2,63,18,183,2,63,65,215,2,63,112,247,2,63,157,23,3,63,203,55,3,63,247,87,3,63,35,120,3,63,78,152,3,63,120,184,3,63,161,216,3,63,202,248,3,63,242,24,4,63,25,57,4,63,63,89,4,63,101,121,4,63,137,153,4,63,173,185,4,63,208,217,4,63,243,249,4,63,20,26,5,63,52,58,5,63,84,90,5,63,115,122,5,63,145,154,5,63,173,186,5,63,202,218,5,63,229,250,5,63,255,26,6,63,24,59,6,63,48,91,6,63,72,123,6,63,94,155,6,63,116,187,6,63,136,219,6,63,155,251,6,63,174,27,7,63,191,59,7,63,208,91,7,63,223,123,7,63,237,155,7,63,250,187,7,63,7,220,7,63,18,252,7,63,28,28,8,63,37,60,8,63,44,92,8,63,51,124,8,63,57,156,8,63,61,188,8,63,64,220,8,63,67,252,8,63,68,28,9,63,68,60,9,63,66,92,9,63,64,124,9,63,60,156,9,63,55,188,9,63,49,220,9,63,41,252,9,63,33,28,10,63,23,60,10,63,12,92,10,63,255,123,10,63,242,155,10,63,227,187,10,63,211,219,10,63,193,251,10,63,174,27,11,63,154,59,11,63,133,91,11,63,110,123,11,63,86,155,11,63,60,187,11,63,33,219,11,63,5,251,11,63,231,26,12,63,200,58,12,63,168,90,12,63,134,122,12,63,98,154,12,63,62,186,12,63,23,218,12,63,240,249,12,63,199,25,13,63,156,57,13,63,112,89,13,63,66,121,13,63,19,153,13,63,227,184,13,63,176,216,13,63,125,248,13,63,72,24,14,63,17,56,14,63,216,87,14,63,159,119,14,63,99,151,14,63,38,183,14,63,232,214,14,63,167,246,14,63,101,22,15,63,34,54,15,63,221,85,15,63,150,117,15,63,78,149,15,63,4,181,15,63,184,212,15,63,106,244,15,63,27,20,16,63,202,51,16,63,120,83,16,63,36,115,16,63,206,146,16,63,118,178,16,63,28,210,16,63,193,241,16,63,100,17,17,63,6,49,17,63,165,80,17,63,67,112,17,63,223,143,17,63,121,175,17,63,17,207,17,63,167,238,17,63,60,14,18,63,206,45,18,63,95,77,18,63,238,108,18,63,123,140,18,63,7,172,18,63,144,203,18,63,23,235,18,63,157,10,19,63,32,42,19,63,162,73,19,63,34,105,19,63,159,136,19,63,27,168,19,63,149,199,19,63,13,231,19,63,131,6,20,63,247,37,20,63,104,69,20,63,216,100,20,63,70,132,20,63,178,163,20,63,27,195,20,63,131,226,20,63,233,1,21,63,76,33,21,63,174,64,21,63,13,96,21,63,106,127,21,63,197,158,21,63,31,190,21,63,117,221,21,63,202,252,21,63,29,28,22,63,109,59,22,63,188,90,22,63,8,122,22,63,82,153,22,63,153,184,22,63,223,215,22,63,34,247,22,63,100,22,23,63,162,53,23,63,223,84,23,63,26,116,23,63,82,147,23,63,136,178,23,63,187,209,23,63,237,240,23,63,28,16,24,63,73,47,24,63,115,78,24,63,155,109,24,63,193,140,24,63,228,171,24,63,6,203,24,63,36,234,24,63,65,9,25,63,91,40,25,63,115,71,25,63,136,102,25,63,155,133,25,63,171,164,25,63,185,195,25,63,197,226,25,63,206,1,26,63,213,32,26,63,217,63,26,63,219,94,26,63,218,125,26,63,215,156,26,63,210,187,26,63,202,218,26,63,191,249,26,63,178,24,27,63,162,55,27,63,144,86,27,63,123,117,27,63,100,148,27,63,74,179,27,63,46,210,27,63,15,241,27,63,237,15,28,63,201,46,28,63,162,77,28,63,121,108,28,63,77,139,28,63,31,170,28,63,237,200,28,63,185,231,28,63,131,6,29,63,74,37,29,63,14,68,29,63,207,98,29,63,142,129,29,63,74,160,29,63,3,191,29,63,186,221,29,63,110,252,29,63,31,27,30,63,205,57,30,63,121,88,30,63,34,119,30,63,200,149,30,63,107,180,30,63,12,211,30,63,170,241,30,63,69,16,31,63,221,46,31,63,114,77,31,63,5,108,31,63,148,138,31,63,33,169,31,63,171,199,31,63,50,230,31,63,182,4,32,63,56,35,32,63,182,65,32,63,50,96,32,63,170,126,32,63,32,157,32,63,147,187,32,63,3,218,32,63,112,248,32,63,218,22,33,63,65,53,33,63,165,83,33,63,6,114,33,63,100,144,33,63,191,174,33,63,23,205,33,63,108,235,33,63,190,9,34,63,13,40,34,63,89,70,34,63,162,100,34,63,232,130,34,63,43,161,34,63,107,191,34,63,167,221,34,63,225,251,34,63,24,26,35,63,75,56,35,63,123,86,35,63,168,116,35,63,211,146,35,63,249,176,35,63,29,207,35,63,62,237,35,63,91,11,36,63,118,41,36,63,141,71,36,63,161,101,36,63,177,131,36,63,191,161,36,63,201,191,36,63,208,221,36,63,212,251,36,63,213,25,37,63,210,55,37,63,204,85,37,63,195,115,37,63,183,145,37,63,167,175,37,63,148,205,37,63,126,235,37,63,101,9,38,63,72,39,38,63,40,69,38,63,4,99,38,63,221,128,38,63,179,158,38,63,134,188,38,63,85,218,38,63,33,248,38,63,233,21,39,63,174,51,39,63,112,81,39,63,46,111,39,63,233,140,39,63,160,170,39,63,84,200,39,63,4,230,39,63,178,3,40,63,91,33,40,63,1,63,40,63,164,92,40,63,67,122,40,63,223,151,40,63,120,181,40,63,12,211,40,63,158,240,40,63,43,14,41,63,182,43,41,63,60,73,41,63,192,102,41,63,63,132,41,63,187,161,41,63,52,191,41,63,169,220,41,63,26,250,41,63,136,23,42,63,242,52,42,63,89,82,42,63,188,111,42,63,28,141,42,63,119,170,42,63,208,199,42,63,36,229,42,63,117,2,43,63,194,31,43,63,12,61,43,63,82,90,43,63,148,119,43,63,211,148,43,63,14,178,43,63,69,207,43,63,120,236,43,63,168,9,44,63,212,38,44,63,252,67,44,63,33,97,44,63,66,126,44,63,95,155,44,63,120,184,44,63,142,213,44,63,159,242,44,63,173,15,45,63,184,44,45,63,190,73,45,63,193,102,45,63,191,131,45,63,186,160,45,63,177,189,45,63,165,218,45,63,148,247,45,63,128,20,46,63,103,49,46,63,75,78,46,63,43,107,46,63,7,136,46,63,224,164,46,63,180,193,46,63,132,222,46,63,81,251,46,63,26,24,47,63,222,52,47,63,159,81,47,63,92,110,47,63,21,139,47,63,202,167,47,63,123,196,47,63,40,225,47,63,209,253,47,63,118,26,48,63,23,55,48,63,180,83,48,63,77,112,48,63,226,140,48,63,115,169,48,63,0,198,48,63,137,226,48,63,14,255,48,63,142,27,49,63,11,56,49,63,132,84,49,63,248,112,49,63,105,141,49,63,214,169,49,63,62,198,49,63,162,226,49,63,2,255,49,63,95,27,50,63,182,55,50,63,10,84,50,63,90,112,50,63,166,140,50,63,237,168,50,63,48,197,50,63,111,225,50,63,170,253,50,63,225,25,51,63,19,54,51,63,66,82,51,63,108,110,51,63,146,138,51,63,180,166,51,63,209,194,51,63,234,222,51,63,0,251,51,63,16,23,52,63,29,51,52,63,37,79,52,63,41,107,52,63,41,135,52,63,37,163,52,63,28,191,52,63,15,219,52,63,253,246,52,63,232,18,53,63,206,46,53,63,176,74,53,63,141,102,53,63,102,130,53,63,59,158,53,63,11,186,53,63,215,213,53,63,159,241,53,63,98,13,54,63,33,41,54,63,220,68,54,63,146,96,54,63,68,124,54,63,241,151,54,63,154,179,54,63,63,207,54,63,223,234,54,63,123,6,55,63,18,34,55,63,165,61,55,63,52,89,55,63,190,116,55,63,67,144,55,63,196,171,55,63,65,199,55,63,185,226,55,63,45,254,55,63,156,25,56,63,7,53,56,63,109,80,56,63,207,107,56,63,44,135,56,63,133,162,56,63,217,189,56,63,40,217,56,63,115,244,56,63,186,15,57,63,252,42,57,63,57,70,57,63,114,97,57,63,166,124,57,63,214,151,57,63,1,179,57,63,40,206,57,63,74,233,57,63,103,4,58,63,128,31,58,63,148,58,58,63,163,85,58,63,174,112,58,63,180,139,58,63,182,166,58,63,179,193,58,63,171,220,58,63,159,247,58,63,142,18,59,63,120,45,59,63,94,72,59,63,63,99,59,63,27,126,59,63,243,152,59,63,197,179,59,63,148,206,59,63,93,233,59,63,34,4,60,63,226,30,60,63,157,57,60,63,84,84,60,63,5,111,60,63,178,137,60,63,91,164,60,63,254,190,60,63,157,217,60,63,55,244,60,63,204,14,61,63,93,41,61,63,232,67,61,63,111,94,61,63,241,120,61,63,110,147,61,63,231,173,61,63,91,200,61,63,201,226,61,63,51,253,61,63,152,23,62,63,249,49,62,63,84,76,62,63,171,102,62,63,252,128,62,63,73,155,62,63,145,181,62,63,212,207,62,63,19,234,62,63,76,4,63,63,128,30,63,63,176,56,63,63,219,82,63,63,0,109,63,63,33,135,63,63,61,161,63,63,84,187,63,63,102,213,63,63,115,239,63,63,123,9,64,63,127,35,64,63,125,61,64,63,118,87,64,63,106,113,64,63,90,139,64,63,68,165,64,63,42,191,64,63,10,217,64,63,229,242,64,63,188,12,65,63,141,38,65,63,90,64,65,63,33,90,65,63,228,115,65,63,161,141,65,63,89,167,65,63,13,193,65,63,187,218,65,63,100,244,65,63,8,14,66,63,167,39,66,63,65,65,66,63,214,90,66,63,102,116,66,63,241,141,66,63,119,167,66,63,248,192,66,63,115,218,66,63,234,243,66,63,91,13,67,63,199,38,67,63,47,64,67,63,145,89,67,63,238,114,67,63,69,140,67,63,152,165,67,63,230,190,67,63,46,216,67,63,113,241,67,63,175,10,68,63,232,35,68,63,28,61,68,63,75,86,68,63,116,111,68,63,153,136,68,63,184,161,68,63,210,186,68,63,230,211,68,63,246,236,68,63,0,6,69,63,5,31,69,63,5,56,69,63,0,81,69,63,245,105,69,63,230,130,69,63,209,155,69,63,182,180,69,63,151,205,69,63,114,230,69,63,72,255,69,63,25,24,70,63,229,48,70,63,171,73,70,63,108,98,70,63,40,123,70,63,222,147,70,63,143,172,70,63,59,197,70,63,226,221,70,63,131,246,70,63,31,15,71,63,182,39,71,63,71,64,71,63,211,88,71,63,90,113,71,63,220,137,71,63,88,162,71,63,207,186,71,63,64,211,71,63,172,235,71,63,19,4,72,63,116,28,72,63,209,52,72,63,39,77,72,63,121,101,72,63,197,125,72,63,11,150,72,63,77,174,72,63,137,198,72,63,191,222,72,63,240,246,72,63,28,15,73,63,66,39,73,63,99,63,73,63,127,87,73,63,149,111,73,63,166,135,73,63,177,159,73,63,183,183,73,63,183,207,73,63,178,231,73,63,168,255,73,63,152,23,74,63,131,47,74,63,104,71,74,63,72,95,74,63,34,119,74,63,247,142,74,63,199,166,74,63,145,190,74,63,85,214,74,63,20,238,74,63,206,5,75,63,130,29,75,63,49,53,75,63,218,76,75,63,126,100,75,63,28,124,75,63,181,147,75,63,72,171,75,63,213,194,75,63,93,218,75,63,224,241,75,63,93,9,76,63,213,32,76,63,71,56,76,63,179,79,76,63,26,103,76,63,124,126,76,63,216,149,76,63,46,173,76,63,127,196,76,63,202,219,76,63,16,243,76,63,80,10,77,63,139,33,77,63,192,56,77,63,240,79,77,63,26,103,77,63,62,126,77,63,93,149,77,63,118,172,77,63,137,195,77,63,151,218,77,63,160,241,77,63,163,8,78,63,160,31,78,63,151,54,78,63,137,77,78,63,118,100,78,63,93,123,78,63,62,146,78,63,25,169,78,63,239,191,78,63,192,214,78,63,138,237,78,63,79,4,79,63,15,27,79,63,201,49,79,63,125,72,79,63,43,95,79,63,212,117,79,63,119,140,79,63,21,163,79,63,172,185,79,63,63,208,79,63,203,230,79,63,82,253,79,63,211,19,80,63,79,42,80,63,197,64,80,63,53,87,80,63,159,109,80,63,4,132,80,63,99,154,80,63,189,176,80,63,16,199,80,63,94,221,80,63,167,243,80,63,233,9,81,63,38,32,81,63,93,54,81,63,143,76,81,63,187,98,81,63,225,120,81,63,1,143,81,63,28,165,81,63,48,187,81,63,64,209,81,63,73,231,81,63,77,253,81,63,75,19,82,63,67,41,82,63,53,63,82,63,34,85,82,63,9,107,82,63,234,128,82,63,198,150,82,63,155,172,82,63,107,194,82,63,53,216,82,63,250,237,82,63,185,3,83,63,113,25,83,63,37,47,83,63,210,68,83,63,121,90,83,63,27,112,83,63,183,133,83,63,77,155,83,63,222,176,83,63,104,198,83,63,237,219,83,63,108,241,83,63,230,6,84,63,89,28,84,63,199,49,84,63,46,71,84,63,145,92,84,63,237,113,84,63,67,135,84,63,148,156,84,63,223,177,84,63,35,199,84,63,99,220,84,63,156,241,84,63,207,6,85,63,253,27,85,63,37,49,85,63,71,70,85,63,99,91,85,63,121,112,85,63,138,133,85,63,149,154,85,63,153,175,85,63,152,196,85,63,146,217,85,63,133,238,85,63,114,3,86,63,90,24,86,63,60,45,86,63,24,66,86,63,238,86,86,63,190,107,86,63,136,128,86,63,76,149,86,63,11,170,86,63,196,190,86,63,118,211,86,63,35,232,86,63,203,252,86,63,108,17,87,63,7,38,87,63,156,58,87,63,44,79,87,63,182,99,87,63,58,120,87,63,183,140,87,63,47,161,87,63,162,181,87,63,14,202,87,63,116,222,87,63,213,242,87,63,47,7,88,63,132,27,88,63,211,47,88,63,28,68,88,63,95,88,88,63,156,108,88,63,211,128,88,63,4,149,88,63,47,169,88,63,85,189,88,63,116,209,88,63,142,229,88,63,162,249,88,63,175,13,89,63,183,33,89,63,185,53,89,63,181,73,89,63,171,93,89,63,155,113,89,63,134,133,89,63,106,153,89,63,72,173,89,63,33,193,89,63,243,212,89,63,192,232,89,63,135,252,89,63,71,16,90,63,2,36,90,63,183,55,90,63,102,75,90,63,15,95,90,63,178,114,90,63,79,134,90,63,230,153,90,63,119,173,90,63,3,193,90,63,136,212,90,63,7,232,90,63,129,251,90,63,244,14,91,63,98,34,91,63,201,53,91,63,43,73,91,63,135,92,91,63,220,111,91,63,44,131,91,63,118,150,91,63,186,169,91,63,248,188,91,63,47,208,91,63,97,227,91,63,141,246,91,63,179,9,92,63,212,28,92,63,238,47,92,63,2,67,92,63,16,86,92,63,24,105,92,63,26,124,92,63,23,143,92,63,13,162,92,63,253,180,92,63,232,199,92,63,204,218,92,63,171,237,92,63,131,0,93,63,86,19,93,63,34,38,93,63,233,56,93,63,169,75,93,63,100,94,93,63,24,113,93,63,199,131,93,63,112,150,93,63,18,169,93,63,175,187,93,63,70,206,93,63,215,224,93,63,97,243,93,63,230,5,94,63,101,24,94,63,222,42,94,63,81,61,94,63,190,79,94,63,36,98,94,63,133,116,94,63,224,134,94,63,53,153,94,63,132,171,94,63,205,189,94,63,16,208,94,63,77,226,94,63,132,244,94,63,181,6,95,63,224,24,95,63,5,43,95,63,36,61,95,63,61,79,95,63,80,97,95,63,93,115,95,63,101,133,95,63,102,151,95,63,97,169,95,63,86,187,95,63,69,205,95,63,46,223,95,63,18,241,95,63,239,2,96,63,198,20,96,63,151,38,96,63,98,56,96,63,40,74,96,63,231,91,96,63,160,109,96,63,84,127,96,63,1,145,96,63,168,162,96,63,73,180,96,63,229,197,96,63,122,215,96,63,10,233,96,63,147,250,96,63,22,12,97,63,148,29,97,63,11,47,97,63,125,64,97,63,232,81,97,63,77,99,97,63,173,116,97,63,6,134,97,63,90,151,97,63,167,168,97,63,239,185,97,63,48,203,97,63,108,220,97,63,162,237,97,63,209,254,97,63,251,15,98,63,30,33,98,63,60,50,98,63,84,67,98,63,101,84,98,63,113,101,98,63,119,118,98,63,119,135,98,63,112,152,98,63,100,169,98,63,82,186,98,63,58,203,98,63,28,220,98,63,247,236,98,63,205,253,98,63,157,14,99,63,103,31,99,63,43,48,99,63,233,64,99,63,161,81,99,63,83,98,99,63,255,114,99,63,165,131,99,63,69,148,99,63,224,164,99,63,116,181,99,63,2,198,99,63,138,214,99,63,13,231,99,63,137,247,99,63,255,7,100,63,112,24,100,63,218,40,100,63,62,57,100,63,157,73,100,63,246,89,100,63,72,106,100,63,149,122,100,63,219,138,100,63,28,155,100,63,87,171,100,63,140,187,100,63,186,203,100,63,227,219,100,63,6,236,100,63,35,252,100,63,58,12,101,63,75,28,101,63,86,44,101,63,91,60,101,63,91,76,101,63,84,92,101,63,71,108,101,63,53,124,101,63,28,140,101,63,254,155,101,63,217,171,101,63,175,187,101,63,126,203,101,63,72,219,101,63,12,235,101,63,202,250,101,63,130,10,102,63,52,26,102,63,224,41,102,63,134,57,102,63,38,73,102,63,193,88,102,63,85,104,102,63,227,119,102,63,108,135,102,63,238,150,102,63,107,166,102,63,226,181,102,63,83,197,102,63,190,212,102,63,35,228,102,63,130,243,102,63,219,2,103,63,46,18,103,63,124,33,103,63,195,48,103,63,5,64,103,63,64,79,103,63,118,94,103,63,166,109,103,63,208,124,103,63,244,139,103,63,18,155,103,63,42,170,103,63,61,185,103,63,73,200,103,63,80,215,103,63,80,230,103,63,75,245,103,63,64,4,104,63,47,19,104,63,24,34,104,63,251,48,104,63,217,63,104,63,176,78,104,63,130,93,104,63,78,108,104,63,20,123,104,63,212,137,104,63,142,152,104,63,66,167,104,63,240,181,104,63,153,196,104,63,60,211,104,63,217,225,104,63,112,240,104,63,1,255,104,63,140,13,105,63,17,28,105,63,145,42,105,63,11,57,105,63,127,71,105,63,237,85,105,63,85,100,105,63,183,114,105,63,20,129,105,63,106,143,105,63,187,157,105,63,6,172,105,63,75,186,105,63,139,200,105,63,196,214,105,63,248,228,105,63,38,243,105,63,78,1,106,63,112,15,106,63,141,29,106,63,163,43,106,63,180,57,106,63,191,71,106,63,196,85,106,63,196,99,106,63,189,113,106,63,177,127,106,63,159,141,106,63,135,155,106,63,106,169,106,63,70,183,106,63,29,197,106,63,238,210,106,63,186,224,106,63,127,238,106,63,63,252,106,63,249,9,107,63,173,23,107,63,91,37,107,63,4,51,107,63,167,64,107,63,68,78,107,63,219,91,107,63,109,105,107,63,249,118,107,63,127,132,107,63,255,145,107,63,122,159,107,63,238,172,107,63,94,186,107,63,199,199,107,63,42,213,107,63,136,226,107,63,224,239,107,63,51,253,107,63,128,10,108,63,198,23,108,63,8,37,108,63,67,50,108,63,121,63,108,63,169,76,108,63,211,89,108,63,248,102,108,63,23,116,108,63,48,129,108,63,68,142,108,63,82,155,108,63,90,168,108,63,92,181,108,63,89,194,108,63,80,207,108,63,65,220,108,63,45,233,108,63,19,246,108,63,243,2,109,63,206,15,109,63,163,28,109,63,114,41,109,63,60,54,109,63,0,67,109,63,190,79,109,63,119,92,109,63,42,105,109,63,215,117,109,63,127,130,109,63,33,143,109,63,189,155,109,63,84,168,109,63,229,180,109,63,113,193,109,63,247,205,109,63,119,218,109,63,242,230,109,63,103,243,109,63,214,255,109,63,64,12,110,63,164,24,110,63,3,37,110,63,91,49,110,63,175,61,110,63,253,73,110,63,69,86,110,63,135,98,110,63,196,110,110,63,252,122,110,63,45,135,110,63,90,147,110,63,128,159,110,63,161,171,110,63,189,183,110,63,211,195,110,63,227,207,110,63,238,219,110,63,243,231,110,63,243,243,110,63,237,255,110,63,226,11,111,63,209,23,111,63,186,35,111,63,158,47,111,63,125,59,111,63,85,71,111,63,41,83,111,63,247,94,111,63,191,106,111,63,130,118,111,63,63,130,111,63,247,141,111,63,169,153,111,63,86,165,111,63,253,176,111,63,159,188,111,63,59,200,111,63,210,211,111,63,99,223,111,63,239,234,111,63,117,246,111,63,246,1,112,63,114,13,112,63,231,24,112,63,88,36,112,63,195,47,112,63,40,59,112,63,137,70,112,63,227,81,112,63,56,93,112,63,136,104,112,63,210,115,112,63,23,127,112,63,87,138,112,63,145,149,112,63,197,160,112,63,244,171,112,63,30,183,112,63,66,194,112,63,97,205,112,63,123,216,112,63,143,227,112,63,157,238,112,63,167,249,112,63,171,4,113,63,169,15,113,63,162,26,113,63,150,37,113,63,132,48,113,63,109,59,113,63,81,70,113,63,47,81,113,63,8,92,113,63,219,102,113,63,170,113,113,63,114,124,113,63,54,135,113,63,244,145,113,63,173,156,113,63,96,167,113,63,14,178,113,63,183,188,113,63,91,199,113,63,249,209,113,63,146,220,113,63,37,231,113,63,179,241,113,63,60,252,113,63,192,6,114,63,62,17,114,63,183,27,114,63,43,38,114,63,154,48,114,63,3,59,114,63,103,69,114,63,197,79,114,63,31,90,114,63,115,100,114,63,194,110,114,63,11,121,114,63,79,131,114,63,143,141,114,63,200,151,114,63,253,161,114,63,44,172,114,63,87,182,114,63,123,192,114,63,155,202,114,63,182,212,114,63,203,222,114,63,219,232,114,63,230,242,114,63,235,252,114,63,236,6,115,63,231,16,115,63,221,26,115,63,206,36,115,63,186,46,115,63,160,56,115,63,130,66,115,63,94,76,115,63,53,86,115,63,7,96,115,63,212,105,115,63,155,115,115,63,94,125,115,63,27,135,115,63,211,144,115,63,134,154,115,63,52,164,115,63,221,173,115,63,128,183,115,63,31,193,115,63,184,202,115,63,77,212,115,63,220,221,115,63,102,231,115,63,235,240,115,63,107,250,115,63,230,3,116,63,92,13,116,63,204,22,116,63,56,32,116,63,159,41,116,63,0,51,116,63,93,60,116,63,180,69,116,63,6,79,116,63,84,88,116,63,156,97,116,63,223,106,116,63,29,116,116,63,87,125,116,63,139,134,116,63,186,143,116,63,228,152,116,63,9,162,116,63,41,171,116,63,68,180,116,63,91,189,116,63,108,198,116,63,120,207,116,63,127,216,116,63,129,225,116,63,127,234,116,63,119,243,116,63,106,252,116,63,89,5,117,63,66,14,117,63,38,23,117,63,6,32,117,63,225,40,117,63,182,49,117,63,135,58,117,63,83,67,117,63,26,76,117,63,220,84,117,63,153,93,117,63,81,102,117,63,4,111,117,63,179,119,117,63,92,128,117,63,1,137,117,63,160,145,117,63,59,154,117,63,209,162,117,63,98,171,117,63,239,179,117,63,118,188,117,63,249,196,117,63,118,205,117,63,239,213,117,63,99,222,117,63,210,230,117,63,61,239,117,63,162,247,117,63,3,0,118,63,95,8,118,63,182,16,118,63,8,25,118,63,86,33,118,63,159,41,118,63,227,49,118,63,34,58,118,63,92,66,118,63,146,74,118,63,195,82,118,63,239,90,118,63,22,99,118,63,57,107,118,63,86,115,118,63,112,123,118,63,132,131,118,63,148,139,118,63,158,147,118,63,165,155,118,63,166,163,118,63,163,171,118,63,155,179,118,63,142,187,118,63,125,195,118,63,103,203,118,63,76,211,118,63,45,219,118,63,9,227,118,63,224,234,118,63,178,242,118,63,128,250,118,63,74,2,119,63,14,10,119,63,206,17,119,63,137,25,119,63,64,33,119,63,242,40,119,63,160,48,119,63,72,56,119,63,237,63,119,63,140,71,119,63,39,79,119,63,190,86,119,63,79,94,119,63,220,101,119,63,101,109,119,63,233,116,119,63,105,124,119,63,228,131,119,63,90,139,119,63,204,146,119,63,57,154,119,63,162,161,119,63,6,169,119,63,101,176,119,63,192,183,119,63,23,191,119,63,105,198,119,63,182,205,119,63,255,212,119,63,68,220,119,63,132,227,119,63,191,234,119,63,246,241,119,63,41,249,119,63,87,0,120,63,129,7,120,63,166,14,120,63,198,21,120,63,227,28,120,63,250,35,120,63,14,43,120,63,28,50,120,63,39,57,120,63,45,64,120,63,46,71,120,63,44,78,120,63,36,85,120,63,25,92,120,63,9,99,120,63,244,105,120,63,219,112,120,63,190,119,120,63,156,126,120,63,118,133,120,63,76,140,120,63,29,147,120,63,234,153,120,63,179,160,120,63,119,167,120,63,55,174,120,63,242,180,120,63,169,187,120,63,92,194,120,63,11,201,120,63,181,207,120,63,91,214,120,63,252,220,120,63,154,227,120,63,51,234,120,63,199,240,120,63,88,247,120,63,228,253,120,63,108,4,121,63,240,10,121,63,111,17,121,63,234,23,121,63,97,30,121,63,211,36,121,63,66,43,121,63,172,49,121,63,18,56,121,63,116,62,121,63,209,68,121,63,42,75,121,63,127,81,121,63,208,87,121,63,29,94,121,63,101,100,121,63,170,106,121,63,234,112,121,63,38,119,121,63,93,125,121,63,145,131,121,63,193,137,121,63,236,143,121,63,19,150,121,63,54,156,121,63,85,162,121,63,112,168,121,63,134,174,121,63,153,180,121,63,167,186,121,63,178,192,121,63,184,198,121,63,186,204,121,63,184,210,121,63,178,216,121,63,168,222,121,63,154,228,121,63,135,234,121,63,113,240,121,63,87,246,121,63,56,252,121,63,22,2,122,63,239,7,122,63,197,13,122,63,150,19,122,63,100,25,122,63,45,31,122,63,243,36,122,63,180,42,122,63,113,48,122,63,43,54,122,63,224,59,122,63,146,65,122,63,63,71,122,63,233,76,122,63,142,82,122,63,48,88,122,63,206,93,122,63,103,99,122,63,253,104,122,63,143,110,122,63,29,116,122,63,167,121,122,63,45,127,122,63,175,132,122,63,45,138,122,63,168,143,122,63,30,149,122,63,145,154,122,63,255,159,122,63,106,165,122,63,209,170,122,63,52,176,122,63,147,181,122,63,239,186,122,63,70,192,122,63,154,197,122,63,234,202,122,63,54,208,122,63,126,213,122,63,194,218,122,63,3,224,122,63,64,229,122,63,121,234,122,63,174,239,122,63,223,244,122,63,13,250,122,63,55,255,122,63,93,4,123,63,127,9,123,63,157,14,123,63,184,19,123,63,207,24,123,63,227,29,123,63,242,34,123,63,254,39,123,63,6,45,123,63,10,50,123,63,11,55,123,63,8,60,123,63,1,65,123,63,247,69,123,63,233,74,123,63,215,79,123,63,193,84,123,63,168,89,123,63,139,94,123,63,107,99,123,63,71,104,123,63,31,109,123,63,243,113,123,63,196,118,123,63,146,123,123,63,91,128,123,63,33,133,123,63,228,137,123,63,163,142,123,63,94,147,123,63,22,152,123,63,202,156,123,63,122,161,123,63,39,166,123,63,208,170,123,63,118,175,123,63,24,180,123,63,183,184,123,63,82,189,123,63,233,193,123,63,125,198,123,63,14,203,123,63,155,207,123,63,36,212,123,63,170,216,123,63,45,221,123,63,172,225,123,63,39,230,123,63,159,234,123,63,19,239,123,63,132,243,123,63,242,247,123,63,92,252,123,63,195,0,124,63,38,5,124,63,133,9,124,63,226,13,124,63,58,18,124,63,144,22,124,63,226,26,124,63,48,31,124,63,123,35,124,63,195,39,124,63,7,44,124,63,72,48,124,63,134,52,124,63,192,56,124,63,247,60,124,63,42,65,124,63,90,69,124,63,135,73,124,63,176,77,124,63,214,81,124,63,249,85,124,63,24,90,124,63,52,94,124,63,77,98,124,63,98,102,124,63,116,106,124,63,131,110,124,63,142,114,124,63,150,118,124,63,155,122,124,63,157,126,124,63,155,130,124,63,150,134,124,63,142,138,124,63,130,142,124,63,116,146,124,63,98,150,124,63,77,154,124,63,52,158,124,63,24,162,124,63,249,165,124,63,215,169,124,63,178,173,124,63,137,177,124,63,94,181,124,63,47,185,124,63,253,188,124,63,199,192,124,63,143,196,124,63,83,200,124,63,20,204,124,63,211,207,124,63,141,211,124,63,69,215,124,63,250,218,124,63,171,222,124,63,90,226,124,63,5,230,124,63,173,233,124,63,82,237,124,63,244,240,124,63,147,244,124,63,46,248,124,63,199,251,124,63,93,255,124,63,239,2,125,63,127,6,125,63,11,10,125,63,148,13,125,63,27,17,125,63,158,20,125,63,30,24,125,63,155,27,125,63,21,31,125,63,140,34,125,63,0,38,125,63,114,41,125,63,224,44,125,63,75,48,125,63,179,51,125,63,24,55,125,63,122,58,125,63,217,61,125,63,54,65,125,63,143,68,125,63,229,71,125,63,56,75,125,63,137,78,125,63,214,81,125,63,33,85,125,63,104,88,125,63,173,91,125,63,239,94,125,63,46,98,125,63,106,101,125,63,163,104,125,63,217,107,125,63,12,111,125,63,61,114,125,63,106,117,125,63,149,120,125,63,189,123,125,63,226,126,125,63,4,130,125,63,36,133,125,63,64,136,125,63,90,139,125,63,112,142,125,63,133,145,125,63,150,148,125,63,164,151,125,63,176,154,125,63,185,157,125,63,191,160,125,63,194,163,125,63,194,166,125,63,192,169,125,63,187,172,125,63,179,175,125,63,168,178,125,63,155,181,125,63,139,184,125,63,120,187,125,63,99,190,125,63,74,193,125,63,48,196,125,63,18,199,125,63,241,201,125,63,206,204,125,63,169,207,125,63,128,210,125,63,85,213,125,63,39,216,125,63,247,218,125,63,196,221,125,63,142,224,125,63,85,227,125,63,26,230,125,63,220,232,125,63,156,235,125,63,89,238,125,63,19,241,125,63,203,243,125,63,128,246,125,63,51,249,125,63,227,251,125,63,144,254,125,63,59,1,126,63,227,3,126,63,137,6,126,63,44,9,126,63,204,11,126,63,106,14,126,63,6,17,126,63,158,19,126,63,53,22,126,63,200,24,126,63,90,27,126,63,232,29,126,63,116,32,126,63,254,34,126,63,133,37,126,63,10,40,126,63,140,42,126,63,12,45,126,63,137,47,126,63,4,50,126,63,124,52,126,63,242,54,126,63,101,57,126,63,214,59,126,63,68,62,126,63,176,64,126,63,26,67,126,63,129,69,126,63,230,71,126,63,72,74,126,63,168,76,126,63,5,79,126,63,96,81,126,63,185,83,126,63,15,86,126,63,99,88,126,63,181,90,126,63,4,93,126,63,81,95,126,63,155,97,126,63,227,99,126,63,41,102,126,63,108,104,126,63,173,106,126,63,236,108,126,63,40,111,126,63,98,113,126,63,154,115,126,63,208,117,126,63,3,120,126,63,51,122,126,63,98,124,126,63,142,126,126,63,184,128,126,63,224,130,126,63,5,133,126,63,40,135,126,63,73,137,126,63,104,139,126,63,132,141,126,63,159,143,126,63,183,145,126,63,204,147,126,63,224,149,126,63,241,151,126,63,0,154,126,63,13,156,126,63,24,158,126,63,32,160,126,63,38,162,126,63,42,164,126,63,44,166,126,63,44,168,126,63,41,170,126,63,37,172,126,63,30,174,126,63,21,176,126,63,10,178,126,63,253,179,126,63,238,181,126,63,220,183,126,63,201,185,126,63,179,187,126,63,155,189,126,63,129,191,126,63,101,193,126,63,71,195,126,63,39,197,126,63,5,199,126,63,224,200,126,63,186,202,126,63,145,204,126,63,103,206,126,63,58,208,126,63,12,210,126,63,219,211,126,63,168,213,126,63,115,215,126,63,61,217,126,63,4,219,126,63,201,220,126,63,140,222,126,63,77,224,126,63,12,226,126,63,202,227,126,63,133,229,126,63,62,231,126,63,245,232,126,63,170,234,126,63,94,236,126,63,15,238,126,63,190,239,126,63,108,241,126,63,23,243,126,63,193,244,126,63,104,246,126,63,14,248,126,63,178,249,126,63,84,251,126,63,243,252,126,63,145,254,126,63,46,0,127,63,200,1,127,63,96,3,127,63,247,4,127,63,139,6,127,63,30,8,127,63,175,9,127,63,62,11,127,63,203,12,127,63,86,14,127,63,223,15,127,63,103,17,127,63,237,18,127,63,112,20,127,63,242,21,127,63,115,23,127,63,241,24,127,63,110,26,127,63,233,27,127,63,98,29,127,63,217,30,127,63,78,32,127,63,194,33,127,63,52,35,127,63,164,36,127,63,18,38,127,63,127,39,127,63,234,40,127,63,83,42,127,63,186,43,127,63,32,45,127,63,131,46,127,63,230,47,127,63,70,49,127,63,165,50,127,63,2,52,127,63,93,53,127,63,182,54,127,63,14,56,127,63,100,57,127,63,185,58,127,63,12,60,127,63,93,61,127,63,172,62,127,63,250,63,127,63,70,65,127,63,145,66,127,63,217,67,127,63,33,69,127,63,102,70,127,63,170,71,127,63,236,72,127,63,45,74,127,63,108,75,127,63,169,76,127,63,229,77,127,63,31,79,127,63,88,80,127,63,143,81,127,63,196,82,127,63,248,83,127,63,42,85,127,63,91,86,127,63,138,87,127,63,184,88,127,63,228,89,127,63,14,91,127,63,55,92,127,63,94,93,127,63,132,94,127,63,169,95,127,63,203,96,127,63,237,97,127,63,12,99,127,63,42,100,127,63,71,101,127,63,98,102,127,63,124,103,127,63,148,104,127,63,171,105,127,63,192,106,127,63,212,107,127,63,230,108,127,63,247,109,127,63,6,111,127,63,20,112,127,63,33,113,127,63,44,114,127,63,53,115,127,63,61,116,127,63,68,117,127,63,73,118,127,63,77,119,127,63,79,120,127,63,80,121,127,63,80,122,127,63,78,123,127,63,75,124,127,63,70,125,127,63,64,126,127,63,57,127,127,63,48,128,127,63,38,129,127,63,27,130,127,63,14,131,127,63,0,132,127,63,240,132,127,63,223,133,127,63,205,134,127,63,185,135,127,63,164,136,127,63,142,137,127,63,118,138,127,63,93,139,127,63,67,140,127,63,40,141,127,63,11,142,127,63,237,142,127,63,205,143,127,63,173,144,127,63,139,145,127,63,103,146,127,63,67,147,127,63,29,148,127,63,246,148,127,63,205,149,127,63,164,150,127,63,121,151,127,63,77,152,127,63,31,153,127,63,241,153,127,63,193,154,127,63,144,155,127,63,93,156,127,63,42,157,127,63,245,157,127,63,191,158,127,63,136,159,127,63,79,160,127,63,22,161,127,63,219,161,127,63,159,162,127,63,98,163,127,63,36,164,127,63,228,164,127,63,163,165,127,63,98,166,127,63,31,167,127,63,219,167,127,63,149,168,127,63,79,169,127,63,7,170,127,63,190,170,127,63,117,171,127,63,42,172,127,63,221,172,127,63,144,173,127,63,66,174,127,63,242,174,127,63,162,175,127,63,80,176,127,63,253,176,127,63,169,177,127,63,85,178,127,63,254,178,127,63,167,179,127,63,79,180,127,63,246,180,127,63,156,181,127,63,64,182,127,63,228,182,127,63,134,183,127,63,40,184,127,63,200,184,127,63,103,185,127,63,6,186,127,63,163,186,127,63,63,187,127,63,219,187,127,63,117,188,127,63,14,189,127,63,166,189,127,63,61,190,127,63,212,190,127,63,105,191,127,63,253,191,127,63,144,192,127,63,34,193,127,63,180,193,127,63,68,194,127,63,211,194,127,63,98,195,127,63,239,195,127,63,123,196,127,63,7,197,127,63,145,197,127,63,27,198,127,63,163,198,127,63,43,199,127,63,178,199,127,63,56,200,127,63,189,200,127,63,65,201,127,63,196,201,127,63,70,202,127,63,199,202,127,63,71,203,127,63,199,203,127,63,69,204,127,63,195,204,127,63,64,205,127,63,187,205,127,63,54,206,127,63,177,206,127,63,42,207,127,63,162,207,127,63,26,208,127,63,144,208,127,63,6,209,127,63,123,209,127,63,239,209,127,63,98,210,127,63,213,210,127,63,70,211,127,63,183,211,127,63,39,212,127,63,150,212,127,63,4,213,127,63,114,213,127,63],"i8",L3,F.GLOBAL_BASE+541176),d3([222,213,127,63,74,214,127,63,181,214,127,63,32,215,127,63,137,215,127,63,242,215,127,63,89,216,127,63,192,216,127,63,39,217,127,63,140,217,127,63,241,217,127,63,85,218,127,63,184,218,127,63,27,219,127,63,124,219,127,63,221,219,127,63,61,220,127,63,157,220,127,63,251,220,127,63,89,221,127,63,183,221,127,63,19,222,127,63,111,222,127,63,202,222,127,63,36,223,127,63,126,223,127,63,215,223,127,63,47,224,127,63,134,224,127,63,221,224,127,63,51,225,127,63,137,225,127,63,221,225,127,63,49,226,127,63,133,226,127,63,215,226,127,63,41,227,127,63,122,227,127,63,203,227,127,63,27,228,127,63,106,228,127,63,185,228,127,63,7,229,127,63,84,229,127,63,161,229,127,63,237,229,127,63,56,230,127,63,131,230,127,63,205,230,127,63,23,231,127,63,96,231,127,63,168,231,127,63,239,231,127,63,54,232,127,63,125,232,127,63,195,232,127,63,8,233,127,63,76,233,127,63,144,233,127,63,212,233,127,63,23,234,127,63,89,234,127,63,154,234,127,63,219,234,127,63,28,235,127,63,92,235,127,63,155,235,127,63,218,235,127,63,24,236,127,63,86,236,127,63,147,236,127,63,207,236,127,63,11,237,127,63,71,237,127,63,130,237,127,63,188,237,127,63,246,237,127,63,47,238,127,63,104,238,127,63,160,238,127,63,216,238,127,63,15,239,127,63,69,239,127,63,123,239,127,63,177,239,127,63,230,239,127,63,27,240,127,63,79,240,127,63,130,240,127,63,182,240,127,63,232,240,127,63,26,241,127,63,76,241,127,63,125,241,127,63,174,241,127,63,222,241,127,63,14,242,127,63,61,242,127,63,108,242,127,63,154,242,127,63,200,242,127,63,245,242,127,63,34,243,127,63,79,243,127,63,123,243,127,63,166,243,127,63,209,243,127,63,252,243,127,63,38,244,127,63,80,244,127,63,121,244,127,63,162,244,127,63,203,244,127,63,243,244,127,63,27,245,127,63,66,245,127,63,105,245,127,63,143,245,127,63,181,245,127,63,219,245,127,63,0,246,127,63,37,246,127,63,73,246,127,63,109,246,127,63,145,246,127,63,180,246,127,63,215,246,127,63,250,246,127,63,28,247,127,63,62,247,127,63,95,247,127,63,128,247,127,63,160,247,127,63,193,247,127,63,225,247,127,63,0,248,127,63,31,248,127,63,62,248,127,63,93,248,127,63,123,248,127,63,152,248,127,63,182,248,127,63,211,248,127,63,240,248,127,63,12,249,127,63,40,249,127,63,68,249,127,63,95,249,127,63,122,249,127,63,149,249,127,63,175,249,127,63,202,249,127,63,227,249,127,63,253,249,127,63,22,250,127,63,47,250,127,63,71,250,127,63,96,250,127,63,120,250,127,63,143,250,127,63,166,250,127,63,190,250,127,63,212,250,127,63,235,250,127,63,1,251,127,63,23,251,127,63,44,251,127,63,66,251,127,63,87,251,127,63,108,251,127,63,128,251,127,63,148,251,127,63,168,251,127,63,188,251,127,63,208,251,127,63,227,251,127,63,246,251,127,63,8,252,127,63,27,252,127,63,45,252,127,63,63,252,127,63,81,252,127,63,98,252,127,63,115,252,127,63,132,252,127,63,149,252,127,63,165,252,127,63,182,252,127,63,198,252,127,63,213,252,127,63,229,252,127,63,244,252,127,63,3,253,127,63,18,253,127,63,33,253,127,63,47,253,127,63,62,253,127,63,76,253,127,63,89,253,127,63,103,253,127,63,116,253,127,63,130,253,127,63,143,253,127,63,155,253,127,63,168,253,127,63,181,253,127,63,193,253,127,63,205,253,127,63,217,253,127,63,228,253,127,63,240,253,127,63,251,253,127,63,6,254,127,63,17,254,127,63,28,254,127,63,38,254,127,63,49,254,127,63,59,254,127,63,69,254,127,63,79,254,127,63,89,254,127,63,98,254,127,63,108,254,127,63,117,254,127,63,126,254,127,63,135,254,127,63,144,254,127,63,152,254,127,63,161,254,127,63,169,254,127,63,177,254,127,63,185,254,127,63,193,254,127,63,201,254,127,63,208,254,127,63,216,254,127,63,223,254,127,63,230,254,127,63,237,254,127,63,244,254,127,63,251,254,127,63,2,255,127,63,8,255,127,63,14,255,127,63,21,255,127,63,27,255,127,63,33,255,127,63,39,255,127,63,45,255,127,63,50,255,127,63,56,255,127,63,61,255,127,63,67,255,127,63,72,255,127,63,77,255,127,63,82,255,127,63,87,255,127,63,92,255,127,63,96,255,127,63,101,255,127,63,105,255,127,63,110,255,127,63,114,255,127,63,118,255,127,63,122,255,127,63,126,255,127,63,130,255,127,63,134,255,127,63,138,255,127,63,142,255,127,63,145,255,127,63,149,255,127,63,152,255,127,63,155,255,127,63,159,255,127,63,162,255,127,63,165,255,127,63,168,255,127,63,171,255,127,63,174,255,127,63,176,255,127,63,179,255,127,63,182,255,127,63,184,255,127,63,187,255,127,63,189,255,127,63,192,255,127,63,194,255,127,63,196,255,127,63,198,255,127,63,201,255,127,63,203,255,127,63,205,255,127,63,207,255,127,63,209,255,127,63,210,255,127,63,212,255,127,63,214,255,127,63,216,255,127,63,217,255,127,63,219,255,127,63,220,255,127,63,222,255,127,63,223,255,127,63,225,255,127,63,226,255,127,63,227,255,127,63,229,255,127,63,230,255,127,63,231,255,127,63,232,255,127,63,233,255,127,63,234,255,127,63,235,255,127,63,236,255,127,63,237,255,127,63,238,255,127,63,239,255,127,63,240,255,127,63,241,255,127,63,241,255,127,63,242,255,127,63,243,255,127,63,244,255,127,63,244,255,127,63,245,255,127,63,246,255,127,63,246,255,127,63,247,255,127,63,247,255,127,63,248,255,127,63,248,255,127,63,249,255,127,63,249,255,127,63,250,255,127,63,250,255,127,63,250,255,127,63,251,255,127,63,251,255,127,63,251,255,127,63,252,255,127,63,252,255,127,63,252,255,127,63,253,255,127,63,253,255,127,63,253,255,127,63,253,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,69,78,67,79,68,69,82,0,79,103,103,86,111,114,98,105,115,69,110,99,111,100,101,114,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"i8",L3,F.GLOBAL_BASE+551416);var p8=F.alignMemory(d3(12,"i8",xs),8);V4(p8%8==0);function zm(i){H9[p8]=H9[i],H9[p8+1]=H9[i+1],H9[p8+2]=H9[i+2],H9[p8+3]=H9[i+3]}function gr(i){H9[p8]=H9[i],H9[p8+1]=H9[i+1],H9[p8+2]=H9[i+2],H9[p8+3]=H9[i+3],H9[p8+4]=H9[i+4],H9[p8+5]=H9[i+5],H9[p8+6]=H9[i+6],H9[p8+7]=H9[i+7]}var Yi=Vm,Po=H$,Us=0;function Os(i){return D9[Us>>2]=i,i}var L2={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function Ip(i){switch(i){case 30:return qm;case 85:return Gr/qm;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return typeof navigator=="object"&&navigator.hardwareConcurrency||1}return Os(L2.EINVAL),-1}A._memset=sv;var dp=!0;A._strlen=tv,A._strcat=iv,A._bitshift64Shl=$v;function wk(){A.abort()}A._i64Add=rv;var kk=Le,vk={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"},Rn={ttys:[],init:function(){},shutdown:function(){},register:function(i,$){Rn.ttys[i]={input:[],output:[],ops:$},k.registerDevice(i,Rn.stream_ops)},stream_ops:{open:function(i){var $=Rn.ttys[i.node.rdev];if(!$)throw new k.ErrnoError(L2.ENODEV);i.tty=$,i.seekable=!1},close:function(i){i.tty.ops.flush(i.tty)},flush:function(i){i.tty.ops.flush(i.tty)},read:function(i,$,h,u,O){if(!i.tty||!i.tty.ops.get_char)throw new k.ErrnoError(L2.ENXIO);for(var e=0,Z0=0;Z00?$=u.slice(0,O).toString("utf-8"):$=null}else typeof window<"u"&&typeof window.prompt=="function"?($=window.prompt("Input: "),$!==null&&($+=` +`)});var b0=void 0,m0=void 0;A.read=function($,h){$=m0.normalize($);var u=b0.readFileSync($);return!u&&$!=m0.resolve($)&&($=path.join(__dirname,"..","src",$),u=b0.readFileSync($)),u&&!h&&(u=u.toString()),u},A.readBinary=function($){return A.read($,!0)},A.load=function($){m1(read($))},A.thisProgram||(process.argv.length>1?A.thisProgram=process.argv[1].replace(/\\/g,"/"):A.thisProgram="unknown-program"),A.arguments=process.argv.slice(2),typeof module<"u"&&A!=null,process.on("uncaughtException",function(i){if(!(i instanceof Ho))throw i}),A.inspect=function(){return"[Emscripten Module object]"}}else if(I0)A.print||(A.print=print),typeof printErr<"u"&&(A.printErr=printErr),typeof read<"u"?A.read=read:A.read=function(){throw"no read() available (jsc?)"},A.readBinary=function($){if(typeof readbuffer=="function")return new Uint8Array(readbuffer($));var h=read($,"binary");return K4(typeof h=="object"),h},typeof scriptArgs<"u"?A.arguments=scriptArgs:typeof arguments<"u"&&(A.arguments=arguments);else if(g||b){if(A.read=function($){var h=new XMLHttpRequest;return h.open("GET",$,!1),h.send(null),h.responseText},typeof arguments<"u"&&(A.arguments=arguments),typeof console<"u")A.print||(A.print=function($){console.log($)}),A.printErr||(A.printErr=function($){console.log($)});else{var q0=!1;A.print||(A.print=q0&&typeof dump<"u"?function(i){dump(i)}:function(i){})}b&&(A.load=importScripts),typeof A.setWindowTitle>"u"&&(A.setWindowTitle=function(i){document.title=i})}else throw"Unknown runtime environment. Where are we?";function m1(i){eval.call(null,i)}!A.load&&A.read&&(A.load=function($){m1(A.read($))}),A.print||(A.print=function(){}),A.printErr||(A.printErr=A.print),A.arguments||(A.arguments=[]),A.thisProgram||(A.thisProgram="./this.program"),A.print=A.print,A.printErr=A.printErr,A.preRun=[],A.postRun=[];for(var l in r)r.hasOwnProperty(l)&&(A[l]=r[l]);var x={setTempRet0:function(i){F9=i},getTempRet0:function(){return F9},stackSave:function(){return Ei},stackRestore:function(i){Ei=i},getNativeTypeSize:function(i){switch(i){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(i[i.length-1]==="*")return x.QUANTUM_SIZE;if(i[0]==="i"){var $=parseInt(i.substr(1));return K4($%8===0),$/8}else return 0}}},getNativeFieldSize:function(i){return Math.max(x.getNativeTypeSize(i),x.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(i,$){return $==="double"||$==="i64"?i&7&&(K4((i&7)===4),i+=4):K4((i&3)===0),i},getAlignSize:function(i,$,h){return!h&&(i=="i64"||i=="double")?8:i?Math.min($||(i?x.getNativeFieldSize(i):0),x.QUANTUM_SIZE):Math.min($,8)},dynCall:function(i,$,h){return h&&h.length?(h.splice||(h=Array.prototype.slice.call(h)),h.splice(0,0,$),A["dynCall_"+i].apply(null,h)):A["dynCall_"+i].call(null,$)},functionPointers:[],addFunction:function(i){for(var $=0;$=Ts){var h=Ym();if(!h)return _i=$,0}return $},alignMemory:function(i,$){var h=i=Math.ceil(i/($||16))*($||16);return h},makeBigInt:function(i,$,h){var u=h?+(i>>>0)+ +($>>>0)*4294967296:+(i>>>0)+ +($|0)*4294967296;return u},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};A.Runtime=x;var j0=0,K0=!1,F1=0,B2=0,b1,_5,v2,J2,n3,U5,a0,J5,n6,c6,O6,g6,u4,Ke,R4,F9,_t,To,Go,ep,S$,tp,SC,pk,Qk;function K4(i,$){i||Ps("Assertion failed: "+$)}var yk=this;function Hm(i){var $=A["_"+i];if(!$)try{$=void("_"+i)}catch{}return K4($,"Cannot call unknown function "+i+" (perhaps LLVM optimizations or closure removed it?)"),$}var D$,No;(function(){var i={stackSave:function(){x.stackSave()},stackRestore:function(){x.stackRestore()},arrayToC:function(Z0){var t1=x.stackAlloc(Z0.length);return Oo(Z0,t1),t1},stringToC:function(Z0){var t1=0;return Z0!=null&&Z0!==0&&(t1=x.stackAlloc((Z0.length<<2)+1),Ns(Z0,t1)),t1}},$={string:i.stringToC,array:i.arrayToC};No=function(t1,b2,s,o1,m){var Q5=Hm(t1),p2=[],M5=0;if(o1)for(var b9=0;b9>0]=$;break;case"i8":q9[i>>0]=$;break;case"i16":Mr[i>>1]=$;break;case"i32":D9[i>>2]=$;break;case"i64":Ke=[$>>>0,(g6=$,+H$(g6)>=1?g6>0?(xt(+Fe(g6/4294967296),4294967295)|0)>>>0:~~+E7((g6-+(~~g6>>>0))/4294967296)>>>0:0)],D9[i>>2]=Ke[0],D9[i+4>>2]=Ke[1];break;case"float":Y$[i>>2]=$;break;case"double":x$[i>>3]=$;break;default:Ps("invalid type for setValue: "+h)}}A.setValue=Ch;function lr(i,$,h){switch($=$||"i8",$.charAt($.length-1)==="*"&&($="i32"),$){case"i1":return q9[i>>0];case"i8":return q9[i>>0];case"i16":return Mr[i>>1];case"i32":return D9[i>>2];case"i64":return D9[i>>2];case"float":return Y$[i>>2];case"double":return x$[i>>3];default:Ps("invalid type for setValue: "+$)}return null}A.getValue=lr;var Uo=0,DC=1,xs=2,mh=3,L3=4;A.ALLOC_NORMAL=Uo,A.ALLOC_STACK=DC,A.ALLOC_STATIC=xs,A.ALLOC_DYNAMIC=mh,A.ALLOC_NONE=L3;function d3(i,$,h,u){var O,e;typeof i=="number"?(O=!0,e=i):(O=!1,e=i.length);var Z0=typeof $=="string"?$:null,t1;if(h==L3?t1=u:t1=[Sh,x.stackAlloc,x.staticAlloc,x.dynamicAlloc][h===void 0?xs:h](Math.max(e,Z0?1:$.length)),O){var u=t1,b2;for(K4((t1&3)==0),b2=t1+(e&-4);u>2]=0;for(b2=t1+e;u>0]=0;return t1}if(Z0==="i8")return i.subarray||i.slice?Ci.set(i,t1):Ci.set(new Uint8Array(i),t1),t1;for(var s=0,o1,m,Q5;s>0],h|=u,!(u==0&&!$||(O++,$&&O==$)););$||($=O);var e="";if(h<128){for(var Z0=1024,t1;$>0;)t1=String.fromCharCode.apply(String,Ci.subarray(i,i+Math.min($,Z0))),e=e?e+t1:t1,i+=Z0,$-=Z0;return e}return A.UTF8ToString(i)}A.Pointer_stringify=b$;function _$(i){for(var $="";;){var h=q9[i++>>0];if(!h)return $;$+=String.fromCharCode(h)}}A.AsciiToString=_$;function rp(i,$){return O$(i,$,!1)}A.stringToAscii=rp;function Fs(i,$){for(var h,u,O,e,Z0,t1,b2="";;){if(h=i[$++],!h)return b2;if(!(h&128)){b2+=String.fromCharCode(h);continue}if(u=i[$++]&63,(h&224)==192){b2+=String.fromCharCode((h&31)<<6|u);continue}if(O=i[$++]&63,(h&240)==224?h=(h&15)<<12|u<<6|O:(e=i[$++]&63,(h&248)==240?h=(h&7)<<18|u<<12|O<<6|e:(Z0=i[$++]&63,(h&252)==248?h=(h&3)<<24|u<<18|O<<12|e<<6|Z0:(t1=i[$++]&63,h=(h&1)<<30|u<<24|O<<18|e<<12|Z0<<6|t1))),h<65536)b2+=String.fromCharCode(h);else{var s=h-65536;b2+=String.fromCharCode(55296|s>>10,56320|s&1023)}}}A.UTF8ArrayToString=Fs;function bC(i){return Fs(Ci,i)}A.UTF8ToString=bC;function Dn(i,$,h,u){if(!(u>0))return 0;for(var O=h,e=h+u-1,Z0=0;Z0=55296&&t1<=57343&&(t1=65536+((t1&1023)<<10)|i.charCodeAt(++Z0)&1023),t1<=127){if(h>=e)break;$[h++]=t1}else if(t1<=2047){if(h+1>=e)break;$[h++]=192|t1>>6,$[h++]=128|t1&63}else if(t1<=65535){if(h+2>=e)break;$[h++]=224|t1>>12,$[h++]=128|t1>>6&63,$[h++]=128|t1&63}else if(t1<=2097151){if(h+3>=e)break;$[h++]=240|t1>>18,$[h++]=128|t1>>12&63,$[h++]=128|t1>>6&63,$[h++]=128|t1&63}else if(t1<=67108863){if(h+4>=e)break;$[h++]=248|t1>>24,$[h++]=128|t1>>18&63,$[h++]=128|t1>>12&63,$[h++]=128|t1>>6&63,$[h++]=128|t1&63}else{if(h+5>=e)break;$[h++]=252|t1>>30,$[h++]=128|t1>>24&63,$[h++]=128|t1>>18&63,$[h++]=128|t1>>12&63,$[h++]=128|t1>>6&63,$[h++]=128|t1&63}}return $[h]=0,h-O}A.stringToUTF8Array=Dn;function _C(i,$,h){return Dn(i,Ci,$,h)}A.stringToUTF8=_C;function Ls(i){for(var $=0,h=0;h=55296&&u<=57343&&(u=65536+((u&1023)<<10)|i.charCodeAt(++h)&1023),u<=127?++$:u<=2047?$+=2:u<=65535?$+=3:u<=2097151?$+=4:u<=67108863?$+=5:$+=6}return $}A.lengthBytesUTF8=Ls;function RC(i){for(var $=0,h="";;){var u=Mr[i+$*2>>1];if(u==0)return h;++$,h+=String.fromCharCode(u)}}A.UTF16ToString=RC;function np(i,$,h){if(h===void 0&&(h=2147483647),h<2)return 0;h-=2;for(var u=$,O=h>1]=Z0,$+=2}return Mr[$>>1]=0,$-u}A.stringToUTF16=np;function sp(i){return i.length*2}A.lengthBytesUTF16=sp;function Ap(i){for(var $=0,h="";;){var u=D9[i+$*4>>2];if(u==0)return h;if(++$,u>=65536){var O=u-65536;h+=String.fromCharCode(55296|O>>10,56320|O&1023)}else h+=String.fromCharCode(u)}}A.UTF32ToString=Ap;function op(i,$,h){if(h===void 0&&(h=2147483647),h<4)return 0;for(var u=$,O=u+h-4,e=0;e=55296&&Z0<=57343){var t1=i.charCodeAt(++e);Z0=65536+((Z0&1023)<<10)|t1&1023}if(D9[$>>2]=Z0,$+=4,$+4>O)break}return D9[$>>2]=0,$-u}A.stringToUTF32=op;function ap(i){for(var $=0,h=0;h=55296&&u<=57343&&++h,$+=4}return $}A.lengthBytesUTF32=ap;function $p(i){var $=!!A.___cxa_demangle;if($)try{var h=Sh(i.length);Ns(i.substr(1),h);var u=Sh(4),O=A.___cxa_demangle(h,0,0,u);if(lr(u,"i32")===0&&O)return b$(O)}catch{}finally{h&&Zm(h),u&&Zm(u),O&&Zm(O)}var e=3,Z0={v:"void",b:"bool",c:"char",s:"short",i:"int",l:"long",f:"float",d:"double",w:"wchar_t",a:"signed char",h:"unsigned char",t:"unsigned short",j:"unsigned int",m:"unsigned long",x:"long long",y:"unsigned long long",z:"..."},t1=[],b2=!0;function s(p2){p2&&A.print(p2),A.print(i);for(var M5="",b9=0;b9"}else O9=K9;e:for(;e0;){var hr=i[e++];if(hr in Z0)I4.push(Z0[hr]);else switch(hr){case"P":I4.push(m(!0,1,!0)[0]+"*");break;case"R":I4.push(m(!0,1,!0)[0]+"&");break;case"L":{e++;var K$=i.indexOf("E",e),c8=K$-e;I4.push(i.substr(e,c8)),e+=c8+2;break}case"A":{var c8=parseInt(i.substr(e));if(e+=c8.toString().length,i[e]!=="_")throw"?";e++,I4.push(m(!0,1,!0)[0]+" ["+c8+"]");break}case"E":break e;default:O9+="?"+hr;break e}}return!b9&&I4.length===1&&I4[0]==="void"&&(I4=[]),p2?(O9&&I4.push(O9+"?"),I4):O9+Q8()}var Q5=i;try{if(i=="Object._main"||i=="_main")return"main()";if(typeof i=="number"&&(i=b$(i)),i[0]!=="_"||i[1]!=="_"||i[2]!=="Z")return i;switch(i[3]){case"n":return"operator new()";case"d":return"operator delete()"}Q5=m()}catch{Q5+="?"}return Q5.indexOf("?")>=0&&!$&&x.warnOnce("warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),Q5}function lp(i){return i.replace(/__Z[\w\d_]+/g,function($){var h=$p($);return $===h?$:$+" ["+h+"]"})}function cp(){var i=new Error;if(!i.stack){try{throw new Error(0)}catch($){i=$}if(!i.stack)return"(no stack trace available)"}return i.stack.toString()}function xC(){return lp(cp())}A.stackTrace=xC;var qm=4096;function Bh(i){return i%4096>0&&(i+=4096-i%4096),i}var FC,q9,Ci,Mr,R$,D9,q$,Y$,x$,Ms=0,Tr=0,F$=!1,ph=0,Ei=0,L$=0,M$=0,_i=0;function Ym(){Ps("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+Ts+", (2) compile with ALLOW_MEMORY_GROWTH which adjusts the size at runtime but prevents some optimizations, or (3) set Module.TOTAL_MEMORY before the program runs.")}for(var LC=A.TOTAL_STACK||5242880,Ts=A.TOTAL_MEMORY||16777216,Gr=64*1024;Gr0;){var $=i.shift();if(typeof $=="function"){$();continue}var h=$.func;typeof h=="number"?$.arg===void 0?x.dynCall("v",h):x.dynCall("vi",h,[$.arg]):h($.arg===void 0?null:$.arg)}}var MC=[],G$=[],Qh=[],N$=[],yh=[],wh=!1,bn=!1;function kh(){if(A.preRun)for(typeof A.preRun=="function"&&(A.preRun=[A.preRun]);A.preRun.length;)Rt(A.preRun.shift());T$(MC)}function Gs(){wh||(wh=!0,T$(G$))}function gp(){T$(Qh)}function TC(){T$(N$),bn=!0}function U$(){if(A.postRun)for(typeof A.postRun=="function"&&(A.postRun=[A.postRun]);A.postRun.length;)Jm(A.postRun.shift());T$(yh)}function Rt(i){MC.unshift(i)}A.addOnPreRun=A.addOnPreRun=Rt;function hp(i){G$.unshift(i)}A.addOnInit=A.addOnInit=hp;function fp(i){Qh.unshift(i)}A.addOnPreMain=A.addOnPreMain=fp;function up(i){N$.unshift(i)}A.addOnExit=A.addOnExit=up;function Jm(i){yh.unshift(i)}A.addOnPostRun=A.addOnPostRun=Jm;function Nr(i,$,h){var u=h>0?h:Ls(i)+1,O=new Array(u),e=Dn(i,O,0,O.length);return $&&(O.length=e),O}A.intArrayFromString=Nr;function Km(i){for(var $=[],h=0;h255&&(u&=255),$.push(String.fromCharCode(u))}return $.join("")}A.intArrayToString=Km;function Ns(i,$,h){for(var u=Nr(i,h),O=0;O>0]=e,O=O+1}}A.writeStringToMemory=Ns;function Oo(i,$){for(var h=0;h>0]=i[h]}A.writeArrayToMemory=Oo;function O$(i,$,h){for(var u=0;u>0]=i.charCodeAt(u);h||(q9[$>>0]=0)}A.writeAsciiToMemory=O$;function GC(i,$,h){return i>=0?i:$<=32?2*Math.abs(1<<$-1)+i:Math.pow(2,$)+i}function P$(i,$,h){if(i<=0)return i;var u=$<=32?Math.abs(1<<$-1):Math.pow(2,$-1);return i>=u&&($<=32||i>u)&&(i=-2*u+i),i}(!Math.imul||Math.imul(4294967295,5)!==-5)&&(Math.imul=function($,h){var u=$>>>16,O=$&65535,e=h>>>16,Z0=h&65535;return O*Z0+(u*Z0+O*e<<16)|0}),Math.imul=Math.imul,Math.clz32||(Math.clz32=function(i){i=i>>>0;for(var $=0;$<32;$++)if(i&1<<31-$)return $;return 32}),Math.clz32=Math.clz32;var H$=Math.abs,Vm=Math.cos,qi=Math.sin,_0=Math.tan,X0=Math.acos,C1=Math.asin,D2=Math.atan,K3=Math.atan2,l9=Math.exp,Y9=Math.log,h6=Math.sqrt,E7=Math.ceil,Fe=Math.floor,Ve=Math.pow,ye=Math.imul,c9=Math.fround,xt=Math.min,xi=Math.clz32,C7=0,Ft=null,Fi=null;function Li(i){return i}function _n(i){C7++,A.monitorRunDependencies&&A.monitorRunDependencies(C7)}A.addRunDependency=_n;function cr(i){if(C7--,A.monitorRunDependencies&&A.monitorRunDependencies(C7),C7==0&&(Ft!==null&&(clearInterval(Ft),Ft=null),Fi)){var $=Fi;Fi=null,$()}}A.removeRunDependency=cr,A.preloadedImages={},A.preloadedAudios={};var NC=null,vh=[];Ms=8,Tr=Ms+553552,G$.push(),d3([0,0,0,0,1,0,0,0,3,0,0,0,7,0,0,0,15,0,0,0,31,0,0,0,63,0,0,0,127,0,0,0,255,0,0,0,255,1,0,0,255,3,0,0,255,7,0,0,255,15,0,0,255,31,0,0,255,63,0,0,255,127,0,0,255,255,0,0,255,255,1,0,255,255,3,0,255,255,7,0,255,255,15,0,255,255,31,0,255,255,63,0,255,255,127,0,255,255,255,0,255,255,255,1,255,255,255,3,255,255,255,7,255,255,255,15,255,255,255,31,255,255,255,63,255,255,255,127,255,255,255,255,0,0,0,0,0,0,0,0,183,29,193,4,110,59,130,9,217,38,67,13,220,118,4,19,107,107,197,23,178,77,134,26,5,80,71,30,184,237,8,38,15,240,201,34,214,214,138,47,97,203,75,43,100,155,12,53,211,134,205,49,10,160,142,60,189,189,79,56,112,219,17,76,199,198,208,72,30,224,147,69,169,253,82,65,172,173,21,95,27,176,212,91,194,150,151,86,117,139,86,82,200,54,25,106,127,43,216,110,166,13,155,99,17,16,90,103,20,64,29,121,163,93,220,125,122,123,159,112,205,102,94,116,224,182,35,152,87,171,226,156,142,141,161,145,57,144,96,149,60,192,39,139,139,221,230,143,82,251,165,130,229,230,100,134,88,91,43,190,239,70,234,186,54,96,169,183,129,125,104,179,132,45,47,173,51,48,238,169,234,22,173,164,93,11,108,160,144,109,50,212,39,112,243,208,254,86,176,221,73,75,113,217,76,27,54,199,251,6,247,195,34,32,180,206,149,61,117,202,40,128,58,242,159,157,251,246,70,187,184,251,241,166,121,255,244,246,62,225,67,235,255,229,154,205,188,232,45,208,125,236,119,112,134,52,192,109,71,48,25,75,4,61,174,86,197,57,171,6,130,39,28,27,67,35,197,61,0,46,114,32,193,42,207,157,142,18,120,128,79,22,161,166,12,27,22,187,205,31,19,235,138,1,164,246,75,5,125,208,8,8,202,205,201,12,7,171,151,120,176,182,86,124,105,144,21,113,222,141,212,117,219,221,147,107,108,192,82,111,181,230,17,98,2,251,208,102,191,70,159,94,8,91,94,90,209,125,29,87,102,96,220,83,99,48,155,77,212,45,90,73,13,11,25,68,186,22,216,64,151,198,165,172,32,219,100,168,249,253,39,165,78,224,230,161,75,176,161,191,252,173,96,187,37,139,35,182,146,150,226,178,47,43,173,138,152,54,108,142,65,16,47,131,246,13,238,135,243,93,169,153,68,64,104,157,157,102,43,144,42,123,234,148,231,29,180,224,80,0,117,228,137,38,54,233,62,59,247,237,59,107,176,243,140,118,113,247,85,80,50,250,226,77,243,254,95,240,188,198,232,237,125,194,49,203,62,207,134,214,255,203,131,134,184,213,52,155,121,209,237,189,58,220,90,160,251,216,238,224,12,105,89,253,205,109,128,219,142,96,55,198,79,100,50,150,8,122,133,139,201,126,92,173,138,115,235,176,75,119,86,13,4,79,225,16,197,75,56,54,134,70,143,43,71,66,138,123,0,92,61,102,193,88,228,64,130,85,83,93,67,81,158,59,29,37,41,38,220,33,240,0,159,44,71,29,94,40,66,77,25,54,245,80,216,50,44,118,155,63,155,107,90,59,38,214,21,3,145,203,212,7,72,237,151,10,255,240,86,14,250,160,17,16,77,189,208,20,148,155,147,25,35,134,82,29,14,86,47,241,185,75,238,245,96,109,173,248,215,112,108,252,210,32,43,226,101,61,234,230,188,27,169,235,11,6,104,239,182,187,39,215,1,166,230,211,216,128,165,222,111,157,100,218,106,205,35,196,221,208,226,192,4,246,161,205,179,235,96,201,126,141,62,189,201,144,255,185,16,182,188,180,167,171,125,176,162,251,58,174,21,230,251,170,204,192,184,167,123,221,121,163,198,96,54,155,113,125,247,159,168,91,180,146,31,70,117,150,26,22,50,136,173,11,243,140,116,45,176,129,195,48,113,133,153,144,138,93,46,141,75,89,247,171,8,84,64,182,201,80,69,230,142,78,242,251,79,74,43,221,12,71,156,192,205,67,33,125,130,123,150,96,67,127,79,70,0,114,248,91,193,118,253,11,134,104,74,22,71,108,147,48,4,97,36,45,197,101,233,75,155,17,94,86,90,21,135,112,25,24,48,109,216,28,53,61,159,2,130,32,94,6,91,6,29,11,236,27,220,15,81,166,147,55,230,187,82,51,63,157,17,62,136,128,208,58,141,208,151,36,58,205,86,32,227,235,21,45,84,246,212,41,121,38,169,197,206,59,104,193,23,29,43,204,160,0,234,200,165,80,173,214,18,77,108,210,203,107,47,223,124,118,238,219,193,203,161,227,118,214,96,231,175,240,35,234,24,237,226,238,29,189,165,240,170,160,100,244,115,134,39,249,196,155,230,253,9,253,184,137,190,224,121,141,103,198,58,128,208,219,251,132,213,139,188,154,98,150,125,158,187,176,62,147,12,173,255,151,177,16,176,175,6,13,113,171,223,43,50,166,104,54,243,162,109,102,180,188,218,123,117,184,3,93,54,181,180,64,247,177,1,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,88,105,112,104,46,79,114,103,32,108,105,98,86,111,114,98,105,115,32,73,32,50,48,49,53,48,49,48,53,32,40,226,155,132,226,155,132,226,155,132,226,155,132,41,0,0,0,0,1,0,0,0,4,0,0,0,3,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,0,0,76,194,0,0,80,194,0,0,84,194,0,0,88,194,0,0,92,194,0,0,96,194,0,0,100,194,0,0,104,194,0,0,108,194,0,0,112,194,0,0,116,194,0,0,120,194,0,0,124,194,0,0,128,194,0,0,130,194,0,0,132,194,0,0,134,194,0,0,136,194,0,0,138,194,0,0,140,194,0,0,142,194,0,0,144,194,0,0,146,194,0,0,148,194,0,0,150,194,0,0,152,194,0,0,154,194,0,0,156,194,0,0,160,194,0,0,162,194,0,0,164,194,0,0,166,194,0,0,168,194,0,0,170,194,0,0,172,194,0,0,174,194,0,0,176,194,0,0,176,194,0,0,178,194,0,0,178,194,0,0,180,194,0,0,182,194,0,0,182,194,0,0,184,194,0,0,186,194,0,0,188,194,0,0,190,194,0,0,192,194,0,0,192,194,0,0,194,194,0,0,196,194,0,0,196,194,0,0,198,194,0,0,198,194,0,0,200,194,0,0,200,194,0,0,202,194,0,0,204,194,0,0,206,194,0,0,208,194,0,0,212,194,0,0,214,194,0,0,214,194,0,0,214,194,0,0,214,194,0,0,210,194,0,0,206,194,0,0,204,194,0,0,202,194,0,0,198,194,0,0,196,194,0,0,192,194,0,0,190,194,0,0,190,194,0,0,192,194,0,0,194,194,0,0,192,194,0,0,190,194,0,0,186,194,0,0,180,194,0,0,160,194,0,0,140,194,0,0,72,194,0,0,32,194,0,0,240,193,0,0,240,193,0,0,240,193,0,0,240,193,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,4,64,0,0,0,0,0,0,18,64,0,0,0,0,0,0,33,64,0,0,0,0,0,128,48,64,0,0,0,4,107,244,52,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,4,64,0,0,0,0,0,0,18,64,0,0,0,0,0,0,33,64,0,0,0,4,107,244,52,66,62,180,228,51,9,145,243,51,139,178,1,52,60,32,10,52,35,26,19,52,96,169,28,52,167,215,38,52,75,175,49,52,80,59,61,52,112,135,73,52,35,160,86,52,184,146,100,52,85,109,115,52,136,159,129,52,252,11,138,52,147,4,147,52,105,146,156,52,50,191,166,52,63,149,177,52,147,31,189,52,228,105,201,52,173,128,214,52,54,113,228,52,166,73,243,52,136,140,1,53,192,247,9,53,6,239,18,53,118,123,28,53,192,166,38,53,55,123,49,53,218,3,61,53,94,76,73,53,59,97,86,53,185,79,100,53,252,37,115,53,138,121,129,53,134,227,137,53,124,217,146,53,133,100,156,53,82,142,166,53,51,97,177,53,37,232,188,53,220,46,201,53,206,65,214,53,65,46,228,53,87,2,243,53,143,102,1,54,79,207,9,54,245,195,18,54,152,77,28,54,232,117,38,54,50,71,49,54,116,204,60,54,94,17,73,54,101,34,86,54,206,12,100,54,184,222,114,54,151,83,129,54,28,187,137,54,114,174,146,54,175,54,156,54,129,93,166,54,53,45,177,54,199,176,188,54,228,243,200,54,1,3,214,54,96,235,227,54,30,187,242,54,162,64,1,55,235,166,9,55,241,152,18,55,201,31,28,55,30,69,38,55,61,19,49,55,30,149,60,55,111,214,72,55,162,227,85,55,247,201,99,55,137,151,114,55,175,45,129,55,190,146,137,55,116,131,146,55,230,8,156,55,190,44,166,55,71,249,176,55,121,121,188,55,254,184,200,55,71,196,213,55,146,168,227,55,248,115,242,55,192,26,1,56,147,126,9,56,249,109,18,56,6,242,27,56,98,20,38,56,86,223,48,56,216,93,60,56,146,155,72,56,242,164,85,56,51,135,99,56,110,80,114,56,211,7,129,56,107,106,137,56,130,88,146,56,42,219,155,56,9,252,165,56,104,197,176,56,59,66,188,56,41,126,200,56,160,133,213,56,217,101,227,56,232,44,242,56,233,244,0,57,70,86,9,57,14,67,18,57,81,196,27,57,181,227,37,57,127,171,48,57,162,38,60,57,197,96,72,57,83,102,85,57,131,68,99,57,104,9,114,57,1,226,128,57,36,66,137,57,157,45,146,57,123,173,155,57,99,203,165,57,153,145,176,57,13,11,188,57,102,67,200,57,11,71,213,57,50,35,227,57,237,229,241,57,29,207,0,58,5,46,9,58,48,24,18,58,169,150,27,58,21,179,37,58,183,119,48,58,124,239,59,58,10,38,72,58,199,39,85,58,230,1,99,58,120,194,113,58,59,188,128,58,233,25,137,58,198,2,146,58,219,127,155,58,203,154,165,58,216,93,176,58,239,211,187,58,179,8,200,58,136,8,213,58,159,224,226,58,7,159,241,58,92,169,0,59,208,5,9,59,94,237,17,59,15,105,27,59,132,130,37,59,253,67,48,59,103,184,59,59,97,235,71,59,77,233,84,59,93,191,98,59,156,123,113,59,127,150,128,59,186,241,136,59,249,215,145,59,71,82,155,59,65,106,165,59,39,42,176,59,226,156,187,59,18,206,199,59,23,202,212,59,32,158,226,59,53,88,241,59,166,131,0,60,167,221,8,60,152,194,17,60,130,59,27,60,1,82,37,60,84,16,48,60,97,129,59,60,200,176,71,60,229,170,84,60,232,124,98,60,212,52,113,60,207,112,128,60,150,201,136,60,58,173,145,60,192,36,155,60,197,57,165,60,133,246,175,60,229,101,187,60,130,147,199,60,185,139,212,60,180,91,226,60,121,17,241,60,251,93,0,61,137,181,8,61,223,151,17,61,2,14,27,61,141,33,37,61,185,220,47,61,109,74,59,61,64,118,71,61,145,108,84,61,133,58,98,61,34,238,112,61,42,75,128,61,127,161,136,61,136,130,145,61,72,247,154,61,88,9,165,61,242,194,175,61,248,46,187,61,3,89,199,61,109,77,212,61,92,25,226,61,209,202,240,61,91,56,0,62,119,141,8,62,51,109,17,62,144,224,26,62,39,241,36,62,46,169,47,62,135,19,59,62,202,59,71,62,77,46,84,62,55,248,97,62,132,167,112,62,143,37,128,62,115,121,136,62,226,87,145,62,220,201,154,62,249,216,164,62,109,143,175,62,27,248,186,62,149,30,199,62,51,15,212,62,23,215,225,62,61,132,240,62,198,18,0,63,114,101,8,63,147,66,17,63,43,179,26,63,206,192,36,63,177,117,47,63,178,220,58,63,101,1,71,63,29,240,83,63,251,181,97,63,251,96,112,63,0,0,128,63,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,120,194,0,0,120,194,0,0,130,194,0,0,146,194,0,0,138,194,0,0,136,194,0,0,136,194,0,0,134,194,0,0,140,194,0,0,140,194,0,0,144,194,0,0,148,194,0,0,150,194,0,0,158,194,0,0,158,194,0,0,160,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,84,194,0,0,116,194,0,0,132,194,0,0,132,194,0,0,136,194,0,0,134,194,0,0,140,194,0,0,152,194,0,0,152,194,0,0,144,194,0,0,146,194,0,0,150,194,0,0,152,194,0,0,156,194,0,0,158,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,24,194,0,0,32,194,0,0,40,194,0,0,56,194,0,0,64,194,0,0,84,194,0,0,92,194,0,0,120,194,0,0,130,194,0,0,104,194,0,0,96,194,0,0,96,194,0,0,116,194,0,0,112,194,0,0,130,194,0,0,134,194,0,0,138,194,0,0,142,194,0,0,154,194,0,0,154,194,0,0,156,194,0,0,160,194,0,0,164,194,0,0,168,194,0,0,176,194,0,0,186,194,0,0,196,194,0,0,212,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,208,193,0,0,216,193,0,0,232,193,0,0,0,194,0,0,24,194,0,0,64,194,0,0,80,194,0,0,80,194,0,0,72,194,0,0,64,194,0,0,64,194,0,0,76,194,0,0,80,194,0,0,88,194,0,0,112,194,0,0,134,194,0,0,134,194,0,0,132,194,0,0,136,194,0,0,138,194,0,0,146,194,0,0,146,194,0,0,152,194,0,0,160,194,0,0,162,194,0,0,162,194,0,0,170,194,0,0,170,194,0,0,172,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,136,193,0,0,152,193,0,0,160,193,0,0,176,193,0,0,208,193,0,0,224,193,0,0,248,193,0,0,32,194,0,0,60,194,0,0,28,194,0,0,28,194,0,0,32,194,0,0,40,194,0,0,44,194,0,0,60,194,0,0,76,194,0,0,100,194,0,0,80,194,0,0,92,194,0,0,92,194,0,0,112,194,0,0,104,194,0,0,120,194,0,0,124,194,0,0,140,194,0,0,134,194,0,0,138,194,0,0,144,194,0,0,146,194,0,0,154,194,0,0,160,194,0,0,164,194,0,0,166,194,0,0,174,194,0,0,180,194,0,0,188,194,0,0,196,194,0,0,208,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,32,193,0,0,48,193,0,0,112,193,0,0,152,193,0,0,200,193,0,0,240,193,0,0,8,194,0,0,248,193,0,0,240,193,0,0,248,193,0,0,232,193,0,0,0,194,0,0,12,194,0,0,40,194,0,0,64,194,0,0,40,194,0,0,48,194,0,0,56,194,0,0,72,194,0,0,72,194,0,0,76,194,0,0,80,194,0,0,108,194,0,0,88,194,0,0,92,194,0,0,92,194,0,0,104,194,0,0,120,194,0,0,124,194,0,0,132,194,0,0,144,194,0,0,146,194,0,0,152,194,0,0,150,194,0,0,156,194,0,0,160,194,0,0,160,194,0,0,162,194,0,0,168,194,0,0,176,194,0,0,180,194,0,0,188,194,0,0,196,194,0,0,202,194,0,0,212,194,0,0,220,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,134,194,0,0,134,194,0,0,134,194,0,0,152,194,0,0,144,194,0,0,142,194,0,0,148,194,0,0,152,194,0,0,152,194,0,0,150,194,0,0,156,194,0,0,158,194,0,0,158,194,0,0,162,194,0,0,166,194,0,0,172,194,0,0,178,194,0,0,186,194,0,0,194,194,0,0,200,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,64,194,0,0,76,194,0,0,92,194,0,0,108,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,134,194,0,0,132,194,0,0,136,194,0,0,138,194,0,0,140,194,0,0,148,194,0,0,158,194,0,0,154,194,0,0,154,194,0,0,156,194,0,0,160,194,0,0,162,194,0,0,164,194,0,0,168,194,0,0,172,194,0,0,176,194,0,0,182,194,0,0,190,194,0,0,200,194,0,0,216,194,0,0,232,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,20,194,0,0,20,194,0,0,36,194,0,0,48,194,0,0,64,194,0,0,76,194,0,0,104,194,0,0,120,194,0,0,112,194,0,0,100,194,0,0,108,194,0,0,108,194,0,0,112,194,0,0,124,194,0,0,130,194,0,0,144,194,0,0,142,194,0,0,140,194,0,0,144,194,0,0,148,194,0,0,154,194,0,0,152,194,0,0,156,194,0,0,162,194,0,0,162,194,0,0,160,194,0,0,166,194,0,0,172,194,0,0,182,194,0,0,192,194,0,0,200,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,240,193,0,0,0,194,0,0,0,194,0,0,4,194,0,0,12,194,0,0,36,194,0,0,68,194,0,0,72,194,0,0,68,194,0,0,60,194,0,0,64,194,0,0,64,194,0,0,80,194,0,0,76,194,0,0,100,194,0,0,130,194,0,0,116,194,0,0,108,194,0,0,116,194,0,0,128,194,0,0,138,194,0,0,140,194,0,0,148,194,0,0,154,194,0,0,154,194,0,0,156,194,0,0,162,194,0,0,168,194,0,0,170,194,0,0,174,194,0,0,180,194,0,0,184,194,0,0,192,194,0,0,200,194,0,0,214,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,160,193,0,0,168,193,0,0,184,193,0,0,216,193,0,0,240,193,0,0,12,194,0,0,16,194,0,0,36,194,0,0,56,194,0,0,48,194,0,0,40,194,0,0,32,194,0,0,36,194,0,0,36,194,0,0,44,194,0,0,64,194,0,0,92,194,0,0,84,194,0,0,80,194,0,0,84,194,0,0,96,194,0,0,108,194,0,0,104,194,0,0,112,194,0,0,134,194,0,0,132,194,0,0,138,194,0,0,142,194,0,0,144,194,0,0,150,194,0,0,158,194,0,0,162,194,0,0,168,194,0,0,174,194,0,0,180,194,0,0,186,194,0,0,194,194,0,0,202,194,0,0,214,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,48,193,0,0,64,193,0,0,64,193,0,0,112,193,0,0,128,193,0,0,160,193,0,0,184,193,0,0,240,193,0,0,20,194,0,0,8,194,0,0,4,194,0,0,8,194,0,0,248,193,0,0,0,194,0,0,0,194,0,0,24,194,0,0,60,194,0,0,48,194,0,0,36,194,0,0,32,194,0,0,60,194,0,0,68,194,0,0,56,194,0,0,56,194,0,0,104,194,0,0,72,194,0,0,72,194,0,0,88,194,0,0,104,194,0,0,120,194,0,0,128,194,0,0,134,194,0,0,134,194,0,0,140,194,0,0,144,194,0,0,152,194,0,0,158,194,0,0,166,194,0,0,174,194,0,0,182,194,0,0,192,194,0,0,200,194,0,0,208,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,124,194,0,0,128,194,0,0,132,194,0,0,134,194,0,0,132,194,0,0,136,194,0,0,150,194,0,0,144,194,0,0,152,194,0,0,150,194,0,0,152,194,0,0,156,194,0,0,158,194,0,0,164,194,0,0,168,194,0,0,170,194,0,0,180,194,0,0,188,194,0,0,202,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,112,194,0,0,112,194,0,0,116,194,0,0,124,194,0,0,132,194,0,0,142,194,0,0,136,194,0,0,140,194,0,0,140,194,0,0,142,194,0,0,144,194,0,0,144,194,0,0,150,194,0,0,162,194,0,0,156,194,0,0,158,194,0,0,164,194,0,0,166,194,0,0,172,194,0,0,180,194,0,0,194,194,0,0,206,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,88,194,0,0,92,194,0,0,100,194,0,0,96,194,0,0,100,194,0,0,92,194,0,0,116,194,0,0,130,194,0,0,112,194,0,0,112,194,0,0,120,194,0,0,124,194,0,0,124,194,0,0,132,194,0,0,136,194,0,0,148,194,0,0,146,194,0,0,150,194,0,0,150,194,0,0,156,194,0,0,160,194,0,0,160,194,0,0,164,194,0,0,170,194,0,0,180,194,0,0,192,194,0,0,202,194,0,0,216,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,64,194,0,0,76,194,0,0,100,194,0,0,76,194,0,0,68,194,0,0,72,194,0,0,76,194,0,0,84,194,0,0,88,194,0,0,108,194,0,0,132,194,0,0,112,194,0,0,120,194,0,0,134,194,0,0,134,194,0,0,140,194,0,0,144,194,0,0,150,194,0,0,152,194,0,0,156,194,0,0,162,194,0,0,170,194,0,0,176,194,0,0,188,194,0,0,194,194,0,0,208,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,28,194,0,0,36,194,0,0,40,194,0,0,40,194,0,0,28,194,0,0,24,194,0,0,36,194,0,0,44,194,0,0,80,194,0,0,48,194,0,0,32,194,0,0,28,194,0,0,20,194,0,0,20,194,0,0,32,194,0,0,60,194,0,0,88,194,0,0,72,194,0,0,64,194,0,0,72,194,0,0,92,194,0,0,116,194,0,0,108,194,0,0,120,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,138,194,0,0,138,194,0,0,146,194,0,0,148,194,0,0,148,194,0,0,150,194,0,0,154,194,0,0,158,194,0,0,164,194,0,0,174,194,0,0,182,194,0,0,190,194,0,0,200,194,0,0,216,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,224,193,0,0,208,193,0,0,192,193,0,0,176,193,0,0,160,193,0,0,160,193,0,0,184,193,0,0,232,193,0,0,240,193,0,0,248,193,0,0,224,193,0,0,216,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,12,194,0,0,32,194,0,0,4,194,0,0,0,194,0,0,232,193,0,0,240,193,0,0,240,193,0,0,240,193,0,0,20,194,0,0,52,194,0,0,36,194,0,0,20,194,0,0,24,194,0,0,52,194,0,0,60,194,0,0,60,194,0,0,64,194,0,0,84,194,0,0,68,194,0,0,64,194,0,0,72,194,0,0,68,194,0,0,68,194,0,0,76,194,0,0,80,194,0,0,104,194,0,0,96,194,0,0,100,194,0,0,96,194,0,0,112,194,0,0,116,194,0,0,120,194,0,0,140,194,0,0,144,194,0,0,148,194,0,0,156,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,212,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,200,194,0,0,190,194,0,0,182,194,0,0,174,194,0,0,166,194,0,0,160,194,0,0,156,194,0,0,152,194,0,0,156,194,0,0,156,194,0,0,162,194,0,0,166,194,0,0,170,194,0,0,172,194,0,0,170,194,0,0,172,194,0,0,174,194,0,0,180,194,0,0,194,194,0,0,214,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,162,194,0,0,154,194,0,0,146,194,0,0,140,194,0,0,134,194,0,0,134,194,0,0,136,194,0,0,150,194,0,0,146,194,0,0,140,194,0,0,138,194,0,0,140,194,0,0,144,194,0,0,150,194,0,0,158,194,0,0,168,194,0,0,166,194,0,0,168,194,0,0,172,194,0,0,176,194,0,0,178,194,0,0,178,194,0,0,186,194,0,0,196,194,0,0,210,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,152,194,0,0,142,194,0,0,136,194,0,0,136,194,0,0,130,194,0,0,124,194,0,0,124,194,0,0,120,194,0,0,120,194,0,0,128,194,0,0,130,194,0,0,128,194,0,0,116,194,0,0,120,194,0,0,124,194,0,0,128,194,0,0,132,194,0,0,136,194,0,0,146,194,0,0,146,194,0,0,148,194,0,0,150,194,0,0,152,194,0,0,162,194,0,0,166,194,0,0,170,194,0,0,176,194,0,0,178,194,0,0,184,194,0,0,190,194,0,0,200,194,0,0,216,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,160,194,0,0,150,194,0,0,142,194,0,0,136,194,0,0,130,194,0,0,124,194,0,0,120,194,0,0,116,194,0,0,116,194,0,0,116,194,0,0,116,194,0,0,108,194,0,0,96,194,0,0,100,194,0,0,84,194,0,0,72,194,0,0,104,194,0,0,80,194,0,0,72,194,0,0,72,194,0,0,80,194,0,0,84,194,0,0,88,194,0,0,104,194,0,0,134,194,0,0,124,194,0,0,134,194,0,0,136,194,0,0,144,194,0,0,150,194,0,0,156,194,0,0,160,194,0,0,162,194,0,0,162,194,0,0,164,194,0,0,170,194,0,0,178,194,0,0,180,194,0,0,186,194,0,0,194,194,0,0,202,194,0,0,214,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,130,194,0,0,116,194,0,0,108,194,0,0,100,194,0,0,96,194,0,0,92,194,0,0,92,194,0,0,96,194,0,0,96,194,0,0,100,194,0,0,92,194,0,0,84,194,0,0,80,194,0,0,60,194,0,0,48,194,0,0,48,194,0,0,72,194,0,0,48,194,0,0,36,194,0,0,28,194,0,0,28,194,0,0,40,194,0,0,32,194,0,0,56,194,0,0,76,194,0,0,68,194,0,0,72,194,0,0,84,194,0,0,88,194,0,0,124,194,0,0,112,194,0,0,116,194,0,0,120,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,140,194,0,0,146,194,0,0,148,194,0,0,150,194,0,0,152,194,0,0,150,194,0,0,158,194,0,0,170,194,0,0,178,194,0,0,182,194,0,0,192,194,0,0,204,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,80,194,0,0,72,194,0,0,68,194,0,0,68,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,68,194,0,0,72,194,0,0,72,194,0,0,68,194,0,0,56,194,0,0,44,194,0,0,28,194,0,0,12,194,0,0,4,194,0,0,24,194,0,0,16,194,0,0,0,194,0,0,232,193,0,0,0,194,0,0,0,194,0,0,0,194,0,0,12,194,0,0,48,194,0,0,28,194,0,0,24,194,0,0,24,194,0,0,56,194,0,0,72,194,0,0,52,194,0,0,56,194,0,0,84,194,0,0,72,194,0,0,72,194,0,0,72,194,0,0,88,194,0,0,88,194,0,0,84,194,0,0,84,194,0,0,96,194,0,0,100,194,0,0,108,194,0,0,132,194,0,0,140,194,0,0,144,194,0,0,148,194,0,0,158,194,0,0,166,194,0,0,170,194,0,0,180,194,0,0,194,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,172,194,0,0,160,194,0,0,150,194,0,0,150,194,0,0,158,194,0,0,160,194,0,0,158,194,0,0,160,194,0,0,162,194,0,0,164,194,0,0,176,194,0,0,190,194,0,0,206,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,176,194,0,0,166,194,0,0,158,194,0,0,156,194,0,0,150,194,0,0,142,194,0,0,134,194,0,0,136,194,0,0,146,194,0,0,146,194,0,0,144,194,0,0,146,194,0,0,150,194,0,0,154,194,0,0,160,194,0,0,164,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,214,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,202,194,0,0,192,194,0,0,180,194,0,0,172,194,0,0,162,194,0,0,154,194,0,0,146,194,0,0,138,194,0,0,132,194,0,0,116,194,0,0,120,194,0,0,132,194,0,0,128,194,0,0,120,194,0,0,130,194,0,0,132,194,0,0,140,194,0,0,144,194,0,0,152,194,0,0,162,194,0,0,160,194,0,0,168,194,0,0,180,194,0,0,190,194,0,0,204,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,206,194,0,0,194,194,0,0,184,194,0,0,176,194,0,0,166,194,0,0,158,194,0,0,148,194,0,0,140,194,0,0,132,194,0,0,108,194,0,0,84,194,0,0,104,194,0,0,120,194,0,0,92,194,0,0,88,194,0,0,88,194,0,0,88,194,0,0,104,194,0,0,116,194,0,0,120,194,0,0,144,194,0,0,140,194,0,0,144,194,0,0,150,194,0,0,156,194,0,0,160,194,0,0,162,194,0,0,160,194,0,0,166,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,214,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,150,194,0,0,140,194,0,0,132,194,0,0,120,194,0,0,96,194,0,0,64,194,0,0,48,194,0,0,64,194,0,0,56,194,0,0,56,194,0,0,44,194,0,0,56,194,0,0,64,194,0,0,64,194,0,0,76,194,0,0,104,194,0,0,104,194,0,0,108,194,0,0,112,194,0,0,120,194,0,0,120,194,0,0,116,194,0,0,116,194,0,0,130,194,0,0,128,194,0,0,130,194,0,0,136,194,0,0,140,194,0,0,148,194,0,0,150,194,0,0,156,194,0,0,162,194,0,0,172,194,0,0,190,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,150,194,0,0,140,194,0,0,130,194,0,0,116,194,0,0,92,194,0,0,68,194,0,0,28,194,0,0,4,194,0,0,32,194,0,0,12,194,0,0,0,194,0,0,24,194,0,0,32,194,0,0,4,194,0,0,12,194,0,0,20,194,0,0,56,194,0,0,36,194,0,0,52,194,0,0,48,194,0,0,56,194,0,0,40,194,0,0,52,194,0,0,56,194,0,0,80,194,0,0,72,194,0,0,72,194,0,0,72,194,0,0,88,194,0,0,88,194,0,0,92,194,0,0,100,194,0,0,120,194,0,0,128,194,0,0,132,194,0,0,136,194,0,0,140,194,0,0,152,194,0,0,162,194,0,0,180,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,196,194,0,0,180,194,0,0,170,194,0,0,164,194,0,0,166,194,0,0,160,194,0,0,156,194,0,0,168,194,0,0,158,194,0,0,160,194,0,0,166,194,0,0,174,194,0,0,178,194,0,0,182,194,0,0,186,194,0,0,198,194,0,0,212,194,0,0,234,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,196,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,150,194,0,0,140,194,0,0,136,194,0,0,148,194,0,0,144,194,0,0,148,194,0,0,154,194,0,0,160,194,0,0,164,194,0,0,170,194,0,0,174,194,0,0,184,194,0,0,178,194,0,0,182,194,0,0,190,194,0,0,200,194,0,0,212,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,196,194,0,0,180,194,0,0,166,194,0,0,150,194,0,0,142,194,0,0,124,194,0,0,128,194,0,0,134,194,0,0,120,194,0,0,128,194,0,0,134,194,0,0,140,194,0,0,146,194,0,0,154,194,0,0,162,194,0,0,168,194,0,0,166,194,0,0,170,194,0,0,178,194,0,0,180,194,0,0,186,194,0,0,196,194,0,0,208,194,0,0,218,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,206,194,0,0,192,194,0,0,176,194,0,0,162,194,0,0,150,194,0,0,136,194,0,0,104,194,0,0,88,194],"i8",L3,x.GLOBAL_BASE),d3([0,0,96,194,0,0,88,194,0,0,96,194,0,0,96,194,0,0,104,194,0,0,112,194,0,0,124,194,0,0,132,194,0,0,148,194,0,0,138,194,0,0,144,194,0,0,144,194,0,0,150,194,0,0,148,194,0,0,154,194,0,0,162,194,0,0,162,194,0,0,164,194,0,0,168,194,0,0,174,194,0,0,186,194,0,0,192,194,0,0,198,194,0,0,208,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,204,194,0,0,192,194,0,0,182,194,0,0,170,194,0,0,160,194,0,0,148,194,0,0,136,194,0,0,112,194,0,0,76,194,0,0,56,194,0,0,64,194,0,0,56,194,0,0,44,194,0,0,52,194,0,0,60,194,0,0,60,194,0,0,68,194,0,0,64,194,0,0,96,194,0,0,84,194,0,0,92,194,0,0,104,194,0,0,100,194,0,0,124,194,0,0,104,194,0,0,112,194,0,0,132,194,0,0,128,194,0,0,134,194,0,0,140,194,0,0,140,194,0,0,148,194,0,0,154,194,0,0,168,194,0,0,172,194,0,0,178,194,0,0,182,194,0,0,186,194,0,0,188,194,0,0,202,194,0,0,218,194,0,0,236,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,176,194,0,0,166,194,0,0,156,194,0,0,146,194,0,0,136,194,0,0,112,194,0,0,84,194,0,0,48,194,0,0,12,194,0,0,24,194,0,0,24,194,0,0,8,194,0,0,8,194,0,0,16,194,0,0,32,194,0,0,36,194,0,0,48,194,0,0,76,194,0,0,52,194,0,0,56,194,0,0,60,194,0,0,56,194,0,0,88,194,0,0,72,194,0,0,68,194,0,0,72,194,0,0,72,194,0,0,72,194,0,0,76,194,0,0,88,194,0,0,100,194,0,0,104,194,0,0,112,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,128,194,0,0,130,194,0,0,136,194,0,0,154,194,0,0,164,194,0,0,174,194,0,0,190,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,204,194,0,0,194,194,0,0,184,194,0,0,174,194,0,0,166,194,0,0,156,194,0,0,150,194,0,0,164,194,0,0,158,194,0,0,166,194,0,0,170,194,0,0,178,194,0,0,184,194,0,0,190,194,0,0,196,194,0,0,202,194,0,0,210,194,0,0,218,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,172,194,0,0,162,194,0,0,156,194,0,0,148,194,0,0,138,194,0,0,148,194,0,0,148,194,0,0,152,194,0,0,158,194,0,0,166,194,0,0,168,194,0,0,172,194,0,0,178,194,0,0,184,194,0,0,194,194,0,0,186,194,0,0,200,194,0,0,206,194,0,0,214,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,174,194,0,0,166,194,0,0,160,194,0,0,150,194,0,0,138,194,0,0,112,194,0,0,132,194,0,0,132,194,0,0,136,194,0,0,140,194,0,0,148,194,0,0,156,194,0,0,158,194,0,0,162,194,0,0,162,194,0,0,166,194,0,0,168,194,0,0,174,194,0,0,186,194,0,0,192,194,0,0,198,194,0,0,206,194,0,0,214,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,178,194,0,0,170,194,0,0,164,194,0,0,156,194,0,0,142,194,0,0,120,194,0,0,92,194,0,0,104,194,0,0,104,194,0,0,88,194,0,0,88,194,0,0,92,194,0,0,108,194,0,0,116,194,0,0,120,194,0,0,140,194,0,0,132,194,0,0,132,194,0,0,134,194,0,0,140,194,0,0,144,194,0,0,150,194,0,0,156,194,0,0,168,194,0,0,168,194,0,0,168,194,0,0,176,194,0,0,182,194,0,0,180,194,0,0,190,194,0,0,196,194,0,0,204,194,0,0,206,194,0,0,212,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,188,194,0,0,180,194,0,0,174,194,0,0,164,194,0,0,158,194,0,0,146,194,0,0,134,194,0,0,104,194,0,0,60,194,0,0,72,194,0,0,52,194,0,0,36,194,0,0,52,194,0,0,64,194,0,0,48,194,0,0,48,194,0,0,68,194,0,0,88,194,0,0,76,194,0,0,64,194,0,0,60,194,0,0,68,194,0,0,72,194,0,0,76,194,0,0,100,194,0,0,104,194,0,0,112,194,0,0,124,194,0,0,138,194,0,0,140,194,0,0,138,194,0,0,142,194,0,0,148,194,0,0,156,194,0,0,164,194,0,0,180,194,0,0,190,194,0,0,202,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,202,194,0,0,194,194,0,0,186,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,154,194,0,0,144,194,0,0,130,194,0,0,96,194,0,0,64,194,0,0,20,194,0,0,32,194,0,0,16,194,0,0,8,194,0,0,32,194,0,0,72,194,0,0,60,194,0,0,24,194,0,0,36,194,0,0,60,194,0,0,24,194,0,0,12,194,0,0,28,194,0,0,24,194,0,0,44,194,0,0,32,194,0,0,52,194,0,0,72,194,0,0,52,194,0,0,48,194,0,0,60,194,0,0,72,194,0,0,92,194,0,0,64,194,0,0,64,194,0,0,80,194,0,0,132,194,0,0,140,194,0,0,152,194,0,0,164,194,0,0,180,194,0,0,194,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,172,194,0,0,158,194,0,0,152,194,0,0,166,194,0,0,162,194,0,0,170,194,0,0,174,194,0,0,178,194,0,0,186,194,0,0,196,194,0,0,204,194,0,0,214,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,172,194,0,0,158,194,0,0,142,194,0,0,154,194,0,0,148,194,0,0,154,194,0,0,158,194,0,0,162,194,0,0,168,194,0,0,170,194,0,0,180,194,0,0,184,194,0,0,186,194,0,0,184,194,0,0,196,194,0,0,202,194,0,0,216,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,174,194,0,0,156,194,0,0,136,194,0,0,130,194,0,0,132,194,0,0,120,194,0,0,130,194,0,0,134,194,0,0,140,194,0,0,146,194,0,0,150,194,0,0,156,194,0,0,164,194,0,0,164,194,0,0,166,194,0,0,168,194,0,0,182,194,0,0,186,194,0,0,196,194,0,0,204,194,0,0,212,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,164,194,0,0,148,194,0,0,120,194,0,0,100,194,0,0,104,194,0,0,96,194,0,0,76,194,0,0,80,194,0,0,80,194,0,0,88,194,0,0,88,194,0,0,104,194,0,0,132,194,0,0,108,194,0,0,112,194,0,0,124,194,0,0,132,194,0,0,138,194,0,0,146,194,0,0,158,194,0,0,166,194,0,0,168,194,0,0,160,194,0,0,162,194,0,0,162,194,0,0,164,194,0,0,176,194,0,0,184,194,0,0,196,194,0,0,210,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,204,194,0,0,194,194,0,0,184,194,0,0,168,194,0,0,158,194,0,0,138,194,0,0,100,194,0,0,60,194,0,0,80,194,0,0,60,194,0,0,48,194,0,0,52,194,0,0,72,194,0,0,80,194,0,0,40,194,0,0,40,194,0,0,84,194,0,0,44,194,0,0,44,194,0,0,64,194,0,0,76,194,0,0,96,194,0,0,92,194,0,0,80,194,0,0,100,194,0,0,108,194,0,0,116,194,0,0,120,194,0,0,134,194,0,0,142,194,0,0,156,194,0,0,166,194,0,0,172,194,0,0,188,194,0,0,196,194,0,0,206,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,168,194,0,0,156,194,0,0,140,194,0,0,116,194,0,0,76,194,0,0,36,194,0,0,32,194,0,0,24,194,0,0,32,194,0,0,56,194,0,0,80,194,0,0,76,194,0,0,36,194,0,0,32,194,0,0,56,194,0,0,32,194,0,0,24,194,0,0,24,194,0,0,36,194,0,0,56,194,0,0,36,194,0,0,56,194,0,0,60,194,0,0,44,194,0,0,44,194,0,0,52,194,0,0,36,194,0,0,52,194,0,0,96,194,0,0,134,194,0,0,136,194,0,0,166,194,0,0,174,194,0,0,180,194,0,0,190,194,0,0,204,194,0,0,214,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,218,194,0,0,210,194,0,0,202,194,0,0,192,194,0,0,182,194,0,0,168,194,0,0,154,194,0,0,164,194,0,0,164,194,0,0,170,194,0,0,178,194,0,0,188,194,0,0,200,194,0,0,212,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,206,194,0,0,196,194,0,0,184,194,0,0,170,194,0,0,160,194,0,0,142,194,0,0,150,194,0,0,144,194,0,0,152,194,0,0,160,194,0,0,168,194,0,0,172,194,0,0,178,194,0,0,186,194,0,0,200,194,0,0,214,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,208,194,0,0,202,194,0,0,194,194,0,0,184,194,0,0,176,194,0,0,168,194,0,0,160,194,0,0,128,194,0,0,132,194,0,0,124,194,0,0,128,194,0,0,132,194,0,0,138,194,0,0,146,194,0,0,154,194,0,0,166,194,0,0,166,194,0,0,172,194,0,0,182,194,0,0,196,194,0,0,208,194,0,0,222,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,208,194,0,0,202,194,0,0,194,194,0,0,184,194,0,0,180,194,0,0,168,194,0,0,148,194,0,0,100,194,0,0,104,194,0,0,80,194,0,0,92,194,0,0,88,194,0,0,72,194,0,0,80,194,0,0,72,194,0,0,80,194,0,0,124,194,0,0,120,194,0,0,138,194,0,0,152,194,0,0,154,194,0,0,156,194,0,0,156,194,0,0,158,194,0,0,164,194,0,0,176,194,0,0,188,194,0,0,200,194,0,0,212,194,0,0,222,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,204,194,0,0,196,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,166,194,0,0,156,194,0,0,140,194,0,0,72,194,0,0,72,194,0,0,36,194,0,0,48,194,0,0,68,194,0,0,60,194,0,0,72,194,0,0,72,194,0,0,48,194,0,0,92,194,0,0,56,194,0,0,60,194,0,0,64,194,0,0,64,194,0,0,88,194,0,0,68,194,0,0,68,194,0,0,104,194,0,0,120,194,0,0,142,194,0,0,162,194,0,0,174,194,0,0,184,194,0,0,194,194,0,0,204,194,0,0,216,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,204,194,0,0,196,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,166,194,0,0,156,194,0,0,140,194,0,0,52,194,0,0,44,194,0,0,36,194,0,0,60,194,0,0,72,194,0,0,76,194,0,0,72,194,0,0,68,194,0,0,52,194,0,0,60,194,0,0,36,194,0,0,48,194,0,0,36,194,0,0,28,194,0,0,44,194,0,0,24,194,0,0,20,194,0,0,32,194,0,0,36,194,0,0,48,194,0,0,72,194,0,0,104,194,0,0,130,194,0,0,146,194,0,0,158,194,0,0,170,194,0,0,184,194,0,0,194,194,0,0,202,194,0,0,210,194,0,0,218,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,200,194,0,0,190,194,0,0,174,194,0,0,162,194,0,0,170,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,214,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,202,194,0,0,190,194,0,0,176,194,0,0,166,194,0,0,152,194,0,0,146,194,0,0,144,194,0,0,158,194,0,0,168,194,0,0,180,194,0,0,190,194,0,0,200,194,0,0,210,194,0,0,220,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,208,194,0,0,196,194,0,0,184,194,0,0,174,194,0,0,162,194,0,0,140,194,0,0,130,194,0,0,120,194,0,0,134,194,0,0,142,194,0,0,148,194,0,0,160,194,0,0,170,194,0,0,182,194,0,0,190,194,0,0,198,194,0,0,206,194,0,0,216,194,0,0,222,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,206,194,0,0,194,194,0,0,180,194,0,0,170,194,0,0,152,194,0,0,112,194,0,0,96,194,0,0,88,194,0,0,112,194,0,0,120,194,0,0,116,194,0,0,96,194,0,0,124,194,0,0,130,194,0,0,146,194,0,0,148,194,0,0,154,194,0,0,150,194,0,0,156,194,0,0,162,194,0,0,172,194,0,0,174,194,0,0,176,194,0,0,182,194,0,0,188,194,0,0,196,194,0,0,206,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,194,194,0,0,184,194,0,0,172,194,0,0,162,194,0,0,158,194,0,0,140,194,0,0,100,194,0,0,76,194,0,0,60,194,0,0,76,194,0,0,104,194,0,0,112,194,0,0,96,194,0,0,84,194,0,0,72,194,0,0,104,194,0,0,80,194,0,0,72,194,0,0,72,194,0,0,84,194,0,0,92,194,0,0,128,194,0,0,138,194,0,0,142,194,0,0,170,194,0,0,164,194,0,0,156,194,0,0,162,194,0,0,170,194,0,0,190,194,0,0,204,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,194,194,0,0,184,194,0,0,170,194,0,0,166,194,0,0,158,194,0,0,144,194,0,0,68,194,0,0,32,194,0,0,44,194,0,0,44,194,0,0,88,194,0,0,96,194,0,0,76,194,0,0,72,194,0,0,32,194,0,0,44,194,0,0,24,194,0,0,16,194,0,0,12,194,0,0,20,194,0,0,24,194,0,0,20,194,0,0,48,194,0,0,88,194,0,0,112,194,0,0,100,194,0,0,112,194,0,0,140,194,0,0,150,194,0,0,168,194,0,0,184,194,0,0,206,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,204,194,0,0,190,194,0,0,178,194,0,0,164,194,0,0,166,194,0,0,168,194,0,0,180,194,0,0,184,194,0,0,198,194,0,0,214,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,202,194,0,0,190,194,0,0,178,194,0,0,166,194,0,0,144,194,0,0,148,194,0,0,156,194,0,0,170,194,0,0,176,194,0,0,176,194,0,0,180,194,0,0,184,194,0,0,196,194,0,0,210,194,0,0,222,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,218,194,0,0,206,194,0,0,194,194,0,0,186,194,0,0,174,194,0,0,162,194,0,0,140,194,0,0,140,194,0,0,134,194,0,0,150,194,0,0,146,194,0,0,152,194,0,0,158,194,0,0,162,194,0,0,166,194,0,0,176,194,0,0,178,194,0,0,194,194,0,0,206,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,200,194,0,0,188,194,0,0,176,194,0,0,166,194,0,0,150,194,0,0,124,194,0,0,108,194,0,0,108,194,0,0,124,194,0,0,132,194,0,0,112,194,0,0,120,194,0,0,134,194,0,0,134,194,0,0,154,194,0,0,152,194,0,0,162,194,0,0,176,194,0,0,172,194,0,0,184,194,0,0,192,194,0,0,204,194,0,0,218,194,0,0,232,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,196,194,0,0,184,194,0,0,172,194,0,0,162,194,0,0,146,194,0,0,96,194,0,0,80,194,0,0,60,194,0,0,92,194,0,0,112,194,0,0,104,194,0,0,80,194,0,0,76,194,0,0,52,194,0,0,68,194,0,0,72,194,0,0,84,194,0,0,88,194,0,0,116,194,0,0,142,194,0,0,140,194,0,0,138,194,0,0,156,194,0,0,158,194,0,0,174,194,0,0,180,194,0,0,192,194,0,0,208,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,206,194,0,0,192,194,0,0,180,194,0,0,172,194,0,0,156,194,0,0,140,194,0,0,76,194,0,0,40,194,0,0,60,194,0,0,64,194,0,0,92,194,0,0,88,194,0,0,88,194,0,0,84,194,0,0,40,194,0,0,12,194,0,0,224,193,0,0,4,194,0,0,24,194,0,0,20,194,0,0,48,194,0,0,60,194,0,0,68,194,0,0,88,194,0,0,124,194,0,0,136,194,0,0,156,194,0,0,164,194,0,0,178,194,0,0,188,194,0,0,198,194,0,0,208,194,0,0,218,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,180,194,0,0,158,194,0,0,170,194,0,0,162,194,0,0,164,194,0,0,164,194,0,0,178,194,0,0,188,194,0,0,198,194,0,0,206,194,0,0,218,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,194,194,0,0,170,194,0,0,144,194,0,0,148,194,0,0,140,194,0,0,140,194,0,0,140,194,0,0,152,194,0,0,170,194,0,0,182,194,0,0,186,194,0,0,194,194,0,0,206,194,0,0,218,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,224,194,0,0,186,194,0,0,162,194,0,0,136,194,0,0,120,194,0,0,112,194,0,0,112,194,0,0,100,194,0,0,124,194,0,0,140,194,0,0,154,194,0,0,164,194,0,0,180,194,0,0,186,194,0,0,196,194,0,0,208,194,0,0,218,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,226,194,0,0,200,194,0,0,186,194,0,0,168,194,0,0,124,194,0,0,104,194,0,0,64,194,0,0,84,194,0,0,88,194,0,0,80,194,0,0,80,194,0,0,100,194,0,0,128,194,0,0,132,194,0,0,152,194,0,0,166,194,0,0,162,194,0,0,170,194,0,0,170,194,0,0,180,194,0,0,190,194,0,0,196,194,0,0,202,194,0,0,206,194,0,0,212,194,0,0,216,194,0,0,222,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,190,194,0,0,172,194,0,0,148,194,0,0,84,194,0,0,72,194,0,0,24,194,0,0,44,194,0,0,68,194,0,0,44,194,0,0,40,194,0,0,28,194,0,0,28,194,0,0,56,194,0,0,80,194,0,0,100,194,0,0,96,194,0,0,144,194,0,0,138,194,0,0,148,194,0,0,162,194,0,0,174,194,0,0,184,194,0,0,188,194,0,0,194,194,0,0,198,194,0,0,204,194,0,0,210,194,0,0,216,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,198,194,0,0,180,194,0,0,152,194,0,0,132,194,0,0,52,194,0,0,44,194,0,0,36,194,0,0,48,194,0,0,60,194,0,0,44,194,0,0,60,194,0,0,32,194,0,0,240,193,0,0,248,193,0,0,248,193,0,0,28,194,0,0,4,194,0,0,32,194,0,0,36,194,0,0,44,194,0,0,84,194,0,0,108,194,0,0,140,194,0,0,146,194,0,0,154,194,0,0,158,194,0,0,164,194,0,0,168,194,0,0,174,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,182,194,0,0,152,194,0,0,150,194,0,0,170,194,0,0,186,194,0,0,196,194,0,0,208,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,182,194,0,0,140,194,0,0,140,194,0,0,150,194,0,0,172,194,0,0,178,194,0,0,188,194,0,0,196,194,0,0,202,194,0,0,212,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,190,194,0,0,160,194,0,0,112,194,0,0,130,194,0,0,128,194,0,0,148,194,0,0,166,194,0,0,176,194,0,0,182,194,0,0,190,194,0,0,198,194,0,0,206,194,0,0,214,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,190,194,0,0,160,194,0,0,104,194,0,0,92,194,0,0,68,194,0,0,132,194,0,0,136,194,0,0,142,194,0,0,156,194,0,0,156,194,0,0,160,194,0,0,176,194,0,0,170,194,0,0,178,194,0,0,194,194,0,0,200,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,190,194,0,0,160,194,0,0,84,194,0,0,80,194,0,0,36,194,0,0,108,194,0,0,108,194,0,0,68,194,0,0,104,194,0,0,96,194,0,0,124,194,0,0,172,194,0,0,158,194,0,0,180,194,0,0,186,194,0,0,196,194,0,0,206,194,0,0,214,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,194,194,0,0,182,194,0,0,146,194,0,0,52,194,0,0,32,194,0,0,4,194,0,0,84,194,0,0,116,194,0,0,68,194,0,0,88,194,0,0,72,194,0,0,72,194,0,0,112,194,0,0,80,194,0,0,134,194,0,0,148,194,0,0,162,194,0,0,184,194,0,0,192,194,0,0,200,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,226,194,0,0,212,194,0,0,198,194,0,0,184,194,0,0,154,194,0,0,160,194,0,0,176,194,0,0,194,194,0,0,212,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196],"i8",L3,x.GLOBAL_BASE+10240),d3([0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,232,194,0,0,218,194,0,0,204,194,0,0,190,194,0,0,178,194,0,0,148,194,0,0,144,194,0,0,176,194,0,0,174,194,0,0,190,194,0,0,204,194,0,0,218,194,0,0,232,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,232,194,0,0,218,194,0,0,204,194,0,0,190,194,0,0,178,194,0,0,150,194,0,0,132,194,0,0,148,194,0,0,154,194,0,0,156,194,0,0,172,194,0,0,174,194,0,0,180,194,0,0,192,194,0,0,210,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,230,194,0,0,216,194,0,0,202,194,0,0,188,194,0,0,176,194,0,0,132,194,0,0,96,194,0,0,116,194,0,0,140,194,0,0,130,194,0,0,156,194,0,0,144,194,0,0,166,194,0,0,168,194,0,0,186,194,0,0,196,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,190,194,0,0,178,194,0,0,164,194,0,0,100,194,0,0,80,194,0,0,80,194,0,0,108,194,0,0,96,194,0,0,108,194,0,0,104,194,0,0,138,194,0,0,134,194,0,0,176,194,0,0,164,194,0,0,164,194,0,0,178,194,0,0,188,194,0,0,200,194,0,0,216,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,202,194,0,0,192,194,0,0,180,194,0,0,166,194,0,0,154,194,0,0,88,194,0,0,44,194,0,0,24,194,0,0,72,194,0,0,64,194,0,0,80,194,0,0,64,194,0,0,40,194,0,0,40,194,0,0,76,194,0,0,80,194,0,0,84,194,0,0,108,194,0,0,130,194,0,0,142,194,0,0,156,194,0,0,170,194,0,0,190,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,240,194,0,0,210,194,0,0,172,194,0,0,136,194,0,0,156,194,0,0,158,194,0,0,180,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,240,194,0,0,210,194,0,0,172,194,0,0,132,194,0,0,146,194,0,0,154,194,0,0,176,194,0,0,192,194,0,0,210,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,240,194,0,0,210,194,0,0,184,194,0,0,160,194,0,0,116,194,0,0,128,194,0,0,136,194,0,0,160,194,0,0,174,194,0,0,184,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,240,194,0,0,208,194,0,0,182,194,0,0,158,194,0,0,80,194,0,0,112,194,0,0,88,194,0,0,128,194,0,0,138,194,0,0,154,194,0,0,160,194,0,0,164,194,0,0,168,194,0,0,170,194,0,0,174,194,0,0,176,194,0,0,180,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,236,194,0,0,200,194,0,0,174,194,0,0,154,194,0,0,68,194,0,0,72,194,0,0,48,194,0,0,104,194,0,0,116,194,0,0,116,194,0,0,134,194,0,0,130,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,130,194,0,0,136,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,230,194,0,0,196,194,0,0,168,194,0,0,120,194,0,0,68,194,0,0,48,194,0,0,24,194,0,0,56,194,0,0,68,194,0,0,68,194,0,0,56,194,0,0,28,194,0,0,20,194,0,0,28,194,0,0,32,194,0,0,40,194,0,0,44,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,176,194,0,0,148,194,0,0,154,194,0,0,164,194,0,0,164,194,0,0,170,194,0,0,180,194,0,0,188,194,0,0,198,194,0,0,208,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,176,194,0,0,132,194,0,0,140,194,0,0,162,194,0,0,160,194,0,0,162,194,0,0,168,194,0,0,176,194,0,0,182,194,0,0,186,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,176,194,0,0,116,194,0,0,124,194,0,0,140,194,0,0,142,194,0,0,148,194,0,0,154,194,0,0,160,194,0,0,166,194,0,0,170,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,172,194,0,0,120,194,0,0,124,194,0,0,120,194,0,0,120,194,0,0,104,194,0,0,80,194,0,0,72,194,0,0,72,194,0,0,80,194,0,0,88,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,236,194,0,0,216,194,0,0,168,194,0,0,84,194,0,0,72,194,0,0,72,194,0,0,72,194,0,0,92,194,0,0,60,194,0,0,52,194,0,0,32,194,0,0,32,194,0,0,32,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,236,194,0,0,200,194,0,0,146,194,0,0,44,194,0,0,20,194,0,0,40,194,0,0,44,194,0,0,84,194,0,0,24,194,0,0,20,194,0,0,12,194,0,0,12,194,0,0,24,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,182,194,0,0,168,194,0,0,148,194,0,0,160,194,0,0,160,194,0,0,160,194,0,0,160,194,0,0,160,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,182,194,0,0,168,194,0,0,148,194,0,0,136,194,0,0,136,194,0,0,136,194,0,0,136,194,0,0,136,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,172,194,0,0,156,194,0,0,140,194,0,0,112,194,0,0,52,194,0,0,240,193,0,0,168,193,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,174,194,0,0,156,194,0,0,134,194,0,0,64,194,0,0,24,194,0,0,232,193,0,0,168,193,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,172,194,0,0,138,194,0,0,96,194,0,0,52,194,0,0,12,194,0,0,4,194,0,0,232,193,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,166,194,0,0,142,194,0,0,64,194,0,0,216,193,0,0,24,194,0,0,20,194,0,0,8,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,0,0,144,4,0,0,72,100,0,0,104,100,0,0,136,100,0,0,0,0,0,0,224,4,0,0,0,0,0,0,0,0,0,0,6,0,0,0,7,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,6,0,0,0,7,0,0,0,4,0,0,0,5,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,6,0,0,0,7,0,0,0,4,0,0,0,5,0,0,0,4,0,0,0,2,0,0,0,5,0,0,0,4,0,0,0,2,0,0,0,3,0,0,0,5,0,0,0,255,255,255,255,0,0,12,195,0,0,12,195,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,194,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,128,0,0,0,63,0,0,0,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,210,66,0,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,40,103,0,0,200,103,0,0,104,104,0,0,8,105,0,0,168,105,0,0,72,106,0,0,232,106,0,0,136,107,0,0,40,108,0,0,200,108,0,0,104,109,0,0,8,110,0,0,168,110,0,0,72,111,0,0,232,111,0,0,136,112,0,0,40,113,0,0,0,0,0,0,11,0,0,0,48,240,7,0,64,164,1,0,2,0,0,0,64,156,0,0,80,195,0,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,200,160,2,0,0,0,0,0,11,0,0,0,160,87,5,0,64,164,1,0,6,0,0,0,64,156,0,0,112,17,1,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,3,0,0,0,120,217,1,0,0,88,5,0,0,0,0,0,11,0,0,0,64,87,5,0,64,164,1,0,255,255,255,255,64,156,0,0,80,195,0,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,136,217,1,0,0,0,0,0,11,0,0,0,224,86,5,0,64,164,1,0,2,0,0,0,144,101,0,0,64,156,0,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,128,86,5,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,200,160,2,0,0,0,0,0,11,0,0,0,32,86,5,0,64,164,1,0,255,255,255,255,144,101,0,0,64,156,0,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,128,86,5,0,24,120,0,0,24,217,1,0,0,0,0,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,136,217,1,0,0,0,0,0,3,0,0,0,0,86,5,0,16,172,4,0,2,0,0,0,56,74,0,0,144,101,0,0,48,172,4,0,64,172,4,0,80,172,4,0,136,114,0,0,184,114,0,0,160,172,4,0,160,172,4,0,160,172,4,0,176,173,4,0,224,173,4,0,16,177,4,0,16,177,4,0,64,180,4,0,56,118,0,0,104,118,0,0,112,183,4,0,112,183,4,0,144,183,4,0,144,183,4,0,160,183,4,0,160,183,4,0,176,183,4,0,208,183,4,0,224,183,4,0,224,85,5,0,24,120,0,0,16,184,4,0,48,184,4,0,160,132,0,0,208,132,0,0,2,0,0,0,240,187,4,0,8,240,4,0,0,0,0,0,3,0,0,0,192,85,5,0,16,172,4,0,255,255,255,255,56,74,0,0,144,101,0,0,48,172,4,0,64,172,4,0,80,172,4,0,136,114,0,0,184,114,0,0,160,172,4,0,160,172,4,0,160,172,4,0,176,173,4,0,224,173,4,0,16,177,4,0,16,177,4,0,64,180,4,0,56,118,0,0,104,118,0,0,112,183,4,0,112,183,4,0,144,183,4,0,144,183,4,0,160,183,4,0,160,183,4,0,176,183,4,0,208,183,4,0,224,183,4,0,224,85,5,0,24,120,0,0,16,184,4,0,48,184,4,0,160,132,0,0,208,132,0,0,2,0,0,0,240,187,4,0,248,187,4,0,0,0,0,0,3,0,0,0,232,239,4,0,16,172,4,0,2,0,0,0,152,58,0,0,56,74,0,0,48,172,4,0,64,172,4,0,80,172,4,0,136,114,0,0,184,114,0,0,160,172,4,0,160,172,4,0,160,172,4,0,176,173,4,0,224,173,4,0,16,177,4,0,16,177,4,0,64,180,4,0,56,118,0,0,104,118,0,0,112,183,4,0,112,183,4,0,144,183,4,0,144,183,4,0,160,183,4,0,160,183,4,0,176,183,4,0,208,183,4,0,224,183,4,0,240,183,4,0,24,120,0,0,16,184,4,0,48,184,4,0,160,132,0,0,208,132,0,0,2,0,0,0,240,187,4,0,8,240,4,0,0,0,0,0,3,0,0,0,240,171,4,0,16,172,4,0,255,255,255,255,152,58,0,0,56,74,0,0,48,172,4,0,64,172,4,0,80,172,4,0,136,114,0,0,184,114,0,0,160,172,4,0,160,172,4,0,160,172,4,0,176,173,4,0,224,173,4,0,16,177,4,0,16,177,4,0,64,180,4,0,56,118,0,0,104,118,0,0,112,183,4,0,112,183,4,0,144,183,4,0,144,183,4,0,160,183,4,0,160,183,4,0,176,183,4,0,208,183,4,0,224,183,4,0,240,183,4,0,24,120,0,0,16,184,4,0,48,184,4,0,160,132,0,0,208,132,0,0,2,0,0,0,240,187,4,0,248,187,4,0,0,0,0,0,2,0,0,0,216,171,4,0,0,168,4,0,2,0,0,0,40,35,0,0,152,58,0,0,24,168,4,0,24,168,4,0,32,168,4,0,136,114,0,0,184,114,0,0,96,168,4,0,0,0,0,0,96,168,4,0,184,115,0,0,48,169,4,0,48,169,4,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,152,171,4,0,224,119,0,0,240,119,0,0,176,171,4,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,200,171,4,0,184,47,1,0,0,0,0,0,2,0,0,0,232,167,4,0,0,168,4,0,255,255,255,255,40,35,0,0,152,58,0,0,24,168,4,0,24,168,4,0,32,168,4,0,136,114,0,0,184,114,0,0,96,168,4,0,0,0,0,0,96,168,4,0,184,115,0,0,48,169,4,0,48,169,4,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,152,171,4,0,224,119,0,0,240,119,0,0,176,171,4,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,200,171,4,0,248,180,0,0,0,0,0,0,2,0,0,0,208,167,4,0,40,114,0,0,2,0,0,0,64,31,0,0,40,35,0,0,64,114,0,0,64,114,0,0,72,114,0,0,136,114,0,0,184,114,0,0,232,114,0,0,0,0,0,0,232,114,0,0,184,115,0,0,208,115,0,0,208,115,0,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,208,119,0,0,224,119,0,0,240,119,0,0,0,120,0,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,240,180,0,0,184,47,1,0,0,0,0,0,2,0,0,0,184,167,4,0,40,114,0,0,255,255,255,255,64,31,0,0,40,35,0,0,64,114,0,0,64,114,0,0,72,114,0,0,136,114,0,0,184,114,0,0,232,114,0,0,0,0,0,0,232,114,0,0,184,115,0,0,208,115,0,0,208,115,0,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,208,119,0,0,224,119,0,0,240,119,0,0,0,120,0,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,240,180,0,0,248,180,0,0,0,0,0,0,11,0,0,0,200,113,0,0,64,164,1,0,2,0,0,0,80,195,0,0,64,13,3,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,200,160,2,0,0,0,0,0,11,0,0,0,200,113,0,0,64,164,1,0,255,255,255,255,80,195,0,0,64,13,3,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,0,0,0,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,136,217,1,0,0,0,0,0,2,0,0,0,200,113,0,0,40,114,0,0,2,0,0,0,0,0,0,0,64,31,0,0,64,114,0,0,64,114,0,0,72,114,0,0,136,114,0,0,184,114,0,0,232,114,0,0,0,0,0,0,232,114,0,0,184,115,0,0,208,115,0,0,208,115,0,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,208,119,0,0,224,119,0,0,240,119,0,0,0,120,0,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,240,180,0,0,184,47,1,0,0,0,0,0,2,0,0,0,200,113,0,0,40,114,0,0,255,255,255,255,0,0,0,0,64,31,0,0,64,114,0,0,64,114,0,0,72,114,0,0,136,114,0,0,184,114,0,0,232,114,0,0,0,0,0,0,232,114,0,0,184,115,0,0,208,115,0,0,208,115,0,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,208,119,0,0,224,119,0,0,240,119,0,0,0,120,0,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,240,180,0,0,248,180,0,0,0,0,0,0,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,154,153,153,153,153,153,185,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,2,0,0,0,2,0,0,32,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,30,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,242,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,90,0,0,0,90,0,0,0,95,0,0,0,95,0,0,0,95,0,0,0,95,0,0,0,105,0,0,0,105,0,0,0,105,0,0,0,105,0,0,0,105,0,0,0,105,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,232,255,255,255,226,255,255,255,216,255,255,255,216,255,255,255,211,255,255,255,211,255,255,255,211,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,0,0,0,0,10,0,0,0,10,0,0,0,255,255,255,255,10,0,0,0,10,0,0,0,255,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,226,255,255,255,216,255,255,255,216,255,255,255,211,255,255,255,211,255,255,255,211,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,9,0,0,0,9,0,0,0,10,0,0,0,10,0,0,0,11,0,0,0,11,0,0,0,12,0,0,0,12,0,0,0,13,0,0,0,13,0,0,0,14,0,0,0,14,0,0,0,15,0,0,0,15,0,0,0,16,0,0,0,16,0,0,0,17,0,0,0,17,0,0,0,17,0,0,0,18,0,0,0,18,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,64,0,0,0,64,0,0,0,8,0,0,0,8,0,0,0,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,156,255,255,255,156,255,255,255,151,255,255,255,0,0,0,0,126,255,255,255,126,255,255,255,116,255,255,255,0,0,0,0,0,0,0,0,0,0,8,64],"i8",L3,x.GLOBAL_BASE+20480),d3([0,0,0,0,0,0,16,64,0,0,0,0,0,0,16,64,8,0,0,0,0,0,160,65,0,0,96,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,112,194,0,0,240,193,0,0,32,194,0,0,32,194,0,0,32,194,0,0,32,194,0,0,32,194,0,0,0,64,0,0,150,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,96,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,194,0,0,240,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,0,64,0,0,160,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,64,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,160,193,0,0,160,193,0,0,112,193,0,0,112,193,0,0,112,193,0,0,112,193,0,0,112,193,0,0,0,0,0,0,160,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,32,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,160,193,0,0,112,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,0,0,0,0,160,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,32,65,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,112,193,0,0,112,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,0,0,0,0,170,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,8,64,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,3,1,0,24,3,1,0,48,3,1,0,80,3,1,0,112,3,1,0,160,3,1,0,208,3,1,0,232,3,1,0,40,4,1,0,104,4,1,0,152,4,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,128,0,0,0,33,0,0,0,8,0,0,0,16,0,0,0,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,66,0,0,0,16,0,0,0,32,0,0,0,140,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,0,1,0,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,5,0,0,0,6,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,128,0,0,0,14,0,0,0,4,0,0,0,58,0,0,0,2,0,0,0,8,0,0,0,28,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,128,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,5,0,0,0,6,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,28,0,0,0,8,0,0,0,116,0,0,0,4,0,0,0,16,0,0,0,56,0,0,0,180,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,0,1,0,0,4,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,6,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,128,0,0,0,8,0,0,0,33,0,0,0,4,0,0,0,16,0,0,0,70,0,0,0,2,0,0,0,6,0,0,0,12,0,0,0,23,0,0,0,46,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,128,0,0,0,6,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,6,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,128,0,0,0,12,0,0,0,46,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,23,0,0,0,33,0,0,0,70,0,0,0,2,0,0,0,6,0,0,0,10,0,0,0,14,0,0,0,19,0,0,0,28,0,0,0,39,0,0,0,58,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2],"i8",L3,x.GLOBAL_BASE+30720),d3([1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,66,0,0,0,16,0,0,0,32,0,0,0,140,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,0,1,0,0,8,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,3,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,12,0,0,0,13,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,4,0,0,93,0,0,0,23,0,0,0,116,1,0,0,6,0,0,0,46,0,0,0,186,0,0,0,238,2,0,0,14,0,0,0,33,0,0,0,65,0,0,0,130,0,0,0,4,1,0,0,44,2,0,0,3,0,0,0,10,0,0,0,18,0,0,0,28,0,0,0,39,0,0,0,55,0,0,0,79,0,0,0,111,0,0,0,158,0,0,0,220,0,0,0,56,1,0,0,208,1,0,0,138,2,0,0,82,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,64,64,0,0,144,65,0,4,0,0,8,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,3,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,12,0,0,0,13,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,8,0,0,186,0,0,0,46,0,0,0,232,2,0,0,12,0,0,0,92,0,0,0,116,1,0,0,220,5,0,0,28,0,0,0,66,0,0,0,130,0,0,0,4,1,0,0,8,2,0,0,88,4,0,0,6,0,0,0,20,0,0,0,36,0,0,0,56,0,0,0,78,0,0,0,110,0,0,0,158,0,0,0,222,0,0,0,60,1,0,0,184,1,0,0,112,2,0,0,160,3,0,0,20,5,0,0,164,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,64,64,0,0,144,65,0,8,0,0,6,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,6,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,2,0,0,46,0,0,0,186,0,0,0,16,0,0,0,33,0,0,0,65,0,0,0,93,0,0,0,130,0,0,0,22,1,0,0,7,0,0,0,23,0,0,0,39,0,0,0,55,0,0,0,79,0,0,0,110,0,0,0,156,0,0,0,232,0,0,0,104,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,10,0,0,0,248,2,1,0,0,0,0,0,8,181,0,0,24,206,0,0,8,181,0,0,56,206,0,0,1],"i8",L3,x.GLOBAL_BASE+41032),d3([1],"i8",L3,x.GLOBAL_BASE+49544),d3([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],"i8",L3,x.GLOBAL_BASE+50572),d3([1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,8,245,0,0,8,245,0,0,48,245,0,0,48,245,0,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,112,217,0,0,112,217,0,0,152,217,0,0,152,217,0,0,0,0,0,0,255,255,255,255,255,255,255,255,10,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+52752),d3([1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,16,0,0,0,60,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,30,0,0,0,255,255,255,255,50,0,0,0,255,255,255,255,80,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,136,233,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,168,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,219,0,0,0,0,0,0,72,219,0,0,112,219,0,0,0,0,0,0,0,0,0,0,152,219,0,0,192,219,0,0,0,0,0,0,0,0,0,0,232,219,0,0,16,220,0,0,56,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,81,0,0,0,32,233,0,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,120,233,0,0,0,0,0,0,4,0,0,0,81,0,0,0,184,232,0,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,16,233,0,0,0,0,0,0,4,0,0,0,113,2,0,0,40,230,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,232,0,0,0,0,0,0,4,0,0,0,113,2,0,0,152,227,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,230,0,0,0,0,0,0,2,0,0,0,81,0,0,0,24,227,0,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,112,227,0,0,0,0,0,0,2,0,0,0,81,0,0,0,152,226,0,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,240,226,0,0,0,0,0,0,4,0,0,0,81,0,0,0,48,226,0,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,136,226,0,0,0,0,0,0,2,0,0,0,121,0,0,0,128,225,0,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,0,226,0,0,0,0,0,0,2,0,0,0,121,0,0,0,208,224,0,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,80,225,0,0,0,0,0,0,2,0,0,0,121,0,0,0,32,224,0,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,160,224,0,0,0,0,0,0,2,0,0,0,225,0,0,0,248,222,0,0,1,0,0,0,0,228,91,225,0,224,255,96,4,0,0,0,0,0,0,0,224,223,0,0,0,0,0,0,2,0,0,0,225,0,0,0,208,221,0,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,184,222,0,0,0,0,0,0,2,0,0,0,33,1,0,0,96,220,0,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,136,221,0,0,0,0,0,0,2,5,4,6,6,8,8,8,8,8,9,9,9,9,9,9,9,5,6,6,7,7,8,8,9,8,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,8,9,9,9,9,9,9,9,9,9,7,7,7,8,8,9,9,9,9,9,9,9,9,9,10,10,9,7,7,7,8,8,9,9,9,9,9,9,9,9,9,9,10,10,8,8,8,9,9,9,9,10,10,10,9,10,10,10,10,10,10,8,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,7,7,9,9,7,7,8,8,10,10,11,11,4,7,7,9,9,10,10,8,8,10,10,10,11,10,11,4,7,7,9,9,10,10,8,8,10,9,11,11,11,11,7,9,9,12,12,11,12,10,10,11,10,12,11,11,11,7,9,9,11,11,13,12,9,9,11,10,11,11,12,11,9,10,10,12,12,14,14,10,10,11,12,12,11,11,11,9,10,11,11,13,14,13,10,11,11,11,12,11,12,12,7,8,8,10,9,11,10,11,12,12,11,12,14,12,13,7,8,8,9,10,10,11,12,12,12,11,12,12,12,13,9,9,9,11,11,13,12,12,12,12,11,12,12,13,12,8,10,10,11,10,11,12,12,12,12,12,12,14,12,12,9,11,11,11,12,12,12,12,13,13,12,12,13,13,12,10,11,11,12,11,12,12,12,11,12,13,12,12,12,13,11,11,12,12,12,13,12,12,11,12,13,13,12,12,13,12,11,12,12,13,13,12,13,12,13,13,13,13,14,13,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,4,4,11,11,11,11,11,11,11,11,11,11,11,11,3,11,8,11,11,11,11,11,11,11,11,11,11,11,11,3,9,9,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,5,5,6,6,7,7,7,7,8,8,5,6,6,7,7,7,7,8,8,8,8,5,6,6,7,7,7,7,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,7,8,8,8,8,8,8,9,8,9,9,8,8,8,8,8,8,8,9,9,9,9,8,8,8,8,8,8,8,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,10,11,11,4,6,6,7,7,9,9,11,11,13,12,4,6,6,7,7,9,9,11,11,12,12,6,7,7,9,9,11,11,12,12,13,13,6,7,7,9,9,11,11,12,12,13,13,8,9,9,11,11,12,12,13,13,14,14,8,9,9,11,11,12,12,13,13,14,14,9,11,11,12,12,13,13,14,14,15,15,9,11,11,12,12,13,13,14,14,15,14,11,12,12,13,13,14,14,15,15,16,16,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,4,5,5,7,7,8,8,9,9,9,9,4,5,5,7,7,8,8,9,9,9,9,6,7,7,8,8,8,8,9,9,9,9,6,7,7,8,8,8,8,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,9,9,8,10,10,8,10,10,5,9,9,7,10,10,8,10,10,4,10,10,9,12,12,9,11,11,7,12,11,10,11,13,10,13,13,7,12,12,10,13,12,10,13,13,4,10,10,9,12,12,9,12,12,7,12,12,10,13,13,10,12,13,7,11,12,10,13,13,10,13,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,6,6,7,7,9,9,4,4,5,6,6,7,7,9,9,4,4,4,6,6,7,7,9,9,6,6,6,7,7,8,8,9,9,6,6,6,7,7,8,8,9,9,7,7,7,8,8,8,9,10,10,7,7,7,8,8,9,8,10,10,9,9,9,9,9,10,10,10,10,9,9,9,9,9,10,10,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,5,8,7,8,8,10,10,4,6,6,8,8,8,8,10,10,7,8,8,9,9,9,9,11,11,7,8,8,9,9,9,9,11,11,8,8,8,9,9,10,10,12,11,8,8,8,9,9,10,10,11,11,9,10,10,11,11,11,11,13,12,9,10,10,11,11,12,12,12,13,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,9,9,6,7,7,9,9,6,7,7,9,9,9,9,9,11,11,9,9,9,11,11,6,7,7,9,9,7,7,8,9,10,7,7,8,9,10,9,9,10,10,11,9,9,10,10,12,6,7,7,9,9,7,8,7,10,9,7,8,7,10,9,9,10,9,12,11,10,10,9,12,10,9,10,10,12,11,9,10,10,12,11,9,10,10,12,12,11,11,12,12,13,11,11,12,12,13,9,9,10,12,11,9,10,10,12,12,10,10,10,12,12,11,12,11,13,12,11,12,11,13,12,6,7,7,9,9,7,8,8,10,10,7,8,7,10,9,10,10,10,12,12,10,10,10,12,11,7,8,7,10,10,7,7,9,10,11,8,9,9,11,10,10,10,11,10,12,10,10,11,12,12,7,8,8,10,10,7,9,8,11,10,8,8,9,11,11,10,11,10,12,11,10,11,11,12,12,9,10,10,12,12,9,10,10,12,12,10,11,11,13,12,11,10,12,10,14,12,12,12,13,14,9,10,10,12,12,9,11,10,12,12,10,11,11,12,12,11,12,11,14,12,12,12,12,14,14,5,7,7,9,9,7,7,7,9,10,7,8,8,10,10,10,10,10,11,11,10,10,10,12,12,7,8,8,10,10,8,9,8,11,10,7,8,9,10,11,10,10,10,11,12,10,10,11,11,13,6,7,8,10,10,8,9,9,10,10,7,9,7,11,10,10,11,10,12,12,10,11,10,12,10,9,10,10,12,12,10,11,11,13,12,9,10,10,12,12,12,12,12,14,13,11,11,12,11,14,9,10,10,11,12,10,11,11,12,13,9,10,10,12,12,12,12,12,14,13,11,12,10,14,11,9,9,10,11,12,9,10,10,12,12,9,10,10,12,12,12,12,12,14,14,11,12,12,13,12,9,10,9,12,12,9,10,11,12,13,10,11,10,13,11,12,12,13,13,14,12,12,12,13,13,9,10,10,12,12,10,11,10,13,12,10,10,11,12,13,12,13,12,14,13,12,12,12,13,14,11,12,11,14,13,10,10,11,13,13,12,12,12,14,13,12,10,14,10,15,13,14,14,14,14,11,11,12,13,14,10,12,11,13,13,12,12,12,13,15,12,13,11,15,12,13,13,14,14,14,9,10,9,12,12,9,10,10,12,12,10,10,10,12,12,11,11,12,12,13,12,12,12,14,14,9,10,10,12,12,10,11,10,13,12,10,10,11,12,13,12,12,12,14,13,12,12,13,13,14,9,10,10,12,13,10,10,11,11,12,9,11,10,13,12,12,12,12,13,14,12,13,12,14,13,11,12,11,13,13,12,13,12,14,13,10,11,12,13,13,13,13,13,14,15,12,11,14,12,14,11,11,12,12,13,12,12,12,13,14,10,12,10,14,13,13,13,13,14,15,12,14,11,15,10,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,7,7,6,7,7,9,9,6,7,7,9,9,8,10,9,11,11,9,9,9,11,11,6,8,8,10,10,8,10,10,11,11,8,9,10,11,11,10,11,11,12,12,10,11,11,12,13,6,8,8,10,10,8,10,9,11,11,8,10,9,11,11,10,11,11,12,12,10,11,11,12,12,9,11,11,14,13,10,12,11,14,14,10,12,11,14,13,12,13,13,15,14,12,13,13,15,14,8,11,11,13,14,10,11,12,13,15,10,11,12,14,14,12,13,13,14,15,12,13,13,14,15,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,13,11,12,12,13,14,8,10,10,12,12,9,11,12,13,14,10,12,12,13,13,12,12,13,14,14,11,13,13,15,15,7,10,10,12,12,9,12,11,14,12,10,11,12,13,14,12,13,12,14,14,12,13,13,15,16,10,12,12,15,14,11,12,13,15,15,11,13,13,15,16,14,14,15,15,16,13,14,15,17,15,9,12,12,14,15,11,13,12,15,15,11,13,13,15,15,13,14,13,15,14,13,14,14,17,0,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,14,7,10,10,12,12,10,12,12,13,13,9,11,12,12,13,11,12,13,15,15,11,12,13,14,15,8,10,10,12,12,10,12,11,13,13,10,12,11,13,13,11,13,13,15,14,12,13,12,15,13,9,12,12,14,14,11,13,13,16,15,11,12,13,16,15,13,14,15,16,16,13,13,15,15,16,10,12,12,15,14,11,13,13,14,16,11,13,13,15,16,13,15,15,16,17,13,15,14,16,15,8,11,11,14,15,10,12,12,15,15,10,12,12,15,16,14,15,15,16,17,13,14,14,16,16,9,12,12,15,15,11,13,14,15,17,11,13,13,15,16,14,15,16,19,17,13,15,15,0,17,9,12,12,15,15,11,14,13,16,15,11,13,13,15,16,15,15,15,18,17,13,15,15,17,17,11,15,14,18,16,12,14,15,17,17,12,15,15,18,18,15,15,16,15,19,14,16,16,0,0,11,14,14,16,17,12,15,14,18,17,12,15,15,18,18,15,17,15,18,16,14,16,16,18,18,7,11,11,14,14,10,12,12,15,15,10,12,13,15,15,13,14,15,16,16,14,15,15,18,18,9,12,12,15,15,11,13,13,16,15,11,12,13,16,16,14,15,15,17,16,15,16,16,17,17,9,12,12,15,15,11,13,13,15,17,11,14,13,16,15,13,15,15,17,17,15,15,15,18,17,11,14,14,17,15,12,14,15,17,18,13,13,15,17,17,14,16,16,19,18,16,15,17,17,0,11,14,14,17,17,12,15,15,18,0,12,15,14,18,16,14,17,17,19,0,16,18,15,0,16,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,5,5,6,6,5,6,6,5,7,6,6,7,8,6,7,8,5,6,6,6,8,7,6,8,7,5,6,6,7,8,8,6,7,7,6,8,7,7,7,9,8,9,9,6,7,8,7,9,7,8,9,9,5,6,6,6,7,7,7,8,8,6,8,7,8,9,9,7,7,9,6,7,8,8,9,9,7,9,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,7,9,10,7,9,9,5,8,8,7,10,9,7,9,9,5,8,8,8,10,10,8,10,10,7,10,10,9,10,12,10,12,12,7,10,10,9,12,11,10,12,12,5,8,8,8,10,10,8,10,10,7,10,10,10,12,12,9,11,12,7,10,10,10,12,12,9,12,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,13,9,15,9,16,8,10,13,7,5,8,6,9,7,10,7,10,11,11,6,7,8,8,9,9,9,12,16,8,5,8,6,8,6,9,7,10,12,11,7,7,7,6,7,7,7,11,15,7,5,8,6,7,5,7,6,9,13,13,9,9,8,6,6,5,5,9,14,8,6,8,6,6,4,5,3,5,13,9,9,11,8,10,7,8,4,5,12,11,16,17,15,17,12,13,8,8,15,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,8,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+55148),d3([1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,25,0,0,0,255,255,255,255,45,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,184,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,245,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,246,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,246,0,0,0,0,0,0,0,0,0,0,0,0,0,0,104,246,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,246,0,0,0,0,0,0,184,246,0,0,224,246,0,0,0,0,0,0,0,0,0,0,8,247,0,0,48,247,0,0,88,247,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,81,0,0,0,80,2,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,2,1,0,0,0,0,0,4,0,0,0,81,0,0,0,232,1,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,64,2,1,0,0,0,0,0,4,0,0,0,113,2,0,0,88,255,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,1,1,0,0,0,0,0,4,0,0,0,113,2,0,0,200,252,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,255,0,0,0,0,0,0,2,0,0,0,81,0,0,0,72,252,0,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,160,252,0,0,0,0,0,0,2,0,0,0,169,0,0,0,96,251,0,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,16,252,0,0,0,0,0,0,2,0,0,0,25,0,0,0,40,251,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,251,0,0,0,0,0,0,4,0,0,0,81,0,0,0,192,250,0,0,1,0,0,0,0,176,19,225,0,176,19,97,2,0,0,0,0,0,0,0,24,251,0,0,0,0,0,0,2,0,0,0,225,0,0,0,152,249,0,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,128,250,0,0,0,0,0,0,2,0,0,0,185,1,0,0,128,247,0,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,64,249,0,0,0,0,0,0,1,6,5,7,7,9,9,9,9,10,12,12,10,11,11,10,11,11,11,10,11,6,8,8,9,9,10,10,9,10,11,11,10,11,11,11,11,10,11,11,11,11,6,7,8,9,9,9,10,11,10,11,12,11,10,11,11,11,11,11,11,12,10,8,9,9,10,9,10,10,9,10,10,10,10,10,9,10,10,10,10,9,10,10,9,9,9,9,10,10,9,9,10,10,11,10,9,12,10,11,10,9,10,10,10,8,9,9,10,9,10,9,9,10,10,9,10,9,11,10,10,10,10,10,9,10,8,8,9,9,10,9,11,9,8,9,9,10,11,10,10,10,11,12,9,9,11,8,9,8,11,10,11,10,10,9,11,10,10,10,10,10,10,10,11,11,11,11,8,9,9,9,10,10,10,11,11,12,11,12,11,10,10,10,12,11,11,11,10,8,10,9,11,10,10,11,12,10,11,12,11,11,12,11,12,12,10,11,11,10,9,9,10,11,12,10,10,10,11,10,11,11,10,12,12,10,11,10,11,12,10,9,10,10,11,10,11,11,11,11,11,12,11,11,11,9,11,10,11,10,11,10,9,9,10,11,11,11,10,10,11,12,12,11,12,11,11,11,12,12,12,12,11,9,11,11,12,10,11,11,11,11,11,11,12,11,11,12,11,11,11,10,11,11,9,11,10,11,11,11,10,10,10,11,11,11,12,10,11,10,11,11,11,11,12,9,11,10,11,11,10,10,11,11,9,11,11,12,10,10,10,10,10,11,11,10,9,10,11,11,12,11,10,10,12,11,11,12,11,12,11,11,10,10,11,11,10,12,11,10,11,10,11,10,10,10,11,11,10,10,11,11,11,11,10,10,10,12,11,11,11,11,10,9,10,11,11,11,12,11,11,11,12,10,11,11,11,9,10,11,11,11,11,11,11,10,10,11,11,12,11,10,11,12,11,10,10,11,9,10,11,11,11,11,11,10,11,11,10,12,11,11,11,12,11,11,11,10,10,11,11,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,5,5,5,5,10,10,11,11,11,11,11,11,11,11,5,7,6,8,8,9,10,11,11,11,11,11,11,11,11,6,6,7,9,7,11,10,11,11,11,11,11,11,11,11,5,6,6,11,8,11,11,11,11,11,11,11,11,11,11,5,6,6,9,10,11,10,11,11,11,11,11,11,11,11,7,10,10,11,11,11,11,11,11,11,11,11,11,11,11,7,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,4,6,5,7,7,4,5,6,7,7,6,7,7,7,7,6,7,7,7,7,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,9,9,11,11,12,12,16,16,3,6,6,9,9,11,11,12,12,13,14,18,16,3,6,7,9,9,11,11,13,12,14,14,17,16,7,9,9,11,11,12,12,14,14,14,14,17,16,7,9,9,11,11,13,12,13,13,14,14,17,0,9,11,11,12,13,14,14,14,13,15,14,17,17,9,11,11,12,12,14,14,13,14,14,15,0,0,11,12,12,15,14,15,14,15,14,15,16,17,0,11,12,13,13,13,14,14,15,14,15,15,0,0,12,14,14,15,15,14,16,15,15,17,16,0,18,13,14,14,15,14,15,14,15,16,17,16,0,0,17,17,18,0,16,18,16,0,0,0,17,0,0,16,0,0,16,16,0,15,0,17,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,7,8,8,10,10,4,6,6,8,8,8,8,10,10,6,8,8,9,9,9,9,11,11,7,8,8,9,9,9,9,11,11,7,8,8,9,9,10,10,12,11,7,8,8,9,9,10,10,11,11,9,10,10,11,11,11,12,12,12,9,10,10,11,11,12,12,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,5,6,7,9,9,6,7,6,9,9,9,9,9,10,11,9,9,9,11,10,6,7,7,10,10,7,7,8,10,10,7,8,8,10,10,10,10,10,10,11,9,10,10,11,12,6,7,7,10,10,7,8,8,10,10,7,8,7,10,10,9,10,10,12,11,10,10,10,11,10,9,10,10,12,11,10,10,10,13,11,9,10,10,12,12,11,11,12,12,13,11,11,11,12,13,9,10,10,12,12,10,10,11,12,12,10,10,11,12,12,11,11,11,13,13,11,12,12,13,13,5,7,7,10,10,7,8,8,10,10,7,8,8,10,10,10,11,11,12,12,10,11,10,12,12,7,8,8,11,11,7,8,9,10,11,8,9,9,11,11,11,10,11,10,12,10,11,11,12,13,7,8,8,10,11,8,9,8,12,10,8,9,9,11,12,10,11,10,13,11,10,11,11,13,12,9,11,10,13,12,10,10,11,12,12,10,11,11,13,13,12,10,13,11,14,11,12,12,15,13,9,11,11,13,13,10,11,11,13,12,10,11,11,12,14,12,13,11,14,12,12,12,12,14,14,5,7,7,10,10,7,8,8,10,10,7,8,8,11,10,10,11,11,12,12,10,11,10,12,12,7,8,8,10,11,8,9,9,12,11,8,8,9,10,11,10,11,11,12,13,11,10,11,11,13,6,8,8,10,11,8,9,9,11,11,7,9,7,11,10,10,11,11,12,12,10,11,10,13,10,9,11,10,13,12,10,12,11,13,13,10,10,11,12,13,11,12,13,15,14,11,11,13,12,13,9,10,11,12,13,10,11,11,12,13,10,11,10,13,12,12,13,13,13,14,12,12,11,14,11,8,10,10,12,13,10,11,11,13,13,10,11,10,13,13,12,13,14,15,14,12,12,12,14,13,9,10,10,13,12,10,10,12,13,13,10,11,11,15,12,12,12,13,15,14,12,13,13,15,13,9,10,11,12,13,10,12,10,13,12,10,11,11,12,13,12,14,12,15,13,12,12,12,15,14,11,12,11,14,13,11,11,12,14,14,12,13,13,14,13,13,11,15,11,15,14,14,14,16,15,11,12,12,13,14,11,13,11,14,14,12,12,13,14,15,12,14,12,15,12,13,15,14,16,15,8,10,10,12,12,10,10,10,12,13,10,11,11,13,13,12,12,12,13,14,13,13,13,15,15,9,10,10,12,12,10,11,11,13,12,10,10,11,13,13,12,12,12,14,14,12,12,13,15,14,9,10,10,13,12,10,10,12,12,13,10,11,10,13,13,12,13,13,14,14,12,13,12,14,13,11,12,12,14,13,12,13,12,14,14,10,12,12,14,14,14,14,14,16,14,13,12,14,12,15,10,12,12,14,15,12,13,13,14,16,11,12,11,15,14,13,14,14,14,15,13,14,11,14,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,7,7,6,7,7,9,9,6,7,7,9,9,8,10,9,11,11,8,9,9,11,11,6,8,8,10,10,8,10,10,11,11,8,10,10,11,11,10,11,11,12,12,10,11,11,12,13,6,8,8,10,10,8,10,10,11,11,8,10,10,11,11,9,10,11,12,12,10,11,11,12,12,8,11,11,14,13,10,12,11,15,13,10,12,11,14,14,12,13,12,16,14,12,14,12,16,15,8,11,11,13,14,10,11,12,13,15,10,11,12,13,15,11,12,13,14,15,12,12,14,14,16,5,8,8,11,11,9,11,11,12,12,8,10,11,12,12,11,12,12,15,14,11,12,12,14,14,7,11,10,13,12,10,11,12,13,14,10,12,12,14,13,12,13,13,14,15,12,13,13,15,15,7,10,11,12,13,10,12,11,14,13,10,12,13,13,15,12,13,12,14,14,11,13,13,15,16,9,12,12,15,14,11,13,13,15,16,11,13,13,16,16,13,14,15,15,15,12,14,15,17,16,9,12,12,14,15,11,13,13,15,16,11,13,13,16,18,13,14,14,17,16,13,15,15,17,18,5,8,9,11,11,8,11,11,12,12,8,10,11,12,12,11,12,12,14,14,11,12,12,14,15,7,11,10,12,13,10,12,12,14,13,10,11,12,13,14,11,13,13,15,14,12,13,13,14,15,7,10,11,13,13,10,12,12,13,14,10,12,12,13,13,11,13,13,16,16,12,13,13,15,14,9,12,12,16,15,10,13,13,15,15,11,13,13,17,15,12,15,15,18,17,13,14,14,15,16,9,12,12,15,15,11,13,13,15,16,11,13,13,15,15,12,15,15,16,16,13,15,14,17,15,7,11,11,15,15,10,13,13,16,15,10,13,13,15,16,14,15,15,17,19,13,15,14,15,18,9,12,12,16,16,11,13,14,17,16,11,13,13,17,16,15,15,16,17,19,13,15,16,0,18,9,12,12,16,15,11,14,13,17,17,11,13,14,16,16,15,16,16,19,18,13,15,15,17,19,11,14,14,19,16,12,14,15,0,18,12,16,15,18,17,15,15,18,16,19,14,15,17,19,19,11,14,14,18,19,13,15,14,19,19,12,16,15,18,17,15,17,15,0,16,14,17,16,19,0,7,11,11,14,14,10,12,12,15,15,10,13,13,16,15,13,15,15,17,0,14,15,15,16,19,9,12,12,16,16,11,14,14,16,16,11,13,13,16,16,14,17,16,19,0,14,18,17,17,19,9,12,12,15,16,11,13,13,15,17,12,14,13,19,16,13,15,15,17,19,15,17,16,17,19,11,14,14,19,16,12,15,15,19,17,13,14,15,17,19,14,16,17,19,19,16,15,16,17,19,11,15,14,16,16,12,15,15,19,0,12,14,15,19,19,14,16,16,0,18,15,19,14,18,16,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,6,7,8,6,7,8,5,7,7,6,8,8,7,9,7,5,7,7,7,9,9,7,8,8,6,9,8,7,7,10,8,10,10,6,8,8,8,10,8,8,10,10,5,7,7,7,8,8,7,8,9,6,8,8,8,10,10,8,8,10,6,8,9,8,10,10,7,10,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,8,10,10,7,10,10,5,8,8,7,10,10,8,10,10,4,9,8,8,11,11,8,11,11,7,11,11,10,11,13,10,13,13,7,11,11,10,13,12,10,13,13,5,9,8,8,11,11,8,11,11,7,11,11,9,13,13,10,12,13,7,11,11,10,13,13,10,13,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,11,9,12,8,7,10,6,4,5,5,7,5,6,16,9,5,5,6,7,7,9,16,7,4,6,5,7,5,7,17,10,7,7,8,7,7,8,18,7,5,6,4,5,4,5,15,7,6,7,5,6,4,5,15,12,13,18,12,17,11,9,17,6,0,0,0,6,0,0,0,120,45,1,0,160,45,1,0,200,45,1,0,240,45,1,0,24,46,1,0,0,0,0,0,56,43,1,0,96,43,1,0,136,43,1,0,176,43,1,0,216,43,1,0,0,0,0,0,216,39,1,0,0,40,1,0,40,40,1,0,80,40,1,0,120,40,1,0,160,40,1,0,200,40,1,0,240,40,1,0,120,36,1,0,160,36,1,0,200,36,1,0,240,36,1,0,24,37,1,0,64,37,1,0,104,37,1,0,144,37,1,0,80,31,1,0,120,31,1,0,160,31,1,0,200,31,1,0,240,31,1,0,24,32,1,0,64,32,1,0,104,32,1,0,144,32,1,0,184,32,1,0,224,32,1,0,8,33,1,0,40,26,1,0,80,26,1,0,120,26,1,0,160,26,1,0,200,26,1,0,240,26,1,0,24,27,1,0,64,27,1,0,104,27,1,0,144,27,1,0,184,27,1,0,224,27,1,0,232,23,1,0,16,24,1,0,56,24,1,0,96,24,1,0,136,24,1,0,0,0,0,0,216,16,1,0,0,17,1,0,40,17,1,0,80,17,1,0,120,17,1,0,160,17,1,0,200,17,1,0,240,17,1,0,24,18,1,0,64,18,1,0,104,18,1,0,144,18,1,0,184,18,1,0,224,18,1,0,8,19,1,0,0,0,0,0,200,9,1,0,240,9,1,0,24,10,1,0,64,10,1,0,104,10,1,0,144,10,1,0,184,10,1,0,224,10,1,0,8,11,1,0,48,11,1,0,88,11,1,0,128,11,1,0,168,11,1,0,208,11,1,0,248,11,1,0,0,0,0,0,160,4,1,0,200,4,1,0,240,4,1,0,24,5,1,0,64,5,1,0,104,5,1,0,144,5,1,0,184,5,1,0,224,5,1,0,8,6,1,0,48,6,1,0,88,6,1,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,192,9,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,128,9,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,64,9,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,192,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,160,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,32,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,8,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,208,7,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,80,7,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,56,7,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,0,7,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,128,6,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,8,4,8,4,8,4,8,5,8,5,8,6,8,4,8,4,8,5,8,5,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,3,4,3,5,4,6,4,6,5,7,6,7,6,8,6,8,7,9,8,10,8,12,9,13,10,15,10,15,11,14,0,0,0,0,0,0,0,4,4,4,4,4,4,3,4,4,4,4,4,5,4,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,3,4,3,4,4,5,5,6,6,7,7,7,8,8,11,8,9,9,9,10,11,11,11,9,10,10,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,3,4,3,4,4,5,4,5,4,6,4,6,5,6,5,7,5,7,6,8,6,8,6,8,7,8,7,9,7,9,8,0,0,0,0,0,0,0,4,5,4,4,4,5,4,4,4,5,4,5,4,5,3,5,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,3,5,3,5,4,5,4,5,4,5,5,5,5,6,5,6,5,7,5,8,6,8,6,8,6,8,6,8,7,9,7,9,7,11,9,11,11,12,11,14,12,14,16,14,16,13,16,14,16,12,15,13,16,14,16,13,14,12,15,13,15,13,13,13,15,12,14,14,15,13,15,12,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,2,4,5,4,5,4,5,4,5,5,5,5,5,5,6,5,6,5,6,6,7,6,7,6,8,7,8,7,8,7,8,7,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,5,6,6,6,6,5,6,6,7,6,7,6,7,6,7,6,8,7,8,7,8,7,8,7,8,7,9,7,9,7,9,7,9,8,9,8,10,8,10,8,10,7,10,6,10,8,10,8,11,7,10,7,11,8,11,11,12,12,11,11,12,11,13,11,13,11,13,12,15,12,13,13,14,14,14,14,14,15,15,15,16,14,17,19,19,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,2,4,6,17,4,5,7,17,8,7,10,17,17,17,17,17,3,4,6,15,3,3,6,15,7,6,9,17,17,17,17,17,6,8,10,17,6,6,8,16,9,8,10,17,17,15,16,17,17,17,17,17,12,15,15,16,12,15,15,16,16,16,16,16,3,3,3,14,5,4,4,11,8,6,6,10,17,12,11,17,6,5,5,15,5,3,4,11,8,5,5,8,16,9,10,14,10,8,9,17,8,6,6,13,10,7,7,10,16,11,13,14,17,17,17,17,17,16,16,16,16,15,16,16,16,16,16,16,1,2,3,6,5,4,7,7,1,0,0,0,16,0,0,0,200,16,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,192,16,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,192,15,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,128,15,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,0,15,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,224,14,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,96,14,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,64,14,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,192,13,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,168,13,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,112,13,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,240,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,216,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,160,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,32,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,6,5,7,5,7,7,7,7,7,5,7,5,7,5,7,5,7,7,7,7,7,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,2,4,3,4,4,4,5,5,6,5,6,5,7,6,6,6,7,7,7,8,9,9,9,12,10,11,10,10,12,10,10,0,0,0,0,0,0,0,3,4,4,4,4,4,4,4,4,5,4,5,4,5,4,4,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,6,3,7,3,7,5,7,7,7,7,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,4,4,4,4,4,4,5,5,5,5,6,6,7,6,7,6,8,6,9,7,9,7,9,9,11,9,12,10,12,0,0,0,0,0,0,0,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,3,4,3,4,4,5,4,5,5,5,6,6,6,7,6,8,6,8,6,9,7,10,7,10,7,10,7,12,7,12,7,12,9,12,11,12,10,12,10,12,11,12,12,12,10,12,10,12,10,12,9,12,11,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,10,10,12,12,12,12,12,10,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,2,4,5,4,5,4,5,4,5,5,5,5,5,5,6,5,6,5,6,6,6,6,7,7,7,7,7,7,8,8,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,5,7,5,7,4,7,4,8,4,8,4,8,4,8,3,8,4,9,4,9,4,9,4,9,4,9,5,9,5,9,6,9,7,9,8,9,9,9,10,9,11,9,14,9,15,10,15,10,15,10,15,10,15,11,15,10,14,12,14,11,14,13,14,13,15,15,15,12,15,15,15,13,15,13,15,13,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,14,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,7,6,7,6,7,6,7,6,5,5,5,5,5,5,6,5,6,5,6,5,6,5,6,5,6,5,7,5,7,5,7,5,8,5,8,5,8,5,9,5,9,6,10,6,10,6,11,6,11,6,11,6,11,6,11,6,11,6,11,6,12,7,11,7,11,7,11,7,11,7,10,7,11,7,11,7,12,7,11,8,11,8,11,8,11,8,13,8,12,9,11,9,11,9,11,10,12,10,12,9,12,10,12,11,14,12,16,12,12,11,14,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,16,16,16,16,2,4,7,13,4,5,7,15,8,7,10,16,16,14,16,16,2,4,7,16,3,4,7,14,8,8,10,16,16,16,15,16,6,8,11,16,7,7,9,16,11,9,13,16,16,16,15,16,16,16,16,16,14,16,16,16,16,16,16,16,16,16,16,16,3,3,6,16,5,5,7,16,9,8,11,16,16,16,16,16,5,5,8,16,5,5,7,16,8,7,9,16,16,16,16,16,9,9,12,16,6,8,11,16,9,10,11,16,16,16,16,16,16,16,16,16,13,16,16,16,15,16,16,16,16,16,16,16,5,4,7,16,6,5,8,16,9,8,10,16,16,16,16,16,5,5,7,15,5,4,6,15,7,6,8,16,16,16,16,16,9,9,11,15,7,7,9,16,8,8,9,16,16,16,16,16,16,16,16,16,15,15,15,16,15,15,14,16,16,16,16,16,8,8,11,16,8,9,10,16,11,10,14,16,16,16,16,16,6,8,10,16,6,7,10,16,8,8,11,16,14,16,16,16,10,11,14,16,9,9,11,16,10,10,11,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,12,16,15,16,12,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,1,2,3,6,4,7,5,7,2,6,8,9,7,11,13,13,1,3,5,5,6,6,12,10,1,0,0,0,16,0,0,0,216,23,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,208,23,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,208,22,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,144,22,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,16,22,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,240,21,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,112,21,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,80,21,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,208,20,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,184,20,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,128,20,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,0,20,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,232,19,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,176,19,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,48,19,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,5,2,6,3,6,4,7,4,7,5,9,5,11,6,11,6,11,7,11,6,11,6,11,9,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,2,4,2,5,3,5,4,6,6,6,7,7,8,7,8,7,8,7,9,8,9,8,9,8,10,8,11,9,12,9,12,0,0,0,0,0,0,0,4,5,4,5,4,5,4,5,3,5,3,5,3,5,4,5,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,7,3,8,3,10,3,8,3,9,3,8,4,9,4,9,5,9,6,10,6,9,7,11,7,12,9,13,10,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,4,3,4,4,4,4,5,5,5,5,5,6,5,7,5,8,6,8,6,9,7,10,7,10,8,10,8,11,9,11,0,0,0,0,0,0,0,4,5,4,5,3,5,3,5,3,5,4,4,4,4,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,3,4,3,4,4,5,4,5,4,5,5,6,5,6,5,7,5,7,6,7,6,8,7,8,7,8,7,9,8,9,9,9,9,10,10,10,11,9,12,9,12,9,15,10,14,9,13,10,13,10,12,10,12,10,13,10,12,11,13,11,14,12,13,13,14,14,13,14,15,14,16,13,13,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,15,1,5,5,5,5,5,5,5,6,5,6,5,6,5,6,5,6,6,7,7,7,7,8,7,8,8,9,8,10,9,10,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,5,8,4,9,4,9,4,9,4,9,4,9,4,9,4,9,4,9,4,9,4,8,4,8,4,9,5,9,5,9,5,9,5,9,6,10,6,10,7,10,8,11,9,11,11,12,13,12,14,13,15,13,15,14,16,14,17,15,17,15,15,16,16,15,16,16,16,15,18,16,15,17,17,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,2,5,5,4,5,4,5,4,5,4,6,5,6,5,6,5,6,5,7,5,7,6,8,6,8,6,8,6,9,6,9,6,5,5,5,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,7,5,7,5,7,5,7,5,8,6,8,6,8,6,9,6,9,6,10,6,10,6,11,6,11,7,11,7,12,7,12,7,12,7,12,7,12,7,12,7,12,7,12,8,13,8,12,8,12,8,13,8,13,9,13,9,13,9,13,9,12,10,12,10,13,10,14,11,14,12,14,13,14,13,14,14,15,16,15,15,15,14,15,17,21,22,22,21,22,22,22,22,22,22,21,21,21,21,21,21,21,21,21,21,2,3,7,13,4,4,7,15,8,6,9,17,21,16,15,21,2,5,7,11,5,5,7,14,9,7,10,16,17,15,16,21,4,7,10,17,7,7,9,15,11,9,11,16,21,18,15,21,18,21,21,21,15,17,17,19,21,19,18,20,21,21,21,20,1,5,7,21,5,8,9,21,10,9,12,20,20,16,20,20,4,8,9,20,6,8,9,20,11,11,13,20,20,15,17,20,9,11,14,20,8,10,15,20,11,13,15,20,20,20,20,20,20,20,20,20,13,20,20,20,18,18,20,20,20,20,20,20,3,6,8,20,6,7,9,20,10,9,12,20,20,20,20,20,5,7,9,20,6,6,9,20,10,9,12,20,20,20,20,20,8,10,13,20,8,9,12,20,11,10,12,20,20,20,20,20,18,20,20,20,15,17,18,20,18,17,18,20,20,20,20,20,7,10,12,20,8,9,11,20,14,13,14,20,20,20,20,20,6,9,12,20,7,8,11,20,12,11,13,20,20,20,20,20,9,11,15,20,8,10,14,20,12,11,14,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,11,16,18,20,15,15,17,20,20,17,20,20,20,20,20,20,9,14,16,20,12,12,15,20,17,15,18,20,20,20,20,20,16,19,18,20,15,16,20,20,17,17,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,1,4,2,6,3,7,5,7,2,10,8,14,7,12,11,14,1,5,3,7,4,9,7,13,1,0,0,0,0,1,0,0,40,25,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,32,25,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,0,0,0,16,25,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,240,24,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,176,24,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,2,4,3,5,4,5,5,5,5,6,6,6,6,6,6,6,7,7,8,6,9,7,12,11,16,13,16,12,15,13,15,12,14,12,15,15,15,0,0,0,0,0,0,0,0,0,0,3,3,3,4,3,4,4,4,4,4,5,5,5,6,6,0,0,0,0,0,0,0,0,0,0,0,2,3,2,3,3,3,0,0,0,0,0,0,1,3,2,3,0,0,0,0,4,5,6,11,5,5,6,10,7,7,6,6,14,13,9,9,6,6,6,10,6,6,6,9,8,7,7,9,14,12,8,11,8,7,7,11,8,8,7,11,9,9,7,9,13,11,9,13,19,19,18,19,15,16,16,19,11,11,10,13,10,10,9,15,5,5,6,13,6,6,6,11,8,7,6,7,14,11,10,11,6,6,6,12,7,6,6,11,8,7,7,11,13,11,9,11,9,7,6,12,8,7,6,12,9,8,8,11,13,10,7,13,19,19,17,19,17,14,14,19,12,10,8,12,13,10,9,16,7,8,7,12,7,7,7,11,8,7,7,8,12,12,11,11,8,8,7,12,8,7,6,11,8,7,7,10,10,11,10,11,9,8,8,13,9,8,7,12,10,9,7,11,9,8,7,11,18,18,15,18,18,16,17,18,15,11,10,18,11,9,9,18,16,16,13,16,12,11,10,16,12,11,9,6,15,12,11,13,16,16,14,14,13,11,12,16,12,9,9,13,13,10,10,12,17,18,17,17,14,15,14,16,14,12,14,15,12,10,11,12,18,18,18,18,18,18,18,18,18,12,13,18,16,11,9,18,1,0,0,0,8,0,0,0,72,31,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,8,31,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,200,30,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,72,30,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,40,30,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,168,29,1],"i8",L3,x.GLOBAL_BASE+62212),d3([1,0,0,0,18,0,0,0,144,29,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,88,29,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,216,28,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,192,28,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,136,28,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,8,28,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,2,4,3,4,4,4,5,4,7,5,8,5,11,6,10,6,12,7,12,7,12,8,12,8,12,10,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,3,6,3,6,4,7,4,7,4,7,4,8,4,8,4,8,4,8,4,9,4,9,5,10,5,10,7,10,8,10,8,0,0,0,0,0,0,0,4,4,4,4,4,4,4,5,3,5,3,5,4,6,4,6,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,1,5,3,5,3,5,4,7,5,10,7,10,7,12,10,14,10,14,9,14,11,14,14,14,13,13,13,13,13,13,13,0,0,0,0,0,0,0,4,5,4,6,4,8,3,9,3,9,2,9,3,8,4,9,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,3,5,3,5,3,6,3,6,4,6,4,7,4,7,5,8,5,8,6,9,7,9,7,9,8,10,9,10,9,11,10,11,11,11,11,11,11,12,12,12,13,12,13,12,14,12,15,12,14,12,16,13,17,13,17,14,17,14,16,13,17,14,17,14,17,15,17,15,15,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,16,16,16,16,16,16,16,16,16,16,2,5,5,4,5,4,5,4,5,5,5,5,5,5,6,5,6,5,6,5,7,6,7,6,7,6,8,6,9,7,9,7,5,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,7,5,7,5,7,5,7,5,7,5,7,5,8,5,8,5,8,5,8,5,8,6,8,6,8,6,9,6,9,6,9,6,9,6,9,7,9,7,9,7,9,7,10,7,10,8,10,8,10,8,10,8,10,8,11,8,11,8,11,8,11,8,11,9,12,9,12,9,12,9,12,9,12,10,12,10,13,11,13,11,14,12,14,13,15,14,16,14,17,15,18,16,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,3,6,10,17,4,8,11,20,8,10,11,20,20,20,20,20,2,4,8,18,4,6,8,17,7,8,10,20,20,17,20,20,3,5,8,17,3,4,6,17,8,8,10,17,17,12,16,20,13,13,15,20,10,10,12,20,15,14,15,20,20,20,19,19,1,4,10,19,3,8,13,19,7,12,19,19,19,19,19,19,2,6,11,19,8,13,19,19,9,11,19,19,19,19,19,19,6,7,13,19,9,13,19,19,10,13,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,1,3,4,7,2,5,6,7,1,0,0,0,8,0,0,0,112,36,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,48,36,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,240,35,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,112,35,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,80,35,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,208,34,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,184,34,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,128,34,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,0,34,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,232,33,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,176,33,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,48,33,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,1,6,3,7,3,8,4,8,5,8,8,8,9,7,8,8,7,7,7,8,9,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,3,5,4,6,4,6,4,7,4,7,4,8,4,8,4,9,4,9,4,10,4,10,5,10,5,11,5,12,6,12,6,0,0,0,0,0,0,0,4,4,4,4,4,4,4,4,4,4,4,4,4,5,4,5,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,8,3,8,4,8,4,8,6,8,5,8,4,8,4,8,6,8,7,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,4,4,4,4,5,4,5,4,6,5,7,5,7,6,8,6,8,6,9,7,9,7,10,7,9,8,11,8,11,0,0,0,0,0,0,0,4,5,4,5,4,5,3,5,3,5,3,5,4,4,4,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,3,5,3,6,4,6,4,7,4,7,4,7,4,8,4,8,4,9,5,9,5,9,5,9,6,10,6,10,6,11,7,10,7,10,8,11,9,11,9,11,10,11,11,12,11,11,12,15,15,12,14,11,14,12,14,11,14,13,14,12,14,11,14,11,14,12,14,11,14,11,14,13,13,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,2,5,5,5,5,5,5,4,5,5,5,5,5,5,5,5,6,5,6,5,6,5,7,6,7,6,7,6,8,6,8,6,5,5,5,5,5,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,6,6,6,7,6,7,6,7,6,7,6,7,6,7,6,8,6,8,6,8,7,8,7,8,7,8,7,9,7,9,8,9,8,9,8,10,8,10,9,10,9,10,9,11,9,11,9,10,10,11,10,11,10,11,11,11,11,11,11,12,13,14,14,14,15,15,16,16,16,17,15,16,15,16,16,17,17,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,7,6,9,17,7,6,8,17,12,9,11,16,16,16,16,16,5,4,7,16,5,3,6,14,9,6,8,15,16,16,16,16,5,4,6,13,3,2,4,11,7,4,6,13,16,11,10,14,12,12,12,16,9,7,10,15,12,9,11,16,16,15,15,16,1,6,12,16,4,12,15,16,9,15,16,16,16,16,16,16,2,5,11,16,5,11,13,16,9,13,16,16,16,16,16,16,4,8,12,16,5,9,12,16,9,13,15,16,16,16,16,16,15,16,16,16,11,14,13,16,12,15,16,16,16,16,16,15,1,6,3,7,2,4,5,7,1,0,0,0,64,0,0,0,152,39,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,152,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,9,0,0,0,136,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,104,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,40,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,9,0,0,0,24,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,248,37,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,184,37,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,2,4,3,6,3,7,3,8,5,8,6,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,0,0,0,0,0,0,0,0,0,2,3,3,4,3,4,4,5,4,6,5,6,7,6,8,8,0,0,0,0,0,0,0,0,3,3,3,3,2,4,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,5,2,5,3,5,3,6,3,6,4,7,6,7,8,7,9,8,9,9,9,10,9,11,13,11,13,10,10,13,13,13,13,13,13,12,12,12,12,0,0,0,0,0,0,0,0,0,3,4,3,4,3,5,3,6,3,6,4,6,4,7,5,7,0,0,0,0,0,0,0,0,2,3,3,3,3,4,3,4,0,0,0,0,0,0,0,5,6,8,15,6,9,10,15,10,11,12,15,15,15,15,15,4,6,7,15,6,7,8,15,9,8,9,15,15,15,15,15,6,8,9,15,7,7,8,15,10,9,10,15,15,15,15,15,15,13,15,15,15,10,11,15,15,13,13,15,15,15,15,15,4,6,7,15,6,8,9,15,10,10,12,15,15,15,15,15,2,5,6,15,5,6,7,15,8,6,7,15,15,15,15,15,5,6,8,15,5,6,7,15,9,6,7,15,15,15,15,15,14,12,13,15,12,10,11,15,15,15,15,15,15,15,15,15,7,8,9,15,9,10,10,15,15,14,14,15,15,15,15,15,5,6,7,15,7,8,9,15,12,9,10,15,15,15,15,15,7,7,9,15,7,7,8,15,12,8,9,15,15,15,15,15,13,13,14,15,12,11,12,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,13,13,13,15,15,15,15,15,15,15,15,15,15,15,15,15,15,12,13,15,15,12,13,15,15,14,15,15,15,15,15,15,15,15,15,15,15,15,13,15,15,15,15,15,15,15,15,15,7,5,5,9,9,6,6,9,12,8,7,8,11,8,9,15,6,3,3,7,7,4,3,6,9,6,5,6,8,6,8,15,8,5,5,9,8,5,4,6,10,7,5,5,11,8,7,15,14,15,13,13,13,13,8,11,15,10,7,6,11,9,10,15,1,0,0,0,64,0,0,0,248,42,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,248,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,9,0,0,0,232,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,200,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,136,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,9,0,0,0,120,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,88,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,24,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,7,2,7,3,8,4,9,5,9,8,10,11,11,12,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,13,13,13,13,0,0,0,0,0,0,0,0,0,3,4,3,6,3,6,3,6,3,7,3,8,4,9,4,9,0,0,0,0,0,0,0,0,3,3,2,3,3,4,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,5,3,5,3,5,4,5,4,5,5,5,5,6,5,6,5,6,5,6,5,6,5,7,8,9,11,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,0,0,0,0,0,0,3,3,3,4,4,4,4,5,4,5,4,5,4,6,4,6,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,8,13,17,17,8,11,17,17,11,13,17,17,17,17,17,17,6,10,16,17,6,10,15,17,8,10,16,17,17,17,17,17,9,13,15,17,8,11,17,17,10,12,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,6,11,15,17,7,10,15,17,8,10,17,17,17,15,17,17,4,8,13,17,4,7,13,17,6,8,15,17,16,15,17,17,6,11,15,17,6,9,13,17,8,10,17,17,15,17,17,17,16,17,17,17,12,14,15,17,13,14,15,17,17,17,17,17,5,10,14,17,5,9,14,17,7,9,15,17,15,15,17,17,3,7,12,17,3,6,11,17,5,7,13,17,12,12,17,17,5,9,14,17,3,7,11,17,5,8,13,17,13,11,16,17,12,17,17,17,9,14,15,17,10,11,14,17,16,14,17,17,8,12,17,17,8,12,17,17,10,12,17,17,17,17,17,17,5,10,17,17,5,9,15,17,7,9,17,17,13,13,17,17,7,11,17,17,6,10,15,17,7,9,15,17,12,11,17,17,12,15,17,17,11,14,17,17,11,10,15,17,17,16,17,17,10,7,8,13,9,6,7,11,10,8,8,12,17,17,17,17,7,5,5,9,6,4,4,8,8,5,5,8,16,14,13,16,7,5,5,7,6,3,3,5,8,5,4,7,14,12,12,15,10,7,8,9,7,5,5,6,9,6,5,5,15,12,9,10,1,0,0,0,0,1,0,0,120,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,112,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,0,0,0,96,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,64,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,0,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,4,3,5,3,5,3,6,4,7,4,7,5,7,6,7,6,7,8,10,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,0,0,0,0,0,0,0,0,0,0,4,3,4,3,4,3,5,3,5,4,5,4,6,4,6,0,0,0,0,0,0,0,0,0,0,0,2,2,3,3,3,3,0,0,0,0,0,0,2,2,2,2,0,0,0,0,6,7,7,12,6,6,7,12,7,6,6,10,15,12,11,13,7,7,8,13,7,7,8,12,7,7,7,11,12,12,11,13,10,9,9,11,9,9,9,10,10,8,8,12,14,12,12,14,11,11,12,14,11,12,11,15,15,12,13,15,15,15,15,15,6,6,7,10,6,6,6,11,7,6,6,9,14,12,11,13,7,7,7,10,6,6,7,9,7,7,6,10,13,12,10,12,9,9,9,11,9,9,8,9,9,8,8,10,13,12,10,12,12,12,11,13,12,12,11,12,15,13,12,15,15,15,14,14,6,6,6,8,6,6,5,6,7,7,6,5,11,10,9,8,7,6,6,7,6,6,5,6,7,7,6,6,11,10,9,8,8,8,8,9,8,8,7,8,8,8,6,7,11,10,9,9,14,11,10,14,14,11,10,15,13,11,9,11,15,12,12,11,11,9,8,8,10,9,8,9,11,10,9,8,12,11,12,11,13,10,8,9,11,10,8,9,10,9,8,9,10,8,12,12,15,11,10,10,13,11,10,10,8,8,7,12,10,9,11,12,15,12,11,15,13,11,11,15,12,14,11,13,15,15,13,13,1,0,0,0,0,1,0,0,184,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,176,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,0,0,0,160,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,128,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,64,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,4,3,5,3,5,3,5,4,6,5,6,5,7,6,6,7,7,9,9,11,11,16,11,14,10,11,11,13,16,15,15,15,15,15,15,15,15,15,0,0,0,0,0,0,0,0,0,0,3,3,4,3,4,3,4,4,5,4,5,4,6,5,6,0,0,0,0,0,0,0,0,0,0,0,3,2,3,2,3,3,0,0,0,0,0,0,2,2,2,2,0,0,0,0,7,7,7,11,6,6,7,11,7,6,6,10,12,10,10,13,7,7,8,11,7,7,7,11,7,6,7,10,11,10,10,13,10,10,9,12,9,9,9,11,8,8,8,11,13,11,10,14,15,15,14,15,15,14,13,14,15,12,12,17,17,17,17,17,7,7,6,9,6,6,6,9,7,6,6,8,11,11,10,12,7,7,7,9,7,6,6,9,7,6,6,9,13,10,10,11,10,9,8,10,9,8,8,10,8,8,7,9,13,12,10,11,17,14,14,13,15,14,12,13,17,13,12,15,17,17,14,17,7,6,6,7,6,6,5,7,6,6,6,6,11,9,9,9,7,7,6,7,7,6,6,7,6,6,6,6,10,9,8,9,10,9,8,8,9,8,7,8,8,7,6,8,11,10,9,10,17,17,12,15,15,15,12,14,14,14,10,12,15,13,12,13,11,10,8,10,11,10,8,8,10,9,7,7,10,9,9,11,11,11,9,10,11,10,8,9,10,8,6,8,10,9,9,11,14,13,10,12,12,11,10,10,8,7,8,10,10,11,11,12,17,17,15,17,17,17,17,17,17,13,12,17,17,17,14,17,200,47,1,0,216,72,1,0,200,47,1,0,248,72,1,0,1],"i8",L3,x.GLOBAL_BASE+72464),d3([1],"i8",L3,x.GLOBAL_BASE+78916),d3([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],"i8",L3,x.GLOBAL_BASE+79944),d3([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],"i8",L3,x.GLOBAL_BASE+81996),d3([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,120,124,1,0,120,124,1,0,160,124,1,0,160,124,1,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,48,84,1,0,48,84,1,0,88,84,1,0,88,84,1,0,0,0,0,0,255,255,255,255,255,255,255,255,10,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+83152),d3([1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,231,3,0,0,0,0,0,0,231,3,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,16,124,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,85,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,85,1,0,0,0,0,0,0,0,0,0,0,0,0,0,104,85,1,0,0,0,0,0,0,0,0,0,0,0,0,0,144,85,1,0,0,0,0,0,0,0,0,0,0,0,0,0,184,85,1,0,0,0,0,0,224,85,1,0,8,86,1,0,0,0,0,0,0,0,0,0,48,86,1,0,88,86,1,0,0,0,0,0,0,0,0,0,128,86,1,0,168,86,1,0,208,86,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,88,98,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,0,124,1,0,0,0,0,0,4,0,0,0,113,2,0,0,200,95,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,98,1,0,0,0,0,0,2,0,0,0,81,0,0,0,72,95,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,160,95,1,0,0,0,0,0,2,0,0,0,81,0,0,0,200,94,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,32,95,1,0,0,0,0,0,2,0,0,0,33,1,0,0,88,93,1,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,128,94,1,0,0,0,0,0,4,0,0,0,81,0,0,0,240,92,1,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,72,93,1,0,0,0,0,0,2,0,0,0,121,0,0,0,64,92,1,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,192,92,1,0,0,0,0,0,2,0,0,0,169,0,0,0,88,91,1,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,8,92,1,0,0,0,0,0,2,0,0,0,25,0,0,0,32,91,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,91,1,0,0,0,0,0,2,0,0,0,169,0,0,0,56,90,1,0,1,0,0,0,0,136,93,225,0,176,19,97,4,0,0,0,0,0,0,0,232,90,1,0,0,0,0,0,2,0,0,0,225,0,0,0,16,89,1,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,248,89,1,0,0,0,0,0,2,0,0,0,185,1,0,0,248,86,1,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,184,88,1,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,9,8,9,9,9,9,9,9,9,9,11,11,12,7,7,7,7,8,8,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,7,7,7,7,8,8,9,8,9,9,9,9,9,9,10,10,10,10,11,11,12,8,8,8,8,8,8,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,7,7,8,8,8,8,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,12,11,9,9,8,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,8,8,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,12,11,12,11,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,12,11,12,11,11,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,12,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,12,11,11,12,11,10,10,10,10,10,10,10,10,10,10,10,10,11,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,12,11,12,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,12,11,12,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,12,11,11,12,11,11,12,10,10,11,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,12,12,11,12,11,11,12,12,12,11,11,10,10,10,10,10,10,10,10,10,11,12,12,11,12,12,11,12,11,11,11,11,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,5,5,7,7,9,9,11,11,12,12,13,13,6,5,5,6,6,9,9,10,10,12,12,12,13,15,14,6,5,5,7,7,9,9,10,10,12,12,12,13,14,13,17,7,7,8,8,10,10,11,11,12,13,13,13,13,13,17,7,7,8,8,10,10,11,11,13,13,13,13,14,14,17,11,11,9,9,11,11,12,12,12,13,13,14,15,13,17,12,12,9,9,11,11,12,12,13,13,13,13,14,16,17,17,17,11,12,12,12,13,13,13,14,15,14,15,15,17,17,17,12,12,11,11,13,13,14,14,15,14,15,15,17,17,17,15,15,13,13,14,14,15,14,15,15,16,15,17,17,17,15,15,13,13,13,14,14,15,15,15,15,16,17,17,17,17,16,14,15,14,14,15,14,14,15,15,15,17,17,17,17,17,14,14,16,14,15,15,15,15,15,15,17,17,17,17,17,17,16,16,15,17,15,15,14,17,15,17,16,17,17,17,17,16,15,14,15,15,15,15,15,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,3,10,10,10,10,10,10,10,10,10,10,5,6,6,10,10,10,10,10,10,10,10,10,10,6,7,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,8,8,9,9,10,10,7,5,5,7,7,8,8,8,8,9,10,11,11,7,5,5,7,7,8,8,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,9,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,9,10,9,10,11,11,11,0,13,12,9,8,9,9,10,10,11,11,12,11,0,0,0,9,9,9,9,10,10,11,11,12,12,0,0,0,10,10,9,9,10,10,11,11,12,12,0,0,0,13,13,10,10,11,11,12,11,13,12,0,0,0,14,14,10,10,11,10,11,11,12,12,0,0,0,0,0,12,12,11,11,12,12,13,13,0,0,0,0,0,12,12,11,10,12,11,13,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,7,7,7,7,7,7,10,10,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,6,7,6,6,4,7,7,10,9,9,10,9,9,5,7,7,10,9,9,10,9,9,6,10,10,10,10,10,11,10,10,6,9,9,10,9,10,11,10,10,6,9,9,10,9,9,11,9,10,7,10,10,11,11,11,11,10,10,6,9,9,10,10,10,11,9,9,6,9,9,10,10,10,10,9,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,5,5,8,8,8,8,9,9,10,10,11,11,11,11,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,9,9,8,8,10,10,10,10,11,11,12,12,12,12,0,0,0,9,9,8,8,10,10,10,10,11,11,12,12,12,12,0,0,0,10,10,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,10,10,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,11,11,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,11,12,12,13,13,0,0,0,0,0,10,10,11,11,11,11,12,12,13,12,13,13,0,0,0,0,0,0,0,11,10,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,13,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,4,5,6,6,8,8,0,0,0,8,8,7,7,9,9,0,0,0,8,8,7,7,9,9,0,0,0,9,10,8,8,9,9,0,0,0,10,10,8,8,9,9,0,0,0,11,10,8,8,10,10,0,0,0,11,11,8,8,10,10,0,0,0,12,12,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,2,3,7,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,8,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,8,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,8,10,8],"i8",L3,x.GLOBAL_BASE+86572),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,18,8,11,8,8,9,9,10,4,4,18,5,9,5,6,7,8,10,18,18,18,18,17,17,17,17,17,17,7,5,17,6,11,6,7,8,9,12,12,9,17,12,8,8,9,10,10,13,7,5,17,6,8,4,5,6,8,10,6,5,17,6,8,5,4,5,7,9,7,7,17,8,9,6,5,5,6,8,8,8,17,9,11,8,6,6,6,7,9,10,17,12,12,10,9,7,7,8,0,0,0,0,2,0,0,0,100,0,0,0,216,163,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,176,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,216,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,126,1,0,0,0,0,0,40,126,1,0,80,126,1,0,0,0,0,0,0,0,0,0,120,126,1,0,160,126,1,0,0,0,0,0,0,0,0,0,200,126,1,0,240,126,1,0,24,127,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,32,138,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,200,163,1,0,0,0,0,0,4,0,0,0,113,2,0,0,144,135,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,8,138,1,0,0,0,0,0,2,0,0,0,81,0,0,0,16,135,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,104,135,1,0,0,0,0,0,2,0,0,0,81,0,0,0,144,134,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,232,134,1,0,0,0,0,0,2,0,0,0,33,1,0,0,32,133,1,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,72,134,1,0,0,0,0,0,4,0,0,0,81,0,0,0,184,132,1,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,16,133,1,0,0,0,0,0,2,0,0,0,121,0,0,0,8,132,1,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,136,132,1,0,0,0,0,0,2,0,0,0,169,0,0,0,32,131,1,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,208,131,1,0,0,0,0,0,2,0,0,0,25,0,0,0,232,130,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,8,131,1,0,0,0,0,0,4,0,0,0,81,0,0,0,128,130,1,0,1,0,0,0,0,176,19,225,0,176,19,97,2,0,0,0,0,0,0,0,216,130,1,0,0,0,0,0,2,0,0,0,225,0,0,0,88,129,1,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,64,130,1,0,0,0,0,0,2,0,0,0,185,1,0,0,64,127,1,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,0,129,1,0,0,0,0,0,1,5,5,7,7,8,7,8,8,10,10,9,9,10,10,10,11,11,10,12,11,12,12,12,9,8,8,8,8,8,9,10,10,10,10,11,11,11,10,11,11,12,12,11,12,8,8,7,7,8,9,10,10,10,9,10,10,9,10,10,11,11,11,11,11,11,9,9,9,9,8,9,10,10,11,10,10,11,11,12,10,10,12,12,11,11,10,9,9,10,8,9,10,10,10,9,10,10,11,11,10,11,10,10,10,12,12,12,9,10,9,10,9,9,10,10,11,11,11,11,10,10,10,11,12,11,12,11,12,10,11,10,11,9,10,9,10,9,10,10,9,10,10,11,10,11,11,11,11,12,11,9,10,10,10,10,11,11,11,11,11,10,11,11,11,11,10,12,10,12,12,11,12,10,10,11,10,9,11,10,11,9,10,11,10,10,10,11,11,11,11,12,12,10,9,9,11,10,9,12,11,10,12,12,11,11,11,11,10,11,11,12,11,10,12,9,11,10,11,10,10,11,10,11,9,10,10,10,11,12,11,11,12,11,10,10,11,11,9,10,10,12,10,11,10,10,10,9,10,10,10,10,9,10,10,11,11,11,11,12,11,10,10,10,10,11,11,10,11,11,9,11,10,12,10,12,11,10,11,10,10,10,11,10,10,11,11,10,11,10,10,10,10,11,11,12,10,10,10,11,10,11,12,11,10,11,10,10,11,11,10,12,10,9,10,10,11,11,11,10,12,10,10,11,11,11,10,10,11,10,10,10,11,10,11,10,12,11,11,10,10,10,12,10,10,11,9,10,11,11,11,10,10,11,10,10,9,11,11,12,12,11,12,11,11,11,11,11,11,9,10,11,10,12,10,10,10,10,11,10,10,11,10,10,12,10,10,10,10,10,9,12,10,10,10,10,12,9,11,10,10,11,10,12,12,10,12,12,12,10,10,10,10,9,10,11,10,10,12,10,10,12,11,10,11,10,10,12,11,10,12,10,10,11,9,11,10,9,10,9,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,5,5,10,8,11,11,11,11,11,11,11,11,6,6,6,7,6,11,10,11,11,11,11,11,11,11,11,7,5,6,6,6,8,7,11,11,11,11,11,11,11,11,11,7,8,8,8,9,9,11,11,11,11,11,11,11,11,11,9,8,7,8,9,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,4,5,5,7,6,6,6,5,7,7,7,6,6,7,7,7,6,6,7,7,7,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,6,7,7,7,7,8,8,9,9,7,6,6,7,7,8,8,7,7,8,9,10,10,7,6,6,7,7,8,7,7,7,9,9,10,12,0,8,8,8,8,8,9,8,8,9,9,10,10,0,8,8,8,8,8,9,8,9,9,9,11,10,0,0,13,9,8,9,9,9,9,10,10,11,11,0,13,0,9,9,9,9,9,9,11,10,11,11,0,0,0,8,9,10,9,10,10,13,11,12,12,0,0,0,8,9,9,9,10,10,13,12,12,13,0,0,0,12,0,10,10,12,11,10,11,12,12,0,0,0,13,13,10,10,10,11,12,0,13,0,0,0,0,0,0,13,11,0,12,12,12,13,12,0,0,0,0,0,0,13,13,11,13,13,11,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,6,6,8,8,9,9,9,9,10,10,10,7,7,8,8,9,9,9,9,10,10,9,7,7,8,8,9,9,9,9,10,10,10,8,8,9,9,9,9,9,9,10,10,10,8,8,9,9,9,9,8,9,10,10,10,8,8,9,9,9,10,10,10,10,10,10,9,9,9,9,9,9,10,10,11,10,11,9,9,9,9,10,10,10,10,11,11,11,10,10,9,9,10,10,10,9,11,10,10,10,10,10,10,9,9,10,10,11,11,10,10,10,9,9,9,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,11,9,10,12,9,10,4,7,7,10,10,10,11,9,9,6,11,10,11,11,12,11,11,11,6,10,10,11,11,12,11,10,10,6,9,10,11,11,11,11,10,10,7,10,11,12,11,11,12,11,12,6,9,9,10,9,9,11,10,10,6,9,9,10,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,6,6,8,8,9,9,8,8,10,9,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,11,0,0,0,8,8,9,9,10,10,9,9,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,9,9,11,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,11,12,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,10,10,10,10,11,11,10,10,11,11,12,12,13,13,0,0,0,0,0,10,9,10,11,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,9,10,11,12,12,13,13,14,13,0,0,0,0,0,9,9,9,10,10,10,11,11,13,12,13,13,0,0,0,0,0,10,10,10,10,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,10,10,11,11,12,12,13,13,13,14,0,0,0,0,0,0,0,11,11,11,11,12,12,13,14,14,14,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,14,13,0,0,0,0,0,0,0,11,11,12,12,13,13,14,14,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,5,5,7,6,8,8,0,0,0,7,7,7,7,8,8,0,0,0,7,7,7,7,8,9,0,0,0,8,8,8,8,9,9,0,0,0,8,8,8,8,9,9,0,0,0,9,9,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,10,10,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,2,3,7,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,8,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,6,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,4,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,9,0,0,0,0,0,0,8,9,11,0,0,0,0,0,0,9,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,9,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,11,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,9,11,11,0,0,0,0,0,0,8,11,9],"i8",L3,x.GLOBAL_BASE+97272),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,5,18,7,10,6,7,8,9,10,5,2,18,5,7,5,6,7,8,11,17,17,17,17,17,17,17,17,17,17,7,4,17,6,9,6,8,10,12,15,11,7,17,9,6,6,7,9,11,15,6,4,17,6,6,4,5,8,11,16,6,6,17,8,6,5,6,9,13,16,8,9,17,11,9,8,8,11,13,17,9,12,17,15,14,13,12,13,14,17,12,15,17,17,17,17,17,16,17,17,0,0,0,0,154,153,153,153,153,153,185,191,0,0,0,0,0,0,0,0,154,153,153,153,153,153,185,63,154,153,153,153,153,153,201,63,51,51,51,51,51,51,211,63,154,153,153,153,153,153,217,63,0,0,0,0,0,0,224,63,51,51,51,51,51,51,227,63,102,102,102,102,102,102,230,63,154,153,153,153,153,153,233,63,205,204,204,204,204,204,236,63,0,0,0,0,0,0,240,63,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,16,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,0,0,0,35,0,0,0,21,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,30,0,0,0,20,0,0,0,8,0,0,0,0,0,0,192,0,0,160,63,25,0,0,0,12,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,9,0,0,0,253,255,255,255,0,0,0,0,0,0,0,0,20,0,0,0,9,0,0,0,252,255,255,255,0,0,0,0,0,0,0,0,20,0,0,0,9,0,0,0,252,255,255,255,0,0,0,0,0,0,0,0,20,0,0,0,6,0,0,0,250,255,255,255,0,0,0,0,0,0,0,0,20,0,0,0,3,0,0,0,246,255,255,255,0,0,0,0,0,0,0,0,18,0,0,0,1,0,0,0,242,255,255,255,0,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,240,255,255,255,0,0,0,0,0,0,0,0,18,0,0,0,254,255,255,255,240,255,255,255,0,0,0,0,0,0,0,0,12,0,0,0,254,255,255,255,236,255,255,255,0,0,0,0,0,0,0,0,253,255,255,255,248,255,255,255,243,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,247,255,255,255,247,255,255,255,247,255,255,255,247,255,255,255,247,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,252,255,255,255,246,255,255,255,242,255,255,255,240,255,255,255,242,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,245,255,255,255,245,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,250,255,255,255,244,255,255,255,242,255,255,255,240,255,255,255,241,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,254,255,255,255,254,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,244,255,255,255,243,255,255,255,242,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,251,255,255,255,254,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,243,255,255,255,245,255,255,255,246,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,243,255,255,255,245,255,255,255,246,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,248,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,253,255,255,255,248,255,255,255,243,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,255,255,255,246,255,255,255,242,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,245,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,250,255,255,255,244,255,255,255,242,255,255,255,240,255,255,255,241,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,254,255,255,255,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,244,255,255,255,243,255,255,255,242,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,250,255,255,255,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,243,255,255,255,245,255,255,255,246,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,243,255,255,255,245,255,255,255,246,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,248,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,3,0,0,0,3,0,0,0,15,0,0,0,3,0,0,0,3,0,0,0,15,0,0,0,10,0,0,0,10,0,0,0,100,0,0,0,10,0,0,0,10,0,0,0,100,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,6,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,250,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,2,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,16,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,252,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,14,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,252,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,250,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,252,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,6,0,0,0,11,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,234,255,255,255,240,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,247,255,255,255,251,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,6,0,0,0,11,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,228,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,240,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,6,0,0,0,11,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,234,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,224,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,234,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,3,0,0,0,3,0,0,0,5,0,0,0,10,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,224,255,255,255,224,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,224,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,2,0,0,0,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,224,255,255,255,224,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,224,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,244,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,221,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,6,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,2,0,0,0,3,0,0,0,6,0,0,0,6,0,0,0,8,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,2,0,0,0,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,16,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,14,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,250,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,2,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,234,255,255,255,240,255,255,255,244,255,255,255,250,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,0,0,0,0,4,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,253,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,253,255,255,255,255,255,255,255,4,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,245,255,255,255,248,255,255,255,250,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,240,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,251,255,255,255,253,255,255,255,1,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,234,255,255,255,238,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,5,0,0,0,5,0,0,0,11,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,249,255,255,255,251,255,255,255,254,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,228,255,255,255,234,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,242,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,2,0,0,0,6,0,0,0,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,224,255,255,255,224,255,255,255,232,255,255,255,240,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,224,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,238,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,221,255,255,255,226,255,255,255,231,255,255,255,231,255,255,255,231,255,255,255,231,255,255,255,231,255,255,255,231,255,255,255,241,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,6,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,250,255,255,255,252,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,1,0,0,0,4,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,255,255,255,255,0,0,0,0,3,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,249,255,255,255,252,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,8,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,0,0,0,0,2,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,252,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,255,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,255,255,255,255,1,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,252,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,255,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,234,255,255,255,240,255,255,255,244,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,253,255,255,255,255,255,255,255,0,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,247,255,255,255,251,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,255,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,251,255,255,255,254,255,255,255,0,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,234,255,255,255,237,255,255,255,237,255,255,255,237,255,255,255,237,255,255,255,238,255,255,255,239,255,255,255,240,255,255,255,244,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,255,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,240,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,234,255,255,255,236,255,255,255,241,255,255,255,246,255,255,255,248,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,7,0,0,0,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,249,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,226,255,255,255,228,255,255,255,230,255,255,255,232,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,2,0,0,0,218,255,255,255,218,255,255,255,218,255,255,255,218,255,255,255,220,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,218,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,228,255,255,255,236,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,221,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,236,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,20,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,246,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,6,0,0,0,15,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,10,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,252,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,10,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,1,0,0,0,4,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,4],"i8",L3,x.GLOBAL_BASE+107456),d3([4,0,0,0,5,0,0,0,6,0,0,0,10,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,255,255,255,255,0,0,0,0,3,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,252,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,8,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,0,0,0,0,2,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,251,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,255,255,255,255,1,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,249,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,240,255,255,255,244,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,253,255,255,255,255,255,255,255,0,0,0,0,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,247,255,255,255,248,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,251,255,255,255,254,255,255,255,0,0,0,0,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,238,255,255,255,240,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,243,255,255,255,243,255,255,255,244,255,255,255,246,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,0,0,0,0,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,237,255,255,255,237,255,255,255,237,255,255,255,237,255,255,255,238,255,255,255,239,255,255,255,240,255,255,255,244,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,7,0,0,0,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,240,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,2,0,0,0,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,234,255,255,255,238,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,249,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,236,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,17,0,0,0,17,0,0,0,18,0,0,0,18,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,12,0,0,0,13,0,0,0,13,0,0,0,13,0,0,0,14,0,0,0,14,0,0,0,14,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0,16,0,0,0,16,0,0,0,17,0,0,0,17,0,0,0,17,0,0,0,18,0,0,0,18,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,7,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,0,0,0,0,0,0,224,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,205,204,204,204,204,204,244,63,154,153,153,153,153,153,249,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,12,64,0,0,0,0,0,0,16,64,0,0,0,0,0,0,16,64,51,51,51,51,51,51,17,64,102,102,102,102,102,102,18,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,32,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,32,0,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,0,0,0,0,0,1,0,0,128,0,0,0,128,0,0,0,0,1,0,0,0,2,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,0,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,0,0,0,0,154,153,153,153,153,153,201,63,154,153,153,153,153,153,201,63,154,153,153,153,153,153,201,63,154,153,153,153,153,153,217,63,51,51,51,51,51,51,227,63,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,156,255,255,255,156,255,255,255,156,255,255,255,156,255,255,255,156,255,255,255,156,255,255,255,151,255,255,255,151,255,255,255,151,255,255,255,151,255,255,255,146,255,255,255,136,255,255,255,126,255,255,255,126,255,255,255,126,255,255,255,126,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,106,255,255,255,205,204,204,204,204,204,43,64,51,51,51,51,51,51,46,64,154,153,153,153,153,153,47,64,0,0,0,0,0,128,48,64,51,51,51,51,51,51,49,64,102,102,102,102,102,230,50,64,154,153,153,153,153,25,52,64,0,0,0,0,0,0,72,64,0,0,0,0,0,56,143,64,0,0,0,0,0,56,143,64,0,0,0,0,0,56,143,64,0,0,0,0,0,56,143,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,4,64,154,153,153,153,153,153,5,64,0,0,0,0,0,0,8,64,154,153,153,153,153,153,13,64,0,0,0,0,0,0,16,64,0,0,0,0,0,0,16,64,248,148,2,0,40,149,2,0,88,149,2,0,0,0,0,0,8,181,0,0,224,217,1,0,8,181,0,0,32,218,1,0,8,181,0,0,96,218,1,0,8,181,0,0,160,218,1,0,8,181,0,0,224,218,1,0,8,181,0,0,32,219,1,0,8,181,0,0,96,219,1,0,8,181,0,0,160,219,1,0,8,181,0,0,224,219,1,0,8,181,0,0,32,220,1,0,8,181,0,0,96,220,1,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,232,133,2,0,232,133,2,0,16,134,2,0,16,134,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,208,134,2,0,208,134,2,0,16,134,2,0,16,134,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,216,118,2,0,216,118,2,0,0,119,2,0,0,119,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,192,119,2,0,192,119,2,0,0,119,2,0,0,119,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,0,106,2,0,0,106,2,0,40,106,2,0,40,106,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,232,106,2,0,232,106,2,0,40,106,2,0,40,106,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,0,93,2,0,0,93,2,0,40,93,2,0,40,93,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,232,93,2,0,232,93,2,0,40,93,2,0,40,93,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,56,79,2,0,56,79,2,0,96,79,2,0,96,79,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,32,80,2,0,32,80,2,0,96,79,2,0,96,79,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,8,65,2,0,8,65,2,0,48,65,2,0,48,65,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,240,65,2,0,240,65,2,0,48,65,2,0,48,65,2,0,1,0,0,0,0,0,0,0,16,0,0,0,88,206,0,0,56,48,2,0,56,48,2,0,96,48,2,0,96,48,2,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,32,49,2,0,32,49,2,0,96,48,2,0,96,48,2,0,1,0,0,0,0,0,0,0,16,0,0,0,88,206,0,0,40,31,2,0,40,31,2,0,80,31,2,0,80,31,2,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,16,32,2,0,16,32,2,0,80,31,2,0,80,31,2,0,1,0,0,0,0,0,0,0,16,0,0,0,88,206,0,0,64,15,2,0,64,15,2,0,104,15,2,0,104,15,2,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,40,16,2,0,40,16,2,0,104,15,2,0,104,15,2,0,1,0,0,0,0,0,0,0,16,0,0,0,160,220,1,0,208,251,1,0,208,251,1,0,248,251,1,0,248,251,1,0,1,0,0,0,0,0,0,0,32,0,0,0,160,220,1,0,184,252,1,0,184,252,1,0,248,251,1,0,248,251,1,0,1,0,0,0,0,0,0,0,16,0,0,0,160,220,1,0,184,231,1,0,184,231,1,0,224,231,1,0,224,231,1,0,1,0,0,0,0,0,0,0,32,0,0,0,160,220,1,0,160,232,1,0,160,232,1,0,224,231,1,0,224,231,1,0,0,0,0,0,255,255,255,255,255,255,255,255,10,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+117696),d3([1,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,71,0,0,0,157,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,104,251,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,233,1,0,0,0,0,0,0,0,0,0,0,0,0,0,88,233,1,0,0,0,0,0,0,0,0,0,0,0,0,0,128,233,1,0,0,0,0,0,0,0,0,0,0,0,0,0,168,233,1,0,0,0,0,0,208,233,1,0,248,233,1,0,0,0,0,0,0,0,0,0,32,234,1,0,72,234,1,0,0,0,0,0,0,0,0,0,112,234,1,0,152,234,1,0,0,0,0,0,0,0,0,0,192,234,1,0,232,234,1,0,0,0,0,0,0,0,0,0,16,235,1,0,56,235,1,0,96,235,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,200,232,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,9,13,13,14,15,14,14,15,15,5,5,9,10,12,12,13,14,16,15,10,6,6,6,8,11,12,13,16,15,11,7,5,3,5,8,10,12,15,15,10,10,7,4,3,5,8,10,12,12,12,12,9,7,5,4,6,8,10,13,13,12,11,9,7,5,5,6,9,12,14,12,12,10,8,6,6,6,7,11,13,12,14,13,10,8,7,7,7,10,11,11,12,13,12,11,10,8,8,9,0,0,0,0,4,0,0,0,81,0,0,0,0,251,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,88,251,1,0,0,0,0,0,4,0,0,0,113,2,0,0,112,248,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,250,1,0,0,0,0,0,2,0,0,0,81,0,0,0,240,247,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,72,248,1,0,0,0,0,0,2,0,0,0,33,1,0,0,128,246,1,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,168,247,1,0,0,0,0,0,4,0,0,0,81,0,0,0,24,246,1,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,112,246,1,0,0,0,0,0,2,0,0,0,121,0,0,0,104,245,1,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,232,245,1,0,0,0,0,0,2,0,0,0,169,0,0,0,128,244,1,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,48,245,1,0,0,0,0,0,2,0,0,0,25,0,0,0,72,244,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,104,244,1,0,0,0,0,0,2,0,0,0,169,0,0,0,96,243,1,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,16,244,1,0,0,0,0,0,2,0,0,0,121,0,0,0,176,242,1,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,48,243,1,0,0,0,0,0,2,0,0,0,225,0,0,0,136,241,1,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,112,242,1,0,0,0,0,0,2,0,0,0,185,1,0,0,112,239,1,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,48,241,1,0,0,0,0,0,2,0,0,0,225,0,0,0,72,238,1,0,1,0,0,0,0,117,153,225,0,24,61,97,4,0,0,0,0,0,0,0,48,239,1,0,0,0,0,0,2,0,0,0,105,1,0,0,136,236,1,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,248,237,1,0,0,0,0,0,1,0,0,0,49,0,0,0,136,235,1,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,192,235,1,0,0,0,0,0,2,4,4,5,4,5,5,5,5,6,6,6,6,6,6,6,6,6,6,7,6,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,8,7,8,7,9,8,10,9,10,10,11,11,12,12,4,7,6,9,9,10,9,9,8,10,10,11,10,12,10,13,12,13,12,4,6,6,9,9,9,9,9,9,10,10,11,11,11,12,12,12,12,12,7,9,8,11,10,10,10,11,10,11,11,12,12,13,12,13,13,13,13,7,8,9,10,10,11,11,10,10,11,11,11,12,13,13,13,13,14,14,8,9,9,11,11,12,11,12,12,13,12,12,13,13,14,15,14,14,14,8,9,9,10,11,11,11,12,12,13,12,13,13,14,14,14,15,14,16,8,9,9,11,10,12,12,12,12,15,13,13,13,17,14,15,15,15,14,8,9,9,10,11,11,12,13,12,13,13,13,14,15,14,14,14,16,15,9,11,10,12,12,13,13,13,13,14,14,16,15,14,14,14,15,15,17,9,10,10,11,11,13,13,13,14,14,13,15,14,15,14,15,16,15,16,10,11,11,12,12,13,14,15,14,15,14,14,15,17,16,15,15,17,17,10,12,11,13,12,14,14,13,14,15,15,15,15,16,17,17,15,17,16,11,12,12,14,13,15,14,15,16,17,15,17,15,17,15,15,16,17,15,11,11,12,14,14,14,14,14,15,15,16,15,17,17,17,16,17,16,15,12,12,13,14,14,14,15,14,15,15,16,16,17,16,17,15,17,17,16,12,14,12,14,14,15,15,15,14,14,16,16,16,15,16,16,15,17,15,12,13,13,14,15,14,15,17,15,17,16,17,17,17,16,17,16,17,17,12,13,13,14,16,15,15,15,16,15,17,17,15,17,15,17,16,16,17,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,3,3,11,11,11,11,11,11,11,11,11,11,11,11,4,10,11,11,11,11,11,11,11,11,11,11,11,11,11,4,10,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,4,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,6,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,6,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,8,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,8,8,8,9,9,9,9,9,9,9,9,9,9,10,9,10,9,10,10,10,10,8,8,8,9,9,9,9,9,9,9,9,9,9,10,10,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,8,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,8,9,9,10,9,11,10,4,6,6,8,8,9,9,9,9,10,10,11,10,12,10,4,6,6,8,8,9,10,9,9,10,10,11,11,12,12,7,8,8,10,10,11,11,10,10,11,11,12,12,13,12,7,8,8,10,10,11,11,10,10,11,11,12,12,12,13,8,10,9,11,11,12,12,11,11,12,12,13,13,14,13,8,9,9,11,11,12,12,11,12,12,12,13,13,14,13,8,9,9,10,10,12,11,13,12,13,13,14,13,15,14,8,9,9,10,10,11,12,12,12,13,13,13,14,14,14,9,10,10,12,11,13,12,13,13,14,13,14,14,14,15,9,10,10,11,12,12,12,13,13,14,14,14,15,15,15,10,11,11,12,12,13,13,14,14,14,14,15,14,16,15,10,11,11,12,12,13,13,13,14,14,14,14,14,15,16,11,12,12,13,13,14,13,14,14,15,14,15,16,16,16,11,12,12,13,13,14,13,14,14,15,15,15,16,15,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,5,6,6,7,7,7,7,7,7,7,7,6,6,6,7,7,7,7,7,7,7,7,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,7,7,7,7,7,7,7,8,7,8,8,7,7,7,7,7,7,7,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,5,6,6,7,7,8,9,10,10,11,11,5,6,6,7,7,8,8,9,9,10,10,11,11,5,6,6,7,7,8,8,9,9,10,10,11,11,6,7,7,8,8,9,9,10,10,11,11,12,12,6,7,7,8,8,9,9,10,10,11,11,12,12,8,8,8,9,9,10,10,11,11,12,12,13,13,8,8,8,9,9,10,10,11,11,12,12,13,13,9,9,9,10,10,11,11,12,12,13,13,13,13,9,9,9,10,10,11,11,12,12,13,13,14,14,10,10,10,11,11,12,12,13,13,14,13,15,14,10,10,10,11,11,12,12,13,13,14,14,14,14,11,11,12,12,12,13,13,14,14,14,14,15,15,11,11,12,12,12,13,13,14,14,14,15,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,4,4,4,5,5,4,5,4,5,5,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,9,9,10,10,4,6,5,7,7,8,8,8,8,9,9,10,10,4,5,6,7,7,8,8,8,8,9,9,10,10,6,7,7,8,8,8,8,9,9,10,10,10,10,6,7,7,8,8,8,8,9,9,10,10,10,10,7,8,8,8,8,9,9,9,9,10,10,11,11,7,8,8,8,8,9,9,9,9,10,10,11,11,8,8,8,9,9,9,9,9,10,10,10,11,11,8,8,8,9,9,9,9,10,9,10,10,11,11,9,9,9,10,10,10,10,10,11,11,11,11,12,9,9,9,10,10,10,10,10,10,11,10,12,11,10,10,10,10,10,11,11,11,11,11,12,12,12,10,10,10,10,10,11,11,11,11,12,11,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,5,5,5,6,6,7,7,7,7,7,7,5,6,6,6,6,7,7,7,7,8,7,5,6,6,6,6,7,7,7,7,7,7,6,6,6,7,7,7,7,7,7,8,8,6,6,6,7,7,7,7,7,7,8,8,7,7,7,7,7,8,7,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,8,7,8,8,8,8,8,8,7,7,7,7,8,8,8,8,8,8,8,7,8,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,8,9,9,7,9,9,5,8,8,7,9,9,8,9,9,5,8,8,8,10,10,8,10,10,7,10,10,9,10,12,9,11,11,7,10,10,9,11,10,9,11,12,5,8,8,8,10,10,8,10,10,7,10,10,9,12,11,9,10,11,7,10,10,9,11,11,10,12,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,5,5,6,6,7,7,8,8,8,8,9,9,10,10,11,11,5,5,5,6,6,7,7,8,8,8,8,9,9,10,10,11,11,5,5,5,6,6,7,7,8,8,8,8,9,9,10,10,11,11,6,6,6,7,6,7,7,8,8,9,9,10,10,11,11,12,11,6,6,6,6,7,7,7,8,8,9,9,10,10,11,11,11,12,7,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,7,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,8,8,8,8,8,9,8,10,9,10,10,11,10,12,11,13,12,8,8,8,8,8,9,9,9,10,10,10,10,11,11,12,12,12,8,8,8,9,9,9,9,10,10,11,10,12,11,12,12,13,12,8,8,8,9,9,9,9,10,10,10,11,11,11,12,12,12,13,9,9,9,10,10,10,10,11,10,11,11,12,11,13,12,13,13,9,9,10,10,10,10,10,10,11,11,11,11,12,12,13,13,13,10,11,10,11,11,11,11,12,11,12,12,13,12,13,13,14,13,10,10,10,11,11,11,11,11,12,12,12,12,13,13,13,13,14,11,11,11,12,11,12,12,12,12,13,13,13,13,14,13,14,14,11,11,11,11,12,12,12,12,12,12,13,13,13,13,14,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,3,4,4,5,5,7,7,8,8,4,5,5,6,6,7,7,9,9,4,4,5,6,6,7,7,9,9,5,6,6,7,7,8,8,9,9,5,6,6,7,7,8,8,9,9,7,7,7,8,8,9,9,10,10,7,7,7,8,8,9,9,10,10,8,9,9,10,9,10,10,11,11,8,9,9,9,10,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,5,7,7,9,9,6,7,7,9,9,8,9,9,11,10,8,9,9,11,11,6,7,7,9,9,7,8,8,10,10,7,8,8,9,10,9,10,10,11,11,9,9,10,11,11,6,7,7,9,9,7,8,8,10,9,7,8,8,10,10,9,10,9,11,11,9,10,10,11,11,8,9,9,11,11,9,10,10,12,11,9,10,10,11,12,11,11,11,13,13,11,11,11,12,13,8,9,9,11,11,9,10,10,11,11,9,10,10,12,11,11,12,11,13,12,11,11,12,13,13,6,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,11,9,10,10,11,12,7,8,8,10,10,8,9,9,11,11,8,9,9,10,10,10,11,11,12,12,10,10,11,12,12,7,8,8,10,10,8,9,8,10,10,8,9,9,10,10,10,11,10,12,11,10,10,11,12,12,9,10,10,11,12,10,11,11,12,12,10,11,10,12,12,12,12,12,13,13,11,12,12,13,13,9,10,10,11,11,9,10,10,12,12,10,11,11,12,13,11,12,11,13,12,12,12,12,13,14,6,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,11,11,9,10,10,11,12,7,8,8,10,10,8,9,9,11,10,8,8,9,10,10,10,11,10,12,12,10,10,11,11,12,7,8,8,10,10,8,9,9,10,10,8,9,9,10,10,10,11,10,12,12,10,11,10,12,12,9,10,10,12,11,10,11,11,12,12,9,10,10,12,12,12,12,12,13,13,11,11,12,12,14,9,10,10,11,12,10,11,11,12,12,10,11,11,12,12,11,12,12,14,14,12,12,12,13,13,8,9,9,11,11,9,10,10,12,11,9,10,10,12,12,11,12,11,13,13,11,11,12,13,13,9,10,10,12,12,10,11,11,12,12,10,11,11,12,12,12,12,12,14,14,12,12,12,13,13,9,10,10,12,11,10,11,10,12,12,10,11,11,12,12,11,12,12,14,13,12,12,12,13,14,11,12,11,13,13,11,12,12,13,13,12,12,12,14,14,13,13,13,13,15,13,13,14,15,15,11,11,11,13,13,11,12,11,13,13,11,12,12,13,13,12,13,12,15,13,13,13,14,14,15,8,9,9,11,11,9,10,10,11,12,9,10,10,11,12,11,12,11,13,13,11,12,12,13,13,9,10,10,11,12,10,11,10,12,12,10,10,11,12,13,12,12,12,14,13,11,12,12,13,14,9,10,10,12,12,10,11,11,12,12,10,11,11,12,12,12,12,12,14,13,12,12,12,14,13,11,11,11,13,13,11,12,12,14,13,11,11,12,13,13,13,13,13,15,14,12,12,13,13,15,11,12,12,13,13,12,12,12,13,14,11,12,12,13,13,13,13,14,14,15,13,13,13,14,14,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,7,5,7,7,5,7,7,7,9,9,7,9,9,5,7,7,7,9,9,7,9,9,5,7,7,7,9,9,7,9,9,8,9,9,9,10,11,9,11,11,7,9,9,9,11,10,9,11,11,5,7,7,7,9,9,8,9,10,7,9,9,9,11,11,9,10,11,7,9,10,9,11,11,9,11,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,9,16,18,18,17,17,17,17,17,17,5,8,11,12,11,12,17,17,16,16,6,6,8,8,9,10,14,15,16,16,6,7,7,4,6,9,13,16,16,16,6,6,7,4,5,8,11,15,17,16,7,6,7,6,6,8,9,10,14,16,11,8,8,7,6,6,3,4,10,15,14,12,12,10,5,6,3,3,8,13,15,17,15,11,6,8,6,6,9,14,17,15,15,12,8,10,9,9,12,15,0,0,0,0,2,0,0,0,100,0,0,0,216,14,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,72,253,1,0,0,0,0,0,0,0,0,0,0,0,0,0,112,253,1,0,0,0,0,0,0,0,0,0,0,0,0,0,152,253,1,0,0,0,0,0,0,0,0,0,0,0,0,0,192,253,1,0,0,0,0,0,232,253,1,0,16,254,1,0,0,0,0,0,0,0,0,0,56,254,1,0,96,254,1,0,0,0,0,0,0,0,0,0,136,254,1,0,176,254,1,0,0,0,0,0,0,0,0,0,216,254,1,0,0,255,1,0,0,0,0,0,0,0,0,0,40,255,1,0,80,255,1,0,120,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,224,252,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,9,13,14,14,15,14,14,15,15,5,4,6,8,10,12,12,14,15,15,9,5,4,5,8,10,11,13,16,16,10,7,4,3,5,7,9,11,13,13,10,9,7,4,4,6,8,10,12,14,13,11,9,6,5,5,6,8,12,14,13,11,10,8,7,6,6,7,10,14,13,11,12,10,8,7,6,6,9,13,12,11,14,12,11,9,8,7,9,11,11,12,14,13,14,11,10,8,8,9,0,0,0,0,4,0,0,0,81,0,0,0,112,14,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,200,14,2,0,0,0,0,0,4,0,0,0,113,2,0,0,224,11,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,14,2,0,0,0,0,0,2,0,0,0,81,0,0,0,96,11,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,184,11,2,0,0,0,0,0,2,0,0,0,33,1,0,0,240,9,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,24,11,2,0,0,0,0,0,4,0,0,0,81,0,0,0,136,9,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,224,9,2,0,0,0,0,0,2,0,0,0,121,0,0,0,216,8,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,88,9,2,0,0,0,0,0,2,0,0,0,169,0,0,0,240,7,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,160,8,2,0,0,0,0,0,2,0,0,0,25,0,0,0,184,7,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,7,2,0,0,0,0,0,2,0,0,0,169,0,0,0,208,6,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,128,7,2,0,0,0,0,0,2,0,0,0,121,0,0,0,32,6,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,160,6,2,0,0,0,0,0,2,0,0,0,225,0,0,0,248,4,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,224,5,2,0,0,0,0,0,2,0,0,0,185,1,0,0,224,2,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,160,4,2,0,0,0,0,0,2,0,0,0,81,0,0,0,96,2,2,0,1,0,0,0,0,24,125,225,0,24,61,97,4,0,0,0,0,0,0,0,184,2,2,0,0,0,0,0,2,0,0,0,105,1,0,0,160,0,2,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,16,2,2,0,0,0,0,0,1,0,0,0,49,0,0,0,160,255,1,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,216,255,1,0,0,0,0,0,2,3,4,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,8,7,8,6,9,7,10,8,11,10,11,11,11,11,4,7,6,9,9,10,9,9,9,10,10,11,10,11,10,11,11,13,11,4,7,7,9,9,9,9,9,9,10,10,11,10,11,11,11,12,11,12,7,9,8,11,11,11,11,10,10,11,11,12,12,12,12,12,12,14,13,7,8,9,10,11,11,11,10,10,11,11,11,11,12,12,14,12,13,14,8,9,9,11,11,11,11,11,11,12,12,14,12,15,14,14,14,15,14,8,9,9,11,11,11,11,12,11,12,12,13,13,13,13,13,13,14,14,8,9,9,11,10,12,11,12,12,13,13,13,13,15,14,14,14,16,16,8,9,9,10,11,11,12,12,12,13,13,13,14,14,14,15,16,15,15,9,10,10,11,12,12,13,13,13,14,14,16,14,14,16,16,16,16,15,9,10,10,11,11,12,13,13,14,15,14,16,14,15,16,16,16,16,15,10,11,11,12,13,13,14,15,15,15,15,15,16,15,16,15,16,15,15,10,11,11,13,13,14,13,13,15,14,15,15,16,15,15,15,16,15,16,10,12,12,14,14,14,14,14,16,16,15,15,15,16,16,16,16,16,16,11,12,12,14,14,14,14,15,15,16,15,16,15,16,15,16,16,16,16,12,12,13,14,14,15,16,16,16,16,16,16,15,16,16,16,16,16,16,12,13,13,14,14,14,14,15,16,15,16,16,16,16,16,16,16,16,16,12,13,14,14,14,16,15,16,15,16,16,16,16,16,16,16,16,16,16,12,14,13,14,15,15,15,16,15,16,16,15,16,16,16,16,16,16,16,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,3,3,9,9,9,9,9,9,4,9,9,9,9,9,9,9,9,5,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,6,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,9,8,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,10,9,10,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,9,10,10,9,10,8,9,8,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,8,9,8,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,9,10,10,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,7,9,8,10,9,11,10,4,6,6,8,8,10,9,9,9,10,10,11,10,12,10,4,6,6,8,8,10,10,9,9,10,10,11,11,11,12,7,8,8,10,10,11,11,11,10,12,11,12,12,13,11,7,8,8,10,10,11,11,10,10,11,11,12,12,13,13,8,10,10,11,11,12,11,12,11,13,12,13,12,14,13,8,10,9,11,11,12,12,12,12,12,12,13,13,14,13,8,9,9,11,10,12,11,13,12,13,13,14,13,14,13,8,9,9,10,11,12,12,12,12,13,13,14,15,14,14,9,10,10,12,11,13,12,13,13,14,13,14,14,14,14,9,10,10,12,12,12,12,13,13,14,14,14,15,14,14,10,11,11,13,12,13,12,14,14,14,14,14,14,15,15,10,11,11,12,12,13,13,14,14,14,15,15,14,16,15,11,12,12,13,12,14,14,14,13,15,14,15,15,15,17,11,12,12,13,13,14,14,14,15,15,14,15,15,14,17,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,7,7,5,6,6,7,7,7,7,7,7,7,7,5,6,6,7,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,8,8,6,7,7,7,7,7,7,7,7,7,8,7,7,7,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,8,8,8,8,7,7,7,8,7,8,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,5,6,6,7,7,8,8,10,10,11,11,5,6,6,7,7,8,8,9,9,11,10,12,11,5,6,6,7,7,8,8,9,9,10,11,11,12,6,7,7,8,8,9,9,10,10,11,11,12,12,6,7,7,8,8,9,9,10,10,11,12,13,12,7,8,8,9,9,10,10,11,11,12,12,13,13,8,8,8,9,9,10,10,11,11,12,12,13,13,9,9,9,10,10,11,11,12,12,13,13,14,14,9,9,9,10,10,11,11,12,12,13,13,14,14,10,11,11,12,11,13,12,13,13,14,14,15,15,10,11,11,11,12,12,13,13,14,14,14,15,15,11,12,12,13,13,14,13,15,14,15,15,16,15,11,11,12,13,13,13,14,14,14,15,15,15,16,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,4,4,5,5,4,5,5,5,5,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,9,9,10,10,4,6,5,7,7,8,8,8,8,9,9,10,10,4,6,6,7,7,8,8,8,8,9,9,10,10,6,7,7,7,8,8,8,8,9,9,10,10,10,6,7,7,8,8,8,8,9,8,10,9,11,10,7,8,8,8,8,8,9,9,9,10,10,11,11,7,8,8,8,8,9,8,9,9,10,10,11,11,8,8,8,9,9,9,9,9,10,10,10,11,11,8,8,8,9,9,9,9,10,9,10,10,11,11,9,9,9,9,10,10,10,10,10,10,11,11,12,9,9,9,10,9,10,10,10,10,11,10,12,11,10,10,10,10,10,11,11,11,11,11,12,12,12,10,10,10,10,11,11,11,11,11,12,11,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,8,8,5,5,5,6,6,7,7,8,8,8,8,5,5,5,6,6,7,7,7,8,8,8,6,6,6,7,7,7,7,8,8,8,8,6,6,6,7,7,7,7,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,8,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,8,8,8,8,8,8,8,8,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,8,9,9,7,9,9,5,8,8,7,9,9,8,9,9,5,8,8,8,10,10,8,10,10,7,10,10,9,10,12,9,12,11,7,10,10,9,11,10,9,11,12,5,8,8,8,10,10,8,10,10,7,10,10,9,11,11,9,10,11,7,10,10,9,11,11,10,12,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,4,4,6,6,7,7,8,8,8,8,10,10,11,11,11,11,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,6,6,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,6,6,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,7,7,7,8,8,9,8,10,9,10,9,11,10,12,11,13,12,7,7,7,8,8,8,9,9,10,9,10,10,11,11,12,12,13,8,8,8,9,9,9,9,10,10,11,10,11,11,12,12,13,13,8,8,8,9,9,9,10,10,10,10,11,11,11,12,12,12,13,8,9,9,9,9,10,9,11,10,11,11,12,11,13,12,13,13,8,9,9,9,9,9,10,10,11,11,11,11,12,12,13,13,13,10,10,10,10,10,11,10,11,11,12,11,13,12,13,13,14,13,10,10,10,10,10,10,11,11,11,11,12,12,13,13,13,13,14,11,11,11,11,11,12,11,12,12,13,12,13,13,14,13,14,14,11,11,11,11,11,11,12,12,12,12,13,13,13,13,14,14,14,11,12,12,12,12,13,12,13,12,13,13,14,13,14,14,14,14,11,12,12,12,12,12,12,13,13,13,13,13,14,14,14,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,3,4,4,5,5,7,7,9,9,4,5,4,6,6,7,7,9,9,4,4,5,6,6,7,7,9,9,5,6,6,7,7,8,8,10,10,6,6,6,7,7,8,8,10,10,7,7,7,8,8,9,9,11,10,7,7,7,8,8,9,9,10,11,9,9,9,10,10,11,10,12,11,9,9,9,9,10,11,11,11,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,5,7,6,9,9,5,6,7,9,9,8,9,9,11,11,8,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,11,12,5,7,7,9,9,7,8,7,10,10,7,8,8,10,10,9,10,9,12,11,9,10,10,12,12,8,9,9,12,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,14,11,11,12,13,14,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,11,13,13,11,12,12,14,14,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,11,12,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,11,12,13,10,11,11,12,13,6,8,8,10,10,8,9,8,11,10,8,9,9,11,11,10,11,10,13,12,10,11,11,13,13,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,12,13,13,14,12,13,13,14,14,9,10,10,12,12,10,11,10,13,12,10,11,11,13,13,11,13,12,14,13,12,13,13,14,14,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,12,12,7,8,8,10,10,8,9,9,11,11,8,8,9,10,11,10,11,11,13,13,10,10,11,12,13,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,11,13,13,10,11,11,13,12,9,10,10,12,12,10,11,11,13,13,10,10,11,12,13,12,13,13,14,14,12,12,13,13,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,15,14,12,13,13,14,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,12,12,12,14,13,11,12,12,14,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,14,15,12,13,13,14,15,9,10,10,12,12,10,11,10,13,12,10,11,11,13,13,12,13,12,15,14,12,13,13,14,15,11,12,12,14,14,12,13,13,14,14,12,13,13,15,14,14,14,14,14,16,14,14,15,16,16,11],"i8",L3,x.GLOBAL_BASE+124340),d3([12,12,14,14,11,12,12,14,14,12,13,13,14,15,13,14,13,16,14,14,14,14,16,16,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,14,14,9,10,10,12,12,10,11,11,13,13,10,10,11,12,13,12,13,13,15,14,12,12,13,13,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,14,14,12,13,13,15,14,11,12,12,14,13,12,13,13,15,14,11,12,12,13,14,14,15,14,16,15,13,13,14,13,16,11,12,12,14,14,12,13,13,14,15,12,13,12,15,14,14,14,14,16,15,14,15,13,16,14,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,7,5,7,7,5,7,7,8,9,9,7,9,9,5,7,7,7,9,9,8,9,9,5,7,7,7,9,9,7,9,9,7,9,9,9,10,11,9,11,10,7,9,9,9,11,10,9,10,11,5,7,7,7,9,9,7,9,9,7,9,9,9,11,10,9,10,10,8,9,9,9,11,11,9,11,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,6,14,18,18,17,17,17,17,17,17,4,7,9,9,10,13,15,17,17,17,6,7,5,6,8,11,16,17,16,17,5,7,5,4,6,10,14,17,17,17,6,6,6,5,7,10,13,16,17,17,7,6,7,7,7,8,7,10,15,16,12,9,9,6,6,5,3,5,11,15,14,14,13,5,5,7,3,4,8,15,17,17,13,7,7,10,6,6,10,15,17,17,16,10,11,14,10,10,15,17,0,0,0,0,2,0,0,0,100,0,0,0,192,30,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,184,16,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,16,2,0,0,0,0,0,0,0,0,0,0,0,0,0,8,17,2,0,0,0,0,0,0,0,0,0,0,0,0,0,48,17,2,0,0,0,0,0,0,0,0,0,0,0,0,0,88,17,2,0,0,0,0,0,0,0,0,0,0,0,0,0,128,17,2,0,0,0,0,0,168,17,2,0,208,17,2,0,0,0,0,0,0,0,0,0,248,17,2,0,32,18,2,0,0,0,0,0,0,0,0,0,72,18,2,0,112,18,2,0,152,18,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,80,16,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,9,14,13,15,14,16,13,13,14,5,5,7,7,8,9,11,10,12,15,10,6,5,6,6,9,10,10,13,16,10,6,6,6,6,8,9,9,12,15,14,7,6,6,5,6,6,8,12,15,10,8,7,7,6,7,7,7,11,13,14,10,9,8,5,6,4,5,9,12,10,9,9,8,6,6,5,3,6,11,12,11,12,12,10,9,8,5,5,8,10,11,15,13,13,13,12,8,6,7,0,0,0,0,4,0,0,0,81,0,0,0,88,30,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,176,30,2,0,0,0,0,0,4,0,0,0,81,0,0,0,240,29,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,72,30,2,0,0,0,0,0,4,0,0,0,113,2,0,0,96,27,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,29,2,0,0,0,0,0,4,0,0,0,113,2,0,0,208,24,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,27,2,0,0,0,0,0,2,0,0,0,81,0,0,0,80,24,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,168,24,2,0,0,0,0,0,2,0,0,0,81,0,0,0,208,23,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,40,24,2,0,0,0,0,0,4,0,0,0,81,0,0,0,104,23,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,192,23,2,0,0,0,0,0,2,0,0,0,121,0,0,0,184,22,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,56,23,2,0,0,0,0,0,2,0,0,0,121,0,0,0,8,22,2,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,136,22,2,0,0,0,0,0,2,0,0,0,121,0,0,0,88,21,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,216,21,2,0,0,0,0,0,2,0,0,0,121,0,0,0,168,20,2,0,1,0,0,0,0,226,120,225,0,232,51,97,4,0,0,0,0,0,0,0,40,21,2,0,0,0,0,0,2,0,0,0,169,0,0,0,192,19,2,0,1,0,0,0,0,96,18,225,0,128,184,96,4,0,0,0,0,0,0,0,112,20,2,0,0,0,0,0,1,0,0,0,49,0,0,0,192,18,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,248,18,2,0,0,0,0,0,2,4,4,4,4,5,5,5,5,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,6,5,8,6,9,8,10,9,11,10,4,6,6,8,8,9,9,11,10,11,11,11,11,4,6,6,8,8,10,9,11,11,11,11,11,12,6,8,8,10,10,11,11,12,12,13,12,13,13,6,8,8,10,10,11,11,12,12,12,13,14,13,8,10,10,11,11,12,13,14,14,14,14,15,15,8,10,10,11,12,12,13,13,14,14,14,14,15,9,11,11,13,13,14,14,15,14,16,15,17,15,9,11,11,12,13,14,14,15,14,15,15,15,16,10,12,12,13,14,15,15,15,15,16,17,16,17,10,13,12,13,14,14,16,16,16,16,15,16,17,11,13,13,14,15,14,17,15,16,17,17,17,17,11,13,13,14,15,15,15,15,17,17,16,17,16,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,10,10,10,10,10,10,10,10,4,10,10,10,10,10,10,10,10,10,10,4,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,7,7,5,6,6,7,7,7,7,7,7,7,7,5,6,6,6,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,8,8,6,7,7,7,7,7,7,7,7,8,8,7,7,7,7,7,8,7,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,10,11,11,4,6,6,7,7,9,9,11,10,12,12,5,6,5,7,7,9,9,10,11,12,12,6,7,7,8,8,10,10,11,11,13,13,6,7,7,8,8,10,10,11,12,13,13,8,9,9,10,10,11,11,12,12,14,14,8,9,9,10,10,11,11,12,12,14,14,10,10,10,11,11,13,12,14,14,15,15,10,10,10,12,12,13,13,14,14,15,15,11,12,12,13,13,14,14,15,14,16,15,11,12,12,13,13,14,14,15,15,15,16,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,3,4,4,6,6,7,7,8,8,8,8,4,5,5,6,6,8,7,8,8,8,8,4,5,5,6,6,7,8,8,8,8,8,6,7,6,7,7,8,8,9,9,9,9,6,6,7,7,7,8,8,9,9,9,9,7,8,7,8,8,9,9,9,9,9,9,7,7,8,8,8,9,9,9,9,9,9,8,8,8,9,9,9,9,10,9,9,9,8,8,8,9,9,9,9,9,9,9,10,8,8,8,9,9,9,9,10,9,10,10,8,8,8,9,9,9,9,9,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,9,8,8,9,9,7,10,10,5,8,9,7,9,10,8,9,9,4,9,9,9,11,10,8,10,10,7,11,10,10,10,12,10,12,12,7,10,10,10,12,11,10,12,12,5,9,9,8,10,10,9,11,11,7,11,10,10,12,12,10,11,12,7,10,11,10,12,12,10,12,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,9,9,4,5,4,6,6,8,7,9,9,4,4,5,6,6,7,7,9,9,5,6,6,7,7,8,8,10,10,5,6,6,7,7,8,8,10,10,7,8,7,8,8,10,9,11,11,7,7,8,8,8,9,10,11,11,9,9,9,10,10,11,10,12,11,9,9,9,10,10,11,11,11,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,7,8,10,10,4,5,5,8,7,8,8,11,11,3,5,5,7,7,8,9,11,11,6,8,7,9,9,10,10,12,12,6,7,8,9,10,10,10,12,12,8,8,8,10,10,12,11,13,13,8,8,9,10,10,11,11,13,13,10,11,11,12,12,13,13,14,14,10,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,6,7,6,9,9,6,6,7,9,9,8,9,9,11,11,8,9,9,10,11,6,7,7,9,9,7,8,8,10,10,6,7,8,9,10,9,10,10,12,12,9,9,10,11,12,6,7,7,9,9,6,8,7,10,9,7,8,8,10,10,9,10,9,12,11,9,10,10,12,11,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,13,14,11,11,12,13,13,8,9,9,11,11,9,10,10,12,11,9,10,10,12,12,11,12,11,13,13,11,12,12,13,13,6,7,7,9,9,7,8,7,10,10,7,7,8,10,10,9,10,10,12,11,9,10,10,12,12,7,8,8,10,10,8,8,9,11,11,8,9,9,11,11,10,11,11,12,12,10,10,11,12,13,6,7,7,10,10,7,9,8,11,10,8,8,9,10,11,10,11,10,13,11,10,11,11,12,12,9,10,10,12,12,10,10,11,13,13,10,11,11,13,12,12,12,13,13,14,12,12,13,14,14,9,10,10,12,12,9,10,10,12,12,10,11,11,13,13,11,12,11,14,12,12,13,13,14,14,6,7,7,9,9,7,8,7,10,10,7,7,8,10,10,9,10,10,12,11,9,10,10,11,12,6,7,7,10,10,8,9,8,11,10,7,8,9,10,11,10,11,11,13,12,10,10,11,11,13,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,10,13,12,10,11,11,12,12,9,10,10,12,12,10,11,11,13,12,9,10,10,12,13,12,13,12,14,14,11,11,12,12,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,12,14,14,12,13,12,14,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,13,13,9,10,10,12,12,10,11,11,13,13,10,11,11,13,12,12,13,13,14,14,12,12,13,14,14,9,10,10,12,12,9,11,10,13,12,10,10,11,12,13,11,13,12,14,13,12,12,13,14,14,11,12,12,13,13,11,12,13,14,14,12,13,13,14,14,13,13,14,14,16,13,14,14,16,16,11,11,11,13,13,11,12,11,14,13,12,12,13,14,15,13,14,12,16,13,14,14,14,15,16,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,13,14,9,10,10,12,12,10,11,10,13,12,9,10,11,12,13,12,13,12,14,14,12,12,13,13,14,9,10,10,12,12,10,11,11,12,13,10,11,11,13,13,12,13,12,14,14,12,13,13,14,14,11,12,12,13,13,12,13,12,14,14,11,11,12,13,14,13,15,14,16,15,13,12,14,13,16,11,12,12,13,13,12,13,13,14,14,12,12,12,14,14,13,14,14,15,15,13,14,13,16,14,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,4,8,8,5,7,6,9,9,5,6,7,9,9,8,9,9,13,12,8,9,10,12,13,5,7,7,10,9,7,9,9,11,11,6,8,9,11,11,10,11,11,14,14,9,10,11,13,14,5,7,7,9,9,7,9,8,11,11,7,9,9,11,11,9,11,10,14,13,10,11,11,14,14,8,10,10,14,13,10,11,12,15,14,9,11,11,15,14,13,14,14,16,16,12,13,14,17,16,8,10,10,13,13,9,11,11,14,15,10,11,12,14,15,12,14,13,16,16,13,14,15,15,17,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,12,11,15,14,10,11,12,14,14,7,9,9,12,12,9,11,11,13,13,9,11,11,13,13,11,13,13,14,17,11,13,13,15,16,6,9,9,11,11,8,11,10,13,12,9,11,11,13,13,11,13,12,16,14,11,13,13,16,16,10,12,12,15,15,11,13,13,16,16,11,13,13,16,15,14,16,17,17,19,14,16,16,18,0,9,11,11,14,15,10,13,12,16,15,11,13,13,16,16,14,15,14,0,16,14,16,16,18,0,5,7,7,10,10,7,9,9,12,11,7,9,9,11,12,10,11,11,15,14,10,11,12,14,14,6,9,9,11,11,9,11,11,13,13,8,10,11,12,13,11,13,13,17,15,11,12,13,14,15,7,9,9,11,12,9,11,11,13,13,9,11,11,13,13,11,13,12,16,16,11,13,13,15,14,9,11,11,14,15,11,13,13,16,15,10,12,13,16,16,15,16,16,0,0,14,13,15,16,18,10,11,11,15,15,11,13,14,16,18,11,13,13,16,15,15,16,16,19,0,14,15,15,16,16,8,10,10,13,13,10,12,11,16,15,10,11,11,16,15,13,15,16,18,0,13,14,15,17,17,9,11,11,15,15,11,13,13,16,18,11,13,13,16,17,15,16,16,0,0,15,18,16,0,17,9,11,11,15,15,11,13,12,17,15,11,13,14,16,17,15,18,15,0,17,15,16,16,18,19,13,15,14,0,18,14,16,16,19,18,14,16,15,19,19,16,18,19,0,0,16,17,0,0,0,12,14,14,17,17,13,16,14,0,18,14,16,15,18,0,16,18,16,19,17,18,19,17,0,0,8,10,10,14,14,9,12,11,15,15,10,11,12,15,17,13,15,15,18,16,14,16,15,18,17,9,11,11,16,15,11,13,13,0,16,11,12,13,16,15,15,16,16,0,17,15,15,16,18,17,9,12,11,15,17,11,13,13,16,16,11,14,13,16,16,15,15,16,18,19,16,18,16,0,0,12,14,14,0,16,14,16,16,0,18,13,14,15,16,0,17,16,18,0,0,16,16,17,19,0,13,14,14,17,0,14,17,16,0,19,14,15,15,18,19,17,16,18,0,0,15,19,16,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,5,6,6,5,6,6,5,6,6,6,8,8,6,7,8,5,6,6,6,8,7,6,8,8,5,6,6,6,8,7,6,8,8,6,8,8,8,9,9,8,9,9,6,8,7,7,9,8,8,9,9,5,6,6,6,8,7,6,8,8,6,8,8,8,9,9,7,8,9,6,8,8,8,9,9,8,9,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,4,7,7,5,7,7,5,8,8,8,10,10,7,10,10,5,8,8,7,10,10,8,10,10,5,8,8,8,11,10,8,10,10,8,10,10,10,12,13,10,13,13,7,10,10,10,13,12,10,13,13,5,8,8,8,11,10,8,10,11,7,10,10,10,13,13,10,12,13,8,11,11,10,13,13,10,13,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,12,17,16,16,17,17,17,17,17,4,7,11,11,12,9,17,10,17,17,7,7,8,9,7,9,11,10,15,17,7,9,10,11,10,12,14,12,16,17,7,8,5,7,4,7,7,8,16,16,6,10,9,10,7,10,11,11,16,17,6,8,8,9,5,7,5,8,16,17,5,5,8,7,6,7,7,6,6,14,12,10,12,11,7,11,4,4,2,7,17,15,15,15,8,15,6,8,5,9,0,0,0,0,2,0,0,0,100,0,0,0,208,47,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,32,2,0,0,0,0,0,0,0,0,0,0,0,0,0,200,32,2,0,0,0,0,0,0,0,0,0,0,0,0,0,240,32,2,0,0,0,0,0,0,0,0,0,0,0,0,0,24,33,2,0,0,0,0,0,0,0,0,0,0,0,0,0,64,33,2,0,0,0,0,0,0,0,0,0,0,0,0,0,104,33,2,0,0,0,0,0,144,33,2,0,184,33,2,0,0,0,0,0,0,0,0,0,224,33,2,0,8,34,2,0,0,0,0,0,0,0,0,0,48,34,2,0,88,34,2,0,128,34,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,56,32,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,9,14,13,14,13,16,12,13,14,5,4,6,6,8,9,11,10,12,15,10,5,5,6,6,8,10,10,13,16,10,6,6,6,6,8,9,9,12,14,13,7,6,6,4,6,6,7,11,14,10,7,7,7,6,6,6,7,10,13,15,10,9,8,5,6,5,6,10,14,10,9,8,8,6,6,5,4,6,11,11,11,12,11,10,9,9,5,5,9,10,12,15,13,13,13,13,8,7,7,0,0,0,0,4,0,0,0,81,0,0,0,104,47,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,192,47,2,0,0,0,0,0,4,0,0,0,81,0,0,0,0,47,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,88,47,2,0,0,0,0,0,4,0,0,0,113,2,0,0,112,44,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,46,2,0,0,0,0,0,4,0,0,0,113,2,0,0,224,41,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,44,2,0,0,0,0,0,2,0,0,0,81,0,0,0,96,41,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,184,41,2,0,0,0,0,0,2,0,0,0,81,0,0,0,224,40,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,56,41,2,0,0,0,0,0,4,0,0,0,81,0,0,0,120,40,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,208,40,2,0,0,0,0,0,2,0,0,0,121,0,0,0,200,39,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,72,40,2,0,0,0,0,0,2,0,0,0,121,0,0,0,24,39,2,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,152,39,2,0,0,0,0,0,2,0,0,0,121,0,0,0,104,38,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,232,38,2,0,0,0,0,0,2,0,0,0,225,0,0,0,64,37,2,0,1,0,0,0,0,228,91,225,0,224,255,96,4,0,0,0,0,0,0,0,40,38,2,0,0,0,0,0,2,0,0,0,225,0,0,0,24,36,2,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,0,37,2,0,0,0,0,0,2,0,0,0,33,1,0,0,168,34,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,208,35,2,0,0,0,0,0,3,5,5,7,7,8,8,8,8,8,8,9,8,8,9,9,9,5,6,6,7,7,8,8,8,8,8,8,9,9,9,9,9,9,5,6,6,7,7,8,8,8,8,8,8,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,9,9,9,9,9,9,9,9,9,9,9,10,9,9,9,10,9,9,9,9,9,9,9,9,9,9,10,9,9,9,10,9,9,10,9,9,9,9,9,9,9,9,9,10,10,10,9,10,9,10,10,9,9,9,9,9,9,9,9,9,10,10,9,10,10,9,9,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,7,7,8,9,8,8,9,8,9,8,9,9,4,7,6,8,8,9,9,9,9,9,9,9,9,9,9,4,7,6,9,9,10,10,9,9,10,10,10,10,11,11,7,9,8,10,10,11,11,10,10,11,11,11,11,11,11,7,8,9,10,10,11,11,10,10,11,11,11,11,11,12,8,10,10,11,11,12,12,11,11,12,12,12,12,13,12,8,10,10,11,11,12,11,11,11,11,12,12,12,12,13,8,9,9,11,10,11,11,12,12,12,12,13,12,13,12,8,9,9,11,11,11,11,12,12,12,12,12,13,13,13,9,10,10,11,12,12,12,12,12,13,13,13,13,13,13,9,10,10,11,11,12,12,12,12,13,13,13,13,14,13,10,10,10,12,11,12,12,13,13,13,13,13,13,13,13,10,10,11,11,11,12,12,13,13,13,13,13,13,13,13,10,11,11,12,12,13,12,12,13,13,13,13,13,13,14,10,11,11,12,12,13,12,13,13,13,14,13,13,14,13,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,2,9,8,15,15,15,15,15,15,15,15,15,15,4,8,9,13,14,14,14,14,14,14,14,14,14,14,14,5,8,9,14,14,14,14,14,14,14,14,14,14,14,14,11,14,14,14,14,14,14,14,14,14,14,14,14,14,14,11,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,3,5,5,6,6,7,7,7,7,7,7,5,6,5,7,7,7,7,8,7,8,8,5,5,6,6,7,7,7,7,7,8,8,6,7,7,7,7,8,7,8,8,8,8,6,6,7,7,7,7,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,7,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,10,10,4,6,6,7,7,9,9,10,10,11,11,4,6,6,7,7,9,9,10,10,11,11,6,8,8,9,9,10,10,11,11,12,12,6,8,8,9,9,10,10,11,11,12,12,8,9,9,10,10,11,11,12,12,13,13,8,9,9,10,10,11,11,12,12,13,13,10,10,10,11,11,13,13,13,13,15,14,9,10,10,12,11,12,13,13,13,14,15,11,12,12,13,13,13,13,15,14,15,15,11,11,12,13,13,14,14,14,15,15,15,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,3,4,4,6,6,7,7,8,8,8,8,4,5,5,7,6,8,8,8,8,8,8,4,5,5,6,7,8,8,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,7,8,8,8,8,8,8,9,9,9,9,7,8,8,8,8,8,8,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,9,8,7,10,10,8,10,10,5,8,9,7,10,10,7,10,9,4,8,8,9,11,11,8,11,11,7,11,11,10,10,13,10,13,13,7,11,11,10,13,12,10,13,13,5,9,8,8,11,11,9,11,11,7,11,11,10,13,13,10,12,13,7,11,11,10,13,13,9,13,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,9,9,4,5,4,6,6,7,7,9,9,4,4,5,6,6,7,8,9,9,5,6,6,7,7,8,8,10,10,5,6,6,7,7,8,8,10,10,7,8,7,8,8,10,9,11,11,7,7,8,8,8,9,10,10,11,9,9,9,10,10,11,11,12,11,9,9,9,10,10,11,11,11,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,8,8,10,10,4,5,5,8,7,8,8,11,11,3,5,5,7,8,8,8,11,11,6,8,7,9,9,10,9,12,11,6,7,8,9,9,9,10,11,12,8,8,8,10,9,12,11,13,13,8,8,9,9,10,11,12,13,13,10,11,11,12,12,13,13,14,14,10,10,11,11,12,13,13,14,14,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,6,7,6,9,9,6,6,7,9,9,8,9,9,11,11,8,9,9,11,11,6,7,7,9,9,7,8,8,10,10,7,7,8,9,10,9,10,10,11,11,9,9,10,11,12,6,7,7,9,9,7,8,7,10,9,7,8,8,10,10,9,10,9,12,11,9,10,10,12,11,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,11,12,13,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,11,13,12,11,12,12,13,13,5,7,7,9,9,7,8,7,10,10,7,7,8,10,10,9,10,10,12,11,9,10,10,11,12,7,8,8,10,10,8,8,9,11,11,8,9,9,11,11,10,10,11,12,13,10,10,11,12,12,6,7,7,10,10,7,9,8,11,10,8,8,9,10,11,10,11,10,13,11,10,11,11,12,12,9,10,10,12,12,10,10,11,13,13,10,11,11,12,13,12,12,12,13,14,12,12,13,14,14,9,10,10,12,12,9,10,10,13,12,10,11,11,13,13,11,12,11,14,12,12,13,13,14,14,6,7,7,9,9,7,8,7,10,10,7,8,8,10,10,9,10,10,12,11,9,10,10,11,12,6,7,7,10,10,8,9,8,11,10,7,8,9,10,11,10,11,11,12,12,10,10,11,11,13,7,8,8,10,10,8,9,9,11,11,8,9,8,11,11,10,11,10,13,12,10,11,11,13,12,9,10,10,12,12,10,11,11,13,12,9,10,10,12,13,12,13,12,14,14,11,11,12,12,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,12,12,14,14,12,13,12,14,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,13,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,12,13,14,15,12,12,13,14,14,9,10,10,12,12,9,11,10,13,12,10,10,11,12,13,12,13,12,14,13,12,12,13,14,15,11,12,12,14,13,11,12,12,14,14,12,13,13,14,14,13,13,14,14,16,13,14,14,15,15,11,12,11,13,13,11,12,11,14,13,12,12,13,14,15,12,14,12,15,12,13,14,15,15,16,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,13,13,9,10,10,12,12,10,11,10,13,12,9,10,11,12,13,12,13,12,14,14,12,12,13,13,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,12,14,14,12,13,13,14,14,11,11,11,13,13,12,13,12,14,14,11,11,12,13,14,14,14,14,16,15,12,12,14,12,15,11,12,12,13,14,12,13,13,14,15,11,12,12,14,14,13,14,14,16,16,13,14,13,16,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,4,8,8,5,7,6,9,9,5,6,7,9,9,8,9,9,13,12,8,9,10,12,13,5,7,7,10,9,7,9,9,11,11,7,8,9,11,11,10,11,11,14,14,9,10,11,13,14,5,7,7,9,10,6,9,8,11,11,7,9,9,11,11,9,11,10,14,13,10,11,11,14,13,8,10,10,13,13,10,11,11,15,15,9,11,11,14,14,13,14,14,17,16,12,13,14,16,16,8,10,10,13,14,9,11,11,14,15,10,11,12,14,15,12,14,13,16,15,13,14,14,15,17,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,12,11,14,14,10,11,11,14,14,7,9,9,12,11,9,11,11,13,13,9,11,11,13,13,11,13,13,14,15,11,12,13,15,16,6,9,9,11,12,8,11,10,13,12,9,11,11,13,14,11,13,12,16,14,11,13,13,15,16,10,12,11,14,15,11,13,13,15,17,11,13,13,17,16,15,15,16,17,16,14,15,16,18,0,9,11,11,14,15,10,12,12,16,15,11,13,13,16,16,13,15,14,18,15,14,16,16,0,0,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,11,11,14,14,10,11,12,14,14,6,9,9,11,11,9,11,11,13,13,8,10,11,12,13,11,13,13,16,15,11,12,13,14,16,7,9,9,11,12,9,11,11,13,13,9,11,11,13,13,11,13,13,16,15,11,13,12,15,15,9,11,11,15,14,11,13,13,17,16,10,12,13,15,16,14,16,16,0,18,14,14,15,15,17,10,11,12,15,15,11,13,13,16,16,11,13,13,16,16,14,16,16,19,17,14,15,15,17,17,8,10,10,14,14,10,12,11,15,15,10,11,12,16,15,14,15,15,18,20,13,14,16,17,18,9,11,11,15,16,11,13,13,17,17,11,13,13,17,16,15,16,16,0,0,15,16,16,0,0,9,11,11,15,15,10,13,12,17,15,11,13,13,17,16,15,17,15,20,19,15,16,16,19,0,13,15,14,0,17,14,15,16,0,20,15,16,16,0,19,17,18,0,0,0,16,17,18,0,0,12,14,14,19,18,13,15,14,0,17,14,15,16,19,19,16,18,16,0,19,19,20,17,20,0,8,10,10,13,14,10,11,11,15,15,10,12,12,15,16,14,15,14,19,16,14,15,15,0,18,9,11,11,16,15,11,13,13,0,16,11,12,13,16,17,14,16,17,0,19,15,16,16,18,0,9,11,11,15,16,11,13,13,16,16,11,14,13,18,17,15,16,16,18,20,15,17,19,0,0,12,14,14,17,17,14,16,15,0,0,13,14,15,19,0,16,18,20,0,0,16,16,18,18,0,12,14,14,17,20,14,16,16,19,0,14,16,14,0,20,16,20,17,0,0,17,0,15,0,19,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,5,6,6,5,6,6,5,6,6,6,8,8,6,7,8,5,6,6,6,8,7,6,8,8,5,6,6,6,8,8,6,8,8,6,8,8,8,9,9,8,9,9,6,7,7,7,9,8,8,9,9,5,6,6,6,8,7,6,8,8,6,8,8,8,9,9,7,8,9,6,8,8,8,9,9,8,9,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,4,8,7,5,7,7,5,8,8,8,10,10,7,9,10,5,8,8,7,10,9,8,10,10,5,8,8,8,10,10,8,10,10,8,10,10,10,12,13,10,13,13,7,10,10,10,13,11,10,13,13,5,8,8,8,11,10,8,10,10,7,10,10,10,13,13,10,11,13,8,10,11,10,13,13,10,13,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,11,16,13,17,13,17,16,17,17,4,7,9,9,13,10,16,12,16,17,7,6,5,7,8,9,12,12,16,17,6,9,7,9,10,10,15,15,17,17,6,7,5,7,5,7,7,10,16,17,7,9,8,9,8,10,11,11,15,17,7,7,7,8,5,8,8,9,15,17,8,7,9,9,7,8,7,2,7,15,14,13,13,15,5,10,4,3,6,17,17,15,13,17,7,11,7,6,9,16,0,0,0,0,2,0,0,0,100,0,0,0,160,64,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,176,49,2,0,0,0,0,0,0,0,0,0,0,0,0,0,216,49,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,2,0,0,0,0,0,0,0,0,0,0,0,0,0,40,50,2,0,0,0,0,0,0,0,0,0,0,0,0,0,80,50,2,0,0,0,0,0,0,0,0,0,0,0,0,0,120,50,2,0,0,0,0,0,160,50,2,0,200,50,2,0,0,0,0,0,0,0,0,0,240,50,2,0,24,51,2,0,0,0,0,0,0,0,0,0,64,51,2,0,104,51,2,0,144,51,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,72,49,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,13,12,14,12,16,11,13,14,5,4,5,6,7,8,10,9,12,15,10,5,5,5,6,8,9,9,13,15,10,5,5,6,6,7,8,8,11,13,12,7,5,6,4,6,7,7,11,14,11,7,7,6,6,6,7,6,10,14,14,9,8,8,6,7,7,7,11,16,11,8,8,7,6,6,7,4,7,12,10,10,12,10,10,9,10,5,6,9,10,12,15,13,14,14,14,8,7,8,0,0,0,0,4,0,0,0,81,0,0,0,56,64,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,144,64,2,0,0,0,0,0,4,0,0,0,81,0,0,0,208,63,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,40,64,2,0,0,0,0,0,4,0,0,0,113,2,0,0,64,61,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,184,63,2,0,0,0,0,0,4,0,0,0,113,2,0,0,176,58,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,40,61,2,0,0,0,0,0,2,0,0,0,81,0,0,0,48,58,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,136,58,2,0,0,0,0,0,2,0,0,0,81,0,0,0,176,57,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,8,58,2,0,0,0,0,0,4,0,0,0,81,0,0,0,72,57,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,160,57,2,0,0,0,0,0,2,0,0,0,121,0,0,0,152,56,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,24,57,2,0,0,0,0,0,2,0,0,0,121,0,0,0,232,55,2,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,104,56,2,0,0,0,0,0,2,0,0,0,121,0,0,0,56,55,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,184,55,2,0,0,0,0,0,2,0,0,0,169,0,0,0,80,54,2,0,1,0,0,0,0,232,87,225,0,224,255,96,4,0,0,0,0,0,0,0,0,55,2,0,0,0,0,0,2,0,0,0,225,0,0,0,40,53,2,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,16,54,2,0,0,0,0,0,2,0,0,0,33,1,0,0,184,51,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,52,2,0,0,0,0,0,2,5,5,7,7,8,8,8,8,8,8,9,9,9,9,9,9,5,6,6,7,7,8,8,9,8,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,9,8,9,9,9,9,9,9,9,9,7,7,7,8,8,9,8,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,9,8,9,9,9,9,9,9,9,9,9,9,8,8,8,8,9,9,9,9,9,9,9,9,10,9,10,10,10,8,8,8,9,8,9,9,9,9,9,9,9,10,9,10,9,10,8,9,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,8,9,9,9,9,9,9,10,9,10,9,10,10,10,10,10,10,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,9,10,9,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,10,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,7,8,7,9,8,9,9,4,7,6,9,8,10,10,9,8,9,9,9,9,9,8,5,6,6,8,9,10,10,9,9,9,10,10,10,10,11,7,8,8,10,10,11,11,10,10,11,11,11,12,11,11,7,8,8,10,10,11,11,10,10,11,11,12,11,11,11,8,9,9,11,11,12,12,11,11,12,11,12,12,12,12,8,9,10,11,11,12,12,11,11,12,12,12,12,12,12,8,9,9,10,10,12,11,12,12,12,12,12,12,12,13,8,9,9,11,11,11,11,12,12,12,12,13,12,13,13,9,10,10,11,11,12,12,12,13,12,13,13,13],"i8",L3,x.GLOBAL_BASE+134580),d3([14,13,9,10,10,11,11,12,12,12,13,13,12,13,13,14,13,9,11,10,12,11,13,12,12,13,13,13,13,13,13,14,9,10,10,12,12,12,12,12,13,13,13,13,13,14,14,10,11,11,12,12,12,13,13,13,14,14,13,14,14,14,10,11,11,12,12,12,12,13,12,13,14,13,14,14,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,2,12,10,13,13,13,13,13,13,13,13,4,9,9,13,13,13,13,13,13,13,13,13,13,5,10,9,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,6,6,7,7,7,7,7,7,5,6,5,7,6,7,7,8,8,8,8,5,5,5,6,6,7,7,8,8,8,8,6,7,6,7,7,8,8,8,8,8,8,6,6,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,10,10,4,6,6,7,7,9,9,10,10,11,11,4,6,6,7,7,9,9,10,10,11,11,6,8,7,9,9,10,10,11,11,13,12,6,8,8,9,9,10,10,11,11,12,13,8,9,9,10,10,12,12,13,12,14,13,8,9,9,10,10,12,12,13,13,14,14,9,11,11,12,12,13,13,14,14,15,14,9,11,11,12,12,13,13,14,14,15,14,11,12,12,13,13,14,14,15,14,15,14,11,11,12,13,13,14,14,14,14,15,15,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,4,5,5,7,7,8,8,9,8,8,9,4,5,5,7,7,8,8,9,9,8,9,6,7,7,8,8,9,8,9,9,9,9,6,7,7,8,8,9,9,9,9,9,9,7,8,8,9,9,9,9,9,9,9,9,7,8,8,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,9,9,8,11,10,7,11,10,5,9,9,7,10,10,8,10,11,4,9,9,9,12,12,9,12,12,8,12,12,11,12,12,10,12,13,7,12,12,11,12,12,10,12,13,4,9,9,9,12,12,9,12,12,7,12,11,10,13,13,11,12,12,7,12,12,10,13,13,11,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,9,9,4,5,4,6,6,7,7,9,9,4,4,5,6,6,7,7,9,9,5,6,6,7,7,8,8,10,10,6,6,6,7,7,8,8,10,10,7,7,7,8,8,9,9,11,10,7,7,7,8,8,9,9,10,11,9,9,9,10,10,11,10,11,11,9,9,9,10,10,11,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,8,8,10,10,4,5,5,8,7,8,8,11,10,3,5,5,7,8,8,8,10,11,6,8,7,10,9,10,10,11,11,6,7,8,9,9,9,10,11,12,8,8,8,10,10,11,11,13,12,8,8,9,9,10,11,11,12,13,10,11,10,12,11,13,12,14,14,10,10,11,11,12,12,13,14,14,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,6,7,6,9,9,6,6,7,9,9,8,9,9,11,11,8,9,9,11,11,6,7,7,9,9,7,8,8,10,10,6,7,8,9,10,9,10,10,11,12,9,9,10,11,12,6,7,7,9,9,6,8,7,10,9,7,8,8,10,10,9,10,9,12,11,9,10,10,12,11,8,9,9,12,11,9,10,10,12,12,9,10,10,12,12,11,12,12,13,14,11,11,12,13,14,8,9,9,11,12,9,10,10,12,12,9,10,10,12,12,11,12,11,14,13,11,12,12,13,13,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,12,12,7,8,8,10,10,8,8,9,10,11,8,9,9,11,11,10,10,11,11,13,10,11,11,12,13,6,7,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,13,11,10,11,11,12,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,11,13,12,15,12,13,13,14,15,9,10,10,12,12,9,11,10,13,12,10,11,11,13,13,11,13,11,14,12,12,13,13,14,15,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,12,12,6,8,7,10,10,8,9,9,11,11,7,8,9,10,11,10,11,11,12,12,10,10,11,11,13,7,8,8,10,10,8,9,9,11,11,8,9,8,11,10,10,11,11,13,12,10,11,10,13,11,9,10,10,12,12,10,11,11,13,12,9,10,10,12,13,12,13,13,14,15,11,11,13,12,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,13,13,14,14,12,13,11,14,12,8,9,9,12,12,9,10,10,12,12,9,10,10,12,12,12,12,12,14,14,11,12,12,14,13,9,10,10,12,12,10,11,11,13,13,10,11,11,13,12,12,12,13,14,15,12,13,13,15,14,9,10,10,12,12,10,11,10,13,12,10,11,11,12,13,12,13,12,15,13,12,13,13,14,15,11,12,12,14,13,11,12,12,14,15,12,13,13,15,14,13,12,14,12,16,13,14,14,15,15,11,11,12,14,14,11,12,11,14,13,12,13,13,14,15,13,14,12,16,12,14,14,15,16,16,8,9,9,11,12,9,10,10,12,12,9,10,10,12,13,11,12,12,13,13,12,12,13,14,14,9,10,10,12,12,10,11,10,13,12,10,10,11,12,13,12,13,13,15,14,12,12,13,13,15,9,10,10,12,13,10,11,11,12,13,10,11,11,13,13,12,13,13,14,15,12,13,12,15,14,11,12,11,14,13,12,13,13,15,14,11,11,12,13,14,14,15,14,16,15,13,12,14,13,16,11,12,12,13,14,12,13,13,14,15,11,12,11,14,14,14,14,14,15,16,13,15,12,16,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,5,8,8,5,7,6,9,9,5,6,7,9,9,8,10,9,13,12,8,9,10,12,12,5,7,7,10,10,7,9,9,11,11,6,8,9,11,11,10,11,11,14,14,9,10,11,13,14,5,7,7,9,10,7,9,8,11,11,7,9,9,11,11,9,11,10,14,13,10,11,11,14,14,8,10,10,13,13,10,11,11,15,14,9,11,11,14,14,13,14,14,17,16,12,13,13,15,16,8,10,10,13,13,9,11,11,14,15,10,11,11,14,15,12,14,13,16,16,13,15,14,15,17,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,11,11,14,14,10,11,12,14,14,7,9,9,12,11,9,11,11,13,13,9,11,11,13,13,12,13,13,15,16,11,12,13,15,16,6,9,9,11,11,8,11,10,13,12,9,11,11,13,14,11,13,12,16,14,11,13,13,16,17,10,12,11,15,15,11,13,13,16,16,11,13,13,17,16,14,15,15,17,17,14,16,16,17,18,9,11,11,14,15,10,12,12,15,15,11,13,13,16,17,13,15,13,17,15,14,15,16,18,0,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,11,11,14,14,10,11,12,14,15,6,9,9,12,11,9,11,11,13,13,8,10,11,12,13,11,13,13,16,15,11,12,13,14,15,7,9,9,11,12,9,11,11,13,13,9,11,11,13,13,11,13,13,15,16,11,13,13,15,14,9,11,11,15,14,11,13,13,17,15,10,12,12,15,15,14,16,16,17,17,13,13,15,15,17,10,11,12,15,15,11,13,13,16,16,11,13,13,15,15,14,15,15,18,18,14,15,15,17,17,8,10,10,13,13,10,12,11,15,15,10,11,12,15,15,14,15,15,18,18,13,14,14,18,18,9,11,11,15,16,11,13,13,17,17,11,13,13,16,16,15,15,16,17,0,14,15,17,0,0,9,11,11,15,15,10,13,12,18,16,11,13,13,15,16,14,16,15,20,20,14,15,16,17,0,13,14,14,20,16,14,15,16,19,18,14,15,15,19,0,18,16,0,20,20,16,18,18,0,0,12,14,14,18,18,13,15,14,18,16,14,15,16,18,20,16,19,16,0,17,17,18,18,19,0,8,10,10,14,14,10,11,11,14,15,10,11,12,15,15,13,15,14,19,17,13,15,15,17,0,9,11,11,16,15,11,13,13,16,16,10,12,13,15,17,14,16,16,18,18,14,15,15,18,0,9,11,11,15,15,11,13,13,16,17,11,13,13,18,17,14,18,16,18,18,15,17,17,18,0,12,14,14,18,18,14,15,15,20,0,13,14,15,17,0,16,18,17,0,0,16,16,0,17,20,12,14,14,18,18,14,16,15,0,18,14,16,15,18,0,16,19,17,0,0,17,18,16,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,5,6,6,5,6,6,5,6,6,6,8,8,6,7,8,5,6,6,6,8,7,6,8,8,5,6,6,6,8,8,6,8,8,6,8,8,8,9,9,8,9,9,6,8,7,7,9,8,8,9,9,5,6,6,6,8,7,6,8,8,6,8,7,8,9,9,7,8,9,6,8,8,8,9,9,8,9,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,7,5,8,8,8,10,10,7,9,10,5,8,8,7,10,9,8,10,10,5,8,8,8,10,10,8,10,10,8,10,10,10,12,13,10,13,13,7,10,10,10,13,11,10,13,13,4,8,8,8,11,10,8,10,10,7,10,10,10,13,13,10,11,13,8,10,11,10,13,13,10,13,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,10,17,13,17,13,17,17,17,17,3,6,8,9,11,9,15,12,16,17,6,5,5,7,7,8,10,11,17,17,7,8,7,9,9,10,13,13,17,17,8,6,5,7,4,7,5,8,14,17,9,9,8,9,7,9,8,10,16,17,12,10,7,8,4,7,4,7,16,17,12,11,9,10,6,9,5,7,14,17,14,13,10,15,4,8,3,5,14,17,17,14,11,15,6,10,6,8,15,17,0,0,0,0,2,0,0,0,64,0,0,0,248,78,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,128,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,168,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,208,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,248,66,2,0,0,0,0,0,32,67,2,0,72,67,2,0,0,0,0,0,0,0,0,0,112,67,2,0,152,67,2,0,192,67,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,24,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,12,12,13,12,11,13,5,4,6,7,8,8,9,13,9,5,4,5,5,7,9,13,9,6,5,6,6,7,8,12,12,7,5,6,4,5,8,13,11,7,6,6,5,5,6,12,10,8,8,7,7,5,3,8,10,12,13,12,12,9,6,7,4,0,0,0,81,0,0,0,144,78,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,232,78,2,0,0,0,0,0,4,0,0,0,81,0,0,0,40,78,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,128,78,2,0,0,0,0,0,4,0,0,0,113,2,0,0,152,75,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,78,2,0,0,0,0,0,4,0,0,0,113,2,0,0,8,73,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,128,75,2,0,0,0,0,0,2,0,0,0,81,0,0,0,136,72,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,224,72,2,0,0,0,0,0,2,0,0,0,169,0,0,0,160,71,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,80,72,2,0,0,0,0,0,2,0,0,0,25,0,0,0,104,71,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,71,2,0,0,0,0,0,2,0,0,0,169,0,0,0,128,70,2,0,1,0,0,0,0,232,87,225,0,224,255,96,4,0,0,0,0,0,0,0,48,71,2,0,0,0,0,0,2,0,0,0,225,0,0,0,88,69,2,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,64,70,2,0,0,0,0,0,2,0,0,0,33,1,0,0,232,67,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,16,69,2,0,0,0,0,0,2,5,5,7,7,7,7,8,8,8,8,9,9,9,9,9,9,5,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,7,7,7,8,8,8,8,9,9,9,9,10,9,10,9,10,10,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,8,9,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,8,8,8,9,9,9,9,9,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,10,10,10,10,10,10,10,10,11,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,10,10,10,10,10,10,10,10,10,10,11,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,9,8,10,8,10,9,11,11,4,7,6,8,7,9,9,10,10,11,10,11,10,12,10,4,6,7,8,8,9,9,10,10,11,11,11,11,12,12,6,8,8,10,9,11,10,12,11,12,12,12,12,13,13,6,8,8,10,10,10,11,11,11,12,12,13,12,13,13,8,9,9,11,11,12,11,12,12,13,13,13,13,13,13,8,9,9,11,11,11,12,12,12,13,13,13,13,13,13,9,10,10,12,11,13,13,13,13,14,13,13,14,14,14,9,10,11,11,12,12,13,13,13,13,13,14,15,14,14,10,11,11,12,12,13,13,14,14,14,14,14,15,16,16,10,11,11,12,13,13,13,13,15,14,14,15,16,15,16,10,12,12,13,13,14,14,14,15,15,15,15,15,15,16,11,12,12,13,13,14,14,14,15,15,15,16,15,17,16,11,12,12,13,13,13,15,15,14,16,16,16,16,16,17,11,12,12,13,13,14,14,15,14,15,15,17,17,16,16,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,3,12,12,12,12,12,12,12,12,12,12,3,12,11,12,12,12,12,12,12,12,12,12,12,4,11,10,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,6,5,4,5,5,5,6,5,6,5,6,6,5,5,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,11,10,13,13,4,6,5,8,8,9,9,10,10,11,11,14,14,4,6,6,8,8,9,9,10,10,11,11,14,14,6,8,8,9,9,10,10,11,11,12,12,15,15,6,8,8,9,9,10,11,11,11,12,12,15,15,8,9,9,11,10,11,11,12,12,13,13,16,16,8,9,9,10,10,11,11,12,12,13,13,16,16,10,10,10,12,11,12,12,13,13,14,14,16,16,10,10,10,11,12,12,12,13,13,13,14,16,17,11,12,11,12,12,13,13,14,14,15,14,18,17,11,11,12,12,12,13,13,14,14,14,15,19,18,14,15,14,15,15,17,16,17,17,17,17,21,0,14,15,15,16,16,16,16,17,17,18,17,20,21,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,7,7,9,9,4,5,5,7,7,8,8,10,9,4,5,5,7,7,8,8,10,10,6,7,7,8,8,9,9,11,10,6,7,7,8,8,9,9,10,11,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,10,10,11,10,11,11,12,12,9,10,10,10,11,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,5,7,6,9,9,5,6,7,9,9,9,9,9,11,11,8,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,7,8,10,10,9,10,10,11,12,9,10,10,11,12,5,7,7,9,9,7,8,7,10,10,7,8,8,10,10,9,10,10,12,11,9,10,10,12,11,9,10,9,12,12,9,10,10,13,12,9,10,10,12,12,12,12,12,14,14,11,12,12,13,14,9,9,10,12,12,9,10,10,13,13,9,10,10,12,13,11,12,12,14,13,11,12,12,14,14,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,9,10,10,12,12,7,8,8,11,10,8,8,9,11,11,8,9,9,11,11,11,11,11,12,13,10,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,13,11,10,11,11,13,13,9,11,10,13,12,10,11,11,13,14,10,11,11,14,13,12,12,13,12,15,12,13,13,15,15,9,10,10,12,13,10,11,10,13,12,10,11,11,13,14,12,13,11,15,13,13,13,13,15,15,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,10,10,11,12,13,6,8,8,10,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,7,8,8,10,11,8,9,9,11,11,8,9,8,11,11,10,11,11,13,13,11,12,11,13,12,9,10,10,13,12,10,11,11,14,13,10,10,11,12,13,12,13,13,15,15,12,11,13,13,14,9,10,11,12,13,10,11,11,13,14,10,11,11,13,13,12,13,13,15,15,12,13,12,15,12,8,9,9,12,12,9,11,10,13,13,9,10,10,13,13,12,13,13,15,15,12,12,12,14,14,9,10,10,13,13,10,11,11,13,14,10,11,11,14,13,13,13,14,14,16,13,13,13,15,15,9,10,10,13,13,10,11,10,14,13,10,11,11,13,14,12,14,13,16,14,12,13,13,14,15,11,12,12,15,14,11,12,13,14,15,12,13,13,16,15,14,12,15,12,16,14,15,15,16,16,11,12,12,14,14,11,13,12,15,14,12,13,13,15,16,13,15,13,17,13,14,15,15,16,17,8,9,9,12,12,9,10,10,12,13,9,10,10,13,13,12,12,12,14,14,12,13,13,15,15,9,10,10,13,12,10,11,11,14,13,10,10,11,13,14,13,13,13,15,15,12,13,14,14,16,9,10,10,13,13,10,11,11,13,14,10,11,11,14,14,13,13,13,15,15,13,14,13,16,14,11,12,12,15,14,12,13,13,16,15,11,12,13,14,15,14,15,15,17,16,13,13,15,13,16,11,12,13,14,15,13,13,13,15,16,11,13,12,15,14,14,15,15,16,16,14,15,12,17,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,8,8,5,7,7,9,9,5,7,7,9,9,8,10,9,12,12,8,9,10,12,12,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,12,11,14,14,9,10,11,13,14,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,9,11,10,14,13,10,11,11,14,14,8,10,10,14,13,10,12,12,15,14,9,11,11,15,14,13,14,14,17,17,12,14,14,16,16,8,10,10,14,14,9,11,11,14,15,10,12,12,14,15,12,14,13,16,16,13,14,15,15,18,4,7,7,10,10,7,9,9,12,11,7,9,9,11,12,10,12,11,15,14,10,11,12,14,15,7,9,9,12,12,9,11,12,13,13,9,11,12,13,13,12,13,13,15,16,11,13,13,15,16,7,9,9,12,12,9,11,10,13,12,9,11,12,13,14,11,13,12,16,14,12,13,13,15,16,10,12,12,16,15,11,13,13,17,16,11,13,13,17,16,14,15,15,17,17,14,16,16,18,20,9,11,11,15,16,11,13,12,16,16,11,13,13,16,17,14,15,14,18,16,14,16,16,17,20,5,7,7,10,10,7,9,9,12,11,7,9,10,11,12,10,12,11,15,15,10,12,12,14,14,7,9,9,12,12,9,12,11,14,13,9,10,11,12,13,12,13,14,16,16,11,12,13,14,16,7,9,9,12,12,9,12,11,13,13,9,12,11,13,13,11,13,13,16,16,12,13,13,16,15,9,11,11,16,14,11,13,13,16,16,11,12,13,16,16,14,16,16,17,17,13,14,15,16,17,10,12,12,15,15,11,13,13,16,17,11,13,13,16,16,14,16,15,19,19,14,15,15,17,18,8,10,10,14,14,10,12,12,15,15,10,12,12,16,16,14,16,15,20,19,13,15,15,17,16,9,12,12,16,16,11,13,13,16,18,11,14,13,16,17,16,17,16,20,0,15,16,18,18,20,9,11,11,15,15,11,14,12,17,16,11,13,13,17,17,15,17,15,20,20,14,16,16,17,0,13,15,14,18,16,14,15,16,0,18,14,16,16,0,0,18,16,0,0,20,16,18,18,0,0,12,14,14,17,18,13,15,14,20,18,14,16,15,19,19,16,20,16,0,18,16,19,17,19,0,8,10,10,14,14,10,12,12,16,15,10,12,12,16,16,13,15,15,18,17,14,16,16,19,0,9,11,11,16,15,11,14,13,18,17,11,12,13,17,18,14,17,16,18,18,15,16,17,18,18,9,12,12,16,16,11,13,13,16,18,11,14,13,17,17,15,16,16,18,20,16,17,17,20,20,12,14,14,18,17,14,16,16,0,19,13,14,15,18,0,16,0,0,0,0,16,16,0,19,20,13,15,14,0,0,14,16,16,18,19,14,16,15,0,20,16,20,18,0,20,17,20,17,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,6,6,5,6,6,5,6,6,7,8,8,6,8,8,5,6,6,6,8,8,7,8,8,5,7,6,6,8,8,6,8,8,6,8,8,8,9,10,8,10,10,6,8,8,8,10,8,8,10,10,5,6,6,6,8,8,6,8,8,6,8,8,8,10,10,8,8,10,6,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,10,11,8,10,11,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,11,11,11,13,14,11,15,14,8,11,11,10,13,12,11,14,14,4,8,8,8,11,11,8,11,11,7,11,11,11,15,14,10,12,14,8,11,11,11,14,14,11,14,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,14,17,15,17,16,14,13,16,10,7,7,10,13,10,15,16,9,4,4,6,5,7,9,16,12,8,7,8,8,8,11,16,14,7,4,6,3,5,8,15,13,8,5,7,4,5,7,16,12,9,6,8,3,3,5,16,14,13,7,10,5,5,7,15,2,0,0,0,64,0,0,0,192,92,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,80,2,0,0,0,0,0,0,0,0,0,0,0,0,0,176,80,2,0,0,0,0,0,0,0,0,0,0,0,0,0,216,80,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,81,2,0,0,0,0,0,0,0,0,0,0,0,0,0,40,81,2,0,0,0,0,0,80,81,2,0,120,81,2,0,0,0,0,0,0,0,0,0,160,81,2,0,200,81,2,0,240,81,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,72,80,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,9,13,12,14,11,10,13,8,4,5,7,8,7,8,12,11,4,3,5,5,7,9,14,11,6,5,6,6,6,7,13,13,7,5,6,4,5,7,14,11,7,6,6,5,5,6,13,9,7,8,6,7,5,3,9,9,12,13,12,14,10,6,7,4,0,0,0,81,0,0,0,88,92,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,176,92,2,0,0,0,0,0,4,0,0,0,81,0,0,0,240,91,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,72,92,2,0,0,0,0,0,4,0,0,0,113,2,0,0,96,89,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,91,2,0,0,0,0,0,4,0,0,0,113,2,0,0,208,86,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,89,2,0,0,0,0,0,2,0,0,0,81,0,0,0,80,86,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,168,86,2,0,0,0,0,0,2,0,0,0,169,0,0,0,104,85,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,24,86,2,0,0,0,0,0,2,0,0,0,25,0,0,0,48,85,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,80,85,2,0,0,0,0,0,2,0,0,0,81,0,0,0,176,84,2,0,1,0,0,0,0,224,63,225,0,224,255,96,4,0,0,0,0,0,0,0,8,85,2,0,0,0,0,0,2,0,0,0,225,0,0,0,136,83,2,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,112,84,2,0,0,0,0,0,2,0,0,0,33,1,0,0,24,82,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,64,83,2,0,0,0,0,0,2,5,5,7,6,7,7,8,8,8,8,9,9,9,9,9,9,5,6,6,7,7,8,8,8,8,9,9,9,9,9,9,10,10,5,6,6,7,7,8,8,8,8,9,8,9,9,9,9,10,9,7,7,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,7,7,7,8,8,8,8,9,9,9,9,10,9,10,10,10,10,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,7,8,8,9,8,9,9,9,9,10,9,10,10,10,10,10,10,8,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,8,9,8,9,9,9,9,10,9,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,11,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,11,11,11,10,11,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,6,8,7,9,8,10,9,11,11,4,7,7,8,7,9,9,10,10,11,11,11,11,12,12,4,7,7,7,7,9,9,10,10,11,11,12,12,12,11,6,8,8,9,9,10,10,11,11,12,12,13,12,13,13,6,8,8,9,9,10,11,11,11,12,12,13,14,13,13,8,9,9,11,11,12,12,12,13,14,13,14,14,14,15,8,9,9,11,11,11,12,13,14,13,14,15,17,14,15,9,10,10,12,12,13,13,13,14,15,15,15,16,16,16,9,11,11,12,12,13,13,14,14,14,15,16,16,16,16,10,12,12,13,13,14,14,15,15,15,16,17,17,17,17,10,12,11,13,13,15,14,15,14,16,17,16,16,16,16,11,13,12,14,14,14,14,15,16,17,16,17,17,17,17,11,13,12,14,14,14,15,17,16,17,17,17,17,17,17,12,13,13,15,16,15,16,17,17,16,16,17,17,17,17,12,13,13,15,15,15,16,17,17,17,16,17,16,17,17,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,3,10,10,10,10,10,10,4,10,10,10,10,10,10,10,10,4,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,6,5,4,5,5,5,6,5,6,5,6,6,5,5,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,10,11,13,14,4,6,5,8,8,9,9,10,10,11,11,14,14,4,6,6,8,8,9,9,10,10,11,11,14,14,6,8,8,9,9,10,10,11,11,12,12,15,15,6,8,8,9,9,10,11,11,11,12,12,15,15,8,9,9,11,10,11,11,12,12,13,13,15,16,8,9,9,10,11,11,11,12,12,13,13,16,16,10,10,11,11,11,12,12,13,13,13,14,17,16,9,10,11,12,11,12,12,13,13,13,13,16,18,11,12,11,12,12,13,13,13,14,15,14,17,17,11,11,12,12,12,13,13,13,14,14,15,18,17,14,15,15,15,15,16,16,17,17,19,18,0,20,14,15,14,15,15,16,16,16,17,18,16,20,18,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,7,7,9,9,4,5,5,7,7,8,8,10,10,4,5,5,7,7,8,8,10,10,6,7,7,8,8,9,9,11,10,6,7,7,8,8,9,9,10,10,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,10,10,11,10,11,11,12,12,9,10,10,10,10,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,5,7,6,9,9,5,6,7,9,9,9,9,9,11,11,9,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,7,8,10,10,9,10,10,11,12,9,10,10,11,12,5,7,7,9,9,7,8,7,10,10,7,8,8,10,10,9,10,9,12,11,9,10,10,12,11,9,10,9,12,12,9,10,10,13,12,9,10,10,12,13,12,12,12,14,14,11,12,12,13,14,9,9,10,12,12,9,10,10,12,12,9,10,10,12,13,11,12,11,14,13,12,12,12,14,13,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,9,10,10,12,12,7,8,8,11,10,8,8,9,11,11,8,9,9,11,11,11,11,11,12,13,10,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,13,11,10,11,11,13,13,9,11,10,13,12,10,11,11,13,13,10,11,11,13,13,12,12,13,12,15,12,13,13,15,15,9,10,10,12,13,10,11,10,13,12,10,11,11,13,14,12,13,11,15,13,12,13,13,15,15,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,10,10,11,12,12,6,8,8,10,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,11,13,13,11,11,11,13,12,9,10,10,13,12,10,11,11,14,13,10,10,11,12,13,12,13,13,15,15,12,11,13,13,14,9,10,11,12,13,10,11,11,13,13,10,11,11,13,13,12,13,13,15,15,12,13,12,15,12,8,9,9,12,12,9,11,10,13,13,9,10,10,13,13,12,13,13,15,14,12,12,12,14,13,9,10,10,13,12,10,11,11,13,13,10,11,11,14,12,13,13,14,14,16,12,13,13,15,15,9,10,10,13,13,10,11,10,14,13,10,11,11,13,14,12,14,13,15,14,13,13,13,15,15,11,13,12,15,14,11,12,13,14,15,12,13,13,16,14,14,12,15,12,16,14,15,15,17,15,11,12,12,14,14,11,13,11,15,14,12,13,13,15,15,13,15,12,17,13,14,15,15,16,16,8,9,9,12,12,9,10,10,12,13,9,10,10,13,13,12,12,12,14,14,12,13,13,15,15,9,10,10,13,12,10,11,11,14,13,10,10,11,13,14,12,13,13,15,15,12,12,13,14,16,9,10,10,13,13,10,11,11,13,14,10,11,11,14,13,12,13,13,14,15,13,14,13,16,14,11,12,12,14,14,12,13,13,15,14,11,12,13,14,15,14,15,15,16,16,13,13,15,13,16,11,12,12,14,15,12,13,13,14,15,11,13,12,15,14,14,15,15,16,16,14,15,12,16,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,7,7,5,7,7,9,9,5,7,7,9,9,8,9,9,12,12,8,9,9,11,12,5,7,7,10,10,7,9,9,11,11,7,9,9,10,11,10,11,11,13,13,9,10,11,13,13,5,7,7,10,10,7,9,9,11,10,7,9,9,11,11,9,11,10,13,13,10,11,11,14,13,8,10,10,14,13,10,11,11,15,14,9,11,11,14,14,13,14,13,16,16,12,13,13,15,15,8,10,10,13,14,9,11,11,14,14,10,11,11,14,15,12,13,13,15,15,13,14,14,15,16,5,7,7,10,10,7,9,9,11,11,7,9,9,11,12,10,11,11,14,14,10,11,11,14,14,7,9,9,12,12,9,11,11,13,13,9,11,11,13,13,12,12,13,15,15,11,12,13,15,16,7,9,9,11,11,8,11,10,13,12,9,11,11,13,13,11,13,12,15,13,11,13,13,15,16,9,12,11,15,14,11,12,13,16,15,11,13,13,15,16,14,14,15,17,16,13,15,16,0,17,9,11,11,15,15,10,13,12,15,15,11,13,13,15,16,13,15,13,16,15,14,16,15,0,19,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,12,11,14,14,10,11,12,14,14,7,9,9,12,12,9,11,11,14,13,9,10,11,12,13,11,13,13,16,16,11,12,13,13,16,7,9,9,12,12,9,11,11,13,13,9,11,11,13,13,11,13,13,15,15,12,13,12,15,14,9,11,11,15,14,11,13,12,16,16,10,12,12,15,15,13,15,15,17,19,13,14,15,16,17,10,12,12,15,15,11,13,13,16,16,11,13,13,15,16,13,15,15,0,0,14,15,15,16,16,8,10,10,14,14,10,12,12,15,15,10,12,11,15,16,14,15,15,19,20,13,14,14,18,16,9,11,11,15,15,11,13,13,17,16,11,13,13,16,16,15,17,17,20,20,14,15,16,17,20,9,11,11,15,15,10,13,12,16,15,11,13,13,15,17,14,16,15,18,0,14,16,15,18,20,12,14,14,0,0,14,14,16,0,0,13,16,15,0,0,17,17,18,0,0,16,17,19,19,0,12,14,14,18,0,12,16,14,0,17,13,15,15,18,0,16,18,17,0,17,16,18,17,0,0,7,10,10,14,14,10,12,11,15,15,10,12,12,16,15,13,15,15,18,0,14,15,15,17,0,9,11,11,15,15,11,13,13,16,16,11,12,13,16,16,14,15,16,17,17,14,16,16,16,18,9,11,12,16,16,11,13,13,17,17,11,14,13,20,17,15,16,16,19,0,15,16,17,0,19,11,13,14,17,16,14,15,15,20,18,13,14,15,17,19,16,18,18,0,20,16,16,19,17,0,12,15,14,17,0,14,15,15,18,19,13,16,15,19,20,15,18,18,0,20,17,0,16,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,4,5,6,6,5,6,6,5,6,6,7,8,8,6,8,8,5,6,6,6,8,8,7,8,8,5,7,6,7,8,8,6,8,8,7,8,8,8,9,10,8,10,10,6,8,8,8,10,8,8,10,10,5,6,6,6,8,8,7,8,8,6,8,8,8,10,10,8,8,10,7,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,10,11,8,10,11,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,11,11,11,13,14,11,14,14,8,11,11,10,14,12,11,14,14,4,8,8,8,11,11,8,11,11,7,11,11,11,14,14,10,12,14,8,11,11,11,14,14,11,14,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,14,14,14,15,13,15,12,16,10,8,7,9,9,8,12,16,10,5,4,6,5,6,9,16,14,8,6,8,7,8,10,16,14,7,4,6,3,5,8,16,15,9,5,7,4,4,7,16,13,10,6,7,4,3,4,13,13,12,7,9,5,5,6,12,2,0,0,0,64,0,0,0,192,105,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,120,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,160,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,200,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,240,94,2,0,0,0,0,0,24,95,2,0,64,95,2,0,0,0,0,0,0,0,0,0,104,95,2,0,144,95,2,0,184,95,2],"i8",L3,x.GLOBAL_BASE+144820),d3([2,0,0,0,64,0,0,0,16,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,9,14,12,15,13,10,13,7,4,5,6,8,7,8,12,13,4,3,5,5,6,9,15,12,6,5,6,6,6,7,14,14,7,4,6,4,6,8,15,12,6,6,5,5,5,6,14,9,7,8,6,7,5,4,10,10,13,14,14,15,10,6,8,4,0,0,0,81,0,0,0,88,105,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,176,105,2,0,0,0,0,0,4,0,0,0,81,0,0,0,240,104,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,72,105,2,0,0,0,0,0,4,0,0,0,113,2,0,0,96,102,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,104,2,0,0,0,0,0,4,0,0,0,113,2,0,0,208,99,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,102,2,0,0,0,0,0,2,0,0,0,81,0,0,0,80,99,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,168,99,2,0,0,0,0,0,2,0,0,0,169,0,0,0,104,98,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,24,99,2,0,0,0,0,0,2,0,0,0,25,0,0,0,48,98,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,80,98,2,0,0,0,0,0,2,0,0,0,81,0,0,0,176,97,2,0,1,0,0,0,0,32,53,225,0,32,245,96,4,0,0,0,0,0,0,0,8,98,2,0,0,0,0,0,2,0,0,0,169,0,0,0,200,96,2,0,1,0,0,0,0,128,211,224,0,0,122,96,4,0,0,0,0,0,0,0,120,97,2,0,0,0,0,0,2,0,0,0,169,0,0,0,224,95,2,0,1,0,0,0,0,0,88,224,0,0,16,96,4,0,0,0,0,0,0,0,144,96,2,0,0,0,0,0,2,5,5,6,6,7,7,8,7,8,8,8,8,5,6,6,7,7,8,8,8,8,8,8,8,8,5,6,6,7,7,8,7,8,8,8,8,8,8,6,7,7,7,8,8,8,8,8,9,9,9,9,6,7,7,8,7,8,8,9,9,9,9,9,9,7,8,8,8,8,8,8,9,9,9,9,9,9,7,8,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,9,9,9,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,9,9,9,9,8,8,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,6,7,6,8,7,9,7,9,8,4,7,6,8,8,9,8,10,9,10,10,11,11,4,7,7,8,8,8,8,9,10,11,11,11,11,6,8,8,10,10,10,10,11,11,12,12,12,12,7,8,8,10,10,10,10,11,11,12,12,13,13,7,9,9,11,10,12,12,13,13,14,13,14,14,7,9,9,10,11,11,12,13,13,13,13,16,14,9,10,10,12,12,13,13,14,14,15,16,15,16,9,10,10,12,12,12,13,14,14,14,15,16,15,10,12,12,13,13,15,13,16,16,15,17,17,17,10,11,11,12,14,14,14,15,15,17,17,15,17,11,12,12,14,14,14,15,15,15,17,16,17,17,10,12,12,13,14,14,14,17,15,17,17,17,17,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,12,12,12,12,12,12,4,12,12,12,12,12,12,12,12,5,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,6,5,4,5,5,5,6,5,6,5,6,6,5,5,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,10,11,11,14,13,4,6,5,8,8,9,9,11,10,12,11,15,14,4,5,6,8,8,9,9,11,11,11,11,14,14,6,8,8,10,9,11,11,11,11,12,12,15,15,6,8,8,9,9,11,11,11,12,12,12,15,15,8,10,10,11,11,11,11,12,12,13,13,15,16,8,10,10,11,11,11,11,12,12,13,13,16,16,10,11,11,12,12,12,12,13,13,13,13,17,16,10,11,11,12,12,12,12,13,13,13,14,16,17,11,12,12,13,13,13,13,14,14,15,14,18,17,11,12,12,13,13,13,13,14,14,14,15,19,18,14,15,15,15,15,16,16,18,19,18,18,0,0,14,15,15,16,15,17,17,16,18,17,18,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,8,8,9,9,4,6,5,8,8,8,8,10,10,4,5,6,8,8,8,8,10,10,7,8,8,9,9,9,9,11,11,7,8,8,9,9,9,9,11,11,8,8,8,9,9,10,11,12,12,8,8,8,9,9,10,10,12,12,10,10,10,11,11,12,12,13,13,10,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,5,7,6,9,9,5,6,7,9,9,9,9,9,11,11,9,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,7,8,10,10,10,10,10,11,12,9,10,10,11,12,5,7,7,9,9,6,8,7,10,10,7,8,8,10,10,9,10,10,12,11,9,10,10,12,11,9,10,10,12,12,10,10,10,13,12,9,10,10,12,13,12,12,12,14,14,11,12,12,13,14,9,10,10,12,12,9,10,10,12,13,10,10,10,12,13,11,12,12,14,13,12,12,12,14,13,5,7,7,10,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,10,10,10,12,12,7,8,8,11,10,8,8,9,11,11,8,9,9,11,11,10,11,11,12,13,10,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,13,11,10,11,11,13,13,9,10,10,13,13,10,11,11,13,13,10,11,11,14,13,12,11,13,12,15,12,13,13,15,15,9,10,10,12,13,10,11,10,13,13,10,11,11,13,13,12,13,11,15,13,12,13,13,15,15,5,7,7,9,10,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,10,10,11,12,12,6,8,8,10,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,7,8,8,10,11,8,9,9,11,11,8,9,8,11,11,10,11,11,13,13,10,11,11,13,12,9,10,10,13,12,10,11,11,14,13,10,10,11,13,13,12,13,13,15,15,12,11,13,12,14,9,10,10,12,13,10,11,11,13,14,10,11,11,13,13,12,13,13,15,15,12,13,12,15,12,8,9,9,12,12,9,11,10,13,13,9,10,10,13,13,12,13,13,15,15,12,12,12,14,14,9,10,10,13,13,10,11,11,13,14,10,11,11,14,12,13,13,14,14,16,12,13,13,15,14,9,10,10,13,13,10,11,10,14,13,10,11,11,13,14,12,14,13,16,14,13,13,13,14,15,11,13,12,15,14,11,12,13,14,15,12,13,13,16,15,14,12,15,12,16,14,15,15,17,16,11,12,12,14,15,11,13,11,15,14,12,13,13,15,16,13,15,12,17,13,14,15,15,16,16,8,9,9,12,12,9,10,10,13,13,9,10,10,13,13,12,13,12,14,14,12,13,13,15,15,9,10,10,13,13,10,11,11,14,13,10,10,11,13,14,12,13,13,15,14,12,12,14,14,16,9,10,10,13,13,10,11,11,13,14,10,11,11,14,13,13,13,13,15,15,13,14,13,16,14,11,12,12,14,14,12,13,13,16,15,11,12,13,14,15,14,15,15,16,16,14,13,15,13,17,11,12,12,14,15,12,13,13,15,16,11,13,12,15,15,14,15,14,16,16,14,15,12,17,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,7,8,5,7,7,9,9,5,7,7,9,9,8,9,9,12,11,8,9,9,11,12,5,7,7,10,10,7,9,9,11,11,7,9,9,10,11,10,11,11,13,13,9,10,11,12,13,5,7,7,10,10,7,9,9,11,10,7,9,9,11,11,9,11,10,13,13,10,11,11,13,13,8,10,10,14,13,10,11,11,15,14,9,11,11,15,14,13,14,13,16,14,12,13,13,15,16,8,10,10,13,14,9,11,11,14,15,10,11,11,14,15,12,13,13,15,15,12,13,14,15,16,5,7,7,10,10,7,9,9,11,11,7,9,9,11,12,10,11,11,14,13,10,11,11,14,14,7,9,9,12,12,9,11,11,13,13,9,11,11,13,13,12,13,12,14,14,11,12,13,15,15,7,9,9,12,12,8,11,10,13,12,9,11,11,13,13,11,13,12,15,13,11,13,13,15,16,9,12,11,15,15,11,12,12,16,15,11,12,13,16,16,13,14,15,16,15,13,15,15,17,17,9,11,11,14,15,10,12,12,15,15,11,13,12,15,16,13,15,14,16,16,13,15,15,17,19,5,7,7,10,10,7,9,9,12,11,7,9,9,11,11,10,11,11,14,14,10,11,11,13,14,7,9,9,12,12,9,11,11,13,13,9,10,11,12,13,11,13,12,16,15,11,12,12,14,15,7,9,9,12,12,9,11,11,13,13,9,11,11,13,12,11,13,12,15,16,12,13,13,15,14,9,11,11,15,14,11,13,12,16,15,10,11,12,15,15,13,14,14,18,17,13,14,14,15,17,10,11,11,14,15,11,13,12,15,17,11,13,12,15,16,13,15,14,18,17,14,15,15,16,18,7,10,10,14,14,10,12,12,15,15,10,12,12,15,15,14,15,15,18,17,13,15,15,16,16,9,11,11,16,15,11,13,13,16,18,11,13,13,16,16,15,16,16,0,0,14,15,16,18,17,9,11,11,15,15,10,13,12,17,16,11,12,13,16,17,14,15,16,19,19,14,15,15,0,20,12,14,14,0,0,13,14,16,19,18,13,15,16,20,17,16,18,0,0,0,15,16,17,18,19,11,14,14,0,19,12,15,14,17,17,13,15,15,0,0,16,17,15,20,19,15,17,16,19,0,8,10,10,14,15,10,12,11,15,15,10,11,12,16,15,13,14,14,19,17,14,15,15,0,0,9,11,11,16,15,11,13,13,17,16,10,12,13,16,17,14,15,15,18,18,14,15,16,20,19,9,12,12,0,15,11,13,13,16,17,11,13,13,19,17,14,16,16,18,17,15,16,16,17,19,11,14,14,18,18,13,14,15,0,0,12,14,15,19,18,15,16,19,0,19,15,16,19,19,17,12,14,14,16,19,13,15,15,0,17,13,15,14,18,18,15,16,15,0,18,16,17,17,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,6,6,5,6,6,5,6,6,7,8,8,6,8,8,5,6,6,6,8,7,7,8,8,5,6,6,7,8,8,6,8,8,6,8,8,8,9,10,8,10,10,6,8,8,7,10,8,8,10,10,5,6,6,6,8,8,7,8,8,6,8,8,8,10,10,8,8,10,6,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,11,11,8,10,11,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,11,11,11,13,14,11,13,13,7,11,11,10,13,12,11,14,14,4,8,8,8,11,11,8,11,11,8,11,11,11,14,13,10,12,13,8,11,11,11,13,13,11,13,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,13,15,17,17,15,15,12,17,11,9,7,10,10,9,12,17,10,6,3,6,5,7,10,17,15,10,6,9,8,9,11,17,15,8,4,7,3,5,9,16,16,10,5,8,4,5,8,16,13,11,5,8,3,3,5,14,13,12,7,10,5,5,7,14,2,0,0,0,64,0,0,0,152,118,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,120,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,160,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,200,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,240,107,2,0,0,0,0,0,24,108,2,0,64,108,2,0,0,0,0,0,0,0,0,0,104,108,2,0,144,108,2,0,184,108,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,16,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,13,10,17,11,11,15,7,2,4,5,8,7,9,16,13,4,3,5,6,8,11,20,10,4,5,5,7,6,8,18,15,7,6,7,8,10,14,20,10,6,7,6,9,7,8,17,9,8,10,8,10,5,4,11,12,17,19,14,16,10,7,12,4,0,0,0,81,0,0,0,48,118,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,136,118,2,0,0,0,0,0,4,0,0,0,81,0,0,0,200,117,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,32,118,2,0,0,0,0,0,4,0,0,0,113,2,0,0,56,115,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,176,117,2,0,0,0,0,0,4,0,0,0,113,2,0,0,168,112,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,32,115,2,0,0,0,0,0,2,0,0,0,81,0,0,0,40,112,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,112,2,0,0,0,0,0,2,0,0,0,169,0,0,0,64,111,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,240,111,2,0,0,0,0,0,2,0,0,0,25,0,0,0,8,111,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,40,111,2,0,0,0,0,0,2,0,0,0,49,0,0,0,176,110,2,0,1,0,0,0,0,176,31,225,0,32,245,96,3,0,0,0,0,0,0,0,232,110,2,0,0,0,0,0,2,0,0,0,169,0,0,0,200,109,2,0,1,0,0,0,0,128,211,224,0,0,122,96,4,0,0,0,0,0,0,0,120,110,2,0,0,0,0,0,2,0,0,0,169,0,0,0,224,108,2,0,1,0,0,0,0,0,88,224,0,0,16,96,4,0,0,0,0,0,0,0,144,109,2,0,0,0,0,0,2,5,4,6,6,7,7,8,8,8,8,9,8,5,5,6,7,7,8,8,8,8,9,9,9,9,5,6,5,7,7,8,8,8,8,9,9,9,9,6,7,7,8,8,8,8,9,8,9,9,9,9,6,7,7,8,7,8,8,9,9,9,9,9,9,7,8,8,8,8,9,9,9,9,9,9,9,9,7,8,8,9,8,9,8,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,9,9,10,10,8,8,9,9,9,9,9,9,9,9,10,9,10,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,10,9,9,10,10,9,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,6,6,6,6,7,7,8,8,9,9,5,7,7,8,7,7,7,9,8,10,9,10,11,5,7,7,8,8,7,7,8,9,10,10,11,11,6,8,8,9,9,9,9,11,10,12,12,15,12,6,8,8,9,9,9,9,11,11,12,11,14,12,7,8,8,10,10,12,12,13,13,13,15,13,13,7,8,8,10,10,11,11,13,12,14,15,15,15,9,10,10,11,12,13,13,14,15,14,15,14,15,8,10,10,12,12,14,14,15,14,14,15,15,14,10,12,12,14,14,15,14,15,15,15,14,15,15,10,12,12,13,14,15,14,15,15,14,15,15,15,12,15,13,15,14,15,15,15,15,15,15,15,15,13,13,15,15,15,15,15,15,15,15,15,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,5,5,4,5,5,5,5,5,6,6,6,6,5,6,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,9,11,10,14,13,4,6,5,8,8,9,9,11,10,11,11,14,14,4,5,6,8,8,9,9,10,10,11,11,14,14,6,8,8,9,9,10,10,11,11,12,12,16,15,7,8,8,9,9,10,10,11,11,12,12,15,15,9,10,10,10,10,11,11,12,12,12,12,15,15,9,10,9,10,11,11,11,12,12,12,13,15,15,10,10,11,11,11,12,12,13,12,13,13,16,15,10,11,11,11,11,12,12,13,12,13,13,16,17,11,11,12,12,12,13,13,13,14,14,15,17,17,11,11,12,12,12,13,13,13,14,14,14,16,18,14,15,15,15,15,16,16,16,16,17,18,0,0,14,15,15,15,15,17,16,17,18,17,17,18,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,8,8,8,9,9,4,6,6,8,8,8,8,9,9,7,8,8,9,9,9,9,11,10,7,8,8,9,9,9,9,10,10,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,9,9,10,10,11,11,12,12,9,9,9,10,11,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,9,9,5,6,6,9,9,5,6,6,9,9,9,10,9,12,12,9,9,10,12,12,5,7,7,10,10,7,7,8,10,10,6,7,8,10,10,10,10,10,11,13,10,9,10,12,13,5,7,7,10,10,6,8,7,10,10,7,8,7,10,10,9,10,10,12,12,10,10,10,13,11,9,10,10,13,13,10,11,10,13,13,10,10,10,13,13,12,12,13,14,14,12,12,13,14,14,9,10,10,13,13,10,10,10,13,13,10,10,10,13,13,12,13,12,15,14,12,13,12,15,15,5,7,6,10,10,7,8,8,10,10,7,8,8,10,10,10,11,10,13,13,10,10,10,12,12,7,8,8,11,10,8,8,9,10,11,8,9,9,11,11,11,10,11,11,14,11,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,14,11,10,11,11,13,13,10,11,11,14,13,10,10,11,14,13,10,11,11,14,14,12,11,13,12,16,13,14,14,15,15,10,10,11,13,14,10,11,10,14,13,10,11,11,14,14,12,13,12,15,13,13,13,14,15,16,5,7,7,10,10,7,8,8,10,10,7,8,8,10,10,10,10,10,13,13,10,10,11,12,13,6,8,8,11,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,6,8,8,10,11,8,9,9,11,11,8,9,8,12,10,10,11,11,13,13,10,11,10,14,11,10,10,10,14,13,10,11,11,14,13,10,10,11,13,13,12,14,14,16,16,12,12,13,13,15,10,11,11,13,14,10,11,11,14,15,10,11,10,13,13,13,14,13,16,16,12,13,11,15,12,9,10,10,13,13,10,11,11,14,13,10,10,11,13,14,13,14,13,16,16,13,13,13,15,16,9,10,10,13,13,10,10,11,13,14,10,11,11,15,13,13,13,14,14,18,13,13,14,16,15,9,10,10,13,14,10,11,10,14,13,10,11,11,13,14,13,14,13,16,15,13,13,14,15,16,12,13,12,16,14,11,11,13,15,15,13,14,13,16,15,15,12,16,12,17,14,15,15,17,17,12,13,13,14,16,11,13,11,16,15,12,13,14,15,16,14,15,13,0,14,14,16,16,0,0,9,10,10,13,13,10,11,10,14,14,10,11,11,13,13,12,13,13,14,16,13,14,14,16,16,9,10,10,14,14,11,11,11,14,13,10,10,11,14,14,13,13,13,16,16,13,13,14,14,17,9,10,10,13,14,10,11,11,13,15,10,11,10,14,14,13,13,13,14,17,13,14,13,17,14,12,13,13,16,14,13,14,13,16,15,12,12,13,15,16,15,15,16,18,16,15,13,15,14,0,12,12,13,14,16,13,13,14,15,16,11,12,11,16,14,15,16,16,17,17,14,15,12,17,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,8,8,5,8,7,9,9,5,7,8,9,9,9,10,9,12,12,9,9,10,12,12,6,8,8,11,10,8,10,10,11,11,8,9,10,11,11,10,11,11,14,13,10,11,11,13,13,5,8,8,10,10,8,10,10,11,11,8,10,10,11,11,10,11,11,13,13,10,11,11,13,13,9,11,11,15,14,10,12,12,15,14,10,12,11,15,14,13,14,14,16,16,12,14,13,17,15,9,11,11,14,15,10,11,12,14,16,10,11,12,14,16,12,13,14,16,16,13,13,15,15,18,5,8,8,11,11,8,10,10,12,12,8,10,10,12,13,11,12,12,14,14,11,12,12,15,15,8,10,10,13,13,10,12,12,13,13,10,12,12,14,14,12,13,13,15,15,12,13,13,16,16,7,10,10,12,12,10,12,11,13,13,10,12,12,13,14,12,13,12,15,14,12,13,13,16,16,10,12,12,17,16,12,13,13,16,15,11,13,13,17,17,15,15,15,16,17,14,15,15,19,19,10,12,12,15,16,11,13,12,15,18,11,13,13,16,16,14,15,15,17,17,14,15,15,17,19,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,16,15,11,12,12,14,15,7,10,10,13,13,10,12,12,14,13,10,11,12,13,13,12,13,13,16,16,12,12,13,15,15,8,10,10,13,13,10,12,12,14,14,10,12,12,13,13,12,13,13,16,16,12,13,13,15,15,10,12,12,16,15,11,13,13,17,16,11,12,13,16,15,13,15,15,19,17,14,15,14,17,16,10,12,12,16,16,11,13,13,16,17,12,13,13,15,17,14,15,15,17,19,14,15,15,17,17,8,11,11,16,16,10,13,12,17,17,10,12,13,16,16,15,17,16,20,19,14,15,17,18,19,9,12,12,16,17,11,13,14,17,18,11,13,13,19,18,16,17,18,19,19,15,16,16,19,19,9,12,12,16,17,11,14,13,18,17,11,13,13,17,17,16,17,16,20,19,14,16,16,18,18,12,15,15,19,17,14,15,16,0,20,13,15,16,20,17,18,16,20,0,0,15,16,19,20,0,12,15,14,18,19,13,16,15,20,19,13,16,15,20,18,17,18,17,0,20,16,17,16,0,0,8,11,11,16,15,10,12,12,17,17,10,13,13,17,16,14,16,15,18,20,15,16,16,19,19,9,12,12,16,16,11,13,13,17,16,11,13,14,17,18,15,15,16,20,20,16,16,17,19,19,9,13,12,16,17,11,14,13,17,17,11,14,14,18,17,14,16,15,18,19,16,17,18,18,19,12,14,15,19,18,13,15,16,18,0,13,14,15,0,0,16,16,17,20,0,17,17,20,20,0,12,15,15,19,20,13,15,15,0,0,14,16,15,0,0,15,18,16,0,0,17,18,16,0,19,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,7,8,8,6,8,8,5,7,7,6,8,8,7,8,8,4,7,7,7,8,8,7,8,8,7,8,8,8,9,10,8,10,10,6,8,8,8,10,8,8,10,10,5,7,7,7,8,8,7,8,8,6,8,8,8,10,10,8,8,10,6,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,11,11,8,10,10,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,12,11,11,13,13,11,13,14,7,11,11,10,13,12,11,13,14,4,8,8,8,11,11,8,11,12,8,11,11,11,13,13,10,12,13,8,11,11,11,14,13,11,14,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,12,13,14,13,17,12,15,17,5,5,6,10,10,11,15,16,4,3,3,7,5,7,10,16,7,7,7,10,9,11,12,16,6,5,5,9,5,6,10,16,8,7,7,9,6,7,9,16,11,7,3,6,4,5,8,16,12,9,4,8,5,7,9,16,2,0,0,0,64,0,0,0,168,133,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,120,2,0,0,0,0,0,0,0,0,0,0,0,0,0,80,120,2,0,0,0,0,0,0,0,0,0,0,0,0,0,120,120,2,0,0,0,0,0,0,0,0,0,0,0,0,0,160,120,2,0,0,0,0,0,0,0,0,0,0,0,0,0,200,120,2,0,0,0,0,0,240,120,2,0,24,121,2,0,0,0,0,0,0,0,0,0,64,121,2,0,104,121,2,0,144,121,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,232,119,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,13,10,17,11,11,15,7,2,4,5,8,7,9,16,13,4,3,5,6,8,11,20,10,4,5,5,7,6,8,18,15,7,6,7,8,10,14,20,10,6,7,6,9,7,8,17,9,8,10,8,10,5,4,11,12,17,19,14,16,10,7,12,4,0,0,0,81,0,0,0,64,133,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,152,133,2,0,0,0,0,0,4,0,0,0,81,0,0,0,216,132,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,48,133,2,0,0,0,0,0,4,0,0,0,113,2,0,0,72,130,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,132,2,0,0,0,0,0,4,0,0,0,113,2,0,0,184,127,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,48,130,2,0,0,0,0,0,2,0,0,0,81,0,0,0,56,127,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,144,127,2,0,0,0,0,0,2,0,0,0,169,0,0,0,80,126,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,0,127,2,0,0,0,0,0,2,0,0,0,25,0,0,0,24,126,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,126,2,0,0,0,0,0,4,0,0,0,113,2,0,0,136,123,2,0,1,0,0,0,0,32,21,225,0,32,245,96,3,0,0,0,0,0,0,0,0,126,2,0,0,0,0,0,2,0,0,0,169,0,0,0,160,122,2,0,1,0,0,0,0,128,211,224,0,0,122,96,4,0,0,0,0,0,0,0,80,123,2,0,0,0,0,0,2,0,0,0,169,0,0,0,184,121,2,0,1,0,0,0,0,0,88,224,0,0,16,96,4,0,0,0,0,0,0,0,104,122,2,0,0,0,0,0,2,5,4,6,6,7,7,8,8,8,8,9,8,5,5,6,7,7,8,8,8,8,9,9,9,9,5,6,5,7,7,8,8,8,8,9,9,9,9,6,7,7,8,8,8,8,9,8,9,9,9,9,6,7,7,8,7,8,8,9,9,9,9,9,9,7,8,8,8,8,9,9,9,9,9,9,9,9,7,8,8,9,8,9,8,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,9,9,10,10,8,8,9,9,9,9,9,9,9,9,10,9,10,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,10,9,9,10,10,9,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,6,6,6,6,7,7,8,8,9,9,5,7,7,8,7,7,7,9,8,10,9,10,11,5,7,7,8,8,7,7,8,9,10,10,11,11,6,8,8,9,9,9,9,11,10,12,12,15,12,6,8,8,9,9,9,9,11,11,12,11,14,12,7,8,8,10,10,12,12,13,13,13,15,13,13,7,8,8,10,10,11,11,13,12,14,15,15,15,9,10,10,11,12,13,13,14,15,14,15,14,15,8,10,10,12,12,14,14,15,14,14,15,15,14,10,12,12,14,14,15,14,15,15,15,14,15,15,10,12,12,13,14,15,14,15,15,14,15,15,15,12,15,13,15,14,15,15,15,15,15,15,15,15,13,13,15,15,15,15,15,15,15,15,15,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,11,11,9,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,9,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,5,5,4,5,5,5,5,5,6,6,6,6,5,6,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,9,11,10,14,13,4,6,5,8,8,9,9,11,10,11,11,14,14,4,5,6,8,8,9,9,10,10,11,11,14,14,6,8,8,9,9,10,10,11,11,12,12,16,15,7,8,8,9,9,10,10,11,11,12,12,15,15,9,10,10,10,10,11,11,12,12,12,12,15,15,9,10,9,10,11,11,11,12,12,12,13,15,15,10,10,11,11,11,12,12,13,12,13,13,16,15,10,11,11,11,11,12,12,13,12,13,13,16,17,11,11,12,12,12,13,13,13,14,14,15,17,17,11,11,12,12,12,13,13,13,14,14,14,16,18,14,15,15,15,15,16,16,16,16,17,18,0,0,14,15,15,15,15,17,16,17,18,17,17,18,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,8,8,8,9,9,4,6,6,8,8,8,8,9,9,7,8,8,9,9,9,9,11,10,7,8,8,9,9,9,9,10,10,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,9,9,10,10,11,11,12,12,9,9,9,10,11,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,9,9,5,6,6,9,9,5,6,6,9,9,9,10,9,12,12,9,9,10,12,12,5,7,7,10,10,7,7,8,10,10,6,7,8,10,10,10,10,10,11,13,10,9,10,12,13,5,7,7,10,10,6,8,7,10,10,7,8,7,10,10,9,10,10,12,12,10,10,10,13,11,9,10,10,13,13,10,11,10,13,13,10,10,10,13,13,12,12,13,14,14,12,12,13,14,14,9,10,10,13,13,10,10,10,13,13,10,10,10,13,13,12,13,12,15,14,12,13,12,15,15,5,7,6,10,10,7,8,8,10,10,7,8,8,10,10,10,11,10,13,13,10,10,10,12,12,7,8,8,11,10,8,8,9,10,11,8,9,9,11,11,11,10,11,11,14,11,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,14,11,10,11,11,13,13,10,11,11,14,13,10,10,11,14,13,10,11,11,14,14,12,11,13,12,16,13,14,14,15,15,10,10,11,13,14,10,11,10,14,13,10,11,11,14,14,12,13,12,15,13,13,13,14,15,16,5,7,7,10,10,7,8,8,10,10,7,8,8,10,10,10,10,10,13,13,10,10,11,12,13,6,8,8,11,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,6,8,8,10,11,8,9,9,11,11,8,9,8,12,10,10,11,11,13,13,10,11,10,14,11,10,10,10,14,13,10,11,11,14,13,10,10,11,13,13,12,14,14,16,16,12,12,13,13,15,10,11,11,13,14,10,11,11,14,15,10,11,10,13,13,13,14,13,16,16,12,13,11,15,12,9,10,10,13,13,10,11,11,14,13,10,10,11,13,14,13,14,13,16,16,13,13,13,15,16,9,10,10,13,13,10,10,11,13,14,10,11,11,15,13,13,13,14,14,18,13,13,14,16,15,9,10,10,13,14,10,11,10,14,13,10,11,11,13,14,13,14,13,16,15,13,13,14,15,16,12,13,12,16,14,11,11,13,15,15,13,14,13,16,15,15,12,16,12,17,14,15,15,17,17,12,13,13,14,16,11,13,11,16,15,12,13,14,15,16,14,15,13,0,14,14,16,16,0,0,9,10,10,13,13,10,11,10,14,14,10,11,11,13,13,12,13,13,14,16,13,14,14,16,16,9,10,10,14,14,11,11,11,14,13,10,10,11,14,14,13,13,13,16,16,13,13,14,14,17,9,10,10,13,14,10,11,11,13,15,10,11,10,14,14,13,13,13,14,17,13,14,13,17,14,12,13,13,16,14,13,14,13,16,15,12,12,13,15,16,15,15,16,18,16,15,13,15,14,0,12,12,13,14,16,13,13,14,15,16,11,12,11,16,14,15,16,16,17,17,14,15,12,17,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,8,8,5,8,7,9,9,5,7,8,9,9,9,10,9,12,12,9,9,10,12,12,6,8,8,11,10,8,10,10,11,11,8,9,10,11,11,10,11,11,14,13,10,11,11,13,13,5,8,8,10,10,8,10,10,11,11,8,10,10,11,11,10,11,11,13,13,10,11,11,13,13,9,11,11,15,14,10,12,12,15,14,10,12,11,15,14,13,14,14,16,16,12,14,13,17,15,9,11,11,14,15,10,11,12,14,16,10,11,12,14,16,12,13,14,16,16,13,13,15,15,18,5,8,8,11,11,8,10,10,12,12,8,10,10,12,13,11,12,12,14,14,11,12,12,15,15,8,10,10,13,13,10,12,12,13,13,10,12,12,14,14,12,13,13,15,15,12,13,13,16,16,7,10,10,12,12,10,12,11,13,13,10,12,12,13,14,12,13,12,15,14,12,13,13,16,16,10,12,12,17,16,12,13,13,16,15,11,13,13,17,17,15,15,15,16,17,14,15,15,19,19,10,12,12,15,16,11,13,12,15,18,11,13,13,16,16,14,15,15,17,17,14,15,15,17,19,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,16,15,11,12,12,14,15,7,10,10,13,13,10,12,12,14,13,10,11,12,13,13,12,13,13,16,16,12,12,13,15,15,8,10,10,13,13,10,12,12,14,14,10,12,12,13,13,12,13,13,16,16,12,13,13,15,15,10,12,12,16,15,11,13,13,17,16,11,12,13,16,15,13,15,15,19,17,14,15,14,17,16,10,12,12,16,16,11,13,13,16,17,12,13,13,15,17,14,15,15,17,19,14,15,15,17,17,8,11,11,16,16,10,13,12,17,17,10,12,13,16,16,15,17,16,20,19,14,15,17,18,19,9,12,12,16,17,11,13,14,17,18,11,13,13,19,18,16,17,18,19,19,15,16,16,19,19,9,12,12,16,17,11,14,13,18,17,11,13,13,17,17,16,17,16,20,19,14,16,16,18,18,12,15,15,19,17,14,15,16,0,20,13,15,16,20,17,18,16,20,0,0,15,16,19,20,0,12,15,14,18,19,13,16,15,20,19,13,16,15,20,18,17,18,17,0,20,16,17,16,0,0,8,11,11,16,15,10,12,12,17,17,10,13,13,17,16,14,16,15,18,20,15,16,16,19,19,9,12,12,16,16,11,13,13,17,16,11,13,14,17,18,15,15,16,20,20,16,16,17,19,19,9,13,12,16,17,11,14,13,17,17,11,14,14,18,17,14,16,15,18,19,16,17,18,18,19,12,14,15,19,18,13,15,16,18,0,13,14,15,0,0,16,16,17,20,0,17,17,20,20,0,12,15,15,19,20,13,15,15,0,0,14,16,15,0,0,15,18,16,0,0,17,18,16,0,19,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,7,8,8,6,8,8,5,7,7,6,8,8,7,8,8,4,7,7,7,8,8,7,8,8,7,8,8,8,9,10,8,10,10,6,8,8,8,10,8,8,10,10,5,7,7,7,8,8,7,8,8,6,8,8,8,10,10,8,8,10,6,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,11,11,8,10,10,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,12,11,11,13,13,11,13,14,7,11,11,10,13,12,11,13,14,4,8,8,8,11,11,8,11,12,8,11,11,11,13,13,10,12,13,8,11,11,11,14,13,11,14,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,12,13,14,13,17,12,15,17,5,5,6,10,10,11,15,16,4,3,3,7,5,7,10,16,7,7,7,10,9,11,12,16,6,5,5,9,5,6,10,16,8,7,7,9,6,7,9,16,11,7,3,6,4,5,8,16,12,9,4,8,5,7,9,16],"i8",L3,x.GLOBAL_BASE+155104),d3([2,0,0,0,64,0,0,0,184,148,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,135,2,0,0,0,0,0,0,0,0,0,0,0,0,0,96,135,2,0,0,0,0,0,0,0,0,0,0,0,0,0,136,135,2,0,0,0,0,0,0,0,0,0,0,0,0,0,176,135,2,0,0,0,0,0,0,0,0,0,0,0,0,0,216,135,2,0,0,0,0,0,0,136,2,0,40,136,2,0,0,0,0,0,0,0,0,0,80,136,2,0,120,136,2,0,160,136,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,248,134,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,12,9,14,9,9,19,6,1,5,5,8,7,9,19,12,4,4,7,7,9,11,18,9,5,6,6,8,7,8,17,14,8,7,8,8,10,12,18,9,6,8,6,8,6,8,18,9,8,11,8,11,7,5,15,16,18,18,18,17,15,11,18,4,0,0,0,81,0,0,0,80,148,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,148,2,0,0,0,0,0,4,0,0,0,81,0,0,0,232,147,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,64,148,2,0,0,0,0,0,4,0,0,0,113,2,0,0,88,145,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,147,2,0,0,0,0,0,4,0,0,0,113,2,0,0,200,142,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,145,2,0,0,0,0,0,2,0,0,0,81,0,0,0,72,142,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,160,142,2,0,0,0,0,0,2,0,0,0,169,0,0,0,96,141,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,16,142,2,0,0,0,0,0,2,0,0,0,25,0,0,0,40,141,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,141,2,0,0,0,0,0,4,0,0,0,113,2,0,0,152,138,2,0,1,0,0,0,0,32,21,225,0,32,245,96,3,0,0,0,0,0,0,0,16,141,2,0,0,0,0,0,2,0,0,0,169,0,0,0,176,137,2,0,1,0,0,0,0,128,211,224,0,0,122,96,4,0,0,0,0,0,0,0,96,138,2,0,0,0,0,0,2,0,0,0,169,0,0,0,200,136,2,0,1,0,0,0,0,0,88,224,0,0,16,96,4,0,0,0,0,0,0,0,120,137,2,0,0,0,0,0,3,4,4,6,6,7,7,8,8,9,9,9,8,4,5,5,6,6,8,8,9,8,9,9,9,9,4,5,5,7,6,8,8,8,8,9,8,9,8,6,7,7,7,8,8,8,9,9,9,9,9,9,6,7,7,7,7,8,8,9,9,9,9,9,9,7,8,8,8,8,9,8,9,9,10,9,9,10,7,8,8,8,8,9,9,9,9,9,9,10,10,8,9,9,9,9,9,9,9,9,10,10,9,10,8,9,9,9,9,9,9,9,9,9,9,10,10,9,9,9,10,9,9,10,9,9,10,10,10,10,9,9,9,9,9,9,9,10,9,10,10,10,10,9,9,9,10,9,9,10,10,9,10,10,10,10,9,9,9,10,9,9,9,10,10,10,10,10,10,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,6,6,6,6,9,8,9,8,8,8,5,7,7,7,7,8,8,8,10,8,10,8,9,5,7,7,8,7,7,8,10,10,11,10,12,11,7,8,8,9,9,9,10,11,11,11,11,11,11,7,8,8,8,9,9,9,10,10,10,11,11,12,7,8,8,9,9,10,11,11,12,11,12,11,11,7,8,8,9,9,10,10,11,11,11,12,12,11,8,10,10,10,10,11,11,14,11,12,12,12,13,9,10,10,10,10,12,11,14,11,14,11,12,13,10,11,11,11,11,13,11,14,14,13,13,13,14,11,11,11,12,11,12,12,12,13,14,14,13,14,12,11,12,12,12,12,13,13,13,14,13,14,14,11,12,12,14,12,13,13,12,13,13,14,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,5,3,11,11,11,11,11,11,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,5,5,4,5,5,6,5,5,6,5,6,6,5,6,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,10,11,11,15,15,4,5,5,8,8,9,9,11,11,12,12,16,16,4,5,6,8,8,9,9,11,11,12,12,14,14,7,8,8,9,9,10,10,11,12,13,13,16,17,7,8,8,9,9,10,10,12,12,12,13,15,15,9,10,10,10,10,11,11,12,12,13,13,15,16,9,9,9,10,10,11,11,13,12,13,13,17,17,10,11,11,11,12,12,12,13,13,14,15,0,18,10,11,11,12,12,12,13,14,13,14,14,17,16,11,12,12,13,13,14,14,14,14,15,16,17,16,11,12,12,13,13,14,14,14,14,15,15,17,17,14,15,15,16,16,16,17,17,16,0,17,0,18,14,15,15,16,16,0,15,18,18,0,16,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,8,8,9,9,4,6,5,8,7,8,8,10,9,4,6,6,8,8,8,8,10,10,7,8,7,9,9,9,9,11,10,7,8,8,9,9,9,9,10,11,8,8,8,9,9,10,10,11,11,8,8,8,9,9,10,10,11,11,9,10,10,11,10,11,11,12,12,9,10,10,10,11,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,9,9,5,6,6,10,9,5,6,6,9,10,10,10,10,12,11,9,10,10,12,12,5,7,7,10,10,7,7,8,10,11,7,7,8,10,11,10,10,11,11,13,10,10,11,11,13,6,7,7,10,10,7,8,7,11,10,7,8,7,10,10,10,11,9,13,11,10,11,10,13,11,10,10,10,14,13,10,11,11,14,13,10,10,11,13,14,12,12,13,15,15,12,12,13,13,14,10,10,10,12,13,10,11,10,13,13,10,11,11,13,13,12,13,12,14,13,12,13,13,14,13,5,7,7,10,10,7,8,8,11,10,7,8,8,10,10,11,11,11,13,13,10,11,11,12,12,7,8,8,11,11,7,8,9,10,12,8,9,9,11,11,11,10,12,11,14,11,11,12,13,13,6,8,8,10,11,7,9,7,12,10,8,9,10,11,12,10,12,10,14,11,11,12,11,13,13,10,11,11,14,14,10,10,11,13,14,11,12,12,15,13,12,11,14,12,16,12,13,14,15,16,10,10,11,13,14,10,11,10,14,12,11,12,12,13,14,12,13,11,15,12,14,14,14,15,15,5,7,7,10,10,7,8,8,10,10,7,8,8,10,11,10,11,10,12,12,10,11,11,12,13,6,8,8,11,11,8,9,9,12,11,7,7,9,10,12,11,11,11,12,13,11,10,12,11,15,7,8,8,11,11,8,9,9,11,11,7,9,8,12,10,11,12,11,13,12,11,12,10,15,11,10,11,10,14,12,11,12,11,14,13,10,10,11,13,14,13,13,13,17,15,12,11,14,12,15,10,10,11,13,14,11,12,12,14,14,10,11,10,14,13,13,14,13,16,17,12,14,11,16,12,9,10,10,14,13,10,11,10,14,14,10,11,11,13,13,13,14,14,16,15,12,13,13,14,14,9,11,10,14,13,10,10,12,13,14,11,12,11,14,13,13,14,14,14,15,13,14,14,15,15,9,10,11,13,14,10,11,10,15,13,11,11,12,12,15,13,14,12,15,14,13,13,14,14,15,12,13,12,16,14,11,11,12,15,14,13,15,13,16,14,13,12,15,12,17,15,16,15,16,16,12,12,13,13,15,11,13,11,15,14,13,13,14,15,17,13,14,12,0,13,14,15,14,15,0,9,10,10,13,13,10,11,11,13,13,10,11,11,13,13,12,13,12,14,14,13,14,14,15,17,9,10,10,13,13,11,12,11,15,12,10,10,11,13,16,13,14,13,15,14,13,13,14,15,16,10,10,11,13,14,11,11,12,13,14,10,12,11,14,14,13,13,13,14,15,13,15,13,16,15,12,13,12,15,13,12,15,13,15,15,11,11,13,14,15,15,15,15,15,17,13,12,14,13,17,12,12,14,14,15,13,13,14,14,16,11,13,11,16,15,14,16,16,17,0,14,13,11,16,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,8,8,5,8,7,9,9,5,7,8,9,9,9,10,9,12,12,9,9,10,11,12,6,8,8,10,10,8,10,10,11,11,8,9,10,11,11,10,11,11,13,13,10,11,11,12,13,6,8,8,10,10,8,10,9,11,11,8,10,10,11,11,10,11,11,13,12,10,11,11,13,12,9,11,11,15,13,10,12,11,15,13,10,11,11,15,14,12,14,13,16,15,12,13,13,17,16,9,11,11,13,15,10,11,12,14,15,10,11,12,14,15,12,13,13,15,16,12,13,13,16,16,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,14,8,11,10,13,12,10,11,12,12,13,10,12,12,13,13,12,12,13,13,15,11,12,13,15,14,7,10,10,12,12,9,12,11,13,12,10,12,12,13,14,12,13,12,15,13,11,13,12,14,15,10,12,12,16,14,11,12,12,16,15,11,13,12,17,16,13,13,15,15,17,13,15,15,20,17,10,12,12,14,16,11,12,12,15,15,11,13,13,15,18,13,14,13,15,15,13,15,14,16,16,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,15,7,10,10,13,12,10,12,12,14,13,9,10,12,12,13,11,13,13,15,15,11,12,13,13,15,8,10,10,12,13,10,12,12,13,13,10,12,11,13,13,11,13,12,15,15,12,13,12,15,13,10,12,12,16,14,11,12,12,16,15,10,12,12,16,14,14,15,14,18,16,13,13,14,15,16,10,12,12,14,16,11,13,13,16,16,11,13,12,14,16,13,15,15,18,18,13,15,13,16,14,8,11,11,16,16,10,13,13,17,16,10,12,12,16,15,14,16,15,20,17,13,14,14,17,17,9,12,12,16,16,11,13,14,16,17,11,13,13,16,16,15,15,19,18,0,14,15,15,18,18,9,12,12,17,16,11,13,12,17,16,11,12,13,15,17,15,16,15,0,19,14,15,14,19,18,12,14,14,0,16,13,14,14,19,18,13,15,16,17,16,15,15,17,18,0,14,16,16,19,0,12,14,14,16,18,13,15,13,17,18,13,15,14,17,18,15,18,14,18,18,16,17,16,0,17,8,11,11,15,15,10,12,12,16,16,10,13,13,16,16,13,15,14,17,17,14,15,17,17,18,9,12,12,16,15,11,13,13,16,16,11,12,13,17,17,14,14,15,17,17,14,15,16,0,18,9,12,12,16,17,11,13,13,16,17,11,14,13,18,17,14,16,14,17,17,15,17,17,18,18,12,14,14,0,16,13,15,15,19,0,12,13,15,0,0,14,17,16,19,0,16,15,18,18,0,12,14,14,17,0,13,14,14,17,0,13,15,14,0,18,15,16,16,0,18,15,18,15,0,17,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,7,8,8,6,7,9,5,7,7,6,8,7,7,9,8,4,7,7,7,9,8,7,8,8,7,9,8,8,8,10,9,10,10,6,8,8,7,10,8,9,10,10,5,7,7,7,8,8,7,8,9,6,8,8,9,10,10,7,8,10,6,8,9,9,10,10,8,10,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,10,11,8,10,11,5,8,8,8,11,10,8,11,10,4,9,9,8,11,11,8,11,11,8,12,11,10,12,14,11,13,13,7,11,11,10,13,11,11,13,14,4,8,9,8,11,11,8,11,12,7,11,11,11,14,13,10,11,13,8,11,12,11,13,13,10,14,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,12,12,14,12,14,14,14,14,12,6,6,8,9,9,11,14,12,4,2,6,6,7,11,14,13,6,5,7,8,9,11,14,13,8,5,8,6,8,12,14,12,7,7,8,8,8,10,14,12,6,3,4,4,4,7,14,11,7,4,6,6,6,8,14,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,0,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,5,0,0,0,4,0,0,0,3,0,0,0,0,0,128,63,0,0,0,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,160,64,0,0,192,64,0,0,224,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,64,65,0,0,72,65,0,0,80,65,0,0,88,65,0,0,96,65,0,0,104,65,0,0,112,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,4,0,0,0,3,0,0,0,0,0,128,63,0,0,0,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,160,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,64,65,0,0,72,65,0,0,80,65,0,0,88,65,0,0,96,65,0,0,104,65,0,0,112,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,4,0,0,0,3,0,0,0,0,0,128,63,0,0,0,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,160,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,64,64,0,0,128,64,0,0,128,64,0,0,160,64,0,0,160,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,128,64,0,0,128,64,0,0,160,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,2,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,2,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,64,0,0,224,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,32,65,0,0,32,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,200,47,1,0,32,161,2,0,200,47,1,0,96,161,2,0,200,47,1,0,160,161,2,0,200,47,1,0,224,161,2,0,200,47,1,0,32,162,2,0,200,47,1,0,96,162,2,0,200,47,1,0,160,162,2,0,200,47,1,0,224,162,2,0,200,47,1,0,32,163,2,0,200,47,1,0,96,163,2,0,200,47,1,0,160,163,2,0,2,0,0,0,0,0,0,0,32,0,0,0,64,171,3,0,216,86,4,0,0,87,4,0,40,87,4,0,232,87,4,0,2,0,0,0,0,0,0,0,32,0,0,0,64,171,3,0,168,88,4,0,208,88,4,0,40,87,4,0,232,87,4,0,2,0,0,0,0,0,0,0,16,0,0,0,64,171,3,0,248,5,4,0,32,6,4,0,72,6,4,0,8,7,4,0,2,0,0,0,0,0,0,0,32,0,0,0,64,171,3,0,200,7,4,0,240,7,4,0,72,6,4,0,8,7,4,0,2,0,0,0,0,0,0,0,16,0,0,0,64,171,3,0,88,182,3,0,128,182,3,0,168,182,3,0,104,183,3,0,2,0,0,0,0,0,0,0,32,0,0,0,64,171,3,0,40,184,3,0,80,184,3,0,168,182,3,0,104,183,3,0,2,0,0,0,0,0,0,0,16,0,0,0,24,73,1,0,152,128,3,0,152,128,3,0,192,128,3,0,192,128,3,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,128,129,3,0,128,129,3,0,192,128,3,0,192,128,3,0,2,0,0,0,0,0,0,0,16,0,0,0,24,73,1,0,176,85,3,0,176,85,3,0,216,85,3,0,216,85,3,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,152,86,3,0,152,86,3,0,216,85,3,0,216,85,3,0,2,0,0,0,0,0,0,0,16,0,0,0,24,73,1,0,32,42,3,0,32,42,3,0,72,42,3,0,72,42,3,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,8,43,3,0,8,43,3,0,72,42,3,0,72,42,3,0,2,0,0,0,0,0,0,0,16,0,0,0,24,73,1,0,8,254,2,0,8,254,2,0,48,254,2,0,48,254,2,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,240,254,2,0,240,254,2,0,48,254,2,0,48,254,2,0,2,0,0,0,0,0,0,0,16,0,0,0,224,163,2,0,8,235,2,0,8,235,2,0,48,235,2,0,48,235,2,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,240,235,2,0,240,235,2,0,48,235,2,0,48,235,2,0,2,0,0,0,0,0,0,0,16,0,0,0,224,163,2,0,8,216,2,0,8,216,2,0,48,216,2,0,48,216,2,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,240,216,2,0,240,216,2,0,48,216,2,0,48,216,2,0,2,0,0,0,0,0,0,0,16,0,0,0,224,163,2,0,168,195,2,0,168,195,2,0,208,195,2,0,208,195,2,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,144,196,2,0,144,196,2,0,208,195,2,0,208,195,2,0,2,0,0,0,0,0,0,0,16,0,0,0,224,163,2,0,248,174,2,0,248,174,2,0,32,175,2,0,32,175,2,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,224,175,2,0,224,175,2,0,32,175,2,0,32,175,2,0,0,0,0,0,255,255,255,255,255,255,255,255,10,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+165344),d3([1,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,71,0,0,0,157,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,71,0,0,0,157,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,64,195,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,176,2,0,0,0,0,0,0,0,0,0,0,0,0,0,152,176,2,0,0,0,0,0,0,0,0,0,0,0,0,0,192,176,2,0,0,0,0,0,0,0,0,0,0,0,0,0,232,176,2,0,0,0,0,0,16,177,2,0,56,177,2,0,0,0,0,0,0,0,0,0,96,177,2,0,136,177,2,0,0,0,0,0,0,0,0,0,176,177,2,0,216,177,2,0,0,0,0,0,0,0,0,0,0,178,2,0,40,178,2,0,0,0,0,0,0,0,0,0,80,178,2,0,120,178,2,0,160,178,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,8,176,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,12,14,15,15,15,13,15,15,6,5,8,10,12,12,13,12,14,13,10,6,5,6,8,9,11,11,13,13,13,8,5,4,5,6,8,10,11,13,14,10,7,5,4,5,7,9,11,12,13,11,8,6,5,4,5,7,9,11,12,11,10,8,7,5,4,5,9,10,13,13,11,10,8,6,5,4,7,9,15,14,13,12,10,9,8,7,8,9,12,12,14,13,12,11,10,9,8,9,0,0,0,0,4,0,0,0,81,0,0,0,216,194,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,48,195,2,0,0,0,0,0,4,0,0,0,113,2,0,0,72,192,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,194,2,0,0,0,0,0,2,0,0,0,81,0,0,0,200,191,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,32,192,2,0,0,0,0,0,2,0,0,0,33,1,0,0,88,190,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,128,191,2,0,0,0,0,0,4,0,0,0,81,0,0,0,240,189,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,72,190,2,0,0,0,0,0,2,0,0,0,121,0,0,0,64,189,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,192,189,2,0,0,0,0,0,2,0,0,0,169,0,0,0,88,188,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,8,189,2,0,0,0,0,0,2,0,0,0,25,0,0,0,32,188,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,188,2,0,0,0,0,0,2,0,0,0,169,0,0,0,56,187,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,232,187,2,0,0,0,0,0,2,0,0,0,121,0,0,0,136,186,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,8,187,2,0,0,0,0,0,2,0,0,0,225,0,0,0,96,185,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,72,186,2,0,0,0,0,0,2,0,0,0,185,1,0,0,72,183,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,8,185,2,0,0,0,0,0,2,0,0,0,105,1,0,0,136,181,2,0,1,0,0,0,128,93,176,225,0,24,61,97,5,0,0,0,0,0,0,0,248,182,2,0,0,0,0,0,2,0,0,0,105,1,0,0,200,179,2,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,56,181,2,0,0,0,0,0,1,0,0,0,49,0,0,0,200,178,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,0,179,2,0,0,0,0,0,2,4,4,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,8,7,9,8,9,9,10,10,11,11,11,11,6,5,5,8,8,9,9,9,8,10,9,11,10,12,12,13,12,13,13,5,5,5,8,8,9,9,9,9,10,10,11,11,12,12,13,12,13,13,17,8,8,9,9,9,9,9,9,10,10,12,11,13,12,13,13,13,13,18,8,8,9,9,9,9,9,9,11,11,12,12,13,13,13,13,13,13,17,13,12,9,9,10,10,10,10,11,11,12,12,12,13,13,13,14,14,18,13,12,9,9,10,10,10,10,11,11,12,12,13,13,13,14,14,14,17,18,18,10,10,10,10,11,11,11,12,12,12,14,13,14,13,13,14,18,18,18,10,9,10,9,11,11,12,12,12,12,13,13,15,14,14,14,18,18,16,13,14,10,11,11,11,12,13,13,13,13,14,13,13,14,14,18,18,18,14,12,11,9,11,10,13,12,13,13,13,14,14,14,13,14,18,18,17,18,18,11,12,12,12,13,13,14,13,14,14,13,14,14,14,18,18,18,18,17,12,10,12,9,13,11,13,14,14,14,14,14,15,14,18,18,17,17,18,14,15,12,13,13,13,14,13,14,14,15,14,15,14,18,17,18,18,18,15,15,12,10,14,10,14,14,13,13,14,14,14,14,18,16,18,18,18,18,17,14,14,13,14,14,13,13,14,14,14,15,15,18,18,18,18,17,17,17,14,14,14,12,14,13,14,14,15,14,15,14,18,18,18,18,18,18,18,17,16,13,13,13,14,14,14,14,15,16,15,18,18,18,18,18,18,18,17,17,13,13,13,13,14,13,14,15,15,15,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,4,3,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,4,5,6,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,4,6,6,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,4,6,6,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,7,7,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,10,9,9,9,10,10,10,10,10,10,10,9,9,9,9,9,9,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,9,9,10,9,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,9,9,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,10,10,9,9,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,9,9,9,9,9,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,6,8,8,8,8,9,9,10,10,11,10,6,5,5,7,7,9,9,8,9,10,10,11,11,12,12,6,5,5,7,7,9,9,9,9,10,10,11,11,12,12,21,7,8,8,8,9,9,9,9,10,10,11,11,12,12,21,8,8,8,8,9,9,9,9,10,10,11,11,12,12,21,11,12,9,9,10,10,10,10,10,11,11,12,12,12,21,12,12,9,8,10,10,10,10,11,11,12,12,13,13,21,21,21,9,9,9,9,11,11,11,11,12,12,12,13,21,20,20,9,9,9,9,10,11,11,11,12,12,13,13,20,20,20,13,13,10,10,11,11,12,12,13,13,13,13,20,20,20,13,13,10,10,11,11,12,12,13,13,13,13,20,20,20,20,20,12,12,12,12,12,12,13,13,14,14,20,20,20,20,20,12,12,12,11,13,12,13,13,14,14,20,20,20,20,20,15,16,13,12,13,13,14,13,14,14,20,20,20,20,20,16,15,12,12,13,12,14,13,14,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,5,6,6,6,6,7,7,7,7,7,7,7,6,6,6,6,7,7,7,7,7,7,7,6,6,6,6,7,7,7,7,7,7,8,6,6,6,6,7,7,7,7,7,7,8,8,8,6,6,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,10,10,11,11,6,4,4,6,6,8,8,9,9,10,10,12,12,6,4,5,6,6,8,8,9,9,10,10,12,12,20,6,6,6,6,8,8,9,10,11,11,12,12,20,6,6,6,6,8,8,10,10,11,11,12,12,20,10,10,7,7,9,9,10,10,11,11,12,12,20,11,11,7,7,9,9,10,10,11,11,12,12,20,20,20,9,9,9,9,11,11,12,12,13,13,20,20,20,9,9,9,9,11,11,12,12,13,13,20,20,20,13,13,10,10,11,11,12,13,13,13,20,20,20,13,13,10,10,11,11,12,13,13,13,20,20,20,20,19,12,12,12,12,13,13,14,15,19,19,19,19,19,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,4,4,4,5,5,5,4,4,5,5,5,4,4,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,9,9,5,4,4,6,6,8,8,9,9,9,9,10,10,6,4,4,6,6,8,8,9,9,9,9,10,10,0,6,6,7,7,8,8,9,9,10,10,11,11,0,6,6,7,7,8,8,9,9,10,10,11,11,0,10,10,8,8,9,9,10,10,11,11,12,12,0,11,11,8,8,9,9,10,10,11,11,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,7,7,11,5,5,6,6,7,7,7,7,8,8,11,5,5,6,6,7,7,7,7,8,8,11,5,5,6,6,7,7,8,8,8,8,11,11,11,6,6,7,7,7,8,8,8,11,11,11,6,6,7,7,7,8,8,8,11,11,11,6,6,7,7,7,7,8,8,11,11,11,7,7,7,7,7,7,8,8,11,11,11,10,10,7,7,7,7,8,8,11,11,11,11,11,7,7,7,7,7,7,11,11,11,11,11,7,7,7,7,7,7,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,7,6,9,10,10,10,10,9,4,6,7,9,10,10,10,9,10,5,9,9,9,11,11,10,11,11,7,10,9,11,12,11,12,12,12,7,9,10,11,11,12,12,12,12,6,10,10,10,12,12,10,12,11,7,10,10,11,12,12,11,12,12,7,10,10,11,12,12,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,10,10,0,5,4,5,5,7,7,8,8,8,8,9,9,10,10,11,11,0,5,5,6,6,7,7,8,8,8,8,9,9,10,10,11,11,0,6,5,6,6,7,7,8,8,9,9,10,10,11,11,11,12,0,0,0,6,6,7,7,8,8,9,9,10,10,11,11,12,12,0,0,0,7,7,7,7,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,7,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,3,4,4,5,5,6,6,8,8,0,4,4,5,5,6,7,8,8,0,4,4,5,5,7,7,8,8,0,5,5,6,6,7,7,9,9,0,0,0,6,6,7,7,9,9,0,0,0,7,7,8,8,9,9,0,0,0,7,7,8,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,0,5,5,8,8,0,5,5,8,8,0,7,7,9,9,0,0,0,9,9,6,7,7,9,8,0,8,8,9,9,0,8,7,9,9,0,9,10,10,10,0,0,0,11,10,6,7,7,8,9,0,8,8,9,9,0,7,8,9,9,0,10,9,11,10,0,0,0,10,10,8,9,8,10,10,0,10,10,12,11,0,10,10,11,11,0,12,13,13,13,0,0,0,13,12,8,8,9,10,10,0,10,10,11,12,0,10,10,11,11,0,13,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,7,10,10,0,7,7,10,9,0,7,7,10,10,0,9,9,10,10,0,0,0,10,10,6,7,8,10,10,0,7,7,9,10,0,7,7,10,10,0,9,9,10,10,0,0,0,10,10,8,9,9,11,11,0,10,10,11,11,0,10,10,11,11,0,12,12,12,12,0,0,0,12,12,8,9,10,11,11,0,9,10,11,11,0,10,10,11,11,0,12,12,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,10,10,0,7,7,10,10,0,7,7,10,9,0,9,9,10,10,0,0,0,10,10,6,7,8,10,10,0,7,7,10,10,0,7,7,9,10,0,9,9,10,10,0,0,0,10,10,8,10,9,12,11,0,10,10,12,11,0,10,9,11,11,0,11,12,12,12,0,0,0,12,12,8,9,10,11,12,0,10,10,11,11,0,9,10,11,11,0,12,11,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,9,12,12,0,9,9,12,11,0,9,9,11,11,0,10,10,12,11,0,0,0,11,12,7,9,10,12,12,0,9,9,11,12,0,9,9,11,11,0,10,10,11,12,0,0,0,11,11,9,11,10,13,12,0,10,10,12,12,0,10,10,12,12,0,11,11,12,12,0,0,0,13,12,9,10,11,12,13,0,10,10,12,12,0,10,10,12,12,0,11,12,12,12,0,0,0,12,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,11,10,13,13,0,10,10,12,12,0,10,10,12,12,0,11,12,12,12,0,0,0,12,12,9,10,11,13,13,0,10,10,12,12,0,10,10,12,12,0,12,11,13,12,0,0,0,12,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,5,5,0,5,5,6,8,8,0,9,8,0,9,8,6,8,8,0,8,9,0,8,9,0,0,0,0,0,0,0,0,0,5,8,8,0,7,7,0,8,8,5,8,8,0,7,8,0,8,8,0,0,0,0,0,0,0,0,0,5,9,8,0,8,8,0,7,7,5,8,9,0,8,8,0,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,13,18,16,17,17,19,18,19,19,5,7,10,11,12,12,13,16,17,18,6,6,7,7,9,9,10,14,17,19,8,7,6,5,6,7,9,12,19,17,8,7,7,6,5,6,8,11,15,19,9,8,7,6,5,5,6,8,13,15,11,10,8,8,7,5,4,4,10,14,12,13,11,9,7,6,4,2,6,12,18,16,16,13,8,7,7,5,8,13,16,17,18,15,11,9,9,8,10,13,0,0,0,0,2,0,0,0,100,0,0,0,160,215,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,197,2,0,0,0,0,0,0,0,0,0,0,0,0,0,72,197,2,0,0,0,0,0,0,0,0,0,0,0,0,0,112,197,2,0,0,0,0,0,0,0,0,0,0,0,0,0,152,197,2,0,0,0,0,0,192,197,2,0,232,197,2,0,0,0,0,0,0,0,0,0,16,198,2,0,56,198,2,0,0,0,0,0,0,0,0,0,96,198,2,0,136,198,2,0,0,0,0,0,0,0,0,0,176,198,2,0,216,198,2,0,0,0,0,0,0,0,0,0,0,199,2,0,40,199,2,0,80,199,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,184,196,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,12,13,14,14,14,13,14,14,6,4,5,8,10,10,11,11,14,13,9,5,4,5,7,8,9,10,13,13,12,7,5,4,5,6,8,9,12,13,13,9,6,5,5,5,7,9,11,14,12,10,7,6,5,4,6,7,10,11,12,11,9,8,7,5,5,6,10,10,13,12,10,9,8,6,6,5,8,10,14,13,12,12,11,10,9,7,8,10,12,13,14,14,13,12,11,9,9,10,0,0,0,0,4,0,0,0,81,0,0,0,56,215,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,144,215,2,0,0,0,0,0,4,0,0,0,113,2,0,0,168,212,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,32,215,2,0,0,0,0,0,2,0,0,0,81,0,0,0,40,212,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,212,2,0,0,0,0,0,2,0,0,0,33,1,0,0,184,210,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,211,2,0,0,0,0,0,4,0,0,0,81,0,0,0,80,210,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,168,210,2,0,0,0,0,0,2,0,0,0,121,0,0,0,160,209,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,32,210,2,0,0,0,0,0,2,0,0,0,169,0,0,0,184,208,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,104,209,2,0,0,0,0,0,2,0,0,0,25,0,0,0,128,208,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,208,2,0,0,0,0,0,2,0,0,0,169,0,0,0,152,207,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,72,208,2,0,0,0,0,0,2,0,0,0,121,0,0,0,232,206,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,104,207,2,0,0,0,0,0,2,0,0,0,225,0,0,0,192,205,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,168,206,2,0,0,0,0,0,2,0,0,0,185,1,0,0,168,203,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,104,205,2,0,0,0,0,0,2,0,0,0,33,1,0,0,56,202,2,0,1,0,0,0,0,24,157,225,0,24,61,97,5,0,0,0,0,0,0,0,96,203,2,0,0,0,0,0,2,0,0,0,105,1,0,0,120,200,2,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,232,201,2,0,0,0,0,0,1,0,0,0,49,0,0,0,120,199,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,176,199,2,0,0,0,0,0,2,4,4,4,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,6,7,7,7,7,8,8,9,9,10,10,10,10,11,11,6,6,6,8,8,9,8,8,7,10,8,11,10,12,11,12,12,13,13,5,5,6,8,8,9,9,8,8,10,9,11,11,12,12,13,13,13,13,17,8,8,9,9,9,9,9,9,10,9,12,10,12,12,13,12,13,13,17,9,8,9,9,9,9,9,9,10,10,12,12,12,12,13,13,13,13,17,13,13,9,9,10,10,10,10,11,11,12,11,13,12,13,13,14,15,17,13,13,9,8,10,9,10,10,11,11,12,12,14,13,15,13,14,15,17,17,17,9,10,9,10,11,11,12,12,12,12,13,13,14,14,15,15,17,17,17,9,8,9,8,11,11,12,12,12,12,14,13,14,14,14,15,17,17,17,12,14,9,10,11,11,12,12,14,13,13,14,15,13,15,15,17,17,17,13,11,10,8,11,9,13,12,13,13,13,13,13,14,14,14,17,17,17,17,17,11,12,11,11,13,13,14,13,15,14,13,15,16,15,17,17,17,17,17,11,11,12,8,13,12,14,13,17,14,15,14,15,14,17,17,17,17,17,15,15,12,12,12,12,13,14,14,14,15,14,17,14,17,17,17,17,17,16,17,12,12,13,12,13,13,14,14,14,14,14,14,17,17,17,17,17,17,17,14,14,13,12,13,13,15,15,14,13,15,17,17,17,17,17,17,17,17,13,14,13,13,13,13,14,15,15,15,14,15,17,17,17,17,17,17,17,16,15,13,14,13,13,14,14,15,14,14,16,17,17,17,17,17,17,17,16,16,13,14,13,13,14,14,15,14,15,14,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,4,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,4,7,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,4,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,4,5,5,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,10,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,9,10,10,9,10,10,10,10,9,10,9,10,10,9,10,10,10,10,10,10,10,9,10,10,10,10,10,10,9,9,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,9,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,10,9,10,9,9,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,6,8,8,8,7,9,8,10,10,11,10,6,5,5,7,7,9,9,8,8,10,10,11,11,12,11,6,5,5,7,7,9,9,9,9,10,10,11,11,12,12,20,8,8,8,8,9,9,9,9,10,10,11,11,12,12,20,8,8,8,8,10,9,9,9,10,10,11,11,12,12,20,12,12,9,9,10,10,10,10,10,11,12,12,12,12,20,12,12,9,9,10,10,10,10,11,11,12,12,13,13,20,20,20,9,9,9,9,11,10,11,11,12,12,12,13,20,19,19,9,9,9,9,11,11,11,12,12,12,13,13,19,19,19,13,13,10,10,11,11,12,12,13,13,13,13,19,19,19,14,13,11,10,11,11,12,12,12,13,13,13,19,19,19,19,19,12,12,12,12,13,13,13,13,14,13,19,19,19,19,19,12,12,12,11,12,12,13,14,14,14,19,19,19,19,19,16,15,13,12,13,13,13,14,14,14,19,19,19,19,19,17,17,13,12,13,11,14,13,15,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,4,5,6,6,6,7,7,7,7,7,7,8,6,6,6,7,7,7,7,7,7,7,8,6,6,6,6,7,7,7,7,7,7,8,6,6,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,7,9,9,10,10,12,12,6,5,5,7,7,8,8,10,10,11,11,12,12,7,5,5,7,7,8,8,10,10,11,11,12,12,21,7,7,7,7,8,9,10,10,11,11,12,12,21,7,7,7,7,9,9,10,10,12,12,13,13,21,11,11,8,8,9,9,11,11,12,12,13,13,21,11,11,8,8,9,9,11,11,12,12,13,13,21,21,21,10,10,10,10,11,11,12,13,13,13,21,21,21,10,10,10,10,11,11,13,13,14,13,21,21,21,13,13,11,11,12,12,13,13,14,14,21,21,21,14,14,11,11,12,12,13,13,14,14,21,21,21,21,20,13,13,13,12,14,14,16,15,20,20,20,20,20,13,13,13,13,14,13,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,4,4,5,5,5,4,4,5,5,5,4,4,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,9,9,10,10,11,11,6,5,5,7,7,8,8,9,9,10,10,11,11,0,7,7,7,7,9,9,10,10,10,10,11,11,0,7,7,7,7,9,9,10,10,10,10,11,11,0,11,11,9,9,10,10,11,11,11,11,12,12,0,12,12,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,6,6,7,7,8,8,8,8,11,4,5,6,6,7,7,8,8,8,8,11,5,5,6,6,7,7,8,8,8,9,12,5,5,6,6,7,7,8,8,9,9,12,12,12,6,6,7,7,8,8,9,9,11,11,11,6,6,7,7,8,8,8,8,11,11,11,6,6,7,7,8,8,8,8,11,11,11,7,7,7,8,8,8,8,8,11,11,11,11,11,7,7,8,8,8,8,11,11,11,11,11,7,7,7,7,8,8,11,11,11,11,11,7,7,7,7,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,7,6,10,10,10,10,10,10,4,6,6,10,10,10,10,9,10,5,10,10,9,11,11,10,11,11,7,10,10,11,12,12,12,12,12,7,10,10,11,12,12,12,12,12,6,10,10,10,12,12,10,12,12,7,10,10,11,12,12,12,12,12,7,10,10,11,12,12,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,8,8,8,8,9,9,10,10,11,11,0,4,4,6,6,7,7,8,8,9,8,10,10,11,11,11,11,0,4,4,6,6,7,7,8,8,9,9,10,10,11,11,11,11,0,6,5,6,6,7,7,9,9,9,9,10,10,11,11,12,12,0,0,0,6,6,7,7,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,11,12,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,11,12,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,4,5,5,7,7,9,9,0,4,4,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,5,5,6,6,8,8,10,10,0,0,0,6,6,8,8,10,10,0,0,0,7,7,9,9,10,10,0,0,0,7,7,8,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,0,5,5,8,8,0,5,5,8,8,0,7,7,9,9,0,0,0,9,9,5,7,7,9,9,0,8,7,10,9,0,8,7,10,9,0,10,10,11,11,0,0,0,11,11,5,7,7,9,9,0,7,8,9,10,0,7,8,9,10,0,10,10,11,11,0,0,0,11,11,8,9,9,11,10,0,11,10,12],"i8",L3,x.GLOBAL_BASE+175348),d3([11,0,11,10,12,12,0,13,13,14,14,0,0,0,14,13,8,9,9,10,11,0,10,11,12,12,0,10,11,12,12,0,13,13,14,14,0,0,0,13,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,11,10,0,7,7,10,10,0,7,7,10,10,0,9,9,10,10,0,0,0,11,10,5,7,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,10,0,0,0,10,10,8,10,9,12,12,0,10,10,12,11,0,10,10,12,12,0,12,12,13,12,0,0,0,13,12,8,9,10,12,12,0,10,10,11,12,0,10,10,11,12,0,12,12,13,13,0,0,0,12,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,7,11,10,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,10,10,6,7,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,10,0,0,0,10,10,9,10,9,12,12,0,10,10,12,12,0,10,10,12,11,0,12,12,13,13,0,0,0,13,12,8,9,10,12,12,0,10,10,12,12,0,10,10,11,12,0,12,12,13,13,0,0,0,12,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,13,13,0,9,9,12,12,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,7,10,10,13,13,0,9,9,12,12,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,9,11,11,14,13,0,10,10,13,12,0,11,10,13,12,0,12,12,13,12,0,0,0,13,13,9,11,11,13,14,0,10,11,12,13,0,10,11,13,13,0,12,12,12,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,11,11,14,14,0,10,11,13,13,0,11,10,13,13,0,11,12,13,13,0,0,0,13,12,9,11,11,14,14,0,11,10,13,13,0,10,11,13,13,0,12,12,13,13,0,0,0,12,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,5,5,0,5,5,5,7,7,0,9,8,0,9,8,6,7,7,0,8,9,0,8,9,0,0,0,0,0,0,0,0,0,5,9,8,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,0,0,5,9,8,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,11,13,14,15,15,18,17,19,17,5,6,8,9,10,10,12,15,19,19,6,6,6,6,8,8,11,14,18,19,8,6,5,4,6,7,10,13,16,17,9,7,6,5,6,7,9,12,15,19,10,8,7,6,6,6,7,9,13,15,12,10,9,8,7,6,4,5,10,15,13,13,11,8,6,6,4,2,7,12,17,15,16,10,8,8,7,6,9,12,19,18,17,13,11,10,10,9,11,14,0,0,0,0,2,0,0,0,100,0,0,0,160,234,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,217,2,0,0,0,0,0,0,0,0,0,0,0,0,0,168,217,2,0,0,0,0,0,0,0,0,0,0,0,0,0,208,217,2,0,0,0,0,0,0,0,0,0,0,0,0,0,248,217,2,0,0,0,0,0,32,218,2,0,72,218,2,0,0,0,0,0,0,0,0,0,112,218,2,0,152,218,2,0,0,0,0,0,0,0,0,0,192,218,2,0,232,218,2,0,0,0,0,0,0,0,0,0,16,219,2,0,56,219,2,0,0,0,0,0,0,0,0,0,96,219,2,0,136,219,2,0,176,219,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,24,217,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,11,13,15,14,14,13,15,14,6,4,5,7,9,10,11,11,14,13,10,4,3,5,7,8,9,10,13,13,12,7,4,4,5,6,8,9,12,14,13,9,6,5,5,6,8,9,12,14,12,9,7,6,5,5,6,8,11,11,12,11,9,8,7,6,6,7,10,11,13,11,10,9,8,7,6,6,9,11,13,13,12,12,12,10,9,8,9,11,12,14,15,15,14,12,11,10,10,12,0,0,0,0,4,0,0,0,81,0,0,0,56,234,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,144,234,2,0,0,0,0,0,4,0,0,0,113,2,0,0,168,231,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,32,234,2,0,0,0,0,0,2,0,0,0,81,0,0,0,40,231,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,231,2,0,0,0,0,0,2,0,0,0,33,1,0,0,184,229,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,230,2,0,0,0,0,0,4,0,0,0,81,0,0,0,80,229,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,168,229,2,0,0,0,0,0,2,0,0,0,121,0,0,0,160,228,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,32,229,2,0,0,0,0,0,2,0,0,0,169,0,0,0,184,227,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,104,228,2,0,0,0,0,0,2,0,0,0,25,0,0,0,128,227,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,227,2,0,0,0,0,0,2,0,0,0,169,0,0,0,152,226,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,72,227,2,0,0,0,0,0,2,0,0,0,121,0,0,0,232,225,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,104,226,2,0,0,0,0,0,2,0,0,0,225,0,0,0,192,224,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,168,225,2,0,0,0,0,0,2,0,0,0,185,1,0,0,168,222,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,104,224,2,0,0,0,0,0,2,0,0,0,169,0,0,0,192,221,2,0,1,0,0,0,0,220,125,225,0,232,51,97,4,0,0,0,0,0,0,0,112,222,2,0,0,0,0,0,2,0,0,0,169,0,0,0,216,220,2,0,1,0,0,0,0,96,18,225,0,128,184,96,4,0,0,0,0,0,0,0,136,221,2,0,0,0,0,0,1,0,0,0,49,0,0,0,216,219,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,16,220,2,0,0,0,0,0,2,4,3,4,5,5,5,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,6,8,8,8,8,6,6,6,8,8,9,8,8,7,9,8,11,10,5,6,6,8,8,9,8,8,8,10,9,11,11,16,8,8,9,8,9,9,9,8,10,9,11,10,16,8,8,9,9,10,10,9,9,10,10,11,11,16,13,13,9,9,10,10,9,10,11,11,12,11,16,13,13,9,8,10,9,10,10,10,10,11,11,16,14,16,8,9,9,9,11,10,11,11,12,11,16,16,16,9,7,10,7,11,10,11,11,12,11,16,16,16,12,12,9,10,11,11,12,11,12,12,16,16,16,12,10,10,7,11,8,12,11,12,12,16,16,15,16,16,11,12,10,10,12,11,12,12,16,16,16,15,15,11,11,10,10,12,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,11,11,11,11,11,11,11,11,11,11,4,6,6,11,11,11,11,11,11,11,11,11,11,4,7,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,7,6,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,11,10,10,10,9,9,9,9,9,9,9,9,9,9,10,9,9,10,9,9,10,11,10,11,10,9,9,9,9,9,9,9,10,10,10,9,10,9,9,9,9,11,10,11,10,10,9,9,9,9,9,9,10,9,9,10,9,9,10,9,9,10,11,10,10,11,10,9,9,9,9,9,10,10,9,10,10,10,10,9,10,10,10,10,10,10,11,11,11,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,9,10,11,11,10,11,10,11,10,9,10,10,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,10,11,11,10,10,10,10,10,10,9,10,9,10,10,9,10,9,10,10,10,11,10,11,10,11,11,10,10,10,10,10,10,9,10,10,10,10,10,10,10,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,10,11,11,10,10,10,10,9,9,10,10,9,9,10,9,10,10,10,10,11,11,10,10,10,10,10,10,10,9,9,10,10,10,9,9,10,10,10,10,10,11,10,11,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,7,9,8,9,9,10,10,6,5,5,7,7,9,9,8,8,10,9,11,10,12,11,6,5,5,8,7,9,9,8,8,10,10,11,11,12,11,19,8,8,8,8,10,10,9,9,10,10,11,11,12,11,19,8,8,8,8,10,10,9,9,10,10,11,11,12,12,19,12,12,9,9,10,10,9,10,10,10,11,11,12,12,19,12,12,9,9,10,10,10,10,10,10,12,12,12,12,19,19,19,9,9,9,9,11,10,11,11,12,11,13,13,19,19,19,9,9,9,9,11,10,11,11,11,12,13,13,19,19,19,13,13,10,10,11,11,12,12,12,12,13,12,19,19,19,14,13,10,10,11,11,12,12,12,13,13,13,19,19,19,19,19,12,12,12,11,12,13,14,13,13,13,19,19,19,19,19,12,12,12,11,12,12,13,14,13,14,19,19,19,19,19,16,16,12,13,12,13,13,14,15,14,19,18,18,18,18,16,15,12,11,12,11,14,12,14,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,7,7,8,6,6,7,7,7,7,7,7,7,7,8,6,6,6,7,7,7,7,7,7,7,8,6,6,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,7,8,9,9,10,10,12,11,6,5,5,7,7,8,8,9,10,11,11,12,12,7,5,5,7,7,8,8,10,10,11,11,12,12,20,7,7,7,7,8,9,10,10,11,11,12,13,20,7,7,7,7,9,9,10,10,11,12,13,13,20,11,11,8,8,9,9,11,11,12,12,13,13,20,11,11,8,8,9,9,11,11,12,12,13,13,20,20,20,10,10,10,10,12,12,13,13,13,13,20,20,20,10,10,10,10,12,12,13,13,13,14,20,20,20,14,14,11,11,12,12,13,13,14,14,20,20,20,14,14,11,11,12,12,13,13,14,14,20,20,20,20,19,13,13,13,13,14,14,15,14,19,19,19,19,19,13,13,13,13,14,14,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,4,4,5,5,5,4,4,5,5,5,4,4,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,7,9,8,10,10,6,5,5,7,7,8,8,9,9,9,10,11,11,7,5,5,7,7,8,8,9,9,10,10,11,11,0,7,7,7,7,9,8,9,9,10,10,11,11,0,8,8,7,7,8,9,9,9,10,10,11,11,0,11,11,9,9,10,10,11,10,11,11,12,12,0,12,12,9,9,10,10,11,11,11,11,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,6,6,7,7,8,8,8,8,11,4,4,6,6,7,7,8,8,9,9,11,4,4,6,6,7,7,8,8,9,9,12,5,5,6,6,7,7,9,9,9,9,12,12,12,6,6,7,7,9,9,9,9,11,11,11,7,7,7,7,8,8,9,9,11,11,11,7,7,7,7,8,8,9,9,11,11,11,7,7,8,8,8,8,9,9,11,11,11,11,11,8,8,8,8,8,9,11,11,11,11,11,8,8,8,8,8,8,11,11,11,11,11,7,7,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,6,7,10,10,10,10,10,9,4,6,6,10,10,10,10,9,10,5,10,10,9,11,12,10,11,12,7,10,10,11,12,12,12,12,12,7,10,10,11,12,12,12,12,12,6,10,10,10,12,12,11,12,12,7,10,10,12,12,12,12,11,12,7,10,10,11,12,12,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,8,8,8,8,9,9,10,10,11,11,0,4,4,6,6,7,7,8,8,9,9,10,10,11,11,12,12,0,4,4,6,6,7,7,8,8,9,9,10,10,11,11,12,12,0,5,5,6,6,8,8,9,9,9,9,10,10,11,12,12,12,0,0,0,6,6,8,7,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,13,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,12,13,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,4,5,5,7,7,9,9,0,4,4,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,5,5,6,6,8,8,10,10,0,0,0,6,6,8,8,10,10,0,0,0,7,7,9,9,10,10,0,0,0,7,7,8,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,0,5,5,8,8,0,5,5,8,8,0,7,7,9,9,0,0,0,9,9,5,7,7,9,9,0,8,8,10,10,0,8,7,10,9,0,10,10,11,11,0,0,0,11,11,5,7,7,9,9,0,8,8,10,10,0,7,8,9,10,0,10,10,11,11,0,0,0,11,11,8,9,9,11,10,0,11,11,12,12,0,11,10,12,12,0,13,14,14,14,0,0,0,14,13,8,9,9,10,11,0,11,11,12,12,0,10,11,12,12,0,13,13,14,14,0,0,0,13,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,11,10,0,7,7,10,10,0,7,7,10,10,0,9,9,11,10,0,0,0,11,11,5,7,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,11,11,8,10,9,12,12,0,10,10,12,12,0,10,10,12,12,0,12,12,13,13,0,0,0,13,13,8,9,10,12,12,0,10,10,12,12,0,10,10,11,12,0,12,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,11,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,11,10,5,8,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,11,10,0,0,0,10,11,9,10,10,12,12,0,10,10,12,12,0,10,10,12,12,0,12,13,13,13,0,0,0,13,12,9,10,10,12,12,0,10,10,12,12,0,10,10,12,12,0,13,12,13,13,0,0,0,12,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,14,13,0,9,9,12,12,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,7,10,10,13,14,0,9,9,12,13,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,9,11,11,14,13,0,11,10,13,12,0,11,11,13,13,0,12,12,13,13,0,0,0,13,13,9,11,11,13,14,0,10,11,12,13,0,11,11,13,13,0,12,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,11,11,14,14,0,10,11,13,13,0,11,10,13,13,0,12,12,13,13,0,0,0,13,12,9,11,11,14,14,0,11,10,13,13,0,10,11,13,13,0,12,12,14,13,0,0,0,13,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,5,5,0,5,5,5,8,7,0,9,9,0,9,8,5,7,8,0,9,9,0,8,9,0,0,0,0,0,0,0,0,0,5,9,9,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,0,0,5,9,9,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,11,12,14,15,15,17,17,18,18,5,6,6,8,9,10,13,17,18,19,7,5,4,6,8,9,11,15,19,19,8,6,5,5,6,7,11,14,16,17,9,7,7,6,7,7,10,13,15,19,10,8,7,6,7,6,7,9,14,16,12,10,9,7,7,6,4,5,10,15,14,13,11,7,6,6,4,2,7,13,16,16,15,9,8,8,8,6,9,13,19,19,17,12,11,10,10,9,11,14,0,0,0,0,2,0,0,0,100,0,0,0,160,253,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,236,2,0,0,0,0,0,0,0,0,0,0,0,0,0,168,236,2,0,0,0,0,0,0,0,0,0,0,0,0,0,208,236,2,0,0,0,0,0,0,0,0,0,0,0,0,0,248,236,2,0,0,0,0,0,32,237,2,0,72,237,2,0,0,0,0,0,0,0,0,0,112,237,2,0,152,237,2,0,0,0,0,0,0,0,0,0,192,237,2,0,232,237,2,0,0,0,0,0,0,0,0,0,16,238,2,0,56,238,2,0,0,0,0,0,0,0,0,0,96,238,2,0,136,238,2,0,176,238,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,24,236,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,11,13,14,14,13,13,16,14,6,3,4,7,9,9,10,11,14,13,10,4,3,5,7,7,9,10,13,15,12,7,4,4,6,6,8,10,13,15,12,8,6,6,6,6,8,10,13,14,11,9,7,6,6,6,7,8,12,11,13,10,9,8,7,6,6,7,11,11,13,11,10,9,9,7,7,6,10,11,13,13,13,13,13,11,9,8,10,12,12,15,15,16,15,12,11,10,10,12,0,0,0,0,4,0,0,0,81,0,0,0,56,253,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,144,253,2,0,0,0,0,0,4,0,0,0,113,2,0,0,168,250,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,32,253,2,0,0,0,0,0,2,0,0,0,81,0,0,0,40,250,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,250,2,0,0,0,0,0,2,0,0,0,33,1,0,0,184,248,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,249,2,0,0,0,0,0,4,0,0,0,81,0,0,0,80,248,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,168,248,2,0,0,0,0,0,2,0,0,0,121,0,0,0,160,247,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,32,248,2,0,0,0,0,0,2,0,0,0,169,0,0,0,184,246,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,104,247,2,0,0,0,0,0,2,0,0,0,25,0,0,0,128,246,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,246,2,0,0,0,0,0,2,0,0,0,169,0,0,0,152,245,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,72,246,2,0,0,0,0,0,2,0,0,0,121,0,0,0,232,244,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,104,245,2,0,0,0,0,0,2,0,0,0,225,0,0,0,192,243,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,168,244,2,0,0,0,0,0,2,0,0,0,185,1,0,0,168,241,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,104,243,2,0,0,0,0,0,2,0,0,0,169,0,0,0,192,240,2,0,1,0,0,0,0,220,125,225,0,232,51,97,4,0,0,0,0,0,0,0,112,241,2,0,0,0,0,0,2,0,0,0,169,0,0,0,216,239,2,0,1,0,0,0,0,96,18,225,0,128,184,96,4,0,0,0,0,0,0,0,136,240,2,0,0,0,0,0,1,0,0,0,49,0,0,0,216,238,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,16,239,2,0,0,0,0,0,2,4,3,4,5,5,5,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,6,8,8,8,8,6,6,6,8,8,8,8,8,7,9,8,10,10,5,6,6,8,8,9,9,8,8,10,10,10,10,16,9,9,9,9,9,9,9,8,10,9,11,11,16,8,9,9,9,9,9,9,9,10,10,11,11,16,13,13,9,9,10,9,9,10,11,11,11,12,16,13,14,9,8,10,8,9,9,10,10,12,11,16,14,16,9,9,9,9,11,11,12,11,12,11,16,16,16,9,7,9,6,11,11,11,10,11,11,16,16,16,11,12,9,10,11,11,12,11,13,13,16,16,16,12,11,10,7,12,10,12,12,12,12,16,16,15,16,16,10,11,10,11,13,13,14,12,16,16,16,15,15,12,10,11,11,13,11,12,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,11,11,11,11,11,11,11,11,11,11,4,7,7,11,11,11,11,11,11,11,11,11,11,5,8,9,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,6,6,7,7,7,7,8,7,8,8,8,8,8,8,8,8,8,8,10,6,6,7,7,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,8,8,9,8,9,9,9,9,9,9,9,9,10,7,7,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,10,11,11,8,7,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,9,11,11,11,11,11,9,9,9,9,9,9,10,9,9,10,9,10,9,9,10,9,11,11,11,11,11,9,9,9,9,9,9,9,10,10,10,10,9,10,10,9,10,11,11,11,11,11,9,9,9,9,10,10,10,9,10,10,10,10,9,10,10,9,11,11,11,11,11,11,11,9,9,9,9,10,10,10,10,9,10,10,10,10,10,11,11,11,11,11,11,11,10,9,10,10,10,10,10,10,10,9,10,9,10,10,11,11,11,11,11,11,11,10,9,10,9,10,10,9,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,9,10,10,10,10,10,9,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,9,10,10,11,11,11,11,11,11,11,11,11,10,10,10,9,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,10,11,9,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,7,7,8,7,9,8,10,9,6,5,5,8,8,9,9,8,8,9,9,11,10,11,10,6,5,5,8,8,9,9,8,8,9,9,10,10,11,11,18,8,8,9,8,10,10,9,9,10,10,10,10,11,10,18,8,8,9,9,10,10,9,9,10,10,11,11,12,12,18,12,13,9,10,10,10,9,10,10,10,11,11,12,11,18,13,13,9,9,10,10,10,10,10,10,11,11,12,12,18,18,18,10,10,9,9,11,11,11,11,11,12,12,12,18,18,18,10,9,10,9,11,10,11,11,11,11,13,12,18,18,18,14,13,10,10,11,11,12,12,12,12,12,12,18,18,18,14,13,10,10,11,10,12,12,12,12,12,12,18,18,18,18,18,12,12,11,11,12,12,13,13,13,14,18,18,18,18,18,12,12,11,11,12,11,13,13,14,13,18,18,18,18,18,16,16,11,12,12,13,13,13,14,13,18,18,18,18,18,16,15,12,11,12,11,13,11,15,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,3,5,5,6,6,7,7,7,7,7,7,9,5,5,6,6,7,7,7,7,8,7,8,5,5,6,6,7,7,7,7,7,7,9,6,6,7,7,7,7,8,7,7,8,9,9,9,7,7,7,7,7,7,7,8,9,9,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,7,7,8,8,9,9,9,8,8,8,8,7,7,8,8,9,9,9,9,8,8,8,7,7,8,8,9,9,9,8,8,8,8,7,7,8,8,9,9,9,8,8,7,7,7,7,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,8,8,10,10,11,10,6,5,5,7,7,8,8,9,9,10,10,12,11,6,5,5,7,7,8,8,9,9,10,10,12,11,21,7,7,7,7,9,9,10,10,11,11,12,12,21,7,7,7,7,9,9,10,10,11,11,12,12,21,12,12,9,9,10,10,11,11,11,11,12,12,21,12,12,9,9,10,10,11,11,12,12,12,12,21,21,21,11,11,10,10,11,12,12,12,13,13,21,21,21,11,11,10,10,12,12,12,12,13,13,21,21,21,15,15,11,11,12,12,13,13,13,13,21,21,21,15,16,11,11,12,12,13,13,14,14,21,21,21,21,20,13,13,13,13,13,13,14,14,20,20,20,20,20,13,13,13,13,13,13,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,4,4,5,5,5,4,4,5,5,5,4,4,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,8,8,10,9,10,10,6,5,5,7,7,9,9,9,9,10,10,11,11,6,5,5,7,7,9,9,10,9,11,10,11,11,0,6,6,7,7,9,9,10,10,11,11,12,12,0,7,7,7,7,9,9,10,10,11,11,12,12,0,11,11,8,8,10,10,11,11,12,12,12,12,0,11,12,9,8,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,4,6,6,7,7,8,8,8,8,11,4,4,6,6,7,7,8,8,8,8,11,4,4,6,6,7,7,8,8,8,8,11,6,6,6,6,8,8,8,8,9,9,11,11,11,6,6,7,8,8,8,8,9,11,11,11,7,7,8,8,8,8,8,8,11,11,11,7,7,8,8,8,8,8,8,11,11,11,8,8,8,8,8,8,8,8,11,11,11,10,10,8,8,8,8,8,8,11,11,11,10,10,8,8,8,8,8,8,11,11,11,10,10,7,7,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,6,6,9,9,10,10,10,9,4,6,6,9,10,9,10,9,10,6,9,9,10,12,11,10,11,11,7,10,9,11,12,12,12,12,12,7,10,10,11,12,12,12,12,12,6,10,10,10,12,12,11,12,12,7,9,10,11,12,12,12,12,12,7,10,9,12,12,12,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,9,9,9,10,10,10,0,4,4,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,4,4,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,7,7,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,3,4,6,6,7,7,9,9,0,4,4,6,6,7,7,9,10,0,4,4,6,6,7,7,10,9,0,5,5,7,7,8,8,10,10,0,0,0,7,6,8,8,10,10,0,0,0,7,7,9,9,11,11,0,0,0,7,7,9,9,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,0,5,5,8,8,0,5,5,8,8,0,7,7,9,9,0,0,0,9,9,5,7,7,9,9,0,8,8,10,10,0,8,7,10,9,0,10,10,11,11,0,0,0,11,11,5,7,7,9,9,0,8,8,10,10,0,7,8,9,10,0,10,10,11,11,0,0,0,11,11,8,9,9,11,11,0,11,11,12,12,0,11,10,12,12,0,13,14,14,14,0,0,0,14,13,8,9,9,11,11,0,11,11,12,12,0,10,11,12,12,0,14,13,14,14,0,0,0,13,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,11,10,0,7,7,10,10,0,7,7,10,10,0,9,9,11,10,0,0,0,11,11,5,7,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,11,11,8,10,9,12,12,0,10,10,12,12,0,10,10,12,12,0,12,12,13,13,0,0,0,13,13,8,9,10,12,12,0,10,10,11,12,0,10,10,12,12,0,12,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,11,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,11,10,5,8,8,11,11,0,7,7,10,10,0,7,7,10,10,0,9,9,11,11,0,0,0,10,11,8,10,10,12,12,0,10,10,12,12,0,10,10,12,12,0,12,13,13,13,0,0,0,14,13,8,10,10,12,12,0,10,10,12,12,0,10,10,12,12,0,13,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,14,13,0,9,9,13,12,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,7,10,10,13,14,0,9,9,12,13,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,9,11,11,14,13,0,11,10,14,13,0,11,11,13,13,0,12,12,13,13,0,0,0,13,13,9,11,11,13,14,0,10,11,13,14,0,11,11,13,13,0,12,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,11,11,14,14,0,11,11,13,13,0,11,10,13,13,0,12,12,13,13],"i8",L3,x.GLOBAL_BASE+185588),d3([13,13,9,11,11,14,14,0,11,11,13,13,0,10,11,13,13,0,12,12,14,13,0,0,0,13,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,5,5,0,5,5,5,8,7,0,9,9,0,9,8,5,7,8,0,9,9,0,8,9,0,0,0,0,0,0,0,0,0,5,9,8,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,0,0,5,9,9,0,8,8,0,8,8,5,9,9,0,8,8,0,8,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,9,11,11,13,14,19,17,17,19,5,4,5,8,10,10,13,16,18,19,7,4,4,5,8,9,12,14,17,19,8,6,5,5,7,7,10,13,16,18,10,8,7,6,5,5,8,11,17,19,11,9,7,7,5,4,5,8,17,19,13,11,8,7,7,5,5,7,16,18,14,13,8,6,6,5,5,7,16,18,18,16,10,8,8,7,7,9,16,18,18,18,12,10,10,9,9,10,17,18,0,0,0,0,2,0,0,0,100,0,0,0,184,41,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,168,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,208,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,248,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,72,0,3,0,0,0,0,0,112,0,3,0,152,0,3,0,0,0,0,0,0,0,0,0,192,0,3,0,232,0,3,0,0,0,0,0,0,0,0,0,16,1,3,0,56,1,3,0,96,1,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,24,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,9,13,10,12,12,12,12,12,6,4,6,8,6,8,10,10,11,12,8,5,4,10,4,7,8,9,10,11,13,8,10,8,9,9,11,12,13,14,10,6,4,9,3,5,6,8,10,11,11,8,6,9,5,5,6,7,9,11,12,9,7,11,6,6,6,7,8,10,12,11,9,12,7,7,6,6,7,9,13,12,10,13,9,8,7,7,7,8,11,15,11,15,11,10,9,8,7,7,0,0,0,0,8,0,0,0,161,25,0,0,0,16,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,41,3,0,0,0,0,0,4,0,0,0,113,2,0,0,112,13,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,15,3,0,0,0,0,0,4,0,0,0,113,2,0,0,224,10,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,13,3,0,0,0,0,0,2,0,0,0,81,0,0,0,96,10,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,184,10,3,0,0,0,0,0,2,0,0,0,81,0,0,0,224,9,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,56,10,3,0,0,0,0,0,2,0,0,0,33,1,0,0,112,8,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,152,9,3,0,0,0,0,0,4,0,0,0,81,0,0,0,8,8,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,96,8,3,0,0,0,0,0,2,0,0,0,121,0,0,0,88,7,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,216,7,3,0,0,0,0,0,2,0,0,0,169,0,0,0,112,6,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,32,7,3,0,0,0,0,0,2,0,0,0,25,0,0,0,56,6,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,6,3,0,0,0,0,0,2,0,0,0,225,0,0,0,16,5,3,0,1,0,0,0,0,134,115,225,0,80,22,97,4,0,0,0,0,0,0,0,248,5,3,0,0,0,0,0,2,0,0,0,33,1,0,0,160,3,3,0,1,0,0,0,0,0,245,224,0,0,149,96,5,0,0,0,0,0,0,0,200,4,3,0,0,0,0,0,2,0,0,0,185,1,0,0,136,1,3,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,72,3,3,0,0,0,0,0,3,5,5,6,6,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,9,11,5,6,7,7,8,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,11,5,5,7,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,11,7,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,10,9,10,11,11,11,7,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,5,5,7,7,9,8,10,9,10,10,11,10,11,11,6,5,5,7,7,8,9,10,10,11,10,12,11,12,11,13,12,6,5,5,7,7,9,9,10,10,11,11,12,12,13,12,13,13,18,8,8,8,8,9,9,10,11,11,11,12,11,13,11,13,12,18,8,8,8,8,10,10,11,11,12,12,13,13,13,13,13,14,18,12,12,9,9,11,11,11,11,12,12,13,12,13,12,13,13,20,13,12,9,9,11,11,11,11,12,12,13,13,13,14,14,13,20,18,19,11,12,11,11,12,12,13,13,13,13,13,13,14,13,18,19,19,12,11,11,11,12,12,13,12,13,13,13,14,14,13,18,17,19,14,15,12,12,12,13,13,13,14,14,14,14,14,14,19,19,19,16,15,12,11,13,12,14,14,14,13,13,14,14,14,19,18,19,18,19,13,13,13,13,14,14,14,13,14,14,14,14,18,17,19,19,19,13,13,13,11,13,11,13,14,14,14,14,14,19,17,17,18,18,16,16,13,13,13,13,14,13,15,15,14,14,19,19,17,17,18,16,16,13,11,14,10,13,12,14,14,14,14,19,19,19,19,19,18,17,13,14,13,11,14,13,14,14,15,15,19,19,19,17,19,18,18,14,13,12,11,14,11,15,15,15,15,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,13,13,13,13,13,13,13,13,13,13,13,13,4,7,7,13,13,13,13,13,13,13,13,13,13,13,13,3,8,6,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,4,4,5,5,6,5,5,5,5,6,4,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,8,9,10,10,10,10,7,5,5,7,7,8,8,9,9,10,10,10,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,10,10,10,10,10,11,11,0,13,13,9,9,9,9,10,10,11,11,11,11,0,0,0,10,10,10,10,10,10,11,11,11,11,0,0,0,10,10,10,10,10,10,11,11,12,12,0,0,0,14,14,11,11,11,11,12,12,12,12,0,0,0,14,14,11,11,11,11,12,12,12,12,0,0,0,0,0,12,12,12,12,12,12,13,13,0,0,0,0,0,12,12,12,12,12,12,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,6,6,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,9,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,11,11,10,11,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,7,11,11,12,11,11,12,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,4,4,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,4,4,6,6,8,8,9,9,9,9,10,10,11,11,12,12,0,4,4,6,6,8,8,9,9,9,9,10,10,11,11,12,12,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,7,7,8,9,10,10,10,10,11,11,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,9,10,10,10,11,11,12,12,12,12,0,0,0,0,0,10,10,10,10,11,11,11,12,12,12,13,13,0,0,0,0,0,0,0,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,13,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,12,12,12,12,13,12,13,13,13,13,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,3,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,6,6,7,7,7,7,9,9,0,0,0,7,6,7,7,9,9,0,0,0,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,9,9,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,5,5,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,7,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,3,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,5,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,5,5,0,0,0,5,5,0,0,0,8,7,0,0,0,0,0,0,0,4,6,6,0,0,0,8,8,0,0,0,8,7,0,0,0,10,10,0,0,0,0,0,0,0,4,6,6,0,0,0,8,8,0,0,0,7,8,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,5,7,8,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,5,8,8,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,10,10,0,0,0,10,10,0,0,0,9,10,0,0,0,11,10,0,0,0,0,0,0,0,8,10,10,0,0,0,10,10,0,0,0,10,10,0,0,0,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,4,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,11,10],"i8",L3,x.GLOBAL_BASE+195830),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,8,10,14,11,11,12,16,15,17,5,5,7,9,7,8,10,13,17,17,7,5,5,10,5,7,8,11,13,15,10,8,10,8,8,8,11,15,18,18,8,5,5,8,3,4,6,10,14,16,9,7,6,7,4,3,5,9,14,18,10,9,8,10,6,5,6,9,14,18,12,12,11,12,8,7,8,11,14,18,14,13,12,10,7,5,6,9,14,18,14,14,13,10,6,5,6,8,11,16,0,0,0,0,2,0,0,0,100,0,0,0,72,85,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,43,3,0,0,0,0,0,0,0,0,0,0,0,0,0,192,43,3,0,0,0,0,0,0,0,0,0,0,0,0,0,232,43,3,0,0,0,0,0,0,0,0,0,0,0,0,0,16,44,3,0,0,0,0,0,0,0,0,0,0,0,0,0,56,44,3,0,0,0,0,0,0,0,0,0,0,0,0,0,96,44,3,0,0,0,0,0,136,44,3,0,176,44,3,0,0,0,0,0,0,0,0,0,216,44,3,0,0,45,3,0,0,0,0,0,0,0,0,0,40,45,3,0,80,45,3,0,120,45,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,48,43,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,11,11,11,11,10,11,12,11,5,2,11,5,6,6,7,9,11,12,11,9,6,10,6,7,8,9,10,11,11,5,11,7,8,8,9,11,13,14,11,6,5,8,4,5,7,8,10,11,10,6,7,7,5,5,6,8,9,11,10,7,8,9,6,6,6,7,8,9,11,9,9,11,7,7,6,6,7,9,12,12,10,13,9,8,7,7,7,8,11,13,11,14,11,10,9,8,7,7,0,0,0,0,8,0,0,0,161,25,0,0,144,59,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,56,85,3,0,0,0,0,0,4,0,0,0,113,2,0,0,0,57,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,59,3,0,0,0,0,0,4,0,0,0,113,2,0,0,112,54,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,56,3,0,0,0,0,0,2,0,0,0,81,0,0,0,240,53,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,72,54,3,0,0,0,0,0,2,0,0,0,81,0,0,0,112,53,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,200,53,3,0,0,0,0,0,2,0,0,0,33,1,0,0,0,52,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,40,53,3,0,0,0,0,0,4,0,0,0,81,0,0,0,152,51,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,240,51,3,0,0,0,0,0,2,0,0,0,121,0,0,0,232,50,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,104,51,3,0,0,0,0,0,2,0,0,0,169,0,0,0,0,50,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,176,50,3,0,0,0,0,0,2,0,0,0,25,0,0,0,200,49,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,49,3,0,0,0,0,0,2,0,0,0,169,0,0,0,224,48,3,0,1,0,0,0,0,136,93,225,0,176,19,97,4,0,0,0,0,0,0,0,144,49,3,0,0,0,0,0,2,0,0,0,225,0,0,0,184,47,3,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,160,48,3,0,0,0,0,0,2,0,0,0,185,1,0,0,160,45,3,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,96,47,3,0,0,0,0,0,2,5,5,6,6,7,7,7,7,8,8,8,8,8,8,8,8,9,9,9,9,11,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,10,11,6,6,7,7,8,8,8,8,9,9,9,9,9,9,10,9,10,10,10,10,11,7,7,7,7,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,12,11,11,7,7,8,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,12,11,12,8,8,8,8,9,9,9,9,9,10,10,10,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,12,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,12,11,11,11,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,12,12,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,12,11,12,11,11,11,9,10,10,10,10,10,10,10,10,10,10,10,10,10,11,12,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,12,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,12,11,11,12,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,12,12,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,12,12,12,11,11,11,12,11,11,11,10,10,10,10,10,10,10,10,10,10,10,12,11,12,12,12,12,12,11,12,11,11,10,10,10,10,10,10,10,10,10,10,12,12,12,12,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,5,5,7,7,9,8,10,9,10,10,10,10,6,5,5,7,7,9,8,10,9,11,10,12,12,13,13,6,5,5,7,7,9,9,10,10,11,11,12,12,12,13,19,8,8,8,8,9,9,10,10,12,11,12,12,13,13,19,8,8,8,8,9,9,11,11,12,12,13,13,13,13,19,12,12,9,9,11,11,11,11,12,11,13,12,13,13,18,12,12,9,9,11,10,11,11,12,12,12,13,13,14,19,18,18,11,11,11,11,12,12,13,12,13,13,14,14,16,18,18,11,11,11,10,12,11,13,13,13,13,13,14,17,18,18,14,15,11,12,12,13,13,13,13,14,14,14,18,18,18,15,15,12,10,13,10,13,13,13,13,13,14,18,17,18,17,18,12,13,12,13,13,13,14,14,16,14,18,17,18,18,17,13,12,13,10,12,12,14,14,14,14,17,18,18,18,18,14,15,12,12,13,12,14,14,15,15,18,18,18,17,18,15,14,12,11,12,12,14,14,14,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,3,12,12,12,12,12,12,12,12,12,12,4,7,7,12,12,12,12,12,12,12,12,12,12,3,8,8,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,5,6,5,5,5,5,6,5,4,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,8,8,9,10,11,11,7,5,5,7,7,8,8,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,9,10,10,10,10,11,11,0,13,13,9,9,10,9,10,10,11,11,11,12,0,0,0,10,10,10,10,10,10,11,11,12,12,0,0,0,10,10,10,10,10,10,11,11,12,12,0,0,0,14,14,11,11,11,11,12,12,12,12,0,0,0,14,14,11,11,11,11,12,12,12,13,0,0,0,0,0,12,12,12,12,12,12,13,13,0,0,0,0,0,13,12,12,12,12,12,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,6,6,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,9,8,10,10,10,10,10,8,8,8,8,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,11,11,10,11,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,7,11,11,12,11,11,12,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,4,4,6,6,8,8,9,9,8,8,9,9,10,10,11,11,0,4,4,6,6,8,8,9,9,9,9,10,10,11,11,11,11,0,4,4,7,6,8,8,9,9,9,9,10,10,11,11,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,9,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,9,9,10,10,11,11,11,12,12,12,0,0,0,0,0,10,10,10,10,11,11,11,11,12,12,13,12,0,0,0,0,0,0,0,10,10,11,11,11,11,12,12,12,12,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,12,12,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,0,0,12,12,12,12,12,13,13,13,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,3,3,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,4,5,6,6,7,7,9,9,0,6,6,7,7,8,8,10,10,0,0,0,7,7,8,8,10,9,0,0,0,9,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,10,10,9,9,11,11,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,5,5,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,8,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,0,0,0,5,5,0,0,0,5,5,0,0,0,7,7,0,0,0,0,0,0,0,5,6,6,0,0,0,7,7,0,0,0,7,7,0,0,0,10,10,0,0,0,0,0,0,0,5,6,6,0,0,0,7,7,0,0,0,7,7,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,5,7,8,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,9,9,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,8,10,10,0,0,0,9,9,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,5,6,6,0,0,0,0,0,0,5,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,6,8,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9],"i8",L3,x.GLOBAL_BASE+207264),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,14,10,15,10,12,15,16,15,4,2,11,5,10,6,8,11,14,14,14,10,7,11,6,8,10,11,13,15,9,4,11,5,9,6,9,12,14,15,14,9,6,9,4,5,7,10,12,13,9,5,7,6,5,5,7,10,13,13,10,8,9,8,7,6,8,10,14,14,13,11,10,10,7,7,8,11,14,15,13,12,9,9,6,5,7,10,14,17,15,13,11,10,6,6,7,9,12,17,0,0,0,0,2,0,0,0,100,0,0,0,48,128,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,80,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,120,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,160,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,200,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,240,87,3,0,0,0,0,0,24,88,3,0,64,88,3,0,0,0,0,0,0,0,0,0,104,88,3,0,144,88,3,0,0,0,0,0,0,0,0,0,184,88,3,0,224,88,3,0,8,89,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,192,86,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,11,11,11,11,10,10,12,11,5,2,11,5,6,6,7,9,11,13,13,10,7,11,6,7,8,9,10,12,11,5,11,6,8,7,9,11,14,15,11,6,6,8,4,5,7,8,10,13,10,5,7,7,5,5,6,8,10,11,10,7,7,8,6,5,5,7,9,9,11,8,8,11,8,7,6,6,7,9,12,11,10,13,9,9,7,7,7,9,11,13,12,15,12,11,9,8,8,8,0,0,0,0,8,0,0,0,161,25,0,0,120,102,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,32,128,3,0,0,0,0,0,4,0,0,0,113,2,0,0,232,99,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,96,102,3,0,0,0,0,0,4,0,0,0,113,2,0,0,88,97,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,99,3,0,0,0,0,0,2,0,0,0,81,0,0,0,216,96,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,48,97,3,0,0,0,0,0,2,0,0,0,81,0,0,0,88,96,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,176,96,3,0,0,0,0,0,2,0,0,0,33,1,0,0,232,94,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,16,96,3,0,0,0,0,0,4,0,0,0,81,0,0,0,128,94,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,216,94,3,0,0,0,0,0,2,0,0,0,121,0,0,0,208,93,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,80,94,3,0,0,0,0,0,2,0,0,0,169,0,0,0,232,92,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,152,93,3,0,0,0,0,0,2,0,0,0,25,0,0,0,176,92,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,92,3,0,0,0,0,0,2,0,0,0,169,0,0,0,200,91,3,0,1,0,0,0,0,232,87,225,0,224,255,96,4,0,0,0,0,0,0,0,120,92,3,0,0,0,0,0,2,0,0,0,225,0,0,0,160,90,3,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,136,91,3,0,0,0,0,0,2,0,0,0,33,1,0,0,48,89,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,88,90,3,0,0,0,0,0,2,5,5,6,6,7,7,7,7,7,7,8,8,8,8,8,8,10,6,6,7,7,8,7,8,8,8,8,8,9,9,9,9,9,10,6,6,7,7,7,7,8,8,8,8,9,9,9,9,9,9,10,7,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,8,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,8,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,10,11,11,11,9,9,9,9,9,9,10,10,9,9,10,9,11,10,11,11,11,9,9,9,9,9,9,9,9,10,10,10,9,11,11,11,11,11,9,9,9,9,10,10,9,9,9,9,10,9,11,11,11,11,11,11,11,9,9,9,9,9,9,10,10,10,10,11,11,11,11,11,11,11,10,9,10,10,9,10,9,9,10,9,11,10,10,11,11,11,11,9,10,9,9,9,9,10,10,10,10,11,11,11,11,11,11,10,10,10,9,9,10,9,10,9,10,10,10,10,11,11,11,11,11,11,11,9,9,9,9,9,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,7,9,9,10,10,10,10,6,5,5,7,7,8,8,10,8,11,10,12,12,13,13,6,5,5,7,7,8,8,10,9,11,11,12,12,13,12,18,8,8,8,8,9,9,10,9,11,10,12,12,13,13,18,8,8,8,8,9,9,10,10,11,11,13,12,14,13,18,11,11,9,9,10,10,11,11,11,12,13,12,13,14,18,11,11,9,8,11,10,11,11,11,11,12,12,14,13,18,18,18,10,11,10,11,12,12,12,12,13,12,14,13,18,18,18,10,11,11,9,12,11,12,12,12,13,13,13,18,18,17,14,14,11,11,12,12,13,12,14,12,14,13,18,18,18,14,14,11,10,12,9,12,13,13,13,13,13,18,18,17,16,18,13,13,12,12,13,11,14,12,14,14,17,18,18,17,18,13,12,13,10,12,11,14,14,14,14,17,18,18,18,18,15,16,12,12,13,10,14,12,14,15,18,18,18,16,17,16,14,12,11,13,10,13,13,14,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,4,4,12,12,12,12,12,12,12,12,12,12,4,9,8,12,12,12,12,12,12,12,12,12,12,2,9,7,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,5,6,5,5,5,5,6,4,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,8,8,9,9,10,10,7,5,5,7,7,8,8,8,8,9,9,11,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,12,0,13,13,9,9,10,10,10,10,11,11,12,12,0,0,0,10,10,10,10,11,11,12,12,12,12,0,0,0,10,10,10,10,11,11,12,12,12,12,0,0,0,14,14,11,11,11,11,12,12,13,13,0,0,0,14,14,11,11,11,11,12,12,13,13,0,0,0,0,0,12,12,12,12,13,13,14,13,0,0,0,0,0,13,13,12,12,13,12,14,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,6,6,7,7,8,8,8,8,8,8,10,10,10,7,7,8,7,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,7,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,9,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,11,11,10,12,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,7,11,11,11,11,11,12,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,6,6,7,7,8,8,8,8,9,9,10,10,11,10,0,5,5,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,5,5,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,10,11,11,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,8,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,8,8,9,9,10,10,11,11,12,11,12,12,0,0,0,0,0,9,10,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,0,0,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,4,6,6,7,7,9,9,0,5,5,7,7,7,8,9,9,0,5,5,7,7,8,8,9,9,0,7,7,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,9,9,9,9,10,10,0,0,0,9,9,9,9,10,10,0,0,0,10,10,10,10,11,11,0,0,0,0,0,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,5,5,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,8,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,3,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,0,0,0,5,5,0,0,0,5,5,0,0,0,7,8,0,0,0,0,0,0,0,5,6,6,0,0,0,7,7,0,0,0,7,7,0,0,0,10,10,0,0,0,0,0,0,0,5,6,6,0,0,0,7,7,0,0,0,7,7,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,10,10,0,0,0,9,9,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,8,10,10,0,0,0,9,9,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,5,6,6,0,0,0,0,0,0,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,6,7,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,6,8,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,8,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,8],"i8",L3,x.GLOBAL_BASE+218416),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,10,9,13,11,14,10,12,13,13,14,7,2,12,5,10,5,7,10,12,14,12,6,9,8,7,7,9,11,13,16,10,4,12,5,10,6,8,12,14,16,12,6,8,7,6,5,7,11,12,16,10,4,8,5,6,4,6,9,13,16,10,6,10,7,7,6,7,9,13,15,12,9,11,9,8,6,7,10,12,14,14,11,10,9,6,5,6,9,11,13,15,13,11,10,6,5,6,8,9,11,0,0,0,0,2,0,0,0,100,0,0,0,216,170,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,56,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,96,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,136,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,176,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,216,130,3,0,0,0,0,0,0,131,3,0,40,131,3,0,0,0,0,0,0,0,0,0,80,131,3,0,120,131,3,0,0,0,0,0,0,0,0,0,160,131,3,0,200,131,3,0,240,131,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,168,129,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,12,10,10,10,9,10,12,12,6,1,10,5,6,6,7,9,11,14,12,9,8,11,7,8,9,11,13,15,10,5,12,7,8,7,9,12,14,15,10,6,7,8,5,6,7,9,12,14,9,6,8,7,6,6,7,9,12,12,9,7,9,9,7,6,6,7,10,10,10,9,10,11,8,7,6,6,8,10,12,11,13,13,11,10,8,8,8,10,11,13,15,15,14,13,10,8,8,9,0,0,0,0,8,0,0,0,161,25,0,0,32,145,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,200,170,3,0,0,0,0,0,4,0,0,0,113,2,0,0,144,142,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,8,145,3,0,0,0,0,0,4,0,0,0,113,2,0,0,0,140,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,142,3,0,0,0,0,0,2,0,0,0,81,0,0,0,128,139,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,216,139,3,0,0,0,0,0,2,0,0,0,81,0,0,0,0,139,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,88,139,3,0,0,0,0,0,2,0,0,0,33,1,0,0,144,137,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,184,138,3,0,0,0,0,0,4,0,0,0,81,0,0,0,40,137,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,128,137,3,0,0,0,0,0,2,0,0,0,121,0,0,0,120,136,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,248,136,3,0,0,0,0,0,2,0,0,0,169,0,0,0,144,135,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,64,136,3,0,0,0,0,0,2,0,0,0,25,0,0,0,88,135,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,135,3,0,0,0,0,0,2,0,0,0,169,0,0,0,112,134,3,0,1,0,0,0,0,184,84,225,0,160,251,96,4,0,0,0,0,0,0,0,32,135,3,0,0,0,0,0,2,0,0,0,169,0,0,0,136,133,3,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,56,134,3,0,0,0,0,0,2,0,0,0,33,1,0,0,24,132,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,64,133,3,0,0,0,0,0,2,4,4,6,6,7,7,7,7,7,7,8,8,8,8,8,8,10,7,7,7,7,7,7,8,8,8,8,9,9,9,9,9,9,10,7,7,7,7,8,8,8,8,8,8,9,9,9,9,9,9,10,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,8,7,8,8,8,8,9,9,9,9,9,9,9,9,10,11,11,8,8,8,8,9,9,9,9,9,9,10,9,9,9,10,11,10,8,8,8,8,9,9,9,9,9,9,9,10,10,10,10,11,10,8,8,9,9,9,9,9,9,10,9,9,10,9,10,11,10,11,11,11,8,8,9,9,9,9,9,9,9,9,10,10,11,11,11,11,11,9,9,9,9,9,9,10,9,9,9,10,10,11,11,11,11,11,9,9,9,9,9,9,9,9,9,10,9,10,11,11,11,11,11,9,9,9,9,10,10,9,9,9,10,10,10,11,11,11,11,11,11,11,9,9,9,10,9,9,10,10,10,10,11,11,10,11,11,11,11,10,9,10,10,9,9,9,9,10,10,11,10,11,11,11,11,11,9,9,9,9,10,9,10,10,10,10,11,10,11,11,11,11,11,10,10,9,9,10,9,10,10,10,10,10,10,10,11,11,11,11,11,11,9,9,10,9,10,9,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,6,8,8,10,9,10,10,6,5,5,7,7,8,7,10,9,11,11,12,13,6,5,5,7,7,8,8,10,10,11,11,13,13,18,8,8,8,8,9,9,10,10,12,12,12,13,18,8,8,8,8,9,9,10,10,12,12,13,13,18,11,11,8,8,10,10,11,11,12,11,13,12,18,11,11,9,7,10,10,11,11,11,12,12,13,17,17,17,10,10,11,11,12,12,12,10,12,12,17,17,17,11,10,11,10,13,12,11,12,12,12,17,17,17,15,14,11,11,12,11,13,10,13,12,17,17,17,14,14,12,10,11,11,13,13,13,13,17,17,16,17,16,13,13,12,10,13,10,14,13,17,16,17,16,17,13,12,12,10,13,11,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,5,4,12,12,12,12,12,12,12,12,12,12,4,9,8,11,11,11,11,11,11,11,11,11,11,2,8,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,4,6,5,5,5,5,6,5,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,6,5,5,7,7,8,8,8,8,9,9,10,10,7,6,5,7,7,8,8,8,8,9,9,10,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,11,0,13,13,9,9,10,10,10,10,11,11,12,12,0,0,0,10,10,10,10,11,11,12,12,12,13,0,0,0,10,10,10,10,11,11,12,12,12,12,0,0,0,14,14,10,11,11,11,12,12,13,13,0,0,0,14,14,11,10,11,11,13,12,13,13,0,0,0,0,0,12,12,11,12,13,12,14,14,0,0,0,0,0,12,12,12,12,13,12,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,4,6,6,7,7,7,7,7,7,9,7,7,6,6,7,7,8,8,8,8,9,6,6,6,6,7,7,8,8,8,8,10,7,7,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,10,9,9,7,10,10,11,10,11,11,10,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,10,11,11,11,12,11,11,6,9,9,11,10,10,11,11,10,6,9,9,11,10,10,12,10,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,6,6,8,8,9,9,9,9,9,9,10,10,11,11,0,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,11,0,7,7,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,8,8,7,7,9,9,10,10,9,9,10,10,11,11,12,12,0,0,0,7,7,9,9,10,10,10,9,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,10,10,10,10,11,11,12,12,13,12,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,7,7,9,9,0,7,7,7,7,7,7,9,9,0,7,7,7,7,7,7,9,9,0,8,8,7,7,8,8,10,10,0,0,0,7,7,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,10,10,9,9,11,11,0,0,0,0,0,9,9,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,3,6,6,0,0,0,0,0,6,6,6,6,0,0,0,0,0,6,6,6,6,0,0,0,0,0,7,7,6,6,0,0,0,0,0,0,0,6,7,0,0,0,0,0,0,0,7,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,3,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,0,0,0,7,7,0,0,0,7,7,0,0,0,8,8,0,0,0,0,0,0,0,4,6,6,0,0,0,8,8,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,4,6,6,0,0,0,8,8,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,11,11,0,0,0,11,11,0,0,0,12,11,0,0,0,0,0,0,0,7,8,8,0,0,0,10,11,0,0,0,11,11,0,0,0,11,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,11,11,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,6,8,8,0,0,0,10,11,0,0,0,10,11,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,9,0,0,0,11,12,0,0,0,11,12,0,0,0,12,11,0,0,0,0,0,0,0,8,10,9,0,0,0,12,11,0,0,0,12,11,0,0,0,11,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,5,6,6,0,0,0,0,0,0,5,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,6,8,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9],"i8",L3,x.GLOBAL_BASE+229400),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,11,9,13,12,12,11,12,12,13,15,8,2,11,4,8,5,7,10,12,15,13,7,10,9,8,8,10,13,17,17,11,4,12,5,9,5,8,11,14,16,12,6,8,7,6,6,8,11,13,16,11,4,9,5,6,4,6,10,13,16,11,6,11,7,7,6,7,10,13,15,13,9,12,9,8,6,8,10,12,14,14,10,10,8,6,5,6,9,11,13,15,11,11,9,6,5,6,8,9,12,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,9,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+240320),d3([1,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,231,3,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,160,5,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,72,5,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,223,3,0,0,0,0,0,0,0,0,0,0,0,0,0,96,223,3,0,0,0,0,0,0,0,0,0,0,0,0,0,136,223,3,0,0,0,0,0,0,0,0,0,0,0,0,0,176,223,3,0,0,0,0,0,0,0,0,0,0,0,0,0,216,223,3,0,0,0,0,0,0,224,3,0,40,224,3,0,0,0,0,0,0,0,0,0,80,224,3,0,120,224,3,0,0,0,0,0,0,0,0,0,160,224,3,0,200,224,3,0,240,224,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,80,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,120,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,160,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,200,185,3,0,0,0,0,0,240,185,3,0,24,186,3,0,0,0,0,0,0,0,0,0,64,186,3,0,104,186,3,0,0,0,0,0,0,0,0,0,144,186,3,0,184,186,3,0,224,186,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,208,184,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,120,184,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,4,8,10,9,9,10,11,12,4,2,5,6,6,8,10,11,13,8,4,6,8,7,9,12,12,14,10,6,8,4,5,6,9,11,12,9,5,6,5,5,6,9,11,11,9,7,9,6,5,5,7,10,10,10,9,11,8,7,6,7,9,11,11,12,13,10,10,9,8,9,11,11,15,15,12,13,11,9,10,11,0,0,0,0,0,0,0,5,5,9,10,9,9,10,11,12,5,1,5,6,6,7,10,12,14,9,5,6,8,8,10,12,14,14,10,5,8,5,6,8,11,13,14,9,5,7,6,6,8,10,12,11,9,7,9,7,6,6,7,10,10,10,9,12,9,8,7,7,10,12,11,11,13,12,10,9,8,9,11,11,14,15,15,13,11,9,9,11,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,128,197,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,40,223,3,0,0,0,0,0,4,0,0,0,113,2,0,0,240,194,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,104,197,3,0,0,0,0,0,2,0,0,0,81,0,0,0,112,194,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,200,194,3,0,0,0,0,0,2,0,0,0,81,0,0,0,240,193,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,72,194,3,0,0,0,0,0,2,0,0,0,33,1,0,0,128,192,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,168,193,3,0,0,0,0,0,4,0,0,0,81,0,0,0,24,192,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,112,192,3,0,0,0,0,0,2,0,0,0,121,0,0,0,104,191,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,232,191,3,0,0,0,0,0,2,0,0,0,169,0,0,0,128,190,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,48,191,3,0,0,0,0,0,2,0,0,0,25,0,0,0,72,190,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,104,190,3,0,0,0,0,0,2,0,0,0,169,0,0,0,96,189,3,0,1,0,0,0,0,184,84,225,0,160,251,96,4,0,0,0,0,0,0,0,16,190,3,0,0,0,0,0,2,0,0,0,169,0,0,0,120,188,3,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,40,189,3,0,0,0,0,0,2,0,0,0,33,1,0,0,8,187,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,48,188,3,0,0,0,0,0,2,5,5,6,6,7,6,7,7,8,8,8,8,8,8,8,8,10,6,6,7,7,7,7,8,8,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,7,7,7,7,8,8,8,9,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,9,9,9,9,9,9,9,9,9,9,10,11,11,8,8,8,8,9,9,9,9,9,9,10,10,9,10,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,10,10,11,10,10,8,8,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,11,11,8,8,9,9,9,9,9,9,9,9,9,9,11,11,11,11,11,9,9,9,9,9,9,9,9,10,9,10,9,11,11,11,11,11,9,8,9,9,9,9,9,9,9,10,10,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,10,10,9,11,11,11,11,11,11,11,9,9,10,9,9,9,9,10,9,10,10,11,10,11,11,11,11,9,10,10,10,9,9,9,9,9,9,10,11,11,11,11,11,11,9,9,9,9,9,9,9,9,10,9,11,11,10,11,11,11,11,10,10,9,9,9,9,9,9,10,9,10,11,10,11,11,11,11,11,11,9,9,10,9,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,9,9,10,11,12,12,6,5,5,7,7,8,7,10,10,11,11,12,12,6,5,5,7,7,8,8,10,10,11,11,12,12,16,7,7,8,8,9,9,11,11,12,12,13,13,17,7,7,8,7,9,9,11,10,12,12,13,13,19,11,10,8,8,10,10,11,11,12,12,13,13,19,11,11,9,7,11,10,11,11,12,12,13,12,19,19,19,10,10,10,10,11,12,12,12,13,14,18,19,19,11,9,11,9,13,12,12,12,13,13,19,20,19,13,15,11,11,12,12,13,13,14,13,18,19,20,15,13,12,10,13,10,13,13,13,14,20,20,20,20,20,13,14,12,12,13,12,13,13,20,20,20,20,20,13,12,12,12,14,12,14,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,13,13,13,13,13,13,13,13,13,13,3,6,6,13,13,13,13,13,13,13,13,13,13,4,8,7,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,4,5,6,5,5,5,5,6,5,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,7,5,5,7,7,8,8,8,8,9,9,10,10,7,5,6,7,7,8,8,8,8,9,9,11,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,11,0,13,13,9,9,9,9,10,10,11,11,12,12,0,0,0,9,10,9,10,11,11,12,11,13,12,0,0,0,10,10,9,9,11,11,12,12,13,12,0,0,0,13,13,10,10,11,11,12,12,13,13,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,11,12,11,11,12,13,14,13,0,0,0,0,0,12,12,11,11,13,12,14,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,7,7,7,7,8,8,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,9,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,10,11,11,11,10,10,6,9,9,11,11,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,11,11,11,11,11,11,11,6,9,9,11,10,10,11,11,10,6,9,9,10,10,10,11,10,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,6,6,7,7,8,8,8,8,9,9,10,10,11,11,0,5,5,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,5,5,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,10,10,10,11,11,11,12,12,0,0,0,8,8,8,8,9,9,10,10,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,7,7,9,9,0,6,6,7,7,8,8,9,9,0,6,6,7,7,8,8,9,9,0,7,7,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,8,8,9,9,11,11,0,0,0,9,9,9,9,11,11,0,0,0,10,10,10,10,11,11,0,0,0,0,0,9,9,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,3,7,7,0,0,0,0,0,5,5,6,6,0,0,0,0,0,5,5,7,7,0,0,0,0,0,7,7,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,9,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,9,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,10,9],"i8",L3,x.GLOBAL_BASE+242772),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,144,235,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,56,5,4,0,0,0,0,0,4,0,0,0,113,2,0,0,0,233,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,235,3,0,0,0,0,0,2,0,0,0,81,0,0,0,128,232,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,216,232,3,0,0,0,0,0,2,0,0,0,81,0,0,0,0,232,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,88,232,3,0,0,0,0,0,2,0,0,0,33,1,0,0,144,230,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,184,231,3,0,0,0,0,0,4,0,0,0,81,0,0,0,40,230,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,128,230,3,0,0,0,0,0,2,0,0,0,121,0,0,0,120,229,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,248,229,3,0,0,0,0,0,2,0,0,0,169,0,0,0,144,228,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,64,229,3,0,0,0,0,0,2,0,0,0,25,0,0,0,88,228,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,228,3,0,0,0,0,0,2,0,0,0,169,0,0,0,112,227,3,0,1,0,0,0,0,184,84,225,0,160,251,96,4,0,0,0,0,0,0,0,32,228,3,0,0,0,0,0,2,0,0,0,169,0,0,0,136,226,3,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,56,227,3,0,0,0,0,0,2,0,0,0,33,1,0,0,24,225,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,64,226,3,0,0,0,0,0,2,4,4,6,6,6,6,7,7,8,8,8,8,8,8,8,8,10,10,10,7,7,7,7,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,7,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,8,9,9,9,9,9,9,10,9,9,10,10,10,7,7,8,8,9,8,9,9,9,9,10,9,9,10,10,11,11,8,8,8,8,9,9,9,9,9,9,10,9,9,10,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,10,10,11,11,11,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,10,11,11,11,8,8,9,9,9,9,10,9,9,9,9,9,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,10,10,11,11,9,9,9,9,9,9,9,9,9,10,10,10,10,11,10,11,11,9,9,9,9,9,9,9,9,9,10,10,9,10,10,11,11,11,11,11,9,9,9,10,9,9,9,9,9,9,10,11,11,11,11,11,11,10,10,10,10,9,9,9,9,9,9,10,11,11,11,11,11,11,9,10,9,9,9,9,10,9,9,9,11,11,11,11,11,11,11,10,10,9,9,9,9,9,9,10,9,11,11,10,11,11,11,11,10,11,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,5,7,7,9,9,10,10,12,12,6,5,5,7,7,8,8,10,10,12,11,12,12,6,5,5,7,7,8,8,10,10,11,11,12,12,15,7,7,8,8,9,9,11,11,12,12,13,12,15,8,8,8,7,9,9,10,10,12,12,13,13,16,11,10,8,8,10,10,11,11,12,12,13,13,16,11,11,9,8,11,10,11,11,12,12,13,12,16,16,16,10,11,10,11,12,12,12,12,13,13,16,16,16,11,9,11,9,14,12,12,12,13,13,16,16,16,12,14,11,12,12,12,13,13,14,13,16,16,16,15,13,12,10,13,10,13,14,13,13,16,16,16,16,16,13,14,12,13,13,12,13,13,16,16,16,16,16,13,12,12,11,14,12,15,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,3,10,10,10,10,10,10,10,10,10,10,4,8,6,10,10,10,10,10,10,10,10,10,10,4,8,7,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,10,9,7,5,6,7,7,8,8,8,8,9,9,10,10,7,5,5,7,7,8,8,8,8,9,9,10,10,0,8,8,8,8,9,9,9,9,10,10,11,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,10,10,10,11,11,11,11,0,13,13,9,9,9,9,10,10,11,11,11,11,0,0,0,10,10,10,10,11,11,12,11,12,12,0,0,0,10,10,10,9,11,11,12,11,13,12,0,0,0,13,13,10,10,11,11,12,12,13,13,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,11,12,11,11,12,12,14,13,0,0,0,0,0,12,11,11,11,13,10,14,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,7,7,7,7,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,6,10,10,11,11,11,11,10,10,6,9,9,11,10,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,10,11,11,11,12,11,11,7,9,9,11,10,10,11,11,10,6,9,9,10,10,10,12,10,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,6,6,7,7,8,8,8,8,9,9,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,11,0,0,0,8,8,9,9,9,10,10,10,10,10,11,11,12,12,0,0,0,8,8,9,9,10,9,10,10,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,11,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,10,10,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,12,12,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,5,6,6,8,8,0,0,0,7,7,7,7,9,9,0,0,0,7,7,7,7,9,9,0,0,0,7,7,8,8,10,10,0,0,0,7,7,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,10,10,9,9,11,11,0,0,0,0,0,9,9,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,2,7,7,0,0,0,0,0,13,13,6,6,0,0,0,0,0,12,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,9,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,11,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,4,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,5,7,6,0,0,0,0,0,0,5,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,8,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9],"i8",L3,x.GLOBAL_BASE+253728),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,13,14,14,15,16,18,18,4,2,5,8,7,9,12,15,15,10,4,5,10,6,8,11,15,17,12,5,7,5,6,8,11,14,17,11,5,6,6,5,6,9,13,17,12,6,7,6,5,6,8,12,14,14,7,8,6,6,7,9,11,14,14,8,9,6,5,6,9,11,13,16,10,10,7,6,7,8,10,11,0,0,0,0,0,0,0,6,8,13,12,13,14,15,16,16,4,2,4,7,6,8,11,13,15,10,4,4,8,6,8,11,14,17,11,5,6,5,6,8,12,14,17,11,5,5,6,5,7,10,13,16,12,6,7,8,7,8,10,13,15,13,8,8,7,7,8,10,12,15,15,7,7,5,5,7,9,12,14,15,8,8,6,6,7,8,10,11,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,128,86,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,40,86,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,46,4,0,0,0,0,0,0,0,0,0,0,0,0,0,152,46,4,0,0,0,0,0,0,0,0,0,0,0,0,0,192,46,4,0,0,0,0,0,0,0,0,0,0,0,0,0,232,46,4,0,0,0,0,0,0,0,0,0,0,0,0,0,16,47,4,0,0,0,0,0,56,47,4,0,96,47,4,0,0,0,0,0,0,0,0,0,136,47,4,0,176,47,4,0,0,0,0,0,0,0,0,0,216,47,4,0,0,48,4,0,40,48,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,8,4,0,0,0,0,0,0,0,0,0,0,0,0,0,240,8,4,0,0,0,0,0,0,0,0,0,0,0,0,0,24,9,4,0,0,0,0,0,0,0,0,0,0,0,0,0,64,9,4,0,0,0,0,0,0,0,0,0,0,0,0,0,104,9,4,0,0,0,0,0,144,9,4,0,184,9,4,0,0,0,0,0,0,0,0,0,224,9,4,0,8,10,4,0,0,0,0,0,0,0,0,0,48,10,4,0,88,10,4,0,128,10,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,112,8,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,24,8,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,4,9,10,9,10,11,12,13,4,1,5,7,7,9,11,12,14,8,5,7,9,8,10,13,13,13,10,7,9,4,6,7,10,12,14,9,6,7,6,6,7,10,12,12,9,8,9,7,6,7,8,11,12,11,11,11,9,8,7,8,10,12,12,13,14,12,11,9,9,9,12,12,17,17,15,16,12,10,11,13,0,0,0,0,0,0,0,5,4,8,9,8,9,10,12,15,4,1,5,5,6,8,11,12,12,8,5,8,9,9,11,13,12,12,9,5,8,5,7,9,12,13,13,8,6,8,7,7,9,11,11,11,9,7,9,7,7,7,7,10,12,10,10,11,9,8,7,7,9,11,11,12,13,12,11,9,8,9,11,13,16,16,15,15,12,10,11,12,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,184,20,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,96,46,4,0,0,0,0,0,4,0,0,0,113,2,0,0,40,18,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,20,4,0,0,0,0,0,2,0,0,0,81,0,0,0,168,17,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,0,18,4,0,0,0,0,0,2,0,0,0,81,0,0,0,40,17,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,17,4,0,0,0,0,0,2,0,0,0,33,1,0,0,184,15,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,16,4,0,0,0,0,0,4,0,0,0,81,0,0,0,80,15,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,168,15,4,0,0,0,0,0,2,0,0,0,121,0,0,0,160,14,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,32,15,4,0,0,0,0,0,2,0,0,0,169,0,0,0,184,13,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,104,14,4,0,0,0,0,0,2,0,0,0,25,0,0,0,128,13,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,13,4,0,0,0,0,0,2,0,0,0,81,0,0,0,0,13,4,0,1,0,0,0,0,160,59,225,0,160,251,96,4,0,0,0,0,0,0,0,88,13,4,0,0,0,0,0,2,0,0,0,169,0,0,0,24,12,4,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,200,12,4,0,0,0,0,0,2,0,0,0,33,1,0,0,168,10,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,208,11,4,0,0,0,0,0,2,5,5,6,6,7,7,7,7,8,8,8,8,8,8,8,8,10,6,6,7,7,7,7,8,8,9,9,9,9,9,9,9,9,10,6,6,7,7,8,7,8,8,9,9,9,9,9,9,9,9,10,7,7,7,7,8,8,8,9,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,9,8,9,9,9,9,10,9,9,10,10,10,11,8,8,8,8,9,9,9,9,9,9,9,10,9,10,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,10,10,11,10,10,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,11,11,8,8,9,9,9,9,9,9,9,9,9,10,11,11,11,11,11,9,9,9,9,9,9,9,9,10,9,10,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,9,10,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,9,10,9,11,10,11,11,11,11,11,9,9,10,9,9,9,9,9,9,9,10,11,10,11,11,11,11,10,10,10,10,9,9,9,9,9,9,10,11,11,11,11,11,11,9,10,9,9,9,9,9,9,9,9,11,11,10,11,11,11,10,10,10,9,9,9,9,9,9,9,9,10,11,10,11,11,11,11,11,11,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,9,9,10,11,12,12,6,5,5,7,7,8,8,10,10,12,11,12,12,6,5,5,7,7,8,8,10,10,12,11,12,12,17,7,7,8,8,9,9,10,10,12,12,13,13,18,7,7,8,7,9,9,10,10,12,12,12,13,19,10,10,8,8,10,10,11,11,12,12,13,14,19,11,10,8,7,10,10,11,11,12,12,13,12,19,19,19,10,10,10,10,11,11,12,12,13,13,19,19,19,11,9,11,9,14,12,13,12,13,13,19,20,18,13,14,11,11,12,12,13,13,14,13,20,20,20,15,13,11,10,13,11,13,13,14,13,20,20,20,20,20,13,14,12,12,13,13,13,13,20,20,20,20,20,13,13,12,12,16,13,15,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,11,11,11,11,11,11,3,7,6,11,11,11,11,11,11,4,8,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,4,4,6,5,5,5,5,6,5,5,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,7,5,5,7,7,8,8,8,8,9,9,10,10,7,6,5,7,7,8,8,8,8,9,9,10,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,11,0,13,13,9,9,9,9,10,10,11,11,11,12,0,0,0,9,10,10,10,11,11,12,11,12,12,0,0,0,10,10,9,9,11,11,12,12,12,12,0,0,0,13,13,10,10,11,11,12,12,13,13,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,11,12,11,11,13,12,13,13,0,0,0,0,0,12,12,11,11,13,12,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,7,8,9,5,5,6,6,7,7,8,8,8,8,9,5,5,6,6,7,7,8,8,8,8,10,7,7,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,10,11,11,11,10,10,6,9,9,11,11,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,10,11,11,11,11,11,11,6,9,9,11,10,10,11,11,10,6,9,9,11,10,10,11,10,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,8,8,8,8,8,8,9,9,10,10,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,10,11,11,11,0,5,6,7,7,8,8,9,9,9,9,10,10,10,11,11,11,0,7,7,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,12,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,10,11,11,12,12,13,13,0,0,0,0,0,10,10,10,10,11,11,12,12,12,13,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,12,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,12,11,12,12,13,13,13,13,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,3,6,6,7,7,9,9,0,5,5,7,7,8,7,9,9,0,5,5,7,7,8,8,9,9,0,7,7,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,9,9,9,9,11,11,0,0,0,9,9,9,9,11,11,0,0,0,10,10,10,10,11,11,0,0,0,0,0,9,9,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,3,7,7,0,0,0,0,0,5,4,7,7,0,0,0,0,0,5,5,7,7,0,0,0,0,0,6,7,8,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,10,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,10,10],"i8",L3,x.GLOBAL_BASE+263472),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,112,60,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,24,86,4,0,0,0,0,0,4,0,0,0,113,2,0,0,224,57,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,60,4,0,0,0,0,0,2,0,0,0,81,0,0,0,96,57,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,184,57,4,0,0,0,0,0,2,0,0,0,81,0,0,0,224,56,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,56,57,4,0,0,0,0,0,2,0,0,0,33,1,0,0,112,55,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,152,56,4,0,0,0,0,0,4,0,0,0,81,0,0,0,8,55,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,96,55,4,0,0,0,0,0,2,0,0,0,121,0,0,0,88,54,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,216,54,4,0,0,0,0,0,2,0,0,0,169,0,0,0,112,53,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,32,54,4,0,0,0,0,0,2,0,0,0,25,0,0,0,56,53,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,53,4,0,0,0,0,0,4,0,0,0,113,2,0,0,168,50,4,0,1,0,0,0,0,160,27,225,0,160,251,96,3,0,0,0,0,0,0,0,32,53,4,0,0,0,0,0,2,0,0,0,169,0,0,0,192,49,4,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,112,50,4,0,0,0,0,0,2,0,0,0,33,1,0,0,80,48,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,120,49,4,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,8,8,8,8,8,8,10,10,10,7,7,7,8,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,7,7,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,8,8,9,9,9,9,9,10,9,9,10,10,10,7,7,8,8,9,8,9,9,9,9,10,9,9,10,10,10,10,8,8,8,8,9,8,9,9,9,9,9,10,9,10,10,10,10,7,7,8,8,9,9,9,9,9,9,10,9,10,10,10,10,10,8,8,8,9,9,9,9,9,9,9,10,10,10,9,11,10,10,10,10,8,8,9,9,9,9,9,10,9,9,9,10,10,10,10,11,11,9,9,9,9,9,9,9,9,10,9,9,10,11,10,10,11,11,9,9,9,9,9,9,9,9,9,9,10,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,9,10,9,11,10,10,11,11,11,11,9,9,9,9,9,9,9,9,9,9,10,10,10,11,11,11,11,9,10,9,10,9,9,9,9,10,9,10,11,10,11,10,10,10,10,10,9,9,9,10,9,9,9,10,11,11,10,11,11,10,11,10,10,10,9,9,9,9,10,9,9,10,11,10,11,11,11,11,10,11,10,10,9,10,9,9,9,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,9,9,11,12,13,12,6,5,5,7,7,8,8,10,9,12,12,12,12,6,5,5,7,7,8,8,10,9,12,11,11,13,16,7,7,8,8,9,9,10,10,12,12,13,12,16,7,7,8,7,9,9,10,10,11,12,12,13,16,10,10,8,8,10,10,11,12,12,12,13,13,16,11,10,8,7,11,10,11,11,12,11,13,13,16,16,16,10,10,10,10,11,11,13,12,13,13,16,16,16,11,9,11,9,15,13,12,13,13,13,16,16,16,15,13,11,11,12,13,12,12,14,13,16,16,16,14,13,11,11,13,12,14,13,13,13,16,16,16,16,16,13,13,13,12,14,13,14,14,16,16,16,16,16,13,13,12,12,14,14,15,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,5,5,10,10,6,9,8,10,10,6,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,7,5,5,7,7,8,8,8,8,9,9,10,10,7,5,6,7,7,8,8,8,8,9,9,10,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,11,0,13,13,9,9,9,9,10,10,11,11,11,12,0,0,0,10,10,10,10,11,11,11,11,12,12,0,0,0,10,10,9,9,11,11,11,12,12,12,0,0,0,13,13,10,10,11,11,12,12,13,13,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,11,11,11,11,13,12,13,13,0,0,0,0,0,12,12,11,11,12,12,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,7,7,7,7,7,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,8,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,10,9,9,4,6,7,10,9,9,11,9,9,7,10,10,11,11,11,12,10,11,6,9,9,11,10,11,11,10,10,6,9,9,11,10,11,11,10,10,7,11,10,12,11,11,11,11,11,7,9,9,10,10,10,11,11,10,6,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,6,6,8,7,8,8,8,8,9,9,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,9,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,8,8,9,9,9,9,10,10,10,10,11,11,12,12,0,0,0,8,8,9,9,9,9,10,10,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,11,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,10,10,11,11,11,11,11,12,12,12,13,13,0,0,0,0,0,0,0,11,10,11,11,11,11,12,12,13,13,0,0,0,0,0,0,0,11,11,12,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,11,12,12,12,12,13,13,13,0,0,0,0,0,0,0,12,12,12,12,12,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,6,6,8,8,0,0,0,7,7,7,7,9,9,0,0,0,7,7,7,7,9,9,0,0,0,7,7,7,8,9,9,0,0,0,7,7,7,7,9,9,0,0,0,9,9,8,8,10,10,0,0,0,8,9,8,8,10,10,0,0,0,10,10,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,2,8,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,6,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,9,9,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,9,11,10],"i8",L3,x.GLOBAL_BASE+274008),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,6,6,12,13,13,14,16,17,17,4,2,5,8,7,9,12,15,15,9,4,5,9,7,9,12,16,18,11,6,7,4,6,8,11,14,18,10,5,6,5,5,7,10,14,17,10,5,7,7,6,7,10,13,16,11,5,7,7,7,8,10,12,15,13,6,7,5,5,7,9,12,13,16,8,9,6,6,7,9,10,12,0,0,0,0,0,0,0,9,8,12,11,12,13,14,14,16,6,1,5,6,6,9,12,14,17,9,4,5,9,7,9,13,15,16,8,5,8,6,8,10,13,17,17,9,6,7,7,8,9,13,15,17,11,8,9,9,9,10,12,16,16,13,7,8,7,7,9,12,14,15,13,6,7,5,5,7,10,13,13,14,7,8,5,6,7,9,10,12,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,96,167,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,8,167,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,127,4,0,0,0,0,0,0,0,0,0,0,0,0,0,120,127,4,0,0,0,0,0,0,0,0,0,0,0,0,0,160,127,4,0,0,0,0,0,0,0,0,0,0,0,0,0,200,127,4,0,0,0,0,0,0,0,0,0,0,0,0,0,240,127,4,0,0,0,0,0,24,128,4,0,64,128,4,0,0,0,0,0,0,0,0,0,104,128,4,0,144,128,4,0,0,0,0,0,0,0,0,0,184,128,4,0,224,128,4,0,8,129,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,168,89,4,0,0,0,0,0,0,0,0,0,0,0,0,0,208,89,4,0,0,0,0,0,0,0,0,0,0,0,0,0,248,89,4,0,0,0,0,0,0,0,0,0,0,0,0,0,32,90,4,0,0,0,0,0,0,0,0,0,0,0,0,0,72,90,4,0,0,0,0,0,112,90,4,0,152,90,4,0,0,0,0,0,0,0,0,0,192,90,4,0,232,90,4,0,0,0,0,0,0,0,0,0,16,91,4,0,56,91,4,0,96,91,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,80,89,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,248,88,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,8,8,8,8,10,12,14,3,2,6,7,7,8,10,12,16,7,6,7,9,8,10,12,14,16,8,6,8,4,5,7,9,11,13,7,6,8,5,6,7,9,11,14,8,8,10,7,7,6,8,10,13,9,11,12,9,9,7,8,10,12,10,13,15,11,11,10,9,10,13,13,16,17,14,15,14,13,14,17,0,0,0,0,0,0,0,4,4,7,8,7,8,10,12,17,3,1,6,6,7,8,10,12,15,7,6,9,9,9,11,12,14,17,8,6,9,6,7,9,11,13,17,7,6,9,7,7,8,9,12,15,8,8,10,8,7,7,7,10,14,9,10,12,10,8,8,8,10,14,11,13,15,13,12,11,11,12,16,17,18,18,19,20,18,16,16,20,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,152,101,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,64,127,4,0,0,0,0,0,4,0,0,0,113,2,0,0,8,99,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,128,101,4,0,0,0,0,0,2,0,0,0,81,0,0,0,136,98,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,224,98,4,0,0,0,0,0,2,0,0,0,81,0,0,0,8,98,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,96,98,4,0,0,0,0,0,2,0,0,0,33,1,0,0,152,96,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,192,97,4,0,0,0,0,0,4,0,0,0,81,0,0,0,48,96,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,136,96,4,0,0,0,0,0,2,0,0,0,121,0,0,0,128,95,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,0,96,4,0,0,0,0,0,2,0,0,0,169,0,0,0,152,94,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,72,95,4,0,0,0,0,0,2,0,0,0,25,0,0,0,96,94,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,128,94,4,0,0,0,0,0,2,0,0,0,81,0,0,0,224,93,4,0,1,0,0,0,0,160,59,225,0,160,251,96,4,0,0,0,0,0,0,0,56,94,4,0,0,0,0,0,2,0,0,0,169,0,0,0,248,92,4,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,168,93,4,0,0,0,0,0,2,0,0,0,33,1,0,0,136,91,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,176,92,4,0,0,0,0,0,3,4,4,6,6,7,7,8,8,8,8,9,9,9,9,9,9,10,6,6,6,6,7,7,8,8,8,9,9,9,9,9,9,9,10,6,6,6,6,7,7,8,8,8,8,9,9,9,9,9,9,10,7,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,7,8,8,8,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,8,8,9,9,9,9,9,9,9,9,11,10,11,8,8,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,11,11,8,8,8,8,9,9,9,9,9,9,9,9,11,10,11,11,11,9,9,9,9,9,9,9,9,9,9,9,9,10,11,10,11,11,9,9,9,9,9,9,9,9,9,9,9,10,11,11,10,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,10,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,10,11,11,11,11,11,11,9,10,10,10,9,9,9,9,9,9,11,10,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,11,11,11,11,11,11,11,10,10,9,9,9,9,9,9,9,9,10,11,11,11,11,11,11,11,11,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,10,11,11,11,6,5,5,7,7,8,8,10,10,10,11,11,11,6,5,5,7,7,8,8,10,10,11,12,12,12,14,7,7,7,8,9,9,11,11,11,12,11,12,17,7,7,8,7,9,9,11,11,12,12,12,12,14,11,11,8,8,10,10,11,12,12,13,11,12,14,11,11,8,8,10,10,11,12,12,13,13,12,14,15,14,10,10,10,10,11,12,12,12,12,11,14,13,16,10,10,10,9,12,11,12,12,13,14,14,15,14,14,13,10,10,11,11,12,11,13,11,14,12,15,13,14,11,10,12,10,12,12,13,13,13,13,14,15,15,12,12,11,11,12,11,13,12,14,14,14,14,17,12,12,11,10,13,11,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,12,11,13,13,14,14,4,7,7,11,13,14,14,14,14,3,8,3,14,14,14,14,14,14,14,10,12,14,14,14,14,14,14,14,14,5,14,8,14,14,14,14,14,12,14,13,14,14,14,14,14,14,14,13,14,10,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,4,5,6,5,5,5,5,6,5,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,9,9,10,10,7,5,5,7,7,8,8,8,8,10,9,11,10,7,5,5,7,7,8,8,8,8,9,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,10,10,10,11,11,12,12,0,13,13,9,9,9,9,10,10,11,11,12,12,0,0,0,10,10,10,10,11,11,12,12,12,13,0,0,0,10,10,10,10,11,11,12,12,12,12,0,0,0,14,14,11,11,11,11,12,13,13,13,0,0,0,14,14,11,10,11,11,12,12,13,13,0,0,0,0,0,12,12,12,12,13,13,13,14,0,0,0,0,0,13,12,12,12,13,13,13,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,5,7,7,7,7,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,7,7,7,7,8,8,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,9,9,10,10,10,10,10,8,8,8,8,9,9,10,10,10,10,10,9,9,9,9,8,9,10,10,10,10,10,8,9,8,8,9,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,6,10,9,9,11,9,9,4,6,7,10,9,9,11,9,9,7,10,10,10,11,11,11,11,10,6,9,9,11,10,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,11,11,11,11,12,11,11,7,9,9,11,10,10,12,10,10,7,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,8,8,9,9,10,10,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,6,5,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,13,13,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,13,13,13,0,0,0,0,0,10,10,11,11,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,12,12,12,13,13,13,14,14,14,14,0,0,0,0,0,0,0,0,0,12,12,13,13,14,14,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,3,6,6,7,7,9,9,0,5,5,7,7,8,7,9,9,0,5,5,7,7,8,8,9,9,0,7,7,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,9,9,9,9,10,10,0,0,0,9,9,9,9,10,10,0,0,0,10,10,10,10,11,11,0,0,0,0,0,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,4,7,7,0,0,0,0,0,4,4,7,7,0,0,0,0,0,4,5,7,7,0,0,0,0,0,6,7,8,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,10,9,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,9,0,0,0,0,0,0,9,9,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,10,9],"i8",L3,x.GLOBAL_BASE+284176),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,80,141,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,248,166,4,0,0,0,0,0,4,0,0,0,113,2,0,0,192,138,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,141,4,0,0,0,0,0,2,0,0,0,81,0,0,0,64,138,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,152,138,4,0,0,0,0,0,2,0,0,0,81,0,0,0,192,137,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,24,138,4,0,0,0,0,0,2,0,0,0,33,1,0,0,80,136,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,120,137,4,0,0,0,0,0,4,0,0,0,81,0,0,0,232,135,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,64,136,4,0,0,0,0,0,2,0,0,0,121,0,0,0,56,135,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,184,135,4,0,0,0,0,0,2,0,0,0,169,0,0,0,80,134,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,0,135,4,0,0,0,0,0,2,0,0,0,25,0,0,0,24,134,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,134,4,0,0,0,0,0,4,0,0,0,113,2,0,0,136,131,4,0,1,0,0,0,0,160,27,225,0,160,251,96,3,0,0,0,0,0,0,0,0,134,4,0,0,0,0,0,2,0,0,0,169,0,0,0,160,130,4,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,80,131,4,0,0,0,0,0,2,0,0,0,33,1,0,0,48,129,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,88,130,4,0,0,0,0,0,3,4,3,6,6,7,7,8,8,9,9,9,9,9,9,9,9,10,11,11,6,6,7,7,8,8,9,9,9,9,9,9,9,9,10,10,10,6,6,7,7,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,7,8,8,8,9,9,9,9,9,9,10,9,10,11,10,7,6,7,7,8,8,9,9,9,9,9,9,9,10,10,10,11,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,8,8,9,9,9,9,9,9,9,10,11,11,11,8,8,8,8,8,8,9,9,9,9,9,9,9,9,11,10,10,11,11,8,8,8,9,9,9,9,9,9,10,9,10,10,10,10,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,10,10,10,10,11,10,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,10,10,11,11,11,11,9,9,9,9,9,9,9,9,10,10,10,11,11,10,11,11,11,9,10,10,9,9,9,9,9,9,9,10,11,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,11,11,11,11,11,11,11,10,10,9,9,9,9,9,9,9,9,11,11,11,10,11,11,11,11,11,9,9,9,10,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,10,10,11,11,11,6,5,5,7,7,8,8,9,10,9,11,11,12,5,5,5,7,7,8,9,10,10,12,12,14,13,15,7,7,8,8,9,10,11,11,10,12,10,11,15,7,8,8,8,9,9,11,11,13,12,12,13,15,10,10,8,8,10,10,12,12,11,14,10,10,15,11,11,8,8,10,10,12,13,13,14,15,13,15,15,15,10,10,10,10,12,12,13,12,13,10,15,15,15,10,10,11,10,13,11,13,13,15,13,15,15,15,13,13,10,11,11,11,12,10,14,11,15,15,14,14,13,10,10,12,11,13,13,14,14,15,15,15,15,15,11,11,11,11,12,11,15,12,15,15,15,15,15,12,12,11,11,14,12,13,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,7,7,11,11,8,11,11,11,11,4,11,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,8,8,9,9,11,11,7,5,5,7,7,8,8,8,8,9,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,10,10,10,11,11,11,12,0,13,13,9,9,9,9,10,10,11,11,11,12,0,0,0,10,10,10,10,11,11,12,12,12,13,0,0,0,10,10,10,10,11,11,12,12,13,12,0,0,0,14,14,11,10,11,12,12,13,13,14,0,0,0,15,15,11,11,12,11,12,12,14,13,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,13,13,12,12,13,13,13,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,8,8,10,10,10,7,6,8,8,8,8,8,8,10,10,10,7,6,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,6,6,10,9,9,11,9,9,4,6,6,10,9,9,10,9,9,7,10,10,11,11,11,12,11,11,7,9,9,11,11,10,11,10,10,7,9,9,11,10,11,11,10,10,7,10,10,11,11,11,12,11,11,7,9,9,11,10,10,11,10,10,7,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,6,6,7,7,8,8,8,8,9,9,10,10,10,10,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,8,8,9,9,9,9,10,10,10,10,11,11,12,12,0,0,0,8,8,9,9,9,9,10,10,10,11,11,11,12,12,0,0,0,9,9,10,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,11,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,10,10,11,10,11,11,11,12,13,12,13,13,0,0,0,0,0,0,0,11,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,12,12,12,13,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,13,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,6,6,8,8,0,0,0,6,6,7,7,9,9,0,0,0,6,6,7,7,9,9,0,0,0,7,7,8,8,10,10,0,0,0,7,7,8,8,10,10,0,0,0,9,9,9,9,10,10,0,0,0,9,9,9,9,10,10,0,0,0,10,10,10,10,11,11,0,0,0,0,0,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,2,3,7,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,9,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,7,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,10,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,9,9,11,0,0,0,0,0,0,10,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,9,11,9,0,0,0,0,0,0,10,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,10,11,11,0,0,0,0,0,0,9,9,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,10,11,11,0,0,0,0,0,0,9,11,9],"i8",L3,x.GLOBAL_BASE+294712),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,6,12,14,12,14,16,17,18,4,2,5,11,7,10,12,14,15,9,4,5,11,7,10,13,15,18,15,6,7,5,6,8,11,13,16,11,5,6,5,5,6,9,13,15,12,5,7,6,5,6,9,12,14,12,6,7,8,6,7,9,12,13,14,8,8,7,5,5,8,10,12,16,9,9,8,6,6,7,9,9,0,0,0,0,0,0,0,10,9,12,15,12,13,16,14,16,7,1,5,14,7,10,13,16,16,9,4,6,16,8,11,16,16,16,14,4,7,16,9,12,14,16,16,10,5,7,14,9,12,14,15,15,13,8,9,14,10,12,13,14,15,13,9,9,7,6,8,11,12,12,14,8,8,5,4,5,8,11,12,16,10,10,6,5,6,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,64,191,64,0,0,0,0,0,88,203,64,0,0,0,0,0,130,228,64,0,0,0,0,0,112,183,64,0,0,0,0,0,148,193,64,0,0,0,0,0,64,223,64,0,0,0,0,0,112,199,64,0,0,0,0,0,136,211,64,0,0,0,0,0,106,232,64,154,153,153,153,153,153,185,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,2,0,0,0,2,0,0,30,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,30,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,242,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,2,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,0,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,12,0,0,0,12,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,10,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,12,0,0,0,12,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,0,0,0,0,51,51,51,51,51,51,211,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,18,64,0,0,0,0,0,0,22,64,0,0,0,0,0,0,62,64,208,171,4,0,0,0,0,0,6,0,0,0,6,0,0,0,0,0,0,0,0,64,191,64,0,0,0,0,0,100,201,64,0,0,0,0,0,124,229,64,0,0,0,0,0,64,207,64,0,0,0,0,0,88,219,64,0,0,0,0,0,64,239,64,0,0,0,0,0,106,248,64,154,153,153,153,153,153,185,191,154,153,153,153,153,153,169,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,240,63,0,4,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,30,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,22,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,242,255,255,255,0,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,246,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,10,0,0,0,255,255,255,255,10,0,0,0,10,0,0,0,255,255,255,255,20,0,0,0,20,0,0,0,255,255,255,255,20,0,0,0,20,0,0,0,255,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,4,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,15,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,10,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,244,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,249,255,255,255,251,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,238,255,255,255,238,255,255,255,238,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,4,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,4,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,20,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,4,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,12,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,244,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,5,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,14,0,0,0,20,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,20,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,12,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,244,255,255,255,236,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,5,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,0,0,0,0,0,0,0,0,154,153,153,153,153,153,233,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,1,0,0,0,1,0,0,15,39,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,51,51,51,51,51,51,211,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,156,255,255,255,156,255,255,255,156,255,255,255,151,255,255,255,126,255,255,255,126,255,255,255,126,255,255,255,116,255,255,255,0,0,0,0,0,0,26,64,0,0,0,0,0,0,32,64,0,0,0,0,0,0,62,64,0,0,0,0,0,192,88,64,0,0,0,0,0,0,240,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,8,64,0,0,0,0,0,0,16,64,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,64,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,200,239,4,0,216,239,4,0,8,181,0,0,16,188,4,0,8,181,0,0,48,188,4,0,8,181,0,0,112,188,4,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,216,225,4,0,216,225,4,0,0,226,4,0,0,226,4,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,200,208,4,0,200,208,4,0,240,208,4,0,240,208,4,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,176,209,4,0,176,209,4,0,240,208,4,0,240,208,4,0,1,0,0,0,0,0,0,0,32,0,0,0,160,220,1,0,176,188,4,0,176,188,4,0,216,188,4,0,216,188,4,0,1,0,0,0,0,0,0,0,32,0,0,0,160,220,1,0,152,189,4,0,152,189,4,0,216,188,4,0,216,188,4,0,2,0,0,0,100,0,0,0,96,208,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,190,4,0,0,0,0,0,0,0,0,0,0,0,0,0,80,190,4,0,0,0,0,0,0,0,0,0,0,0,0,0,120,190,4,0,0,0,0,0,0,0,0,0,0,0,0,0,160,190,4,0,0,0,0,0,200,190,4,0,240,190,4,0,0,0,0,0,0,0,0,0,24,191,4,0,64,191,4,0,0,0,0,0,0,0,0,0,104,191,4,0,144,191,4,0,0,0,0,0,0,0,0,0,184,191,4,0,224,191,4,0,0,0,0,0,0,0,0,0,8,192,4,0,48,192,4,0,88,192,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,192,189,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,10,10,10,11,11,12,14,18,7,5,5,6,8,9,10,12,14,17,9,5,4,5,6,8,10,11,13,19,9,5,4,4,5,6,9,10,12,17,8,6,5,4,4,5,7,10,11,15,8,7,7,6,5,5,6,9,11,14,8,9,8,7,6,5,6,7,11,14,9,11,11,9,7,6,6,6,9,14,11,14,15,13,9,8,7,7,9,14,13,15,19,17,12,11,10,9,10,14,0,0,0,0,4,0,0,0,81,0,0,0,248,207,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,80,208,4,0,0,0,0,0,4,0,0,0,113,2,0,0,104,205,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,224,207,4,0,0,0,0,0,2,0,0,0,81,0,0,0,232,204,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,64,205,4,0,0,0,0,0,2,0,0,0,33,1,0,0,120,203,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,160,204,4,0,0,0,0,0,4,0,0,0,81,0,0,0,16,203,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,104,203,4,0,0,0,0,0,2,0,0,0,121,0,0,0,96,202,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,224,202,4,0,0,0,0,0,2,0,0,0,169,0,0,0,120,201,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,40,202,4,0,0,0,0,0,2,0,0,0,25,0,0,0,64,201,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,96,201,4,0,0,0,0,0,2,0,0,0,169,0,0,0,88,200,4,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,8,201,4,0,0,0,0,0,2,0,0,0,121,0,0,0,168,199,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,40,200,4,0,0,0,0,0,2,0,0,0,225,0,0,0,128,198,4,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,104,199,4,0,0,0,0,0,2,0,0,0,185,1,0,0,104,196,4,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,40,198,4,0,0,0,0,0,2,0,0,0,225,0,0,0,64,195,4,0,1,0,0,0,0,117,153,225,0,24,61,97,4,0,0,0,0,0,0,0,40,196,4,0,0,0,0,0,2,0,0,0,105,1,0,0,128,193,4,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,240,194,4,0,0,0,0,0,1,0,0,0,49,0,0,0,128,192,4,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,184,192,4,0,0,0,0,0,2,3,4,4,4,5,5,6,5,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,7,8,8,8,8,8,8,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,6,9,7,10,8,12,12,13,13,14,14,4,7,7,9,9,9,8,9,8,10,9,11,9,14,9,14,10,13,11,4,7,7,9,9,9,9,8,9,10,10,11,11,12,13,12,13,14,15,7,9,9,10,11,10,10,10,10,11,12,13,13,13,14,17,14,15,16,7,9,9,10,10,10,10,10,10,11,12,13,13,14,14,15,15,18,18,8,9,9,11,10,11,11,11,12,13,12,14,14,16,15,15,17,18,15,8,9,9,10,10,11,11,11,11,13,13,14,14,15,15,15,16,16,18,7,9,8,10,10,11,11,12,12,14,14,15,15,16,16,15,17,16,18,8,9,9,10,10,11,12,12,12,13,13,16,15,17,16,17,18,17,18,9,10,10,12,11,13,13,14,13,14,14,15,17,16,18,17,18,17,18,9,10,10,12,11,12,13,13,14,15,16,14,15,16,18,18,18,18,17,11,11,11,13,13,14,14,16,15,15,15,16,15,15,18,18,18,17,16,11,11,12,13,13,15,14,15,16,16,16,17,16,15,18,17,18,16,18,12,13,13,15,15,15,16,18,16,17,16,17,16,17,17,17,18,18,17,13,13,13,15,13,16,15,17,16,16,16,18,18,18,18,16,17,17,18,13,15,14,15,15,18,17,18,18,18,16,18,17,18,17,18,16,17,17,14,14,14,15,16,17,16,18,18,18,17,18,17,18,18,18,16,16,16,14,17,16,17,15,16,18,18,17,18,17,18,17,18,18,18,17,18,17,15,16,15,18,15,18,17,16,18,18,18,18,18,18,17,18,16,18,17,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,5,3,9,8,9,9,9,9,9,9,9,9,9,9,5,7,8,9,9,9,9,9,9,9,9,9,9,9,9,5,7,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,3,5,5,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,10,5,6,6,7,7,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,9,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,7,7,7,8,8,9,9,9,9,9,9,9,9,10,9,10,10,10,9,10,9,8,8,8,9,8,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,8,8,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,8,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,7,7,9,8,10,9,11,11,4,7,6,9,8,9,9,9,9,10,9,11,9,12,9,4,6,7,8,8,9,9,9,9,10,10,10,11,11,12,7,9,8,10,10,11,11,10,10,11,11,12,12,13,12,7,8,8,10,10,10,11,10,10,11,11,11,12,12,13,8,9,9,11,11,11,11,11,11,12,12,13,13,13,13,8,9,9,11,11,11,11,11,11,12,12,13,13,13,14,8,9,9,10,10,11,11,12,11,13,13,14,13,14,14,8,9,9,10,10,11,11,12,12,12,12,13,13,14,14,9,10,10,11,11,12,12,13,12,13,13,14,14,15,15,9,10,10,11,11,12,12,12,13,13,13,14,14,14,15,10,11,11,12,12,13,13,14,13,14,14,15,14,15,15,10,11,11,12,12,13,12,13,14,14,14,14,14,15,15,11,12,12,13,13,13,13,14,14,15,14,15,15,16,16,11,12,12,13,13,13,13,14,14,14,15,15,15,16,16,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,5,5,7,7,7,7,7,7,8,8,5,6,6,7,7,7,7,8,8,8,8,5,6,6,7,7,7,7,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,8,9,9,10,10,4,6,6,8,8,9,9,9,9,10,10,11,10,4,6,6,8,8,9,9,9,9,10,10,11,11,7,8,8,10,9,10,10,10,10,11,11,12,12,7,8,8,10,10,10,10,10,10,11,11,12,12,8,9,9,10,10,11,11,11,11,12,12,13,13,8,9,9,10,10,11,11,11,11,12,12,13,13,8,9,9,11,10,11,11,12,12,13,13,14,13,8,9,9,10,10,11,11,12,12,13,13,13,13,9,10,10,11,11,12,12,13,13,13,13,14,14,9,10,10,11,11,12,12,13,13,13,13,14,14,10,11,11,12,12,13,13,14,13,14,14,15,14,10,11,11,12,12,13,13,14,13,14,14,15,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,4,7,7,8,8,8,8,10,10,11,11,4,6,6,7,7,9,9,9,9,10,10,11,11,4,6,6,7,7,9,9,9,9,10,10,11,11,7,8,8,9,9,9,9,10,10,11,11,12,12,7,7,7,9,8,10,9,10,10,11,11,12,12,8,9,9,9,10,10,10,11,11,12,12,13,13,8,9,9,10,9,10,10,11,11,12,12,13,13,8,9,9,10,10,11,11,11,11,12,12,13,13,8,9,9,10,10,11,11,12,11,12,12,13,13,10,10,10,11,11,12,12,12,12,13,13,14,14,10,10,10,11,11,12,12,12,12,13,13,14,14,11,11,11,12,12,13,13,13,13,14,14,14,14,11,11,11,12,12,13,13,13,13,14,14,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,5,5,6,6,7,7,8,8,8,8,5,6,6,7,7,7,7,8,8,8,8,5,6,6,6,7,7,7,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,8,8,8,8,8,8,8,8,9,9,8,8,8,8,8,8,8,9,9,9,9,8,8,8,8,8,8,8,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,7,9,9,7,9,10,5,8,8,7,10,9,7,10,9,5,8,8,8,11,10,8,10,10,7,10,10,9,9,12,10,12,12,7,10,10,9,12,10,10,11,12,5,8,8,8,10,10,8,11,11,7,11,10,10,12,11,9,10,12,7,10,11,10,12,12,9,12,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,5,6,6,7,7,8,8,9,9,10,10,11,11,11,11,5,5,5,7,6,8,7,9,9,9,9,10,10,11,11,12,12,5,5,5,6,6,7,8,8,9,9,9,10,10,11,11,12,12,6,7,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,6,6,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,7,8,8,8,8,9,9,9,9,10,10,11,11,11,11,12,12,7,7,8,8,8,9,9,9,9,10,10,11,11,11,11,12,12,8,9,9,9,9,9,9,10,10,10,10,11,11,12,12,12,12,8,9,9,9,9,9,9,10,10,10,10,11,11,12,12,12,12,9,9,9,9,9,10,10,10,10,10,11,11,11,12,12,13,13,9,9,9,9,9,10,10,10,10,11,10,11,11,12,12,13,13,10,10,10,10,10,11,11,11,11,11,11,11,12,12,12,13,13,10,10,10,10,10,11,11,11,11,11,11,12,11,12,12,13,13,11,11,11,11,11,11,11,12,12,12,12,12,12,13,13,13,13,11,11,11,11,11,11,11,12,12,12,12,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,13,13,13,13,13,14,14,11,12,12,12,12,12,12,12,13,13,13,13,13,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,4,6,6,7,7,9,9,4,5,5,6,6,8,7,9,9,4,5,5,6,6,7,8,9,9,6,6,6,7,7,8,8,10,10,6,6,6,7,7,8,8,10,10,7,8,7,8,8,9,9,11,10,7,7,8,8,8,9,9,10,11,9,9,9,10,10,11,10,11,11,9,9,9,10,10,10,11,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,5,7,7,9,9,5,7,7,9,9,9,10,9,11,11,9,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,9,10,10,11,12,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,11,10,10,10,12,12,9,10,10,12,12,10,10,10,12,12,9,10,10,12,12,12,12,12,14,14,11,12,12,13,14,9,10,10,12,12,9,10,10,12,12,10,10,10,12,12,11,12,12,14,13,12,12,12,14,13,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,10,10,10,12,12,7,8,8,11,10,8,9,9,11,11,8,9,9,11,11,10,11,11,12,13,10,11,11,12,13,7,8,8,10,10,8,9,8,11,10,8,9,9,11,11,10,11,10,13,12,10,11,11,13,13,10,11,10,13,12,10,11,11,13,13,10,11,11,13,13,12,12,13,13,14,12,13,13,14,14,9,10,10,12,12,10,11,10,13,12,10,11,11,13,13,12,13,12,14,13,12,13,13,14,15,5,7,7,9,10,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,10,10,11,12,12,7,8,8,10,10,8,9,9,11,11,8,8,9,10,11,10,11,11,13,13,10,10,11,12,13,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,11,13,12,10,11,11,13,12,9,10,10,12,12,10,11,11,13,13,10,10,11,12,13,12,13,13,15,14,12,12,13,12,14,9,10,11,12,13,10,11,11,13,13,10,11,11,13,13,12,13,13,14,14,12,13,12,14,13,8,10,10,12,12,9,11,10,13,12,9,10,10,12,13,12,13,13,14,14,12,12,12,14,14],"i8",L3,x.GLOBAL_BASE+304880),d3([9,10,10,13,13,10,11,11,13,13,10,11,11,13,13,13,13,13,14,15,12,13,13,14,15,9,10,10,12,13,10,11,10,13,13,10,11,11,12,13,12,13,12,15,14,12,13,13,14,15,11,12,12,15,14,12,12,13,14,15,12,13,13,15,14,13,13,15,14,16,14,14,14,16,15,11,12,12,14,14,11,12,12,14,14,12,13,13,14,15,13,14,13,15,13,14,14,14,15,16,8,9,10,12,12,9,10,10,13,12,9,10,11,12,13,12,12,12,14,14,12,13,13,14,14,9,10,10,13,12,10,11,11,13,13,10,10,11,13,13,12,13,13,15,14,12,12,13,14,15,9,10,10,13,13,10,11,11,13,13,10,11,11,13,13,12,13,13,14,14,13,13,13,15,15,11,12,12,14,13,12,13,13,15,14,11,12,12,14,14,14,14,14,16,15,13,13,14,13,16,11,12,12,14,14,12,13,13,14,15,12,13,12,14,14,14,14,14,16,16,14,15,13,16,14,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,7,5,7,7,5,7,7,7,9,9,7,9,9,5,7,7,7,9,9,8,9,9,5,7,7,8,9,9,7,9,9,7,9,9,9,10,11,9,10,10,7,9,9,9,10,9,9,10,11,5,8,7,7,9,9,8,9,9,7,9,9,9,11,10,9,9,10,7,9,9,9,10,10,9,11,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,8,11,13,13,15,16,19,19,19,19,11,8,8,9,9,11,13,15,19,20,14,8,7,7,8,9,12,13,15,20,15,9,6,5,5,7,10,12,14,18,14,9,7,5,3,4,7,10,12,16,13,10,8,6,3,3,5,8,11,14,11,10,9,7,5,4,4,6,11,14,10,10,10,8,6,5,5,6,10,14,10,10,10,9,8,7,7,7,10,14,11,12,12,12,11,10,10,10,12,16,0,0,0,0,2,0,0,0,100,0,0,0,112,225,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,104,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,144,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,184,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,8,211,4,0,0,0,0,0,48,211,4,0,88,211,4,0,0,0,0,0,0,0,0,0,128,211,4,0,168,211,4,0,0,0,0,0,0,0,0,0,208,211,4,0,248,211,4,0,32,212,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,216,209,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,6,10,8,12,8,14,8,14,19,5,3,5,5,7,6,11,7,16,19,7,5,6,7,7,9,11,12,19,19,6,4,7,5,7,6,10,7,18,18,8,6,7,7,7,7,8,9,18,18,7,5,8,5,7,5,8,6,18,18,12,9,10,9,9,9,8,9,18,18,8,7,10,6,8,5,6,4,11,18,11,15,16,12,11,8,8,6,9,18,14,18,18,18,16,16,16,13,16,18,0,0,0,0,4,0,0,0,81,0,0,0,8,225,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,96,225,4,0,0,0,0,0,4,0,0,0,81,0,0,0,160,224,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,248,224,4,0,0,0,0,0,4,0,0,0,113,2,0,0,16,222,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,224,4,0,0,0,0,0,4,0,0,0,113,2,0,0,128,219,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,248,221,4,0,0,0,0,0,2,0,0,0,81,0,0,0,0,219,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,88,219,4,0,0,0,0,0,2,0,0,0,81,0,0,0,128,218,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,216,218,4,0,0,0,0,0,4,0,0,0,81,0,0,0,24,218,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,112,218,4,0,0,0,0,0,2,0,0,0,121,0,0,0,104,217,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,232,217,4,0,0,0,0,0,2,0,0,0,121,0,0,0,184,216,4,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,56,217,4,0,0,0,0,0,2,0,0,0,121,0,0,0,8,216,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,136,216,4,0,0,0,0,0,2,0,0,0,225,0,0,0,224,214,4,0,1,0,0,0,0,228,91,225,0,224,255,96,4,0,0,0,0,0,0,0,200,215,4,0,0,0,0,0,2,0,0,0,225,0,0,0,184,213,4,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,160,214,4,0,0,0,0,0,2,0,0,0,33,1,0,0,72,212,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,112,213,4,0,0,0,0,0,1,6,6,7,8,8,11,10,9,9,11,9,10,9,11,11,9,6,7,6,11,8,11,9,10,10,11,9,11,10,10,10,11,9,5,7,7,8,8,10,11,8,8,11,9,9,10,11,9,10,11,8,9,6,8,8,9,9,10,10,11,11,11,9,11,10,9,11,8,8,8,9,8,9,10,11,9,9,11,11,10,9,9,11,10,8,11,8,9,8,11,9,10,9,10,11,11,10,10,9,10,10,8,8,9,10,10,10,9,11,9,10,11,11,11,11,10,9,11,9,9,11,11,10,8,11,11,11,9,10,10,11,10,11,11,9,11,10,9,11,10,10,10,10,9,11,10,11,10,9,9,10,11,9,8,10,11,11,10,10,11,9,11,10,11,11,10,11,9,9,8,10,8,9,11,9,8,10,10,9,11,10,11,10,11,9,11,8,10,11,11,11,11,10,10,11,11,11,11,10,11,11,10,9,8,10,10,9,11,10,11,11,11,9,9,9,11,11,11,10,10,9,9,10,9,11,11,11,11,8,10,11,10,11,11,10,11,11,9,9,9,10,9,11,9,11,11,11,11,11,10,11,11,10,11,10,11,11,9,11,10,11,10,9,10,9,10,10,11,11,11,11,9,10,9,10,11,11,10,11,11,11,11,11,11,10,11,11,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,6,5,9,9,10,10,6,7,9,9,10,10,10,10,5,10,8,10,8,10,10,8,8,10,9,10,10,10,10,5,8,9,10,10,10,10,8,10,10,10,10,10,10,10,9,10,10,10,10,10,10,9,9,10,10,10,10,10,10,9,9,8,9,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,8,10,10,10,10,10,10,10,10,10,10,10,10,10,6,8,8,10,10,10,8,10,10,10,10,10,10,10,10,5,8,8,10,10,10,9,9,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,5,5,6,6,7,7,8,8,8,8,4,6,6,7,7,8,7,8,8,8,8,4,6,6,7,7,7,7,8,8,8,8,6,7,7,7,7,8,8,8,8,8,9,6,7,7,7,7,8,8,8,8,9,9,7,7,7,8,8,8,8,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,5,8,8,10,10,12,12,4,7,7,8,8,9,9,12,11,14,13,4,7,7,7,8,9,10,11,11,13,12,5,8,8,9,9,11,11,12,13,15,14,5,7,8,9,9,11,11,13,13,17,15,8,9,10,11,11,12,13,17,14,17,16,8,10,9,11,11,12,12,13,15,15,17,10,11,11,12,13,14,15,15,16,16,17,9,11,11,12,12,14,15,17,15,15,16,11,14,12,14,15,16,15,16,16,16,15,11,13,13,14,14,15,15,16,16,15,16,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,4,6,5,7,7,8,8,8,8,8,8,4,5,6,7,7,8,8,8,8,8,8,6,7,7,8,8,8,8,9,9,9,9,6,7,7,8,8,8,8,9,9,9,9,7,8,8,8,8,9,9,9,10,9,10,7,8,8,8,8,9,9,9,9,10,9,8,8,8,9,9,10,10,10,10,10,10,8,8,8,9,9,9,9,10,10,10,10,8,8,8,9,9,9,10,10,10,10,10,8,8,8,9,9,10,10,10,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,4,8,8,4,8,8,5,11,9,8,12,11,8,12,11,5,10,11,8,11,12,8,11,12,4,11,11,11,14,13,10,13,13,8,14,13,12,14,16,12,16,15,8,14,14,13,16,14,12,15,16,4,11,11,10,14,13,11,14,14,8,15,14,12,15,15,12,14,16,8,14,14,11,16,15,12,15,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,6,6,7,7,9,9,4,4,4,6,6,8,8,9,9,4,4,4,6,6,7,7,9,9,6,6,6,7,7,8,8,10,9,6,6,6,7,7,8,8,9,10,7,8,7,8,8,9,9,10,10,7,8,8,8,8,9,9,10,10,9,9,9,10,10,10,10,11,11,9,9,9,10,10,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,8,8,8,10,10,4,5,6,8,8,8,8,10,10,7,8,8,9,9,9,9,11,11,7,8,8,9,9,9,9,11,11,7,8,8,10,9,11,11,12,11,7,8,8,9,9,11,11,12,12,9,10,10,11,11,12,12,13,12,9,10,10,11,11,12,12,12,13,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,6,6,7,9,9,6,6,6,9,9,9,10,9,11,11,9,9,10,11,11,6,7,7,10,9,7,7,8,9,10,7,7,8,10,10,10,10,10,10,12,9,9,10,11,12,6,7,7,9,9,7,8,7,10,10,7,8,7,10,10,9,10,9,12,11,10,10,9,12,10,9,10,10,12,11,10,10,10,12,12,9,10,10,12,12,12,11,12,13,13,11,11,12,12,13,9,10,10,11,12,9,10,10,12,12,10,10,10,12,12,11,12,11,14,13,11,12,12,14,13,5,7,7,10,10,7,8,8,10,10,7,8,7,10,10,10,10,10,12,12,10,10,10,12,12,6,8,7,10,10,7,7,9,10,11,8,9,9,11,10,10,10,11,11,13,10,10,11,12,13,6,8,8,10,10,7,9,8,11,10,8,9,9,10,11,10,11,10,13,11,10,11,10,12,12,10,11,10,12,11,10,10,10,12,13,10,11,11,13,12,11,11,13,11,14,12,12,13,14,14,9,10,10,12,13,10,11,10,13,12,10,11,11,12,13,11,12,11,14,12,12,13,13,15,14,5,7,7,10,10,7,7,8,10,10,7,8,8,10,10,10,10,10,11,12,10,10,10,12,12,7,8,8,10,10,8,9,8,11,10,7,8,9,10,11,10,11,11,12,12,10,10,11,11,13,7,7,8,10,10,8,8,9,10,11,7,9,7,11,10,10,11,11,13,12,11,11,10,13,11,9,10,10,12,12,10,11,11,13,12,10,10,11,12,12,12,13,13,14,14,11,11,12,12,14,10,10,11,12,12,10,11,11,12,13,10,10,10,13,12,12,13,13,15,14,12,13,10,14,11,8,10,10,12,12,10,11,10,13,13,9,10,10,12,12,12,13,13,15,14,11,12,12,13,13,9,10,10,13,12,10,10,11,13,13,10,11,10,13,12,12,12,13,14,15,12,13,12,15,13,9,10,10,12,13,10,11,10,13,12,10,10,11,12,13,12,14,12,15,13,12,12,13,14,15,11,12,11,14,13,11,11,12,14,15,12,13,12,15,14,13,11,15,11,16,13,14,14,16,15,11,12,12,14,14,11,12,11,14,13,12,12,13,14,15,13,14,12,16,12,14,14,14,15,15,8,10,10,12,12,9,10,10,12,12,10,10,11,13,13,11,12,12,13,13,12,13,13,14,15,9,10,10,13,12,10,11,11,13,12,10,10,11,13,13,12,13,12,15,14,12,12,13,13,16,9,9,10,12,13,10,10,11,12,13,10,11,10,13,13,12,12,13,13,15,13,13,12,15,13,11,12,12,14,14,12,13,12,15,14,11,11,12,13,14,14,14,14,16,15,13,12,15,12,16,11,11,12,13,14,12,13,13,14,15,10,12,11,14,13,14,15,14,16,16,13,14,11,15,11,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,8,8,6,7,7,9,9,5,7,7,9,9,9,10,9,11,11,9,9,10,11,11,6,8,8,10,10,8,9,10,11,11,8,9,10,11,11,10,11,11,12,13,10,11,11,13,13,6,8,8,10,10,8,10,9,11,11,8,10,9,11,11,10,11,11,13,13,10,11,11,13,12,9,11,11,14,13,10,12,12,15,14,10,12,11,14,13,12,13,13,15,15,12,13,13,16,14,9,11,11,13,14,10,11,12,14,14,10,12,12,14,15,12,13,13,14,15,12,13,14,15,16,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,14,8,10,10,12,12,9,11,12,12,13,10,12,12,13,13,12,12,13,14,15,11,13,13,15,15,7,10,10,12,12,9,12,11,13,12,10,11,12,13,13,12,13,12,15,14,11,12,13,15,15,10,12,12,15,14,11,13,13,16,15,11,13,13,16,15,14,13,14,15,16,13,15,15,17,17,10,12,12,14,15,11,12,12,15,15,11,13,13,15,16,13,15,13,16,15,13,15,15,16,17,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,14,7,10,10,12,12,10,12,12,14,13,9,11,12,12,13,12,13,13,15,15,12,12,13,13,15,7,10,10,12,13,10,11,12,13,13,10,12,11,13,13,11,13,13,15,15,12,13,12,15,14,9,12,12,15,14,11,13,13,15,15,11,12,13,15,15,13,14,14,17,19,13,13,14,16,16,10,12,12,14,15,11,13,13,15,16,11,13,12,16,15,13,15,15,17,18,14,15,13,16,15,8,11,11,15,14,10,12,12,16,15,10,12,12,16,16,14,15,15,18,17,13,14,15,16,18,9,12,12,15,15,11,12,14,16,17,11,13,13,16,15,15,15,15,17,18,14,15,16,17,17,9,12,12,15,15,11,14,13,16,16,11,13,13,16,16,15,16,15,17,18,14,16,15,17,16,12,14,14,17,16,12,14,15,18,17,13,15,15,17,17,15,15,18,16,20,15,16,17,18,18,11,14,14,16,17,13,15,14,18,17,13,15,15,17,17,15,17,15,18,17,15,17,16,19,18,8,11,11,14,15,10,12,12,15,15,10,12,12,16,16,13,14,14,17,16,14,15,15,17,17,9,12,12,15,16,11,13,13,16,16,11,12,13,16,16,14,16,15,20,17,14,16,16,17,17,9,12,12,15,16,11,13,13,16,17,11,13,13,17,16,14,15,15,17,18,15,15,15,18,18,11,14,14,17,16,13,15,15,17,17,13,14,14,18,17,15,16,16,18,19,15,15,17,17,19,11,14,14,16,17,13,15,14,17,19,13,15,14,18,17,15,17,16,18,18,15,17,15,18,16,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,5,6,6,5,6,6,5,6,6,6,7,8,6,7,8,5,6,6,6,8,7,6,8,7,5,6,6,6,8,8,6,8,8,6,8,8,7,7,10,8,9,9,6,8,8,7,9,8,8,9,10,5,6,6,6,8,8,7,8,8,6,8,8,8,10,9,7,8,9,6,8,8,8,9,9,7,10,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,7,7,10,10,7,9,10,5,7,8,7,10,9,7,10,10,5,8,8,8,10,10,8,10,10,7,10,10,10,11,12,10,12,13,7,10,10,9,13,11,10,12,13,5,8,8,8,10,10,8,10,10,7,10,10,10,12,12,9,11,12,7,10,11,10,12,12,10,13,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,7,10,9,11,10,15,11,13,16,6,4,6,6,7,7,10,9,12,16,10,6,5,6,6,7,10,11,16,16,9,6,7,6,7,7,10,8,14,16,11,6,5,4,5,6,8,9,15,16,9,6,6,5,6,6,9,8,14,16,12,7,6,6,5,6,6,7,13,16,8,6,7,6,5,5,4,4,11,16,9,8,9,9,7,7,6,5,13,16,14,14,16,15,16,15,16,16,16,16,0,0,0,0,2,0,0,0,64,0,0,0,136,239,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,226,4,0,0,0,0,0,0,0,0,0,0,0,0,0,232,226,4,0,0,0,0,0,0,0,0,0,0,0,0,0,16,227,4,0,0,0,0,0,0,0,0,0,0,0,0,0,56,227,4,0,0,0,0,0,0,0,0,0,0,0,0,0,96,227,4,0,0,0,0,0,136,227,4,0,176,227,4,0,0,0,0,0,0,0,0,0,216,227,4,0,0,228,4,0,40,228,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,81,0,0,0,32,239,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,120,239,4,0,0,0,0,0,4,0,0,0,81,0,0,0,184,238,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,16,239,4,0,0,0,0,0,4,0,0,0,113,2,0,0,40,236,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,238,4,0,0,0,0,0,4,0,0,0,113,2,0,0,152,233,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,236,4,0,0,0,0,0,2,0,0,0,81,0,0,0,24,233,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,112,233,4,0,0,0,0,0,2,0,0,0,169,0,0,0,48,232,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,224,232,4,0,0,0,0,0,2,0,0,0,25,0,0,0,248,231,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,24,232,4,0,0,0,0,0,4,0,0,0,81,0,0,0,144,231,4,0,1,0,0,0,0,176,19,225,0,176,19,97,2,0,0,0,0,0,0,0,232,231,4,0,0,0,0,0,2,0,0,0,225,0,0,0,104,230,4,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,80,231,4,0,0,0,0,0,2,0,0,0,185,1,0,0,80,228,4,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,16,230,4,0,0,0,0,0,1,6,6,7,8,7,7,10,9,10,9,11,10,9,11,10,9,9,9,9,10,6,8,7,9,9,8,8,10,10,9,11,11,12,12,10,9,11,9,12,10,9,6,9,8,9,12,8,8,11,9,11,11,12,11,12,12,10,11,11,10,10,11,7,10,9,9,9,9,9,10,9,10,9,10,10,12,10,10,10,11,12,10,10,7,9,9,9,10,9,9,10,10,9,9,9,11,11,10,10,10,10,9,9,12,7,9,10,9,11,9,10,9,10,11,11,11,10,11,12,9,12,11,10,10,10,7,9,9,9,9,10,12,10,9,11,12,10,11,12,12,11,9,10,11,10,11,7,9,10,10,11,10,9,10,11,11,11,10,12,12,12,11,11,10,11,11,12,8,9,10,12,11,10,10,12,12,12,12,12,10,11,11,9,11,10,12,11,11,8,9,10,10,11,12,11,11,10,10,10,12,12,12,9,10,12,12,12,12,12,8,10,11,10,10,12,9,11,12,12,11,12,12,12,12,10,12,10,10,10,10,8,12,11,11,11,10,10,11,12,12,12,12,11,12,12,12,11,11,11,12,10,9,10,10,12,10,12,10,12,12,10,10,10,11,12,12,12,11,12,12,12,11,10,11,12,12,12,11,12,12,11,12,12,11,12,12,12,12,11,12,12,10,10,10,10,11,11,12,11,12,12,12,12,12,12,12,11,12,11,10,11,11,12,11,11,9,10,10,10,12,10,10,11,9,11,12,11,12,11,12,12,10,11,10,12,9,9,9,12,11,10,11,10,12,10,12,10,12,12,12,11,11,11,11,11,10,9,10,10,11,10,11,11,12,11,10,11,12,12,12,11,11,9,12,10,12,9,10,12,10,10,11,10,11,11,12,11,10,11,10,11,11,11,11,12,11,11,10,9,10,10,10,9,11,11,10,9,12,10,11,12,11,12,12,11,12,11,12,11,10,11,10,12,11,12,11,12,11,12,10,11,10,10,12,11,10,11,11,11,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,5,5,6,5,9,10,11,11,10,10,10,10,10,10,5,8,8,8,10,10,10,10,10,10,10,10,10,10,10,5,8,9,9,9,10,10,10,10,10,10,10,10,10,10,5,10,8,10,10,10,10,10,10,10,10,10,10,10,10,4,8,9,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,5,6,6,4,6,6,6,6,4,6,6,6,6,6,6,6,7,7,6,6,6,7,7,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,10,10,12,12,13,13,18,17,3,6,6,9,9,11,11,13,13,14,14,18,17,3,6,6,9,9,11,11,13,13,14,14,17,18,7,9,9,11,11,13,13,14,14,15,15,0,0,7,9,9,11,11,13,13,14,14,15,16,19,18,10,11,11,13,13,14,14,16,15,17,18,0,0,10,11,11,13,13,14,14,15,15,16,18,0,0,11,13,13,14,14,15,15,17,17,0,19,0,0,11,13,13,14,14,14,15,16,18,0,19,0,0,13,14,14,15,15,18,17,18,18,0,19,0,0,13,14,14,15,16,16,16,18,18,19,0,0,0,16,17,17,0,17,19,19,0,19,0,0,0,0,16,19,16,17,18,0,19,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,8,8,8,9,9,4,6,6,8,8,8,8,9,9,7,8,8,9,9,9,9,11,10,7,8,8,9,9,9,9,10,11,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,9,9,10,10,11,11,12,12,9,9,9,10,10,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,6,6,6,9,9,6,6,6,9,9,9,10,9,11,11,9,9,9,11,11,6,7,7,10,10,7,7,8,10,10,7,7,8,10,10,10,10,10,11,12,9,10,10,11,12,6,7,7,10,10,7,8,7,10,10,7,8,7,10,10,10,11,10,12,11,10,10,10,13,10,9,10,10,12,12,10,11,10,14,12,9,11,11,13,13,11,12,13,13,13,11,12,12,15,13,9,10,10,12,13,9,11,10,12,13,10,10,11,12,13,11,12,12,12,13,11,12,12,13,13,5,7,7,10,10,7,8,8,10,10,7,8,8,10,10,10,11,10,12,13,10,10,11,12,12,6,8,8,11,10,7,8,9,10,12,8,9,9,11,11,11,10,11,11,12,10,11,11,13,12,7,8,8,10,11,8,9,8,11,10,8,9,9,11,11,10,12,10,13,11,10,11,11,13,13,10,11,10,14,13,10,10,11,13,13,10,12,11,14,13,12,11,13,12,13,13,12,13,14,14,10,11,11,13,13,10,11,10,12,13,10,12,12,12,14,12,12,12,14,12,12,13,12,17,15,5,7,7,10,10,7,8,8,10,10,7,8,8,11,10,10,10,11,12,12,10,11,11,12,13,6,8,8,11,10,8,9,9,11,11,7,8,9,10,11,11,11,11,12,12,10,10,11,12,13,6,8,8,10,11,8,9,9,11,11,7,9,7,11,10,10,12,12,13,13,11,11,10,13,11,9,11,10,14,13,11,11,11,15,13,10,10,11,13,13,12,13,13,14,14,12,11,12,12,13,10,11,11,12,13,10,11,12,13,13,10,11,10,13,12,12,12,13,14,0,12,13,11,13,11,8,10,10,13,13,10,11,11,14,13,10,11,11,13,12,13,14,14,14,15,12,12,12,15,14,9,11,10,13,12,10,10,11,13,14,11,11,11,15,12,13,12,14,15,16,13,13,13,14,13,9,11,11,12,12,10,12,11,13,13,10,11,11,13,14,13,13,13,15,15,13,13,14,17,15,11,12,12,14,14,10,11,12,13,15,12,13,13,0,15,13,11,14,12,16,14,16,14,0,15,11,12,12,14,16,11,13,12,16,15,12,13,13,14,15,12,14,12,15,13,15,14,14,16,16,8,10,10,13,13,10,11,10,13,14,10,11,11,13,13,13,13,12,14,14,14,13,13,16,17,9,10,10,12,14,10,12,11,14,13,10,11,12,13,14,12,12,12,15,15,13,13,13,14,14,9,10,10,13,13,10,11,12,12,14,10,11,10,13,13,13,13,13,14,16,13,13,13,14,14,11,12,13,15,13,12,14,13,14,16,12,12,13,13,14,13,14,14,17,15,13,12,17,13,16,11,12,13,14,15,12,13,14,14,17,11,12,11,14,14,13,16,14,16,0,14,15,11,15,11,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,7,7,6,7,7,8,8,6,7,8,8,8,8,9,9,11,11,8,9,9,11,11,6,9,8,10,10,8,10,10,11,11,8,10,10,11,11,10,11,10,13,12,9,11,10,13,13,6,8,9,10,10,8,10,10,11,11,8,10,10,11,11,9,10,11,13,12,10,10,11,12,12,8,11,11,14,13,10,12,11,15,13,9,12,11,15,14,12,14,13,16,14,12,13,13,17,14,8,11,11,13,14,9,11,12,14,15,10,11,12,13,15,11,13,13,14,16,12,13,14,14,16,5,9,9,11,11,9,11,11,12,12,8,11,11,12,12,11,12,12,15,14,10,12,12,15,15,8,11,11,13,12,10,12,12,13,13,10,12,12,14,13,12,12,13,14,15,11,13,13,17,16,7,11,11,13,13,10,12,12,14,13,10,12,12,13,14,12,13,12,15,14,11,13,13,15,14,9,12,12,16,15,11,13,13,17,16,10,13,13,16,16,13,14,15,15,16,13,15,14,19,17,9,12,12,14,16,11,13,13,15,16,10,13,13,17,16,13,14,13,17,15,12,15,15,16,17,5,9,9,11,11,8,11,11,13,12,9,11,11,12,12,10,12,12,14,15,11,12,12,14,14,7,11,10,13,12,10,12,12,14,13,10,11,12,13,13,11,13,13,15,16,12,12,13,15,15,7,11,11,13,13,10,13,13,14,14,10,12,12,13,13,11,13,13,16,15,12,13,13,15,14,9,12,12,15,15,10,13,13,17,16,11,12,13,15,15,12,15,14,18,18,13,14,14,16,17,9,12,12,15,16,10,13,13,15,16,11,13,13,15,16,13,15,15,17,17,13,15,14,16,15,7,11,11,15,16,10,13,12,16,17,10,12,13,15,17,15,16,16,18,17,13,15,15,17,18,8,12,12,16,16,11,13,14,17,18,11,13,13,18,16,15,17,16,17,19,14,15,15,17,16,8,12,12,16,15,11,14,13,18,17,11,13,14,18,17,15,16,16,18,17,13,16,16,18,18,11,15,14,18,17,13,14,15,18,0,12,15,15,0,17,17,16,17,17,18,14,16,18,18,0,11,14,14,17,0,12,15,14,17,19,12,15,14,18,0,15,18,16,0,17,14,18,16,18,0,7,11,11,16,15,10,12,12,18,16,10,13,13,16,15,13,15,14,17,17,14,16,16,19,18,8,12,12,16,16,11,13,13,18,16,11,13,14,17,16,14,15,15,19,18,15,16,16,0,19,8,12,12,16,17,11,13,13,17,17,11,14,13,17,17,13,15,15,17,19,15,17,17,19,0,11,14,15,19,17,12,15,16,18,18,12,14,15,19,17,14,16,17,0,18,16,16,19,17,0,11,14,14,18,19,12,15,14,17,17,13,16,14,17,16,14,17,16,18,18,15,18,15,0,18,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,7,8,9,7,8,9,5,7,7,7,9,8,7,9,7,4,7,7,7,9,9,7,8,8,6,9,8,7,8,11,9,11,10,6,8,9,8,11,8,9,10,11,4,7,7,7,8,8,7,9,9,6,9,8,9,11,10,8,8,11,6,8,9,9,10,11,8,11,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,8,5,8,8,8,10,10,8,10,11,5,8,8,8,10,10,8,10,10,4,9,9,9,12,11,8,11,11,8,12,11,10,12,14,10,13,13,7,11,11,10,14,12,11,14,14,4,9,9,8,11,11,9,11,12,7,11,11,10,13,14,10,12,14,8,11,12,10,14,14,10,13,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,5,8,7,14,8,9,19,5,2,5,5,9,6,9,19,8,4,5,7,8,9,13,19,7,4,6,5,9,6,9,19,12,8,7,9,10,11,13,19,8,5,8,6,9,6,7,19,8,8,10,7,7,4,5,19,12,17,19,15,18,13,11,18,9,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,9,0,0,0,9,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,112,199,64,0,0,0,0,0,136,211,64,0,0,0,0,0,124,229,64,0,0,0,0,0,255,244,64,200,47,1,0,32,240,4,0,200,47,1,0,64,240,4,0,200,47,1,0,128,240,4,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,248,45,5,0,248,45,5,0,32,46,5,0,32,46,5,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,32,5,5,0,32,5,5,0,72,5,5,0,72,5,5,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,8,6,5,0,8,6,5,0,72,5,5,0,72,5,5,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,192,240,4,0,192,240,4,0,232,240,4,0,232,240,4,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,168,241,4,0,168,241,4,0,232,240,4,0,232,240,4,0,2,0,0,0,100,0,0,0,184,4,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,242,4,0,0,0,0,0,0,0,0,0,0,0,0,0,96,242,4,0,0,0,0,0,0,0,0,0,0,0,0,0,136,242,4,0,0,0,0,0,0,0,0,0,0,0,0,0,176,242,4,0,0,0,0,0,216,242,4,0,0,243,4,0,0,0,0,0,0,0,0,0,40,243,4,0,80,243,4,0,0,0,0,0,0,0,0,0,120,243,4,0,160,243,4,0,0,0,0,0,0,0,0,0,200,243,4,0,240,243,4,0,0,0,0,0,0,0,0,0,24,244,4,0,64,244,4,0,104,244,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,208,241,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,9,9,9,8,9,10,13,16,5,4,5,6,7,7,8,9,12,16,6,5,5,5,7,7,9,10,12,15,7,6,5,4,5,6,8,9,10,13,8,7,7,5,5,5,7,9,10,12,7,7,7,6,5,5,6,7,10,12,8,8,8,7,7,5,5,6,9,11,8,9,9,8,8,6,6,5,8,11,10,11,12,12,11,9,9,8,9,12,13,14,15,15,14,12,12,11,11,13,0,0,0,0,4,0,0,0,81,0,0,0,80,4,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,4,5,0,0,0,0,0,4,0,0,0,113,2,0,0,192,1,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,4,5,0,0,0,0,0,2,0,0,0,81,0,0,0,64,1,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,152,1,5,0,0,0,0,0,2,0,0,0,33,1,0,0,208,255,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,248,0,5,0,0,0,0,0,4,0,0,0,81,0,0,0,104,255,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,192,255,4,0,0,0,0,0,2,0,0,0,121,0,0,0,184,254,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,56,255,4,0,0,0,0,0,2,0,0,0,169,0,0,0,208,253,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,128,254,4,0,0,0,0,0,2,0,0,0,25,0,0,0,152,253,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,184,253,4,0,0,0,0,0,2,0,0,0,169,0,0,0,176,252,4,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,96,253,4,0,0,0,0,0,2,0,0,0,121,0,0,0,0,252,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,128,252,4,0,0,0,0,0,2,0,0,0,225,0,0,0,216,250,4,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,192,251,4,0,0,0,0,0,2,0,0,0,185,1,0,0,192,248,4,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,128,250,4,0,0,0,0,0,2,0,0,0,33,1,0,0,80,247,4,0,1,0,0,0,0,24,157,225,0,24,61,97,5,0,0,0,0,0,0,0,120,248,4,0,0,0,0,0,2,0,0,0,105,1,0,0,144,245,4,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,0,247,4,0,0,0,0,0,1,0,0,0,49,0,0,0,144,244,4,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,200,244,4,0,0,0,0,0,2,4,4,4,4,5,5,5,5,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,7,8,8,10,9,11,10,13,11,14,13,6,6,6,8,8,8,8,8,7,9,8,11,9,13,11,14,12,14,13,5,6,6,8,8,8,8,8,8,9,9,11,11,13,11,14,13,15,15,17,8,8,8,8,9,9,9,8,11,9,12,10,13,11,14,12,14,13,17,8,8,8,8,9,9,9,9,10,10,11,11,13,13,13,14,16,15,17,12,12,8,8,9,9,10,10,11,11,12,11,13,12,13,12,14,13,16,12,12,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,17,17,17,9,9,9,9,11,11,12,12,12,13,13,13,16,14,14,14,17,17,17,9,8,9,8,11,10,12,12,13,13,14,14,15,15,16,16,17,17,17,12,12,10,10,11,12,12,13,13,14,13,15,15,14,16,15,17,17,17,12,12,10,8,12,9,13,12,14,14,15,14,15,16,16,16,17,17,17,17,17,11,11,12,12,14,14,14,16,15,16,15,16,15,17,17,17,17,17,17,11,9,12,10,13,11,15,14,16,16,17,16,16,15,17,17,17,17,17,15,15,12,12,14,14,15,16,16,15,16,16,17,17,17,17,17,17,17,14,14,12,10,14,11,15,12,17,16,15,16,17,16,17,17,17,17,17,17,17,13,13,14,14,14,16,17,17,16,17,17,17,17,17,17,17,17,17,17,13,9,13,12,15,13,16,16,17,17,17,17,17,17,17,17,17,17,17,15,17,14,14,15,16,16,17,16,17,16,17,17,17,17,17,17,17,17,17,17,14,13,15,16,16,17,16,17,17],"i8",L3,x.GLOBAL_BASE+315120),d3([17,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,4,3,10,8,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,11,11,11,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,11,10,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,10,9,10,10,10,10,11,11,11,8,8,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,11,11,11,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,10,10,6,6,6,8,8,9,9,8,8,9,9,10,10,11,11,6,5,5,8,7,9,9,8,8,9,9,10,10,11,11,20,8,8,8,8,9,9,9,9,10,10,11,10,12,11,20,8,8,8,8,9,9,9,9,10,10,11,11,12,12,20,12,12,9,9,10,10,10,10,11,11,12,12,13,12,20,13,13,9,9,10,10,10,10,11,11,12,12,13,13,20,20,20,9,9,9,9,10,10,11,11,12,12,13,12,20,20,20,9,9,9,8,10,10,12,11,12,12,13,13,20,20,20,13,13,10,10,11,11,12,12,13,13,13,13,20,20,20,13,13,10,10,11,10,12,11,13,13,14,14,20,20,20,20,20,11,11,11,11,12,12,13,13,14,14,20,20,20,20,20,11,10,11,11,13,11,13,13,14,14,20,20,21,21,21,14,14,11,12,13,13,13,13,14,14,21,21,21,21,21,15,15,12,11,13,12,14,13,15,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,7,7,9,9,9,6,7,7,7,7,7,8,8,9,9,9,6,6,7,7,7,7,8,8,9,9,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,7,7,8,8,9,9,9,7,7,8,8,7,7,8,8,9,9,9,9,9,8,8,7,7,8,8,9,9,9,9,9,8,8,7,7,8,8,9,9,9,9,9,7,7,7,7,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,8,10,9,10,10,5,5,5,7,7,9,9,10,10,11,10,12,11,6,5,5,7,7,9,9,10,10,11,11,12,12,20,7,7,7,7,9,9,10,10,11,11,12,12,20,7,7,7,7,9,9,11,10,12,11,12,12,20,11,11,8,8,10,10,11,11,12,12,13,13,20,12,12,8,8,9,9,11,11,12,12,13,13,20,20,21,10,10,10,10,11,11,12,12,13,13,21,21,21,10,10,10,10,11,11,12,12,13,13,21,21,21,14,14,11,11,12,12,13,13,13,14,21,21,21,16,15,11,11,12,11,13,13,14,14,21,21,21,21,21,13,13,12,12,13,13,14,14,21,21,21,21,21,13,13,12,12,13,13,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,7,8,8,9,9,10,10,5,5,5,7,7,9,9,9,9,11,11,12,12,6,5,5,7,7,9,9,10,9,11,11,12,12,0,7,7,7,7,9,9,10,10,11,11,12,12,0,7,7,7,7,9,9,10,10,11,11,12,12,0,11,11,8,8,10,10,11,11,12,12,13,13,0,12,12,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,6,6,7,7,7,7,11,10,10,6,6,7,7,8,8,8,8,10,10,10,6,6,7,7,8,8,8,8,11,11,11,7,7,8,8,8,8,9,9,11,11,11,6,7,8,8,8,8,9,9,11,11,11,7,7,8,8,8,8,8,8,11,11,11,7,7,8,8,8,8,9,9,11,11,11,8,8,8,8,8,8,8,8,11,11,11,11,11,8,8,8,8,8,8,12,11,11,11,11,8,8,8,8,8,8,12,11,11,11,11,7,7,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,6,6,10,11,10,10,10,11,4,6,6,10,10,11,10,11,10,5,10,10,9,12,11,10,12,12,7,10,10,12,12,12,12,13,13,7,11,10,11,12,12,12,13,13,6,11,10,10,12,12,11,12,12,7,11,10,12,13,13,12,12,12,7,10,11,12,13,13,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,6,7,7,8,8,8,8,9,9,0,0,0,6,6,7,7,8,8,8,8,9,9,10,10,11,10,0,0,0,6,6,7,7,8,8,8,8,9,9,10,10,10,10,0,0,0,6,6,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,6,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,10,10,11,11,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,11,11,12,12,0,0,0,7,8,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,5,5,7,7,8,8,0,0,0,6,6,8,8,9,9,0,0,0,6,6,8,8,9,9,0,0,0,7,7,8,9,10,10,0,0,0,7,7,9,9,10,10,0,0,0,8,8,9,9,11,11,0,0,0,7,7,9,9,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,7,7,0,0,0,8,8,0,0,0,8,8,0,0,0,8,8,0,0,0,8,8,4,4,4,8,7,0,0,0,8,8,0,0,0,8,8,0,0,0,9,9,0,0,0,9,9,4,4,4,7,8,0,0,0,8,8,0,0,0,8,8,0,0,0,9,9,0,0,0,9,9,7,8,8,10,9,0,0,0,12,11,0,0,0,11,12,0,0,0,14,13,0,0,0,14,14,7,8,8,9,10,0,0,0,11,12,0,0,0,11,11,0,0,0,14,14,0,0,0,14,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,8,11,11,0,0,0,12,11,0,0,0,12,12,0,0,0,13,12,0,0,0,13,13,8,8,8,11,11,0,0,0,11,11,0,0,0,12,12,0,0,0,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,8,12,11,0,0,0,12,12,0,0,0,12,11,0,0,0,13,13,0,0,0,13,13,8,8,8,11,12,0,0,0,11,12,0,0,0,11,12,0,0,0,13,14,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,9,14,14,0,0,0,13,13,0,0,0,13,13,0,0,0,13,12,0,0,0,13,13,8,9,9,14,14,0,0,0,13,13,0,0,0,13,13,0,0,0,12,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,9,14,14,0,0,0,13,13,0,0,0,13,13,0,0,0,13,13,0,0,0,13,12,8,9,9,14,14,0,0,0,13,13,0,0,0,13,13,0,0,0,13,13,0,0,0,12,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,3,3,0,0,0,0,0,0,4,5,5,0,0,0,0,0,0,4,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,7,10,12,11,12,13,15,16,18,15,10,8,8,8,9,10,12,13,14,17,10,7,7,7,7,8,10,12,15,18,10,7,7,5,5,6,8,10,13,15,10,7,6,5,4,4,6,9,12,15,11,7,7,5,4,3,4,7,11,13,12,9,8,7,5,4,4,5,10,13,11,11,11,9,7,5,5,5,9,12,13,12,13,12,10,8,8,7,9,13,14,14,14,14,13,11,11,10,10,13,0,0,0,0,2,0,0,0,100,0,0,0,144,45,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,232,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,16,7,5,0,0,0,0,0,0,0,0,0,0,0,0,0,56,7,5,0,0,0,0,0,96,7,5,0,136,7,5,0,0,0,0,0,0,0,0,0,176,7,5,0,216,7,5,0,0,0,0,0,0,0,0,0,0,8,5,0,40,8,5,0,80,8,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,48,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,5,20,7,10,7,8,10,11,11,4,2,20,5,8,6,7,9,10,10,20,20,20,20,19,19,19,19,19,19,7,5,19,6,10,7,9,11,13,17,11,8,19,10,7,7,8,10,11,15,7,5,19,7,7,5,6,9,11,16,7,6,19,8,7,6,6,7,9,13,9,9,19,11,9,8,6,7,8,13,12,14,19,16,13,10,9,8,9,13,14,17,19,18,18,17,12,11,11,13,0,0,0,0,8,0,0,0,161,25,0,0,216,19,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,128,45,5,0,0,0,0,0,4,0,0,0,113,2,0,0,72,17,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,19,5,0,0,0,0,0,2,0,0,0,81,0,0,0,200,16,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,32,17,5,0,0,0,0,0,2,0,0,0,81,0,0,0,72,16,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,160,16,5,0,0,0,0,0,2,0,0,0,33,1,0,0,216,14,5,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,0,16,5,0,0,0,0,0,4,0,0,0,81,0,0,0,112,14,5,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,200,14,5,0,0,0,0,0,2,0,0,0,121,0,0,0,192,13,5,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,64,14,5,0,0,0,0,0,2,0,0,0,169,0,0,0,216,12,5,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,136,13,5,0,0,0,0,0,2,0,0,0,25,0,0,0,160,12,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,12,5,0,0,0,0,0,2,0,0,0,169,0,0,0,184,11,5,0,1,0,0,0,0,136,93,225,0,176,19,97,4,0,0,0,0,0,0,0,104,12,5,0,0,0,0,0,2,0,0,0,225,0,0,0,144,10,5,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,120,11,5,0,0,0,0,0,2,0,0,0,185,1,0,0,120,8,5,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,56,10,5,0,0,0,0,0,1,4,4,6,6,7,7,8,7,8,8,9,9,9,9,10,10,10,9,10,10,11,12,12,8,8,8,8,9,9,9,9,10,10,10,10,10,11,11,10,12,11,11,13,11,7,7,8,8,8,8,9,9,9,10,10,10,10,9,10,10,11,11,12,11,11,8,8,8,8,9,9,10,10,10,10,11,11,11,11,11,11,11,12,11,12,12,8,8,9,9,9,9,9,10,10,10,10,10,10,11,11,11,11,11,11,12,11,9,9,9,9,10,10,10,10,11,10,11,11,11,11,11,11,12,12,12,12,11,9,9,9,9,10,10,10,10,11,11,11,11,11,11,11,11,11,12,12,12,13,9,10,10,9,11,10,10,10,10,11,11,11,11,11,10,11,12,11,12,12,11,12,11,10,9,10,10,11,10,11,11,11,11,11,11,11,11,11,12,12,11,12,12,12,10,10,10,11,10,11,11,11,11,11,11,11,11,11,11,11,12,13,12,12,11,9,10,10,11,11,10,11,11,11,12,11,11,11,11,11,12,12,13,13,12,13,10,10,12,10,11,11,11,11,11,11,11,11,11,12,12,11,13,12,12,12,12,13,12,11,11,11,11,11,11,12,11,12,11,11,11,11,12,12,13,12,11,12,12,11,11,11,11,11,12,11,11,11,11,12,11,11,12,11,12,13,13,12,12,12,12,11,11,11,11,11,12,11,11,12,11,12,11,11,11,11,13,12,12,12,12,13,11,11,11,12,12,11,11,11,12,11,12,12,12,11,12,13,12,11,11,12,12,11,12,11,11,11,12,12,11,12,11,11,11,12,12,12,12,13,12,13,12,12,12,12,11,11,12,11,11,11,11,11,11,12,12,12,13,12,11,13,13,12,12,11,12,10,11,11,11,11,12,11,12,12,11,12,12,13,12,12,13,12,12,12,12,12,11,12,12,12,11,12,11,11,11,12,13,12,13,13,13,13,13,12,13,13,12,12,13,11,11,11,11,11,12,11,11,12,11,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,4,4,8,8,12,13,14,14,14,14,14,14,6,6,6,6,6,10,9,14,14,14,14,14,14,14,14,7,6,5,6,6,10,9,12,13,13,13,13,13,13,13,13,7,7,9,9,11,11,12,13,13,13,13,13,13,13,13,7,7,8,8,11,12,13,13,13,13,13,13,13,13,13,12,12,10,10,13,12,13,13,13,13,13,13,13,13,13,12,12,10,10,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,6,5,5,7,8,8,9,8,8,9,9,10,11,6,5,5,8,8,9,9,8,8,9,10,10,11,0,8,8,8,9,9,9,9,9,10,10,11,11,0,9,9,9,8,9,9,9,9,10,10,11,11,0,13,13,9,9,10,10,10,10,11,11,12,12,0,14,13,9,9,10,10,10,10,11,11,12,12,0,0,0,10,10,9,9,11,11,12,12,13,12,0,0,0,10,10,9,9,10,10,12,12,13,13,0,0,0,13,14,11,10,11,11,12,12,13,14,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,12,12,12,12,13,13,14,15,0,0,0,0,0,12,12,12,12,13,13,14,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,6,7,7,7,7,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,9,9,10,10,10,10,10,8,8,8,8,9,9,10,10,10,10,10,9,9,8,8,9,9,10,10,10,10,10,8,8,8,8,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,6,7,6,6,4,7,7,10,9,10,10,10,9,4,7,7,10,10,10,11,10,10,6,10,10,11,11,11,11,10,10,6,10,9,11,11,11,11,10,10,6,10,10,11,11,11,11,10,10,7,11,11,11,11,11,12,12,11,6,10,10,11,10,10,11,11,11,6,10,10,10,11,10,11,11,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,6,6,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,9,10,9,10,10,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,11,12,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,10,10,11,10,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,5,5,6,6,8,8,0,0,0,7,7,7,7,9,9,0,0,0,7,7,7,7,9,9,0,0,0,8,8,8,8,9,9,0,0,0,8,8,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,10,10,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,2,3,7,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,8,9,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,9,11,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,11,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,8,9,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,9,11,9],"i8",L3,x.GLOBAL_BASE+325360),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,6,17,8,12,9,10,10,12,13,5,2,17,4,9,5,7,8,11,13,16,16,16,16,16,16,16,16,16,16,6,4,16,5,10,5,7,10,14,16,13,9,16,11,8,7,8,9,13,16,7,4,16,5,7,4,6,8,11,13,8,6,16,7,8,5,5,7,9,13,9,8,16,9,8,6,6,7,9,13,11,11,16,10,10,7,7,7,9,13,13,13,16,13,13,9,9,9,10,13,0,0,0,0,2,0,0,0,100,0,0,0,88,85,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,46,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,47,5,0,0,0,0,0,0,0,0,0,0,0,0,0,48,47,5,0,0,0,0,0,0,0,0,0,0,0,0,0,88,47,5,0,0,0,0,0,0,0,0,0,0,0,0,0,128,47,5,0,0,0,0,0,168,47,5,0,208,47,5,0,0,0,0,0,0,0,0,0,248,47,5,0,32,48,5,0,0,0,0,0,0,0,0,0,72,48,5,0,112,48,5,0,152,48,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,160,59,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,72,85,5,0,0,0,0,0,4,0,0,0,113,2,0,0,16,57,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,59,5,0,0,0,0,0,2,0,0,0,81,0,0,0,144,56,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,232,56,5,0,0,0,0,0,2,0,0,0,81,0,0,0,16,56,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,104,56,5,0,0,0,0,0,2,0,0,0,33,1,0,0,160,54,5,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,200,55,5,0,0,0,0,0,4,0,0,0,81,0,0,0,56,54,5,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,144,54,5,0,0,0,0,0,2,0,0,0,121,0,0,0,136,53,5,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,8,54,5,0,0,0,0,0,2,0,0,0,169,0,0,0,160,52,5,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,80,53,5,0,0,0,0,0,2,0,0,0,25,0,0,0,104,52,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,52,5,0,0,0,0,0,4,0,0,0,81,0,0,0,0,52,5,0,1,0,0,0,0,176,19,225,0,176,19,97,2,0,0,0,0,0,0,0,88,52,5,0,0,0,0,0,2,0,0,0,225,0,0,0,216,50,5,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,192,51,5,0,0,0,0,0,2,0,0,0,185,1,0,0,192,48,5,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,128,50,5,0,0,0,0,0,1,5,5,7,8,8,7,9,9,9,12,12,11,12,12,10,10,11,12,12,12,11,12,12,8,9,8,7,9,10,10,11,11,10,11,12,10,12,10,12,12,12,11,12,11,9,8,8,9,10,9,8,9,10,12,12,11,11,12,11,10,11,12,11,12,12,8,9,9,9,10,11,12,11,12,11,11,11,11,12,12,11,11,12,12,11,11,9,9,8,9,9,11,9,9,10,9,11,11,11,11,12,11,11,10,12,12,12,9,12,11,10,11,11,11,11,12,12,12,11,11,11,12,10,12,12,12,10,10,9,10,9,10,10,9,9,9,10,10,12,10,11,11,9,11,11,10,11,11,11,10,10,10,9,9,10,10,9,9,10,11,11,10,11,10,11,10,11,11,10,11,11,11,10,9,10,10,9,10,9,9,11,9,9,11,10,10,11,11,10,10,11,10,11,8,9,11,11,10,9,10,11,11,10,11,11,10,10,10,11,10,9,10,10,11,9,10,10,9,11,10,10,10,10,11,10,11,11,9,11,10,11,10,10,11,11,10,10,10,9,10,10,11,11,11,9,10,10,10,10,10,11,10,10,10,9,10,10,11,10,10,10,10,10,9,10,11,10,10,10,10,11,11,11,10,10,10,10,10,11,10,11,10,11,10,10,10,9,11,11,10,10,10,11,11,10,10,10,10,10,10,10,10,11,11,9,10,10,10,11,10,11,10,10,10,11,9,10,11,10,11,10,10,9,10,10,10,11,10,11,10,10,10,10,10,11,11,10,11,11,10,10,11,11,10,9,9,10,10,10,10,10,9,11,9,10,10,10,11,11,10,10,10,10,11,11,11,10,9,9,10,10,11,10,10,10,10,10,11,11,11,10,10,10,11,11,11,9,10,10,10,10,9,10,9,10,11,10,11,10,10,11,11,10,11,11,11,11,11,10,11,10,10,10,9,11,11,10,11,11,11,11,11,11,11,11,11,10,11,10,10,10,10,11,10,10,11,9,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,5,5,5,5,9,11,11,10,10,10,10,10,10,10,7,6,6,6,6,10,10,10,10,10,10,10,10,10,10,7,6,6,6,6,10,9,10,10,10,10,10,10,10,10,10,7,7,8,9,10,10,10,10,10,10,10,10,10,10,10,8,7,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,5,5,7,7,7,6,6,7,7,7,5,5,7,7,7,6,6,7,7,7,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,6,8,8,10,10,6,5,6,8,8,8,8,8,8,8,9,10,10,7,6,6,8,8,8,8,8,8,8,8,10,10,0,8,8,8,8,9,8,9,9,9,10,10,10,0,9,8,8,8,9,9,8,8,9,9,10,10,0,12,11,8,8,9,9,9,9,10,10,11,10,0,12,13,8,8,9,10,9,9,11,11,11,12,0,0,0,8,8,8,8,10,9,12,13,12,14,0,0,0,8,8,8,9,10,10,12,12,13,14,0,0,0,13,13,9,9,11,11,0,0,14,0,0,0,0,14,14,10,10,12,11,12,14,14,14,0,0,0,0,0,11,11,13,13,14,13,14,14,0,0,0,0,0,12,13,13,12,13,14,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,4,6,6,7,7,8,8,8,8,10,10,10,7,7,8,8,8,9,9,9,10,10,10,6,7,8,8,8,8,9,8,10,10,10,7,7,8,8,9,9,9,9,10,10,10,7,7,8,8,9,9,8,9,10,10,10,8,8,9,9,9,9,9,9,11,11,11,8,8,9,9,9,9,9,10,10,11,11,9,9,9,9,9,9,9,10,11,11,11,10,11,9,9,9,9,10,9,11,11,11,10,11,10,10,9,9,10,10,11,11,11,11,11,9,9,9,9,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,6,7,6,6,4,7,7,11,10,10,11,11,10,4,7,7,10,10,10,11,10,10,6,10,10,11,11,11,11,11,10,6,9,9,11,12,12,11,9,9,6,9,10,11,12,12,11,9,10,7,11,11,11,11,11,12,13,12,6,9,10,11,10,10,12,13,13,6,10,9,11,10,10,11,12,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,4,6,6,7,7,8,8,8,8,9,9,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,11,11,11,0,0,0,6,6,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,13,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,10,10,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,13,13,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,13,13,13,14,0,0,0,0,0,10,10,10,11,11,11,12,12,13,13,13,14,0,0,0,0,0,0,0,10,10,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,12,13,13,14,15,14,0,0,0,0,0,0,0,12,12,12,12,13,13,13,14,14,15,0,0,0,0,0,0,0,0,0,12,12,13,13,14,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,6,6,8,8,0,0,0,7,7,7,7,8,8,0,0,0,7,7,7,7,8,8,0,0,0,7,7,8,8,9,9,0,0,0,7,7,8,8,9,9,0,0,0,8,9,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,10,10,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,2,7,8,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,6,6,7,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,6,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,9,9,12,0,0,0,0,0,0,10,12,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,9,12,10,0,0,0,0,0,0,10,11,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,10,12,11,0,0,0,0,0,0,9,10,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,10,11,12,0,0,0,0,0,0,9,12,9],"i8",L3,x.GLOBAL_BASE+339320),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,19,7,9,7,8,11,9,12,4,1,19,6,7,7,8,10,11,13,18,18,18,18,18,18,18,18,18,18,8,6,18,8,9,9,11,12,14,18,9,6,18,9,7,8,9,11,12,18,7,6,18,8,7,7,7,9,11,17,8,8,18,9,7,6,6,8,11,17,10,10,18,12,9,8,7,9,12,18,13,15,18,15,13,11,10,11,15,18,14,18,18,18,18,18,16,16,18,18,0,0,0,0,0,0,0,0,0,64,207,64,0,0,0,0,0,88,219,64,0,0,0,0,0,106,232,64,0,0,0,0,0,249,245,64,0,0,0,0,0,0,35,64,0,0,0,0,0,0,38,64,0,0,0,0,0,0,62,64,0,0,0,0,0,192,88,64,0,0,0,0,0,76,205,64,0,0,0,0,0,136,211,64,0,0,0,0,0,124,229,64,0,0,0,0,0,255,244,64,0,0,0,0,0,76,221,64,0,0,0,0,0,130,228,64,0,0,0,0,0,100,233,64,0,0,0,0,0,64,239,64,0,0,0,0,0,148,241,64,0,0,0,0,0,11,243,64,0,0,0,0,0,255,244,64,0,0,0,0,0,118,246,64,0,0,0,0,0,219,250,64,0,0,0,0,0,76,253,64,0,0,0,0,0,23,1,65,0,0,0,0,128,49,7,65,154,153,153,153,153,153,40,64,0,0,0,0,0,0,42,64,0,0,0,0,0,0,42,64,0,0,0,0,0,0,44,64,0,0,0,0,0,0,46,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,148,209,64,0,0,0,0,0,88,219,64,0,0,0,0,0,23,225,64,0,0,0,0,0,249,229,64,0,0,0,0,0,88,235,64,0,0,0,0,0,76,237,64,0,0,0,0,128,79,242,64,0,0,0,0,0,249,245,64,0,0,0,0,0,106,248,64,0,0,0,0,128,19,252,64,0,0,0,0,128,79,2,65,0,0,0,0,128,49,7,65,0,0,0,0,0,64,223,64,0,0,0,0,0,112,231,64,0,0,0,0,0,76,237,64,0,0,0,0,0,23,241,64,0,0,0,0,0,136,243,64,0,0,0,0,0,255,244,64,0,0,0,0,0,112,247,64,0,0,0,0,0,219,250,64,0,0,0,0,0,76,253,64,0,0,0,0,0,23,1,65,0,0,0,0,0,136,3,65,0,0,0,0,8,76,13,65,0,0,0,0,0,88,203,64,0,0,0,0,0,136,211,64,0,0,0,0,0,88,219,64,0,0,0,0,0,142,226,64,0,0,0,0,0,118,230,64,0,0,0,0,0,94,234,64,0,0,0,0,128,79,242,64,0,0,0,0,0,112,247,64,0,0,0,0,0,76,253,64,0,0,0,0,0,23,1,65,0,0,0,0,0,249,5,65,0,0,0,0,8,76,13,65,88,88,5,0,104,113,5,0,88,88,5,0,200,113,5,0,88,88,5,0,40,114,5,0,88,88,5,0,136,114,5,0,88,88,5,0,232,114,5,0,88,88,5,0,72,115,5,0,168,115,5,0,184,140,5,0,168,115,5,0,24,141,5,0,168,115,5,0,120,141,5,0,168,115,5,0,216,141,5,0,168,115,5,0,56,142,5,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,30,0,0,0,208,111,7,0,24,201,7,0,24,201,7,0,64,201,7,0,64,201,7,0,2,0,0,0,0,0,0,0,30,0,0,0,208,111,7,0,0,202,7,0,0,202,7,0,64,201,7,0,64,201,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,40,202,7,0,40,202,7,0,80,202,7,0,80,202,7,0,2,0,0,0,0,0,0,0,15,0,0,0,208,111,7,0,0,162,7,0,0,162,7,0,40,162,7,0,40,162,7,0,2,0,0,0,0,0,0,0,30,0,0,0,208,111,7,0,232,162,7,0,232,162,7,0,40,162,7,0,40,162,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,16,163,7,0,16,163,7,0,56,163,7,0,56,163,7,0,2,0,0,0,0,0,0,0,15,0,0,0,208,111,7,0,232,122,7,0,232,122,7,0,16,123,7,0,16,123,7,0,2,0,0,0,0,0,0,0,30,0,0,0,208,111,7,0,208,123,7,0,208,123,7,0,16,123,7,0,16,123,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,248,123,7,0,248,123,7,0,32,124,7,0,32,124,7,0,2,0,0,0,0,0,0,0,15,0,0,0,72,198,6,0,0,59,7,0,0,59,7,0,40,59,7,0,40,59,7,0,2,0,0,0,0,0,0,0,30,0,0,0,72,198,6,0,232,59,7,0,232,59,7,0,40,59,7,0,40,59,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,16,60,7,0,16,60,7,0,56,60,7,0,56,60,7,0,2,0,0,0,0,0,0,0,15,0,0,0,72,198,6,0,48,6,7,0,48,6,7,0,88,6,7,0,88,6,7,0,2,0,0,0,0,0,0,0,30,0,0,0,72,198,6,0,24,7,7,0,24,7,7,0,88,6,7,0,88,6,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,64,7,7,0,64,7,7,0,104,7,7,0,104,7,7,0,2,0,0,0,0,0,0,0,15,0,0,0,72,198,6,0,96,209,6,0,96,209,6,0,136,209,6,0,136,209,6,0,2,0,0,0,0,0,0,0,30,0,0,0,72,198,6,0,72,210,6,0,72,210,6,0,136,209,6,0,136,209,6,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,112,210,6,0,112,210,6,0,152,210,6,0,152,210,6,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2],"i8",L3,x.GLOBAL_BASE+349504),d3([2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2],"i8",L3,x.GLOBAL_BASE+360488),d3([2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,120,145,6,0,120,145,6,0,160,145,6,0,160,145,6,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,96,146,6,0,96,146,6,0,160,145,6,0,160,145,6,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,136,146,6,0,136,146,6,0,176,146,6,0,176,146,6,0,2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,176,96,6,0,176,96,6,0,216,96,6,0,216,96,6,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,152,97,6,0,152,97,6,0,216,96,6,0,216,96,6,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,216,165,5,0,216,165,5,0,0,166,5,0,0,166,5,0,2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,136,46,6,0,136,46,6,0,176,46,6,0,176,46,6,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,112,47,6,0,112,47,6,0,176,46,6,0,176,46,6,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,216,165,5,0,216,165,5,0,0,166,5,0,0,166,5,0,2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,24,241,5,0,24,241,5,0,64,241,5,0,64,241,5,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,0,242,5,0,0,242,5,0,64,241,5,0,64,241,5,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,216,165,5,0,216,165,5,0,0,166,5,0,0,166,5,0,2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,176,153,5,0,176,153,5,0,216,153,5,0,216,153,5,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,152,154,5,0,152,154,5,0,216,153,5,0,216,153,5,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,216,165,5,0,216,165,5,0,0,166,5,0,0,166,5,0,0,0,0,0,255,255,255,255,255,255,255,255,8,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+363696),d3([1,0,0,0,2,0,0,0,4,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,16,241,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,232,169,5,0,0,0,0,0,0,0,0,0,16,170,5,0,0,0,0,0,0,0,0,0,56,170,5,0,96,170,5,0,0,0,0,0,0,0,0,0,136,170,5,0,176,170,5,0,0,0,0,0,0,0,0,0,216,170,5,0,0,171,5,0,0,0,0,0,0,0,0,0,40,171,5,0,80,171,5,0,0,171,5,0,0,0,0,0,120,171,5,0,160,171,5,0,200,171,5,0,240,171,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,224,169,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,2,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+366508),d3([32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,216,169,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,166,5,0,232,166,5,0,0,0,0,0,0,0,0,0,16,167,5,0,56,167,5,0,96,167,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,240,168,5,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,160,169,5,0,0,0,0,0,2,0,0,0,25,0,0,0,184,168,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,168,5,0,0,0,0,0,2,0,0,0,9,0,0,0,152,168,5,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,168,168,5,0,0,0,0,0,1,0,0,0,25,0,0,0,16,168,5,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,48,168,5,0,0,0,0,0,1,0,0,0,25,0,0,0,136,167,5,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,168,167,5,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,2,3,4,5,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,5,6,6,6,6,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,4,4,5,5,4,5,5,5,5,4,5,5,5,5,5,5,5,4,5,5,5,5,5,4,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,10,10,12,12,12,12,13,12,5,5,5,8,6,11,9,12,12,13,12,12,12,4,5,5,6,8,9,11,12,12,13,12,12,12,7,7,8,9,9,11,8,12,9,12,12,12,12,7,8,8,9,9,8,11,9,12,12,12,11,12,10,10,10,11,11,11,11,11,10,11,11,12,11,10,10,10,11,11,11,11,10,11,11,11,11,12,11,11,11,12,11,12,11,12,11,13,11,13,11,11,11,11,11,12,11,12,10,13,11,12,11,13,12,12,12,13,12,13,13,13,12,14,12,14,13,12,12,12,12,13,13,13,12,14,12,14,13,14,13,14,14,14,14,14,14,14,14,15,14,15,14,13,14,13,14,14,14,14,14,15,14,14,14,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,1,3,0,0,0,0,3,3,3,3,3,3,3,3,5,0,0,0,243,0,0,0,8,240,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,0,241,5,0,0,0,0,0,5,0,0,0,53,12,0,0,184,227,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,240,239,5,0,0,0,0,0,5,0,0,0,243,0,0,0,176,226,5,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,168,227,5,0,0,0,0,0,5,0,0,0,243,0,0,0,168,225,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,160,226,5,0,0,0,0,0,5,0,0,0,243,0,0,0,160,224,5,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,152,225,5,0,0,0,0,0,5,0,0,0,53,12,0,0,80,212,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,224,5,0,0,0,0,0,5,0,0,0,53,12,0,0,0,200,5,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,56,212,5,0,0,0,0,0,1,0,0,0,7,0,0,0,216,199,5,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,224,199,5,0,0,0,0,0,5,0,0,0,243,0,0,0,208,198,5,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,200,199,5,0,0,0,0,0,5,0,0,0,243,0,0,0,200,197,5,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,192,198,5,0,0,0,0,0,5,0,0,0,53,12,0,0,120,185,5,0,1,0,0,0,0,106,152,225,0,106,120,97,3,0,0,0,0,0,0,0,176,197,5,0,0,0,0,0,5,0,0,0,53,12,0,0,40,173,5,0,1,0,0,0,0,136,83,225,0,136,51,97,3,0,0,0,0,0,0,0,96,185,5,0,0,0,0,0,1,0,0,0,25,0,0,0,160,172,5,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,192,172,5,0,0,0,0,0,1,0,0,0,25,0,0,0,24,172,5,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,56,172,5,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,10,10,10,11,11,11,12,12,12,13,13,13,13,13,13,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,16,16,4,9,11,15,16,4,12,8,16,16,12,16,16,16,16,13,16,16,16,16,5,8,10,16,16,9,9,14,15,16,12,14,14,16,16,16,16,16,16,16,16,16,16,16,16,5,11,8,16,15,12,14,16,16,16,9,15,9,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,6,11,11,16,16,12,13,16,16,16,12,16,14,16,16,16,16,16,16,16,16,16,16,16,16,11,15,15,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,12,15,16,16,16,16,16,16,16,16,14,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,5,11,11,16,16,12,15,16,16,16,12,16,14,16,16,16,16,16,16,16,16,16,16,16,16,12,15,15,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,11,15,15,16,16,16,16,16,16,16,15,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,6,11,12,16,16,11,15,16,16,16,13,16,14,16,16,16,16,16,16,16,16,16,16,16,16,11,16,14,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,12,14,14,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,8,13,15,16,16,15,15,16,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,7,12,12,16,16,13,12,16,16,16,14,16,14,16,16,16,16,16,16,16,16,16,16,16,16,13,16,16,16,16,14,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,12,14,16,16,16,16,16,16,16,16,14,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,6,11,11,16,16,13,15,16,16,16,11,15,14,16,16,16,16,16,16,16,14,16,16,16,16,11,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,11,16,14,16,16,14,16,16,16,16,13,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,7,11,11,16,16,13,13,16,16,16,13,16,13,16,16,16,16,16,16,16,16,16,16,16,16,12,16,15,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,12,14,16,16,16,16,16,16,16,16,14,16,13,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,8,13,14,16,16,15,16,16,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,15,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,6,7,7,7,7,7,7,7,7,7,7,8,7,8,8,7,8,8,7,8,7,7,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,8,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,5,5,7,7,5,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,5,7,8,8,9,10,8,9,10,8,9,10,10,10,12,10,11,11,8,10,10,10,11,12,10,11,10,5,8,7,8,10,10,8,10,9,8,10,10,10,10,11,10,12,11,8,10,9,10,11,11,10,12,10,5,8,8,7,9,10,8,10,9,7,9,10,9,10,11,9,11,11,8,10,9,10,11,11,9,11,10,7,9,9,9,10,11,9,11,11,9,9,11,10,10,13,11,12,12,9,11,11,11,12,13,11,13,11,7,9,9,9,10,11,9,11,10,9,11,10,10,10,12,11,13,12,9,11,11,11,12,12,10,12,10,5,8,8,8,9,10,7,10,9,8,9,10,9,10,11,10,11,11,7,10,9,9,11,11,9,11,10,7,9,9,9,10,11,9,11,10,9,11,11,10,10,12,11,12,12,9,10,11,11,12,13,10,12,10,7,9,9,9,11,11,9,11,10,9,11,11,11,11,13,11,13,12,9,11,9,11,12,12,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,4,6,6,9,9,6,7,8,10,11,6,8,7,10,10,8,10,10,12,12,8,10,10,12,12,6,7,8,10,10,7,8,9,10,11,8,9,9,11,11,10,10,11,12,13,10,11,11,13,13,6,8,7,10,10,8,9,9,11,11,7,9,8,11,10,10,11,11,13,13,10,11,10,13,12,9,10,10,11,12,10,10,11,12,13,10,11,11,12,13,12,12,13,12,14,12,13,13,14,14,9,10,10,12,11,10,11,11,13,12,10,11,10,13,12,12,13,13,14,14,12,13,12,14,12,7,8,8,10,11,8,9,10,11,12,8,9,9,11,12,10,11,12,13,14,10,11,11,13,13,8,9,10,11,12,9,10,11,12,13,10,10,11,12,12,11,12,12,13,14,11,12,12,14,14,8,9,9,11,12,10,10,11,12,13,9,10,10,12,12,11,12,12,14,14,11,12,12,14,13,11,11,12,12,13,11,12,12,13,14,12,12,13,14,14,13,13,14,14,16,13,14,14,15,15,11,12,11,13,13,12,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,15,14,7,8,8,11,10,8,10,9,12,11,8,10,9,12,11,10,11,11,13,13,10,12,11,14,13,8,9,9,12,11,9,10,10,12,12,10,11,10,13,12,11,12,12,13,14,11,12,12,14,14,8,10,9,12,11,10,11,10,12,12,9,11,10,13,11,11,12,12,14,14,11,12,12,14,13,11,11,12,13,13,11,12,12,13,14,12,12,12,14,14,13,13,14,14,15,13,14,14,15,15,11,12,11,13,12,12,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,15,14,10,11,11,12,13,11,12,12,13,14,11,12,12,13,14,13,13,14,14,16,13,14,14,15,15,11,12,12,12,14,12,12,13,13,15,12,13,13,13,15,14,14,15,15,16,14,14,15,15,16,11,12,12,13,14,12,13,13,14,15,12,13,13,14,14,14,14,15,15,16,14,14,14,15,15,13,14,14,14,15,14,14,15,15,16,14,15,15,15,16,15,15,16,16,18,16,16,16,17,17,13,14,14,15,15,14,14,15,16,16,14,14,14,16,15,16,16,16,17,17,15,16,16,17,16,10,11,11,13,12,11,12,12,14,13,11,12,12,14,13,13,14,14,15,15,13,14,13,16,14,11,12,12,14,13,12,13,13,14,14,12,13,13,15,14,14,14,14,15,15,14,15,14,16,15,11,12,12,14,12,12,13,13,15,14,12,13,12,15,13,14,15,14,16,15,14,15,14,16,15,13,14,14,15,15,14,14,14,15,16,14,15,14,16,16,15,16,16,16,17,16,16,16,17,17,13,14,14,15,14,14,15,15,16,15,14,15,14,16,15,16,16,16,17,17,15,16,15,18,16,6,8,8,11,11,8,9,10,11,12,8,10,9,12,12,10,11,11,13,13,10,12,11,14,13,8,9,9,11,12,9,10,10,12,12,9,10,10,12,12,11,11,12,13,14,11,12,12,14,14,8,10,9,12,11,10,11,11,12,12,9,11,10,13,12,11,12,12,14,14,11,12,12,14,13,10,11,11,13,13,11,12,12,13,14,11,12,12,14,14,13,13,14,13,15,13,14,14,15,15,11,12,11,13,13,12,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,15,14,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,13,14,11,12,12,14,14,9,9,10,11,12,10,10,11,12,13,10,10,11,12,13,12,12,13,13,15,12,12,13,14,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,14,15,12,13,12,14,14,11,11,12,12,14,12,12,13,13,14,12,12,13,13,14,13,13,14,14,16,14,14,14,15,15,11,12,12,14,13,12,13,13,14,14,12,13,13,15,14,14,14,14,16,16,13,14,14,16,14,7,9,9,12,11,9,10,10,12,12,9,11,10,13,12,11,12,12,13,14,11,13,12,14,13,9,10,10,12,12,10,10,11,12,13,10,12,11,13,13,12,12,13,13,14,12,13,13,15,14,9,10,10,12,12,11,11,11,13,13,10,12,10,13,12,12,13,13,14,15,12,13,12,15,13,11,12,12,14,13,12,12,13,13,14,12,13,13,15,14,13,13,14,13,16,14,15,14,16,15,12,12,12,14,14,13,13,13,14],"i8",L3,x.GLOBAL_BASE+369616),d3([14,12,13,12,14,13,14,15,15,16,16,13,14,13,16,13,10,11,12,13,14,11,12,13,13,15,12,12,13,14,14,13,14,14,15,16,13,14,14,16,15,12,12,13,12,14,12,12,13,13,15,13,13,13,13,15,14,14,15,14,16,14,15,15,15,16,12,13,12,14,14,13,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,15,16,16,13,14,14,13,16,14,14,15,14,16,14,14,15,14,16,15,15,16,15,18,16,16,16,16,17,14,14,14,16,15,14,15,15,16,16,14,15,15,16,16,16,16,16,17,17,15,16,16,17,16,10,12,11,14,13,12,13,13,14,14,12,13,12,15,14,14,14,14,15,15,14,15,14,16,15,12,13,12,14,13,12,13,13,15,14,13,14,13,15,14,14,15,15,16,16,14,15,15,17,15,12,13,12,14,14,13,14,14,15,15,13,14,13,15,14,15,15,15,16,16,14,15,15,17,15,14,14,14,16,15,14,15,15,16,16,14,15,15,16,15,16,16,16,16,17,16,17,16,18,17,14,14,14,16,15,15,15,15,16,16,14,15,14,16,15,16,16,17,17,17,15,16,15,17,16,6,8,8,11,11,8,9,10,12,12,8,10,9,12,11,10,11,12,13,13,10,11,11,13,13,8,9,10,11,12,9,10,11,12,13,10,11,11,12,12,11,12,12,13,14,11,12,12,14,14,8,9,9,12,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,14,11,12,11,14,13,11,11,12,13,13,11,12,12,13,14,12,12,12,14,14,13,13,14,14,15,13,14,14,15,15,10,11,11,13,13,11,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,15,13,7,9,9,11,12,9,10,11,12,13,9,10,10,12,12,11,12,13,13,14,11,12,12,14,14,9,10,10,12,12,10,10,11,12,13,11,12,11,13,13,12,12,13,13,15,12,13,13,15,14,9,10,10,12,12,10,11,12,13,13,10,11,10,13,12,12,13,13,14,15,12,13,12,14,13,12,12,12,14,14,12,12,13,13,14,13,13,13,15,14,14,13,14,13,16,14,15,15,16,16,11,12,12,13,14,12,13,13,14,15,12,13,12,14,13,14,14,15,15,16,13,14,13,15,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,14,11,12,11,14,13,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,12,13,14,15,12,13,13,15,14,9,10,9,12,11,10,11,10,13,12,10,11,10,13,12,12,13,12,14,14,12,13,12,15,13,11,12,12,13,14,12,13,13,14,14,12,13,13,14,14,14,14,14,14,16,14,14,14,16,15,11,12,11,14,12,12,13,12,15,13,12,13,12,15,13,14,14,14,16,15,13,14,13,16,14,10,11,12,13,14,12,12,13,13,15,12,13,13,14,14,14,14,15,15,16,14,14,14,15,16,12,12,13,14,14,12,13,14,14,15,13,14,14,15,15,14,15,15,15,17,15,15,15,16,16,12,12,13,13,14,13,13,14,14,15,12,13,13,14,15,15,15,15,15,17,14,15,15,15,15,14,14,14,16,16,14,15,15,15,16,15,15,15,16,16,16,15,16,16,18,16,16,17,17,17,14,14,14,15,16,15,15,15,16,17,14,15,14,16,16,16,16,17,17,18,16,16,15,17,16,10,12,11,14,13,12,12,12,14,14,11,13,12,14,13,13,14,14,15,15,13,14,13,16,15,12,12,13,14,14,12,13,13,15,15,13,13,13,15,15,14,15,15,16,16,14,15,15,17,16,12,13,12,14,12,13,13,13,15,13,12,13,12,15,13,14,15,15,16,15,14,15,14,16,14,14,14,14,16,16,14,15,15,16,16,14,15,15,16,16,15,16,16,16,17,16,17,16,18,17,13,14,14,16,13,14,15,15,16,14,14,15,14,16,14,16,16,16,17,16,15,16,15,18,15,9,11,11,13,13,11,12,12,14,14,11,12,12,14,14,13,14,14,15,15,13,14,14,15,15,11,12,12,14,14,11,12,13,14,15,12,13,13,15,14,13,14,14,15,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,14,14,14,14,16,16,14,15,14,16,15,12,13,13,14,15,12,13,14,15,16,13,14,14,16,16,14,14,15,16,17,15,15,15,17,17,13,14,14,15,15,14,15,14,16,16,14,15,14,16,15,15,16,16,17,17,15,16,15,17,16,10,12,12,13,14,11,12,13,14,14,12,13,12,14,14,13,14,14,15,16,13,14,14,16,15,11,12,12,14,14,12,12,13,14,15,12,13,13,15,15,13,13,15,15,17,14,14,15,16,16,12,13,12,14,14,12,13,13,15,15,12,13,13,15,14,14,15,15,16,16,14,15,14,16,16,13,12,14,13,16,13,13,15,14,16,14,13,15,15,16,14,14,16,15,17,15,15,16,16,17,13,14,14,16,15,14,15,15,16,16,14,15,14,16,15,16,16,16,17,17,15,16,16,18,16,10,12,12,14,14,12,12,13,14,14,12,13,12,15,14,13,14,14,15,16,14,15,14,16,15,11,12,12,14,14,12,13,13,14,15,13,14,13,15,15,14,14,15,15,16,14,15,15,17,16,12,13,13,14,14,13,13,14,15,15,12,14,13,15,15,14,15,15,16,16,14,15,15,17,15,13,14,13,15,15,13,14,14,15,16,14,15,14,17,16,15,15,15,15,17,16,16,16,18,17,14,14,14,16,16,15,15,15,16,16,14,15,14,16,16,16,16,17,17,17,16,16,16,17,16,11,12,13,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,15,17,16,12,13,13,14,15,13,13,14,14,16,13,14,14,15,16,15,14,16,15,17,15,15,16,16,17,12,13,13,15,15,13,14,14,16,16,13,14,14,16,15,15,15,16,17,17,15,16,15,17,16,14,14,15,13,16,15,14,16,14,17,15,15,16,14,17,16,15,17,15,18,16,16,17,16,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,16,17,17,18,18,16,17,15,18,16,11,12,12,14,14,13,13,14,14,15,13,14,13,16,14,15,15,15,16,16,15,16,15,17,16,12,13,13,15,14,13,13,14,15,15,14,15,14,16,15,15,15,16,15,16,16,16,16,18,16,12,13,13,15,15,14,14,15,15,16,13,14,13,16,15,16,16,16,17,17,15,16,15,17,15,14,15,14,16,15,14,15,15,16,16,15,16,15,17,16,16,15,16,15,17,17,18,17,18,17,15,15,15,16,16,16,16,16,17,17,14,15,15,17,16,17,17,18,18,18,16,17,15,18,15,9,11,11,13,13,11,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,15,15,11,12,12,14,14,12,13,13,14,15,12,13,13,14,14,14,14,15,15,16,14,14,14,16,16,11,12,12,14,14,12,13,13,14,15,11,13,12,14,14,13,14,14,16,16,13,14,14,16,15,13,14,14,15,15,14,14,15,15,16,14,15,14,16,16,15,15,16,16,17,15,16,16,17,17,12,13,13,15,15,13,14,14,16,15,12,14,13,16,15,15,16,15,17,17,14,15,15,17,15,10,12,12,14,14,12,12,13,14,15,12,13,12,14,14,14,14,15,15,16,13,14,14,16,16,12,13,13,14,14,13,13,14,14,15,13,14,13,15,15,14,15,15,15,17,14,15,15,16,16,11,12,12,14,14,13,13,14,15,15,12,13,13,15,14,14,15,15,16,17,14,15,14,16,15,14,14,14,16,16,14,15,15,16,16,15,15,15,16,16,15,16,16,16,18,16,17,16,18,17,13,13,14,15,15,14,14,15,16,16,13,14,14,16,15,16,16,17,17,17,15,15,15,17,15,10,12,12,14,13,12,12,13,14,14,11,13,12,14,14,13,14,14,16,16,13,14,14,16,15,12,12,13,14,14,12,13,13,14,15,13,13,13,15,15,14,14,15,16,16,14,15,15,16,16,11,12,12,14,14,12,13,13,15,15,12,13,12,15,14,14,15,14,16,16,13,15,13,16,15,13,14,14,15,16,14,15,15,15,17,14,15,15,16,16,16,15,16,16,17,16,16,16,17,17,13,14,12,16,13,14,15,13,16,15,13,15,13,16,14,15,16,15,17,16,15,16,14,17,15,11,12,12,14,15,13,13,14,14,16,13,14,13,15,14,15,15,16,16,17,15,15,15,16,16,12,13,13,15,15,13,13,14,15,16,14,15,14,16,15,15,15,16,15,17,16,16,16,17,17,12,13,13,14,15,14,14,15,15,16,13,14,13,15,15,16,16,16,17,17,15,16,15,16,15,15,15,15,16,16,14,15,15,16,17,16,16,16,17,17,16,15,17,15,18,17,18,17,18,18,14,14,15,15,17,15,15,16,16,17,14,15,15,16,16,17,17,17,17,18,16,16,15,17,15,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,14,17,16,13,13,13,15,15,13,14,14,15,16,13,14,14,16,16,15,15,16,16,17,15,16,16,17,17,12,13,13,15,14,13,14,14,16,15,13,14,13,16,14,15,16,16,17,16,15,16,14,17,15,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,15,17,16,18,16,17,17,18,18,14,15,14,16,13,15,16,15,17,14,15,16,14,17,14,16,17,16,18,16,16,17,15,18,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,6,8,8,10,9,8,9,9,10,10,8,9,9,10,10,8,10,10,10,10,8,10,10,10,10,9,9,9,10,10,9,10,10,10,11,9,10,10,11,11,10,10,10,11,11,10,10,10,11,11,9,9,9,10,10,9,10,10,11,11,9,10,10,11,10,10,10,10,11,11,10,10,10,11,11,10,10,10,10,11,10,10,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,11,10,10,11,11,11,11,10,11,10,11,11,11,11,11,11,11,10,11,11,11,11,9,10,10,10,11,10,10,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,10,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,12,12,11,11,11,12,12,10,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,9,10,10,11,10,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,12,12,12,11,11,11,12,12,10,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,11,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,7,10,10,11,11,10,10,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,10,10,11,11,10,11,11,11,11,11,11,11,11,12,11,11,11,12,12,11,11,11,12,12,10,11,11,11,11,11,11,11,12,11,11,11,11,12,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,11,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,12,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,10,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,11,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,7,10,10,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,12,12,11,11,11,12,12,10,10,10,11,11,11,11,11,12,11,10,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,11,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,10,10,10,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,11,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,13,12,13,12,12,13,13,13,13,12,13,13,13,13,8,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,8,11,11,11,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,13,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,13,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,4,7,7,4,7,6,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,6,7,8,8,9,10,8,10,10,8,9,10,10,11,12,10,11,12,8,10,10,10,11,12,10,12,11,6,8,7,8,10,10,8,10,9,8,10,10,10,11,12,10,12,12,8,10,9,10,12,11,10,12,11,5,8,8,8,10,10,8,10,10,7,9,10,9,10,11,10,11,11,8,10,10,10,12,12,10,12,11,7,9,9,9,11,11,9,11,11,9,10,11,11,11,12,11,12,12,9,11,11,11,12,12,11,12,12,7,9,9,10,11,12,10,12,11,9,11,10,11,11,12,12,13,13,9,11,11,12,13,13,11,13,11,5,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,12,7,9,9,9,11,11,9,11,10,7,9,9,10,11,12,10,12,11,9,11,11,11,11,13,12,13,13,9,10,11,12,13,13,11,12,11,7,9,9,9,11,11,9,11,11,9,11,11,11,12,12,11,12,12,9,11,10,11,12,12,10,12,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,6,7,7,6,7,7,6,7,7,7,7,8,7,7,8,6,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,5,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,8,8,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,7,8,8,8,9,9,8,9,9,8,9,8,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,6,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,7,8,8,8,9,9,8,9,9,8,8,9,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,8,8,8,8,9,9,8,9,9,8,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,4,4,7,7,4,7,6,5,6,7,7,8,9,7,9,9,5,7,6,7,9,9,7,9,8,6,8,8,8,10,10,8,10,10,8,9,10,10,11,12,10,12,12,8,10,10,10,12,12,10,12,11,6,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,12,8,10,9,10,12,11,10,12,11,5,8,8,8,10,10,8,10,10,8,9,10,10,11,11,10,11,11,8,10,10,10,11,12,10,12,11,8,10,10,10,11,11,10,11,11,10,11,11,11,12,13,11,12,13,10,11,11,11,13,13,11,13,13,7,9,9,10,11,12,10,12,11,9,11,11,11,12,13,12,14,13,9,11,11,12,13,14,11,13,12,5,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,12,8,10,9,10,12,11,9,11,11,7,9,9,10,11,12,10,12,11,9,11,11,11,12,13,12,14,13,9,11,11,12,13,14,11,13,12,8,10,10,10,11,11,10,11,11,10,11,11,11,13,13,11,13,13,10,11,10,11,13,12,11,13,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,8,8,5,7,7,9,9,5,7,7,9,9,6,8,8,11,11,6,8,8,11,11,6,7,7,9,9,7,8,9,10,11,7,9,9,11,10,8,9,10,12,12,8,10,10,12,12,6,7,7,9,9,7,9,9,10,10,7,9,8,11,10,8,10,10,12,12,8,10,9,12,12,8,9,9,11,11,9,10,10,12,12,9,11,11,12,13,11,12,12,13,14,11,12,12,14,14,8,9,9,11,11,9,11,10,13,12,9,10,10,13,12,11,12,12,14,14,11,12,12,14,13,7,8,9,10,10,8,10,10,11,11,8,10,10,11,11,10,11,11,13,13,10,11,11,13,13,8,9,10,10,11,10,11,11,12,13,10,11,11,12,12,11,11,12,13,14,11,12,12,14,14,8,10,10,11,11,10,11,11,12,13,10,11,11,12,12,11,12,12,14,14,11,12,12,14,14,10,11,11,12,13,11,12,12,13,14,12,13,13,14,14,13,13,14,14,16,13,14,14,15,16,10,11,11,13,13,12,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,16,15,7,8,8,10,10,8,10,10,11,11,8,10,10,12,11,10,11,11,13,13,10,11,11,13,13,8,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,14,14,11,12,12,14,14,8,10,9,11,10,10,11,11,13,12,10,11,10,13,12,11,12,12,14,14,11,12,11,14,13,10,11,11,13,13,11,12,12,14,14,12,12,12,14,14,13,14,14,15,16,13,14,14,15,15,10,11,11,13,12,12,12,12,14,14,11,12,12,14,13,13,14,14,16,15,13,14,13,16,14,10,11,11,13,13,12,12,13,14,15,12,13,13,14,15,13,14,15,15,16,13,14,14,16,16,11,12,13,14,14,13,13,14,15,16,13,14,14,15,16,14,15,15,16,17,14,15,16,17,17,11,12,12,14,14,13,14,14,15,16,13,14,14,15,15,14,15,15,16,18,14,15,15,17,16,13,14,15,15,16,15,15,16,16,18,15,15,15,17,17,16,16,17,17,18,16,16,16,18,18,14,14,14,16,16,15,15,15,16,17,15,15,15,16,17,16,17,17,18,18,16,16,17,18,17,10,11,11,14,13,12,13,13,15,14,11,13,13,15,14,13,15,15,16,16,13,14,14,16,16,11,12,12,14,14,13,13,13,15,15,13,14,13,15,15,15,15,15,17,16,14,15,15,17,16,11,13,12,14,14,13,14,13,15,15,13,14,13,15,15,14,15,15,17,17,14,15,15,17,16,14,14,14,16,16,14,15,15,17,17,15,15,16,17,16,17,16,17,18,18,16,17,17,18,18,13,14,14,16,15,15,15,15,17,17,14,16,15,16,16,17,17,17,18,18,16,17,16,20,19,6,8,8,10,10,8,10,10,11,11,8,10,10,12,11,10,11,11,13,13,10,11,11,13,13,8,9,10,11,11,10,11,11,12,12,10,11,11,13,12,11,12,12,14,14,11,12,12,14,14,9,10,10,11,11,10,11,11,12,12,10,11,11,13,12,11,12,12,14,14,11,12,12,14,14,10,10,11,12,13,11,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,15,16,10,11,11,13,13,12,12,12,14,14,12,13,12,14,14,13,14,14,16,16,13,14,14,15,15,9,10,10,11,12,10,11,11,12,13,10,11,11,13,12,11,12,12,14,14,11,12,12,14,14,10,10,11,12,13,11,12,12,13,14,11,12,12,13,14,12,13,14,14,15,12,13,13,15,15,10,11,11,13,13,11,12,12,13,14,11,12,12,14,13,12,13,13,15,15,12,13,13,15,15,12,11,13,12,14,13,13,14,14,15,13,13,14,14,15,14,15,15,16,17,14,15,15,16,17,12,13,12,14,14,13,14,14,15,15,13,14,14,15,15,14,15,15,16,17,14,15,15,16,17,8,9,9,11,11,10,11,11,12,13,10,11,11,13,12,12,13,13,14,15,11,13,12,15,14,9,11,10,12,12,11,12,12,13,14,11,12,12,14,13,13,13,14,15,15,13,14,13,15,15,9,11,11,12,12,11,12,12,14,14,11,12,12,14,13,13,14,14,15,16,13,14,13,15,14,11,12,12,14,13,12,13,13,14,15,13,14,14,16,15,15,15,15,15,16,15,16,15,17,17,11,12,12,14,14,13,14,14,15,15,12,13,13,15,14,15,15,15,17,17,14,15,15,17,15,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,16,16,12,13,13,14,15,13,14,14,16,16,14,14,14,15,16,15,16,16,17,17,15,16,16,17,17,12,13,13,15,15,14,14,14,16,16,14,14,15,16,16,15,16,16,17,17,15,16,16,17,17,14,15,15,15,16,15,15,16,16,18,15,16,16,17,17,17,17,17,18,18,16,17,17,19,18,14,15,15,16,17,15,16,16,17,17,15,16,16,18,17,16,17,17,19,18,17,17,17,19,18,10,12,12,14,14,13,13,14,15,15,12,14,13,16,15,15,15,15,17,17,14,15,15,17,16,12,13,13,15,14,13,14,14,16,16,14,14,15,17,16,15,16,16,17,17,15,16,16,18,17,12,13,13,15,14,14,15,15,16,16,13,15,14,16,15,16,17,16,19,17,15,16,16,17,17,14,15,15,17,15,15,16,15,17,17,16,17,16,18,17,17,17,18,18,18,17,17,18,19,18,14,15,15,16,16,15,16,16,17,18,15,16,16,18,16,17,18,18,19,19,17,18,17,18,19,6,8,8,10,10,8,10,10,11,11,8,10,10,12,11,10,11,11,13,13,9,11,11,13,13,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,14,14,11,12,12,14,14,8,10,9,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,14,14,11,12,12,14,14,10,11,11,13,13,11,12,13,14,14,12,12,12,14,14,13,14,14,15,16,13,14,14,16,16,10,11,10,13,12,11,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,16,15,8,9,9,11,11,10,11,11,12,13,10,11,11,13,12,12,13,13,14,15,12,13,13,15,14,10,11,11,12,12,11,11,12,13,14,11,12,12,14,14,13,13,14,15,16,13,14,14,15,15,9,10,11,12,12,11,12,12,13,14,11,12,12,14,13,13,14,14,15,16,12,14,13,15,15,11,12,12,14,14,12,13,13,14,15,13,14,14,16,15,14,15,15,15,17,15,15,16,16,17,11,12,12,13,14,13,14,14,15,15,12,13,13,15,14,15,16,15,16,17,14,16,15,17,15,9,10,10,12,11,10,11,11,13,13,10,11,11,13,12,11,12,12,14,14,11,12,12,14,14,10,11,11,12,13,11,12,12,13,14,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,10,11,10,13,12,11,12,12,13,13,11,12,12,14,13,12,13,13,15,15,12,13,13,15,14,12,13,12,14,14,13,14,14,15,15,13,14,14,15,15,14,15,15,16,16,14,15,15,16,16,11,13,11,14,12,13,13,13,15,14,12,14,13,15,14,15,15,15,17,16,14,15,14,17,15,10,12,12,14,14,13,13,14,15,16,12,14,13,15,15,14,15,16,17,17,14,15,16,17,17,12,13,13,14,15,13,14,14,16,16,14,14,15,16,16,16,16,16,17,17,16,16,16,18,18,12,13,13,14,15,14,14,15,16,16,13,14,14,16,15,16,16,16,17,18,15,16,16,17,17,14,15,15,16,16,15,15,16,17,17,15,16,16,17,18,17,18,18,18,19,17,18,18,19,19,14,15,15,16,16,15,16,16,17,17,15,16,16,17,17,17,17,18,20,18,17,18,17,18,18,11,12,12,14,14,12,13,14,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,17,12,13,13,15,15,14,14,14,16,16,14,14,14,16,16,15,16,16,17,17,15,16,16,17,17,12,13,13,15,14,13,14,14,16,15,14,15,14,16,15,15,16,16,17,17,15,16,16,17,16,14,15,15,16,16,15,16,16,17,17,16,16,16,17,17,17,17,17,19,18,17,17,17,18,19,14,15,14,17,15,15,16,16,17,17,15,16,15,17,17,16,17,17,18,18,16,17,17,18,17,6,11,11,13,13,11,12,12,14,14,11,12,12,14,14,13,14,14,16,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,17,18,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,16,16,13,14,14,15,16,14,15,15,16,17,14,15,15,17,16,15,16,17,18,17,16,16,16,18,17,14,14,15,16,16,14,15,15,18,16,14,15,15,17,16,16,17,17,18,18,16,17,16,18,17,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,16,16,12,13,13,15,15,13,14,14,15,16,13,14,14,16,16,15,16,16,17,17,15,15,16,17,17,12,13,13,15,15,14,14,14,16,16,13,14,14,16,16,15,16,16,17,17,15,16,16,17,17,14,14,15,15,16,15,15,16,16,17,15,15,16,16,17,16,17,17,17,18,16,17,17,18,18,14,15,15,16,16,15,16,16,17,17,15,16,16,17,17,17,17,17,18,19,17,17,17,18,18,10,12,12,14,14,12,13,14,15,16,13,14,13,15,15,14,15,15,17,17,14,15,16,17,17,12,13,13,15,15,13,14,14,15,15,14,15,14,16,16,15,16,16,17,18,15,17,16,18,17,12,13,13,15,15,14,14,14,16,16,13,14,14,16,15,15,16,16,17,18,15,16,16,17,17,14,14,14,16,16,15,15,16,17,17,15,16,16,17,17,17,17,17,18,20,17,17,17,19,19,14,15,15,16,16,15,17,16,18,18,15,16,15,17,16,17,18,19,19,19,17,17,17,18,17,13,14,14,16,16,14,15,15,17,17,14,15,15,16,17,15,17,17,18,18,16,16,17,18,17,14,15,15,16,17,15,16,16,17,17,15,16,16,17,17,16,17,17,18,18,17,17,17,18,19,14,15,15,16,17,15,16,16,17,17,15,16,16,17,17,16,17,17,18,18,17,17,17,19,19,16,16,16,16,18,16,17,17,17,18,17,17,17,17,19,18,18,18,19,19,18,18,18,19,20,16,16,17,18,18,16,18,17,18,18,17,17,17,20,19,18,18,19,21,20,18,20,18,18,19,10,12,12,14,14,14,14,15,15,17,14,15,14,17,15,16,16,17,18,18,16,18,17,19,18,12,14,13,16,15,14,14,15,15,17,15,16,16,18,17,16,17,18,17,19,17,19,18,20,19,12,13,13,15,15,15,16,17,17,18,14,16,14,17,16,17,18,18,19,19,17,17,17,18,18,15,15,15,17,16,15,16,16,17,17,17,19,17,18,18,18,18,18,18,21,19,20,19,20,19,15,15,16,16,17,17,17,18,20,20,15,16,16,18,17,18,19,19,19,20,18,19,18,19,17,6,11,11,13,13,11,12,12,14,14,11,12,12,14,14,13,14,14,16,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,17,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,15,16,16,13,14,14,16,16,15,15,15,16,16,14,15,15,17,16,16,17,17,19,18,16,17,17,18,18,13,14,14,15,15,14,15,15,17,16,14,15,15,17,16,16,17,16,17,18,15,16,16,18,18,10,12,12,14,14,12,13,14,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,17,16,12,13,13,15,15,14,14,14,15,16,14,15,15,16,16,15,16,16,17,18,16,16,16,18,18,12,13,13,14,14,14,14,15,16,16,13,14,14,16,16,15,16,16,18,18,15,16,16,19,17,14,15,15,16,17,15,15,16,17,17,16,17,16,17,18,17,17,18,17,19,17,17,18,18,19,14,14,14,16,16,15,16,16,17,17,15,16,15,17,17,17,17,17,19,20,16,17,17,18,18,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,14,16,16,12,13,13,15,15,14,14,14,16,16,13,14,14,16,16,15,16,16,18,17,15,16,16,17,17,12,13,13,15,15,13,14,14,16,16,13,14,14,16,16,15,16,15,18,18,15,16,15,17,16,14,15,15,16,16,15,16,16,17,17,15,16,16,18,17,16,17,17,18,18,16,17,17,18,18,14,15,14,16,15,15,16,15,17,17,15,16,15,17,16,16,17,17,18,18,17,17,16,19,17,10,12,12,14,15,14,14,15,15,17,14,15,14,17,15,16,17,17,17,18,16,17,17,18,18,12,14,13,16,15,14,14,16,15,17,15,17,16,18,17,17,17,18,17,19,18,18,18,19,18,12,13,14,15,15,15,16,16,16,17,14,15,14,18,16,18,17,18,19,19,17,18,17,20,18,15,15,15,17,17,15,16,16,17,18,18,18,18,19,18,18,18,19,18,20,18,19,19,21,21,15,15,16,16,17,17,18,18,18,18,15,16,16,17,17,17,19,20,19,20,17,18,18,19,17,13,14,14,16,16,14,15,15,16,17,14,15,15,17,17,16,16,17,17,18,15,17,16,17,17,14,15,15,16,16,15,16,16,17,17,16,16,16,17,17,17,17,18,17,18,17,17,17,18,20,14,15,15,17,16,15,16,16,17,17,15,16,16,17,17,17,17,17,18,18,16,17,17,19,18,16,16,17,17,17,17,18,17,19,18,17,17,17,18,19,17,20,18,19,21,17,19,18,19,20,15,17,15,17,16,16,17,17,18,18,17,17,17,18,17,18,19,18,19,21,18,18,17,19,19,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,4,8,8,4,8,8,5,7,8,8,9,10,8,10,10,5,8,7,8,10,10,8,10,9,7,9,9,9,11,11,9,11,11,9,11,11,11,12,13,11,13,13,9,11,11,11,13,13,11,13,13,7,9,9,9,11,11,9,11,11,9,11,11,11,13,13,11,13,13,9,11,11,11,13,13,11,13,12,5,9,9,9,11,11,9,11,11,9,11,11,11,12,13,11,13,13,9,11,11,11,13,13,11,13,13,9,11,12,11,13,13,12,13,13,11,12,13,13,14,15,13,14,14,12,13,13,13,15,15,13,15,14,8,10,10,11,13,13,12,14,13,11,12,12,13,14,15,13,15,15,11,12,12,13,15,15,13,15,14,5,9,9,9,11,11,9,11,11,9,11,11,11,13,13,11,13,13,9,11,10,11,13,13,11,13,12,8,10,10,11,13,13,12,13,13,11,12,12,13,14,15,14,15,15,10,12,12,13,14,15,13,15,14,9,12,11,12,13,13,11,13,13,12,13,13,13,15,15,13,14,15,11,13,12,13,15,14,13,15,14,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,2,0,0,0,64,0,0,0,72,46,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,104,242,5,0,0,0,0,0,0,0,0,0,144,242,5,0,0,0,0,0,0,0,0,0,184,242,5,0,224,242,5,0,0,0,0,0,0,0,0,0,8,243,5,0,48,243,5,0,0,0,0,0,0,0,0,0,88,243,5,0,128,243,5,0,0,0,0,0,0,0,0,0,168,243,5,0,208,243,5,0,128,243,5,0,0,0,0,0,248,243,5,0,32,244,5,0,72,244,5,0,112,244,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,40,242,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,7,14,16,17,18,20,21,7,4,6,8,11,12,14,16,13,5,4,4,8,9,11,13,15,8,4,3,5,7,9,10,17,11,8,4,4,6,9,9,17,11,9,7,6,5,7,8,19,13,11,9,9,7,8,8,21,15,13,11,10,8,8,7,5,0,0,0,243,0,0,0,64,45,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,56,46,6,0,0,0,0,0,5,0,0,0,53,12,0,0,240,32,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,40,45,6,0,0,0,0,0,5,0,0,0,243,0,0,0,232,31,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,224,32,6,0,0,0,0,0,5,0,0,0,243,0,0,0,224,30,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,216,31,6,0,0,0,0,0,5,0,0,0,243,0,0,0,216,29,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,208,30,6,0,0,0,0,0,5,0,0,0,53,12,0,0,136,17,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,29,6,0,0,0,0,0,5,0,0,0,53,12,0,0,56,5,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,112,17,6,0,0,0,0,0,1,0,0,0,7,0,0,0,16,5,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,24,5,6,0,0,0,0,0,5,0,0,0,243,0,0,0,8,4,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,0,5,6,0,0,0,0,0,5,0,0,0,243],"i8",L3,x.GLOBAL_BASE+379856),d3([3,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,248,3,6,0,0,0,0,0,5,0,0,0,243,0,0,0,248,1,6,0,1,0,0,0,0,106,120,225,0,106,120,97,2,0,0,0,0,0,0,0,240,2,6,0,0,0,0,0,5,0,0,0,53,12,0,0,168,245,5,0,1,0,0,0,0,136,83,225,0,136,51,97,3,0,0,0,0,0,0,0,224,1,6,0,0,0,0,0,1,0,0,0,25,0,0,0,32,245,5,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,64,245,5,0,0,0,0,0,1,0,0,0,25,0,0,0,152,244,5,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,184,244,5,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,4,5,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,7,7,12,12,5,11,12,12,12,5,12,11,12,12,12,12,12,12,12,12,13,13,13,13,7,11,11,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,7,13,10,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,7,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,11,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,11,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,7,7,7,8,7,8,7,7,7,8,7,8,8,8,8,8,7,8,7,8,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,9,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,9,9,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,8,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,8,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,5,7,7,5,7,7,5,7,7,7,7,9,7,9,9,6,7,7,8,9,9,7,9,7,6,8,8,8,9,10,8,9,9,8,9,10,9,9,10,10,10,10,8,9,9,10,10,11,9,10,10,6,8,8,8,9,9,8,10,9,8,9,9,9,10,10,10,11,10,8,10,9,10,11,10,9,11,9,6,8,8,7,9,9,7,9,9,7,9,9,8,9,10,9,10,10,8,9,9,9,10,10,9,10,9,7,9,9,9,9,10,9,10,10,9,9,10,10,9,11,10,11,11,9,10,10,10,11,11,10,11,10,6,9,8,9,9,10,9,10,9,8,10,10,9,9,10,10,11,11,9,10,10,10,11,11,9,11,9,6,8,8,7,9,9,7,9,9,8,9,9,9,9,10,9,10,10,7,9,9,9,10,10,8,10,9,6,8,9,9,9,10,9,10,9,9,10,10,9,9,11,10,11,11,8,9,10,10,11,11,9,10,9,7,9,9,9,10,10,9,10,9,9,10,10,10,10,11,10,11,11,9,10,9,10,11,11,10,11,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,9,9,5,7,8,10,11,5,8,7,11,10,8,10,11,12,13,8,11,10,13,12,6,7,8,10,11,7,8,10,10,12,8,9,9,12,12,10,10,12,12,14,10,12,12,14,13,6,8,7,11,10,8,9,9,12,12,7,10,8,12,11,10,12,12,13,14,10,12,10,14,12,9,10,11,11,13,10,10,11,11,13,11,12,12,13,14,12,12,13,11,15,13,14,14,15,14,9,11,10,13,11,11,12,12,13,13,10,11,10,13,11,13,14,14,15,15,12,13,12,15,11,6,8,9,11,12,8,9,11,12,13,8,10,10,13,13,11,12,13,14,15,11,12,13,14,14,9,9,10,12,13,10,10,12,12,14,10,11,11,13,14,12,12,14,14,15,13,13,14,15,15,9,10,10,13,13,10,11,11,13,14,10,11,10,14,13,13,13,14,15,15,12,14,13,15,14,12,12,13,13,14,12,13,14,13,15,13,14,14,15,15,14,14,15,14,16,15,15,15,16,16,12,13,13,14,14,13,14,14,15,15,12,14,13,15,14,14,15,15,16,16,14,15,14,16,14,6,9,8,12,11,8,10,10,13,13,8,11,9,13,12,11,12,12,14,14,11,13,12,15,14,9,10,10,13,13,10,10,11,13,14,10,12,11,14,13,12,13,14,14,15,13,13,13,15,14,9,10,9,13,12,10,11,11,14,13,10,12,10,14,12,13,14,13,15,15,12,14,12,15,14,12,13,13,14,14,13,13,13,14,15,13,14,14,15,15,14,14,15,14,16,14,15,15,16,16,12,13,12,14,13,13,14,14,15,15,12,14,13,15,13,15,15,15,16,16,14,15,14,16,14,11,12,12,13,14,12,13,14,14,16,12,13,13,15,15,14,14,16,15,17,14,15,15,16,16,12,13,14,14,15,13,13,15,15,16,14,14,14,15,16,15,15,16,16,17,15,15,16,16,17,13,13,13,15,15,14,14,15,15,16,13,14,14,15,16,15,15,16,16,17,15,16,15,17,16,14,15,15,16,16,15,15,16,16,17,15,16,16,17,17,16,16,17,16,18,16,17,17,17,17,15,15,15,16,16,15,16,16,17,17,15,16,16,17,16,16,17,17,18,18,16,17,16,17,16,11,12,12,15,13,13,13,13,15,15,12,14,13,16,14,14,15,15,16,16,14,15,14,17,15,13,13,13,15,14,13,14,14,16,15,14,14,14,16,15,15,15,16,16,17,15,16,15,17,16,12,14,13,15,14,14,14,14,16,15,13,14,13,16,15,15,16,16,17,16,15,16,15,17,16,15,15,15,16,16,15,15,16,16,17,15,16,16,17,17,16,16,17,17,17,17,17,17,18,17,14,15,15,16,16,15,16,16,17,16,15,16,15,17,16,17,17,17,18,17,16,17,16,18,16,6,9,9,12,12,8,10,10,12,13,8,10,10,13,12,10,12,12,14,15,11,13,12,15,14,8,9,10,12,13,9,10,11,13,14,10,11,11,14,13,12,12,13,14,15,12,13,13,15,15,8,10,10,13,13,10,11,11,13,14,10,12,10,14,13,12,13,13,15,15,12,14,13,15,14,11,12,12,13,14,12,12,13,13,15,12,13,13,15,15,14,13,15,14,16,14,15,15,16,16,12,13,13,14,14,13,13,14,15,14,12,14,13,15,14,14,15,15,16,15,14,15,14,16,14,7,9,10,12,12,9,10,11,13,14,9,11,10,13,13,11,12,13,14,15,12,13,13,15,14,9,10,11,12,13,10,10,12,13,14,11,11,12,14,14,12,12,14,14,15,13,13,14,15,15,9,11,11,13,13,11,12,12,14,14,10,12,10,14,13,13,14,14,15,15,13,14,13,16,14,12,12,13,14,15,13,13,14,14,16,13,14,14,15,15,14,14,15,14,17,14,15,15,16,16,12,13,13,15,14,13,14,14,15,15,13,14,13,16,14,15,15,15,16,16,14,15,14,16,14,7,10,9,13,12,10,11,12,12,14,10,12,11,14,12,12,13,13,14,15,12,14,13,15,14,9,11,10,13,13,10,11,12,13,14,12,13,12,15,13,13,13,14,13,15,13,14,14,16,15,10,11,11,13,13,12,12,13,14,14,11,12,11,14,13,14,14,14,15,16,13,14,13,16,13,12,13,13,14,14,12,13,13,14,15,14,14,14,15,15,14,13,15,13,16,15,15,15,17,16,13,13,13,14,14,14,14,14,15,15,12,13,13,15,14,15,16,16,16,16,14,15,14,16,13,11,12,13,14,15,12,13,14,15,16,13,14,14,15,15,14,14,15,15,17,14,15,15,16,16,13,13,14,14,15,13,13,15,14,16,14,14,15,15,16,15,14,16,15,17,15,16,16,16,17,13,14,14,15,15,14,14,15,16,16,13,15,14,16,16,15,16,16,17,17,15,16,15,17,16,14,15,15,15,17,15,15,16,15,17,15,16,16,16,17,16,16,17,16,18,17,17,17,17,18,15,15,15,17,16,15,16,16,17,17,15,16,16,17,16,16,17,17,18,18,16,17,16,18,17,11,13,12,15,14,13,13,14,15,15,13,14,13,16,14,15,15,15,16,16,15,16,15,17,16,13,14,13,15,14,13,13,14,15,15,14,15,14,16,15,15,15,16,16,16,15,16,15,18,16,13,14,14,15,15,14,15,15,15,16,13,15,13,16,15,15,16,16,17,17,15,16,15,17,16,15,15,15,16,16,15,15,15,16,17,16,16,16,17,16,16,16,17,16,17,17,17,17,18,17,15,15,15,16,16,16,16,16,17,17,15,16,15,17,16,17,17,17,18,18,16,17,16,17,15,6,9,9,12,12,8,10,10,12,13,8,10,10,13,12,11,12,13,14,15,10,12,12,14,14,9,10,10,13,13,10,10,12,13,14,10,11,11,14,13,12,13,14,14,15,12,13,13,15,15,8,10,9,13,12,10,11,11,13,14,9,11,10,14,13,12,13,13,15,15,12,13,12,15,14,12,13,13,14,14,12,13,13,14,15,13,14,14,14,15,14,14,15,14,16,14,15,15,16,16,11,12,12,14,13,13,13,13,15,15,12,13,12,15,13,14,15,15,16,16,14,15,14,16,14,7,9,10,12,13,10,10,12,12,14,10,12,11,14,13,12,13,14,14,15,12,13,13,15,14,10,11,11,13,13,11,11,12,13,14,12,13,12,14,14,13,13,14,13,16,14,14,14,15,15,9,10,11,13,14,12,12,13,13,15,10,12,10,14,13,13,14,14,15,16,13,14,13,15,13,13,14,13,14,15,12,13,13,14,15,14,14,14,15,15,14,13,15,13,16,15,16,16,16,16,12,13,13,14,14,14,14,14,15,15,12,13,13,15,14,15,15,16,16,16,14,15,13,16,13,7,10,9,12,12,9,10,11,13,13,9,11,10,14,13,12,13,13,14,15,11,13,12,15,14,9,11,11,13,13,10,10,12,13,14,11,12,12,14,14,13,13,14,14,16,13,14,14,16,15,9,11,10,13,12,11,12,11,14,14,10,12,10,14,13,13,14,13,15,15,12,14,12,16,14,12,13,13,14,15,13,13,14,14,16,13,14,14,15,15,14,14,15,14,16,15,15,15,16,16,12,13,12,15,14,13,14,14,15,15,12,14,13,16,14,14,15,15,16,16,14,15,14,17,14,11,12,13,14,15,13,13,14,14,16,13,14,13,15,15,15,15,16,16,17,15,15,15,16,16,13,14,13,15,15,13,13,15,15,16,14,15,15,16,16,15,15,16,15,17,16,16,16,17,17,13,13,14,14,15,14,14,15,15,16,13,14,13,15,15,15,16,16,16,17,15,16,15,16,16,15,15,15,16,16,15,15,16,16,17,16,16,16,17,17,16,16,17,16,18,17,17,17,18,18,15,15,15,16,16,16,16,16,17,17,15,15,15,16,16,17,17,17,17,18,16,16,16,17,15,11,13,12,15,14,13,13,14,15,15,12,14,13,16,14,14,15,15,16,16,14,15,14,16,15,13,14,14,15,15,13,14,14,16,16,14,15,14,16,16,15,15,16,17,17,15,16,16,17,17,13,14,13,15,14,14,14,14,16,15,13,15,13,16,14,15,16,15,17,16,15,16,14,17,15,14,16,15,16,17,15,16,16,16,17,15,16,16,17,17,16,16,17,17,18,16,17,17,18,17,14,15,15,17,15,15,16,16,17,16,15,16,15,17,15,16,17,17,18,17,16,17,16,18,15,10,12,12,14,14,12,13,13,15,15,12,13,13,15,15,13,14,14,15,16,14,15,14,16,16,12,13,13,15,15,12,13,14,15,15,13,14,14,15,15,14,14,15,16,17,14,15,15,17,16,12,13,13,15,15,13,14,14,15,16,13,14,14,16,15,14,15,15,16,17,14,15,15,17,16,13,14,14,15,16,14,14,15,15,16,14,15,15,16,16,15,15,16,16,17,15,16,16,17,17,14,15,15,16,16,15,15,15,16,16,15,15,15,16,16,16,17,16,17,17,16,16,16,18,16,11,12,12,14,14,12,13,14,15,15,12,13,13,15,15,13,14,15,16,16,14,15,15,16,16,12,13,13,15,15,13,13,14,15,16,13,14,14,15,16,14,14,15,16,17,15,15,15,16,17,12,13,13,15,15,13,14,14,15,16,13,14,14,16,15,15,15,15,16,17,15,16,15,17,16,14,14,15,15,16,14,14,15,15,17,15,15,16,16,17,15,15,16,15,18,16,16,16,17,17,14,15,15,16,16,15,16,16,17,17,15,15,15,17,16,16,17,16,17,17,16,16,16,18,16,11,12,12,14,14,13,13,14,15,15,13,14,13,15,15,14,15,15,16,16,14,15,15,16,16,12,13,13,15,15,13,13,14,15,15,14,14,14,16,15,15,15,15,15,16,15,16,15,17,16,12,13,13,15,15,14,14,15,15,16,13,14,13,16,15,15,15,16,16,17,15,16,15,17,15,14,15,14,16,16,14,15,15,16,16,15,16,15,17,16,15,15,16,15,17,16,17,16,17,17,14,15,15,16,16,15,16,16,16,17,14,15,15,16,16,16,17,17,17,18,16,16,16,17,16,12,13,13,15,15,13,13,14,15,16,13,14,14,16,15,14,15,15,16,17,14,15,15,17,16,13,14,14,15,16,14,14,15,15,17,14,15,15,16,16,15,14,16,15,17,15,16,16,17,17,13,14,14,16,16,14,15,15,16,16,14,15,14,16,16,15,16,16,17,17,15,16,15,17,16,15,15,16,15,17,15,15,16,15,17,15,16,16,16,17,16,15,17,15,18,17,17,17,17,17,15,15,15,17,17,16,16,16,17,17,15,16,15,17,17,16,17,17,18,18,16,17,15,18,15,11,12,12,15,15,13,13,15,14,16,13,14,13,16,14,15,15,16,16,17,15,16,15,17,15,12,14,13,16,14,13,13,14,14,16,14,15,14,16,15,15,15,16,15,17,16,16,16,17,16,12,13,14,15,16,15,15,15,15,16,13,15,13,16,14,16,16,16,17,17,15,16,15,17,15,15,16,15,16,15,14,14,15,16,16,16,16,16,17,16,15,15,16,15,17,17,17,17,18,17,15,15,15,16,16,16,16,16,16,17,14,15,15,17,16,17,17,17,17,18,15,16,15,18,14,10,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,14,15,15,16,13,15,14,16,16,12,13,13,15,15,13,14,14,15,16,13,14,14,15,15,14,15,15,16,17,14,15,15,17,16,12,13,13,15,15,13,14,14,15,15,12,14,13,15,15,14,15,15,16,17,14,15,14,17,15,14,15,15,16,16,14,15,15,16,17,15,15,15,17,16,16,16,16,16,17,16,16,16,17,17,13,14,14,16,15,14,15,15,16,16,14,15,14,16,16,15,16,16,17,17,15,16,15,17,16,11,12,12,14,15,13,13,14,14,15,13,14,13,15,15,14,15,15,16,16,14,15,15,16,16,12,14,13,15,15,13,13,14,15,16,14,15,14,16,15,15,15,16,15,17,15,16,16,17,16,12,13,13,15,15,14,14,15,15,16,13,14,13,16,15,15,15,16,16,17,15,15,15,16,16,14,15,15,16,16,14,15,15,16,16,15,16,16,17,17,16,16,16,16,17,16,17,17,18,17,14,14,15,15,16,15,15,16,16,17,14,15,15,16,16,16,16,16,17,17,15,16,15,17,15,11,12,12,14,14,12,13,14,15,15,12,13,13,15,15,14,15,15,16,16,13,15,14,16,16,12,13,13,15,15,13,14,14,15,16,13,14,14,16,16,15,15,15,16,17,15,15,15,17,16,12,13,13,15,15,13,14,14,16,15,13,14,13,16,15,15,16,15,17,17,14,15,14,17,16,14,15,15,16,16,15,15,16,16,17,15,16,16,17,17,16,16,16,16,18,16,17,16,18,17,14,15,14,16,15,15,15,15,17,16,14,15,14,17,15,16,17,16,17,17,15,16,15,17,15,11,12,12,15,15,13,13,15,14,16,13,15,13,16,14,15,15,16,15,17,15,16,15,17,16,12,14,13,15,15,13,13,15,15,16,15,15,15,16,15,15,15,16,15,17,16,16,16,17,16,12,13,14,15,16,14,14,15,15,16,13,14,13,16,14,16,16,16,16,17,15,16,15,17,15,15,16,15,16,16,14,15,15,16,16,16,16,16,17,16,15,15,16,15,17,17,17,17,18,17,15,15,15,15,16,16,16,16,16,17,14,15,14,16,15,17,17,17,17,18,15,16,15,17,15,12,13,13,15,15,13,14,14,15,16,13,14,14,16,15,14,15,15,16,17,14,15,15,17,16,13,14,14,16,15,13,14,15,16,16,14,15,15,16,16,15,15,16,16,17,15,16,16,17,17,13,14,13,16,15,14,15,15,16,16,13,15,14,16,15,15,16,16,17,17,15,16,14,17,15,15,15,16,17,17,15,15,16,16,17,16,16,16,17,17,16,15,17,16,18,17,17,17,18,18,15,15,15,17,14,16,16,16,17,16,15,16,15,17,15,16,17,17,18,17,16,17,15,18,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,7,9,9,10,10,9,10,10,10,11,9,10,10,11,10,9,10,10,11,11,9,10,10,11,11,9,10,10,11,11,10,10,10,11,11,10,10,10,11,11,10,11,11,11,11,10,11,11,11,11,9,10,10,11,11,10,10,10,11,11,9,10,10,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,10,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,9,10,10,11,11,10,10,11,11,11,10,10,11,11,11,10,11,11,11,12,10,11,11,12,12,10,10,11,11,11,10,11,11,11,12,11,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,11,11,11,11,11,11,11,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,10,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,11,10,11,11,11,11,10,11,11,11,12,11,11,11,12,12,11,11,12,12,12,11,11,11,12,12,10,11,10,11,11,11,11,11,12,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,10,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,13,12,13,12,9,10,10,11,11,10,10,11,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,11,11,11,10,11,11,11,12,10,11,11,12,12,11,11,12,12,12,11,11,11,12,12,10,11,10,11,11,11,11,11,12,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,10,11,11,11,10,11,11,12,12,10,11,11,12,12,11,11,11,12,12,11,11,12,12,12,10,11,11,11,12,11,11,12,12,12,11,11,12,12,12,11,11,12,12,12,11,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,11,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,10,11,11,12,11,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,9,10,10,11,11,10,10,11,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,10,11,11,11,11,10,11,11,12,12,11,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,11,10,11,11,10,11,11,12,12,10,11,11,12,11,11,12,11,12,12,11,11,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,11,12,10,11,11,12,11,11,11,12,12,12,11,11,12,12,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,12,12,12,12,12,12,12,13,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,12,10,11,11,12,12,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,12,13,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,13,12,13,12,12,12,12,13,12,12,13,12,13,12,13,13,12,13,12,12,12,12,12,12,13,13,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,13,13,13,12,12,12,12,12,12,12,13,12,13,12,12,12,12,13,12,12,13,13,13,12,12,13,12,13,12,10,11,11,12,12,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,11],"i8",L3,x.GLOBAL_BASE+390097),d3([12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,12,13,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,13,13,13,12,12,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,13,12,13,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,13,12,13,12,12,12,12,12,12,12,12,12,12,13,12,13,12,13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,13,12,13,12,12,13,12,13,12,12,13,12,13,12,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,4,7,8,4,8,7,5,7,8,7,7,10,8,9,9,5,7,7,8,9,9,7,10,7,5,7,8,8,9,11,8,10,10,8,9,10,10,10,12,11,12,12,8,10,10,10,12,12,10,12,11,5,8,7,8,10,10,8,11,9,8,10,10,10,11,12,10,12,12,8,10,9,11,12,12,10,12,10,5,8,8,7,10,10,8,11,10,7,9,10,9,10,12,10,12,12,8,10,10,10,12,12,10,12,11,7,9,10,9,11,12,10,12,11,9,9,12,10,10,13,12,12,13,10,12,11,12,13,13,11,13,11,7,10,9,10,11,12,10,13,11,9,11,11,11,11,13,12,14,13,10,11,11,12,14,14,11,14,11,5,8,8,8,10,11,7,10,10,8,10,10,10,11,12,10,12,12,7,10,9,10,12,12,9,12,10,7,9,10,10,11,13,10,12,11,10,11,11,11,11,14,12,14,14,9,11,11,12,13,14,11,13,11,7,10,9,10,11,12,9,12,10,10,11,12,11,11,13,12,13,13,9,12,9,12,13,12,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,6,7,7,7,7,8,7,8,7,7,7,8,7,8,8,8,8,8,7,8,7,7,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,8,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,5,5,7,7,5,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,5,7,8,7,9,10,8,9,9,8,9,10,9,10,12,10,11,11,8,10,9,10,11,12,9,11,10,5,8,7,8,10,9,7,10,9,8,9,10,9,10,11,10,12,11,8,10,9,10,11,11,9,12,10,5,8,8,7,9,10,8,10,9,7,9,10,9,10,11,9,11,11,8,10,9,10,11,11,10,12,10,7,9,10,9,10,12,9,11,11,9,9,12,11,10,13,11,11,13,10,12,11,11,13,13,11,13,12,7,9,9,9,11,11,9,12,11,9,11,10,10,11,12,11,13,12,9,11,11,12,13,13,11,13,11,5,8,8,8,9,10,7,10,9,8,9,10,10,10,12,10,11,11,7,10,9,9,11,11,9,11,10,7,9,9,9,11,12,9,11,11,9,11,11,11,11,13,12,13,13,9,10,11,11,12,13,10,12,11,7,10,9,9,11,11,9,12,10,10,11,12,11,12,13,12,13,13,9,12,9,11,13,11,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,9,9,6,8,8,10,10,6,8,8,10,10,8,9,10,12,12,8,10,9,12,12,6,8,8,10,10,8,8,9,10,11,8,9,9,11,11,9,10,11,12,13,10,11,11,13,13,6,8,8,10,10,8,9,9,11,11,8,9,8,11,10,10,11,11,13,13,9,11,10,13,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,12,13,13,15,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,13,13,14,15,12,13,12,15,12,7,8,8,10,11,8,9,10,11,12,8,9,9,11,11,10,11,11,13,14,10,11,11,13,13,8,9,9,11,12,9,10,11,11,13,9,10,10,12,12,11,11,12,13,15,11,12,12,14,14,8,9,9,11,11,9,10,11,12,13,9,10,10,12,12,11,12,12,14,15,11,12,12,14,14,10,11,12,13,13,11,12,12,13,14,12,12,12,14,14,13,13,14,14,16,14,14,14,16,15,10,11,11,13,13,12,12,12,14,14,11,12,12,14,13,14,14,14,15,16,13,14,13,16,14,7,8,8,11,10,8,9,9,11,11,8,10,9,12,11,10,11,11,13,13,10,11,11,14,13,8,9,9,12,11,9,10,10,12,12,9,11,10,13,12,11,12,12,13,14,11,12,12,15,14,8,9,9,12,11,9,10,10,12,12,9,11,10,13,11,11,12,12,14,14,11,12,12,14,13,10,11,11,13,13,11,12,12,13,14,12,13,12,14,14,13,13,14,14,16,13,14,14,16,15,10,11,11,13,13,12,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,16,14,9,10,11,12,13,11,11,12,12,14,11,11,12,13,14,13,13,14,14,16,13,13,14,15,15,11,11,12,12,14,12,12,13,13,15,12,12,13,13,15,14,14,15,15,16,14,14,14,15,16,11,12,12,13,14,12,12,13,14,15,12,13,12,14,14,14,14,15,15,16,14,14,14,16,16,13,13,14,15,16,14,14,15,15,16,14,15,15,16,16,15,15,16,16,18,16,16,16,17,17,13,14,14,15,15,14,14,15,16,16,14,15,14,16,16,16,16,16,17,18,15,16,16,17,16,9,11,10,13,12,11,12,11,14,13,11,12,11,14,12,13,14,13,15,14,13,14,13,16,14,11,12,12,14,13,12,12,13,14,14,12,13,12,15,14,14,14,14,16,16,14,15,14,17,15,11,12,11,14,12,12,13,12,15,13,12,13,12,15,13,14,14,14,16,15,14,15,14,16,15,13,14,14,15,15,14,14,15,16,16,14,15,14,16,16,15,15,16,16,17,16,16,16,17,17,13,14,14,16,15,14,15,15,16,16,14,15,14,17,15,16,16,16,17,17,15,16,15,18,16,7,8,8,10,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,11,11,14,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,13,14,11,12,12,14,14,8,9,9,12,11,9,10,11,12,13,9,11,10,13,12,11,12,12,14,14,11,12,12,14,13,10,11,11,13,13,11,12,12,13,14,11,12,12,14,14,13,13,14,14,16,13,14,14,16,15,10,12,11,13,13,12,12,12,14,14,11,12,12,14,13,14,14,14,15,16,13,14,14,16,14,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,11,12,13,14,11,12,12,14,14,9,9,10,11,12,10,10,11,12,13,10,10,11,12,13,12,12,13,14,15,12,12,13,14,15,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,15,15,12,13,13,15,14,11,11,12,13,14,12,12,13,13,15,12,12,13,14,15,14,14,15,14,16,14,14,15,15,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,14,14,15,15,16,16,14,15,14,17,15,8,9,9,11,11,9,10,10,12,12,9,11,10,13,12,11,12,12,14,14,11,13,12,15,13,9,10,10,12,12,10,10,11,12,13,10,12,11,13,13,12,12,13,13,15,12,13,13,15,14,9,10,10,12,12,11,11,12,13,13,10,12,10,13,12,12,13,13,15,15,12,13,13,15,13,11,12,12,14,14,12,12,13,14,14,12,13,13,15,14,13,13,14,13,16,14,15,14,16,16,11,12,12,14,14,13,13,13,15,15,12,13,12,15,14,14,15,15,16,17,14,15,13,16,13,10,11,11,13,14,11,12,12,13,15,11,12,12,14,14,13,14,14,15,16,13,14,14,16,16,11,11,12,12,14,12,12,13,13,15,12,13,13,13,15,14,14,15,14,17,14,14,15,15,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,16,13,14,14,14,16,14,14,15,14,17,14,15,15,14,17,16,16,17,15,18,16,16,17,16,18,13,14,14,16,16,14,15,15,17,16,14,15,15,17,16,16,17,17,18,18,16,17,16,18,17,10,11,11,14,13,11,12,12,14,14,11,13,12,15,14,14,14,14,16,15,14,15,14,16,15,11,12,12,14,13,12,13,13,15,14,13,14,13,15,14,14,15,15,16,16,14,15,15,17,15,11,12,12,14,14,13,13,13,15,15,12,13,13,15,14,15,15,15,17,17,14,15,15,17,15,13,14,14,16,15,14,15,15,16,16,15,15,15,17,16,16,16,16,16,17,16,17,16,18,17,14,14,14,16,16,15,15,15,16,16,14,15,14,17,16,16,17,17,17,18,16,17,16,18,16,7,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,11,10,13,12,11,12,12,13,14,11,12,12,14,14,8,9,9,11,11,9,10,10,12,12,9,10,10,13,12,11,12,12,14,14,11,12,11,14,13,10,11,12,13,13,11,12,12,13,14,12,13,12,14,14,13,13,14,14,16,13,14,14,16,15,10,11,11,13,13,11,12,12,14,14,11,12,12,14,13,13,14,14,15,16,13,14,13,16,14,8,9,9,11,11,9,10,11,12,13,9,10,10,12,12,11,12,13,13,14,11,12,12,14,14,9,10,10,12,12,10,10,11,12,13,11,12,11,13,13,12,12,13,13,15,12,13,13,15,15,9,10,10,12,12,10,11,12,13,14,10,11,10,13,12,12,13,13,14,15,12,13,12,15,13,12,12,12,14,14,12,12,13,14,15,13,13,13,15,15,14,14,15,13,16,14,15,15,16,16,11,12,12,14,14,12,13,13,14,15,12,13,12,14,14,14,14,15,16,16,13,14,13,16,14,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,14,11,12,11,14,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,14,15,12,13,13,15,14,9,10,9,12,11,10,11,10,13,12,10,11,10,13,12,12,13,12,15,14,12,13,12,15,14,11,12,12,14,14,12,13,13,14,15,12,13,13,15,15,14,14,15,15,17,14,15,15,16,16,11,12,11,14,13,12,13,12,15,14,12,13,12,15,13,14,15,14,16,15,13,15,14,17,14,10,11,11,13,14,11,12,13,13,15,11,12,12,14,14,14,14,15,15,17,13,14,14,15,16,11,12,12,14,14,12,12,13,14,15,13,13,13,15,15,14,15,15,15,17,15,15,15,16,16,11,12,12,13,14,13,13,14,14,15,12,13,13,14,15,14,15,15,16,17,14,15,15,16,16,14,14,14,16,16,14,14,15,15,17,15,15,15,17,16,16,16,17,16,18,16,17,17,18,17,13,14,14,15,16,14,15,15,16,17,14,15,15,16,16,16,17,17,17,18,16,16,16,17,16,10,11,11,14,13,11,12,12,14,14,11,12,12,15,13,13,14,14,16,15,13,14,14,16,15,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,17,16,11,12,11,14,12,12,13,13,15,13,12,13,12,15,13,14,15,15,16,15,14,15,14,17,14,13,14,14,16,16,14,15,15,16,17,14,15,15,16,17,16,16,17,17,18,16,17,17,18,18,13,14,14,16,13,14,15,15,17,14,14,15,14,17,14,16,17,16,17,16,16,17,16,18,15,8,11,11,13,13,10,12,12,14,14,11,12,12,14,14,13,13,14,15,16,13,14,14,16,15,10,11,11,14,14,11,12,12,14,15,11,12,12,15,14,13,14,14,15,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,12,15,14,14,14,15,16,16,14,15,14,16,16,12,13,13,15,15,12,13,14,15,16,13,14,14,16,16,14,15,15,16,17,15,15,16,17,17,13,14,14,16,15,14,15,15,16,16,14,15,14,16,16,16,16,16,17,17,15,16,16,18,16,10,11,11,13,14,11,12,12,14,15,11,12,12,15,14,13,14,14,16,16,13,14,14,16,16,11,11,12,14,14,12,12,13,14,15,12,13,13,15,15,14,14,15,15,17,14,14,15,16,16,11,12,12,15,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,17,16,13,12,14,14,16,13,13,15,14,17,14,13,15,15,17,15,14,16,15,18,16,15,16,16,18,13,14,14,16,16,14,15,15,17,17,14,15,15,17,16,16,17,17,18,18,16,17,16,18,17,10,11,11,14,13,11,12,12,14,14,11,13,12,15,14,13,14,14,15,16,13,14,14,16,16,11,12,12,14,14,12,13,13,14,15,12,13,13,15,15,14,14,15,15,16,14,15,15,17,16,11,12,12,14,14,13,13,13,15,15,12,13,13,15,14,14,15,15,16,17,14,15,14,17,15,13,14,13,16,15,14,14,14,15,16,14,15,14,16,16,15,15,16,16,17,16,16,16,18,17,14,14,14,16,16,15,15,15,17,16,14,15,14,17,16,16,16,17,17,18,16,17,16,18,16,11,13,13,15,15,12,13,14,15,16,12,14,14,15,15,14,15,15,16,17,14,15,15,17,17,12,13,14,14,16,13,14,14,14,16,14,14,14,15,16,15,15,16,15,18,15,16,16,17,17,13,14,14,16,16,14,14,15,16,16,14,15,14,16,16,15,16,16,17,18,15,16,16,18,17,14,14,16,13,17,15,15,16,14,18,15,15,16,14,18,16,16,18,15,19,17,17,18,16,18,15,16,15,17,17,15,16,17,18,18,16,16,16,18,17,17,18,18,19,19,17,18,17,19,18,11,12,12,15,14,13,13,14,15,16,13,14,13,16,14,15,15,15,16,17,15,16,15,17,16,12,13,13,15,14,13,13,14,15,15,14,15,14,16,15,15,15,16,16,17,16,16,16,18,17,12,13,13,15,15,14,14,15,16,16,13,14,13,16,15,16,16,16,17,18,15,16,15,17,16,14,15,14,17,15,14,15,15,16,16,15,16,15,17,16,16,15,16,15,17,17,18,17,18,17,15,15,15,16,17,16,16,16,17,17,15,16,15,17,16,17,18,18,18,18,16,17,16,18,15,8,11,11,13,13,11,12,12,14,14,10,12,12,14,14,13,14,14,15,16,13,14,13,16,15,11,12,12,14,14,12,12,13,14,15,12,13,13,15,15,14,14,15,15,16,14,14,14,16,16,10,11,11,14,14,11,12,12,14,15,11,12,12,15,14,13,14,14,16,16,13,14,14,16,15,13,14,14,15,16,14,14,15,16,16,14,15,15,16,16,15,16,16,16,18,16,16,16,17,17,12,13,13,15,15,13,14,14,16,16,12,14,13,16,15,15,16,15,17,17,14,16,15,17,16,10,11,11,13,14,11,12,13,14,15,11,13,12,14,14,14,14,15,16,16,13,14,14,16,16,11,12,12,14,14,12,13,13,14,15,13,14,13,15,15,14,15,15,16,17,14,15,15,17,16,11,12,12,14,14,12,13,13,15,15,12,13,12,15,14,14,15,15,16,17,14,15,15,16,16,14,14,14,16,16,14,14,15,16,16,15,15,15,16,16,16,16,17,16,18,16,17,17,18,18,13,13,14,15,16,14,14,15,16,17,13,14,14,16,16,16,16,17,17,18,15,16,15,17,16,10,11,11,14,13,11,12,12,14,14,11,12,12,15,14,13,14,14,16,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,17,16,11,12,11,14,14,12,13,13,15,15,12,13,12,15,14,14,15,14,16,16,14,15,14,17,16,14,14,14,16,16,14,15,15,16,17,14,15,15,17,17,16,16,17,17,18,16,17,17,18,18,13,14,12,16,14,14,15,13,17,15,13,15,13,17,14,16,16,15,18,16,15,17,14,18,15,11,12,12,14,15,13,13,14,14,16,13,14,13,15,14,15,15,16,16,17,15,16,15,17,16,12,13,13,15,15,13,13,14,15,16,14,15,14,16,16,15,15,16,15,18,16,16,16,18,17,12,13,13,15,15,14,14,15,15,16,13,14,13,15,15,16,16,16,16,18,15,16,15,17,16,15,15,15,17,16,15,15,16,16,17,16,16,16,18,17,16,16,17,15,18,17,18,17,19,18,14,14,15,15,17,15,15,16,16,17,14,15,15,16,16,17,17,18,17,19,16,17,15,17,15,11,13,12,15,15,12,14,14,15,15,12,14,13,16,15,15,15,15,17,17,14,15,15,17,16,12,14,14,16,16,14,14,15,16,16,14,14,14,16,16,15,16,17,17,18,15,16,16,18,17,12,14,13,16,14,13,14,14,16,15,13,15,14,16,14,15,16,16,17,17,15,16,15,18,15,15,15,16,17,17,15,16,16,17,18,16,16,16,18,18,17,17,18,18,19,17,17,18,19,19,14,15,14,17,13,15,16,15,18,14,15,16,15,18,14,17,18,17,18,16,16,18,16,19,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,4,7,7,4,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,6,7,8,8,9,10,8,9,10,8,9,10,10,10,12,10,11,12,8,10,10,10,11,12,10,11,11,6,8,7,8,10,9,8,10,9,8,10,10,10,11,11,10,12,11,8,10,9,10,12,11,10,12,10,5,8,8,8,10,10,8,10,10,7,9,10,9,10,11,9,11,11,8,10,10,10,12,12,10,12,11,7,9,9,9,10,11,9,11,11,9,9,11,10,11,12,10,11,12,9,11,11,11,12,12,11,12,12,7,9,9,10,11,11,10,12,11,9,11,10,11,11,12,11,13,12,10,11,11,12,13,13,11,13,11,5,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,11,7,10,9,9,11,11,9,11,10,7,9,9,10,11,12,10,11,11,10,11,11,11,11,13,12,13,13,9,10,11,12,12,13,11,12,11,7,9,9,9,11,11,9,11,10,9,11,11,11,12,12,11,12,12,9,11,9,10,12,11,10,12,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,9,15,17,20,21,22,23,5,5,7,9,11,13,17,20,9,5,5,6,8,10,15,18,11,7,5,4,6,9,13,17,14,9,7,5,6,7,10,14,17,10,8,6,6,4,5,8,20,14,13,10,8,4,3,4,23,17,16,14,12,6,4,4,2,0,0,0,64,0,0,0,112,96,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,216,47,6,0,0,0,0,0,0,0,0,0,0,48,6,0,0,0,0,0,0,0,0,0,40,48,6,0,80,48,6,0,0,0,0,0,0,0,0,0,120,48,6,0,160,48,6,0,0,0,0,0,0,0,0,0,200,48,6,0,240,48,6,0,0,0,0,0,0,0,0,0,24,49,6,0,64,49,6,0,240,48,6,0,0,0,0,0,104,49,6,0,144,49,6,0,184,49,6,0,224,49,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,152,47,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,7,14,16,17,17,18,20,6,3,5,8,10,11,13,15,13,5,3,5,8,9,11,12,15,7,4,3,5,7,9,11,16,10,7,5,6,7,9,10,17,11,8,7,7,6,8,8,19,13,11,9,9,8,8,9,20,14,13,11,10,8,9,9,5,0,0,0,243,0,0,0,104,95,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,96,96,6,0,0,0,0,0,5,0,0,0,53,12,0,0,24,83,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,80,95,6,0,0,0,0,0,5,0,0,0,243,0,0,0,16,82,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,8,83,6,0,0,0,0,0,5,0,0,0,243,0,0,0,8,81,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,0,82,6,0,0,0,0,0,5,0,0,0,243,0,0,0,0,80,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,248,80,6,0,0,0,0,0,5,0,0,0,53,12,0,0,176,67,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,79,6,0,0,0,0,0,5,0,0,0,53,12,0,0,96,55,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,152,67,6,0,0,0,0,0,1,0,0,0,7,0,0,0,56,55,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,64,55,6,0,0,0,0,0,5,0,0,0,243,0,0,0,48,54,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,40,55,6,0,0,0,0,0,5,0,0,0,243,0,0,0,40,53,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,32,54,6,0,0,0,0,0,5,0,0,0,243,0,0,0,32,52,6,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,24,53,6,0,0,0,0,0,5,0,0,0,243,0,0,0,24,51,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,16,52,6,0,0,0,0,0,1,0,0,0,25,0,0,0,144,50,6,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,176,50,6,0,0,0,0,0,1,0,0,0,25,0,0,0,8,50,6,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,40,50,6,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,4,5,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,5,5,4,10,10,5,10,10,5,10,10,10,10,10,10,10,10,5,10,10,10,10,10,9,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,7,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,7,6,7,8,6,8,7,7,7,8,7,7,8,8,8,8,7,7,7,8,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,9,8,9,8,8,8,8,8,8,9,8,9,9,8,8,8,9,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,9,9,9,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,6,5,7,8,5,8,7,5,7,7,7,7,9,8,9,9,5,7,7,8,9,9,7,9,7,6,8,8,8,9,10,8,9,9,8,9,10,9,9,11,10,10,11,8,10,9,10,10,11,9,10,10,6,8,8,8,9,9,8,10,9,8,9,10,9,10,10,10,11,10,8,10,9,10,11,10,9,11,9,6,8,8,7,9,9,8,9,9,7,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,10,9,7,9,9,9,10,10,9,10,10,9,9,10,10,9,11,10,11,11,9,10,10,10,11,11,10,11,10,6,9,8,9,10,10,9,10,9,8,10,10,9,9,10,10,11,11,9,10,10,10,11,11,9,11,9,6,8,8,8,9,9,7,9,9,8,9,9,9,9,10,9,10,10,7,9,9,9,10,10,9,10,9,6,8,9,9,9,10,9,10,10,9,10,10,9,9,11,10,11,11,8,10,10,10,11,11,9,10,9,7,9,9,9,10,10,9,10,10,9,10,10,10,10,11,10,11,11,9,10,9,10,11,11,10,11,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,9,9,5,7,8,10,11,5,8,7,11,10,8,10,11,12,13,8,11,10,13,12,6,7,8,10,11,7,8,10,10,12,8,9,9,12,11,10,10,12,11,14,10,11,12,14,13,6,8,7,11,10,8,9,9,11,12,7,10,8,12,10,10,12,12,13,14,10,12,10,14,11,9,10,11,11,12,10,10,11,11,13,11,12,12,13,13,12,11,13,11,15,13,14,13,14,14,9,11,10,12,11,11,12,12,13,13,10,11,10,13,11,13,13,14,14,14,12,13,11,14,11,7,8,9,11,12,9,9,11,12,13,9,10,10,13,12,11,12,13,13,15,11,12,12,14,14,9,10,10,12,13,10,10,12,12,14,11,11,11,13,13,12,12,13,13,15,12,13,13,15,14,9,10,10,12,13,10,11,11,13,14,10,12,11,14,13,12,13,13,14,15,12,13,13,15,14,12,12,13,13,14,12,13,13,13,15,13,14,14,14,15,14,14,15,14,16,14,15,15,16,16,12,13,13,14,14,13,13,14,15,14,12,13,13,15,14,14,15,15,15,16,14,15,14,16,14,7,9,8,12,11,9,10,10,12,13,9,11,9,13,12,11,12,12,14,14,11,13,12,15,13,9,10,10,13,12,10,11,12,13,14,10,12,11,14,13,12,13,13,14,15,13,13,13,15,14,9,10,10,13,12,11,11,11,13,13,10,12,10,14,12,13,13,13,14,15,12,13,12,15,13,12,13,13,14,14,12,13,13,14,15,13,14,13,15,15,14,14,15,14,16,14,15,15,16,15,12,13,12,14,13,13,13,13,15,14,12,13,13,15,13,14,15,15,16,15,14,15,14,16,14,11,12,12,13,14,12,13,14,14,15,12,13,13,14,15,14,14,15,15,16,14,15,15,16,16,12,13,13,14,15,13,13,14,14,16,13,14,14,15,15,15,15,16,15,17,15,15,15,16,16,12,13,13,14,15,13,14,14,15,16,13,14,14,15,15,15,15,16,16,17,15,15,15,17,16,14,15,15,16,16,15,15,16,15,16,15,16,16,16,17,16,16,17,16,18,16,16,17,18,17,14,15,15,16,16,15,16,16,16,17,15,16,15,17,16,16,17,17,17,18,16,16,16,17,16,11,12,12,14,13,12,13,13,15,14,12,14,13,15,14,14,15,15,16,16,14,15,14,16,15,12,13,13,15,14,13,14,14,15,15,13,14,14,16,15,15,15,15,16,16,15,16,15,17,16,12,13,13,15,14,13,14,14,15,15,13,14,13,16,14,15,15,15,16,16,15,15,15,17,15,14,15,15,16,16,15,15,15,16,16,15,16,16,17,17,16,16,17,17,17,16,17,17,18,17,14,15,15,16,15,15,15,16,16,16,15,15,15,17,15,17,17,17,18,17,16,17,16,18,16,6,9,9,12,12,8,10,10,12,13,9,11,10,13,12,10,12,12,14,14,11,13,12,14,14,8,10,10,12,12,9,10,11,12,14,10,11,11,13,13,12,12,13,13,15,12,13,13,15,14,9,10,10,13,13,10,11,11,13,13,10,12,10,14,13,12,13,13,14,15,12,13,13,15,14,11,12,12,13,14,12,12,13,13,15,12,13,13,14,14,13,13,14,13,16,14,15,15,16,15,11,12,12,14,14,13,13,13,15,14,12,13,13,15,14,14,15,15,16,15,14,14,14,16,14,7,9,10,12,12,9,10,11,13,13,9,11,10,13,13,11,12,13,14,15,12,13,13,15,14,9,10,11,12,13,10,10,12,13,14,11,11,12,14,14,12,12,14,14,15,13,13,13,15,15,9,11,11,13,13,11,12,12,14,14,10,12,10,14,13,13,14,13,15,15,12,14,13,15,14,12,12,13,13,15,12,12,14,13,15,13,14,14,15,15,14,14,15,14,17,14,15,15,16,16,12,13,13,15,14,13,14,14,15,15,12,14,13,15,14,14,15,15,16,16,14,15,14,16,14,7,10,10,12,12,10,11,11,12,13,10,12,10,14,12,12,13,13,14,15,12,13,13,15,14,9,11,10,13,12,10,10,12,12,14,11,13,12,14,13,13,13,14,13,15,13,14,14,15,14,10,11,11,13,13,12,12,12,13,14,10,12,10,14,12,13,14,14,15,15,13,14,13,15,13,12,13,13,14,14,12,12,13,14,15,13,14,14,15,15,13,13,14,13,15,14,15,15,16,16,12,13,13,14,14,13,14,14,15,15,12,13,13,15,13,15,15,15,16,16,13,14,13,16,13,11,12,13,14,14,12,13,14,14,15,12,13,13,15,15,14,14,15,15,17,14,15,15,16,16,12,13,14,14,15,13,13,14,14,16,13,14,14,15,16,14,14,16,15,17,15,15,16,16,16,12,13,13,15,15,13,14,14,15,16,13,14,14,15,16,15,15,16,17,17,15,16,15,17,16,14,15,15,15,16,15,15,16,15,17,15,15,16,16,17,16,16,16,16,18,16,16,17,17,17,14,15,15,16,16,15,16,16,16,17,15,16,15,17,16,16,17,17,17,17,16,17,16,18,17,11,12,12,14,14,13,13,14,14,15,13,14,13,15,14,14,15,15,15,16,14,15,15,17,15,12,13,13,15,14,13,13,14,15,15,14,15,14,16,15,15,15,15,15,16,15,16,15,17,16,12,13,13,15,15,14,14,14,15,16,13,14,13,16,15,15,15,16,16,17,15,16,15,17,15,14,15,15,16,16,14,15,15,16,16,15,16,16,17,16,15,15,16,15,17,16,17,17,18,17,14,15,15,16,16,15,16,16,16,17,14,15,15,17,16,17,17,17,17,18,15,16,16,18,15,6,9,9,12,12,9,10,11,12,13,8,10,10,13,12,11,12,13,14,14,10,12,12,14,13,9,10,10,12,13,10,10,12,13,14,10,11,11,13,13,12,13,13,14,15,12,13,13,15,14,8,10,10,12,12,10,11,11,13,13,9,11,10,13,13,12,13,13,14,15,12,13,12,15,13,11,12,12,14,14,12,13,13,13,15,13,13,13,14,15,14,14,15,14,16,14,15,15,15,15,11,12,12,14,13,12,13,13,15,14,12,13,12,15,13,14,14,15,16,16,13,14,13,16,13,7,10,10,12,12,10,10,12,12,14,10,11,11,13,12,12,13,13,13,15,12,13,13,15,14,10,11,11,13,13,10,10,12,12,14,12,12,12,14,13,13,13,14,13,15,13,14,14,15,14,9,10,11,13,13,11,12,12,13,14,10,12,10,14,12,13,13,14,14,15,13,13,12,15,13,12,13,13,14,14,12,13,13,14,15,13,14,14,15,15,13,13,15,13,16,15,15,15,16,16,12,13,13,14,14,13,14,14,15,15,12,13,12,15,14,15,15,15,16,16,13,14,13,15,13,7,10,9,12,12,9,10,11,13,13,9,11,10,13,13,11,13,13,14,15,11,13,12,15,14,9,11,11,13,13,10,10,12,13,14,11,12,12,14,14,12,13,14,14,15,13,13,13,15,15,9,11,10,13,12,11,12,11,14,14,10,12,10,14,13,13,14,13,15,15,12,14,12,15,14,12,13,13,14,15,13,13,14,14,15,13,14,14,15,15,14,14,15,14,17,14,15,15,16,16,12,13,12,15,13,13,14,14,15,15,12,14,13,15,13,14,15,15,16,16,14,15,14,16,14,11,12,12,14,14,13,13,14,14,15,13,14,13,15,15,14,15,15,16,17,14,15,15,16,15,12,13,13,15,15,13,13,14,15,16,14,14,14,16,15,15,15,16,15,17,15,16,15,17,16,12,13,13,14,15,14,14,15,15,16,13,14,13,15,15,15,15,16,16,17,15,15,15,16,15,14,15,15,16,16,14,15,15,16,17,15,16,16,17,17,16,15,16,15,17,16,17,17,17,17,14,15,15,15,16,15,15,16,16,17,14,15,15,16,16,16,16,17,17,18,15,16,15,17,15,11,13,12,14,14,12,13,13,15,15,12,14,13,15,14,14,15,15,16,16,14,15,14,16,15,12,13,13,15,15,13,14,14,15,16,13,14,14,16,16,15,15,16,16,17,15,16,15,17,16,12,13,13,15,14,13,14,14,16,15,13,14,13,16,14,15,16,15,17,16,15,15,14,18,15,14,15,15,16,16,15,15,16,16,17,15,16,15,17,16,16,16,17,17,18,16,17,17,18,17,14,15,15,16,15,15,16,15,17,16,15,15,15,17,15,16,17,17,18,17,16,17,16,18,15,10,12,12,14,14,12,13,13,14,14,12,13,13,14,14,13,14,14,15,15,13,14,14,16,15,11,12,13,14,14,12,13,13,15,15,12,13,13,15,15,13,14,15,15,16,14,15,15,16,16,12,13,13,14,14,13,13,14,15,15,13,14,13,15,15,14,15,15,16,16,14,15,14,16,15,13,14,14,15,15,13,14,14,15,16,14,14,15,16,16,14,15,15,15,17,15,16,16,17,17,13,14,14,15,15,14,15,15,16,16,14,15,15,16,16,15,16,16,16,17,15,16,15,17,16,11,12,12,14,14,12,13,13,14,15,12,13,13,15,14,13,14,14,15,16,13,14,14,16,15,12,13,13,14,15,13,13,14,15,15,13,14,14,15,15,14,14,15,15,17,14,15,15,16,16,12,13,13,15,15,13,14,14,15,15,13,14,13,15,15,14,15,15,16,17,14,15,15,16,16,13,13,14,15,16,14,14,15,15,16,14,15,15,16,16,15,15,16,15,18,15,16,16,17,17,14,15,15,16,16,15,15,15,16,16,14,15,15,17,16,16,16,16,17,17,15,16,16,17,16,10,12,12,14,14,12,13,13,14,15,12,13,13,15,14,14,14,15,15,16,14,15,14,16,15,12,13,13,15,14,13,13,14,15,15,13,14,14,15,15,14,14,15,15,16,14,15,15,16,16,12,13,13,15,15,13,14,14,15,16,13,14,13,15,14,15,15,15,16,16,14,15,15,16,15,13,14,14,16,15,14,14,14,15,16,14,15,15,16,16,15,15,16,15,17,16,17,16,17,17,14,14,15,15,16,15,15,16,16,16,14,15,14,16,15,16,16,16,17,17,15,16,15,17,15,11,13,13,14,15,13,13,14,15,15,13,14,13,15,15,14,15,15,15,16,14,15,15,17,15,13,13,14,15,15,13,14,15,15,16,14,14,14,16,16,15,14,16,15,17,15,16,16,17,16,13,14,14,15,15,14,14,14,16,16,13,15,14,16,15,15,15,16,17,17,15,16,15,17,16,14,15,15,15,16,15,15,16,15,17,15,16,16,16,17,16,16,17,15,18,16,17,17,17,17,14,15,15,16,16,15,16,16,17,17,15,16,15,17,16,16,17,17,18,18,16,17,15,18,16,10,12,12,14,14,13,13,14,14,15,13,14,13,15,14,14,15,15,15,16,15,15,15,16,15,12,13,13,15,14,12,12,14,14,15,14,15,14,16,15,15,14,15,14,17,15,16,16,17,16,12,13,13,14,15,14,14,15,15,16,13,14,12,16,14,15,16,16,16,17,15,16,14,17,15,14,15,14,16,15,14,14,15,15,15,15,16,15,17,16,15,14,16,14,16,16,17,17,18,17,14,14,15,15,16,15,16,16,16,17,14,15,14,16,15,16,16,17,17,17,15,16,14,17,14,10,12,12,14,13,12,13,13,14,14,11,13,12,14,14,13,14,14,15,16,13,14,14,16,15,12,13,13,14,14,13,13,14,15,15,13,14,13,15,15,14,14,15,15,16,14,15,15,16,16,11,13,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,13,14,14,16,15,13,14,14,15,15,14,15,15,15,16,14,15,15,16,16,15,16,16,16,17,16,16,16,17,17,13,14,14,15,15,14,15,15,16,16,13,14,14,16,15,15,16,16,17,17,15,15,15,17,15,11,12,12,14,14,12,13,13,14,15,12,13,13,15,14,14,14,15,15,16,14,14,14,16,15,12,13,13,15,14,13,13,14,15,15,13,14,14,16,15,14,15,15,15,16,15,15,15,16,16,12,13,13,14,15,13,13,14,15,15,13,14,13,15,15,15,15,15,16,16,14,15,14,16,15,14,14,15,16,16,14,15,15,15,16,15,16,15,16,16,15,15,16,15,17,16,16,16,17,17,13,14,14,15,16,14,15,15,16,16,14,14,14,16,16,16,16,16,17,17,15,15,15,17,15,11,12,12,14,14,12,13,13,14,15,12,13,13,15,14,14,14,14,15,16,13,14,14,16,15,12,13,13,15,15,13,13,14,15,16,13,14,14,15,15,14,15,15,16,17,14,15,15,17,16,12,13,13,15,14,13,14,14,15,15,13,14,13,15,15,14,15,15,16,16,14,15,14,17,15,14,15,15,16,16,14,15,15,16,17,15,15,15,17,17,15,16,16,16,17,16,17,16,17,17,13,15,14,16,15,14,15,15,16,16,14,15,14,16,15,16,16,16,17,17,15,16,15,17,15,10,12,12,14,14,13,13,14,14,15,13,14,13,15,14,14,15,15,15,17,14,15,15,16,15,12,13,13,15,14,12,12,14,14,15,14,15,14,16,15,15,14,16,15,17,15,16,16,17,16,12,13,13,14,15,14,14,15,15,16,12,14,12,15,14,15,16,16,16,17,15,16,14,17,14,14,15,14,16,16,14,14,15,15,16,15,16,16,17,16,15,14,16,14,17,16,17,17,18,17,14,14,15,15,16,15,15,16,16,17,14,15,14,16,15,16,17,17,17,18,15,16,14,17,14,11,13,13,15,14,13,13,14,15,15,12,14,13,15,15,14,15,15,15,17,14,15,14,16,15,13,14,14,15,15,13,14,15,15,16,14,15,14,16,16,15,15,16,16,17,15,16,16,17,17,13,14,13,15,15,14,14,14,16,16,13,15,14,16,15,15,16,16,17,17,15,16,14,17,15,15,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,15,17,16,17,17,17,17,18,18,14,15,15,17,15,15,16,16,17,16,15,16,15,17,15,16,17,17,17,17,16,17,15,18,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,7,8,8,10,10,8,9,9,10,11,8,9,9,10,10,9,10,10,11,11,9,10,10,11,11,8,9,9,10,10,9,9,10,11,11,9,10,10,11,11,10],"i8",L3,x.GLOBAL_BASE+400337),d3([10,11,11,11,10,11,11,11,11,8,9,9,10,10,9,10,10,11,11,9,10,9,11,11,10,11,11,11,11,10,11,10,11,11,10,10,10,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,11,12,11,11,11,11,12,10,10,10,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,12,11,11,11,11,12,11,8,9,10,11,11,9,10,11,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,10,11,11,10,10,11,11,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,10,10,11,11,10,11,11,12,12,10,11,11,12,11,11,12,12,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,8,10,9,11,11,9,10,10,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,10,10,11,11,10,11,11,12,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,11,12,11,11,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,13,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,10,11,11,12,11,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,12,12,13,13,13,13,13,13,13,13,13,8,10,10,11,11,9,10,10,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,11,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,10,10,11,11,10,11,11,12,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,11,12,10,11,11,12,12,11,11,11,12,12,11,11,11,12,12,10,10,11,11,12,11,11,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,10,11,11,12,12,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,13,12,12,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,11,12,12,12,12,12,12,12,13,12,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,11,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,10,10,11,11,9,10,10,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,10,11,11,10,11,11,11,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,11,12,12,11,12,11,12,12,10,11,11,12,12,11,11,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,10,12,11,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,11,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,11,11,12,12,11,12,12,12,12,11,12,11,13,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,12,13,13,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,11,12,12,12,11,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,12,13,12,13,12,12,13,13,13,12,12,13,13,13,12,13,13,13,13,12,12,12,12,13,12,12,13,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,11,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,13,13,13,13,12,13,13,12,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,13,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,11,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,12,13,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,11,12,12,12,12,12,13,13,11,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,13,13,13,13,13,12,13,12,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,13,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,13,13,13,13,13,13,13,13,13,12,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,8,5,8,7,5,7,8,7,8,10,8,10,10,5,8,7,8,10,10,7,10,8,6,8,9,9,10,12,9,11,11,9,10,11,11,11,13,11,13,13,9,11,11,11,12,13,11,13,11,6,9,8,9,11,11,9,12,10,9,11,11,11,11,13,11,13,13,9,11,10,11,13,13,11,13,11,6,9,9,8,10,11,9,12,11,8,10,11,10,11,13,11,13,13,9,11,11,11,13,12,11,13,11,8,10,10,9,11,12,10,12,12,10,10,12,11,11,14,12,13,14,10,12,12,12,13,13,11,14,11,8,11,10,11,12,13,11,14,12,10,12,11,11,12,14,13,15,14,10,12,12,13,14,15,12,14,12,5,9,9,9,11,12,8,11,10,9,11,11,11,11,13,11,12,13,8,11,10,11,13,13,10,13,11,8,10,11,11,12,14,11,13,12,10,12,12,12,12,14,14,15,14,10,11,12,13,14,15,11,14,12,8,10,10,10,12,12,9,12,11,10,12,12,11,11,14,12,13,13,10,12,10,12,14,13,11,13,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,6,7,7,7,7,7,7,7,7,7,7,8,7,8,8,7,8,8,7,8,7,7,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,8,8,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,8,8,8,8,8,9,8,8,9,8,7,8,8,7,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,7,8,8,8,8,9,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,9,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,7,8,8,7,8,8,8,8,8,8,8,9,8,8,9,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,9,8,8,8,8,8,9,9,9,9,9,8,8,8,8,9,9,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,5,4,7,7,4,7,7,5,7,8,7,8,10,8,9,9,5,7,7,8,9,9,7,10,8,5,7,8,8,9,10,8,10,10,8,9,10,10,10,12,10,12,12,8,10,10,10,12,12,10,12,11,5,8,7,8,10,10,8,10,9,8,10,10,10,11,12,10,12,12,8,10,9,10,12,12,10,12,10,5,8,8,7,10,10,8,10,10,7,9,10,9,10,12,10,12,12,8,10,10,10,12,12,10,12,11,7,9,10,9,11,12,10,12,11,9,9,12,11,10,14,12,12,13,10,12,11,12,13,13,11,14,12,7,10,9,10,11,11,10,12,11,9,11,11,11,11,13,12,14,13,10,12,12,12,14,14,11,14,12,5,8,8,8,10,10,7,10,10,8,10,10,10,11,12,10,12,12,7,10,9,10,12,12,9,12,10,7,9,10,10,11,12,10,11,11,10,12,12,11,12,14,12,14,14,9,11,11,12,13,14,11,13,11,7,10,9,10,11,12,9,12,11,10,11,12,11,12,14,12,13,13,9,12,9,12,13,12,11,14,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,9,9,6,8,8,10,10,6,8,8,10,10,8,10,10,12,13,8,10,10,13,12,6,8,8,10,10,8,8,9,10,11,8,9,9,11,11,10,10,11,12,13,10,11,11,13,13,6,8,8,10,10,8,9,9,11,11,8,9,8,11,10,10,11,11,13,13,10,11,10,13,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,13,13,13,15,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,13,13,14,15,12,13,12,15,12,6,8,8,10,11,8,9,10,11,12,8,9,9,11,11,10,11,12,13,14,10,11,11,13,13,8,9,9,11,12,9,10,11,12,13,9,10,10,12,13,11,12,13,13,15,11,12,12,14,14,8,9,9,11,12,9,10,11,12,13,9,10,10,13,12,11,12,13,14,15,11,12,12,14,13,10,11,12,13,14,11,12,13,13,15,12,13,13,14,14,13,13,14,14,16,14,15,14,16,15,10,12,11,14,13,12,12,13,14,14,11,12,12,14,14,14,14,15,15,16,13,14,14,16,14,6,8,8,11,10,8,9,9,11,11,8,10,9,12,11,10,11,11,13,13,10,12,11,14,13,8,9,9,12,11,9,10,10,12,13,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,8,9,9,12,11,9,10,10,13,12,9,11,10,13,12,11,12,12,14,14,11,13,12,15,13,10,11,12,13,14,11,12,13,13,14,12,13,12,14,14,13,13,14,14,16,14,15,14,16,16,10,12,11,14,13,12,13,13,14,14,11,13,12,15,13,14,14,15,16,16,13,14,13,16,14,9,10,11,12,13,11,11,12,13,14,11,11,12,13,14,13,13,14,14,16,13,14,14,15,15,11,11,12,13,14,12,12,13,13,15,12,13,13,14,15,14,14,15,15,17,14,14,15,16,16,11,12,12,13,14,12,12,13,14,15,12,13,12,14,15,14,14,15,15,17,14,15,14,16,16,13,14,14,15,16,14,14,15,15,17,14,15,15,16,16,15,16,17,16,18,16,17,16,17,17,13,14,14,16,15,14,15,15,16,16,14,15,14,16,15,16,16,17,17,18,16,16,16,17,16,9,11,10,13,12,11,12,11,14,13,11,12,11,14,13,13,14,14,16,15,13,14,13,16,14,11,12,12,14,13,12,12,13,14,14,12,13,13,15,14,14,14,15,16,16,14,15,14,17,15,11,12,11,14,13,12,13,13,15,14,12,13,12,15,13,14,15,14,16,16,14,15,14,17,15,13,14,14,15,16,14,14,15,16,16,14,15,15,16,16,15,16,16,16,17,16,16,16,17,17,13,14,14,16,15,14,15,15,17,16,14,15,14,17,15,16,17,17,17,17,16,16,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,11,11,14,13,8,9,9,11,12,9,10,10,12,13,9,10,10,13,12,11,11,12,13,15,11,12,12,15,14,8,9,9,12,11,9,10,11,12,13,9,11,10,13,12,11,12,12,14,15,11,13,12,15,14,10,11,11,13,14,11,12,12,13,14,11,12,12,14,14,13,13,14,14,16,13,14,14,16,15,11,12,11,14,13,12,13,13,14,14,11,13,12,14,13,14,14,15,16,16,13,14,14,16,14,8,9,9,11,12,9,10,10,12,13,9,10,10,13,12,11,12,12,14,15,11,12,12,14,14,9,9,10,11,13,10,10,12,12,14,10,10,11,13,13,12,12,13,14,16,12,12,13,15,15,9,10,10,13,12,10,11,11,13,14,10,12,11,14,13,12,13,13,15,15,12,13,13,15,15,11,11,12,13,15,12,12,13,13,15,12,13,13,14,15,14,14,15,15,17,14,15,15,16,16,11,13,12,15,14,13,13,13,15,15,12,14,13,15,14,15,15,15,16,16,14,15,15,17,15,7,9,9,12,11,9,10,10,12,12,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,9,10,10,12,12,10,10,11,12,13,10,11,11,14,13,12,12,13,14,15,12,13,13,15,14,9,10,10,12,12,10,11,11,13,13,10,11,10,14,12,12,13,13,15,15,12,13,12,15,13,11,12,12,14,14,12,12,13,14,15,12,13,13,15,15,14,13,14,13,16,14,15,15,16,16,11,12,12,14,14,13,13,14,15,15,12,13,12,15,14,15,15,15,16,16,14,15,14,17,14,10,11,12,13,14,11,12,13,14,15,11,12,12,14,15,13,14,15,15,17,14,14,14,16,16,11,12,13,12,15,12,12,14,13,16,13,13,14,13,16,14,14,15,14,17,15,15,15,15,17,11,13,12,15,15,13,13,14,15,16,12,14,13,16,15,15,15,15,17,17,15,15,15,17,16,14,14,15,14,16,14,14,16,14,17,15,15,15,14,17,16,16,17,15,18,17,17,17,16,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,17,17,17,18,18,16,17,16,18,17,10,11,11,14,13,11,12,12,14,14,11,13,12,15,14,14,14,14,16,16,14,15,14,16,15,11,12,12,15,13,12,13,13,15,14,13,14,13,16,14,14,15,15,16,16,15,16,15,17,16,11,13,12,15,14,13,13,14,15,15,12,14,13,16,14,15,15,15,17,17,14,16,15,17,16,14,14,14,16,15,14,15,15,16,16,15,16,15,17,16,16,16,16,16,17,16,17,17,18,17,14,15,15,16,16,15,15,16,17,16,14,15,15,17,16,17,17,17,18,18,16,17,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,12,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,11,10,13,12,11,12,13,14,15,11,12,12,15,14,8,9,9,12,11,9,10,10,12,13,9,10,10,13,12,11,12,12,14,15,11,12,12,14,13,11,11,12,13,14,11,12,13,13,15,12,13,13,14,14,13,14,14,14,16,14,15,14,16,16,10,11,11,14,13,11,12,12,14,14,11,12,12,14,13,13,14,14,15,16,13,14,13,16,14,7,9,9,11,11,9,10,11,12,13,9,10,10,12,12,11,12,13,14,15,11,12,12,14,14,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,13,15,12,13,13,15,15,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,13,13,14,15,12,13,12,15,13,11,12,12,14,14,12,12,13,14,15,13,14,13,15,15,14,13,15,13,16,15,15,15,16,16,11,12,12,14,14,12,13,13,14,15,12,13,12,15,14,14,15,15,16,17,13,14,13,16,13,8,9,9,12,11,9,10,10,12,13,9,10,10,13,12,11,12,12,14,15,11,12,12,15,14,9,10,10,12,13,10,11,12,13,14,10,11,11,14,13,12,13,13,15,15,12,13,13,15,15,9,10,9,13,11,10,11,10,13,13,10,12,10,14,12,12,13,12,15,15,12,13,12,15,14,11,12,13,14,15,12,13,14,14,15,13,13,13,15,15,14,15,15,15,17,15,15,15,16,16,11,12,11,15,13,12,13,13,15,14,12,13,12,16,13,14,15,15,16,16,14,15,14,17,14,10,11,11,13,14,11,12,13,14,15,11,12,12,14,14,14,14,15,15,17,14,14,14,15,16,11,12,13,14,15,12,13,14,14,16,13,14,13,15,15,14,15,16,15,17,15,15,15,17,17,11,12,12,13,15,13,13,14,14,16,12,13,13,14,15,15,15,15,16,17,14,15,15,16,16,14,15,15,16,16,14,15,15,16,17,15,15,16,16,17,16,16,17,16,18,17,17,17,18,18,14,14,15,15,16,15,15,15,16,17,14,15,15,16,16,16,17,17,17,18,16,16,16,17,16,10,11,11,14,13,11,13,12,15,14,11,13,12,15,14,14,15,14,16,16,13,15,14,17,15,11,12,13,15,15,12,13,14,15,16,13,14,13,16,15,15,15,15,16,17,15,15,15,17,16,11,13,11,15,12,13,14,13,16,13,12,14,12,16,13,15,15,15,17,15,14,16,14,17,14,14,15,15,16,17,15,15,16,16,17,15,16,15,17,17,16,16,17,17,18,16,17,17,18,18,14,15,14,17,13,15,16,15,17,15,15,16,15,17,14,16,17,16,18,16,16,17,16,18,15,9,11,11,13,13,10,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,16,16,10,11,12,14,14,11,12,13,14,15,11,13,13,15,15,13,14,14,15,16,14,15,15,16,16,11,12,12,14,14,12,13,13,15,15,12,13,12,15,14,14,15,15,16,16,14,15,14,17,16,12,13,13,15,16,13,13,14,15,16,13,14,14,16,16,14,15,16,16,17,15,16,16,17,17,13,14,14,16,15,14,15,15,17,16,14,15,14,17,15,16,16,17,17,17,16,16,16,18,16,10,11,12,14,14,11,12,13,14,15,11,13,12,15,15,13,14,15,16,16,14,15,15,17,16,11,11,13,14,15,12,12,14,14,16,12,13,14,15,15,14,14,15,16,17,15,15,15,17,17,12,13,12,15,15,13,14,14,16,15,13,14,13,16,15,15,16,15,17,17,15,16,15,17,16,13,12,15,14,16,14,13,15,14,17,14,13,15,15,17,15,14,17,15,18,16,15,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,16,17,17,18,18,16,17,16,18,17,10,11,11,14,14,11,12,12,14,15,11,13,12,15,14,13,14,14,16,16,14,15,14,16,16,11,12,12,14,14,12,12,13,15,15,12,13,13,15,15,14,14,15,16,16,14,15,15,17,16,11,12,12,15,15,13,13,13,15,15,12,13,13,15,15,15,15,15,17,17,14,15,15,17,16,13,14,13,16,15,14,14,14,16,16,14,15,14,17,16,15,15,16,16,17,16,17,16,18,17,14,15,15,16,16,15,15,15,17,17,14,15,15,17,16,16,17,17,18,18,16,17,16,18,16,12,13,13,15,15,13,14,14,16,16,13,14,14,16,16,14,15,16,16,18,15,16,16,17,17,13,13,14,14,16,14,14,15,15,17,14,14,15,15,17,15,15,17,15,18,16,16,17,17,18,13,14,14,16,16,14,15,15,16,17,14,15,15,17,16,16,17,16,17,18,16,17,16,18,17,15,14,16,13,18,16,15,17,14,18,16,15,17,14,18,17,16,18,15,19,17,17,18,16,19,15,16,16,17,17,16,17,17,18,18,16,17,16,18,17,18,18,18,19,18,17,18,17,19,17,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,15,15,16,17,15,16,15,17,16,12,13,13,15,15,13,13,14,15,16,14,15,14,16,15,15,15,16,16,17,16,16,16,18,17,12,13,13,15,15,14,14,15,16,16,13,14,13,16,15,16,16,16,17,17,15,16,15,18,16,15,15,15,17,15,14,15,15,16,16,16,17,16,17,16,16,16,17,16,17,17,18,17,19,18,15,15,16,17,17,16,16,16,17,17,15,16,15,17,16,17,18,18,18,18,16,17,16,18,16,9,11,11,13,13,11,12,12,14,14,10,12,12,14,14,13,14,14,15,16,13,14,14,16,15,11,12,12,14,14,12,12,13,14,15,12,13,13,15,15,14,14,15,16,17,14,15,15,16,16,10,12,11,14,14,11,13,13,15,15,11,13,12,15,14,14,14,15,16,16,13,14,14,16,15,13,14,14,15,16,14,14,15,15,17,14,15,15,16,17,16,16,16,16,18,16,16,17,17,17,12,13,13,16,15,13,14,14,16,16,12,14,13,16,15,15,16,16,17,17,14,16,15,17,16,10,11,11,14,14,11,12,13,14,15,11,12,12,15,14,14,14,15,16,16,13,14,14,16,16,11,12,12,14,15,12,13,14,15,15,13,13,13,15,15,14,15,15,16,17,15,15,15,16,17,11,12,12,14,14,12,13,13,15,15,12,13,12,15,15,14,15,15,16,17,14,15,14,16,16,14,14,15,16,16,14,15,15,16,17,15,16,15,17,17,16,16,17,16,18,16,17,17,18,18,13,13,14,15,16,14,14,15,16,17,14,14,14,16,15,16,16,17,17,18,15,16,15,17,16,10,12,11,14,14,11,13,13,15,15,11,13,12,15,15,14,15,15,16,16,13,15,14,16,16,12,12,13,15,15,13,13,14,15,16,13,14,14,16,15,15,15,16,16,17,15,15,15,17,17,11,13,11,15,14,12,14,13,16,15,12,14,12,16,14,15,15,15,17,17,14,15,14,17,15,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,17,18,16,17,17,18,18,13,14,12,16,14,14,15,13,17,15,14,15,13,17,14,16,17,15,18,17,15,17,14,18,15,11,12,12,14,15,13,13,14,15,16,13,14,13,16,15,15,15,16,16,17,15,15,15,16,16,12,13,13,15,15,13,13,14,15,16,14,15,14,16,16,15,15,16,16,18,16,16,16,18,17,12,13,13,15,15,14,14,15,15,16,13,14,13,15,15,16,16,16,17,18,15,16,15,17,16,15,16,15,17,16,15,15,16,16,17,16,17,16,17,17,16,16,17,16,18,17,18,18,18,18,14,15,15,15,17,16,15,17,16,17,14,15,15,16,16,17,17,18,18,19,16,16,16,17,16,12,13,13,15,15,13,14,14,16,16,13,14,14,16,16,15,16,16,17,17,15,16,15,18,16,13,14,14,16,16,14,15,15,16,17,14,15,15,17,16,16,16,17,17,18,16,17,16,18,18,13,14,13,16,14,14,15,14,17,15,14,15,14,17,14,16,17,16,18,17,15,17,15,18,15,15,16,16,17,18,16,16,17,17,18,16,17,17,17,18,17,17,18,18,19,17,18,18,19,18,15,16,14,17,13,16,17,15,18,14,16,17,15,18,14,18,18,17,19,16,17,18,16,19,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,4,7,7,4,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,6,7,8,8,9,10,8,9,10,8,9,10,10,10,12,10,11,11,8,10,10,10,11,12,10,11,11,6,8,7,8,10,9,8,10,9,8,10,10,10,11,11,10,12,11,8,10,9,10,11,11,10,12,10,5,8,8,8,10,10,8,10,10,7,9,10,9,10,11,9,11,11,8,10,10,10,11,12,10,12,11,7,9,9,9,10,11,9,11,11,9,9,11,10,11,12,11,11,12,9,11,11,11,12,12,11,12,12,7,9,9,10,11,11,10,12,11,9,11,10,11,11,12,11,13,12,10,11,11,12,13,13,11,13,11,5,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,11,7,10,9,9,11,11,9,11,10,7,9,9,10,11,12,10,11,11,10,11,11,11,11,13,12,13,13,9,10,11,11,12,13,11,12,11,7,9,9,9,11,11,9,11,10,9,11,11,11,12,12,11,12,12,9,11,9,11,12,11,10,12,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,9,14,16,17,19,22,22,5,4,6,9,11,13,17,20,9,5,5,6,9,11,15,19,11,7,5,5,7,9,13,17,14,9,7,6,6,7,11,14,16,11,9,7,6,4,4,8,19,15,13,11,9,4,3,4,21,16,16,15,12,6,4,4,2,0,0,0,64,0,0,0,56,145,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,98,6,0,0,0,0,0,0,0,0,0,40,98,6,0,0,0,0,0,0,0,0,0,80,98,6,0,120,98,6,0,0,0,0,0,0,0,0,0,160,98,6,0,200,98,6,0,0,0,0,0,0,0,0,0,240,98,6,0,24,99,6,0,0,0,0,0,0,0,0,0,64,99,6,0,104,99,6,0,24,99,6,0,0,0,0,0,144,99,6,0,184,99,6,0,56,167,5,0,96,167,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,192,97,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,7,13,15,16,17,19,20,6,3,4,7,9,10,12,15,13,4,3,4,7,8,11,13,14,7,4,4,6,7,10,11,16,9,7,6,7,8,9,10,16,9,8,7,7,6,8,8,18,12,10,10,9,8,8,9,20,14,13,12,11,8,9,9,5,0,0,0,243,0,0,0,48,144,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,40,145,6,0,0,0,0,0,5,0,0,0,53,12,0,0,224,131,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,24,144,6,0,0,0,0,0,5,0,0,0,243,0,0,0,216,130,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,208,131,6,0,0,0,0,0,5,0,0,0,243,0,0,0,208,129,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,200,130,6,0,0,0,0,0,5,0,0,0,243,0,0,0,200,128,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,192,129,6,0,0,0,0,0,5,0,0,0,53,12,0,0,120,116,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,176,128,6,0,0,0,0,0,5,0,0,0,53,12,0,0,40,104,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,96,116,6,0,0,0,0,0,1,0,0,0,7,0,0,0,0,104,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,8,104,6,0,0,0,0,0,5,0,0,0,243,0,0,0,248,102,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,240,103,6,0,0,0,0,0,5,0,0,0,243,0,0,0,240,101,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,232,102,6,0,0,0,0,0,5,0,0,0,243,0,0,0,232,100,6,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,224,101,6,0,0,0,0,0,5,0,0,0,243,0,0,0,224,99,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,216,100,6,0,0,0,0,0,1,4,5,5,10,10,5,10,10,5,10,10,10,10,10,10,10,10,5,10,10,10,10,10,10,10,10,7,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,6,7,8,6,8,7,6,7,7,7,7,8,7,8,8,6,7,7,7,8,8,7,8,7,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,10,9,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,9,9,10,9,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,9,10,8,9,9,9,10,9,9,10,9,7,8,8,8,9,9,8,9,9,8,8,9,9,9,9,9,9,9,8,9,9,9,10,9,9,9,9,7,9,9,9,9,10,9,10,9,9,9,9,9,9,10,10,10,10,9,9,9,10,10,10,9,10,9,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,9,9,10,9,7,9,9,9,9,10,9,10,9,9,9,9,9,9,10,10,10,10,9,9,9,10,10,10,9,10,9,7,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,9,10,8,9,8,9,9,9,9,10,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,5,7,9,5,9,7,5,7,8,7,7,10,9,10,10,5,8,7,9,10,10,7,10,7,6,9,9,9,10,12,9,11,11,9,10,11,11,11,13,12,13,13,9,11,11,12,13,13,11,13,11,6,9,9,9,11,11,9,12,10,9,11,11,11,11,13,12,13,13,9,11,10,12,13,13,11,13,11,6,9,9,9,11,12,9,12,11,9,10,11,10,10,13,12,13,13,9,11,11,12,13,12,11,13,11,7,9,10,9,10,12,10,12,11,10,10,12,10,10,12,12,12,13,10,11,11,12,12,13,10,12,10,7,10,10,11,11,14,11,14,11,10,12,11,11,11,14,14,14,14,10,11,12,14,14,14,11,14,11,6,9,9,9,11,12,9,12,11,9,11,11,11,11,13,12,12,13,9,11,10,12,13,13,10,13,10,7,10,10,11,11,14,11,14,11,10,12,11,11,11,14,14,15,14,10,11,12,13,14,15,11,14,11,7,10,9,10,11,12,9,12,10,10,11,11,10,10,12,12,13,12,9,12,10,12,13,12,10,12,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,10,10,5,7,8,11,12,5,8,7,12,11,9,11,11,13,15,9,11,11,15,13,6,7,8,11,11,7,7,9,11,13,8,9,9,13,12,11,11,12,12,15,11,12,12,15,14,6,8,7,11,11,8,9,9,12,13,7,9,7,13,11,11,12,12,14,15,11,12,11,15,12,10,11,11,12,14,10,11,12,12,15,12,13,13,14,15,13,12,14,12,16,15,15,15,16,16,10,11,11,14,12,12,13,13,15,14,10,12,11,15,12,15,15,15,16,17,13,14,12,17,12,6,8,8,12,12,8,9,10,13,13,8,9,9,13,13,12,12,13,15,16,12,13,13,16,15,8,9,10,12,13,9,9,11,13,14,10,11,11,14,14,13,13,14,15,16,13,14,14,16,16,8,10,9,13,13,10,11,11,14,14,9,10,10,14,13,13,14,14,16,17,13,13,13,16,15,12,13,13,14,16,13,13,14,14,16,14,14,14,16,16,15,15,16,15,18,16,17,17,18,18,12,13,13,15,15,14,14,14,16,16,13,14,13,16,15,16,16,17,18,18,15,16,15,18,15,6,8,8,12,12,8,9,9,13,13,8,10,9,13,13,12,13,13,15,16,12,13,12,16,15,8,9,10,13,13,9,10,10,13,14,10,11,11,14,14,13,13,13,15,16,13,14,14,17,16,8,10,9,13,13,10,11,11,14,14,9,11,9,14,13,13,14,14,16,16,13,14,13,16,14,12,13,13,15,16,13,13,14,15,16,14,14,14,16,16,15,15,16,15,18,17,17,17,18,18,12,13,13,16,14,14,14,14,16,16,13,14,13,16,14,16,17,17,18,18,15,16,15,18,15,11,12,13,14,16,13,13,14,15,17,13,14,14,16,17,16,16,17,17,19,16,17,17,18,19,13,13,14,16,16,14,14,15,16,17,14,15,15,17,17,17,16,17,17,19,17,17,18,19,19,13,14,14,16,16,14,14,15,17,18,14,15,14,17,17,17,17,18,18,19,17,17,17,18,19,16,16,16,17,18,17,17,17,18,19,17,17,17,18,19,18,18,19,18,20,19,20,19,21,20,16,17,17,18,18,17,17,18,19,19,17,17,17,19,18,19,19,19,19,20,19,19,19,20,19,11,13,12,16,14,13,14,14,17,16,13,14,13,17,15,16,17,17,18,18,16,17,16,19,17,13,14,14,16,16,14,14,14,17,17,14,15,15,17,16,17,17,17,19,19,17,18,17,19,18,13,14,13,17,16,14,15,15,17,17,14,15,14,18,16,17,17,17,19,19,17,17,16,19,17,16,17,17,18,19,17,17,17,18,18,17,18,17,19,18,18,19,18,19,19,19,20,19,20,20,16,17,16,18,17,17,17,17,18,18,17,18,17,19,17,19,19,19,19,20,18,19,19,20,18,6,8,8,12,12,8,9,9,13,13,8,10,9,13,13,11,13,13,15,16,12,13,13,16,15,8,9,9,13,13,9,9,10,13,14,10,11,11,14,14,12,12,13,14,16,13,14,14,17,16,8,10,9,13,13,10,11,11,14,14,9,11,10,14,13,13,14,14,16,16,13,14,13,16,15,12,13,13,14,16,12,13,14,14,16,13,14,14,16,16,15,14,16,15,18,16,17,17,18,17,12,13,13,16,15,14,14,14,16,16,13,14,13,16,15,16,16,17,17,17,15,16,15,18,15,7,9,9,13,13,9,9,11,13,14,9,10,10,14,13,12,13,14,15,16,12,14,13,17,15,9,9,10,13,14,10,9,11,13,15,11,11,11,14,14,13,12,14,14,17,14,14,14,17,16,9,10,10,14,13,11,11,11,14,14,10,11,10,15,13,14,14,14,16,17,13,14,13,17,14,13,13,14,14,16,13,13,14,14,17,14,14,14,16,16,15,14,16,15,18,17,17,17,18,18,13,14,13,16,15,14,14,15,17,16,13,14,13,17,15,17,16,17,17,17,15,16,14,18,14,7,9,9,13,13,9,10,10,13,14,9,11,10,14,13,13,14,14,16,16,13,14,14,17,15,9,10,10,14,13,9,10,11,13,14,11,12,11,15,14,13,13,14,14,16,14,15,15,17,17,9,10,10,14,14,11,12,12,14,15,10,11,10,15,13,14,15,15,17,17],"i8",L3,x.GLOBAL_BASE+410577),d3([14,15,13,17,14,13,14,13,16,16,13,13,14,15,16,14,15,15,17,17,15,14,16,15,18,17,18,17,20,18,13,14,14,16,16,15,15,15,17,17,13,14,13,17,15,17,17,18,18,18,15,16,14,19,14,12,13,13,15,16,13,13,15,16,17,13,14,14,16,16,15,15,17,17,19,16,17,17,19,18,13,13,14,15,17,14,13,15,15,17,14,15,15,16,17,16,15,18,16,19,17,17,17,18,19,13,14,14,17,16,14,15,15,17,17,14,15,14,17,16,17,17,17,18,19,16,17,16,19,17,16,16,17,16,18,16,16,17,16,19,17,17,18,18,19,18,17,18,17,21,19,19,19,20,19,16,17,17,18,18,17,17,18,18,19,16,17,16,18,18,19,19,19,19,20,18,18,17,20,18,11,13,13,16,15,13,14,14,16,17,13,15,14,17,16,16,17,17,18,18,17,17,17,19,18,13,14,13,17,16,14,13,14,16,17,15,16,15,18,16,17,16,17,17,19,18,18,18,20,18,13,14,14,16,17,15,15,15,17,18,14,15,14,18,16,18,18,18,19,20,17,18,16,20,17,16,17,16,18,18,16,16,17,18,18,17,18,18,19,18,18,17,19,17,20,19,20,19,22,20,16,16,17,18,18,18,17,17,19,19,16,17,16,18,17,19,20,19,22,21,18,19,18,21,17,6,8,8,12,12,8,9,10,13,13,8,9,9,13,13,12,13,13,15,16,11,13,13,16,15,8,9,10,13,13,9,10,11,13,14,10,11,11,14,14,13,13,14,15,16,13,14,14,16,16,8,9,9,13,13,10,11,11,14,14,9,10,9,14,13,13,14,14,16,17,12,14,12,16,14,12,13,13,15,16,13,13,14,15,16,13,14,14,15,17,15,15,16,15,18,16,16,17,17,17,12,13,13,16,14,13,14,14,16,16,12,14,13,16,14,16,17,17,18,18,15,15,14,18,14,7,9,9,13,13,9,10,11,13,14,9,10,10,14,13,13,14,14,15,17,13,14,14,16,15,9,10,10,14,14,10,10,11,13,15,11,12,12,15,14,14,13,15,14,17,14,15,15,17,17,9,10,10,13,14,11,11,12,14,15,9,11,10,14,13,14,15,15,16,18,13,14,13,16,14,13,14,14,16,16,13,13,14,15,17,15,15,15,16,17,15,14,16,15,18,17,17,18,19,18,13,14,14,16,16,14,15,15,17,17,13,14,13,16,15,17,17,18,18,18,15,16,14,18,15,7,9,9,13,13,9,10,10,13,14,9,11,10,14,13,12,13,14,15,16,12,14,13,16,15,9,10,10,13,14,10,10,11,13,14,11,11,11,15,14,13,13,14,14,16,14,14,14,17,16,9,10,9,14,13,11,11,11,14,14,10,11,9,15,13,14,14,14,16,16,13,14,12,17,14,13,13,14,15,16,13,13,14,15,16,14,15,14,16,17,15,14,16,14,18,16,17,17,18,18,13,14,13,16,14,14,14,14,16,16,13,14,13,17,14,17,17,17,18,18,15,16,14,18,15,11,13,13,16,16,13,14,15,16,17,13,14,14,17,16,16,17,17,18,19,17,17,17,19,18,13,14,14,17,17,13,13,15,16,18,15,15,15,17,17,17,16,18,17,20,18,17,18,19,19,13,14,14,16,17,15,15,16,16,18,14,15,14,16,16,17,17,18,18,20,17,18,16,18,17,16,17,16,19,18,16,16,17,18,19,18,18,18,19,19,18,17,18,17,21,20,19,19,21,21,16,16,17,18,18,17,17,18,19,19,16,17,16,19,18,20,20,20,19,21,18,18,17,20,18,12,13,13,16,15,13,14,14,16,16,13,14,13,17,16,16,17,17,18,18,15,17,15,19,17,13,14,14,16,17,14,14,15,16,17,14,15,15,17,17,16,16,17,17,18,17,17,17,19,19,13,14,13,17,15,14,15,15,17,16,14,15,13,17,15,17,18,17,19,18,16,17,15,20,16,16,17,17,18,18,16,16,17,18,18,17,18,17,19,18,17,17,18,18,20,19,20,19,20,19,16,16,16,19,16,17,17,17,19,18,16,17,16,19,16,19,19,19,19,19,18,19,17,19,17,11,13,13,16,16,13,14,14,17,17,13,14,14,17,17,15,17,17,19,19,16,18,17,20,19,12,14,14,17,17,13,14,15,17,18,14,15,15,17,18,16,16,17,18,20,17,18,18,20,18,13,14,14,17,17,14,15,15,17,18,14,15,15,17,17,17,18,17,19,19,17,18,17,19,19,15,16,16,18,18,15,16,17,18,19,16,17,17,19,19,17,17,18,18,21,18,19,19,21,19,16,17,17,18,18,17,17,18,19,19,17,18,17,19,19,19,19,19,20,20,18,19,18,21,19,12,13,13,16,16,13,14,14,16,17,13,15,14,17,16,15,16,17,17,19,16,17,17,19,18,13,13,14,16,17,14,13,15,16,17,14,15,15,17,17,15,15,17,17,20,17,17,18,19,18,13,14,14,17,16,15,15,15,17,18,14,15,14,17,16,17,17,17,18,18,16,17,16,19,17,16,15,17,17,19,16,15,17,16,19,17,16,17,18,19,17,16,19,16,20,19,18,19,19,19,16,17,17,18,18,17,17,17,18,19,16,17,16,19,18,20,19,19,20,19,18,18,17,20,17,11,13,13,16,16,13,14,15,16,17,14,15,14,18,16,17,17,17,18,21,17,18,17,20,19,13,14,14,17,16,13,14,15,16,18,15,16,15,18,17,17,16,17,17,19,17,18,18,20,19,13,14,14,16,17,15,15,16,17,18,14,15,14,18,17,17,18,18,19,20,17,18,16,19,17,16,17,15,19,18,16,16,16,18,18,17,18,17,20,19,18,17,18,17,20,20,20,19,22,20,16,17,17,18,19,18,18,18,19,20,16,17,16,19,18,20,19,19,20,20,18,19,17,20,17,13,14,14,16,17,14,14,16,16,18,14,16,15,17,16,16,16,17,17,18,17,17,16,19,18,14,14,15,16,17,14,14,16,16,18,16,16,16,17,17,16,15,17,16,19,18,18,18,19,19,14,15,15,17,17,15,16,16,17,18,14,16,14,18,16,17,17,18,18,19,16,17,16,19,17,16,16,17,16,18,16,16,17,16,19,18,18,18,17,18,17,16,18,16,20,19,19,19,19,19,16,17,17,18,18,17,17,18,19,19,16,17,16,19,17,18,19,19,19,20,17,18,16,20,16,11,14,13,17,17,14,14,16,16,18,14,16,14,19,16,18,18,19,18,19,18,19,18,21,18,13,15,14,18,16,14,14,16,16,18,16,17,16,19,17,18,16,19,17,20,19,19,19,21,19,13,14,15,17,18,17,16,17,17,19,14,16,14,18,16,20,19,19,20,21,18,19,16,21,17,17,18,16,19,17,16,16,17,18,18,19,19,18,21,18,17,17,18,17,20,20,20,20,22,20,17,17,18,18,20,19,19,19,18,20,16,17,17,19,19,21,21,21,20,21,17,19,17,23,17,11,13,13,16,16,13,14,14,17,17,13,14,14,17,17,16,17,17,19,20,15,16,16,19,19,13,14,14,16,17,14,15,15,17,18,14,15,15,17,17,17,17,18,19,19,17,17,18,19,19,13,14,14,17,16,14,15,15,17,17,13,15,14,18,17,17,18,18,19,20,16,17,16,19,18,16,16,17,18,18,17,17,17,18,19,17,18,17,19,19,19,19,19,19,20,19,20,19,20,20,15,16,16,18,17,16,17,17,20,18,15,16,16,19,17,19,19,19,20,20,17,18,17,21,17,11,13,13,16,16,13,14,15,16,17,13,15,14,17,16,17,17,18,18,20,17,17,17,19,19,13,14,14,17,17,14,14,15,17,18,15,15,15,18,17,17,17,18,17,20,18,18,17,20,18,13,14,14,16,17,15,15,16,17,18,14,15,13,17,17,17,18,18,19,20,17,17,16,19,17,16,17,17,18,18,16,16,17,18,18,18,18,18,19,19,18,17,19,18,21,19,20,20,20,20,16,15,17,18,18,17,17,18,18,20,16,16,16,18,17,20,19,20,21,22,17,18,17,20,17,12,13,13,16,16,13,14,15,16,17,13,14,14,17,16,16,17,18,18,19,15,16,16,19,18,13,14,14,16,17,14,14,15,16,17,14,15,15,17,17,16,16,17,17,19,17,17,17,19,18,13,14,13,17,16,14,15,15,17,17,13,15,13,17,16,17,17,17,19,19,15,17,15,19,17,16,17,17,18,18,16,16,17,17,19,17,18,17,19,19,18,17,19,17,19,19,19,19,20,19,15,17,15,19,16,17,17,16,19,18,16,17,15,18,16,19,19,19,20,19,17,19,16,19,16,11,14,14,17,17,15,14,16,16,18,15,16,14,18,16,18,18,19,18,21,18,19,18,20,18,13,15,14,18,17,14,14,16,16,18,16,17,16,19,17,17,17,19,17,22,19,19,19,21,19,13,14,15,17,18,17,16,17,17,19,14,16,14,18,16,19,19,19,20,21,18,18,16,20,17,17,18,16,19,18,15,17,17,19,19,19,19,18,21,19,18,17,20,17,21,22,21,20,21,21,17,16,19,18,20,19,18,19,18,20,16,17,16,19,18,21,20,21,19,23,18,19,16,20,17,13,14,14,17,16,14,14,15,16,18,14,16,14,17,16,16,16,17,17,19,16,17,16,19,17,14,15,15,17,17,14,14,16,16,17,15,16,16,18,17,16,16,17,17,19,17,18,17,19,18,14,15,14,17,16,16,16,16,17,17,14,16,14,17,16,18,18,18,18,19,16,17,15,19,16,17,17,17,18,18,16,15,17,17,18,18,18,18,19,19,17,16,18,16,19,19,19,19,19,19,16,17,16,19,16,18,18,17,19,18,16,17,16,19,16,19,19,20,19,19,17,18,16,20,16,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,6,8,8,10,10,8,9,9,10,11,8,10,9,11,10,9,10,10,11,11,9,10,10,11,11,8,9,9,10,10,9,9,10,11,11,10,10,10,11,11,10,11,11,11,11,10,11,11,11,11,8,9,9,11,10,10,10,10,11,11,9,10,9,11,11,10,11,11,11,11,10,11,10,11,11,10,10,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,10,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,8,9,10,11,11,10,10,11,11,11,10,10,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,11,11,11,10,10,11,11,12,11,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,10,10,11,11,11,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,8,10,9,11,11,10,10,10,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,10,11,11,10,11,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,10,11,11,11,11,11,12,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,11,12,11,11,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,12,12,12,13,12,10,11,11,12,11,11,11,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,13,12,8,10,10,11,11,10,10,11,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,11,11,11,10,10,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,10,11,11,11,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,11,11,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,11,11,12,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,12,13,13,12,13,13,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,13,12,13,12,12,13,13,13,13,12,13,13,13,13,8,10,10,11,11,10,10,11,11,11,9,11,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,11,11,11,10,11,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,9,11,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,12,13,12,12,13,12,13,12,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,12,13,13,13,12,12,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,12,13,12,13,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,12,13,12,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,13,13,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,12,13,12,13,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,12,12,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,13,12,13,12,12,13,13,13,13,12,13,12,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,7,8,5,8,7,5,7,7,7,7,9,7,9,9,5,7,7,8,9,9,7,9,7,6,8,8,8,9,10,8,9,9,8,9,10,9,9,11,10,11,11,8,9,9,10,11,11,9,11,10,6,8,8,8,9,9,8,10,9,8,9,9,9,10,11,10,11,10,8,10,9,10,11,11,9,11,9,6,8,8,7,9,9,8,10,9,7,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,11,10,7,9,9,8,10,10,9,10,10,9,9,10,10,10,11,10,11,11,9,10,10,10,11,11,10,11,10,7,9,9,9,9,10,9,10,9,8,10,9,9,9,11,10,11,11,9,10,10,10,11,11,9,11,9,6,8,8,8,9,10,7,9,9,8,9,9,9,10,10,9,10,10,7,9,9,9,10,10,9,10,9,7,9,9,9,9,10,9,10,9,9,10,10,9,9,11,10,11,11,8,9,10,10,11,11,9,11,9,7,9,9,9,10,10,8,10,10,9,10,10,10,10,11,10,11,11,9,10,9,10,11,11,10,11,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,7,7,6,7,7,6,7,7,6,7,7,7,8,8,7,8,8,6,7,7,7,8,8,7,8,8,7,7,8,7,8,8,7,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,7,7,8,8,7,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,6,8,8,7,8,8,7,8,8,7,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,9,8,9,9,8,8,9,8,9,9,9,9,9,8,9,9,9,9,9,9,9,9,7,8,8,8,9,9,8,9,8,8,8,8,8,9,9,9,9,9,8,9,8,9,9,9,9,9,9,6,8,8,7,8,8,7,8,8,8,8,8,8,8,9,8,9,9,7,8,8,8,9,9,8,9,8,7,8,8,8,8,9,8,9,8,8,8,9,9,9,9,9,9,9,8,8,8,9,9,9,8,9,9,7,8,8,8,9,9,8,9,8,8,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,5,7,8,5,8,7,5,7,8,8,8,10,8,10,10,5,8,7,8,10,10,8,10,8,6,8,9,8,10,12,9,11,11,9,10,11,11,11,13,12,13,13,9,11,11,11,13,13,11,13,12,6,9,8,9,11,11,8,12,10,9,11,11,11,12,13,11,13,13,9,11,10,11,13,13,11,13,11,5,9,9,8,11,11,9,12,11,8,10,11,10,11,13,11,13,13,9,11,11,11,13,13,11,13,12,8,10,11,10,12,13,10,13,12,10,10,13,11,11,14,12,13,14,11,13,12,13,14,14,12,14,12,8,11,10,11,12,13,11,14,12,10,13,12,12,12,13,13,15,14,11,12,13,13,14,15,12,14,12,5,9,9,9,11,12,8,11,11,9,11,11,11,12,13,11,13,13,8,11,10,11,13,13,10,13,11,8,10,11,11,12,14,11,13,12,11,13,12,12,12,14,13,15,14,10,12,13,13,14,15,12,13,12,8,11,10,10,12,13,10,13,12,11,12,13,12,12,14,13,14,14,10,13,10,12,14,13,11,14,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,9,9,6,7,8,10,10,6,8,7,10,10,8,10,10,12,13,8,10,10,13,12,6,8,8,10,10,7,8,9,10,11,8,9,9,11,11,10,10,11,12,13,10,11,11,14,13,6,8,8,10,10,8,9,9,11,11,7,9,8,11,10,10,11,11,13,14,10,11,10,13,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,13,14,13,15,14,9,10,10,13,12,10,11,11,13,13,10,11,10,13,12,13,13,14,14,15,12,13,12,15,12,6,8,8,10,11,8,9,10,11,12,8,9,9,11,11,10,11,12,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,10,11,12,13,11,11,13,13,15,11,12,12,14,14,8,9,9,12,12,9,10,11,12,13,9,10,10,13,12,11,12,13,14,15,11,12,12,14,14,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,13,13,14,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,14,14,11,13,12,14,13,14,15,15,16,16,13,14,14,16,14,6,8,8,11,10,8,9,9,12,11,8,10,9,12,11,10,11,11,13,13,10,12,11,14,13,8,9,9,12,12,9,10,10,12,13,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,8,9,9,12,11,9,10,10,13,12,9,11,10,13,12,12,12,12,14,14,11,13,12,15,13,11,11,12,13,14,11,12,13,13,14,12,13,13,14,15,13,13,14,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,15,13,14,15,15,16,16,13,15,13,16,14,9,10,11,12,13,11,11,12,13,14,11,12,12,13,14,13,13,14,14,16,13,14,14,15,16,11,11,12,13,14,12,12,13,14,15,12,13,13,14,15,14,14,15,15,17,14,15,15,16,17,11,12,12,14,14,12,13,13,14,15,12,13,12,15,15,14,15,15,16,17,14,15,15,16,16,13,14,14,15,16,14,14,15,15,17,15,15,15,16,17,16,16,17,16,18,16,17,17,18,18,13,14,14,16,15,14,15,15,17,16,14,15,15,16,16,16,17,17,18,18,16,16,16,17,16,9,11,10,13,12,11,12,12,14,13,11,12,11,15,13,13,14,14,16,15,13,14,13,17,14,11,12,12,14,14,12,12,13,15,15,12,13,13,15,14,14,14,15,16,16,14,15,15,17,16,11,12,11,14,13,12,13,13,15,14,12,13,12,15,13,14,15,15,16,16,14,15,14,17,15,13,14,14,15,16,14,15,15,16,17,14,15,15,16,17,16,16,16,17,17,16,17,17,18,18,13,15,14,16,15,15,15,15,17,16,14,15,14,17,15,16,17,17,18,18,16,17,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,12,11,14,13,7,9,9,11,12,9,10,10,12,13,9,10,10,13,12,11,11,12,13,15,11,12,12,15,14,8,9,9,12,11,9,10,10,13,13,9,11,10,13,12,12,12,12,14,15,11,13,12,15,13,10,11,11,13,14,11,12,12,13,15,11,12,12,14,14,13,13,14,14,16,14,15,14,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,15,13,14,15,15,16,16,13,14,14,16,14,8,9,9,11,12,9,10,11,12,13,9,10,10,13,12,11,12,13,14,15,11,12,12,15,14,9,9,11,11,13,10,10,12,12,14,10,10,11,13,14,12,12,13,14,16,12,13,13,15,15,9,11,10,13,12,10,11,11,13,14,10,12,11,14,13,12,13,13,15,16,12,13,13,15,15,11,11,13,13,15,12,12,14,13,15,13,13,14,14,15,14,14,15,14,17,15,15,15,16,16,12,13,12,15,14,13,14,14,15,15,12,14,13,15,14,15,15,15,17,17,14,15,14,17,15,7,9,9,12,11,9,10,10,12,12,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,9,10,10,12,12,10,10,11,12,13,10,11,11,14,13,12,12,13,14,15,12,13,13,16,15,9,10,10,13,12,10,11,11,13,13,10,11,10,14,12,13,13,13,15,15,12,13,12,15,14,11,12,12,14,14,12,12,13,14,15,13,14,13,15,15,14,13,15,14,16,15,16,15,17,16,12,12,12,14,14,13,13,14,15,15,12,13,12,15,14,15,15,16,16,17,14,15,14,17,14,10,11,12,13,14,11,12,13,14,15,11,12,13,14,15,13,14,15,15,17,14,15,15,16,16,11,12,13,12,15,12,12,14,13,16,13,13,14,13,16,14,14,16,14,18,15,15,16,16,17,12,13,12,15,15,13,14,14,15,16,13,14,13,16,15,15,15,16,17,18,15,15,15,17,16,14,14,15,14,17,15,14,16,14,17,15,15,16,15,18,16,16,17,16,19,17,17,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,18,16,17,17,18,18,18,16,17,16,18,17,10,11,11,14,13,11,12,12,15,14,11,13,12,15,14,14,15,15,16,16,14,15,15,17,16,11,12,12,15,14,12,13,13,15,14,13,14,13,16,14,14,15,15,16,16,15,16,15,18,16,11,13,12,15,15,13,14,14,15,15,12,14,13,16,15,15,16,16,17,17,15,16,15,17,16,14,15,14,16,16,14,15,15,16,16,15,16,15,17,16,16,16,17,16,17,17,18,17,19,18,14,15,15,17,16,15,16,16,17,17,15,15,15,18,16,17,18,18,18,18,16,17,16,19,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,12,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,10,10,13,13,11,12,13,13,15,11,12,12,15,14,7,9,9,12,11,9,10,10,12,13,9,10,10,13,12,11,12,12,14,15,11,12,11,14,13,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,13,14,14,14,16,14,15,15,16,16,10,11,11,14,13,11,12,12,14,14,11,12,12,15,13,14,14,14,16,16,13,14,13,16,14,7,9,9,11,12,9,10,10,12,13,9,10,10,12,12,11,12,13,14,15,11,12,12,14,14,9,10,10,12,13,10,10,11,12,14,10,11,11,13,13,12,12,13,14,15,13,13,13,15,15,9,10,10,12,12,10,11,11,13,14,10,11,10,13,12,12,13,13,15,16,12,13,12,15,14,11,12,13,14,14,12,12,13,14,15,13,14,13,15,15,14,14,15,14,17,15,16,15,17,16,11,12,12,14,14,13,13,13,15,15,12,13,12,15,14,15,15,15,16,17,14,15,14,16,14,8,9,9,12,11,9,10,10,12,13,9,11,10,13,12,11,12,12,14,15,11,12,12,15,14,9,10,11,13,13,10,11,12,13,14,10,11,11,14,13,12,13,13,15,15,12,13,13,16,15,9,11,9,13,11,10,11,10,14,13,10,12,10,14,12,12,13,13,15,15,12,13,12,16,14,12,12,13,14,15,12,13,14,14,16,13,14,14,15,15,14,14,15,15,17,15,16,15,17,16,11,13,11,15,13,13,14,13,15,14,12,14,12,16,13,15,15,15,16,16,14,15,14,17,14,10,11,11,13,14,11,12,13,14,15,11,12,12,14,15,14,14,15,16,17,14,15,15,16,16,11,12,13,14,15,12,13,14,15,16,13,14,14,15,16,15,15,16,16,18,15,16,16,17,17,11,12,12,14,15,13,13,14,14,16,12,13,13,15,15,15,15,16,16,18,14,15,15,16,16,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,16,19,17,18,17,18,18,14,14,15,16,16,15,15,16,16,17,14,15,15,16,16,17,17,18,18,19,16,17,16,17,16,10,12,11,14,13,11,13,12,15,14,11,13,12,15,14,14,15,15,16,16,13,15,14,17,15,12,13,13,15,15,13,13,14,15,16,13,14,14,16,16,14,15,15,17,17,15,16,16,17,17,11,13,12,15,12,13,14,13,16,13,12,14,12,16,13,15,16,15,17,16,14,16,14,18,14,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,17,18,17,18,17,18,18,14,15,14,17,14,15,16,15,18,15,15,16,15,18,14,17,17,17,18,17,16,17,16,19,16,9,11,11,13,13,10,12,12,14,14,11,12,12,15,14,13,14,14,16,16,13,14,14,16,16,10,11,12,14,14,11,12,13,14,15,12,13,13,15,15,13,14,15,16,16,14,15,15,17,16,11,12,12,15,14,12,13,13,15,15,12,13,12,15,15,14,15,15,16,17,14,15,14,17,16,12,13,14,15,16,13,13,14,15,16,13,14,15,16,16,14,15,16,16,18,15,16,16,18,18,13,14,14,16,15,14,15,15,17,16,14,15,15,17,16,16,17,17,18,18,16,17,16,18,17,10,12,12,14,14,11,12,13,15,15,12,13,13,15,15,13,14,15,16,17,14,15,15,17,16,11,11,13,14,15,12,12,14,15,16,13,13,14,15,16,14,14,15,16,17,15,15,16,17,17,12,13,12,15,15,13,14,14,16,16,13,14,13,16,15,15,16,15,17,17,15,16,15,18,16,13,12,15,14,17,14,13,16,14,17,14,14,16,15,18,15,14,17,16,18,16,16,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,18,16,17,17,17,18,18,16,17,16,19,17,10,11,11,14,14,11,12,12,15,15,11,13,12,15,15,14,15,14,16,16,14,15,15,17,16,11,12,12,15,14,12,12,13,15,15,13,14,13,16,15,14,15,15,16,16,15,16,15,18,17,11,13,12,15,15,13,14,13,15,15,12,14,13,16,15,15,16,15,17,17,15,16,15,18,16,13,14,13,16,16,14,15,14,16,16,14,15,15,17,16,16,16,16,16,18,16,18,17,19,18,14,15,15,17,16,15,16,16,17,17,15,15,15,17,16,17,17,18,18,19,16,17,16,18,16,12,13,13,15,16,13,14,14,16,17,13,14,14,16,16,15,15,16,17,18,15,16,16,18,17,13,13,14,14,17,14,14,15,15,17,14,14,15,16,17,15,15,17,16,18,16,17,17,18,18,13,14,14,17,16,14,15,15,17,17,14,15,14,17,16,16,17,17,18,18,16,17,16,18,17,15,14,16,13,18,16,15,17,14,19,16,16,17,15,18,17,16,18,15,19,18,18,18,17,19,15,16,16,18,17,16,17,17,18,18,16,17,16,19,17,18,19,18,19,19,17,18,17,20,18,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,16,16,17,17,15,16,16,18,17,12,14,13,16,15,13,13,14,15,16,14,15,14,17,16,16,16,16,16,17,16,17,17,19,17,12,13,14,16,16,14,15,15,16,17,13,15,13,17,15,16,17,17,18,18,16,17,16,18,16,15,16,15,17,16,15,15,15,17,17,16,17,16,18,17,17,16,17,16,18,18,19,18,20,18,15,16,16,17,17,16,17,17,18,18,15,16,15,18,17,18,18,19,19,19,17,18,16,19,16,9,11,11,13,13,11,12,12,14,15,10,12,12,14,14,13,14,14,16,16,13,14,14,16,16,11,12,12,14,14,12,12,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,16,10,12,11,14,14,12,13,13,15,15,11,13,12,15,14,14,15,15,16,17,13,15,14,17,16,13,14,14,15,16,14,15,15,16,17,14,15,15,16,17,16,16,17,17,18,16,17,17,18,18,12,14,13,16,15,13,15,14,17,16,13,14,13,17,15,15,16,16,18,18,15,16,15,18,16,10,11,11,14,14,11,12,13,14,15,11,12,12,15,15,14,15,15,16,17,14,15,15,16,16,11,12,13,15,15,12,13,14,15,16,13,14,14,15,16,15,15,16,16,18,15,15,16,17,17,11,12,12,14,15,13,13,14,15,16,12,13,13,15,15,15,15,16,17,18,14,15,15,17,16,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,16,19,17,17,18,19,18,13,13,14,16,16,14,15,16,17,17,14,14,15,16,16,16,16,17,18,18,16,16,16,18,16,10,12,12,14,14,12,13,13,15,15,11,13,12,15,15,14,15,15,16,17,13,15,14,17,16,12,13,13,15,15,13,13,14,15,16,13,14,14,16,16,15,15,16,17,18,15,15,16,17,17,11,13,12,15,14,13,14,13,16,15,12,14,12,16,14,15,16,15,17,17,14,16,14,17,16,14,15,15,16,17,15,15,16,16,18,15,16,16,17,17,16,17,17,17,19,17,17,17,18,18,13,15,12,17,14,14,16,14,17,15,14,15,13,17,14,16,17,16,18,17,15,17,14,19,15,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,16,16,17,18,15,16,16,17,17,12,14,13,16,16,13,13,15,15,17,14,15,15,17,16,16,16,17,16,19,16,17,17,18,18,12,13,14,15,16,14,14,15,16,17,13,14,13,16,15,16,17,17,18,19,15,16,16,17,16,15,16,16,18,17,15,15,16,17,18,16,17,17,18,18,16,16,18,16,19,18,19,19,20,19,15,15,16,16,17,16,16,17,17,18,15,15,15,17,16,18,18,19,18,20,17,17,16,18,16,12,13,13,16,15,13,14,14,16,16,13,14,14,16,16,15,16,16,17,18,15,16,15,18,17,13,14,14,16,16,14,15,15,16,17,14,15,15,17,17,16,17,17,18,18,16,17,17,18,18,13,14,13,17,14,14,15,14,17,16,14,15,14,17,15,16,17,17,18,18,15,17,15,19,15,16,16,16,17,18,16,16,17,17,19,16,17,17,18,19,17,17,18,18,20,18,18,18,19,19,15,16,14,18,13,16,17,16,19,15,16,17,15,19,14,18,18,18,19,17,17,18,16,20,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,7,7,5,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,5,7,8,8,9,10,8,9,9,8,9,10,9,10,12,10,11,11,8,9,10,10,11,11,9,11,11,5,8,7,8,9,9,8,10,9,8,10,9,9,11,11,10,11,11,8,10,9,10,11,11,9,12,10,5,8,8,7,9,10,8,10,9,7,9,9,9,10,11,9,11,11,8,10,10,10,11,11,10,12,11,7,9,9,9,10,11,9,11,11,9,9,11,10,10,13,11,11,12,9,11,11,11,12,13,11,13,12,7,9,9,9,11,11,9,12,10,9,11,10,10,11,12,11,13,12,9,11,11,11,13,13,11,13,11,5,8,8,8,9,10,7,10,9,8,10,10,10,11,11,10,11,11,7,9,9,9,11,11,9,11,10,7,9,9,9,10,12,9,11,11,9,11,11,11,11,13,11,13,13,9,10,11,11,12,13,10,12,11,7,9,9,9,11,11,9,11,10,9,11,11,11,12,13,11,13,12,9,11,9,11,12,11,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,8,13,15,16,18,21,22,5,4,6,8,10,12,17,21,9,5,5,6,8,11,15,19,11,6,5,5,6,7,12,14,14,8,7,5,4,4,9,11,16,11,9,7,4,3,7,10,22,15,14,12,8,7,9,11,21,16,15,12,9,5,6,8,2,0,0,0,64,0,0,0,8,198,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,150,6,0,0,0,0,0,0,0,0,0,248,150,6,0,0,0,0,0,0,0,0,0,32,151,6,0,72,151,6,0,0,0,0,0,0,0,0,0,112,151,6,0,152,151,6,0,0,0,0,0,0,0,0,0,192,151,6,0,232,151,6,0,0,0,0,0,0,0,0,0,16,152,6,0,56,152,6,0,232,151,6,0,0,0,0,0,96,152,6,0,136,152,6,0,232,147,6,0,16,148,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,144,150,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,136,150,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,147,6,0,152,147,6,0,0,0,0,0,0,0,0,0,192,147,6,0,232,147,6,0,16,148,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,160,149,6,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,80,150,6,0,0,0,0,0,2,0,0,0,25,0,0,0,104,149,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,149,6,0,0,0,0,0,2,0,0,0,9,0,0,0,72,149,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2],"i8",L3,x.GLOBAL_BASE+420817),d3([0,0,0,0,0,0,0,88,149,6,0,0,0,0,0,1,0,0,0,25,0,0,0,192,148,6,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,224,148,6,0,0,0,0,0,1,0,0,0,25,0,0,0,56,148,6,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,88,148,6,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,2,3,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,14,14,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,4,4,5,5,4,5,5,5,5,4,5,4,4,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,8,8,10,10,10,10,9,8,11,11,4,6,5,8,6,10,10,10,10,10,9,10,9,4,5,6,6,9,10,10,10,10,9,10,9,10,8,9,8,9,8,9,9,10,9,11,10,12,10,8,8,9,8,9,9,9,9,10,10,11,10,12,9,10,10,11,10,11,10,12,11,12,11,13,11,9,10,10,10,11,10,11,11,12,11,12,11,12,11,12,12,12,12,13,12,13,12,13,12,13,13,11,12,12,12,12,12,12,12,13,13,13,13,13,12,12,12,13,13,13,13,13,13,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,12,13,13,13,14,14,13,13,13,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,7,12,14,14,16,18,19,6,2,4,6,8,9,12,14,12,3,3,5,7,8,11,13,13,6,4,5,7,8,10,11,14,8,7,7,7,7,9,10,15,9,8,7,7,6,8,9,17,11,11,10,9,8,9,9,19,14,13,11,10,9,9,9,5,0,0,0,243,0,0,0,0,197,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,248,197,6,0,0,0,0,0,5,0,0,0,53,12,0,0,176,184,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,196,6,0,0,0,0,0,5,0,0,0,243,0,0,0,168,183,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,160,184,6,0,0,0,0,0,5,0,0,0,243,0,0,0,160,182,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,152,183,6,0,0,0,0,0,5,0,0,0,243,0,0,0,152,181,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,144,182,6,0,0,0,0,0,5,0,0,0,53,12,0,0,72,169,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,128,181,6,0,0,0,0,0,5,0,0,0,53,12,0,0,248,156,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,48,169,6,0,0,0,0,0,1,0,0,0,7,0,0,0,208,156,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,216,156,6,0,0,0,0,0,5,0,0,0,243,0,0,0,200,155,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,192,156,6,0,0,0,0,0,5,0,0,0,243,0,0,0,192,154,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,184,155,6,0,0,0,0,0,5,0,0,0,243,0,0,0,184,153,6,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,176,154,6,0,0,0,0,0,5,0,0,0,243,0,0,0,176,152,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,168,153,6,0,0,0,0,0,1,7,7,6,9,9,7,9,9,6,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,5,7,8,5,8,7,6,7,7,7,7,8,8,8,8,6,7,7,7,8,8,7,8,7,6,8,8,8,9,10,8,9,9,8,9,9,9,9,10,10,10,10,8,9,9,10,10,10,9,10,10,6,8,8,8,9,9,8,10,9,9,9,9,9,9,10,10,10,10,8,9,9,10,10,10,9,10,9,6,8,9,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,10,9,7,8,9,8,9,9,9,9,9,8,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,7,9,9,9,10,10,9,10,10,9,10,9,9,9,10,10,10,10,9,10,9,10,10,10,9,10,9,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,10,9,7,9,9,9,10,10,9,10,9,9,9,10,10,9,10,10,10,10,9,9,9,10,10,10,9,10,9,7,9,8,8,9,9,8,9,9,9,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,5,7,9,5,9,7,5,7,8,7,7,10,9,9,10,5,8,7,9,10,9,7,10,7,6,9,9,9,10,12,10,12,11,9,10,11,11,10,13,12,12,13,10,11,11,12,13,13,11,13,11,6,9,9,10,11,12,9,12,11,10,11,11,11,11,13,12,13,13,9,11,10,12,13,13,11,13,10,6,9,10,9,11,12,10,12,11,9,10,11,10,10,13,11,13,13,10,11,11,12,13,12,11,13,11,7,9,10,9,10,12,10,11,11,10,10,11,10,10,12,12,11,12,10,11,10,12,12,12,10,12,10,7,10,10,11,11,13,11,13,11,10,12,11,11,10,13,13,14,13,10,11,12,13,13,14,11,13,10,6,10,9,10,11,12,9,12,11,9,11,11,11,11,13,12,12,13,9,11,10,12,13,13,10,13,10,7,10,10,11,11,14,11,13,11,10,12,11,11,10,14,13,14,13,10,11,12,13,13,14,11,13,10,7,10,9,10,10,12,9,12,10,10,11,11,10,10,12,12,12,12,9,11,10,11,12,12,10,12,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,1,6,6,10,10,6,7,9,11,13,5,9,7,13,11,8,11,12,13,15,8,12,11,15,13,6,7,8,11,11,7,8,10,11,13,9,10,10,13,13,11,11,13,12,16,12,13,13,16,15,6,8,7,11,11,9,10,10,13,13,7,10,7,13,11,12,13,13,15,16,11,13,11,16,12,10,11,11,11,13,11,11,13,12,15,13,13,13,14,15,13,12,15,12,17,15,16,16,16,16,10,11,11,14,11,13,13,13,15,14,11,13,11,15,12,15,15,16,16,16,13,15,12,17,12,6,8,9,12,12,9,10,12,13,15,9,11,11,15,14,12,13,15,16,18,13,14,14,17,16,9,10,11,13,14,11,10,13,14,16,11,12,12,15,15,14,13,16,15,18,14,15,15,17,17,9,11,11,14,14,11,12,13,15,16,11,13,11,15,14,15,15,15,17,18,14,15,14,17,15,13,14,14,15,16,14,14,15,15,17,15,16,15,17,17,16,16,17,15,19,17,18,18,19,18,13,14,14,16,15,15,15,16,17,17,14,15,14,18,15,17,17,17,19,19,16,17,15,19,16,6,9,8,13,12,9,11,11,14,15,9,12,10,15,13,13,14,14,16,17,12,15,13,18,16,9,11,11,14,14,11,11,13,14,15,11,13,12,16,15,14,14,15,15,18,14,15,15,18,17,9,11,10,14,13,11,12,12,15,15,11,13,10,16,14,14,15,15,16,18,14,16,13,18,15,13,14,14,16,16,14,14,15,15,17,15,16,15,17,17,16,16,17,16,19,17,18,17,18,19,13,14,14,16,15,15,15,15,17,17,14,15,14,17,15,17,17,17,18,19,16,17,15,19,15,11,13,13,15,16,13,14,15,16,18,14,15,15,17,17,16,16,18,18,20,17,18,17,19,20,13,14,14,16,17,15,15,16,17,18,15,16,16,17,17,18,17,19,18,19,18,18,18,19,21,14,14,15,16,17,15,15,16,18,18,15,16,16,17,18,18,18,19,19,21,18,19,19,22,20,16,16,17,17,19,17,17,17,18,20,17,18,18,20,19,19,19,20,19,0,19,19,20,20,21,17,17,17,19,18,18,18,20,19,19,18,18,18,20,20,19,19,20,20,20,20,21,20,21,19,11,13,13,16,15,14,15,15,17,17,14,15,14,18,16,16,18,18,20,19,16,19,17,21,18,13,14,15,16,17,15,15,16,18,18,15,16,15,19,18,18,18,18,19,19,18,18,18,22,20,13,14,14,16,16,15,16,16,18,17,15,16,15,18,17,18,18,18,19,19,17,18,17,21,18,16,17,17,18,18,17,18,19,19,19,18,20,18,19,19,19,20,21,19,21,20,20,20,0,21,16,17,17,19,19,18,18,18,19,21,17,18,18,19,18,20,19,21,20,21,19,20,20,22,19,7,9,9,13,13,8,10,11,14,15,9,12,11,15,14,11,13,14,16,17,13,15,14,17,16,8,10,11,14,14,10,10,12,14,16,11,12,12,16,15,13,12,15,15,18,14,15,15,19,17,9,11,11,14,14,11,12,12,15,15,11,13,11,16,14,14,15,14,17,17,14,16,14,18,15,12,13,14,15,16,13,13,15,14,17,15,15,15,17,17,15,14,17,14,19,17,18,18,19,18,13,14,14,16,16,15,15,15,17,17,14,15,14,18,15,17,18,17,18,17,16,18,16,19,15,7,10,10,13,13,9,10,12,14,15,10,12,11,15,14,12,13,14,16,17,13,15,14,18,16,10,10,12,13,14,10,10,13,13,16,12,12,13,15,15,13,12,15,15,18,15,15,16,18,17,10,11,11,14,14,12,13,13,15,16,10,13,10,16,14,14,15,15,17,17,14,15,13,17,15,13,13,14,15,16,14,13,15,14,18,15,15,16,16,17,16,15,18,15,18,17,18,18,18,18,13,15,14,17,16,15,16,16,17,17,14,15,13,17,15,17,17,18,18,18,16,17,14,20,14,8,10,10,14,14,11,11,13,14,16,11,13,11,16,14,14,15,16,16,18,14,16,15,18,16,10,12,11,15,14,11,11,13,14,16,13,14,13,16,15,15,14,16,15,19,16,17,16,20,18,10,11,12,14,15,13,13,14,16,16,11,14,11,16,14,16,16,17,18,19,15,17,14,20,15,14,15,14,17,16,13,14,15,15,18,16,17,16,19,18,16,15,18,15,19,18,19,18,21,21,14,14,15,16,17,16,16,17,18,18,13,15,14,17,15,18,18,19,18,22,16,18,15,21,15,12,13,14,16,16,14,14,16,16,18,14,15,15,17,18,16,16,18,18,20,18,18,17,20,20,13,14,15,15,17,15,14,16,16,18,16,16,16,17,19,17,15,18,17,21,18,18,18,19,19,14,15,15,18,17,15,16,16,18,19,15,16,15,18,18,17,18,18,20,21,17,19,17,20,19,16,16,17,16,19,17,17,18,17,20,18,18,18,18,19,19,18,20,17,22,20,20,19,20,20,17,17,18,18,19,18,18,20,21,20,17,18,17,20,20,21,21,21,21,21,19,21,18,22,20,11,13,13,17,16,14,14,16,16,18,14,16,14,18,16,17,18,19,19,20,18,19,18,21,19,14,15,14,17,16,14,14,16,18,18,16,17,16,18,17,18,17,19,18,20,19,19,18,20,20,13,14,15,16,17,16,16,17,18,19,14,16,14,19,17,18,19,18,20,20,18,20,17,21,18,17,17,17,19,18,16,17,18,18,19,18,19,18,21,21,18,18,20,17,21,19,20,20,22,21,16,17,18,18,19,18,18,19,21,20,16,17,17,20,18,21,21,22,21,22,18,21,18,0,18,7,9,9,13,13,9,11,12,14,15,8,11,10,15,14,13,14,15,16,18,11,14,13,17,15,9,11,11,14,14,11,11,13,14,16,11,12,12,15,15,14,14,16,15,18,14,14,15,17,17,8,11,10,14,14,11,12,12,15,15,10,12,10,16,14,14,15,15,17,18,13,15,12,18,15,13,14,14,16,16,14,14,15,15,17,15,15,15,16,17,16,15,17,15,19,17,17,17,18,18,12,14,13,16,15,15,15,15,17,17,13,15,13,17,14,17,18,18,18,19,15,17,14,19,14,8,10,10,14,14,11,11,13,14,16,11,13,11,16,14,14,15,16,17,19,14,16,15,18,17,10,12,11,15,14,11,11,14,14,17,13,14,13,17,15,15,14,17,15,19,16,17,16,19,17,10,11,12,14,15,13,13,14,15,17,11,13,11,17,14,16,16,17,18,19,15,16,14,18,15,14,15,14,16,16,13,14,15,15,18,16,16,16,18,18,16,15,18,15,20,18,19,18,21,18,14,14,15,16,17,16,16,17,17,18,13,15,14,17,16,19,19,19,19,19,15,18,15,20,15,7,10,10,13,13,10,11,12,14,15,9,12,10,15,14,13,14,15,16,17,12,15,13,17,16,10,11,11,14,14,10,10,13,14,16,12,13,13,16,15,14,13,16,15,18,15,15,16,17,17,10,12,10,14,13,12,13,12,15,15,10,13,10,16,13,15,16,15,17,18,13,16,12,18,15,13,14,14,16,17,14,13,15,15,18,15,16,15,17,17,16,14,17,15,19,17,18,18,19,19,13,15,13,17,14,15,15,15,18,17,14,15,13,17,14,18,17,18,18,19,15,17,15,19,15,11,13,13,16,17,14,14,16,16,18,14,16,15,18,17,17,18,19,18,21,18,18,17,20,18,13,15,14,17,16,14,14,16,17,18,16,17,16,19,17,18,17,19,18,22,18,19,19,21,21,13,14,15,16,18,16,16,17,17,20,14,16,14,18,17,18,18,19,19,21,17,18,17,21,18,17,18,17,19,18,16,17,17,18,19,18,18,18,22,22,18,17,19,17,0,20,21,19,21,20,17,17,18,18,21,18,18,18,19,21,17,17,17,19,19,20,20,22,21,21,19,20,18,20,17,12,14,13,17,16,14,15,15,17,18,14,16,14,18,16,17,18,18,21,20,16,18,16,21,18,14,15,15,17,17,15,15,16,18,18,15,17,16,18,18,17,17,19,19,20,18,19,18,20,19,14,15,14,17,15,15,16,16,18,17,15,16,14,19,15,18,18,18,19,20,17,20,15,21,17,16,17,18,18,19,17,17,18,18,20,18,19,18,19,21,19,18,19,19,21,20,0,19,21,20,16,17,16,19,16,18,18,18,19,19,17,18,17,20,17,19,20,20,22,0,19,20,17,21,17,11,13,14,16,17,14,15,15,17,18,14,15,15,18,18,16,17,17,19,20,16,18,17,19,21,13,14,15,17,17,14,15,16,17,19,15,16,16,18,19,16,17,18,19,21,17,18,20,21,21,13,15,15,17,17,15,16,16,18,19,15,16,16,18,19,17,17,18,19,22,17,19,18,22,19,15,16,17,19,19,16,17,18,18,20,17,18,18,19,20,19,18,20,18,22,20,19,19,22,21,16,17,17,18,19,18,18,18,19,20,17,18,18,20,19,20,19,20,22,20,19,20,21,21,20,12,14,14,16,16,13,14,16,17,18,14,16,15,18,18,15,17,17,19,19,17,18,18,19,19,13,14,15,16,17,14,14,16,16,20,15,16,16,17,19,16,15,18,17,20,18,17,19,19,19,14,15,15,17,17,16,16,16,18,18,15,16,15,19,18,17,18,18,20,21,17,18,17,21,18,16,15,17,17,19,17,15,18,17,20,19,17,18,19,20,18,16,19,17,22,20,19,20,19,20,17,17,18,19,19,18,18,19,20,20,17,18,17,18,18,21,21,20,20,21,18,20,17,21,19,11,14,14,16,17,15,14,16,17,19,14,16,14,18,17,18,18,19,19,21,17,19,18,20,20,13,15,14,17,17,14,14,16,17,18,16,17,16,19,18,18,17,19,18,20,18,21,18,20,20,13,15,15,16,17,16,16,17,18,19,14,16,15,19,18,19,19,19,21,20,18,19,17,20,18,16,17,16,19,18,16,17,17,19,20,17,19,18,20,19,18,17,21,18,0,21,20,20,0,20,17,17,18,18,19,18,19,19,20,22,16,17,17,20,18,21,22,20,20,22,18,22,18,22,18,12,14,14,17,17,14,15,16,17,19,14,16,15,17,17,17,17,18,18,21,17,19,17,20,19,14,15,15,16,18,15,14,16,16,19,16,17,16,19,18,17,16,20,17,20,18,20,19,19,20,14,15,15,18,17,16,16,17,18,19,14,16,15,19,17,18,21,18,19,21,17,18,17,19,18,17,17,18,17,20,17,16,18,17,21,18,19,19,19,19,18,17,19,17,20,20,21,20,21,20,17,17,17,19,19,19,18,18,20,21,16,18,16,19,18,20,20,21,21,20,18,19,16,0,17,12,14,14,17,17,15,15,18,17,19,15,18,15,20,16,20,19,21,18,22,20,20,20,22,19,14,16,14,20,17,14,15,17,17,20,18,18,17,20,18,18,17,19,17,21,20,21,20,0,21,14,15,16,17,19,18,17,19,18,21,14,18,15,21,17,21,20,21,20,0,18,21,17,21,17,18,19,17,20,18,16,17,17,19,19,19,21,20,0,20,18,17,21,17,0,22,0,21,0,22,17,17,19,18,20,20,20,21,19,22,16,17,18,20,18,22,22,0,22,0,17,21,17,22,17,11,14,13,16,16,14,15,15,17,18,14,15,14,18,17,17,18,18,19,20,16,17,17,21,19,13,14,15,17,17,15,16,16,18,18,15,16,16,19,18,18,18,18,19,20,17,18,18,20,19,13,15,14,17,17,15,16,16,17,18,14,16,15,19,17,17,18,19,21,21,17,18,17,20,18,16,17,17,19,19,17,18,19,19,20,18,19,18,21,21,21,20,19,21,22,20,20,19,21,20,15,17,16,19,19,17,18,18,20,21,16,18,17,20,18,19,19,21,21,21,19,19,19,20,18,11,14,13,17,16,14,14,16,16,19,14,16,15,19,16,18,18,18,19,22,17,18,17,20,19,13,15,14,17,17,15,15,16,17,19,16,17,16,20,18,18,17,19,18,21,19,19,18,22,0,13,14,15,17,18,16,16,17,17,19,14,16,15,19,18,18,19,19,20,21,18,18,17,20,18,17,18,17,20,18,16,17,17,18,20,18,19,18,20,20,18,18,21,17,21,20,21,21,0,19,16,16,18,18,19,19,18,20,19,20,16,17,17,20,18,21,20,21,22,22,18,20,17,21,17,12,14,14,17,16,14,15,16,18,18,13,15,14,18,17,17,18,18,19,19,15,17,16,19,19,14,15,15,17,17,15,15,16,18,19,15,16,16,19,18,17,17,18,18,20,18,18,18,21,20,13,15,14,17,16,15,16,15,18,18,14,16,14,18,17,18,18,18,19,21,16,18,16,20,17,17,18,17,18,19,17,17,18,18,19,18,19,19,21,19,19,18,20,18,21,21,20,20,21,20,16,17,15,20,17,17,19,17,19,19,17,18,15,20,17,19,20,19,21,22,17,20,16,0,17,12,14,14,17,18,16,15,18,16,20,16,18,15,21,17,20,18,21,19,22,19,21,19,0,19,14,16,15,19,17,14,15,17,16,21,18,19,18,21,17,19,17,21,17,22,20,21,21,0,21,14,15,16,17,19,18,17,19,18,21,14,17,15,20,17,21,22,21,20,22,18,21,17,21,17,17,19,17,21,18,16,17,17,19,20,19,21,20,21,20,17,18,20,17,21,0,22,20,21,22,17,17,20,18,21,21,20,22,20,21,16,17,17,21,19,0,22,0,21,21,18,22,17,21,17,12,14,14,17,16,14,15,16,17,18,14,16,15,18,17,17,17,20,19,20,16,18,17,21,18,14,15,15,17,17,14,15,16,17,19,16,17,16,18,18,17,16,19,18,19,18,19,18,21,20,14,15,15,18,17,16,16,16,19,18,15,16,14,20,16,18,18,19,19,20,16,19,16,21,17,17,17,18,19,19,16,16,18,18,19,19,19,18,20,20,18,16,19,18,20,22,21,20,19,20,16,18,17,20,16,18,19,18,19,18,16,18,16,20,17,21,20,21,20,20,18,19,17,21,16,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,5,7,7,10,10,7,8,9,10,11,7,9,8,11,10,9,10,10,11,11,9,10,10,11,11,7,9,9,10,10,8,9,10,10,11,9,10,10,11,11,10,10,11,11,11,10,11,11,12,12,7,9,9,10,10,9,10,10,11,11,8,10,9,11,10,10,11,11,11,11,10,11,10,11,11,10,10,10,11,11,10,10,11,11,11,11,11,11,11,11,11,11,12,11,12,11,12,11,12,12,10,10,10,11,11,10,11,11,11,11,10,11,10,11,11,11,12,11,12,12,11,12,11,12,11,8,9,9,11,11,9,10,10,11,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,11,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,8,9,9,11,11,9,10,10,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,11,11,12,12,12,12,11,12,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,13,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,13,12,12,12,12,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,9,9,11,11,9,10,10,11,11,9,10,10,12,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,11,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,10,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,10,11,11,12,11,11,12,12,12,11,11,12,12,12,11,11,12,12,13,12,12,12,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,8,10,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,12,12,12,10,11,10,12,12,10,10,11,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,10,11,11,12,12,11,12,12,12,12,10,12,11,12,12,12,12,12,13,13,12,13,12,13,12,11,12,12,12,12,11,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,13,11,12,12,12,12,12,12,12,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,13,13,13,12,12,13,13,13,13,13,13,13,13,11,12,12,12,12,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,12,12,13,12,12,13,12,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,9,9,11,11,9,10,10,11,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,8,10,10,11,11,10,10,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,12,10,11,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,10,10,11,12,12,11,12,12,12,12,10,11,10,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,11,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,11,12,12,13,12,12,13,13,13,13,12,13,12,13,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,12,12,12,12,13,12,12,12,13,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,12,12,12,12,12,12,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,13,13,13,13,11,12,11,12,12,12,12,12,13,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,12,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,12,13,13,13,12,13,13,13,13,11,12,12,12,13,12,12,13,13,13,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,11,12,12,12,12,12,12,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,13,13,13,12,13,12,13,13,11,12,12,12,12,12,12,13,13,13,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,13,12,13,13,12,12,12,13,12,13,13,13,13,13,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,11,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,13,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,13,13,13,13,12,13,12,13,13,11,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,11,12,12,13,12,12,13,12,13,13,12,13,12,13,13,13,13,13,13,13,12,13,13,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,13,13,13,13,12,13,13,12,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,12,13,13,13,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,13,12,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,13,13,13,13,13,11,12,12,12,12,12,13,12,13,13,12,13,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,11,12,12,12,12,12,13,13,11,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,12,13,13,13,12,13,13,13,13,11,12,12,13,13,12,12,13,13,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,11,12,12,13,12,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,12,11,12,12,11,12,12,12,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,13,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,13,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,13,12,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,12,13,13,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,13,13,13,12,13,13,13,13,12,12,13,13,13,13,13,13,13,13,11,12,12,12,12,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,13,13,13,13,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,13,13,13,12,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,13,13,13,13,13,13,13,13,13,12,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,9,5,9,7,5,7,8,7,7,10,9,10,10,5,8,7,9,10,10,7,10,7,6,8,9,9,10,12,9,11,11,9,10,11,11,11,13,12,13,13,9,11,11,11,12,13,11,13,11,6,9,8,9,11,11,9,12,10,9,11,11,11,11,13,11,13,12,9,11,10,12,13,13,11,13,11,6,9,9,8,10,11,9,12,11,9,10,11,10,10,12,11,13,13,9,11,11,11,13,12,11,13,11,8,10,10,9,10,12,10,12,11,10,10,12,10,10,13,12,13,13,10,12,11,12,13,13,10,13,10,7,10,10,11,11,13,11,14,11,10,12,11,11,11,13,13,14,13,10,12,12,14,14,14,11,14,11,6,9,9,9,11,12,8,11,10,9,11,11,11,11,13,11,12,13,8,11,10,11,13,13,10,12,10,7,10,10,11,11,14,11,13,11,10,12,12,11,11,14,14,14,14,10,11,12,13,13,14,11,13,11,8,10,10,10,11,12,9,12,10,10,11,12,11,10,13,12,13,13,10,12,10,12,13,13,11,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,6,6,6,7,7,6,7,7,6,7,7,7,7,8,7,8,8,6,7,7,7,8,8,7,8,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,9,7,8,7,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,8,6,8,8,7,8,8,7,8,8,7,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,9,9,8,9,9,8,8,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,7,8,8,8,8,9,8,9,8,8,8,8,8,9,9,9,9,9,8,9,8,9,9,9,8,9,9,6,8,8,7,8,8,7,8,8,8,8,8,8,8,9,8,9,9,7,8,8,8,9,9,8,9,8,7,8,8,8,8,9,8,9,8,8,8,9,8,9,9,9,9,9,8,8,8,9,9,9,8,9,9,7,8,8,8,9,9,8,9,9,8,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,6,5,7,8,5,8,7,5,7,8,7,8,10,8,10,10,5,8,7,8,10,10,7,10,8,6,8,9,8,10,11,9,10,10,9,10,11,10,11,12,11,12,12,9,11,10,11,12,12,10,12,11,6,9,8,9,10,10,8,11,10,9,10,11,10,11,12,11,12,12,9,11,10,11,12,12,10,12,11,6,9,9,8,10,11,9,11,10,8,10,10,10,10,12,11,12,12,9,11,10,11,12,12,10,12,11,8,10,10,10,11,12,10,12,11,10,10,12,11,11,13,12,13,13,10,12,11,12,13,13,11,13,11,7,10,10,10,11,12,10,12,11,10,12,11,11,11,12,12,14,13,10,12,12,12,14,14,11,13,11,6,9,9,9,10,11,8,11,10,9,10,11,10,11,12,11,12,12,8,11,10,11,12,12,10,12,10,7,10,10,10,11,12,10,12,11,10,12,12,11,11,13,12,13,13,10,11,12,12,13,14,11,12,11,8,10,10,10,11,12,10,12,11,10,11,12,11,11,13,12,13,13,10,12,10,12,13,13,11,13,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,9,9,6,7,8,10,10,6,8,7,10,10,8,10,10,12,13,8,10,10,13,12,6,7,8,10,10,7,8,9,10,11,8,9,9,11,11,10,10,11,12,14,10,11,11,14,13,6,8,7,10,10,8,9,9,11,11,7,9,8,11,10,10,11,11,13,14,10,11,10,14,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,13,14,13,15,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,13,13,14,14,15,12,13,12,15,12,6,7,8,10,11,8,9,10,11,12,8,9,9,11,12,10,11,12,13,14,10,11,11,14,13,8,9,10,11,12,9,10,11,12,13,9,10,11,12,13,11,12,13,13,15,12,12,13,15,14,8,9,9,12,12,9,10,11,12,13,9,10,10,13,12,12,12,13,14,15,11,12,12,14,14,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,14,13,15,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,14,13,14,15,15,15,16,13,14,14,16,14,6,8,7,11,10,8,9,9,11,12,8,10,9,12,11,10,11,11,13,14,10,12,11,14,13,8,9,9,12,12,9,10,10,12,13,9,11,10,13,12,11,12,12,13,14,12,13,12,15,14,8,10,9,12,11,9,11,10,13,12,9,11,10,13,12,12,13,12,14,15,11,13,12,15,13,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,13,14,14,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,15,13,14,15,15,16,16,13,15,13,16,14,9,10,11,12,14,11,11,12,13,15,11,12,12,13,14,13,14,15,15,17,13,14,14,15,16,11,11,12,13,15,12,12,13,14,16,12,13,13,14,15,14,14,16,15,17,15,15,15,16,17,11,12,12,14,14,12,13,13,15,16,12,13,13,15,15,15,15,15,16,17,14,15,15,16,16,14,14,15,15,17,14,15,15,15,17,15,15,16,16,17,16,16,17,16,18,17,17,17,18,18,14,15,14,16,16,15,15,16,17,17,14,15,15,17,16,17,17,17,18,18,16,16,16,17,17,9,11,10,14,12,11,12,12,14,13,11,12,11,15,13,13,14,14,16,15,13,15,14,17,15,11,12,12,15,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,15,15,15,17,16,11,12,11,15,13,12,13,13,15,14,12,13,12,16,14,15,15,15,17,16,14,15,14,17,15,14,14,15,16,16,14,15,15,16,16,15,16,15,17,17,16,16,16,17,17,17,17,17,18,17,14,15,14,16,15,15,15,15,17,16,15,15,15,17,15,17,17,17,18,18,16,17,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,12,11,14,13,7,9,9,11,12,9,10,10,12,13,9,10,10,13,13,11,11,12,13,15,11,12,12,15,14,8,9,9,12,11,9,11,10,13,13,9,11,10,13,12,12,13,12,14,15,11,13,12,15,13,10,11,12,13,14,11,12,12,13,15,12,12,13,14,15,13,13,14,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,15,13,14,15,15,15,16,13,14,14,16,14,7,9,9,11,12,9,10,11,12,13,9,10,10,13,12,11,12,12,14,15,11,12,12,15,14,9,9,11,11,13,10,10,12,12,14,10,11,12,13,14,12,12,13,14,16,12,13,13,15,15,9,11,10,13,13,10,12,12,13],"i8",L3,x.GLOBAL_BASE+431057),d3([14,10,12,11,14,13,12,13,13,15,16,12,13,13,15,14,11,11,13,13,15,12,12,14,13,16,13,13,13,14,15,14,14,15,14,17,15,15,15,16,16,12,13,12,15,14,13,14,14,15,15,12,14,13,16,14,15,15,16,16,17,14,15,14,17,15,7,9,9,12,11,9,10,10,12,13,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,9,10,10,13,12,10,10,11,12,13,10,12,11,14,13,12,12,13,13,15,12,14,13,16,15,9,10,10,13,12,11,11,12,13,13,10,12,10,14,12,13,13,13,15,15,12,13,12,15,13,11,12,12,14,14,12,12,13,14,15,13,14,13,15,15,14,13,15,13,16,15,16,15,17,16,12,13,12,14,14,13,14,14,15,15,12,13,12,15,14,15,15,16,16,17,14,15,13,16,13,10,11,12,13,14,11,12,13,14,15,12,13,13,15,15,14,14,15,15,17,14,15,15,16,16,12,12,13,12,15,12,12,14,13,16,13,13,14,14,16,14,14,16,15,17,15,15,16,16,17,12,13,13,15,15,13,14,14,16,16,13,14,13,16,15,15,16,16,17,17,14,15,15,17,16,14,14,15,14,17,15,15,16,15,17,15,15,16,15,17,16,16,17,16,18,17,17,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,17,17,17,18,18,16,17,16,18,17,10,12,11,14,14,12,13,13,15,15,12,13,12,15,14,14,15,15,16,16,14,15,15,17,16,11,13,12,15,14,12,13,13,15,15,13,14,13,16,14,15,15,15,16,16,15,16,15,17,16,12,13,13,15,15,13,14,14,16,16,12,14,13,16,15,15,16,16,17,17,15,16,15,17,16,14,15,15,16,16,14,15,15,16,16,15,16,16,17,16,16,16,16,16,17,17,18,17,18,17,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,17,17,18,18,18,16,17,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,12,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,10,11,13,13,11,12,13,13,15,12,12,12,15,14,7,9,9,12,11,9,10,10,13,13,9,10,10,13,12,11,12,12,14,15,11,12,11,15,13,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,13,14,14,14,16,14,15,15,16,16,10,12,11,14,13,12,13,12,14,14,11,12,12,15,13,14,15,15,16,16,13,14,13,16,14,7,9,9,11,12,9,10,11,12,13,9,10,10,13,12,11,12,13,14,15,11,12,12,14,14,9,10,10,12,13,10,10,12,12,14,11,12,11,13,13,12,12,14,13,15,13,13,13,15,15,9,10,10,12,13,10,11,12,13,14,10,11,10,13,12,13,13,14,15,16,12,13,12,15,13,12,13,13,14,14,12,12,13,14,15,13,14,14,15,15,14,13,15,13,16,15,16,15,17,16,11,12,12,14,14,13,13,14,15,15,12,13,12,15,14,15,15,16,16,17,14,14,13,16,13,7,9,9,12,11,9,10,10,12,13,9,11,10,13,12,11,12,12,14,15,11,12,12,15,14,9,10,11,13,13,10,11,12,13,14,10,12,12,14,13,12,13,13,14,16,12,13,13,16,15,9,11,9,13,11,10,12,11,13,13,10,12,10,14,12,12,13,13,15,15,12,13,12,16,14,12,12,13,14,15,12,13,14,14,15,13,14,14,15,15,14,14,15,15,17,15,16,15,17,16,11,13,11,15,13,13,14,13,15,14,12,14,12,16,13,15,15,15,16,16,14,15,14,17,14,10,11,12,14,14,12,12,13,14,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,16,12,12,13,15,15,13,13,14,15,16,13,14,14,16,16,15,15,16,16,17,15,16,16,17,17,11,12,13,14,15,13,13,14,15,16,12,13,13,15,15,15,15,16,16,17,15,15,15,16,16,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,16,18,17,17,17,18,18,14,15,15,16,16,15,16,16,16,17,15,15,15,16,16,17,17,17,18,18,16,16,16,17,16,10,12,11,14,13,12,13,13,15,15,11,13,12,15,14,14,15,15,16,16,14,15,14,17,15,12,13,13,15,15,13,13,14,16,16,13,14,14,16,16,15,15,15,16,17,15,16,16,17,17,12,13,12,15,12,13,14,13,16,14,12,14,12,16,13,15,16,15,17,16,14,16,14,17,15,14,15,15,16,17,15,15,16,17,17,15,16,16,17,17,16,16,17,17,18,17,18,17,18,18,14,15,14,17,14,15,16,15,17,15,15,16,15,17,15,17,17,17,18,17,16,17,16,18,16,9,11,11,14,14,11,12,12,14,14,11,12,12,15,14,13,14,14,16,16,13,15,14,16,16,10,11,12,14,14,11,12,13,15,15,12,13,13,15,15,13,14,15,16,17,14,15,15,17,16,11,12,12,15,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,15,17,16,12,13,14,15,16,13,14,14,15,16,13,14,15,16,16,15,15,16,16,18,16,16,16,18,17,14,14,14,16,15,15,15,15,17,16,14,15,15,17,16,16,17,17,18,17,16,16,16,18,16,10,12,12,14,14,11,12,13,15,15,12,13,13,15,15,13,14,15,16,17,14,15,15,17,16,11,12,13,14,15,12,12,14,15,16,13,13,14,15,16,14,14,15,16,17,15,15,16,17,17,12,13,13,15,15,13,14,14,16,16,13,14,13,16,15,15,16,15,17,17,15,16,15,17,16,13,13,15,14,17,14,13,16,15,17,15,14,16,15,17,15,15,17,16,18,16,16,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,17,17,17,18,18,16,17,16,18,17,10,12,11,14,14,11,12,13,15,15,12,13,12,15,15,14,15,15,16,16,14,15,15,17,16,11,12,12,15,15,12,13,13,15,15,13,14,13,16,15,14,15,15,16,16,15,16,15,17,16,11,13,13,15,15,13,14,14,15,15,12,14,13,16,15,15,16,15,17,17,15,16,15,17,16,13,15,14,16,16,14,15,14,16,16,15,16,15,17,16,15,16,16,16,17,16,17,16,18,17,14,15,15,16,16,15,16,16,17,17,15,15,15,17,16,17,17,17,18,18,16,16,16,18,16,12,13,13,15,16,13,14,14,15,16,13,14,14,16,16,15,15,16,16,18,15,16,16,17,17,13,13,14,15,16,14,14,15,15,17,14,15,15,16,17,15,15,17,16,18,16,16,17,17,17,13,14,14,16,16,14,15,15,17,17,14,15,14,17,16,16,17,16,17,18,16,17,16,18,17,15,15,16,14,17,16,15,17,14,18,16,16,16,15,18,16,16,18,15,19,18,18,18,17,19,15,16,16,18,17,16,17,17,18,17,16,17,16,18,17,18,18,18,19,19,17,18,16,18,17,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,16,16,16,17,15,16,16,17,16,12,14,13,16,15,13,13,14,15,16,14,15,14,17,15,15,15,16,16,17,16,17,16,18,17,12,13,14,15,16,14,15,15,16,16,13,14,13,16,15,16,16,16,17,17,15,16,15,17,15,15,16,15,17,16,15,15,15,16,16,16,17,16,18,16,16,15,16,15,17,17,18,17,18,17,15,15,16,17,17,16,16,17,17,17,15,16,15,17,16,18,18,18,18,18,16,17,16,18,15,9,11,11,14,14,11,12,12,14,15,10,12,12,15,14,13,14,15,16,16,13,14,14,16,16,11,12,12,14,15,12,12,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,16,10,12,12,14,14,12,13,13,15,15,11,13,12,15,15,14,15,15,16,17,13,15,14,16,16,14,14,14,15,16,14,15,15,16,17,14,15,15,16,17,16,16,17,16,18,16,17,17,17,17,12,14,13,16,15,13,15,14,16,16,13,14,14,16,15,16,16,16,17,17,15,16,15,17,16,10,11,11,14,14,12,12,13,14,15,11,13,12,15,14,14,15,15,16,17,14,15,15,16,16,12,13,13,15,15,12,13,14,15,16,13,14,14,15,15,15,15,16,16,17,15,15,16,17,17,11,12,12,15,15,13,13,14,15,16,12,13,13,15,15,15,15,16,16,17,14,15,15,16,16,14,15,15,16,16,15,15,15,16,17,15,16,16,17,17,16,16,17,16,18,17,17,17,17,18,13,14,15,16,16,15,15,16,16,17,14,14,14,16,16,16,16,17,17,18,16,16,16,17,16,10,12,12,14,14,12,13,13,15,15,11,13,12,15,15,14,15,15,16,17,13,15,14,17,16,12,13,13,15,15,13,13,14,15,16,13,14,14,16,16,15,15,16,16,17,15,15,16,17,17,11,13,12,15,14,13,14,13,16,15,12,14,12,16,15,15,16,15,17,17,14,15,14,17,16,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,17,18,17,17,17,18,18,13,15,13,17,14,14,16,14,17,16,14,15,13,17,15,16,17,16,18,17,15,17,15,18,16,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,16,16,16,17,15,16,16,17,16,12,14,13,16,15,13,13,14,15,16,14,15,15,16,16,16,15,16,16,17,16,16,16,17,17,12,13,14,15,16,14,14,15,15,17,13,14,13,16,15,16,16,17,17,18,15,16,15,17,15,15,16,15,17,17,15,15,16,16,17,16,17,16,17,17,16,15,17,15,18,17,18,17,18,18,15,15,16,16,17,16,16,17,16,18,15,15,15,16,16,17,17,18,17,18,16,16,15,17,15,12,13,13,15,15,13,14,14,16,16,13,14,14,16,16,15,16,16,17,18,15,16,15,18,16,13,14,14,16,16,14,14,15,16,17,14,15,15,17,17,16,16,17,17,18,16,16,17,18,17,13,14,13,16,14,14,15,15,17,16,14,15,14,17,15,16,17,17,18,17,15,17,15,18,16,15,16,16,17,17,16,16,17,17,18,16,17,17,18,18,17,16,18,17,19,18,18,18,18,18,15,16,15,17,14,16,16,16,18,15,16,17,15,18,14,18,18,18,18,17,17,18,16,19,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,7,7,5,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,5,7,8,8,9,10,8,9,10,8,9,10,9,10,12,10,11,11,8,10,10,10,11,11,9,11,11,5,8,7,8,9,9,8,10,9,8,10,10,9,11,11,10,11,11,8,10,9,10,11,11,9,12,10,5,8,8,7,9,10,8,10,9,7,9,9,9,10,11,9,11,11,8,10,9,10,11,11,10,11,11,7,9,9,9,10,11,9,11,11,9,9,11,10,10,13,11,11,12,9,11,11,11,12,13,11,13,12,7,9,9,9,11,11,9,11,10,9,11,10,10,11,12,11,13,12,9,11,11,11,12,13,11,13,11,5,8,8,8,9,10,7,10,9,8,9,10,10,11,11,10,11,11,7,9,9,9,11,11,9,11,10,7,9,9,9,10,11,9,11,11,9,11,11,11,11,13,11,13,12,9,10,11,11,12,13,10,12,11,7,9,9,9,11,11,9,11,10,9,11,11,11,12,13,11,13,12,9,11,9,11,12,11,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,12,14,15,18,20,20,5,3,4,6,9,11,15,19,9,4,3,4,7,9,13,18,11,6,3,3,5,8,13,19,14,9,6,5,7,10,16,20,16,11,9,8,10,10,14,16,21,14,13,11,8,7,11,14,21,14,13,9,6,5,10,12,0,0,0,0,255,255,255,255,255,255,255,255,8,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+441297),d3([1,0,0,0,1,0,0,0,2,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,240,5,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,184,214,6,0,0,0,0,0,0,0,0,0,224,214,6,0,0,0,0,0,0,0,0,0,8,215,6,0,48,215,6,0,0,0,0,0,0,0,0,0,88,215,6,0,128,215,6,0,0,0,0,0,0,0,0,0,168,215,6,0,208,215,6,0,0,0,0,0,0,0,0,0,248,215,6,0,32,216,6,0,208,215,6,0,0,0,0,0,72,216,6,0,112,216,6,0,208,211,6,0,248,211,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,120,214,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,112,214,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,211,6,0,128,211,6,0,0,0,0,0,0,0,0,0,168,211,6,0,208,211,6,0,248,211,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,136,213,6,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,56,214,6,0,0,0,0,0,2,0,0,0,25,0,0,0,80,213,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,112,213,6,0,0,0,0,0,2,0,0,0,9,0,0,0,48,213,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,64,213,6,0,0,0,0,0,1,0,0,0,25,0,0,0,168,212,6,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,200,212,6,0,0,0,0,0,1,0,0,0,25,0,0,0,32,212,6,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,64,212,6,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,4,4,5,5,5,4,5,4,5,5,5,5,6,5,6,5,6,5,6,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,8,8,9,8,9,9,10,10,10,10,4,6,5,8,7,9,9,9,9,10,9,10,10,4,5,6,7,8,9,9,9,9,9,10,9,10,8,9,8,9,8,10,9,11,9,12,10,11,10,8,8,9,8,9,9,10,9,11,10,11,10,12,9,10,10,11,10,11,11,12,11,12,12,12,12,9,10,10,11,11,11,11,11,12,12,12,12,12,10,11,11,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,13,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,11,13,12,12,12,13,12,12,12,12,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,5,13,9,9,12,16,18,4,2,20,6,7,10,15,20,10,7,5,5,6,8,10,13,8,5,5,3,5,7,10,11,9,7,6,5,5,7,9,9,11,10,8,7,6,6,8,8,15,15,10,10,9,7,8,9,17,19,13,12,10,8,9,9,5,0,0,0,243,0,0,0,232,4,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,224,5,7,0,0,0,0,0,5,0,0,0,53,12,0,0,152,248,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,4,7,0,0,0,0,0,5,0,0,0,243,0,0,0,144,247,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,136,248,6,0,0,0,0,0,5,0,0,0,243,0,0,0,136,246,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,128,247,6,0,0,0,0,0,5,0,0,0,243,0,0,0,128,245,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,120,246,6,0,0,0,0,0,5,0,0,0,53,12,0,0,48,233,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,104,245,6,0,0,0,0,0,5,0,0,0,53,12,0,0,224,220,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,24,233,6,0,0,0,0,0,1,0,0,0,7,0,0,0,184,220,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,192,220,6,0,0,0,0,0,5,0,0,0,243,0,0,0,176,219,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,168,220,6,0,0,0,0,0,5,0,0,0,243,0,0,0,168,218,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,160,219,6,0,0,0,0,0,5,0,0,0,243,0,0,0,160,217,6,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,152,218,6,0,0,0,0,0,5,0,0,0,243,0,0,0,152,216,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,144,217,6,0,0,0,0,0,1,9,9,7,9,9,8,8,9,9,9,9,9,9,9,8,9,9,7,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,6,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,5,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,5,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,6,7,7,7,7,7,7,8,8,9,9,9,9,7,7,8,8,8,9,9,9,9,8,8,6,7,7,8,8,8,8,8,8,9,8,8,9,8,9,9,8,8,10,8,8,10,9,9,10,8,8,6,6,6,8,6,6,8,7,7,8,7,7,10,8,8,9,7,7,9,7,7,10,8,8,9,7,7,7,7,7,10,8,8,11,9,9,10,9,9,11,9,9,11,8,8,11,9,9,12,9,9,12,8,8,7,7,7,10,9,9,10,9,9,10,9,9,11,10,10,10,9,9,11,9,10,11,10,11,10,9,9,9,8,8,10,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,9,9,11,10,10,11,9,9,8,8,8,11,9,9,11,9,9,11,9,9,12,9,9,12,8,8,11,9,9,12,9,9,12,8,8,8,7,7,10,9,9,10,9,9,10,9,9,11,11,11,11,9,9,11,10,10,11,11,11,11,9,9,10,9,9,11,9,9,11,9,10,11,10,10,11,10,10,11,9,9,11,10,10,11,10,10,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,7,7,7,8,8,7,8,8,7,9,9,11,11,11,9,8,8,8,9,9,12,11,12,9,8,8,6,7,7,10,11,11,10,10,10,11,11,11,14,14,14,12,11,12,11,11,11,15,15,14,13,12,12,5,6,6,8,5,5,8,7,7,8,7,7,12,10,10,10,7,6,9,8,8,12,10,10,10,6,6,7,8,8,12,10,10,12,10,10,11,10,10,16,14,14,13,10,10,12,10,10,15,14,14,14,10,10,7,7,7,13,11,11,13,11,11,12,11,11,16,14,14,14,12,12,12,11,11,18,15,15,14,12,12,10,9,10,14,11,11,13,11,11,12,11,11,17,14,14,14,11,11,13,11,11,16,15,15,14,11,11,7,8,8,13,11,11,12,10,10,12,10,10,16,14,13,13,10,10,12,10,10,17,14,14,14,10,10,8,7,7,12,11,11,13,11,11,12,11,11,16,15,14,14,12,12,12,11,11,16,15,15,14,12,12,11,10,10,14,11,11,13,11,11,13,11,11,17,14,14,14,11,11,13,11,11,18,14,15,15,11,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,1,7,6,15,15,7,8,8,15,15,8,8,8,15,15,0,13,13,16,16,0,14,14,16,16,7,9,9,16,16,10,11,11,17,17,10,8,8,15,16,0,14,14,18,18,0,14,14,16,16,9,9,9,16,16,12,11,11,17,17,10,9,9,15,15,0,14,14,19,19,0,14,14,16,16,0,15,15,18,17,0,0,0,20,20,0,13,13,16,16,0,17,17,22,20,0,15,15,17,17,0,15,15,18,18,0,22,21,20,21,0,13,13,16,16,0,18,18,0,22,0,15,15,17,17,6,7,7,13,13,9,10,10,15,15,11,10,10,15,15,0,21,22,18,18,0,0,0,18,18,10,10,10,15,15,12,13,13,17,17,12,11,11,15,15,0,22,22,18,18,0,0,21,18,18,12,11,11,15,15,15,14,14,18,18,13,11,11,15,15,0,0,21,18,19,0,21,22,18,19,0,22,0,18,19,0,0,0,0,0,0,21,21,18,18,0,22,0,0,21,0,0,0,19,18,0,0,0,18,19,0,0,0,0,0,0,20,20,18,17,0,0,22,0,21,0,0,0,19,19,6,6,6,13,13,8,6,6,11,11,9,7,7,13,13,0,10,10,11,11,0,12,12,14,14,9,8,8,14,14,12,10,10,13,13,10,7,7,13,13,0,11,11,15,15,0,11,11,13,13,9,8,8,14,14,13,10,10,13,14,11,7,7,13,13,0,11,11,15,15,0,11,11,13,13,0,12,12,15,15,0,21,21,17,17,0,10,10,13,13,0,14,14,20,20,0,12,12,13,13,0,12,12,15,15,0,21,22,17,18,0,10,10,13,13,0,16,16,20,21,0,12,12,13,13,0,11,11,13,13,0,12,12,16,16,0,12,12,16,16,0,16,16,0,21,0,17,18,0,0,0,12,12,15,15,0,15,15,18,18,0,12,12,16,16,0,16,16,21,22,0,17,17,22,21,0,12,12,16,16,0,15,15,19,19,0,12,12,16,16,0,16,16,22,22,0,17,16,22,0,0,17,18,0,0,0,0,0,0,0,0,15,15,21,20,0,19,20,0,22,0,18,18,0,0,0,18,17,0,0,0,0,0,0,0,0,16,16,22,21,0,20,20,0,22,0,20,19,0,0,0,11,11,12,12,0,10,10,11,11,0,11,11,12,12,0,12,12,10,10,0,13,13,12,12,0,11,11,13,13,0,13,13,12,12,0,10,10,12,12,0,13,13,14,13,0,12,12,12,12,0,12,12,13,13,0,14,14,13,13,0,10,10,12,12,0,13,13,14,14,0,13,12,12,12,0,14,14,14,14,0,21,21,16,16,0,12,12,12,12,0,16,16,20,21,0,13,13,11,11,0,14,14,14,14,0,20,20,16,15,0,12,12,12,12,0,17,17,20,20,0,13,13,11,11,7,8,8,16,16,11,10,10,15,15,12,10,10,17,17,0,14,14,16,15,0,15,15,17,17,11,9,9,16,16,14,12,12,17,17,13,9,9,16,15,0,14,14,19,18,0,14,14,16,16,12,10,10,17,18,16,13,13,17,18,14,10,10,16,16,0,14,14,19,19,0,14,15,17,17,0,15,15,18,19,0,0,0,20,20,0,13,13,17,17,0,17,18,0,22,0,15,15,16,17,0,15,15,18,18,0,0,0,20,21,0,14,14,17,17,0,19,18,0,0,0,16,16,17,17,8,7,7,14,14,12,11,11,15,15,13,11,11,15,15,0,0,0,18,19,0,21,20,18,18,12,10,11,15,16,14,13,13,18,18,14,11,11,15,15,0,20,20,19,18,0,20,0,18,18,13,11,11,16,16,17,15,15,19,19,14,12,12,15,15,0,21,0,18,20,0,22,22,18,19,0,22,22,19,19,0,0,0,0,0,0,21,22,19,18,0,0,0,0,21,0,0,0,19,19,0,0,22,20,20,0,0,0,0,0,0,22,0,18,18,0,0,0,0,22,0,0,0,19,20,11,10,10,14,14,14,11,11,13,13,14,11,11,15,15,0,14,13,12,12,0,15,15,16,16,13,11,11,15,15,16,13,13,15,15,15,10,10,14,15,0,14,14,16,16,0,14,14,15,15,13,11,11,15,15,18,14,14,15,15,15,10,10,15,14,0,14,14,16,16,0,14,14,15,15,0,15,15,17,16,0,21,22,18,18,0,13,13,14,14,0,18,17,20,21,0,15,15,14,14,0,15,16,16,17,0,0,0,19,18,0,13,13,15,14,0,19,19,0,0,0,15,15,14,14,0,12,12,14,13,0,13,13,16,16,0,12,12,16,16,0,16,16,22,0,0,17,18,0,22,0,13,13,16,16,0,15,15,18,18,0,12,12,16,16,0,16,16,22,22,0,17,17,0,0,0,13,13,17,17,0,16,16,19,20,0,12,12,17,17,0,17,17,22,0,0,17,17,22,21,0,18,18,0,0,0,0,0,0,0,0,16,16,21,21,0,19,19,0,0,0,18,18,0,22,0,18,18,0,22,0,0,0,0,0,0,16,16,22,0,0,20,20,0,0,0,19,18,0,0,0,12,12,15,15,0,12,12,15,14,0,13,13,15,15,0,14,14,14,14,0,15,15,16,16,0,13,13,15,16,0,15,15,16,16,0,12,12,15,15,0,14,14,16,16,0,14,14,15,15,0,13,13,15,16,0,15,15,16,16,0,12,12,15,15,0,15,15,17,17,0,14,14,15,15,0,15,15,17,17,0,21,21,19,19,0,13,13,14,14,0,17,17,22,0,0,14,14,15,15,0,15,15,17,17,0,22,0,18,20,0,13,13,15,15,0,18,18,0,22,0,15,15,14,15,8,8,8,17,16,12,10,10,16,16,13,10,10,17,16,0,15,15,17,17,0,15,15,17,17,12,11,11,18,18,15,12,12,18,18,15,10,10,16,17,0,14,14,18,18,0,14,14,17,17,13,10,10,16,16,17,14,14,17,17,15,10,10,16,15,0,15,15,19,20,0,14,14,15,16,0,16,16,19,19,0,0,0,21,22,0,13,13,17,17,0,18,17,0,21,0,15,15,17,17,0,15,15,18,19,0,0,22,0,21,0,13,13,16,17,0,19,19,0,22,0,16,15,16,16,9,8,8,14,14,12,11,11,15,15,13,11,11,15,15,0,21,20,19,18,0,0,0,19,18,12,11,11,16,15,15,13,13,17,18,14,11,11,15,15,0,22,22,19,18,0,22,21,18,18,14,11,11,15,15,17,14,14,18,18,15,12,12,15,15,0,22,22,20,19,0,0,21,18,18,0,0,22,20,20,0,0,0,0,0,0,20,21,18,18,0,0,0,21,21,0,0,0,20,19,0,22,21,19,19,0,0,0,0,0,0,0,22,17,18,0,0,22,0,22,0,22,0,19,19,0,11,11,15,15,0,11,11,14,14,0,12,12,15,15,0,15,15,14,14,0,16,16,16,16,0,12,12,16,16,0,14,14,16,16,0,11,11,15,15,0,15,15,17,17,0,15,15,15,15,0,12,12,16,16,0,14,14,15,15,0,11,11,15,15,0,15,15,17,17,0,15,15,14,15,0,16,16,17,17,0,0,0,19,19,0,14,14,15,15,0,18,18,21,0,0,15,15,14,15,0,16,16,17,17,0,21,0,19,19,0,14,14,15,15,0,20,20,22,0,0,16,15,14,14,0,12,12,13,13,0,12,12,16,16,0,12,12,16,16,0,16,16,22,21,0,18,17,21,0,0,13,13,16,16,0,15,15,18,19,0,12,12,16,16,0,16,17,22,0,0,17,17,0,22,0,13,13,17,16,0,15,15,19,19,0,12,12,16,16,0,16,16,21,20,0,17,16,22,0,0,18,18,22,21,0,0,0,0,0,0,15,16,21,21,0,19,19,0,0,0,18,17,0,0,0,18,18,21,0,0,0,0,0,0,0,16,16,22,22,0,20,21,0,0,0,18,19,0,22,0,13,13,16,16,0,12,12,15,15,0,13,13,16,16,0,14,14,15,15,0,15,15,17,17,0,13,13,17,16,0,15,15,17,17,0,12,12,16,16,0,15,15,17,17,0,14,14,16,16,0,13,13,16,17,0,15,15,17,17,0,12,12,16,16,0,14,14,17,17,0,14,14,16,16,0,16,16,17,17,0,21,0,21,19,0,13,13,16,16,0,17,17,0,0,0,15,15,16,16,0,16,15,18,18,0,22,0,20,20,0,13,13,15,15,0,18,18,0,0,0,15,15,15,15,0,12,12,17,17,0,14,14,17,17,0,14,14,17,17,0,17,17,18,17,0,17,17,19,18,0,13,13,17,17,0,16,16,18,18,0,13,13,16,16,0,17,17,19,19,0,16,16,17,17,0,13,13,18,18,0,17,17,18,18,0,13,13,17,17,0,17,17,19,19,0,16,17,17,17,0,17,17,19,19,0,21,0,21,19,0,14,14,16,16,0,20,19,0,21,0,16,16,16,16,0,17,18,19,19,0,0,0,0,21,0,15,15,16,17,0,21,20,0,0,0,17,18,16,17,0,9,9,14,14,0,14,14,15,16,0,14,14,15,15,0,0,0,18,18,0,21,0,18,19,0,12,12,15,15,0,16,16,17,17,0,14,14,14,14,0,22,0,19,18,0,22,0,17,18,0,14,14,16,15,0,18,18,19,18,0,14,15,15,15,0,0,21,20,20,0,0,0,18,18,0,21,21,19,19,0,0,0,0,0,0,21,21,18,18,0,22,0,20,20,0,22,0,19,19,0,22,0,19,20,0,0,0,0,0,0,0,21,17,18,0,0,0,22,22,0,0,0,19,18,0,18,20,16,16,0,21,20,17,17,0,0,21,18,18,0,22,21,18,18,0,0,22,19,19,0,20,20,17,17,0,0,0,18,18,0,19,20,17,17,0,22,0,19,21,0,22,21,18,18,0,20,19,17,18,0,0,0,19,19,0,20,20,17,17,0,22,22,21,21,0,20,0,18,18,0,22,22,18,18,0,0,0,20,22,0,20,20,16,16,0,0,0,21,0,0,21,20,16,17,0,22,0,19,20,0,0,0,21,20,0,19,21,17,17,0,0,0,0,0,0,21,21,17,17,0,12,12,13,13,0,14,14,16,16,0,14,14,16,16,0,18,18,0,0,0,19,18,22,0,0,13,13,16,16,0,16,16,18,18,0,13,13,16,16,0,17,18,21,0,0,18,18,21,0,0,13,13,16,16,0,17,17,19,20,0,13,13,16,17,0,18,18,21,0,0,18,18,21,0,0,18,19,0,21,0,0,0,0,0,0,16,16,21,20,0,20,20,0,0,0,18,19,0,0,0,18,18,0,0,0,0,0,0,0,0,16,16,0,21,0,22,22,0,0,0,19,19,0,0,0,16,16,19,20,0,17,16,22,21,0,17,17,21,20,0,19,18,0,22,0,19,19,22,22,0,16,15,22,22,0,19,19,0,21,0,15,15,20,20,0,18,19,0,21,0,18,18,22,22,0,16,16,21,20,0,20,19,21,22,0,16,15,20,20,0,19,19,0,22,0,18,18,21,0,0,19,18,21,22,0,0,0,0,0,0,16,16,19,21,0,20,22,0,22,0,18,18,20,21,0,19,18,0,22,0,0,0,22,0,0,16,16,20,20,0,21,21,0,0,0,18,18,21,0,0,12,12,17,17,0,15,14,17,17,0,14,14,18,18,0,17,17,17,18,0,18,18,18,18,0,13,13,18,18,0,16,17,19,18,0,13,13,16,17,0,17,17,18,19,0,17,17,17,17,0,13,13,17,17,0,17,18,18,18,0,13,13,16,16,0,18,18,19,20,0,16,17,17,16,0,17,18,19,18,0,0,0,22,21,0,15,15,16,16,0,20,20,21,22,0,17,17,16,16,0,16,17,18,18,0,0,0,21,21,0,15,15,16,16,0,21,20,0,0,0,17,17,16,16,0,10,10,14,14,0,14,14,15,15,0,14,14,15,15,0,22,0,18,18,0,0,0,19,19,0,13,13,15,16,0,17,16,18,18,0,14,14,15,15,0,21,21,19,18,0,22,21,18,17,0,14,14,15,15,0,18,18,19,18,0,15,15,14,14,0,22,21,19,19,0,22,21,17,18,0,0,0,19,19,0,0,0,0,0,0,20,22,17,17,0,0,22,22,20,0,0,0,19,18,0,21,22,19,18,0,0,0,0,0,0,22,22,17,18,0,0,0,21,22,0,0,0,19,18,0,20,20,17,17,0,21,21,17,18,0,21,22,18,18,0,21,0,18,18,0,22,0,19,19,0,19,21,18,18,0,0,22,18,18,0,22,21,17,17,0,22,0,20,20,0,0,0,18,18,0,22,21,18,18,0,21,0,19,19,0,20,21,17,17,0,0,22,22,20,0,21,22,17,17,0,0,21,19,18,0,0,0,21,21,0,21,20,16,17,0,0,0,0,0,0,21,0,17,17,0,21,0,19,20,0,0,0,20,22,0,20,20,17,17,0,0,0,0,0,0,21,21,17,17,0,12,12,13,13,0,14,14,16,16,0,14,14,16,16,0,18,18,21,0,0,19,19,22,0,0,13,13,16,16,0,16,16,18,18,0,13,13,16,16,0,18,18,21,22,0,18,18,0,22,0,13,13,16,16,0,17,17,20,18,0,13,13,16,16,0,19,18,0,22,0,18,18,22,21,0,18,19,0,0,0,0,0,0,0,0,16,16,21,21,0,21,21,0,0,0,18,19,0,0,0,19,19,21,0,0,0,0,0,0,0,16,16,0,21,0,20,20,0,0,0,20,20,0,0,0,16,16,21,20,0,18,17,21,22,0,17,18,0,21,0,18,19,22,22,0,19,19,0,22,0,16,17,21,22,0,20,19,0,0,0,16,16,20,21,0,19,19,0,0,0,19,19,0,22,0,17,17,21,21,0,19,20,0,0,0,16,16,0,20,0,19,20,0,21,0,18,18,0,22,0,19,20,22,22,0,0,0,0,22,0,17,17,0,21,0,21,21,0,0,0,18,19,23,21,0,20,19,0,0,0,0,0,0,0,0,17,17,0,20,0,0,0,0,0,0,19,19,23,22,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,4,5,5,9,9,12,9,9,12,12,12,10,10,13,13,13,11,11,12,12,13,13,13,12,12,13,10,10,13,13,13,13,13,13,13,13,10,10,13,12,13,11,11,13,13,13,14,14,13,12,13,10,10,13,13,12,13,13,13,13,13,10,10,12,12,13,11,11,13,13,13,14,14,12,12,13,12,12,13,13,13,13,13,13,13,13,11,11,12,12,13,11,11,13,13,13,14,14,12,12,13,14,14,13,13,14,13,13,14,14,14,14,14,12,12,13,14,14,13,13,14,14,14,12,12,12,8,8,12,12,13,12,12,11,11,13,11,11,11,11,14,12,12,11,11,14,12,12,10,11,14,12,12,12,12,14,12,12,12,12,13,13,13,11,11,14,12,12,11,11,14,12,12,12,12,14,12,12,12,12,14,12,12,12,12,14,13,13,11,11,14,12,12,11,11,14,12,12,12,12,14,13,13,12,12,14,12,12,12,12,14,13,13,11,11,14,12,12,11,11,14,13,13,11,11,15,13,13,12,12,14,12,12,12,12,15,13,13,12,12,14,12,12,11,11,15,13,13,11,11,12,9,9,11,11,13,7,7,11,11,13,8,8,12,12,14,10,10,10,10,14,14,14,11,11,14,8,8,12,12,14,14,14,12,12,14,7,7,11,11,14,9,9,12,12,14,14,14,11,11,14,8,8,12,12,14,14,14,12,12,14,7,7,11,11,14,9,9,12,12,14,14,14,11,11,14,10,10,12,12,14,14,14,13,13,14,9,9,11,11,14,10,10,12,11,15,14,14,11,11,14,15,15,12,12,15,14,14,14,14,15,14,14,11,11,15,14,14,12,12,15,14,14,11,11,14,11,11,10,10,15,10,10,10,10,15,10,10,10,10,15,11,11,9,9,15,12,13,9,9,15,11,11,11,11,15,13,13,11,11,15,10,10,10,10,15,11,11,10,10,15,13,13,11,11,15,11,11,11,11,15,13,13,11,11,15,10,10,10,10,15,11,11,10,10,15,13,13,10,11,15,12,12,11,11,15,13,13,11,10,15,11,11,10,10,15,11,12,10,9,15,13,13,10,10,15,14,14,11,11,15,13,13,11,11,15,14,14,10,10,15,13,13,10,10,15,14,14,10,10,14,13,13,10,10,15,13,13,10,10,15,13,13,10,10,14,14,14,8,9,15,14,14,9,9,15,14,14,11,11,15,14,14,10,10,15,14,14,10,10,15,14,14,11,11,15,14,14,10,10,15,14,14,11,11,15,14,14,10,10,15,14,14,10,10,15,14,14,10,10,15,14,14,9,9,15,14,14,11,11,15,14,14,11,11,15,14,14,10,10,15,14,14,10,10,14,14,14,9,9,15,15,15,11,11,15,14,14,12,12,15,15,15,10,10,15,14,15,10,10,15,15,15,9,9,15,10,10,13,13,17,8,8,12,12,17,10,9,13,13,18,11,11,12,12,18,14,14,12,12,17,9,9,13,13,17,13,13,12,12,18,8,8,12,12,18,10,10,12,12,18,14,14,12,12,18,10,10,13,13,18,13,13,13,13,18,9,9,12,12,18,10,10,13,13,18,14,14,12,12,18,11,11,13,13,18,14,14,13,13,18,10,10,12,12,17,11,11,12,12,18,14,14,12,12,18,14,14,13,13,18,14,14,13,13,19,14,15,12,12,18,14,14,12,12,18,15,15,12,12,13,7,7,11,11,14,15,15,11,11,14,16,15,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,11,12,14,15,15,12,12,13,15,15,11,11,14,15,15,11,11,15,15,15,12,12,14,15,15,12,12,14,16,16,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,15,15,15,12,12,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,14,15,12,12,15,15,15,12,12,15,16,16,12,12,15,15,15,12,12,14,15,15,12,12,15,15,15,12,12,13,13,13,11,11,14,14,15,11,11,14,14,14,12,12,14,15,15,10,10,15,15,15,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,15,15,12,12,15,15,15,11,11,14,15,15,12,12,14,14,15,11,11,14,15,15,11,11,14,15,15,12,12,15,15,15,11,11,15,15,15,12,12,14,15,15,12,12,14,15,15,10,10,14,15,15,11,11,15,15,15,10,10,15,15,15,12,12,15,15,15,14,14,15,15,15,11,11,15,15,15,11,11,15,15,15,11,11,14,10,10,10,10,15,9,9,12,11,15,10,10,12,12,15,11,11,11,11,15,13,13,12,12,16,10,10,12,12,15,13,13,12,12,15,9,9,11,11,15,10,10,13,12,15,13,13,11,11,15,10,10,12,12,15,13,13,12,12,15,9,9,11,11,15,10,10,12,12,15,13,13,11,11,15,11,11,12,12,15,13,13,13,13,15,10,10,11,11,15,11,11,12,12,15,13,14,11,11,15,14,14,13,13,16,14,14,20,19,15,14,14,11,11,15,13,14,12,12,15,14,14,11,11,14,13,13,10,10,14,14,13,11,11,15,13,14,12,12,15,14,14,12,12,15,14,14,11,11,15,14,14,12,12,15,15,14,13,13,15,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,13,13,15,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,15,14,14,11,11,15,15,15,12,12,15,15,15,13,13,16,14,14,12,12,15,15,15,13,13,15,15,15,12,12,15,15,15,12,12,14,10,10,13,13,17,9,9,12,12,17,9,9,13,13,17,11,11,12,12,18,14,14,12,12,18,10,10,13,13,18,14,13,12,12,18,9,9,12,12,18,10,10,12,13,18,14,14,12,12,17,9,9,12,12,17,13,14,12,12,17,9,9,12,12,17,10,10,12,12,17,14,14,11,11,18,11,11,12,12,18,14,14,12,13,18,10,10,12,12,18,11,11,12,12,18,14,14,11,11,18,15,15,12,12,18,14,14,13,13,18,14,15,12,12,17,14,14,12,12,17,15,15,12,12,13,7,7,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,14,15,15,11,11,14,15,15,12,12,14,15,15,11,11,15,15,15,11,11,15,15,15,12,12,14,15,15,12,12,14,15,16,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,15,15,15,12,12,15,16,16,12,12,15,15,15,12,12,15,15,15,12,12,15,15,15,12,12,13,13,13,12,12,14,14,14,11,11,14,14,14,12,12,14,14,14,10,10,15,15,15,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,14,14,12,12,15,15,14,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,14,14,11,11,15,14,14,10,10,14,15,15,12,12,14,14,14,12,12,14,15,15,10,10,14,15,15,11,11,15,15,15,10,10,15,15,15,12,12,15,14,14,13,13,15,15,15,10,10,15,14,14,11,11,15,15,15,10,10,14,10,10,10,10,14,9,9,12,12,15,10,10,12,12,14,11,11,11,11,15,13,14,12,12,15,10,10,13,13,15,13,13,12,12,15,9,9,12,12,15,10,10,13,13,15,13,14,11,11,15,10,10,12,12,15,13,13,12,12,15,9,9,11,11,15,10,10,12,12,15,13,13,11,11,15,11,11,12,12,15,13,13,13,13,15,10,10,11,11,15,11,11,12,12,15,14,14,11,11,15,14,14,13,13,15,14,14,20,19,15,14,14,11,11,15,14,14,12,12,15,14,14,11,11,14,13,13,11,11,15,13,13,11,11,15,14,13,12,12,15,14,14,11,12,15,14,14,11,11,15,14,14,12,12,14,14,14,13,13,15,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,13,13,14,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,15,14,14,11,11,14,14,14,12,12,15,15,15,13,13,16,14,14,12,12,15,15,15,13,13,15,14,14,12,12,15,15,15,12,12,15,11,11,13,13,18,10,10,12,12,17,11,11,12,12,18,12,12,11,11,18,14,14,12,12,18,10,10,13,13,18,14,14,12,12,18,10,10,12,12,18,11,11,12,12,18,14,14,12,12,18,11,11,12,13,18,14,14,12,12,18,10,10,12,12,18,11,11,12,12,18,14,14,11,11,18,11,11,12,12,18,14,14,12,12,17,10,10,11,11,17,12,12,11,11,17,14,14,11,11,18,15,15,12,12,18,14,14,13,13,18,15,15,11,11,18,15,14,12,12,18,15,15,11,11,14,8,8,11,11,14,15,15,10,10,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,15,15,15,11,11,15,15,15,12,12,14,15,15,10,10,15,15,15,11,11,15,15,15,12,12,15,15,15,11,11,15,15,15,13,13,14,15,15,10,10,15,15,15,11,11,15,15,15,12,12,15,15,15,12,12,15,16,16,12,12,15,14,14,11,11,15,15,15,11,11,15,15,15,12,12,16,15,15,13,13,15,16,16,13,13,16,15,15,12,12,15,15,15,12,12,15,15,15,12,12,14,13,13,11,11,14,14,14,11,11,14,14,14,12,12,15,14,14,11,11,15,15,14,11,11,15,14,14,12,12,15,14,14,12,12,14,15,15,11,11,15,14,14,12,12,15,14,14,11,11,15,14,15,12,12,15,14,14,12,12,14,15,15,11,11,15,14,14,11,11,15,14,14,11,11,15,15,14,12,12,15,14,14,12,12,15,15,15,10,11,15,14,14,11,11,15,15,15,10,10,15,15,15,12,12,16,14,14,13,13,15,15,15,11,11,15,14,14,11,11,15,15,15,11,11,14,11,11,9,9,14,10,10,12,12,15,11,11,12,12,15,12,12,12,12,15,14,14,13,13,15,11,11,12,12,15,14,14,13,13,14,10,10,12,12,15,11,11,13,13,15,14,14,12,12,15,10,10,12,12,14,14,14,13,13,14,10,10,11,11,15,11,11,12,12,15,14,14,12,12,15,12,12,13,13,15,14,14,14,14,15,11,11,11,11,15,12,11,12,12,15,14,14,11,11,15,15,15,13,14,15,14,14,20,19,15,14,14,12,12,15,14,14,13,13,15,14,14,12,12,14,13,13,10,10,14,13,13,11,11,14,13,13,11,11,15,14,14,12,12,15,14,14,12,12,15,14,14,12,11,14,14,14,13,13,15,14,14,11,11,15,14,14,11,11,15,14,14,14,14,15,14,14,11,12,15,14,14,13,13,14,14,14,11,11,15,14,14,11,11,15,14,14,14,14,15,14,14,12,12,15,14,14,13,13,15,14,14,11,11,14,14,14,12,12,15,14,14,13,13,15,15,15,13,13,15,14,14,13,13,15,15,15,13,13,15,14,14,13,13,15,15,15,13,13,15,14,14,13,13,18,15,15,12,12,18,15,15,12,12,18,16,16,11,11,18,17,17,12,12,18,15,15,13,13,18,17,17,12,12,18,15,15,12,12,18,15,16,12,12,18,17,17,12,12,18,15,15,13,12,17,16,17,12,12,17,15,15,11,12,18,15,15,12,12,18,17,17,11,11,18,16,16,12,12,18,17,16,12,12,18,15,15,11,11,18,15,15,12,12,18,17,17,11,11,18,17,17,12,12,18,16,16,13,13,18,17,17,11,11,17,16,16,11,11,18,17,17,11,11,15,15,15,11,11,16,15,15,11,11,16,15,15,11,11,16,15,15,12,12,17,15,15,14,14,16,15,15,11,11,17,15,15,14,14,16,15,15,11,11,16,15,15,12,12,18,15,15,13,13,16,15,15,11,11,17,15,15,14,14,16,15,15,11,11,16,15,15,12,12,17,15,15,13,13,16,15,15,12,12,17,16,15,14,14,16,15,15,11,11,16,15,15,12,12,18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,18,14,15,13,13,18,15,15,14,14,18,15,15,13,13,15,13,13,12,12,15,14,14,12,12,16,14,14,12,12,16,14,14,12,12,17,14,15,12,12,16,14,14,12,12,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,17,14,14,12,12,16,14,14,12,12,17,14,14,13,13,15,15,15,11,11,16,14,14,12,12,17,14,14,12,12,16,15,15,12,12,17,14,14,13,12,16,15,15,11,11,16,14,14,12,12,17,15,15,11,11,17,15,15,13,13,17,14,14,13,13,18,15,15,12,12,17,14,14,12,12,17,15,15,12,12,14,15,15,9,9,14,15,15,12,12,15,16,15,13,13,15,15,15,14,14,15,15,15,21,19,15,15,15,13,13,15,15,15,19,19,15,15,15,12,12,15,16,16,14,14,15,15,15,19,19,15,16,15,13,13,15,16,16,19,20,15,15,15,12,13,15,16,16,14,14,15,15,15,20,19,15,15,15,14,14,15,16,16,19,19,15,15,15,14,13,15,15,15,14,14,15,15,15,19,19,15,16,16,20,19,15,17,16,21,20,15,15,15,20,19,15,16,16,20,20,15,15,15,19,20,14,13,13,10,10,14,14,14,11,11,14,14,14,12,12,15,14,14,13,13,15,15,14,20,20,15,14,14,12,12,14,14,14,19,19,15,14,14,11,11,15,14,14,12,12,15,14,14,20,19,15,14,14,12,12,14,14,14,20,20,14,14,14,11,11,15,14,14,12,12,15,14,14,20,21,15,14,14,13,13,15,14,14,20,20,15,14,14,12,12,15,14,14,13,13,14,15,15,20,20,15,15,15,20,19,15,14,14,20,19,15,15,15,20,20,15,14,14,21,20,15,15,15,20,20,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,6,7,7,7,8,8,7,8,8,10,11,11,9,8,8,8,8,8,11,11,12,9,8,8,5,7,7,9,11,11,10,11,11,10,11,11,12,14,14,11,12,12,10,12,12,13,14,14,12,12,12,5,6,6,7,6,6,8,7,7,8,7,7,11,10,10,10,7,7,9,8,8,12,11,11,10,7,7,7,7,7,11,10,10,12,10,10,11,10,10,15,13,13,13,10,10,12,11,11,15,13,13,14,11,11,7,7,7,11,11,11,12,11,11,12,11,11,14,14,14,13,12,12,12,12,12,16,15,15,14,12,12,0,10,10,0,11,11,0,12,12,0,11,11,0,14,14,0,11,11,0,12,12,0,15,15,0,11,11,7,8,8,12,11,10,12,10,10,12,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,12,11,11,12,11,11,15,14,14,14,12,12,13,12,12,15,14,14,15,13,13,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,13,13,0,15,14,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,5,5,0,8,8,0,8,8,0,9,9,0,10,10,0,8,8,0,8,8,0,10,10,0,8,8,0,7,7,0,8,8,0,7,7,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,7,7,0,6,6,0,7,7,0,7,7,0,10,10,0,6,6,0,7,7,0,10,10,0,5,5,0,8,8,0,7,7,0,8,8,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,7,7,0,6,6,0,9,10,0,10,10,0,10,10,0,11,11,0,9,9,0,10,10,0,11,11,0,9,9,0,8,8,0,8,8,0,8,8,0,9,9,0,9,9,0,7,7,0,8,8,0,9,9,0,7,7,0,8,8,0,7,7,0,7,7,0,8,8,0,9,9,0,7,7,0,7,7,0,8,8,0,6,6,0,6,6,0,10,10,0,10,10,0,10,10,0,12,12,0,9,9,0,10,10,0,12,12,0,9,9,0,8,8],"i8",L3,x.GLOBAL_BASE+446300),d3([7,7,0,7,7,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,6,6,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,6,6,5,7,8,0,8,8,6,9,9,7,10,10,0,8,8,0,9,9,0,12,12,0,8,8,4,7,7,6,10,10,0,12,12,7,11,11,8,12,12,0,12,12,0,13,12,0,15,15,0,12,12,0,7,7,0,7,7,0,7,7,0,8,8,0,10,10,0,7,7,0,8,8,0,11,11,0,7,7,5,7,7,8,9,9,0,10,10,8,9,9,11,11,11,0,10,9,0,11,11,0,13,13,0,10,10,6,7,7,8,10,10,0,12,12,9,10,10,10,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,10,10,0,11,11,0,11,11,0,11,11,0,13,13,0,11,11,0,11,11,0,15,15,0,10,10,0,8,8,0,10,10,0,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,11,11,0,7,7,0,10,10,0,12,12,0,10,10,0,12,12,0,12,12,0,13,13,0,14,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,9,9,0,0,0,8,8,0,0,0,9,9,0,0,0,12,12,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,5,5,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,5,5,0,0,0,7,7,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,5,5,0,0,0,7,7,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,11,0,0,0,9,9,0,0,0,10,10,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,7,7,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,8,8,0,0,0,10,11,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,7,7,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,7,8,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,9,9,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,9,9,0,0,0,10,10,0,0,0,12,12,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,5,16,9,9,13,18,21,4,2,21,6,6,10,15,21,16,19,6,5,7,10,13,16,8,6,5,4,4,8,13,16,8,5,6,4,4,7,12,15,13,10,9,7,7,9,13,16,18,15,13,12,9,7,10,14,21,18,13,13,7,5,8,12,2,0,0,0,64,0,0,0,192,58,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,11,7,0,0,0,0,0,0,0,0,0,176,11,7,0,0,0,0,0,0,0,0,0,216,11,7,0,0,12,7,0,0,0,0,0,0,0,0,0,40,12,7,0,80,12,7,0,0,0,0,0,0,0,0,0,120,12,7,0,160,12,7,0,0,0,0,0,0,0,0,0,200,12,7,0,240,12,7,0,160,12,7,0,0,0,0,0,24,13,7,0,64,13,7,0,160,8,7,0,200,8,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,72,11,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,64,11,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,8,7,0,80,8,7,0,0,0,0,0,0,0,0,0,120,8,7,0,160,8,7,0,200,8,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,88,10,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,8,11,7,0,0,0,0,0,2,0,0,0,25,0,0,0,32,10,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,10,7,0,0,0,0,0,2,0,0,0,9,0,0,0,0,10,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,16,10,7,0,0,0,0,0,1,0,0,0,25,0,0,0,120,9,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,152,9,7,0,0,0,0,0,1,0,0,0,25,0,0,0,240,8,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,16,9,7,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,4,4,5,5,5,4,5,4,5,5,5,5,6,5,6,5,6,5,6,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,8,8,8,8,9,9,10,10,10,10,4,6,5,8,7,9,9,9,9,10,9,11,9,4,5,6,7,8,9,9,9,9,9,10,9,10,8,9,8,9,8,10,9,11,9,12,10,12,10,8,8,9,8,9,9,10,9,11,10,12,10,12,9,10,10,11,10,12,11,12,11,12,12,12,12,9,10,10,11,11,11,11,11,12,12,12,12,12,10,11,11,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,13,12,13,12,13,12,12,11,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,12,13,12,12,12,13,12,13,12,13,12,13,12,13,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,4,13,9,9,12,15,17,4,2,18,5,7,10,14,18,11,8,6,5,6,8,11,14,8,5,5,3,5,8,11,13,9,6,7,5,5,7,9,10,11,10,9,8,6,6,8,10,14,14,11,11,9,8,9,10,17,17,14,13,10,9,10,10,5,0,0,0,243,0,0,0,184,57,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,176,58,7,0,0,0,0,0,5,0,0,0,53,12,0,0,104,45,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,57,7,0,0,0,0,0,5,0,0,0,243,0,0,0,96,44,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,88,45,7,0,0,0,0,0,5,0,0,0,243,0,0,0,88,43,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,80,44,7,0,0,0,0,0,5,0,0,0,243,0,0,0,80,42,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,72,43,7,0,0,0,0,0,5,0,0,0,53,12,0,0,0,30,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,42,7,0,0,0,0,0,5,0,0,0,53,12,0,0,176,17,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,232,29,7,0,0,0,0,0,1,0,0,0,7,0,0,0,136,17,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,144,17,7,0,0,0,0,0,5,0,0,0,243,0,0,0,128,16,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,120,17,7,0,0,0,0,0,5,0,0,0,243,0,0,0,120,15,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,112,16,7,0,0,0,0,0,5,0,0,0,243,0,0,0,112,14,7,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,104,15,7,0,0,0,0,0,5,0,0,0,243,0,0,0,104,13,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,96,14,7,0,0,0,0,0,1,9,9,6,9,9,5,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,7,7,7,7,7,7,7,8,8,9,9,9,9,7,7,8,8,8,9,9,9,9,7,8,6,7,7,8,8,8,8,8,8,9,8,8,10,9,9,10,8,8,10,8,8,10,9,9,10,8,8,6,6,6,8,6,6,8,7,7,8,7,7,10,8,8,9,7,7,9,7,7,10,8,9,9,7,7,7,7,7,10,8,8,11,8,8,10,8,8,12,9,9,12,8,8,11,9,9,12,9,9,11,8,8,7,7,7,10,9,9,10,9,9,10,9,9,11,10,10,10,9,9,11,9,9,11,10,10,11,9,9,9,8,8,10,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,9,9,11,10,10,11,9,9,8,8,8,11,9,9,11,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,9,9,12,8,8,8,7,7,10,9,9,10,9,9,11,9,9,11,11,11,11,9,9,11,10,10,11,11,11,11,9,9,10,9,9,11,9,9,11,9,10,11,10,9,11,10,10,11,9,9,11,9,10,11,10,10,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,6,6,7,7,7,7,8,8,7,9,9,11,11,11,9,8,8,8,9,9,12,11,11,9,8,8,6,7,7,10,11,10,10,10,10,11,11,10,14,13,14,12,11,11,11,11,11,15,14,14,13,12,12,5,6,6,8,5,5,8,7,7,8,8,8,12,10,10,9,7,7,9,7,8,12,10,10,10,7,7,7,8,8,12,10,10,12,10,10,11,10,10,15,13,13,13,10,10,11,10,10,16,13,14,14,10,10,7,7,7,12,11,11,12,11,11,11,11,11,16,15,15,14,12,12,12,11,11,16,15,16,14,12,12,10,9,9,14,11,11,13,11,11,12,11,11,16,14,14,14,11,11,12,11,11,17,15,15,14,11,11,7,8,8,12,11,11,12,10,10,12,10,10,16,14,13,14,10,10,12,10,10,17,14,14,14,10,10,8,7,7,13,11,11,12,11,11,12,11,11,16,15,14,14,12,12,12,11,11,16,15,14,15,12,12,11,10,10,13,11,11,13,12,11,13,11,11,17,14,14,14,11,11,13,11,11,17,14,15,14,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,14,14,6,7,7,14,14,7,7,7,15,15,0,12,12,15,15,0,13,13,15,15,7,8,8,15,15,10,10,10,16,16,9,8,8,15,15,0,13,13,18,17,0,13,13,16,16,8,8,8,15,15,12,11,11,16,16,9,8,8,15,15,0,13,13,18,18,0,13,13,16,16,0,14,14,17,17,0,20,0,19,20,0,12,12,16,16,0,16,16,20,22,0,14,14,16,16,0,14,14,17,17,0,20,22,20,19,0,13,13,15,16,0,17,18,0,21,0,15,15,16,16,5,7,7,13,13,8,9,9,14,14,10,10,10,14,14,0,20,22,18,18,0,22,21,18,17,9,10,10,14,14,12,12,12,17,17,12,10,10,14,14,0,0,20,17,17,0,22,21,17,18,11,10,10,14,14,14,13,13,18,18,12,11,11,14,14,0,22,21,18,19,0,20,0,17,17,0,22,0,18,18,0,0,0,0,0,0,20,20,17,17,0,22,0,22,21,0,21,0,19,18,0,22,22,18,18,0,0,0,0,0,0,21,0,17,17,0,22,0,20,20,0,0,0,19,18,6,6,6,12,12,8,6,6,10,10,8,6,6,13,12,0,10,10,11,11,0,11,11,13,13,8,7,7,13,13,11,9,9,13,13,10,6,6,12,12,0,10,10,14,14,0,10,10,13,13,9,7,7,13,13,12,10,10,13,13,10,6,6,12,12,0,11,11,15,15,0,10,10,13,13,0,12,12,15,14,0,19,20,16,17,0,9,9,13,13,0,14,14,20,21,0,12,11,13,12,0,12,12,15,14,0,20,19,17,17,0,10,10,12,13,0,15,15,22,21,0,12,12,12,13,0,10,10,12,12,0,11,11,15,15,0,11,11,15,15,0,15,15,22,22,0,16,17,0,0,0,11,11,15,15,0,14,14,18,18,0,11,11,16,16,0,16,15,0,21,0,16,16,0,0,0,12,12,15,15,0,14,14,19,19,0,11,11,15,15,0,15,15,22,0,0,16,16,22,0,0,16,16,0,21,0,0,0,0,0,0,15,15,19,20,0,18,18,0,0,0,17,17,0,0,0,17,17,0,0,0,0,0,0,0,0,16,15,22,21,0,20,20,0,0,0,18,18,0,0,0,10,10,12,12,0,10,10,11,11,0,11,11,12,12,0,11,11,9,9,0,13,12,12,12,0,11,11,13,13,0,13,13,12,12,0,10,10,12,12,0,13,12,13,13,0,12,12,12,12,0,11,11,13,13,0,13,13,12,12,0,10,10,12,12,0,13,13,14,13,0,12,12,12,12,0,14,13,13,14,0,20,21,15,15,0,11,11,12,12,0,15,16,20,20,0,12,13,10,10,0,13,13,14,13,0,20,20,15,15,0,11,11,12,12,0,16,17,21,21,0,13,13,11,11,6,7,7,16,15,11,9,9,14,15,12,9,9,16,16,0,13,13,15,15,0,14,14,17,17,10,9,9,16,16,14,12,12,16,16,12,9,9,15,15,0,13,13,17,18,0,13,13,15,15,12,10,10,17,17,15,12,12,17,17,13,9,9,16,16,0,13,13,18,19,0,14,14,16,16,0,15,15,18,18,0,0,0,20,19,0,12,12,17,16,0,16,17,0,21,0,14,15,16,16,0,15,15,18,18,0,0,22,19,21,0,13,13,16,16,0,18,17,22,22,0,15,15,16,16,7,7,7,13,13,11,10,10,15,15,12,10,10,14,14,0,21,0,18,17,0,21,22,18,18,11,10,10,15,15,14,12,12,17,17,14,11,11,14,14,0,21,20,18,18,0,22,21,18,17,12,11,10,16,16,16,14,14,17,19,14,11,11,15,15,0,0,22,19,19,0,21,22,18,18,0,21,0,18,19,0,0,0,22,0,0,22,21,17,17,0,0,0,20,22,0,0,21,18,18,0,0,0,19,20,0,0,0,0,0,0,0,21,17,17,0,0,0,22,21,0,0,0,19,19,10,9,9,14,13,13,10,10,12,12,13,10,10,14,14,0,13,13,12,12,0,15,14,16,15,13,10,10,14,14,15,12,12,14,14,15,10,10,14,14,0,14,14,15,15,0,14,13,14,14,13,10,10,15,15,17,13,13,15,15,14,10,10,14,14,0,14,14,15,16,0,14,14,15,15,0,15,15,16,16,0,21,22,17,18,0,12,12,14,14,0,17,17,20,21,0,14,14,14,14,0,15,15,16,16,0,21,22,18,18,0,13,13,14,14,0,18,18,22,0,0,15,15,14,14,0,11,11,13,13,0,12,12,16,15,0,12,12,16,16,0,16,16,0,0,0,16,17,0,22,0,12,12,16,16,0,14,14,17,18,0,11,11,16,16,0,15,15,0,21,0,16,16,21,22,0,12,12,16,16,0,15,15,19,19,0,12,12,17,16,0,16,16,21,22,0,16,16,0,0,0,17,17,0,22,0,0,0,0,0,0,15,15,19,20,0,17,19,0,0,0,17,17,22,0,0,17,17,0,22,0,0,0,0,0,0,15,15,21,0,0,19,20,0,0,0,19,18,22,0,0,11,12,14,14,0,11,11,14,14,0,12,12,15,15,0,13,13,13,13,0,14,14,16,16,0,12,12,15,15,0,14,14,16,15,0,11,11,15,15,0,13,13,16,16,0,13,13,15,15,0,12,12,15,15,0,15,14,16,16,0,11,11,15,15,0,14,14,17,17,0,13,13,15,15,0,15,15,16,16,0,0,0,18,18,0,12,12,14,14,0,16,16,22,0,0,14,14,15,15,0,15,15,16,17,0,21,22,18,18,0,13,13,15,14,0,18,17,22,0,0,14,14,15,15,8,8,8,16,15,12,10,10,16,15,12,10,10,16,16,0,14,14,16,17,0,14,14,17,16,12,10,10,17,18,14,12,12,18,18,14,10,10,16,16,0,14,14,18,18,0,14,14,16,16,12,9,9,16,16,17,13,13,16,17,14,9,9,15,15,0,14,14,18,19,0,13,13,15,15,0,15,15,18,19,0,0,0,22,21,0,13,13,16,16,0,16,16,22,0,0,15,15,16,16,0,14,14,18,17,0,0,0,20,0,0,13,13,16,16,0,18,18,0,0,0,15,15,16,16,8,7,7,13,13,12,10,10,15,15,12,10,10,14,14,0,22,22,19,18,0,0,0,18,18,12,10,10,15,15,14,13,13,17,17,14,11,11,15,15,0,19,20,18,18,0,22,21,17,18,13,11,11,15,15,16,13,13,18,18,14,11,11,14,15,0,22,21,20,19,0,22,21,17,17,0,0,22,19,18,0,0,0,0,0,0,22,20,17,17,0,0,0,21,20,0,0,0,19,17,0,0,22,19,19,0,0,0,0,0,0,22,20,18,17,0,0,0,0,0,0,0,0,18,18,0,10,10,14,14,0,11,11,14,14,0,11,11,15,15,0,14,14,14,14,0,15,15,16,16,0,11,11,16,16,0,13,13,16,16,0,11,11,15,15,0,14,14,16,16,0,14,14,15,15,0,11,11,15,15,0,13,13,15,15,0,10,10,15,15,0,15,15,17,17,0,14,14,14,14,0,16,16,16,16,0,0,22,19,19,0,13,13,14,14,0,17,17,0,0,0,15,15,14,14,0,16,16,17,17,0,0,22,18,18,0,13,13,14,14,0,21,18,0,0,0,15,15,14,14,0,11,11,13,13,0,12,12,15,15,0,12,12,16,15,0,16,16,0,0,0,17,17,22,22,0,12,12,16,16,0,14,14,18,18,0,11,12,16,16,0,15,16,0,21,0,16,16,22,21,0,12,12,16,16,0,15,15,19,20,0,11,12,16,16,0,15,15,20,22,0,16,16,0,22,0,17,17,22,0,0,0,0,0,0,0,15,15,21,22,0,19,18,0,0,0,17,17,0,0,0,17,17,0,22,0,0,0,0,0,0,16,15,22,0,0,19,19,0,0,0,17,18,0,0,0,12,12,15,15,0,12,12,15,15,0,12,12,15,15,0,13,13,14,14,0,15,15,16,17,0,12,12,16,16,0,14,14,16,16,0,12,11,15,16,0,14,14,16,17,0,14,14,16,16,0,13,12,16,16,0,15,15,16,16,0,11,11,15,15,0,14,14,16,16,0,14,14,15,15,0,15,15,18,17,0,0,22,0,20,0,13,13,15,15,0,16,17,22,22,0,14,14,15,15,0,15,15,17,18,0,20,0,19,19,0,13,13,15,15,0,18,18,22,0,0,14,14,15,15,0,11,11,16,16,0,14,14,17,16,0,13,13,17,17,0,16,16,17,17,0,17,17,18,19,0,12,12,16,17,0,15,15,18,18,0,12,12,16,16,0,16,16,19,18,0,16,16,17,16,0,12,13,17,17,0,17,16,18,17,0,13,12,16,16,0,16,16,18,19,0,16,16,16,17,0,16,16,18,18,0,22,0,22,22,0,13,13,16,16,0,19,18,22,20,0,16,15,16,16,0,16,17,18,18,0,0,0,22,20,0,14,14,16,16,0,19,19,0,0,0,16,16,16,16,0,9,9,13,13,0,13,13,15,15,0,14,14,15,15,0,0,22,17,18,0,22,0,18,19,0,12,12,15,15,0,15,16,17,17,0,14,14,14,14,0,22,0,18,18,0,21,22,17,17,0,13,13,15,15,0,17,17,17,18,0,14,14,15,15,0,22,21,21,19,0,20,21,17,17,0,21,21,19,18,0,0,0,0,0,0,21,21,17,17,0,0,0,22,22,0,0,22,19,18,0,0,21,19,18,0,0,0,0,22,0,19,20,17,17,0,0,0,0,22,0,0,0,19,18,0,19,19,15,16,0,21,19,16,17,0,0,21,17,17,0,0,22,17,17,0,22,22,18,19,0,20,20,16,16,0,0,22,18,18,0,20,19,16,17,0,22,21,20,19,0,0,21,17,17,0,21,20,17,17,0,0,0,18,18,0,19,19,17,16,0,22,0,19,19,0,21,22,17,18,0,0,22,19,18,0,0,0,19,20,0,19,19,16,16,0,22,22,22,0,0,20,22,16,16,0,22,20,18,19,0,0,0,20,19,0,20,20,16,16,0,0,0,0,0,0,22,20,17,16,0,11,11,13,13,0,14,13,15,15,0,13,13,16,15,0,18,17,21,0,0,18,18,21,0,0,12,12,15,15,0,15,16,17,18,0,12,12,15,15,0,17,17,22,20,0,17,18,22,0,0,12,12,17,16,0,16,17,19,19,0,13,13,16,16,0,17,17,0,22,0,17,17,0,21,0,18,18,20,22,0,0,0,0,0,0,15,15,21,20,0,20,19,0,0,0,18,18,22,0,0,17,17,22,0,0,0,0,0,0,0,15,16,20,22,0,20,21,0,0,0,19,18,0,0,0,15,15,19,19,0,17,16,20,20,0,16,17,20,21,0,18,17,0,0,0,19,19,0,0,0,15,15,21,19,0,19,19,0,0,0,15,15,22,22,0,18,18,0,22,0,17,18,22,21,0,15,15,20,19,0,19,19,0,0,0,15,15,20,22,0,18,19,20,0,0,18,17,21,21,0,18,18,19,22,0,0,0,0,0,0,15,15,20,19,0,19,19,0,0,0,18,18,21,22,0,18,18,22,0,0,0,0,0,0,0,15,15,19,20,0,21,21,0,0,0,17,17,20,20,0,12,12,17,17,0,14,14,16,17,0,13,14,17,17,0,16,16,17,17,0,17,17,17,19,0,13,13,17,17,0,16,16,18,18,0,13,13,16,16,0,16,16,18,18,0,16,16,17,17,0,13,13,17,17,0,17,17,18,17,0,12,12,15,16,0,17,18,19,20,0,16,16,16,16,0,17,16,18,19,0,0,22,21,22,0,14,14,16,16,0,19,19,0,0,0,16,16,16,16,0,16,16,18,17,0,0,22,21,21,0,14,14,16,16,0,22,20,22,0,0,16,16,15,15,0,9,9,13,13,0,14,14,15,15,0,14,14,14,14,0,22,22,18,18,0,0,22,18,18,0,12,12,15,15,0,16,16,18,17,0,14,14,14,14,0,20,21,18,18,0,22,21,17,17,0,13,13,15,15,0,17,17,18,18,0,14,14,14,14,0,0,21,18,19,0,0,22,17,17,0,22,22,19,18,0,0,0,0,0,0,19,21,17,17,0,0,0,22,20,0,0,21,18,19,0,0,22,18,18,0,0,0,0,22,0,20,22,17,17,0,0,0,20,22,0,0,0,18,18,0,19,21,16,16,0,20,22,16,17,0,20,0,17,17,0,22,0,18,17,0,21,0,18,19,0,20,20,17,17,0,22,0,18,18,0,21,20,17,17,0,0,20,20,19,0,0,21,18,17,0,21,21,17,17,0,22,0,18,17,0,19,19,17,17,0,0,22,20,21,0,0,21,17,17,0,22,0,18,18,0,0,0,20,22,0,20,19,16,16,0,0,0,0,0,0,22,22,17,17,0,22,0,18,19,0,0,0,21,20,0,19,21,16,17,0,0,0,0,0,0,22,22,17,16,0,11,11,13,13,0,13,13,15,15,0,13,13,15,15,0,17,17,22,21,0,18,18,22,0,0,12,13,16,15,0,15,16,18,18,0,13,13,16,16,0,17,17,0,22,0,17,17,22,22,0,13,13,16,16,0,16,16,19,18,0,13,13,16,16,0,18,17,0,20,0,18,17,20,0,0,17,17,21,0,0,0,0,0,0,0,15,15,21,22,0,19,20,0,0,0,18,18,0,0,0,18,17,0,0,0,0,0,0,0,0,16,16,22,22,0,20,20,0,0,0,21,19,0,0,0,15,15,20,19,0,16,16,22,20,0,17,17,0,22,0,18,18,0,22,0,19,17,0,0,0,15,16,22,20,0,18,19,0,0,0,16,16,22,20,0,18,18,0,22,0,18,18,22,0,0,16,16,21,20,0,19,20,0,22,0,16,16,0,22,0,18,18,0,22,0,18,18,0,21,0,19,18,0,22,0,0,0,0,0,0,16,16,21,20,0,20,0,0,0,0,18,18,21,0,0,18,18,0,0,0,0,0,0,0,0,16,16,21,19,0,0,0,0,0,0,18,18,0,21,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,5,8,8,12,10,10,12,12,12,10,10,12,12,13,11,11,12,12,13,12,12,12,12,13,10,10,13,13,13,13,13,13,13,13,10,10,13,13,13,11,11,13,13,14,13,13,12,12,13,10,10,13,13,13,13,13,13,13,13,10,10,12,12,13,11,11,13,13,13,13,13,12,12,13,12,12,13,13,13,13,13,13,13,14,11,11,12,12,14,12,12,13,12,14,14,14,12,12,13,14,14,13,13,14,13,13,13,13,14,14,14,12,12,14,13,13,13,13,14,14,14,12,12,12,8,8,11,11,12,12,12,11,11,12,11,11,10,10,13,12,12,10,10,13,12,12,10,10,13,12,12,12,12,14,12,12,12,12,13,13,13,11,11,14,12,12,11,11,14,12,12,12,12,14,12,12,12,12,13,12,12,12,12,13,13,13,11,11,14,12,12,11,11,14,12,12,12,12,14,13,13,12,12,14,12,12,12,11,14,13,13,11,11,14,13,12,11,11,14,13,13,11,11,14,13,13,12,12,14,12,12,12,12,15,13,13,12,12,14,12,12,11,11,14,13,13,11,11,12,9,9,10,10,12,7,7,11,11,12,9,9,12,12,13,10,10,10,10,14,14,14,11,11,13,9,9,12,12,14,14,14,12,12,13,8,8,11,11,14,9,9,12,12,14,14,14,11,11,13,9,9,12,12,14,14,14,12,12,14,8,8,11,11,14,9,9,12,12,14,14,14,11,11,14,10,10,12,12,14,14,14,13,13,14,9,9,11,11,14,10,10,12,12,14,14,14,11,11,14,14,15,12,12,15],"i8",L3,x.GLOBAL_BASE+456540),d3([14,14,14,14,15,14,14,11,11,14,14,14,12,12,14,14,14,11,11,14,11,11,10,10,14,10,10,10,10,14,10,10,10,10,15,11,11,9,9,14,12,12,9,9,15,11,11,11,11,15,13,13,11,11,15,10,10,10,10,15,11,11,10,10,15,13,13,11,11,15,11,11,11,11,15,13,13,11,11,15,10,10,10,10,15,11,11,10,10,15,13,13,11,11,15,12,12,11,11,15,13,13,11,11,15,11,11,10,10,15,12,12,10,10,15,13,13,10,10,15,14,14,11,11,15,13,13,11,11,15,14,14,10,11,15,13,13,10,10,15,13,14,10,10,14,13,13,10,10,14,13,13,10,10,14,13,13,10,10,14,13,13,9,9,14,14,14,9,9,15,14,14,11,11,15,14,14,10,10,15,14,14,10,10,15,14,14,11,11,15,14,14,10,10,15,14,14,11,11,15,14,14,10,10,14,14,14,10,10,15,14,14,10,10,14,14,14,10,10,15,14,14,11,11,15,14,14,11,11,14,14,14,10,10,15,14,14,10,10,14,14,14,9,9,15,15,15,11,11,15,14,14,12,12,15,15,14,10,10,15,14,14,10,10,14,15,15,9,9,14,10,10,12,12,17,9,9,12,12,17,10,10,13,13,17,11,11,12,12,18,14,14,12,12,17,10,10,13,13,17,14,14,12,12,17,9,9,12,12,17,11,11,12,12,17,14,14,12,12,18,10,10,13,13,18,14,14,13,13,18,9,9,12,12,18,10,10,13,13,18,14,14,12,12,18,11,11,13,13,18,14,14,13,13,18,10,10,12,12,17,11,11,12,12,17,14,14,12,12,18,15,15,13,13,18,14,14,14,14,18,15,15,12,12,18,14,14,12,12,18,15,15,12,12,13,7,7,11,11,14,15,15,11,11,14,15,15,12,12,14,15,15,11,11,15,15,15,11,11,14,15,15,12,12,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,14,15,15,12,12,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,15,15,15,12,12,14,15,15,12,12,14,15,14,12,12,14,15,15,11,11,15,14,14,12,12,15,15,15,12,12,15,16,16,12,12,15,15,15,12,12,15,15,15,12,12,15,15,15,12,12,13,13,13,11,10,14,14,15,11,11,14,14,14,12,12,15,14,14,10,10,15,15,15,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,15,15,12,12,15,15,15,11,11,14,15,15,12,12,14,14,14,12,12,14,15,15,11,11,14,15,15,12,12,15,15,15,11,11,15,15,15,12,12,15,14,14,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,10,10,15,15,16,12,12,15,15,15,14,14,15,15,15,11,11,15,15,15,12,12,15,15,15,11,11,14,11,11,10,10,15,9,9,12,12,15,10,10,12,12,15,11,11,11,11,15,14,14,12,12,15,10,10,13,13,15,14,14,12,12,15,9,9,12,12,15,10,10,13,13,15,13,13,12,11,15,10,10,12,12,15,14,14,12,12,15,9,9,11,11,15,11,11,12,12,15,13,13,11,11,15,11,11,13,13,15,13,14,13,14,15,11,11,11,11,15,11,11,12,12,15,14,14,11,11,15,14,14,13,13,15,14,14,20,20,15,14,14,12,12,15,14,14,12,12,15,14,14,11,11,14,13,13,10,10,14,13,13,12,12,14,14,13,12,12,15,14,14,12,12,15,14,14,11,11,15,14,14,12,12,15,14,14,13,13,15,14,14,12,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,13,13,15,14,14,12,11,15,14,14,12,12,15,14,14,13,13,15,14,14,13,13,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,15,15,15,13,13,15,15,15,13,13,15,14,14,13,13,15,15,15,13,13,15,14,15,12,12,15,15,15,13,13,14,10,10,12,13,17,9,9,12,12,17,10,10,13,13,17,11,11,12,12,18,14,14,12,12,18,10,10,13,13,18,14,14,12,12,17,9,9,12,12,18,10,11,13,13,18,14,14,12,12,17,10,10,12,12,17,14,14,12,12,17,9,9,12,12,17,11,11,12,12,17,14,14,12,12,18,11,11,12,12,18,14,14,13,13,18,11,11,12,12,18,11,11,12,12,18,14,14,12,12,18,15,15,12,12,18,14,14,13,13,18,15,15,12,12,17,14,14,12,12,17,15,15,12,12,13,7,7,11,11,14,15,15,11,11,14,15,15,11,11,14,15,14,12,12,15,15,15,12,11,14,15,15,12,12,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,13,13,14,15,15,11,11,14,15,15,13,12,14,15,15,11,11,14,15,15,11,11,15,15,15,13,13,14,15,15,12,12,15,15,15,12,12,15,15,15,11,11,15,15,15,11,11,15,15,15,12,12,15,15,15,13,13,15,16,16,12,12,15,15,15,12,13,15,15,15,12,12,15,15,15,12,12,13,13,13,11,11,14,14,14,11,11,14,14,14,12,12,14,14,14,10,10,15,14,14,11,11,14,15,15,12,12,14,14,14,12,12,14,15,15,11,11,14,15,14,12,12,15,14,14,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,14,14,12,12,15,15,14,11,11,15,15,15,12,12,15,14,14,12,12,14,15,15,11,11,14,15,14,11,11,15,15,15,10,10,15,15,15,12,12,15,14,14,14,13,15,15,15,11,11,15,15,15,11,11,15,15,15,10,10,14,11,11,10,10,15,9,9,12,12,15,10,10,12,12,15,11,11,11,11,15,14,14,12,12,15,10,10,13,13,15,13,13,12,12,15,9,9,12,12,15,11,11,13,13,15,14,14,12,12,15,10,10,13,13,15,13,14,12,12,15,9,9,12,12,15,10,10,13,13,15,13,13,11,11,15,11,11,13,13,15,14,14,13,13,15,10,10,11,11,15,11,11,12,12,15,14,14,11,11,15,14,14,13,13,15,14,14,21,20,15,14,14,11,11,15,14,14,12,12,15,14,14,11,11,14,13,13,10,10,14,13,13,11,11,15,14,14,12,12,15,14,14,12,12,14,14,14,12,12,15,14,14,12,12,15,14,14,13,13,14,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,13,13,14,14,14,11,11,15,14,14,11,11,14,14,14,13,13,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,14,14,14,13,13,15,15,15,13,13,16,14,14,12,13,15,15,15,13,13,15,14,14,12,12,15,15,15,13,13,15,11,11,13,12,18,10,10,12,12,17,11,11,12,12,18,12,12,11,11,18,14,14,12,12,18,11,11,13,13,17,14,14,12,12,18,10,10,12,12,18,12,12,12,12,18,14,15,12,12,18,11,11,13,13,18,14,14,12,12,17,10,10,12,12,18,11,11,12,12,18,15,14,12,12,17,12,12,12,12,17,14,14,12,12,17,11,11,11,11,17,12,12,12,11,17,15,15,11,11,18,15,15,12,12,18,14,15,13,13,18,15,15,11,11,17,15,15,12,12,18,15,15,11,11,14,9,9,11,11,14,15,15,11,11,15,15,15,11,11,15,15,15,12,11,15,15,15,12,12,15,15,15,11,11,15,15,15,13,13,14,15,15,11,11,15,15,15,11,11,15,15,15,13,13,15,15,15,11,11,15,15,15,13,13,15,15,15,11,11,15,15,15,11,11,15,15,15,13,13,15,15,15,12,12,15,15,15,13,13,15,15,14,11,11,15,15,15,12,12,15,15,15,12,12,16,15,15,13,13,15,16,16,13,13,16,15,15,12,12,15,15,15,13,12,15,15,15,12,12,13,12,12,11,11,14,14,14,11,11,14,14,14,12,12,15,14,14,11,11,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,14,15,15,11,11,15,14,14,12,12,15,14,14,11,11,15,14,14,12,12,15,14,14,12,12,14,15,15,11,11,15,14,14,12,12,15,14,14,11,11,15,15,15,12,12,15,14,14,12,12,15,15,15,11,11,15,14,14,11,11,15,14,15,11,11,15,15,15,12,12,15,14,14,13,13,16,15,15,11,11,15,14,14,12,12,15,15,15,11,11,14,11,11,9,9,15,10,10,12,12,14,11,11,12,12,15,12,12,12,12,15,14,14,13,13,15,11,11,13,13,15,14,14,13,13,15,10,10,12,12,15,12,12,13,13,15,14,14,13,13,15,11,11,12,12,15,14,14,13,13,14,10,10,12,12,15,12,12,13,13,15,14,14,12,12,15,12,12,13,13,15,14,14,15,15,15,11,11,12,12,15,12,12,12,13,15,14,14,12,12,15,15,15,14,14,15,14,14,20,20,15,14,14,12,12,15,14,14,13,13,15,14,14,12,12,14,13,13,10,10,14,13,13,11,11,14,13,13,12,12,14,14,14,12,12,15,14,14,13,13,15,14,14,12,12,14,14,14,14,14,14,14,14,11,11,15,14,14,12,12,15,14,14,14,14,15,14,14,12,12,14,14,14,14,14,14,14,14,11,11,15,14,14,12,12,14,14,14,14,14,15,14,14,12,12,15,14,14,13,13,15,14,14,12,12,15,14,14,12,12,14,14,14,14,13,15,15,15,14,14,15,14,14,13,13,15,15,15,14,14,15,14,14,13,13,15,15,15,13,13,14,13,13,13,13,18,15,15,12,12,18,15,15,13,12,18,15,16,11,11,18,16,17,12,12,18,15,15,13,13,18,17,17,12,12,18,15,15,12,12,17,15,15,12,12,18,17,17,12,12,18,15,15,13,13,18,16,17,12,12,17,15,15,12,12,18,15,15,12,12,18,16,17,11,12,18,16,16,12,12,17,16,17,12,12,18,15,15,11,11,18,15,15,12,12,18,17,17,11,11,17,17,17,12,12,18,16,16,13,13,18,17,17,11,11,18,16,16,12,12,18,17,17,11,11,15,14,14,11,11,16,15,15,11,11,16,15,15,12,12,16,15,15,12,12,17,15,15,14,13,16,15,15,12,12,17,15,15,14,14,16,15,15,11,11,16,15,15,12,12,18,15,15,13,13,16,15,15,11,11,17,15,15,14,14,16,15,15,11,11,16,15,15,12,12,17,15,15,13,13,16,15,15,12,12,17,16,15,14,14,16,14,15,12,12,16,15,15,12,12,18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,15,12,13,11,11,15,14,14,12,12,16,14,14,12,12,16,14,14,12,12,16,14,14,12,12,16,14,14,13,12,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,17,14,14,12,12,16,14,14,12,12,17,14,14,13,13,15,15,15,12,12,16,14,14,12,12,17,14,14,12,12,17,15,15,12,12,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,17,15,15,12,12,18,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,17,15,15,12,12,14,15,15,9,9,15,15,15,12,12,15,15,15,13,13,15,15,15,14,14,15,15,15,19,19,15,15,16,13,13,15,15,16,19,20,15,15,15,13,12,15,16,16,14,14,15,15,15,19,19,15,15,15,13,13,15,16,15,20,19,14,15,15,13,13,15,15,15,14,14,15,15,15,19,19,15,15,15,14,14,15,16,16,19,20,15,15,15,14,14,15,15,15,14,14,15,15,15,19,19,15,15,15,20,19,15,16,16,20,19,15,15,15,19,19,15,16,16,20,20,15,15,15,19,20,14,13,13,10,10,14,14,14,11,11,14,14,14,12,12,15,14,14,13,13,15,14,14,19,20,15,14,14,12,12,14,14,14,20,19,14,14,14,11,11,15,14,14,12,12,15,14,14,20,20,15,14,14,12,12,14,14,14,20,19,14,14,14,11,11,15,14,14,12,12,15,14,14,19,20,15,14,14,13,13,15,14,14,22,19,15,15,14,12,12,15,14,14,13,13,14,15,15,22,20,15,15,15,20,20,15,14,14,21,20,15,15,15,20,21,15,14,14,20,20,14,15,15,20,20,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,7,7,7,7,7,7,7,8,8,10,11,11,9,8,8,8,8,8,11,11,11,10,8,8,5,7,7,9,11,11,10,11,11,10,11,11,12,13,14,11,12,12,10,11,11,13,14,14,12,12,12,5,6,6,8,6,6,8,7,7,8,7,7,11,10,10,10,7,7,9,7,7,12,11,11,11,7,7,7,7,7,11,10,10,12,10,10,11,10,10,15,13,13,13,10,10,12,11,11,15,13,13,14,11,11,7,7,7,11,11,11,12,11,11,12,11,11,14,14,14,14,12,12,12,12,12,16,15,15,14,12,12,0,10,10,0,11,11,0,11,12,0,11,11,0,14,14,0,11,11,0,12,12,0,15,15,0,11,11,8,8,8,12,10,10,12,10,10,13,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,13,11,11,12,11,11,15,14,14,14,12,12,13,12,12,15,14,14,15,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,13,13,0,14,15,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,0,8,8,0,8,8,0,9,9,0,10,10,0,8,8,0,9,9,0,10,10,0,8,8,0,7,7,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,7,7,0,6,6,0,7,7,0,7,7,0,10,10,0,6,6,0,7,7,0,10,10,0,6,5,0,8,8,0,7,7,0,8,8,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,7,7,0,6,6,0,9,10,0,10,10,0,10,10,0,11,11,0,9,9,0,10,10,0,11,11,0,9,9,0,8,8,0,8,8,0,8,8,0,9,9,0,9,9,0,8,8,0,8,8,0,9,9,0,7,7,0,8,8,0,7,7,0,7,7,0,8,8,0,9,9,0,7,7,0,7,7,0,9,9,0,6,6,0,6,6,0,10,10,0,10,10,0,10,10,0,12,12,0,9,9,0,10,10,0,12,12,0,9,9,0,8,8,0,7,7,0,8,8,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,7,7,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,5,8,8,0,8,8,6,9,9,8,10,10,0,8,8,0,9,9,0,12,12,0,8,8,4,7,7,6,10,10,0,12,12,7,11,11,9,12,12,0,12,12,0,13,13,0,15,15,0,12,12,0,7,7,0,7,7,0,8,8,0,8,8,0,10,10,0,7,7,0,8,8,0,11,11,0,7,7,5,7,7,9,9,9,0,11,10,9,9,9,11,12,12,0,10,10,0,11,11,0,13,13,0,11,11,6,7,7,9,10,10,0,12,12,10,11,11,11,12,12,0,12,12,0,13,13,0,15,15,0,12,12,0,10,10,0,11,11,0,11,11,0,12,12,0,13,13,0,11,11,0,12,12,0,15,15,0,11,11,0,8,8,0,10,10,0,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,11,11,0,7,7,0,10,10,0,12,12,0,10,10,0,12,13,0,12,12,0,13,13,0,14,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,7,7,0,0,0,8,8,0,0,0,8,8,0,0,0,11,11,0,0,0,0,0,0,0,0,10,9,0,0,0,0,0,0,0,0,9,9,0,0,0,10,11,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,5,5,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,5,5,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,5,6,0,0,0,7,7,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,11,0,0,0,9,9,0,0,0,10,10,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,11,12,0,0,0,0,0,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,7,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,9,9,0,0,0,10,10,0,0,0,11,12,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,8,8,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,9,9,0,0,0,10,10,0,0,0,12,12,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,5,16,9,9,12,17,18,4,2,18,6,5,9,13,15,10,7,7,6,7,9,13,13,8,5,6,5,5,7,11,12,8,4,7,4,3,6,10,12,11,8,9,7,6,8,11,12,15,13,13,11,9,7,10,12,16,12,16,12,6,5,8,11,2,0,0,0,64,0,0,0,144,111,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,64,7,0,0,0,0,0,0,0,0,0,128,64,7,0,0,0,0,0,0,0,0,0,168,64,7,0,208,64,7,0,0,0,0,0,0,0,0,0,248,64,7,0,32,65,7,0,0,0,0,0,0,0,0,0,72,65,7,0,112,65,7,0,0,0,0,0,0,0,0,0,152,65,7,0,192,65,7,0,112,65,7,0,0,0,0,0,232,65,7,0,16,66,7,0,112,61,7,0,152,61,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,24,64,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,16,64,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,60,7,0,32,61,7,0,0,0,0,0,0,0,0,0,72,61,7,0,112,61,7,0,152,61,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,40,63,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,216,63,7,0,0,0,0,0,2,0,0,0,25,0,0,0,240,62,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,63,7,0,0,0,0,0,2,0,0,0,9,0,0,0,208,62,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,224,62,7,0,0,0,0,0,1,0,0,0,25,0,0,0,72,62,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,104,62,7,0,0,0,0,0,1,0,0,0,25,0,0,0,192,61,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,224,61,7,0,0,0,0,0,3,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,6,5,4,5,5,5,6,5,5,6,6,6,5,6,5,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,8,8,9,9,10,10,11,11,4,6,5,8,7,9,8,10,9,11,10,11,11,4,5,6,7,8,8,9,9,10,10,10,10,11,8,9,8,10,8,10,9,11,10,11,11,11,11,8,8,9,8,10,9,10,10,11,11,11,11,11,9,10,10,11,11,11,11,11,11,12,11,12,11,9,10,10,10,11,11,11,11,11,11,12,11,12,10,11,11,12,11,12,12,12,12,12,12,12,12,10,11,11,11,11,12,12,12,13,12,12,12,12,11,12,12,12,12,13,13,12,12,12,12,12,12,11,12,12,12,12,13,13,12,13,12,12,12,12,12,13,13,13,13,13,13,12,13,12,13,12,12,12,13,13,13,13,13,13,13,12,13,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,4,9,8,8,10,13,16,4,2,9,5,7,10,14,18,9,7,6,5,7,9,12,16,7,5,5,3,5,8,11,13,8,7,7,5,5,7,9,11,10,10,9,8,6,6,8,10,13,14,13,11,9,8,9,10,17,18,16,14,11,10,10,10,5,0,0,0,243,0,0,0,136,110,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,128,111,7,0,0,0,0,0,5,0,0,0,53,12,0,0,56,98,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,112,110,7,0,0,0,0,0,5,0,0,0,243,0,0,0,48,97,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,40,98,7,0,0,0,0,0,5,0,0,0,243,0,0,0,40,96,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,32,97,7,0,0,0,0,0,5,0,0,0,243,0,0,0,32,95,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,24,96,7,0,0,0,0,0,5,0,0,0,53,12,0,0,208,82,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,8,95,7,0,0,0,0,0,5,0,0,0,53,12,0,0,128,70,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,184,82,7,0,0,0,0,0,1,0,0,0,7,0,0,0,88,70,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,96,70,7,0,0,0,0,0,5,0,0,0,243,0,0,0,80,69,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,72,70,7,0,0,0,0,0,5,0,0,0,243,0,0,0,72,68,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,64,69,7,0,0,0,0,0,5,0,0,0,243,0,0,0,64,67,7,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,56,68,7,0,0,0,0,0,5,0,0,0,243,0,0,0,56,66,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,48,67,7,0,0,0,0,0,1,9,9,6,9,9,5,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,7,7,7,7,7,7,7,8,8,9,9,9,8,7,7,8,8,8,9,9,9,9,8,8,6,7,7,9,8,8,9,7,7,9,8,8,10,8,8,10,8,8,10,8,8,10,8,9,10,8,8,7,6,6,8,6,6,9,6,6,9,7,7,10,8,8,9,6,6,9,7,7,10,9,8,9,7,7,7,7,7,11,8,8,11,9,9,10,9,9,12,9,9,12,8,8,11,9,9,12,9,9,12,8,8,8,7,7,10,9,9,10,9,9,10,9,9,11,10,11,11,9,9,11,9,9,11,11,11,11,9,9,10,8,8,11,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,9,9,12,10,10,11,9,9,8,8,8,11,9,9,12,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,9,10,12,8,8,9,7,7,11,9,9,11,10,10,11,9,9,11,11,11,11,9,9,11,10,10,12,11,11,11,9,10,10,9,9,11,9,9,11,10,10,11,10,10,11,11,11,11,9,9,11,9,10,11,11,11,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,7,7,7,8,8,7,8,8,7,9,9,10,11,11,9,8,8,7,8,9,11,11,11,9,8,8,6,7,7,10,10,10,10,10,10,10,10,10,14,14,14,12,11,11,10,11,11,15,14,14,13,11,11,6,6,6,8,5,5,8,7,7,8,7,7,11,10,10,9,7,7,9,7,7,12,10,10,10,7,7,6,8,7,12,10,10,12,10,10,11,10,10,15,14,13,13,10,10,11,10,10,16,14,14,14,10,10,7,7,7,12,11,11,12,11,11,11,11,11,16,14,14,13,12,12,11,11,11,17,15,15,14,12,12,10,9,9,13,11,11,13,11,11,12,11,11,16,14,13,14,11,11,12,11,11,17,15,14,14,11,11,7,8,8,12,11,11,12,10,10,12,10,10,16,13,14,13,10,10,11,10,10,17,14,14,14,10,10,7,7,7,12,11,11,12,11,11,12,11,11,15,14,15,14,12,12,12,11,11,17,15,15,14,12,12,10,10,9,13,11,11,13,11,11,13,11,11,16,14,14,14,11,11,13,11,11,16,15,15,15,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,14,14,6,7,7,14,14,7,7,7,15,15,0,13,13,16,16,0,13,13,15,15,7,8,8,15,15,9,10,10,17,16,9,8,8,15,15,0,13,13,18,17,0,13,13,16,16,8,8,8,15,15,12,11,11,16,17,9,8,8,14,14,0,13,13,18,17,0,13,13,16,15,0,14,14,18,17,0,20,22,18,20,0,12,12,16,16,0,16,16,22,20,0,14,14,16,16,0,14,14,17,17,0,22,22,22,19,0,12,13,16,16,0,17,17,0,0,0,15,15,16,16,5,7,7,13,13,9,9,9,15,14,10,10,10,14,14,0,21,21,18,17,0,21,22,18,17,9,10,10,14,14,12,12,12,17,17,12,10,10,14,14,0,19,21,18,17,0,20,22,18,18,11,10,10,14,14,14,13,13,18,17,12,11,11,14,14,0,22,19,17,18,0,20,0,18,17,0,22,21,17,17,0,0,0,0,0,0,20,22,17,17,0,22,0,21,19,0,22,0,18,18,0,0,22],"i8",L3,x.GLOBAL_BASE+466780),d3([18,19,0,0,0,0,0,0,19,21,17,17,0,0,0,20,20,0,0,0,18,18,6,6,6,13,12,8,6,6,11,11,8,6,6,13,13,0,9,9,11,11,0,11,11,14,14,9,7,7,13,13,11,9,9,13,13,10,6,6,13,13,0,10,10,14,14,0,10,10,13,13,9,7,7,13,14,13,9,9,13,13,10,6,6,13,12,0,11,11,15,15,0,10,10,13,13,0,12,12,15,15,0,19,0,17,17,0,9,9,13,13,0,13,14,19,20,0,11,11,13,13,0,11,11,14,14,0,19,20,17,18,0,10,10,13,13,0,15,15,21,19,0,12,12,13,13,0,10,10,12,13,0,11,11,15,15,0,11,11,15,15,0,15,15,22,0,0,16,17,22,0,0,11,11,15,15,0,14,14,18,17,0,11,11,15,16,0,15,15,22,21,0,16,16,0,20,0,12,12,16,15,0,15,14,19,19,0,11,11,16,16,0,15,15,21,0,0,16,15,0,0,0,16,16,22,21,0,0,0,0,0,0,15,15,20,20,0,18,18,0,0,0,16,17,0,0,0,17,17,0,22,0,0,0,0,0,0,15,15,21,22,0,20,18,0,0,0,18,17,22,0,0,10,10,12,11,0,10,10,10,10,0,11,11,12,12,0,11,11,9,9,0,13,13,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,13,12,13,13,0,12,12,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,13,13,13,14,0,12,12,12,12,0,13,14,14,14,0,20,21,15,15,0,12,11,12,12,0,15,16,20,22,0,13,12,11,11,0,13,13,14,13,0,20,0,16,15,0,12,12,12,12,0,16,16,22,21,0,13,13,12,12,6,7,7,16,16,11,9,9,15,15,12,9,9,16,16,0,13,13,14,14,0,14,14,16,17,10,9,9,16,16,14,12,12,16,16,12,9,9,15,15,0,13,13,18,18,0,13,13,15,16,12,10,10,17,18,15,12,12,17,17,13,9,9,16,16,0,13,13,17,18,0,14,14,16,16,0,15,15,18,18,0,22,0,20,20,0,12,12,16,16,0,16,16,20,22,0,14,14,16,16,0,15,14,18,18,0,0,22,19,21,0,13,13,16,17,0,17,17,22,22,0,15,15,16,16,7,7,7,14,14,11,10,10,15,15,12,10,10,15,14,0,22,0,18,18,0,0,21,17,18,11,10,10,15,15,14,12,12,17,17,14,11,11,15,15,0,22,20,18,18,0,0,20,18,17,12,10,10,16,16,17,14,14,19,18,14,11,11,15,15,0,21,22,19,19,0,21,22,18,18,0,22,0,19,21,0,0,0,0,0,0,22,22,18,17,0,0,0,21,20,0,22,22,20,19,0,0,22,20,20,0,0,0,0,0,0,20,21,17,17,0,0,22,21,21,0,0,0,18,18,10,9,9,14,14,13,10,10,13,13,13,10,11,14,14,0,13,13,12,12,0,15,15,16,16,13,10,10,15,15,15,12,12,14,14,15,10,10,14,15,0,14,14,16,15,0,14,14,15,15,13,10,10,15,15,18,13,13,15,15,15,10,10,14,15,0,14,14,16,16,0,14,14,15,15,0,15,15,16,16,0,22,0,18,18,0,12,13,14,14,0,17,17,22,0,0,14,14,14,14,0,15,15,16,16,0,22,0,18,17,0,13,13,14,14,0,19,18,21,22,0,15,15,14,14,0,11,11,13,13,0,12,12,16,16,0,12,12,16,16,0,15,16,21,0,0,16,17,0,22,0,12,12,16,16,0,14,14,17,18,0,11,11,16,16,0,15,15,21,22,0,16,16,0,0,0,12,12,16,16,0,15,15,0,19,0,12,12,16,17,0,16,16,22,0,0,16,16,0,22,0,17,17,0,22,0,0,0,0,0,0,15,15,20,19,0,18,18,0,0,0,17,18,0,0,0,17,17,0,0,0,0,0,0,0,0,15,15,0,22,0,20,18,0,0,0,18,18,22,22,0,11,11,14,14,0,12,12,14,14,0,12,12,15,15,0,13,13,14,14,0,14,14,17,16,0,12,12,16,16,0,14,14,16,16,0,11,11,15,15,0,13,13,16,16,0,13,13,15,15,0,12,12,15,15,0,15,14,16,16,0,11,11,15,15,0,14,14,17,17,0,13,13,15,15,0,15,15,17,17,0,0,0,19,18,0,13,12,15,15,0,16,16,0,0,0,14,14,15,15,0,14,14,16,17,0,22,0,18,18,0,13,13,15,15,0,17,17,0,0,0,14,14,15,15,8,8,8,16,16,12,10,10,16,16,13,9,9,16,16,0,14,14,17,17,0,14,14,17,16,12,10,10,18,17,14,11,11,18,18,14,9,10,16,16,0,13,13,18,19,0,14,13,16,16,12,9,9,16,16,17,13,13,17,17,14,9,9,15,15,0,14,14,19,20,0,13,13,15,15,0,15,15,18,19,0,0,22,22,22,0,13,13,17,17,0,16,16,19,21,0,14,14,16,16,0,14,14,18,18,0,0,0,0,0,0,13,13,16,16,0,18,18,0,0,0,15,15,16,16,8,7,7,14,14,12,10,10,15,15,13,10,10,15,14,0,22,0,18,18,0,22,0,18,18,12,10,10,16,15,15,12,12,17,17,14,11,11,15,15,0,20,21,19,18,0,0,0,17,18,13,11,11,15,15,16,13,13,18,18,15,11,11,14,14,0,22,21,19,19,0,21,22,18,18,0,22,22,20,18,0,0,0,0,0,0,22,19,17,17,0,0,0,22,21,0,0,22,19,17,0,0,22,19,19,0,0,0,0,0,0,22,21,18,17,0,0,0,22,0,0,0,0,19,19,0,10,10,14,14,0,11,11,15,14,0,11,11,15,15,0,14,14,15,14,0,15,15,16,16,0,11,11,16,16,0,13,13,16,16,0,11,11,15,15,0,14,14,17,16,0,14,14,15,15,0,11,11,16,16,0,14,13,15,15,0,11,11,15,15,0,15,15,17,17,0,14,14,15,14,0,16,16,17,17,0,0,22,18,18,0,13,13,15,15,0,17,17,22,0,0,15,15,15,14,0,15,16,16,17,0,0,22,18,19,0,13,13,15,15,0,20,18,21,0,0,15,15,14,14,0,11,11,13,13,0,12,12,16,16,0,12,12,16,15,0,15,16,22,22,0,17,17,0,0,0,12,12,16,16,0,14,14,18,18,0,11,11,16,16,0,15,16,22,20,0,16,16,0,22,0,12,12,16,16,0,15,15,18,20,0,11,11,16,16,0,15,15,0,0,0,16,16,0,0,0,17,17,22,0,0,0,0,0,0,0,15,15,0,21,0,18,18,0,0,0,17,16,0,0,0,17,17,22,22,0,0,0,0,0,0,15,15,21,0,0,20,22,0,0,0,18,18,0,0,0,12,12,15,15,0,12,12,15,15,0,12,12,16,16,0,13,13,15,15,0,15,15,17,17,0,13,12,16,16,0,14,14,16,16,0,12,11,16,16,0,14,14,17,17,0,14,14,16,16,0,12,12,16,16,0,15,15,17,16,0,11,11,15,16,0,14,14,17,17,0,14,14,16,16,0,15,15,18,18,0,0,0,22,19,0,13,13,15,16,0,16,17,0,0,0,14,14,16,16,0,15,15,18,17,0,0,0,20,20,0,13,13,16,15,0,17,17,22,22,0,14,14,15,15,0,11,11,16,16,0,13,13,16,17,0,13,13,17,18,0,16,16,17,17,0,17,17,18,18,0,12,12,17,17,0,16,15,18,18,0,12,12,16,16,0,16,16,18,18,0,15,15,17,17,0,12,12,17,17,0,16,16,19,18,0,12,12,16,17,0,16,16,19,19,0,15,16,16,17,0,16,16,19,17,0,0,0,20,22,0,13,13,16,16,0,19,18,21,0,0,15,15,16,16,0,16,16,18,18,0,0,0,22,21,0,14,14,16,16,0,21,19,21,22,0,16,16,16,16,0,9,9,14,14,0,13,13,15,15,0,14,14,15,15,0,0,20,18,19,0,0,22,18,18,0,12,12,15,15,0,15,15,17,18,0,14,13,14,14,0,20,0,18,18,0,21,0,18,17,0,13,13,15,16,0,17,17,18,18,0,14,14,15,15,0,22,22,20,19,0,20,21,18,18,0,20,22,19,19,0,0,0,0,0,0,20,20,17,17,0,0,22,22,21,0,22,0,18,18,0,20,22,19,19,0,0,0,0,0,0,21,21,17,18,0,0,0,21,20,0,0,22,19,18,0,18,18,15,15,0,22,21,17,16,0,0,22,17,17,0,20,22,18,18,0,0,22,20,20,0,21,19,16,16,0,21,21,18,18,0,19,19,17,17,0,0,22,19,19,0,22,20,17,17,0,21,19,16,16,0,22,22,19,18,0,19,20,16,16,0,22,21,19,21,0,21,22,17,18,0,21,20,18,18,0,0,0,19,20,0,20,19,16,16,0,22,22,0,0,0,21,21,17,16,0,22,20,19,18,0,0,0,20,20,0,20,19,16,16,0,0,0,0,0,0,21,22,17,17,0,11,11,13,13,0,13,13,15,16,0,13,13,16,16,0,17,18,21,0,0,17,18,0,0,0,12,12,15,16,0,15,15,19,18,0,12,12,16,16,0,17,17,22,0,0,17,17,0,22,0,12,12,17,16,0,16,16,19,20,0,12,12,16,16,0,17,17,0,0,0,17,17,0,21,0,17,16,22,0,0,0,0,0,0,0,15,15,20,22,0,20,18,0,0,0,18,18,0,0,0,17,17,21,0,0,0,0,0,0,0,15,15,21,22,0,19,20,22,0,0,19,18,0,0,0,14,14,18,18,0,16,16,22,20,0,16,16,22,19,0,17,17,20,22,0,19,19,0,0,0,15,15,20,0,0,18,21,0,20,0,15,15,21,20,0,18,17,0,0,0,17,17,0,22,0,15,15,19,19,0,19,18,0,0,0,15,15,20,0,0,18,18,22,22,0,17,17,0,20,0,18,18,0,0,0,0,22,0,0,0,15,15,19,20,0,20,19,0,0,0,17,17,20,21,0,17,18,20,22,0,0,0,0,22,0,15,15,20,20,0,22,20,0,0,0,17,18,20,0,0,12,12,17,16,0,14,14,17,17,0,13,13,17,17,0,16,16,18,18,0,17,16,17,17,0,13,13,17,17,0,15,16,18,18,0,13,13,16,16,0,16,16,18,18,0,16,16,17,16,0,13,13,16,16,0,17,17,18,17,0,12,12,15,16,0,17,17,19,19,0,16,16,16,16,0,16,17,19,18,0,0,0,21,22,0,14,14,16,16,0,18,18,0,22,0,16,16,16,16,0,16,16,18,17,0,0,0,21,20,0,14,14,16,16,0,21,22,22,0,0,16,16,16,16,0,9,9,14,13,0,13,14,15,16,0,14,13,15,14,0,22,0,18,18,0,21,0,17,18,0,13,13,15,15,0,15,16,18,17,0,14,14,15,14,0,20,22,18,18,0,22,21,17,17,0,13,13,15,15,0,17,17,19,19,0,14,14,14,14,0,0,22,18,18,0,0,22,17,17,0,0,22,19,20,0,0,0,0,0,0,21,20,17,16,0,0,0,21,22,0,0,0,18,19,0,0,0,18,18,0,0,0,0,0,0,22,0,17,17,0,0,0,20,22,0,0,0,18,19,0,18,19,16,16,0,22,20,17,17,0,22,22,17,18,0,22,22,18,17,0,0,22,18,19,0,20,20,17,18,0,0,22,19,18,0,22,22,17,17,0,22,0,19,19,0,0,22,18,18,0,20,22,17,17,0,0,22,18,18,0,19,20,17,17,0,22,0,20,19,0,22,21,17,17,0,0,0,18,18,0,0,0,22,19,0,20,0,17,17,0,22,0,0,22,0,0,20,17,18,0,22,0,19,19,0,0,0,0,19,0,19,21,17,17,0,0,0,0,0,0,20,21,17,16,0,11,11,13,13,0,13,13,16,16,0,13,13,15,16,0,17,17,21,22,0,17,18,0,0,0,12,12,16,16,0,15,15,18,18,0,13,13,16,16,0,17,16,21,21,0,17,17,0,0,0,13,13,16,16,0,16,16,19,18,0,13,13,16,16,0,17,17,0,22,0,17,18,20,22,0,17,18,0,0,0,0,0,0,0,0,15,15,20,0,0,18,19,0,0,0,17,17,0,0,0,18,17,22,0,0,0,0,0,0,0,15,16,21,20,0,20,20,0,0,0,18,19,0,0,0,15,15,22,22,0,17,16,20,22,0,17,17,20,22,0,18,18,0,21,0,19,18,0,0,0,16,16,20,20,0,19,19,22,0,0,15,16,21,22,0,18,19,22,0,0,17,18,0,0,0,16,16,22,0,0,19,19,0,21,0,15,16,20,0,0,18,18,0,22,0,18,17,0,0,0,18,18,0,0,0,0,0,0,0,0,16,16,22,21,0,20,21,0,0,0,17,18,22,0,0,18,18,0,0,0,0,0,0,0,0,16,16,20,19,0,22,21,0,0,0,18,18,22,22,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,8,8,11,9,9,12,12,11,10,10,12,12,12,10,10,11,11,12,12,12,12,12,12,11,11,13,13,12,12,12,13,13,12,10,10,12,12,12,11,11,13,13,12,13,13,13,13,12,11,11,13,13,12,12,12,13,13,12,10,10,12,12,12,11,11,13,13,12,13,13,12,12,12,11,11,13,13,12,13,13,13,13,12,11,11,12,12,12,11,11,12,12,12,13,13,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,12,12,12,13,13,13,13,12,13,13,12,12,11,8,8,10,10,12,11,11,11,11,12,10,10,10,10,13,11,11,10,10,13,11,11,10,10,13,12,12,12,12,13,11,11,11,11,13,12,12,11,11,13,12,12,11,11,13,12,12,12,11,13,12,12,12,12,13,11,11,11,11,13,12,12,11,11,13,11,12,11,11,13,12,12,11,11,14,12,12,11,11,13,11,11,11,11,14,12,12,11,11,13,11,12,10,10,14,12,12,11,11,14,12,12,11,11,14,11,11,11,11,14,12,12,11,11,13,12,12,11,11,14,12,12,11,11,11,8,8,10,10,12,7,7,10,10,12,9,9,11,11,13,9,9,9,9,13,13,13,10,10,13,9,9,12,12,13,13,13,12,12,13,9,8,11,11,13,10,10,12,12,14,13,13,11,11,13,9,9,11,11,13,13,13,12,12,13,9,9,10,10,13,10,10,11,11,13,13,13,10,10,14,10,10,11,11,14,14,14,12,12,13,9,9,10,10,13,10,10,11,11,14,13,14,10,10,14,14,14,11,12,14,14,14,14,14,14,13,13,10,10,13,14,14,11,11,14,14,14,10,10,14,9,9,9,9,14,9,9,9,9,14,10,10,9,9,14,10,10,8,8,14,11,11,8,8,15,11,11,10,10,15,12,12,10,10,15,10,10,10,10,15,11,11,10,10,15,13,13,10,10,15,11,11,10,10,15,12,12,10,10,15,10,10,10,10,15,11,11,10,10,15,13,13,10,10,15,11,11,10,10,15,12,12,10,10,15,11,11,9,9,15,11,11,9,9,15,13,13,9,9,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,13,12,9,9,15,13,13,9,9,14,12,12,9,9,14,13,13,9,9,14,13,13,9,9,14,13,13,7,7,14,13,13,8,8,15,14,14,10,10,15,14,14,10,10,15,14,14,10,10,15,14,14,10,10,15,14,14,9,9,15,14,14,10,10,15,14,14,10,10,14,14,14,9,9,15,14,14,10,10,14,14,14,9,9,15,14,14,10,10,15,14,14,10,10,14,14,14,9,9,14,14,14,9,9,14,14,14,8,8,15,14,14,10,10,15,14,14,11,11,15,14,14,9,9,15,14,14,9,9,14,14,14,8,8,13,9,9,12,12,17,11,11,12,12,17,12,12,12,12,17,12,12,11,11,18,15,15,12,12,17,12,12,12,12,17,14,15,13,13,17,12,12,12,12,17,13,13,12,13,17,15,15,12,12,18,13,13,13,13,18,15,15,13,13,18,12,12,12,12,18,13,13,13,13,18,15,15,12,12,18,13,13,12,12,18,15,15,13,13,18,13,13,12,12,17,13,13,12,12,17,15,15,12,12,18,15,15,13,13,18,15,15,13,14,18,15,16,12,12,18,15,15,12,12,18,16,16,12,12,13,8,8,10,10,14,15,14,11,11,14,15,15,12,12,15,14,14,12,11,15,15,15,12,12,15,15,15,12,12,15,15,15,13,13,15,15,15,12,12,15,15,15,13,13,15,15,15,13,13,15,15,15,13,13,15,15,16,13,13,15,15,15,12,12,15,15,15,13,13,15,15,15,13,13,15,15,15,13,13,15,15,15,13,13,15,15,14,12,12,15,15,15,12,12,16,15,14,12,12,16,15,15,13,13,16,16,16,13,13,16,15,15,12,12,15,15,15,13,13,15,15,15,12,12,13,12,12,10,10,14,14,14,11,11,15,14,14,12,12,15,14,14,11,11,15,14,14,11,11,15,15,15,13,13,15,14,14,13,13,15,15,15,12,12,15,14,15,13,13,16,15,15,12,12,15,15,15,13,13,16,14,14,13,13,15,15,15,12,12,15,15,15,13,13,16,15,15,12,12,16,15,15,12,12,16,14,14,13,13,15,15,15,11,11,15,15,15,12,12,16,15,15,11,11,16,15,15,13,13,16,14,15,14,14,16,15,15,12,12,16,15,14,12,12,16,15,15,12,12,14,10,10,9,9,14,11,11,12,12,14,12,12,13,13,14,12,12,12,12,15,14,14,13,13,15,13,13,14,14,15,14,14,15,15,15,12,12,13,13,15,13,13,14,14,15,14,14,13,13,15,13,13,13,14,15,14,14,15,15,15,12,12,13,13,15,13,13,14,14,15,14,14,13,13,15,13,13,14,14,15,14,14,15,15,15,13,13,12,12,15,13,13,13,13,15,14,14,13,12,15,15,15,14,15,15,15,14,20,20,15,14,14,13,13,15,14,14,13,13,15,14,14,13,13,14,12,12,9,9,14,14,14,12,12,14,13,13,12,13,14,14,14,12,12,15,14,14,12,12,15,14,14,14,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,15,15,15,14,14,15,14,14,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,15,15,15,15,14,15,15,15,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,14,15,15,14,14,15,15,15,14,14,15,14,14,14,14,15,15,15,14,14,15,14,14,13,14,15,15,15,14,14,13,10,10,12,12,17,11,11,12,12,17,12,12,12,12,17,12,12,11,11,17,15,15,12,11,18,13,13,13,13,18,15,15,13,13,17,12,12,12,12,18,13,13,13,13,17,15,15,12,12,17,12,12,12,12,17,15,15,13,13,17,12,12,12,12,17,13,13,12,12,17,15,15,12,12,18,14,13,12,12,18,15,15,13,13,18,13,13,12,12,18,13,13,12,12,18,16,16,12,12,18,16,16,12,12,18,15,15,13,13,18,16,16,12,12,17,15,15,12,12,17,16,16,12,12,13,8,8,10,10,14,14,15,12,12,14,15,15,12,12,15,14,14,12,12,15,15,14,12,12,15,15,15,13,13,15,15,15,13,13,15,15,15,12,12,16,15,15,13,13,16,15,15,13,13,15,15,15,12,12,15,15,15,14,14,15,15,15,12,12,15,15,15,13,13,16,15,15,13,13,15,15,15,13,13,16,15,15,13,13,15,15,14,12,12,15,15,15,12,12,16,14,15,13,13,16,15,15,13,13,15,16,15,13,13,16,15,14,13,13,16,15,15,13,13,16,15,15,13,13,13,12,12,11,11,14,14,14,11,11,14,14,14,12,12,15,14,14,11,11,16,14,14,11,11,15,15,15,12,13,16,14,14,13,13,15,15,15,12,12,15,14,14,13,13,16,15,15,12,12,15,15,15,12,12,15,14,14,13,13,15,15,15,12,12,15,14,14,12,12,16,15,15,12,12,16,15,15,12,12,16,14,14,13,13,15,15,15,11,11,15,15,14,12,12,16,15,15,11,11,16,15,15,12,12,16,14,14,13,13,16,15,15,11,11,16,14,14,12,12,16,15,15,11,11,14,10,10,9,9,14,11,11,12,12,14,12,12,13,14,14,12,12,12,12,14,14,14,13,13,15,13,13,14,14,15,14,14,15,15,15,12,12,13,13,15,13,13,14,14,15,15,15,14,14,15,13,13,14,14,15,15,15,15,15,15,12,12,13,13,15,13,13,14,14,15,14,14,13,13,15,13,13,14,14,15,14,14,15,15,15,12,12,13,13,15,13,13,13,13,14,14,14,13,13,15,15,15,14,15,15,15,15,21,19,15,14,14,13,13,15,14,14,14,14,14,14,14,13,13,14,12,12,9,9,14,14,14,12,12,14,14,13,13,13,14,14,14,12,12,14,14,14,12,12,15,14,14,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,15,15,15,15,15,15,14,14,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,14,15,15,15,15,15,14,15,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,14,15,15,14,14,15,15,15,14,14,15,14,14,14,14,15,15,15,15,15,15,14,14,14,13,14,15,15,14,14,13,10,10,12,12,18,12,12,12,12,17,12,12,12,12,18,13,13,11,11,18,15,14,11,11,17,13,13,13,13,18,15,15,12,12,18,12,12,12,12,17,13,13,12,12,18,15,15,12,12,18,13,13,13,12,18,15,15,13,13,18,13,13,12,12,18,13,13,12,12,18,15,15,12,12,17,13,13,12,12,17,15,15,12,12,17,12,12,11,11,17,13,13,11,11,17,15,15,11,11,18,16,16,12,12,18,15,15,13,13,18,15,15,11,11,17,15,15,12,12,18,15,15,11,11,13,8,8,10,10,14,14,14,11,11,15,15,15,12,12,15,14,14,11,11,16,14,14,12,12,15,15,15,12,12,15,15,15,13,13,15,15,15,12,12,15,15,15,12,12,16,15,15,13,13,15,15,15,12,12,15,15,15,13,13,16,15,15,12,12,15,15,15,12,12,16,15,15,13,13,16,15,15,12,12,15,15,15,13,13,15,14,14,12,12,15,15,15,12,12,16,15,14,12,12,16,15,15,13,13,16,16,16,13,13,16,14,15,13,13,15,15,15,13,13,16,15,15,12,12,13,12,12,10,10,14,14,14,11,11,15,14,14,12,12,15,14,14,11,11,16,14,14,11,11,15,14,15,12,12,15,14,14,13,13,15,15,15,12,12,15,14,14,12,12,15,14,15,12,12,15,15,15,12,12,16,14,14,13,13,15,15,15,11,12,16,14,14,12,12,16,15,15,12,12,15,15,15,12,12,16,14,14,12,12,15,15,15,11,11,15,14,14,11,12,15,15,14,11,11,16,15,15,12,12,16,14,14,13,13,16,15,15,11,11,16,14,14,12,12,16,15,15,11,11,13,10,10,8,8,14,12,12,12,12,14,12,12,13,13,14,12,12,12,12,14,14,14,13,13,15,13,13,14,14,15,15,14,15,15,15,13,13,13,13,15,13,13,14,14,15,14,15,14,14,15,13,13,13,13,15,15,15,15,15,15,12,12,13,12,15,13,13,14,14,15,14,14,13,13,15,13,13,14,13,15,15,15,16,16,15,13,13,12,12,15,13,13,13,13,14,14,14,12,12,15,15,15,14,14,15,15,15,20,20,15,14,14,13,13,15,15,14,14,14,15,14,14,13,13,13,12,12,9,9,14,13,13,12,12,14,13,13,12,12,14,14,14,12,12,14,14,14,13,13,15,14,14,13,13,15,14,14,14,14,15,15,14,12,12,15,14,14,13,13,15,14,15,14,15,15,14,14,13,13,15,14,14,14,14,15,14,14,12,12,15,14,14,13,13,14,15,14,15,14,15,14,14,13,13,15,14,14,14,14,15,14,14,12,12,15,14,14,13,13,15,15,15,14,14,15,15,15,14,14,16,14,14,14,14,15,15,15,14,14,15,14,14,14,14,14,15,15,14,14,13,13,13,12,13,17,15,15,12,12,17,15,15,12,12,18,15,15,11,11,17,16,16,11,11,18,16,16,13,13,18,17,16,13,13,18,16,16,12,12,18,16,16,12,12,18,17,17,12,12,17,16,16,12,13,17,16,16,12,13,17,16,16,12,12,17,16,16,12,12,18,17,16,12,12,18,16,16,12,12,17,16,17,12,12,18,15,15,11,11,18,15,15,12,12,17,17,17,11,11,17,17,17,12,12,17,16,16,13,13,18,16,16,11,11,18,16,16,12,12,18,17,16,11,11,14,14,14,10,10,16,15,14,11,11,16,15,15,12,12,16,14,14,12,12,17,14,14,13,13,17,15,15,13,13,17,15,15,14,14,16,15,15,12,12,16,15,15,13,13,18,15,15,14,14,16,15,15,12,12,16,15,15,14,14,16,15,15,12,12,16,15,15,13,13,17,15,15,13,13,17,15,15,13,13,17,15,15,14,14,16,14,14,12,12,17,15,15,12,12,18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,17,15,14,13,13,17,15,15,14,14,17,15,15,13,13,14,12,12,11,11,15,14,14,12,12,16,14,14,12,12,16,14,14,11,11,17,14,14,12,12,16,15,14,13,13,16,14,14,13,13,16,15,15,12,12,16,14,14,13,13,17,15,15,13,13,16,15,15,13,13,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,16,15,15,12,12,17,15,15,12,12,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,16,15,15,12,12,17,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,17,15,15,12,12,14,14,14,8,8,14,14,14,13,13,14,15,15,14,14,14,14,14,14,14,15,15,15,19,19,15,15,15,14,14,15,15,16,20,19,15,15,15,14,14,15,16,16,15,15,15,15,15,19,19,15,15,15,14,14,15,16,16,19,20,15,15,15,14,14,15,15,15,15,15,15,15,15,19,19,15,15,15,15,15,15,15,16,19,20,15,14,15,14,14,15,15,15,15,15,15,15,15,20,19,15,15,15,21,19,15,16,16,20,20,15,15,14,19,19,15,15,16,20,21,15,15,15,20,19,13,12,12,9,9,14,14,14,12,12,14,13,13,13,13,14,14,14,13,13,15,14,14,20,19,15,14,14,14,13,15,14,14,19,19,15,15,14,13,13,15,14,14,14,14,15,15,15,19,20,15,14,14,13,13,15,14,14,20,19,14,15,14,13,13,15,14,14,14,13,15,15,15,19,20,15,15,14,14,14,15,14,14,21,19,15,15,15,13,13,15,14,14,14,14,14,15,15,20,20,15,15,15,21,20,15,14,14,19,20,15,15,15,20,20,15,14,14,19,20,15,15,15,21,19,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,6,7,7,7,8,8,7,8,8,10,11,11,9,8,8,7,8,8,11,11,11,9,8,8,6,7,7,9,11,11,9,11,11,10,11,11,12,13,13,11,12,12,10,11,11,13,14,14,12,12,12,6,6,6,8,6,6,8,7,7,9,7,7,11,10,10,10,6,6,9,7,7,12,10,10,11,6,7,7,7,7,11,10,10,12,10,10,11,10,10,14,13,13,13,10,10,12,11,11,15,13,13,14,10,10,8,7,7,12,11,11,12,11,11,11,11,11,14,14,14,13,12,12,12,11,11,15,15,15,13,12,12,0,10,10,0,11,11,0,11,11,0,11,11,0,14,14,0,11,11,0,11,11,0,15,15,0,11,11,7,8,8,12,10,10,12,10,10,12,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,12,11,11,12,11,11,16,14,14,14,12,12,13,12,12,15,14,14,15,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,12,12,0,14,14,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,0,8,8,0,8,8,0,9,9,0,9,9,0,9,9,0,9,9,0,9,9,0,8,8,0,6,6,0,7,7,0,7,7,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,6,6,0,6,6,0,6,6,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,6,6,0,8,8,0,9,9,0,9,9,0,10,10,0,10,10,0,10,10,0,10,10,0,11,11,0,9,9,0,7,7,0,10,10,0,10,10,0,12,11,0,12,12,0,11,11,0,11,11,0,12,12,0,10,10,0,7,7,0,10,10,0,10,10,0,12,12,0,11,12,0,11,11,0,11,11,0,11,11,0,10,10,0,8,8,0,9,9,0,9,9,0,10,10,0,10,10,0,10,9,0,10,10,0,10,10,0,9,9,0,6,6,0,10,10,0,10,10,0,11,11,0,12,12,0,11,11,0,11,11,0,12,12,0,11,11,0,7,7,0,9,9,0,9,9,0,11,11,0,11,11,0,10,10,0,10,10,0,11,11,0,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,6,7,7,0,8,8,6,9,9,8,11,11,0,8,8,0,9,9,0,12,12,0,8,8,5,7,7,7,10,10,0,12,12,8,11,11,9,12,12,0,11,12,0,12,12,0,15,15,0,12,12,0,6,6,0,6,6,0,7,7,0,7,7,0,10,10,0,7,7,0,8,8,0,11,11,0,7,7,6,7,7,10,9,9,0,11,10,10,9,9,12,12,12,0,10,10,0,11,11,0,13,13,0,11,11,7,6,6,10,10,10,0,11,11,11,11,11,12,12,12,0,11,11,0,12,12,0,15,15,0,11,11,0,11,11,0,11,11,0,12,12,0,12,12,0,14,14,0,12,12,0,12,12,0,15,15,0,11,11,0,8,8,0,10,10,0,11,11,0,11,11,0,12,12,0,12,12,0,11,11,0,15,15,0,11,11,0,6,6,0,10,10,0,12,12,0,10,10,0,13,13,0,12,12,0,13,13,0,14,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,0,0,0,8,8,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,6,6,0,0,0,7,7,0,0,0,8,8,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,10,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,0,0,10,10,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,11,0,0,0,12,12,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,0,0,10,10,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,13,13,0,0,0,0,0,0,0,0,14,13,0,0,0,0,0,0,0,0,13,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,14,14,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,12,13,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,14,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,12,12,0,0,0,14,14,0,0,0,0,0,0,0,0,14,14,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,2,2],"i8",L3,x.GLOBAL_BASE+477020),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,4,12,9,8,12,15,17,4,2,11,6,5,9,13,15,11,7,8,7,7,10,14,13,8,5,7,5,5,8,12,12,8,4,7,4,3,6,11,12,11,8,9,7,6,8,11,12,15,13,14,12,9,7,10,13,16,12,17,12,7,5,8,11,0,0,0,0,255,255,255,255,255,255,255,255,7,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+487288),d3([1,0,0,0,2,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,200,161,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,128,7,0,0,0,0,0,0,0,0,0,96,128,7,0,136,128,7,0,0,0,0,0,0,0,0,0,176,128,7,0,216,128,7,0,0,0,0,0,0,0,0,0,0,129,7,0,40,129,7,0,0,0,0,0,0,0,0,0,80,129,7,0,120,129,7,0,40,129,7,0,0,0,0,0,160,129,7,0,88,125,7,0,128,125,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,0,128,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,248,127,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,124,7,0,8,125,7,0,0,0,0,0,0,0,0,0,48,125,7,0,88,125,7,0,128,125,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,16,127,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,192,127,7,0,0,0,0,0,2,0,0,0,25,0,0,0,216,126,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,248,126,7,0,0,0,0,0,2,0,0,0,9,0,0,0,184,126,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,200,126,7,0,0,0,0,0,1,0,0,0,25,0,0,0,48,126,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,80,126,7,0,0,0,0,0,1,0,0,0,25,0,0,0,168,125,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,200,125,7,0,0,0,0,0,3,4,4,5,4,5,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,13,14,16,16,16,16,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,5,5,5,6,6,5,6,5,6,6,6,6,7,7,7,6,7,6,7,7,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,8,8,9,9,10,10,11,11,4,6,5,8,6,9,8,10,9,10,10,11,10,5,5,6,6,8,8,9,9,10,10,10,10,11,7,8,8,9,8,10,9,10,9,11,10,11,10,7,8,8,8,10,9,10,10,10,10,11,10,11,9,10,10,11,11,11,11,12,11,12,11,12,11,9,10,10,11,11,11,11,11,11,11,12,11,12,11,11,11,12,12,12,12,12,12,12,12,12,11,11,12,11,12,12,12,12,12,12,12,12,11,12,12,12,12,12,13,12,13,12,12,12,12,12,12,12,12,12,13,13,13,13,12,13,12,12,12,12,12,13,13,12,13,12,13,12,13,12,12,12,12,13,13,13,13,13,13,12,12,12,12,12,11,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,3,7,7,9,13,16,3,2,4,6,10,13,17,7,4,4,6,9,12,14,7,6,6,5,7,9,12,10,10,9,6,6,9,12,14,14,13,9,8,10,11,18,18,15,13,11,10,11,0,0,0,0,0,0,0,5,0,0,0,243,0,0,0,192,160,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,184,161,7,0,0,0,0,0,5,0,0,0,243,0,0,0,184,159,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,176,160,7,0,0,0,0,0,5,0,0,0,243,0,0,0,176,158,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,159,7,0,0,0,0,0,5,0,0,0,243,0,0,0,168,157,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,160,158,7,0,0,0,0,0,5,0,0,0,53,12,0,0,88,145,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,144,157,7,0,0,0,0,0,5,0,0,0,53,12,0,0,8,133,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,64,145,7,0,0,0,0,0,1,0,0,0,7,0,0,0,224,132,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,232,132,7,0,0,0,0,0,5,0,0,0,243,0,0,0,216,131,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,208,132,7,0,0,0,0,0,5,0,0,0,243,0,0,0,208,130,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,200,131,7,0,0,0,0,0,5,0,0,0,243,0,0,0,200,129,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,192,130,7,0,0,0,0,0,1,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,7,7,7,7,7,7,7,7,7,8,8,9,8,8,8,7,7,8,8,8,9,8,8,9,7,7,6,6,6,9,8,7,9,7,7,9,8,8,10,8,8,10,8,8,10,8,8,10,8,8,10,8,8,7,6,6,9,6,6,9,7,7,9,7,7,10,8,8,9,6,6,9,7,7,10,8,8,9,7,7,7,8,8,11,9,9,11,9,9,11,8,9,12,9,9,12,8,8,11,9,9,12,9,9,12,8,8,8,7,7,10,9,9,10,10,9,10,9,9,11,10,10,11,9,9,11,9,9,11,10,11,11,9,9,10,8,8,11,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,9,9,11,10,10,11,9,9,9,8,8,11,9,9,12,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,9,9,12,8,8,9,7,7,11,9,9,11,10,10,11,9,9,11,11,11,11,9,9,11,10,10,11,11,11,11,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,10,10,11,9,9,11,9,10,11,10,10,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,6,6,7,8,8,7,8,8,7,9,8,10,11,11,9,8,8,7,8,8,11,11,11,9,8,8,6,7,7,10,10,10,10,10,10,10,10,10,14,13,13,12,11,11,10,10,10,14,14,13,12,11,11,6,6,6,8,5,5,8,7,7,9,7,7,11,10,10,9,7,7,9,7,7,12,10,10,10,7,7,7,8,8,12,11,10,12,10,10,11,10,10,15,13,13,13,10,10,11,10,10,17,14,13,13,10,10,7,7,7,12,11,12,12,11,11,12,11,11,16,14,14,13,12,12,12,11,11,17,15,14,14,12,12,10,9,9,13,11,11,13,11,11,13,11,11,17,14,13,14,11,11,12,11,11,16,15,14,14,11,11,7,8,8,12,11,11,12,10,10,12,10,10,15,13,13,14,11,10,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,12,11,11,12,11,11,17,14,14,14,12,12,12,11,11,16,15,15,14,12,12,10,10,10,13,11,11,13,11,11,13,11,12,16,14,14,14,11,11,13,12,11,16,15,15,14,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,14,14,6,7,7,14,14,7,7,7,14,14,0,13,13,16,16,0,13,13,15,14,7,8,8,15,15,9,10,10,16,16,9,8,8,15,15,0,13,13,17,16,0,13,13,15,16,8,8,8,15,15,12,11,11,16,16,9,8,8,14,14,0,13,13,17,18,0,13,13,15,15,0,14,14,16,16,0,0,0,19,18,0,12,12,16,15,0,15,16,0,20,0,14,14,16,16,0,14,14,17,17,0,0,0,19,18,0,12,12,15,15,0,17,17,0,20,0,14,14,16,16,5,6,7,12,12,9,9,9,14,14,10,10,10,14,14,0,21,21,18,17,0,20,20,18,17,9,10,10,14,14,12,12,12,16,16,12,10,10,14,14,0,20,19,18,17,0,0,20,17,18,11,10,10,14,14,14,13,13,18,18,13,11,11,14,14,0,20,20,17,18,0,21,21,17,17,0,21,0,18,18,0,0,0,0,0,0,20,19,16,17,0,0,0,19,19,0,0,0,18,18,0,21,21,18,18,0,0,0,0,0,0,20,20,16,17,0,0,0,21,21,0,0,0,18,19,6,6,6,13,12,8,6,6,11,11,8,6,6,13,13,0,9,9,11,11,0,11,10,14,14,9,7,7,13,13,11,9,9,13,13,10,6,6,13,13,0,10,10,14,15,0,10,10,13,13,9,7,7,13,13,13,10,9,13,13,10,6,6,13,13,0,10,10,15,14,0,10,10,13,13,0,11,11,15,15,0,19,20,17,17,0,9,9,13,13,0,13,13,20,20,0,11,11,13,13,0,11,11,15,15,0,19,19,17,17,0,10,10,13,13,0,15,15,20,20,0,12,12,13,13,0,10,10,12,12,0,11,11,15,15,0,11,11,15,15,0,15,15,20,0,0,16,16,0,21,0,11,11,15,15,0,14,14,18,17,0,11,11,15,15,0,15,16,19,20,0,16,16,21,21,0,12,12,15,15,0,15,14,18,18,0,11,11,16,16,0,15,15,21,21,0,16,15,0,0,0,16,16,21,0,0,0,0,0,0,0,14,14,20,20,0,18,18,0,0,0,16,17,21,0,0,16,16,21,21,0,0,0,0,0,0,15,15,21,21,0,20,19,0,21,0,17,17,0,0,0,10,10,12,11,0,10,10,10,11,0,11,11,12,12,0,11,11,9,9,0,13,13,11,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,12,12,13,13,0,12,12,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,13,13,14,14,0,12,12,12,12,0,14,14,14,13,0,19,20,15,15,0,12,11,12,12,0,15,15,21,20,0,13,13,11,11,0,13,13,13,13,0,19,0,15,15,0,12,12,12,12,0,17,16,19,0,0,13,13,12,12,7,7,7,16,16,11,9,9,15,15,12,9,9,16,16,0,13,13,15,14,0,14,14,17,16,10,9,9,16,16,14,11,11,17,16,12,9,8,15,15,0,13,13,18,18,0,13,13,15,15,12,10,10,18,17,15,12,12,17,17,14,9,9,16,16,0,13,13,18,19,0,14,13,17,16,0,14,14,18,18,0,0,0,20,21,0,12,12,16,16,0,16,16,20,21,0,14,14,17,16,0,14,14,18,19,0,0,0,19,21,0,13,13,17,17,0,17,17,0,21,0,15,15,16,16,8,7,7,14,14,11,10,10,15,15,12,10,10,15,15,0,20,20,18,18,0,0,0,17,17,11,10,10,16,16,14,12,12,18,17,14,11,11,15,15,0,20,21,18,18,0,0,19,18,17,12,10,10,16,16,17,14,14,19,19,14,11,11,15,15,0,21,21,19,19,0,21,20,19,18,0,21,0,18,19,0,0,0,0,0,0,20,20,18,17,0,21,0,0,0,0,0,0,19,18,0,0,0,18,19,0,0,0,0,0,0,0,21,17,18,0,0,0,0,21,0,0,21,18,19,11,9,9,14,14,13,10,10,13,13,13,11,11,15,15,0,13,13,12,12,0,15,15,16,16,13,10,10,15,15,16,12,12,15,15,15,10,10,15,15,0,14,13,16,15,0,14,13,15,15,13,10,10,15,15,18,14,14,15,15,15,10,10,14,15,0,14,14,16,16,0,14,14,16,15,0,15,15,17,16,0,21,0,18,18,0,12,13,15,15,0,16,16,0,0,0,14,14,15,15,0,15,15,16,16,0,21,20,18,18,0,13,13,15,15,0,19,18,0,0,0,15,15,15,15,0,11,11,13,13,0,12,12,16,16,0,12,12,16,16,0,15,16,20,0,0,16,17,0,0,0,12,12,16,16,0,14,14,18,18,0,11,11,16,17,0,15,15,20,0,0,16,16,0,0,0,12,12,16,16,0,15,15,19,19,0,11,11,17,17,0,16,16,21,0,0,16,16,0,0,0,17,17,20,20,0,0,0,0,0,0,15,15,20,0,0,17,18,0,0,0,17,17,0,0,0,16,16,0,21,0,0,0,0,0,0,15,15,21,0,0,19,18,0,0,0,18,17,0,0,0,11,11,14,14,0,11,11,15,15,0,12,12,16,16,0,13,13,14,14,0,14,14,17,17,0,12,12,16,16,0,14,14,16,16,0,11,11,16,15,0,13,13,16,17,0,13,13,16,16,0,12,12,15,16,0,15,14,16,16,0,11,11,15,15,0,14,14,17,17,0,13,13,16,16,0,15,14,18,18,0,21,0,19,19,0,13,13,15,15,0,16,16,20,20,0,14,14,16,15,0,14,14,17,17,0,21,0,20,18,0,13,13,15,15,0,17,17,0,0,0,14,14,16,15,8,8,8,16,16,12,9,9,16,16,13,9,9,16,16,0,14,14,18,17,0,14,14,16,17,12,10,10,18,17,14,11,11,18,18,14,9,9,16,16,0,13,13,18,18,0,13,13,17,16,12,9,9,16,17,17,13,13,16,16,14,9,9,15,15,0,14,14,20,20,0,13,13,15,15,0,15,14,18,18,0,0,0,20,21,0,12,13,16,17,0,16,16,20,21,0,14,14,16,17,0,14,14,18,17,0,0,0,20,21,0,13,13,16,16,0,19,17,0,21,0,14,15,16,16,8,7,7,14,13,12,10,10,15,15,13,10,10,15,15,0,21,21,18,19,0,20,21,18,18,12,10,10,16,15,15,12,12,17,17,14,11,11,15,15,0,21,21,19,18,0,0,21,17,18,13,11,11,15,15,16,13,13,18,19,15,11,11,15,14,0,21,0,19,19,0,0,21,18,18,0,0,21,19,19,0,0,0,0,0,0,20,19,17,17,0,0,0,21,0,0,21,0,18,19,0,0,20,20,19,0,0,0,0,0,0,21,20,18,17,0,0,0,0,20,0,0,0,18,19,0,10,10,15,14,0,11,11,14,14,0,11,11,15,16,0,14,14,15,15,0,15,15,16,16,0,11,11,16,16,0,14,13,16,16,0,11,11,15,15,0,14,14,16,16,0,14,14,15,15,0,11,11,15,15,0,13,13,15,15,0,11,11,15,15,0,15,15,18,17,0,14,14,15,15,0,15,16,18,18,0,0,0,20,20,0,14,13,16,15,0,17,17,21,0,0,15,15,15,15,0,16,15,17,17,0,0,0,19,19,0,13,13,15,15,0,20,19,0,0,0,15,15,15,15,0,11,11,13,13,0,12,12,16,16,0,12,12,16,16,0,15,15,21,21,0,17,16,0,0,0,12,12,16,16,0,14,14,17,17,0,11,11,16,16,0,15,15,0,0,0,16,16,21,0,0,12,12,17,16,0,14,15,20,20,0,11,11,16,16,0,15,15,0,20,0,16,16,0,21,0,16,17,21,0,0,0,0,0,0,0,15,15,0,21,0,18,18,0,0,0,17,16,0,0,0,17,17,21,0,0,0,0,0,0,0,15,15,0,20,0,19,20,21,0,0,17,18,0,0,0,12,12,15,15,0,12,12,15,15,0,12,12,16,16,0,13,13,15,15,0,15,15,17,17,0,13,12,17,16,0,14,14,17,16,0,11,11,16,16,0,14,14,17,17,0,14,14,17,17,0,12,12,16,16,0,15,15,17,17,0,11,11,16,16,0,14,14,17,17,0,14,14,16,16,0,15,15,18,17,0,0,0,19,0,0,13,13,16,16,0,16,16,0,21,0,14,14,16,16,0,15,15,18,17,0,0,0,19,19,0,13,13,16,16,0,18,17,0,21,0,14,15,16,16,0,11,11,16,16,0,13,13,17,17,0,13,13,17,17,0,16,16,16,17,0,16,16,18,18,0,12,12,17,17,0,16,15,18,17,0,12,12,16,16,0,16,15,19,19,0,16,15,17,17,0,12,12,17,18,0,16,16,18,18,0,12,12,16,16,0,16,16,19,19,0,15,16,17,17,0,15,16,18,18,0,0,0,20,20,0,13,13,16,16,0,18,18,21,20,0,15,15,16,16,0,16,16,19,18,0,0,0,19,20,0,14,14,17,17,0,19,19,0,21,0,15,16,16,16,0,9,9,14,14,0,13,13,15,15,0,14,14,15,15,0,0,21,19,19,0,0,21,18,18,0,12,12,15,15,0,15,15,18,18,0,14,13,15,15,0,21,21,18,19,0,21,20,18,18,0,13,13,16,16,0,17,17,18,19,0,14,14,15,15,0,0,21,19,19,0,21,20,18,19,0,20,20,19,19,0,0,0,0,0,0,19,20,17,17,0,0,0,21,21,0,21,0,18,20,0,21,0,18,21,0,0,0,0,0,0,21,21,19,18,0,0,0,0,0,0,0,0,19,19,0,18,18,15,15,0,18,20,17,16,0,20,0,17,17,0,21,0,17,17,0,21,20,19,20,0,19,19,16,16,0,21,21,17,18,0,19,19,17,17,0,20,21,21,21,0,20,20,18,18,0,19,19,16,16,0,0,21,18,19,0,18,19,16,17,0,21,21,19,20,0,21,19,18,18,0,21,20,19,21,0,0,0,20,21,0,19,19,17,16,0,0,0,0,0,0,21,20,17,17,0,20,21,19,18,0,0,0,0,21,0,19,18,16,17,0,0,0,0,0,0,20,20,17,17,0,11,11,14,14,0,13,13,16,16,0,13,13,16,16,0,17,17,21,0,0,17,18,0,0,0,12,12,16,16,0,15,15,17,18,0,12,12,16,16,0,16,16,0,20,0,17,17,0,21,0,12,12,17,17,0,16,16,19,20,0,12,12,17,17,0,17,17,0,20,0,17,17,0,0,0,17,17,21,0,0,0,0,0,0,0,15,15,0,20,0,19,19,0,0,0,18,18,0,0,0,17,17,0,0,0,0,0,0,0,0,15,15,0,0,0,20,19,0,0,0,19,18,0,0,0,14,14,21,19,0,16,16,20,21,0,16,16,20,20,0,17,17,20,0,0,17,17,20,20,0,15,15,20,20,0,19,18,20,0,0,15,15,20,20,0,17,18,21,20,0,17,17,20,21,0,15,15,19,19,0,19,18,21,21,0,15,15,19,20,0,17,18,0,0,0,17,17,20,20,0,17,18,20,21,0,0,0,0,0,0,15,15,20,20,0,19,19,0,0,0,17,17,19,21,0,17,17,0,21,0,0,0,0,21,0,15,15,20,19,0,0,20,0,0,0,17,17,21,20,0,12,12,16,16,0,14,14,17,17,0,13,13,17,17,0,16,16,17,18,0,17,16,18,18,0,13,13,18,17,0,15,16,19,18,0,13,13,16,16,0,16,16,19,19,0,16,16,17,17,0,13,12,17,17,0,16,16,18,17,0,12,12,16,16,0,17,17,19,18,0,16,15,16,16,0,16,17,18,19,0,0,0,20,20,0,14,14,17,16,0,18,18,21,0,0,16,16,16,16,0,16,16,18,17,0,0,21,21,21,0,14,14,16,16,0,21,20,21,0,0,16,16,16,16,0,10,10,14,14,0,14,14,15,16,0,14,14,15,15,0,0,21,18,18,0,0,21,18,19,0,13,13,16,16,0,16,16,18,17,0,14,14,15,15,0,20,0,18,18,0,21,0,18,17,0,13,13,16,15,0,17,17,19,19,0,14,14,15,15,0,20,20,18,19,0,0,0,18,17,0,0,21,18,18,0,0,0,0,0,0,20,21,18,17,0,0,0,0,0,0,0,0,19,19,0,0,21,18,18,0,0,0,0,0,0,21,0,18,17,0,0,0,0,21,0,0,0,19,20,0,19,19,16,16,0,0,21,18,17,0,21,0,18,18,0,20,0,19,18,0,21,20,19,19,0,21,19,17,18,0,0,21,19,19,0,21,19,18,18,0,21,0,20,18,0,0,21,18,18,0,20,21,17,17,0,21,0,18,18,0,21,19,17,17,0,21,0,0,20,0,0,20,17,18,0,0,0,19,20,0,0,0,20,19,0,19,21,17,18,0,21,0,0,0,0,21,21,18,17,0,0,21,18,18,0,0,0,0,21,0,20,19,16,17,0,0,0,0,0,0,21,20,17,17,0,11,11,13,13,0,13,13,16,16,0,13,13,16,16,0,17,17,0,21,0,18,19,21,0,0,12,12,16,16,0,15,15,19,18,0,13,13,16,16,0,16,17,21,19,0,17,17,21,21,0,13,13,16,16,0,16,16,20,18,0,13,13,16,16,0,17,17,0,0,0,18,18,0,0,0,18,17,0,20,0,0,0,0,0,0,15,15,21,21,0,19,18,0,0,0,17,17,21,21,0,17,17,0,0,0,0,0,0,0,0,15,15,20,21,0,20,20,0,0,0,19,19,0,0,0,14,15,21,19,0,16,16,0,21,0,17,16,21,21,0,17,18,21,20,0,18,18,0,21,0,16,16,0,20,0,19,19,0,0,0,16,15,0,20,0,18,18,0,0,0,17,17,0,21,0,16,16,20,20,0,20,19,0,0,0,15,16,21,22,0,18,18,0,0,0,18,17,0,0,0,18,18,0,0,0,0,0,0,0,0,16,16,21,20,0,19,20,0,0,0,18,17,21,0,0,17,18,0,0,0,0,0,0,0,0,16,16,0,20,0,0,20,0,0,0,18,18,22,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,3,4,7,7,10,12,12,12,12,10,11,11,13,13,11,12,12,11,11,12,12,12,12,12,11,13,13,13,13,12,12,12,13,14,12,13,13,13,13,12,13,13,13,13,12,13,13,13,13,11,13,13,13,13,12,12,12,14,14,12,13,13,12,12,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,14,14,12,13,13,12,12,12,13,13,13,13,12,13,13,12,12,12,13,13,13,13,12,12,12,14,14,12,13,13,12,12,12,13,13,13,13,12,13,13,12,12,10,10,11,10,10,11,11,11,11,11,11,9,9,10,10,12,11,11,10,10,12,10,10,10,10,13,12,12,12,12,13,11,11,11,11,13,12,12,12,12,13,11,11,11,11,13,12,12,12,12,13,12,12,12,12,13,11,11,11,11,13,12,12,12,12,13,11,11,11,11,13,12,12,11,11,13,12,12,11,11,13,11,11,11,11,13,12,12,11,11,13,11,11,11,11,13,12,12,11,11,13,12,12,11,11,13,11,11,11,11,13,12,12,11,11,13,11,11,11,11,13,12,12,11,11,11,11,11,10,10,11,11,11,9,9,11,12,12,11,11,12,12,12,9,9,13,13,13,10,10,13,13,13,11,11,13,13,13,14,14,13,13,13,11,10,13,13,14,12,12,13,13,13,11,11,13,13,13,11,11,13,13,13,14,14,13,13,13,10,10,13,13,13,11,11,13,13,13,10,10,13,14,13,11,11,13,14,14,14,14,13,13,13,10,10,13,14,14,11,11,13,13,13,10,10,13,14,14,11,11,13,13,13,14,14,14,13,13,10,10,13,14,14,11,11,13,13,13,10,10,14,12,12,9,9,14,12,12,9,9,14,11,11,9,9,14,12,12,8,8,14,11,11,7,7,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,9,9,15,12,12,9,9,14,13,13,9,9,15,13,13,10,10,15,12,12,10,10,15,13,13,9,9,15,12,12,9,9,15,13,13,9,9,13,12,12,9,9,13,13,13,8,8,13,13,13,9,9,13,13,13,7,7,14,13,13,8,8,14,14,14,10,10,15,14,14,11,11,14,14,14,9,9,15,14,14,10,10,15,14,14,9,9,14,14,14,10,10,15,14,14,11,11,15,14,14,9,9,14,14,14,10,10,14,14,14,9,9,15,14,15,10,10,15,14,14,11,11,14,14,14,9,9,14,14,14,9,9,14,14,14,8,8,15,14,14,10,10,15,14,14,11,11,14,14,14,9,9,15,14,14,9,9,14,14,14,8,8,12,12,12,13,13,16,16,16,11,11,17,16,16,12,12,17,16,16,11,11,17,16,16,11,11,17,17,16,13,13,17,16,16,13,13,18,17,16,12,12,17,16,16,13,13,17,16,17,12,12,18,17,17,13,13,17,16,16,14,14,18,17,17,12,12,18,16,16,13,13,17,17,17,13,12,17,17,17,13,13,17,16,16,13,13,18,17,17,12,12,17,16,16,13,12,17,17,17,12,12,18,17,17,13,13,18,16,16,14,14,18,17,17,12,12,17,17,17,13,13,18,17,18,12,12,13,14,14,10,10,16,14,14,13,13,17,15,15,14,14,17,14,14,12,13,16,14,14,13,13,17,15,15,14,14,16,16,16,15,15,17,15,15,14,14,17,16,16,14,15,17,15,15,14,14,17,15,16,14,14,17,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,14,17,15,15,14,14,16,16,16,15,15,17,15,15,13,13,17,15,15,14,14,17,15,15,13,13,17,15,15,14,14,16,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,13,11,11,10,10,16,14,14,13,12,16,14,14,13,13,16,15,14,12,12,16,14,14,12,12,16,15,15,14,14,16,14,14,14,14,17,15,15,13,13,16,15,15,14,14,17,15,15,13,14,17,15,15,14,14,17,15,14,14,14,17,15,15,13,13,17,15,15,14,14,17,15,15,13,13,17,15,15,14,14,17,14,14,14,14,17,15,15,13,13,17,15,15,13,13,17,15,15,13,13,17,15,15,14,14,17,15,15,14,14,17,15,15,13,13,17,15,15,13,13,17,15,15,13,13,14,14,15,8,8,14,14,14,19,19,14,15,15,18,19,14,14,14,19,18,14,14,14,19,19,15,15,15,19,18,15,16,16,19,19,15,15,15,19,19,15,16,16,20,19,15,15,15,19,19,15,15,15,19,19,16,16,16,20,19,15,15,15,19,18,15,16,16,20,19,15,15,15,18,18,15,15,15,19,20,15,16,16,19,19,15,15,15,20,19,15,15,15,20,19,15,15,15,19,18,15,15,15,19,19,15,16,16,19,20,15,15,15,19,19,15,15,15,19,20,15,15,15,19,19,14,12,12,9,9,14,14,14,19,19,14,14,14,19,19,14,14,15,20,19,15,14,14,18,19,15,15,15,19,19,15,15,14,20,19,15,15,15,20,19,15,15,14,20,19,15,15,15,20,19,15,15,15,19,20,15,14,14,19,20,15,15,15,20,20,15,14,14,20,19,15,15,15,19,19,15,15,15,19,19,15,14,14,19,19,15,15,15,19,20,15,15,15,20,20,15,15,15,19,19,15,15,15,20,19,16,14,14,19,19,15,15,15,20,19,15,14,15,20,19,14,15,15,20,19,12,12,12,13,13,16,16,16,11,11,16,16,16,12,12,17,16,16,11,11,17,15,16,11,11,17,17,17,13,13,18,16,17,13,13,18,17,17,13,12,17,16,17,13,13,17,17,17,13,13,16,16,16,12,12,17,16,16,13,13,17,16,16,12,12,17,16,16,12,13,17,17,17,12,12,17,17,17,13,13,18,16,16,13,13,18,17,17,12,12,18,17,17,12,12,17,17,17,12,12,17,17,17,12,12,17,16,16,13,13,17,17,17,12,12,17,16,16,12,12,17,17,17,12,12,13,14,14,9,9,16,14,14,13,13,16,15,15,14,14,17,14,14,13,13,16,14,14,13,13,17,15,15,15,15,16,16,16,15,15,17,15,15,14,14,17,15,15,15,15,17,15,15,14,14,17,15,15,14,14,16,16,16,15,15,17,15,15,14,14,17,15,15,14,14,17,15,15,14,14,17,15,15,14,14,16,16,16,15,15,18,15,15,14,13,17,15,15,14,14,17,15,15,13,13,17,15,15,14,14,16,16,16,15,15,17,15,15,14,13,17,15,15,14,14,17,15,15,13,13,13,11,11,11,11,16,14,14,12,12,16,14,14,13,13,16,15,14,12,12,17,14,14,12,12,17,15,15,13,13,17,14,14,14,14,17,15,15,13,13,17,14,15,14,13,17,15,15,13,13,16,15,15,13,13,16,14,14,14,14,17,15,15,13,13,16,14,14,13,13,16,15,15,13,13,17,15,15,13,13,17,14,14,14,14,17,15,15,12,12,17,15,15,13,13,17,15,15,12,12,16,15,15,13,13,17,14,14,13,14,17,15,15,12,12,17,14,14,13,13,17,15,15,12,12,14,14,14,8,8,14,14,14,18,18,14,15,15,19,19,14,14,14,19,19,14,15,14,18,19,15,15,15,18,19,15,16,16,20,20,15,15,15,19,20,15,16,16,19,20,15,15,15,19,20,15,15,16,19,19,15,16,16,20,20,15,15,15,20,19,15,16,16,20,19,15,15,15,19,20,15,15,15,19,19,15,16,16,20,19,15,15,15,19,19,15,16,15,20,19,15,15,15,19,19,15,15,15,19,20,15,16,16,20,20,15,15,15,19,19,15,15,15,20,20,15,15,15,19,19,14,12,12,9,9,14,14,14,18,18,14,14,14,19,20,14,14,14,18,18,14,14,14,18,19,15,15,15,19,20,15,14,14,19,19,15,15,15,19,19,15,14,15,19,19,15,15,15,18,20,15,15,15,19,19,15,14,14,19,19,15,15,15,20,19,15,15,14,20,20,15,15,15,19,19,15,15,15,19,19,15,14,14,19,19,15,15,15,19,19,15,14,14,19,20,14,15,15,19,19,15,15,15,19,19,15,14,14,20,19,15,15,15,19,19,15,14,14,20,19,15,15,15,19,19,13,12,12,13,13,17,17,16,11,11,16,16,16,12,12,17,17,16,11,11,17,16,16,11,11,17,17,17,13,13,17,16,16,13,13,18,17,17,12,12,17,16,16,13,13,18,17,17,12,12,18,17,17,13,13,18,16,17,13,13,17,17,17,12,12,18,17,17,13,13,18,17,17,12,12,17,16,17,12,12,17,16,16,13,13,17,16,16,11,11,17,16,16,12,12,17,17,17,11,11,17,17,17,12,12,18,16,16,13,13,18,17,17,12,11,17,16,16,12,12,18,17,17,11,11,13,14,14,9,9,16,14,14,13,13,16,15,15,14,14,17,14,14,12,12,16,14,14,13,13,17,15,15,14,14,17,16,16,15,16,18,15,15,14,14,17,15,15,14,14,17,15,15,14,14,18,15,15,14,14,16,16,16,15,16,18,15,15,14,14,17,16,15,14,14,18,15,15,14,14,17,15,15,14,14,17,16,16,15,15,18,14,15,13,13,17,15,15,14,14,18,15,15,13,13,17,15,15,14,14,17,16,15,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,13,11,11,10,10,16,14,14,12,12,16,14,14,12,12,17,14,15,11,11,17,14,14,11,11,17,15,15,13,13,17,14,14,14,13,17,15,15,13,13,16,15,15,13,13,17,15,15,13,13,17,15,15,13,13,17,14,14,14,14,17,15,15,13,13,17,14,15,13,13,16,15,15,13,13,17,15,15,13,13,17,14,14,13,13,17,15,15,12,12,16,14,14,12,12,17,15,15,12,12,17,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,17,15,15,12,12,13,15,14,8,8,14,14,14,19,19,14,15,15,18,19,14,14,14,18,19,14,15,14,19,19,15,16,15,19,19,15,16,16,19,20,15,15,15,19,19,15,16,16,19,19,15,16,16,19,19,15,15,15,19,19,15,16,16,20,20,15,15,15,19,19,15,15,15,19,19,15,15,15,19,19,15,15,15,19,19,15,16,16,20,19,15,15,15,19,19,15,15,15,19,19,15,15,15,19,19,15,16,15,19,19,15,16,16,21,19,15,15,15,20,20,15,15,15,20,21,15,15,15,19,20,14,12,12,8,8,14,14,14,19,19,14,13,13,19,19,14,14,14,19,19,14,13,14,19,19,15,15,15,20,20,15,14,14,20,19,15,15,15,19,20,15,14,14,19,20,15,15,15,20,19,15,15,15,19,20,15,14,14,20,20,15,15,15,20,19,15,14,14,19,19,15,15,15,19,19,15,15,15,20,19,15,14,14,21,19,15,15,15,20,21,15,14,14,21,19,15,15,15,19,19,15,15,15,20,20,15,14,14,19,21,15,15,15,19,19,15,14,14,19,20,15,15,15,19,19,13,12,12,13,13,17,16,16,11,11,17,16,15,12,12,18,16,16,11,11,17,16,16,11,11,18,17,17,13,13,18,16,16,13,13,17,17,17,12,13,18,17,16,13,13,18,17,17,13,13,17,17,17,13,13,17,16,16,13,13,18,16,17,12,12,17,16,16,13,12,17,17,17,12,12,18,17,17,13,12,18,16,16,13,13,18,17,17,12,12,17,16,16,12,12,17,17,17,11,11,17,16,16,12,12,17,16,16,13,13,17,16,16,11,11,17,16,16,12,12,17,17,17,11,11,13,14,14,9,9,16,14,14,13,13,16,15,15,14,14,17,14,14,12,12,16,14,14,13,13,17,15,15,14,14,17,15,16,15,15,17,15,15,14,14,17,15,16,14,15,18,15,15,14,14,17,15,15,14,14,16,16,16,15,15,18,15,15,13,14,17,15,15,14,14,18,15,15,14,14,17,15,15,14,14,17,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,13,11,11,10,10,16,14,14,12,12,16,14,14,13,13,17,14,14,11,11,17,14,14,12,12,17,15,15,14,14,17,14,14,14,14,17,15,15,13,13,17,15,14,13,13,16,15,15,13,13,16,15,15,13,13,17,14,14,14,14,17,15,15,13,13,17,14,14,13,13,16,15,15,13,13,16,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,16,15,15,12,12,17,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,16,15,15,12,12,14,14,14,8,8,14,14,14,18,18,14,15,15,19,18,14,14,14,18,18,14,14,14,18,19,15,16,15,19,19,15,17,16,20,20,15,15,15,19,19,15,16,16,19,19,15,15,15,19,19,15,16,15,18,19,15,16,16,20,20,15,15,15,19,19,15,16,16,19,20,15,15,15,19,19,15,15,16,19,19,15,16,16,20,20,15,15,15,19,19,15,15,15,19,20,15,15,15,19,19,15,15,15,19,19,15,16,16,20,20,15,15,15,19,20,15,16,16,20,20,15,15,15,19,19,13,12,12,8,8,14,14,14,19,20,14,14,14,19,19,14,14,14,18,19,14,14,14,19,20,15,15,15,19,20,15,14,14,21,20,15,15,15,20,20,15,15,14,19,19,15,15,15,19,19,15,15,15,19,19,15,14,14,19,20,15,15,15,19,20,15,14,14,19,19,15,15,15,19,19,15,15,15,19,19,16,14,14,19,19,15,15,15,20,20,15,14,14,21,19,15,15,15,19,19,15,15,15,19,20,16,14,14,19,20,15,15,15,19,19,15,14,14,19,19,15,15,15,20,19,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,6,7,7,7,8,8,7,8,8,10,11,11,9,8,8,7,9,9,11,12,12,9,8,8,6,7,7,9,11,11,10,11,11,10,11,11,13,13,13,11,12,12,10,11,11,13,14,14,12,12,12,6,6,6,8,6,6,8,6,6,9,7,7,12,10,10,10,6,6,9,7,7,12,10,10,11,7,6,7,8,8,12,10,10,12,10,10,11,10,10,15,13,13,13,10,10,12,11,11,15,13,13,14,11,11,8,7,7,12,11,11,12,11,11,11,11,11,14,14,14,13,12,12,12,11,11,16,15,15,14,12,12,0,10,10,0,11,11,0,12,12,0,11,11,0,14,14,0,11,11,0,11,11,0,15,15,0,11,11,7,8,8,13,10,10,12,10,10,12,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,13,11,11,12,11,11,15,14,14,14,12,12,13,12,12,15,14,14,15,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,12,12,0,15,14,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,0,8,8,0,8,8,0,10,10,0,9,9,0,10,10,0,10,10,0,9,9,0,10,10,0,7,7,0,7,7,0,7,7,0,8,8,0,8,8,0,8,8,0,9,9,0,8,8,0,8,8,0,7,7,0,8,8,0,8,8,0,10,10,0,9,9,0,9,9,0,10,10,0,9,9,0,10,10,0,8,8,0,11,11,0,11,11,0,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,12,12,0,8,8,0,11,11,0,11,11,0,13,12,0,12,12,0,13,12,0,13,13,0,12,12,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,11,11,0,11,11,0,13,12,0,12,12,0,12,12,0,12,12,0,11,11,0,12,12,0,8,8,0,12,12,0,12,12,0,13,13,0,12,12,0,13,13,0,13,13,0,12,13,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,0,7,7,0,8,8,0,9,9,0,12,12,0,8,8,0,9,9,0,12,12,0,8,8,0,6,6,0,11,11,0,11,11,0,12,12,0,14,14,0,11,11,0,12,12,0,14,14,0,11,11,0,6,6,0,6,5,0,7,6,0,7,7,0,10,10,0,6,6,0,7,7,0,10,10,0,7,7,0,7,7,0,10,10,0,11,11,0,11,11,0,14,14,0,10,10,0,12,12,0,14,14,0,12,12,0,6,6,0,11,11,0,11,11,0,12,12,0,14,14,0,11,11,0,12,12,0,15,15,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,11,11,0,11,11,0,12,12,0,15,15,0,12,12,0,11,11,0,15,15,0,11,11,0,6,6,0,11,11,0,12,12,0,12,12,0,15,15,0,11,11,0,12,12,0,14,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,2,2],"i8",L3,x.GLOBAL_BASE+489700),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,5,7,8,10,13,14,4,2,4,6,8,11,12,7,4,3,5,8,12,14,8,5,4,4,8,12,12,9,7,7,7,9,10,11,13,11,11,9,7,8,10,13,11,10,6,5,7,9,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,224,200,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,167,7,0,0,0,0,0,0,0,0,0,120,167,7,0,160,167,7,0,0,0,0,0,0,0,0,0,200,167,7,0,240,167,7,0,0,0,0,0,0,0,0,0,24,168,7,0,64,168,7,0,0,0,0,0,0,0,0,0,104,168,7,0,144,168,7,0,64,168,7,0,0,0,0,0,184,168,7,0,112,164,7,0,152,164,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,24,167,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,16,167,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,163,7,0,32,164,7,0,0,0,0,0,0,0,0,0,72,164,7,0,112,164,7,0,152,164,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,40,166,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,216,166,7,0,0,0,0,0,2,0,0,0,25,0,0,0,240,165,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,166,7,0,0,0,0,0,2,0,0,0,9,0,0,0,208,165,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,224,165,7,0,0,0,0,0,1,0,0,0,25,0,0,0,72,165,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,104,165,7,0,0,0,0,0,1,0,0,0,25,0,0,0,192,164,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,224,164,7,0,0,0,0,0,3,4,4,5,4,5,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,12,14,14,14,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,5,5,5,7,5,5,5,5,6,7,7,6,7,7,7,6,7,7,7,7,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,3,4,7,7,8,8,9,9,9,10,10,10,5,6,5,8,7,9,8,9,9,10,9,11,10,5,5,7,7,8,8,9,9,9,9,10,10,11,8,9,8,10,9,10,9,10,9,11,10,11,10,8,8,9,9,10,9,10,9,11,10,11,10,11,10,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,12,11,11,11,11,11,11,10,12,12,12,12,12,12,12,11,12,12,12,11,11,11,12,12,12,12,12,12,12,11,12,11,12,11,11,13,12,12,12,13,12,12,12,12,11,12,11,11,13,13,13,12,12,12,12,12,12,11,11,11,10,13,13,13,12,13,12,13,11,13,10,12,11,11,13,13,12,13,12,12,12,12,11,12,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,2,3,6,7,10,14,16,3,2,5,7,11,14,17,6,5,5,7,10,12,14,7,7,6,6,7,9,13,10,11,9,6,6,9,11,15,15,13,10,9,10,12,18,18,16,14,12,13,16,0,0,0,0,0,0,0,5,0,0,0,243,0,0,0,216,199,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,208,200,7,0,0,0,0,0,5,0,0,0,243,0,0,0,208,198,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,200,199,7,0,0,0,0,0,5,0,0,0,243,0,0,0,200,197,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,192,198,7,0,0,0,0,0,5,0,0,0,243,0,0,0,192,196,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,184,197,7,0,0,0,0,0,5,0,0,0,53,12,0,0,112,184,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,168,196,7,0,0,0,0,0,5,0,0,0,53,12,0,0,32,172,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,88,184,7,0,0,0,0,0,1,0,0,0,7,0,0,0,248,171,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,0,172,7,0,0,0,0,0,5,0,0,0,243,0,0,0,240,170,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,232,171,7,0,0,0,0,0,5,0,0,0,243,0,0,0,232,169,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,224,170,7,0,0,0,0,0,5,0,0,0,243,0,0,0,224,168,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,216,169,7,0,0,0,0,0,1,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,7,7,7,8,8,7,7,7,7,8,8,8,8,9,8,7,7,8,8,8,9,9,9,9,7,7,6,6,6,9,7,7,9,7,7,9,8,8,10,8,8,10,8,8,10,8,8,10,8,8,10,8,8,7,6,6,9,6,6,9,6,6,9,7,7,10,8,8,9,6,6,9,7,7,10,8,8,9,7,7,7,8,8,11,9,9,11,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,10,9,12,8,8,8,7,7,10,9,9,11,9,9,11,9,9,11,11,10,11,9,9,11,10,9,11,10,11,11,9,9,10,8,8,11,9,9,11,9,9,11,9,9,11,10,10,11,9,9,11,9,9,11,10,10,11,9,9,9,8,8,12,9,9,12,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,9,9,12,8,8,9,7,7,11,9,10,11,10,9,11,9,9,11,11,11,11,9,9,11,10,10,11,11,11,11,9,9,10,9,9,11,9,9,11,10,10,11,10,9,11,10,10,11,9,9,11,10,10,11,10,11,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,6,6,6,8,8,7,8,8,7,9,8,10,11,11,9,8,8,7,8,8,11,11,11,9,8,8,6,7,7,10,10,10,10,10,10,10,10,10,14,13,13,12,11,11,10,10,10,14,14,13,13,11,11,6,6,6,8,5,5,8,7,7,8,7,7,11,9,9,9,7,7,8,7,7,12,10,10,10,7,7,7,8,8,12,11,11,12,10,10,11,10,10,14,13,13,13,10,10,11,10,11,16,14,14,13,10,10,7,8,7,12,12,12,12,11,11,12,11,11,16,14,15,13,12,12,11,11,11,17,15,14,14,13,13,10,9,9,13,11,11,13,11,11,12,11,11,16,14,13,14,11,11,12,11,11,16,15,14,14,11,11,7,8,8,12,11,11,12,10,10,12,10,10,16,14,13,13,11,11,12,10,10,16,14,14,13,10,10,8,8,8,12,12,12,12,11,11,12,11,11,16,14,15,14,12,12,12,11,11,16,15,15,14,12,12,10,10,10,13,11,11,13,11,11,12,12,12,16,14,14,14,11,11,12,11,11,17,14,15,14,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,14,14,6,8,8,14,14,7,7,7,14,14,0,13,13,15,16,0,13,13,15,15,7,8,8,15,15,9,10,10,16,16,9,8,8,14,15,0,13,13,17,17,0,13,13,16,16,8,8,8,15,15,12,11,11,16,16,9,8,8,14,14,0,13,13,17,17,0,13,13,15,15,0,14,14,16,16,0,0,0,18,19,0,12,12,16,15,0,16,16,0,20,0,14,14,16,16,0,14,14,17,17,0,0,0,19,19,0,12,12,15,15,0,18,17,21,21,0,14,14,16,16,5,7,7,12,13,9,10,9,14,14,11,10,10,14,14,0,0,0,18,17,0,20,21,18,18,9,10,10,14,14,12,12,12,17,16,12,10,10,14,14,0,20,20,18,17,0,21,21,17,17,11,10,10,14,14,15,13,13,18,18,13,11,11,14,14,0,20,0,18,18,0,20,21,18,17,0,21,0,18,19,0,0,0,0,21,0,21,20,16,17,0,0,0,21,21,0,0,0,20,18,0,20,0,17,18,0,0,0,0,0,0,0,20,16,17,0,0,0,20,0,0,0,0,18,18,6,6,6,13,13,8,5,5,11,11,9,6,6,13,13,0,9,9,12,12,0,10,10,14,14,9,7,7,13,13,12,9,9,13,13,10,6,6,13,13,0,10,10,14,14,0,10,10,13,13,9,7,7,13,13,13,10,10,13,13,11,6,6,13,13,0,10,10,15,15,0,10,10,13,13,0,12,11,15,15,0,20,19,17,16,0,9,9,13,13,0,13,13,20,19,0,11,11,13,13,0,11,11,15,15,0,20,19,17,17,0,10,10,13,13,0,14,15,0,21,0,12,12,13,13,0,10,10,12,12,0,11,11,15,15,0,11,11,15,15,0,15,15,20,20,0,16,16,0,0,0,11,11,15,15,0,14,14,17,17,0,11,11,15,15,0,15,15,20,21,0,16,16,21,21,0,12,12,15,15,0,15,15,18,20,0,11,11,16,15,0,15,15,21,21,0,16,16,0,21,0,16,16,0,0,0,0,0,0,0,0,14,14,21,21,0,17,18,0,0,0,16,17,20,0,0,16,16,0,0,0,0,0,0,0,0,15,15,20,20,0,19,18,0,21,0,18,17,0,0,0,10,10,11,11,0,10,10,10,10,0,11,11,12,12,0,11,11,9,9,0,13,13,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,12,12,13,13,0,12,12,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,13,13,13,13,0,12,12,12,12,0,14,13,13,13,0,19,21,15,15,0,12,11,12,12,0,16,15,19,19,0,13,13,11,11,0,13,13,13,13,0,0,21,15,16,0,12,12,12,12,0,16,16,19,21,0,13,13,12,12,7,7,7,16,16,11,9,9,16,16,12,9,9,16,16,0,13,13,16,16,0,14,14,17,16,11,9,9,16,16,14,12,11,17,17,13,8,9,15,15,0,13,13,19,19,0,13,13,16,15,12,10,10,17,17,15,12,12,19,18,14,9,9,17,16,0,14,14,18,0,0,14,13,16,16,0,14,15,18,17,0,21,0,19,21,0,12,12,16,16,0,16,16,0,0,0,14,14,16,16,0,14,14,18,18,0,0,21,20,0,0,13,13,16,17,0,18,18,0,0,0,15,14,17,16,8,7,7,14,14,11,10,10,15,15,13,10,10,15,15,0,21,20,19,19,0,21,0,17,18,11,10,10,15,16,14,12,12,18,18,14,11,11,15,14,0,21,20,18,19,0,0,21,18,18,12,11,11,16,16,16,14,14,18,20,14,11,11,16,15,0,20,20,19,19,0,0,20,18,18,0,21,0,18,19,0,0,0,0,0,0,20,20,17,18,0,0,0,20,20,0,0,0,19,19,0,0,0,20,18,0,0,0,0,0,0,0,21,18,18,0,21,21,0,21,0,0,0,19,20,11,9,9,14,14,13,10,10,14,14,13,11,11,15,15,0,13,13,13,13,0,14,14,16,16,13,11,11,15,15,16,12,12,15,15,14,10,10,14,14,0,14,14,16,16,0,14,14,15,15,13,10,10,15,15,17,13,14,15,16,15,10,10,15,15,0,14,14,17,16,0,14,14,15,15,0,15,15,17,17,0,0,21,18,18,0,13,13,15,15,0,16,16,21,20,0,14,14,15,14,0,15,14,16,17,0,0,20,20,19,0,13,13,15,15,0,19,18,0,0,0,15,15,15,15,0,11,11,14,14,0,12,12,16,16,0,12,12,16,16,0,15,16,21,21,0,16,17,21,0,0,12,12,17,16,0,14,14,18,19,0,11,11,16,16,0,15,15,20,21,0,16,16,21,0,0,12,12,17,16,0,15,15,19,19,0,12,12,16,17,0,16,15,0,0,0,16,16,0,0,0,17,17,0,21,0,0,0,0,0,0,14,15,20,0,0,17,17,0,0,0,17,17,0,0,0,17,16,0,0,0,0,0,0,0,0,15,15,0,0,0,18,18,0,0,0,18,17,0,0,0,11,11,14,14,0,12,12,15,15,0,12,12,15,15,0,13,13,14,14,0,14,14,17,17,0,12,12,16,16,0,14,14,16,16,0,11,11,15,15,0,13,13,16,17,0,13,13,16,16,0,12,12,15,15,0,14,14,17,16,0,11,11,15,15,0,14,14,17,17,0,13,13,16,16,0,15,15,17,18,0,21,20,20,21,0,12,12,15,15,0,16,16,20,21,0,14,14,15,15,0,14,14,17,17,0,0,0,18,19,0,12,13,15,15,0,18,17,21,0,0,14,15,15,15,8,8,8,16,16,12,10,10,16,16,13,9,9,16,16,0,14,14,18,17,0,14,14,16,17,12,10,10,18,17,14,12,11,18,18,14,9,9,16,16,0,13,13,18,18,0,13,13,17,16,12,9,9,16,17,17,13,13,17,17,14,9,9,15,15,0,14,14,20,19,0,13,13,16,16,0,15,15,19,18,0,0,0,20,19,0,12,13,17,17,0,16,16,20,0,0,14,14,16,17,0,14,14,19,18,0,0,0,20,20,0,13,13,16,16,0,18,17,0,0,0,15,15,16,16,9,7,7,14,14,12,10,10,15,15,13,10,10,15,15,0,21,0,18,19,0,20,21,19,18,12,10,10,16,15,15,13,13,18,18,14,11,11,15,15,0,0,0,19,18,0,0,21,18,18,13,11,11,15,15,16,14,14,17,19,15,11,11,15,15,0,21,21,20,18,0,0,21,18,18,0,0,21,21,19,0,0,0,0,0,0,19,20,18,17,0,0,0,21,21,0,21,0,20,18,0,0,21,19,19,0,0,0,0,0,0,20,21,17,17,0,0,0,0,0,0,21,0,18,20,0,10,10,14,14,0,11,11,15,15,0,11,11,15,15,0,14,14,15,15,0,15,15,16,16,0,11,12,16,16,0,13,13,16,16,0,11,11,15,15,0,14,14,17,17,0,14,14,15,15,0,11,11,16,15,0,14,14,15,15,0,11,11,15,15,0,15,15,17,17,0,14,14,15,15,0,16,16,18,18,0,0,0,20,19,0,14,13,16,15,0,17,17,21,0,0,15,15,15,15,0,16,15,17,16,0,20,0,20,18,0,13,14,15,15,0,19,18,0,21,0,15,15,15,15,0,11,11,14,14,0,12,12,16,16,0,12,12,16,16,0,16,15,20,21,0,17,16,0,0,0,12,12,16,16,0,14,14,18,18,0,11,11,16,16,0,15,15,21,20,0,16,16,0,0,0,12,12,16,17,0,15,14,19,19,0,11,12,16,16,0,15,15,21,0,0,16,16,0,0,0,16,17,0,0,0,0,0,0,0,0,15,15,21,0,0,17,17,0,0,0,17,17,0,0,0,17,16,0,0,0,0,0,0,0,0,15,15,0,20,0,19,20,0,0,0,17,17,0,0,0,12,12,15,15,0,12,12,15,15,0,12,12,16,16,0,13,13,15,15,0,15,15,17,17,0,13,13,17,16,0,14,14,17,17,0,11,11,16,16,0,14,14,17,17,0,13,13,16,16,0,12,12,16,16,0,15,15,16,17,0,11,11,15,16,0,14,14,17,17,0,13,14,16,16,0,15,15,18,18,0,21,20,20,19,0,13,13,16,17,0,16,16,0,0,0,14,14,16,16,0,15,15,18,18,0,0,0,20,19,0,13,13,16,16,0,17,17,0,0,0,14,14,16,16,0,11,11,16,16,0,13,13,18,17,0,13,13,17,17,0,16,16,17,17,0,16,16,17,18,0,12,12,17,17,0,15,15,18,18,0,12,12,16,16,0,16,16,19,19,0,15,15,16,17,0,12,12,17,17,0,17,17,18,18,0,12,12,17,17,0,16,16,19,19,0,15,16,17,17,0,16,16,18,17,0,0,0,21,21,0,13,13,16,16,0,17,17,0,20,0,15,15,16,17,0,16,16,19,18,0,0,21,20,21,0,14,14,17,16,0,20,0,0,0,0,15,16,16,17,0,9,9,14,14,0,13,13,16,16,0,14,14,15,15,0,0,20,19,19,0,0,0,19,19,0,12,12,15,15,0,15,16,19,18,0,14,14,15,15,0,21,0,18,18,0,20,0,17,18,0,13,13,16,16,0,17,17,17,19,0,14,14,16,15,0,21,20,20,19,0,0,0,19,19,0,0,0,19,18,0,0,0,0,0,0,20,20,17,18,0,0,0,21,21,0,0,0,18,18,0,21,0,18,19,0,0,0,0,0,0,20,21,18,18,0,0,0,20,21,0,0,0,19,19,0,18,18,15,15,0,20,21,17,17,0,19,21,17,17,0,0,0,17,18,0,0,0,20,19,0,19,19,17,17,0,0,0,18,18,0,19,20,16,17,0,0,21,20,20,0,19,20,19,18,0,19,20,16,16,0,0,0,18,19,0,19,20,17,17,0,0,21,0,20,0,21,21,17,19,0,20,0,19,20,0,0,0,20,0,0,19,18,17,16,0,0,0,0,0,0,0,20,17,17,0,20,21,18,20,0,0,0,0,21,0,19,20,17,17,0,0,0,0,0,0,20,21,17,17,0,11,11,14,14,0,13,13,16,17,0,13,13,16,16,0,17,17,0,21,0,18,17,21,0,0,13,13,16,16,0,15,15,18,18,0,12,12,16,16,0,17,16,21,0,0,17,17,0,0,0,12,12,17,17,0,17,17,19,21,0,13,12,16,16,0,17,17,0,0,0,17,17,0,0,0,18,17,0,21,0,0,0,0,0,0,15,15,20,0,0,20,18,0,0,0,17,18,0,0,0,16,17,0,0,0,0,0,0,0,0,15,15,0,0,0,19,19,0,0,0,18,18,0,0,0,14,14,18,18,0,16,16,0,21,0,16,16,21,21,0,17,17,0,20,0,17,17,20,0,0,16,15,0,0,0,20,20,0,0,0,15,15,20,20,0,17,17,21,0,0,17,18,20,20,0,15,15,20,20,0,18,18,0,0,0,15,15,19,20,0,17,18,0,0,0,17,17,20,20,0,18,17,21,0,0,0,0,0,21,0,15,15,20,20,0,19,19,0,0,0,17,17,21,0,0,17,17,0,0,0,0,0,21,0,0,15,15,19,19,0,20,21,0,0,0,18,17,21,21,0,12,12,16,16,0,14,14,17,17,0,13,13,17,18,0,16,16,18,17,0,16,16,18,18,0,13,13,18,18,0,15,16,19,18,0,13,13,16,16,0,16,16,20,18,0,16,16,17,17,0,12,13,17,17,0,17,16,18,18,0,12,12,16,16,0,17,16,20,19,0,16,16,16,16,0,16,17,18,20,0,0,0,21,20,0,14,14,17,16,0,19,18,0,20,0,16,16,17,16,0,16,16,17,18,0,0,21,21,21,0,14,14,16,16,0,20,20,21,0,0,16,16,16,16,0,10,10,14,14,0,14,14,15,16,0,14,14,15,15,0,0,21,18,18,0,0,21,18,19,0,13,13,16,16,0,16,16,18,18,0,14,14,15,15,0,21,0,18,18,0,21,0,18,18,0,13,13,16,16,0,17,17,19,20,0,14,14,15,15,0,0,0,18,20,0,0,21,18,18,0,0,21,19,18,0,0,0,0,0,0,20,21,18,17,0,0,0,21,21,0,0,0,19,19,0,21,0,18,19,0,0,0,0,0,0,21,20,17,17,0,0,21,20,0,0,0,0,19,19,0,19,20,15,16,0,0,20,18,17,0,20,21,17,18,0,21,0,18,18,0,0,0,19,19,0,20,20,17,18,0,0,0,18,19,0,20,20,18,17,0,0,0,0,20,0,0,21,17,18,0,20,21,17,17,0,0,0,18,18,0,19,19,17,17,0,0,0,21,21,0,20,20,17,17,0,0,0,21,19,0,0,0,20,19,0,21,20,17,18,0,0,0,0,0,0,0,20,18,17,0,21,20,18,18,0,0,0,20,21,0,20,20,17,17,0,0,0,0,0,0,20,0,17,17,0,11,11,13,14,0,13,13,16,16,0,13,13,16,16,0,17,17,0,0,0,17,18,0,0,0,13,13,16,16,0,15,16,18,18,0,13,13,16,17,0,16,17,20,0,0,17,18,20,0,0,13,13,17,17,0,16,16,20,21,0,13,13,16,16,0,17,17,21,0,0,17,18,0,0,0,17,18,0,21,0,0,0,0,0,0,15,15,20,0,0,19,19,0,0,0,17,17,0,0,0,18,17,21,20,0,0,0,0,0,0,16,16,20,21,0,21,20,0,21,0,19,21,0,0,0,15,15,0,0,0,16,17,0,19,0,16,16,0,0,0,17,17,0,0,0,19,18,0,0,0,16,16,20,20,0,20,18,21,0,0,15,15,21,21,0,18,18,0,0,0,18,19,0,0,0,16,15,0,21,0,20,19,0,0,0,16,16,0,0,0,20,18,0,21,0,17,18,21,0,0,18,19,0,0,0,0,0,0,0,0,16,16,20,20,0,19,20,0,0,0,17,17,0,0,0,18,17,20,21,0,0,0,0,0,0,16,16,0,20,0,20,22,0,0,0,18,18,0,22,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,8,8,10,12,12,11,11,9,11,11,12,13,11,12,12,11,11,11,12,12,12,12,10,13,12,13,13,11,12,12,13,13,11,12,12,13,13,11,12,13,13,13,11,13,13,13,13,10,13,13,12,13,11,12,12,14,14,11,13,12,12,12,11,12,12,13,13,11,13,13,12,12,11,13,13,13,13,11,12,12,13,13,11,13,13,12,12,11,12,12,13,13,11,13,13,12,12,11,13,13,13,13,11,12,12,14,14,11,13,13,12,12,11,12,12,13,13,11,13,13,12,12,11,10,10,10,10,12,10,10,11,11,11,8,8,11,11,13,10,10,10,10,12,10,10,10,10,13,11,11,11,11,13,10,10,11,11,13,11,11,12,12,13,11,11,11,11,13,11,11,12,12,13,11,11,12,12,13,10,10,11,11,13,11,11,11,11,13,11,10,11,11,13,11,11,11,11,13,11,11,11,11,13,10,10,11,11,13,11,11,11,11,12,10,11,11,11,13,11,11,11,11,13,11,11,11,11,13,10,10,11,11,13,11,11,11,11,13,11,11,11,11,13,11,11,11,11,11,10,10,10,10,12,10,10,9,9,12,12,12,11,11,13,12,12,9,9,13,12,12,10,10,12,12,12,12,12,13,13,13,14,14,13,12,12,11,11,13,13,13,12,12,13,12,12,11,11,13,12,13,11,11,13,13,13,14,14,13,12,12,10,10,13,13,13,11,11,13,12,12,10,10,13,13,13,11,11,13,13,13,14,14,13,12,12,10,10,13,13,13,11,11,13,12,13,10,10,13,13,13,11,11,13,13,13,14,14,13,12,12,10,10,13,13,13,11,11,13,13,12,10,10,14,12,12,8,8,14,12,12,9,9,14,11,11,9,9,14,12,12,8,8,14,11,11,7,7,14,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,12,12,9,9,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,14,12,12,9,9,14,13,13,9,9,14,13,13,9,9,15,12,12,9,9,15,13,13,9,9,14,12,12,9,9,14,13,13,9,9,14,13,13,9,9,15,12,12,9,9,14,13,13,9,9,14,12,12,9,9,14,13,13,9,9,13,12,12,8,8,13,13,13,8,8,14,13,13,9,9,13,13,13,7,7,14,13,13,8,8,14,14,14,10,10,14,14,14,11,11,14,14,14,9,9,14,14,14,10,10,14,14,14,9,9,14,14,14,10,9,15,14,14,11,11,14,14,14,9,9,14,14,14,10,10,14,14,14,9,9,14,14,14,9,9,15,14,14,11,11,14,14,14,8,8,14,14,14,9,9,14,14,14,8,8,14,14,14,9,9,15,14,14,11,11,14,14,14,8,8,14,14,14,9,9,14,14,14,8,8,12,12,12,13,13,16,15,15,11,11,16,15,16,12,12,17,16,16,11,11,17,15,15,12,11,16,16,16,12,13,16,15,15,13,13,16,16,16,12,12,16,16,15,13,13,16,16,16,12,12,16,16,16,13,13,17,16,16,14,14,17,17,16,12,12,17,16,16,13,13,17,17,16,12,13,16,16,17,13,12,17,16,16,14,13,17,16,16,12,12,17,16,16,12,12,17,16,17,12,12,17,17,17,13,13,16,16,16,13,14,17,17,16,12,12,16,16,16,13,13,17,17,17,12,12,13,14,14,10,10,16,14,14,12,12,16,15,15,14,14,16,14,14,12,12,15,14,14,13,13,17,15,15,14,13,16,16,15,15,15,16,15,15,14,14,16,15,15,14,14,17,15,15,14,14,16,15,15,14,14,16,16,15,15,15,17,15,15,13,13,16,15,15,14,14,17,15,15,13,13,17,15,15,14,14,16,15,15,15,15,16,14,14,13,13,16,15,15,14,14,16,14,14,13,13,17,15,15,14,14,16,16,15,15,15,17,14,14,13,13,16,15,15,14,14,17,14,14,13,13,13,11,11,10,10,16,14,14,13,13,15,14,14,13,13,16,14,14,12,12,16,14,14,12,12,15,15,15,14,14,16,14,14,14,14,16,15,14,14,14,16,14,14,14,14,16,15,15,14,13,16,15,15,14,14,16,14,14,14,14,17,15,15,14,14,16,14,14,14,14,16,15,15,13,14,16,15,15,14,14,16,14,14,14,14,16,15,15,13,13,16,14,14,13,13,16,15,15,13,13,16,15,15,14,14,16,14,14,14,14,17,15,15,13,13,16,15,14,13,13,17,15,15,13,13,14,14,14,9,9,14,14,14,17,17,14,15,15,18,18,14,14,14,18,19,14,14,14,18,18,15,15,15,19,18,15,16,15,18,20,15,15,15,18,19,15,15,15,19,19,15,15,15,18,20,15,15,15,18,19,15,15,16,20,18,15,15,15,18,18,15,15,15,19,19,15,15,15,18,19,15,15,15,18,19,15,15,15,19,19,14,15,14,19,19,15,15,15,20,19,15,14,14,19,18,14,15,15,18,19,15,15,16,20,20,14,14,14,18,19,15,15,15,19,18,14,14,14,18,18,14,12,12,9,9,13,14,14,18,18,14,13,13,18,19,14,14,14,18,18,14,14,14,18,18,15,15,15,19,19,15,14,14,19,18,14,15,15,19,18,15,14,14,18,18,15,15,15,19,18,14,15,15,19,19,15,14,14,19,18,14,15,15,19,18,15,14,14,19,18,14,15,15,19,18,15,15,15,21,18,15,14,14,19,18,14,15,15,18,19,14,15,14,20,19,14,15,15,18,19,14,15,15,19,19,15,14,14,19,20,14,15,15,18,18,14,14,14,19,19,14,15,15,19,18,12,12,12,13,13,16,15,15,11,11,16,15,15,12,12,16,16,16,11,11,16,15,15,11,11,16,16,16,13,13,17,16,16,13,13,17,17,17,12,12,16,16,16,13,13,17,16,17,13,12,15,16,16,12,12,16,15,15,13,13,17,16,16,12,12,16,16,15,12,12,16,16,16,12,12,17,17,16,13,12,16,16,16,13,13,17,16,16,12,12,17,16,16,12,12,17,17,16,12,12,16,17,16,12,12,17,15,15,13,13,17,16,16,12,12,16,16,16,12,12,16,16,16,12,12,13,13,13,9,9,15,14,14,13,13,16,15,14,14,14,16,14,14,13,13,15,14,14,13,13,17,15,15,14,14,16,15,15,15,15,16,15,15,14,14,16,15,15,15,15,17,15,15,14,14,16,15,15,14,14,16,15,15,15,15,17,14,15,14,14,16,15,15,14,14,17,15,15,13,14,17,15,15,14,14,16,15,15,15,15,17,14,14,13,13,16,15,15,14,14,17,14,14,13,13,17,15,15,14,14,16,15,16,15,15,17,14,14,13,13,16,15,15,14,14,18,14,14,13,13,13,11,11,11,11,15,14,14,12,12,15,14,14,13,13,16,14,14,12,12,16,13,14,12,12,16,15,15,13,13,16,14,14,14,14,16,15,15,13,13,16,14,14,13,13,16,14,15,13,13,15,15,15,13,13,16,14,14,14,13,16,14,14,13,13,16,14,14,13,13,16,15,15,13,13,16,15,15,13,13,16,14,14,14,14,16,15,15,12,12,16,14,14,13,13,16,15,15,12,12,16,15,15,13,13,16,14,14,14,14,17,15,14,12,12,16,14,14,13,13,16,15,15,12,12,14,14,14,8,8,14,14,14,17,18,14,15,15,17,18,14,14,14,17,18,14,14,14,18,18,14,15,15,18,18,14,16,15,19,19,15,15,15,18,19,15,16,15,20,19,15,15,15,18,18,14,15,15,18,19,15,16,16,20,19,15,15,15,19,17,14,15,15,20,18,14,15,15,18,18,14,15,15,18,19,14,15,15,19,20,14,14,14,18,18,14,15,15,18,19,14,14,14,18,19,14,15,15,19,18,15,16,16,20,21,14,14,15,19,19,14,15,15,19,19,14,14,14,19,18,13,12,12,9,9,13,14,14,18,19,14,14,14,18,19,14,14,14,18,18,14,14,14,18,18,14,15,15,19,19,15,14,14,19,18,15,15,15,19,19,15,14,14,19,20,14,15,15,18,19,14,15,15,20,18,15,14,14,18,18,14,15,15,18,18,14,14,14,19,19,14,15,15,18,18,14,15,15,19,18,15,14,14,19,19,14,15,15,19,18,15,14,14,19,18,14,14,15,18,19,14,15,15,19,18,15,14,14,18,19,14,15,14,19,20,14,14,14,19,19,14,15,15,19,19,12,12,12,13,13,16,16,16,11,11,16,16,16,12,12,17,16,16,11,11,17,15,15,11,11,16,16,16,13,13,17,15,16,13,13,16,16,16,12,12,17,16,16,13,13,17,17,16,12,12,17,17,16,13,13,17,16,16,13,13,17,17,17,12,12,17,16,16,13,13,17,17,17,12,12,16,16,16,12,12,17,15,15,13,13,17,16,16,11,11,17,16,16,12,12,16,16,16,11,11,16,17,16,12,12,17,16,16,13,13,17,17,16,12,12,17,17,16,12,12,17,16,16,11,11,13,14,14,9,9,16,14,14,13,13,16,14,15,14,14,16,14,14,12,12,16,14,14,13,13,17,15,15,14,14,16,15,15,15,15,17,15,15,14,14,16,15,15,14,14,17,15,15,14,14,16,15,15,14,14,16,15,15,15,16,17,14,15,14,14,16,15,15,14,14,17,15,15,14,14,16,15,15,14,14,16,15,15,15,15,17,14,14,13,13,16,15,15,14,14,16,14,14,13,13,17,15,15,14,14,16,16,15,15,15,17,14,14,13,13,16,15,15,14,14,17,14,14,13,13,13,11,11,10,10,16,14,14,12,12,15,13,13,13,12,16,14,14,11,11,16,14,14,11,11,16,14,15,13,14,16,14,14,13,13,16,15,15,13,13,16,14,14,13,13,16,15,15,13,13,16,15,15,13,13,17,14,14,14,14,17,15,15,13,13,16,14,15,13,13,16,15,15,13,13,16,15,15,13,13,16,14,14,13,13,17,15,15,12,12,16,14,14,12,12,16,15,15,12,12,16,15,15,13,13,16,14,14,13,13,17,15,15,12,12,17,14,14,12,12,16,15,15,12,12,13,14,14,8,8,13,14,14,18,18,13,15,15,17,18,14,14,14,18,19,14,14,14,19,18,14,15,15,19,18,15,15,16,21,18,15,15,15,19,19,14,16,16,19,19,14,15,15,18,19,14,15,15,19,20,14,16,16,19,18,15,15,15,18,19,14,15,15,19,18,15,15,15,18,18,15,15,15,20,18,15,16,16,20,19,14,15,14,18,19,14,15,16,19,20,14,15,15,19,18,15,15,15,19,18,15,16,16,20,19,15,14,14,18,18,14,15,15,19,19,14,15,15,18,18,13,12,12,8,8,13,14,14,19,18,14,13,13,20,18,14,14,14,19,18,14,13,13,18,19,14,15,15,20,19,15,14,14,19,19,14,15,15,19,18,15,14,14,20,20,15,15,15,19,18,14,15,15,19,18,15,14,14,19,18,14,15,15,20,19,14,14,14,20,19,14,15,15,19,18,15,15,15,18,18,15,14,14,18,18,14,15,15,19,19,14,14,14,19,19,14,15,15,19,19,15,15,15,19,18,15,14,14,20,19,15,15,15,19,19,14,14,14,20,19,14,15,15,20,20,12,12,12,13,13,17,16,16,11,11,16,16,15,12,12,17,16,16,11,11,17,15,15,11,11,17,17,17,13,13,17,16,16,13,13,17,17,17,12,12,17,16,16,13,13,17,17,16,12,13,16,17,16,13,13,17,16,15,13,13,17,16,16,12,12,17,16,16,12,13,17,16,17,12,12,17,17,17,12,12,17,16,15,13,13,17,16,16,12,12,17,16,16,12,12,17,16,16,11,11,16,16,16,12,12,17,15,15,13,13,17,16,15,11,11,16,16,16,12,12,17,16,16,11,11,13,14,14,9,9,16,14,14,13,13,16,14,15,14,14,16,14,14,12,12,16,14,14,13,13,17,15,15,14,15,16,15,15,15,15,17,15,15,14,14,16,15,15,15,14,16,15,15,14,14,16,15,15,14,14,16,15,16,15,15,17,15,14,14,14,16,15,15,14,14,17,15,15,13,13,16,15,15,14,14,16,16,16,15,15,17,14,14,13,13,16,15,15,14,14,18,14,15,13,13,16,15,15,14,14,16,16,15,15,15,16,14,14,13,13,16,15,15,14,14,17,14,15,13,13,13,11,11,10,10,15,14,14,12,12,15,14,14,13,13,16,14,14,12,12,16,13,14,12,12,16,14,15,14,13,16,14,14,14,14,16,15,15,13,13,16,14,14,13,13,16,15,15,13,13,15,15,15,13,13,16,14,14,14,14,17,15,15,13,13,16,14,14,13,13,16,15,15,13,13,16,15,15,13,13,16,14,14,13,13,17,15,15,12,12,16,14,14,12,12,16,14,15,12,12,16,15,15,13,13,16,14,14,13,13,17,15,15,12,12,16,14,14,12,12,16,15,15,12,12,14,14,14,8,8,14,14,14,17,17,14,15,15,18,18,14,14,14,18,17,14,14,14,18,18,14,15,15,18,20,15,16,15,19,18,15,15,15,19,18,15,15,16,19,18,15,15,15,18,18,14,15,15,18,18,15,16,16,18,19,15,15,15,18,18,15,15,15,19,20,15,15,15,18,18,15,15,15,18,18,15,16,16,19,19,15,14,15,19,19,15,15,15,19,20,14,14,15,18,18,15,15,15,19,19,15,16,16,19,19,15,15,14,18,19,15,15,15,20,20,15,15,14,18,18,13,12,12,8,8,13,14,14,18,18,14,14,14,18,18,14,14,14,18,20,14,14,14,18,18,14,15,15,19,18,15,14,14,18,19,15,15,15,18,19,15,14,14,18,19,15,15,15,18,18,14,15,14,18,19,15,14,14,21,19,15,15,15,19,18,14,14,14,19,18,14,15,15,19,18,15,15,15,20,19,15,14,14,20,18,14,15,15,18,19,14,14,14,19,18,14,15,15,18,19,15,15,15,18,19,15,14,14,19,19,15,15,15,19,19,14,14,14,19,20,14,15,15,18,19,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,7,8,8,7,8,8,7,9,9,10,12,11,9,8,8,7,9,9,11,12,12,9,9,9,6,7,7,10,11,11,10,11,11,10,11,11,13,13,14,12,12,12,11,11,11,14,14,14,12,12,12,6,5,5,9,6,5,9,6,6,9,7,7,12,10,10,11,6,6,10,7,7,13,10,10,12,7,7,7,8,8,12,10,10,12,10,10,11,10,10,15,13,13,13,9,9,12,11,11,16,13,13,15,11,11,8,7,7,12,12,12,12,11,11,12,11,11,14,14,14,14,12,12,12,12,12,16,15,15,14,12,12,0,10,10,0,12,12,0,12,12,0,11,11,0,14,14,0,11,11,0,12,12,0,15,15,0,11,11,8,8,8,13,11,11,13,10,10,13,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,9,7,7,13,11,11,13,11,11,12,11,11,16,14,14,14,12,12,13,12,12,15,14,14,15,13,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,13,12,0,14,15,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,0,9,9,0,9,9,0,10,10,0,9,9,0,10,10,0,10,10,0,9,9,0,10,10,0,7,7,0,7,7,0,6,6,0,8,8,0,7,7,0,8,8,0,8,9,0,8,8,0,8,8,0,7,7,0,9,9,0,8,8,0,10,10,0,9,9,0,10,10,0,10,10,0,9,9,0,10,10,0,9,9,0,11,11,0,11,11,0,12,12,0,11,11,0,12,12,0,13,13,0,12,12,0,13,12,0,8,8,0,12,12,0,12,12,0,13,13,0,12,12,0,13,13,0,13,13,0,13,13,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,11,11,0,12,12,0,13,13,0,12,12,0,13,13,0,13,13,0,12,12,0,12,12,0,8,8,0,12,12,0,12,12,0,13,13,0,13,13,0,13,14,0,14,13,0,13,13,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,0,7,7,0,8,8,0,9,9,0,12,12,0,8,8,0,9,9,0,12,12,0,8,8,0,6,6,0,11,11,0,12,12,0,12,12,0,15,15,0,11,11,0,12,12,0,15,15,0,12,12,0,5,5,0,5,5,0,6,6,0,7,7,0,11,11,0,6,6,0,7,7,0,10,11,0,6,6,0,7,7,0,11,11,0,12,12,0,11,11,0,15,15,0,10,10,0,12,12,0,15,15,0,12,12,0,6,6,0,12,12,0,12,12,0,12,12,0,15,15,0,11,11,0,12,12,0,15,15,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,11,12,0,15,16,0,11,11,0,6,6,0,11,12,0,12,12,0,12,12,0,16,15,0,12,12,0,13,12,0,15,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,3,7,8,10,13,16,3,2,5,7,9,13,16,6,4,4,6,10,14,15,7,5,5,7,10,13,14,9,8,9,9,9,11,13,12,11,12,9,7,8,11,14,12,10,6,5,7,10,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,248,239,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,104,206,7,0,0,0,0,0,0,0,0,0,144,206,7,0,184,206,7,0,0,0,0,0,0,0,0,0,224,206,7,0,8,207,7,0,0,0,0,0,0,0,0,0,48,207,7,0,88,207,7,0,0,0,0,0,0,0,0,0,128,207,7,0,168,207,7,0,88,207,7,0,0,0,0,0,208,207,7,0,136,203,7,0,176,203,7],"i8",L3,x.GLOBAL_BASE+500144),d3([2,0,0,0,49,0,0,0,48,206,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,40,206,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,203,7,0,56,203,7,0,0,0,0,0,0,0,0,0,96,203,7,0,136,203,7,0,176,203,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,64,205,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,240,205,7,0,0,0,0,0,2,0,0,0,25,0,0,0,8,205,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,40,205,7,0,0,0,0,0,2,0,0,0,9,0,0,0,232,204,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,248,204,7,0,0,0,0,0,1,0,0,0,25,0,0,0,96,204,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,128,204,7,0,0,0,0,0,1,0,0,0,25,0,0,0,216,203,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,248,203,7,0,0,0,0,0,3,5,4,5,4,5,4,5,5,5,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,7,7,4,5,6,7,7,4,6,5,7,7,7,6,7,6,7,7,7,6,7,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,3,3,8,8,10,10,10,10,10,10,10,10,5,7,5,9,8,10,10,10,10,11,10,11,10,5,5,7,8,9,10,10,11,10,10,11,10,11,10,10,10,11,11,11,11,11,11,11,10,11,11,10,10,10,10,11,11,11,11,11,10,11,11,11,11,11,11,11,11,12,11,10,11,11,11,11,11,11,11,11,11,11,11,11,10,10,11,11,12,11,11,11,11,11,11,12,11,11,11,10,11,11,11,11,11,11,11,11,10,11,11,10,11,10,11,11,11,11,11,11,11,11,11,11,12,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,10,11,11,11,11,11,11,11,12,11,13,11,11,11,11,11,11,11,11,11,11,11,12,11,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,2,3,6,7,9,13,17,3,2,5,7,9,13,17,6,5,5,6,9,12,16,7,7,6,6,7,10,13,10,10,9,7,6,10,13,13,13,12,10,10,11,15,17,17,17,14,14,15,17,0,0,0,0,0,0,0,5,0,0,0,243,0,0,0,240,238,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,232,239,7,0,0,0,0,0,5,0,0,0,243,0,0,0,232,237,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,224,238,7,0,0,0,0,0,5,0,0,0,243,0,0,0,224,236,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,216,237,7,0,0,0,0,0,5,0,0,0,243,0,0,0,216,235,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,208,236,7,0,0,0,0,0,5,0,0,0,53,12,0,0,136,223,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,235,7,0,0,0,0,0,5,0,0,0,53,12,0,0,56,211,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,112,223,7,0,0,0,0,0,1,0,0,0,7,0,0,0,16,211,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,24,211,7,0,0,0,0,0,5,0,0,0,243,0,0,0,8,210,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,0,211,7,0,0,0,0,0,5,0,0,0,243,0,0,0,0,209,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,248,209,7,0,0,0,0,0,5,0,0,0,243,0,0,0,248,207,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,240,208,7,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,7,6,8,8,7,7,8,7,8,8,9,9,9,8,7,7,8,8,8,9,9,9,9,8,8,6,6,6,9,7,7,9,7,7,9,8,8,10,8,8,10,8,8,10,8,8,10,9,8,10,8,8,7,6,6,9,6,6,9,6,6,9,7,7,10,8,8,10,6,6,9,7,7,10,8,8,10,6,6,7,7,7,11,9,9,11,9,9,10,9,9,12,10,10,12,8,8,11,9,9,13,9,10,12,8,8,8,7,7,11,9,10,11,10,10,10,9,9,11,11,11,11,9,9,11,10,9,12,11,11,11,9,10,10,8,8,11,9,10,11,9,9,11,9,9,12,10,10,11,9,9,11,9,9,12,10,11,11,9,9,8,8,8,12,9,9,12,9,9,11,9,9,13,9,9,13,8,8,12,9,9,13,10,10,12,8,8,9,7,7,11,10,10,11,10,10,11,10,10,12,11,11,11,10,9,11,10,10,11,11,11,11,9,9,11,9,9,12,10,10,11,10,10,12,10,10,11,11,11,11,9,9,11,10,10,12,11,11,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,7,7,6,8,8,7,8,8,7,9,9,11,11,11,9,8,8,7,9,9,11,12,11,9,9,9,6,7,7,10,11,11,10,10,10,10,11,11,15,14,14,12,12,12,11,11,11,14,14,14,12,12,12,5,6,6,8,5,5,8,7,7,8,8,8,12,10,10,10,7,7,8,7,7,12,10,10,10,7,7,6,7,7,12,11,11,12,10,10,11,10,10,14,14,13,13,10,10,11,10,10,16,14,14,14,11,10,7,7,7,13,12,12,12,12,11,11,11,11,15,14,17,13,12,12,12,11,11,15,15,15,14,13,13,10,9,9,14,12,11,13,11,11,12,11,11,16,15,14,14,11,11,12,11,11,17,14,14,15,11,11,7,8,8,12,11,11,13,10,10,11,10,10,17,14,13,14,10,10,12,10,10,18,15,15,14,10,10,8,7,7,13,12,12,13,11,11,12,11,11,16,14,15,14,12,12,12,11,11,18,16,16,14,12,12,11,10,10,13,12,11,13,11,11,13,12,12,0,15,14,14,11,11,13,11,11,16,15,15,15,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,1,7,7,14,14,6,8,8,15,16,7,8,8,16,15,0,14,14,17,17,0,14,14,16,16,7,9,9,16,16,10,11,11,17,18,9,8,8,16,16,0,14,14,19,19,0,14,14,17,16,8,9,9,16,16,12,12,12,17,17,10,9,9,16,16,0,15,14,18,20,0,14,14,17,17,0,15,15,18,17,0,21,0,0,21,0,13,13,17,17,0,17,17,0,0,0,15,15,17,17,0,15,15,17,18,0,0,0,0,21,0,13,13,17,17,0,18,18,0,21,0,16,15,17,18,6,7,7,14,14,9,10,10,16,16,11,10,10,15,15,0,21,0,20,21,0,0,0,18,20,10,10,10,15,16,12,13,13,18,18,12,11,11,15,15,0,0,0,20,20,0,0,21,19,19,12,11,11,15,15,15,14,14,18,18,13,11,11,15,16,0,0,0,20,19,0,0,0,20,21,0,0,20,19,19,0,0,0,0,0,0,20,0,17,18,0,0,21,0,0,0,0,0,21,0,0,21,0,20,19,0,0,0,0,0,0,21,0,18,18,0,0,0,21,0,0,0,0,0,20,7,6,6,13,13,9,6,6,12,12,9,7,7,14,14,0,10,10,12,12,0,11,11,15,15,9,7,7,14,14,12,9,9,14,14,10,7,7,14,13,0,11,11,16,15,0,11,11,14,14,9,7,7,14,14,13,10,10,14,14,11,7,7,14,13,0,11,11,16,16,0,11,11,14,14,0,12,12,16,16,0,19,0,17,18,0,10,10,14,14,0,15,14,0,0,0,12,12,14,14,0,12,12,15,15,0,20,0,18,19,0,10,10,14,14,0,16,15,0,20,0,13,13,14,14,0,11,11,13,13,0,12,13,16,16,0,12,12,16,16,0,16,16,0,21,0,17,18,0,0,0,12,12,16,16,0,15,15,18,0,0,12,12,16,16,0,17,16,21,21,0,16,17,0,0,0,13,13,17,16,0,16,16,20,21,0,12,12,17,16,0,17,17,0,21,0,17,17,21,21,0,17,18,0,0,0,0,0,0,0,0,15,15,0,0,0,18,21,0,0,0,18,19,0,0,0,18,17,21,21,0,0,0,0,0,0,16,16,0,0,0,0,0,0,0,0,19,19,0,0,0,11,11,12,12,0,11,11,10,10,0,12,12,13,13,0,12,12,9,9,0,14,14,13,13,0,12,12,13,13,0,14,14,12,13,0,11,11,12,12,0,13,13,13,13,0,13,13,13,13,0,12,12,13,13,0,14,14,12,12,0,11,11,12,12,0,14,13,14,14,0,13,13,13,13,0,15,15,14,15,0,0,0,16,16,0,12,12,13,13,0,16,17,20,21,0,14,13,12,12,0,14,14,14,14,0,21,0,16,16,0,12,12,13,13,0,18,17,21,0,0,14,14,13,13,7,8,8,17,17,11,10,10,18,18,12,10,10,17,17,0,15,15,20,18,0,15,15,17,17,11,9,9,17,17,14,12,12,19,19,13,9,9,16,16,0,15,14,0,19,0,14,14,16,16,12,10,10,20,18,16,13,13,21,20,14,10,10,17,17,0,15,15,21,20,0,15,14,17,17,0,15,15,21,21,0,0,21,0,0,0,13,13,18,18,0,19,16,0,0,0,15,15,17,16,0,16,16,0,21,0,0,0,0,21,0,13,14,18,17,0,20,19,0,0,0,15,15,18,18,8,7,7,15,15,12,11,11,17,16,13,11,11,16,16,0,0,0,21,20,0,0,0,0,20,11,10,10,17,17,14,13,13,19,18,14,11,11,16,16,0,20,0,21,19,0,0,21,0,20,12,11,11,17,17,16,15,15,0,19,14,11,11,17,16,0,21,0,0,19,0,0,0,21,20,0,0,21,20,0,0,0,0,0,0,0,0,0,19,21,0,0,0,0,0,0,0,0,19,20,0,0,0,20,21,0,0,0,0,0,0,20,0,19,21,0,0,0,0,0,0,0,0,21,20,11,10,9,15,15,14,11,11,15,15,14,11,11,16,16,0,14,14,14,14,0,16,15,17,16,13,11,11,16,16,16,13,13,16,16,15,10,10,15,15,0,14,15,17,17,0,14,14,16,15,13,11,11,16,16,17,15,14,16,16,15,10,10,15,15,0,15,15,17,18,0,15,15,16,16,0,16,16,17,17,0,21,0,21,20,0,13,13,15,15,0,18,18,0,21,0,15,15,15,15,0,16,16,17,17,0,0,0,0,18,0,13,13,15,15,0,19,18,0,0,0,15,15,16,16,0,12,12,15,15,0,13,13,17,17,0,13,13,17,18,0,16,17,21,0,0,20,18,0,0,0,13,13,17,17,0,15,15,0,18,0,12,12,17,18,0,16,16,0,0,0,17,17,21,0,0,13,13,18,18,0,16,16,21,21,0,12,12,17,18,0,16,17,21,0,0,17,17,0,21,0,17,18,0,0,0,0,0,0,0,0,16,15,0,21,0,21,19,0,0,0,18,18,0,0,0,18,19,0,0,0,0,0,0,0,0,16,16,21,21,0,20,19,0,0,0,19,21,0,21,0,12,12,15,15,0,12,12,15,16,0,13,13,16,16,0,14,14,15,15,0,16,15,17,17,0,13,13,17,17,0,15,15,16,18,0,12,12,16,16,0,14,14,17,17,0,15,14,16,16,0,13,13,16,16,0,16,15,17,17,0,12,12,16,16,0,15,15,18,18,0,14,14,17,16,0,16,16,17,18,0,0,0,20,21,0,13,13,16,17,0,17,17,0,0,0,15,15,16,16,0,15,16,17,17,0,0,0,19,0,0,13,13,15,16,0,19,18,0,0,0,16,15,16,17,8,8,8,17,17,13,11,10,17,18,13,10,10,17,17,0,15,15,20,19,0,15,15,17,17,12,10,10,19,18,15,12,12,20,18,14,10,10,17,16,0,15,15,20,20,0,14,15,16,16,13,10,10,17,17,17,14,14,0,18,15,10,10,17,17,0,16,15,20,20,0,14,14,17,17,0,15,16,20,20,0,0,21,0,0,0,13,13,17,17,0,18,17,0,0,0,15,16,17,18,0,15,15,18,21,0,0,0,21,0,0,13,13,18,18,0,19,19,0,0,0,16,16,18,17,9,8,8,15,15,12,11,11,16,16,13,11,11,16,15,0,0,0,0,21,0,21,0,19,19,12,11,11,17,18,15,13,13,18,19,14,11,11,16,16,0,0,21,21,19,0,0,0,21,20,13,11,11,18,17,17,14,15,20,21,15,11,12,16,16,0,0,0,20,0,0,0,21,0,19,0,0,0,0,19,0,0,0,0,0,0,21,21,19,19,0,0,0,21,0,0,0,0,19,21,0,0,0,19,20,0,0,0,21,0,0,0,21,19,19,0,0,0,0,0,0,0,0,21,20,0,11,11,15,15,0,12,12,15,16,0,12,12,16,16,0,15,15,16,15,0,16,16,17,17,0,12,12,17,17,0,14,14,17,17,0,11,11,16,16,0,15,15,19,18,0,15,15,16,16,0,12,12,17,16,0,14,15,16,16,0,11,11,15,15,0,16,16,18,19,0,15,15,15,16,0,17,17,18,20,0,21,0,21,19,0,14,14,16,16,0,18,18,0,0,0,16,16,15,15,0,16,16,18,17,0,0,0,19,20,0,14,14,16,16,0,19,19,0,0,0,16,17,15,15,0,12,12,14,15,0,13,13,16,17,0,12,12,17,17,0,17,16,0,0,0,18,17,21,0,0,13,13,19,17,0,15,15,20,21,0,12,12,17,17,0,17,17,0,0,0,17,17,0,0,0,13,13,17,18,0,16,16,21,0,0,12,12,17,17,0,17,17,0,0,0,17,17,0,0,0,18,21,0,0,0,0,0,0,0,0,15,15,21,0,0,20,21,0,0,0,18,19,0,0,0,18,17,0,0,0,0,0,0,0,0,16,16,21,0,0,21,21,0,0,0,18,19,0,0,0,12,12,16,16,0,13,13,16,17,0,13,13,17,16,0,14,14,16,16,0,16,15,19,18,0,13,13,17,17,0,15,15,18,18,0,12,12,16,16,0,15,15,18,19,0,15,15,17,16,0,13,13,17,17,0,16,16,18,17,0,12,12,17,16,0,15,15,18,18,0,15,15,17,17,0,16,16,0,19,0,0,0,0,0,0,14,14,16,17,0,18,18,0,0,0,15,15,17,17,0,16,16,21,19,0,21,0,21,21,0,13,14,16,16,0,19,19,0,0,0,15,16,16,16,0,11,11,17,16,0,15,14,19,18,0,14,14,19,19,0,18,17,18,20,0,17,17,18,19,0,13,13,17,17,0,16,17,21,18,0,13,13,17,16,0,18,17,19,0,0,16,17,18,18,0,12,12,19,18,0,18,18,20,20,0,13,13,17,17,0,17,17,21,0,0,16,17,17,18,0,18,17,19,18,0,0,0,0,0,0,14,14,17,17,0,19,19,21,0,0,16,16,16,17,0,17,17,19,20,0,0,0,0,21,0,15,15,17,18,0,21,21,0,0,0,17,17,17,18,0,10,10,15,15,0,15,14,17,18,0,14,14,16,16,0,0,0,18,0,0,21,0,19,0,0,13,13,17,16,0,17,17,18,0,0,14,14,16,15,0,0,0,21,0,0,21,0,19,18,0,13,13,17,17,0,18,18,20,20,0,15,15,16,16,0,0,0,21,21,0,0,0,20,20,0,0,0,19,0,0,0,0,0,0,0,21,20,18,18,0,0,0,0,0,0,0,0,0,20,0,0,0,0,20,0,0,0,0,0,0,0,0,19,18,0,0,0,0,21,0,0,0,18,20,0,18,19,16,17,0,21,19,17,17,0,0,21,18,18,0,0,21,20,19,0,0,0,20,20,0,0,21,17,17,0,0,0,19,19,0,20,20,17,17,0,0,0,0,20,0,0,20,18,18,0,21,20,17,17,0,0,0,20,21,0,19,0,17,17,0,0,21,0,0,0,20,0,18,19,0,0,0,21,21,0,0,0,0,21,0,20,20,17,17,0,0,0,0,0,0,21,0,18,17,0,0,0,20,19,0,0,0,0,21,0,20,20,17,17,0,0,0,0,0,0,21,21,18,18,0,12,12,15,14,0,14,14,17,17,0,14,14,17,16,0,18,18,21,0,0,19,20,0,0,0,13,13,18,17,0,16,16,19,18,0,13,13,17,17,0,17,17,0,0,0,17,17,21,0,0,13,13,17,17,0,17,17,21,20,0,13,13,18,17,0,18,19,21,21,0,19,18,0,0,0,18,17,0,0,0,0,0,0,0,0,15,16,0,0,0,21,21,0,0,0,20,18,21,0,0,17,18,0,0,0,0,0,0,0,0,15,16,0,0,0,0,20,0,0,0,0,19,0,0,0,15,15,18,19,0,18,17,21,0,0,16,18,0,20,0,17,18,21,0,0,18,20,0,0,0,16,16,21,21,0,19,20,21,0,0,16,15,0,21,0,18,20,0,0,0,18,19,0,0,0,16,15,21,21,0,21,0,0,0,0,16,15,21,0,0,20,19,0,0,0,18,21,21,0,0,20,18,0,0,0,0,0,0,0,0,16,16,0,20,0,21,0,0,0,0,17,18,20,21,0,18,18,21,21,0,0,0,0,0,0,16,16,20,0,0,0,21,0,0,0,21,18,0,0,0,12,12,20,17,0,15,15,19,18,0,14,14,19,18,0,18,17,21,19,0,17,17,21,17,0,13,13,21,19,0,16,17,20,19,0,13,13,16,16,0,17,17,20,21,0,16,16,19,17,0,13,13,18,18,0,17,19,19,19,0,13,13,17,17,0,18,18,0,19,0,16,17,18,18,0,16,17,19,21,0,0,0,0,0,0,15,15,16,17,0,20,19,21,0,0,17,17,17,17,0,17,17,21,19,0,0,0,0,0,0,15,15,17,17,0,21,0,0,0,0,18,18,17,17,0,10,10,15,15,0,15,15,17,17,0,15,14,16,16,0,0,0,21,19,0,21,21,19,21,0,13,13,17,16,0,17,17,18,19,0,14,15,16,15,0,0,0,21,19,0,21,21,18,19,0,14,14,16,17,0,18,18,18,19,0,15,15,15,16,0,0,21,0,21,0,0,0,19,20,0,0,0,21,19,0,0,0,0,0,0,21,21,19,17,0,0,0,0,0,0,0,0,21,21,0,21,0,0,21,0,0,0,0,0,0,21,21,19,18,0,0,0,0,0,0,0,0,0,19,0,21,18,18,17,0,21,0,20,20,0,0,0,18,20,0,0,21,18,21,0,0,0,21,18,0,0,0,0,19,0,0,0,21,21,0,20,21,17,19,0,21,0,21,0,0,21,0,18,18,0,20,21,17,18,0,0,0,21,19,0,20,21,17,18,0,0,0,21,21,0,0,0,20,19,0,0,0,21,21,0,0,0,0,0,0,21,21,19,18,0,0,0,0,0,0,0,21,19,18,0,21,21,19,0,0,0,0,21,0,0,21,21,18,17,0,0,0,0,0,0,21,0,21,18,0,12,12,14,14,0,15,14,17,17,0,14,14,17,16,0,19,17,0,0,0,19,19,0,0,0,13,13,17,17,0,17,17,20,20,0,13,13,18,18,0,18,17,0,0,0,18,21,0,0,0,13,13,17,17,0,18,18,21,20,0,14,14,18,19,0,19,18,21,0,0,19,19,0,0,0,20,18,20,0,0,0,0,0,0,0,15,16,0,0,0,21,21,0,0,0,19,19,0,0,0,18,18,0,0,0,0,0,0,0,0,16,16,0,21,0,0,0,0,0,0,19,20,0,0,0,15,15,20,21,0,17,17,21,21,0,17,17,0,0,0,19,18,0,0,0,18,19,0,0,0,17,16,0,21,0,0,20,0,0,0,16,16,0,20,0,19,19,0,21,0,19,18,0,21,0,16,16,0,0,0,21,21,0,0,0,16,16,0,0,0,21,21,0,0,0,19,19,0,0,0,20,0,0,0,0,0,0,0,0,0,17,17,0,21,0,0,20,0,0,0,20,18,21,21,0,19,18,0,20,0,0,0,0,0,0,16,17,21,0,0,0,21,0,0,0,19,20,21,20,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,3,4,9,9,10,12,12,12,11,10,12,12,13,12,11,13,12,11,11,11,12,12,12,11,11,13,13,13,13,11,12,12,14,14,12,13,13,13,13,11,13,13,13,13,11,13,13,13,13,11,13,13,13,13,11,12,12,14,14,12,13,13,12,12,11,13,13,13,13,11,13,13,12,12,11,13,13,13,13,12,12,13,14,14,12,13,13,12,12,11,13,13,13,13,11,13,13,12,12,11,13,13,13,13,12,13,13,14,14,12,13,13,12,12,11,13,13,13,13,11,13,13,12,12,11,10,10,10,10,12,10,10,11,11,12,9,9,11,11,13,11,11,10,10,13,10,10,10,10,13,11,11,12,12,13,10,10,12,12,14,12,11,12,12,13,11,11,11,12,13,12,12,12,12,13,11,11,12,12,13,10,10,12,12,14,11,11,12,12,13,11,11,12,12,13,11,11,12,12,14,12,12,12,12,14,10,10,11,11,14,12,11,11,11,13,11,11,11,11,13,12,12,11,11,14,12,12,12,11,14,10,10,11,11,14,12,11,11,11,13,11,11,11,11,13,12,12,11,11,11,11,11,10,10,12,10,11,9,9,12,12,12,11,11,13,12,12,9,9,13,13,13,10,10,13,13,13,12,12,13,13,13,14,14,13,12,12,11,11,14,13,13,12,12,14,13,13,11,11,13,13,13,12,11,13,13,13,14,14,13,12,12,10,10,14,13,13,11,11,13,13,13,10,10,13,13,13,11,11,14,13,13,14,14,14,12,12,10,10,13,13,13,11,11,13,13,13,10,10,13,13,13,11,11,14,13,13,14,14,14,13,13,10,10,13,13,13,11,11,13,13,13,10,10,14,12,12,8,8,14,12,12,9,9,14,11,11,9,9,14,12,12,8,8,14,12,12,7,7,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,12,13,9,9,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,13,13,9,9,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,9,9,14,13,12,9,9,14,13,13,9,9,15,13,13,10,10,15,12,12,10,10,15,13,13,9,9,15,13,13,9,9,14,13,13,9,9,14,12,12,8,8,13,13,13,8,8,14,14,13,9,9,14,14,13,7,7,14,14,14,8,8,14,14,14,10,10,15,14,14,12,12,14,14,14,9,9,15,14,14,10,10,14,14,14,9,9,14,14,14,10,9,15,14,14,12,12,14,14,14,9,9,15,14,14,10,10,14,14,14,9,9,15,14,15,9,9,15,14,14,11,11,14,14,14,8,8,14,14,14,9,9,14,14,14,8,8,14,15,14,10,10,15,14,14,11,11,14,14,14,8,8,15,14,14,9,9,14,14,14,8,8,12,12,12,13,13,16,16,15,12,12,17,16,16,13,13,17,16,16,11,11,17,16,16,12,12,17,16,17,13,13,17,16,16,14,14,17,17,16,12,12,18,16,16,13,13,17,16,17,12,12,17,17,17,13,13,18,16,16,14,14,18,17,17,12,12,17,17,17,13,13,18,17,17,13,13,17,17,17,13,13,17,16,16,14,14,17,17,17,12,12,16,16,17,13,13,17,17,16,12,12,18,17,17,13,13,18,16,16,14,14,18,17,17,12,12,19,16,17,13,13,17,16,17,12,12,13,14,14,10,10,16,14,14,13,13,17,15,15,14,14,17,14,14,13,13,16,14,14,13,13,17,16,15,14,14,16,16,16,15,15,17,15,15,14,14,17,15,15,14,14,17,15,15,14,14,17,16,15,14,14,16,16,16,15,15,18,15,15,13,13,16,16,15,14,14,17,15,15,14,13,17,15,15,14,14,16,16,16,15,15,18,15,14,13,13,17,15,15,14,14,18,14,15,13,13,18,15,15,14,14,16,16,16,15,15,17,15,15,13,13,17,15,15,14,14,17,15,15,13,13,13,11,11,10,10,16,14,14,13,13,17,14,15,14,14,17,15,15,12,12,17,14,14,12,12,16,15,15,14,14,16,14,14,14,14,16,15,15,14,14,16,15,15,14,14,16,15,15,14,14,16,15,15,14,14,16,15,14,15,15,17,15,15,14,14,17,15,15,14,14,17,15,15,14,14,17,15,16,14,14,16,14,14,14,14,17,15,15,13,13,17,15,15,13,13,16,15,15,13,13,17,16,16,14,14,17,15,14,15,14,17,15,15,13,13,17,15,15,13,13,17,15,15,13,13,14,14,14,9,9,14,14,14,18,19,14,15,15,19,18,14,14,14,19,19,15,14,14,19,19,15,16,16,19,19,15,16,16,19,19,15,15,15,19,19,15,16,16,19,20,15,15,15,19,19,15,15,15,19,19,15,16,16,20,20,15,15,15,18,19,15,15,16,19,20,15,15,15,19,18,15,15,15,18,18,15,16,16,21,20,15,15,15,19,19,15,15,15,19,19,15,15,14,19,20,15,15,15,20,19,15,16,16,19,20,15,15,15,19,19,15,15,15,20,21,15,14,15,19,19,14,12,12,9,9,14,14,15,21,19,14,14,14,18,19,14,15,15,19,20,14,14,14,19,19,15,15,15,19,20,15,15,14,21,19,15,15,15,20,19,15,14,15,20,21,15,15,15,18,18,15,15,15,20,21,16,14,14,18,19,15,15,15,20,19,15,15,15,18,21,15,15,15,19,19,15,15,15,19,20,16,15,14,20,19,15,16,15,19,19,15,15,15,19,0,14,15,15,19,19,15,15,15,19,19,15,15,14,20,19,15,15,15,20,19,15,15,15,19,19,15,15,15,20,19,12,12,12,13,13,16,15,16,11,11,16,16,16,12,12,17,16,16,11,11,17,16,16,12,11,17,17,17,13,13,18,16,16,14,14,18,18,17,13,13,17,16,16,13,13,17,17,17,13,13,17,16,17,12,12,17,15,16,13,13,17,16,17,12,12,17,16,16,13,12,17,16,16,12,12,18,17,17,13,13,18,16,16,13,14,18,17,17,12,12,17,16,16,12,12,17,17,17,12,12,18,17,17,13,13,17,16,16,14,14,17,17,17,12,12,17,16,16,12,12,18,17,17,12,12,13,14,14,9,9,16,14,14,13,13,16,15,15,14,14,16,14,14,13,13,16,14,14,13,13,17,16,15,15,15,16,15,16,16,15,17,15,15,14,14,17,15,15,15,15,17,15,15,14,14,17,15,15,14,14,16,15,16,16,16,17,15,15,14,14,16,15,15,14,15,16,15,15,14,14,17,15,15,15,15,16,16,16,15,16,18,15,14,13,14,17,15,15,14,14,17,14,14,13,13,17,15,15,14,14,16,15,15,15,15,17,15,14,14,14,17,15,15,14,14,17,14,14,13,13,13,11,11,11,11,16,14,14,12,12,16,14,14,13,13,16,14,14,12,12,16,14,14,12,12,16,15,15,13,13,17,14,14,14,14,17,15,15,13,13,16,15,15,14,13,16,15,15,13,13,16,15,15,13,13,16,14,14,14,14,16,15,15,13,13,16,14,15,13,13,17,15,15,13,13,17,15,15,13,13,16,14,14,14,14,17,15,15,12,12,17,14,15,13,13,17,15,15,12,12,16,15,15,13,13,17,14,14,14,14,17,15,15,12,12,17,15,15,13,13,16,15,15,12,12,14,15,15,8,8,14,14,14,19,18,14,15,15,19,20,14,14,14,19,19,14,14,15,19,20,15,16,15,19,21,15,16,16,21,19,15,15,15,20,19,15,16,16,19,20,15,15,15,19,18,15,16,15,20,19,15,16,16,19,20,15,15,15,19,19,15,16,15,20,20,14,15,15,19,19,15,15,15,21,19,15,17,16,19,20,15,14,15,0,21,15,15,15,19,20,14,14,14,19,19,15,15,15,20,19,15,16,16,19,19,15,15,15,19,18,15,15,15,20,19,14,14,15,18,18,14,12,12,9,9,14,14,14,18,18,14,14,14,18,18,14,15,14,19,18,14,14,14,19,18,15,15,15,19,20,15,14,14,18,18,15,15,15,20,19,15,15,15,18,20,15,15,15,19,18,15,15,15,19,19,15,14,14,19,21,15,15,15,20,20,15,15,15,18,19,14,15,15,19,20,15,15,15,20,19,15,14,14,19,21,15,15,15,18,19,15,14,15,20,19,14,15,15,21,21,14,15,15,19,20,15,14,14,19,20,15,15,15,19,20,15,15,14,20,20,14,15,15,20,19,13,12,12,13,13,17,16,16,11,11,17,16,16,12,12,18,17,16,11,11,18,16,16,11,11,17,17,17,13,13,18,16,16,13,13,18,17,17,12,12,18,16,16,13,13,18,17,17,12,12,18,17,17,13,13,18,16,16,14,14,18,16,17,12,12,18,17,17,13,13,17,17,17,12,12,17,17,17,12,12,17,16,15,13,13,18,16,16,11,11,17,16,16,12,12,17,16,17,11,11,18,17,17,13,12,17,16,16,13,13,17,17,17,12,12,17,16,17,12,12,18,17,17,11,11,14,14,14,9,9,16,14,14,13,13,17,15,15,14,14,17,14,14,13,13,16,14,14,13,13,17,15,15,14,14,16,16,16,16,15,18,15,15,14,14,17,16,15,15,15,17,15,15,14,14,17,15,15,14,15,16,16,16,15,16,18,15,15,14,14,17,15,15,14,15,17,15,15,14,14,17,15,15,14,14,16,16,16,15,16,17,14,14,13,13,17,15,15,14,14,18,15,15,13,13,17,15,15,14,14,16,16,16,15,15,17,14,14,13,13,17,15,15,14,14,17,14,14,13,13,13,11,11,11,11,16,14,14,12,12,16,14,14,12,13,17,15,14,11,11,17,14,14,11,11,17,15,15,13,14,17,14,14,14,14,17,15,15,13,13,17,14,14,13,13,17,15,15,13,13,17,15,15,13,13,17,14,14,14,14,17,15,15,13,13,18,14,15,13,13,17,15,15,13,13,16,15,15,13,13,17,14,14,13,13,17,15,15,12,12,16,14,14,12,12,16,15,15,12,12,17,16,15,13,13,17,14,14,13,13,17,15,15,12,12,16,15,15,12,12,16,15,15,12,12,13,15,15,8,8,14,14,14,18,19,14,15,15,19,20,14,14,14,18,18,14,15,15,18,18,15,16,16,19,19,15,16,17,20,20,15,15,15,19,19,15,16,16,18,20,15,15,15,19,19,15,15,16,18,18,15,17,16,19,19,15,15,15,18,21,15,16,16,21,20,15,15,15,19,21,15,16,15,20,19,15,16,17,20,20,15,15,15,19,19,15,16,16,21,20,15,15,15,19,20,15,15,15,19,19,15,16,16,20,19,15,15,15,19,19,15,16,15,20,21,15,15,15,21,19,14,12,12,8,8,14,14,14,20,18,14,13,13,19,19,14,14,14,19,18,15,14,14,19,20,14,15,15,20,20,15,14,14,21,20,15,15,15,20,20,15,15,14,21,19,15,15,15,19,19,15,15,15,19,20,15,14,14,20,20,15,15,15,19,20,15,14,14,19,20,15,15,15,20,20,15,15,15,20,19,15,14,14,20,21,15,15,15,20,21,15,14,14,20,0,15,16,15,20,21,15,15,15,19,20,15,14,14,19,19,15,15,15,19,20,15,15,15,19,19,15,15,15,18,20,13,12,12,13,13,18,16,17,12,12,17,16,16,12,12,17,17,16,11,11,18,16,16,11,11,17,17,18,13,13,18,16,16,14,14,18,17,17,13,13,18,16,16,13,13,18,17,17,12,12,17,17,16,13,13,17,16,16,13,14,18,17,17,12,12,18,16,16,12,13,17,16,17,12,12,17,18,17,13,13,18,16,16,13,13,18,17,17,12,12,17,16,16,12,12,17,17,17,11,11,17,16,17,12,12,17,16,16,13,13,17,16,16,11,11,17,16,16,12,12,18,16,17,11,11,14,14,14,9,9,16,14,15,13,13,17,15,15,14,14,17,14,14,12,12,16,14,14,13,13,18,15,15,15,15,17,15,16,15,16,18,15,15,14,14,17,15,16,15,15,17,15,15,14,14,18,15,15,14,14,16,16,16,16,15,17,15,15,14,14,16,15,15,14,14,17,15,15,14,14,17,15,15,14,14,17,16,16,15,15,17,15,14,13,13,17,15,15,14,14,17,15,15,13,13,17,15,15,14,14,16,16,16,15,15,18,15,14,14,14,17,15,15,14,14,18,15,15,13,13,13,12,12,11,11,16,14,14,12,12,16,14,14,13,13,17,15,15,12,12,17,14,14,12,12,17,15,15,14,14,17,14,14,14,14,17,15,15,13,13,17,15,14,13,13,17,15,15,13,13,17,15,15,13,13,16,14,14,14,14,17,15,15,13,13,16,14,14,13,13,16,15,15,13,13,17,15,16,13,13,17,14,14,14,13,17,15,15,12,12,16,15,14,12,12,17,15,15,12,12,16,15,16,13,13,16,14,14,14,13,17,15,15,12,12,16,14,14,12,12,17,15,15,12,12,14,15,15,8,8,14,14,14,18,18,14,15,15,19,18,14,14,14,18,18,14,15,15,19,20,15,16,15,21,18,15,16,16,18,0,15,15,15,19,20,15,16,16,20,0,15,16,15,19,18,15,15,15,19,19,15,16,16,21,19,15,15,15,19,19,15,16,16,20,20,15,15,15,19,19,15,15,15,19,18,15,16,16,20,20,15,14,15,20,19,15,15,15,19,20,15,15,15,19,19,15,16,15,19,20,15,16,16,19,20,15,15,15,19,19,15,16,15,20,20,15,15,15,20,18,13,12,12,8,8,14,14,14,19,20,14,14,14,19,19,14,15,15,20,20,14,14,14,18,19,15,15,15,20,0,15,14,14,18,20,15,15,15,19,19,15,15,15,21,19,15,15,15,19,20,15,15,15,20,21,15,14,14,20,19,15,15,15,20,19,15,15,14,21,19,15,15,15,19,18,15,15,15,20,19,15,14,14,19,19,15,15,16,20,19,15,15,15,20,0,15,15,15,19,21,15,15,15,22,20,15,14,14,22,19,15,15,15,19,20,15,14,14,20,19,14,15,15,19,21,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,6,8,8,6,8,8,7,9,9,10,11,11,8,8,8,7,9,9,11,12,12,9,9,9,6,7,7,10,11,11,10,11,11,10,11,11,13,13,13,12,12,12,10,12,11,14,14,14,12,12,12,6,5,5,9,6,6,9,6,6,9,7,7,12,10,10,11,7,6,9,7,7,13,11,11,12,7,7,7,8,8,12,10,10,12,10,10,11,10,10,15,13,13,13,9,9,12,11,11,15,14,14,15,11,11,8,7,7,12,11,11,12,11,11,11,11,11,14,13,14,14,12,12,12,11,11,16,15,15,14,12,12,0,10,10,0,12,12,0,12,12,0,11,11,0,14,14,0,11,11,0,11,11,0,15,15,0,11,11,7,8,8,13,11,11,12,10,10,12,11,11,15,13,13,14,11,11,12,10,10,16,14,14,15,10,10,9,7,7,13,11,12,13,12,11,12,11,11,15,14,14,14,12,12,13,12,12,16,15,15,15,12,12,0,11,11,0,12,12,0,12,13,0,12,12,0,15,15,0,12,12,0,12,12,0,16,15,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,0,9,9,0,9,9,0,10,10,0,9,9,0,10,10,0,10,10,0,10,10,0,10,10,0,7,7,0,7,7,0,6,6,0,8,8,0,7,7,0,8,8,0,8,8,0,7,7,0,8,8,0,7,7,0,9,9,0,8,9,0,10,10,0,9,9,0,10,10,0,10,11,0,9,9,0,10,10,0,9,9,0,11,11,0,12,12,0,12,12,0,11,11,0,12,12,0,13,13,0,12,12,0,13,13,0,8,8,0,12,12,0,12,12,0,13,13,0,13,13,0,13,13,0,13,13,0,13,13,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,11,11,0,12,12,0,13,13,0,12,12,0,13,13,0,13,13,0,12,12,0,12,12,0,9,9,0,12,12,0,13,13,0,14,14,0,13,13,0,14,14,0,14,14,0,13,13,0,14,14,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,0,7,7,0,8,8,0,9,9,0,12,12,0,8,8,0,9,9,0,13,13,0,8,8,0,6,6,0,11,11,0,12,12,0,12,12,0,14,14,0,11,12,0,12,12,0,15,15,0,12,12,0,5,5,0,5,5,0,6,6,0,7,7,0,10,10,0,6,6,0,7,7,0,11,11,0,6,6,0,7,7,0,11,11,0,12,11,0,11,11,0,14,14,0,10,10,0,12,12,0,15,15,0,12,12,0,6,6,0,12,12,0,12,12,0,12,12,0,14,14,0,11,11,0,12,12,0,16,16,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,11,11,0,16,16,0,11,11,0,6,6,0,12,12,0,12,12,0,13,13,0,15,15,0,12,12,0,13,13,0,15,15,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,3,7,9,12,16,16,3,2,5,7,11,14,15,7,4,5,6,9,12,15,8,5,5,5,8,10,14,9,7,6,6,8,10,12,12,10,10,7,6,8,10,15,12,10,6,4,7,9,0,0,0,0,0,0,0,0,0,0,0,0,249,213,64,0,0,0,0,0,64,223,64,0,0,0,0,0,136,227,64,0,0,0,0,0,112,231,64,0,0,0,0,0,88,235,64,0,0,0,0,0,64,239,64,0,0,0,0,0,136,243,64,0,0,0,0,0,112,247,64,0,0,0,0,0,88,251,64,0,0,0,0,0,64,255,64,0,0,0,0,0,136,3,65,0,0,0,0,136,132,14,65,176,240,7,0,48,241,7,0,48,242,7,0,48,244,7,0,48,248,7,0,48,0,8,0,48,16,8,0,48,48,8,0,24,0,120,58,76,70,11,60,242,204,192,60,116,252,59,61,86,73,154,61,241,93,228,61,248,163,29,62,180,231,78,62,54,157,130,62,78,220,159,62,193,174,190,62,65,132,222,62,173,194,254,62,186,101,15,63,248,0,31,63,29,233,45,63,249,219,59,63,45,162,72,63,160,17,84,63,38,15,94,63,46,143,102,63,112,149,109,63,174,51,115,63,159,135,119,63,66,184,122,63,196,242,124,63,75,103,126,63,196,69,127,63,241,186,127,63,217,237,127,63,162,253,127,63,248,255,127,63,168,9,120,57,17,119,11,59,135,139,193,59,74,113,61,60,148,82,156,60,94,8,233,60,42,83,34,61,74,118,87,61,138,227,137,61,7,140,171,61,34,154,208,61,108,239,248,61,164,52,18,62,100,112,41,62,65,21,66,62,67,11,92,62,47,56,119,62,197,191,137,62,92,97,152,62,135,112,167,62,4,220,182,62,188,145,198,62,231,126,214,62,48,144,230,62,227,177,246,62,13,104,3,63,121,107,11,63,98,89,19,63,42,40,27,63,137,206,34,63,166,67,42,63,49,127,49,63,126,121,56,63,153,43,63,63,92,143,69,63,127,159,75,63,165,87,81,63,104,180,86,63,89,179,91,63,8,83,96,63,252,146,100,63,177,115,104,63,138,246,107,63,198,29,111,63,109,236,113,63,62,102,116,63,154,143,118,63,104,109,120,63,3,5,122,63,26,92,123,63,153,120,124,63,143,96,125,63],"i8",L3,x.GLOBAL_BASE+510456),d3([17,26,126,63,39,171,126,63,176,25,127,63,74,107,127,63,68,165,127,63,132,204,127,63,123,229,127,63,17,244,127,63,158,251,127,63,219,254,127,63,218,255,127,63,0,0,128,63,5,12,120,56,50,131,11,58,118,186,193,58,226,203,61,59,38,207,156,59,139,32,234,59,245,102,35,60,63,100,89,60,184,127,139,60,59,23,174,60,239,114,212,60,96,140,254,60,45,46,22,61,114,237,46,61,155,127,73,61,220,223,101,61,123,4,130,61,159,250,145,61,71,207,162,61,38,127,180,61,173,6,199,61,16,98,218,61,63,141,238,61,244,193,1,62,185,160,12,62,128,224,23,62,182,126,35,62,166,120,47,62,116,203,59,62,34,116,72,62,141,111,85,62,107,186,98,62,83,81,112,62,180,48,126,62,110,42,134,62,252,92,141,62,9,174,148,62,138,27,156,62,100,163,163,62,112,67,171,62,119,249,178,62,54,195,186,62,93,158,194,62,147,136,202,62,118,127,210,62,154,128,218,62,142,137,226,62,217,151,234,62,2,169,242,62,139,186,250,62,251,100,1,63,99,106,5,63,65,108,9,63,89,105,13,63,116,96,17,63,94,80,21,63,231,55,25,63,231,21,29,63,58,233,32,63,197,176,36,63,116,107,40,63,62,24,44,63,35,182,47,63,43,68,51,63,109,193,54,63,10,45,58,63,48,134,61,63,26,204,64,63,17,254,67,63,107,27,71,63,142,35,74,63,238,21,77,63,15,242,79,63,132,183,82,63,239,101,85,63,3,253,87,63,129,124,90,63,60,228,92,63,21,52,95,63,254,107,97,63,246,139,99,63,14,148,101,63,98,132,103,63,33,93,105,63,133,30,107,63,213,200,108,63,103,92,110,63,155,217,111,63,224,64,113,63,172,146,114,63,131,207,115,63,241,247,116,63,139,12,118,63,239,13,119,63,193,252,119,63,172,217,120,63,99,165,121,63,155,96,122,63,15,12,123,63,124,168,123,63,163,54,124,63,71,183,124,63,41,43,125,63,13,147,125,63,183,239,125,63,229,65,126,63,89,138,126,63,205,201,126,63,251,0,127,63,150,48,127,63,78,89,127,63,205,123,127,63,182,152,127,63,167,176,127,63,53,196,127,63,239,211,127,63,91,224,127,63,245,233,127,63,51,241,127,63,127,246,127,63,59,250,127,63,190,252,127,63,84,254,127,63,64,255,127,63,186,255,127,63,238,255,127,63,254,255,127,63,0,0,128,63,169,12,120,55,54,134,11,57,38,198,193,57,94,226,61,58,234,237,156,58,85,101,234,58,56,170,35,59,207,219,89,59,169,226,139,59,42,178,174,59,13,91,213,59,204,219,255,59,91,25,23,60,250,46,48,60,194,45,75,60,156,20,104,60,46,113,131,60,225,202,147,60,185,22,165,60,1,84,183,60,245,129,202,60,198,159,222,60,155,172,243,60,199,211,4,61,213,71,16,61,250,49,28,61,174,145,40,61,101,102,53,61,141,175,66,61,140,108,80,61,193,156,94,61,133,63,109,61,41,84,124,61,252,236,133,61,26,232,141,61,13,27,150,61,110,133,158,61,212,38,167,61,210,254,175,61,245,12,185,61,200,80,194,61,209,201,203,61,146,119,213,61,139,89,223,61,51,111,233,61,2,184,243,61,105,51,254,61,106,112,4,62,214,223,9,62,171,103,15,62,153,7,21,62,77,191,26,62,116,142,32,62,181,116,38,62,184,113,44,62,34,133,50,62,149,174,56,62,178,237,62,62,21,66,69,62,92,171,75,62,30,41,82,62,243,186,88,62,112,96,95,62,40,25,102,62,170,228,108,62,132,194,115,62,68,178,122,62,185,217,128,62,203,98,132,62,26,244,135,62,105,141,139,62,120,46,143,62,6,215,146,62,211,134,150,62,156,61,154,62,29,251,157,62,19,191,161,62,57,137,165,62,71,89,169,62,249,46,173,62,5,10,177,62,36,234,180,62,13,207,184,62,117,184,188,62,18,166,192,62,153,151,196,62,190,140,200,62,52,133,204,62,175,128,208,62,225,126,212,62,125,127,216,62,52,130,220,62,184,134,224,62,185,140,228,62,233,147,232,62,248,155,236,62,150,164,240,62,117,173,244,62,67,182,248,62,178,190,252,62,57,99,0,63,153,102,2,63,82,105,4,63,60,107,6,63,48,108,8,63,6,108,10,63,151,106,12,63,188,103,14,63,78,99,16,63,39,93,18,63,33,85,20,63,21,75,22,63,222,62,24,63,87,48,26,63,92,31,28,63,199,11,30,63,117,245,31,63,66,220,33,63,12,192,35,63,176,160,37,63,12,126,39,63,254,87,41,63,104,46,43,63,39,1,45,63,29,208,46,63,43,155,48,63,51,98,50,63,23,37,52,63,188,227,53,63,4,158,55,63,214,83,57,63,23,5,59,63,173,177,60,63,128,89,62,63,120,252,63,63,126,154,65,63,124,51,67,63,93,199,68,63,12,86,70,63,119,223,71,63,138,99,73,63,54,226,74,63,104,91,76,63,17,207,77,63,35,61,79,63,145,165,80,63,76,8,82,63,75,101,83,63,130,188,84,63,231,13,86,63,114,89,87,63,26,159,88,63,218,222,89,63,172,24,91,63,138,76,92,63,113,122,93,63,93,162,94,63,78,196,95,63,67,224,96,63,58,246,97,63,54,6,99,63,56,16,100,63,67,20,101,63,92,18,102,63,133,10,103,63,198,252,103,63,37,233,104,63,168,207,105,63,89,176,106,63,64,139,107,63,102,96,108,63,216,47,109,63,159,249,109,63,201,189,110,63,97,124,111,63,118,53,112,63,23,233,112,63,81,151,113,63,53,64,114,63,212,227,114,63,61,130,115,63,131,27,116,63,184,175,116,63,238,62,117,63,56,201,117,63,171,78,118,63,90,207,118,63,90,75,119,63,192,194,119,63,162,53,120,63,21,164,120,63,48,14,121,63,8,116,121,63,182,213,121,63,79,51,122,63,235,140,122,63,162,226,122,63,139,52,123,63,191,130,123,63,85,205,123,63,102,20,124,63,9,88,124,63,88,152,124,63,106,213,124,63,88,15,125,63,58,70,125,63,41,122,125,63,62,171,125,63,143,217,125,63,54,5,126,63,75,46,126,63,228,84,126,63,27,121,126,63,7,155,126,63,190,186,126,63,88,216,126,63,236,243,126,63,144,13,127,63,91,37,127,63,99,59,127,63,188,79,127,63,125,98,127,63,185,115,127,63,135,131,127,63,249,145,127,63,36,159,127,63,26,171,127,63,238,181,127,63,179,191,127,63,122,200,127,63,85,208,127,63,84,215,127,63,136,221,127,63,0,227,127,63,204,231,127,63,249,235,127,63,150,239,127,63,177,242,127,63,85,245,127,63,144,247,127,63,109,249,127,63,246,250,127,63,54,252,127,63,55,253,127,63,1,254,127,63,156,254,127,63,18,255,127,63,103,255,127,63,163,255,127,63,204,255,127,63,229,255,127,63,244,255,127,63,252,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,60,12,120,54,253,134,11,56,19,201,193,56,248,231,61,57,148,245,156,57,115,118,234,57,238,186,35,58,113,249,89,58,32,251,139,58,96,216,174,58,34,148,213,58,3,23,0,59,209,82,23,59,65,125,48,59,21,150,75,59,8,157,104,59,233,200,131,59,20,58,148,59,218,161,165,59,16,0,184,59,136,84,203,59,16,159,223,59,118,223,244,59,194,138,5,60,128,32,17,60,217,48,29,60,172,187,41,60,219,192,54,60,67,64,68,60,194,57,82,60,52,173,96,60,115,154,111,60,88,1,127,60,222,112,135,60,186,157,143,60,42,7,152,60,25,173,160,60,112,143,169,60,23,174,178,60,246,8,188,60,243,159,197,60,245,114,207,60,225,129,217,60,156,204,227,60,10,83,238,60,14,21,249,60,70,9,2,61,177,165,7,61,187,95,13,61,81,55,19,61,102,44,25,61,230,62,31,61,195,110,37,61,233,187,43,61,71,38,50,61,202,173,56,61,97,82,63,61,247,19,70,61,121,242,76,61,210,237,83,61,240,5,91,61,187,58,98,61,32,140,105,61,8,250,112,61,93,132,120,61,132,21,128,61,249,246,131,61,130,230,135,61,19,228,139,61,159,239,143,61,26,9,148,61,119,48,152,61,169,101,156,61,163,168,160,61,88,249,164,61,186,87,169,61,186,195,173,61,76,61,178,61,95,196,182,61,230,88,187,61,209,250,191,61,18,170,196,61,152,102,201,61,85,48,206,61,56,7,211,61,48,235,215,61,47,220,220,61,34,218,225,61,248,228,230,61,161,252,235,61,11,33,241,61,35,82,246,61,217,143,251,61,13,109,0,62,105,24,3,62,247,201,5,62,174,129,8,62,133,63,11,62,113,3,14,62,104,205,16,62,96,157,19,62,79,115,22,62,42,79,25,62,232,48,28,62,124,24,31,62,221,5,34,62,255,248,36,62,215,241,39,62,90,240,42,62,125,244,45,62,51,254,48,62,114,13,52,62,45,34,55,62,88,60,58,62,232,91,61,62,208,128,64,62,3,171,67,62,118,218,70,62,26,15,74,62,229,72,77,62,199,135,80,62,181,203,83,62,162,20,87,62,127,98,90,62,63,181,93,62,213,12,97,62,50,105,100,62,73,202,103,62,12,48,107,62,108,154,110,62,92,9,114,62,203,124,117,62,173,244,120,62,241,112,124,62,138,241,127,62,52,187,129,62,190,127,131,62,91,70,133,62,4,15,135,62,176,217,136,62,89,166,138,62,245,116,140,62,126,69,142,62,234,23,144,62,50,236,145,62,78,194,147,62,54,154,149,62,224,115,151,62,70,79,153,62,93,44,155,62,31,11,157,62,130,235,158,62,127,205,160,62,11,177,162,62,31,150,164,62,177,124,166,62,186,100,168,62,47,78,170,62,9,57,172,62,62,37,174,62,198,18,176,62,150,1,178,62,167,241,179,62,238,226,181,62,100,213,183,62,254,200,185,62,179,189,187,62,122,179,189,62,74,170,191,62,25,162,193,62,221,154,195,62,142,148,197,62,34,143,199,62,142,138,201,62,203,134,203,62,205,131,205,62,140,129,207,62,253,127,209,62,24,127,211,62,210,126,213,62,33,127,215,62,252,127,217,62,88,129,219,62,45,131,221,62,112,133,223,62,23,136,225,62,25,139,227,62,108,142,229,62,5,146,231,62,219,149,233,62,228,153,235,62,21,158,237,62,102,162,239,62,203,166,241,62,59,171,243,62,173,175,245,62,21,180,247,62,107,184,249,62,164,188,251,62,181,192,253,62,150,196,255,62,30,228,0,63,207,229,1,63,88,231,2,63,182,232,3,63,226,233,4,63,215,234,5,63,146,235,6,63,12,236,7,63,66,236,8,63,45,236,9,63,202,235,10,63,19,235,11,63,4,234,12,63,151,232,13,63,200,230,14,63,145,228,15,63,239,225,16,63,220,222,17,63,84,219,18,63,81,215,19,63,208,210,20,63,202,205,21,63,61,200,22,63,34,194,23,63,117,187,24,63,50,180,25,63,85,172,26,63,215,163,27,63,182,154,28,63,236,144,29,63,117,134,30,63,77,123,31,63,110,111,32,63,214,98,33,63,126,85,34,63,100,71,35,63,130,56,36,63,212,40,37,63,87,24,38,63,5,7,39,63,219,244,39,63,213,225,40,63,239,205,41,63,36,185,42,63,113,163,43,63,209,140,44,63,64,117,45,63,188,92,46,63,63,67,47,63,199,40,48,63,78,13,49,63,211,240,49,63,80,211,50,63,195,180,51,63,39,149,52,63,122,116,53,63,184,82,54,63,220,47,55,63,229,11,56,63,206,230,56,63,149,192,57,63,54,153,58,63,174,112,59,63,249,70,60,63,21,28,61,63,255,239,61,63,179,194,62,63,48,148,63,63,113,100,64,63,116,51,65,63,55,1,66,63,182,205,66,63,239,152,67,63,224,98,68,63,134,43,69,63,222,242,69,63,230,184,70,63,156,125,71,63,253,64,72,63,7,3,73,63,184,195,73,63,14,131,74,63,6,65,75,63,159,253,75,63,215,184,76,63,172,114,77,63,28,43,78,63,38,226,78,63,199,151,79,63,253,75,80,63,201,254,80,63,39,176,81,63,22,96,82,63,150,14,83,63,164,187,83,63,63,103,84,63,103,17,85,63,26,186,85,63,86,97,86,63,28,7,87,63,105,171,87,63,62,78,88,63,152,239,88,63,120,143,89,63,221,45,90,63,198,202,90,63,50,102,91,63,33,0,92,63,147,152,92,63,134,47,93,63,251,196,93,63,242,88,94,63,105,235,94,63,98,124,95,63,219,11,96,63,213,153,96,63,80,38,97,63,76,177,97,63,201,58,98,63,199,194,98,63,70,73,99,63,71,206,99,63,202,81,100,63,208,211,100,63,88,84,101,63,100,211,101,63,244,80,102,63,9,205,102,63,163,71,103,63,195,192,103,63,107,56,104,63,154,174,104,63,82,35,105,63,147,150,105,63,96,8,106,63,184,120,106,63,157,231,106,63,16,85,107,63,19,193,107,63,166,43,108,63,203,148,108,63,132,252,108,63,209,98,109,63,180,199,109,63,48,43,110,63,68,141,110,63,244,237,110,63,64,77,111,63,42,171,111,63,181,7,112,63,225,98,112,63,177,188,112,63,38,21,113,63,67,108,113,63,10,194,113,63,123,22,114,63,155,105,114,63,106,187,114,63,234,11,115,63,31,91,115,63,9,169,115,63,172,245,115,63,9,65,116,63,35,139,116,63,252,211,116,63,151,27,117,63,245,97,117,63,26,167,117,63,8,235,117,63,193,45,118,63,72,111,118,63,159,175,118,63,202,238,118,63,201,44,119,63,161,105,119,63,84,165,119,63,228,223,119,63,85,25,120,63,168,81,120,63,226,136,120,63,3,191,120,63,16,244,120,63,11,40,121,63,247,90,121,63,215,140,121,63,173,189,121,63,125,237,121,63,73,28,122,63,20,74,122,63,226,118,122,63,181,162,122,63,144,205,122,63,118,247,122,63,107,32,123,63,112,72,123,63,138,111,123,63,186,149,123,63,5,187,123,63,109,223,123,63,245,2,124,63,160,37,124,63,113,71,124,63,108,104,124,63,147,136,124,63,233,167,124,63,114,198,124,63,48,228,124,63,38,1,125,63,89,29,125,63,201,56,125,63,124,83,125,63,115,109,125,63,178,134,125,63,60,159,125,63,19,183,125,63,60,206,125,63,184,228,125,63,139,250,125,63,184,15,126,63,66,36,126,63,44,56,126,63,120,75,126,63,43,94,126,63,70,112,126,63,204,129,126,63,194,146,126,63,41,163,126,63,4,179,126,63,86,194,126,63,35,209,126,63,109,223,126,63,55,237,126,63,131,250,126,63,85,7,127,63,175,19,127,63,148,31,127,63,7,43,127,63,10,54,127,63,160,64,127,63,205,74,127,63,146,84,127,63,242,93,127,63,239,102,127,63,141,111,127,63,206,119,127,63,181,127,127,63,67,135,127,63,124,142,127,63,98,149,127,63,247,155,127,63,61,162,127,63,56,168,127,63,233,173,127,63,83,179,127,63,120,184,127,63,90,189,127,63,252,193,127,63,95,198,127,63,134,202,127,63,116,206,127,63,41,210,127,63,168,213,127,63,244,216,127,63,13,220,127,63,247,222,127,63,179,225,127,63,67,228,127,63,168,230,127,63,229,232,127,63,252,234,127,63,237,236,127,63,188,238,127,63,105,240,127,63,246,241,127,63,101,243,127,63,183,244,127,63,238,245,127,63,11,247,127,63,16,248,127,63,254,248,127,63,214,249,127,63,155,250,127,63,76,251,127,63,236,251,127,63,124,252,127,63,252,252,127,63,110,253,127,63,211,253,127,63,44,254,127,63,121,254,127,63,189,254,127,63,247,254,127,63,42,255,127,63,84,255,127,63,120,255,127,63,150,255,127,63,175,255,127,63,195,255,127,63,211,255,127,63,224,255,127,63,234,255,127,63,241,255,127,63,246,255,127,63,250,255,127,63,253,255,127,63,254,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,171,15,120,53,24,135,11,55,225,201,193,55,107,233,61,56,128,247,156,56,187,122,234,56,24,191,35,57,213,0,90,57,56,1,140,57,229,225,174,57,88,162,213,57,60,33,0,58,24,97,23,58,175,144,48,58,243,175,75,58,212,190,104,58,159,222,131,58,143,85,148,58,48,196,165,58,119,42,184,58,90,136,203,58,204,221,223,58,191,42,245,58,148,183,5,59,124,85,17,59,16,111,29,59,73,4,42,59,31,21,55,59,138,161,68,59,129,169,82,59,252,44,97,59,241,43,112,59,88,166,127,59,19,206,135,59,169,6,144,59,233,124,152,59,204,48,161,59,79,34,170,59,106,81,179,59,26,190,188,59,86,104,198,59,26,80,208,59,95,117,218,59,31,216,228,59,83,120,239,59,244,85,250,59,126,184,2,60,177,100,8,60,145,47,14,60,25,25,20,60,70,33,26,60,19,72,32,60,126,141,38,60,129,241,44,60,25,116,51,60,65,21,58,60,246,212,64,60,50,179,71,60,243,175,78,60,50,203,85,60,235,4,93,60,26,93,100,60,186,211,107,60,198,104,115,60,58,28,123,60,7,119,129,60,33,111,133,60,102,118,137,60,212,140,141,60,105,178,145,60,33,231,149,60,251,42,154,60,243,125,158,60,6,224,162,60,50,81,167,60,115,209,171,60,199,96,176,60,43,255,180,60,154,172,185,60,19,105,190,60,146,52,195,60,20,15,200,60,149,248,204,60,19,241,209,60,137,248,214,60,245,14,220,60,83,52,225,60,160,104,230,60,215,171,235,60,246,253,240,60,249,94,246,60,220,206,251,60,205,166,0,61,153,109,3,61,207,59,6,61,109,17,9,61,114,238,11,61,220,210,14,61,167,190,17,61,211,177,20,61,94,172,23,61,68,174,26,61,133,183,29,61,30,200,32,61,12,224,35,61,78,255,38,61,225,37,42,61,196,83,45,61,243,136,48,61,109,197,51,61,47,9,55,61,55,84,58,61,130,166,61,61,15,0,65,61,218,96,68,61,226,200,71,61,35,56,75,61,156,174,78,61,73,44,82,61,40,177,85,61,55,61,89,61,115,208,92,61,217,106,96,61,103,12,100,61,25,181,103,61,238,100,107,61,227,27,111,61,244,217,114,61,30,159,118,61,96,107,122,61,182,62,126,61,143,12,129,61,73,253,130,61,138,241,132,61,79,233,134,61,150,228,136,61,94,227,138,61,167,229,140,61,109,235,142,61,175,244,144,61,109,1,147,61,164,17,149,61,83,37,151,61,120,60,153,61,17,87,155,61,30,117,157,61,155,150,159,61,136,187,161,61,226,227,163,61,169,15,166,61,218,62,168,61,116,113,170,61,116,167,172,61,218,224,174,61,162,29,177,61,205,93,179,61,87,161,181,61,62,232,183,61,130,50,186,61,32,128,188,61,22,209,190,61,98,37,193,61,2,125,195,61,245,215,197,61,57,54,200,61,203,151,202,61,169,252,204,61,211,100,207,61,68,208,209,61,252,62,212,61,249,176,214,61,56,38,217,61,184,158,219,61,117,26,222,61,111,153,224,61,163,27,227,61,14,161,229,61,175,41,232,61,132,181,234,61,138,68,237,61,191,214,239,61,33,108,242,61,174,4,245,61,99,160,247,61,62,63,250,61,61,225,252,61,93,134,255,61,78,23,1,62,252,108,2,62,56,196,3,62,255,28,5,62,81,119,6,62,45,211,7,62,145,48,9,62,125,143,10,62,238,239,11,62,228,81,13,62,94,181,14,62,89,26,16,62,214,128,17,62,210,232,18,62,77,82,20,62,69,189,21,62,184,41,23,62,166,151,24,62,13,7,26,62,236,119,27,62,65,234,28,62,11,94,30,62,73,211,31,62,250,73,33,62,28,194,34,62,173,59,36,62,172,182,37,62,24,51,39,62,240,176,40,62,50,48,42,62,220,176,43,62,238,50,45,62,101,182,46,62,64,59,48,62,126,193,49,62,30,73,51,62,29,210,52,62,123,92,54,62,54,232,55,62,76,117,57,62,187,3,59,62,131,147,60,62,162,36,62,62,22,183,63,62,222,74,65,62,248,223,66,62,98,118,68,62,28,14,70,62,35,167,71,62,117,65,73,62,18,221,74,62,247,121,76,62,35,24,78,62,149,183,79,62,74,88,81,62,66,250,82,62,121,157,84,62,240,65,86,62,163,231,87,62,146,142,89,62,186,54,91,62,26,224,92,62,177,138,94,62,124,54,96,62,122,227,97,62,169,145,99,62,7,65,101,62,147,241,102,62,75,163,104,62,44,86,106,62,54,10,108,62,102,191,109,62,187,117,111,62,51,45,113,62,204,229,114,62,132,159,116,62,90,90,118,62,75,22,120,62,85,211,121,62,120,145,123,62,176,80,125,62,253,16,127,62,46,105,128,62,101,74,129,62,36,44,130,62,105,14,131,62,52,241,131,62,130,212,132,62,84,184,133,62,169,156,134,62,127,129,135,62,213,102,136,62,171,76,137,62,255,50,138,62,209,25,139,62,32,1,140,62,233,232,140,62,46,209,141,62,236,185,142,62,34,163,143,62,208,140,144,62,244,118,145,62,142,97,146,62,156,76,147,62,29,56,148,62,17,36,149,62,118,16,150,62,76,253,150,62,144,234,151,62,67,216,152,62,99,198,153,62,239,180,154,62,230,163,155,62,71,147,156,62,17,131,157,62,67,115,158,62,219,99,159,62,218,84,160,62,60,70,161,62,3,56,162,62,43,42,163,62,181,28,164,62,160,15,165,62,233,2,166,62,145,246,166,62,149,234,167,62,245,222,168,62,176,211,169,62,197,200,170,62,50,190,171,62,246,179,172,62,17,170,173,62,129,160,174,62,69,151,175,62,91,142,176,62,196,133,177,62,125,125,178,62,133,117,179,62,220,109,180,62,128,102,181,62,112,95,182,62,171,88,183,62,47,82,184,62,252,75,185,62,17,70,186,62,108,64,187,62,11,59,188,62,239,53,189,62,22,49,190,62,126,44,191,62,38,40,192,62,13,36,193,62,51,32,194,62,150,28,195,62,52,25,196,62,12,22,197,62,30,19,198,62,104,16,199,62,233,13,200,62,159,11,201,62,138,9,202,62,169,7,203,62,249,5,204,62,123,4,205,62,44,3,206,62,11,2,207,62,24,1,208,62,81,0,209,62,181,255,209,62,66,255,210,62,248,254,211,62,213,254,212,62,216,254,213,62,255,254,214,62,75,255,215,62,184,255,216,62,71,0,218,62,245,0,219,62,195,1,220,62,173,2,221,62,180,3,222,62,214,4,223,62,17,6,224,62,101,7,225,62,208,8,226,62,81,10,227,62,231,11,228,62,144,13,229,62,76,15,230,62,25,17,231,62,245,18,232,62,224,20,233,62,217,22,234,62,221,24,235,62,236,26,236,62,5,29,237,62,39,31,238,62,79,33,239,62,125,35,240,62,176,37,241,62,230,39,242,62,31,42,243,62,88,44,244,62,145,46,245,62,200,48,246,62,253,50,247,62,45,53,248,62,88,55,249,62,124,57,250,62,153,59,251,62,172,61,252,62,181,63,253,62,179,65,254,62,163,67,255,62,195,34,0,63,173,163,0,63,142,36,1,63,102,165,1,63,53,38,2,63,250,166,2,63,180,39,3,63,99,168,3,63,5,41,4,63,155,169,4,63,36,42,5,63,159,170,5,63,12,43,6,63,105,171,6,63,183,43,7,63,244,171,7,63,32,44,8,63,59,172,8,63,68,44,9,63,58,172,9,63,28,44,10,63,235,171,10,63,164,43,11,63,73,171,11,63,216,42,12,63,80,170,12,63,177,41,13,63,251,168,13,63,44,40,14,63,69,167,14,63,68,38,15,63,41,165,15,63,243,35,16,63,162,162,16,63,53,33,17,63,172,159,17,63,5,30,18,63,65,156,18,63,95,26,19,63,94,152,19,63,61,22,20,63,252,147,20,63,155,17,21,63,24,143,21,63,116,12,22,63,173,137,22,63,195,6,23,63,182,131,23,63,133,0,24,63,46,125,24,63,179,249,24,63,18,118,25,63,74,242,25,63,91,110,26,63,69,234,26,63,6,102,27,63,159,225,27,63,14,93,28,63,84,216,28,63,111,83,29,63,95,206,29,63,36,73,30,63,188,195,30,63,40,62,31,63,102,184,31,63,119,50,32,63,90,172,32,63,14,38,33,63,146,159,33,63,230,24,34,63,10,146,34,63,253,10,35,63,190,131,35,63,77,252,35,63,169,116,36,63,211,236,36,63,200,100,37,63,138,220,37,63,22,84,38,63,110,203,38,63,143,66,39,63,122,185,39,63,47,48,40,63,172,166,40,63,241,28,41,63,254,146,41,63,210,8,42,63,108,126,42,63,205,243,42,63,243,104,43,63,223,221,43,63,143,82,44,63,3,199,44,63,59,59,45,63,54,175,45,63,244,34,46,63,116,150,46,63,182,9,47,63,185,124,47,63,125,239,47,63,1,98,48,63,69,212,48,63,72,70,49,63,10,184,49,63,139,41,50,63,202,154,50,63,198,11,51,63,127,124,51,63,246,236,51,63,40,93,52,63,22,205,52,63,191,60,53,63,36,172,53,63,66,27,54,63,27,138,54,63,174,248,54,63,249,102,55,63,254,212,55,63,187,66,56,63,47,176,56,63,91,29,57,63,63,138,57,63,217,246,57,63,41,99,58,63,48,207,58,63,236,58,59,63,93,166,59,63,130,17,60,63,93,124,60,63,235,230,60,63,44,81,61,63,33,187,61,63,201,36,62,63,35,142,62,63,48,247,62,63,238,95,63,63,94,200,63,63,126,48,64,63,80,152,64,63,209,255,64,63,3,103,65,63,228,205,65,63,117,52,66,63,181,154,66,63,163,0,67,63,64,102,67,63,139,203,67,63,131,48,68,63,41,149,68,63,124,249,68,63,123,93,69,63,39,193,69,63,127,36,70,63,132,135,70,63,51,234,70,63,142,76,71,63,148,174,71,63,68,16,72,63,159,113,72,63,164,210,72,63,83,51,73,63,172,147,73,63,174,243,73,63,89,83,74,63,173,178,74,63,169,17,75,63,77,112,75,63,154,206,75,63,143,44,76,63,43,138,76,63,110,231,76,63,89,68,77,63,234,160,77,63,34,253,77,63,0,89,78,63,133,180,78,63,176,15,79,63,128,106,79,63,246,196,79,63,18,31,80,63,210,120,80,63,56,210,80,63,66,43,81,63,242,131,81,63,69,220,81,63,61,52,82,63,217,139,82,63,24,227,82,63,252,57,83,63,131,144,83,63,174,230,83,63,123,60,84,63,236,145,84,63,0,231,84,63,183,59,85,63,16,144,85,63,12,228,85,63,170,55,86,63,235,138,86,63,206,221,86,63,83,48,87,63,121,130,87,63,66,212,87,63,172,37,88,63,184,118,88,63,101,199,88,63,180,23,89,63,164,103,89,63,53,183,89,63,104,6,90,63,59,85,90,63,175,163,90,63,197,241,90,63,123,63,91,63,210,140,91,63,201,217,91,63,97,38,92,63,154,114,92,63,115,190,92,63,237,9,93,63,7,85,93,63,194,159,93,63,29,234,93,63,24,52,94,63,179,125,94,63,239,198,94,63,203,15,95,63,72,88,95,63,100,160,95,63,33,232,95,63,126,47,96,63,123,118,96,63,24,189,96,63,85,3,97,63,51,73,97,63,177,142,97,63,207,211,97,63,141,24,98,63,236,92,98,63,235,160,98,63,138,228,98,63,202,39,99,63,170,106,99,63,42,173,99,63,75,239,99,63,13,49,100,63,111,114,100,63,114,179,100,63,21,244,100,63,90,52,101,63,63,116,101,63,197,179,101,63,236,242,101,63,180,49,102,63,29,112,102,63,39,174,102,63,211,235,102,63,32,41,103,63,15,102,103,63,159,162,103,63,209,222,103,63,164,26,104,63,26,86,104,63,49,145,104,63,235,203,104,63,71,6,105,63,69,64,105,63,230,121,105,63,42,179,105,63,16,236,105,63,153,36,106,63,197,92,106,63,148,148,106,63,7,204,106,63,29,3,107,63,214,57,107,63,52,112,107,63,53,166,107,63,218,219,107,63,36,17,108,63,18,70,108,63,164,122,108,63,220,174,108,63,184,226,108,63,57,22,109,63,96,73,109,63,44,124,109,63,157,174,109,63,181,224,109,63,115,18,110,63,214,67,110,63,225,116,110,63,146,165,110,63,233,213,110,63,232,5,111,63,142,53,111,63,219,100,111,63,209,147,111,63,110,194,111,63,179,240,111,63,160,30,112,63,54,76,112,63,117,121,112,63,93,166,112,63,239,210,112,63,41,255,112,63,14,43,113,63,156,86,113,63,213,129,113,63,184,172,113,63,70,215,113,63,127,1,114,63,99,43,114,63,243,84,114,63,46,126,114,63,21,167,114,63,169,207,114,63,233,247,114,63,214,31,115,63,113,71,115,63,184,110,115,63,173,149,115,63,80,188,115,63,162,226,115,63,161,8,116,63,80,46,116,63,174,83,116,63,187,120,116,63,119,157,116,63,228,193,116,63,1,230,116,63,206,9,117,63,76,45,117,63,123,80,117,63,92,115,117,63,238,149,117,63,51,184,117,63,42,218,117,63,211,251,117,63,48,29,118,63,64,62,118,63,3,95,118,63,122,127,118,63,166,159,118,63,134,191,118,63,27,223,118,63,101,254,118,63,101,29,119,63,27,60,119,63,135,90,119,63,169,120,119,63,131,150,119,63,19,180,119,63,91,209,119,63,91,238,119,63,20,11,120,63,132,39,120,63,174,67,120,63,145,95,120,63,46,123,120,63,132,150,120,63,149,177,120,63,96,204,120,63,231,230,120,63,41,1,121,63,38,27,121,63,223,52,121,63,85,78,121,63,136,103,121,63,120,128,121,63,37,153,121,63,144,177,121,63,185,201,121,63,161,225,121,63,72,249,121,63,174,16,122,63,212,39,122,63,185,62,122,63,96,85,122,63,198,107,122,63,238,129,122,63,216,151,122,63,131,173,122,63,241,194,122,63,33,216,122,63,20,237,122,63,202,1,123,63,68,22,123,63,130,42,123,63,133,62,123,63,77,82,123,63,217,101,123,63,43,121,123,63,68,140,123,63,34,159,123,63,200,177,123,63,52,196,123,63,104,214,123,63,99,232,123,63,39,250,123,63,180,11,124,63,9,29,124,63,40,46,124,63,17,63,124,63,196,79,124,63,65,96,124,63,137,112,124,63,156,128,124,63,124,144,124,63,39,160,124,63,158,175,124,63,226,190,124,63,244,205,124,63,211,220,124,63,128,235,124,63,251,249,124,63,69,8,125,63,94,22,125,63,71,36,125,63,255,49,125,63,136,63,125,63,225,76,125,63,11,90,125,63,7,103,125,63,212,115,125,63,115,128,125,63,229,140,125,63,42,153,125,63,66,165,125,63,46,177,125,63,238,188,125,63,130,200,125,63,235,211,125,63,41,223,125,63,61,234,125,63,38,245,125,63,230,255,125,63,124,10,126,63,234,20,126,63,47,31,126,63,75,41,126,63,64,51,126,63,13,61,126,63,180,70,126,63,51,80,126,63,140,89,126,63,191,98,126,63,205,107,126,63,181,116,126,63,120,125,126,63,23,134,126,63,146,142,126,63,233,150,126,63,28,159,126,63,44,167,126,63,26,175,126,63,229,182,126,63,142,190,126,63,22,198,126,63,124,205,126,63,194,212,126,63,231,219,126,63,235,226,126,63,208,233,126,63,149,240,126,63,59,247,126,63,195,253,126,63,44,4,127,63,118,10,127,63,163,16,127,63,179,22,127,63,165,28,127,63,123,34,127,63,52,40,127,63,210,45,127,63,83,51,127,63,186,56,127,63,5,62,127,63,53,67,127,63,75,72,127,63,72,77,127,63,42,82,127,63,243,86,127,63,163,91,127,63,58,96,127,63,185,100,127,63,32,105,127,63,111,109,127,63,166,113,127,63,199,117,127,63,208,121,127,63,196,125,127,63,161,129,127,63,104,133,127,63,25,137,127,63,182,140,127,63,61,144,127,63,176,147,127,63,14,151,127,63,89,154,127,63,143,157,127,63,179,160,127,63,195,163,127,63,192,166,127,63,171,169,127,63,132,172,127,63,74,175,127,63,255,177,127,63,163,180,127,63,53,183,127,63,183,185,127,63,40,188,127,63,137,190,127,63,217,192,127,63,26,195,127,63,76,197,127,63,111,199,127,63,130,201,127,63,135,203,127,63,126,205,127,63,102,207,127,63,65,209,127,63,14,211,127,63,205,212,127,63,128,214,127,63,38,216,127,63,191,217,127,63,76,219,127,63,204,220,127,63,65,222,127,63,170,223,127,63,8,225,127,63,91,226,127,63,163,227,127,63,224,228,127,63,19,230,127,63,59,231,127,63,90,232,127,63,110,233,127,63,122,234,127,63,124,235,127,63,116,236,127,63,100,237,127,63,75,238,127,63,42,239,127,63,1,240,127,63,207,240,127,63,149,241,127,63,84,242,127,63,12,243,127,63,188,243,127,63,101,244,127,63,7,245,127,63,162,245,127,63,55,246,127,63,198,246,127,63,78,247,127,63,209,247,127,63,77,248,127,63,196,248,127,63,54,249,127,63,162,249,127,63,9,250,127,63,108,250,127,63,201,250,127,63,34,251,127,63,118,251,127,63,198,251,127,63,18,252,127,63,89,252,127,63,157,252,127,63,221,252,127,63,26,253,127,63,83,253,127,63,136,253,127,63,187,253,127,63,234,253,127,63,22,254,127,63,64,254,127,63,103,254,127,63,139,254,127,63,173,254,127,63,204,254,127,63,234,254,127,63,5,255,127,63,30,255,127,63,53,255,127,63,74,255,127,63,94,255,127,63,112,255,127,63,128,255,127,63,143,255,127,63,157,255,127,63,169,255,127,63,180,255,127,63,191,255,127,63,200,255,127,63,208,255,127,63,215,255,127,63,221,255,127,63,227,255,127,63,232,255,127,63,236,255,127,63,239,255,127,63,243,255,127,63,245,255,127,63,248,255,127,63,249,255,127,63,251,255,127,63,252,255,127,63,253,255,127,63,254,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,204,8,120,52,171,134,11,54,79,202,193,54,190,233,61,55,238,247,156,55,192,123,234,55,43,192,35,56,161,2,90,56,189,2,140,56,76,228,174,56,227,165,213,56,199,35,0,57,168,100,23,57,134,149,48,57,104,182,75,57,64,199,104,57,7,228,131,57,105,92,148,57,191,204,165,57,6,53,184,57,65,149,203,57,105,237,223,57,120,61,245,57,184,194,5,58,166,98,17,58,134,126,29,58,81,22,42,58,9,42,55,58,172,185,68,58,54,197,82,58,165,76,97,58,250,79,112,58,47,207,127,58,34,229,135,58,154,32,144,58,255,153,152,58,80,81,161,58,139,70,170,58,174,121,179,58,186,234,188,58,171,153,198,58,129,134,208,58,58,177,218,58,212,25,229,58,79,192,239,58,167,164,250,58,109,227,2,59,117,147,8,59,105,98,14,59,73,80,20,59,19,93,26,59,199,136,32,59,100,211,38,59,232,60,45,59,83,197,51,59,164,108,58,59,218,50,65,59,243,23,72,59,239,27,79,59,204,62,86,59,138,128,93,59,38,225,100,59,161,96,108,59,249,254,115,59,45,188,123,59,29,204,129,59,145,201,133,59,113,214,137,59,188,242,141,59,113,30,146,59,145,89,150,59,26,164,154,59,12,254,158,59,102,103,163,59,40,224,167,59,80,104,172,59,222,255,176,59,209,166,181,59,40,93,186,59,228,34,191,59,2,248,195,59,131,220,200,59,101,208,205,59,168,211,210,59,74,230,215,59,76,8,221,59,172,57,226,59,105,122,231,59,131,202,236,59,249,41,242,59,202,152,247,59,245,22,253,59,60,82,1,60,170,32,4,60,196,246,6,60,137,212,9,60,249,185,12,60,19,167,15,60,216,155,18,60,69,152,21,60,92,156,24,60,26,168,27,60,129,187,30,60,143,214,33,60,69,249,36,60,160,35,40,60,162,85,43,60,73,143,46,60,149,208,49,60,133,25,53,60,26,106,56,60,81,194,59,60,44,34,63,60,168,137,66,60,199,248,69,60,134,111,73,60,230,237,76,60,231,115,80,60,134,1,84,60,197,150,87,60,162,51,91,60,28,216,94,60,52,132,98,60,232,55,102,60,56,243,105,60,35,182,109,60,170,128,113,60,202,82,117,60,131,44,121,60,214,13,125,60,96,123,128,60,161,115,130,60,174,111,132,60,134,111,134,60,40,115,136,60,149,122,138,60,205,133,140,60,206,148,142,60,152,167,144,60,44,190,146,60,136,216,148,60,173,246,150,60,154,24,153,60,78,62,155,60,202,103,157,60,13,149,159,60,23,198,161,60,231,250,163,60,125,51,166,60,217,111,168,60,249,175,170,60,223,243,172,60,137,59,175,60,247,134,177,60,40,214,179,60,29,41,182,60,213,127,184,60,80,218,186,60,140,56,189,60,138,154,191,60,74,0,194,60,202,105,196,60,11,215,198,60,12,72,201,60,205,188,203,60,77,53,206,60,140,177,208,60,137,49,211,60,69,181,213,60,189,60,216,60,243,199,218,60,230,86,221,60,149,233,223,60,0,128,226,60,39,26,229,60,8,184,231,60,164,89,234,60,250,254,236,60,9,168,239,60,210,84,242,60,83,5,245,60,141,185,247,60,126,113,250,60,39,45,253,60,134,236,255,60,206,87,1,61,52,187,2,61,117,32,4,61,144,135,5,61,133,240,6,61,84,91,8,61,253,199,9,61,128,54,11,61,219,166,12,61,16,25,14,61,29,141,15,61,3,3,17,61,193,122,18,61,87,244,19,61,197,111,21,61,10,237,22,61,39,108,24,61,26,237,25,61,228,111,27,61,132,244,28,61,251,122,30,61,71,3,32,61,105,141,33,61,96,25,35,61,45,167,36,61,206,54,38,61,67,200,39,61,141,91,41,61,171,240,42,61,156,135,44,61,96,32,46,61,248,186,47,61,99,87,49,61,160,245,50,61,175,149,52,61,144,55,54,61,67,219,55,61,199,128,57,61,28,40,59,61,65,209,60,61,56,124,62,61,254,40,64,61,148,215,65,61,250,135,67,61,47,58,69,61,51,238,70,61,5,164,72,61,166,91,74,61,20,21,76,61,80,208,77,61,90,141,79,61,49,76,81,61,212,12,83,61,68,207,84,61,128,147,86,61,135,89,88,61,90,33,90,61,248,234,91,61,97,182,93,61,148,131,95,61,145,82,97,61,88,35,99,61,232,245,100,61,65,202,102,61,100,160,104,61,78,120,106,61,1,82,108,61,123,45,110,61,188,10,112,61,197,233,113,61,148,202,115,61,41,173,117,61,133,145,119,61,166,119,121,61,140,95,123,61,55,73,125,61,166,52,127,61,237,144,128,61,105,136,129,61,198,128,130,61,5,122,131,61,37,116,132,61,39,111,133,61,9,107,134,61,204,103,135,61,112,101,136,61,244,99,137,61,88,99,138,61,157,99,139,61,193,100,140,61,196,102,141,61,167,105,142,61,106,109,143,61,11,114,144,61,139,119,145,61,234,125,146,61,40,133,147,61,67,141,148,61,61,150,149,61,20,160,150,61,201,170,151,61,92,182,152,61,203,194,153,61,24,208,154,61,66,222,155,61,72,237,156,61,42,253,157,61,233,13,159,61,132,31,160,61,250,49,161,61,76,69,162,61,122,89,163,61,130,110,164,61,101,132,165,61,35,155,166,61,188,178,167,61,47,203,168,61,124,228,169,61,162,254,170,61,163,25,172,61,124,53,173,61,47,82,174,61,187,111,175,61,31,142,176,61,92,173,177,61,113,205,178,61,94,238,179,61,35,16,181,61,192,50,182,61,52,86,183,61,127,122,184,61,160,159,185,61,153,197,186,61,104,236,187,61,13,20,189,61,136,60,190,61,217,101,191,61,255,143,192,61,250,186,193,61,202,230,194,61,111,19,196,61,233,64,197,61,55,111,198,61,89,158,199,61,78,206,200,61,23,255,201,61,179,48,203,61,35,99,204,61,101,150,205,61,121,202,206,61,96,255,207,61,25,53,209,61,164,107,210,61,0,163,211,61,45,219,212,61,44,20,214,61,251,77,215,61,154,136,216,61,10,196,217,61,74,0,219,61,89,61,220,61,56,123,221,61,230,185,222,61,99,249,223,61,174,57,225,61,200,122,226,61,176,188,227,61,102,255,228,61,233,66,230,61,58,135,231,61,88,204,232,61,66,18,234,61,249,88,235,61,124,160,236,61,203,232,237,61,230,49,239,61,204,123,240,61,125,198,241,61,249,17,243,61,63,94,244,61,79,171,245,61,42,249,246,61,206,71,248,61,60,151,249,61,114,231,250,61,114,56,252,61,58,138,253,61,202,220,254,61,17,24,0,62,33,194,0,62,149,108,1,62,108,23,2,62,166,194,2,62,68,110,3,62,69,26,4,62,168,198,4,62,111,115,5,62,152,32,6,62,35,206,6,62,17,124,7,62,98,42,8,62,20,217,8,62,40,136,9,62,157,55,10,62,117,231,10,62,173,151,11,62,71,72,12,62,66,249,12,62,158,170,13,62,91,92,14,62,120,14,15,62,246,192,15,62,213,115,16,62,19,39,17,62,177,218,17,62,175,142,18,62,13,67,19,62,202,247,19,62,231,172,20,62,99,98,21,62,62,24,22,62,120,206,22,62,16,133,23,62,7,60,24,62,92,243,24,62,16,171,25,62,33,99,26,62,145,27,27,62,94,212,27,62,137,141,28,62,17,71,29,62,246,0,30,62,56,187,30,62,215,117,31,62,211,48,32,62,43,236,32,62,224,167,33,62,241,99,34,62,93,32,35,62,38,221,35,62,74,154,36,62,202,87,37,62,165,21,38,62,219,211,38,62,108,146,39,62,88,81,40,62,159,16,41,62,64,208,41,62,59,144,42,62,144,80,43,62,63,17,44,62,72,210,44,62,170,147,45,62,102,85,46,62,122,23,47,62,232,217,47,62,175,156,48,62,206,95,49,62,69,35,50,62,21,231,50,62,61,171,51,62,189,111,52,62,148,52,53,62,195,249,53,62,73,191,54,62,38,133,55,62,91,75,56,62,230,17,57,62,199,216,57,62,255,159,58,62,141,103,59,62,113,47,60,62,171,247,60,62,59,192,61,62,31,137,62,62,89,82,63,62,232,27,64,62,204,229,64,62,5,176,65,62,146,122,66,62,115,69,67,62,168,16,68,62,49,220,68,62,14,168,69,62,62,116,70,62,194,64,71,62,152,13,72,62,193,218,72,62,61,168,73,62,12,118,74,62,44,68,75,62,159,18,76,62,100,225,76,62,122,176,77,62,225,127,78,62,154,79,79,62,164,31,80,62,255,239,80,62,170,192,81,62,166,145,82,62,242,98,83,62,141,52,84,62,121,6,85,62,180,216,85,62,63,171,86,62,25,126,87,62,65,81,88,62,185,36,89,62,126,248,89,62,147,204,90,62,245,160,91,62,165,117,92,62,163,74,93,62,238,31,94,62,135,245,94,62,109,203,95,62,159,161,96,62,30,120,97,62,233,78,98,62,1,38,99,62,100,253,99,62,19,213,100,62,14,173,101,62,84,133,102,62,229,93,103,62,193,54,104,62,231,15,105,62,88,233,105,62,19,195,106,62,24,157,107,62,103,119,108,62,255,81,109,62,224,44,110,62,11,8,111,62,126,227,111,62,58,191,112,62,62,155,113,62,139,119,114,62,31,84,115,62,251,48,116,62,31,14,117,62,138,235,117,62,59,201,118,62,52,167,119,62,115,133,120,62,248,99,121,62,196,66,122,62,213,33,123,62,44,1,124,62,200,224,124,62,170,192,125,62,208,160,126,62,59,129,127,62,245,48,128,62,111,161,128,62,11,18,129,62,201,130,129,62,168,243,129,62,169,100,130,62,204,213,130,62,15,71,131,62,117,184,131,62,251,41,132,62,162,155,132,62,107,13,133,62,84,127,133,62,93,241,133,62,136,99,134,62,210,213,134,62,61,72,135,62,200,186,135,62,116,45,136,62,63,160,136,62,42,19,137,62,52,134,137,62,94,249,137,62,168,108,138,62,17,224,138,62,153,83,139,62,64,199,139,62,6,59,140,62,235,174,140,62,239,34,141,62,17,151,141,62,82,11,142,62,177,127,142,62,46,244,142,62,201,104,143,62,130,221,143,62,89,82,144,62,78,199,144,62,96,60,145,62,143,177,145,62,220,38,146,62,70,156,146,62,205,17,147,62,113,135,147,62,50,253,147,62,16,115,148,62,9,233,148,62,32,95,149,62,82,213,149,62,161,75,150,62,12,194,150,62,146,56,151,62,53,175,151,62,243,37,152,62,204,156,152,62,193,19,153,62,209,138,153,62,252,1,154,62,66,121,154,62,163,240,154,62,31,104,155,62,181,223,155,62,101,87,156,62,48,207,156,62,21,71,157,62,20,191,157,62,45,55,158,62,96,175,158,62,172,39,159,62,18,160,159,62,145,24,160,62,41,145,160,62,218,9,161,62,165,130,161,62,136,251,161,62,132,116,162,62,152,237,162,62,197,102,163,62,10,224,163,62,103,89,164,62,220,210,164,62,105,76,165,62,14,198,165,62,202,63,166,62,158,185,166,62,137,51,167,62,139,173,167,62,164,39,168,62,213,161,168,62,27,28,169,62],"i8",L3,x.GLOBAL_BASE+520696),d3([121,150,169,62,237,16,170,62,119,139,170,62,24,6,171,62,206,128,171,62,155,251,171,62,125,118,172,62,117,241,172,62,130,108,173,62,165,231,173,62,221,98,174,62,42,222,174,62,140,89,175,62,2,213,175,62,142,80,176,62,46,204,176,62,226,71,177,62,170,195,177,62,135,63,178,62,119,187,178,62,124,55,179,62,148,179,179,62,191,47,180,62,254,171,180,62,80,40,181,62,181,164,181,62,45,33,182,62,184,157,182,62,85,26,183,62,5,151,183,62,199,19,184,62,156,144,184,62,130,13,185,62,123,138,185,62,133,7,186,62,161,132,186,62,206,1,187,62,13,127,187,62,93,252,187,62,190,121,188,62,48,247,188,62,178,116,189,62,70,242,189,62,233,111,190,62,157,237,190,62,98,107,191,62,54,233,191,62,26,103,192,62,14,229,192,62,17,99,193,62,36,225,193,62,70,95,194,62,119,221,194,62,184,91,195,62,7,218,195,62,100,88,196,62,209,214,196,62,75,85,197,62,212,211,197,62,107,82,198,62,16,209,198,62,195,79,199,62,132,206,199,62,82,77,200,62,45,204,200,62,21,75,201,62,11,202,201,62,13,73,202,62,29,200,202,62,56,71,203,62,97,198,203,62,149,69,204,62,214,196,204,62,34,68,205,62,123,195,205,62,223,66,206,62,79,194,206,62,202,65,207,62,81,193,207,62,226,64,208,62,127,192,208,62,38,64,209,62,216,191,209,62,148,63,210,62,91,191,210,62,44,63,211,62,7,191,211,62,235,62,212,62,218,190,212,62,210,62,213,62,211,190,213,62,222,62,214,62,242,190,214,62,15,63,215,62,53,191,215,62,99,63,216,62,154,191,216,62,217,63,217,62,32,192,217,62,112,64,218,62,199,192,218,62,38,65,219,62,140,193,219,62,250,65,220,62,112,194,220,62,236,66,221,62,112,195,221,62,250,67,222,62,139,196,222,62,34,69,223,62,192,197,223,62,100,70,224,62,14,199,224,62,189,71,225,62,115,200,225,62,46,73,226,62,239,201,226,62,181,74,227,62,127,203,227,62,79,76,228,62,36,205,228,62,253,77,229,62,219,206,229,62,190,79,230,62,164,208,230,62,142,81,231,62,125,210,231,62,111,83,232,62,100,212,232,62,93,85,233,62,89,214,233,62,89,87,234,62,91,216,234,62,96,89,235,62,104,218,235,62,114,91,236,62,126,220,236,62,141,93,237,62,158,222,237,62,176,95,238,62,196,224,238,62,218,97,239,62,241,226,239,62,10,100,240,62,35,229,240,62,62,102,241,62,89,231,241,62,116,104,242,62,145,233,242,62,173,106,243,62,202,235,243,62,230,108,244,62,3,238,244,62,31,111,245,62,59,240,245,62,86,113,246,62,112,242,246,62,137,115,247,62,161,244,247,62,184,117,248,62,206,246,248,62,226,119,249,62,244,248,249,62,4,122,250,62,18,251,250,62,30,124,251,62,40,253,251,62,47,126,252,62,52,255,252,62,54,128,253,62,52,1,254,62,48,130,254,62,40,3,255,62,29,132,255,62,135,2,0,63,254,66,0,63,115,131,0,63,230,195,0,63,86,4,1,63,197,68,1,63,49,133,1,63,155,197,1,63,3,6,2,63,103,70,2,63,202,134,2,63,42,199,2,63,135,7,3,63,225,71,3,63,56,136,3,63,141,200,3,63,222,8,4,63,44,73,4,63,119,137,4,63,191,201,4,63,3,10,5,63,68,74,5,63,130,138,5,63,188,202,5,63,242,10,6,63,36,75,6,63,83,139,6,63,126,203,6,63,165,11,7,63,199,75,7,63,230,139,7,63,1,204,7,63,23,12,8,63,41,76,8,63,54,140,8,63,63,204,8,63,67,12,9,63,67,76,9,63,62,140,9,63,52,204,9,63,37,12,10,63,18,76,10,63,249,139,10,63,219,203,10,63,184,11,11,63,144,75,11,63,98,139,11,63,47,203,11,63,246,10,12,63,184,74,12,63,116,138,12,63,43,202,12,63,219,9,13,63,134,73,13,63,43,137,13,63,202,200,13,63,98,8,14,63,245,71,14,63,129,135,14,63,7,199,14,63,135,6,15,63,0,70,15,63,114,133,15,63,222,196,15,63,67,4,16,63,161,67,16,63,249,130,16,63,73,194,16,63,147,1,17,63,213,64,17,63,17,128,17,63,69,191,17,63,114,254,17,63,151,61,18,63,181,124,18,63,203,187,18,63,218,250,18,63,225,57,19,63,225,120,19,63,216,183,19,63,200,246,19,63,176,53,20,63,143,116,20,63,103,179,20,63,54,242,20,63,253,48,21,63,188,111,21,63,114,174,21,63,32,237,21,63,197,43,22,63,98,106,22,63,246,168,22,63,129,231,22,63,3,38,23,63,125,100,23,63,237,162,23,63,84,225,23,63,178,31,24,63,7,94,24,63,83,156,24,63,149,218,24,63,206,24,25,63,253,86,25,63,35,149,25,63,63,211,25,63,82,17,26,63,90,79,26,63,89,141,26,63,78,203,26,63,57,9,27,63,25,71,27,63,240,132,27,63,188,194,27,63,126,0,28,63,54,62,28,63,227,123,28,63,134,185,28,63,30,247,28,63,172,52,29,63,47,114,29,63,167,175,29,63,20,237,29,63,118,42,30,63,206,103,30,63,26,165,30,63,91,226,30,63,145,31,31,63,188,92,31,63,219,153,31,63,239,214,31,63,247,19,32,63,244,80,32,63,230,141,32,63,203,202,32,63,165,7,33,63,115,68,33,63,53,129,33,63,235,189,33,63,150,250,33,63,52,55,34,63,198,115,34,63,75,176,34,63,197,236,34,63,50,41,35,63,146,101,35,63,230,161,35,63,46,222,35,63,105,26,36,63,151,86,36,63,185,146,36,63,205,206,36,63,213,10,37,63,208,70,37,63,190,130,37,63,158,190,37,63,114,250,37,63,56,54,38,63,241,113,38,63,157,173,38,63,59,233,38,63,204,36,39,63,79,96,39,63,197,155,39,63,45,215,39,63,135,18,40,63,211,77,40,63,18,137,40,63,66,196,40,63,101,255,40,63,121,58,41,63,128,117,41,63,120,176,41,63,98,235,41,63,62,38,42,63,11,97,42,63,202,155,42,63,122,214,42,63,28,17,43,63,175,75,43,63,52,134,43,63,170,192,43,63,16,251,43,63,105,53,44,63,178,111,44,63,236,169,44,63,23,228,44,63,51,30,45,63,64,88,45,63,61,146,45,63,43,204,45,63,10,6,46,63,218,63,46,63,154,121,46,63,74,179,46,63,235,236,46,63,124,38,47,63,254,95,47,63,112,153,47,63,210,210,47,63,36,12,48,63,102,69,48,63,152,126,48,63,186,183,48,63,204,240,48,63,205,41,49,63,191,98,49,63,160,155,49,63,113,212,49,63,49,13,50,63,225,69,50,63,128,126,50,63,15,183,50,63,141,239,50,63,251,39,51,63,87,96,51,63,163,152,51,63,222,208,51,63,8,9,52,63,34,65,52,63,42,121,52,63,33,177,52,63,7,233,52,63,219,32,53,63,159,88,53,63,81,144,53,63,242,199,53,63,129,255,53,63,255,54,54,63,108,110,54,63,198,165,54,63,16,221,54,63,71,20,55,63,109,75,55,63,129,130,55,63,131,185,55,63,116,240,55,63,82,39,56,63,30,94,56,63,217,148,56,63,129,203,56,63,23,2,57,63,155,56,57,63,13,111,57,63,108,165,57,63,185,219,57,63,244,17,58,63,28,72,58,63,50,126,58,63,53,180,58,63,38,234,58,63,4,32,59,63,207,85,59,63,135,139,59,63,45,193,59,63,192,246,59,63,64,44,60,63,173,97,60,63,7,151,60,63,78,204,60,63,130,1,61,63,163,54,61,63,177,107,61,63,171,160,61,63,146,213,61,63,102,10,62,63,39,63,62,63,212,115,62,63,110,168,62,63,244,220,62,63,103,17,63,63,198,69,63,63,17,122,63,63,73,174,63,63,109,226,63,63,126,22,64,63,122,74,64,63,99,126,64,63,56,178,64,63,248,229,64,63,165,25,65,63,62,77,65,63,195,128,65,63,52,180,65,63,144,231,65,63,216,26,66,63,13,78,66,63,44,129,66,63,56,180,66,63,47,231,66,63,18,26,67,63,224,76,67,63,154,127,67,63,64,178,67,63,208,228,67,63,77,23,68,63,180,73,68,63,7,124,68,63,69,174,68,63,111,224,68,63,131,18,69,63,131,68,69,63,110,118,69,63,68,168,69,63,5,218,69,63,177,11,70,63,72,61,70,63,202,110,70,63,55,160,70,63,143,209,70,63,210,2,71,63,255,51,71,63,23,101,71,63,26,150,71,63,8,199,71,63,224,247,71,63,163,40,72,63,81,89,72,63,233,137,72,63,107,186,72,63,216,234,72,63,48,27,73,63,114,75,73,63,158,123,73,63,181,171,73,63,181,219,73,63,161,11,74,63,118,59,74,63,54,107,74,63,224,154,74,63,116,202,74,63,242,249,74,63,90,41,75,63,173,88,75,63,233,135,75,63,15,183,75,63,32,230,75,63,26,21,76,63,254,67,76,63,204,114,76,63,132,161,76,63,38,208,76,63,177,254,76,63,38,45,77,63,133,91,77,63,206,137,77,63,0,184,77,63,28,230,77,63,34,20,78,63,17,66,78,63,234,111,78,63,172,157,78,63,88,203,78,63,238,248,78,63,108,38,79,63,213,83,79,63,38,129,79,63,97,174,79,63,134,219,79,63,147,8,80,63,138,53,80,63,107,98,80,63,52,143,80,63,231,187,80,63,131,232,80,63,8,21,81,63,119,65,81,63,206,109,81,63,15,154,81,63,57,198,81,63,76,242,81,63,71,30,82,63,44,74,82,63,250,117,82,63,177,161,82,63,81,205,82,63,218,248,82,63,76,36,83,63,166,79,83,63,234,122,83,63,22,166,83,63,44,209,83,63,42,252,83,63,17,39,84,63,224,81,84,63,153,124,84,63,58,167,84,63,196,209,84,63,54,252,84,63,146,38,85,63,214,80,85,63,2,123,85,63,24,165,85,63,22,207,85,63,252,248,85,63,204,34,86,63,131,76,86,63,36,118,86,63,172,159,86,63,30,201,86,63,120,242,86,63,186,27,87,63,229,68,87,63,248,109,87,63,244,150,87,63,216,191,87,63,165,232,87,63,90,17,88,63,248,57,88,63,126,98,88,63,236,138,88,63,67,179,88,63,130,219,88,63,169,3,89,63,185,43,89,63,177,83,89,63,145,123,89,63,90,163,89,63,11,203,89,63,164,242,89,63,37,26,90,63,143,65,90,63,225,104,90,63,27,144,90,63,62,183,90,63,72,222,90,63,59,5,91,63,22,44,91,63,217,82,91,63,133,121,91,63,24,160,91,63,148,198,91,63,248,236,91,63,68,19,92,63,120,57,92,63,149,95,92,63,153,133,92,63,134,171,92,63,91,209,92,63,24,247,92,63,189,28,93,63,74,66,93,63,191,103,93,63,28,141,93,63,98,178,93,63,143,215,93,63,165,252,93,63,162,33,94,63,136,70,94,63,86,107,94,63,11,144,94,63,169,180,94,63,47,217,94,63,157,253,94,63,243,33,95,63,49,70,95,63,88,106,95,63,102,142,95,63,92,178,95,63,59,214,95,63,1,250,95,63,175,29,96,63,70,65,96,63,196,100,96,63,43,136,96,63,122,171,96,63,176,206,96,63,207,241,96,63,214,20,97,63,197,55,97,63,155,90,97,63,90,125,97,63,1,160,97,63,144,194,97,63,8,229,97,63,103,7,98,63,174,41,98,63,221,75,98,63,245,109,98,63,244,143,98,63,220,177,98,63,171,211,98,63,99,245,98,63,3,23,99,63,139,56,99,63,251,89,99,63,83,123,99,63,147,156,99,63,188,189,99,63,204,222,99,63,197,255,99,63,166,32,100,63,110,65,100,63,32,98,100,63,185,130,100,63,58,163,100,63,164,195,100,63,245,227,100,63,47,4,101,63,82,36,101,63,92,68,101,63,78,100,101,63,41,132,101,63,236,163,101,63,151,195,101,63,43,227,101,63,167,2,102,63,11,34,102,63,87,65,102,63,139,96,102,63,168,127,102,63,174,158,102,63,155,189,102,63,113,220,102,63,47,251,102,63,214,25,103,63,101,56,103,63,220,86,103,63,59,117,103,63,132,147,103,63,180,177,103,63,205,207,103,63,206,237,103,63,184,11,104,63,138,41,104,63,69,71,104,63,233,100,104,63,116,130,104,63,233,159,104,63,69,189,104,63,139,218,104,63,185,247,104,63,207,20,105,63,207,49,105,63,182,78,105,63,135,107,105,63,64,136,105,63,225,164,105,63,108,193,105,63,223,221,105,63,59,250,105,63,127,22,106,63,172,50,106,63,195,78,106,63,193,106,106,63,169,134,106,63,121,162,106,63,51,190,106,63,213,217,106,63,96,245,106,63,212,16,107,63,48,44,107,63,118,71,107,63,165,98,107,63,188,125,107,63,189,152,107,63,167,179,107,63,121,206,107,63,53,233,107,63,218,3,108,63,104,30,108,63,223,56,108,63,63,83,108,63,136,109,108,63,187,135,108,63,214,161,108,63,219,187,108,63,201,213,108,63,161,239,108,63,97,9,109,63,11,35,109,63,159,60,109,63,27,86,109,63,129,111,109,63,209,136,109,63,9,162,109,63,44,187,109,63,56,212,109,63,45,237,109,63,12,6,110,63,212,30,110,63,134,55,110,63,33,80,110,63,166,104,110,63,21,129,110,63,110,153,110,63,176,177,110,63,220,201,110,63,241,225,110,63,241,249,110,63,218,17,111,63,173,41,111,63,106,65,111,63,16,89,111,63,161,112,111,63,28,136,111,63,128,159,111,63,207,182,111,63,7,206,111,63,42,229,111,63,54,252,111,63,45,19,112,63,14,42,112,63,217,64,112,63,142,87,112,63,46,110,112,63,184,132,112,63,43,155,112,63,138,177,112,63,210,199,112,63,5,222,112,63,35,244,112,63,42,10,113,63,29,32,113,63,249,53,113,63,193,75,113,63,114,97,113,63,15,119,113,63,150,140,113,63,7,162,113,63,99,183,113,63,170,204,113,63,220,225,113,63,249,246,113,63,0,12,114,63,242,32,114,63,207,53,114,63,151,74,114,63,73,95,114,63,231,115,114,63,112,136,114,63,227,156,114,63,66,177,114,63,140,197,114,63,193,217,114,63,225,237,114,63,236,1,115,63,227,21,115,63,197,41,115,63,146,61,115,63,74,81,115,63,238,100,115,63,125,120,115,63,248,139,115,63,94,159,115,63,175,178,115,63,236,197,115,63,21,217,115,63,41,236,115,63,41,255,115,63,21,18,116,63,236,36,116,63,175,55,116,63,94,74,116,63,248,92,116,63,127,111,116,63,241,129,116,63,80,148,116,63,154,166,116,63,208,184,116,63,242,202,116,63,1,221,116,63,251,238,116,63,226,0,117,63,181,18,117,63,116,36,117,63,31,54,117,63,183,71,117,63,59,89,117,63,171,106,117,63,8,124,117,63,81,141,117,63,135,158,117,63,169,175,117,63,184,192,117,63,179,209,117,63,155,226,117,63,112,243,117,63,50,4,118,63,224,20,118,63,123,37,118,63,3,54,118,63,120,70,118,63,217,86,118,63,40,103,118,63,100,119,118,63,140,135,118,63,162,151,118,63,165,167,118,63,149,183,118,63,114,199,118,63,61,215,118,63,245,230,118,63,154,246,118,63,44,6,119,63,172,21,119,63,26,37,119,63,117,52,119,63,189,67,119,63,243,82,119,63,22,98,119,63,40,113,119,63,39,128,119,63,19,143,119,63,238,157,119,63,182,172,119,63,108,187,119,63,16,202,119,63,162,216,119,63,34,231,119,63,144,245,119,63,236,3,120,63,55,18,120,63,111,32,120,63,150,46,120,63,170,60,120,63,174,74,120,63,159,88,120,63,127,102,120,63,77,116,120,63,10,130,120,63,181,143,120,63,79,157,120,63,215,170,120,63,78,184,120,63,180,197,120,63,8,211,120,63,76,224,120,63,126,237,120,63,158,250,120,63,174,7,121,63,173,20,121,63,155,33,121,63,119,46,121,63,67,59,121,63,254,71,121,63,168,84,121,63,66,97,121,63,202,109,121,63,66,122,121,63,169,134,121,63,0,147,121,63,70,159,121,63,124,171,121,63,161,183,121,63,181,195,121,63,186,207,121,63,173,219,121,63,145,231,121,63,100,243,121,63,40,255,121,63,219,10,122,63,126,22,122,63,16,34,122,63,147,45,122,63,6,57,122,63,105,68,122,63,188,79,122,63,255,90,122,63,51,102,122,63,86,113,122,63,106,124,122,63,111,135,122,63,99,146,122,63,72,157,122,63,30,168,122,63,228,178,122,63,155,189,122,63,66,200,122,63,218,210,122,63,99,221,122,63,221,231,122,63,71,242,122,63,162,252,122,63,238,6,123,63,43,17,123,63,89,27,123,63,120,37,123,63,137,47,123,63,138,57,123,63,124,67,123,63,96,77,123,63,53,87,123,63,252,96,123,63,179,106,123,63,92,116,123,63,247,125,123,63,131,135,123,63,1,145,123,63,112,154,123,63,209,163,123,63,36,173,123,63,104,182,123,63,158,191,123,63,198,200,123,63,224,209,123,63,236,218,123,63,234,227,123,63,218,236,123,63,188,245,123,63,144,254,123,63,86,7,124,63,14,16,124,63,185,24,124,63,86,33,124,63,230,41,124,63,104,50,124,63,220,58,124,63,67,67,124,63,156,75,124,63,232,83,124,63,39,92,124,63,88,100,124,63,124,108,124,63,147,116,124,63,157,124,124,63,153,132,124,63,137,140,124,63,107,148,124,63,65,156,124,63,9,164,124,63,197,171,124,63,116,179,124,63,22,187,124,63,172,194,124,63,52,202,124,63,176,209,124,63,32,217,124,63,131,224,124,63,217,231,124,63,35,239,124,63,97,246,124,63,146,253,124,63,183,4,125,63,208,11,125,63,221,18,125,63,221,25,125,63,209,32,125,63,185,39,125,63,150,46,125,63,102,53,125,63,42,60,125,63,227,66,125,63,143,73,125,63,48,80,125,63,197,86,125,63,78,93,125,63,204,99,125,63,62,106,125,63,165,112,125,63,0,119,125,63,80,125,125,63,148,131,125,63,205,137,125,63,251,143,125,63,29,150,125,63,52,156,125,63,64,162,125,63,65,168,125,63,55,174,125,63,34,180,125,63,2,186,125,63,215,191,125,63,161,197,125,63,96,203,125,63,21,209,125,63,190,214,125,63,93,220,125,63,242,225,125,63,124,231,125,63,251,236,125,63,112,242,125,63,218,247,125,63,58,253,125,63,143,2,126,63,219,7,126,63,28,13,126,63,82,18,126,63,127,23,126,63,161,28,126,63,186,33,126,63,200,38,126,63,204,43,126,63,199,48,126,63,183,53,126,63,158,58,126,63,123,63,126,63,78,68,126,63,23,73,126,63,215,77,126,63,141,82,126,63,58,87,126,63,221,91,126,63,118,96,126,63,6,101,126,63,141,105,126,63,10,110,126,63,126,114,126,63,233,118,126,63,75,123,126,63,164,127,126,63,243,131,126,63,57,136,126,63,119,140,126,63,171,144,126,63,214,148,126,63,249,152,126,63,18,157,126,63,35,161,126,63,44,165,126,63,43,169,126,63,34,173,126,63,16,177,126,63,246,180,126,63,211,184,126,63,167,188,126,63,115,192,126,63,55,196,126,63,243,199,126,63,166,203,126,63,81,207,126,63,243,210,126,63,142,214,126,63,32,218,126,63,171,221,126,63,45,225,126,63,167,228,126,63,26,232,126,63,132,235,126,63,231,238,126,63,66,242,126,63,149,245,126,63,224,248,126,63,36,252,126,63,96,255,126,63,148,2,127,63,193,5,127,63,230,8,127,63,4,12,127,63,27,15,127,63,42,18,127,63,50,21,127,63,50,24,127,63,43,27,127,63,29,30,127,63,8,33,127,63,236,35,127,63,201,38,127,63,158,41,127,63,109,44,127,63,53,47,127,63,246,49,127,63,175,52,127,63,99,55,127,63,15,58,127,63,181,60,127,63,83,63,127,63,236,65,127,63,125,68,127,63,8,71,127,63,141,73,127,63,11,76,127,63,131,78,127,63,244,80,127,63,95,83,127,63,195,85,127,63,33,88,127,63,121,90,127,63,203,92,127,63,23,95,127,63,92,97,127,63,155,99,127,63,213,101,127,63,8,104,127,63,54,106,127,63,93,108,127,63,127,110,127,63,155,112,127,63,177,114,127,63,193,116,127,63,203,118,127,63,208,120,127,63,207,122,127,63,201,124,127,63,189,126,127,63,171,128,127,63,148,130,127,63,120,132,127,63,86,134,127,63,47,136,127,63,2,138,127,63,209,139,127,63,153,141,127,63,93,143,127,63,28,145,127,63,213,146,127,63,137,148,127,63,57,150,127,63,227,151,127,63,136,153,127,63,40,155,127,63,196,156,127,63,90,158,127,63,236,159,127,63,121,161,127,63,1,163,127,63,132,164,127,63,3,166,127,63,125,167,127,63,242,168,127,63,99,170,127,63,207,171,127,63,55,173,127,63,154,174,127,63,249,175,127,63,84,177,127,63,170,178,127,63,251,179,127,63,73,181,127,63,146,182,127,63,215,183,127,63,24,185,127,63,85,186,127,63,141,187,127,63,193,188,127,63,242,189,127,63,30,191,127,63,71,192,127,63,107,193,127,63,140,194,127,63,168,195,127,63,193,196,127,63,214,197,127,63,231,198,127,63,245,199,127,63,255,200,127,63,5,202,127,63,7,203,127,63,6,204,127,63,1,205,127,63,249,205,127,63,237,206,127,63,222,207,127,63,203,208,127,63,181,209,127,63,156,210,127,63,127,211,127,63,95,212,127,63,59,213,127,63,20,214,127,63,234,214,127,63,189,215,127,63,141,216,127,63,90,217,127,63,35,218,127,63,233,218,127,63,173,219,127,63,109,220,127,63,43,221,127,63,229,221,127,63,156,222,127,63,81,223,127,63,3,224,127,63,178,224,127,63,94,225,127,63,7,226,127,63,174,226,127,63,82,227,127,63,243,227,127,63,146,228,127,63,46,229,127,63,199,229,127,63,94,230,127,63,242,230,127,63,132,231,127,63,19,232,127,63,160,232,127,63,42,233,127,63,178,233,127,63,56,234,127,63,187,234,127,63,60,235,127,63,187,235,127,63,55,236,127,63,177,236,127,63,41,237,127,63,159,237,127,63,18,238,127,63,132,238,127,63,243,238,127,63,96,239,127,63,204,239,127,63,53,240,127,63,156,240,127,63,1,241,127,63,101,241,127,63,198,241,127,63,37,242,127,63,131,242,127,63,222,242,127,63,56,243,127,63,144,243,127,63,231,243,127,63,59,244,127,63,142,244,127,63,223,244,127,63,46,245,127,63,124,245,127,63,200,245,127,63,19,246,127,63,91,246,127,63,163,246,127,63,233,246,127,63,45,247,127,63,111,247,127,63,177,247,127,63,240,247,127,63,47,248,127,63,108,248,127,63,167,248,127,63,225,248,127,63,26,249,127,63,82,249,127,63,136,249,127,63,188,249,127,63,240,249,127,63,34,250,127,63,83,250,127,63,131,250,127,63,178,250,127,63,224,250,127,63,12,251,127,63,55,251,127,63,97,251,127,63,138,251,127,63,178,251,127,63,217,251,127,63,255,251,127,63,36,252,127,63,72,252,127,63,107,252,127,63,141,252,127,63,173,252,127,63,205,252,127,63,237,252,127,63,11,253,127,63,40,253,127,63,69,253,127,63,96,253,127,63,123,253,127,63,149,253,127,63,174,253,127,63,199,253,127,63,222,253,127,63,245,253,127,63,12,254,127,63,33,254,127,63,54,254,127,63,74,254,127,63,93,254,127,63,112,254,127,63,130,254,127,63,148,254,127,63,165,254,127,63,181,254,127,63,197,254,127,63,212,254,127,63,227,254,127,63,241,254,127,63,254,254,127,63,11,255,127,63,24,255,127,63,36,255,127,63,47,255,127,63,59,255,127,63,69,255,127,63,79,255,127,63,89,255,127,63,99,255,127,63,108,255,127,63,116,255,127,63,124,255,127,63,132,255,127,63,140,255,127,63,147,255,127,63,154,255,127,63,160,255,127,63,166,255,127,63,172,255,127,63,178,255,127,63,183,255,127,63,188,255,127,63,193,255,127,63,197,255,127,63,202,255,127,63,206,255,127,63,209,255,127,63,213,255,127,63,216,255,127,63,220,255,127,63,223,255,127,63,225,255,127,63,228,255,127,63,230,255,127,63,233,255,127,63,235,255,127,63,237,255,127,63,239,255,127,63,240,255,127,63,242,255,127,63,243,255,127,63,245,255,127,63,246,255,127,63,247,255,127,63,248,255,127,63,249,255,127,63,250,255,127,63,251,255,127,63,251,255,127,63,252,255,127,63,252,255,127,63,253,255,127,63,253,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,198,63,120,51,98,136,11,53,151,200,193,53,80,233,61,54,183,247,156,54,46,124,234,54,153,192,35,55,244,2,90,55,56,3,140,55,227,228,174,55,177,166,213,55,108,36,0,56,146,101,23,56,201,150,48,56,18,184,75,56,81,201,104,56,94,229,131,56,29,94,148,56,229,206,165,56,167,55,184,56,128,152,203,56,85,241,223,56,36,66,245,56,126,197,5,57,238,101,17,57,99,130,29,57,207,26,42,57,63,47,55,57,179,191,68,57,30,204,82,57,141,84,97,57,243,88,112,57,94,217,127,57,227,234,135,57,18,39,144,57,64,161,152,57,105,89,161,57,146,79,170,57,181,131,179,57,215,245,188,57,245,165,198,57,14,148,208,57,34,192,218,57,46,42,229,57,57,210,239,57,60,184,250,57,27,238,2,58,22,159,8,58,13,111,14,58,0,94,20,58,239,107,26,58,218,152,32,58,192,228,38,58,161,79,45,58,124,217,51,58,83,130,58,58,37,74,65,58,240,48,72,58,182,54,79,58,116,91,86,58,45,159,93,58,222,1,101,58,136,131,108,58,42,36,116,58,196,227,123,58,44,225,129,58,241,223,133,58,49,238,137,58,238,11,142,58,37,57,146,58,215,117,150,58,5,194,154,58,174,29,159,58,209,136,163,58,110,3,168,58,134,141,172,58,24,39,177,58,36,208,181,58,169,136,186,58,169,80,191,58,33,40,196,58,19,15,201,58,126,5,206,58,98,11,211,58,191,32,216,58,148,69,221,58,225,121,226,58,166,189,231,58,227,16,237,58,152,115,242,58,196,229,247,58,103,103,253,58,65,124,1,59,137,76,4,59,141,36,7,59,76,4,10,59,198,235,12,59,251,218,15,59,235,209,18,59,149,208,21,59,251,214,24,59,26,229,27,59,244,250,30,59,136,24,34,59,215,61,37,59,223,106,40,59,161,159,43,59,29,220,46,59,83,32,50,59,66,108,53,59,234,191,56,59,76,27,60,59,103,126,63,59,59,233,66,59,199,91,70,59,12,214,73,59,10,88,77,59,193,225,80,59,48,115,84,59,86,12,88,59,53,173,91,59,204,85,95,59,26,6,99,59,32,190,102,59,222,125,106,59,82,69,110,59,127,20,114,59,97,235,117,59,251,201,121,59,76,176,125,59,41,207,128,59,8,202,130,59,194,200,132,59,87,203,134,59,198,209,136,59,17,220,138,59,55,234,140,59,55,252,142,59,18,18,145,59,199,43,147,59,87,73,149,59,194,106,151,59,6,144,153,59,37,185,155,59,30,230,157,59,241,22,160,59,158,75,162,59,37,132,164,59,134,192,166,59,192,0,169,59,212,68,171,59,193,140,173,59,137,216,175,59,41,40,178,59,163,123,180,59,245,210,182,59,33,46,185,59,38,141,187,59,4,240,189,59,186,86,192,59,73,193,194,59,177,47,197,59,242,161,199,59,10,24,202,59,251,145,204,59,196,15,207,59,102,145,209,59,223,22,212,59,49,160,214,59,90,45,217,59,91,190,219,59,51,83,222,59,227,235,224,59,107,136,227,59,201,40,230,59,255,204,232,59,12,117,235,59,240,32,238,59,171,208,240,59,61,132,243,59,165,59,246,59,228,246,248,59,250,181,251,59,229,120,254,59,212,159,0,60,32,5,2,60,87,108,3,60,121,213,4,60,134,64,6,60,126,173,7,60,96,28,9,60,45,141,10,60,229,255,11,60,136,116,13,60,21,235,14,60,141,99,16,60,239,221,17,60,59,90,19,60,114,216,20,60,147,88,22,60,158,218,23,60,147,94,25,60,115,228,26,60,60,108,28,60,240,245,29,60,141,129,31,60,20,15,33,60,133,158,34,60,224,47,36,60,36,195,37,60,82,88,39,60,105,239,40,60,106,136,42,60,84,35,44,60,40,192,45,60,229,94,47,60,139,255,48,60,26,162,50,60,146,70,52,60,243,236,53,60,61,149,55,60,112,63,57,60,140,235,58,60,145,153,60,60,126,73,62,60,84,251,63,60,18,175,65,60,185,100,67,60,72,28,69,60,192,213,70,60,31,145,72,60,103,78,74,60,151,13,76,60,175,206,77,60,176,145,79,60,152,86,81,60,103,29,83,60,31,230,84,60,190,176,86,60,69,125,88,60,179,75,90,60,9,28,92,60,71,238,93,60,107,194,95,60,119,152,97,60,106,112,99,60,68,74,101,60,5,38,103,60,173,3,105,60,60,227,106,60,178,196,108,60,14,168,110,60,81,141,112,60,123,116,114,60,139,93,116,60,130,72,118,60,95,53,120,60,34,36,122,60,203,20,124,60,90,7,126,60,208,251,127,60,22,249,128,60,54,245,129,60,74,242,130,60,80,240,131,60,73,239,132,60,53,239,133,60,19,240,134,60,229,241,135,60,169,244,136,60,95,248,137,60,8,253,138,60,164,2,140,60,50,9,141,60,178,16,142,60,37,25,143,60,139,34,144,60,226,44,145,60,44,56,146,60,104,68,147,60,150,81,148,60,182,95,149,60,201,110,150,60,205,126,151,60,196,143,152,60,172,161,153,60,135,180,154,60,83,200,155,60,17,221,156,60,193,242,157,60,98,9,159,60,245,32,160,60,122,57,161,60,241,82,162,60,89,109,163,60,178,136,164,60,253,164,165,60,57,194,166,60,103,224,167,60,134,255,168,60,151,31,170,60,152,64,171,60,139,98,172,60,111,133,173,60,68,169,174,60,10,206,175,60,193,243,176,60,105,26,178,60,2,66,179,60,139,106,180,60,6,148,181,60,113,190,182,60,205,233,183,60,26,22,185,60,87,67,186,60,133,113,187,60,163,160,188,60,177,208,189,60,177,1,191,60,160,51,192,60,128,102,193,60,80,154,194,60,16,207,195,60,193,4,197,60,97,59,198,60,242,114,199,60,114,171,200,60,227,228,201,60,67,31,203,60,147,90,204,60,211,150,205,60,3,212,206,60,34,18,208,60,49,81,209,60,48,145,210,60,30,210,211,60,252,19,213,60,201,86,214,60,133,154,215,60,49,223,216,60,204,36,218,60,86,107,219,60,208,178,220,60,56,251,221,60,144,68,223,60,214,142,224,60,12,218,225,60,48,38,227,60,67,115,228,60,69,193,229,60,54,16,231,60,21,96,232,60,227,176,233,60,160,2,235,60,75,85,236,60,228,168,237,60,108,253,238,60,226,82,240,60,70,169,241,60,153,0,243,60,218,88,244,60,8,178,245,60,37,12,247,60,48,103,248,60,41,195,249,60,15,32,251,60,228,125,252,60,166,220,253,60,85,60,255,60,121,78,0,61,63,255,0,61,123,176,1,61,46,98,2,61,88,20,3,61,248,198,3,61,15,122,4,61,156,45,5,61,161,225,5,61,27,150,6,61,12,75,7,61,116,0,8,61,82,182,8,61,167,108,9,61,113,35,10,61,179,218,10,61,106,146,11,61,152,74,12,61,60,3,13,61,87,188,13,61,231,117,14,61,238,47,15,61,107,234,15,61,94,165,16,61,199,96,17,61,166,28,18,61,251,216,18,61,198,149,19,61,7,83,20,61,190,16,21,61,234,206,21,61,141,141,22,61,165,76,23,61,52,12,24,61,56,204,24,61,177,140,25,61,161,77,26,61,6,15,27,61,224,208,27,61,48,147,28,61,246,85,29,61,49,25,30,61,226,220,30,61,8,161,31,61,164,101,32,61,181,42,33,61,59,240,33,61,55,182,34,61,168,124,35,61,142,67,36,61,233,10,37,61,186,210,37,61,255,154,38,61,186,99,39,61,234,44,40,61,143,246,40,61,168,192,41,61,55,139,42,61,59,86,43,61,180,33,44,61,161,237,44,61,4,186,45,61,219,134,46,61,38,84,47,61,231,33,48,61,28,240,48,61,198,190,49,61,229,141,50,61,120,93,51,61,127,45,52,61,251,253,52,61,236,206,53,61,81,160,54,61,42,114,55,61,120,68,56,61,58,23,57,61,112,234,57,61,27,190,58,61,58,146,59,61,204,102,60,61,211,59,61,61,79,17,62,61,62,231,62,61,161,189,63,61,120,148,64,61,195,107,65,61,130,67,66,61,181,27,67,61,92,244,67,61,118,205,68,61,4,167,69,61,6,129,70,61,124,91,71,61,101,54,72,61,194,17,73,61,146,237,73,61,214,201,74,61,141,166,75,61,184,131,76,61,86,97,77,61,104,63,78,61,236,29,79,61,229,252,79,61,80,220,80,61,46,188,81,61,128,156,82,61,69,125,83,61,125,94,84,61,40,64,85,61,69,34,86,61,214,4,87,61,218,231,87,61,81,203,88,61,58,175,89,61,150,147,90,61,101,120,91,61,167,93,92,61,91,67,93,61,130,41,94,61,28,16,95,61,40,247,95,61,167,222,96,61,152,198,97,61,251,174,98,61,209,151,99,61,25,129,100,61,212,106,101,61,0,85,102,61,159,63,103,61,176,42,104,61,51,22,105,61,41,2,106,61,144,238,106,61,105,219,107,61,180,200,108,61,113,182,109,61,160,164,110,61,65,147,111,61,84,130,112,61,216,113,113,61,206,97,114,61,54,82,115,61,15,67,116,61,89,52,117,61,22,38,118,61,67,24,119,61,226,10,120,61,243,253,120,61,117,241,121,61,104,229,122,61,204,217,123,61,162,206,124,61,232,195,125,61,160,185,126,61,201,175,127,61,49,83,128,61,183,206,128,61,117,74,129,61,107,198,129,61,154,66,130,61,1,191,130,61,160,59,131,61,120,184,131,61,136,53,132,61,209,178,132,61,81,48,133,61,10,174,133,61,251,43,134,61,37,170,134,61,134,40,135,61,32,167,135,61,242,37,136,61,252,164,136,61,62,36,137,61,184,163,137,61,106,35,138,61,84,163,138,61,118,35,139,61,209,163,139,61,99,36,140,61,45,165,140,61,46,38,141,61,104,167,141,61,218,40,142,61,131,170,142,61,100,44,143,61,125,174,143,61,206,48,144,61,86,179,144,61,23,54,145,61,14,185,145,61,62,60,146,61,165,191,146,61,67,67,147,61,26,199,147,61,39,75,148,61,109,207,148,61,234,83,149,61,158,216,149,61,138,93,150,61,173,226,150,61,7,104,151,61,153,237,151,61,98,115,152,61,99,249,152,61,155,127,153,61,10,6,154,61,176,140,154,61,142,19,155,61,163,154,155,61,239,33,156,61,114,169,156,61,44,49,157,61,29,185,157,61,69,65,158,61,165,201,158,61,59,82,159,61,8,219,159,61,13,100,160,61,72,237,160,61,186,118,161,61,99,0,162,61,67,138,162,61,90,20,163,61,167,158,163,61,43,41,164,61,230,179,164,61,216,62,165,61,0,202,165,61,95,85,166,61,245,224,166,61,193,108,167,61,196,248,167,61,254,132,168,61,110,17,169,61,20,158,169,61,241,42,170,61,4,184,170,61,78,69,171,61,206,210,171,61,133,96,172,61,113,238,172,61,149,124,173,61,238,10,174,61,126,153,174,61,67,40,175,61,63,183,175,61,114,70,176,61,218,213,176,61,120,101,177,61,77,245,177,61,88,133,178,61,152,21,179,61,15,166,179,61,187,54,180,61,158,199,180,61,182,88,181,61,4,234,181,61,137,123,182,61,67,13,183,61,50,159,183,61,88,49,184,61,179,195,184,61,68,86,185,61,11,233,185,61,7,124,186,61,57,15,187,61,160,162,187,61,61,54,188,61,16,202,188,61,24,94,189,61,85,242,189,61,200,134,190,61,112,27,191,61,78,176,191,61,97,69,192,61,170,218,192,61,39,112,193,61,218,5,194,61,194,155,194,61,224,49,195,61,50,200,195,61,186,94,196,61,119,245,196,61,104,140,197,61,143,35,198,61,235,186,198,61,124,82,199,61,66,234,199,61,61,130,200,61,108,26,201,61,209,178,201,61,106,75,202,61,57,228,202,61,59,125,203,61,115,22,204,61,224,175,204,61,129,73,205,61,86,227,205,61,97,125,206,61,159,23,207,61,19,178,207,61,187,76,208,61,151,231,208,61,168,130,209,61,237,29,210,61,103,185,210,61,21,85,211,61,248,240,211,61,14,141,212,61,89,41,213,61,216,197,213,61,140,98,214,61,115,255,214,61,143,156,215,61,223,57,216,61,99,215,216,61,27,117,217,61,7,19,218,61,38,177,218,61,122,79,219,61,2,238,219,61,189,140,220,61,173,43,221,61,208,202,221,61,39,106,222,61,178,9,223,61,112,169,223,61,98,73,224,61,136,233,224,61,226,137,225,61,111,42,226,61,47,203,226,61,35,108,227,61,74,13,228,61,165,174,228,61,52,80,229,61,245,241,229,61,234,147,230,61,19,54,231,61,110,216,231,61,253,122,232,61,191,29,233,61,180,192,233,61,221,99,234,61,56,7,235,61,199,170,235,61,136,78,236,61,125,242,236,61,164,150,237,61,255,58,238,61,140,223,238,61,76,132,239,61,63,41,240,61,101,206,240,61,189,115,241,61,73,25,242,61,7,191,242,61,247,100,243,61,26,11,244,61,112,177,244,61,248,87,245,61,179,254,245,61,160,165,246,61,192,76,247,61,18,244,247,61,151,155,248,61,77,67,249,61,55,235,249,61,82,147,250,61,159,59,251,61,31,228,251,61,209,140,252,61,181,53,253,61,203,222,253,61,19,136,254,61,141,49,255,61,57,219,255,61,140,66,0,62,148,151,0,62,181,236,0,62,238,65,1,62,65,151,1,62,173,236,1,62,49,66,2,62,206,151,2,62,132,237,2,62,83,67,3,62,59,153,3,62,59,239,3,62,84,69,4,62,134,155,4,62,209,241,4,62,52,72,5,62,176,158,5,62,68,245,5,62,242,75,6,62,183,162,6,62,150,249,6,62,141,80,7,62,156,167,7,62,196,254,7,62,5,86,8,62,94,173,8,62,207,4,9,62,89,92,9,62,252,179,9,62,183,11,10,62,138,99,10,62,118,187,10,62,122,19,11,62,150,107,11,62,203,195,11,62,24,28,12,62,125,116,12,62,250,204,12,62,144,37,13,62,62,126,13,62,4,215,13,62,227,47,14,62,217,136,14,62,232,225,14,62,15,59,15,62,78,148,15,62,165,237,15,62,20,71,16,62,155,160,16,62,58,250,16,62,241,83,17,62,193,173,17,62,168,7,18,62,167,97,18,62,190,187,18,62,237,21,19,62,51,112,19,62,146,202,19,62,9,37,20,62,151,127,20,62,61,218,20,62,251,52,21,62,209,143,21,62,190,234,21,62,195,69,22,62,224,160,22,62,21,252,22,62,97,87,23,62,197,178,23,62,64,14,24,62,211,105,24,62,126,197,24,62,64,33,25,62,26,125,25,62,11,217,25,62,20,53,26,62,52,145,26,62,108,237,26,62,187,73,27,62,34,166,27,62,160,2,28,62,53,95,28,62,226,187,28,62,166,24,29,62,129,117,29,62,116,210,29,62,126,47,30,62,159,140,30,62,215,233,30,62,39,71,31,62,141,164,31,62,11,2,32,62,160,95,32,62,76,189,32,62,16,27,33,62,234,120,33,62,219,214,33,62,228,52,34,62,3,147,34,62,58,241,34,62,135,79,35,62,235,173,35,62,103,12,36,62,249,106,36,62,162,201,36,62,98,40,37,62,56,135,37,62,38,230,37,62,42,69,38,62,69,164,38,62,119,3,39,62,192,98,39,62,31,194,39,62,149,33,40,62,33,129,40,62,197,224,40,62,126,64,41,62,79,160,41,62,54,0,42,62,51,96,42,62,72,192,42,62,114,32,43,62,179,128,43,62,11,225,43,62,121,65,44,62,253,161,44,62,152,2,45,62,73,99,45,62,16,196,45,62,238,36,46,62,226,133,46,62,237,230,46,62,13,72,47,62,68,169,47,62,145,10,48,62,245,107,48,62,110,205,48,62,254,46,49,62,163,144,49,62,95,242,49,62,49,84,50,62,25,182,50,62,23,24,51,62,43,122,51,62,85,220,51,62,148,62,52,62,234,160,52,62,86,3,53,62,216,101,53,62,111,200,53,62,28,43,54,62,223,141,54,62,184,240,54,62,167,83,55,62,171,182,55,62,197,25,56,62,245,124,56,62,59,224,56,62,150,67,57,62,7,167,57,62,141,10,58,62,41,110,58,62,219,209,58,62,162,53,59,62,126,153,59,62,112,253,59,62,120,97,60,62,149,197,60,62,199,41,61,62,15,142,61,62,108,242,61,62,222,86,62,62,102,187,62,62,3,32,63,62,181,132,63,62,125,233,63,62,90,78,64,62,75,179,64,62,83,24,65,62,111,125,65,62,160,226,65,62,231,71,66,62,66,173,66,62,179,18,67,62,57,120,67,62,211,221,67,62,131,67,68,62,71,169,68,62,33,15,69,62,15,117,69,62,18,219,69,62,42,65,70,62,87,167,70,62,153,13,71,62,240,115,71,62,91,218,71,62,219,64,72,62,111,167,72,62,25,14,73,62,215,116,73,62,169,219,73,62,144,66,74,62,140,169,74,62,157,16,75,62,193,119,75,62,251,222,75,62,73,70,76,62,171,173,76,62,34,21,77,62,173,124,77,62,76,228,77,62,0,76,78,62,200,179,78,62,164,27,79,62,149,131,79,62,154,235,79,62,179,83,80,62,225,187,80,62,34,36,81,62,120,140,81,62,225,244,81,62,95,93,82,62,241,197,82,62,151,46,83,62,81,151,83,62,31,0,84,62,1,105,84,62,247,209,84,62,0,59,85,62,30,164,85,62,79,13,86,62,149,118,86,62,238,223,86,62,91,73,87,62,219,178,87,62,112,28,88,62,24,134,88,62,211,239,88,62,163,89,89,62,134,195,89,62,124,45,90,62,134,151,90,62,164,1,91,62,213,107,91,62,26,214,91,62,114,64,92,62,221,170,92,62,92,21,93,62,239,127,93,62,148,234,93,62,77,85,94,62,26,192,94,62,249,42,95,62,236,149,95,62,242,0,96,62,11,108,96,62,55,215,96,62,119,66,97,62,202,173,97,62,47,25,98,62,168,132,98,62,52,240,98,62,210,91,99,62,132,199,99,62,73,51,100,62,32,159,100,62,11,11,101,62,8,119,101,62,24,227,101,62,59,79,102,62,113,187,102,62,186,39,103,62,21,148,103,62,131,0,104,62,3,109,104,62,151,217,104,62,60,70,105,62,245,178,105,62,192,31,106,62,157,140,106,62,141,249,106,62,144,102,107,62,165,211,107,62,204,64,108,62,6,174,108,62,82,27,109,62,176,136,109,62,33,246,109,62,164,99,110,62,57,209,110,62,225,62,111,62,154,172,111,62,102,26,112,62,68,136,112,62,52,246,112,62,55,100,113,62,75,210,113,62,113,64,114,62,169,174,114,62,243,28,115,62,80,139,115,62,190,249,115,62,61,104,116,62,207,214,116,62,115,69,117,62,40,180,117,62,239,34,118,62,200,145,118,62,179,0,119,62,175,111,119,62,189,222,119,62,221,77,120,62,14,189,120,62,80,44,121,62,165,155,121,62,10,11,122,62,130,122,122,62,10,234,122,62,164,89,123,62,80,201,123,62,13,57,124,62,219,168,124,62,186,24,125,62,171,136,125,62,173,248,125,62,192,104,126,62,228,216,126,62,26,73,127,62,96,185,127,62,220,20,128,62,16,77,128,62,77,133,128,62,147,189,128,62,225,245,128,62,55,46,129,62,150,102,129,62,253,158,129,62,109,215,129,62,229,15,130,62,102,72,130,62,238,128,130,62,128,185,130,62,25,242,130,62,187,42,131,62,102,99,131,62,24,156,131,62,211,212,131,62,150,13,132,62,98,70,132,62,53,127,132,62,17,184,132,62,245,240,132,62,226,41,133,62,214,98,133,62,211,155,133,62,216,212,133,62,229,13,134,62,250,70,134,62,23,128,134,62,61,185,134,62,106,242,134,62,160,43,135,62,221,100,135,62,35,158,135,62,112,215,135,62,198,16,136,62,35,74,136,62,137,131,136,62,247,188,136,62,108,246,136,62,233,47,137,62,111,105,137,62,252,162,137,62,145,220,137,62,46,22,138,62,211,79,138,62,127,137,138,62,52,195,138,62,240,252,138,62,180,54,139,62,128,112,139,62,84,170,139,62,47,228,139,62,18,30,140,62,253,87,140,62,239,145,140,62,233,203,140,62,235,5,141,62,245,63,141,62,6,122,141,62,31,180,141,62,63,238,141,62,103,40,142,62],"i8",L3,x.GLOBAL_BASE+530936),d3([150,98,142,62,205,156,142,62,12,215,142,62,82,17,143,62,159,75,143,62,245,133,143,62,81,192,143,62,181,250,143,62,33,53,144,62,147,111,144,62,14,170,144,62,143,228,144,62,25,31,145,62,169,89,145,62,65,148,145,62,224,206,145,62,134,9,146,62,52,68,146,62,233,126,146,62,165,185,146,62,105,244,146,62,52,47,147,62,6,106,147,62,223,164,147,62,191,223,147,62,167,26,148,62,150,85,148,62,139,144,148,62,136,203,148,62,140,6,149,62,152,65,149,62,170,124,149,62,195,183,149,62,227,242,149,62,11,46,150,62,57,105,150,62,111,164,150,62,171,223,150,62,238,26,151,62,56,86,151,62,138,145,151,62,226,204,151,62,65,8,152,62,167,67,152,62,19,127,152,62,135,186,152,62,1,246,152,62,130,49,153,62,10,109,153,62,153,168,153,62,47,228,153,62,203,31,154,62,110,91,154,62,24,151,154,62,200,210,154,62,127,14,155,62,61,74,155,62,2,134,155,62,205,193,155,62,158,253,155,62,119,57,156,62,85,117,156,62,59,177,156,62,39,237,156,62,25,41,157,62,18,101,157,62,18,161,157,62,24,221,157,62,36,25,158,62,55,85,158,62,80,145,158,62,112,205,158,62,150,9,159,62,195,69,159,62,246,129,159,62,47,190,159,62,111,250,159,62,180,54,160,62,1,115,160,62,83,175,160,62,172,235,160,62,11,40,161,62,112,100,161,62,219,160,161,62,77,221,161,62,196,25,162,62,66,86,162,62,198,146,162,62,81,207,162,62,225,11,163,62,119,72,163,62,20,133,163,62,182,193,163,62,95,254,163,62,13,59,164,62,194,119,164,62,125,180,164,62,61,241,164,62,4,46,165,62,208,106,165,62,162,167,165,62,123,228,165,62,89,33,166,62,61,94,166,62,39,155,166,62,23,216,166,62,12,21,167,62,7,82,167,62,8,143,167,62,15,204,167,62,28,9,168,62,46,70,168,62,70,131,168,62,100,192,168,62,136,253,168,62,177,58,169,62,223,119,169,62,20,181,169,62,78,242,169,62,141,47,170,62,211,108,170,62,29,170,170,62,109,231,170,62,195,36,171,62,31,98,171,62,127,159,171,62,230,220,171,62,81,26,172,62,194,87,172,62,57,149,172,62,181,210,172,62,54,16,173,62,189,77,173,62,73,139,173,62,218,200,173,62,113,6,174,62,13,68,174,62,174,129,174,62,85,191,174,62,0,253,174,62,177,58,175,62,103,120,175,62,35,182,175,62,227,243,175,62,169,49,176,62,116,111,176,62,68,173,176,62,25,235,176,62,243,40,177,62,210,102,177,62,182,164,177,62,160,226,177,62,142,32,178,62,129,94,178,62,121,156,178,62,119,218,178,62,121,24,179,62,128,86,179,62,140,148,179,62,157,210,179,62,178,16,180,62,205,78,180,62,236,140,180,62,16,203,180,62,57,9,181,62,103,71,181,62,154,133,181,62,209,195,181,62,13,2,182,62,78,64,182,62,147,126,182,62,221,188,182,62,44,251,182,62,127,57,183,62,215,119,183,62,52,182,183,62,149,244,183,62,251,50,184,62,101,113,184,62,212,175,184,62,71,238,184,62,191,44,185,62,59,107,185,62,188,169,185,62,65,232,185,62,202,38,186,62,88,101,186,62,235,163,186,62,129,226,186,62,28,33,187,62,188,95,187,62,95,158,187,62,7,221,187,62,180,27,188,62,100,90,188,62,25,153,188,62,210,215,188,62,143,22,189,62,80,85,189,62,22,148,189,62,223,210,189,62,173,17,190,62,127,80,190,62,85,143,190,62,47,206,190,62,13,13,191,62,239,75,191,62,213,138,191,62,191,201,191,62,173,8,192,62,159,71,192,62,149,134,192,62,143,197,192,62,141,4,193,62,143,67,193,62,148,130,193,62,158,193,193,62,171,0,194,62,188,63,194,62,209,126,194,62,234,189,194,62,6,253,194,62,38,60,195,62,74,123,195,62,113,186,195,62,157,249,195,62,204,56,196,62,254,119,196,62,52,183,196,62,110,246,196,62,171,53,197,62,236,116,197,62,49,180,197,62,121,243,197,62,196,50,198,62,19,114,198,62,102,177,198,62,188,240,198,62,21,48,199,62,114,111,199,62,210,174,199,62,54,238,199,62,157,45,200,62,7,109,200,62,117,172,200,62,230,235,200,62,90,43,201,62,209,106,201,62,76,170,201,62,202,233,201,62,75,41,202,62,208,104,202,62,88,168,202,62,226,231,202,62,112,39,203,62,1,103,203,62,149,166,203,62,45,230,203,62,199,37,204,62,100,101,204,62,4,165,204,62,168,228,204,62,78,36,205,62,248,99,205,62,164,163,205,62,83,227,205,62,5,35,206,62,186,98,206,62,114,162,206,62,45,226,206,62,234,33,207,62,171,97,207,62,110,161,207,62,52,225,207,62,253,32,208,62,200,96,208,62,150,160,208,62,103,224,208,62,59,32,209,62,17,96,209,62,234,159,209,62,198,223,209,62,164,31,210,62,133,95,210,62,104,159,210,62,78,223,210,62,55,31,211,62,33,95,211,62,15,159,211,62,255,222,211,62,241,30,212,62,230,94,212,62,221,158,212,62,215,222,212,62,211,30,213,62,209,94,213,62,210,158,213,62,213,222,213,62,219,30,214,62,226,94,214,62,236,158,214,62,248,222,214,62,7,31,215,62,24,95,215,62,42,159,215,62,63,223,215,62,87,31,216,62,112,95,216,62,139,159,216,62,169,223,216,62,200,31,217,62,234,95,217,62,14,160,217,62,51,224,217,62,91,32,218,62,133,96,218,62,176,160,218,62,222,224,218,62,13,33,219,62,63,97,219,62,114,161,219,62,167,225,219,62,222,33,220,62,23,98,220,62,82,162,220,62,142,226,220,62,204,34,221,62,12,99,221,62,78,163,221,62,146,227,221,62,215,35,222,62,29,100,222,62,102,164,222,62,176,228,222,62,252,36,223,62,73,101,223,62,152,165,223,62,232,229,223,62,58,38,224,62,142,102,224,62,227,166,224,62,57,231,224,62,145,39,225,62,234,103,225,62,69,168,225,62,161,232,225,62,255,40,226,62,94,105,226,62,190,169,226,62,32,234,226,62,131,42,227,62,231,106,227,62,76,171,227,62,179,235,227,62,27,44,228,62,132,108,228,62,238,172,228,62,90,237,228,62,199,45,229,62,52,110,229,62,163,174,229,62,19,239,229,62,133,47,230,62,247,111,230,62,106,176,230,62,222,240,230,62,83,49,231,62,202,113,231,62,65,178,231,62,185,242,231,62,50,51,232,62,172,115,232,62,38,180,232,62,162,244,232,62,31,53,233,62,156,117,233,62,26,182,233,62,153,246,233,62,25,55,234,62,153,119,234,62,26,184,234,62,156,248,234,62,31,57,235,62,162,121,235,62,38,186,235,62,170,250,235,62,47,59,236,62,181,123,236,62,59,188,236,62,194,252,236,62,73,61,237,62,209,125,237,62,89,190,237,62,226,254,237,62,107,63,238,62,245,127,238,62,127,192,238,62,10,1,239,62,149,65,239,62,32,130,239,62,171,194,239,62,55,3,240,62,196,67,240,62,80,132,240,62,221,196,240,62,106,5,241,62,247,69,241,62,132,134,241,62,18,199,241,62,160,7,242,62,45,72,242,62,187,136,242,62,74,201,242,62,216,9,243,62,102,74,243,62,244,138,243,62,131,203,243,62,17,12,244,62,159,76,244,62,46,141,244,62,188,205,244,62,74,14,245,62,216,78,245,62,102,143,245,62,244,207,245,62,129,16,246,62,15,81,246,62,156,145,246,62,41,210,246,62,182,18,247,62,67,83,247,62,207,147,247,62,91,212,247,62,231,20,248,62,115,85,248,62,254,149,248,62,136,214,248,62,19,23,249,62,157,87,249,62,38,152,249,62,175,216,249,62,56,25,250,62,192,89,250,62,72,154,250,62,207,218,250,62,86,27,251,62,220,91,251,62,97,156,251,62,230,220,251,62,106,29,252,62,238,93,252,62,113,158,252,62,243,222,252,62,117,31,253,62,245,95,253,62,118,160,253,62,245,224,253,62,116,33,254,62,241,97,254,62,110,162,254,62,235,226,254,62,102,35,255,62,224,99,255,62,90,164,255,62,211,228,255,62,165,18,0,63,225,50,0,63,27,83,0,63,86,115,0,63,144,147,0,63,201,179,0,63,2,212,0,63,58,244,0,63,114,20,1,63,169,52,1,63,224,84,1,63,22,117,1,63,76,149,1,63,129,181,1,63,181,213,1,63,233,245,1,63,28,22,2,63,78,54,2,63,128,86,2,63,178,118,2,63,226,150,2,63,18,183,2,63,65,215,2,63,112,247,2,63,157,23,3,63,203,55,3,63,247,87,3,63,35,120,3,63,78,152,3,63,120,184,3,63,161,216,3,63,202,248,3,63,242,24,4,63,25,57,4,63,63,89,4,63,101,121,4,63,137,153,4,63,173,185,4,63,208,217,4,63,243,249,4,63,20,26,5,63,52,58,5,63,84,90,5,63,115,122,5,63,145,154,5,63,173,186,5,63,202,218,5,63,229,250,5,63,255,26,6,63,24,59,6,63,48,91,6,63,72,123,6,63,94,155,6,63,116,187,6,63,136,219,6,63,155,251,6,63,174,27,7,63,191,59,7,63,208,91,7,63,223,123,7,63,237,155,7,63,250,187,7,63,7,220,7,63,18,252,7,63,28,28,8,63,37,60,8,63,44,92,8,63,51,124,8,63,57,156,8,63,61,188,8,63,64,220,8,63,67,252,8,63,68,28,9,63,68,60,9,63,66,92,9,63,64,124,9,63,60,156,9,63,55,188,9,63,49,220,9,63,41,252,9,63,33,28,10,63,23,60,10,63,12,92,10,63,255,123,10,63,242,155,10,63,227,187,10,63,211,219,10,63,193,251,10,63,174,27,11,63,154,59,11,63,133,91,11,63,110,123,11,63,86,155,11,63,60,187,11,63,33,219,11,63,5,251,11,63,231,26,12,63,200,58,12,63,168,90,12,63,134,122,12,63,98,154,12,63,62,186,12,63,23,218,12,63,240,249,12,63,199,25,13,63,156,57,13,63,112,89,13,63,66,121,13,63,19,153,13,63,227,184,13,63,176,216,13,63,125,248,13,63,72,24,14,63,17,56,14,63,216,87,14,63,159,119,14,63,99,151,14,63,38,183,14,63,232,214,14,63,167,246,14,63,101,22,15,63,34,54,15,63,221,85,15,63,150,117,15,63,78,149,15,63,4,181,15,63,184,212,15,63,106,244,15,63,27,20,16,63,202,51,16,63,120,83,16,63,36,115,16,63,206,146,16,63,118,178,16,63,28,210,16,63,193,241,16,63,100,17,17,63,6,49,17,63,165,80,17,63,67,112,17,63,223,143,17,63,121,175,17,63,17,207,17,63,167,238,17,63,60,14,18,63,206,45,18,63,95,77,18,63,238,108,18,63,123,140,18,63,7,172,18,63,144,203,18,63,23,235,18,63,157,10,19,63,32,42,19,63,162,73,19,63,34,105,19,63,159,136,19,63,27,168,19,63,149,199,19,63,13,231,19,63,131,6,20,63,247,37,20,63,104,69,20,63,216,100,20,63,70,132,20,63,178,163,20,63,27,195,20,63,131,226,20,63,233,1,21,63,76,33,21,63,174,64,21,63,13,96,21,63,106,127,21,63,197,158,21,63,31,190,21,63,117,221,21,63,202,252,21,63,29,28,22,63,109,59,22,63,188,90,22,63,8,122,22,63,82,153,22,63,153,184,22,63,223,215,22,63,34,247,22,63,100,22,23,63,162,53,23,63,223,84,23,63,26,116,23,63,82,147,23,63,136,178,23,63,187,209,23,63,237,240,23,63,28,16,24,63,73,47,24,63,115,78,24,63,155,109,24,63,193,140,24,63,228,171,24,63,6,203,24,63,36,234,24,63,65,9,25,63,91,40,25,63,115,71,25,63,136,102,25,63,155,133,25,63,171,164,25,63,185,195,25,63,197,226,25,63,206,1,26,63,213,32,26,63,217,63,26,63,219,94,26,63,218,125,26,63,215,156,26,63,210,187,26,63,202,218,26,63,191,249,26,63,178,24,27,63,162,55,27,63,144,86,27,63,123,117,27,63,100,148,27,63,74,179,27,63,46,210,27,63,15,241,27,63,237,15,28,63,201,46,28,63,162,77,28,63,121,108,28,63,77,139,28,63,31,170,28,63,237,200,28,63,185,231,28,63,131,6,29,63,74,37,29,63,14,68,29,63,207,98,29,63,142,129,29,63,74,160,29,63,3,191,29,63,186,221,29,63,110,252,29,63,31,27,30,63,205,57,30,63,121,88,30,63,34,119,30,63,200,149,30,63,107,180,30,63,12,211,30,63,170,241,30,63,69,16,31,63,221,46,31,63,114,77,31,63,5,108,31,63,148,138,31,63,33,169,31,63,171,199,31,63,50,230,31,63,182,4,32,63,56,35,32,63,182,65,32,63,50,96,32,63,170,126,32,63,32,157,32,63,147,187,32,63,3,218,32,63,112,248,32,63,218,22,33,63,65,53,33,63,165,83,33,63,6,114,33,63,100,144,33,63,191,174,33,63,23,205,33,63,108,235,33,63,190,9,34,63,13,40,34,63,89,70,34,63,162,100,34,63,232,130,34,63,43,161,34,63,107,191,34,63,167,221,34,63,225,251,34,63,24,26,35,63,75,56,35,63,123,86,35,63,168,116,35,63,211,146,35,63,249,176,35,63,29,207,35,63,62,237,35,63,91,11,36,63,118,41,36,63,141,71,36,63,161,101,36,63,177,131,36,63,191,161,36,63,201,191,36,63,208,221,36,63,212,251,36,63,213,25,37,63,210,55,37,63,204,85,37,63,195,115,37,63,183,145,37,63,167,175,37,63,148,205,37,63,126,235,37,63,101,9,38,63,72,39,38,63,40,69,38,63,4,99,38,63,221,128,38,63,179,158,38,63,134,188,38,63,85,218,38,63,33,248,38,63,233,21,39,63,174,51,39,63,112,81,39,63,46,111,39,63,233,140,39,63,160,170,39,63,84,200,39,63,4,230,39,63,178,3,40,63,91,33,40,63,1,63,40,63,164,92,40,63,67,122,40,63,223,151,40,63,120,181,40,63,12,211,40,63,158,240,40,63,43,14,41,63,182,43,41,63,60,73,41,63,192,102,41,63,63,132,41,63,187,161,41,63,52,191,41,63,169,220,41,63,26,250,41,63,136,23,42,63,242,52,42,63,89,82,42,63,188,111,42,63,28,141,42,63,119,170,42,63,208,199,42,63,36,229,42,63,117,2,43,63,194,31,43,63,12,61,43,63,82,90,43,63,148,119,43,63,211,148,43,63,14,178,43,63,69,207,43,63,120,236,43,63,168,9,44,63,212,38,44,63,252,67,44,63,33,97,44,63,66,126,44,63,95,155,44,63,120,184,44,63,142,213,44,63,159,242,44,63,173,15,45,63,184,44,45,63,190,73,45,63,193,102,45,63,191,131,45,63,186,160,45,63,177,189,45,63,165,218,45,63,148,247,45,63,128,20,46,63,103,49,46,63,75,78,46,63,43,107,46,63,7,136,46,63,224,164,46,63,180,193,46,63,132,222,46,63,81,251,46,63,26,24,47,63,222,52,47,63,159,81,47,63,92,110,47,63,21,139,47,63,202,167,47,63,123,196,47,63,40,225,47,63,209,253,47,63,118,26,48,63,23,55,48,63,180,83,48,63,77,112,48,63,226,140,48,63,115,169,48,63,0,198,48,63,137,226,48,63,14,255,48,63,142,27,49,63,11,56,49,63,132,84,49,63,248,112,49,63,105,141,49,63,214,169,49,63,62,198,49,63,162,226,49,63,2,255,49,63,95,27,50,63,182,55,50,63,10,84,50,63,90,112,50,63,166,140,50,63,237,168,50,63,48,197,50,63,111,225,50,63,170,253,50,63,225,25,51,63,19,54,51,63,66,82,51,63,108,110,51,63,146,138,51,63,180,166,51,63,209,194,51,63,234,222,51,63,0,251,51,63,16,23,52,63,29,51,52,63,37,79,52,63,41,107,52,63,41,135,52,63,37,163,52,63,28,191,52,63,15,219,52,63,253,246,52,63,232,18,53,63,206,46,53,63,176,74,53,63,141,102,53,63,102,130,53,63,59,158,53,63,11,186,53,63,215,213,53,63,159,241,53,63,98,13,54,63,33,41,54,63,220,68,54,63,146,96,54,63,68,124,54,63,241,151,54,63,154,179,54,63,63,207,54,63,223,234,54,63,123,6,55,63,18,34,55,63,165,61,55,63,52,89,55,63,190,116,55,63,67,144,55,63,196,171,55,63,65,199,55,63,185,226,55,63,45,254,55,63,156,25,56,63,7,53,56,63,109,80,56,63,207,107,56,63,44,135,56,63,133,162,56,63,217,189,56,63,40,217,56,63,115,244,56,63,186,15,57,63,252,42,57,63,57,70,57,63,114,97,57,63,166,124,57,63,214,151,57,63,1,179,57,63,40,206,57,63,74,233,57,63,103,4,58,63,128,31,58,63,148,58,58,63,163,85,58,63,174,112,58,63,180,139,58,63,182,166,58,63,179,193,58,63,171,220,58,63,159,247,58,63,142,18,59,63,120,45,59,63,94,72,59,63,63,99,59,63,27,126,59,63,243,152,59,63,197,179,59,63,148,206,59,63,93,233,59,63,34,4,60,63,226,30,60,63,157,57,60,63,84,84,60,63,5,111,60,63,178,137,60,63,91,164,60,63,254,190,60,63,157,217,60,63,55,244,60,63,204,14,61,63,93,41,61,63,232,67,61,63,111,94,61,63,241,120,61,63,110,147,61,63,231,173,61,63,91,200,61,63,201,226,61,63,51,253,61,63,152,23,62,63,249,49,62,63,84,76,62,63,171,102,62,63,252,128,62,63,73,155,62,63,145,181,62,63,212,207,62,63,19,234,62,63,76,4,63,63,128,30,63,63,176,56,63,63,219,82,63,63,0,109,63,63,33,135,63,63,61,161,63,63,84,187,63,63,102,213,63,63,115,239,63,63,123,9,64,63,127,35,64,63,125,61,64,63,118,87,64,63,106,113,64,63,90,139,64,63,68,165,64,63,42,191,64,63,10,217,64,63,229,242,64,63,188,12,65,63,141,38,65,63,90,64,65,63,33,90,65,63,228,115,65,63,161,141,65,63,89,167,65,63,13,193,65,63,187,218,65,63,100,244,65,63,8,14,66,63,167,39,66,63,65,65,66,63,214,90,66,63,102,116,66,63,241,141,66,63,119,167,66,63,248,192,66,63,115,218,66,63,234,243,66,63,91,13,67,63,199,38,67,63,47,64,67,63,145,89,67,63,238,114,67,63,69,140,67,63,152,165,67,63,230,190,67,63,46,216,67,63,113,241,67,63,175,10,68,63,232,35,68,63,28,61,68,63,75,86,68,63,116,111,68,63,153,136,68,63,184,161,68,63,210,186,68,63,230,211,68,63,246,236,68,63,0,6,69,63,5,31,69,63,5,56,69,63,0,81,69,63,245,105,69,63,230,130,69,63,209,155,69,63,182,180,69,63,151,205,69,63,114,230,69,63,72,255,69,63,25,24,70,63,229,48,70,63,171,73,70,63,108,98,70,63,40,123,70,63,222,147,70,63,143,172,70,63,59,197,70,63,226,221,70,63,131,246,70,63,31,15,71,63,182,39,71,63,71,64,71,63,211,88,71,63,90,113,71,63,220,137,71,63,88,162,71,63,207,186,71,63,64,211,71,63,172,235,71,63,19,4,72,63,116,28,72,63,209,52,72,63,39,77,72,63,121,101,72,63,197,125,72,63,11,150,72,63,77,174,72,63,137,198,72,63,191,222,72,63,240,246,72,63,28,15,73,63,66,39,73,63,99,63,73,63,127,87,73,63,149,111,73,63,166,135,73,63,177,159,73,63,183,183,73,63,183,207,73,63,178,231,73,63,168,255,73,63,152,23,74,63,131,47,74,63,104,71,74,63,72,95,74,63,34,119,74,63,247,142,74,63,199,166,74,63,145,190,74,63,85,214,74,63,20,238,74,63,206,5,75,63,130,29,75,63,49,53,75,63,218,76,75,63,126,100,75,63,28,124,75,63,181,147,75,63,72,171,75,63,213,194,75,63,93,218,75,63,224,241,75,63,93,9,76,63,213,32,76,63,71,56,76,63,179,79,76,63,26,103,76,63,124,126,76,63,216,149,76,63,46,173,76,63,127,196,76,63,202,219,76,63,16,243,76,63,80,10,77,63,139,33,77,63,192,56,77,63,240,79,77,63,26,103,77,63,62,126,77,63,93,149,77,63,118,172,77,63,137,195,77,63,151,218,77,63,160,241,77,63,163,8,78,63,160,31,78,63,151,54,78,63,137,77,78,63,118,100,78,63,93,123,78,63,62,146,78,63,25,169,78,63,239,191,78,63,192,214,78,63,138,237,78,63,79,4,79,63,15,27,79,63,201,49,79,63,125,72,79,63,43,95,79,63,212,117,79,63,119,140,79,63,21,163,79,63,172,185,79,63,63,208,79,63,203,230,79,63,82,253,79,63,211,19,80,63,79,42,80,63,197,64,80,63,53,87,80,63,159,109,80,63,4,132,80,63,99,154,80,63,189,176,80,63,16,199,80,63,94,221,80,63,167,243,80,63,233,9,81,63,38,32,81,63,93,54,81,63,143,76,81,63,187,98,81,63,225,120,81,63,1,143,81,63,28,165,81,63,48,187,81,63,64,209,81,63,73,231,81,63,77,253,81,63,75,19,82,63,67,41,82,63,53,63,82,63,34,85,82,63,9,107,82,63,234,128,82,63,198,150,82,63,155,172,82,63,107,194,82,63,53,216,82,63,250,237,82,63,185,3,83,63,113,25,83,63,37,47,83,63,210,68,83,63,121,90,83,63,27,112,83,63,183,133,83,63,77,155,83,63,222,176,83,63,104,198,83,63,237,219,83,63,108,241,83,63,230,6,84,63,89,28,84,63,199,49,84,63,46,71,84,63,145,92,84,63,237,113,84,63,67,135,84,63,148,156,84,63,223,177,84,63,35,199,84,63,99,220,84,63,156,241,84,63,207,6,85,63,253,27,85,63,37,49,85,63,71,70,85,63,99,91,85,63,121,112,85,63,138,133,85,63,149,154,85,63,153,175,85,63,152,196,85,63,146,217,85,63,133,238,85,63,114,3,86,63,90,24,86,63,60,45,86,63,24,66,86,63,238,86,86,63,190,107,86,63,136,128,86,63,76,149,86,63,11,170,86,63,196,190,86,63,118,211,86,63,35,232,86,63,203,252,86,63,108,17,87,63,7,38,87,63,156,58,87,63,44,79,87,63,182,99,87,63,58,120,87,63,183,140,87,63,47,161,87,63,162,181,87,63,14,202,87,63,116,222,87,63,213,242,87,63,47,7,88,63,132,27,88,63,211,47,88,63,28,68,88,63,95,88,88,63,156,108,88,63,211,128,88,63,4,149,88,63,47,169,88,63,85,189,88,63,116,209,88,63,142,229,88,63,162,249,88,63,175,13,89,63,183,33,89,63,185,53,89,63,181,73,89,63,171,93,89,63,155,113,89,63,134,133,89,63,106,153,89,63,72,173,89,63,33,193,89,63,243,212,89,63,192,232,89,63,135,252,89,63,71,16,90,63,2,36,90,63,183,55,90,63,102,75,90,63,15,95,90,63,178,114,90,63,79,134,90,63,230,153,90,63,119,173,90,63,3,193,90,63,136,212,90,63,7,232,90,63,129,251,90,63,244,14,91,63,98,34,91,63,201,53,91,63,43,73,91,63,135,92,91,63,220,111,91,63,44,131,91,63,118,150,91,63,186,169,91,63,248,188,91,63,47,208,91,63,97,227,91,63,141,246,91,63,179,9,92,63,212,28,92,63,238,47,92,63,2,67,92,63,16,86,92,63,24,105,92,63,26,124,92,63,23,143,92,63,13,162,92,63,253,180,92,63,232,199,92,63,204,218,92,63,171,237,92,63,131,0,93,63,86,19,93,63,34,38,93,63,233,56,93,63,169,75,93,63,100,94,93,63,24,113,93,63,199,131,93,63,112,150,93,63,18,169,93,63,175,187,93,63,70,206,93,63,215,224,93,63,97,243,93,63,230,5,94,63,101,24,94,63,222,42,94,63,81,61,94,63,190,79,94,63,36,98,94,63,133,116,94,63,224,134,94,63,53,153,94,63,132,171,94,63,205,189,94,63,16,208,94,63,77,226,94,63,132,244,94,63,181,6,95,63,224,24,95,63,5,43,95,63,36,61,95,63,61,79,95,63,80,97,95,63,93,115,95,63,101,133,95,63,102,151,95,63,97,169,95,63,86,187,95,63,69,205,95,63,46,223,95,63,18,241,95,63,239,2,96,63,198,20,96,63,151,38,96,63,98,56,96,63,40,74,96,63,231,91,96,63,160,109,96,63,84,127,96,63,1,145,96,63,168,162,96,63,73,180,96,63,229,197,96,63,122,215,96,63,10,233,96,63,147,250,96,63,22,12,97,63,148,29,97,63,11,47,97,63,125,64,97,63,232,81,97,63,77,99,97,63,173,116,97,63,6,134,97,63,90,151,97,63,167,168,97,63,239,185,97,63,48,203,97,63,108,220,97,63,162,237,97,63,209,254,97,63,251,15,98,63,30,33,98,63,60,50,98,63,84,67,98,63,101,84,98,63,113,101,98,63,119,118,98,63,119,135,98,63,112,152,98,63,100,169,98,63,82,186,98,63,58,203,98,63,28,220,98,63,247,236,98,63,205,253,98,63,157,14,99,63,103,31,99,63,43,48,99,63,233,64,99,63,161,81,99,63,83,98,99,63,255,114,99,63,165,131,99,63,69,148,99,63,224,164,99,63,116,181,99,63,2,198,99,63,138,214,99,63,13,231,99,63,137,247,99,63,255,7,100,63,112,24,100,63,218,40,100,63,62,57,100,63,157,73,100,63,246,89,100,63,72,106,100,63,149,122,100,63,219,138,100,63,28,155,100,63,87,171,100,63,140,187,100,63,186,203,100,63,227,219,100,63,6,236,100,63,35,252,100,63,58,12,101,63,75,28,101,63,86,44,101,63,91,60,101,63,91,76,101,63,84,92,101,63,71,108,101,63,53,124,101,63,28,140,101,63,254,155,101,63,217,171,101,63,175,187,101,63,126,203,101,63,72,219,101,63,12,235,101,63,202,250,101,63,130,10,102,63,52,26,102,63,224,41,102,63,134,57,102,63,38,73,102,63,193,88,102,63,85,104,102,63,227,119,102,63,108,135,102,63,238,150,102,63,107,166,102,63,226,181,102,63,83,197,102,63,190,212,102,63,35,228,102,63,130,243,102,63,219,2,103,63,46,18,103,63,124,33,103,63,195,48,103,63,5,64,103,63,64,79,103,63,118,94,103,63,166,109,103,63,208,124,103,63,244,139,103,63,18,155,103,63,42,170,103,63,61,185,103,63,73,200,103,63,80,215,103,63,80,230,103,63,75,245,103,63,64,4,104,63,47,19,104,63,24,34,104,63,251,48,104,63,217,63,104,63,176,78,104,63,130,93,104,63,78,108,104,63,20,123,104,63,212,137,104,63,142,152,104,63,66,167,104,63,240,181,104,63,153,196,104,63,60,211,104,63,217,225,104,63,112,240,104,63,1,255,104,63,140,13,105,63,17,28,105,63,145,42,105,63,11,57,105,63,127,71,105,63,237,85,105,63,85,100,105,63,183,114,105,63,20,129,105,63,106,143,105,63,187,157,105,63,6,172,105,63,75,186,105,63,139,200,105,63,196,214,105,63,248,228,105,63,38,243,105,63,78,1,106,63,112,15,106,63,141,29,106,63,163,43,106,63,180,57,106,63,191,71,106,63,196,85,106,63,196,99,106,63,189,113,106,63,177,127,106,63,159,141,106,63,135,155,106,63,106,169,106,63,70,183,106,63,29,197,106,63,238,210,106,63,186,224,106,63,127,238,106,63,63,252,106,63,249,9,107,63,173,23,107,63,91,37,107,63,4,51,107,63,167,64,107,63,68,78,107,63,219,91,107,63,109,105,107,63,249,118,107,63,127,132,107,63,255,145,107,63,122,159,107,63,238,172,107,63,94,186,107,63,199,199,107,63,42,213,107,63,136,226,107,63,224,239,107,63,51,253,107,63,128,10,108,63,198,23,108,63,8,37,108,63,67,50,108,63,121,63,108,63,169,76,108,63,211,89,108,63,248,102,108,63,23,116,108,63,48,129,108,63,68,142,108,63,82,155,108,63,90,168,108,63,92,181,108,63,89,194,108,63,80,207,108,63,65,220,108,63,45,233,108,63,19,246,108,63,243,2,109,63,206,15,109,63,163,28,109,63,114,41,109,63,60,54,109,63,0,67,109,63,190,79,109,63,119,92,109,63,42,105,109,63,215,117,109,63,127,130,109,63,33,143,109,63,189,155,109,63,84,168,109,63,229,180,109,63,113,193,109,63,247,205,109,63,119,218,109,63,242,230,109,63,103,243,109,63,214,255,109,63,64,12,110,63,164,24,110,63,3,37,110,63,91,49,110,63,175,61,110,63,253,73,110,63,69,86,110,63,135,98,110,63,196,110,110,63,252,122,110,63,45,135,110,63,90,147,110,63,128,159,110,63,161,171,110,63,189,183,110,63,211,195,110,63,227,207,110,63,238,219,110,63,243,231,110,63,243,243,110,63,237,255,110,63,226,11,111,63,209,23,111,63,186,35,111,63,158,47,111,63,125,59,111,63,85,71,111,63,41,83,111,63,247,94,111,63,191,106,111,63,130,118,111,63,63,130,111,63,247,141,111,63,169,153,111,63,86,165,111,63,253,176,111,63,159,188,111,63,59,200,111,63,210,211,111,63,99,223,111,63,239,234,111,63,117,246,111,63,246,1,112,63,114,13,112,63,231,24,112,63,88,36,112,63,195,47,112,63,40,59,112,63,137,70,112,63,227,81,112,63,56,93,112,63,136,104,112,63,210,115,112,63,23,127,112,63,87,138,112,63,145,149,112,63,197,160,112,63,244,171,112,63,30,183,112,63,66,194,112,63,97,205,112,63,123,216,112,63,143,227,112,63,157,238,112,63,167,249,112,63,171,4,113,63,169,15,113,63,162,26,113,63,150,37,113,63,132,48,113,63,109,59,113,63,81,70,113,63,47,81,113,63,8,92,113,63,219,102,113,63,170,113,113,63,114,124,113,63,54,135,113,63,244,145,113,63,173,156,113,63,96,167,113,63,14,178,113,63,183,188,113,63,91,199,113,63,249,209,113,63,146,220,113,63,37,231,113,63,179,241,113,63,60,252,113,63,192,6,114,63,62,17,114,63,183,27,114,63,43,38,114,63,154,48,114,63,3,59,114,63,103,69,114,63,197,79,114,63,31,90,114,63,115,100,114,63,194,110,114,63,11,121,114,63,79,131,114,63,143,141,114,63,200,151,114,63,253,161,114,63,44,172,114,63,87,182,114,63,123,192,114,63,155,202,114,63,182,212,114,63,203,222,114,63,219,232,114,63,230,242,114,63,235,252,114,63,236,6,115,63,231,16,115,63,221,26,115,63,206,36,115,63,186,46,115,63,160,56,115,63,130,66,115,63,94,76,115,63,53,86,115,63,7,96,115,63,212,105,115,63,155,115,115,63,94,125,115,63,27,135,115,63,211,144,115,63,134,154,115,63,52,164,115,63,221,173,115,63,128,183,115,63,31,193,115,63,184,202,115,63,77,212,115,63,220,221,115,63,102,231,115,63,235,240,115,63,107,250,115,63,230,3,116,63,92,13,116,63,204,22,116,63,56,32,116,63,159,41,116,63,0,51,116,63,93,60,116,63,180,69,116,63,6,79,116,63,84,88,116,63,156,97,116,63,223,106,116,63,29,116,116,63,87,125,116,63,139,134,116,63,186,143,116,63,228,152,116,63,9,162,116,63,41,171,116,63,68,180,116,63,91,189,116,63,108,198,116,63,120,207,116,63,127,216,116,63,129,225,116,63,127,234,116,63,119,243,116,63,106,252,116,63,89,5,117,63,66,14,117,63,38,23,117,63,6,32,117,63,225,40,117,63,182,49,117,63,135,58,117,63,83,67,117,63,26,76,117,63,220,84,117,63,153,93,117,63,81,102,117,63,4,111,117,63,179,119,117,63,92,128,117,63,1,137,117,63,160,145,117,63,59,154,117,63,209,162,117,63,98,171,117,63,239,179,117,63,118,188,117,63,249,196,117,63,118,205,117,63,239,213,117,63,99,222,117,63,210,230,117,63,61,239,117,63,162,247,117,63,3,0,118,63,95,8,118,63,182,16,118,63,8,25,118,63,86,33,118,63,159,41,118,63,227,49,118,63,34,58,118,63,92,66,118,63,146,74,118,63,195,82,118,63,239,90,118,63,22,99,118,63,57,107,118,63,86,115,118,63,112,123,118,63,132,131,118,63,148,139,118,63,158,147,118,63,165,155,118,63,166,163,118,63,163,171,118,63,155,179,118,63,142,187,118,63,125,195,118,63,103,203,118,63,76,211,118,63,45,219,118,63,9,227,118,63,224,234,118,63,178,242,118,63,128,250,118,63,74,2,119,63,14,10,119,63,206,17,119,63,137,25,119,63,64,33,119,63,242,40,119,63,160,48,119,63,72,56,119,63,237,63,119,63,140,71,119,63,39,79,119,63,190,86,119,63,79,94,119,63,220,101,119,63,101,109,119,63,233,116,119,63,105,124,119,63,228,131,119,63,90,139,119,63,204,146,119,63,57,154,119,63,162,161,119,63,6,169,119,63,101,176,119,63,192,183,119,63,23,191,119,63,105,198,119,63,182,205,119,63,255,212,119,63,68,220,119,63,132,227,119,63,191,234,119,63,246,241,119,63,41,249,119,63,87,0,120,63,129,7,120,63,166,14,120,63,198,21,120,63,227,28,120,63,250,35,120,63,14,43,120,63,28,50,120,63,39,57,120,63,45,64,120,63,46,71,120,63,44,78,120,63,36,85,120,63,25,92,120,63,9,99,120,63,244,105,120,63,219,112,120,63,190,119,120,63,156,126,120,63,118,133,120,63,76,140,120,63,29,147,120,63,234,153,120,63,179,160,120,63,119,167,120,63,55,174,120,63,242,180,120,63,169,187,120,63,92,194,120,63,11,201,120,63,181,207,120,63,91,214,120,63,252,220,120,63,154,227,120,63,51,234,120,63,199,240,120,63,88,247,120,63,228,253,120,63,108,4,121,63,240,10,121,63,111,17,121,63,234,23,121,63,97,30,121,63,211,36,121,63,66,43,121,63,172,49,121,63,18,56,121,63,116,62,121,63,209,68,121,63,42,75,121,63,127,81,121,63,208,87,121,63,29,94,121,63,101,100,121,63,170,106,121,63,234,112,121,63,38,119,121,63,93,125,121,63,145,131,121,63,193,137,121,63,236,143,121,63,19,150,121,63,54,156,121,63,85,162,121,63,112,168,121,63,134,174,121,63,153,180,121,63,167,186,121,63,178,192,121,63,184,198,121,63,186,204,121,63,184,210,121,63,178,216,121,63,168,222,121,63,154,228,121,63,135,234,121,63,113,240,121,63,87,246,121,63,56,252,121,63,22,2,122,63,239,7,122,63,197,13,122,63,150,19,122,63,100,25,122,63,45,31,122,63,243,36,122,63,180,42,122,63,113,48,122,63,43,54,122,63,224,59,122,63,146,65,122,63,63,71,122,63,233,76,122,63,142,82,122,63,48,88,122,63,206,93,122,63,103,99,122,63,253,104,122,63,143,110,122,63,29,116,122,63,167,121,122,63,45,127,122,63,175,132,122,63,45,138,122,63,168,143,122,63,30,149,122,63,145,154,122,63,255,159,122,63,106,165,122,63,209,170,122,63,52,176,122,63,147,181,122,63,239,186,122,63,70,192,122,63,154,197,122,63,234,202,122,63,54,208,122,63,126,213,122,63,194,218,122,63,3,224,122,63,64,229,122,63,121,234,122,63,174,239,122,63,223,244,122,63,13,250,122,63,55,255,122,63,93,4,123,63,127,9,123,63,157,14,123,63,184,19,123,63,207,24,123,63,227,29,123,63,242,34,123,63,254,39,123,63,6,45,123,63,10,50,123,63,11,55,123,63,8,60,123,63,1,65,123,63,247,69,123,63,233,74,123,63,215,79,123,63,193,84,123,63,168,89,123,63,139,94,123,63,107,99,123,63,71,104,123,63,31,109,123,63,243,113,123,63,196,118,123,63,146,123,123,63,91,128,123,63,33,133,123,63,228,137,123,63,163,142,123,63,94,147,123,63,22,152,123,63,202,156,123,63,122,161,123,63,39,166,123,63,208,170,123,63,118,175,123,63,24,180,123,63,183,184,123,63,82,189,123,63,233,193,123,63,125,198,123,63,14,203,123,63,155,207,123,63,36,212,123,63,170,216,123,63,45,221,123,63,172,225,123,63,39,230,123,63,159,234,123,63,19,239,123,63,132,243,123,63,242,247,123,63,92,252,123,63,195,0,124,63,38,5,124,63,133,9,124,63,226,13,124,63,58,18,124,63,144,22,124,63,226,26,124,63,48,31,124,63,123,35,124,63,195,39,124,63,7,44,124,63,72,48,124,63,134,52,124,63,192,56,124,63,247,60,124,63,42,65,124,63,90,69,124,63,135,73,124,63,176,77,124,63,214,81,124,63,249,85,124,63,24,90,124,63,52,94,124,63,77,98,124,63,98,102,124,63,116,106,124,63,131,110,124,63,142,114,124,63,150,118,124,63,155,122,124,63,157,126,124,63,155,130,124,63,150,134,124,63,142,138,124,63,130,142,124,63,116,146,124,63,98,150,124,63,77,154,124,63,52,158,124,63,24,162,124,63,249,165,124,63,215,169,124,63,178,173,124,63,137,177,124,63,94,181,124,63,47,185,124,63,253,188,124,63,199,192,124,63,143,196,124,63,83,200,124,63,20,204,124,63,211,207,124,63,141,211,124,63,69,215,124,63,250,218,124,63,171,222,124,63,90,226,124,63,5,230,124,63,173,233,124,63,82,237,124,63,244,240,124,63,147,244,124,63,46,248,124,63,199,251,124,63,93,255,124,63,239,2,125,63,127,6,125,63,11,10,125,63,148,13,125,63,27,17,125,63,158,20,125,63,30,24,125,63,155,27,125,63,21,31,125,63,140,34,125,63,0,38,125,63,114,41,125,63,224,44,125,63,75,48,125,63,179,51,125,63,24,55,125,63,122,58,125,63,217,61,125,63,54,65,125,63,143,68,125,63,229,71,125,63,56,75,125,63,137,78,125,63,214,81,125,63,33,85,125,63,104,88,125,63,173,91,125,63,239,94,125,63,46,98,125,63,106,101,125,63,163,104,125,63,217,107,125,63,12,111,125,63,61,114,125,63,106,117,125,63,149,120,125,63,189,123,125,63,226,126,125,63,4,130,125,63,36,133,125,63,64,136,125,63,90,139,125,63,112,142,125,63,133,145,125,63,150,148,125,63,164,151,125,63,176,154,125,63,185,157,125,63,191,160,125,63,194,163,125,63,194,166,125,63,192,169,125,63,187,172,125,63,179,175,125,63,168,178,125,63,155,181,125,63,139,184,125,63,120,187,125,63,99,190,125,63,74,193,125,63,48,196,125,63,18,199,125,63,241,201,125,63,206,204,125,63,169,207,125,63,128,210,125,63,85,213,125,63,39,216,125,63,247,218,125,63,196,221,125,63,142,224,125,63,85,227,125,63,26,230,125,63,220,232,125,63,156,235,125,63,89,238,125,63,19,241,125,63,203,243,125,63,128,246,125,63,51,249,125,63,227,251,125,63,144,254,125,63,59,1,126,63,227,3,126,63,137,6,126,63,44,9,126,63,204,11,126,63,106,14,126,63,6,17,126,63,158,19,126,63,53,22,126,63,200,24,126,63,90,27,126,63,232,29,126,63,116,32,126,63,254,34,126,63,133,37,126,63,10,40,126,63,140,42,126,63,12,45,126,63,137,47,126,63,4,50,126,63,124,52,126,63,242,54,126,63,101,57,126,63,214,59,126,63,68,62,126,63,176,64,126,63,26,67,126,63,129,69,126,63,230,71,126,63,72,74,126,63,168,76,126,63,5,79,126,63,96,81,126,63,185,83,126,63,15,86,126,63,99,88,126,63,181,90,126,63,4,93,126,63,81,95,126,63,155,97,126,63,227,99,126,63,41,102,126,63,108,104,126,63,173,106,126,63,236,108,126,63,40,111,126,63,98,113,126,63,154,115,126,63,208,117,126,63,3,120,126,63,51,122,126,63,98,124,126,63,142,126,126,63,184,128,126,63,224,130,126,63,5,133,126,63,40,135,126,63,73,137,126,63,104,139,126,63,132,141,126,63,159,143,126,63,183,145,126,63,204,147,126,63,224,149,126,63,241,151,126,63,0,154,126,63,13,156,126,63,24,158,126,63,32,160,126,63,38,162,126,63,42,164,126,63,44,166,126,63,44,168,126,63,41,170,126,63,37,172,126,63,30,174,126,63,21,176,126,63,10,178,126,63,253,179,126,63,238,181,126,63,220,183,126,63,201,185,126,63,179,187,126,63,155,189,126,63,129,191,126,63,101,193,126,63,71,195,126,63,39,197,126,63,5,199,126,63,224,200,126,63,186,202,126,63,145,204,126,63,103,206,126,63,58,208,126,63,12,210,126,63,219,211,126,63,168,213,126,63,115,215,126,63,61,217,126,63,4,219,126,63,201,220,126,63,140,222,126,63,77,224,126,63,12,226,126,63,202,227,126,63,133,229,126,63,62,231,126,63,245,232,126,63,170,234,126,63,94,236,126,63,15,238,126,63,190,239,126,63,108,241,126,63,23,243,126,63,193,244,126,63,104,246,126,63,14,248,126,63,178,249,126,63,84,251,126,63,243,252,126,63,145,254,126,63,46,0,127,63,200,1,127,63,96,3,127,63,247,4,127,63,139,6,127,63,30,8,127,63,175,9,127,63,62,11,127,63,203,12,127,63,86,14,127,63,223,15,127,63,103,17,127,63,237,18,127,63,112,20,127,63,242,21,127,63,115,23,127,63,241,24,127,63,110,26,127,63,233,27,127,63,98,29,127,63,217,30,127,63,78,32,127,63,194,33,127,63,52,35,127,63,164,36,127,63,18,38,127,63,127,39,127,63,234,40,127,63,83,42,127,63,186,43,127,63,32,45,127,63,131,46,127,63,230,47,127,63,70,49,127,63,165,50,127,63,2,52,127,63,93,53,127,63,182,54,127,63,14,56,127,63,100,57,127,63,185,58,127,63,12,60,127,63,93,61,127,63,172,62,127,63,250,63,127,63,70,65,127,63,145,66,127,63,217,67,127,63,33,69,127,63,102,70,127,63,170,71,127,63,236,72,127,63,45,74,127,63,108,75,127,63,169,76,127,63,229,77,127,63,31,79,127,63,88,80,127,63,143,81,127,63,196,82,127,63,248,83,127,63,42,85,127,63,91,86,127,63,138,87,127,63,184,88,127,63,228,89,127,63,14,91,127,63,55,92,127,63,94,93,127,63,132,94,127,63,169,95,127,63,203,96,127,63,237,97,127,63,12,99,127,63,42,100,127,63,71,101,127,63,98,102,127,63,124,103,127,63,148,104,127,63,171,105,127,63,192,106,127,63,212,107,127,63,230,108,127,63,247,109,127,63,6,111,127,63,20,112,127,63,33,113,127,63,44,114,127,63,53,115,127,63,61,116,127,63,68,117,127,63,73,118,127,63,77,119,127,63,79,120,127,63,80,121,127,63,80,122,127,63,78,123,127,63,75,124,127,63,70,125,127,63,64,126,127,63,57,127,127,63,48,128,127,63,38,129,127,63,27,130,127,63,14,131,127,63,0,132,127,63,240,132,127,63,223,133,127,63,205,134,127,63,185,135,127,63,164,136,127,63,142,137,127,63,118,138,127,63,93,139,127,63,67,140,127,63,40,141,127,63,11,142,127,63,237,142,127,63,205,143,127,63,173,144,127,63,139,145,127,63,103,146,127,63,67,147,127,63,29,148,127,63,246,148,127,63,205,149,127,63,164,150,127,63,121,151,127,63,77,152,127,63,31,153,127,63,241,153,127,63,193,154,127,63,144,155,127,63,93,156,127,63,42,157,127,63,245,157,127,63,191,158,127,63,136,159,127,63,79,160,127,63,22,161,127,63,219,161,127,63,159,162,127,63,98,163,127,63,36,164,127,63,228,164,127,63,163,165,127,63,98,166,127,63,31,167,127,63,219,167,127,63,149,168,127,63,79,169,127,63,7,170,127,63,190,170,127,63,117,171,127,63,42,172,127,63,221,172,127,63,144,173,127,63,66,174,127,63,242,174,127,63,162,175,127,63,80,176,127,63,253,176,127,63,169,177,127,63,85,178,127,63,254,178,127,63,167,179,127,63,79,180,127,63,246,180,127,63,156,181,127,63,64,182,127,63,228,182,127,63,134,183,127,63,40,184,127,63,200,184,127,63,103,185,127,63,6,186,127,63,163,186,127,63,63,187,127,63,219,187,127,63,117,188,127,63,14,189,127,63,166,189,127,63,61,190,127,63,212,190,127,63,105,191,127,63,253,191,127,63,144,192,127,63,34,193,127,63,180,193,127,63,68,194,127,63,211,194,127,63,98,195,127,63,239,195,127,63,123,196,127,63,7,197,127,63,145,197,127,63,27,198,127,63,163,198,127,63,43,199,127,63,178,199,127,63,56,200,127,63,189,200,127,63,65,201,127,63,196,201,127,63,70,202,127,63,199,202,127,63,71,203,127,63,199,203,127,63,69,204,127,63,195,204,127,63,64,205,127,63,187,205,127,63,54,206,127,63,177,206,127,63,42,207,127,63,162,207,127,63,26,208,127,63,144,208,127,63,6,209,127,63,123,209,127,63,239,209,127,63,98,210,127,63,213,210,127,63,70,211,127,63,183,211,127,63,39,212,127,63,150,212,127,63,4,213,127,63,114,213,127,63],"i8",L3,x.GLOBAL_BASE+541176),d3([222,213,127,63,74,214,127,63,181,214,127,63,32,215,127,63,137,215,127,63,242,215,127,63,89,216,127,63,192,216,127,63,39,217,127,63,140,217,127,63,241,217,127,63,85,218,127,63,184,218,127,63,27,219,127,63,124,219,127,63,221,219,127,63,61,220,127,63,157,220,127,63,251,220,127,63,89,221,127,63,183,221,127,63,19,222,127,63,111,222,127,63,202,222,127,63,36,223,127,63,126,223,127,63,215,223,127,63,47,224,127,63,134,224,127,63,221,224,127,63,51,225,127,63,137,225,127,63,221,225,127,63,49,226,127,63,133,226,127,63,215,226,127,63,41,227,127,63,122,227,127,63,203,227,127,63,27,228,127,63,106,228,127,63,185,228,127,63,7,229,127,63,84,229,127,63,161,229,127,63,237,229,127,63,56,230,127,63,131,230,127,63,205,230,127,63,23,231,127,63,96,231,127,63,168,231,127,63,239,231,127,63,54,232,127,63,125,232,127,63,195,232,127,63,8,233,127,63,76,233,127,63,144,233,127,63,212,233,127,63,23,234,127,63,89,234,127,63,154,234,127,63,219,234,127,63,28,235,127,63,92,235,127,63,155,235,127,63,218,235,127,63,24,236,127,63,86,236,127,63,147,236,127,63,207,236,127,63,11,237,127,63,71,237,127,63,130,237,127,63,188,237,127,63,246,237,127,63,47,238,127,63,104,238,127,63,160,238,127,63,216,238,127,63,15,239,127,63,69,239,127,63,123,239,127,63,177,239,127,63,230,239,127,63,27,240,127,63,79,240,127,63,130,240,127,63,182,240,127,63,232,240,127,63,26,241,127,63,76,241,127,63,125,241,127,63,174,241,127,63,222,241,127,63,14,242,127,63,61,242,127,63,108,242,127,63,154,242,127,63,200,242,127,63,245,242,127,63,34,243,127,63,79,243,127,63,123,243,127,63,166,243,127,63,209,243,127,63,252,243,127,63,38,244,127,63,80,244,127,63,121,244,127,63,162,244,127,63,203,244,127,63,243,244,127,63,27,245,127,63,66,245,127,63,105,245,127,63,143,245,127,63,181,245,127,63,219,245,127,63,0,246,127,63,37,246,127,63,73,246,127,63,109,246,127,63,145,246,127,63,180,246,127,63,215,246,127,63,250,246,127,63,28,247,127,63,62,247,127,63,95,247,127,63,128,247,127,63,160,247,127,63,193,247,127,63,225,247,127,63,0,248,127,63,31,248,127,63,62,248,127,63,93,248,127,63,123,248,127,63,152,248,127,63,182,248,127,63,211,248,127,63,240,248,127,63,12,249,127,63,40,249,127,63,68,249,127,63,95,249,127,63,122,249,127,63,149,249,127,63,175,249,127,63,202,249,127,63,227,249,127,63,253,249,127,63,22,250,127,63,47,250,127,63,71,250,127,63,96,250,127,63,120,250,127,63,143,250,127,63,166,250,127,63,190,250,127,63,212,250,127,63,235,250,127,63,1,251,127,63,23,251,127,63,44,251,127,63,66,251,127,63,87,251,127,63,108,251,127,63,128,251,127,63,148,251,127,63,168,251,127,63,188,251,127,63,208,251,127,63,227,251,127,63,246,251,127,63,8,252,127,63,27,252,127,63,45,252,127,63,63,252,127,63,81,252,127,63,98,252,127,63,115,252,127,63,132,252,127,63,149,252,127,63,165,252,127,63,182,252,127,63,198,252,127,63,213,252,127,63,229,252,127,63,244,252,127,63,3,253,127,63,18,253,127,63,33,253,127,63,47,253,127,63,62,253,127,63,76,253,127,63,89,253,127,63,103,253,127,63,116,253,127,63,130,253,127,63,143,253,127,63,155,253,127,63,168,253,127,63,181,253,127,63,193,253,127,63,205,253,127,63,217,253,127,63,228,253,127,63,240,253,127,63,251,253,127,63,6,254,127,63,17,254,127,63,28,254,127,63,38,254,127,63,49,254,127,63,59,254,127,63,69,254,127,63,79,254,127,63,89,254,127,63,98,254,127,63,108,254,127,63,117,254,127,63,126,254,127,63,135,254,127,63,144,254,127,63,152,254,127,63,161,254,127,63,169,254,127,63,177,254,127,63,185,254,127,63,193,254,127,63,201,254,127,63,208,254,127,63,216,254,127,63,223,254,127,63,230,254,127,63,237,254,127,63,244,254,127,63,251,254,127,63,2,255,127,63,8,255,127,63,14,255,127,63,21,255,127,63,27,255,127,63,33,255,127,63,39,255,127,63,45,255,127,63,50,255,127,63,56,255,127,63,61,255,127,63,67,255,127,63,72,255,127,63,77,255,127,63,82,255,127,63,87,255,127,63,92,255,127,63,96,255,127,63,101,255,127,63,105,255,127,63,110,255,127,63,114,255,127,63,118,255,127,63,122,255,127,63,126,255,127,63,130,255,127,63,134,255,127,63,138,255,127,63,142,255,127,63,145,255,127,63,149,255,127,63,152,255,127,63,155,255,127,63,159,255,127,63,162,255,127,63,165,255,127,63,168,255,127,63,171,255,127,63,174,255,127,63,176,255,127,63,179,255,127,63,182,255,127,63,184,255,127,63,187,255,127,63,189,255,127,63,192,255,127,63,194,255,127,63,196,255,127,63,198,255,127,63,201,255,127,63,203,255,127,63,205,255,127,63,207,255,127,63,209,255,127,63,210,255,127,63,212,255,127,63,214,255,127,63,216,255,127,63,217,255,127,63,219,255,127,63,220,255,127,63,222,255,127,63,223,255,127,63,225,255,127,63,226,255,127,63,227,255,127,63,229,255,127,63,230,255,127,63,231,255,127,63,232,255,127,63,233,255,127,63,234,255,127,63,235,255,127,63,236,255,127,63,237,255,127,63,238,255,127,63,239,255,127,63,240,255,127,63,241,255,127,63,241,255,127,63,242,255,127,63,243,255,127,63,244,255,127,63,244,255,127,63,245,255,127,63,246,255,127,63,246,255,127,63,247,255,127,63,247,255,127,63,248,255,127,63,248,255,127,63,249,255,127,63,249,255,127,63,250,255,127,63,250,255,127,63,250,255,127,63,251,255,127,63,251,255,127,63,251,255,127,63,252,255,127,63,252,255,127,63,252,255,127,63,253,255,127,63,253,255,127,63,253,255,127,63,253,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,69,78,67,79,68,69,82,0,79,103,103,86,111,114,98,105,115,69,110,99,111,100,101,114,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"i8",L3,x.GLOBAL_BASE+551416);var p8=x.alignMemory(d3(12,"i8",xs),8);K4(p8%8==0);function zm(i){q9[p8]=q9[i],q9[p8+1]=q9[i+1],q9[p8+2]=q9[i+2],q9[p8+3]=q9[i+3]}function gr(i){q9[p8]=q9[i],q9[p8+1]=q9[i+1],q9[p8+2]=q9[i+2],q9[p8+3]=q9[i+3],q9[p8+4]=q9[i+4],q9[p8+5]=q9[i+5],q9[p8+6]=q9[i+6],q9[p8+7]=q9[i+7]}var Yi=Vm,Po=H$,Us=0;function Os(i){return D9[Us>>2]=i,i}var L2={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function Ip(i){switch(i){case 30:return qm;case 85:return Gr/qm;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return typeof navigator=="object"&&navigator.hardwareConcurrency||1}return Os(L2.EINVAL),-1}A._memset=sv;var dp=!0;A._strlen=tv,A._strcat=iv,A._bitshift64Shl=$v;function wk(){A.abort()}A._i64Add=rv;var kk=Fe,vk={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"},Rn={ttys:[],init:function(){},shutdown:function(){},register:function(i,$){Rn.ttys[i]={input:[],output:[],ops:$},k.registerDevice(i,Rn.stream_ops)},stream_ops:{open:function(i){var $=Rn.ttys[i.node.rdev];if(!$)throw new k.ErrnoError(L2.ENODEV);i.tty=$,i.seekable=!1},close:function(i){i.tty.ops.flush(i.tty)},flush:function(i){i.tty.ops.flush(i.tty)},read:function(i,$,h,u,O){if(!i.tty||!i.tty.ops.get_char)throw new k.ErrnoError(L2.ENXIO);for(var e=0,Z0=0;Z00?$=u.slice(0,O).toString("utf-8"):$=null}else typeof window<"u"&&typeof window.prompt=="function"?($=window.prompt("Input: "),$!==null&&($+=` `)):typeof readline=="function"&&($=readline(),$!==null&&($+=` -`));if(!$)return null;i.input=Nr($,!0)}return i.input.shift()},put_char:function(i,$){$===null||$===10?(A.print(Fs(i.output,0)),i.output=[]):$!=0&&i.output.push($)},flush:function(i){i.output&&i.output.length>0&&(A.print(Fs(i.output,0)),i.output=[])}},default_tty1_ops:{put_char:function(i,$){$===null||$===10?(A.printErr(Fs(i.output,0)),i.output=[]):$!=0&&i.output.push($)},flush:function(i){i.output&&i.output.length>0&&(A.printErr(Fs(i.output,0)),i.output=[])}}},w9={ops_table:null,mount:function(i){return w9.createNode(null,"/",16895,0)},createNode:function(i,$,h,u){if(k.isBlkdev(h)||k.isFIFO(h))throw new k.ErrnoError(L2.EPERM);w9.ops_table||(w9.ops_table={dir:{node:{getattr:w9.node_ops.getattr,setattr:w9.node_ops.setattr,lookup:w9.node_ops.lookup,mknod:w9.node_ops.mknod,rename:w9.node_ops.rename,unlink:w9.node_ops.unlink,rmdir:w9.node_ops.rmdir,readdir:w9.node_ops.readdir,symlink:w9.node_ops.symlink},stream:{llseek:w9.stream_ops.llseek}},file:{node:{getattr:w9.node_ops.getattr,setattr:w9.node_ops.setattr},stream:{llseek:w9.stream_ops.llseek,read:w9.stream_ops.read,write:w9.stream_ops.write,allocate:w9.stream_ops.allocate,mmap:w9.stream_ops.mmap,msync:w9.stream_ops.msync}},link:{node:{getattr:w9.node_ops.getattr,setattr:w9.node_ops.setattr,readlink:w9.node_ops.readlink},stream:{}},chrdev:{node:{getattr:w9.node_ops.getattr,setattr:w9.node_ops.setattr},stream:k.chrdev_stream_ops}});var O=k.createNode(i,$,h,u);return k.isDir(O.mode)?(O.node_ops=w9.ops_table.dir.node,O.stream_ops=w9.ops_table.dir.stream,O.contents={}):k.isFile(O.mode)?(O.node_ops=w9.ops_table.file.node,O.stream_ops=w9.ops_table.file.stream,O.usedBytes=0,O.contents=null):k.isLink(O.mode)?(O.node_ops=w9.ops_table.link.node,O.stream_ops=w9.ops_table.link.stream):k.isChrdev(O.mode)&&(O.node_ops=w9.ops_table.chrdev.node,O.stream_ops=w9.ops_table.chrdev.stream),O.timestamp=Date.now(),i&&(i.contents[$]=O),O},getFileDataAsRegularArray:function(i){if(i.contents&&i.contents.subarray){for(var $=[],h=0;hi.contents.length&&(i.contents=w9.getFileDataAsRegularArray(i),i.usedBytes=i.contents.length),!i.contents||i.contents.subarray){var h=i.contents?i.contents.buffer.byteLength:0;if(h>=$)return;var u=1024*1024;$=Math.max($,h*(h0&&i.contents.set(O.subarray(0,i.usedBytes),0);return}for(!i.contents&&$>0&&(i.contents=[]);i.contents.length<$;)i.contents.push(0)},resizeFileStorage:function(i,$){if(i.usedBytes!=$){if($==0){i.contents=null,i.usedBytes=0;return}if(!i.contents||i.contents.subarray){var h=i.contents;i.contents=new Uint8Array(new ArrayBuffer($)),h&&i.contents.set(h.subarray(0,Math.min($,i.usedBytes))),i.usedBytes=$;return}if(i.contents||(i.contents=[]),i.contents.length>$)i.contents.length=$;else for(;i.contents.length<$;)i.contents.push(0);i.usedBytes=$}},node_ops:{getattr:function(i){var $={};return $.dev=k.isChrdev(i.mode)?i.id:1,$.ino=i.id,$.mode=i.mode,$.nlink=1,$.uid=0,$.gid=0,$.rdev=i.rdev,k.isDir(i.mode)?$.size=4096:k.isFile(i.mode)?$.size=i.usedBytes:k.isLink(i.mode)?$.size=i.link.length:$.size=0,$.atime=new Date(i.timestamp),$.mtime=new Date(i.timestamp),$.ctime=new Date(i.timestamp),$.blksize=4096,$.blocks=Math.ceil($.size/$.blksize),$},setattr:function(i,$){$.mode!==void 0&&(i.mode=$.mode),$.timestamp!==void 0&&(i.timestamp=$.timestamp),$.size!==void 0&&w9.resizeFileStorage(i,$.size)},lookup:function(i,$){throw k.genericErrors[L2.ENOENT]},mknod:function(i,$,h,u){return w9.createNode(i,$,h,u)},rename:function(i,$,h){if(k.isDir(i.mode)){var u;try{u=k.lookupNode($,h)}catch{}if(u)for(var O in u.contents)throw new k.ErrnoError(L2.ENOTEMPTY)}delete i.parent.contents[i.name],i.name=h,$.contents[h]=i,i.parent=$},unlink:function(i,$){delete i.contents[$]},rmdir:function(i,$){var h=k.lookupNode(i,$);for(var u in h.contents)throw new k.ErrnoError(L2.ENOTEMPTY);delete i.contents[$]},readdir:function(i){var $=[".",".."];for(var h in i.contents)i.contents.hasOwnProperty(h)&&$.push(h);return $},symlink:function(i,$,h){var u=w9.createNode(i,$,41471,0);return u.link=h,u},readlink:function(i){if(!k.isLink(i.mode))throw new k.ErrnoError(L2.EINVAL);return i.link}},stream_ops:{read:function(i,$,h,u,O){var e=i.node.contents;if(O>=i.node.usedBytes)return 0;var Z0=Math.min(i.node.usedBytes-O,u);if(V4(Z0>=0),Z0>8&&e.subarray)$.set(e.subarray(O,O+Z0),h);else for(var t1=0;t10||O+uM5.timestamp)&&(O.push(Q5),u++)});var e=[];if(Object.keys($.entries).forEach(function(Q5){var p2=$.entries[Q5],M5=i.entries[Q5];M5||(e.push(Q5),u++)}),!u)return h(null);var Z0=!1,t1=0,b2=i.type==="remote"?i.db:$.db,s=b2.transaction([m7.DB_STORE_NAME],"readwrite"),o1=s.objectStore(m7.DB_STORE_NAME);function m(Q5){if(Q5)return m.errored?void 0:(m.errored=!0,h(Q5));if(++t1>=u)return h(null)}s.onerror=function(Q5){m(this.error),Q5.preventDefault()},O.sort().forEach(function(Q5){$.type==="local"?m7.loadRemoteEntry(o1,Q5,function(p2,M5){if(p2)return m(p2);m7.storeLocalEntry(Q5,M5,m)}):m7.loadLocalEntry(Q5,function(p2,M5){if(p2)return m(p2);m7.storeRemoteEntry(o1,Q5,M5,m)})}),e.sort().reverse().forEach(function(Q5){$.type==="local"?m7.removeLocalEntry(Q5,m):m7.removeRemoteEntry(o1,Q5,m)})}},l8={isWindows:!1,staticInit:function(){l8.isWindows=!!process.platform.match(/^win/)},mount:function(i){return V4(d),l8.createNode(null,"/",l8.getMode(i.opts.root),0)},createNode:function(i,$,h,u){if(!k.isDir(h)&&!k.isFile(h)&&!k.isLink(h))throw new k.ErrnoError(L2.EINVAL);var O=k.createNode(i,$,h);return O.node_ops=l8.node_ops,O.stream_ops=l8.stream_ops,O},getMode:function(i){var $;try{$=B7.lstatSync(i),l8.isWindows&&($.mode=$.mode|($.mode&146)>>1)}catch(h){throw h.code?new k.ErrnoError(L2[h.code]):h}return $.mode},realPath:function(i){for(var $=[];i.parent!==i;)$.push(i.name),i=i.parent;return $.push(i.mount.opts.root),$.reverse(),$9.join.apply(null,$)},flagsToPermissionStringMap:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},flagsToPermissionString:function(i){return i in l8.flagsToPermissionStringMap?l8.flagsToPermissionStringMap[i]:i},node_ops:{getattr:function(i){var $=l8.realPath(i),h;try{h=B7.lstatSync($)}catch(u){throw u.code?new k.ErrnoError(L2[u.code]):u}return l8.isWindows&&!h.blksize&&(h.blksize=4096),l8.isWindows&&!h.blocks&&(h.blocks=(h.size+h.blksize-1)/h.blksize|0),{dev:h.dev,ino:h.ino,mode:h.mode,nlink:h.nlink,uid:h.uid,gid:h.gid,rdev:h.rdev,size:h.size,atime:h.atime,mtime:h.mtime,ctime:h.ctime,blksize:h.blksize,blocks:h.blocks}},setattr:function(i,$){var h=l8.realPath(i);try{if($.mode!==void 0&&(B7.chmodSync(h,$.mode),i.mode=$.mode),$.timestamp!==void 0){var u=new Date($.timestamp);B7.utimesSync(h,u,u)}$.size!==void 0&&B7.truncateSync(h,$.size)}catch(O){throw O.code?new k.ErrnoError(L2[O.code]):O}},lookup:function(i,$){var h=$9.join2(l8.realPath(i),$),u=l8.getMode(h);return l8.createNode(i,$,u)},mknod:function(i,$,h,u){var O=l8.createNode(i,$,h,u),e=l8.realPath(O);try{k.isDir(O.mode)?B7.mkdirSync(e,O.mode):B7.writeFileSync(e,"",{mode:O.mode})}catch(Z0){throw Z0.code?new k.ErrnoError(L2[Z0.code]):Z0}return O},rename:function(i,$,h){var u=l8.realPath(i),O=$9.join2(l8.realPath($),h);try{B7.renameSync(u,O)}catch(e){throw e.code?new k.ErrnoError(L2[e.code]):e}},unlink:function(i,$){var h=$9.join2(l8.realPath(i),$);try{B7.unlinkSync(h)}catch(u){throw u.code?new k.ErrnoError(L2[u.code]):u}},rmdir:function(i,$){var h=$9.join2(l8.realPath(i),$);try{B7.rmdirSync(h)}catch(u){throw u.code?new k.ErrnoError(L2[u.code]):u}},readdir:function(i){var $=l8.realPath(i);try{return B7.readdirSync($)}catch(h){throw h.code?new k.ErrnoError(L2[h.code]):h}},symlink:function(i,$,h){var u=$9.join2(l8.realPath(i),$);try{B7.symlinkSync(h,u)}catch(O){throw O.code?new k.ErrnoError(L2[O.code]):O}},readlink:function(i){var $=l8.realPath(i);try{return $=B7.readlinkSync($),$=mp.relative(mp.resolve(i.mount.opts.root),$),$}catch(h){throw h.code?new k.ErrnoError(L2[h.code]):h}}},stream_ops:{open:function(i){var $=l8.realPath(i.node);try{k.isFile(i.node.mode)&&(i.nfd=B7.openSync($,l8.flagsToPermissionString(i.flags)))}catch(h){throw h.code?new k.ErrnoError(L2[h.code]):h}},close:function(i){try{k.isFile(i.node.mode)&&i.nfd&&B7.closeSync(i.nfd)}catch($){throw $.code?new k.ErrnoError(L2[$.code]):$}},read:function(i,$,h,u,O){if(u===0)return 0;var e=new Buffer(u),Z0;try{Z0=B7.readSync(i.nfd,e,0,u,O)}catch(b2){throw new k.ErrnoError(L2[b2.code])}if(Z0>0)for(var t1=0;t18)throw new k.ErrnoError(L2.ELOOP);for(var O=$9.normalizeArray(i.split("/").filter(function(Q5){return!!Q5}),!1),e=k.root,Z0="/",t1=0;t140)throw new k.ErrnoError(L2.ELOOP)}}return{path:Z0,node:e}},getPath:function(i){for(var $;;){if(k.isRoot(i)){var h=i.mount.mountpoint;return $?h[h.length-1]!=="/"?h+"/"+$:h+$:h}$=$?i.name+"/"+$:i.name,i=i.parent}},hashName:function(i,$){for(var h=0,u=0;u<$.length;u++)h=(h<<5)-h+$.charCodeAt(u)|0;return(i+h>>>0)%k.nameTable.length},hashAddNode:function(i){var $=k.hashName(i.parent.id,i.name);i.name_next=k.nameTable[$],k.nameTable[$]=i},hashRemoveNode:function(i){var $=k.hashName(i.parent.id,i.name);if(k.nameTable[$]===i)k.nameTable[$]=i.name_next;else for(var h=k.nameTable[$];h;){if(h.name_next===i){h.name_next=i.name_next;break}h=h.name_next}},lookupNode:function(i,$){var h=k.mayLookup(i);if(h)throw new k.ErrnoError(h,i);for(var u=k.hashName(i.id,$),O=k.nameTable[u];O;O=O.name_next){var e=O.name;if(O.parent.id===i.id&&e===$)return O}return k.lookup(i,$)},createNode:function(i,$,h,u){if(!k.FSNode){k.FSNode=function(t1,b2,s,o1){t1||(t1=this),this.parent=t1,this.mount=t1.mount,this.mounted=null,this.id=k.nextInode++,this.name=b2,this.mode=s,this.node_ops={},this.stream_ops={},this.rdev=o1},k.FSNode.prototype={};var O=365,e=146;Object.defineProperties(k.FSNode.prototype,{read:{get:function(){return(this.mode&O)===O},set:function(t1){t1?this.mode|=O:this.mode&=~O}},write:{get:function(){return(this.mode&e)===e},set:function(t1){t1?this.mode|=e:this.mode&=~e}},isFolder:{get:function(){return k.isDir(this.mode)}},isDevice:{get:function(){return k.isChrdev(this.mode)}}})}var Z0=new k.FSNode(i,$,h,u);return k.hashAddNode(Z0),Z0},destroyNode:function(i){k.hashRemoveNode(i)},isRoot:function(i){return i===i.parent},isMountpoint:function(i){return!!i.mounted},isFile:function(i){return(i&61440)===32768},isDir:function(i){return(i&61440)===16384},isLink:function(i){return(i&61440)===40960},isChrdev:function(i){return(i&61440)===8192},isBlkdev:function(i){return(i&61440)===24576},isFIFO:function(i){return(i&61440)===4096},isSocket:function(i){return(i&49152)===49152},flagModes:{r:0,rs:1052672,"r+":2,w:577,wx:705,xw:705,"w+":578,"wx+":706,"xw+":706,a:1089,ax:1217,xa:1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function(i){var $=k.flagModes[i];if(typeof $>"u")throw new Error("Unknown file open mode: "+i);return $},flagsToPermissionString:function(i){var $=i&2097155,h=["r","w","rw"][$];return i&512&&(h+="w"),h},nodePermissions:function(i,$){return k.ignorePermissions?0:$.indexOf("r")!==-1&&!(i.mode&292)||$.indexOf("w")!==-1&&!(i.mode&146)||$.indexOf("x")!==-1&&!(i.mode&73)?L2.EACCES:0},mayLookup:function(i){var $=k.nodePermissions(i,"x");return $||(i.node_ops.lookup?0:L2.EACCES)},mayCreate:function(i,$){try{var h=k.lookupNode(i,$);return L2.EEXIST}catch{}return k.nodePermissions(i,"wx")},mayDelete:function(i,$,h){var u;try{u=k.lookupNode(i,$)}catch(e){return e.errno}var O=k.nodePermissions(i,"wx");if(O)return O;if(h){if(!k.isDir(u.mode))return L2.ENOTDIR;if(k.isRoot(u)||k.getPath(u)===k.cwd())return L2.EBUSY}else if(k.isDir(u.mode))return L2.EISDIR;return 0},mayOpen:function(i,$){return i?k.isLink(i.mode)?L2.ELOOP:k.isDir(i.mode)&&($&2097155||$&512)?L2.EISDIR:k.nodePermissions(i,k.flagsToPermissionString($)):L2.ENOENT},MAX_OPEN_FDS:4096,nextfd:function(i,$){i=i||0,$=$||k.MAX_OPEN_FDS;for(var h=i;h<=$;h++)if(!k.streams[h])return h;throw new k.ErrnoError(L2.EMFILE)},getStream:function(i){return k.streams[i]},createStream:function(i,$,h){k.FSStream||(k.FSStream=function(){},k.FSStream.prototype={},Object.defineProperties(k.FSStream.prototype,{object:{get:function(){return this.node},set:function(Z0){this.node=Z0}},isRead:{get:function(){return(this.flags&2097155)!==1}},isWrite:{get:function(){return(this.flags&2097155)!==0}},isAppend:{get:function(){return this.flags&1024}}}));var u=new k.FSStream;for(var O in i)u[O]=i[O];i=u;var e=k.nextfd($,h);return i.fd=e,k.streams[e]=i,i},closeStream:function(i){k.streams[i]=null},getStreamFromPtr:function(i){return k.streams[i-1]},getPtrForStream:function(i){return i?i.fd+1:0},chrdev_stream_ops:{open:function(i){var $=k.getDevice(i.node.rdev);i.stream_ops=$.stream_ops,i.stream_ops.open&&i.stream_ops.open(i)},llseek:function(){throw new k.ErrnoError(L2.ESPIPE)}},major:function(i){return i>>8},minor:function(i){return i&255},makedev:function(i,$){return i<<8|$},registerDevice:function(i,$){k.devices[i]={stream_ops:$}},getDevice:function(i){return k.devices[i]},getMounts:function(i){for(var $=[],h=[i];h.length;){var u=h.pop();$.push(u),h.push.apply(h,u.mounts)}return $},syncfs:function(i,$){typeof i=="function"&&($=i,i=!1);var h=k.getMounts(k.root.mount),u=0;function O(e){if(e)return O.errored?void 0:(O.errored=!0,$(e));++u>=h.length&&$(null)}h.forEach(function(e){if(!e.type.syncfs)return O(null);e.type.syncfs(e,i,O)})},mount:function(i,$,h){var u=h==="/",O=!h,e;if(u&&k.root)throw new k.ErrnoError(L2.EBUSY);if(!u&&!O){var Z0=k.lookupPath(h,{follow_mount:!1});if(h=Z0.path,e=Z0.node,k.isMountpoint(e))throw new k.ErrnoError(L2.EBUSY);if(!k.isDir(e.mode))throw new k.ErrnoError(L2.ENOTDIR)}var t1={type:i,opts:$,mountpoint:h,mounts:[]},b2=i.mount(t1);return b2.mount=t1,t1.root=b2,u?k.root=b2:e&&(e.mounted=t1,e.mount&&e.mount.mounts.push(t1)),b2},unmount:function(i){var $=k.lookupPath(i,{follow_mount:!1});if(!k.isMountpoint($.node))throw new k.ErrnoError(L2.EINVAL);var h=$.node,u=h.mounted,O=k.getMounts(u);Object.keys(k.nameTable).forEach(function(Z0){for(var t1=k.nameTable[Z0];t1;){var b2=t1.name_next;O.indexOf(t1.mount)!==-1&&k.destroyNode(t1),t1=b2}}),h.mounted=null;var e=h.mount.mounts.indexOf(u);V4(e!==-1),h.mount.mounts.splice(e,1)},lookup:function(i,$){return i.node_ops.lookup(i,$)},mknod:function(i,$,h){var u=k.lookupPath(i,{parent:!0}),O=u.node,e=$9.basename(i);if(!e||e==="."||e==="..")throw new k.ErrnoError(L2.EINVAL);var Z0=k.mayCreate(O,e);if(Z0)throw new k.ErrnoError(Z0);if(!O.node_ops.mknod)throw new k.ErrnoError(L2.EPERM);return O.node_ops.mknod(O,e,$,h)},create:function(i,$){return $=$!==void 0?$:438,$&=4095,$|=32768,k.mknod(i,$,0)},mkdir:function(i,$){return $=$!==void 0?$:511,$&=1023,$|=16384,k.mknod(i,$,0)},mkdev:function(i,$,h){return typeof h>"u"&&(h=$,$=438),$|=8192,k.mknod(i,$,h)},symlink:function(i,$){if(!$9.resolve(i))throw new k.ErrnoError(L2.ENOENT);var h=k.lookupPath($,{parent:!0}),u=h.node;if(!u)throw new k.ErrnoError(L2.ENOENT);var O=$9.basename($),e=k.mayCreate(u,O);if(e)throw new k.ErrnoError(e);if(!u.node_ops.symlink)throw new k.ErrnoError(L2.EPERM);return u.node_ops.symlink(u,O,i)},rename:function(i,$){var h=$9.dirname(i),u=$9.dirname($),O=$9.basename(i),e=$9.basename($),Z0,t1,b2;try{Z0=k.lookupPath(i,{parent:!0}),t1=Z0.node,Z0=k.lookupPath($,{parent:!0}),b2=Z0.node}catch{throw new k.ErrnoError(L2.EBUSY)}if(!t1||!b2)throw new k.ErrnoError(L2.ENOENT);if(t1.mount!==b2.mount)throw new k.ErrnoError(L2.EXDEV);var s=k.lookupNode(t1,O),o1=$9.relative(i,u);if(o1.charAt(0)!==".")throw new k.ErrnoError(L2.EINVAL);if(o1=$9.relative($,h),o1.charAt(0)!==".")throw new k.ErrnoError(L2.ENOTEMPTY);var m;try{m=k.lookupNode(b2,e)}catch{}if(s!==m){var Q5=k.isDir(s.mode),p2=k.mayDelete(t1,O,Q5);if(p2)throw new k.ErrnoError(p2);if(p2=m?k.mayDelete(b2,e,Q5):k.mayCreate(b2,e),p2)throw new k.ErrnoError(p2);if(!t1.node_ops.rename)throw new k.ErrnoError(L2.EPERM);if(k.isMountpoint(s)||m&&k.isMountpoint(m))throw new k.ErrnoError(L2.EBUSY);if(b2!==t1&&(p2=k.nodePermissions(t1,"w"),p2))throw new k.ErrnoError(p2);try{k.trackingDelegate.willMovePath&&k.trackingDelegate.willMovePath(i,$)}catch(M5){console.log("FS.trackingDelegate['willMovePath']('"+i+"', '"+$+"') threw an exception: "+M5.message)}k.hashRemoveNode(s);try{t1.node_ops.rename(s,b2,e)}catch(M5){throw M5}finally{k.hashAddNode(s)}try{k.trackingDelegate.onMovePath&&k.trackingDelegate.onMovePath(i,$)}catch(M5){console.log("FS.trackingDelegate['onMovePath']('"+i+"', '"+$+"') threw an exception: "+M5.message)}}},rmdir:function(i){var $=k.lookupPath(i,{parent:!0}),h=$.node,u=$9.basename(i),O=k.lookupNode(h,u),e=k.mayDelete(h,u,!0);if(e)throw new k.ErrnoError(e);if(!h.node_ops.rmdir)throw new k.ErrnoError(L2.EPERM);if(k.isMountpoint(O))throw new k.ErrnoError(L2.EBUSY);try{k.trackingDelegate.willDeletePath&&k.trackingDelegate.willDeletePath(i)}catch(Z0){console.log("FS.trackingDelegate['willDeletePath']('"+i+"') threw an exception: "+Z0.message)}h.node_ops.rmdir(h,u),k.destroyNode(O);try{k.trackingDelegate.onDeletePath&&k.trackingDelegate.onDeletePath(i)}catch(Z0){console.log("FS.trackingDelegate['onDeletePath']('"+i+"') threw an exception: "+Z0.message)}},readdir:function(i){var $=k.lookupPath(i,{follow:!0}),h=$.node;if(!h.node_ops.readdir)throw new k.ErrnoError(L2.ENOTDIR);return h.node_ops.readdir(h)},unlink:function(i){var $=k.lookupPath(i,{parent:!0}),h=$.node,u=$9.basename(i),O=k.lookupNode(h,u),e=k.mayDelete(h,u,!1);if(e)throw e===L2.EISDIR&&(e=L2.EPERM),new k.ErrnoError(e);if(!h.node_ops.unlink)throw new k.ErrnoError(L2.EPERM);if(k.isMountpoint(O))throw new k.ErrnoError(L2.EBUSY);try{k.trackingDelegate.willDeletePath&&k.trackingDelegate.willDeletePath(i)}catch(Z0){console.log("FS.trackingDelegate['willDeletePath']('"+i+"') threw an exception: "+Z0.message)}h.node_ops.unlink(h,u),k.destroyNode(O);try{k.trackingDelegate.onDeletePath&&k.trackingDelegate.onDeletePath(i)}catch(Z0){console.log("FS.trackingDelegate['onDeletePath']('"+i+"') threw an exception: "+Z0.message)}},readlink:function(i){var $=k.lookupPath(i),h=$.node;if(!h)throw new k.ErrnoError(L2.ENOENT);if(!h.node_ops.readlink)throw new k.ErrnoError(L2.EINVAL);return $9.resolve(k.getPath($.node.parent),h.node_ops.readlink(h))},stat:function(i,$){var h=k.lookupPath(i,{follow:!$}),u=h.node;if(!u)throw new k.ErrnoError(L2.ENOENT);if(!u.node_ops.getattr)throw new k.ErrnoError(L2.EPERM);return u.node_ops.getattr(u)},lstat:function(i){return k.stat(i,!0)},chmod:function(i,$,h){var u;if(typeof i=="string"){var O=k.lookupPath(i,{follow:!h});u=O.node}else u=i;if(!u.node_ops.setattr)throw new k.ErrnoError(L2.EPERM);u.node_ops.setattr(u,{mode:$&4095|u.mode&-4096,timestamp:Date.now()})},lchmod:function(i,$){k.chmod(i,$,!0)},fchmod:function(i,$){var h=k.getStream(i);if(!h)throw new k.ErrnoError(L2.EBADF);k.chmod(h.node,$)},chown:function(i,$,h,u){var O;if(typeof i=="string"){var e=k.lookupPath(i,{follow:!u});O=e.node}else O=i;if(!O.node_ops.setattr)throw new k.ErrnoError(L2.EPERM);O.node_ops.setattr(O,{timestamp:Date.now()})},lchown:function(i,$,h){k.chown(i,$,h,!0)},fchown:function(i,$,h){var u=k.getStream(i);if(!u)throw new k.ErrnoError(L2.EBADF);k.chown(u.node,$,h)},truncate:function(i,$){if($<0)throw new k.ErrnoError(L2.EINVAL);var h;if(typeof i=="string"){var u=k.lookupPath(i,{follow:!0});h=u.node}else h=i;if(!h.node_ops.setattr)throw new k.ErrnoError(L2.EPERM);if(k.isDir(h.mode))throw new k.ErrnoError(L2.EISDIR);if(!k.isFile(h.mode))throw new k.ErrnoError(L2.EINVAL);var O=k.nodePermissions(h,"w");if(O)throw new k.ErrnoError(O);h.node_ops.setattr(h,{size:$,timestamp:Date.now()})},ftruncate:function(i,$){var h=k.getStream(i);if(!h)throw new k.ErrnoError(L2.EBADF);if(!(h.flags&2097155))throw new k.ErrnoError(L2.EINVAL);k.truncate(h.node,$)},utime:function(i,$,h){var u=k.lookupPath(i,{follow:!0}),O=u.node;O.node_ops.setattr(O,{timestamp:Math.max($,h)})},open:function(i,$,h,u,O){if(i==="")throw new k.ErrnoError(L2.ENOENT);$=typeof $=="string"?k.modeStringToFlags($):$,h=typeof h>"u"?438:h,$&64?h=h&4095|32768:h=0;var e;if(typeof i=="object")e=i;else{i=$9.normalize(i);try{var Z0=k.lookupPath(i,{follow:!($&131072)});e=Z0.node}catch{}}var t1=!1;if($&64)if(e){if($&128)throw new k.ErrnoError(L2.EEXIST)}else e=k.mknod(i,h,0),t1=!0;if(!e)throw new k.ErrnoError(L2.ENOENT);if(k.isChrdev(e.mode)&&($&=-513),!t1){var b2=k.mayOpen(e,$);if(b2)throw new k.ErrnoError(b2)}$&512&&k.truncate(e,0),$&=-641;var s=k.createStream({node:e,path:k.getPath(e),flags:$,seekable:!0,position:0,stream_ops:e.stream_ops,ungotten:[],error:!1},u,O);s.stream_ops.open&&s.stream_ops.open(s),A.logReadFiles&&!($&1)&&(k.readFiles||(k.readFiles={}),i in k.readFiles||(k.readFiles[i]=1,A.printErr("read file: "+i)));try{if(k.trackingDelegate.onOpenFile){var o1=0;($&2097155)!==1&&(o1|=k.tracking.openFlags.READ),$&2097155&&(o1|=k.tracking.openFlags.WRITE),k.trackingDelegate.onOpenFile(i,o1)}}catch(m){console.log("FS.trackingDelegate['onOpenFile']('"+i+"', flags) threw an exception: "+m.message)}return s},close:function(i){try{i.stream_ops.close&&i.stream_ops.close(i)}catch($){throw $}finally{k.closeStream(i.fd)}},llseek:function(i,$,h){if(!i.seekable||!i.stream_ops.llseek)throw new k.ErrnoError(L2.ESPIPE);return i.position=i.stream_ops.llseek(i,$,h),i.ungotten=[],i.position},read:function(i,$,h,u,O){if(u<0||O<0)throw new k.ErrnoError(L2.EINVAL);if((i.flags&2097155)===1)throw new k.ErrnoError(L2.EBADF);if(k.isDir(i.node.mode))throw new k.ErrnoError(L2.EISDIR);if(!i.stream_ops.read)throw new k.ErrnoError(L2.EINVAL);var e=!0;if(typeof O>"u")O=i.position,e=!1;else if(!i.seekable)throw new k.ErrnoError(L2.ESPIPE);var Z0=i.stream_ops.read(i,$,h,u,O);return e||(i.position+=Z0),Z0},write:function(i,$,h,u,O,e){if(u<0||O<0)throw new k.ErrnoError(L2.EINVAL);if(!(i.flags&2097155))throw new k.ErrnoError(L2.EBADF);if(k.isDir(i.node.mode))throw new k.ErrnoError(L2.EISDIR);if(!i.stream_ops.write)throw new k.ErrnoError(L2.EINVAL);i.flags&1024&&k.llseek(i,0,2);var Z0=!0;if(typeof O>"u")O=i.position,Z0=!1;else if(!i.seekable)throw new k.ErrnoError(L2.ESPIPE);var t1=i.stream_ops.write(i,$,h,u,O,e);Z0||(i.position+=t1);try{i.path&&k.trackingDelegate.onWriteToFile&&k.trackingDelegate.onWriteToFile(i.path)}catch(b2){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+b2.message)}return t1},allocate:function(i,$,h){if($<0||h<=0)throw new k.ErrnoError(L2.EINVAL);if(!(i.flags&2097155))throw new k.ErrnoError(L2.EBADF);if(!k.isFile(i.node.mode)&&!k.isDir(node.mode))throw new k.ErrnoError(L2.ENODEV);if(!i.stream_ops.allocate)throw new k.ErrnoError(L2.EOPNOTSUPP);i.stream_ops.allocate(i,$,h)},mmap:function(i,$,h,u,O,e,Z0){if((i.flags&2097155)===1)throw new k.ErrnoError(L2.EACCES);if(!i.stream_ops.mmap)throw new k.ErrnoError(L2.ENODEV);return i.stream_ops.mmap(i,$,h,u,O,e,Z0)},msync:function(i,$,h,u,O){return!i||!i.stream_ops.msync?0:i.stream_ops.msync(i,$,h,u,O)},munmap:function(i){return 0},ioctl:function(i,$,h){if(!i.stream_ops.ioctl)throw new k.ErrnoError(L2.ENOTTY);return i.stream_ops.ioctl(i,$,h)},readFile:function(i,$){if($=$||{},$.flags=$.flags||"r",$.encoding=$.encoding||"binary",$.encoding!=="utf8"&&$.encoding!=="binary")throw new Error('Invalid encoding type "'+$.encoding+'"');var h,u=k.open(i,$.flags),O=k.stat(i),e=O.size,Z0=new Uint8Array(e);return k.read(u,Z0,0,e,0),$.encoding==="utf8"?h=Fs(Z0,0):$.encoding==="binary"&&(h=Z0),k.close(u),h},writeFile:function(i,$,h){if(h=h||{},h.flags=h.flags||"w",h.encoding=h.encoding||"utf8",h.encoding!=="utf8"&&h.encoding!=="binary")throw new Error('Invalid encoding type "'+h.encoding+'"');var u=k.open(i,h.flags,h.mode);if(h.encoding==="utf8"){var O=new Uint8Array(Ls($)+1),e=Dn($,O,0,O.length);k.write(u,O,0,e,0,h.canOwn)}else h.encoding==="binary"&&k.write(u,$,0,$.length,0,h.canOwn);k.close(u)},cwd:function(){return k.currentPath},chdir:function(i){var $=k.lookupPath(i,{follow:!0});if(!k.isDir($.node.mode))throw new k.ErrnoError(L2.ENOTDIR);var h=k.nodePermissions($.node,"x");if(h)throw new k.ErrnoError(h);k.currentPath=$.path},createDefaultDirectories:function(){k.mkdir("/tmp"),k.mkdir("/home"),k.mkdir("/home/web_user")},createDefaultDevices:function(){k.mkdir("/dev"),k.registerDevice(k.makedev(1,3),{read:function(){return 0},write:function(h,u,O,e,Z0){return e}}),k.mkdev("/dev/null",k.makedev(1,3)),Rn.register(k.makedev(5,0),Rn.default_tty_ops),Rn.register(k.makedev(6,0),Rn.default_tty1_ops),k.mkdev("/dev/tty",k.makedev(5,0)),k.mkdev("/dev/tty1",k.makedev(6,0));var i;if(typeof crypto<"u"){var $=new Uint8Array(1);i=function(){return crypto.getRandomValues($),$[0]}}else d?i=void 0:i=function(){return Math.random()*256|0};k.createDevice("/dev","random",i),k.createDevice("/dev","urandom",i),k.mkdir("/dev/shm"),k.mkdir("/dev/shm/tmp")},createStandardStreams:function(){A.stdin?k.createDevice("/dev","stdin",A.stdin):k.symlink("/dev/tty","/dev/stdin"),A.stdout?k.createDevice("/dev","stdout",null,A.stdout):k.symlink("/dev/tty","/dev/stdout"),A.stderr?k.createDevice("/dev","stderr",null,A.stderr):k.symlink("/dev/tty1","/dev/stderr");var i=k.open("/dev/stdin","r");D9[Sk>>2]=k.getPtrForStream(i),V4(i.fd===0,"invalid handle for stdin ("+i.fd+")");var $=k.open("/dev/stdout","w");D9[Dk>>2]=k.getPtrForStream($),V4($.fd===1,"invalid handle for stdout ("+$.fd+")");var h=k.open("/dev/stderr","w");D9[bk>>2]=k.getPtrForStream(h),V4(h.fd===2,"invalid handle for stderr ("+h.fd+")")},ensureErrnoError:function(){k.ErrnoError||(k.ErrnoError=function($,h){this.node=h,this.setErrno=function(u){this.errno=u;for(var O in L2)if(L2[O]===u){this.code=O;break}},this.setErrno($),this.message=vk[$]},k.ErrnoError.prototype=new Error,k.ErrnoError.prototype.constructor=k.ErrnoError,[L2.ENOENT].forEach(function(i){k.genericErrors[i]=new k.ErrnoError(i),k.genericErrors[i].stack=""}))},staticInit:function(){k.ensureErrnoError(),k.nameTable=new Array(4096),k.mount(w9,{},"/"),k.createDefaultDirectories(),k.createDefaultDevices()},init:function(i,$,h){V4(!k.init.initialized,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)"),k.init.initialized=!0,k.ensureErrnoError(),A.stdin=i||A.stdin,A.stdout=$||A.stdout,A.stderr=h||A.stderr,k.createStandardStreams()},quit:function(){k.init.initialized=!1;for(var i=0;ithis.length-1||Q5<0)){var p2=Q5%this.chunkSize,M5=Q5/this.chunkSize|0;return this.getter(M5)[p2]}},e.prototype.setDataGetter=function(Q5){this.getter=Q5},e.prototype.cacheLength=function(){var Q5=new XMLHttpRequest;if(Q5.open("HEAD",h,!1),Q5.send(null),!(Q5.status>=200&&Q5.status<300||Q5.status===304))throw new Error("Couldn't load "+h+". Status: "+Q5.status);var p2=Number(Q5.getResponseHeader("Content-length")),M5,b9=(M5=Q5.getResponseHeader("Accept-Ranges"))&&M5==="bytes",U9=1024*1024;b9||(U9=p2);var f4=function(J9,c8){if(J9>c8)throw new Error("invalid range ("+J9+", "+c8+") or no bytes requested!");if(c8>p2-1)throw new Error("only "+p2+" bytes available! programmer error!");var z4=new XMLHttpRequest;if(z4.open("GET",h,!1),p2!==U9&&z4.setRequestHeader("Range","bytes="+J9+"-"+c8),typeof Uint8Array<"u"&&(z4.responseType="arraybuffer"),z4.overrideMimeType&&z4.overrideMimeType("text/plain; charset=x-user-defined"),z4.send(null),!(z4.status>=200&&z4.status<300||z4.status===304))throw new Error("Couldn't load "+h+". Status: "+z4.status);return z4.response!==void 0?new Uint8Array(z4.response||[]):Nr(z4.responseText||"",!0)},Q8=this;Q8.setDataGetter(function(J9){var c8=J9*U9,z4=(J9+1)*U9-1;if(z4=Math.min(z4,p2-1),typeof Q8.chunks[J9]>"u"&&(Q8.chunks[J9]=f4(c8,z4)),typeof Q8.chunks[J9]>"u")throw new Error("doXHR failed!");return Q8.chunks[J9]}),this._length=p2,this._chunkSize=U9,this.lengthKnown=!0},typeof XMLHttpRequest<"u"){if(!b)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var Z0=new e;Object.defineProperty(Z0,"length",{get:function(){return this.lengthKnown||this.cacheLength(),this._length}}),Object.defineProperty(Z0,"chunkSize",{get:function(){return this.lengthKnown||this.cacheLength(),this._chunkSize}});var t1={isDevice:!1,contents:Z0}}else var t1={isDevice:!1,url:h};var b2=k.createFile(i,$,t1,u,O);t1.contents?b2.contents=t1.contents:t1.url&&(b2.contents=null,b2.url=t1.url),Object.defineProperty(b2,"usedBytes",{get:function(){return this.contents.length}});var s={},o1=Object.keys(b2.stream_ops);return o1.forEach(function(m){var Q5=b2.stream_ops[m];s[m]=function(){if(!k.forceLoadFile(b2))throw new k.ErrnoError(L2.EIO);return Q5.apply(null,arguments)}}),s.read=function(Q5,p2,M5,b9,U9){if(!k.forceLoadFile(b2))throw new k.ErrnoError(L2.EIO);var f4=Q5.node.contents;if(U9>=f4.length)return 0;var Q8=Math.min(f4.length-U9,b9);if(V4(Q8>=0),f4.slice)for(var J9=0;J9=0;u--){var O=i[u];O==="."?i.splice(u,1):O===".."?(i.splice(u,1),h++):h&&(i.splice(u,1),h--)}if($)for(;h--;h)i.unshift("..");return i},normalize:function(i){var $=i.charAt(0)==="/",h=i.substr(-1)==="/";return i=$9.normalizeArray(i.split("/").filter(function(u){return!!u}),!$).join("/"),!i&&!$&&(i="."),i&&h&&(i+="/"),($?"/":"")+i},dirname:function(i){var $=$9.splitPath(i),h=$[0],u=$[1];return!h&&!u?".":(u&&(u=u.substr(0,u.length-1)),h+u)},basename:function(i){if(i==="/")return"/";var $=i.lastIndexOf("/");return $===-1?i:i.substr($+1)},extname:function(i){return $9.splitPath(i)[3]},join:function(){var i=Array.prototype.slice.call(arguments,0);return $9.normalize(i.join("/"))},join2:function(i,$){return $9.normalize(i+"/"+$)},resolve:function(){for(var i="",$=!1,h=arguments.length-1;h>=-1&&!$;h--){var u=h>=0?arguments[h]:k.cwd();if(typeof u!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!u)return"";i=u+"/"+i,$=u.charAt(0)==="/"}return i=$9.normalizeArray(i.split("/").filter(function(O){return!!O}),!$).join("/"),($?"/":"")+i||"."},relative:function(i,$){i=$9.resolve(i).substr(1),$=$9.resolve($).substr(1);function h(s){for(var o1=0;o1=0&&s[m]==="";m--);return o1>m?[]:s.slice(o1,m-o1+1)}for(var u=h(i.split("/")),O=h($.split("/")),e=Math.min(u.length,O.length),Z0=e,t1=0;t10){var t1=Date.now(),b2=J1.mainLoop.queue.shift();if(b2.func(b2.arg),J1.mainLoop.remainingBlockers){var s=J1.mainLoop.remainingBlockers,o1=s%1==0?s-1:Math.floor(s);b2.counted?J1.mainLoop.remainingBlockers=o1:(o1=o1+.5,J1.mainLoop.remainingBlockers=(8*s+o1)/9)}console.log('main loop blocker "'+b2.name+'" took '+(Date.now()-t1)+" ms"),J1.mainLoop.updateStatus(),setTimeout(J1.mainLoop.runner,0);return}if(!(e1&&J1.mainLoop.currentFrameNumber%J1.mainLoop.timingValue!=0){J1.mainLoop.scheduler();return}J1.mainLoop.method==="timeout"&&A.ctx&&(A.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),J1.mainLoop.method=""),J1.mainLoop.runIter(function(){typeof u<"u"?F.dynCall("vi",i,[u]):F.dynCall("v",i)}),!(e0?UC(0,1e3/$):UC(1,1),J1.mainLoop.scheduler()),h)throw"SimulateInfiniteLoop"}var J1={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){J1.mainLoop.scheduler=null,J1.mainLoop.currentlyRunningMainloop++},resume:function(){J1.mainLoop.currentlyRunningMainloop++;var i=J1.mainLoop.timingMode,$=J1.mainLoop.timingValue,h=J1.mainLoop.func;J1.mainLoop.func=null,Ep(h,0,!1,J1.mainLoop.arg,!0),UC(i,$),J1.mainLoop.scheduler()},updateStatus:function(){if(A.setStatus){var i=A.statusMessage||"Please wait...",$=J1.mainLoop.remainingBlockers,h=J1.mainLoop.expectedBlockers;$?$"u"&&(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),A.noImageDecoding=!0);var i={};i.canHandle=function(e){return!A.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(e)},i.handle=function(e,Z0,t1,b2){var s=null;if(J1.hasBlobConstructor)try{s=new Blob([e],{type:J1.getMimetype(Z0)}),s.size!==e.length&&(s=new Blob([new Uint8Array(e).buffer],{type:J1.getMimetype(Z0)}))}catch(p2){F.warnOnce("Blob constructor present but fails: "+p2+"; falling back to blob builder")}if(!s){var o1=new J1.BlobBuilder;o1.append(new Uint8Array(e).buffer),s=o1.getBlob()}var m=J1.URLObject.createObjectURL(s),Q5=new Image;Q5.onload=function(){V4(Q5.complete,"Image "+Z0+" could not be decoded");var M5=document.createElement("canvas");M5.width=Q5.width,M5.height=Q5.height;var b9=M5.getContext("2d");b9.drawImage(Q5,0,0),A.preloadedImages[Z0]=M5,J1.URLObject.revokeObjectURL(m),t1&&t1(e)},Q5.onerror=function(M5){console.log("Image "+m+" could not be decoded"),b2&&b2()},Q5.src=m},A.preloadPlugins.push(i);var $={};$.canHandle=function(e){return!A.noAudioDecoding&&e.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},$.handle=function(e,Z0,t1,b2){var s=!1;function o1(b9){s||(s=!0,A.preloadedAudios[Z0]=b9,t1&&t1(e))}function m(){s||(s=!0,A.preloadedAudios[Z0]=new Audio,b2&&b2())}if(J1.hasBlobConstructor){try{var Q5=new Blob([e],{type:J1.getMimetype(Z0)})}catch{return m()}var p2=J1.URLObject.createObjectURL(Q5),M5=new Audio;M5.addEventListener("canplaythrough",function(){o1(M5)},!1),M5.onerror=function(U9){if(s)return;console.log("warning: browser could not fully decode audio "+Z0+", trying slower base64 approach");function f4(Q8){for(var J9="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",c8="=",z4="",Mi=0,Ti=0,hr=0;hr=6;){var K$=Mi>>Ti-6&63;Ti-=6,z4+=J9[K$]}return Ti==2?(z4+=J9[(Mi&3)<<4],z4+=c8+c8):Ti==4&&(z4+=J9[(Mi&15)<<2],z4+=c8),z4}M5.src="data:audio/x-"+Z0.substr(-3)+";base64,"+f4(e),o1(M5)},M5.src=p2,J1.safeSetTimeout(function(){o1(M5)},1e4)}else return m()},A.preloadPlugins.push($);var h=A.canvas;function u(){J1.pointerLock=document.pointerLockElement===h||document.mozPointerLockElement===h||document.webkitPointerLockElement===h||document.msPointerLockElement===h}h&&(h.requestPointerLock=h.requestPointerLock||h.mozRequestPointerLock||h.webkitRequestPointerLock||h.msRequestPointerLock||function(){},h.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},h.exitPointerLock=h.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",u,!1),document.addEventListener("mozpointerlockchange",u,!1),document.addEventListener("webkitpointerlockchange",u,!1),document.addEventListener("mspointerlockchange",u,!1),A.elementPointerLock&&h.addEventListener("click",function(O){!J1.pointerLock&&h.requestPointerLock&&(h.requestPointerLock(),O.preventDefault())},!1))},createContext:function(i,$,h,u){if($&&A.ctx&&i==A.canvas)return A.ctx;var O,e;if($){var Z0={antialias:!1,alpha:!1};if(u)for(var t1 in u)Z0[t1]=u[t1];e=GL.createContext(i,Z0),e&&(O=GL.getContext(e).GLctx),i.style.backgroundColor="black"}else O=i.getContext("2d");return O?(h&&($||V4(typeof GLctx>"u","cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),A.ctx=O,$&&GL.makeContextCurrent(e),A.useWebGL=$,J1.moduleContextCreatedCallbacks.forEach(function(b2){b2()}),J1.init()),O):null},destroyContext:function(i,$,h){},fullScreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullScreen:function(i,$,h){J1.lockPointer=i,J1.resizeCanvas=$,J1.vrDevice=h,typeof J1.lockPointer>"u"&&(J1.lockPointer=!0),typeof J1.resizeCanvas>"u"&&(J1.resizeCanvas=!1),typeof J1.vrDevice>"u"&&(J1.vrDevice=null);var u=A.canvas;function O(){J1.isFullScreen=!1;var Z0=u.parentNode;(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===Z0?(u.cancelFullScreen=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullScreen||document.msExitFullscreen||document.exitFullscreen||function(){},u.cancelFullScreen=u.cancelFullScreen.bind(document),J1.lockPointer&&u.requestPointerLock(),J1.isFullScreen=!0,J1.resizeCanvas&&J1.setFullScreenCanvasSize()):(Z0.parentNode.insertBefore(u,Z0),Z0.parentNode.removeChild(Z0),J1.resizeCanvas&&J1.setWindowedCanvasSize()),A.onFullScreen&&A.onFullScreen(J1.isFullScreen),J1.updateCanvasDimensions(u)}J1.fullScreenHandlersInstalled||(J1.fullScreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",O,!1),document.addEventListener("mozfullscreenchange",O,!1),document.addEventListener("webkitfullscreenchange",O,!1),document.addEventListener("MSFullscreenChange",O,!1));var e=document.createElement("div");u.parentNode.insertBefore(e,u),e.appendChild(u),e.requestFullScreen=e.requestFullScreen||e.mozRequestFullScreen||e.msRequestFullscreen||(e.webkitRequestFullScreen?function(){e.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),h?e.requestFullScreen({vrDisplay:h}):e.requestFullScreen()},nextRAF:0,fakeRequestAnimationFrame:function(i){var $=Date.now();if(J1.nextRAF===0)J1.nextRAF=$+1e3/60;else for(;$+2>=J1.nextRAF;)J1.nextRAF+=1e3/60;var h=Math.max(J1.nextRAF-$,0);setTimeout(i,h)},requestAnimationFrame:function($){typeof window>"u"?J1.fakeRequestAnimationFrame($):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||J1.fakeRequestAnimationFrame),window.requestAnimationFrame($))},safeCallback:function(i){return function(){if(!K0)return i.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){J1.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(J1.allowAsyncCallbacks=!0,J1.queuedAsyncCallbacks.length>0){var i=J1.queuedAsyncCallbacks;J1.queuedAsyncCallbacks=[],i.forEach(function($){$()})}},safeRequestAnimationFrame:function(i){return J1.requestAnimationFrame(function(){K0||(J1.allowAsyncCallbacks?i():J1.queuedAsyncCallbacks.push(i))})},safeSetTimeout:function(i,$){return A.noExitRuntime=!0,setTimeout(function(){K0||(J1.allowAsyncCallbacks?i():J1.queuedAsyncCallbacks.push(i))},$)},safeSetInterval:function(i,$){return A.noExitRuntime=!0,setInterval(function(){K0||J1.allowAsyncCallbacks&&i()},$)},getMimetype:function(i){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[i.substr(i.lastIndexOf(".")+1)]},getUserMedia:function(i){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(i)},getMovementX:function(i){return i.movementX||i.mozMovementX||i.webkitMovementX||0},getMovementY:function(i){return i.movementY||i.mozMovementY||i.webkitMovementY||0},getMouseWheelDelta:function(i){var $=0;switch(i.type){case"DOMMouseScroll":$=i.detail;break;case"mousewheel":$=i.wheelDelta;break;case"wheel":$=i.deltaY;break;default:throw"unrecognized mouse wheel event: "+i.type}return $},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(i){if(J1.pointerLock)i.type!="mousemove"&&"mozMovementX"in i?J1.mouseMovementX=J1.mouseMovementY=0:(J1.mouseMovementX=J1.getMovementX(i),J1.mouseMovementY=J1.getMovementY(i)),typeof SDL<"u"?(J1.mouseX=SDL.mouseX+J1.mouseMovementX,J1.mouseY=SDL.mouseY+J1.mouseMovementY):(J1.mouseX+=J1.mouseMovementX,J1.mouseY+=J1.mouseMovementY);else{var $=A.canvas.getBoundingClientRect(),h=A.canvas.width,u=A.canvas.height,O=typeof window.scrollX<"u"?window.scrollX:window.pageXOffset,e=typeof window.scrollY<"u"?window.scrollY:window.pageYOffset;if(i.type==="touchstart"||i.type==="touchend"||i.type==="touchmove"){var Z0=i.touch;if(Z0===void 0)return;var t1=Z0.pageX-(O+$.left),b2=Z0.pageY-(e+$.top);t1=t1*(h/$.width),b2=b2*(u/$.height);var s={x:t1,y:b2};if(i.type==="touchstart")J1.lastTouches[Z0.identifier]=s,J1.touches[Z0.identifier]=s;else if(i.type==="touchend"||i.type==="touchmove"){var o1=J1.touches[Z0.identifier];o1||(o1=s),J1.lastTouches[Z0.identifier]=o1,J1.touches[Z0.identifier]=s}return}var m=i.pageX-(O+$.left),Q5=i.pageY-(e+$.top);m=m*(h/$.width),Q5=Q5*(u/$.height),J1.mouseMovementX=m-J1.mouseX,J1.mouseMovementY=Q5-J1.mouseY,J1.mouseX=m,J1.mouseY=Q5}},xhrLoad:function(i,$,h){var u=new XMLHttpRequest;u.open("GET",i,!0),u.responseType="arraybuffer",u.onload=function(){u.status==200||u.status==0&&u.response?$(u.response):h()},u.onerror=h,u.send(null)},asyncLoad:function(i,$,h,u){J1.xhrLoad(i,function(O){V4(O,'Loading data file "'+i+'" failed (no arrayBuffer).'),$(new Uint8Array(O)),u||cr("al "+i)},function(O){if(h)h();else throw'Loading data file "'+i+'" failed.'}),u||_n("al "+i)},resizeListeners:[],updateResizeListeners:function(){var i=A.canvas;J1.resizeListeners.forEach(function($){$(i.width,i.height)})},setCanvasSize:function(i,$,h){var u=A.canvas;J1.updateCanvasDimensions(u,i,$),h||J1.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:function(){if(typeof SDL<"u"){var i=q$[SDL.screen+F.QUANTUM_SIZE*0>>2];i=i|8388608,D9[SDL.screen+F.QUANTUM_SIZE*0>>2]=i}J1.updateResizeListeners()},setWindowedCanvasSize:function(){if(typeof SDL<"u"){var i=q$[SDL.screen+F.QUANTUM_SIZE*0>>2];i=i&-8388609,D9[SDL.screen+F.QUANTUM_SIZE*0>>2]=i}J1.updateResizeListeners()},updateCanvasDimensions:function(i,$,h){$&&h?(i.widthNative=$,i.heightNative=h):($=i.widthNative,h=i.heightNative);var u=$,O=h;if(A.forcedAspectRatio&&A.forcedAspectRatio>0&&(u/O>2]=$),$}function Yk(){A.printErr("missing function: floor0_exportbundle"),Ps(-1)}if(Us=F.staticAlloc(4),D9[Us>>2]=0,A.requestFullScreen=function($,h,u){J1.requestFullScreen($,h,u)},A.requestAnimationFrame=function($){J1.requestAnimationFrame($)},A.setCanvasSize=function($,h,u){J1.setCanvasSize($,h,u)},A.pauseMainLoop=function(){J1.mainLoop.pause()},A.resumeMainLoop=function(){J1.mainLoop.resume()},A.getUserMedia=function(){J1.getUserMedia()},A.createContext=function($,h,u,O){return J1.createContext($,h,u,O)},k.staticInit(),G$.unshift(function(){!A.noFSInit&&!k.init.initialized&&k.init()}),Qh.push(function(){k.ignorePermissions=!1}),N$.push(function(){k.quit()}),A.FS_createFolder=k.createFolder,A.FS_createPath=k.createPath,A.FS_createDataFile=k.createDataFile,A.FS_createPreloadedFile=k.createPreloadedFile,A.FS_createLazyFile=k.createLazyFile,A.FS_createLink=k.createLink,A.FS_createDevice=k.createDevice,G$.unshift(function(){Rn.init()}),N$.push(function(){Rn.shutdown()}),d)var B7=void 0,mp=void 0;ph=Ei=F.alignMemory(Tr),F$=!0,L$=ph+LC,M$=_i=F.alignMemory(L$),V4(M$>0]=u[t>>0],u[p2+1>>0]=u[t+1>>0],u[p2+2>>0]=u[t+2>>0],u[p2+3>>0]=u[t+3>>0]}function Rb(t){t=t|0,u[p2>>0]=u[t>>0],u[p2+1>>0]=u[t+1>>0],u[p2+2>>0]=u[t+2>>0],u[p2+3>>0]=u[t+3>>0],u[p2+4>>0]=u[t+4>>0],u[p2+5>>0]=u[t+5>>0],u[p2+6>>0]=u[t+6>>0],u[p2+7>>0]=u[t+7>>0]}function wv(t){t=t|0,q6=t}function kv(){return q6|0}function Xm(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0;E=m,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,n=k9(256)|0,o=t+8|0,e[o>>2]=n,a=t+12|0,e[a>>2]=n,u[n>>0]=0,c=t+16|0,e[c>>2]=256}function vv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0;R=m,o=n>>3,a=t+12|0,B=e[a>>2]|0,v=(B|0)==0,!v&&(S=o<<3,w=n-S|0,y=t+8|0,D=e[y>>2]|0,Q=D+o|0,e[a>>2]=Q,_=t+4|0,e[_>>2]=w,e[t>>2]=o,c=8+(w<<2)|0,f=e[c>>2]|0,E=u[Q>>0]|0,I=E&255,C=I&f,p=C&255,u[Q>>0]=p)}function U2(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0;U0=m,f=o>>>0>32;do if(!f){if(E=e[t>>2]|0,_=t+16|0,t0=e[_>>2]|0,n0=t0+-4|0,Q0=(E|0)<(n0|0),a=t+12|0,c=e[a>>2]|0,Q0)G=c;else{if(x0=(c|0)==0,x0)return;if(H0=(t0|0)>2147483391,H0||(N0=t+8|0,V0=e[N0>>2]|0,I=t0+256|0,C=Ni(V0,I)|0,p=(C|0)==0,p))break;e[N0>>2]=C,B=e[_>>2]|0,v=B+256|0,e[_>>2]=v,S=e[t>>2]|0,w=C+S|0,e[a>>2]=w,G=w}y=8+(o<<2)|0,D=e[y>>2]|0,Q=D&n,x=t+4|0,R=e[x>>2]|0,L=R+o|0,M=Q<>0]|0,N=T&255,P=N|M,z=P&255,u[G>>0]=z,Y=(L|0)>7;do if(Y&&(J=e[x>>2]|0,W=8-J|0,e0=Q>>>W,H=e0&255,X=e[a>>2]|0,U=X+1|0,u[U>>0]=H,o0=(L|0)>15,o0&&(Z=e[x>>2]|0,V=16-Z|0,A0=Q>>>V,i0=A0&255,r0=e[a>>2]|0,K=r0+2|0,u[K>>0]=i0,c0=(L|0)>23,c0&&(s0=e[x>>2]|0,l0=24-s0|0,j=Q>>>l0,a0=j&255,g0=e[a>>2]|0,f0=g0+3|0,u[f0>>0]=a0,d0=(L|0)>31,d0))))if(y0=e[x>>2]|0,h0=(y0|0)==0,h0){D0=e[a>>2]|0,B0=D0+4|0,u[B0>>0]=0;break}else{E0=32-y0|0,C0=Q>>>E0,u0=C0&255,k0=e[a>>2]|0,J0=k0+4|0,u[J0>>0]=u0;break}while(!1);F0=(L|0)/8&-1,M0=e[t>>2]|0,G0=M0+F0|0,e[t>>2]=G0,p0=e[a>>2]|0,P0=p0+F0|0,e[a>>2]=P0,R0=L&7,e[x>>2]=R0;return}while(!1);S0=t+8|0,L0=e[S0>>2]|0,q0=(L0|0)==0,q0||I2(L0),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0}function eB(t){t=t|0;var n=0,o=0,a=0,c=0,f=0;f=m,n=t+8|0,o=e[n>>2]|0,a=(o|0)==0,a||I2(o),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0}function lt(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0;p=m,n=t+12|0,o=e[n>>2]|0,a=(o|0)==0,!a&&(c=t+8|0,f=e[c>>2]|0,e[n>>2]=f,E=f,u[E>>0]=0,e[t>>2]=0,I=t+4|0,e[I>>2]=0)}function tB(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0;if(k0=m,a=n>>>0>32,a)return o=-1,o|0;if(c=8+(n<<2)|0,D=e[c>>2]|0,z=t+4|0,V=e[z>>2]|0,g0=V+n|0,Q0=e[t>>2]|0,d0=t+16|0,y0=e[d0>>2]|0,h0=y0+-4|0,f=(Q0|0)<(h0|0),!f){if(E=g0+7|0,I=E>>3,C=y0-I|0,p=(Q0|0)>(C|0),p)return o=-1,o|0;if(B=(g0|0)==0,B)return o=0,o|0}return v=t+12|0,S=e[v>>2]|0,w=u[S>>0]|0,y=w&255,Q=y>>>V,_=(g0|0)>8,_?(x=S+1|0,R=u[x>>0]|0,L=R&255,M=8-V|0,T=L<16,N?(P=S+2|0,Y=u[P>>0]|0,t0=Y&255,J=16-V|0,W=t0<24,H?(X=S+3|0,U=u[X>>0]|0,o0=U&255,Z=24-V|0,A0=o0<>0]|0,s0=c0&255,l0=32-V|0,j=s0<>2]|0,v=a+n|0,S=e[t>>2]|0,w=t+16|0,y=e[w>>2]|0,D=v+7|0,Q=D>>3,_=y-Q|0,x=(S|0)>(_|0),x){B=t+12|0,e[B>>2]=0,e[t>>2]=y,R=1,e[o>>2]=R;return}else{c=(v|0)/8&-1,f=t+12|0,E=e[f>>2]|0,I=E+c|0,e[f>>2]=I,C=S+c|0,e[t>>2]=C,p=v&7,R=p,e[o>>2]=R;return}}function W4(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0;S0=m,C=n>>>0>32;do if(C)a=t+16|0,c=e[a>>2]|0,I=t+4|0,f=t,E=I,B0=c;else{if(p=8+(n<<2)|0,L=e[p>>2]|0,e0=t+4|0,K=e[e0>>2]|0,h0=K+n|0,x0=e[t>>2]|0,F0=t+16|0,M0=e[F0>>2]|0,G0=M0+-4|0,B=(x0|0)<(G0|0),!B){if(v=h0+7|0,S=v>>3,w=M0-S|0,y=(x0|0)>(w|0),y){f=t,E=e0,B0=M0;break}if(D=(h0|0)==0,D)return o=0,o|0}return Q=t+12|0,_=e[Q>>2]|0,x=u[_>>0]|0,R=x&255,M=R>>>K,T=(h0|0)>8,T?(G=_+1|0,N=u[G>>0]|0,P=N&255,z=8-K|0,Y=P<16,J?(W=_+2|0,H=u[W>>0]|0,X=H&255,U=16-K|0,o0=X<24,V?(A0=_+3|0,n0=u[A0>>0]|0,i0=n0&255,r0=24-K|0,c0=i0<>0]|0,f0=g0&255,Q0=32-K|0,d0=f0<>2]=u0,k0=x0+C0|0,e[t>>2]=k0,J0=h0&7,e[e0>>2]=J0,o=E0,o|0}while(!1);return D0=t+12|0,e[D0>>2]=0,e[f>>2]=B0,e[E>>2]=1,o=-1,o|0}function p7(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0;return C=m,n=e[t>>2]|0,o=t+4|0,a=e[o>>2]|0,c=a+7|0,f=(c|0)/8&-1,E=f+n|0,E|0}function Vp(t){t=t|0;var n=0,o=0,a=0,c=0;return c=m,n=t+8|0,o=e[n>>2]|0,o|0}function Sv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0;if(T=m,c=(t|0)==0,c)return o=-1,o|0;Ae(t|0,0,360)|0,f=t+4|0,e[f>>2]=16384,S=t+24|0,e[S>>2]=1024,w=k9(16384)|0,e[t>>2]=w,y=k9(4096)|0,D=t+16|0,e[D>>2]=y,Q=k9(8192)|0,_=t+20|0,e[_>>2]=Q,x=(w|0)==0;do if(x)I=y;else{if(R=(y|0)==0,E=(Q|0)==0,L=E|R,L){I2(w),a=e[D>>2]|0,I=a;break}return v=t+336|0,e[v>>2]=n,o=0,o|0}while(!1);return C=(I|0)==0,C||I2(I),p=e[_>>2]|0,B=(p|0)==0,B||I2(p),Ae(t|0,0,360)|0,o=-1,o|0}function Dv(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0;return v=m,n=(t|0)==0,n||(o=e[t>>2]|0,a=(o|0)==0,a||I2(o),c=t+16|0,f=e[c>>2]|0,E=(f|0)==0,E||I2(f),I=t+20|0,C=e[I>>2]|0,p=(C|0)==0,p||I2(C),Ae(t|0,0,360)|0),0}function bv(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0;if(M0=m,n=(t|0)==0,!n){if(o=e[t>>2]|0,w=o+22|0,u[w>>0]=0,N=e[t>>2]|0,o0=N+23|0,u[o0>>0]=0,j=e[t>>2]|0,y0=j+24|0,u[y0>>0]=0,h0=e[t>>2]|0,E0=h0+25|0,u[E0>>0]=0,C0=t+4|0,a=e[C0>>2]|0,c=(a|0)>0,c)for(f=e[t>>2]|0,k0=0,B0=0;;)if(v=k0<<8,S=k0>>>24,y=f+B0|0,D=u[y>>0]|0,Q=D&255,_=Q^S,x=144+(_<<2)|0,R=e[x>>2]|0,L=R^v,M=B0+1|0,T=(M|0)<(a|0),T)k0=L,B0=M;else{u0=L;break}else u0=0;if(E=t+12|0,I=e[E>>2]|0,C=(I|0)>0,C)for(p=t+8|0,B=e[p>>2]|0,D0=u0,x0=0;;)if(G=D0<<8,P=D0>>>24,z=B+x0|0,Y=u[z>>0]|0,t0=Y&255,J=t0^P,W=144+(J<<2)|0,e0=e[W>>2]|0,H=e0^G,X=x0+1|0,U=(X|0)<(I|0),U)D0=H,x0=X;else{J0=H;break}else J0=u0;Z=J0&255,V=e[t>>2]|0,A0=V+22|0,u[A0>>0]=Z,n0=J0>>>8,i0=n0&255,r0=e[t>>2]|0,K=r0+23|0,u[K>>0]=i0,c0=J0>>>16,s0=c0&255,l0=e[t>>2]|0,a0=l0+24|0,u[a0>>0]=s0,g0=J0>>>24,f0=g0&255,Q0=e[t>>2]|0,d0=Q0+25|0,u[d0>>0]=f0}}function _v(t,n,o,a,c,f){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0;var E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0;if(u2=m,j=(t|0)==0,j||(k0=e[t>>2]|0,S0=(k0|0)==0,S0))return I=-1,I|0;if(v0=(n|0)==0,v0)return I=0,I|0;z0=(o|0)>0;e:do if(z0){for(f2=0,y2=0;;){if(y1=(n+(y2<<3)|0)+4|0,P1=e[y1>>2]|0,s2=(P1|0)<0,y=2147483647-P1|0,P=(f2|0)>(y|0),M2=s2|P,M2){I=-1;break}if(Z=P1+f2|0,n0=y2+1|0,i0=(n0|0)<(o|0),i0)f2=Z,y2=n0;else{n2=Z;break e}}return I|0}else n2=0;while(!1);r0=(n2|0)/255&-1,K=r0+1|0,c0=t+12|0,s0=e[c0>>2]|0,l0=(s0|0)==0,w=t+8|0,l0||(a0=e[w>>2]|0,g0=a0-s0|0,e[w>>2]=g0,f0=(a0|0)==(s0|0),f0||(Q0=k0+s0|0,Vo(k0|0,Q0|0,g0|0)|0),e[c0>>2]=0),d0=t+4|0,y0=e[d0>>2]|0,h0=y0-n2|0,E0=e[w>>2]|0,C0=(h0|0)>(E0|0);do if(!C0){if(u0=2147483647-n2|0,J0=(y0|0)>(u0|0),J0)return D0=e[t>>2]|0,B0=(D0|0)==0,B0||I2(D0),x0=t+16|0,F0=e[x0>>2]|0,M0=(F0|0)==0,M0||I2(F0),G0=t+20|0,p0=e[G0>>2]|0,P0=(p0|0)==0,P0||I2(p0),Ae(t|0,0,360)|0,I=-1,I|0;if(R0=y0+n2|0,L0=(R0|0)<2147482623,q0=R0+1024|0,E=L0?q0:R0,H0=e[t>>2]|0,N0=Ni(H0,E)|0,V0=(N0|0)==0,!V0){e[d0>>2]=E,e[t>>2]=N0;break}return T0=e[t>>2]|0,U0=(T0|0)==0,U0||I2(T0),r1=t+16|0,O0=e[r1>>2]|0,e1=(O0|0)==0,e1||I2(O0),i1=t+20|0,c1=e[i1>>2]|0,$1=(c1|0)==0,$1||I2(c1),Ae(t|0,0,360)|0,I=-1,I|0}while(!1);if(f1=Rv(t,K)|0,g1=(f1|0)==0,!g1)return I=-1,I|0;if(z0)for(p=e[w>>2]|0,p1=p,S2=0;d1=e[t>>2]|0,B1=d1+p1|0,Q1=n+(S2<<3)|0,D1=e[Q1>>2]|0,_1=(n+(S2<<3)|0)+4|0,k1=e[_1>>2]|0,i4(B1|0,D1|0,k1|0)|0,x1=e[_1>>2]|0,L1=e[w>>2]|0,N1=L1+x1|0,e[w>>2]=N1,w1=S2+1|0,e2=(w1|0)==(o|0),!e2;)p1=N1,S2=w1;if(l1=(n2|0)>254,s1=t+28|0,a1=e[s1>>2]|0,n1=t+16|0,A1=e[n1>>2]|0,l1){for(I1=t+352|0,h1=t+20|0,E1=e[h1>>2]|0,u1=(r0|0)>1,C2=0;U1=a1+C2|0,Z1=A1+(U1<<2)|0,e[Z1>>2]=255,G1=I1,v1=G1,K1=e[v1>>2]|0,H1=G1+4|0,q1=H1,Y1=e[q1>>2]|0,j1=E1+(U1<<3)|0,r2=j1,W1=r2,e[W1>>2]=K1,O1=r2+4|0,l2=O1,e[l2>>2]=Y1,z1=C2+1|0,h2=(z1|0)<(r0|0),h2;)C2=z1;_2=u1?r0:1,B=I1,a2=E1,w2=_2}else C=t+20|0,v=e[C>>2]|0,S=t+352|0,B=S,a2=v,w2=0;return d2=(n2|0)%255&-1,A2=a1+w2|0,V1=A1+(A2<<2)|0,e[V1>>2]=d2,g2=a2+(A2<<3)|0,t2=g2,$2=t2,e[$2>>2]=c,i2=t2+4|0,o2=i2,e[o2>>2]=f,X1=B,D=X1,e[D>>2]=c,Q=X1+4|0,_=Q,e[_>>2]=f,x=A1+(a1<<2)|0,R=e[x>>2]|0,L=R|256,e[x>>2]=L,M=a1+K|0,e[s1>>2]=M,T=t+344|0,G=T,N=G,z=e[N>>2]|0,Y=G+4|0,t0=Y,J=e[t0>>2]|0,W=Ys(z|0,J|0,1,0)|0,e0=q6,H=T,X=H,e[X>>2]=W,U=H+4|0,o0=U,e[o0>>2]=e0,V=(a|0)==0,V?(I=0,I|0):(A0=t+328|0,e[A0>>2]=1,I=0,I|0)}function YC(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0;return x=m,m=m+16|0,Q=x,o=e[n>>2]|0,e[Q>>2]=o,a=n+4|0,C=e[a>>2]|0,p=Q+4|0,e[p>>2]=C,B=n+12|0,v=e[B>>2]|0,S=n+16|0,w=S,y=w,D=e[y>>2]|0,c=w+4|0,f=c,E=e[f>>2]|0,I=_v(t,Q,1,v,D,E)|0,m=x,I|0}function zp(t,n){t=t|0,n=n|0;var o=0,a=0,c=0;return c=m,o=Wp(t,n,1,4096)|0,o|0}function Zp(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0;return x=m,f=(t|0)==0,f||(E=e[t>>2]|0,I=(E|0)==0,I)?(o=0,o|0):(C=t+328|0,p=e[C>>2]|0,B=(p|0)==0,a=t+28|0,c=e[a>>2]|0,Q=(c|0)==0,B?Q?D=0:(v=t+332|0,S=e[v>>2]|0,w=(S|0)==0,w?_=7:D=0):Q?D=0:_=7,(_|0)==7&&(D=1),y=Wp(t,n,D,4096)|0,o=y,o|0)}function Rv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0;return a0=m,c=t+24|0,f=e[c>>2]|0,Q=f-n|0,Y=t+28|0,A0=e[Y>>2]|0,r0=(Q|0)>(A0|0),r0?(a=0,a|0):(K=2147483647-n|0,c0=(f|0)>(K|0),c0?(s0=e[t>>2]|0,l0=(s0|0)==0,l0||I2(s0),E=t+16|0,I=e[E>>2]|0,C=(I|0)==0,C||I2(I),p=t+20|0,B=e[p>>2]|0,v=(B|0)==0,v||I2(B),Ae(t|0,0,360)|0,a=-1,a|0):(S=f+n|0,w=(S|0)<2147483615,y=S+32|0,o=w?y:S,D=t+16|0,_=e[D>>2]|0,x=o<<2,R=Ni(_,x)|0,L=(R|0)==0,L?(M=e[t>>2]|0,T=(M|0)==0,T||I2(M),G=e[D>>2]|0,N=(G|0)==0,N||I2(G),P=t+20|0,z=e[P>>2]|0,t0=(z|0)==0,t0||I2(z),Ae(t|0,0,360)|0,a=-1,a|0):(e[D>>2]=R,J=t+20|0,W=e[J>>2]|0,e0=o<<3,H=Ni(W,e0)|0,X=(H|0)==0,X?(U=e[t>>2]|0,o0=(U|0)==0,o0||I2(U),Z=e[D>>2]|0,V=(Z|0)==0,V||I2(Z),n0=e[J>>2]|0,i0=(n0|0)==0,i0||I2(n0),Ae(t|0,0,360)|0,a=-1,a|0):(e[J>>2]=H,e[c>>2]=o,a=0,a|0))))}function Wp(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0;if(y5=m,Q=t+28|0,_=e[Q>>2]|0,c1=(_|0)>255,c=c1?255:_,h1=(t|0)==0,h1||(x1=e[t>>2]|0,q1=(x1|0)==0,A2=(c|0)==0,Q3=A2|q1,Q3))return f=0,f|0;e2=t+332|0,q2=e[e2>>2]|0,z2=(q2|0)==0;e:do if(z2)for(d0=t+16|0,$3=0;;){if(F0=($3|0)<(c|0),!F0){I=o,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,Y5=$3,P5=14;break e}if(V0=e[d0>>2]|0,O0=V0+($3<<2)|0,e1=e[O0>>2]|0,v0=e1&255,i1=(v0|0)==255,$1=$3+1|0,i1)$3=$1;else{I=o,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,Y5=$1,P5=14;break}}else if(x=(c|0)>0,x){for(J=t+16|0,i0=t+20|0,C5=0,k5=-1,c5=-1,o5=-1,Z2=-1,c2=-1,B5=-1,e5=-1,n5=-1,X5=0,_3=0,C3=0;;){if(f1=(C5|0)>(a|0),g1=(X5|0)>3,M3=f1&g1,M3){E=1,G5=k5,D5=c5,H2=o5,I5=Z2,A5=c2,l5=B5,m5=e5,M1=n5,l3=C3;break}if(l1=e[J>>2]|0,s1=l1+(C3<<2)|0,a1=e[s1>>2]|0,n1=a1&255,A1=n1+C5|0,z0=(n1|0)==255,z0?(g5=k5,J2=c5,h5=o5,t5=Z2,b5=c2,W2=B5,a5=e5,F2=n5,j3=0,T3=_3):(I1=e[i0>>2]|0,E1=I1+(C3<<3)|0,u1=E1,d1=u1,B1=e[d1>>2]|0,p1=u1+4|0,Q1=p1,D1=e[Q1>>2]|0,_1=_3+1|0,y1=B1&255,k1=Js(B1|0,D1|0,8)|0,L1=q6,N1=k1&255,w1=Js(B1|0,D1|0,16)|0,U1=q6,Z1=w1&255,G1=Js(B1|0,D1|0,24)|0,v1=q6,K1=G1&255,P1=D1&255,H1=Js(B1|0,D1|0,40)|0,Y1=q6,j1=H1&255,r2=Js(B1|0,D1|0,48)|0,W1=q6,O1=r2&255,l2=Js(B1|0,D1|0,56)|0,z1=q6,h2=l2&255,g5=y1,J2=Z1,h5=K1,t5=P1,b5=j1,W2=O1,a5=h2,F2=N1,j3=_1,T3=_1),s2=C3+1|0,d2=(s2|0)<(c|0),d2)C5=A1,k5=g5,c5=J2,o5=h5,Z2=t5,c2=b5,B5=W2,e5=a5,n5=F2,X5=j3,_3=T3,C3=s2;else{E=o,G5=g5,D5=J2,H2=h5,I5=t5,A5=b5,l5=W2,m5=a5,M1=F2,l3=s2;break}}V1=(l3|0)==255,V1?(s3=G5,E3=D5,F5=H2,z5=I5,y3=A5,h3=l5,m3=m5,q3=M1,N5=255):(I=E,p5=G5,q5=D5,e3=H2,d5=I5,f3=A5,g3=l5,V5=m5,t3=M1,Y5=l3,P5=14)}else I=o,p5=-1,q5=-1,e3=-1,d5=-1,f3=-1,g3=-1,V5=-1,t3=-1,Y5=0,P5=14;while(!1);if((P5|0)==14){if(g2=(I|0)==0,g2)return f=0,f|0;s3=p5,E3=q5,F5=e3,z5=d5,y3=f3,h3=g3,m3=V5,q3=t3,N5=Y5}if(a2=t+40|0,u[a2>>0]=79,u[a2+1>>0]=103,u[a2+2>>0]=103,u[a2+3>>0]=83,t2=t+44|0,u[t2>>0]=0,$2=t+45|0,u[$2>>0]=0,i2=t+16|0,o2=e[i2>>2]|0,X1=e[o2>>2]|0,n2=X1>>>8,v=n2&1,f2=v^1,y2=f2|2,C=z2?y2:f2,a3=C&255,u[$2>>0]=a3,S2=t+328|0,w2=e[S2>>2]|0,C2=(w2|0)!=0,M2=(_|0)==(N5|0),W5=C2&M2,W5&&(p=z2?y2:f2,_2=p|4,G2=_2&255,u[$2>>0]=G2),e[e2>>2]=1,u2=t+46|0,u[u2>>0]=s3,K2=t+47|0,u[K2>>0]=q3,N2=t+48|0,u[N2>>0]=E3,T2=t+49|0,u[T2>>0]=F5,O2=t+50|0,u[O2>>0]=z5,V2=t+51|0,u[V2>>0]=y3,s5=t+52|0,u[s5>>0]=h3,P2=t+53|0,u[P2>>0]=m3,T1=t+336|0,j2=e[T1>>2]|0,R5=j2&255,X2=t+54|0,u[X2>>0]=R5,v5=j2>>>8,f5=v5&255,w5=t+55|0,u[w5>>0]=f5,O5=j2>>>16,$5=O5&255,k2=t+56|0,u[k2>>0]=$5,E5=j2>>>24,r5=E5&255,x2=t+57|0,u[x2>>0]=r5,R2=t+340|0,m2=e[R2>>2]|0,R=(m2|0)==-1,R?(e[R2>>2]=0,M=0):M=m2,L=M+1|0,e[R2>>2]=L,T=M&255,G=t+58|0,u[G>>0]=T,N=M>>>8,P=N&255,z=t+59|0,u[z>>0]=P,Y=M>>>16,t0=Y&255,W=t+60|0,u[W>>0]=t0,e0=M>>>24,H=e0&255,X=t+61|0,u[X>>0]=H,U=t+62|0,o0=N5&255,Z=t+66|0,u[U>>0]=0,u[U+1>>0]=0,u[U+2>>0]=0,u[U+3>>0]=0,u[Z>>0]=o0,V=(N5|0)>0,V){if(A0=e[o2>>2]|0,n0=A0&255,r0=t+67|0,u[r0>>0]=n0,K=A0&255,S5=(N5|0)==1,S5)B=K;else for(s0=1,y0=K;;)if(S=e[i2>>2]|0,c0=S+(s0<<2)|0,l0=e[c0>>2]|0,j=l0&255,a0=s0+27|0,g0=(t+40|0)+a0|0,u[g0>>0]=j,f0=l0&255,Q0=f0+y0|0,h0=s0+1|0,u5=(h0|0)==(N5|0),u5){B=Q0;break}else s0=h0,y0=Q0;w=e[t>>2]|0,y=e[Q>>2]|0,D=e[i2>>2]|0,B0=w,p0=y,R0=D,x5=B}else B0=x1,p0=_,R0=o2,x5=0;return e[n>>2]=a2,E0=N5+27|0,C0=t+324|0,e[C0>>2]=E0,u0=n+4|0,e[u0>>2]=E0,k0=t+12|0,J0=e[k0>>2]|0,D0=B0+J0|0,x0=n+8|0,e[x0>>2]=D0,M0=n+12|0,e[M0>>2]=x5,G0=p0-N5|0,e[Q>>2]=G0,P0=R0+(N5<<2)|0,S0=G0<<2,Vo(R0|0,P0|0,S0|0)|0,L0=t+20|0,q0=e[L0>>2]|0,H0=q0+(N5<<3)|0,N0=e[Q>>2]|0,T0=N0<<3,Vo(q0|0,H0|0,T0|0)|0,U0=e[k0>>2]|0,r1=U0+x5|0,e[k0>>2]=r1,bv(n),f=1,f|0}function xv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0;return O0=m,a=t+104|0,c=e[a>>2]|0,D=t+88|0,z=c+12|0,e[D>>2]=0,e[D+4>>2]=0,e[D+8>>2]=0,e[D+12>>2]=0,V=e[z>>2]|0,lt(V),g0=c+16|0,D0=e[g0>>2]|0,lt(D0),q0=c+20|0,T0=e[q0>>2]|0,lt(T0),U0=c+24|0,f=e[U0>>2]|0,lt(f),E=c+28|0,I=e[E>>2]|0,lt(I),C=c+32|0,p=e[C>>2]|0,lt(p),B=c+36|0,v=e[B>>2]|0,lt(v),S=c+40|0,w=e[S>>2]|0,lt(w),y=c+44|0,Q=e[y>>2]|0,lt(Q),_=c+48|0,x=e[_>>2]|0,lt(x),R=c+52|0,L=e[R>>2]|0,lt(L),M=c+56|0,T=e[M>>2]|0,lt(T),G=c+60|0,N=e[G>>2]|0,lt(N),P=c+64|0,Y=e[P>>2]|0,lt(Y),t0=c+68|0,J=e[t0>>2]|0,lt(J),W=e[6416]|0,e0=W+12|0,H=e[e0>>2]|0,X=DQ[H&1](t)|0,U=(X|0)==0,U?(o0=(n|0)==0,o0?(o=0,o|0):(Z=_h(t)|0,A0=(Z|0)==0,A0?(n0=t+4|0,i0=Vp(n0)|0,e[n>>2]=i0,r0=p7(n0)|0,K=n+4|0,e[K>>2]=r0,c0=n+8|0,e[c0>>2]=0,s0=t+44|0,l0=e[s0>>2]|0,j=n+12|0,e[j>>2]=l0,a0=t+48|0,f0=a0,Q0=f0,d0=e[Q0>>2]|0,y0=f0+4|0,h0=y0,E0=e[h0>>2]|0,C0=n+16|0,u0=C0,k0=u0,e[k0>>2]=d0,J0=u0+4|0,B0=J0,e[B0>>2]=E0,x0=t+56|0,F0=x0,M0=F0,G0=e[M0>>2]|0,p0=F0+4|0,P0=p0,R0=e[P0>>2]|0,S0=n+24|0,L0=S0,H0=L0,e[H0>>2]=G0,N0=L0+4|0,V0=N0,e[V0>>2]=R0,o=0,o|0):(o=-131,o|0))):(o=X,o|0)}function Fv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0;d0=m,o=t+28|0,a=e[o>>2]|0,f0=n,y0=f0+48|0;do e[f0>>2]=0,f0=f0+4|0;while((f0|0)<(y0|0));y=a+3372|0,P=e[y>>2]|0,Z=(P|0)>0,Z&&(s0=t+8|0,l0=e[s0>>2]|0,j=e[a>>2]|0,a0=j>>1,g0=a+4|0,c=e[g0>>2]|0,f=(c|0)/(j|0)&-1,E=n+24|0,e[E>>2]=f,e[n>>2]=1,I=a+3360|0,C=e[I>>2]|0,p=+(C|0),B=+(a0|0),v=p*B,S=+(l0|0),w=v/S,D=+Gi(w),Q=~~D,_=n+12|0,e[_>>2]=Q,x=a+3364|0,R=e[x>>2]|0,L=+(R|0),M=L*B,T=M/S,G=+Gi(T),N=~~G,z=n+16|0,e[z>>2]=N,Y=a+3368|0,t0=e[Y>>2]|0,J=+(t0|0),W=J*B,e0=W/S,H=+Gi(e0),X=~~H,U=n+20|0,e[U>>2]=X,o0=n+32|0,o1[o0>>3]=7,V=+(P|0),A0=a+3376|0,n0=+o1[A0>>3],i0=V*n0,r0=~~i0,K=n+8|0,e[K>>2]=r0,c0=n+4|0,e[c0>>2]=r0)}function Lv(t){t=t|0;var n=0,o=0,a=0,c=0;a=m,n=t,c=n+48|0;do e[n>>2]=0,n=n+4|0;while((n|0)<(c|0))}function _h(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0;return B=m,o=t+64|0,a=e[o>>2]|0,c=a+104|0,f=e[c>>2]|0,E=f+80|0,I=e[E>>2]|0,C=(I|0)!=0,n=C&1,n|0}function Mv(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,Z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,m6=0,z3=0,a6=0,B6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0;if(v6=m,p=t+104|0,B=e[p>>2]|0,z1=t+64|0,k2=e[z1>>2]|0,D5=k2+104|0,c2=e[D5>>2]|0,F2=k2+4|0,F5=e[F2>>2]|0,_3=F5+28|0,L5=e[_3>>2]|0,v=c2+112|0,T=+o1[v>>3],X=+Gi(T),s0=~~X,C0=(B+12|0)+(s0<<2)|0,P0=e[C0>>2]|0,O0=p7(P0)|0,n1=O0<<3,D1=t+28|0,v1=e[D1>>2]|0,h2=(v1|0)==0,X1=c2+96|0,u2=e[X1>>2]|0,h2?(R5=c2+100|0,v5=e[R5>>2]|0,U=u2,y0=R5,u0=v5):(z2=c2+104|0,f5=e[z2>>2]|0,w5=c2+100|0,O5=e[w5>>2]|0,$5=i5(f5,u2)|0,E5=i5(f5,O5)|0,U=$5,y0=w5,u0=E5),r5=L5+(v1<<2)|0,x2=e[r5>>2]|0,R2=x2>>1,m2=L5+3372|0,C5=e[m2>>2]|0,x5=+(C5|0),u5=L5+3376|0,S5=+o1[u5>>3],G5=x5*S5,H2=~~G5,I5=c2+80|0,A5=e[I5>>2]|0,l5=(A5|0)==0,m5=c2+120|0,l5)return M1=e[m5>>2]|0,k5=(M1|0)==0,k5?(e[m5>>2]=t,o=0,o|0):(o=-1,o|0);if(e[m5>>2]=t,c5=c2+92|0,o5=e[c5>>2]|0,Z2=(o5|0)>0,Z2){h2?a5=o5:(B5=c2+104|0,e5=e[B5>>2]|0,n5=i5(e5,o5)|0,a5=n5),g5=L5+3384|0,J2=+o1[g5>>3],h5=15/J2,t5=c2+84|0,b5=e[t5>>2]|0,W2=n1-a5|0,p5=b5+W2|0,q5=(p5|0)>(H2|0);e:do if(q5)if(e3=(s0|0)>0,d5=(n1|0)>(a5|0),k6=d5&e3,k6)if(f3=n1-a5|0,g3=f3+b5|0,V5=(g3|0)>(H2|0),V5)for(N3=s0;;){if(t3=N3+-1|0,s3=(B+12|0)+(t3<<2)|0,E3=e[s3>>2]|0,z5=p7(E3)|0,y3=z5<<3,h3=(N3|0)>1,m3=(y3|0)>(a5|0),w6=m3&h3,!w6){Z5=t3;break e}if(I=e[t5>>2]|0,q3=y3-a5|0,M3=q3+I|0,W5=(M3|0)>(H2|0),W5)N3=t3;else{Z5=t3;break}}else Z5=s0;else Z5=s0;else if(Q3=(p5|0)<(H2|0),Q3)if(X5=s0+1|0,j3=(X5|0)<15,T3=(n1|0)<(a5|0),z3=T3&j3,z3)if(a3=n1-a5|0,$3=a3+b5|0,l3=($3|0)<(H2|0),l3)for(Y5=X5;;){if(C3=(B+12|0)+(Y5<<2)|0,N5=e[C3>>2]|0,P5=p7(N5)|0,y5=P5<<3,G3=Y5+1|0,t6=(G3|0)<15,i3=(y5|0)<(a5|0),m6=i3&t6,!m6){Z5=Y5;break e}if(E=e[t5>>2]|0,o3=y5-a5|0,R3=o3+E|0,h6=(R3|0)<(H2|0),h6)Y5=G3;else{Z5=Y5;break}}else Z5=s0;else Z5=s0;else Z5=s0;while(!1);B3=+(Z5|0),w3=+o1[v>>3],p3=B3-w3,X3=+Gi(p3),V3=+(R2|0),S=X3/V3,w=F5+8|0,y=e[w>>2]|0,D=+(y|0),Q=D*S,_=-h5,x=Q<_,C6=x?_:Q,R=C6>h5,v3=R?h5:C6,L=v3/D,M=L*V3,G=M+w3,o1[v>>3]=G,N=+Gi(G),P=~~N,z=(B+12|0)+(P<<2)|0,Y=e[z>>2]|0,t0=p7(Y)|0,J=t0<<3,C=e[X1>>2]|0,W=C,k3=P,Z3=J}else W=u2,k3=s0,Z3=n1;e0=(W|0)>0,H=(Z3|0)<(U|0),a6=H&e0;e:do if(a6)if(o0=c2+88|0,Z=e[o0>>2]|0,V=Z3-U|0,A0=V+Z|0,n0=(A0|0)<0,n0)for(c3=k3,W3=Z3;;){if(i0=c3+1|0,r0=(c3|0)>13,r0){U3=i0,f6=W3;break e}if(K=(B+12|0)+(i0<<2)|0,c0=e[K>>2]|0,l0=p7(c0)|0,j=l0<<3,a0=e[o0>>2]|0,g0=j-U|0,f0=g0+a0|0,Q0=(f0|0)<0,Q0)c3=i0,W3=j;else{U3=i0,f6=j;break}}else U3=k3,f6=Z3;else U3=k3,f6=Z3;while(!1);d0=e[y0>>2]|0,h0=(d0|0)>0,E0=(f6|0)>(u0|0),B6=E0&h0;e:do if(B6)if(k0=c2+88|0,J0=e[k0>>2]|0,D0=f6-u0|0,B0=D0+J0|0,x0=e[m2>>2]|0,F0=(B0|0)>(x0|0),F0)for(o6=U3,O3=f6;;){if(M0=o6+-1|0,G0=(o6|0)<1,G0){u3=M0,S3=O3;break e}if(p0=(B+12|0)+(M0<<2)|0,R0=e[p0>>2]|0,S0=p7(R0)|0,L0=S0<<3,q0=e[k0>>2]|0,H0=L0-u0|0,N0=H0+q0|0,V0=e[m2>>2]|0,T0=(N0|0)>(V0|0),T0)o6=M0,O3=L0;else{u3=M0,S3=L0;break}}else u3=U3,S3=f6;else u3=U3,S3=f6;while(!1);if(U0=(u3|0)<0,U0)r1=e[m2>>2]|0,e1=c2+88|0,v0=e[e1>>2]|0,i1=r1+u0|0,c1=i1-v0|0,$1=(c1|0)/8&-1,f1=c2+124|0,e[f1>>2]=0,g1=B+12|0,l1=e[g1>>2]|0,s1=p7(l1)|0,a1=(s1|0)>($1|0),a1?(A1=e[g1>>2]|0,z0=$1<<3,vv(A1,z0),I1=e[g1>>2]|0,h1=p7(I1)|0,E1=h1<<3,P3=E1):P3=S3;else{if(u1=c2+88|0,d1=e[u1>>2]|0,B1=U+7|0,p1=B1-d1|0,Q1=(p1|0)/8&-1,_1=(u3|0)>14,c=_1?14:u3,y1=c2+124|0,e[y1>>2]=c,k1=(B+12|0)+(c<<2)|0,x1=e[k1>>2]|0,L1=p7(x1)|0,N1=Q1-L1|0,w1=(N1|0)>0,U1=e[k1>>2]|0,w1)for(G1=U1,y6=N1;;)if(Z1=y6+-1|0,U2(G1,0,8),K1=(y6|0)>1,P1=e[k1>>2]|0,K1)G1=P1,y6=Z1;else{f=P1;break}else f=U1;H1=p7(f)|0,q1=H1<<3,P3=q1}Y1=e[X1>>2]|0,j1=(Y1|0)>0,j1?Y3=37:(r2=e[y0>>2]|0,W1=(r2|0)>0,W1&&(Y3=37));do if((Y3|0)==37){if(O1=(u0|0)>0,l2=(P3|0)>(u0|0),_6=O1&l2,_6){s2=P3-u0|0,d2=c2+88|0,A2=e[d2>>2]|0,V1=s2+A2|0,e[d2>>2]=V1;break}if(g2=(U|0)>0,a2=(P3|0)<(U|0),Y6=g2&a2,Y6){t2=P3-U|0,$2=c2+88|0,i2=e[$2>>2]|0,o2=t2+i2|0,e[$2>>2]=o2;break}if(n2=c2+88|0,f2=e[n2>>2]|0,e2=(f2|0)>(H2|0),e2)if(O1){y2=P3-u0|0,S2=f2+y2|0,w2=(S2|0)<(H2|0),n=w2?H2:S2,e[n2>>2]=n;break}else{e[n2>>2]=H2;break}else if(g2){C2=P3-U|0,M2=f2+C2|0,_2=(M2|0)>(H2|0),a=_2?H2:M2,e[n2>>2]=a;break}else{e[n2>>2]=H2;break}}while(!1);return G2=e[c5>>2]|0,K2=(G2|0)>0,K2?(N2=e[D1>>2]|0,q2=(N2|0)==0,q2?P2=G2:(T2=c2+104|0,O2=e[T2>>2]|0,V2=i5(O2,G2)|0,P2=V2),s5=P3-P2|0,T1=c2+84|0,j2=e[T1>>2]|0,X2=s5+j2|0,e[T1>>2]=X2,o=0,o|0):(o=0,o|0)}function jp(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0;return u0=m,a=t+104|0,c=e[a>>2]|0,D=c+120|0,z=e[D>>2]|0,V=(z|0)==0,V?(o=0,o|0):(g0=(n|0)==0,g0||(f0=z+104|0,Q0=e[f0>>2]|0,d0=z+64|0,y0=e[d0>>2]|0,f=y0+104|0,E=e[f>>2]|0,I=E+80|0,C=e[I>>2]|0,E0=(C|0)==0,E0?h0=7:(p=c+124|0,B=e[p>>2]|0,h0=B),v=(Q0+12|0)+(h0<<2)|0,S=e[v>>2]|0,w=Vp(S)|0,e[n>>2]=w,y=e[v>>2]|0,Q=p7(y)|0,_=n+4|0,e[_>>2]=Q,x=n+8|0,e[x>>2]=0,R=z+44|0,L=e[R>>2]|0,M=n+12|0,e[M>>2]=L,T=z+48|0,G=T,N=G,P=e[N>>2]|0,Y=G+4|0,t0=Y,J=e[t0>>2]|0,W=n+16|0,e0=W,H=e0,e[H>>2]=P,X=e0+4|0,U=X,e[U>>2]=J,o0=z+56|0,Z=o0,A0=Z,n0=e[A0>>2]|0,i0=Z+4|0,r0=i0,K=e[r0>>2]|0,c0=n+24|0,s0=c0,l0=s0,e[l0>>2]=n0,j=s0+4|0,a0=j,e[a0>>2]=K),e[D>>2]=0,o=1,o|0)}function Tv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0;M=m,R=n,T=R+112|0;do e[R>>2]=0,R=R+4|0;while((R|0)<(T|0));if(o=n+64|0,e[o>>2]=t,a=n+76|0,e[a>>2]=0,p=n+68|0,e[p>>2]=0,B=e[t>>2]|0,v=(B|0)==0,v)return 0;for(S=t4(1,72)|0,w=n+104|0,e[w>>2]=S,y=S+4|0,s[y>>2]=-9999,D=n+4|0,Q=S+12|0,c=S+40|0,x=0;;)if(f=(x|0)==7,f){e[c>>2]=D,Xm(D),x=8;continue}else{if(E=t4(1,20)|0,I=Q+(x<<2)|0,e[I>>2]=E,Xm(E),C=x+1|0,_=(C|0)==15,_)break;x=C;continue}return 0}function O7(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0;return Y=m,o=n+7|0,a=o&-8,y=t+72|0,R=e[y>>2]|0,L=R+a|0,M=t+76|0,T=e[M>>2]|0,G=(L|0)>(T|0),N=t+68|0,P=e[N>>2]|0,G?(c=(P|0)==0,c||(f=P,E=k9(8)|0,I=t+80|0,C=e[I>>2]|0,p=C+R|0,e[I>>2]=p,B=t+84|0,v=e[B>>2]|0,S=E+4|0,e[S>>2]=v,e[E>>2]=f,e[B>>2]=E),e[M>>2]=a,w=k9(a)|0,e[N>>2]=w,e[y>>2]=0,Q=w,_=0,D=Q+_|0,x=_+a|0,e[y>>2]=x,D|0):(Q=P,_=R,D=Q+_|0,x=_+a|0,e[y>>2]=x,D|0)}function Gv(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0;if(Z=m,a=t+104|0,c=e[a>>2]|0,D=t+84|0,N=e[D>>2]|0,P=(N|0)==0,!P)for(X=N;z=X+4|0,Y=e[z>>2]|0,t0=e[X>>2]|0,I2(t0),I2(X),J=(Y|0)==0,!J;)X=Y;if(W=t+80|0,f=e[W>>2]|0,E=(f|0)==0,n=t+68|0,o=e[n>>2]|0,E?Q=o:(I=t+76|0,C=e[I>>2]|0,p=C+f|0,B=Ni(o,p)|0,e[n>>2]=B,v=e[W>>2]|0,S=e[I>>2]|0,w=S+v|0,e[I>>2]=w,e[W>>2]=0,Q=B),y=t+72|0,e[y>>2]=0,e[D>>2]=0,_=(Q|0)==0,_||I2(Q),x=(c|0)==0,x){U=t,V=U+112|0;do e[U>>2]=0,U=U+4|0;while((U|0)<(V|0));return 0}else H=0;for(;;){if(R=(c+12|0)+(H<<2)|0,L=e[R>>2]|0,eB(L),M=(H|0)==7,M){H=8;continue}if(T=e[R>>2]|0,I2(T),G=H+1|0,e0=(G|0)==15,e0)break;H=G}I2(c),U=t,V=U+112|0;do e[U>>2]=0,U=U+4|0;while((U|0)<(V|0));return 0}function Nv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0;return _=m,a=Ov(t,n,1)|0,c=(a|0)==0,c?(C=t+104|0,p=e[C>>2]|0,B=CS(n)|0,v=p+60|0,e[v>>2]=B,S=t4(1,180)|0,e[p>>2]=S,Jv(S,n),w=p+80|0,Fv(n,w),y=t+64|0,D=y,f=D,e[f>>2]=3,E=D+4|0,I=E,e[I>>2]=0,o=0,o|0):(o=1,o|0)}function Xp(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0;if(N2=m,B=(t|0)==0,!B){if(v=t+4|0,C0=e[v>>2]|0,P0=(C0|0)!=0,P0?(O0=C0+28|0,n1=e[O0>>2]|0,p0=n1):p0=0,D1=t+104|0,v1=e[D1>>2]|0,z1=(v1|0)!=0,z1){if(o2=e[v1>>2]|0,S=(o2|0)==0,S||(Kv(o2),G=e[v1>>2]|0,I2(G)),U=v1+12|0,l0=e[U>>2]|0,f0=(l0|0)==0,f0||(Q0=e[l0>>2]|0,AB(Q0),d0=e[U>>2]|0,y0=e[d0>>2]|0,I2(y0),h0=e[U>>2]|0,I2(h0)),E0=v1+16|0,u0=e[E0>>2]|0,k0=(u0|0)==0,k0||(J0=e[u0>>2]|0,AB(J0),D0=e[E0>>2]|0,B0=e[D0>>2]|0,I2(B0),x0=e[E0>>2]|0,I2(x0)),F0=v1+48|0,M0=e[F0>>2]|0,G0=(M0|0)==0,!G0){if(R0=(p0|0)==0,R0)u1=M0;else if(S0=p0+16|0,L0=e[S0>>2]|0,q0=(L0|0)>0,q0){if(H0=p0+800|0,N0=e[H0>>2]|0,V0=25640+(N0<<2)|0,T0=e[V0>>2]|0,U0=T0+16|0,r1=e[U0>>2]|0,e1=e[M0>>2]|0,Vs[r1&7](e1),v0=e[S0>>2]|0,i1=(v0|0)>1,i1)for($1=1;n=e[F0>>2]|0,c1=H0+($1<<2)|0,f1=e[c1>>2]|0,g1=25640+(f1<<2)|0,l1=e[g1>>2]|0,s1=l1+16|0,a1=e[s1>>2]|0,A1=n+($1<<2)|0,z0=e[A1>>2]|0,Vs[a1&7](z0),I1=$1+1|0,h1=e[S0>>2]|0,E1=(I1|0)<(h1|0),E1;)$1=I1;o=e[F0>>2]|0,u1=o}else u1=M0;I2(u1)}if(d1=v1+52|0,B1=e[d1>>2]|0,p1=(B1|0)==0,!p1){if(Q1=(p0|0)==0,Q1)V1=B1;else if(_1=p0+20|0,y1=e[_1>>2]|0,k1=(y1|0)>0,k1){if(x1=p0+1312|0,L1=e[x1>>2]|0,N1=25648+(L1<<2)|0,w1=e[N1>>2]|0,U1=w1+16|0,Z1=e[U1>>2]|0,G1=e[B1>>2]|0,Vs[Z1&7](G1),K1=e[_1>>2]|0,P1=(K1|0)>1,P1)for(q1=1;a=e[d1>>2]|0,H1=x1+(q1<<2)|0,Y1=e[H1>>2]|0,j1=25648+(Y1<<2)|0,r2=e[j1>>2]|0,W1=r2+16|0,O1=e[W1>>2]|0,l2=a+(q1<<2)|0,h2=e[l2>>2]|0,Vs[O1&7](h2),s2=q1+1|0,d2=e[_1>>2]|0,A2=(s2|0)<(d2|0),A2;)q1=s2;c=e[d1>>2]|0,V1=c}else V1=B1;I2(V1)}if(g2=v1+56|0,a2=e[g2>>2]|0,t2=(a2|0)==0,!t2){if($2=(p0|0)==0,$2)_2=a2;else if(i2=p0+28|0,X1=e[i2>>2]|0,n2=(X1|0)>0,n2){if(aQ(a2),f2=e[i2>>2]|0,e2=(f2|0)>1,e2)for(S2=1;f=e[g2>>2]|0,y2=f+(S2*52|0)|0,aQ(y2),w2=S2+1|0,C2=e[i2>>2]|0,M2=(w2|0)<(C2|0),M2;)S2=w2;E=e[g2>>2]|0,_2=E}else _2=a2;I2(_2)}w=v1+60|0,y=e[w>>2]|0,D=(y|0)==0,D||mS(y),Q=v1+80|0,Lv(Q),_=v1+20|0,EQ(_),x=v1+32|0,EQ(x)}if(R=t+8|0,L=e[R>>2]|0,M=(L|0)==0,!M){if(P0)if(T=C0+4|0,N=e[T>>2]|0,P=(N|0)>0,P){for(Y=L,g0=N,G2=0;z=Y+(G2<<2)|0,t0=e[z>>2]|0,J=(t0|0)==0,J?H=g0:(I2(t0),C=e[T>>2]|0,H=C),W=G2+1|0,e0=(W|0)<(H|0),!!e0;)I=e[R>>2]|0,Y=I,g0=H,G2=W;p=e[R>>2]|0,X=p}else X=L;else X=L;I2(X),o0=t+12|0,Z=e[o0>>2]|0,V=(Z|0)==0,V||I2(Z)}z1&&(A0=v1+64|0,n0=e[A0>>2]|0,i0=(n0|0)==0,i0||I2(n0),r0=v1+68|0,K=e[r0>>2]|0,c0=(K|0)==0,c0||I2(K),s0=v1+72|0,j=e[s0>>2]|0,a0=(j|0)==0,a0||I2(j),I2(v1)),u2=t,q2=u2+112|0;do e[u2>>2]=0,u2=u2+4|0;while((u2|0)<(q2|0))}}function eQ(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0;if(P0=m,I=t+4|0,C=e[I>>2]|0,R=t+104|0,W=e[R>>2]|0,r0=W+64|0,y0=e[r0>>2]|0,B0=(y0|0)==0,B0||I2(y0),e[r0>>2]=0,x0=W+68|0,F0=e[x0>>2]|0,M0=(F0|0)==0,M0||I2(F0),e[x0>>2]=0,p=W+72|0,B=e[p>>2]|0,v=(B|0)==0,v||I2(B),e[p>>2]=0,S=t+20|0,w=e[S>>2]|0,y=w+n|0,D=t+16|0,Q=e[D>>2]|0,_=(y|0)<(Q|0),_)o=C+4|0,f=e[o>>2]|0,X=f,p0=11;else if(x=n<<1,L=w+x|0,e[D>>2]=L,M=C+4|0,T=e[M>>2]|0,G=(T|0)>0,G)if(N=t+8|0,P=e[N>>2]|0,z=e[P>>2]|0,Y=L<<2,t0=Ni(z,Y)|0,J=e[N>>2]|0,e[J>>2]=t0,e0=e[M>>2]|0,H=(e0|0)>1,H)for(i0=1;;)if(a=e[D>>2]|0,A0=e[N>>2]|0,n0=A0+(i0<<2)|0,K=e[n0>>2]|0,c0=a<<2,s0=Ni(K,c0)|0,l0=e[N>>2]|0,j=l0+(i0<<2)|0,e[j>>2]=s0,a0=i0+1|0,g0=e[M>>2]|0,f0=(a0|0)<(g0|0),f0)i0=a0;else{X=g0,p0=11;break}else X=e0,p0=11;if((p0|0)==11&&(U=(X|0)>0,U)){for(o0=t+8|0,Z=e[S>>2]|0,V=t+12|0,G0=0;;)if(Q0=e[o0>>2]|0,d0=Q0+(G0<<2)|0,h0=e[d0>>2]|0,E0=h0+(Z<<2)|0,C0=e[V>>2]|0,u0=C0+(G0<<2)|0,e[u0>>2]=E0,k0=G0+1|0,J0=(k0|0)<(X|0),J0)G0=k0;else{c=V;break}return D0=e[c>>2]|0,D0|0}return E=t+12|0,c=E,D0=e[c>>2]|0,D0|0}function Uv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0;if(N0=m,I=t+4|0,C=e[I>>2]|0,R=C+28|0,W=e[R>>2]|0,r0=(n|0)<1,!r0)return Q0=t+20|0,d0=e[Q0>>2]|0,h0=d0+n|0,E0=t+16|0,C0=e[E0>>2]|0,u0=(h0|0)>(C0|0),u0?(a=-131,m=N0,a|0):(e[Q0>>2]=h0,k0=t+28|0,J0=e[k0>>2]|0,D0=(J0|0)==0,!D0||(B0=t+48|0,x0=e[B0>>2]|0,F0=h0-x0|0,G0=W+4|0,p0=e[G0>>2]|0,P0=(F0|0)>(p0|0),!P0)?(a=0,m=N0,a|0):(iQ(t),a=0,m=N0,a|0));if(y0=m,m=m+128|0,M0=t+28|0,R0=e[M0>>2]|0,S0=(R0|0)==0,S0&&iQ(t),L0=W+4|0,p=e[L0>>2]|0,B=p*3|0,eQ(t,B)|0,v=t+20|0,S=e[v>>2]|0,w=t+32|0,e[w>>2]=S,y=e[L0>>2]|0,D=y*3|0,Q=S+D|0,e[v>>2]=Q,_=C+4|0,x=e[_>>2]|0,L=(x|0)>0,!L)return a=0,m=N0,a|0;for(M=t+8|0,T=S,q0=0;;){if(G=(T|0)>64,G?(N=e[L0>>2]|0,P=(T|0)>(N|0),o=P?N:T,z=e[M>>2]|0,Y=z+(q0<<2)|0,t0=e[Y>>2]|0,f=T-o|0,J=t0+(f<<2)|0,+rQ(J,y0,o,32),e0=e[M>>2]|0,H=e0+(q0<<2)|0,X=e[H>>2]|0,U=e[w>>2]|0,o0=X+(U<<2)|0,E=U+-32|0,Z=X+(E<<2)|0,V=e[v>>2]|0,A0=V-U|0,nQ(y0,Z,32,o0,A0)):(n0=e[M>>2]|0,i0=n0+(q0<<2)|0,K=e[i0>>2]|0,c0=K+(T<<2)|0,s0=e[v>>2]|0,l0=s0-T|0,j=l0<<2,Ae(c0|0,0,j|0)|0),a0=q0+1|0,g0=e[_>>2]|0,f0=(a0|0)<(g0|0),!f0){a=0;break}c=e[w>>2]|0,T=c,q0=a0}return m=N0,a|0}function tQ(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,Z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,m6=0,z3=0,a6=0,B6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,A3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0;if(r4=m,v=t+4|0,S=e[v>>2]|0,s2=S+28|0,y5=e[s2>>2]|0,X3=t+104|0,k6=e[X3>>2]|0,f6=k6+60|0,u6=e[f6>>2]|0,G6=t+48|0,X6=e[G6>>2]|0,w=t+40|0,N=e[w>>2]|0,o0=y5+(N<<2)|0,j=e[o0>>2]|0,k0=(j|0)/2&-1,S0=X6-k0|0,v0=n+104|0,z0=e[v0>>2]|0,y1=t+28|0,P1=e[y1>>2]|0,d2=(P1|0)==0,d2||(f2=t+32|0,N2=e[f2>>2]|0,v5=(N2|0)==-1,v5))return a=0,a|0;m2=Vv(t)|0,m5=(m2|0)==-1;do if(m5){if(J2=e[f2>>2]|0,f3=(J2|0)==0,f3)return a=0,a|0;q3=t+44|0,e[q3>>2]=0,f=q3,N3=0;break}else if(C3=e[y5>>2]|0,G3=y5+4|0,L5=e[G3>>2]|0,t6=(C3|0)==(L5|0),i3=t+44|0,t6){e[i3>>2]=0,f=i3,N3=0;break}else{e[i3>>2]=m2,f=i3,N3=m2;break}while(!1);if(o3=e[G6>>2]|0,R3=e[w>>2]|0,h6=y5+(R3<<2)|0,B3=e[h6>>2]|0,w3=(B3|0)/4&-1,p3=w3+o3|0,V3=y5+(N3<<2)|0,Z5=e[V3>>2]|0,k3=(Z5|0)/4&-1,c3=p3+k3|0,U3=(Z5|0)/2&-1,o6=c3+U3|0,u3=t+20|0,y6=e[u3>>2]|0,w6=(y6|0)<(o6|0),w6)return a=0,a|0;if(m6=n+84|0,z3=e[m6>>2]|0,a6=(z3|0)==0,!a6)for(u9=z3;B6=u9+4|0,_6=e[B6>>2]|0,Y6=e[u9>>2]|0,I2(Y6),I2(u9),C6=(_6|0)==0,!C6;)u9=_6;v3=n+80|0,Z3=e[v3>>2]|0,W3=(Z3|0)==0,W3||(O3=n+68|0,S3=e[O3>>2]|0,P3=n+76|0,Y3=e[P3>>2]|0,v6=Y3+Z3|0,i6=Ni(S3,v6)|0,e[O3>>2]=i6,r3=e[v3>>2]|0,O6=e[P3>>2]|0,A3=O6+r3|0,e[P3>>2]=A3,e[v3>>2]=0),r6=n+72|0,e[r6>>2]=0,e[m6>>2]=0,D3=t+36|0,T6=e[D3>>2]|0,e6=n+24|0,e[e6>>2]=T6,p6=e[w>>2]|0,R6=n+28|0,e[R6>>2]=p6,K6=e[f>>2]|0,I6=n+32|0,e[I6>>2]=K6,J6=(p6|0)==0;do if(J6)if(r9=zv(t)|0,x6=(r9|0)==0,N6=z0+8|0,x6){e[N6>>2]=1;break}else{e[N6>>2]=0;break}else if(x3=(T6|0)==0,Z6=(K6|0)==0,M9=x3|Z6,j6=z0+8|0,M9){e[j6>>2]=0;break}else{e[j6>>2]=1;break}while(!1);S6=n+64|0,e[S6>>2]=t,V6=t+64|0,Q6=V6,F6=Q6,F3=e[F6>>2]|0,L6=Q6+4|0,s9=L6,W6=e[s9>>2]|0,g9=Ys(F3|0,W6|0,1,0)|0,h9=q6,f9=V6,A9=f9,e[A9>>2]=g9,o9=f9+4|0,L9=o9,e[L9>>2]=h9,d6=n+56|0,M6=d6,y=M6,e[y>>2]=F3,D=M6+4|0,Q=D,e[Q>>2]=W6,_=t+56|0,x=_,R=x,L=e[R>>2]|0,M=x+4|0,T=M,G=e[T>>2]|0,P=n+48|0,z=P,Y=z,e[Y>>2]=L,t0=z+4|0,J=t0,e[J>>2]=G,W=e[w>>2]|0,e0=y5+(W<<2)|0,H=e[e0>>2]|0,X=n+36|0,e[X>>2]=H,U=z0+4|0,Z=+s[U>>2],V=+s[u6>>2],A0=Z>V,A0?(s[u6>>2]=Z,n0=Z):n0=V,i0=+QS(n0,t),s[u6>>2]=i0,s[U>>2]=i0,r0=S+4|0,K=e[r0>>2]|0,c0=K<<2,s0=c0+7|0,l0=s0&-8,a0=e[r6>>2]|0,g0=l0+a0|0,f0=n+76|0,Q0=e[f0>>2]|0,d0=(g0|0)>(Q0|0),y0=n+68|0,h0=e[y0>>2]|0,d0?(E0=(h0|0)==0,E0||(C0=h0,u0=k9(8)|0,J0=e[v3>>2]|0,D0=J0+a0|0,e[v3>>2]=D0,B0=e[m6>>2]|0,x0=u0+4|0,e[x0>>2]=B0,e[u0>>2]=C0,e[m6>>2]=u0),e[f0>>2]=l0,F0=k9(l0)|0,e[y0>>2]=F0,e[r6>>2]=0,c=e[r0>>2]|0,G0=F0,p0=0,L0=c,T0=l0):(G0=h0,p0=a0,L0=K,T0=Q0),M0=G0+p0|0,P0=p0+l0|0,e[r6>>2]=P0,e[n>>2]=M0,R0=L0<<2,q0=R0+7|0,H0=q0&-8,N0=H0+P0|0,V0=(N0|0)>(T0|0),V0?(U0=(G0|0)==0,U0||(r1=G0,O0=k9(8)|0,e1=e[v3>>2]|0,i1=e1+P0|0,e[v3>>2]=i1,c1=e[m6>>2]|0,$1=O0+4|0,e[$1>>2]=c1,e[O0>>2]=r1,e[m6>>2]=O0),e[f0>>2]=H0,f1=k9(H0)|0,e[y0>>2]=f1,e[r6>>2]=0,E=e[r0>>2]|0,l1=f1,s1=0,n1=E,P5=H0):(l1=G0,s1=P0,n1=L0,P5=T0),g1=l1+s1|0,a1=s1+H0|0,e[r6>>2]=a1,e[z0>>2]=g1,A1=(n1|0)>0;e:do if(A1)for(I1=t+8|0,Q1=a1,_1=P5,k1=l1,e9=0;;){if(h1=e[X>>2]|0,E1=h1+S0|0,u1=E1<<2,d1=u1+7|0,B1=d1&-8,p1=B1+Q1|0,D1=(p1|0)>(_1|0),D1?(x1=(k1|0)==0,x1||(L1=k1,N1=k9(8)|0,w1=e[v3>>2]|0,U1=w1+Q1|0,e[v3>>2]=U1,Z1=e[m6>>2]|0,G1=N1+4|0,e[G1>>2]=Z1,e[N1>>2]=L1,e[m6>>2]=N1),e[f0>>2]=B1,v1=k9(B1)|0,e[y0>>2]=v1,e[r6>>2]=0,H1=v1,q1=0):(H1=k1,q1=Q1),K1=H1+q1|0,Y1=q1+B1|0,e[r6>>2]=Y1,j1=e[z0>>2]|0,r2=j1+(e9<<2)|0,e[r2>>2]=K1,W1=e[z0>>2]|0,O1=W1+(e9<<2)|0,l2=e[O1>>2]|0,z1=e[I1>>2]|0,h2=z1+(e9<<2)|0,A2=e[h2>>2]|0,i4(l2|0,A2|0,u1|0)|0,V1=e[z0>>2]|0,g2=V1+(e9<<2)|0,a2=e[g2>>2]|0,t2=a2+(S0<<2)|0,$2=e[n>>2]|0,i2=$2+(e9<<2)|0,e[i2>>2]=t2,o2=e9+1|0,X1=e[r0>>2]|0,n2=(o2|0)<(X1|0),!n2)break e;I=e[r6>>2]|0,C=e[f0>>2]|0,p=e[y0>>2]|0,Q1=I,_1=C,k1=p,e9=o2}while(!1);if(e2=e[f2>>2]|0,y2=(e2|0)==0,!y2&&(S2=e[G6>>2]|0,w2=(S2|0)<(e2|0),!w2))return e[f2>>2]=-1,C2=n+44|0,e[C2>>2]=1,a=1,a|0;if(M2=y5+4|0,_2=e[M2>>2]|0,G2=(_2|0)/2&-1,u2=c3-G2|0,K2=(u2|0)>0,!K2)return a=1,a|0;if(q2=e[k6>>2]|0,Zv(q2,u2),T2=e[u3>>2]|0,O2=T2-u2|0,e[u3>>2]=O2,V2=e[r0>>2]|0,s5=(V2|0)>0,s5&&(P2=t+8|0,T1=e[P2>>2]|0,j2=e[T1>>2]|0,R5=j2+(u2<<2)|0,X2=O2<<2,Vo(j2|0,R5|0,X2|0)|0,z2=e[r0>>2]|0,f5=(z2|0)>1,f5))for($5=1;B=e[u3>>2]|0,w5=e[P2>>2]|0,O5=w5+($5<<2)|0,k2=e[O5>>2]|0,E5=k2+(u2<<2)|0,r5=B<<2,Vo(k2|0,E5|0,r5|0)|0,x2=$5+1|0,R2=e[r0>>2]|0,C5=(x2|0)<(R2|0),C5;)$5=x2;return x5=e[w>>2]|0,e[D3>>2]=x5,u5=e[f>>2]|0,e[w>>2]=u5,e[G6>>2]=G2,S5=e[f2>>2]|0,G5=(S5|0)==0,G5?(h3=(u2|0)<0,m3=h3<<31>>31,M3=_,W5=M3,Q3=e[W5>>2]|0,X5=M3+4|0,j3=X5,_3=e[j3>>2]|0,T3=Ys(Q3|0,_3|0,u2|0,m3|0)|0,a3=q6,$3=_,l3=$3,e[l3>>2]=T3,Y5=$3+4|0,N5=Y5,e[N5>>2]=a3,a=1,a|0):(D5=S5-u2|0,H2=(D5|0)<1,o=H2?-1:D5,e[f2>>2]=o,I5=(o|0)>(G2|0),I5?(a5=(u2|0)<0,F2=a5<<31>>31,p5=_,q5=p5,e3=e[q5>>2]|0,d5=p5+4|0,g3=d5,V5=e[g3>>2]|0,t3=Ys(e3|0,V5|0,u2|0,F2|0)|0,s3=q6,E3=_,F5=E3,e[F5>>2]=t3,z5=E3+4|0,y3=z5,e[y3>>2]=s3,a=1,a|0):(A5=o+u2|0,l5=A5-G2|0,M1=(l5|0)<0,k5=M1<<31>>31,c5=_,o5=c5,Z2=e[o5>>2]|0,c2=c5+4|0,B5=c2,e5=e[B5>>2]|0,n5=Ys(Z2|0,e5|0,l5|0,k5|0)|0,g5=q6,h5=_,t5=h5,e[t5>>2]=n5,b5=h5+4|0,W2=b5,e[W2>>2]=g5,a=1,a|0))}function Ov(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0;if(t5=m,p=n+28|0,B=e[p>>2]|0,p1=(B|0)==0,p1||(Z1=B+8|0,O1=e[Z1>>2]|0,$2=(O1|0)<1,$2)||(M2=e[B>>2]|0,P2=(M2|0)<64,P2)||(k2=B+4|0,D5=e[k2>>2]|0,v=(D5|0)<(M2|0),v))return a=1,a|0;T=B+3656|0,X=e[T>>2]|0,J2=t,b5=J2+112|0;do e[J2>>2]=0,J2=J2+4|0;while((J2|0)<(b5|0));s0=t4(1,136)|0,C0=t+104|0,e[C0>>2]=s0,P0=t+4|0,e[P0>>2]=n,O0=e[Z1>>2]|0,n1=O0+-1|0,d1=L7(n1)|0,B1=s0+44|0,e[B1>>2]=d1,Q1=t4(1,4)|0,D1=s0+12|0,e[D1>>2]=Q1,_1=t4(1,4)|0,y1=s0+16|0,e[y1>>2]=_1,k1=t4(1,20)|0,e[Q1>>2]=k1,x1=t4(1,20)|0,e[_1>>2]=x1,L1=e[B>>2]|0,N1=L1>>X,sB(k1,N1),w1=e[y1>>2]|0,U1=e[w1>>2]|0,G1=e[k2>>2]|0,v1=G1>>X,sB(U1,v1),K1=e[B>>2]|0,P1=L7(K1)|0,H1=P1+-7|0,q1=s0+4|0,e[q1>>2]=H1,Y1=e[k2>>2]|0,j1=L7(Y1)|0,r2=j1+-7|0,W1=s0+8|0,e[W1>>2]=r2,l2=(o|0)==0;e:do if(l2){if(m2=B+2848|0,C5=e[m2>>2]|0,x5=(C5|0)==0,x5&&(u5=B+24|0,S5=e[u5>>2]|0,G5=t4(S5,56)|0,e[m2>>2]=G5,H2=e[u5>>2]|0,I5=(H2|0)>0,I5)){for(E1=H2,B5=0;;){if(A5=(B+1824|0)+(B5<<2)|0,l5=e[A5>>2]|0,m5=(l5|0)==0,m5){M1=E1;break}if(c5=e[m2>>2]|0,o5=c5+(B5*56|0)|0,Z2=HS(o5,l5)|0,S=(Z2|0)==0,!S){h5=20;break}if(w=e[A5>>2]|0,oB(w),e[A5>>2]=0,y=B5+1|0,D=e[u5>>2]|0,Q=(y|0)<(D|0),Q)E1=D,B5=y;else break e}if((h5|0)==20&&(I=e[u5>>2]|0,M1=I),k5=(M1|0)>0,k5)for(u1=M1,g5=0;s1=(B+1824|0)+(g5<<2)|0,a1=e[s1>>2]|0,A1=(a1|0)==0,A1?h1=u1:(oB(a1),e[s1>>2]=0,C=e[u5>>2]|0,h1=C),z0=g5+1|0,I1=(z0|0)<(h1|0),I1;)u1=h1,g5=z0;return Xp(t),a=-1,a|0}}else{if(z1=s0+20|0,h2=e[B>>2]|0,dQ(z1,h2),s2=s0+32|0,d2=e[k2>>2]|0,dQ(s2,d2),A2=B+2848|0,V1=e[A2>>2]|0,g2=(V1|0)==0,g2&&(a2=B+24|0,t2=e[a2>>2]|0,i2=t4(t2,56)|0,e[A2>>2]=i2,o2=e[a2>>2]|0,X1=(o2|0)>0,X1&&(n2=B+1824|0,f2=e[n2>>2]|0,IQ(i2,f2)|0,e2=e[a2>>2]|0,y2=(e2|0)>1,y2)))for(w2=1;c=e[A2>>2]|0,S2=c+(w2*56|0)|0,C2=(B+1824|0)+(w2<<2)|0,_2=e[C2>>2]|0,IQ(S2,_2)|0,G2=w2+1|0,u2=e[a2>>2]|0,K2=(G2|0)<(u2|0),K2;)w2=G2;N2=B+28|0,q2=e[N2>>2]|0,T2=t4(q2,52)|0,O2=s0+56|0,e[O2>>2]=T2,V2=e[N2>>2]|0,s5=(V2|0)>0;t:do if(s5)for(T1=B+2868|0,j2=n+8|0,X2=T2,c2=0;;){if(R5=X2+(c2*52|0)|0,v5=(B+2852|0)+(c2<<2)|0,z2=e[v5>>2]|0,f5=e[z2>>2]|0,w5=B+(f5<<2)|0,O5=e[w5>>2]|0,$5=(O5|0)/2&-1,E5=e[j2>>2]|0,pS(R5,z2,T1,$5,E5),r5=c2+1|0,x2=e[N2>>2]|0,R2=(r5|0)<(x2|0),!R2)break t;f=e[O2>>2]|0,X2=f,c2=r5}while(!1);e[t>>2]=1}while(!1);if(_=e[k2>>2]|0,x=t+16|0,e[x>>2]=_,R=n+4|0,L=e[R>>2]|0,M=L<<2,G=k9(M)|0,N=t+8|0,e[N>>2]=G,P=k9(M)|0,z=t+12|0,e[z>>2]=P,Y=(L|0)>0,Y&&(t0=t4(_,4)|0,e[G>>2]=t0,J=(L|0)>1,J))for(H=1;E=e[N>>2]|0,W=t4(_,4)|0,e0=E+(H<<2)|0,e[e0>>2]=W,U=H+1|0,o0=(U|0)<(L|0),o0;)H=U;if(Z=t+36|0,e[Z>>2]=0,V=t+40|0,e[V>>2]=0,A0=e[k2>>2]|0,n0=(A0|0)/2&-1,i0=t+48|0,e[i0>>2]=n0,r0=t+20|0,e[r0>>2]=n0,K=B+16|0,c0=e[K>>2]|0,l0=t4(c0,4)|0,j=s0+48|0,e[j>>2]=l0,a0=B+20|0,g0=e[a0>>2]|0,f0=t4(g0,4)|0,Q0=s0+52|0,e[Q0>>2]=f0,d0=e[K>>2]|0,y0=(d0|0)>0,y0)for(e5=0;u0=(B+800|0)+(e5<<2)|0,k0=e[u0>>2]|0,J0=25640+(k0<<2)|0,D0=e[J0>>2]|0,B0=D0+8|0,x0=e[B0>>2]|0,F0=(B+1056|0)+(e5<<2)|0,M0=e[F0>>2]|0,G0=ct[x0&15](t,M0)|0,p0=e[j>>2]|0,R0=p0+(e5<<2)|0,e[R0>>2]=G0,S0=e5+1|0,L0=e[K>>2]|0,q0=(S0|0)<(L0|0),q0;)e5=S0;if(h0=e[a0>>2]|0,E0=(h0|0)>0,E0)n5=0;else return a=0,a|0;for(;;)if(H0=(B+1312|0)+(n5<<2)|0,N0=e[H0>>2]|0,V0=25648+(N0<<2)|0,T0=e[V0>>2]|0,U0=T0+8|0,r1=e[U0>>2]|0,e1=(B+1568|0)+(n5<<2)|0,v0=e[e1>>2]|0,i1=ct[r1&15](t,v0)|0,c1=e[Q0>>2]|0,$1=c1+(n5<<2)|0,e[$1>>2]=i1,f1=n5+1|0,g1=e[a0>>2]|0,l1=(f1|0)<(g1|0),l1)n5=f1;else{a=0;break}return a|0}function iQ(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0;if(D0=m,m=m+64|0,c=D0,f=t+20|0,Q=e[f>>2]|0,Y=Q<<2,n=Y,A0=m,m=m+((1*n|0)+15&-16)|0,f0=t+28|0,e[f0>>2]=1,d0=t+48|0,y0=e[d0>>2]|0,h0=Q-y0|0,E0=(h0|0)>32,!E0){m=D0;return}if(E=t+4|0,I=e[E>>2]|0,C=I+4|0,p=e[C>>2]|0,B=(p|0)>0,!B){m=D0;return}for(v=t+8|0,S=Q,C0=0;;){if(w=(S|0)>0,w)for(y=e[v>>2]|0,D=y+(C0<<2)|0,_=e[D>>2]|0,u0=0;x=u0^-1,R=S+x|0,L=_+(R<<2)|0,M=e[L>>2]|0,T=A0+(u0<<2)|0,e[T>>2]=M,G=u0+1|0,N=(S|0)>(G|0),N;)u0=G;if(P=e[d0>>2]|0,z=S-P|0,+rQ(A0,c,z,16),t0=e[f>>2]|0,J=e[d0>>2]|0,o=t0-J|0,W=A0+(o<<2)|0,a=o+-16|0,e0=A0+(a<<2)|0,nQ(c,e0,16,W,J),H=e[f>>2]|0,X=(H|0)>0,X)for(U=e[v>>2]|0,o0=U+(C0<<2)|0,Z=e[o0>>2]|0,k0=0;V=A0+(k0<<2)|0,n0=e[V>>2]|0,i0=k0^-1,r0=H+i0|0,K=Z+(r0<<2)|0,e[K>>2]=n0,c0=k0+1|0,s0=(H|0)>(c0|0),s0;)k0=c0;if(l0=C0+1|0,j=e[E>>2]|0,a0=j+4|0,g0=e[a0>>2]|0,Q0=(l0|0)<(g0|0),Q0)S=H,C0=l0;else break}m=D0}function Pv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0;o2=m,U2(n,5653314,24),E=e[t>>2]|0,U2(n,E,16),I=t+4|0,N=e[I>>2]|0,U2(n,N,24),o0=e[I>>2]|0,j=(o0|0)>1;e:do if(j)for(k0=t+8|0,S0=e[k0>>2]|0,c=u[S0>>0]|0,v0=c,O1=1;;){if(z0=v0<<24>>24==0,z0){W1=O1;break e}if(y1=S0+O1|0,C=u[y1>>0]|0,D=C<<24>>24>24,D){W1=O1;break e}if(Q=O1+1|0,_=(Q|0)<(o0|0),_)v0=C,O1=Q;else{W1=Q;break}}else W1=1;while(!1);x=(W1|0)==(o0|0);e:do if(x){if(U2(n,1,1),R=t+8|0,L=e[R>>2]|0,M=u[L>>0]|0,T=M<<24>>24,G=T+-1|0,U2(n,G,5),P=e[I>>2]|0,z=(P|0)>1,z)for(y=P,H1=0,z1=1;;){if(Y=e[R>>2]|0,t0=Y+z1|0,J=u[t0>>0]|0,W=z1+-1|0,e0=Y+W|0,H=u[e0>>0]|0,X=J<<24>>24>H<<24>>24,X)for(U=H<<24>>24,Z=J<<24>>24,n0=y,q1=H1,a2=U;;)if(V=z1-q1|0,A0=n0-q1|0,i0=L7(A0)|0,U2(n,V,i0),r0=a2+1|0,r2=(r0|0)==(Z|0),f=e[I>>2]|0,r2){s0=f,Y1=z1;break}else n0=f,q1=z1,a2=r0;else s0=y,Y1=H1;if(K=z1+1|0,c0=(K|0)<(s0|0),c0)y=s0,H1=Y1,z1=K;else{a=s0,P1=Y1,l2=K;break}}else a=P,P1=0,l2=1;l0=l2-P1|0,a0=a-P1|0,g0=L7(a0)|0,U2(n,l0,g0)}else{U2(n,0,1),f0=e[I>>2]|0,Q0=(f0|0)>0;t:do if(Q0)for(d0=t+8|0,y0=e[d0>>2]|0,s2=0;;){if(h0=y0+s2|0,E0=u[h0>>0]|0,C0=E0<<24>>24==0,C0){h2=s2;break t}if(u0=s2+1|0,J0=(u0|0)<(f0|0),J0)s2=u0;else{h2=u0;break}}else h2=0;while(!1);if(D0=(h2|0)==(f0|0),D0){if(U2(n,0,1),B0=e[I>>2]|0,x0=(B0|0)>0,!x0)break;for(F0=t+8|0,d2=0;;)if(M0=e[F0>>2]|0,G0=M0+d2|0,p0=u[G0>>0]|0,P0=p0<<24>>24,R0=P0+-1|0,U2(n,R0,5),L0=d2+1|0,q0=e[I>>2]|0,H0=(L0|0)<(q0|0),H0)d2=L0;else break e}if(U2(n,1,1),N0=e[I>>2]|0,V0=(N0|0)>0,V0)for(T0=t+8|0,A2=0;U0=e[T0>>2]|0,r1=U0+A2|0,O0=u[r1>>0]|0,e1=O0<<24>>24==0,e1?U2(n,0,1):(U2(n,1,1),i1=e[T0>>2]|0,c1=i1+A2|0,$1=u[c1>>0]|0,f1=$1<<24>>24,g1=f1+-1|0,U2(n,g1,5)),l1=A2+1|0,s1=e[I>>2]|0,a1=(l1|0)<(s1|0),a1;)A2=l1}while(!1);if(n1=t+12|0,A1=e[n1>>2]|0,U2(n,A1,4),I1=e[n1>>2]|0,(I1|0)==2|(I1|0)==1)i2=28;else if(I1|0)return o=-1,o|0;do if((i2|0)==28){if(h1=t+32|0,E1=e[h1>>2]|0,u1=(E1|0)==0,u1)return o=-1,o|0;if(d1=t+16|0,B1=e[d1>>2]|0,U2(n,B1,32),p1=t+20|0,Q1=e[p1>>2]|0,U2(n,Q1,32),D1=t+24|0,_1=e[D1>>2]|0,k1=_1+-1|0,U2(n,k1,4),x1=t+28|0,L1=e[x1>>2]|0,U2(n,L1,1),N1=e[n1>>2]|0,(N1|0)==1)w1=US(t)|0,$2=w1;else if((N1|0)==2)U1=e[I>>2]|0,Z1=e[t>>2]|0,G1=i5(Z1,U1)|0,$2=G1;else break;if(v1=($2|0)>0,v1)for(V1=0;K1=e[h1>>2]|0,p=K1+(V1<<2)|0,B=e[p>>2]|0,g2=(B|0)>-1,t2=0-B|0,v=g2?B:t2,S=e[D1>>2]|0,U2(n,v,S),w=V1+1|0,j1=(w|0)==($2|0),!j1;)V1=w}while(!1);return o=0,o|0}function Rh(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0;return z=m,c=(n|0)<0,c||(f=t+12|0,Q=e[f>>2]|0,x=Q+4|0,R=e[x>>2]|0,L=(R|0)>(n|0),!L)?(a=0,a|0):(M=t+20|0,T=e[M>>2]|0,G=T+(n<<2)|0,N=e[G>>2]|0,E=Q+8|0,I=e[E>>2]|0,C=I+n|0,p=u[C>>0]|0,B=p<<24>>24,U2(o,N,B),v=e[f>>2]|0,S=v+8|0,w=e[S>>2]|0,y=w+n|0,D=u[y>>0]|0,_=D<<24>>24,a=_,a|0)}function JC(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0;return w=m,a=t+8|0,c=e[a>>2]|0,f=(c|0)>0,!f||(E=xh(t,n)|0,I=(E|0)>-1,!I)?(o=-1,o|0):(C=t+24|0,p=e[C>>2]|0,B=p+(E<<2)|0,v=e[B>>2]|0,o=v,o|0)}function Hv(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0;if(j=m,C=t+8|0,p=e[C>>2]|0,L=(p|0)>0,!L)return c=0,m=j,c|0;e0=e[t>>2]|0,X=(a|0)/(e0|0)&-1,U=X<<2,f=U,o0=m,m=m+((1*f|0)+15&-16)|0,Z=(X|0)>0;e:do if(Z){for(V=t+16|0,r0=0;;){if(G=xh(t,o)|0,N=(G|0)==-1,N){c=-1;break}if(P=e[V>>2]|0,z=e[t>>2]|0,Y=i5(z,G)|0,t0=P+(Y<<2)|0,J=o0+(r0<<2)|0,e[J>>2]=t0,W=r0+1|0,H=(W|0)<(X|0),H)r0=W;else{A0=z;break e}}return m=j,c|0}else A0=e0;while(!1);if(E=(A0|0)<1,I=Z^1,n0=E|I,n0)return c=0,m=j,c|0;for(K=0,s0=0;;){for(c0=0;w=o0+(c0<<2)|0,y=e[w>>2]|0,D=y+(K<<2)|0,Q=+s[D>>2],_=c0+s0|0,x=n+(_<<2)|0,R=+s[x>>2],M=R+Q,s[x>>2]=M,T=c0+1|0,i0=(T|0)==(X|0),!i0;)c0=T;if(B=K+1|0,v=s0+X|0,S=(B|0)<(A0|0),S)K=B,s0=v;else{c=0;break}}return m=j,c|0}function qv(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0;if(j2=m,Y=t+8|0,t0=e[Y>>2]|0,l0=(t0|0)>0,!l0)return c=0,c|0;if(u0=e[t>>2]|0,R0=(u0|0)>8,R0){if(_1=(a|0)>0,!_1)return c=0,c|0;for(K1=t+16|0,X1=0;;){if(Z=xh(t,o)|0,V=(Z|0)==-1,V){c=-1,T1=29;break}if(A0=e[K1>>2]|0,n0=e[t>>2]|0,i0=i5(n0,Z)|0,r0=(n0|0)>0,r0){for(K=(n0|0)>1,P2=K?n0:1,f2=X1,u2=0;c0=u2+1|0,z=u2+i0|0,s0=A0+(z<<2)|0,j=+s[s0>>2],a0=f2+1|0,g0=n+(f2<<2)|0,f0=+s[g0>>2],Q0=f0+j,s[g0>>2]=Q0,d0=(c0|0)<(n0|0),d0;)f2=a0,u2=c0;h2=X1+P2|0,n2=h2}else n2=X1;if(J=(n2|0)<(a|0),J)X1=n2;else{c=0,T1=29;break}}if((T1|0)==29)return c|0}if(e1=t+16|0,A1=(a|0)>0,A1)e2=0;else return c=0,c|0;e:for(;;){t:for(;;){if(H=xh(t,o)|0,X=(H|0)==-1,X){c=-1,T1=29;break e}switch(U=e[e1>>2]|0,o0=e[t>>2]|0,o0|0){case 4:{B=H,Q=U,T1=19;break t}case 3:{v=H,_=U,T1=21;break t}case 7:{I=H,w=U,T1=13;break t}case 6:{C=H,y=U,T1=15;break t}case 8:{f=U,E=H,T1=12;break t}case 5:{p=H,D=U,T1=17;break t}case 1:{V1=H,a2=U,G2=e2,s5=0;break t}case 2:{S=H,x=U,T1=23;break t}default:}}if((T1|0)==12?(T1=0,y0=E<<3,h0=f+(y0<<2)|0,E0=+s[h0>>2],C0=e2+1|0,k0=n+(e2<<2)|0,J0=+s[k0>>2],D0=J0+E0,s[k0>>2]=D0,F0=y0,G0=f,y2=C0,K2=1,T1=14):(T1|0)==13?(T1=0,B0=I*7|0,F0=B0,G0=w,y2=e2,K2=0,T1=14):(T1|0)==15?(T1=0,H0=C*6|0,V0=H0,U0=y,S2=e2,N2=0,T1=16):(T1|0)==17?(T1=0,$1=p*5|0,g1=$1,s1=D,w2=e2,q2=0,T1=18):(T1|0)==19?(T1=0,E1=B<<2,d1=E1,p1=Q,C2=e2,T2=0,T1=20):(T1|0)==21?(T1=0,L1=v*3|0,w1=L1,Z1=_,M2=e2,O2=0,T1=22):(T1|0)==23&&(T1=0,Y1=S<<1,r2=Y1,O1=x,_2=e2,V2=0,T1=24),(T1|0)==14&&(T1=0,x0=K2+1|0,P=K2+F0|0,M0=G0+(P<<2)|0,p0=+s[M0>>2],P0=y2+1|0,S0=n+(y2<<2)|0,L0=+s[S0>>2],q0=L0+p0,s[S0>>2]=q0,V0=F0,U0=G0,S2=P0,N2=x0,T1=16),(T1|0)==16&&(T1=0,N0=N2+1|0,N=N2+V0|0,T0=U0+(N<<2)|0,r1=+s[T0>>2],O0=S2+1|0,v0=n+(S2<<2)|0,i1=+s[v0>>2],c1=i1+r1,s[v0>>2]=c1,g1=V0,s1=U0,w2=O0,q2=N0,T1=18),(T1|0)==18&&(T1=0,f1=q2+1|0,G=q2+g1|0,l1=s1+(G<<2)|0,a1=+s[l1>>2],n1=w2+1|0,z0=n+(w2<<2)|0,I1=+s[z0>>2],h1=I1+a1,s[z0>>2]=h1,d1=g1,p1=s1,C2=n1,T2=f1,T1=20),(T1|0)==20&&(T1=0,u1=T2+1|0,T=T2+d1|0,B1=p1+(T<<2)|0,Q1=+s[B1>>2],D1=C2+1|0,y1=n+(C2<<2)|0,k1=+s[y1>>2],x1=k1+Q1,s[y1>>2]=x1,w1=d1,Z1=p1,M2=D1,O2=u1,T1=22),(T1|0)==22&&(T1=0,N1=O2+1|0,M=O2+w1|0,U1=Z1+(M<<2)|0,G1=+s[U1>>2],v1=M2+1|0,P1=n+(M2<<2)|0,H1=+s[P1>>2],q1=H1+G1,s[P1>>2]=q1,r2=w1,O1=Z1,_2=v1,V2=N1,T1=24),(T1|0)==24&&(T1=0,j1=V2+1|0,L=V2+r2|0,W1=O1+(L<<2)|0,l2=+s[W1>>2],z1=_2+1|0,s2=n+(_2<<2)|0,d2=+s[s2>>2],A2=d2+l2,s[s2>>2]=A2,V1=r2,a2=O1,G2=z1,s5=j1),R=s5+V1|0,g2=a2+(R<<2)|0,t2=+s[g2>>2],$2=G2+1|0,i2=n+(G2<<2)|0,o2=+s[i2>>2],W=o2+t2,s[i2>>2]=W,e0=($2|0)<(a|0),e0)e2=$2;else{c=0,T1=29;break}}return(T1|0)==29?c|0:0}function Yv(t,n,o,a,c,f){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0;var E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0;if(l0=m,B=t+8|0,v=e[B>>2]|0,T=(v|0)>0,!T||(W=(o|0)/(a|0)&-1,e0=f+o|0,H=(e0|0)/(a|0)&-1,X=(W|0)<(H|0),!X))return I=0,I|0;for(U=t+16|0,V=0,i0=W;;){if(Z=xh(t,c)|0,S=(Z|0)==-1,S){I=-1,s0=8;break}if(w=e[U>>2]|0,y=e[t>>2]|0,D=i5(y,Z)|0,Q=(y|0)>0,Q)for(n0=V,K=i0,c0=0;;)if(p=c0+D|0,_=w+(p<<2)|0,x=+s[_>>2],R=n0+1|0,L=n+(n0<<2)|0,M=e[L>>2]|0,G=M+(K<<2)|0,N=+s[G>>2],P=N+x,s[G>>2]=P,z=(R|0)==(a|0),Y=z&1,C=Y+K|0,E=z?0:R,t0=c0+1|0,J=(t0|0)<(y|0),J)n0=E,K=C,c0=t0;else{A0=E,r0=C;break}else A0=V,r0=i0;if(o0=(r0|0)<(H|0),o0)V=A0,i0=r0;else{I=0,s0=8;break}}return(s0|0)==8?I|0:0}function xh(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0;h1=m,c=t+40|0,f=e[c>>2]|0,Q=t+36|0,Y=e[Q>>2]|0,A0=tB(n,Y)|0,f0=(A0|0)>-1;do if(f0){if(B0=t+32|0,H0=e[B0>>2]|0,c1=H0+(A0<<2)|0,$1=e[c1>>2]|0,E=($1|0)<0,E){I=$1>>>15,C=I&32767,p=t+8|0,B=e[p>>2]|0,v=$1&32767,S=B-v|0,f1=S,l1=C;break}return w=$1+-1|0,y=t+28|0,D=e[y>>2]|0,_=D+w|0,x=u[_>>0]|0,R=x<<24>>24,iB(n,R),o=w,o|0}else L=t+8|0,M=e[L>>2]|0,f1=M,l1=0;while(!1);if(T=tB(n,f)|0,G=(T|0)<0,N=(f|0)>1,P=G&N,P)for(z0=f;;)if(z=z0+-1|0,t0=tB(n,z)|0,J=(t0|0)<0,W=(z|0)>1,e0=J&W,e0)z0=z;else{a=J,n1=t0,A1=z;break}else a=G,n1=T,A1=f;if(a)return o=-1,o|0;if(H=n1>>>16,X=n1<<16,U=H|X,o0=U>>>8,Z=o0&16711935,V=U<<8,n0=V&-16711936,i0=Z|n0,r0=i0>>>4,K=r0&252645135,c0=i0<<4,s0=c0&-252645136,l0=K|s0,j=l0>>>2,a0=j&858993459,g0=l0<<2,Q0=g0&-858993460,d0=a0|Q0,y0=d0>>>1,h0=y0&1431655765,E0=d0<<1,C0=E0&-1431655766,u0=h0|C0,k0=f1-l1|0,J0=(k0|0)>1,J0)for(D0=t+20|0,x0=e[D0>>2]|0,M0=k0,g1=f1,a1=l1;;)if(F0=M0>>1,G0=F0+a1|0,p0=x0+(G0<<2)|0,P0=e[p0>>2]|0,R0=P0>>>0>u0>>>0,S0=R0?0:F0,L0=S0+a1|0,q0=R0?F0:0,N0=g1-q0|0,V0=N0-L0|0,T0=(V0|0)>1,T0)M0=V0,g1=N0,a1=L0;else{s1=L0;break}else s1=l1;return U0=t+28|0,r1=e[U0>>2]|0,O0=r1+s1|0,e1=u[O0>>0]|0,v0=e1<<24>>24,i1=(v0|0)>(A1|0),i1?(iB(n,A1),o=-1,o|0):(iB(n,v0),o=s1,o|0)}function Jv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0;for(c1=m,p=n+28|0,B=e[p>>2]|0,M=n+4|0,H=e[M>>2]|0,c0=t+4|0,e[c0>>2]=128,E0=t+8|0,e[E0>>2]=64,p0=B+2932|0,H0=e[p0>>2]|0,N0=t+12|0,e[N0>>2]=H0,e[t>>2]=H,V0=t+164|0,e[V0>>2]=128,v=B+4|0,S=e[v>>2]|0,w=(S|0)/2&-1,y=t+176|0,e[y>>2]=w,D=t4(128,4)|0,Q=t+36|0,e[Q>>2]=D,_=t+16|0,sB(_,128),x=e[Q>>2]|0,O0=0;R=+(O0|0),L=R*.024736950028266088,T=+Fn(+L),G=T,N=x+(O0<<2)|0,P=G*G,s[N>>2]=P,z=O0+1|0,r1=(z|0)==128,!r1;)O0=z;for(Y=t+40|0,e[Y>>2]=2,t0=t+44|0,e[t0>>2]=4,J=t+56|0,e[J>>2]=4,W=t+60|0,e[W>>2]=5,e0=t+72|0,e[e0>>2]=6,X=t+76|0,e[X>>2]=6,U=t+88|0,e[U>>2]=9,o0=t+92|0,e[o0>>2]=8,Z=t+104|0,e[Z>>2]=13,V=t+108|0,e[V>>2]=8,A0=t+120|0,e[A0>>2]=17,n0=t+124|0,e[n0>>2]=8,i0=t+136|0,e[i0>>2]=22,r0=t+140|0,e[r0>>2]=8,s0=4,v0=0;;){if(K=s0<<2,l0=k9(K)|0,j=((t+40|0)+(v0<<4)|0)+8|0,e[j>>2]=l0,a0=(s0|0)>0,a0){for(g0=+(s0|0),f0=((t+40|0)+(v0<<4)|0)+12|0,C=+s[f0>>2],D0=C,e1=0;;)if(Q0=+(e1|0),d0=Q0+.5,y0=d0/g0,h0=y0*3.141592653589793,C0=+Fn(+h0),u0=C0,k0=l0+(e1<<2)|0,s[k0>>2]=u0,J0=D0+u0,B0=e1+1|0,T0=(B0|0)==(s0|0),T0){o=J0;break}else D0=J0,e1=B0;s[f0>>2]=o,E=f0,F0=o}else c=((t+40|0)+(v0<<4)|0)+12|0,I=+s[c>>2],E=c,F0=I;if(x0=1/F0,s[E>>2]=x0,M0=v0+1|0,U0=(M0|0)==7,U0)break;a=((t+40|0)+(M0<<4)|0)+4|0,f=e[a>>2]|0,s0=f,v0=M0}G0=H*7|0,P0=t4(G0,144)|0,R0=t+152|0,e[R0>>2]=P0,S0=e[V0>>2]|0,L0=t4(S0,4)|0,q0=t+160|0,e[q0>>2]=L0}function Kv(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0;G=m,n=t+16|0,AB(n),o=t+48|0,w=e[o>>2]|0,I2(w),D=t+64|0,Q=e[D>>2]|0,I2(Q),_=t+80|0,x=e[_>>2]|0,I2(x),R=t+96|0,L=e[R>>2]|0,I2(L),M=t+112|0,a=e[M>>2]|0,I2(a),c=t+128|0,f=e[c>>2]|0,I2(f),E=t+144|0,I=e[E>>2]|0,I2(I),C=t+36|0,p=e[C>>2]|0,I2(p),B=t+152|0,v=e[B>>2]|0,I2(v),S=t+160|0,y=e[S>>2]|0,I2(y),Ae(t|0,0,180)|0}function Vv(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0;if(j1=m,f=t+4|0,E=e[f>>2]|0,L=E+28|0,e0=e[L>>2]|0,K=e0+2868|0,h0=t+104|0,G0=e[h0>>2]|0,U0=e[G0>>2]|0,s1=U0+168|0,p1=e[s1>>2]|0,I=U0+8|0,v=e[I>>2]|0,S=(p1|0)/(v|0)&-1,w=t+20|0,y=e[w>>2]|0,D=(y|0)/(v|0)&-1,Q=D+-4|0,_=(S|0)<0,n=_?0:S,x=D+2|0,R=U0+164|0,M=e[R>>2]|0,T=(x|0)>(M|0),T&&(e[R>>2]=x,G=U0+160|0,N=e[G>>2]|0,P=x<<2,z=Ni(N,P)|0,e[G>>2]=z),Y=(n|0)<(Q|0),Y)for(t0=U0+156|0,J=U0+160|0,W=t+8|0,H=U0+40|0,X=U0+152|0,v1=n;;){if(U=e[t0>>2]|0,o0=U+1|0,Z=(U|0)>23,a=Z?24:o0,e[t0>>2]=a,V=e[U0>>2]|0,A0=(V|0)>0,A0){for(G1=0,q1=0;;)if(c0=e[W>>2]|0,s0=c0+(G1<<2)|0,l0=e[s0>>2]|0,j=e[I>>2]|0,a0=i5(j,v1)|0,g0=l0+(a0<<2)|0,f0=e[X>>2]|0,Q0=G1*7|0,d0=f0+(Q0*144|0)|0,y0=Wv(U0,K,g0,H,d0)|0,E0=y0|q1,C0=G1+1|0,u0=e[U0>>2]|0,k0=(C0|0)<(u0|0),k0)G1=C0,q1=E0;else{c=E0;break}J0=v1+2|0,D0=e[J>>2]|0,B0=D0+(J0<<2)|0,e[B0>>2]=0,x0=c&1,F0=(x0|0)==0,F0||(M0=D0+(v1<<2)|0,e[M0>>2]=1,p0=v1+1|0,P0=D0+(p0<<2)|0,e[P0>>2]=1),R0=c&2,S0=(R0|0)==0,S0||(L0=D0+(v1<<2)|0,e[L0>>2]=1,q0=(v1|0)>0,q0&&(H0=v1+-1|0,N0=D0+(H0<<2)|0,e[N0>>2]=1)),V0=c&4,T0=(V0|0)==0,T0||(e[t0>>2]=-1)}else n0=v1+2|0,i0=e[J>>2]|0,r0=i0+(n0<<2)|0,e[r0>>2]=0;if(r1=v1+1|0,Z1=(r1|0)==(Q|0),Z1)break;v1=r1}if(O0=e[I>>2]|0,e1=i5(O0,Q)|0,e[s1>>2]=e1,v0=t+48|0,i1=e[v0>>2]|0,c1=t+40|0,$1=e[c1>>2]|0,f1=e0+($1<<2)|0,g1=e[f1>>2]|0,l1=(g1|0)/4&-1,a1=l1+i1|0,n1=e0+4|0,A1=e[n1>>2]|0,z0=(A1|0)/2&-1,I1=a1+z0|0,h1=e[e0>>2]|0,E1=(h1|0)/4&-1,u1=I1+E1|0,d1=U0+176|0,B1=e[d1>>2]|0,Q1=e1-O0|0,D1=(B1|0)<(Q1|0),!D1)return o=-1,o|0;for(_1=U0+160|0,K1=B1;;){if(x1=(K1|0)<(u1|0),!x1){o=1,Y1=22;break}if(e[d1>>2]=K1,L1=(K1|0)/(O0|0)&-1,N1=e[_1>>2]|0,w1=N1+(L1<<2)|0,U1=e[w1>>2]|0,C=(U1|0)!=0,p=(K1|0)>(i1|0),H1=p&C,y1=O0+K1|0,H1){P1=K1,Y1=21;break}if(k1=(y1|0)<(Q1|0),k1)K1=y1;else{o=-1,Y1=22;break}}return(Y1|0)==21?(B=U0+172|0,e[B>>2]=P1,o=0,o|0):(Y1|0)==22?o|0:0}function zv(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0;if(E0=m,c=t+104|0,f=e[c>>2]|0,Q=e[f>>2]|0,Y=t+4|0,A0=e[Y>>2]|0,s0=A0+28|0,l0=e[s0>>2]|0,j=t+48|0,a0=e[j>>2]|0,g0=t+40|0,E=e[g0>>2]|0,I=l0+(E<<2)|0,C=e[I>>2]|0,p=(C|0)/4&-1,B=a0-p|0,v=p+a0|0,S=(E|0)==0,S?(N=e[l0>>2]|0,P=(N|0)/4&-1,o=P,a=P):(w=t+36|0,y=e[w>>2]|0,D=l0+(y<<2)|0,_=e[D>>2]|0,x=(_|0)/4&-1,R=t+44|0,L=e[R>>2]|0,M=l0+(L<<2)|0,T=e[M>>2]|0,G=(T|0)/4&-1,o=G,a=x),f0=B-a|0,Q0=v+o|0,z=Q+172|0,t0=e[z>>2]|0,J=(t0|0)>=(f0|0),W=(t0|0)<(Q0|0),y0=J&W,y0)return n=1,n|0;if(e0=Q+8|0,H=e[e0>>2]|0,X=(f0|0)/(H|0)&-1,U=(Q0|0)/(H|0)&-1,o0=(X|0)<(U|0),!o0)return n=0,n|0;for(Z=Q+160|0,V=e[Z>>2]|0,d0=X;;){if(r0=V+(d0<<2)|0,K=e[r0>>2]|0,c0=(K|0)==0,n0=d0+1|0,!c0){n=1,h0=9;break}if(i0=(n0|0)<(U|0),i0)d0=n0;else{n=0,h0=9;break}}return(h0|0)==9?n|0:0}function Zv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0;if(N=m,o=t+168|0,a=e[o>>2]|0,y=t+8|0,Q=e[y>>2]|0,_=(a|0)/(Q|0)&-1,x=_+2|0,R=(n|0)/(Q|0)&-1,L=t+160|0,M=e[L>>2]|0,T=M+(R<<2)|0,c=x-R|0,f=c<<2,Vo(M|0,T|0,f|0)|0,E=e[o>>2]|0,I=E-n|0,e[o>>2]=I,C=t+172|0,p=e[C>>2]|0,B=(p|0)>-1,!B){S=t+176|0,w=e[S>>2]|0,D=w-n|0,e[S>>2]=D;return}v=p-n|0,e[C>>2]=v,S=t+176|0,w=e[S>>2]|0,D=w-n|0,e[S>>2]=D}function Wv(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,Z5=0,k3=0,c3=0,U3=0,o6=0,u3=0;if(u3=m,Y=t+4|0,t0=e[Y>>2]|0,$2=t+12|0,M2=+s[$2>>2],P2=t0<<2,_=P2,k2=m,m=m+((1*_|0)+15&-16)|0,D5=t+156|0,c2=e[D5>>2]|0,F2=(c2|0)>5,F5=(c2|0)/2&-1,f=F2?F5:2,J=n+60|0,i0=+s[J>>2],d0=F5+-2|0,F0=+(d0|0),V0=i0-F0,g1=V0<0,h6=g1?0:V0,d1=h6>i0,B3=d1?i0:h6,w1=(t0|0)>0,w1)for(r2=t+36|0,a2=e[r2>>2]|0,P5=0;i2=o+(P5<<2)|0,o2=+s[i2>>2],X1=a2+(P5<<2)|0,n2=+s[X1>>2],f2=n2*o2,e2=k2+(P5<<2)|0,s[e2>>2]=f2,y2=P5+1|0,C3=(y2|0)==(t0|0),!C3;)P5=y2;S2=t+16|0,sQ(S2,k2,k2),w2=+s[k2>>2],C2=w2*w2,_2=C2,G2=k2+4|0,u2=+s[G2>>2],K2=u2,N2=K2*K2,q2=N2*.7,T2=q2+_2,O2=k2+8|0,V2=+s[O2>>2],s5=V2,T1=s5*s5,j2=T1*.2,R5=T2+j2,X2=R5,v5=c+140|0,z2=e[v5>>2]|0,f5=(z2|0)==0,f5?(w5=c+136|0,O5=+s[w5>>2],$5=O5+X2,E5=c+132|0,s[E5>>2]=$5,s[w5>>2]=X2,T=E5,H2=$5):(r5=c+132|0,x2=+s[r5>>2],R2=x2+X2,s[r5>>2]=R2,m2=c+136|0,C5=+s[m2>>2],x5=C5+X2,s[m2>>2]=x5,T=r5,H2=R2),u5=(c+72|0)+(z2<<2)|0,S5=+s[u5>>2],G5=H2-S5,s[T>>2]=G5,s[u5>>2]=X2,I5=e[v5>>2]|0,A5=I5+1|0,l5=(I5|0)>13,E=l5?0:A5,e[v5>>2]=E,m5=(t0|0)/2&-1,M1=(t0|0)>1;e:do if(M1)for(k5=H2*.0625,c5=(s[p2>>2]=k5,e[p2>>2]|0),o5=c5&2147483647,Z2=+(o5>>>0),B5=Z2*7177114298428933e-22,e5=B5+-764.6162109375,n5=e5,g5=n5*.5,J2=g5+-15,h5=J2,x=h5,x0=w2,y5=0;;){if(B0=x0*x0,M0=y5|1,G0=k2+(M0<<2)|0,p0=+s[G0>>2],P0=p0*p0,R0=P0+B0,S0=(s[p2>>2]=R0,e[p2>>2]|0),L0=S0&2147483647,q0=+(L0>>>0),H0=q0*35885571492144663e-23,N0=H0+-382.30810546875,T0=N0>1,O0=k2+(r1<<2)|0,s[O0>>2]=z,e1=y5+2|0,v0=(e1|0)<(m5|0),!v0)break e;i1=x+-8,L=k2+(e1<<2)|0,M=+s[L>>2],x=i1,x0=M,y5=e1}while(!1);if(t5=(f|0)>0,t5)o3=0,N3=0;else{for(i3=0,V3=0;;){if(c1=(a+(i3<<4)|0)+4|0,$1=e[c1>>2]|0,f1=($1|0)>0,f1)for(l1=a+(i3<<4)|0,s1=e[l1>>2]|0,a1=(a+(i3<<4)|0)+8|0,n1=e[a1>>2]|0,a3=0,G3=0;;)if(A1=s1+G3|0,z0=k2+(A1<<2)|0,I1=+s[z0>>2],h1=n1+(G3<<2)|0,E1=+s[h1>>2],u1=E1*I1,B1=u1+a3,p1=G3+1|0,Q1=(p1|0)<($1|0),Q1)a3=B1,G3=p1;else{_3=B1;break}else _3=0;if(D1=(a+(i3<<4)|0)+12|0,_1=+s[D1>>2],y1=_1*_3,k1=(c+(i3*144|0)|0)+68|0,x1=e[k1>>2]|0,L1=(x1|0)<1,p=L1?16:-1,I=p+x1|0,N1=(c+(i3*144|0)|0)+(I<<2)|0,U1=+s[N1>>2],Z1=y1U1,v=v1?U1:y1,K1=v+-99999,P1=G1+99999,H1=(c+(i3*144|0)|0)+(x1<<2)|0,s[H1>>2]=y1,q1=e[k1>>2]|0,Y1=q1+1|0,j1=(q1|0)>15,D=j1?0:Y1,e[k1>>2]=D,W1=(n+4|0)+(i3<<2)|0,O1=+s[W1>>2],l2=O1+B3,z1=P1>l2,h2=V3|5,Z5=z1?h2:V3,s2=(n+32|0)+(i3<<2)|0,d2=+s[s2>>2],A2=d2-B3,V1=K1>2]|0,a5=(W2|0)>0,a5)for(Q0=a+(o3<<4)|0,n0=e[Q0>>2]|0,y0=(a+(o3<<4)|0)+8|0,s0=e[y0>>2]|0,$3=0,L5=0;;)if(A0=n0+L5|0,r0=k2+(A0<<2)|0,K=+s[r0>>2],c0=s0+(L5<<2)|0,l0=+s[c0>>2],j=l0*K,a0=j+$3,g0=L5+1|0,f0=(g0|0)<(W2|0),f0)$3=a0,L5=g0;else{T3=a0;break}else T3=0;for(h0=(a+(o3<<4)|0)+12|0,E0=+s[h0>>2],g3=E0*T3,t3=(c+(o3*144|0)|0)+68|0,f3=e[t3>>2]|0,C0=(f3|0)<1,B=C0?16:-1,C=B+f3|0,u0=(c+(o3*144|0)|0)+(C<<2)|0,k0=+s[u0>>2],J0=g3k0,S=D0?k0:g3,t6=0,R3=C,w3=-99999,p3=99999;;)if(e0=(R3|0)<1,y=e0?16:-1,w=y+R3|0,H=(c+(o3*144|0)|0)+(w<<2)|0,X=+s[H>>2],U=w3X,G=Z?X:p3,V=t6+1|0,Y5=(V|0)==(f|0),Y5){R=o0,N=G;break}else t6=V,R3=w,w3=o0,p3=G;if(p5=S-N,q5=e3-R,d5=(c+(o3*144|0)|0)+(f3<<2)|0,s[d5>>2]=g3,V5=e[t3>>2]|0,s3=V5+1|0,E3=(V5|0)>15,Q=E3?0:s3,e[t3>>2]=Q,z5=(n+4|0)+(o3<<2)|0,y3=+s[z5>>2],h3=y3+B3,m3=q5>h3,q3=N3|5,k3=m3?q3:N3,M3=(n+32|0)+(o3<<2)|0,W5=+s[M3>>2],Q3=W5-B3,X5=p5>2]|0,C2=n+1288|0,z3=e[C2>>2]|0,F3=n+1284|0,d6=e[F3>>2]|0,I9=(d6|0)>0,I9){for(g8=0;j4=C4+(g8<<2)|0,e[j4>>2]=-200,de=g8+1|0,Ee=(de|0)==(d6|0),!Ee;)g8=de;if(I9){for(H3=0;g4=a4+(H3<<2)|0,e[g4>>2]=-200,W=H3+1|0,o4=(W|0)==(d6|0),!o4;)H3=W;if(I9){for(r0=d6<<2,Ae(F8|0,0,r0|0)|0,Q9=0;y0=ve+(Q9<<2)|0,e[y0>>2]=1,M0=Q9+1|0,Ge=(M0|0)==(d6|0),!Ge;)Q9=M0;if(I9){if(l1=d6<<2,Ae(V8|0,-1,l1|0)|0,B1=(d6|0)>1,!B1)return ie=0,m=j9,ie|0;for(U1=z3+-1|0,W1=J+1112|0,t2=d6+-1|0,M=e[n>>2]|0,d4=M,C9=0,Ce=0;;){v4=C9+1|0,S4=n+(v4<<2)|0,R4=e[S4>>2]|0,T4=U6+(C9*56|0)|0,xe=T4,b7=xe+56|0;do e[xe>>2]=0,xe=xe+4|0;while((xe|0)<(b7|0));if(e[T4>>2]=d4,G4=(U6+(C9*56|0)|0)+4|0,e[G4>>2]=R4,G9=(R4|0)<(z3|0),X8=G9?R4:U1,N4=(X8|0)<(d4|0),N4)y8=0,W8=0,v8=0,S8=0,d8=0,Re=0,e7=0,P9=0,Y8=0,b8=0,P7=0,H7=0;else for(Q4=d4,h8=0,Ne=0,H4=0,Z9=0,me=0,r8=0,I3=0,S9=0,s8=0,m9=0,A7=0,_8=0;;){s4=a+(Q4<<2)|0,P=+s[s4>>2],x4=P*7.314285755157471,c4=x4+1023.5,Ie=~~c4,O9=(Ie|0)>1023,d9=(Ie|0)<0,E=d9?0:Ie,v=O9?1023:E,Me=(v|0)==0;do if(Me)O8=h8,je=Ne,e8=H4,I8=Z9,Oe=me,m4=r8,C8=I3,H8=S9,Y4=s8,Ye=m9,se=A7,J8=_8;else if(ze=o+(Q4<<2)|0,U4=+s[ze>>2],Te=+s[W1>>2],O4=Te+U4,X4=!(O4>=P),X4){ae=Q4+r8|0,z9=v+_8|0,$e=i5(Q4,Q4)|0,le=$e+Z9|0,E4=i5(v,v)|0,e0=E4+m9|0,H=i5(v,Q4)|0,X=H+S9|0,U=Ne+1|0,O8=h8,je=U,e8=H4,I8=le,Oe=me,m4=ae,C8=I3,H8=X,Y4=s8,Ye=e0,se=A7,J8=z9;break}else{ke=Q4+me|0,Ze=v+A7|0,V9=i5(Q4,Q4)|0,oe=V9+H4|0,D6=i5(v,v)|0,P4=D6+s8|0,R9=i5(v,Q4)|0,A4=R9+I3|0,D4=h8+1|0,O8=D4,je=Ne,e8=oe,I8=Z9,Oe=ke,m4=r8,C8=A4,H8=S9,Y4=P4,Ye=m9,se=Ze,J8=_8;break}while(!1);if(o0=Q4+1|0,Z=(Q4|0)<(X8|0),Z)Q4=o0,h8=O8,Ne=je,H4=e8,Z9=I8,me=Oe,r8=m4,I3=C8,S9=H8,s8=Y4,m9=Ye,A7=se,_8=J8;else{y8=O8,W8=je,v8=e8,S8=I8,d8=Oe,Re=m4,e7=C8,P9=H8,Y8=Y4,b8=Ye,P7=se,H7=J8;break}}if(V=(U6+(C9*56|0)|0)+8|0,e[V>>2]=d8,A0=(U6+(C9*56|0)|0)+12|0,e[A0>>2]=P7,n0=(U6+(C9*56|0)|0)+16|0,e[n0>>2]=v8,i0=(U6+(C9*56|0)|0)+20|0,e[i0>>2]=Y8,K=(U6+(C9*56|0)|0)+24|0,e[K>>2]=e7,c0=(U6+(C9*56|0)|0)+28|0,e[c0>>2]=y8,s0=(U6+(C9*56|0)|0)+32|0,e[s0>>2]=Re,l0=(U6+(C9*56|0)|0)+36|0,e[l0>>2]=H7,j=(U6+(C9*56|0)|0)+40|0,e[j>>2]=S8,a0=(U6+(C9*56|0)|0)+44|0,e[a0>>2]=b8,g0=(U6+(C9*56|0)|0)+48|0,e[g0>>2]=P9,f0=(U6+(C9*56|0)|0)+52|0,e[f0>>2]=W8,Q0=y8+Ce|0,$6=(v4|0)==(t2|0),$6){h7=Q0;break}else d4=R4,C9=v4,Ce=Q0}}else ue=9}else ue=9}else ue=9}else ue=9;if((ue|0)==9){if(T0=(d6|0)==0,!T0)return ie=0,m=j9,ie|0;M2=U6+4|0,xe=U6,b7=xe+56|0;do e[xe>>2]=0,xe=xe+4|0;while((xe|0)<(b7|0));if(e[M2>>2]=z3,P2=(z3|0)<1,P2)N8=0,Z8=0,P8=0,u8=0,i8=0,W9=0,E8=0,re=0,r7=0,n7=0,M7=0,T7=0;else for(k2=J+1112|0,$4=0,w8=0,f8=0,Xe=0,ge=0,he=0,fe=0,q4=0,ne=0,n8=0,qe=0,v7=0,A8=0;;){D5=a+($4<<2)|0,N=+s[D5>>2],c2=N*7.314285755157471,F2=c2+1023.5,F5=~~F2,_3=(F5|0)>1023,L5=(F5|0)<0,f=L5?0:F5,B=_3?1023:f,N3=(B|0)==0;do if(N3)U8=w8,be=f8,_e=Xe,t8=ge,Ue=he,Be=fe,Pe=q4,He=ne,D8=n8,s7=qe,S7=v7,D7=A8;else if(a6=o+($4<<2)|0,P3=+s[a6>>2],e6=+s[k2>>2],r9=e6+P3,x6=!(r9>=N),x6){g9=$4+fe|0,h9=B+A8|0,f9=i5($4,$4)|0,A9=f9+ge|0,o9=i5(B,B)|0,L9=o9+qe|0,M6=i5(B,$4)|0,e9=M6+ne|0,M9=f8+1|0,U8=w8,be=M9,_e=Xe,t8=A9,Ue=he,Be=g9,Pe=q4,He=e9,D8=n8,s7=L9,S7=v7,D7=h9;break}else{N6=$4+he|0,S6=B+v7|0,V6=i5($4,$4)|0,Q6=V6+Xe|0,F6=i5(B,B)|0,L6=F6+n8|0,X6=i5(B,$4)|0,s9=X6+q4|0,W6=w8+1|0,U8=W6,be=f8,_e=Q6,t8=ge,Ue=N6,Be=fe,Pe=s9,He=ne,D8=L6,s7=qe,S7=S6,D7=A8;break}while(!1);if(u9=$4+1|0,E9=(u9|0)==(z3|0),E9){N8=U8,Z8=be,P8=_e,u8=t8,i8=Ue,W9=Be,E8=Pe,re=He,r7=D8,n7=s7,M7=S7,T7=D7;break}else $4=u9,w8=U8,f8=be,Xe=_e,ge=t8,he=Ue,fe=Be,q4=Pe,ne=He,n8=D8,qe=s7,v7=S7,A8=D7}u4=U6+8|0,e[u4>>2]=i8,r4=U6+12|0,e[r4>>2]=M7,l4=U6+16|0,e[l4>>2]=P8,T9=U6+20|0,e[T9>>2]=r7,K9=U6+24|0,e[K9>>2]=E8,v9=U6+28|0,e[v9>>2]=N8,P6=U6+32|0,e[P6>>2]=W9,t9=U6+36|0,e[t9>>2]=T7,I4=U6+40|0,e[I4>>2]=u8,k4=U6+44|0,e[k4>>2]=n7,n4=U6+48|0,e[n4>>2]=re,p9=U6+52|0,e[p9>>2]=Z8,h7=N8}if(d0=(h7|0)==0,d0)return ie=0,m=j9,ie|0;e[i7>>2]=-200,e[q8>>2]=-200,h0=d6+-1|0,rB(U6,h0,i7,q8,J)|0,E0=e[i7>>2]|0,e[C4>>2]=E0,e[a4>>2]=E0,C0=e[q8>>2]|0,u0=a4+4|0,e[u0>>2]=C0,k0=C4+4|0,e[k0>>2]=C0,J0=(d6|0)>2;do if(J0){D0=J+1112|0,B0=J+1096|0,x0=J+1100|0,F0=J+1104|0,L4=2;e:for(;;){G0=(n+520|0)+(L4<<2)|0,p0=e[G0>>2]|0,P0=F8+(p0<<2)|0,R0=e[P0>>2]|0,S0=ve+(p0<<2)|0,L0=e[S0>>2]|0,q0=V8+(R0<<2)|0,H0=e[q0>>2]|0,N0=(H0|0)==(L0|0);t:do if(!N0){if(V0=(n+520|0)+(R0<<2)|0,U0=e[V0>>2]|0,r1=(n+520|0)+(L0<<2)|0,O0=e[r1>>2]|0,e[q0>>2]=L0,e1=(J+836|0)+(R0<<2)|0,v0=e[e1>>2]|0,i1=(J+836|0)+(L0<<2)|0,c1=e[i1>>2]|0,$1=C4+(R0<<2)|0,f1=e[$1>>2]|0,g1=(f1|0)<0,s1=a4+(R0<<2)|0,a1=e[s1>>2]|0,g1?y=a1:(n1=(a1|0)<0,n1?y=f1:(A1=a1+f1|0,z0=A1>>1,y=z0)),I1=C4+(L0<<2)|0,h1=e[I1>>2]|0,E1=(h1|0)<0,u1=a4+(L0<<2)|0,d1=e[u1>>2]|0,E1?Q=d1:(p1=(d1|0)<0,p1?Q=h1:(Q1=d1+h1|0,D1=Q1>>1,Q=D1)),_1=(y|0)==-1,y1=(Q|0)==-1,w7=_1|y1,w7){ue=38;break e}k1=Q-y|0,x1=c1-v0|0,De=(k1|0)>-1,y9=0-k1|0,L1=De?k1:y9,N1=(k1|0)/(x1|0)&-1,w1=k1>>31,Z1=w1|1,G1=a+(v0<<2)|0,Y=+s[G1>>2],v1=Y*7.314285755157471,K1=v1+1023.5,P1=~~K1,H1=(P1|0)>1023,q1=(P1|0)<0,I=q1?0:P1,S=H1?1023:I,Y1=i5(N1,x1)|0,$7=(Y1|0)>-1,g7=0-Y1|0,j1=$7?Y1:g7,r2=L1-j1|0,O1=y-S|0,l2=i5(O1,O1)|0,z1=o+(v0<<2)|0,h2=+s[z1>>2],s2=+s[D0>>2],d2=s2+h2,A2=!(d2>=Y),A2?ue=42:(V1=+(y|0),g2=+s[B0>>2],a2=g2+V1,$2=+(S|0),i2=a2<$2,i2||(o2=+s[x0>>2],X1=V1-o2,n2=X1>$2,n2||(ue=42)));i:do if((ue|0)==42){if(ue=0,f2=v0+1|0,e2=(f2|0)<(c1|0),e2)for(u2=f2,ee=0,y7=l2,G8=1,f7=y;;){if(y2=ee+r2|0,S2=(y2|0)<(x1|0),w2=S2?0:Z1,_2=S2?0:x1,F4=y2-_2|0,L=f7+N1|0,t7=L+w2|0,G2=a+(u2<<2)|0,z=+s[G2>>2],K2=z*7.314285755157471,N2=K2+1023.5,q2=~~N2,T2=(q2|0)>1023,O2=(q2|0)<0,C=O2?0:q2,D=T2?1023:C,V2=t7-D|0,s5=i5(V2,V2)|0,T1=s5+y7|0,j2=G8+1|0,R5=o+(u2<<2)|0,X2=+s[R5>>2],v5=X2+s2,z2=v5>=z,f5=(D|0)!=0,j8=z2&f5,j8&&(w5=+(t7|0),O5=+s[B0>>2],$5=O5+w5,E5=+(D|0),r5=$5>2],R2=w5-x2,m2=R2>E5,m2)))break i;if(C5=u2+1|0,x5=(C5|0)<(c1|0),x5)u2=C5,ee=F4,y7=T1,G8=j2,f7=t7;else{z8=T1,T8=j2;break}}else z8=l2,T8=1;if(u5=+s[B0>>2],S5=u5*u5,G5=+(T8|0),H2=S5/G5,I5=+s[F0>>2],A5=H2>I5,!A5&&(l5=+s[x0>>2],m5=l5*l5,M1=m5/G5,k5=M1>I5,!k5&&(c5=(z8|0)/(T8|0)&-1,o5=+(c5|0),Z2=o5>I5,Z2)))break;$3=C4+(L4<<2)|0,e[$3>>2]=-200,l3=a4+(L4<<2)|0,e[l3>>2]=-200;break t}while(!1);if(e[L8>>2]=-200,e[M8>>2]=-200,e[Se>>2]=-200,e[We>>2]=-200,B5=U6+(U0*56|0)|0,e5=p0-U0|0,n5=rB(B5,e5,L8,M8,J)|0,g5=U6+(p0*56|0)|0,J2=O0-p0|0,h5=rB(g5,J2,Se,We,J)|0,t5=(n5|0)!=0,t5&&(e[L8>>2]=y,b5=e[Se>>2]|0,e[M8>>2]=b5),W2=(h5|0)==0,!W2&&(a5=e[M8>>2]|0,e[Se>>2]=a5,e[We>>2]=Q,t5)){p5=C4+(L4<<2)|0,e[p5>>2]=-200,q5=a4+(L4<<2)|0,e[q5>>2]=-200;break}if(e3=e[L8>>2]|0,e[s1>>2]=e3,d5=(R0|0)==0,d5&&(e[C4>>2]=e3),f3=e[M8>>2]|0,g3=C4+(L4<<2)|0,e[g3>>2]=f3,V5=e[Se>>2]|0,t3=a4+(L4<<2)|0,e[t3>>2]=V5,s3=e[We>>2]|0,e[I1>>2]=s3,E3=(L0|0)==1,E3&&(e[u0>>2]=s3),z5=V5&f3,y3=(z5|0)>-1,y3){h3=(p0|0)>0;i:do if(h3)for(K8=p0;;){if(Q7=K8+-1|0,q3=ve+(Q7<<2)|0,M3=e[q3>>2]|0,W5=(M3|0)==(L0|0),!W5)break i;if(e[q3>>2]=L4,Q3=(K8|0)>1,Q3)K8=Q7;else break}while(!1);if(c7=p0+1|0,m3=(c7|0)<(d6|0),m3)for(x8=c7;;){if(X5=F8+(x8<<2)|0,j3=e[X5>>2]|0,T3=(j3|0)==(R0|0),!T3)break t;if(e[X5>>2]=L4,l7=x8+1|0,a3=(l7|0)<(d6|0),a3)x8=l7;else break}}}while(!1);if(C3=L4+1|0,Y5=(C3|0)<(d6|0),Y5)L4=C3;else{ue=68;break}}if((ue|0)==38)Cv(1);else if((ue|0)==68){T=e[C4>>2]|0,G=e[a4>>2]|0,y5=T,t6=G;break}}else y5=E0,t6=E0;while(!1);if(N5=d6<<2,P5=O7(t,N5)|0,G3=(y5|0)<0,G3?w=t6:(i3=(t6|0)<0,i3?w=y5:(o3=t6+y5|0,R3=o3>>1,w=R3)),e[P5>>2]=w,h6=e[k0>>2]|0,B3=(h6|0)<0,w3=e[u0>>2]|0,B3?x=w3:(p3=(w3|0)<0,p3?x=h6:(X3=w3+h6|0,V3=X3>>1,x=V3)),Z5=P5+4|0,e[Z5>>2]=x,J0)te=2;else return ie=P5,m=j9,ie|0;for(;;)if(k3=te+-2|0,c3=(n+1032|0)+(k3<<2)|0,U3=e[c3>>2]|0,o6=(n+780|0)+(k3<<2)|0,u3=e[o6>>2]|0,y6=(J+836|0)+(U3<<2)|0,w6=e[y6>>2]|0,k6=(J+836|0)+(u3<<2)|0,m6=e[k6>>2]|0,B6=P5+(U3<<2)|0,_6=e[B6>>2]|0,Y6=P5+(u3<<2)|0,C6=e[Y6>>2]|0,v3=(J+836|0)+(te<<2)|0,Z3=e[v3>>2]|0,W3=_6&32767,f6=C6&32767,O3=f6-W3|0,S3=m6-w6|0,a7=(O3|0)>-1,k8=0-O3|0,Y3=a7?O3:k8,v6=Z3-w6|0,i6=i5(Y3,v6)|0,r3=(i6|0)/(S3|0)&-1,O6=(O3|0)<0,A3=0-r3|0,R=O6?A3:r3,_=R+W3|0,r6=C4+(te<<2)|0,u6=e[r6>>2]|0,D3=(u6|0)<0,T6=a4+(te<<2)|0,p6=e[T6>>2]|0,D3?p=p6:(R6=(p6|0)<0,R6?p=u6:(K6=p6+u6|0,I6=K6>>1,p=I6)),J6=(p|0)<0,x3=(_|0)==(p|0),k7=J6|x3,Z6=_|32768,c=k7?Z6:p,G6=P5+(te<<2)|0,e[G6>>2]=c,j6=te+1|0,ce=(j6|0)==(d6|0),ce){ie=P5;break}else te=j6;return m=j9,ie|0}function R8(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0;if(A0=m,f=n+1284|0,E=e[f>>2]|0,_=(o|0)!=0,z=(a|0)!=0,o0=_&z,!o0)return Z=0,Z|0;if(Y=E<<2,t0=O7(t,Y)|0,J=(E|0)>0,!J)return Z=t0,Z|0;for(W=65536-c|0,U=0;;)if(e0=o+(U<<2)|0,H=e[e0>>2]|0,I=H&32767,C=i5(I,W)|0,p=a+(U<<2)|0,B=e[p>>2]|0,v=B&32767,S=i5(v,c)|0,w=C+32768|0,y=w+S|0,D=y>>16,Q=t0+(U<<2)|0,e[Q>>2]=D,x=e[e0>>2]|0,R=x&32768,L=(R|0)==0,L||(M=e[p>>2]|0,T=M&32768,G=(T|0)==0,G||(N=D|32768,e[Q>>2]=N)),P=U+1|0,X=(P|0)==(E|0),X){Z=t0;break}else U=P;return Z|0}function jv(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,Z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,m6=0,z3=0,a6=0,B6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,A3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0;if(L6=m,m=m+336|0,x6=L6+64|0,c3=L6+32|0,x3=L6,D=o+1296|0,Q=e[D>>2]|0,g2=o+1284|0,x2=e[g2>>2]|0,A5=n+64|0,n5=e[A5>>2]|0,e3=n5+4|0,h3=e[e3>>2]|0,$3=h3+28|0,o3=e[$3>>2]|0,_=o3+2848|0,t0=e[_>>2]|0,n0=(a|0)==0,n0)return U2(t,0,1),R5=n+36|0,X2=e[R5>>2]|0,v5=(X2|0)/2&-1,z2=v5<<2,Ae(c|0,0,z2|0)|0,E=0,m=L6,E|0;if(Q0=(x2|0)>0,Q0)for(x0=Q+832|0,f6=0;N0=a+(f6<<2)|0,f1=e[N0>>2]|0,u1=f1&32767,N1=e[x0>>2]|0,(N1|0)==4?(V2=u1>>>4,N6=V2):(N1|0)==1?(j1=u1>>>2,N6=j1):(N1|0)==2?(a2=u1>>>3,N6=a2):(N1|0)==3?(w2=(u1>>>0)/12&-1,N6=w2):N6=u1,f5=f1&32768,w5=f5|N6,e[N0>>2]=w5,O5=f6+1|0,C6=(O5|0)==(x2|0),!C6;)f6=O5;if($5=e[a>>2]|0,e[x6>>2]=$5,k2=a+4|0,E5=e[k2>>2]|0,r5=x6+4|0,e[r5>>2]=E5,R2=(x2|0)>2,m2=o+1292|0,R2){for(O3=2;;){if(C5=O3+-2|0,x5=(o+1032|0)+(C5<<2)|0,u5=e[x5>>2]|0,S5=(o+780|0)+(C5<<2)|0,G5=e[S5>>2]|0,D5=(Q+836|0)+(u5<<2)|0,H2=e[D5>>2]|0,I5=(Q+836|0)+(G5<<2)|0,l5=e[I5>>2]|0,m5=a+(u5<<2)|0,M1=e[m5>>2]|0,k5=a+(G5<<2)|0,c5=e[k5>>2]|0,o5=(Q+836|0)+(O3<<2)|0,Z2=e[o5>>2]|0,c2=M1&32767,B5=c5&32767,e5=B5-c2|0,g5=l5-H2|0,P3=(e5|0)>-1,Z6=0-e5|0,J2=P3?e5:Z6,h5=Z2-H2|0,t5=i5(J2,h5)|0,b5=(t5|0)/(g5|0)&-1,W2=(e5|0)<0,a5=0-b5|0,C=W2?a5:b5,I=C+c2|0,F2=a+(O3<<2)|0,p5=e[F2>>2]|0,q5=p5&32768,d5=(q5|0)!=0,f3=(p5|0)==(I|0),r9=d5|f3,r9)g3=I|32768,e[F2>>2]=g3,V5=x6+(O3<<2)|0,e[V5>>2]=0;else{t3=e[m2>>2]|0,s3=t3-I|0,E3=(s3|0)<(I|0),f=E3?s3:I,F5=p5-I|0,z5=(F5|0)<0;do if(z5)if(y3=0-f|0,m3=(F5|0)<(y3|0),m3){q3=F5^-1,M3=f+q3|0,S6=M3;break}else{W5=F5<<1,Q3=W5^-1,S6=Q3;break}else if(X5=(f|0)>(F5|0),X5){_3=F5<<1,S6=_3;break}else{j3=f+F5|0,S6=j3;break}while(!1);T3=x6+(O3<<2)|0,e[T3>>2]=S6,e[m5>>2]=c2,a3=e[k5>>2]|0,l3=a3&32767,e[k5>>2]=l3}if(C3=O3+1|0,Y6=(C3|0)==(x2|0),Y6)break;O3=C3}v=e[x6>>2]|0,S=e[r5>>2]|0,X3=v,k3=S}else X3=$5,k3=E5;if(U2(t,1,1),Y5=o+1308|0,N5=e[Y5>>2]|0,P5=N5+1|0,e[Y5>>2]=P5,y5=e[m2>>2]|0,G3=y5+-1|0,L5=L7(G3)|0,t6=L5<<1,i3=o+1304|0,R3=e[i3>>2]|0,h6=R3+t6|0,e[i3>>2]=h6,B3=e[m2>>2]|0,w3=B3+-1|0,p3=L7(w3)|0,U2(t,X3,p3),V3=e[m2>>2]|0,N3=V3+-1|0,Z5=L7(N3)|0,U2(t,k3,Z5),x=e[Q>>2]|0,R=(x|0)>0,R)for(L=o+1300|0,S3=0,i6=2;;){if(M=(Q+4|0)+(S3<<2)|0,T=e[M>>2]|0,G=(Q+128|0)+(T<<2)|0,N=e[G>>2]|0,P=(Q+192|0)+(T<<2)|0,z=e[P>>2]|0,Y=1<>2]=0,e[c3+4>>2]=0,e[c3+8>>2]=0,e[c3+12>>2]=0,e[c3+16>>2]=0,e[c3+20>>2]=0,e[c3+24>>2]=0,e[c3+28>>2]=0,J=(z|0)==0,!J){if(e[x3>>2]=0,e[x3+4>>2]=0,e[x3+8>>2]=0,e[x3+12>>2]=0,e[x3+16>>2]=0,e[x3+20>>2]=0,e[x3+24>>2]=0,e[x3+28>>2]=0,W=(z|0)==31,!W)for(A3=0;a0=((Q+320|0)+(T<<5)|0)+(A3<<2)|0,g0=e[a0>>2]|0,f0=(g0|0)<0,f0?y=1:(d0=(o3+1824|0)+(g0<<2)|0,y0=e[d0>>2]|0,h0=y0+4|0,E0=e[h0>>2]|0,y=E0),C0=x3+(A3<<2)|0,e[C0>>2]=y,u0=A3+1|0,k0=(u0|0)<(Y|0),k0;)A3=u0;e0=(N|0)>0;e:do if(e0){if(W)for(U3=0,y6=0,r6=0;;)if(J0=c3+(r6<<2)|0,D0=e[J0>>2]|0,B0=D0<>2]|0,T6=0;;){if(H=x3+(T6<<2)|0,X=e[H>>2]|0,o0=(U|0)<(X|0),o0){e6=T6,F3=31;break}if(Z=T6+1|0,V=(Z|0)<(Y|0),V)T6=Z;else{F3=33;break}}if((F3|0)==31?(F3=0,A0=c3+(u6<<2)|0,e[A0>>2]=e6,r0=e6):(F3|0)==33&&(F3=0,p=c3+(u6<<2)|0,w=e[p>>2]|0,r0=w),i0=r0<>2]|0,R0=t0+(P0*56|0)|0,S0=Rh(R0,u3,t)|0,L0=e[L>>2]|0,q0=L0+S0|0,e[L>>2]=q0}if(H0=(N|0)>0,H0)for(D3=0;V0=c3+(D3<<2)|0,T0=e[V0>>2]|0,U0=((Q+320|0)+(T<<5)|0)+(T0<<2)|0,r1=e[U0>>2]|0,O0=(r1|0)>-1,O0&&(e1=D3+i6|0,v0=x6+(e1<<2)|0,i1=e[v0>>2]|0,c1=(t0+(r1*56|0)|0)+4|0,$1=e[c1>>2]|0,g1=(i1|0)<($1|0),g1&&(l1=t0+(r1*56|0)|0,s1=Rh(l1,i1,t)|0,a1=e[i3>>2]|0,n1=a1+s1|0,e[i3>>2]=n1)),A1=D3+1|0,B6=(A1|0)==(N|0),!B6;)D3=A1;if(z0=N+i6|0,I1=S3+1|0,h1=e[Q>>2]|0,E1=(I1|0)<(h1|0),E1)S3=I1,i6=z0;else break}if(d1=e[a>>2]|0,B1=Q+832|0,p1=e[B1>>2]|0,Q1=i5(p1,d1)|0,D1=n+28|0,_1=e[D1>>2]|0,y1=o3+(_1<<2)|0,k1=e[y1>>2]|0,x1=(k1|0)/2&-1,L1=e[g2>>2]|0,w1=(L1|0)>1,w1)for(Z3=0,r3=1,p6=0,I6=Q1;;){if(K1=(o+260|0)+(r3<<2)|0,P1=e[K1>>2]|0,H1=a+(P1<<2)|0,q1=e[H1>>2]|0,Y1=q1&32767,r2=(Y1|0)==(q1|0),r2)if(W1=e[B1>>2]|0,O1=i5(W1,q1)|0,l2=(Q+836|0)+(P1<<2)|0,z1=e[l2>>2]|0,h2=O1-I6|0,s2=z1-p6|0,Y3=(h2|0)>-1,G6=0-h2|0,d2=Y3?h2:G6,A2=(h2|0)/(s2|0)&-1,V1=h2>>31,t2=V1|1,$2=i5(A2,s2)|0,v6=($2|0)>-1,j6=0-$2|0,i2=v6?$2:j6,o2=d2-i2|0,X1=(x1|0)>(z1|0),V6=X1?z1:x1,n2=(V6|0)>(p6|0),n2&&(f2=c+(p6<<2)|0,e[f2>>2]=I6),e2=p6+1|0,y2=(e2|0)<(V6|0),y2)for(u2=e2,k6=0,Q6=I6;;)if(S2=k6+o2|0,C2=(S2|0)<(s2|0),M2=C2?0:t2,_2=C2?0:s2,m6=S2-_2|0,B=Q6+A2|0,F6=B+M2|0,G2=c+(u2<<2)|0,e[G2>>2]=F6,K2=u2+1|0,a6=(K2|0)==(V6|0),a6){W3=z1,R6=z1,J6=O1;break}else u2=K2,k6=m6,Q6=F6;else W3=z1,R6=z1,J6=O1;else W3=Z3,R6=p6,J6=I6;if(N2=r3+1|0,q2=e[g2>>2]|0,T2=(N2|0)<(q2|0),T2)Z3=W3,r3=N2,p6=R6,I6=J6;else{v3=W3,K6=J6;break}}else v3=0,K6=Q1;if(U1=n+36|0,Z1=e[U1>>2]|0,G1=(Z1|0)/2&-1,v1=(v3|0)<(G1|0),v1)O6=v3;else return E=1,m=L6,E|0;for(;;)if(O2=c+(O6<<2)|0,e[O2>>2]=K6,s5=O6+1|0,P2=e[U1>>2]|0,T1=(P2|0)/2&-1,j2=(s5|0)<(T1|0),j2)O6=s5;else{E=1;break}return m=L6,E|0}function rB(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0;if(s5=m,p=e[t>>2]|0,B=n+-1|0,i0=(t+(B*56|0)|0)+4|0,d0=e[i0>>2]|0,F0=(n|0)>0,F0)for(V0=c+1108|0,g1=+s[V0>>2],t2=0,X1=0,f2=0,w2=0,G2=0,q2=0;;)if(d1=(t+(X1*56|0)|0)+52|0,w1=e[d1>>2]|0,r2=(t+(X1*56|0)|0)+28|0,v=e[r2>>2]|0,T=v+w1|0,H=+(T|0),X=H*g1,U=v+1|0,o0=+(U|0),Z=X/o0,V=Z,A0=V+1,n0=(t+(X1*56|0)|0)+32|0,r0=e[n0>>2]|0,K=+(r0|0),c0=(t+(X1*56|0)|0)+8|0,s0=e[c0>>2]|0,l0=+(s0|0),j=l0*A0,a0=K+w2,g0=a0+j,f0=(t+(X1*56|0)|0)+36|0,Q0=e[f0>>2]|0,y0=+(Q0|0),h0=(t+(X1*56|0)|0)+12|0,E0=e[h0>>2]|0,C0=+(E0|0),u0=C0*A0,k0=y0+q2,J0=k0+u0,D0=(t+(X1*56|0)|0)+40|0,B0=e[D0>>2]|0,x0=+(B0|0),M0=(t+(X1*56|0)|0)+16|0,G0=e[M0>>2]|0,p0=+(G0|0),P0=p0*A0,R0=x0+f2,S0=R0+P0,L0=(t+(X1*56|0)|0)+48|0,q0=e[L0>>2]|0,H0=+(q0|0),N0=(t+(X1*56|0)|0)+24|0,T0=e[N0>>2]|0,U0=+(T0|0),r1=U0*A0,O0=H0+G2,e1=O0+r1,v0=+(w1|0),i1=+(v|0),c1=A0*i1,$1=v0+t2,f1=$1+c1,l1=X1+1|0,o2=(l1|0)==(n|0),o2){a2=f1,n2=S0,S2=g0,_2=e1,N2=J0;break}else t2=f1,X1=l1,f2=S0,w2=g0,G2=e1,q2=J0;else a2=0,n2=0,S2=0,_2=0,N2=0;return s1=e[o>>2]|0,a1=(s1|0)>-1,a1?(n1=+(p|0),A1=S2+n1,z0=+(s1|0),I1=z0+N2,h1=i5(p,p)|0,E1=+(h1|0),u1=n2+E1,B1=i5(s1,p)|0,p1=+(B1|0),Q1=p1+_2,D1=a2+1,$2=D1,e2=u1,C2=A1,u2=Q1,T2=I1):($2=a2,e2=n2,C2=S2,u2=_2,T2=N2),_1=e[a>>2]|0,y1=(_1|0)>-1,y1?(k1=+(d0|0),x1=C2+k1,L1=+(_1|0),N1=L1+T2,U1=i5(d0,d0)|0,Z1=+(U1|0),G1=e2+Z1,v1=i5(_1,d0)|0,K1=+(v1|0),P1=K1+u2,H1=$2+1,i2=H1,y2=G1,M2=x1,K2=P1,O2=N1):(i2=$2,y2=e2,M2=C2,K2=u2,O2=T2),q1=y2*i2,Y1=M2*M2,j1=q1-Y1,W1=j1>0,W1?(O1=O2*y2,l2=M2*K2,z1=O1-l2,h2=z1/j1,s2=K2*i2,d2=M2*O2,A2=s2-d2,V1=A2/j1,g2=+(p|0),S=V1*g2,w=S+h2,y=+Gi(w),D=~~y,e[o>>2]=D,Q=+(d0|0),_=V1*Q,x=_+h2,R=+Gi(x),L=~~R,e[a>>2]=L,M=e[o>>2]|0,G=(M|0)>1023,G?(e[o>>2]=1023,E=e[a>>2]|0,N=E,W=1023):(N=L,W=M),P=(N|0)>1023,P?(e[a>>2]=1023,I=e[o>>2]|0,z=I,e0=1023):(z=W,e0=N),Y=(z|0)<0,Y?(e[o>>2]=0,C=e[a>>2]|0,t0=C):t0=e0,J=(t0|0)<0,J?(e[a>>2]=0,f=0,f|0):(f=0,f|0)):(e[o>>2]=0,e[a>>2]=0,f=1,f|0)}function Xv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0;if(v0=m,E=t+836|0,I=t+840|0,x=e[I>>2]|0,J=e[t>>2]|0,U2(n,J,5),i0=e[t>>2]|0,d0=(i0|0)>0,d0){for(F0=t+4|0,q0=0,O0=-1;;)if(B=F0+(q0<<2)|0,v=e[B>>2]|0,U2(n,v,4),S=e[B>>2]|0,w=(O0|0)<(S|0),o=w?S:O0,y=q0+1|0,D=e[t>>2]|0,Q=(y|0)<(D|0),Q)q0=y,O0=o;else{a=o;break}if(G0=(a|0)>-1,G0)for(p0=t+128|0,P0=t+192|0,C=t+256|0,p=t+320|0,H0=0;;){if(_=p0+(H0<<2)|0,R=e[_>>2]|0,L=R+-1|0,U2(n,L,3),M=P0+(H0<<2)|0,T=e[M>>2]|0,U2(n,T,2),G=e[M>>2]|0,N=(G|0)==0,N?(V0=0,e1=8):(P=C+(H0<<2)|0,z=e[P>>2]|0,U2(n,z,8),c=e[M>>2]|0,Y=(c|0)==31,Y||(V0=0,e1=8)),(e1|0)==8)for(;e1=0,t0=(p+(H0<<5)|0)+(V0<<2)|0,W=e[t0>>2]|0,e0=W+1|0,U2(n,e0,8),H=V0+1|0,X=e[M>>2]|0,U=1<>2]|0,n0=A0+-1|0,U2(n,n0,2),r0=x+-1|0,K=L7(r0)|0,U2(n,K,4),c0=L7(r0)|0,s0=e[t>>2]|0,l0=(s0|0)>0,!!l0)for(j=t+4|0,a0=t+128|0,M0=s0,R0=0,N0=0,T0=0;;){if(g0=j+(N0<<2)|0,f0=e[g0>>2]|0,Q0=a0+(f0<<2)|0,y0=e[Q0>>2]|0,h0=y0+R0|0,E0=(T0|0)<(h0|0),E0){for(r1=T0;C0=r1+2|0,u0=E+(C0<<2)|0,k0=e[u0>>2]|0,U2(n,k0,c0),J0=r1+1|0,S0=(J0|0)==(h0|0),!S0;)r1=J0;f=e[t>>2]|0,x0=f,U0=h0}else x0=M0,U0=T0;if(D0=N0+1|0,B0=(D0|0)<(x0|0),B0)M0=x0,R0=h0,N0=D0,T0=U0;else break}}function eS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0;z1=m,m=m+272|0,O1=z1,D=t+28|0,Q=e[D>>2]|0,Y=t4(1,1120)|0,A0=W4(n,5)|0,e[Y>>2]=A0,f0=(A0|0)>0;e:do if(f0){for(B0=Y+4|0,Z1=0,r2=-1;;){if(R=W4(n,4)|0,L=B0+(Z1<<2)|0,e[L>>2]=R,M=(R|0)<0,M)break e;if(T=(r2|0)<(R|0),c=T?R:r2,G=Z1+1|0,N=e[Y>>2]|0,P=(G|0)<(N|0),P)Z1=G,r2=c;else{f=c;break}}if(H0=(f|0)>-1,H0)for($1=Y+128|0,E1=Y+192|0,L1=Y+256|0,_=Q+24|0,x=Y+320|0,G1=0;;){if(z=W4(n,3)|0,t0=z+1|0,J=$1+(G1<<2)|0,e[J>>2]=t0,W=W4(n,2)|0,e0=E1+(G1<<2)|0,e[e0>>2]=W,H=(W|0)<0,H||(X=(W|0)==0,X?(E=L1+(G1<<2)|0,I=e[E>>2]|0,Z=I):(U=W4(n,8)|0,o0=L1+(G1<<2)|0,e[o0>>2]=U,Z=U),V=(Z|0)<0,V)||(n0=e[_>>2]|0,i0=(Z|0)<(n0|0),!i0))break e;if(r0=e[e0>>2]|0,K=(r0|0)==31,!K)for(H1=0;;){if(a0=W4(n,8)|0,g0=a0+-1|0,Q0=(x+(G1<<5)|0)+(H1<<2)|0,e[Q0>>2]=g0,d0=(a0|0)<0,d0||(y0=e[_>>2]|0,h0=(a0|0)>(y0|0),l0=H1+1|0,h0))break e;if(c0=e[e0>>2]|0,s0=1<>2]=k0,D0=W4(n,4)|0,x0=(D0|0)<0,!x0)){if(F0=e[Y>>2]|0,M0=(F0|0)>0,M0)for(G0=Y+4|0,p0=Y+128|0,P0=Y+836|0,R0=1<>2]|0,q0=p0+(L0<<2)|0,N0=e[q0>>2]|0,V0=N0+U1|0,T0=(V0|0)>63,T0)break e;if(U0=(q1|0)<(V0|0),U0){for(j1=q1;;){if(r1=W4(n,D0)|0,O0=j1+2|0,e1=P0+(O0<<2)|0,e[e1>>2]=r1,v0=(r1|0)>-1,i1=(r1|0)<(R0|0),W1=v0&i1,!W1)break e;if(c1=j1+1|0,f1=(c1|0)<(V0|0),f1)j1=c1;else{a=c1;break}}B=e[Y>>2]|0,s1=B,Y1=a}else s1=N1,Y1=q1;if(g1=v1+1|0,l1=(g1|0)<(s1|0),l1)N1=s1,U1=V0,v1=g1,q1=Y1;else{C=P0,p=R0,w1=V0;break}}else w=Y+836|0,y=1<>2]=0,a1=Y+840|0,e[a1>>2]=p,n1=w1+2|0,A1=(w1|0)>-2,A1)for(K1=0;z0=C+(K1<<2)|0,I1=O1+(K1<<2)|0,e[I1>>2]=z0,h1=K1+1|0,u1=(h1|0)<(n1|0),u1;)K1=h1;Fh(O1,n1,4,8),d1=(n1|0)>1;t:do if(d1){for(v=e[O1>>2]|0,S=e[v>>2]|0,y1=S,P1=1;Q1=O1+(P1<<2)|0,D1=e[Q1>>2]|0,_1=e[D1>>2]|0,k1=(y1|0)==(_1|0),B1=P1+1|0,!k1;)if(p1=(B1|0)<(n1|0),p1)y1=_1,P1=B1;else break t;if(x1=(Y|0)==0,x1)o=0;else break e;return m=z1,o|0}while(!1);return o=Y,m=z1,o|0}while(!1);return I2(Y),o=0,m=z1,o|0}function tS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0;if(x1=m,m=m+272|0,y1=x1,a=t4(1,1312)|0,c=a+1296|0,e[c>>2]=n,D=n+836|0,z=n+840|0,V=e[z>>2]|0,g0=a+1288|0,e[g0>>2]=V,D0=e[n>>2]|0,q0=(D0|0)>0,q0){for(O0=n+4|0,f=n+128|0,g1=0,Q1=0;;)if(E=O0+(g1<<2)|0,I=e[E>>2]|0,C=f+(I<<2)|0,p=e[C>>2]|0,B=p+Q1|0,v=g1+1|0,S=(v|0)<(D0|0),S)g1=v,Q1=B;else{o=B;break}w=o+2|0,y=a+1284|0,e[y>>2]=w,Q=(o|0)>-2,Q?(M=w,p1=o,k1=7):(Fh(y1,w,4,8),B1=o)}else r1=a+1284|0,e[r1>>2]=2,M=2,p1=0,k1=7;if((k1|0)==7){for(l1=0;_=D+(l1<<2)|0,x=y1+(l1<<2)|0,e[x>>2]=_,R=l1+1|0,L=(R|0)<(M|0),L;)l1=R;for(Fh(y1,M,4,8),T=D,G=a+260|0,s1=0;Y=y1+(s1<<2)|0,t0=e[Y>>2]|0,J=t0,W=J-T|0,e0=W>>2,H=G+(s1<<2)|0,e[H>>2]=e0,X=s1+1|0,U=(X|0)<(M|0),U;)s1=X;for(N=a+260|0,P=a+520|0,a1=0;Z=N+(a1<<2)|0,A0=e[Z>>2]|0,n0=P+(A0<<2)|0,e[n0>>2]=a1,i0=a1+1|0,r0=(i0|0)<(M|0),r0;)a1=i0;for(o0=a+260|0,n1=0;;)if(K=o0+(n1<<2)|0,c0=e[K>>2]|0,s0=D+(c0<<2)|0,l0=e[s0>>2]|0,j=a+(n1<<2)|0,e[j>>2]=l0,a0=n1+1|0,f0=(a0|0)<(M|0),f0)n1=a0;else{B1=p1;break}}if(Q0=n+832|0,d0=e[Q0>>2]|0,(d0|0)==4?(C0=a+1292|0,e[C0>>2]=64):(d0|0)==2?(h0=a+1292|0,e[h0>>2]=128):(d0|0)==1?(y0=a+1292|0,e[y0>>2]=256):(d0|0)==3&&(E0=a+1292|0,e[E0>>2]=86),u0=(B1|0)>0,!u0)return m=x1,a|0;for(k0=a+1032|0,J0=a+780|0,A1=0;;){for(B0=A1+2|0,x0=D+(B0<<2)|0,F0=e[x0>>2]|0,M0=e[g0>>2]|0,v0=1,$1=M0,z0=0,I1=0,u1=0;;)if(G0=D+(z0<<2)|0,p0=e[G0>>2]|0,P0=(p0|0)>(u1|0),R0=(p0|0)<(F0|0),D1=P0&R0,h1=D1?z0:I1,d1=D1?p0:u1,S0=(p0|0)<($1|0),L0=(p0|0)>(F0|0),_1=S0&L0,i1=_1?z0:v0,f1=_1?p0:$1,H0=z0+1|0,N0=(H0|0)<(B0|0),N0)v0=i1,$1=f1,z0=H0,I1=h1,u1=d1;else{c1=i1,E1=h1;break}if(V0=k0+(A1<<2)|0,e[V0>>2]=E1,T0=J0+(A1<<2)|0,e[T0>>2]=c1,U0=A1+1|0,e1=(U0|0)==(B1|0),e1)break;A1=U0}return m=x1,a|0}function iS(t){t=t|0;var n=0,o=0,a=0;a=m,n=(t|0)==0,n||I2(t)}function rS(t){t=t|0;var n=0,o=0,a=0;a=m,n=(t|0)==0,n||I2(t)}function nS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0;if(w2=m,f=n+1296|0,E=e[f>>2]|0,r0=t+64|0,y0=e[r0>>2]|0,M0=y0+4|0,T0=e[M0>>2]|0,l1=T0+28|0,B1=e[l1>>2]|0,U1=B1+2848|0,W1=e[U1>>2]|0,I=t+4|0,x=W4(I,1)|0,J=(x|0)==1,!J)return o=0,o|0;U=n+1284|0,o0=e[U>>2]|0,Z=o0<<2,V=O7(t,Z)|0,A0=n+1292|0,n0=e[A0>>2]|0,i0=n0+-1|0,K=L7(i0)|0,c0=W4(I,K)|0,e[V>>2]=c0,s0=e[A0>>2]|0,l0=s0+-1|0,j=L7(l0)|0,a0=W4(I,j)|0,g0=V+4|0,e[g0>>2]=a0,f0=e[E>>2]|0,Q0=(f0|0)>0;e:do if(Q0){i2=0,n2=2;t:for(;;){if(u0=(E+4|0)+(i2<<2)|0,k0=e[u0>>2]|0,J0=(E+128|0)+(k0<<2)|0,D0=e[J0>>2]|0,B0=(E+192|0)+(k0<<2)|0,x0=e[B0>>2]|0,F0=1<>2]|0,R0=W1+(P0*56|0)|0,S0=JC(R0,I)|0,L0=(S0|0)==-1,L0){o=0,S2=25;break}else t2=S0;if(q0=(D0|0)>0,q0)for(H0=F0+-1|0,$2=t2,f2=0;;){if(N0=$2&H0,V0=((E+320|0)+(k0<<5)|0)+(N0<<2)|0,U0=e[V0>>2]|0,r1=$2>>x0,O0=(U0|0)>-1,O0){if(e1=W1+(U0*56|0)|0,v0=JC(e1,I)|0,i1=f2+n2|0,c1=V+(i1<<2)|0,e[c1>>2]=v0,$1=(v0|0)==-1,$1){o=0,S2=25;break t}}else f1=f2+n2|0,g1=V+(f1<<2)|0,e[g1>>2]=0;if(s1=f2+1|0,a1=(s1|0)<(D0|0),a1)$2=r1,f2=s1;else break}if(n1=D0+n2|0,A1=i2+1|0,z0=e[E>>2]|0,I1=(A1|0)<(z0|0),I1)i2=A1,n2=n1;else break e}if((S2|0)==25)return o|0}while(!1);if(d0=e[U>>2]|0,h0=(d0|0)>2,!h0)return o=V,o|0;for(E0=n+1032|0,C0=n+780|0,o2=2;;){if(h1=o2+-2|0,E1=E0+(h1<<2)|0,u1=e[E1>>2]|0,d1=(E+836|0)+(u1<<2)|0,p1=e[d1>>2]|0,Q1=C0+(h1<<2)|0,D1=e[Q1>>2]|0,_1=(E+836|0)+(D1<<2)|0,y1=e[_1>>2]|0,k1=V+(u1<<2)|0,x1=e[k1>>2]|0,L1=V+(D1<<2)|0,N1=e[L1>>2]|0,w1=(E+836|0)+(o2<<2)|0,Z1=e[w1>>2]|0,G1=x1&32767,v1=N1&32767,K1=v1-G1|0,P1=y1-p1|0,X1=(K1|0)>-1,e2=0-K1|0,H1=X1?K1:e2,q1=Z1-p1|0,Y1=i5(H1,q1)|0,j1=(Y1|0)/(P1|0)&-1,r2=(K1|0)<0,O1=0-j1|0,c=r2?O1:j1,a=c+G1|0,l2=e[A0>>2]|0,z1=l2-a|0,h2=V+(o2<<2)|0,s2=e[h2>>2]|0,d2=(s2|0)==0,d2)W=a|32768,e[h2>>2]=W;else{A2=(z1|0)<(a|0),V1=A2?z1:a,g2=V1<<1,a2=(s2|0)<(g2|0);do if(a2)if(S=s2&1,w=(S|0)==0,w){_=s2>>1,y2=_;break}else{y=s2+1|0,D=y>>1,Q=0-D|0,y2=Q;break}else if(C=(z1|0)>(a|0),C){p=s2-a|0,y2=p;break}else{B=s2-z1|0,v=B^-1,y2=v;break}while(!1);R=y2+a|0,L=R&32767,e[h2>>2]=L,M=e[E1>>2]|0,T=V+(M<<2)|0,G=e[T>>2]|0,N=G&32767,e[T>>2]=N,P=e[Q1>>2]|0,z=V+(P<<2)|0,Y=e[z>>2]|0,t0=Y&32767,e[z>>2]=t0}if(e0=o2+1|0,H=e[U>>2]|0,X=(e0|0)<(H|0),X)o2=e0;else{o=V;break}}return o|0}function sS(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0;if(w1=m,E=n+1296|0,I=e[E>>2]|0,x=t+64|0,J=e[x>>2]|0,i0=J+4|0,d0=e[i0>>2]|0,F0=d0+28|0,V0=e[F0>>2]|0,$1=t+28|0,f1=e[$1>>2]|0,C=V0+(f1<<2)|0,p=e[C>>2]|0,B=(p|0)/2&-1,v=(o|0)==0,v)return c1=B<<2,Ae(a|0,0,c1|0)|0,c=0,c|0;if(S=e[o>>2]|0,w=I+832|0,y=e[w>>2]|0,D=i5(y,S)|0,Q=(D|0)<0,_=(D|0)>255,R=_?255:D,L=Q?0:R,M=n+1284|0,T=e[M>>2]|0,G=(T|0)>1,G)for(N=n+260|0,A1=0,E1=1,d1=0,Q1=L;;){if(t0=N+(E1<<2)|0,W=e[t0>>2]|0,e0=o+(W<<2)|0,H=e[e0>>2]|0,X=H&32767,U=(X|0)==(H|0),U)if(o0=(I+836|0)+(W<<2)|0,Z=e[o0>>2]|0,V=i5(y,H)|0,A0=(V|0)<0,n0=(V|0)>255,r0=n0?255:V,K=A0?0:r0,c0=K-Q1|0,s0=Z-d1|0,I1=(c0|0)>-1,_1=0-c0|0,l0=I1?c0:_1,j=(c0|0)/(s0|0)&-1,a0=c0>>31,g0=a0|1,f0=i5(j,s0)|0,h1=(f0|0)>-1,y1=0-f0|0,Q0=h1?f0:y1,y0=l0-Q0|0,h0=(B|0)>(Z|0),k1=h0?Z:B,E0=(k1|0)>(d1|0),E0&&(C0=1768+(Q1<<2)|0,u0=+s[C0>>2],k0=a+(d1<<2)|0,J0=+s[k0>>2],D0=J0*u0,s[k0>>2]=D0),B0=d1+1|0,x0=(B0|0)<(k1|0),x0)for(q0=B0,g1=0,x1=Q1;;)if(M0=g1+y0|0,G0=(M0|0)<(s0|0),p0=G0?0:g0,P0=G0?0:s0,l1=M0-P0|0,f=x1+j|0,L1=f+p0|0,R0=1768+(L1<<2)|0,S0=+s[R0>>2],L0=a+(q0<<2)|0,H0=+s[L0>>2],N0=H0*S0,s[L0>>2]=N0,T0=q0+1|0,a1=(T0|0)==(k1|0),a1){z0=Z,B1=Z,D1=K;break}else q0=T0,g1=l1,x1=L1;else z0=Z,B1=Z,D1=K;else z0=A1,B1=d1,D1=Q1;if(U0=E1+1|0,r1=(U0|0)<(T|0),r1)A1=z0,E1=U0,d1=B1,Q1=D1;else{n1=z0,p1=D1;break}}else n1=0,p1=L;if(P=(n1|0)<(B|0),!P)return c=1,c|0;for(z=1768+(p1<<2)|0,Y=+s[z>>2],u1=n1;;)if(O0=a+(u1<<2)|0,e1=+s[O0>>2],v0=e1*Y,s[O0>>2]=v0,i1=u1+1|0,s1=(i1|0)==(B|0),s1){c=1;break}else u1=i1;return c|0}function AS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0;return C=m,o=e[t>>2]|0,a=e[o>>2]|0,c=e[n>>2]|0,f=e[c>>2]|0,E=a-f|0,E|0}function oS(t){t=t|0;var n=0,o=0;o=m,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0}function aS(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0;A0=m,c=Z$(n|0)|0,f=Z$(o|0)|0,Q=c+2|0,Y=Q+f|0,a=Y,J=m,m=m+((1*a|0)+15&-16)|0,aB(J|0,n|0)|0,Z=Z$(J|0)|0,o0=J+Z|0,u[o0>>0]=61,u[o0+1>>0]=0,yQ(J|0,o|0)|0,W=e[t>>2]|0,e0=t+8|0,H=e[e0>>2]|0,X=H<<2,U=X+8|0,E=Ni(W,U)|0,e[t>>2]=E,I=t+4|0,C=e[I>>2]|0,p=e[e0>>2]|0,B=p<<2,v=B+8|0,S=Ni(C,v)|0,e[I>>2]=S,w=Z$(J|0)|0,y=e[e0>>2]|0,D=S+(y<<2)|0,e[D>>2]=w,_=w+1|0,x=k9(_)|0,R=e[t>>2]|0,L=R+(y<<2)|0,e[L>>2]=x,M=e[t>>2]|0,T=M+(y<<2)|0,G=e[T>>2]|0,aB(G|0,J|0)|0,N=e[e0>>2]|0,P=N+1|0,e[e0>>2]=P,z=e[t>>2]|0,t0=z+(P<<2)|0,e[t0>>2]=0,m=A0}function $S(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0;if(Y=m,c=(t|0)==0,!c){if(f=e[t>>2]|0,Q=(f|0)==0,!Q){if(x=t+8|0,R=e[x>>2]|0,L=(R|0)>0,L){for(_=R,T=f,P=0;M=T+(P<<2)|0,G=e[M>>2]|0,N=(G|0)==0,N?C=_:(I2(G),o=e[x>>2]|0,C=o),E=P+1|0,I=(E|0)<(C|0),!!I;)n=e[t>>2]|0,_=C,T=n,P=E;a=e[t>>2]|0,p=a}else p=f;I2(p)}B=t+4|0,v=e[B>>2]|0,S=(v|0)==0,S||I2(v),w=t+12|0,y=e[w>>2]|0,D=(y|0)==0,D||I2(y),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0}}function lS(t){t=t|0;var n=0,o=0,a=0,c=0;c=m,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,e[t+20>>2]=0,e[t+24>>2]=0,n=t4(1,3664)|0,o=t+28|0,e[o>>2]=n}function nB(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0;if(B1=m,f=t+28|0,E=e[f>>2]|0,_=(E|0)==0,_){e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,e[t+20>>2]=0,e[t+24>>2]=0,e[t+28>>2]=0;return}if(t0=E+8|0,n0=e[t0>>2]|0,Q0=(n0|0)>0,Q0)for(g1=n0,A1=0;n1=(E+32|0)+(A1<<2)|0,I=e[n1>>2]|0,C=(I|0)==0,C?v=g1:(I2(I),n=e[t0>>2]|0,v=n),p=A1+1|0,B=(p|0)<(v|0),B;)g1=v,A1=p;if(x0=E+12|0,N0=e[x0>>2]|0,f1=(N0|0)>0,f1)for(l1=N0,z0=0;D=(E+544|0)+(z0<<2)|0,Q=e[D>>2]|0,x=(Q|0)==0,x?Y=l1:(R=(E+288|0)+(z0<<2)|0,L=e[R>>2]|0,M=25664+(L<<2)|0,T=e[M>>2]|0,G=T+8|0,N=e[G>>2]|0,Vs[N&7](Q),o=e[x0>>2]|0,Y=o),P=z0+1|0,z=(P|0)<(Y|0),z;)l1=Y,z0=P;if(S=E+16|0,w=e[S>>2]|0,y=(w|0)>0,y)for(s1=w,I1=0;H=(E+1056|0)+(I1<<2)|0,X=e[H>>2]|0,U=(X|0)==0,U?s0=s1:(o0=(E+800|0)+(I1<<2)|0,Z=e[o0>>2]|0,V=25640+(Z<<2)|0,A0=e[V>>2]|0,i0=A0+12|0,r0=e[i0>>2]|0,Vs[r0&7](X),a=e[S>>2]|0,s0=a),K=I1+1|0,c0=(K|0)<(s0|0),c0;)s1=s0,I1=K;if(J=E+20|0,W=e[J>>2]|0,e0=(W|0)>0,e0)for(a1=W,h1=0;f0=(E+1568|0)+(h1<<2)|0,d0=e[f0>>2]|0,y0=(d0|0)==0,y0?F0=a1:(h0=(E+1312|0)+(h1<<2)|0,E0=e[h0>>2]|0,C0=25648+(E0<<2)|0,u0=e[C0>>2]|0,k0=u0+12|0,J0=e[k0>>2]|0,Vs[J0&7](d0),c=e[J>>2]|0,F0=c),D0=h1+1|0,B0=(D0|0)<(F0|0),B0;)a1=F0,h1=D0;if(l0=E+24|0,j=e[l0>>2]|0,a0=(j|0)>0,g0=E+2848|0,a0)for(E1=0;M0=(E+1824|0)+(E1<<2)|0,G0=e[M0>>2]|0,p0=(G0|0)==0,p0||oB(G0),P0=e[g0>>2]|0,R0=(P0|0)==0,R0||(S0=P0+(E1*56|0)|0,PS(S0)),L0=E1+1|0,q0=e[l0>>2]|0,H0=(L0|0)<(q0|0),H0;)E1=L0;if(V0=e[g0>>2]|0,T0=(V0|0)==0,T0||I2(V0),U0=E+28|0,r1=e[U0>>2]|0,O0=(r1|0)>0,O0)for(u1=0;e1=(E+2852|0)+(u1<<2)|0,v0=e[e1>>2]|0,BS(v0),i1=u1+1|0,c1=e[U0>>2]|0,$1=(i1|0)<(c1|0),$1;)u1=i1;I2(E),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,e[t+20>>2]=0,e[t+24>>2]=0,e[t+28>>2]=0}function cS(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0;if(Z2=m,m=m+32|0,M1=Z2,C=t+4|0,p=e[C>>2]|0,a1=t+104|0,Q1=e[a1>>2]|0,G1=(Q1|0)==0,G1)return e[o>>2]=0,e[o+4>>2]=0,e[o+8>>2]=0,e[o+12>>2]=0,e[o+16>>2]=0,e[o+20>>2]=0,e[o+24>>2]=0,e[o+28>>2]=0,e[a>>2]=0,e[a+4>>2]=0,e[a+8>>2]=0,e[a+12>>2]=0,e[a+16>>2]=0,e[a+20>>2]=0,e[a+24>>2]=0,e[a+28>>2]=0,e[c>>2]=0,e[c+4>>2]=0,e[c+8>>2]=0,e[c+12>>2]=0,e[c+16>>2]=0,e[c+20>>2]=0,e[c+24>>2]=0,e[c+28>>2]=0,f=-129,m=Z2,f|0;if(l2=p+4|0,i2=e[l2>>2]|0,_2=(i2|0)<1,_2)k5=-129,o5=27;else if(Xm(M1),T1=p+28|0,E5=e[T1>>2]|0,B=(E5|0)==0,B)k5=-130,o5=27;else if(M=e[E5>>2]|0,H=(M|0)<64,H)k5=-130,o5=27;else if(c0=E5+4|0,E0=e[c0>>2]|0,p0=(E0|0)<(M|0),p0)k5=-130,o5=27;else{U2(M1,1,8),U2(M1,118,8),U2(M1,111,8),U2(M1,114,8),U2(M1,98,8),U2(M1,105,8),U2(M1,115,8),U2(M1,0,32),r1=e[l2>>2]|0,U2(M1,r1,8),g1=p+8|0,l1=e[g1>>2]|0,U2(M1,l1,32),s1=p+12|0,n1=e[s1>>2]|0,U2(M1,n1,32),A1=p+16|0,z0=e[A1>>2]|0,U2(M1,z0,32),I1=p+20|0,h1=e[I1>>2]|0,U2(M1,h1,32),E1=e[E5>>2]|0,u1=E1+-1|0,d1=L7(u1)|0,U2(M1,d1,4),B1=e[c0>>2]|0,p1=B1+-1|0,D1=L7(p1)|0,U2(M1,D1,4),U2(M1,1,1),_1=Q1+64|0,y1=e[_1>>2]|0,k1=(y1|0)==0,k1||I2(y1),x1=p7(M1)|0,L1=k9(x1)|0,e[_1>>2]=L1,N1=M1+8|0,w1=e[N1>>2]|0,U1=p7(M1)|0,i4(L1|0,w1|0,U1|0)|0,Z1=e[_1>>2]|0,e[o>>2]=Z1,v1=p7(M1)|0,K1=o+4|0,e[K1>>2]=v1,P1=o+8|0,e[P1>>2]=1,H1=o+12|0,e[H1>>2]=0,e[H1+4>>2]=0,e[H1+8>>2]=0,e[H1+12>>2]=0,e[H1+16>>2]=0,lt(M1),gS(M1,n),q1=Q1+68|0,Y1=e[q1>>2]|0,j1=(Y1|0)==0,j1||I2(Y1),r2=p7(M1)|0,W1=k9(r2)|0,e[q1>>2]=W1,O1=e[N1>>2]|0,z1=p7(M1)|0,i4(W1|0,O1|0,z1|0)|0,h2=e[q1>>2]|0,e[a>>2]=h2,s2=p7(M1)|0,d2=a+4|0,e[d2>>2]=s2,A2=a+8|0,V1=a+24|0,e[A2>>2]=0,e[A2+4>>2]=0,e[A2+8>>2]=0,e[A2+12>>2]=0,g2=V1,a2=g2,e[a2>>2]=1,t2=g2+4|0,$2=t2,e[$2>>2]=0,lt(M1),o2=e[T1>>2]|0,X1=(o2|0)==0;e:do if(!X1){if(U2(M1,5,8),U2(M1,118,8),U2(M1,111,8),U2(M1,114,8),U2(M1,98,8),U2(M1,105,8),U2(M1,115,8),n2=o2+24|0,f2=e[n2>>2]|0,e2=f2+-1|0,U2(M1,e2,8),y2=e[n2>>2]|0,S2=(y2|0)>0,S2)for(H2=0;;){if(G2=(o2+1824|0)+(H2<<2)|0,u2=e[G2>>2]|0,K2=Pv(u2,M1)|0,N2=(K2|0)==0,C2=H2+1|0,!N2)break e;if(w2=e[n2>>2]|0,M2=(C2|0)<(w2|0),M2)H2=C2;else break}if(U2(M1,0,6),U2(M1,0,16),q2=o2+16|0,T2=e[q2>>2]|0,O2=T2+-1|0,U2(M1,O2,6),V2=e[q2>>2]|0,s5=(V2|0)>0,s5)for(I5=0;;){if(P2=(o2+800|0)+(I5<<2)|0,j2=e[P2>>2]|0,U2(M1,j2,16),R5=e[P2>>2]|0,X2=25640+(R5<<2)|0,v5=e[X2>>2]|0,z2=e[v5>>2]|0,f5=(z2|0)==0,f5)break e;if(w5=(o2+1056|0)+(I5<<2)|0,O5=e[w5>>2]|0,gB[z2&3](O5,M1),$5=I5+1|0,k2=e[q2>>2]|0,r5=($5|0)<(k2|0),r5)I5=$5;else break}if(x2=o2+20|0,R2=e[x2>>2]|0,m2=R2+-1|0,U2(M1,m2,6),C5=e[x2>>2]|0,x5=(C5|0)>0,x5)for(A5=0;u5=(o2+1312|0)+(A5<<2)|0,S5=e[u5>>2]|0,U2(M1,S5,16),G5=e[u5>>2]|0,D5=25648+(G5<<2)|0,v=e[D5>>2]|0,S=e[v>>2]|0,w=(o2+1568|0)+(A5<<2)|0,y=e[w>>2]|0,gB[S&3](y,M1),D=A5+1|0,Q=e[x2>>2]|0,_=(D|0)<(Q|0),_;)A5=D;if(x=o2+12|0,R=e[x>>2]|0,L=R+-1|0,U2(M1,L,6),T=e[x>>2]|0,G=(T|0)>0,G)for(l5=0;N=(o2+288|0)+(l5<<2)|0,P=e[N>>2]|0,U2(M1,P,16),z=e[N>>2]|0,Y=25664+(z<<2)|0,t0=e[Y>>2]|0,J=e[t0>>2]|0,W=(o2+544|0)+(l5<<2)|0,e0=e[W>>2]|0,bQ[J&1](p,e0,M1),X=l5+1|0,U=e[x>>2]|0,o0=(X|0)<(U|0),o0;)l5=X;if(Z=o2+8|0,V=e[Z>>2]|0,A0=V+-1|0,U2(M1,A0,6),n0=e[Z>>2]|0,i0=(n0|0)>0,i0)for(m5=0;r0=(o2+32|0)+(m5<<2)|0,K=e[r0>>2]|0,s0=e[K>>2]|0,U2(M1,s0,1),l0=e[r0>>2]|0,j=l0+4|0,a0=e[j>>2]|0,U2(M1,a0,16),g0=e[r0>>2]|0,f0=g0+8|0,Q0=e[f0>>2]|0,U2(M1,Q0,16),d0=e[r0>>2]|0,y0=d0+12|0,h0=e[y0>>2]|0,U2(M1,h0,8),C0=m5+1|0,u0=e[Z>>2]|0,k0=(C0|0)<(u0|0),k0;)m5=C0;return U2(M1,1,1),J0=Q1+72|0,D0=e[J0>>2]|0,B0=(D0|0)==0,B0||I2(D0),x0=p7(M1)|0,F0=k9(x0)|0,e[J0>>2]=F0,M0=e[N1>>2]|0,G0=p7(M1)|0,i4(F0|0,M0|0,G0|0)|0,P0=e[J0>>2]|0,e[c>>2]=P0,R0=p7(M1)|0,S0=c+4|0,e[S0>>2]=R0,L0=c+8|0,q0=c+24|0,e[L0>>2]=0,e[L0+4>>2]=0,e[L0+8>>2]=0,e[L0+12>>2]=0,H0=q0,N0=H0,e[N0>>2]=2,V0=H0+4|0,T0=V0,e[T0>>2]=0,eB(M1),f=0,m=Z2,f|0}while(!1);e[o>>2]=0,e[o+4>>2]=0,e[o+8>>2]=0,e[o+12>>2]=0,e[o+16>>2]=0,e[o+20>>2]=0,e[o+24>>2]=0,e[o+28>>2]=0,e[a>>2]=0,e[a+4>>2]=0,e[a+8>>2]=0,e[a+12>>2]=0,e[a+16>>2]=0,e[a+20>>2]=0,e[a+24>>2]=0,e[a+28>>2]=0,e[c>>2]=0,e[c+4>>2]=0,e[c+8>>2]=0,e[c+12>>2]=0,e[c+16>>2]=0,e[c+20>>2]=0,e[c+24>>2]=0,e[c+28>>2]=0,I=_1,c5=-130}return(o5|0)==27&&(e[o>>2]=0,e[o+4>>2]=0,e[o+8>>2]=0,e[o+12>>2]=0,e[o+16>>2]=0,e[o+20>>2]=0,e[o+24>>2]=0,e[o+28>>2]=0,e[a>>2]=0,e[a+4>>2]=0,e[a+8>>2]=0,e[a+12>>2]=0,e[a+16>>2]=0,e[a+20>>2]=0,e[a+24>>2]=0,e[a+28>>2]=0,e[c>>2]=0,e[c+4>>2]=0,e[c+8>>2]=0,e[c+12>>2]=0,e[c+16>>2]=0,e[c+20>>2]=0,e[c+24>>2]=0,e[c+28>>2]=0,E=Q1+64|0,I=E,c5=k5),eB(M1),U0=e[I>>2]|0,O0=(U0|0)==0,O0||I2(U0),e1=Q1+68|0,v0=e[e1>>2]|0,i1=(v0|0)==0,i1||I2(v0),c1=Q1+72|0,$1=e[c1>>2]|0,f1=($1|0)==0,f1||I2($1),e[I>>2]=0,e[e1>>2]=0,e[c1>>2]=0,f=c5,m=Z2,f|0}function gS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0;for(i0=m,U2(t,3,8),U2(t,118,8),U2(t,111,8),U2(t,114,8),U2(t,98,8),U2(t,105,8),U2(t,115,8),U2(t,44,32),o=1200,c=44;E=c+-1|0,I=o+1|0,x=u[o>>0]|0,J=x<<24>>24,U2(t,J,8),H=(E|0)==0,!H;)o=I,c=E;if(X=n+8|0,U=e[X>>2]|0,U2(t,U,32),o0=e[X>>2]|0,Z=(o0|0)>0,!Z){U2(t,1,1);return}for(V=n+4|0,A0=0;;){if(C=e[n>>2]|0,p=C+(A0<<2)|0,B=e[p>>2]|0,v=(B|0)==0,v)U2(t,0,32);else if(S=e[V>>2]|0,w=S+(A0<<2)|0,y=e[w>>2]|0,U2(t,y,32),D=e[V>>2]|0,Q=D+(A0<<2)|0,_=e[Q>>2]|0,R=(_|0)==0,!R)for(L=e[n>>2]|0,M=L+(A0<<2)|0,T=e[M>>2]|0,a=T,f=_;G=f+-1|0,N=a+1|0,P=u[a>>0]|0,z=P<<24>>24,U2(t,z,8),Y=(G|0)==0,!Y;)a=N,f=G;if(t0=A0+1|0,W=e[X>>2]|0,e0=(t0|0)<(W|0),e0)A0=t0;else break}U2(t,1,1)}function rQ(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0;if(Y1=m,C=a+1|0,p=C<<3,c=p,L=m,m=m+((1*c|0)+15&-16)|0,e0=a<<3,f=e0,K=m,m=m+((1*f|0)+15&-16)|0,h0=(C|0)==0,h0)G=0;else{for(G0=a;;){if(U0=(G0|0)<(o|0),U0)for(E1=0,x1=G0;;)if(s1=t+(x1<<2)|0,I1=+s[s1>>2],B=I1,v=x1-G0|0,S=t+(v<<2)|0,w=+s[S>>2],y=w,D=y*B,Q=D+E1,_=x1+1|0,k1=(_|0)==(o|0),k1){h1=Q;break}else E1=Q,x1=_;else h1=0;if(x=L+(G0<<3)|0,o1[x>>3]=h1,R=G0+-1|0,M=(G0|0)==0,M)break;G0=R}I=+o1[L>>3],G=I}if(T=G*1.0000000001,N=G*1e-9,P=N+1e-10,z=(a|0)>0,z)d1=T,L1=0;else return Q1=T,z0=Q1,m=Y1,+z0;for(;;){if(w1=L1+1|0,Y=d1>3],U=-X,o0=(L1|0)>0,o0){for(U1=0,P1=U;;)if(A0=K+(U1<<3)|0,n0=+o1[A0>>3],i0=L1-U1|0,r0=L+(i0<<3)|0,c0=+o1[r0>>3],s0=c0*n0,l0=P1-s0,j=U1+1|0,y1=(j|0)==(L1|0),y1){E=l0;break}else U1=j,P1=l0;if(a0=E/d1,g0=K+(L1<<3)|0,o1[g0>>3]=a0,f0=(L1|0)/2&-1,Q0=(L1|0)>1,Q0){for(d0=L1+-1|0,y0=(f0|0)>1,G1=0;E0=K+(G1<<3)|0,C0=+o1[E0>>3],u0=d0-G1|0,k0=K+(u0<<3)|0,J0=+o1[k0>>3],D0=J0*a0,B0=D0+C0,o1[E0>>3]=B0,x0=C0*a0,F0=+o1[k0>>3],M0=F0+x0,o1[k0>>3]=M0,p0=G1+1|0,P0=(p0|0)<(f0|0),P0;)G1=p0;H1=y0?f0:1,N0=a0,Z1=H1}else N0=a0,Z1=0}else Z=U/d1,V=K+(L1<<3)|0,o1[V>>3]=Z,N0=Z,Z1=0;if(R0=L1&1,S0=(R0|0)==0,S0||(L0=K+(Z1<<3)|0,q0=+o1[L0>>3],H0=q0*N0,V0=H0+q0,o1[L0>>3]=V0),T0=N0*N0,r1=1-T0,O0=r1*d1,e1=(w1|0)<(a|0),e1)d1=O0,L1=w1;else{p1=O0;break}}if((q1|0)==8&&(t0=K+(N1<<3)|0,J=a-N1|0,W=J<<3,Ae(t0|0,0,W|0)|0,p1=B1),z)u1=.99,v1=0;else return Q1=p1,z0=Q1,m=Y1,+z0;for(;v0=K+(v1<<3)|0,i1=+o1[v0>>3],c1=i1*u1,o1[v0>>3]=c1,$1=u1*.99,f1=v1+1|0,_1=(f1|0)==(a|0),!_1;)u1=$1,v1=f1;if(z)K1=0;else return Q1=p1,z0=Q1,m=Y1,+z0;for(;;)if(g1=K+(K1<<3)|0,l1=+o1[g1>>3],a1=l1,n1=n+(K1<<2)|0,s[n1>>2]=a1,A1=K1+1|0,D1=(A1|0)==(a|0),D1){Q1=p1;break}else K1=A1;return z0=Q1,m=Y1,+z0}function nQ(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0;if(V=m,I=c+o|0,C=I<<2,f=C,R=m,m=m+((1*f|0)+15&-16)|0,M=(n|0)==0,T=(o|0)>0,M?T&&(N=o<<2,Ae(R|0,0,N|0)|0):T&&(G=o<<2,i4(R|0,n|0,G|0)|0),P=(c|0)>0,!P){m=V;return}if(z=(o|0)>0,z)W=0,e0=o;else{Y=c<<2,Ae(R|0,0,Y|0)|0,Ae(a|0,0,Y|0)|0,m=V;return}for(;;){for(X=W,U=o,o0=0;;)if(S=X+1|0,w=R+(X<<2)|0,y=+s[w>>2],D=U+-1|0,Q=t+(D<<2)|0,_=+s[Q>>2],x=_*y,L=o0-x,t0=(S|0)==(e0|0),t0){E=L;break}else X=S,U=D,o0=L;if(p=R+(e0<<2)|0,s[p>>2]=E,B=a+(W<<2)|0,s[B>>2]=E,v=W+1|0,H=e0+1|0,J=(v|0)==(c|0),J)break;W=v,e0=H}m=V}function hS(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0;if(k0=m,c=e[n>>2]|0,f=(c|0)>1,f?(U2(o,1,1),Q=e[n>>2]|0,Y=Q+-1|0,U2(o,Y,4)):U2(o,0,1),A0=n+1156|0,g0=e[A0>>2]|0,f0=(g0|0)>0,f0){if(U2(o,1,1),Q0=e[A0>>2]|0,d0=Q0+-1|0,U2(o,d0,8),y0=e[A0>>2]|0,E=(y0|0)>0,E)for(I=n+1160|0,C=t+4|0,p=n+2184|0,h0=0;B=I+(h0<<2)|0,v=e[B>>2]|0,S=e[C>>2]|0,w=S+-1|0,y=L7(w)|0,U2(o,v,y),D=p+(h0<<2)|0,_=e[D>>2]|0,x=e[C>>2]|0,R=x+-1|0,L=L7(R)|0,U2(o,_,L),M=h0+1|0,T=e[A0>>2]|0,G=(M|0)<(T|0),G;)h0=M}else U2(o,0,1);if(U2(o,0,2),N=e[n>>2]|0,P=(N|0)>1,P){if(z=t+4|0,t0=e[z>>2]|0,J=(t0|0)>0,J){for(W=n+4|0,E0=0;o0=W+(E0<<2)|0,Z=e[o0>>2]|0,U2(o,Z,4),V=E0+1|0,n0=e[z>>2]|0,i0=(V|0)<(n0|0),i0;)E0=V;a=e[n>>2]|0,e0=a,u0=13}}else e0=N,u0=13;if(!((u0|0)==13&&(H=(e0|0)>0,!H)))for(X=n+1028|0,U=n+1092|0,C0=0;U2(o,0,8),r0=X+(C0<<2)|0,K=e[r0>>2]|0,U2(o,K,8),c0=U+(C0<<2)|0,s0=e[c0>>2]|0,U2(o,s0,8),l0=C0+1|0,j=e[n>>2]|0,a0=(l0|0)<(j|0),a0;)C0=l0}function fS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0;n1=m,c=t4(1,3208)|0,f=t+28|0,Q=e[f>>2]|0,Ae(c|0,0,3208)|0,Y=t+4|0,A0=e[Y>>2]|0,f0=(A0|0)<1;e:do if(f0)a1=24;else if(B0=W4(n,1)|0,H0=(B0|0)<0,H0)a1=24;else{if(O0=(B0|0)==0,O0)e[c>>2]=1;else if(e1=W4(n,4)|0,E=e1+1|0,e[c>>2]=E,I=(e1|0)<0,I)break;if(C=W4(n,1)|0,p=(C|0)<0,!p){if(B=(C|0)==0,!B){if(v=W4(n,8)|0,S=v+1|0,w=c+1156|0,e[w>>2]=S,y=(v|0)<0,y)break;for(D=c+1160|0,_=c+2184|0,a=e[Y>>2]|0,T=a,v0=0;;){if(M=T+-1|0,G=L7(M)|0,N=W4(n,G)|0,P=D+(v0<<2)|0,e[P>>2]=N,z=e[Y>>2]|0,t0=z+-1|0,J=L7(t0)|0,W=W4(n,J)|0,e0=_+(v0<<2)|0,e[e0>>2]=W,H=W|N,X=(H|0)<0,U=(N|0)==(W|0),$1=U|X,$1||(o0=e[Y>>2]|0,Z=(N|0)<(o0|0),V=(W|0)<(o0|0),f1=Z&V,R=v0+1|0,!f1))break e;if(x=e[w>>2]|0,L=(R|0)<(x|0),L)T=o0,v0=R;else break}}if(n0=W4(n,2)|0,i0=(n0|0)==0,i0){if(r0=e[c>>2]|0,K=(r0|0)>1,K){if(c0=e[Y>>2]|0,s0=(c0|0)>0,s0)for(l0=c+4|0,i1=0;;){if(u0=W4(n,4)|0,k0=l0+(i1<<2)|0,e[k0>>2]=u0,J0=e[c>>2]|0,D0=(u0|0)>=(J0|0),x0=(u0|0)<0,g1=x0|D0,E0=i1+1|0,g1)break e;if(h0=e[Y>>2]|0,C0=(E0|0)<(h0|0),C0)i1=E0;else{j=J0,a1=17;break}}}else j=r0,a1=17;if((a1|0)==17&&(a0=(j|0)>0,!a0))return o=c,o|0;for(g0=c+1028|0,Q0=Q+16|0,d0=c+1092|0,y0=Q+20|0,c1=0;;){if(W4(n,8)|0,p0=W4(n,8)|0,P0=g0+(c1<<2)|0,e[P0>>2]=p0,R0=e[Q0>>2]|0,S0=(p0|0)>=(R0|0),L0=(p0|0)<0,l1=L0|S0,l1||(q0=W4(n,8)|0,N0=d0+(c1<<2)|0,e[N0>>2]=q0,V0=e[y0>>2]|0,T0=(q0|0)>=(V0|0),U0=(q0|0)<0,s1=U0|T0,M0=c1+1|0,s1))break e;if(F0=e[c>>2]|0,G0=(M0|0)<(F0|0),G0)c1=M0;else{o=c;break}}return o|0}}}while(!1);return(a1|0)==24&&(r1=(c|0)==0,r1)?(o=0,o|0):(I2(c),o=0,o|0)}function uS(t){t=t|0;var n=0,o=0,a=0;a=m,n=(t|0)==0,n||I2(t)}function IS(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,Z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,m6=0,z3=0,a6=0,B6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,A3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0,R4=0,T4=0,j4=0,d4=0,G4=0,G9=0,N4=0,s4=0,x4=0,c4=0,Ie=0,O9=0,d9=0,de=0,Me=0,ze=0,U4=0,Te=0,O4=0,X4=0,ke=0,Ze=0,V9=0,oe=0,g4=0,D6=0,P4=0,R9=0,A4=0,D4=0,ae=0,z9=0,$e=0,le=0,E4=0,ee=0,F4=0,ce=0,E9=0,$6=0,Ge=0,o4=0,Ee=0,C4=0,a4=0,U6=0,ve=0,Se=0,We=0,$4=0,Q4=0,g8=0,H3=0,Q9=0,C9=0,L4=0,te=0,a7=0,De=0,$7=0,Q7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,y7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ne=0,be=0,je=0,k8=0,y9=0,g7=0,Ce=0,h7=0,w7=0,j8=0,k7=0,ie=0,X8=0,P8=0,v8=0,Xe=0,H4=0,_e=0,e8=0,u8=0,S8=0,ge=0,Z9=0,t8=0,I8=0,i8=0,d8=0,he=0,me=0,Ue=0,Oe=0,W9=0,Re=0,fe=0,r8=0,Be=0,m4=0,E8=0,e7=0,q4=0,I3=0,Pe=0,C8=0,re=0,P9=0,ne=0,S9=0,He=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,s8=0,D8=0,Y4=0,n7=0,b8=0,qe=0,m9=0,s7=0,Ye=0,M7=0,P7=0,v7=0,A7=0,S7=0,se=0,T7=0,H7=0,A8=0,_8=0,D7=0,J8=0,xe=0,ue=0,j9=0,b7=0,tt=0,Mt=0,Tt=0,Gt=0,gt=0,q7=0,ht=0,Y7=0,ft=0,J7=0,ut=0,it=0,ii=0,Nt=0,It=0,dt=0,ri=0,Et=0,rt=0,ni=0,Ut=0,Ot=0,Pt=0,Ht=0,nt=0,Ct=0,qt=0,K7=0,st=0,G7=0,V7=0,si=0,Yt=0,Ai=0,mt=0,Jt=0,Bt=0,pt=0,Kt=0,Qt=0,z7=0,yt=0,Vt=0,At=0,N7=0,wt=0,pe=0,kt=0,_7=0,ot=0,i9=0,u7=0,m8=0,I7=0,R7=0,Pr=0,fr=0,zs=0,Mn=0,Zs=0,Tn=0,Ws=0,js=0,Gn=0,Xs=0,Hr=0,eA=0,tA=0,iA=0,Nn=0,rA=0,Un=0,On=0,nA=0,qr=0,Pn=0,Yr=0,Hn=0,qn=0,sA=0,AA=0,oA=0,Jr=0,Yn=0,aA=0,ur=0,Kr=0,$A=0,lA=0,Vr=0,oi=0,Jn=0,cA=0,gA=0,Kn=0,Vn=0,zn=0,hA=0,ai=0,zr=0,fA=0,Zn=0,uA=0,IA=0,dA=0,Wn=0,EA=0,CA=0,mA=0,BA=0,jn=0,pA=0,QA=0,Zr=0,Ir=0,Wr=0,yA=0,Vi=0,wA=0,Xn=0,jr=0,es=0,Xr=0,kA=0,ts=0,is=0,vA=0,rs=0,ns=0,SA=0,dr=0,ss=0,$i=0,en=0,Er=0,zi=0,Cr=0,Ui=0,mr=0,As=0,Oi=0,mi=0,Bi=0,zt=0,pi=0,Br=0,Zi=0,Wi=0,pr=0,li=0,DA=0,at=0,j$=0,tn=0,rn=0;if(tn=m,_=t+64|0,x=e[_>>2]|0,t2=x+4|0,N3=e[t2>>2]|0,D4=N3+28|0,Y4=e[D4>>2]|0,$A=x+104|0,ai=e[$A>>2]|0,BA=t+104|0,jr=e[BA>>2]|0,R=t+36|0,W=e[R>>2]|0,r0=N3+4|0,y0=e[r0>>2]|0,M0=y0<<2,a=M0,T0=m,m=m+((1*a|0)+15&-16)|0,l1=O7(t,M0)|0,B1=e[r0>>2]|0,U1=B1<<2,W1=O7(t,U1)|0,$2=e[r0>>2]|0,M2=$2<<2,P2=O7(t,M2)|0,k2=jr+4|0,D5=+s[k2>>2],c2=e[r0>>2]|0,F2=c2<<2,c=F2,F5=m,m=m+((1*c|0)+15&-16)|0,_3=jr+8|0,L5=e[_3>>2]|0,Z5=t+28|0,a6=e[Z5>>2]|0,P3=(Y4+544|0)+(a6<<2)|0,e6=e[P3>>2]|0,x6=ai+56|0,g9=e[x6>>2]|0,u4=(a6|0)!=0,n4=u4?2:0,D=n4+L5|0,s4=g9+(D*52|0)|0,O4=t+40|0,e[O4>>2]=a6,ae=(c2|0)>0,ae)for(o4=+(W|0),H3=4/o4,c7=(s[p2>>2]=H3,e[p2>>2]|0),y8=(W|0)/2&-1,k8=y8<<2,v8=c7&2147483647,i8=+(v8>>>0),m4=i8*7177114298428933e-22,He=m4+-764.6162109375,n7=He,se=n7+.345,tt=se,it=ai+4|0,Pt=t+24|0,Ai=t+32|0,N7=tt+-764.6162109375,Pr=W+-1|0,eA=(Pr|0)>1,Hn=tt+-382.30810546875,mr=D5,Oi=0;;){if(lA=e[t>>2]|0,Vr=lA+(Oi<<2)|0,oi=e[Vr>>2]|0,Jn=O7(t,k8)|0,cA=W1+(Oi<<2)|0,e[cA>>2]=Jn,gA=O7(t,k8)|0,Kn=l1+(Oi<<2)|0,e[Kn>>2]=gA,Vn=e[Pt>>2]|0,zn=e[Z5>>2]|0,hA=e[Ai>>2]|0,ZS(oi,it,Y4,Vn,zn,hA),zr=e[Z5>>2]|0,fA=(ai+12|0)+(zr<<2)|0,Zn=e[fA>>2]|0,uA=e[Zn>>2]|0,IA=e[Kn>>2]|0,sQ(uA,oi,IA),dA=e[Z5>>2]|0,Wn=(ai+20|0)+(dA*12|0)|0,YS(Wn,oi),EA=e[oi>>2]|0,CA=EA&2147483647,mA=+(CA>>>0),jn=mA*7177114298428933e-22,pA=N7+jn,QA=pA,Zr=QA+.345,Ir=Zr,s[oi>>2]=Ir,Wr=F5+(Oi<<2)|0,s[Wr>>2]=Ir,eA)for(P=Ir,Br=1;;)if(yA=oi+(Br<<2)|0,Vi=+s[yA>>2],wA=Vi*Vi,Xn=Br+1|0,es=oi+(Xn<<2)|0,Xr=+s[es>>2],kA=Xr*Xr,ts=kA+wA,is=(s[p2>>2]=ts,e[p2>>2]|0),vA=is&2147483647,rs=+(vA>>>0),ns=rs*35885571492144663e-23,SA=Hn+ns,dr=SA,L=dr+.345,M=L,T=Xn>>1,G=oi+(T<<2)|0,s[G>>2]=M,N=M>P,N?(s[Wr>>2]=M,ur=M):ur=P,z=Br+2|0,Y=(z|0)<(Pr|0),Y)P=ur,Br=z;else{J=ur;break}else J=Ir;if(t0=J>0,t0?(s[Wr>>2]=0,H=0):H=J,e0=H>mr,As=e0?H:mr,X=Oi+1|0,U=e[r0>>2]|0,o0=(X|0)<(U|0),o0)mr=As,Oi=X;else{p=k8,v=y8,Ui=As;break}}else S=(W|0)/2&-1,w=S<<2,p=w,v=S,Ui=D5;Z=O7(t,p)|0,V=O7(t,p)|0,A0=e[r0>>2]|0,n0=(A0|0)>0;e:do if(n0){if(i0=(W|0)>1,K=ai+48|0,i0)Bi=0;else{for(mi=0;;){W3=(e6+4|0)+(mi<<2)|0,f6=e[W3>>2]|0,O3=l1+(mi<<2)|0,S3=e[O3>>2]|0,Y3=e[t>>2]|0,v6=Y3+(mi<<2)|0,i6=e[v6>>2]|0,r3=i6+(v<<2)|0,e[O4>>2]=a6,O6=O7(t,60)|0,A3=P2+(mi<<2)|0,e[A3>>2]=O6,at=O6,rn=at+60|0;do e[at>>2]=0,at=at+4|0;while((at|0)<(rn|0));if($Q(s4,r3,Z),r6=F5+(mi<<2)|0,u6=+s[r6>>2],lQ(s4,i6,V,Ui,u6),z$(s4,Z,V,1,i6,S3,r3),D3=(e6+1028|0)+(f6<<2)|0,T6=e[D3>>2]|0,p6=(Y4+800|0)+(T6<<2)|0,R6=e[p6>>2]|0,K6=(R6|0)==1,!K6){o=-1;break}if(I6=e[K>>2]|0,J6=I6+(T6<<2)|0,x3=e[J6>>2]|0,Z6=V$(t,x3,r3,i6)|0,G6=e[A3>>2]|0,j6=G6+28|0,e[j6>>2]=Z6,r9=_h(t)|0,N6=(r9|0)==0,N6||(S6=e[A3>>2]|0,V6=S6+28|0,Q6=e[V6>>2]|0,F6=(Q6|0)==0,F6||(z$(s4,Z,V,2,i6,S3,r3),F3=e[D3>>2]|0,L6=e[K>>2]|0,X6=L6+(F3<<2)|0,s9=e[X6>>2]|0,W6=V$(t,s9,r3,i6)|0,h9=e[A3>>2]|0,f9=h9+56|0,e[f9>>2]=W6,z$(s4,Z,V,0,i6,S3,r3),A9=e[D3>>2]|0,o9=e[K>>2]|0,L9=o9+(A9<<2)|0,d6=e[L9>>2]|0,M6=V$(t,d6,r3,i6)|0,e9=e[A3>>2]|0,e[e9>>2]=M6,M9=e[D3>>2]|0,u9=e[K>>2]|0,r4=u9+(M9<<2)|0,l4=e[r4>>2]|0,T9=e[A3>>2]|0,K9=e[T9>>2]|0,v9=T9+28|0,I9=e[v9>>2]|0,P6=R8(t,l4,K9,I9,9362)|0,t9=e[A3>>2]|0,I4=t9+4|0,e[I4>>2]=P6,k4=e[D3>>2]|0,p9=e[K>>2]|0,v4=p9+(k4<<2)|0,S4=e[v4>>2]|0,R4=e[A3>>2]|0,T4=e[R4>>2]|0,j4=R4+28|0,d4=e[j4>>2]|0,G4=R8(t,S4,T4,d4,18724)|0,G9=e[A3>>2]|0,N4=G9+8|0,e[N4>>2]=G4,x4=e[D3>>2]|0,c4=e[K>>2]|0,Ie=c4+(x4<<2)|0,O9=e[Ie>>2]|0,d9=e[A3>>2]|0,de=e[d9>>2]|0,Me=d9+28|0,ze=e[Me>>2]|0,U4=R8(t,O9,de,ze,28086)|0,Te=e[A3>>2]|0,X4=Te+12|0,e[X4>>2]=U4,ke=e[D3>>2]|0,Ze=e[K>>2]|0,V9=Ze+(ke<<2)|0,oe=e[V9>>2]|0,g4=e[A3>>2]|0,D6=e[g4>>2]|0,P4=g4+28|0,R9=e[P4>>2]|0,A4=R8(t,oe,D6,R9,37449)|0,z9=e[A3>>2]|0,$e=z9+16|0,e[$e>>2]=A4,le=e[D3>>2]|0,E4=e[K>>2]|0,ee=E4+(le<<2)|0,F4=e[ee>>2]|0,ce=e[A3>>2]|0,E9=e[ce>>2]|0,$6=ce+28|0,Ge=e[$6>>2]|0,Ee=R8(t,F4,E9,Ge,46811)|0,C4=e[A3>>2]|0,a4=C4+20|0,e[a4>>2]=Ee,U6=e[D3>>2]|0,ve=e[K>>2]|0,Se=ve+(U6<<2)|0,We=e[Se>>2]|0,$4=e[A3>>2]|0,Q4=e[$4>>2]|0,g8=$4+28|0,Q9=e[g8>>2]|0,C9=R8(t,We,Q4,Q9,56173)|0,L4=e[A3>>2]|0,te=L4+24|0,e[te>>2]=C9,a7=e[D3>>2]|0,De=e[K>>2]|0,$7=De+(a7<<2)|0,Q7=e[$7>>2]|0,K8=e[A3>>2]|0,l7=K8+28|0,x8=e[l7>>2]|0,F8=K8+56|0,L8=e[F8>>2]|0,M8=R8(t,Q7,x8,L8,9362)|0,V8=e[A3>>2]|0,z8=V8+32|0,e[z8>>2]=M8,y7=e[D3>>2]|0,T8=e[K>>2]|0,G8=T8+(y7<<2)|0,N8=e[G8>>2]|0,w8=e[A3>>2]|0,h8=w8+28|0,U8=e[h8>>2]|0,O8=w8+56|0,Z8=e[O8>>2]|0,W8=R8(t,N8,U8,Z8,18724)|0,f8=e[A3>>2]|0,Ne=f8+36|0,e[Ne>>2]=W8,be=e[D3>>2]|0,je=e[K>>2]|0,y9=je+(be<<2)|0,g7=e[y9>>2]|0,Ce=e[A3>>2]|0,h7=Ce+28|0,w7=e[h7>>2]|0,j8=Ce+56|0,k7=e[j8>>2]|0,ie=R8(t,g7,w7,k7,28086)|0,X8=e[A3>>2]|0,P8=X8+40|0,e[P8>>2]=ie,Xe=e[D3>>2]|0,H4=e[K>>2]|0,_e=H4+(Xe<<2)|0,e8=e[_e>>2]|0,u8=e[A3>>2]|0,S8=u8+28|0,ge=e[S8>>2]|0,Z9=u8+56|0,t8=e[Z9>>2]|0,I8=R8(t,e8,ge,t8,37449)|0,d8=e[A3>>2]|0,he=d8+44|0,e[he>>2]=I8,me=e[D3>>2]|0,Ue=e[K>>2]|0,Oe=Ue+(me<<2)|0,W9=e[Oe>>2]|0,Re=e[A3>>2]|0,fe=Re+28|0,r8=e[fe>>2]|0,Be=Re+56|0,E8=e[Be>>2]|0,e7=R8(t,W9,r8,E8,46811)|0,q4=e[A3>>2]|0,I3=q4+48|0,e[I3>>2]=e7,Pe=e[D3>>2]|0,C8=e[K>>2]|0,re=C8+(Pe<<2)|0,P9=e[re>>2]|0,ne=e[A3>>2]|0,S9=ne+28|0,H8=e[S9>>2]|0,f7=ne+56|0,t7=e[f7>>2]|0,i7=R8(t,P9,H8,t7,56173)|0,q8=e[A3>>2]|0,r7=q8+52|0,e[r7>>2]=i7)),Y8=mi+1|0,n8=e[r0>>2]|0,s8=(Y8|0)<(n8|0),s8)mi=Y8;else{B=K,b8=n8;break e}}return m=tn,o|0}for(;;){_6=(e6+4|0)+(Bi<<2)|0,f0=e[_6>>2]|0,Y6=l1+(Bi<<2)|0,a0=e[Y6>>2]|0,C6=e[t>>2]|0,v3=C6+(Bi<<2)|0,j=e[v3>>2]|0,c0=j+(v<<2)|0,e[O4>>2]=a6,Z3=O7(t,60)|0,B0=P2+(Bi<<2)|0,e[B0>>2]=Z3,at=Z3,rn=at+60|0;do e[at>>2]=0,at=at+4|0;while((at|0)<(rn|0));for(Zi=0;V3=a0+(Zi<<2)|0,k3=e[V3>>2]|0,c3=k3&2147483647,U3=+(c3>>>0),o6=U3*7177114298428933e-22,u3=o6+-764.6162109375,y6=u3,w6=y6+.345,k6=w6,Q=Zi+v|0,m6=j+(Q<<2)|0,s[m6>>2]=k6,z3=Zi+1|0,B6=(z3|0)<(v|0),B6;)Zi=z3;if($Q(s4,c0,Z),s0=F5+(Bi<<2)|0,l0=+s[s0>>2],lQ(s4,j,V,Ui,l0),z$(s4,Z,V,1,j,a0,c0),g0=(e6+1028|0)+(f0<<2)|0,Q0=e[g0>>2]|0,d0=(Y4+800|0)+(Q0<<2)|0,h0=e[d0>>2]|0,E0=(h0|0)==1,!E0){o=-1;break}if(C0=e[K>>2]|0,u0=C0+(Q0<<2)|0,k0=e[u0>>2]|0,J0=V$(t,k0,c0,j)|0,D0=e[B0>>2]|0,x0=D0+28|0,e[x0>>2]=J0,F0=_h(t)|0,G0=(F0|0)==0,G0||(p0=e[B0>>2]|0,P0=p0+28|0,R0=e[P0>>2]|0,S0=(R0|0)==0,S0||(z$(s4,Z,V,2,j,a0,c0),L0=e[g0>>2]|0,q0=e[K>>2]|0,H0=q0+(L0<<2)|0,N0=e[H0>>2]|0,V0=V$(t,N0,c0,j)|0,U0=e[B0>>2]|0,r1=U0+56|0,e[r1>>2]=V0,z$(s4,Z,V,0,j,a0,c0),O0=e[g0>>2]|0,e1=e[K>>2]|0,v0=e1+(O0<<2)|0,i1=e[v0>>2]|0,c1=V$(t,i1,c0,j)|0,$1=e[B0>>2]|0,e[$1>>2]=c1,f1=e[g0>>2]|0,g1=e[K>>2]|0,s1=g1+(f1<<2)|0,a1=e[s1>>2]|0,n1=e[B0>>2]|0,A1=e[n1>>2]|0,z0=n1+28|0,I1=e[z0>>2]|0,h1=R8(t,a1,A1,I1,9362)|0,E1=e[B0>>2]|0,u1=E1+4|0,e[u1>>2]=h1,d1=e[g0>>2]|0,p1=e[K>>2]|0,Q1=p1+(d1<<2)|0,D1=e[Q1>>2]|0,_1=e[B0>>2]|0,y1=e[_1>>2]|0,k1=_1+28|0,x1=e[k1>>2]|0,L1=R8(t,D1,y1,x1,18724)|0,N1=e[B0>>2]|0,w1=N1+8|0,e[w1>>2]=L1,Z1=e[g0>>2]|0,G1=e[K>>2]|0,v1=G1+(Z1<<2)|0,K1=e[v1>>2]|0,P1=e[B0>>2]|0,H1=e[P1>>2]|0,q1=P1+28|0,Y1=e[q1>>2]|0,j1=R8(t,K1,H1,Y1,28086)|0,r2=e[B0>>2]|0,O1=r2+12|0,e[O1>>2]=j1,l2=e[g0>>2]|0,z1=e[K>>2]|0,h2=z1+(l2<<2)|0,s2=e[h2>>2]|0,d2=e[B0>>2]|0,A2=e[d2>>2]|0,V1=d2+28|0,g2=e[V1>>2]|0,a2=R8(t,s2,A2,g2,37449)|0,i2=e[B0>>2]|0,o2=i2+16|0,e[o2>>2]=a2,X1=e[g0>>2]|0,n2=e[K>>2]|0,f2=n2+(X1<<2)|0,e2=e[f2>>2]|0,y2=e[B0>>2]|0,S2=e[y2>>2]|0,w2=y2+28|0,C2=e[w2>>2]|0,_2=R8(t,e2,S2,C2,46811)|0,G2=e[B0>>2]|0,u2=G2+20|0,e[u2>>2]=_2,K2=e[g0>>2]|0,N2=e[K>>2]|0,q2=N2+(K2<<2)|0,T2=e[q2>>2]|0,O2=e[B0>>2]|0,V2=e[O2>>2]|0,s5=O2+28|0,T1=e[s5>>2]|0,j2=R8(t,T2,V2,T1,56173)|0,R5=e[B0>>2]|0,X2=R5+24|0,e[X2>>2]=j2,v5=e[g0>>2]|0,z2=e[K>>2]|0,f5=z2+(v5<<2)|0,w5=e[f5>>2]|0,O5=e[B0>>2]|0,$5=O5+28|0,E5=e[$5>>2]|0,r5=O5+56|0,x2=e[r5>>2]|0,R2=R8(t,w5,E5,x2,9362)|0,m2=e[B0>>2]|0,C5=m2+32|0,e[C5>>2]=R2,x5=e[g0>>2]|0,u5=e[K>>2]|0,S5=u5+(x5<<2)|0,G5=e[S5>>2]|0,H2=e[B0>>2]|0,I5=H2+28|0,A5=e[I5>>2]|0,l5=H2+56|0,m5=e[l5>>2]|0,M1=R8(t,G5,A5,m5,18724)|0,k5=e[B0>>2]|0,c5=k5+36|0,e[c5>>2]=M1,o5=e[g0>>2]|0,Z2=e[K>>2]|0,B5=Z2+(o5<<2)|0,e5=e[B5>>2]|0,n5=e[B0>>2]|0,g5=n5+28|0,J2=e[g5>>2]|0,h5=n5+56|0,t5=e[h5>>2]|0,b5=R8(t,e5,J2,t5,28086)|0,W2=e[B0>>2]|0,a5=W2+40|0,e[a5>>2]=b5,p5=e[g0>>2]|0,q5=e[K>>2]|0,e3=q5+(p5<<2)|0,d5=e[e3>>2]|0,f3=e[B0>>2]|0,g3=f3+28|0,V5=e[g3>>2]|0,t3=f3+56|0,s3=e[t3>>2]|0,E3=R8(t,d5,V5,s3,37449)|0,z5=e[B0>>2]|0,y3=z5+44|0,e[y3>>2]=E3,h3=e[g0>>2]|0,m3=e[K>>2]|0,q3=m3+(h3<<2)|0,M3=e[q3>>2]|0,W5=e[B0>>2]|0,Q3=W5+28|0,X5=e[Q3>>2]|0,j3=W5+56|0,T3=e[j3>>2]|0,a3=R8(t,M3,X5,T3,46811)|0,$3=e[B0>>2]|0,l3=$3+48|0,e[l3>>2]=a3,C3=e[g0>>2]|0,Y5=e[K>>2]|0,N5=Y5+(C3<<2)|0,P5=e[N5>>2]|0,y5=e[B0>>2]|0,G3=y5+28|0,t6=e[G3>>2]|0,i3=y5+56|0,o3=e[i3>>2]|0,R3=R8(t,P5,t6,o3,56173)|0,h6=e[B0>>2]|0,B3=h6+52|0,e[B3>>2]=R3)),w3=Bi+1|0,p3=e[r0>>2]|0,X3=(w3|0)<(p3|0),X3)Bi=w3;else{B=K,b8=p3;break e}}return m=tn,o|0}else y=ai+48|0,B=y,b8=A0;while(!1);for(s[k2>>2]=Ui,D8=b8<<2,f=D8,qe=m,m=m+((1*f|0)+15&-16)|0,E=D8,m9=m,m=m+((1*E|0)+15&-16)|0,s7=_h(t)|0,Ye=(s7|0)!=0,M7=Ye?0:7,P7=ai+44|0,v7=t+24|0,A7=t+32|0,S7=Y4+2868|0,T7=ai+52|0,li=M7;;){if(H7=(jr+12|0)+(li<<2)|0,A8=e[H7>>2]|0,U2(A8,0,1),_8=e[P7>>2]|0,U2(A8,a6,_8),D7=e[Z5>>2]|0,J8=(D7|0)==0,J8||(xe=e[v7>>2]|0,U2(A8,xe,1),ue=e[A7>>2]|0,U2(A8,ue,1)),j9=e[r0>>2]|0,b7=(j9|0)>0,b7)for(zt=0;;)if(Mt=(e6+4|0)+(zt<<2)|0,Tt=e[Mt>>2]|0,Gt=W1+(zt<<2)|0,gt=e[Gt>>2]|0,q7=(e6+1028|0)+(Tt<<2)|0,ht=e[q7>>2]|0,Y7=e[B>>2]|0,ft=Y7+(ht<<2)|0,J7=e[ft>>2]|0,ut=P2+(zt<<2)|0,ii=e[ut>>2]|0,Nt=ii+(li<<2)|0,It=e[Nt>>2]|0,dt=jv(A8,t,J7,It,gt)|0,ri=T0+(zt<<2)|0,e[ri>>2]=dt,Et=zt+1|0,rt=e[r0>>2]|0,ni=(Et|0)<(rt|0),ni)zt=Et;else{I=rt;break}else I=j9;if(Ut=e[Z5>>2]|0,Ot=((Y4+3240|0)+(Ut*60|0)|0)+(li<<2)|0,Ht=e[Ot>>2]|0,yS(li,S7,s4,e6,l1,W1,T0,Ht,I),nt=e[e6>>2]|0,Ct=(nt|0)>0,Ct)for(pi=0;;){if(qt=(e6+1092|0)+(pi<<2)|0,K7=e[qt>>2]|0,st=e[r0>>2]|0,G7=(st|0)>0,G7)for(Kr=st,$i=0,Wi=0;;)if(V7=(e6+4|0)+(Wi<<2)|0,si=e[V7>>2]|0,Yt=(si|0)==(pi|0),Yt?(mt=m9+($i<<2)|0,Jt=T0+(Wi<<2)|0,Bt=e[Jt>>2]|0,DA=(Bt|0)!=0,n=DA&1,e[mt>>2]=n,pt=W1+(Wi<<2)|0,Kt=e[pt>>2]|0,Qt=$i+1|0,z7=qe+($i<<2)|0,e[z7>>2]=Kt,C=e[r0>>2]|0,At=C,en=Qt):(At=Kr,en=$i),yt=Wi+1|0,Vt=(yt|0)<(At|0),Vt)Kr=At,$i=en,Wi=yt;else{ss=en;break}else ss=0;if(wt=(Y4+1312|0)+(K7<<2)|0,pe=e[wt>>2]|0,kt=25648+(pe<<2)|0,_7=e[kt>>2]|0,ot=_7+20|0,i9=e[ot>>2]|0,u7=e[T7>>2]|0,m8=u7+(K7<<2)|0,I7=e[m8>>2]|0,R7=hB[i9&7](t,I7,qe,m9,ss)|0,fr=e[r0>>2]|0,zs=(fr|0)>0,zs)for(zi=0,pr=0;;)if(Mn=(e6+4|0)+(pr<<2)|0,Zs=e[Mn>>2]|0,Tn=(Zs|0)==(pi|0),Tn?(Ws=W1+(pr<<2)|0,js=e[Ws>>2]|0,Gn=zi+1|0,Xs=qe+(zi<<2)|0,e[Xs>>2]=js,Cr=Gn):Cr=zi,Hr=pr+1|0,tA=(Hr|0)<(fr|0),tA)zi=Cr,pr=Hr;else{Er=Cr;break}else Er=0;if(iA=e[wt>>2]|0,Nn=25648+(iA<<2)|0,rA=e[Nn>>2]|0,Un=rA+24|0,On=e[Un>>2]|0,nA=e[T7>>2]|0,qr=nA+(K7<<2)|0,Pn=e[qr>>2]|0,_Q[On&3](A8,t,Pn,qe,m9,Er,R7,pi)|0,Yr=pi+1|0,qn=e[e6>>2]|0,sA=(Yr|0)<(qn|0),sA)pi=Yr;else break}if(AA=li+1|0,oA=_h(t)|0,Jr=(oA|0)!=0,Yn=Jr?14:7,aA=(li|0)<(Yn|0),aA)li=AA;else{o=0;break}}return m=tn,o|0}function dS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0;if(F2=m,S=t+64|0,w=e[S>>2]|0,E1=w+4|0,L1=e[E1>>2]|0,Y1=L1+28|0,V1=e[Y1>>2]|0,y2=w+104|0,T2=e[y2>>2]|0,f5=t+28|0,x5=e[f5>>2]|0,y=V1+(x5<<2)|0,P=e[y>>2]|0,Z=t+36|0,e[Z>>2]=P,a0=L1+4|0,J0=e[a0>>2]|0,L0=J0<<2,c=L0,i1=m,m=m+((1*c|0)+15&-16)|0,f=L0,z0=m,m=m+((1*f|0)+15&-16)|0,E=L0,I1=m,m=m+((1*E|0)+15&-16)|0,I=L0,h1=m,m=m+((1*I|0)+15&-16)|0,u1=e[a0>>2]|0,d1=(u1|0)>0,d1)for(B1=n+4|0,p1=n+1028|0,Q1=T2+48|0,D1=P<<1,_1=D1&2147483646,Z2=0;;)if(U1=B1+(Z2<<2)|0,Z1=e[U1>>2]|0,G1=p1+(Z1<<2)|0,v1=e[G1>>2]|0,K1=(V1+800|0)+(v1<<2)|0,P1=e[K1>>2]|0,H1=25640+(P1<<2)|0,q1=e[H1>>2]|0,j1=q1+20|0,r2=e[j1>>2]|0,W1=e[Q1>>2]|0,O1=W1+(v1<<2)|0,l2=e[O1>>2]|0,z1=ct[r2&15](t,l2)|0,h2=h1+(Z2<<2)|0,e[h2>>2]=z1,s2=I1+(Z2<<2)|0,W2=(z1|0)!=0,o=W2&1,e[s2>>2]=o,d2=e[t>>2]|0,A2=d2+(Z2<<2)|0,g2=e[A2>>2]|0,Ae(g2|0,0,_1|0)|0,a2=Z2+1|0,t2=e[a0>>2]|0,$2=(a2|0)<(t2|0),$2)Z2=a2;else{n1=t2;break}else n1=u1;if(y1=n+1156|0,k1=e[y1>>2]|0,x1=(k1|0)>0,x1)for(N1=n+1160|0,w1=n+2184|0,c2=0;e2=N1+(c2<<2)|0,S2=e[e2>>2]|0,w2=I1+(S2<<2)|0,C2=e[w2>>2]|0,M2=(C2|0)==0,_2=w1+(c2<<2)|0,G2=e[_2>>2]|0,M2?(u2=I1+(G2<<2)|0,K2=e[u2>>2]|0,N2=(K2|0)==0,N2||(a5=10)):a5=10,(a5|0)==10&&(a5=0,e[w2>>2]=1,q2=I1+(G2<<2)|0,e[q2>>2]=1),O2=c2+1|0,V2=(O2|0)<(k1|0),V2;)c2=O2;if(i2=e[n>>2]|0,o2=(i2|0)>0,o2){for(X1=n+1092|0,n2=T2+52|0,f2=n+4|0,s5=n1,B5=0;;){if(P2=(s5|0)>0,P2)for(A1=s5,c5=0,h5=0;;)if(T1=f2+(h5<<2)|0,j2=e[T1>>2]|0,R5=(j2|0)==(B5|0),R5?(X2=I1+(h5<<2)|0,v5=e[X2>>2]|0,z2=z0+(c5<<2)|0,b5=(v5|0)!=0,a=b5&1,e[z2>>2]=a,w5=e[t>>2]|0,O5=w5+(h5<<2)|0,$5=e[O5>>2]|0,k2=c5+1|0,E5=i1+(c5<<2)|0,e[E5>>2]=$5,B=e[a0>>2]|0,R2=B,o5=k2):(R2=A1,o5=c5),r5=h5+1|0,x2=(r5|0)<(R2|0),x2)A1=R2,c5=o5,h5=r5;else{k5=o5;break}else k5=0;if(m2=X1+(B5<<2)|0,C5=e[m2>>2]|0,u5=(V1+1312|0)+(C5<<2)|0,S5=e[u5>>2]|0,G5=25648+(S5<<2)|0,D5=e[G5>>2]|0,H2=D5+28|0,I5=e[H2>>2]|0,A5=e[n2>>2]|0,l5=A5+(C5<<2)|0,m5=e[l5>>2]|0,hB[I5&7](t,m5,i1,z0,k5)|0,M1=B5+1|0,D=e[n>>2]|0,Q=(M1|0)<(D|0),!Q)break;p=e[a0>>2]|0,s5=p,B5=M1}v=e[y1>>2]|0,_=v}else _=k1;if(x=(_|0)>0,x)for(R=n+1160|0,L=e[t>>2]|0,M=n+2184|0,T=(P|0)/2&-1,G=(P|0)>1,n5=_;;){if(e5=n5+-1|0,e0=R+(e5<<2)|0,H=e[e0>>2]|0,X=L+(H<<2)|0,U=e[X>>2]|0,o0=M+(e5<<2)|0,V=e[o0>>2]|0,A0=L+(V<<2)|0,n0=e[A0>>2]|0,G)for(t5=0;;){i0=U+(t5<<2)|0,r0=+s[i0>>2],K=n0+(t5<<2)|0,c0=+s[K>>2],s0=r0>0,l0=c0>0;do if(s0)if(l0){s[i0>>2]=r0,j=r0-c0,s[K>>2]=j;break}else{s[K>>2]=r0,g0=c0+r0,s[i0>>2]=g0;break}else if(l0){s[i0>>2]=r0,f0=c0+r0,s[K>>2]=f0;break}else{s[K>>2]=r0,Q0=r0-c0,s[i0>>2]=Q0;break}while(!1);if(d0=t5+1|0,y0=(d0|0)<(T|0),y0)t5=d0;else break}if(N=(n5|0)>1,N)n5=e5;else break}if(z=e[a0>>2]|0,Y=(z|0)>0,!Y)return m=F2,0;for(t0=n+4|0,J=n+1028|0,W=T2+48|0,g5=0;;)if(E0=e[t>>2]|0,C0=E0+(g5<<2)|0,u0=e[C0>>2]|0,k0=t0+(g5<<2)|0,D0=e[k0>>2]|0,B0=J+(D0<<2)|0,x0=e[B0>>2]|0,F0=(V1+800|0)+(x0<<2)|0,M0=e[F0>>2]|0,G0=25640+(M0<<2)|0,p0=e[G0>>2]|0,P0=p0+24|0,R0=e[P0>>2]|0,S0=e[W>>2]|0,q0=S0+(x0<<2)|0,H0=e[q0>>2]|0,N0=h1+(g5<<2)|0,V0=e[N0>>2]|0,cB[R0&3](t,H0,V0,u0)|0,T0=g5+1|0,U0=e[a0>>2]|0,r1=(T0|0)<(U0|0),r1)g5=T0;else{C=U0;break}if(h0=(C|0)>0,!h0)return m=F2,0;for(J2=0;O0=e[t>>2]|0,e1=O0+(J2<<2)|0,v0=e[e1>>2]|0,c1=e[f5>>2]|0,$1=(T2+12|0)+(c1<<2)|0,f1=e[$1>>2]|0,g1=e[f1>>2]|0,ES(g1,v0,v0),l1=J2+1|0,s1=e[a0>>2]|0,a1=(l1|0)<(s1|0),a1;)J2=l1;return m=F2,0}function sB(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0;if(y1=m,o=(n|0)/4&-1,a=o<<2,y=k9(a)|0,P=o+n|0,Z=P<<2,a0=k9(Z)|0,J0=n>>1,L0=+(n|0),i1=L0,I1=+Ur(+i1),c=I1*1.4426950408889634,f=+Gi(c),E=~~f,I=t+4|0,e[I>>2]=E,e[t>>2]=n,C=t+8|0,e[C>>2]=a0,p=t+12|0,e[p>>2]=y,B=(n|0)>3,!B){z0=4/L0,h1=t+16|0,s[h1>>2]=z0;return}for(v=+(n|0),S=3.141592653589793/v,w=n<<1,D=+(w|0),Q=3.141592653589793/D,B1=0;M=B1<<2,T=+(M|0),G=S*T,N=+Jo(+G),z=N,Y=B1<<1,t0=a0+(Y<<2)|0,s[t0>>2]=z,J=+Fn(+G),W=J,e0=-W,H=Y|1,X=a0+(H<<2)|0,s[X>>2]=e0,U=+(H|0),o0=Q*U,V=+Jo(+o0),A0=V,n0=Y+J0|0,i0=a0+(n0<<2)|0,s[i0>>2]=A0,r0=+Fn(+o0),K=r0,c0=n0+1|0,s0=a0+(c0<<2)|0,s[s0>>2]=K,l0=B1+1|0,j=(l0|0)<(o|0),j;)B1=l0;if(_=(n|0)/8&-1,x=(n|0)>7,!x){z0=4/L0,h1=t+16|0,s[h1>>2]=z0;return}for(R=+(n|0),L=3.141592653589793/R,p1=0;g0=p1<<2,f0=g0|2,Q0=+(f0|0),d0=L*Q0,y0=+Jo(+d0),h0=y0*.5,E0=h0,C0=p1<<1,u0=C0+n|0,k0=a0+(u0<<2)|0,s[k0>>2]=E0,D0=+Fn(+d0),B0=D0*-.5,x0=B0,F0=u0+1|0,M0=a0+(F0<<2)|0,s[M0>>2]=x0,G0=p1+1|0,p0=(G0|0)<(_|0),p0;)p1=G0;if(P0=E+-1|0,R0=1<>2]=z0;return}for(;;){for(V0=H0,E1=0,D1=0;;)if(N0=V0&Q1,T0=(N0|0)==0,U0=1<>O0,v0=(e1|0)==0,v0){d1=u1;break}else V0=e1,E1=u1,D1=O0;if(c1=d1^-1,$1=S0&c1,f1=$1+-1|0,g1=Q1<<1,l1=y+(g1<<2)|0,e[l1>>2]=f1,s1=g1|1,a1=y+(s1<<2)|0,e[a1>>2]=d1,n1=Q1+1|0,A1=(n1|0)<(_|0),A1)Q1=n1;else break}z0=4/L0,h1=t+16|0,s[h1>>2]=z0}function AB(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0;p=m,n=(t|0)==0,!n&&(o=t+8|0,a=e[o>>2]|0,c=(a|0)==0,c||I2(a),f=t+12|0,E=e[f>>2]|0,I=(E|0)==0,I||I2(E),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0)}function ES(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,Z5=0,k3=0,c3=0,U3=0;for(U3=m,E=e[t>>2]|0,I=E>>1,W1=E>>2,a=I+-7|0,K2=n+(a<<2)|0,c=I+W1|0,X2=o+(c<<2)|0,R2=t+8|0,l5=e[R2>>2]|0,g5=l5+(W1<<2)|0,l3=g5,N5=K2,w3=X2;d5=w3+-16|0,m3=N5+8|0,C=+s[m3>>2],R=l3+12|0,W=+s[R>>2],r0=C*W,y0=-r0,M0=+s[N5>>2],T0=l3+8|0,l1=+s[T0>>2],B1=l1*M0,U1=y0-B1,s[d5>>2]=U1,O1=+s[N5>>2],$2=+s[R>>2],y2=$2*O1,S2=+s[m3>>2],w2=+s[T0>>2],C2=w2*S2,M2=y2-C2,_2=w3+-12|0,s[_2>>2]=M2,G2=N5+24|0,u2=+s[G2>>2],N2=l3+4|0,q2=+s[N2>>2],T2=u2*q2,O2=-T2,V2=N5+16|0,s5=+s[V2>>2],P2=+s[l3>>2],T1=P2*s5,j2=O2-T1,R5=w3+-8|0,s[R5>>2]=j2,v5=+s[V2>>2],z2=+s[N2>>2],f5=z2*v5,w5=+s[G2>>2],O5=+s[l3>>2],$5=O5*w5,k2=f5-$5,E5=w3+-4|0,s[E5>>2]=k2,r5=N5+-32|0,x2=l3+16|0,m2=r5>>>0>>0,!m2;)l3=x2,N5=r5,w3=d5;for(C5=o+(I<<2)|0,f=I+-8|0,x5=n+(f<<2)|0,C3=g5,P5=x5,p3=X2;u5=C3+-16|0,S5=P5+16|0,G5=+s[S5>>2],D5=C3+-4|0,H2=+s[D5>>2],I5=H2*G5,A5=P5+24|0,m5=+s[A5>>2],M1=C3+-8|0,k5=+s[M1>>2],c5=k5*m5,o5=c5+I5,s[p3>>2]=o5,Z2=+s[S5>>2],c2=+s[M1>>2],B5=c2*Z2,e5=+s[A5>>2],n5=+s[D5>>2],J2=n5*e5,h5=B5-J2,t5=p3+4|0,s[t5>>2]=h5,b5=+s[P5>>2],W2=C3+-12|0,a5=+s[W2>>2],F2=a5*b5,p5=P5+8|0,q5=+s[p5>>2],e3=+s[u5>>2],f3=e3*q5,g3=f3+F2,V5=p3+8|0,s[V5>>2]=g3,t3=+s[P5>>2],s3=+s[u5>>2],E3=s3*t3,F5=+s[p5>>2],z5=+s[W2>>2],y3=z5*F5,h3=E3-y3,q3=p3+12|0,s[q3>>2]=h3,M3=P5+-32|0,W5=p3+16|0,Q3=M3>>>0>>0,!Q3;)C3=u5,P5=M3,p3=W5;for(t6=t+4|0,i3=e[t6>>2]|0,AQ(i3,l5,C5,I),o3=e[t>>2]|0,R3=e[R2>>2]|0,h6=t+12|0,B3=e[h6>>2]|0,oQ(o3,R3,B3,o),X5=e[R2>>2]|0,j3=X5+(I<<2)|0,Y5=j3,y5=o,X3=X2,Z5=X2;_3=X3+-16|0,T3=+s[y5>>2],a3=Y5+4|0,$3=+s[a3>>2],p=$3*T3,B=y5+4|0,v=+s[B>>2],S=+s[Y5>>2],w=S*v,y=p-w,D=X3+-4|0,s[D>>2]=y,Q=+s[y5>>2],_=+s[Y5>>2],x=_*Q,L=+s[B>>2],M=+s[a3>>2],T=M*L,G=x+T,N=-G,s[Z5>>2]=N,P=y5+8|0,z=+s[P>>2],Y=Y5+12|0,t0=+s[Y>>2],J=t0*z,e0=y5+12|0,H=+s[e0>>2],X=Y5+8|0,U=+s[X>>2],o0=U*H,Z=J-o0,V=X3+-8|0,s[V>>2]=Z,A0=+s[P>>2],n0=+s[X>>2],i0=n0*A0,K=+s[e0>>2],c0=+s[Y>>2],s0=c0*K,l0=i0+s0,j=-l0,a0=Z5+4|0,s[a0>>2]=j,g0=y5+16|0,f0=+s[g0>>2],Q0=Y5+20|0,d0=+s[Q0>>2],h0=d0*f0,E0=y5+20|0,C0=+s[E0>>2],u0=Y5+16|0,k0=+s[u0>>2],J0=k0*C0,D0=h0-J0,B0=X3+-12|0,s[B0>>2]=D0,x0=+s[g0>>2],F0=+s[u0>>2],G0=F0*x0,p0=+s[E0>>2],P0=+s[Q0>>2],R0=P0*p0,S0=G0+R0,L0=-S0,q0=Z5+8|0,s[q0>>2]=L0,H0=y5+24|0,N0=+s[H0>>2],V0=Y5+28|0,U0=+s[V0>>2],r1=U0*N0,O0=y5+28|0,e1=+s[O0>>2],v0=Y5+24|0,i1=+s[v0>>2],c1=i1*e1,$1=r1-c1,s[_3>>2]=$1,f1=+s[H0>>2],g1=+s[v0>>2],s1=g1*f1,a1=+s[O0>>2],n1=+s[V0>>2],A1=n1*a1,z0=s1+A1,I1=-z0,h1=Z5+12|0,s[h1>>2]=I1,E1=Z5+16|0,u1=y5+32|0,d1=Y5+32|0,p1=u1>>>0<_3>>>0,p1;)Y5=d1,y5=u1,X3=_3,Z5=E1;for(Q1=o+(W1<<2)|0,G3=X2,V3=Q1,k3=Q1;;)if(D1=V3+-16|0,_1=G3+-16|0,y1=G3+-4|0,k1=+s[y1>>2],x1=V3+-4|0,s[x1>>2]=k1,L1=-k1,s[k3>>2]=L1,N1=G3+-8|0,w1=+s[N1>>2],Z1=V3+-8|0,s[Z1>>2]=w1,G1=-w1,v1=k3+4|0,s[v1>>2]=G1,K1=G3+-12|0,P1=+s[K1>>2],H1=V3+-12|0,s[H1>>2]=P1,q1=-P1,Y1=k3+8|0,s[Y1>>2]=q1,j1=+s[_1>>2],s[D1>>2]=j1,r2=-j1,l2=k3+12|0,s[l2>>2]=r2,z1=k3+16|0,h2=z1>>>0<_1>>>0,h2)G3=_1,V3=D1,k3=z1;else{L5=X2,N3=X2;break}for(;s2=N3+-16|0,d2=L5+12|0,A2=e[d2>>2]|0,e[s2>>2]=A2,V1=L5+8|0,g2=e[V1>>2]|0,a2=N3+-12|0,e[a2>>2]=g2,t2=L5+4|0,i2=e[t2>>2]|0,o2=N3+-8|0,e[o2>>2]=i2,X1=e[L5>>2]|0,n2=N3+-4|0,e[n2>>2]=X1,f2=L5+16|0,e2=s2>>>0>C5>>>0,e2;)L5=f2,N3=s2}function sQ(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0;if(q5=m,w=e[t>>2]|0,y=w>>1,r1=w>>2,a1=w>>3,Q1=w<<2,a=Q1,G1=m,m=m+((1*a|0)+15&-16)|0,l2=G1+(y<<2)|0,c=y+r1|0,i2=n+(c<<2)|0,_2=t+8|0,T1=e[_2>>2]|0,D=T1+(y<<2)|0,z=(a1|0)>0,z){for(f=c+1|0,V=n+(f<<2)|0,g0=a1+-1|0,D0=g0>>>1,q0=D0<<1,N0=y+-2|0,V0=N0-q0|0,T0=c+-4|0,U0=D0<<2,O0=T0-U0|0,r5=D,S5=0,g5=i2,b5=V;e1=g5+-16|0,v0=r5+-8|0,i1=g5+-8|0,c1=+s[i1>>2],$1=+s[b5>>2],f1=$1+c1,g1=+s[e1>>2],l1=b5+8|0,s1=+s[l1>>2],n1=s1+g1,A1=r5+-4|0,z0=+s[A1>>2],I1=n1*z0,h1=+s[v0>>2],E1=h1*f1,u1=E1+I1,v=S5+y|0,d1=G1+(v<<2)|0,s[d1>>2]=u1,B1=+s[v0>>2],p1=B1*n1,D1=+s[A1>>2],_1=D1*f1,y1=p1-_1,k1=S5|1,S=k1+y|0,x1=G1+(S<<2)|0,s[x1>>2]=y1,L1=b5+16|0,N1=S5+2|0,w1=(N1|0)<(a1|0),w1;)r5=v0,S5=N1,g5=e1,b5=L1;U1=q0+2|0,c2=T1+(V0<<2)|0,B5=n+(O0<<2)|0,P2=V0,E5=c2,u5=U1,n5=B5}else P2=y,E5=D,u5=0,n5=i2;if(Z1=n+4|0,v1=y-a1|0,K1=(u5|0)<(v1|0),K1){for(P1=y+-1|0,H1=P1-u5|0,q1=H1-a1|0,Y1=q1>>>1,j1=Y1<<1,r2=u5+j1|0,W1=Y1<<2,O1=W1+5|0,z1=-2-j1|0,R2=E5,D5=u5,J2=n5,a5=Z1;h2=R2+-8|0,s2=J2+-16|0,d2=J2+-8|0,A2=+s[d2>>2],V1=+s[a5>>2],g2=A2-V1,a2=+s[s2>>2],t2=a5+8|0,$2=+s[t2>>2],o2=a2-$2,X1=R2+-4|0,n2=+s[X1>>2],f2=o2*n2,e2=+s[h2>>2],y2=e2*g2,S2=y2+f2,C=D5+y|0,w2=G1+(C<<2)|0,s[w2>>2]=S2,C2=+s[h2>>2],M2=C2*o2,G2=+s[X1>>2],u2=G2*g2,K2=M2-u2,N2=D5|1,p=N2+y|0,q2=G1+(p<<2)|0,s[q2>>2]=K2,T2=a5+16|0,O2=D5+2|0,V2=(O2|0)<(v1|0),V2;)R2=h2,D5=O2,J2=s2,a5=T2;s5=r2+2|0,o5=n+(O1<<2)|0,B=P2+z1|0,Z2=T1+(B<<2)|0,x2=Z2,G5=s5,W2=o5}else x2=E5,G5=u5,W2=Z1;if(j2=(G5|0)<(y|0),j2)for(R5=n+(w<<2)|0,m2=x2,H2=G5,h5=R5,F2=W2;X2=m2+-8|0,v5=h5+-16|0,z2=h5+-8|0,f5=+s[z2>>2],w5=-f5,O5=+s[F2>>2],$5=w5-O5,k2=+s[v5>>2],Q=-k2,_=F2+8|0,x=+s[_>>2],R=Q-x,L=m2+-4|0,M=+s[L>>2],T=R*M,G=+s[X2>>2],N=G*$5,P=N+T,E=H2+y|0,Y=G1+(E<<2)|0,s[Y>>2]=P,t0=+s[X2>>2],J=t0*R,W=+s[L>>2],e0=W*$5,H=J-e0,X=H2|1,I=X+y|0,U=G1+(I<<2)|0,s[U>>2]=H,o0=F2+16|0,Z=H2+2|0,A0=(Z|0)<(y|0),A0;)m2=X2,H2=Z,h5=v5,F2=o0;if(A5=t+4|0,l5=e[A5>>2]|0,AQ(l5,T1,l2,y),c5=e[t>>2]|0,m5=e[_2>>2]|0,M1=t+12|0,k5=e[M1>>2]|0,oQ(c5,m5,k5,G1),n0=(r1|0)>0,!n0){m=q5;return}for(i0=o+(y<<2)|0,r0=e[_2>>2]|0,K=r0+(y<<2)|0,c0=t+16|0,C5=K,I5=0,e5=G1,t5=i0;s0=t5+-4|0,l0=+s[e5>>2],j=+s[C5>>2],a0=j*l0,f0=e5+4|0,Q0=+s[f0>>2],d0=C5+4|0,y0=+s[d0>>2],h0=y0*Q0,E0=h0+a0,C0=+s[c0>>2],u0=E0*C0,k0=o+(I5<<2)|0,s[k0>>2]=u0,J0=+s[e5>>2],B0=+s[d0>>2],x0=B0*J0,F0=+s[f0>>2],M0=+s[C5>>2],G0=M0*F0,p0=x0-G0,P0=+s[c0>>2],R0=p0*P0,s[s0>>2]=R0,S0=e5+8|0,L0=C5+8|0,H0=I5+1|0,x5=(H0|0)==(r1|0),!x5;)C5=L0,I5=H0,e5=S0,t5=s0;m=q5}function AQ(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,Z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,m6=0,z3=0,a6=0,B6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,A3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0,R4=0,T4=0,j4=0,d4=0,G4=0,G9=0,N4=0,s4=0,x4=0,c4=0,Ie=0,O9=0,d9=0,de=0,Me=0,ze=0,U4=0,Te=0,O4=0,X4=0,ke=0,Ze=0,V9=0,oe=0,g4=0,D6=0,P4=0,R9=0,A4=0,D4=0,ae=0,z9=0,$e=0,le=0,E4=0,ee=0,F4=0,ce=0,E9=0,$6=0,Ge=0,o4=0,Ee=0,C4=0,a4=0,U6=0,ve=0,Se=0,We=0,$4=0,Q4=0,g8=0,H3=0,Q9=0,C9=0,L4=0,te=0,a7=0,De=0,$7=0,Q7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,y7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ne=0,be=0,je=0,k8=0,y9=0,g7=0,Ce=0,h7=0,w7=0,j8=0,k7=0,ie=0,X8=0,P8=0,v8=0,Xe=0,H4=0,_e=0,e8=0,u8=0,S8=0,ge=0,Z9=0,t8=0,I8=0,i8=0,d8=0,he=0,me=0,Ue=0,Oe=0,W9=0,Re=0,fe=0,r8=0,Be=0,m4=0,E8=0,e7=0,q4=0,I3=0,Pe=0,C8=0,re=0,P9=0,ne=0,S9=0,He=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,s8=0,D8=0,Y4=0,n7=0,b8=0,qe=0,m9=0,s7=0,Ye=0,M7=0,P7=0,v7=0,A7=0,S7=0,se=0,T7=0,H7=0,A8=0,_8=0,D7=0,J8=0,xe=0,ue=0,j9=0,b7=0,tt=0,Mt=0,Tt=0,Gt=0,gt=0,q7=0,ht=0,Y7=0,ft=0,J7=0,ut=0,it=0,ii=0,Nt=0,It=0,dt=0,ri=0,Et=0,rt=0,ni=0,Ut=0,Ot=0,Pt=0,Ht=0,nt=0,Ct=0,qt=0,K7=0,st=0,G7=0,V7=0,si=0,Yt=0,Ai=0,mt=0,Jt=0,Bt=0,pt=0,Kt=0,Qt=0,z7=0,yt=0,Vt=0,At=0,N7=0,wt=0,pe=0,kt=0,_7=0,ot=0,i9=0,u7=0,m8=0,I7=0,R7=0,Pr=0,fr=0;if(fr=m,f0=t+-6|0,Q0=(t|0)>6,Q0)for(I=a+-8|0,O5=o+(I<<2)|0,D3=a>>1,B=D3+-8|0,K8=o+(B<<2)|0,c=n,u7=O5,I7=K8;A8=u7+24|0,Gt=+s[A8>>2],It=I7+24|0,Ct=+s[It>>2],Bt=Gt-Ct,d0=u7+28|0,F0=+s[d0>>2],V0=I7+28|0,g1=+s[V0>>2],d1=F0-g1,w1=Ct+Gt,s[A8>>2]=w1,r2=+s[V0>>2],a2=r2+F0,s[d0>>2]=a2,w2=c+4|0,V2=+s[w2>>2],$5=V2*d1,G5=+s[c>>2],Z2=G5*Bt,a5=Z2+$5,s[It>>2]=a5,E3=+s[c>>2],j3=E3*d1,G3=+s[w2>>2],V3=G3*Bt,m6=j3-V3,s[V0>>2]=m6,O3=u7+16|0,T6=+s[O3>>2],r9=I7+16|0,W6=+s[r9>>2],u9=T6-W6,k4=u7+20|0,N4=+s[k4>>2],Te=I7+20|0,A4=+s[Te>>2],$6=N4-A4,Q4=W6+T6,s[O3>>2]=Q4,l7=+s[Te>>2],N8=l7+N4,s[k4>>2]=N8,je=c+20|0,P8=+s[je>>2],I8=P8*$6,Be=c+16|0,S9=+s[Be>>2],D8=S9*u9,A7=D8+I8,s[r9>>2]=A7,H7=+s[Be>>2],_8=H7*$6,D7=+s[je>>2],J8=D7*u9,xe=_8-J8,s[Te>>2]=xe,ue=u7+8|0,j9=+s[ue>>2],b7=I7+8|0,tt=+s[b7>>2],Mt=j9-tt,Tt=u7+12|0,gt=+s[Tt>>2],q7=I7+12|0,ht=+s[q7>>2],Y7=gt-ht,ft=tt+j9,s[ue>>2]=ft,J7=+s[q7>>2],ut=J7+gt,s[Tt>>2]=ut,it=c+36|0,ii=+s[it>>2],Nt=ii*Y7,dt=c+32|0,ri=+s[dt>>2],Et=ri*Mt,rt=Et+Nt,s[b7>>2]=rt,ni=+s[dt>>2],Ut=ni*Y7,Ot=+s[it>>2],Pt=Ot*Mt,Ht=Ut-Pt,s[q7>>2]=Ht,nt=+s[u7>>2],qt=+s[I7>>2],K7=nt-qt,st=u7+4|0,G7=+s[st>>2],V7=I7+4|0,si=+s[V7>>2],Yt=G7-si,Ai=qt+nt,s[u7>>2]=Ai,mt=+s[V7>>2],Jt=mt+G7,s[st>>2]=Jt,pt=c+52|0,Kt=+s[pt>>2],Qt=Kt*Yt,z7=c+48|0,yt=+s[z7>>2],Vt=yt*K7,At=Vt+Qt,s[I7>>2]=At,N7=+s[z7>>2],wt=N7*Yt,pe=+s[pt>>2],y0=pe*K7,h0=wt-y0,s[V7>>2]=h0,E0=u7+-32|0,C0=I7+-32|0,u0=c+64|0,k0=C0>>>0>>0,!k0;)c=u0,u7=E0,I7=C0;if(J0=(f0|0)>1,J0)for(_7=1;;){if(D0=1<<_7,B0=(_7|0)==31,!B0)for(x0=a>>_7,M0=4<<_7,C=x0+-8|0,G0=x0>>1,v=G0+-8|0,G=M0+1|0,o0=M0<<1,i0=o0|1,c0=M0*3|0,l0=c0+1|0,a0=M0<<2,ot=0;;){for(P0=i5(ot,x0)|0,R0=o+(P0<<2)|0,E=C+P0|0,S0=o+(E<<2)|0,A0=v+P0|0,L0=o+(A0<<2)|0,f=n,m8=S0,R7=L0;q0=m8+24|0,H0=+s[q0>>2],N0=R7+24|0,T0=+s[N0>>2],U0=H0-T0,r1=m8+28|0,O0=+s[r1>>2],e1=R7+28|0,v0=+s[e1>>2],i1=O0-v0,c1=T0+H0,s[q0>>2]=c1,$1=+s[e1>>2],f1=$1+O0,s[r1>>2]=f1,l1=f+4|0,s1=+s[l1>>2],a1=s1*i1,n1=+s[f>>2],A1=n1*U0,z0=A1+a1,s[N0>>2]=z0,I1=+s[f>>2],h1=I1*i1,E1=+s[l1>>2],u1=E1*U0,B1=h1-u1,s[e1>>2]=B1,p1=f+(M0<<2)|0,Q1=m8+16|0,D1=+s[Q1>>2],_1=R7+16|0,y1=+s[_1>>2],k1=D1-y1,x1=m8+20|0,L1=+s[x1>>2],N1=R7+20|0,U1=+s[N1>>2],Z1=L1-U1,G1=y1+D1,s[Q1>>2]=G1,v1=+s[N1>>2],K1=v1+L1,s[x1>>2]=K1,P1=f+(G<<2)|0,H1=+s[P1>>2],q1=H1*Z1,Y1=+s[p1>>2],j1=Y1*k1,W1=j1+q1,s[_1>>2]=W1,O1=+s[p1>>2],l2=O1*Z1,z1=+s[P1>>2],h2=z1*k1,s2=l2-h2,s[N1>>2]=s2,d2=f+(o0<<2)|0,A2=m8+8|0,V1=+s[A2>>2],g2=R7+8|0,t2=+s[g2>>2],$2=V1-t2,i2=m8+12|0,o2=+s[i2>>2],X1=R7+12|0,n2=+s[X1>>2],f2=o2-n2,e2=t2+V1,s[A2>>2]=e2,y2=+s[X1>>2],S2=y2+o2,s[i2>>2]=S2,C2=f+(i0<<2)|0,M2=+s[C2>>2],_2=M2*f2,G2=+s[d2>>2],u2=G2*$2,K2=u2+_2,s[g2>>2]=K2,N2=+s[d2>>2],q2=N2*f2,T2=+s[C2>>2],O2=T2*$2,s5=q2-O2,s[X1>>2]=s5,P2=f+(c0<<2)|0,T1=+s[m8>>2],j2=+s[R7>>2],R5=T1-j2,X2=m8+4|0,v5=+s[X2>>2],z2=R7+4|0,f5=+s[z2>>2],w5=v5-f5,k2=j2+T1,s[m8>>2]=k2,E5=+s[z2>>2],r5=E5+v5,s[X2>>2]=r5,x2=f+(l0<<2)|0,R2=+s[x2>>2],m2=R2*w5,C5=+s[P2>>2],x5=C5*R5,u5=x5+m2,s[R7>>2]=u5,S5=+s[P2>>2],D5=S5*w5,H2=+s[x2>>2],I5=H2*R5,A5=D5-I5,s[z2>>2]=A5,l5=f+(a0<<2)|0,m5=m8+-32|0,M1=R7+-32|0,k5=M1>>>0>>0,!k5;)f=l5,m8=m5,R7=M1;if(c5=ot+1|0,o5=(c5|0)<(D0|0),o5)ot=c5;else break}if(c2=_7+1|0,kt=(c2|0)==(f0|0),kt)break;_7=c2}if(p0=(a|0)>0,p0)i9=0;else return;for(;B5=o+(i9<<2)|0,p=i9|30,e5=o+(p<<2)|0,n5=+s[e5>>2],T=i9|14,g5=o+(T<<2)|0,J2=+s[g5>>2],h5=n5-J2,U=i9|31,t5=o+(U<<2)|0,b5=+s[t5>>2],n0=i9|15,W2=o+(n0<<2)|0,F2=+s[W2>>2],p5=b5-F2,q5=J2+n5,s[e5>>2]=q5,e3=F2+b5,s[t5>>2]=e3,s[g5>>2]=h5,s[W2>>2]=p5,r0=i9|28,d5=o+(r0<<2)|0,f3=+s[d5>>2],K=i9|12,g3=o+(K<<2)|0,V5=+s[g3>>2],t3=f3-V5,s0=i9|29,s3=o+(s0<<2)|0,F5=+s[s3>>2],j=i9|13,z5=o+(j<<2)|0,y3=+s[z5>>2],h3=F5-y3,m3=V5+f3,s[d5>>2]=m3,q3=y3+F5,s[s3>>2]=q3,M3=t3*.9238795042037964,W5=h3*.3826834261417389,Q3=M3-W5,s[g3>>2]=Q3,X5=t3*.3826834261417389,_3=h3*.9238795042037964,T3=_3+X5,s[z5>>2]=T3,g0=i9|26,a3=o+(g0<<2)|0,$3=+s[a3>>2],S=i9|10,l3=o+(S<<2)|0,C3=+s[l3>>2],Y5=$3-C3,w=i9|27,N5=o+(w<<2)|0,P5=+s[N5>>2],y=i9|11,y5=o+(y<<2)|0,L5=+s[y5>>2],t6=P5-L5,i3=C3+$3,s[a3>>2]=i3,o3=L5+P5,s[N5>>2]=o3,R3=Y5-t6,h6=R3*.7071067690849304,s[l3>>2]=h6,B3=t6+Y5,w3=B3*.7071067690849304,s[y5>>2]=w3,D=i9|24,p3=o+(D<<2)|0,X3=+s[p3>>2],Q=i9|8,N3=o+(Q<<2)|0,Z5=+s[N3>>2],k3=X3-Z5,_=i9|25,c3=o+(_<<2)|0,U3=+s[c3>>2],x=i9|9,o6=o+(x<<2)|0,u3=+s[o6>>2],y6=U3-u3,w6=Z5+X3,s[p3>>2]=w6,k6=u3+U3,s[c3>>2]=k6,z3=k3*.3826834261417389,a6=y6*.9238795042037964,B6=z3-a6,_6=y6*.3826834261417389,Y6=k3*.9238795042037964,C6=_6+Y6,R=i9|22,v3=o+(R<<2)|0,Z3=+s[v3>>2],L=i9|6,W3=o+(L<<2)|0,f6=+s[W3>>2],S3=Z3-f6,M=i9|7,P3=o+(M<<2)|0,Y3=+s[P3>>2],N=i9|23,v6=o+(N<<2)|0,i6=+s[v6>>2],r3=Y3-i6,O6=f6+Z3,s[v3>>2]=O6,A3=i6+Y3,s[v6>>2]=A3,s[W3>>2]=r3,s[P3>>2]=S3,P=i9|4,r6=o+(P<<2)|0,u6=+s[r6>>2],z=i9|20,e6=o+(z<<2)|0,p6=+s[e6>>2],R6=u6-p6,Y=i9|5,K6=o+(Y<<2)|0,I6=+s[K6>>2],t0=i9|21,J6=o+(t0<<2)|0,x3=+s[J6>>2],Z6=I6-x3,G6=p6+u6,s[e6>>2]=G6,j6=x3+I6,s[J6>>2]=j6,x6=Z6*.9238795042037964,N6=R6*.3826834261417389,S6=x6+N6,V6=Z6*.3826834261417389,Q6=R6*.9238795042037964,F6=V6-Q6,J=i9|2,F3=o+(J<<2)|0,L6=+s[F3>>2],W=i9|18,X6=o+(W<<2)|0,s9=+s[X6>>2],g9=L6-s9,e0=i9|3,h9=o+(e0<<2)|0,f9=+s[h9>>2],H=i9|19,A9=o+(H<<2)|0,o9=+s[A9>>2],L9=f9-o9,d6=s9+L6,s[X6>>2]=d6,M6=o9+f9,s[A9>>2]=M6,e9=L9+g9,M9=e9*.7071067690849304,u4=L9-g9,r4=u4*.7071067690849304,l4=+s[B5>>2],X=i9|16,T9=o+(X<<2)|0,K9=+s[T9>>2],v9=l4-K9,Z=i9|1,I9=o+(Z<<2)|0,P6=+s[I9>>2],V=i9|17,t9=o+(V<<2)|0,I4=+s[t9>>2],n4=P6-I4,p9=K9+l4,s[T9>>2]=p9,v4=I4+P6,s[t9>>2]=v4,S4=n4*.3826834261417389,R4=v9*.9238795042037964,T4=S4+R4,j4=n4*.9238795042037964,d4=v9*.3826834261417389,G4=j4-d4,G9=G4-C6,s4=T4-B6,x4=T4+B6,c4=G4+C6,Ie=s4+G9,O9=G9-s4,d9=+s[y5>>2],de=r4-d9,Me=+s[l3>>2],ze=Me-M9,U4=Me+M9,O4=d9+r4,X4=+s[g3>>2],ke=X4-S6,Ze=+s[z5>>2],V9=Ze-F6,oe=X4+S6,g4=Ze+F6,D6=ke-V9,P4=V9+ke,R9=+s[g5>>2],D4=R9-r3,ae=+s[W2>>2],z9=ae-S3,$e=r3+R9,le=S3+ae,E4=D4+de,ee=D4-de,F4=D6+Ie,ce=F4*.7071067690849304,E9=D6-Ie,Ge=E9*.7071067690849304,o4=ce+E4,s[W3>>2]=o4,Ee=E4-ce,s[r6>>2]=Ee,C4=P4-O9,a4=C4*.7071067690849304,U6=z9-ze,ve=a4+ee,s[B5>>2]=ve,Se=ee-a4,s[F3>>2]=Se,We=P4+O9,$4=We*.7071067690849304,g8=z9+ze,H3=U6+Ge,s[h9>>2]=H3,Q9=U6-Ge,s[I9>>2]=Q9,C9=g8+$4,s[P3>>2]=C9,L4=g8-$4,s[K6>>2]=L4,te=$e+U4,a7=$e-U4,De=x4+oe,$7=oe-x4,Q7=te+De,s[g5>>2]=Q7,c7=te-De,s[g3>>2]=c7,x8=g4-c4,F8=le-O4,L8=a7+x8,s[N3>>2]=L8,M8=a7-x8,s[l3>>2]=M8,V8=g4+c4,z8=le+O4,y7=F8+$7,s[y5>>2]=y7,T8=F8-$7,s[o6>>2]=T8,G8=z8+V8,s[W2>>2]=G8,y8=z8-V8,s[z5>>2]=y8,w8=+s[c3>>2],h8=v4-w8,U8=+s[p3>>2],O8=p9-U8,Z8=U8+p9,W8=w8+v4,f8=O8+h8,Ne=h8-O8,be=+s[A9>>2],k8=+s[N5>>2],y9=be-k8,g7=+s[a3>>2],Ce=+s[X6>>2],h7=g7-Ce,w7=Ce+g7,j8=k8+be,k7=+s[d5>>2],ie=+s[e6>>2],X8=k7-ie,v8=+s[s3>>2],Xe=+s[J6>>2],H4=v8-Xe,_e=ie+k7,e8=Xe+v8,u8=X8-H4,S8=H4+X8,ge=+s[e5>>2],Z9=+s[v3>>2],t8=ge-Z9,i8=+s[t5>>2],d8=+s[v6>>2],he=i8-d8,me=Z9+ge,Ue=d8+i8,Oe=t8+y9,W9=t8-y9,Re=u8+f8,fe=Re*.7071067690849304,r8=u8-f8,m4=r8*.7071067690849304,E8=fe+Oe,s[v3>>2]=E8,e7=Oe-fe,s[e6>>2]=e7,q4=S8-Ne,I3=q4*.7071067690849304,Pe=he-h7,C8=I3+W9,s[T9>>2]=C8,re=W9-I3,s[X6>>2]=re,P9=S8+Ne,ne=P9*.7071067690849304,He=he+h7,H8=Pe+m4,s[A9>>2]=H8,f7=Pe-m4,s[t9>>2]=f7,t7=He+ne,s[v6>>2]=t7,i7=He-ne,s[J6>>2]=i7,q8=me+w7,r7=me-w7,Y8=_e+Z8,n8=_e-Z8,s8=q8+Y8,s[e5>>2]=s8,Y4=q8-Y8,s[d5>>2]=Y4,n7=e8-W8,b8=Ue-j8,qe=r7+n7,s[p3>>2]=qe,m9=r7-n7,s[a3>>2]=m9,s7=e8+W8,Ye=Ue+j8,M7=b8+n8,s[N5>>2]=M7,P7=b8-n8,s[c3>>2]=P7,v7=Ye+s7,s[t5>>2]=v7,S7=Ye-s7,s[s3>>2]=S7,se=i9+32|0,T7=(se|0)<(a|0),T7;)i9=se}function oQ(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0;for(E1=m,S=t>>1,w=a+(S<<2)|0,N=n+(t<<2)|0,n1=N,A1=o,z0=a,I1=w;o0=e[A1>>2]|0,c=o0+S|0,j=a+(c<<2)|0,k0=A1+4|0,S0=e[k0>>2]|0,f=S0+S|0,v0=a+(f<<2)|0,E=c+1|0,s1=a+(E<<2)|0,a1=+s[s1>>2],I=f+1|0,y=a+(I<<2)|0,D=+s[y>>2],Q=a1-D,_=+s[j>>2],x=+s[v0>>2],R=x+_,L=+s[n1>>2],M=R*L,T=n1+4|0,G=+s[T>>2],P=G*Q,z=P+M,Y=G*R,t0=L*Q,J=Y-t0,W=I1+-16|0,e0=D+a1,H=e0*.5,X=_-x,U=X*.5,Z=z+H,s[z0>>2]=Z,V=H-z,A0=I1+-8|0,s[A0>>2]=V,n0=J+U,i0=z0+4|0,s[i0>>2]=n0,r0=J-U,K=I1+-4|0,s[K>>2]=r0,c0=A1+8|0,s0=e[c0>>2]|0,C=s0+S|0,l0=a+(C<<2)|0,a0=A1+12|0,g0=e[a0>>2]|0,p=g0+S|0,f0=a+(p<<2)|0,B=C+1|0,Q0=a+(B<<2)|0,d0=+s[Q0>>2],v=p+1|0,y0=a+(v<<2)|0,h0=+s[y0>>2],E0=d0-h0,C0=+s[l0>>2],u0=+s[f0>>2],J0=u0+C0,D0=n1+8|0,B0=+s[D0>>2],x0=J0*B0,F0=n1+12|0,M0=+s[F0>>2],G0=M0*E0,p0=G0+x0,P0=M0*J0,R0=B0*E0,L0=P0-R0,q0=h0+d0,H0=q0*.5,N0=C0-u0,V0=N0*.5,T0=p0+H0,U0=z0+8|0,s[U0>>2]=T0,r1=H0-p0,s[W>>2]=r1,O0=L0+V0,e1=z0+12|0,s[e1>>2]=O0,i1=L0-V0,c1=I1+-12|0,s[c1>>2]=i1,$1=n1+16|0,f1=A1+16|0,g1=z0+16|0,l1=g1>>>0>>0,l1;)n1=$1,A1=f1,z0=g1,I1=W}function CS(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0;return B=m,n=t+28|0,o=e[n>>2]|0,a=o+2868|0,c=t4(1,36)|0,f=t+4|0,E=e[f>>2]|0,I=c+4|0,e[I>>2]=E,s[c>>2]=-9999,C=c+8|0,e[C>>2]=a,c|0}function mS(t){t=t|0;var n=0,o=0,a=0;a=m,n=(t|0)==0,!n&&I2(t)}function BS(t){t=t|0;var n=0,o=0,a=0;a=m,n=(t|0)==0,n||I2(t)}function pS(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,Z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,m6=0,z3=0,a6=0,B6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,A3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0;e9=m,d6=t,M9=d6+48|0;do e[d6>>2]=0,d6=d6+4|0;while((d6|0)<(M9|0));_=e[o>>2]|0,x=t+36|0,e[x>>2]=_,t2=+(_|0),e3=t2*8,h3=e3,$3=+Ur(+h3),o3=$3*1.4426950408889634,c3=+Gi(o3),_6=c3+-1,v6=~~_6,R=t+32|0,e[R>>2]=v6,W=+(c|0),r0=W*.25,y0=r0,M0=y0*.5,T0=+(a|0),l1=M0/T0,B1=+Ur(+l1),U1=B1*1.4426950216293335,W1=U1+-5.965784072875977,$2=v6+1|0,M2=1<<$2,P2=+(M2|0),k2=P2*W1,D5=+(_|0),c2=k2-D5,a5=~~c2,F2=t+28|0,e[F2>>2]=a5,p5=+(a|0),q5=p5+.25,d5=q5*W,f3=d5,g3=f3*.5,V5=g3/T0,t3=+Ur(+V5),s3=t3*1.4426950216293335,E3=s3+-5.965784072875977,F5=P2*E3,z5=F5+.5,y3=~~z5,m3=1-a5|0,q3=m3+y3|0,M3=t+40|0,e[M3>>2]=q3,W5=a<<2,Q3=k9(W5)|0,X5=t+16|0,e[X5>>2]=Q3,j3=k9(W5)|0,_3=t+20|0,e[_3>>2]=j3,T3=k9(W5)|0,a3=t+24|0,e[a3>>2]=T3,l3=t+4|0,e[l3>>2]=n,e[t>>2]=a,C3=t+44|0,e[C3>>2]=c,Y5=t+48|0,s[Y5>>2]=1,N5=(c|0)<26e3;do if(N5)s[Y5>>2]=0;else{if(P5=(c|0)<38e3,P5){s[Y5>>2]=.9399999976158142;break}y5=(c|0)>46e3,y5&&(s[Y5>>2]=1.274999976158142)}while(!1);G3=T0*2,L5=+(c|0),t6=(a|0)>0,B3=t6,V6=0,W6=0;e:for(;;){for(p=B3^1,Q6=V6;;){if(p3=Q6+1|0,X3=+(p3|0),V3=X3*.08664337545633316,N3=V3+2.7488713472395148,Z5=+Ln(+N3),k3=G3*Z5,U3=k3/L5,o6=+Gi(U3),u3=~~o6,C=(u3|0)<=(W6|0),K6=C|p,!K6){E=p3,I=u3,F6=Q6;break}if(y6=(p3|0)<87,y6)Q6=p3;else{s9=W6;break e}}for(w6=1272+(F6<<2)|0,k6=+s[w6>>2],m6=1272+(E<<2)|0,z3=+s[m6>>2],a6=z3-k6,B6=I-W6|0,Y6=+(B6|0),C6=a6/Y6,v3=W6-I|0,Z3=W6-a|0,W3=v3>>>0>Z3>>>0,L9=W3?v3:Z3,i3=W6-L9|0,R6=k6,g9=W6;f6=R6+100,O3=Q3+(g9<<2)|0,s[O3>>2]=f6,S3=R6+C6,P3=g9+1|0,G6=(P3|0)==(i3|0),!G6;)R6=S3,g9=P3;if(R3=(i3|0)<(a|0),h6=(E|0)<87,h6)B3=R3,V6=E,W6=i3;else{s9=i3;break}}if(w3=(s9|0)<(a|0),w3)for(h9=s9;T6=h9+-1|0,e6=Q3+(T6<<2)|0,p6=e[e6>>2]|0,L=Q3+(h9<<2)|0,e[L>>2]=p6,M=h9+1|0,Z6=(M|0)==(a|0),!Z6;)h9=M;if(Y3=(a|0)>0,Y3){for(i6=a<<1,r3=(c|0)/(i6|0)&-1,O6=n+120|0,A3=e[O6>>2]|0,r6=n+124|0,u6=n+116|0,D3=n+112|0,x6=1,F3=0,f9=-99;;){Y=i5(r3,F3)|0,t0=+(Y|0),J=t0*.0007399999885819852,e0=J,H=+Hs(+e0),X=H*13.100000381469727,U=i5(Y,Y)|0,o0=+(U|0),Z=o0*18499999754340024e-24,V=Z,A0=+Hs(+V),n0=A0*2.240000009536743,i0=n0+X,K=t0*9999999747378752e-20,c0=K,s0=i0+c0,l0=s0,j=A3+f9|0,a0=(j|0)<(F3|0);e:do if(a0)for(g0=+s[D3>>2],f0=l0-g0,Q0=f0,o9=f9;;){if(d0=i5(o9,r3)|0,h0=+(d0|0),E0=h0*.0007399999885819852,C0=E0,u0=+Hs(+C0),k0=u0*13.100000381469727,J0=i5(d0,d0)|0,D0=+(J0|0),B0=D0*18499999754340024e-24,x0=B0,F0=+Hs(+x0),G0=F0*2.240000009536743,p0=h0*9999999747378752e-20,P0=p0,R0=k0+P0,S0=R0+G0,L0=S0(a|0);e:do if(q0)N6=x6;else for(H0=e[r6>>2]|0,N0=H0+F3|0,S6=x6;;){if(O0=(S6|0)<(N0|0),!O0&&(e1=i5(S6,r3)|0,v0=+(e1|0),i1=v0*.0007399999885819852,c1=i1,$1=+Hs(+c1),f1=$1*13.100000381469727,g1=i5(e1,e1)|0,s1=+(g1|0),a1=s1*18499999754340024e-24,n1=a1,A1=+Hs(+n1),z0=A1*2.240000009536743,I1=v0*9999999747378752e-20,h1=I1,E1=f1+h1,u1=E1+z0,d1=+s[u6>>2],p1=d1+l0,Q1=p1,D1=u1>2]=L1,w1=F3+1|0,x3=(w1|0)==(a|0),x3)break;x6=N6,F3=w1,f9=A9}if(Y3)for(T=L5*.5,G=e[R>>2]|0,N=G+1|0,P=1<>2]=O1,z1=L6+1|0,J6=(z1|0)==(a|0),J6){w=T;break}else L6=z1;else M6=19}else M6=19;if((M6|0)==19&&(Q=L5*.5,w=Q),h2=n+36|0,s2=w/T0,d2=s2,A2=n+24|0,V1=+s[A2>>2],g2=n+28|0,a2=+s[g2>>2],i2=wS(h2,d2,a,V1,a2)|0,o2=t+8|0,e[o2>>2]=i2,X1=k9(12)|0,n2=t+12|0,e[n2>>2]=X1,f2=k9(W5)|0,e[X1>>2]=f2,e2=k9(W5)|0,y2=X1+4|0,e[y2>>2]=e2,S2=k9(W5)|0,w2=X1+8|0,e[w2>>2]=S2,!!Y3)for(C2=e[l3>>2]|0,S=e[X1>>2]|0,B=X1+4|0,y=e[B>>2]|0,v=X1+8|0,D=e[v>>2]|0,X6=0;_2=+(X6|0),G2=_2+.5,u2=G2*L5,K2=u2/G3,N2=+Ur(+K2),q2=N2*2.885390043258667,T2=q2+-11.931568145751953,O2=T2,V2=O2<0,j6=V2?0:O2,f=j6>=16,r9=f?16:j6,s5=~~r9,T1=+(s5|0),j2=r9-T1,R5=j2,X2=1-R5,v5=s5+1|0,z2=(C2+132|0)+(s5<<2)|0,f5=+s[z2>>2],w5=f5,O5=w5*X2,$5=(C2+132|0)+(v5<<2)|0,E5=+s[$5>>2],r5=E5*j2,x2=r5,R2=x2+O5,m2=R2,C5=S+(X6<<2)|0,s[C5>>2]=m2,x5=(C2+200|0)+(s5<<2)|0,u5=+s[x5>>2],S5=u5,G5=S5*X2,H2=(C2+200|0)+(v5<<2)|0,I5=+s[H2>>2],A5=I5*j2,l5=A5,m5=l5+G5,M1=m5,k5=y+(X6<<2)|0,s[k5>>2]=M1,c5=(C2+268|0)+(s5<<2)|0,o5=+s[c5>>2],Z2=o5,B5=Z2*X2,e5=(C2+268|0)+(v5<<2)|0,n5=+s[e5>>2],g5=n5*j2,J2=g5,h5=J2+B5,t5=h5,b5=D+(X6<<2)|0,s[b5>>2]=t5,W2=X6+1|0,I6=(W2|0)==(a|0),!I6;)X6=W2}function aQ(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0;if(T0=m,o=(t|0)==0,!o){if(a=t+16|0,y=e[a>>2]|0,P=(y|0)==0,P||I2(y),Z=t+20|0,a0=e[Z>>2]|0,J0=(a0|0)==0,J0||I2(a0),R0=t+24|0,S0=e[R0>>2]|0,L0=(S0|0)==0,L0||I2(S0),c=t+8|0,f=e[c>>2]|0,E=(f|0)==0,!E){for(C=f,H0=0;I=C+(H0<<2)|0,p=e[I>>2]|0,B=e[p>>2]|0,I2(B),v=e[c>>2]|0,S=v+(H0<<2)|0,w=e[S>>2]|0,D=w+4|0,Q=e[D>>2]|0,I2(Q),_=e[c>>2]|0,x=_+(H0<<2)|0,R=e[x>>2]|0,L=R+8|0,M=e[L>>2]|0,I2(M),T=e[c>>2]|0,G=T+(H0<<2)|0,N=e[G>>2]|0,z=N+12|0,Y=e[z>>2]|0,I2(Y),t0=e[c>>2]|0,J=t0+(H0<<2)|0,W=e[J>>2]|0,e0=W+16|0,H=e[e0>>2]|0,I2(H),X=e[c>>2]|0,U=X+(H0<<2)|0,o0=e[U>>2]|0,V=o0+20|0,A0=e[V>>2]|0,I2(A0),n0=e[c>>2]|0,i0=n0+(H0<<2)|0,r0=e[i0>>2]|0,K=r0+24|0,c0=e[K>>2]|0,I2(c0),s0=e[c>>2]|0,l0=s0+(H0<<2)|0,j=e[l0>>2]|0,g0=j+28|0,f0=e[g0>>2]|0,I2(f0),Q0=e[c>>2]|0,d0=Q0+(H0<<2)|0,y0=e[d0>>2]|0,I2(y0),h0=H0+1|0,q0=(h0|0)==17,!q0;)n=e[c>>2]|0,C=n,H0=h0;E0=e[c>>2]|0,I2(E0)}C0=t+12|0,u0=e[C0>>2]|0,k0=(u0|0)==0,k0||(D0=e[u0>>2]|0,I2(D0),B0=e[C0>>2]|0,x0=B0+4|0,F0=e[x0>>2]|0,I2(F0),M0=e[C0>>2]|0,G0=M0+8|0,p0=e[G0>>2]|0,I2(p0),P0=e[C0>>2]|0,I2(P0)),N0=t,U0=N0+52|0;do e[N0>>2]=0,N0=N0+4|0;while((N0|0)<(U0|0))}}function $Q(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0;if(d0=m,E=e[t>>2]|0,I=E<<2,f=I,x=m,m=m+((1*f|0)+15&-16)|0,J=t+24|0,A0=e[J>>2]|0,cQ(E,A0,n,o,140,-1),n0=(E|0)>0,n0)for(a0=0;i0=n+(a0<<2)|0,r0=+s[i0>>2],K=o+(a0<<2)|0,c0=+s[K>>2],C=r0-c0,p=x+(a0<<2)|0,s[p>>2]=C,B=a0+1|0,l0=(B|0)==(E|0),!l0;)a0=B;if(v=e[J>>2]|0,S=t+4|0,w=e[S>>2]|0,y=w+128|0,D=e[y>>2]|0,cQ(E,v,x,o,0,D),n0)g0=0;else{m=d0;return}for(;_=n+(g0<<2)|0,R=+s[_>>2],L=x+(g0<<2)|0,M=+s[L>>2],T=R-M,s[L>>2]=T,G=g0+1|0,j=(G|0)==(E|0),!j;)g0=G;if(!n0){m=d0;return}for(Q=e[S>>2]|0,f0=0;N=o+(f0<<2)|0,P=+s[N>>2],z=P,Y=z+.5,t0=~~Y,W=(t0|0)>39,a=W?39:t0,e0=(a|0)<0,c=e0?0:a,H=x+(f0<<2)|0,X=+s[H>>2],U=(Q+336|0)+(c<<2)|0,o0=+s[U>>2],Z=o0+X,s[N>>2]=Z,V=f0+1|0,s0=(V|0)==(E|0),!s0;)f0=V;m=d0}function lQ(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=+a,c=+c;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0;if(d5=m,M=e[t>>2]|0,T=t+40|0,l1=e[T>>2]|0,B1=l1<<2,I=B1,U1=m,m=m+((1*I|0)+15&-16)|0,W1=t+4|0,t2=e[W1>>2]|0,C2=t2+4|0,s5=+s[C2>>2],$5=s5+c,G=(l1|0)>0,G)for(A5=0;U=U1+(A5<<2)|0,s[U>>2]=-9999,l0=A5+1|0,u0=(l0|0)<(l1|0),u0;)A5=l0;if(R0=t2+8|0,e1=+s[R0>>2],c1=$50,$1){for(f1=t+16|0,g1=e[f1>>2]|0,c5=0;s1=g1+(c5<<2)|0,a1=+s[s1>>2],n1=a1+G5,A1=o+(c5<<2)|0,s[A1>>2]=n1,z0=c5+1|0,H2=(z0|0)==(M|0),!H2;)c5=z0;if(I1=t+8|0,h1=e[I1>>2]|0,E1=t2+496|0,u1=+s[E1>>2],d1=u1-a,$1)for(p1=t+20|0,Q1=e[p1>>2]|0,D1=t+32|0,_1=t+36|0,y1=t+28|0,l5=0;;){k1=n+(l5<<2)|0,x1=+s[k1>>2],L1=Q1+(l5<<2)|0,N1=e[L1>>2]|0,k5=l5,n5=x1;e:for(;;)for(m5=k5;;){if(w1=m5+1|0,Z1=(w1|0)<(M|0),!Z1){v=0,w=w1,M1=m5,g5=n5;break e}if(G1=Q1+(w1<<2)|0,v1=e[G1>>2]|0,K1=(v1|0)==(N1|0),!K1){v=1,w=w1,M1=m5,g5=n5;break e}if(P1=n+(w1<<2)|0,H1=+s[P1>>2],q1=H1>n5,q1){k5=w1,n5=H1;continue e}else m5=w1}if(Y1=g5+6,j1=o+(M1<<2)|0,r2=+s[j1>>2],O1=Y1>r2,O1&&(l2=e[D1>>2]|0,z1=N1>>l2,h2=(z1|0)>16,E=h2?16:z1,s2=(E|0)<0,f=s2?0:E,d2=h1+(f<<2)|0,A2=e[d2>>2]|0,V1=e[_1>>2]|0,g2=d1+g5,a2=g2,$2=a2+-30,i2=$2*.10000000149011612,o2=~~i2,X1=(o2|0)<0,n2=X1?0:o2,f2=(n2|0)>7,e2=f2?7:n2,y2=A2+(e2<<2)|0,S2=e[y2>>2]|0,w2=S2+4|0,M2=+s[w2>>2],_2=~~M2,G2=+s[S2>>2],u2=~~G2,K2=(u2|0)<(_2|0),K2))for(N2=Q1+(M1<<2)|0,q2=e[N2>>2]|0,T2=e[y1>>2]|0,O2=q2-T2|0,V2=+(O2|0),P2=V1>>1,T1=+(P2|0),j2=G2+-16,R5=+(V1|0),X2=j2*R5,v5=X2-T1,z2=v5+V2,f5=~~z2,I5=u2,q5=f5;w5=(q5|0)>0,w5&&(L=I5+2|0,O5=S2+(L<<2)|0,k2=+s[O5>>2],E5=k2+g5,r5=U1+(q5<<2)|0,x2=+s[r5>>2],R2=x2>2]=E5)),m2=q5+V1|0,C5=(m2|0)<(l1|0),x5=I5+1|0,u5=(x5|0)<(_2|0),a5=u5&C5,a5;)I5=x5,q5=m2;if(v)l5=w;else{x=_1;break}}else e3=7}else e3=7;(e3|0)==7&&(Q=t+36|0,x=Q),S5=e[x>>2]|0,kS(U1,S5,l1),N=e[t>>2]|0,P=(N|0)>1;e:do if(P)for(z=t+20|0,Y=t+28|0,t0=e[z>>2]|0,J=e[t0>>2]|0,W=S5>>1,e0=J-W|0,H=e[Y>>2]|0,X=e0-H|0,o0=e[W1>>2]|0,Z=o0+32|0,K=1,j=J,Z2=0,F2=X;;){n0=U1+(F2<<2)|0,i0=+s[n0>>2],r0=t0+(K<<2)|0,c0=e[r0>>2]|0,s0=c0+j|0,a0=s0>>1,g0=a0-H|0,f0=+s[Z>>2],Q0=i0>f0,J2=Q0?f0:i0,d0=(F2|0)<(g0|0);t:do if(d0)for(C=F2,t5=J2;;){for(y0=t5==-9999,p=C;;){if(h0=p+1|0,E0=U1+(h0<<2)|0,C0=+s[E0>>2],k0=C0>-9999,k0){if(J0=C0=(N|0),M0=(j|0)>(x0|0),b5=F0|M0;t:do if(b5)c2=Z2;else for(B5=Z2;;){if(G0=o+(B5<<2)|0,p0=+s[G0>>2],P0=p0>2]=h5),S0=B5+1|0,L0=(S0|0)<(N|0),!L0){c2=S0;break t}if(D=t0+(S0<<2)|0,R=e[D>>2]|0,q0=(R|0)>(x0|0),q0){c2=S0;break}else B5=S0}while(!1);if(V=c2+1|0,A0=(V|0)<(N|0),!A0){o5=c2;break e}y=t0+(c2<<2)|0,_=e[y>>2]|0,K=V,j=_,Z2=c2,F2=p5}else o5=0;while(!1);if(H0=e[T>>2]|0,N0=H0+-1|0,V0=U1+(N0<<2)|0,T0=+s[V0>>2],U0=(o5|0)<(N|0),U0)e5=o5;else{m=d5;return}for(;r1=o+(e5<<2)|0,O0=+s[r1>>2],v0=O0>2]=T0),i1=e5+1|0,D5=(i1|0)==(N|0),!D5;)e5=i1;m=d5}function z$(t,n,o,a,c,f,E){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0;var I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0;if(D0=m,C=e[t>>2]|0,p=t+4|0,L=e[p>>2]|0,e0=(L+12|0)+(a<<2)|0,K=+s[e0>>2],f0=(C|0)>0,!!f0)for(Q0=t+48|0,d0=+s[Q0>>2],y0=t+12|0,h0=e[y0>>2]|0,B=h0+(a<<2)|0,v=e[B>>2]|0,S=L+108|0,w=(a|0)==1,y=d0,D=y*.005,Q=y*3e-4,u0=0;_=n+(u0<<2)|0,x=+s[_>>2],R=v+(u0<<2)|0,M=+s[R>>2],T=M+x,G=+s[S>>2],N=T>G,k0=N?G:T,P=o+(u0<<2)|0,z=+s[P>>2],Y=z+K,t0=k0>2]=I,w&&(W=E+(u0<<2)|0,H=+s[W>>2],X=k0-H,U=X>-17.200000762939453,o0=X+17.200000762939453,Z=o0,U?(V=D*Z,A0=1-V,n0=A0,i0=n0<0,i0?E0=9999999747378752e-20:E0=n0):(r0=Q*Z,c0=1-r0,s0=c0,E0=s0),l0=f+(u0<<2)|0,j=+s[l0>>2],a0=j*E0,s[l0>>2]=a0),g0=u0+1|0,C0=(g0|0)==(C|0),!C0;)u0=g0}function QS(t,n){t=+t,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0;return G=m,a=n+4|0,c=e[a>>2]|0,y=c+28|0,D=e[y>>2]|0,Q=n+40|0,_=e[Q>>2]|0,x=D+(_<<2)|0,R=e[x>>2]|0,L=(R|0)/2&-1,M=+(L|0),f=c+8|0,E=e[f>>2]|0,I=+(E|0),C=M/I,p=D+2936|0,B=+s[p>>2],v=B*C,S=v+t,w=S<-9999,o=w?-9999:S,+o}function yS(t,n,o,a,c,f,E,I,C){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0,I=I|0,C=C|0;var p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,Z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,m6=0,z3=0,a6=0,B6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,A3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0,R4=0,T4=0,j4=0,d4=0,G4=0,G9=0,N4=0;if(N4=m,n0=e[o>>2]|0,i0=o+4|0,s5=e[i0>>2]|0,q3=s5+500|0,C3=e[q3>>2]|0,h6=(C3|0)==0,h6?z5=16:(o6=s5+508|0,C6=e[o6>>2]|0,z5=C6),r3=e[s5>>2]|0,I6=((n+132|0)+(r3*60|0)|0)+(t<<2)|0,r0=e[I6>>2]|0,y0=(n+252|0)+(t<<2)|0,M0=e[y0>>2]|0,T0=1624+(M0<<3)|0,l1=+o1[T0>>3],B1=(n+312|0)+(t<<2)|0,U1=e[B1>>2]|0,W1=C<<2,v=W1,t2=m,m=m+((1*v|0)+15&-16)|0,S=W1,C2=m,m=m+((1*S|0)+15&-16)|0,Q=W1,P2=m,m=m+((1*Q|0)+15&-16)|0,_=W1,k2=m,m=m+((1*_|0)+15&-16)|0,x=W1,D5=m,m=m+((1*x|0)+15&-16)|0,c2=a+1156|0,F2=(n0|0)>1e3,G4=F2?1696:1624,T4=G4+(U1<<3)|0,R4=+o1[T4>>3],F5=i5(W1,z5)|0,R=F5,y3=m,m=m+((1*R|0)+15&-16)|0,e[t2>>2]=y3,w=F5,h3=m,m=m+((1*w|0)+15&-16)|0,e[C2>>2]=h3,y=F5,m3=m,m=m+((1*y|0)+15&-16)|0,e[P2>>2]=m3,D=F5,M3=m,m=m+((1*D|0)+15&-16)|0,e[k2>>2]=M3,W5=(C|0)>1,W5&&(Q3=y3+(z5<<2)|0,X5=t2+4|0,e[X5>>2]=Q3,j3=h3+(z5<<2)|0,_3=C2+4|0,e[_3>>2]=j3,T3=m3+(z5<<2)|0,a3=P2+4|0,e[a3>>2]=T3,$3=M3+(z5<<2)|0,l3=k2+4|0,e[l3>>2]=$3,g9=(C|0)==2,!g9))for(y5=2;M=e[t2>>2]|0,N=e[C2>>2]|0,P=e[P2>>2]|0,z=e[k2>>2]|0,P5=i5(y5,z5)|0,G3=M+(P5<<2)|0,L5=t2+(y5<<2)|0,e[L5>>2]=G3,t6=N+(P5<<2)|0,i3=C2+(y5<<2)|0,e[i3>>2]=t6,o3=P+(P5<<2)|0,R3=P2+(y5<<2)|0,e[R3>>2]=o3,B3=z+(P5<<2)|0,w3=k2+(y5<<2)|0,e[w3>>2]=B3,p3=y5+1|0,W6=(p3|0)==(C|0),!W6;)y5=p3;if(Y5=e[c2>>2]|0,N5=(n0|0)>0,N5)for(X3=e[k2>>2]|0,V3=(C|0)>0,N3=n0^-1,Z5=z5^-1,M6=0,u9=N3;;){if(U3=(u9|0)>(Z5|0),j4=U3?u9:Z5,u3=j4^-1,y6=n0-M6|0,w6=(z5|0)>(y6|0),p=w6?y6:z5,i4(D5|0,E|0,W1|0)|0,Ae(X3|0,0,F5|0)|0,V3)for(k6=(p|0)>0,m6=r0-M6|0,t9=0;;){if(v3=f+(t9<<2)|0,Z3=e[v3>>2]|0,W3=Z3+(M6<<2)|0,f6=D5+(t9<<2)|0,O3=e[f6>>2]|0,S3=(O3|0)==0,S3){if(k6)for(v6=P2+(t9<<2)|0,i6=e[v6>>2]|0,O6=t2+(t9<<2)|0,A3=e[O6>>2]|0,r6=C2+(t9<<2)|0,u6=e[r6>>2]|0,D3=k2+(t9<<2)|0,T6=e[D3>>2]|0,I9=0;L0=i6+(I9<<2)|0,s[L0>>2]=1000000013351432e-25,q0=A3+(I9<<2)|0,s[q0>>2]=0,H0=u6+(I9<<2)|0,s[H0>>2]=0,N0=T6+(I9<<2)|0,e[N0>>2]=0,U=I9+M6|0,V0=Z3+(U<<2)|0,e[V0>>2]=0,U0=I9+1|0,L6=(U0|0)==(u3|0),!L6;)I9=U0}else{if(P3=P2+(t9<<2)|0,Y3=e[P3>>2]|0,k6){for(K9=0;o0=K9+M6|0,e6=Z3+(o0<<2)|0,p6=e[e6>>2]|0,R6=1768+(p6<<2)|0,K6=e[R6>>2]|0,J6=Y3+(K9<<2)|0,e[J6>>2]=K6,x3=K9+1|0,Q6=(x3|0)==(u3|0),!Q6;)K9=x3;if(Z6=c+(t9<<2)|0,G6=e[Z6>>2]|0,j6=k2+(t9<<2)|0,r9=e[j6>>2]|0,k6){for(T9=0;x6=(T9|0)>=(m6|0),A0=x6?R4:l1,N6=A0,Z=T9+M6|0,S6=G6+(Z<<2)|0,V6=+s[S6>>2],f9=+Ji(+V6),K=Y3+(T9<<2)|0,c0=+s[K>>2],s0=f9/c0,l0=r9+(T9<<2)|0,p9=!(s0>2]=B,j=T9+1|0,F6=(j|0)==(p|0),!F6;)T9=j;if(k6)for(a0=t2+(t9<<2)|0,g0=e[a0>>2]|0,f0=C2+(t9<<2)|0,Q0=e[f0>>2]|0,v9=0;;)if(d0=v9+M6|0,h0=G6+(d0<<2)|0,E0=+s[h0>>2],C0=E0*E0,u0=g0+(v9<<2)|0,s[u0>>2]=C0,k0=Q0+(v9<<2)|0,s[k0>>2]=C0,J0=+s[h0>>2],D0=J0<0,D0&&(B0=+s[u0>>2],x0=-B0,s[u0>>2]=x0),F0=Y3+(v9<<2)|0,G0=+s[F0>>2],p0=G0*G0,s[F0>>2]=p0,P0=v9+1|0,F3=(P0|0)==(u3|0),F3){T=f0,S0=g0;break}else v9=P0;else G9=21}else G9=21}else G9=21;(G9|0)==21&&(G9=0,L=t2+(t9<<2)|0,Y=e[L>>2]|0,H=C2+(t9<<2)|0,T=H,S0=Y),R0=e[T>>2]|0,v4=e[i0>>2]|0,+gQ(v4,r0,S0,R0,Y3,0,M6,p,W3)}if(r1=t9+1|0,X6=(r1|0)==(C|0),X6)break;t9=r1}if(z3=e[c2>>2]|0,a6=(z3|0)>0,a6)for(B6=(p|0)>0,_6=I-M6|0,Y6=r0-M6|0,E3=z3,d4=0;;){if(O0=(a+1160|0)+(d4<<2)|0,e1=e[O0>>2]|0,v0=(a+2184|0)+(d4<<2)|0,i1=e[v0>>2]|0,c1=f+(e1<<2)|0,$1=e[c1>>2]|0,f1=$1+(M6<<2)|0,g1=f+(i1<<2)|0,s1=e[g1>>2]|0,a1=t2+(e1<<2)|0,n1=e[a1>>2]|0,A1=t2+(i1<<2)|0,z0=e[A1>>2]|0,I1=C2+(e1<<2)|0,h1=e[I1>>2]|0,E1=C2+(i1<<2)|0,u1=e[E1>>2]|0,d1=P2+(e1<<2)|0,p1=e[d1>>2]|0,Q1=P2+(i1<<2)|0,D1=e[Q1>>2]|0,_1=k2+(e1<<2)|0,y1=e[_1>>2]|0,k1=k2+(i1<<2)|0,x1=e[k1>>2]|0,L1=D5+(e1<<2)|0,N1=e[L1>>2]|0,w1=(N1|0)==0,Z1=D5+(i1<<2)|0,w1?(G1=e[Z1>>2]|0,v1=(G1|0)==0,v1?Z2=E3:G9=31):G9=31,(G9|0)==31){if(G9=0,e[Z1>>2]=1,e[L1>>2]=1,B6)for(P6=0;;){K1=(P6|0)<(_6|0);do if(K1){if(P1=y1+(P6<<2)|0,H1=e[P1>>2]|0,q1=(H1|0)==0,Y1=x1+(P6<<2)|0,q1&&(j1=e[Y1>>2]|0,r2=(j1|0)==0,r2)){X2=(P6|0)<(Y6|0);do if(X2)v5=z0+(P6<<2)|0,z2=+s[v5>>2],f5=n1+(P6<<2)|0,w5=+s[f5>>2],O5=w5+z2,s[f5>>2]=O5,o9=+Ji(+O5),$5=h1+(P6<<2)|0,s[$5>>2]=o9,G=v5;else if(E5=n1+(P6<<2)|0,r5=+s[E5>>2],x2=z0+(P6<<2)|0,R2=+s[x2>>2],m2=R2+r5,C5=m2<0,h9=+Ji(+r5),A9=+Ji(+R2),x5=A9+h9,u5=h1+(P6<<2)|0,s[u5>>2]=x5,C5){S5=-x5,s[E5>>2]=S5,G=x2;break}else{s[E5>>2]=x5,G=x2;break}while(!1);G5=u1+(P6<<2)|0,s[G5>>2]=0,s[G>>2]=0,e[Y1>>2]=1,X=P6+M6|0,H2=s1+(X<<2)|0,e[H2>>2]=0;break}O1=n1+(P6<<2)|0,l2=+s[O1>>2],L9=+Ji(+l2),z1=z0+(P6<<2)|0,h2=+s[z1>>2],d6=+Ji(+h2),s2=d6+L9,s[O1>>2]=s2,d2=h1+(P6<<2)|0,A2=+s[d2>>2],V1=u1+(P6<<2)|0,g2=+s[V1>>2],a2=g2+A2,s[d2>>2]=a2,e[Y1>>2]=1,e[P1>>2]=1,V=P6+M6|0,$2=$1+(V<<2)|0,i2=e[$2>>2]|0,o2=s1+(V<<2)|0,X1=e[o2>>2]|0,u4=(i2|0)>-1,I4=0-i2|0,n2=u4?i2:I4,r4=(X1|0)>-1,n4=0-X1|0,f2=r4?X1:n4,e2=(n2|0)>(f2|0),e2?(y2=(i2|0)>0,S2=i2-X1|0,w2=X1-i2|0,M2=y2?S2:w2,e[o2>>2]=M2,J=e[$2>>2]|0,N2=J,O2=M2):(_2=(X1|0)>0,G2=i2-X1|0,u2=X1-i2|0,K2=_2?G2:u2,e[o2>>2]=K2,e[$2>>2]=X1,t0=e[o2>>2]|0,N2=X1,O2=t0),l4=(N2|0)>-1,k4=0-N2|0,q2=l4?N2:k4,T2=q2<<1,V2=(O2|0)<(T2|0),V2||(T1=0-O2|0,e[o2>>2]=T1,j2=e[$2>>2]|0,R5=0-j2|0,e[$2>>2]=R5)}while(!1);if(I5=p1+(P6<<2)|0,A5=+s[I5>>2],l5=D1+(P6<<2)|0,m5=+s[l5>>2],M1=m5+A5,s[l5>>2]=M1,s[I5>>2]=M1,k5=P6+1|0,s9=(k5|0)==(u3|0),s9)break;P6=k5}S4=e[i0>>2]|0,+gQ(S4,r0,n1,h1,p1,y1,M6,p,f1),W=e[c2>>2]|0,Z2=W}if(c5=d4+1|0,o5=(c5|0)<(Z2|0),o5)E3=Z2,d4=c5;else{s3=Z2;break}}else s3=z3;if(B5=M6+z5|0,e5=(n0|0)>(B5|0),M9=u9+z5|0,e5)M6=B5,u9=M9;else{k3=s3;break}}else k3=Y5;if(c3=(k3|0)>0,c3)t3=k3,e9=0;else{m=N4;return}for(;n5=(a+1160|0)+(e9<<2)|0,g5=e[n5>>2]|0,J2=E+(g5<<2)|0,h5=e[J2>>2]|0,t5=(h5|0)==0,b5=(a+2184|0)+(e9<<2)|0,t5?(W2=e[b5>>2]|0,a5=E+(W2<<2)|0,p5=e[a5>>2]|0,q5=(p5|0)==0,q5?V5=t3:G9=52):G9=52,(G9|0)==52&&(G9=0,e[J2>>2]=1,e3=e[b5>>2]|0,d5=E+(e3<<2)|0,e[d5>>2]=1,e0=e[c2>>2]|0,V5=e0),f3=e9+1|0,g3=(f3|0)<(V5|0),g3;)t3=V5,e9=f3;m=N4}function wS(t,n,o,a,c){t=t|0,n=+n,o=o|0,a=+a,c=+c;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,Z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,m6=0,z3=0,a6=0,B6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,A3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0,R4=0,T4=0,j4=0,d4=0,G4=0,G9=0,N4=0,s4=0,x4=0,c4=0,Ie=0,O9=0,d9=0,de=0,Me=0,ze=0,U4=0,Te=0,O4=0,X4=0,ke=0,Ze=0,V9=0,oe=0,g4=0,D6=0,P4=0,R9=0,A4=0,D4=0,ae=0,z9=0,$e=0,le=0,E4=0,ee=0,F4=0,ce=0,E9=0,$6=0,Ge=0,o4=0,Ee=0,C4=0,a4=0,U6=0,ve=0,Se=0,We=0,$4=0,Q4=0,g8=0,H3=0,Q9=0,C9=0,L4=0,te=0,a7=0,De=0,$7=0,Q7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,y7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ne=0,be=0,je=0,k8=0,y9=0,g7=0,Ce=0,h7=0,w7=0,j8=0,k7=0,ie=0,X8=0,P8=0,v8=0,Xe=0,H4=0,_e=0,e8=0,u8=0,S8=0,ge=0,Z9=0,t8=0,I8=0,i8=0,d8=0,he=0,me=0,Ue=0,Oe=0,W9=0,Re=0,fe=0,r8=0,Be=0,m4=0,E8=0,e7=0,q4=0,I3=0,Pe=0,C8=0,re=0,P9=0,ne=0,S9=0,He=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,s8=0,D8=0,Y4=0,n7=0,b8=0,qe=0,m9=0,s7=0,Ye=0;for(Ye=m,m=m+32480|0,H3=Ye+32256|0,m9=Ye+1792|0,Q9=Ye,R=o<<2,S=R,L=m,m=m+((1*S|0)+15&-16)|0,i2=k9(68)|0,Ae(m9|0,0,30464)|0,k3=a>0,r4=a<0,y9=0;;){for(ae=y9<<2,ie=0;r5=ie+ae|0,I5=(r5|0)<88,I5?(e5=1272+(r5<<2)|0,q5=+s[e5>>2],P9=q5):P9=-30,y3=r5+1|0,a3=(y3|0)<88,a3?(x6=1272+(y3<<2)|0,N6=+s[x6>>2],V6=P9>N6,V6?ne=N6:ne=P9):(r9=P9>-30,r9?ne=-30:ne=P9),Q6=r5+2|0,F6=(Q6|0)<88,F6?(L6=1272+(Q6<<2)|0,X6=+s[L6>>2],s9=ne>X6,s9?S9=X6:S9=ne):(F3=ne>-30,F3?S9=-30:S9=ne),W6=r5+3|0,g9=(W6|0)<88,g9?(A9=1272+(W6<<2)|0,o9=+s[A9>>2],L9=S9>o9,L9?He=o9:He=S9):(h9=S9>-30,h9?He=-30:He=S9),d6=H3+(ie<<2)|0,s[d6>>2]=He,M6=ie+1|0,L8=(M6|0)==56,!L8;)ie=M6;if(o4=(m9+(y9*1792|0)|0)+448|0,M=2792+(y9*1344|0)|0,i4(o4|0,M|0,224)|0,H=(m9+(y9*1792|0)|0)+672|0,c0=(2792+(y9*1344|0)|0)+224|0,i4(H|0,c0|0,224)|0,E0=(m9+(y9*1792|0)|0)+896|0,p0=(2792+(y9*1344|0)|0)+448|0,i4(E0|0,p0|0,224)|0,r1=(m9+(y9*1792|0)|0)+1120|0,a1=(2792+(y9*1344|0)|0)+672|0,i4(r1|0,a1|0,224)|0,Q1=(m9+(y9*1792|0)|0)+1344|0,G1=(2792+(y9*1344|0)|0)+896|0,i4(Q1|0,G1|0,224)|0,l2=(m9+(y9*1792|0)|0)+1568|0,o2=(2792+(y9*1344|0)|0)+1120|0,i4(l2|0,o2|0,224)|0,G2=m9+(y9*1792|0)|0,i4(G2|0,M|0,224)|0,j2=(m9+(y9*1792|0)|0)+224|0,i4(j2|0,M|0,224)|0,k3)for(Xe=0;;){if(r4)for(I8=0;l4=16-I8|0,w7=(l4|0)>-1,i7=0-l4|0,T9=w7?l4:i7,K9=+(T9|0),v9=K9*c,I9=v9+a,P6=I9<0,I=P6?0:I9,t9=I>0,f=t9?0:I,I4=((m9+(y9*1792|0)|0)+(Xe*224|0)|0)+(I8<<2)|0,k4=+s[I4>>2],n4=k4+f,s[I4>>2]=n4,v4=I8+1|0,N8=(v4|0)==56,!N8;)I8=v4;else for(i8=0;c3=16-i8|0,j8=(c3|0)>-1,q8=0-c3|0,_6=j8?c3:q8,v6=+(_6|0),R6=v6*c,S6=R6+a,f9=S6<0,C=f9?0:S6,e9=((m9+(y9*1792|0)|0)+(Xe*224|0)|0)+(i8<<2)|0,M9=+s[e9>>2],u9=M9+C,s[e9>>2]=u9,u4=i8+1|0,G8=(u4|0)==56,!G8;)i8=u4;if(i3=Xe+1|0,y8=(i3|0)==8,y8)break;Xe=i3}else for(v8=0;;){if(r4)for(d8=0;j4=16-d8|0,k7=(j4|0)>-1,r7=0-j4|0,d4=k7?j4:r7,G4=+(d4|0),G9=G4*c,N4=G9+a,s4=N4>0,E=s4?0:N4,c4=((m9+(y9*1792|0)|0)+(v8*224|0)|0)+(d8<<2)|0,Ie=+s[c4>>2],O9=Ie+E,s[c4>>2]=O9,d9=d8+1|0,V8=(d9|0)==56,!V8;)d8=d9;else for(t8=0;de=16-t8|0,h7=(de|0)>-1,t7=0-de|0,Me=h7?de:t7,ze=+(Me|0),U4=ze*c,Te=U4+a,O4=((m9+(y9*1792|0)|0)+(v8*224|0)|0)+(t8<<2)|0,ke=+s[O4>>2],Ze=ke+Te,s[O4>>2]=Ze,V9=t8+1|0,M8=(V9|0)==56,!M8;)t8=V9;if(oe=v8+1|0,z8=(oe|0)==8,z8)break;v8=oe}for(S4=t+(y9<<2)|0,R4=+s[S4>>2],T4=R4,H4=0;;){for(g4=(H4|0)<2,D6=+(H4|0),w=D6*10,y=70-w,P4=g4?50:y,R9=P4+T4,A4=R9,f8=0;D4=((m9+(y9*1792|0)|0)+(H4*224|0)|0)+(f8<<2)|0,z9=+s[D4>>2],$e=z9+A4,s[D4>>2]=$e,le=f8+1|0,L4=(le|0)==56,!L4;)f8=le;for(E4=Q9+(H4*224|0)|0,i4(E4|0,H3|0,224)|0,ee=+(H4|0),F4=ee*10,ce=70-F4,k8=0;;)if(E9=(Q9+(H4*224|0)|0)+(k8<<2)|0,$6=+s[E9>>2],Ge=ce+$6,s[E9>>2]=Ge,Ee=k8+1|0,$7=(Ee|0)==56,$7){je=0;break}else k8=Ee;for(;C4=((m9+(y9*1792|0)|0)+(H4*224|0)|0)+(je<<2)|0,a4=+s[C4>>2],U6=(Q9+(H4*224|0)|0)+(je<<2)|0,ve=+s[U6>>2],Se=a4>ve,Se&&(s[U6>>2]=a4),We=je+1|0,De=(We|0)==56,!De;)je=We;if($4=H4+1|0,y7=($4|0)==8,y7){_e=1;break}else H4=$4}for(;;){for(Q4=_e+-1|0,be=0;;)if(g8=(Q9+(Q4*224|0)|0)+(be<<2)|0,T=+s[g8>>2],G=(Q9+(_e*224|0)|0)+(be<<2)|0,N=+s[G>>2],P=T>2]=T),z=be+1|0,a7=(z|0)==56,a7){Ne=0;break}else be=z;for(;Y=(Q9+(_e*224|0)|0)+(Ne<<2)|0,t0=+s[Y>>2],J=((m9+(y9*1792|0)|0)+(_e*224|0)|0)+(Ne<<2)|0,W=+s[J>>2],e0=t0>2]=t0),X=Ne+1|0,te=(X|0)==56,!te;)Ne=X;if(U=_e+1|0,T8=(U|0)==8,T8)break;_e=U}if(o0=y9+1|0,w8=(o0|0)==17,w8)break;y9=o0}for(p9=n,x4=(o|0)>0,X4=o^-1,Ce=0;;){for(Z=k9(32)|0,V=i2+(Ce<<2)|0,e[V>>2]=Z,A0=+(Ce|0),n0=A0*.5,i0=A0*.34657350182533264,r0=i0+4.135165354540845,K=+Ln(+r0),s0=K/p9,l0=+Yo(+s0),j=~~l0,a0=+(j|0),g0=a0*n,f0=g0+1,Q0=f0,d0=+Ur(+Q0),y0=d0*2.885390043258667,h0=y0+-11.931568145751953,C0=+jm(+h0),u0=~~C0,k0=j+1|0,J0=+(k0|0),D0=J0*n,B0=D0,x0=+Ur(+B0),F0=x0*2.885390043258667,M0=F0+-11.931568145751953,G0=+Yo(+M0),P0=~~G0,R0=(u0|0)>(Ce|0),g7=R0?Ce:u0,S0=(g7|0)<0,C8=S0?0:g7,L0=(P0|0)>16,p=L0?16:P0,q0=(C8|0)>(p|0),H0=Ce+1|0,N0=(H0|0)<17,V0=n0+3.9657840728759766,re=0;;){if(T0=k9(232)|0,U0=Z+(re<<2)|0,e[U0>>2]=T0,x4)for(e8=0;O0=L+(e8<<2)|0,s[O0>>2]=999,e1=e8+1|0,C9=(e1|0)==(o|0),!C9;)e8=e1;if(!q0)for(he=C8;;){for(v0=+(he|0),i1=v0*.5,u8=0,me=0;;){if(g1=+(u8|0),l1=g1*.125,s1=l1+i1,n1=s1+3.9032840728759766,A1=n1*.6931470036506653,z0=+Ln(+A1),I1=z0/p9,h1=~~I1,E1=s1+4.028284072875977,u1=E1*.6931470036506653,d1=+Ln(+u1),B1=d1/p9,p1=B1+1,D1=~~p1,_1=(h1|0)<0,B=_1?0:h1,y1=(B|0)>(o|0),e7=y1?o:B,k1=(e7|0)<(me|0),q4=k1?e7:me,x1=(D1|0)<0,Z8=x1?0:D1,L1=(Z8|0)>(o|0),H8=L1?o:Z8,N1=(q4|0)<(H8|0),w1=(q4|0)<(o|0),Y8=N1&w1,Y8)for(U1=((m9+(he*1792|0)|0)+(re*224|0)|0)+(u8<<2)|0,Z1=+s[U1>>2],v1=(me|0)<(o|0),K1=v1?me:o,P1=K1^-1,H1=(h1|0)>0,_=h1^-1,q1=H1?_:-1,Y1=(q1|0)<(P1|0),Y4=Y1?P1:q1,j1=Y4^-1,r2=(D1|0)>0,x=D1^-1,W1=r2?x:-1,O1=(W1|0)<(X4|0),n7=O1?X4:W1,z1=n7-Y4|0,h2=Y4+o|0,s2=h2^-1,d2=z1>>>0>s2>>>0,b8=d2?z1:s2,A2=j1-b8|0,W9=q4;;)if(V1=L+(W9<<2)|0,g2=+s[V1>>2],a2=g2>Z1,a2&&(s[V1>>2]=Z1),t2=W9+1|0,h8=(t2|0)==(A2|0),h8){Ue=A2;break}else W9=t2;else Ue=q4;if($2=u8+1|0,U8=($2|0)==56,U8){Oe=Ue;break}else u8=$2,me=Ue}if(c1=(Oe|0)<(o|0),c1)for($1=((m9+(he*1792|0)|0)+(re*224|0)|0)+220|0,f1=+s[$1>>2],Re=Oe;X1=L+(Re<<2)|0,n2=+s[X1>>2],f2=n2>f1,f2&&(s[X1>>2]=f1),e2=Re+1|0,O8=(e2|0)==(o|0),!O8;)Re=e2;if(y2=he+1|0,S2=(he|0)<(p|0),S2)he=y2;else break}if(N0){for(S8=0,fe=0;;){if(N2=+(S8|0),q2=N2*.125,T2=q2+n0,O2=T2+3.9032840728759766,V2=O2*.6931470036506653,s5=+Ln(+V2),P2=s5/p9,T1=~~P2,R5=T2+4.028284072875977,X2=R5*.6931470036506653,v5=+Ln(+X2),z2=v5/p9,f5=z2+1,w5=~~f5,O5=(T1|0)<0,v=O5?0:T1,$5=(v|0)>(o|0),I3=$5?o:v,k2=(I3|0)<(fe|0),Pe=k2?I3:fe,E5=(w5|0)<0,W8=E5?0:w5,x2=(W8|0)>(o|0),f7=x2?o:W8,R2=(Pe|0)<(f7|0),m2=(Pe|0)<(o|0),n8=R2&m2,n8)for(C5=((m9+(H0*1792|0)|0)+(re*224|0)|0)+(S8<<2)|0,x5=+s[C5>>2],u5=(fe|0)<(o|0),S5=u5?fe:o,G5=S5^-1,D5=(T1|0)>0,D=T1^-1,H2=D5?D:-1,A5=(H2|0)<(G5|0),s8=A5?G5:H2,l5=s8^-1,m5=(w5|0)>0,Q=w5^-1,M1=m5?Q:-1,k5=(M1|0)<(X4|0),D8=k5?X4:M1,c5=D8-s8|0,o5=s8+o|0,Z2=o5^-1,c2=c5>>>0>Z2>>>0,qe=c2?c5:Z2,B5=l5-qe|0,m4=Pe;;)if(n5=L+(m4<<2)|0,g5=+s[n5>>2],J2=g5>x5,J2&&(s[n5>>2]=x5),h5=m4+1|0,Q7=(h5|0)==(B5|0),Q7){r8=B5;break}else m4=h5;else r8=Pe;if(t5=S8+1|0,K8=(t5|0)==56,K8){Be=r8;break}else S8=t5,fe=r8}if(_2=(Be|0)<(o|0),_2)for(u2=((m9+(H0*1792|0)|0)+(re*224|0)|0)+220|0,K2=+s[u2>>2],E8=Be;b5=L+(E8<<2)|0,W2=+s[b5>>2],a5=W2>K2,a5&&(s[b5>>2]=K2),F2=E8+1|0,l7=(F2|0)==(o|0),!l7;)E8=F2}for(w2=Z+(re<<2)|0,C2=Z+(re<<2)|0,M2=Z+(re<<2)|0,ge=0;;){f3=+(ge|0),g3=f3*.125,V5=V0+g3,t3=V5*.6931470036506653,s3=+Ln(+t3),E3=s3/p9,F5=~~E3,z5=(F5|0)<0;do if(z5)h3=ge+2|0,m3=e[w2>>2]|0,q3=m3+(h3<<2)|0,s[q3>>2]=-999;else if(M3=(F5|0)<(o|0),M3){j3=L+(F5<<2)|0,_3=e[j3>>2]|0,T3=ge+2|0,$3=e[C2>>2]|0,l3=$3+(T3<<2)|0,e[l3>>2]=_3;break}else{W5=ge+2|0,Q3=e[M2>>2]|0,X5=Q3+(W5<<2)|0,s[X5>>2]=-999;break}while(!1);if(C3=ge+1|0,c7=(C3|0)==56,c7)break;ge=C3}p5=T0+8|0,e3=+s[p5>>2],d5=e3>-200;do if(d5)Z9=0;else if(Y5=T0+12|0,N5=+s[Y5>>2],P5=N5>-200,P5)Z9=1;else if(p3=T0+16|0,X3=+s[p3>>2],V3=X3>-200,V3)Z9=2;else if(N3=T0+20|0,Z5=+s[N3>>2],U3=Z5>-200,U3)Z9=3;else if(o6=T0+24|0,u3=+s[o6>>2],y6=u3>-200,y6)Z9=4;else if(w6=T0+28|0,k6=+s[w6>>2],m6=k6>-200,m6)Z9=5;else if(z3=T0+32|0,a6=+s[z3>>2],B6=a6>-200,B6)Z9=6;else if(Y6=T0+36|0,C6=+s[Y6>>2],v3=C6>-200,v3)Z9=7;else if(Z3=T0+40|0,W3=+s[Z3>>2],f6=W3>-200,f6)Z9=8;else if(O3=T0+44|0,S3=+s[O3>>2],P3=S3>-200,P3)Z9=9;else if(Y3=T0+48|0,i6=+s[Y3>>2],r3=i6>-200,r3)Z9=10;else if(O6=T0+52|0,A3=+s[O6>>2],r6=A3>-200,r6)Z9=11;else if(u6=T0+56|0,D3=+s[u6>>2],T6=D3>-200,T6)Z9=12;else if(e6=T0+60|0,p6=+s[e6>>2],K6=p6>-200,K6)Z9=13;else{if(I6=T0+64|0,J6=+s[I6>>2],x3=J6>-200,x3){Z9=14;break}if(Z6=T0+68|0,G6=+s[Z6>>2],j6=G6>-200,j6){Z9=15;break}Z9=16}while(!1);for(s[T0>>2]=Z9,P8=55;;){if(y5=P8+2|0,G3=T0+(y5<<2)|0,L5=+s[G3>>2],t6=L5>-200,t6){X8=P8;break}if(o3=P8+-1|0,R3=(o3|0)>17,R3)P8=o3;else{X8=o3;break}}if(h6=+(X8|0),B3=T0+4|0,s[B3>>2]=h6,w3=re+1|0,x8=(w3|0)==8,x8)break;re=w3}if(F8=(H0|0)==17,F8)break;Ce=H0}return m=Ye,i2|0}function cQ(t,n,o,a,c,f){t=t|0,n=n|0,o=o|0,a=a|0,c=+c,f=f|0;var E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,Z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,m6=0,z3=0,a6=0,B6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,A3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0;if(S4=m,w=t<<2,E=w,y=m,m=m+((1*E|0)+15&-16)|0,I=w,A2=m,m=m+((1*I|0)+15&-16)|0,C=w,W2=m,m=m+((1*C|0)+15&-16)|0,p=w,s3=m,m=m+((1*p|0)+15&-16)|0,B=w,X5=m,m=m+((1*B|0)+15&-16)|0,y5=+s[o>>2],X3=y5+c,k6=X3<1,n4=k6?1:X3,f6=n4*n4,D=f6*.5,z=D*n4,s[y>>2]=D,s[A2>>2]=D,s[W2>>2]=0,s[s3>>2]=z,s[X5>>2]=0,V=(t|0)>1,V)for(F3=1,d6=D,M6=D,e9=0,M9=0,u9=z,u4=1;c1=o+(F3<<2)|0,h1=+s[c1>>2],x1=h1+c,q1=x1<1,p9=q1?1:x1,V1=p9*p9,y2=V1+d6,T2=V1*u4,f5=T2+M6,x5=T2*u4,k5=x5+e9,J2=V1*p9,h5=J2+u9,t5=T2*p9,b5=t5+M9,a5=y+(F3<<2)|0,s[a5>>2]=y2,F2=A2+(F3<<2)|0,s[F2>>2]=f5,p5=W2+(F3<<2)|0,s[p5>>2]=k5,q5=s3+(F3<<2)|0,s[q5>>2]=h5,e3=X5+(F3<<2)|0,s[e3>>2]=b5,d5=F3+1|0,f3=u4+1,F6=(d5|0)==(t|0),!F6;)F3=d5,d6=y2,M6=f5,e9=k5,M9=b5,u9=h5,u4=f3;if(g0=e[n>>2]|0,D0=g0>>16,q0=(D0|0)>-1,q0)V5=g0,u6=0,p6=0,J6=1,L6=0,r4=0;else for(F5=g0,m3=D0,X6=0,l4=0;;)if(E3=F5&65535,z5=y+(E3<<2)|0,y3=+s[z5>>2],h3=0-m3|0,q3=y+(h3<<2)|0,M3=+s[q3>>2],W5=M3+y3,Q3=A2+(E3<<2)|0,j3=+s[Q3>>2],_3=A2+(h3<<2)|0,T3=+s[_3>>2],a3=j3-T3,$3=W2+(E3<<2)|0,l3=+s[$3>>2],C3=W2+(h3<<2)|0,Y5=+s[C3>>2],N5=Y5+l3,P5=s3+(E3<<2)|0,G3=+s[P5>>2],L5=s3+(h3<<2)|0,t6=+s[L5>>2],i3=t6+G3,o3=X5+(E3<<2)|0,R3=+s[o3>>2],h6=X5+(h3<<2)|0,B3=+s[h6>>2],w3=R3-B3,p3=i3*N5,V3=w3*a3,N3=p3-V3,Z5=w3*W5,k3=i3*a3,c3=Z5-k3,U3=N5*W5,o6=a3*a3,u3=U3-o6,y6=c3*l4,w6=y6+N3,m6=w6/u3,z3=m6<0,j6=z3?0:m6,a6=j6-c,B6=a+(X6<<2)|0,s[B6>>2]=a6,_6=X6+1|0,Y6=l4+1,C6=n+(_6<<2)|0,v3=e[C6>>2]|0,Z3=v3>>16,W3=(Z3|0)>-1,W3){V5=v3,u6=N3,p6=c3,J6=u3,L6=_6,r4=Y6;break}else F5=v3,m3=Z3,X6=_6,l4=Y6;if(g3=V5&65535,t3=(g3|0)<(t|0),t3)for(v=V5,Y3=g3,W6=L6,K9=r4;;)if(S3=v>>16,P3=y+(Y3<<2)|0,v6=+s[P3>>2],i6=y+(S3<<2)|0,r3=+s[i6>>2],O6=v6-r3,A3=A2+(Y3<<2)|0,r6=+s[A3>>2],Q=A2+(S3<<2)|0,_=+s[Q>>2],x=r6-_,R=W2+(Y3<<2)|0,L=+s[R>>2],M=W2+(S3<<2)|0,T=+s[M>>2],G=L-T,N=s3+(Y3<<2)|0,P=+s[N>>2],Y=s3+(S3<<2)|0,t0=+s[Y>>2],J=P-t0,W=X5+(Y3<<2)|0,e0=+s[W>>2],H=X5+(S3<<2)|0,X=+s[H>>2],U=e0-X,o0=J*G,Z=U*x,A0=o0-Z,n0=U*O6,i0=J*x,r0=n0-i0,K=G*O6,c0=x*x,s0=K-c0,l0=r0*K9,j=l0+A0,a0=j/s0,f0=a0<0,r9=f0?0:a0,Q0=r9-c,d0=a+(W6<<2)|0,s[d0>>2]=Q0,y0=W6+1|0,h0=K9+1,E0=n+(y0<<2)|0,C0=e[E0>>2]|0,u0=C0&65535,k0=(u0|0)<(t|0),k0)v=C0,Y3=u0,W6=y0,K9=h0;else{D3=A0,R6=r0,x3=s0,s9=y0,T9=h0;break}else D3=u6,R6=p6,x3=J6,s9=L6,T9=r4;if(O3=(s9|0)<(t|0),O3)for(g9=s9,v9=T9;J0=v9*R6,B0=J0+D3,x0=B0/x3,F0=x0<0,x6=F0?0:x0,M0=x6-c,G0=a+(g9<<2)|0,s[G0>>2]=M0,p0=g9+1|0,P0=v9+1,Q6=(p0|0)==(t|0),!Q6;)g9=p0,v9=P0;if(R0=(f|0)<1,R0){m=S4;return}if(S0=(f|0)/2&-1,L0=S0-f|0,H0=(L0|0)>-1,H0)T6=D3,K6=R6,Z6=x3,h9=0,I9=0;else for(N0=f-S0|0,O0=S0,i1=L0,f9=0,P6=0;;)if(r1=y+(O0<<2)|0,e1=+s[r1>>2],v0=0-i1|0,$1=y+(v0<<2)|0,f1=+s[$1>>2],g1=f1+e1,l1=A2+(O0<<2)|0,s1=+s[l1>>2],a1=A2+(v0<<2)|0,n1=+s[a1>>2],A1=s1-n1,z0=W2+(O0<<2)|0,I1=+s[z0>>2],E1=W2+(v0<<2)|0,u1=+s[E1>>2],d1=u1+I1,B1=s3+(O0<<2)|0,p1=+s[B1>>2],Q1=s3+(v0<<2)|0,D1=+s[Q1>>2],_1=D1+p1,y1=X5+(O0<<2)|0,k1=+s[y1>>2],L1=X5+(v0<<2)|0,N1=+s[L1>>2],w1=k1-N1,U1=_1*d1,Z1=w1*A1,G1=U1-Z1,v1=w1*g1,K1=_1*A1,P1=v1-K1,H1=d1*g1,Y1=A1*A1,j1=H1-Y1,r2=P1*P6,W1=r2+G1,O1=W1/j1,l2=O1-c,z1=a+(f9<<2)|0,h2=+s[z1>>2],s2=l2>2]=l2),d2=f9+1|0,g2=P6+1,a2=S0+d2|0,t2=a2-f|0,V6=(d2|0)==(N0|0),V6){T6=G1,K6=P1,Z6=j1,h9=N0,I9=g2;break}else O0=a2,i1=t2,f9=d2,P6=g2;if(V0=h9+S0|0,T0=(V0|0)<(t|0),T0)for(U0=t-S0|0,S=V0,o9=h9,I4=I9;;)if(i2=S-f|0,o2=y+(S<<2)|0,X1=+s[o2>>2],n2=y+(i2<<2)|0,f2=+s[n2>>2],e2=X1-f2,S2=A2+(S<<2)|0,w2=+s[S2>>2],C2=A2+(i2<<2)|0,M2=+s[C2>>2],_2=w2-M2,G2=W2+(S<<2)|0,u2=+s[G2>>2],K2=W2+(i2<<2)|0,N2=+s[K2>>2],q2=u2-N2,O2=s3+(S<<2)|0,V2=+s[O2>>2],s5=s3+(i2<<2)|0,P2=+s[s5>>2],T1=V2-P2,j2=X5+(S<<2)|0,R5=+s[j2>>2],X2=X5+(i2<<2)|0,v5=+s[X2>>2],z2=R5-v5,w5=T1*q2,O5=z2*_2,$5=w5-O5,k2=z2*e2,E5=T1*_2,r5=k2-E5,x2=q2*e2,R2=_2*_2,m2=x2-R2,C5=r5*I4,u5=C5+$5,S5=u5/m2,G5=S5-c,D5=a+(o9<<2)|0,H2=+s[D5>>2],I5=G5>2]=G5),A5=o9+1|0,l5=I4+1,m5=A5+S0|0,S6=(A5|0)==(U0|0),S6){e6=$5,I6=r5,G6=m2,A9=U0,t9=l5;break}else S=m5,o9=A5,I4=l5;else e6=T6,I6=K6,G6=Z6,A9=h9,t9=I9;if($2=(A9|0)<(t|0),$2)L9=A9,k4=t9;else{m=S4;return}for(;M1=k4*I6,c5=M1+e6,o5=c5/G6,Z2=o5-c,c2=a+(L9<<2)|0,B5=+s[c2>>2],e5=Z2>2]=Z2),n5=L9+1|0,g5=k4+1,N6=(n5|0)==(t|0),!N6;)L9=n5,k4=g5;m=S4}function kS(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0;if(c1=m,f=o<<2,a=f,E=m,m=m+((1*a|0)+15&-16)|0,c=f,_=m,m=m+((1*c|0)+15&-16)|0,t0=(o|0)>0,t0)p0=0,N0=0;else{m=c1;return}for(;;){k0=(N0|0)<2;do if(k0)B0=E+(N0<<2)|0,e[B0>>2]=p0,I=t+(p0<<2)|0,C=e[I>>2]|0,p=_+(N0<<2)|0,e[p>>2]=C,O0=N0;else{for(J0=t+(p0<<2)|0,D0=+s[J0>>2],V0=N0;;){if(B=V0+-1|0,v=_+(B<<2)|0,S=+s[v>>2],w=D0>2]|0,R=x+n|0,L=(p0|0)<(R|0),M=(V0|0)>1,S0=M&L,!S0){U0=V0,i1=12;break}if(T=V0+-2|0,G=_+(T<<2)|0,N=+s[G>>2],P=!(S<=N),P){U0=V0,i1=12;break}if(z=E+(T<<2)|0,Y=e[z>>2]|0,J=Y+n|0,W=(p0|0)<(J|0),W)V0=B;else{U0=V0,i1=12;break}}if((i1|0)==8){i1=0,y=E+(T0<<2)|0,e[y>>2]=p0,D=_+(T0<<2)|0,s[D>>2]=D0,O0=T0;break}else if((i1|0)==12){i1=0,e0=E+(U0<<2)|0,e[e0>>2]=p0,H=_+(U0<<2)|0,s[H>>2]=D0,O0=U0;break}}while(!1);if(r1=O0+1|0,X=p0+1|0,G0=(X|0)==(o|0),G0){e1=O0,v0=r1;break}else p0=X,N0=r1}if(n0=(e1|0)>-1,!n0){m=c1;return}for(Q0=n+1|0,P0=0,L0=0;;){if(U=(P0|0)<(e1|0),U?(o0=P0+1|0,Z=_+(o0<<2)|0,V=+s[Z>>2],A0=_+(P0<<2)|0,i0=+s[A0>>2],r0=V>i0,r0?(K=E+(o0<<2)|0,c0=e[K>>2]|0,x0=c0):i1=17):i1=17,(i1|0)==17&&(i1=0,s0=E+(P0<<2)|0,l0=e[s0>>2]|0,j=Q0+l0|0,x0=j),a0=(x0|0)>(o|0),R0=a0?o:x0,g0=(L0|0)<(R0|0),g0)for(f0=_+(P0<<2)|0,d0=e[f0>>2]|0,y0=(x0|0)<(o|0),h0=y0?x0:o,H0=L0;;)if(E0=t+(H0<<2)|0,e[E0>>2]=d0,C0=H0+1|0,F0=(C0|0)==(h0|0),F0){q0=h0;break}else H0=C0;else q0=L0;if(u0=P0+1|0,M0=(u0|0)==(v0|0),M0)break;P0=u0,L0=q0}m=c1}function gQ(t,n,o,a,c,f,E,I,C){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0,I=I|0,C=C|0;var p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0;if(l2=m,R=I<<2,D=R,L=m,m=m+((1*D|0)+15&-16)|0,e0=t+500|0,K=e[e0>>2]|0,h0=(K|0)==0,h0?p1=I:(G0=t+504|0,U0=e[G0>>2]|0,s1=U0-E|0,p1=s1),L1=(p1|0)>(I|0),Y1=L1?I:p1,M=(Y1|0)>0,M)for(T=(f|0)==0,G=(p1|0)<(I|0),N=G?p1:I,P1=0;;){T?O1=9:(t0=f+(P1<<2)|0,J=e[t0>>2]|0,W=(J|0)==0,W&&(O1=9));do if((O1|0)==9)if(O1=0,H=a+(P1<<2)|0,X=+s[H>>2],U=c+(P1<<2)|0,o0=+s[U>>2],Z=X/o0,V=o+(P1<<2)|0,A0=+s[V>>2],n0=A0<0,i0=Z,r0=+xn(+i0),c0=+Gi(r0),n0){s0=-c0,l0=~~s0,j=C+(P1<<2)|0,e[j>>2]=l0;break}else{a0=~~c0,g0=C+(P1<<2)|0,e[g0>>2]=a0;break}while(!1);if(f0=P1+1|0,v1=(f0|0)==(N|0),v1){K1=N;break}else P1=f0}else K1=0;if(P=(K1|0)<(I|0),!P)return y=0,m=l2,+y;for(z=(f|0)!=0,Y=n-E|0,p=0,N1=0,H1=K1;;){z?(Q0=f+(H1<<2)|0,d0=e[Q0>>2]|0,y0=(d0|0)==0,y0?O1=15:(B=p,w1=N1)):O1=15;do if((O1|0)==15)if(O1=0,E0=a+(H1<<2)|0,C0=+s[E0>>2],u0=c+(H1<<2)|0,k0=+s[u0>>2],J0=C0/k0,D0=!(J0<.25),B0=(H1|0)<(Y|0),j1=z&B0,r2=D0|j1,r2){p0=o+(H1<<2)|0,P0=+s[p0>>2],R0=P0<0,S0=J0,L0=+xn(+S0),q0=+Gi(L0),H0=-q0,_=R0?H0:q0,Q=~~_,N0=C+(H1<<2)|0,e[N0>>2]=Q,V0=i5(Q,Q)|0,T0=+(V0|0),r1=+s[u0>>2],O0=T0*r1,s[E0>>2]=O0,B=p,w1=N1;break}else{x0=J0+p,F0=N1+1|0,M0=L+(N1<<2)|0,e[M0>>2]=E0,B=x0,w1=F0;break}while(!1);if(e1=H1+1|0,G1=(e1|0)==(I|0),G1){v=B,U1=w1;break}else p=B,N1=w1,H1=e1}if(v0=(U1|0)==0,v0||(Fh(L,U1,4,9),i1=(U1|0)>0,!i1))return y=v,m=l2,+y;for(c1=a,$1=t+512|0,f1=+o1[$1>>3],S=v,q1=0;;)if(g1=L+(q1<<2)|0,l1=e[g1>>2]|0,a1=l1,n1=a1-c1|0,A1=n1>>2,z0=S,I1=!(z0>=f1),I1?(w=S,x=0,W1=0):(h1=o+(A1<<2)|0,E1=e[h1>>2]|0,u1=E1&-2147483648,d1=u1|1065353216,B1=(e[p2>>2]=d1,+s[p2>>2]),Q1=~~B1,D1=S+-1,_1=c+(A1<<2)|0,y1=+s[_1>>2],w=D1,x=Q1,W1=y1),k1=C+(A1<<2)|0,e[k1>>2]=x,s[l1>>2]=W1,x1=q1+1|0,Z1=(x1|0)==(U1|0),Z1){y=w;break}else S=w,q1=x1;return m=l2,+y}function vS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0;return S=m,o=e[t>>2]|0,a=+s[o>>2],c=e[n>>2]|0,f=+s[c>>2],E=af,p=C&1,B=I-p|0,B|0}function SS(t){t=t|0;var n=0,o=0,a=0;a=m,n=(t|0)==0,n||I2(t)}function DS(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0;if(W=m,o=(t|0)==0,!o){if(a=t+4|0,y=e[a>>2]|0,L=(y|0)>0,M=t+20|0,L)for(R=y,Y=0;T=e[M>>2]|0,G=T+(Y<<2)|0,N=e[G>>2]|0,P=(N|0)==0,P?f=R:(I2(N),n=e[a>>2]|0,f=n),z=Y+1|0,c=(z|0)<(f|0),c;)R=f,Y=z;if(E=e[M>>2]|0,I2(E),I=t+24|0,C=e[I>>2]|0,p=(C|0)>0,B=t+28|0,p)for(t0=0;v=e[B>>2]|0,S=v+(t0<<2)|0,w=e[S>>2]|0,I2(w),D=t0+1|0,Q=e[I>>2]|0,_=(D|0)<(Q|0),_;)t0=D;x=e[B>>2]|0,I2(x),I2(t)}}function bS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0;if(a0=m,c=e[t>>2]|0,U2(n,c,24),f=t+4|0,Q=e[f>>2]|0,U2(n,Q,24),Y=t+8|0,U=e[Y>>2]|0,o0=U+-1|0,U2(n,o0,24),Z=t+12|0,V=e[Z>>2]|0,A0=V+-1|0,U2(n,A0,6),n0=t+20|0,E=e[n0>>2]|0,U2(n,E,8),I=e[Z>>2]|0,C=(I|0)>0,!!C){for(p=t+24|0,i0=0,K=0;;){if(S=p+(K<<2)|0,w=e[S>>2]|0,y=L7(w)|0,D=(y|0)>3,_=e[S>>2]|0,D?(U2(n,_,3),U2(n,1,1),x=e[S>>2]|0,R=x>>3,U2(n,R,5)):U2(n,_,4),L=e[S>>2]|0,M=(L|0)==0,M)s0=0;else for(o=L,l0=0;;)if(T=o&1,G=T+l0|0,N=o>>>1,P=(N|0)==0,P){s0=G;break}else o=N,l0=G;if(z=s0+i0|0,t0=K+1|0,J=e[Z>>2]|0,W=(t0|0)<(J|0),W)i0=z,K=t0;else{a=z;break}}if(B=(a|0)>0,!!B)for(v=t+280|0,c0=0;e0=v+(c0<<2)|0,H=e[e0>>2]|0,U2(n,H,8),X=c0+1|0,r0=(X|0)==(a|0),!r0;)c0=X}}function _S(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0;n1=m,E=t4(1,2840)|0,I=t+28|0,x=e[I>>2]|0,J=W4(n,24)|0,e[E>>2]=J,i0=W4(n,24)|0,d0=E+4|0,e[d0>>2]=i0,F0=W4(n,24)|0,V0=F0+1|0,U0=E+8|0,e[U0>>2]=V0,r1=W4(n,6)|0,C=r1+1|0,p=E+12|0,e[p>>2]=C,B=W4(n,8)|0,v=E+20|0,e[v>>2]=B,S=(B|0)<0;e:do if(S)a1=26;else{if(w=(r1|0)>-1,w){for(y=E+24|0,e1=0,c1=0;;){if(_=W4(n,3)|0,R=W4(n,1)|0,L=(R|0)<0,L){a1=26;break e}if(M=(R|0)==0,M)v0=_;else{if(T=W4(n,5)|0,G=(T|0)<0,G){a1=26;break e}N=T<<3,P=N|_,v0=P}if(z=y+(c1<<2)|0,e[z>>2]=v0,Y=(v0|0)==0,Y)l1=0;else for(a=v0,s1=0;;)if(t0=a&1,W=t0+s1|0,e0=a>>>1,H=(e0|0)==0,H){l1=W;break}else a=e0,s1=W;if(X=l1+e1|0,U=c1+1|0,o0=e[p>>2]|0,Z=(U|0)<(o0|0),Z)e1=X,c1=U;else{f=X;break}}if(D=(f|0)>0,D)for(Q=E+280|0,$1=0;;){if(V=W4(n,8)|0,A0=(V|0)<0,A0)break e;if(n0=Q+($1<<2)|0,e[n0>>2]=V,r0=$1+1|0,K=(r0|0)<(f|0),K)$1=r0;else{T0=D,O0=f;break}}else T0=0,O0=f}else T0=0,O0=0;if(c0=e[v>>2]|0,s0=x+24|0,l0=e[s0>>2]|0,j=(c0|0)<(l0|0),j){if(T0)for(a0=E+280|0,f1=0;;){if(Q0=a0+(f1<<2)|0,y0=e[Q0>>2]|0,h0=(y0|0)<(l0|0),!h0||(E0=(x+1824|0)+(y0<<2)|0,C0=e[E0>>2]|0,u0=C0+12|0,k0=e[u0>>2]|0,J0=(k0|0)==0,g0=f1+1|0,J0))break e;if(f0=(g0|0)<(O0|0),f0)f1=g0;else break}if(D0=(x+1824|0)+(c0<<2)|0,B0=e[D0>>2]|0,x0=B0+4|0,M0=e[x0>>2]|0,G0=e[B0>>2]|0,p0=(G0|0)<1,!p0){for(P0=e[p>>2]|0,i1=G0,g1=1;;){if(L0=i5(P0,g1)|0,q0=(L0|0)>(M0|0),q0)break e;if(R0=i1+-1|0,S0=(i1|0)>1,S0)i1=R0,g1=L0;else{c=L0;break}}return H0=E+16|0,e[H0>>2]=c,o=E,o|0}}}while(!1);return(a1|0)==26&&(N0=(E|0)==0,N0)?(o=0,o|0):(I2(E),o=0,o|0)}function RS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0;if(p1=m,f=t4(1,44)|0,E=t+4|0,_=e[E>>2]|0,t0=_+28|0,n0=e[t0>>2]|0,e[f>>2]=n,Q0=n+12|0,x0=e[Q0>>2]|0,N0=f+4|0,e[N0>>2]=x0,r1=n0+2848|0,O0=e[r1>>2]|0,I=f+12|0,e[I>>2]=O0,C=O0,p=n+20|0,B=e[p>>2]|0,v=C+(B*56|0)|0,S=f+16|0,e[S>>2]=v,w=e[v>>2]|0,y=t4(x0,4)|0,D=f+20|0,e[D>>2]=y,Q=(x0|0)>0,Q)for(x=n+24|0,R=n+280|0,e1=0,l1=0,h1=0;;){if(L=x+(l1<<2)|0,M=e[L>>2]|0,T=L7(M)|0,G=(T|0)==0,G)c1=e1,E1=h1;else if(N=(T|0)>(h1|0),a=N?T:h1,P=t4(T,4)|0,z=y+(l1<<2)|0,e[z>>2]=P,Y=(T|0)>0,Y)for(J=e[L>>2]|0,W=y+(l1<<2)|0,v0=e1,A1=0;;)if(e0=1<>2]|0,o0=v0+1|0,Z=R+(v0<<2)|0,V=e[Z>>2]|0,A0=U+(V*56|0)|0,i0=e[W>>2]|0,r0=i0+(A1<<2)|0,e[r0>>2]=A0,i1=o0),K=A1+1|0,f1=(K|0)==(T|0),f1){c1=i1,E1=a;break}else v0=i1,A1=K;else c1=e1,E1=a;if(c0=l1+1|0,s0=(c0|0)<(x0|0),s0)e1=c1,l1=c0,h1=E1;else{I1=E1;break}}else I1=0;if(l0=f+24|0,e[l0>>2]=1,j=(w|0)>0,j){for(g0=1,s1=0;;)if(a0=i5(g0,x0)|0,f0=s1+1|0,$1=(f0|0)==(w|0),$1){o=a0;break}else g0=a0,s1=f0;e[l0>>2]=o,h0=o}else h0=1;if(d0=f+8|0,e[d0>>2]=I1,y0=h0<<2,E0=k9(y0)|0,C0=f+28|0,e[C0>>2]=E0,u0=(h0|0)>0,!u0)return f|0;if(k0=w<<2,!j){for(a1=0;H0=k9(k0)|0,V0=E0+(a1<<2)|0,e[V0>>2]=H0,T0=a1+1|0,U0=(T0|0)<(h0|0),U0;)a1=T0;return f|0}for(J0=e[C0>>2]|0,n1=0;;){for(S0=k9(k0)|0,L0=E0+(n1<<2)|0,e[L0>>2]=S0,q0=J0+(n1<<2)|0,P0=e[q0>>2]|0,c=h0,z0=0,d1=n1;u1=(c|0)/(x0|0)&-1,F0=(d1|0)/(u1|0)&-1,M0=i5(F0,u1)|0,G0=d1-M0|0,p0=P0+(z0<<2)|0,e[p0>>2]=F0,R0=z0+1|0,g1=(R0|0)==(w|0),!g1;)c=u1,z0=R0,d1=G0;if(D0=n1+1|0,B0=(D0|0)<(h0|0),B0)n1=D0;else break}return f|0}function xS(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0;if(M=m,f=(c|0)>0,f)Q=0,_=0;else return 0;for(;;)if(E=a+(Q<<2)|0,I=e[E>>2]|0,C=(I|0)==0,C?x=_:(p=o+(Q<<2)|0,B=e[p>>2]|0,v=_+1|0,S=o+(_<<2)|0,e[S>>2]=B,x=v),w=Q+1|0,D=(w|0)==(c|0),D){R=x;break}else Q=w,_=x;return y=(R|0)==0,y||hQ(t,n,o,R,2),0}function FS(t,n,o,a,c,f,E,I){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0,I=I|0;var C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0;if(N=m,C=(f|0)>0,C)R=0,L=0;else return 0;for(;;)if(p=c+(R<<2)|0,B=e[p>>2]|0,v=(B|0)==0,v?M=L:(S=a+(R<<2)|0,w=e[S>>2]|0,y=L+1|0,D=a+(L<<2)|0,e[D>>2]=w,M=y),Q=R+1|0,x=(Q|0)==(f|0),x){T=M;break}else R=Q,L=M;return _=(T|0)==0,_||fQ(t,o,a,T,E),0}function LS(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0;if(B1=m,I=(c|0)>0,I)i1=0,h1=0;else return f=0,f|0;for(;;)if(C=a+(i1<<2)|0,R=e[C>>2]|0,W=(R|0)==0,W?E1=h1:(r0=o+(i1<<2)|0,y0=e[r0>>2]|0,M0=h1+1|0,q0=o+(h1<<2)|0,e[q0>>2]=y0,E1=M0),H0=i1+1|0,U0=(H0|0)==(c|0),U0){u1=E1;break}else i1=H0,h1=E1;if(N0=(u1|0)==0,N0)return f=0,f|0;if(p=e[n>>2]|0,B=p+8|0,v=e[B>>2]|0,S=p+12|0,w=e[S>>2]|0,y=p+4|0,D=e[y>>2]|0,Q=e[p>>2]|0,_=D-Q|0,x=(_|0)/(v|0)&-1,L=u1<<2,M=O7(t,L)|0,T=+(v|0),G=100/T,N=G,P=(u1|0)>0,P)for(z=x<<2,c1=0;H=O7(t,z)|0,X=M+(c1<<2)|0,e[X>>2]=H,Ae(H|0,0,z|0)|0,U=c1+1|0,v0=(U|0)==(u1|0),!v0;)c1=U;if(Y=(x|0)>0,Y)for(t0=(v|0)>0,J=w+-1|0,e0=(w|0)>1,$1=0;;){if(o0=i5($1,v)|0,Z=e[p>>2]|0,V=Z+o0|0,P)for(g1=0;;){if(t0)for(A0=o+(g1<<2)|0,n0=e[A0>>2]|0,T0=0,l1=0,A1=0;;)if(i0=V+l1|0,K=n0+(i0<<2)|0,c0=e[K>>2]|0,f1=(c0|0)>-1,z0=0-c0|0,s0=f1?c0:z0,l0=(s0|0)>(A1|0),E=l0?s0:A1,j=s0+T0|0,a0=l1+1|0,r1=(a0|0)==(v|0),r1){V0=j,n1=E;break}else T0=j,l1=a0,A1=E;else V0=0,n1=0;g0=+(V0|0),f0=g0*N,Q0=~~f0;e:do if(e0)for(a1=0;;){if(d0=(p+2328|0)+(a1<<2)|0,h0=e[d0>>2]|0,E0=(n1|0)>(h0|0),!E0&&(C0=(p+2584|0)+(a1<<2)|0,u0=e[C0>>2]|0,k0=(u0|0)<0,J0=(Q0|0)<(u0|0),I1=k0|J0,I1)){s1=a1;break e}if(D0=a1+1|0,B0=(D0|0)<(J|0),B0)a1=D0;else{s1=D0;break}}else s1=0;while(!1);if(x0=M+(g1<<2)|0,F0=e[x0>>2]|0,G0=F0+($1<<2)|0,e[G0>>2]=s1,p0=g1+1|0,O0=(p0|0)==(u1|0),O0)break;g1=p0}if(P0=$1+1|0,e1=(P0|0)==(x|0),e1)break;$1=P0}return R0=n+40|0,S0=e[R0>>2]|0,L0=S0+1|0,e[R0>>2]=L0,f=M,f|0}function MS(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0;if(M=m,f=(c|0)>0,f)Q=0,_=0;else return 0;for(;;)if(E=a+(Q<<2)|0,I=e[E>>2]|0,C=(I|0)==0,C?x=_:(p=o+(Q<<2)|0,B=e[p>>2]|0,v=_+1|0,S=o+(_<<2)|0,e[S>>2]=B,x=v),w=Q+1|0,D=(w|0)==(c|0),D){R=x;break}else Q=w,_=x;return y=(R|0)==0,y||hQ(t,n,o,R,3),0}function TS(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0;if(z0=m,C=(c|0)>0,C)L0=0,n1=0;else return f=0,f|0;for(;;)if(p=a+(L0<<2)|0,L=e[p>>2]|0,g1=(L|0)!=0,e0=g1&1,s1=e0+n1|0,K=L0+1|0,P0=(K|0)==(c|0),P0){a1=s1;break}else L0=K,n1=s1;if(l1=(a1|0)==0,l1)return f=0,f|0;if(h0=e[n>>2]|0,J0=h0+8|0,D0=e[J0>>2]|0,B0=h0+12|0,x0=e[B0>>2]|0,B=h0+4|0,v=e[B>>2]|0,S=e[h0>>2]|0,w=v-S|0,y=(w|0)/(D0|0)&-1,D=O7(t,4)|0,Q=y<<2,_=O7(t,Q)|0,e[D>>2]=_,Ae(_|0,0,Q|0)|0,x=(y|0)>0,x)for(R=e[h0>>2]|0,M=(R|0)/(c|0)&-1,T=(D0|0)>0,G=x0+-1|0,N=(x0|0)>1,P=e[D>>2]|0,z=(c|0)>1,q0=0,O0=M;;){if(T)for(Y=e[o>>2]|0,M0=0,V0=0,v0=O0,c1=0;;){if(t0=Y+(v0<<2)|0,J=e[t0>>2]|0,H0=(J|0)>-1,$1=0-J|0,W=H0?J:$1,H=(W|0)>(c1|0),I=H?W:c1,z)for(p0=M0,r1=1;;)if(X=o+(r1<<2)|0,U=e[X>>2]|0,o0=U+(v0<<2)|0,Z=e[o0>>2]|0,N0=(Z|0)>-1,f1=0-Z|0,V=N0?Z:f1,A0=(V|0)>(p0|0),E=A0?V:p0,n0=r1+1|0,R0=(n0|0)==(c|0),R0){G0=E;break}else p0=E,r1=n0;else G0=M0;if(i0=v0+1|0,r0=V0+c|0,c0=(r0|0)<(D0|0),c0)M0=G0,V0=r0,v0=i0,c1=I;else{F0=G0,e1=i0,i1=I;break}}else F0=0,e1=O0,i1=0;e:do if(N)for(U0=0;;){if(s0=(h0+2328|0)+(U0<<2)|0,l0=e[s0>>2]|0,j=(i1|0)>(l0|0),!j&&(a0=(h0+2584|0)+(U0<<2)|0,g0=e[a0>>2]|0,f0=(F0|0)>(g0|0),!f0)){T0=U0;break e}if(Q0=U0+1|0,d0=(Q0|0)<(G|0),d0)U0=Q0;else{T0=Q0;break}}else T0=0;while(!1);if(y0=P+(q0<<2)|0,e[y0>>2]=T0,E0=q0+1|0,S0=(E0|0)==(y|0),S0)break;q0=E0,O0=e1}return C0=n+40|0,u0=e[C0>>2]|0,k0=u0+1|0,e[C0>>2]=k0,f=D,f|0}function GS(t,n,o,a,c,f,E,I){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0,I=I|0;var C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0;if(n0=m,m=m+16|0,V=n0,C=n+36|0,p=e[C>>2]|0,L=(p|0)/2&-1,M=f<<2,T=i5(M,L)|0,G=O7(n,T)|0,e[V>>2]=G,N=(f|0)>0,!N)return m=n0,0;for(P=(p|0)>1,J=0,Z=0;;){if(z=a+(J<<2)|0,Y=e[z>>2]|0,B=c+(J<<2)|0,v=e[B>>2]|0,H=(v|0)!=0,S=H&1,U=S+Z|0,P)for(W=0,e0=J;w=Y+(W<<2)|0,y=e[w>>2]|0,D=G+(e0<<2)|0,e[D>>2]=y,Q=W+1|0,_=e0+f|0,x=(Q|0)<(L|0),x;)W=Q,e0=_;if(R=J+1|0,t0=(R|0)==(f|0),t0){o0=U;break}else J=R,Z=U}return X=(o0|0)==0,X?(m=n0,0):(fQ(t,o,V,1,E),m=n0,0)}function NS(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0;if(Q1=m,I=e[n>>2]|0,C=I+8|0,R=e[C>>2]|0,W=n+16|0,r0=e[W>>2]|0,y0=e[r0>>2]|0,M0=t+36|0,T0=e[M0>>2]|0,l1=i5(T0,c)|0,s1=l1>>1,p=I+4|0,B=e[p>>2]|0,v=(B|0)<(s1|0),f=v?B:s1,S=e[I>>2]|0,w=f-S|0,y=(w|0)>0,!y)return 0;D=(w|0)/(R|0)&-1,Q=y0+-1|0,_=Q+D|0,x=(_|0)/(y0|0)&-1,L=x<<2,M=O7(t,L)|0,T=(c|0)>0;e:do if(T)for(n1=0;;){if(G=a+(n1<<2)|0,N=e[G>>2]|0,P=(N|0)==0,!P){a1=n1;break e}if(z=n1+1|0,Y=(z|0)<(c|0),Y)n1=z;else{a1=z;break}}else a1=0;while(!1);if(t0=(a1|0)==(c|0),t0||(J=n+8|0,e0=e[J>>2]|0,H=(e0|0)>0,!H))return 0;X=(D|0)>0,U=t+4|0,o0=I+16|0,Z=n+28|0,V=(y0|0)>0,A0=n+20|0,g1=e0,B1=0;e:for(;;){if(X){for(n0=(B1|0)==0,i0=1<>2]|0,c0=JC(K,U)|0,s0=(c0|0)==-1,s0){p1=23;break e}if(l0=e[o0>>2]|0,j=(c0|0)<(l0|0),!j){p1=23;break e}if(a0=e[Z>>2]|0,g0=a0+(c0<<2)|0,f0=e[g0>>2]|0,Q0=M+(E1<<2)|0,e[Q0>>2]=f0,d0=(f0|0)==0,d0){p1=23;break e}}if(h0=(A1|0)<(D|0),d1=V&h0,d1)for(E0=M+(E1<<2)|0,I1=A1,h1=0;;){if(C0=e[E0>>2]|0,u0=C0+(h1<<2)|0,k0=e[u0>>2]|0,J0=(I+24|0)+(k0<<2)|0,D0=e[J0>>2]|0,B0=D0&i0,x0=(B0|0)==0,!x0&&(F0=e[A0>>2]|0,G0=F0+(k0<<2)|0,p0=e[G0>>2]|0,P0=p0+(B1<<2)|0,R0=e[P0>>2]|0,S0=(R0|0)==0,!S0&&(L0=i5(I1,R)|0,q0=e[I>>2]|0,H0=q0+L0|0,N0=Yv(R0,o,H0,c,U,R)|0,V0=(N0|0)==-1,V0))){p1=23;break e}if(U0=h1+1|0,r1=I1+1|0,O0=(U0|0)<(y0|0),e1=(r1|0)<(D|0),u1=O0&e1,u1)I1=r1,h1=U0;else{z0=r1;break}}else z0=A1;if(v0=E1+1|0,i1=(z0|0)<(D|0),i1)A1=z0,E1=v0;else break}E=e[J>>2]|0,f1=E}else f1=g1;if(c1=B1+1|0,$1=(c1|0)<(f1|0),$1)g1=f1,B1=c1;else{p1=23;break}}return(p1|0)==23,0}function hQ(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0;if(j1=m,p=e[n>>2]|0,B=p+8|0,M=e[B>>2]|0,H=n+16|0,c0=e[H>>2]|0,E0=e[c0>>2]|0,p0=t+36|0,r1=e[p0>>2]|0,a1=r1>>1,Q1=p+4|0,v=e[Q1>>2]|0,S=(v|0)<(a1|0),f=S?v:a1,w=e[p>>2]|0,y=f-w|0,D=(y|0)>0,!D){m=j1;return}if(Q=(y|0)/(M|0)&-1,_=a<<2,E=_,x=m,m=m+((1*E|0)+15&-16)|0,R=(a|0)>0,R)for(L=E0+-1|0,T=L+Q|0,G=(T|0)/(E0|0)&-1,N=G<<2,N1=0;o0=O7(t,N)|0,Z=x+(N1<<2)|0,e[Z>>2]=o0,V=N1+1|0,_1=(V|0)==(a|0),!_1;)N1=V;if(P=n+8|0,z=e[P>>2]|0,Y=(z|0)>0,!Y){m=j1;return}t0=(Q|0)>0,J=t+4|0,W=p+16|0,e0=n+28|0,X=(E0|0)>0,U=n+20|0,C=R^1,q1=0;e:for(;;){if(t0)for(A0=1<>2]|0,O0=JC(U0,J)|0,e1=(O0|0)==-1,e1){Y1=25;break e}if(v0=e[W>>2]|0,i1=(O0|0)<(v0|0),!i1){Y1=25;break e}if(c1=e[e0>>2]|0,$1=c1+(O0<<2)|0,f1=e[$1>>2]|0,g1=x+(w1<<2)|0,l1=e[g1>>2]|0,s1=l1+(v1<<2)|0,e[s1>>2]=f1,n1=(f1|0)==0,V0=w1+1|0,n1){Y1=25;break e}if(T0=(V0|0)<(a|0),T0)w1=V0;else break}n0=(y1|0)<(Q|0),H1=X&n0;t:do if(H1){if(R)L1=y1,G1=0;else for(x1=y1,Z1=0;;)if(A1=Z1+1|0,z0=x1+1|0,I1=(A1|0)<(E0|0),h1=(z0|0)<(Q|0),K1=I1&h1,K1)x1=z0,Z1=A1;else{k1=z0;break t}for(;;){for(a0=i5(L1,M)|0,U1=0;;){if(l0=e[p>>2]|0,j=l0+a0|0,g0=x+(U1<<2)|0,f0=e[g0>>2]|0,Q0=f0+(v1<<2)|0,d0=e[Q0>>2]|0,y0=d0+(G1<<2)|0,h0=e[y0>>2]|0,C0=(p+24|0)+(h0<<2)|0,u0=e[C0>>2]|0,k0=u0&A0,J0=(k0|0)==0,!J0&&(D0=e[U>>2]|0,B0=D0+(h0<<2)|0,x0=e[B0>>2]|0,F0=x0+(q1<<2)|0,M0=e[F0>>2]|0,G0=(M0|0)==0,!G0&&(P0=o+(U1<<2)|0,R0=e[P0>>2]|0,S0=R0+(j<<2)|0,L0=cB[c&3](M0,S0,J,M)|0,q0=(L0|0)==-1,q0))){Y1=25;break e}if(H0=U1+1|0,N0=(H0|0)<(a|0),N0)U1=H0;else break}if(i0=G1+1|0,r0=L1+1|0,K=(i0|0)<(E0|0),s0=(r0|0)<(Q|0),P1=K&s0,P1)L1=r0,G1=i0;else{k1=r0;break}}}else k1=y1;while(!1);if(E1=v1+1|0,u1=(k1|0)<(Q|0),u1)y1=k1,v1=E1;else break}if(d1=q1+1|0,B1=e[P>>2]|0,p1=(d1|0)<(B1|0),p1)q1=d1;else{Y1=25;break}}if((Y1|0)==25){m=j1;return}}function fQ(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,Z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,m6=0,z3=0,a6=0,B6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,A3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0;if(I6=m,m=m+1088|0,r3=I6+1056|0,L5=I6+1024|0,O6=I6+512|0,A3=I6,Q=e[n>>2]|0,_=Q+8|0,a2=e[_>>2]|0,q2=Q+12|0,z2=e[q2>>2]|0,C5=n+16|0,M1=e[C5>>2]|0,h5=e[M1>>2]|0,g3=Q+4|0,M3=e[g3>>2]|0,x=e[Q>>2]|0,J=M3-x|0,i0=(J|0)/(a2|0)&-1,Ae(O6|0,0,512)|0,Ae(A3|0,0,512)|0,d0=n+8|0,F0=e[d0>>2]|0,V0=(F0|0)>0,!V0){m=I6;return}for(g1=(i0|0)>0,d1=(a|0)>0,w1=(h5|0)>1,r2=n+36|0,t2=(h5|0)>0,S2=n+20|0,w2=n+32|0,C2=0-h5|0,y2=F0,r6=0;;){if(g1){for(M2=(r6|0)==0,_2=1<>2]|0,G5=S5+(Z5<<2)|0,D5=e[G5>>2]|0,H2=e[C5>>2]|0,I5=H2+4|0,A5=e[I5>>2]|0,l5=(D5|0)<(A5|0),l5&&(m5=Rh(H2,D5,t)|0,k5=e[r2>>2]|0,c5=k5+m5|0,e[r2>>2]=c5),o5=C6+1|0,t6=(o5|0)==(a|0),t6)break e;C6=o5}for(;;){for(k2=c+(v3<<2)|0,f5=e[k2>>2]|0,E5=f5+(Z5<<2)|0,r5=e[E5>>2]|0,f6=1,e6=r5;;)if(j2=i5(e6,z2)|0,R5=f6+Z5|0,X2=(R5|0)<(i0|0),X2?(v5=f5+(R5<<2)|0,w5=e[v5>>2]|0,O5=w5+j2|0,p6=O5):p6=j2,$5=f6+1|0,w3=($5|0)==(h5|0),w3){R6=p6;break}else f6=$5,e6=p6;if(K2=e[C5>>2]|0,N2=K2+4|0,T2=e[N2>>2]|0,O2=(R6|0)<(T2|0),O2&&(V2=Rh(K2,R6,t)|0,s5=e[r2>>2]|0,P2=s5+V2|0,e[r2>>2]=P2),T1=v3+1|0,p3=(T1|0)==(a|0),p3)break;v3=T1}}while(!1);if(x2=(Z5|0)<(i0|0),v6=t2&x2,v6){for(R2=Z5-i0|0,m2=R2>>>0>>0,T6=m2?C2:R2,x5=0-T6|0,o6=Z5,O3=0;;){if(Z2=i5(o6,a2)|0,c2=e[Q>>2]|0,B5=c2+Z2|0,d1)for(W3=0;;){if(e5=c+(W3<<2)|0,n5=e[e5>>2]|0,g5=n5+(o6<<2)|0,J2=e[g5>>2]|0,M2&&(t5=A3+(J2<<2)|0,b5=e[t5>>2]|0,W2=b5+a2|0,e[t5>>2]=W2),a5=(Q+24|0)+(J2<<2)|0,F2=e[a5>>2]|0,p5=F2&_2,q5=(p5|0)==0,!q5&&(e3=e[S2>>2]|0,d5=e3+(J2<<2)|0,f3=e[d5>>2]|0,V5=f3+(r6<<2)|0,t3=e[V5>>2]|0,s3=(t3|0)==0,!s3)){if(E3=o+(W3<<2)|0,F5=e[E3>>2]|0,z5=e[t3>>2]|0,y3=(a2|0)/(z5|0)&-1,h3=(y3|0)>0,h3){for(m3=t3+48|0,q3=t3+52|0,W5=t3+44|0,Q3=t3+12|0,X5=t3+4|0,R=z5,y5=0,c3=0;;){j3=i5(c3,z5)|0,S=j3+B5|0,_3=F5+(S<<2)|0,T3=e[m3>>2]|0,a3=e[q3>>2]|0,$3=e[W5>>2]|0,l3=$3>>1,e[r3>>2]=0,e[r3+4>>2]=0,e[r3+8>>2]=0,e[r3+12>>2]=0,e[r3+16>>2]=0,e[r3+20>>2]=0,e[r3+24>>2]=0,e[r3+28>>2]=0,C3=(a3|0)==1,L=(R|0)>0;do if(C3){if(!L){z3=0;break}for(N=$3+-1|0,u3=0,m6=0,P3=R;;)if(f0=P3+-1|0,D=S+f0|0,Q0=F5+(D<<2)|0,y0=e[Q0>>2]|0,h0=y0-T3|0,E0=(h0|0)<(l3|0),E0?(C0=l3-h0|0,u0=C0<<1,k0=u0+-1|0,x0=k0):(J0=h0-l3|0,D0=J0<<1,x0=D0),B0=i5(m6,$3)|0,M0=(x0|0)<0,G0=(x0|0)>=($3|0),p0=G0?N:x0,P0=M0?0:p0,R0=P0+B0|0,S0=r3+(f0<<2)|0,e[S0>>2]=y0,L0=u3+1|0,V3=(L0|0)==(R|0),V3){z3=R0;break}else u3=L0,m6=R0,P3=f0}else{if(!L){z3=0;break}for(M=a3>>1,T=M-T3|0,G=$3+-1|0,k3=0,k6=0,S3=R;;)if(P=S3+-1|0,y=S+P|0,z=F5+(y<<2)|0,Y=e[z>>2]|0,t0=T+Y|0,W=(t0|0)/(a3|0)&-1,e0=(W|0)<(l3|0),e0?(H=l3-W|0,X=H<<1,U=X+-1|0,A0=U):(o0=W-l3|0,Z=o0<<1,A0=Z),V=i5(k6,$3)|0,n0=(A0|0)<0,r0=(A0|0)>=($3|0),K=r0?G:A0,c0=n0?0:K,s0=c0+V|0,l0=i5(W,a3)|0,j=l0+T3|0,a0=r3+(P<<2)|0,e[a0>>2]=j,g0=k3+1|0,N3=(g0|0)==(R|0),N3){z3=s0;break}else k3=g0,k6=s0,S3=P}while(!1);q0=e[Q3>>2]|0,H0=q0+8|0,N0=e[H0>>2]|0,T0=N0+z3|0,U0=u[T0>>0]|0,r1=U0<<24>>24<1;do if(r1){if(e[L5>>2]=0,e[L5+4>>2]=0,e[L5+8>>2]=0,e[L5+12>>2]=0,e[L5+16>>2]=0,e[L5+20>>2]=0,e[L5+24>>2]=0,e[L5+28>>2]=0,O0=$3+-1|0,e1=i5(O0,a3)|0,v0=e1+T3|0,i1=e[X5>>2]|0,c1=(i1|0)>0,c1)Y5=-1,y6=0,a6=z3;else{_6=z3;break}for(;;){$1=N0+y6|0,f1=u[$1>>0]|0,l1=f1<<24>>24>0;do if(l1){if(L)for(Y6=0,D3=0;;)if(s1=L5+(Y6<<2)|0,a1=e[s1>>2]|0,w=S+Y6|0,n1=F5+(w<<2)|0,A1=e[n1>>2]|0,z0=a1-A1|0,I1=i5(z0,z0)|0,h1=I1+D3|0,E1=Y6+1|0,X3=(E1|0)==(R|0),X3){u6=h1;break}else Y6=E1,D3=h1;else u6=0;if(u1=(Y5|0)==-1,B1=(u6|0)<(Y5|0),Y3=u1|B1,!Y3){N5=Y5,B6=a6;break}e[r3>>2]=e[L5>>2]|0,e[r3+4>>2]=e[L5+4>>2]|0,e[r3+8>>2]=e[L5+8>>2]|0,e[r3+12>>2]=e[L5+12>>2]|0,e[r3+16>>2]=e[L5+16>>2]|0,e[r3+20>>2]=e[L5+20>>2]|0,e[r3+24>>2]=e[L5+24>>2]|0,e[r3+28>>2]=e[L5+28>>2]|0,N5=u6,B6=y6}else N5=Y5,B6=a6;while(!1);if(p1=e[L5>>2]|0,Q1=(p1|0)<(v0|0),Q1)E=L5,I=p1;else for(_1=L5,Z3=0;;)if(D1=Z3+1|0,e[_1>>2]=0,y1=L5+(D1<<2)|0,k1=e[y1>>2]|0,x1=(k1|0)<(v0|0),x1){E=y1,I=k1;break}else _1=y1,Z3=D1;if(L1=(I|0)>-1,L1?(N1=I+a3|0,e[E>>2]=N1,Z1=N1):Z1=I,U1=0-Z1|0,e[E>>2]=U1,G1=y6+1|0,i3=(G1|0)==(i1|0),i3){_6=B6;break}else Y5=N5,y6=G1,a6=B6}}else _6=z3;while(!1);if(v1=(_6|0)>-1,i6=L&v1,i6)for(f=_3,w6=0;K1=r3+(w6<<2)|0,P1=e[K1>>2]|0,H1=f+4|0,q1=e[f>>2]|0,Y1=q1-P1|0,e[f>>2]=Y1,j1=w6+1|0,o3=(j1|0)==(R|0),!o3;)f=H1,w6=j1;if(W1=Rh(t3,_6,t)|0,O1=W1+y5|0,l2=c3+1|0,R3=(l2|0)==(y3|0),R3){C=O1;break}p=e[t3>>2]|0,R=p,y5=O1,c3=l2}B=e[e5>>2]|0,d2=B,P5=C}else d2=n5,P5=0;z1=e[w2>>2]|0,h2=z1+P5|0,e[w2>>2]=h2,s2=d2+(o6<<2)|0,A2=e[s2>>2]|0,V1=O6+(A2<<2)|0,g2=e[V1>>2]|0,$2=g2+P5|0,e[V1>>2]=$2}if(i2=W3+1|0,h6=(i2|0)==(a|0),h6)break;W3=i2}if(o2=O3+1|0,X1=o6+1|0,B3=(o2|0)==(x5|0),B3)break;o6=X1,O3=o2}G2=Z5-T6|0,U3=G2}else U3=Z5;if(u2=(U3|0)<(i0|0),u2)Z5=U3;else break}v=e[d0>>2]|0,e2=v}else e2=y2;if(n2=r6+1|0,f2=(n2|0)<(e2|0),f2)y2=e2,r6=n2;else break}m=I6}function L7(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0;if(p=m,o=(t|0)==0,o)E=0;else for(n=t,I=0;;)if(a=n>>>1,c=I+1|0,f=(a|0)==0,f){E=c;break}else n=a,I=c;return E|0}function uQ(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0;g2=m,m=m+144|0,O1=g2,C=(o|0)!=0,p=C?o:n,L=p<<2,e0=k9(L)|0,Ae(O1|0,0,132)|0,K=(n|0)>0;do if(K){h0=O1+4|0,G0=(o|0)==0,U0=G0&1,p1=0,w1=0;e:for(;;){s1=t+w1|0,B1=u[s1>>0]|0,B=B1<<24>>24,v=B1<<24>>24>0;t:do if(v){if(S=O1+(B<<2)|0,w=e[S>>2]|0,y=B1<<24>>24>31,D=w>>>B,Q=(D|0)==0,l2=y|Q,!l2){V1=5;break e}_=e0+(p1<<2)|0,e[_>>2]=w,x=O1+(B<<2)|0,R=w&1,M=(R|0)==0;i:do if(M)for(H=w,X=x,K1=B;;){if(W=H+1|0,e[X>>2]=W,U=K1+-1|0,o0=(K1|0)>1,!o0)break i;if(f=O1+(U<<2)|0,I=e[f>>2]|0,Z=O1+(U<<2)|0,V=I&1,A0=(V|0)==0,A0)H=I,X=Z,K1=U;else{c=Z,v1=U,V1=8;break}}else c=x,v1=B,V1=8;while(!1);do if((V1|0)==8)if(V1=0,G=(v1|0)==1,G){N=e[h0>>2]|0,P=N+1|0,e[h0>>2]=P;break}else{z=v1+-1|0,Y=O1+(z<<2)|0,t0=e[Y>>2]|0,J=t0<<1,e[c>>2]=J;break}while(!1);if(Y1=B+1|0,T=(Y1|0)<33,T)for(x1=w,H1=B,j1=Y1;;){if(n0=O1+(j1<<2)|0,i0=e[n0>>2]|0,r0=i0>>>1,c0=(r0|0)==(x1|0),!c0){E=1;break t}if(s0=O1+(H1<<2)|0,l0=e[s0>>2]|0,j=l0<<1,e[n0>>2]=j,P1=j1+1|0,a0=(P1|0)<33,a0)q1=j1,x1=i0,j1=P1,H1=q1;else{E=1;break}}else E=1}else E=U0;while(!1);if(Q1=p1+E|0,g0=w1+1|0,f0=(g0|0)<(n|0),f0)p1=Q1,w1=g0;else{D1=Q1,V1=16;break}}if((V1|0)==5)return I2(e0),a=0,m=g2,a|0;if((V1|0)==16){if(z1=(D1|0)==1,!z1){U1=1,V1=27;break}if(Q0=O1+8|0,d0=e[Q0>>2]|0,y0=(d0|0)==2,y0)break;U1=1,V1=27;break}}else U1=1,V1=27;while(!1);e:do if((V1|0)==27){for(;V1=0,V0=O1+(U1<<2)|0,T0=e[V0>>2]|0,r1=32-U1|0,O0=-1>>>r1,e1=T0&O0,v0=(e1|0)==0,H0=U1+1|0,!!v0;)if(N0=(H0|0)<33,N0)U1=H0,V1=27;else break e;return I2(e0),a=0,m=g2,a|0}while(!1);if(!K)return a=e0,m=g2,a|0;if(C)y1=0,G1=0;else{for(_1=0,Z1=0;;){if(i1=t+Z1|0,c1=u[i1>>0]|0,$1=c1<<24>>24>0,$1)for(f1=e0+(_1<<2)|0,g1=e[f1>>2]|0,l1=c1<<24>>24,r2=0,d2=0;;)if(a1=d2<<1,n1=g1>>>r2,A1=n1&1,z0=A1|a1,I1=r2+1|0,h1=(I1|0)<(l1|0),h1)r2=I1,d2=z0;else{h2=z0;break}else h2=0;if(E1=_1+1|0,u1=e0+(_1<<2)|0,e[u1>>2]=h2,d1=Z1+1|0,L1=(d1|0)==(n|0),L1){a=e0;break}else _1=E1,Z1=d1}return m=g2,a|0}for(;;){if(E0=t+G1|0,C0=u[E0>>0]|0,u0=C0<<24>>24>0,u0)for(q0=e0+(y1<<2)|0,M0=e[q0>>2]|0,L0=C0<<24>>24,W1=0,A2=0;;)if(x0=A2<<1,F0=M0>>>W1,p0=F0&1,P0=p0|x0,R0=W1+1|0,S0=(R0|0)<(L0|0),S0)W1=R0,A2=P0;else{s2=P0;break}else s2=0;if(k0=C0<<24>>24==0,k0?k1=y1:(J0=y1+1|0,D0=e0+(y1<<2)|0,e[D0>>2]=s2,k1=J0),B0=G1+1|0,N1=(B0|0)==(n|0),N1){a=e0;break}else y1=k1,G1=B0}return m=g2,a|0}function US(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0;if(H=m,a=t+4|0,c=e[a>>2]|0,D=e[t>>2]|0,Q=(D|0)>0,!Q)for(;;);for(_=+(c|0),x=_,R=+(D|0),L=1/R,M=L,T=+Dh(+x,+M),f=+Yo(+T),E=~~f,Y=E;;){for(S=Y+1|0,G=1,N=1,P=0;;)if(B=i5(G,Y)|0,v=i5(N,S)|0,w=P+1|0,y=(w|0)<(D|0),y)G=B,N=v,P=w;else{n=B,o=v;break}if(I=(n|0)<=(c|0),C=(o|0)>(c|0),z=I&C,z){W=Y;break}p=(n|0)>(c|0),J=p?-1:1,t0=Y+J|0,Y=t0}return W|0}function OS(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0;if(q5=m,p=t+12|0,B=e[p>>2]|0,C=B+-1|0,t5=C>>>0<2,!t5)return f=0,f|0;if(O0=t+16|0,n1=e[O0>>2]|0,D1=n1&2097151,v1=+(D1|0),z1=n1>>>21,o2=z1&1023,G2=(n1|0)<0,j2=-v1,a=G2?j2:v1,v=o2+-788|0,T=+zC(a,v),X=T,s0=t+20|0,C0=e[s0>>2]|0,P0=C0&2097151,V0=+(P0|0),T0=C0>>>21,U0=T0&1023,r1=(C0|0)<0,e1=-V0,c=r1?e1:V0,v0=U0+-788|0,i1=+zC(c,v0),c1=i1,$1=e[t>>2]|0,f1=i5($1,n)|0,g1=t4(f1,4)|0,(B|0)==1){if(B1=t+4|0,p1=e[B1>>2]|0,Q1=($1|0)>0,!Q1)for(;;);for(_1=+(p1|0),y1=_1,k1=+($1|0),x1=1/k1,L1=x1,N1=+Dh(+y1,+L1),w1=+Yo(+N1),U1=~~w1,a5=U1;;){for(h2=a5+1|0,r5=1,x2=1,I5=0;;)if(O1=i5(r5,a5)|0,l2=i5(x2,h2)|0,s2=I5+1|0,u5=(s2|0)==($1|0),u5){E=O1,I=l2;break}else r5=O1,x2=l2,I5=s2;if(Z1=(E|0)<=(p1|0),G1=(I|0)>(p1|0),h5=G1&Z1,h5){F2=a5;break}W1=(E|0)>(p1|0),W2=W1?-1:1,b5=W2+a5|0,a5=b5}if(K1=(p1|0)>0,!K1)return f=g1,f|0;for(P1=(o|0)==0,H1=t+8|0,q1=t+32|0,Y1=c1,j1=X,r2=t+28|0,R2=0,M1=0;;){if(P1)if(a2=e[q1>>2]|0,t2=e[r2>>2]|0,$2=(t2|0)==0,i2=i5($1,R2)|0,$2)for(m5=1,Z2=0;;)if(v5=(M1|0)/(m5|0)&-1,z2=(v5|0)%(F2|0)&-1,f5=a2+(z2<<2)|0,w5=e[f5>>2]|0,O5=+(w5|0),H2=+Ji(+O5),$5=H2,k2=$5*Y1,E5=j1+k2,S=E5,w=i2+Z2|0,y=g1+(w<<2)|0,s[y>>2]=S,D=i5(m5,F2)|0,Q=Z2+1|0,_=(Q|0)<($1|0),_)m5=D,Z2=Q;else{p5=21;break}else for(A5=1,c5=0,e5=0;;)if(x=(M1|0)/(A5|0)&-1,R=(x|0)%(F2|0)&-1,L=a2+(R<<2)|0,M=e[L>>2]|0,G=+(M|0),G5=+Ji(+G),N=G5,P=N*Y1,z=e5,Y=z+j1,t0=Y+P,J=t0,W=i2+c5|0,e0=g1+(W<<2)|0,s[e0>>2]=J,H=i5(A5,F2)|0,U=c5+1|0,o0=(U|0)<($1|0),o0)A5=H,c5=U,e5=J;else{p5=21;break}else if(d2=e[H1>>2]|0,A2=d2+M1|0,V1=u[A2>>0]|0,g2=V1<<24>>24==0,g2)m2=R2;else for(X1=e[q1>>2]|0,n2=e[r2>>2]|0,f2=(n2|0)==0,e2=o+(R2<<2)|0,y2=e[e2>>2]|0,S2=i5(y2,$1)|0,l5=1,o5=0,n5=0;;)if(w2=(M1|0)/(l5|0)&-1,C2=(w2|0)%(F2|0)&-1,M2=X1+(C2<<2)|0,_2=e[M2>>2]|0,u2=+(_2|0),D5=+Ji(+u2),K2=D5,N2=K2*Y1,q2=n5,T2=q2+j1,O2=T2+N2,V2=O2,B5=f2?n5:V2,s5=S2+o5|0,P2=g1+(s5<<2)|0,s[P2>>2]=V2,T1=i5(l5,F2)|0,R5=o5+1|0,X2=(R5|0)<($1|0),X2)l5=T1,o5=R5,n5=B5;else{p5=21;break}if((p5|0)==21&&(p5=0,Z=R2+1|0,m2=Z),V=M1+1|0,A0=(V|0)<(p1|0),A0)R2=m2,M1=V;else{f=g1;break}}return f|0}else if((B|0)==2){if(l1=t+4|0,s1=e[l1>>2]|0,a1=(s1|0)>0,!a1)return f=g1,f|0;for(A1=(o|0)!=0,z0=t+8|0,I1=t+32|0,h1=c1,E1=X,u1=t+28|0,d1=($1|0)>0,C5=0,k5=0;;){if(A1?(n0=e[z0>>2]|0,i0=n0+k5|0,r0=u[i0>>0]|0,K=r0<<24>>24==0,K?x5=C5:p5=25):p5=25,(p5|0)==25){if(p5=0,d1)for(c0=e[I1>>2]|0,l0=e[u1>>2]|0,j=(l0|0)==0,a0=o+(C5<<2)|0,g0=i5($1,k5)|0,f0=i5($1,C5)|0,c2=0,J2=0;Q0=g0+c2|0,d0=c0+(Q0<<2)|0,y0=e[d0>>2]|0,h0=+(y0|0),S5=+Ji(+h0),E0=S5,u0=E0*h1,k0=J2,J0=k0+E1,D0=J0+u0,B0=D0,g5=j?J2:B0,A1?(x0=e[a0>>2]|0,F0=i5(x0,$1)|0,M0=F0+c2|0,G0=g1+(M0<<2)|0,s[G0>>2]=B0):(p0=f0+c2|0,R0=g1+(p0<<2)|0,s[R0>>2]=B0),S0=c2+1|0,L0=(S0|0)<($1|0),L0;)c2=S0,J2=g5;q0=C5+1|0,x5=q0}if(H0=k5+1|0,N0=(H0|0)<(s1|0),N0)C5=x5,k5=H0;else{f=g1;break}}return f|0}else return f=g1,f|0;return 0}function oB(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0;v=m,n=t+36|0,o=e[n>>2]|0,a=(o|0)==0,!a&&(c=t+32|0,f=e[c>>2]|0,E=(f|0)==0,E||I2(f),I=t+8|0,C=e[I>>2]|0,p=(C|0)==0,p||I2(C),I2(t))}function PS(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0;x=m,n=t+16|0,o=e[n>>2]|0,C=(o|0)==0,C||I2(o),p=t+20|0,B=e[p>>2]|0,v=(B|0)==0,v||I2(B),S=t+24|0,w=e[S>>2]|0,y=(w|0)==0,y||I2(w),D=t+28|0,a=e[D>>2]|0,c=(a|0)==0,c||I2(a),f=t+32|0,E=e[f>>2]|0,I=(E|0)==0,I||I2(E),Q=t,R=Q+56|0;do e[Q>>2]=0,Q=Q+4|0;while((Q|0)<(R|0))}function IQ(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0;T0=m,N0=t,U0=N0+56|0;do e[N0>>2]=0,N0=N0+4|0;while((N0|0)<(U0|0));if(E=t+12|0,e[E>>2]=n,I=n+4|0,x=e[I>>2]|0,J=t+4|0,e[J>>2]=x,i0=t+8|0,e[i0>>2]=x,d0=e[n>>2]|0,e[t>>2]=d0,k0=n+8|0,J0=e[k0>>2]|0,D0=uQ(J0,x,0)|0,B0=t+20|0,e[B0>>2]=D0,C=e[I>>2]|0,p=e[n>>2]|0,B=(p|0)>0,!B)for(;;);for(v=+(C|0),S=v,w=+(p|0),y=1/w,D=y,Q=+Dh(+S,+D),_=+Yo(+Q),R=~~_,q0=R;;){for(P=q0+1|0,x0=1,F0=1,G0=0;;)if(G=i5(x0,q0)|0,N=i5(F0,P)|0,z=G0+1|0,M0=(z|0)==(p|0),M0){c=G,f=N;break}else x0=G,F0=N,G0=z;if(L=(c|0)<=(C|0),M=(f|0)>(C|0),p0=M&L,p0){H0=q0;break}T=(c|0)>(C|0),L0=T?-1:1,S0=L0+q0|0,q0=S0}return Y=t+44|0,e[Y>>2]=H0,t0=n+16|0,W=e[t0>>2]|0,e0=W&2097151,H=+(e0|0),X=W>>>21,U=X&1023,o0=(W|0)<0,Z=-H,o=o0?Z:H,V=U+-788|0,A0=+zC(o,V),n0=A0,P0=+pQ(n0),r0=~~P0,K=t+48|0,e[K>>2]=r0,c0=n+20|0,s0=e[c0>>2]|0,l0=s0&2097151,j=+(l0|0),a0=s0>>>21,g0=a0&1023,f0=(s0|0)<0,Q0=-j,a=f0?Q0:j,y0=g0+-788|0,h0=+zC(a,y0),E0=h0,R0=+pQ(E0),C0=~~R0,u0=t+52|0,e[u0>>2]=C0,0}function HS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,Z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,m6=0,z3=0,a6=0,B6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,A3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0;F3=m,Q6=t,L6=Q6+56|0;do e[Q6>>2]=0,Q6=Q6+4|0;while((Q6|0)<(L6|0));if(S=n+4|0,w=e[S>>2]|0,d2=(w|0)>0,d2)for(H2=n+8|0,B5=e[H2>>2]|0,O3=0,R6=0;;)if(p5=B5+O3|0,z5=u[p5>>0]|0,T3=z5<<24>>24>0,t6=T3&1,C=t6+R6|0,Z5=O3+1|0,y=(Z5|0)<(w|0),y)O3=Z5,R6=C;else{a0=C;break}else a0=0;if(P=t+4|0,e[P>>2]=w,Z=t+8|0,e[Z>>2]=a0,J0=e[n>>2]|0,e[t>>2]=J0,L0=(a0|0)>0,!L0)return a=0,m=F3,a|0;if(i1=n+8|0,I1=e[i1>>2]|0,k1=uQ(I1,w,a0)|0,H1=a0<<2,f=H1,A2=m,m=m+((1*f|0)+15&-16)|0,e2=(k1|0)==0,e2){O2=t+16|0,V2=e[O2>>2]|0,s5=(V2|0)==0,s5||I2(V2),P2=t+20|0,T1=e[P2>>2]|0,j2=(T1|0)==0,j2||I2(T1),R5=t+24|0,X2=e[R5>>2]|0,v5=(X2|0)==0,v5||I2(X2),f5=t+28|0,w5=e[f5>>2]|0,O5=(w5|0)==0,O5||I2(w5),$5=t+32|0,k2=e[$5>>2]|0,E5=(k2|0)==0,E5||I2(k2),Q6=t,L6=Q6+56|0;do e[Q6>>2]=0,Q6=Q6+4|0;while((Q6|0)<(L6|0));return a=-1,m=F3,a|0}else S3=0;for(;q2=k1+(S3<<2)|0,z2=e[q2>>2]|0,C5=z2>>>16,x5=z2<<16,u5=C5|x5,S5=u5>>>8,G5=S5&16711935,D5=u5<<8,I5=D5&-16711936,A5=G5|I5,l5=A5>>>4,m5=l5&252645135,M1=A5<<4,k5=M1&-252645136,c5=m5|k5,o5=c5>>>2,Z2=o5&858993459,c2=c5<<2,e5=c2&-858993460,n5=Z2|e5,g5=n5>>>1,J2=g5&1431655765,h5=n5<<1,t5=h5&-1431655766,b5=J2|t5,e[q2>>2]=b5,W2=A2+(S3<<2)|0,e[W2>>2]=q2,a5=S3+1|0,Y6=(a5|0)==(a0|0),!Y6;)S3=a5;for(Fh(A2,a0,4,10),E=H1,F2=m,m=m+((1*E|0)+15&-16)|0,q5=k9(H1)|0,e3=t+20|0,e[e3>>2]=q5,d5=k1,P3=0;;)if(f3=A2+(P3<<2)|0,g3=e[f3>>2]|0,V5=g3,t3=V5-d5|0,s3=t3>>2,E3=F2+(s3<<2)|0,e[E3>>2]=P3,F5=P3+1|0,_6=(F5|0)==(a0|0),_6){Y3=0;break}else P3=F5;for(;y3=k1+(Y3<<2)|0,h3=e[y3>>2]|0,m3=F2+(Y3<<2)|0,q3=e[m3>>2]|0,M3=q5+(q3<<2)|0,e[M3>>2]=h3,W5=Y3+1|0,B6=(W5|0)==(a0|0),!B6;)Y3=W5;if(I2(k1),Q3=OS(n,a0,F2)|0,X5=t+16|0,e[X5>>2]=Q3,j3=k9(H1)|0,_3=t+24|0,e[_3>>2]=j3,a3=e[S>>2]|0,$3=(a3|0)>0,$3)for(p=e[i1>>2]|0,v6=0,I6=0;;)if(l3=p+v6|0,C3=u[l3>>0]|0,Y5=C3<<24>>24>0,Y5?(N5=I6+1|0,P5=F2+(I6<<2)|0,y5=e[P5>>2]|0,G3=j3+(y5<<2)|0,e[G3>>2]=v6,J6=N5):J6=I6,L5=v6+1|0,i3=(L5|0)<(a3|0),i3)v6=L5,I6=J6;else{K6=J6;break}else K6=0;if(o3=k9(K6)|0,R3=t+28|0,e[R3>>2]=o3,h6=t+40|0,e[h6>>2]=0,$3){for(B=e[i1>>2]|0,r5=0,w3=B,i6=0,Z6=0;;)if(B3=w3+i6|0,p3=u[B3>>0]|0,X3=p3<<24>>24>0,X3?(V3=Z6+1|0,N3=F2+(Z6<<2)|0,k3=e[N3>>2]|0,c3=e[R3>>2]|0,U3=c3+k3|0,u[U3>>0]=p3,o6=e[i1>>2]|0,u3=o6+i6|0,y6=u[u3>>0]|0,w6=y6<<24>>24,k6=e[h6>>2]|0,m6=(w6|0)>(k6|0),m6?(e[h6>>2]=w6,x2=w6,R2=o6,G6=V3):(x2=k6,R2=o6,G6=V3)):(x2=r5,R2=w3,G6=Z6),z3=i6+1|0,D=e[S>>2]|0,Q=(z3|0)<(D|0),Q)r5=x2,w3=R2,i6=z3,Z6=G6;else{I=x2,j6=G6;break}if(_=(j6|0)==1,_){if(x=(I|0)==1,x)return R=t+36|0,e[R>>2]=1,L=t4(2,4)|0,M=t+32|0,e[M>>2]=L,T=L+4|0,e[T>>2]=1,e[L>>2]=1,a=0,m=F3,a|0;x3=1}else x3=j6}else x3=0;if(G=e[Z>>2]|0,N=(G|0)==0,N)x6=-4;else{for(c=G,N6=0;;)if(z=c>>>1,Y=N6+1|0,t0=(z|0)==0,t0){S6=N6;break}else c=z,N6=Y;r9=S6+-3|0,x6=r9}if(J=t+36|0,W=(x6|0)<5,o=W?5:x6,e0=(o|0)>8,V6=e0?8:o,e[J>>2]=V6,H=1<>2]=X,o0=(x3|0)>0,o0)for(r0=V6,r3=0;;){if(V=e[R3>>2]|0,A0=V+r3|0,n0=u[A0>>0]|0,i0=n0<<24>>24,K=(r0|0)<(i0|0),K)m2=r0;else if(c0=e[e3>>2]|0,s0=c0+(r3<<2)|0,l0=e[s0>>2]|0,j=l0>>>16,g0=l0<<16,f0=j|g0,Q0=f0>>>8,d0=Q0&16711935,y0=f0<<8,h0=y0&-16711936,E0=d0|h0,C0=E0>>>4,u0=C0&252645135,k0=E0<<4,D0=k0&-252645136,B0=u0|D0,x0=B0>>>2,F0=x0&858993459,M0=B0<<2,G0=M0&-858993460,p0=F0|G0,P0=p0>>>1,R0=P0&1431655765,S0=p0<<1,q0=S0&-1431655766,H0=R0|q0,N0=r0-i0|0,V0=(N0|0)==31,V0)m2=r0;else for(T0=r3+1|0,r1=i0,A3=0;;)if(U0=A3<>2]=T0,v0=A3+1|0,c1=e[J>>2]|0,$1=u[A0>>0]|0,f1=$1<<24>>24,g1=c1-f1|0,l1=1<>>16,p1=d1<<16,Q1=B1|p1,D1=Q1>>>8,_1=D1&16711935,y1=Q1<<8,x1=y1&-16711936,L1=_1|x1,N1=L1>>>4,w1=N1&252645135,U1=L1<<4,Z1=U1&-252645136,G1=w1|Z1,v1=G1>>>2,K1=v1&858993459,P1=G1<<2,q1=P1&-858993460,Y1=K1|q1,j1=Y1>>>1,r2=j1&1431655765,W1=Y1<<1,O1=W1&-1431655766,l2=r2|O1,z1=X+(l2<<2)|0,h2=e[z1>>2]|0,s2=(h2|0)==0,s2){for(u6=r6;;){if(V1=u6+1|0,g2=(V1|0)<(x3|0),!g2){D3=u6;break}if(a2=e[e3>>2]|0,t2=a2+(V1<<2)|0,$2=e[t2>>2]|0,i2=$2>>>0>d1>>>0,i2){D3=u6;break}else u6=V1}o2=(x3|0)>(C6|0);e:do if(o2)for(X1=e[e3>>2]|0,Z3=C6;;){if(n2=X1+(Z3<<2)|0,f2=e[n2>>2]|0,y2=f2&z0,S2=d1>>>0>>0,S2){v3=Z3;break e}if(w2=Z3+1|0,C2=(x3|0)>(w2|0),C2)Z3=w2;else{v3=w2;break}}else v3=C6;while(!1);M2=x3-v3|0,_2=D3>>>0>32767,G2=M2>>>0>32767,f6=G2?32767:M2,T6=D3<<15,e6=T6|-2147483648,u2=_2?-1073774592:e6,K2=u2|f6,e[z1>>2]=K2,W3=v3,p6=D3}else W3=C6,p6=r6;if(N2=O6+1|0,T2=(N2|0)<(H|0),!T2){a=0;break}v=e[J>>2]|0,u1=v,C6=W3,O6=N2,r6=p6}return m=F3,a|0}function qS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0;return S=m,o=e[t>>2]|0,a=e[o>>2]|0,c=e[n>>2]|0,f=e[c>>2]|0,E=a>>>0>f>>>0,I=E&1,C=a>>>0>>0,p=C&1,B=I-p|0,B|0}function YS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0;if(J0=m,p=e[t>>2]|0,B=(p|0)==1,!B&&(M=t+4|0,H=e[M>>2]|0,i0=t+8|0,r0=e[i0>>2]|0,K=r0+4|0,c0=e[K>>2]|0,s0=(c0|0)>0,!!s0)){for(l0=c0+1|0,C=p+-1|0,f0=p,Q0=0,d0=p,h0=1;;){v=l0-Q0|0,S=r0+(v<<2)|0,w=e[S>>2]|0,y=(d0|0)/(w|0)&-1,D=(p|0)/(d0|0)&-1,Q=i5(D,y)|0,_=w+-1|0,x=i5(D,_)|0,R=f0-x|0,L=1-h0|0;do if((w|0)==2)if(Y=(L|0)==0,o=C+R|0,t0=H+(o<<2)|0,Y){mQ(D,y,n,H,t0),E0=0;break}else{mQ(D,y,H,n,t0),E0=L;break}else if((w|0)==4)if(T=R+D|0,G=(L|0)==0,a=C+R|0,N=H+(a<<2)|0,c=C+T|0,P=H+(c<<2)|0,f=C+D|0,E=f+T|0,z=H+(E<<2)|0,G){CQ(D,y,n,H,N,P,z),E0=0;break}else{CQ(D,y,H,n,N,P,z),E0=L;break}else if(J=(D|0)==1,y0=J?h0:L,W=(y0|0)==0,I=C+R|0,e0=H+(I<<2)|0,W){BQ(D,w,y,Q,n,n,n,H,H,e0),E0=1;break}else{BQ(D,w,y,Q,H,H,H,n,n,e0),E0=0;break}while(!1);if(X=Q0+1|0,a0=(X|0)==(c0|0),a0){C0=E0;break}else f0=R,Q0=X,d0=y,h0=E0}if(U=(C0|0)!=1,o0=(p|0)>0,u0=o0&U,u0)g0=0;else return;for(;Z=H+(g0<<2)|0,V=e[Z>>2]|0,A0=n+(g0<<2)|0,e[A0>>2]=V,n0=g0+1|0,j=(n0|0)==(p|0),!j;)g0=n0}}function dQ(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0;if(I1=m,e[t>>2]=n,E=n*3|0,I=t4(E,4)|0,x=t+4|0,e[x>>2]=I,J=t4(32,4)|0,i0=t+8|0,e[i0>>2]=J,d0=(n|0)==1,!d0){J0=J+8|0,O0=-1,$1=0,f1=n,l1=0;e:for(;;)for(D0=O0+1|0,B0=(D0|0)<4,B0?(x0=25768+(D0<<2)|0,C=e[x0>>2]|0,s1=C):(p=l1+2|0,s1=p),B=(s1|0)!=2,N0=$1,g1=f1;;){if(q0=N0+1|0,v=(g1|0)/(s1|0)&-1,S=i5(v,s1)|0,w=(g1|0)==(S|0),!w){O0=D0,$1=N0,f1=g1,l1=s1;continue e}if(y=N0+2|0,D=J+(y<<2)|0,e[D>>2]=s1,Q=(N0|0)==0,a1=B|Q,!a1){if(_=(N0|0)<1,!_)for(R0=1;R=q0-R0|0,L=R+1|0,M=J+(L<<2)|0,T=e[M>>2]|0,G=R+2|0,N=J+(G<<2)|0,e[N>>2]=T,P=R0+1|0,p0=(P|0)==(q0|0),!p0;)R0=P;e[J0>>2]=2}if(z=(v|0)==1,z){o=Q,H0=q0,V0=N0;break e}else N0=q0,g1=v}if(e[J>>2]=n,Y=J+4|0,e[Y>>2]=H0,t0=+(n|0),W=6.2831854820251465/t0,a=o^1,e0=(V0|0)>0,n1=e0&a,!!n1)for(H=n+1|0,T0=0,v0=0,i1=1;;){if(X=v0+2|0,U=J+(X<<2)|0,o0=e[U>>2]|0,Z=i5(o0,i1)|0,V=(n|0)/(Z|0)&-1,A0=(o0|0)>1,A0){for(n0=(V|0)>2,r0=o0+-1|0,r1=T0,e1=0,c1=0;;){if(K=c1+i1|0,c0=+(K|0),s0=c0*W,n0)for(P0=0,S0=r1,L0=2;l0=P0+1,j=s0*l0,F0=+Jo(+j),c=S0+n|0,a0=I+(c<<2)|0,s[a0>>2]=F0,A1=+Fn(+j),g0=S0+2|0,f=H+S0|0,f0=I+(f<<2)|0,s[f0>>2]=A1,Q0=L0+2|0,y0=(Q0|0)<(V|0),y0;)P0=l0,S0=g0,L0=Q0;if(h0=r1+V|0,E0=e1+1|0,M0=(E0|0)==(r0|0),M0)break;r1=h0,e1=E0,c1=K}C0=i5(V,r0)|0,u0=C0+T0|0,U0=u0}else U0=T0;if(k0=v0+1|0,G0=(k0|0)==(V0|0),G0)break;T0=U0,v0=k0,i1=Z}}}function EQ(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0;p=m,n=(t|0)==0,!n&&(o=t+4|0,a=e[o>>2]|0,c=(a|0)==0,c||I2(a),f=t+8|0,E=e[f>>2]|0,I=(E|0)==0,I||I2(E),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0)}function CQ(t,n,o,a,c,f,E){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0;var I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0;if(f3=m,I=i5(n,t)|0,C=I<<1,E1=(n|0)>0,E1)for(L1=I*3|0,Y1=t<<2,V1=Y1+-1|0,y2=t<<1,c2=0,n5=I,h5=L1,W2=0,a5=C;T2=o+(n5<<2)|0,f5=+s[T2>>2],x5=o+(h5<<2)|0,p=+s[x5>>2],L=p+f5,e0=o+(W2<<2)|0,K=+s[e0>>2],h0=o+(a5<<2)|0,G0=+s[h0>>2],U0=G0+K,s1=U0+L,I1=W2<<2,h1=a+(I1<<2)|0,s[h1>>2]=s1,u1=U0-L,d1=V1+I1|0,B1=a+(d1<<2)|0,s[B1>>2]=u1,p1=+s[e0>>2],Q1=+s[h0>>2],D1=p1-Q1,_1=I1+y2|0,y1=_1+-1|0,k1=a+(y1<<2)|0,s[k1>>2]=D1,x1=+s[x5>>2],N1=+s[T2>>2],w1=x1-N1,U1=a+(_1<<2)|0,s[U1>>2]=w1,Z1=n5+t|0,G1=h5+t|0,v1=W2+t|0,K1=a5+t|0,P1=c2+1|0,c5=(P1|0)==(n|0),!c5;)c2=P1,n5=Z1,h5=G1,W2=v1,a5=K1;if(H1=(t|0)<2,!H1){if(q1=(t|0)==2,!q1){if(E1)for(j1=t<<1,B5=0,g5=0;;){for(j=g5<<2,a0=j+j1|0,Z2=2,t5=g5,F2=j,q5=a0;O1=t5+2|0,l2=F2+2|0,z1=q5+-2|0,h2=O1+I|0,s2=Z2+-2|0,d2=c+(s2<<2)|0,A2=+s[d2>>2],g2=h2+-1|0,a2=o+(g2<<2)|0,t2=+s[a2>>2],$2=t2*A2,i2=Z2+-1|0,o2=c+(i2<<2)|0,X1=+s[o2>>2],n2=o+(h2<<2)|0,f2=+s[n2>>2],e2=f2*X1,S2=e2+$2,w2=f2*A2,C2=X1*t2,M2=w2-C2,_2=h2+I|0,G2=f+(s2<<2)|0,u2=+s[G2>>2],K2=_2+-1|0,N2=o+(K2<<2)|0,q2=+s[N2>>2],O2=q2*u2,V2=f+(i2<<2)|0,s5=+s[V2>>2],P2=o+(_2<<2)|0,T1=+s[P2>>2],j2=T1*s5,R5=j2+O2,X2=T1*u2,v5=s5*q2,z2=X2-v5,w5=_2+I|0,O5=E+(s2<<2)|0,$5=+s[O5>>2],k2=w5+-1|0,E5=o+(k2<<2)|0,r5=+s[E5>>2],x2=r5*$5,R2=E+(i2<<2)|0,m2=+s[R2>>2],C5=o+(w5<<2)|0,u5=+s[C5>>2],S5=u5*m2,G5=S5+x2,D5=u5*$5,H2=m2*r5,I5=D5-H2,A5=G5+S2,l5=G5-S2,m5=I5+M2,M1=M2-I5,B=o+(O1<<2)|0,v=+s[B>>2],S=v+z2,w=v-z2,y=t5+1|0,D=o+(y<<2)|0,Q=+s[D>>2],_=Q+R5,x=Q-R5,R=A5+_,M=F2|1,T=a+(M<<2)|0,s[T>>2]=R,G=m5+S,N=a+(l2<<2)|0,s[N>>2]=G,P=x-M1,z=q5+-3|0,Y=a+(z<<2)|0,s[Y>>2]=P,t0=l5-w,J=a+(z1<<2)|0,s[J>>2]=t0,W=M1+x,H=l2+j1|0,X=H+-1|0,U=a+(X<<2)|0,s[U>>2]=W,o0=l5+w,Z=a+(H<<2)|0,s[Z>>2]=o0,V=_-A5,A0=z1+j1|0,n0=A0+-1|0,i0=a+(n0<<2)|0,s[i0>>2]=V,r0=m5-S,c0=a+(A0<<2)|0,s[c0>>2]=r0,s0=Z2+2|0,l0=(s0|0)<(t|0),l0;)Z2=s0,t5=O1,F2=l2,q5=z1;if(r2=g5+t|0,W1=B5+1|0,o5=(W1|0)==(n|0),o5)break;B5=W1,g5=r2}if(g0=t&1,f0=(g0|0)==0,!f0)return}if(Q0=t+-1|0,d0=Q0+I|0,y0=t<<2,E0=t<<1,!!E1)for(C0=d0+C|0,e5=0,J2=d0,b5=C0,p5=t,e3=t;u0=o+(J2<<2)|0,k0=+s[u0>>2],J0=o+(b5<<2)|0,D0=+s[J0>>2],B0=D0+k0,x0=B0*-.7071067690849304,F0=k0-D0,M0=F0*.7071067690849304,p0=e3+-1|0,P0=o+(p0<<2)|0,R0=+s[P0>>2],S0=M0+R0,L0=p5+-1|0,q0=a+(L0<<2)|0,s[q0>>2]=S0,H0=+s[P0>>2],N0=H0-M0,V0=p5+E0|0,T0=V0+-1|0,r1=a+(T0<<2)|0,s[r1>>2]=N0,O0=J2+I|0,e1=o+(O0<<2)|0,v0=+s[e1>>2],i1=x0-v0,c1=a+(p5<<2)|0,s[c1>>2]=i1,$1=+s[e1>>2],f1=$1+x0,g1=a+(V0<<2)|0,s[g1>>2]=f1,l1=J2+t|0,a1=b5+t|0,n1=p5+y0|0,A1=e3+t|0,z0=e5+1|0,k5=(z0|0)==(n|0),!k5;)e5=z0,J2=l1,b5=a1,p5=n1,e3=A1}}function mQ(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0;if(w1=m,f=i5(n,t)|0,E=t<<1,_=(n|0)>0,_)for(t0=E+-1|0,I1=0,u1=0,p1=f;n0=o+(u1<<2)|0,Q0=+s[n0>>2],x0=o+(p1<<2)|0,N0=+s[x0>>2],f1=N0+Q0,s1=u1<<1,I=a+(s1<<2)|0,s[I>>2]=f1,C=+s[n0>>2],p=+s[x0>>2],B=C-p,v=t0+s1|0,S=a+(v<<2)|0,s[S>>2]=B,w=u1+t|0,y=p1+t|0,D=I1+1|0,n1=(D|0)==(n|0),!n1;)I1=D,u1=w,p1=y;if(Q=(t|0)<2,!Q){if(x=(t|0)==2,!x){if(_)for(h1=0,d1=0,Q1=f;;){for(P0=d1<<1,R0=P0+E|0,z0=2,_1=Q1,k1=R0,x1=d1,L1=P0;T=_1+2|0,G=k1+-2|0,N=x1+2|0,P=L1+2|0,z=z0+-2|0,Y=c+(z<<2)|0,J=+s[Y>>2],W=_1+1|0,e0=o+(W<<2)|0,H=+s[e0>>2],X=H*J,U=z0+-1|0,o0=c+(U<<2)|0,Z=+s[o0>>2],V=o+(T<<2)|0,A0=+s[V>>2],i0=A0*Z,r0=i0+X,K=A0*J,c0=Z*H,s0=K-c0,l0=o+(N<<2)|0,j=+s[l0>>2],a0=s0+j,g0=a+(P<<2)|0,s[g0>>2]=a0,f0=+s[l0>>2],d0=s0-f0,y0=a+(G<<2)|0,s[y0>>2]=d0,h0=x1+1|0,E0=o+(h0<<2)|0,C0=+s[E0>>2],u0=C0+r0,k0=L1|1,J0=a+(k0<<2)|0,s[J0>>2]=u0,D0=+s[E0>>2],B0=D0-r0,F0=k1+-3|0,M0=a+(F0<<2)|0,s[M0>>2]=B0,G0=z0+2|0,p0=(G0|0)<(t|0),p0;)z0=G0,_1=T,k1=G,x1=N,L1=P;if(R=d1+t|0,L=Q1+t|0,M=h1+1|0,A1=(M|0)==(n|0),A1)break;h1=M,d1=R,Q1=L}if(S0=(t|0)%2&-1,L0=(S0|0)==1,L0)return}if(q0=t+-1|0,!!_)for(H0=f+q0|0,E1=0,B1=t,D1=H0,y1=q0;V0=o+(D1<<2)|0,T0=+s[V0>>2],U0=-T0,r1=a+(B1<<2)|0,s[r1>>2]=U0,O0=o+(y1<<2)|0,e1=e[O0>>2]|0,v0=B1+-1|0,i1=a+(v0<<2)|0,e[i1>>2]=e1,c1=B1+E|0,$1=D1+t|0,g1=y1+t|0,l1=E1+1|0,a1=(l1|0)==(n|0),!a1;)E1=l1,B1=c1,D1=$1,y1=g1}}function BQ(t,n,o,a,c,f,E,I,C,p){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0,I=I|0,C=C|0,p=p|0;var B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,Z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,m6=0,z3=0,a6=0,B6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,A3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0,R4=0,T4=0,j4=0,d4=0,G4=0,G9=0,N4=0,s4=0,x4=0,c4=0,Ie=0,O9=0,d9=0,de=0,Me=0,ze=0,U4=0,Te=0,O4=0,X4=0,ke=0,Ze=0,V9=0,oe=0,g4=0,D6=0,P4=0,R9=0,A4=0,D4=0,ae=0,z9=0,$e=0,le=0,E4=0,ee=0,F4=0,ce=0,E9=0,$6=0,Ge=0,o4=0,Ee=0,C4=0,a4=0,U6=0,ve=0,Se=0,We=0,$4=0,Q4=0,g8=0,H3=0,Q9=0,C9=0,L4=0,te=0,a7=0,De=0,$7=0,Q7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,y7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ne=0,be=0,je=0,k8=0,y9=0,g7=0,Ce=0,h7=0,w7=0,j8=0,k7=0,ie=0,X8=0,P8=0,v8=0,Xe=0,H4=0,_e=0,e8=0,u8=0,S8=0,ge=0,Z9=0,t8=0,I8=0,i8=0,d8=0,he=0,me=0,Ue=0,Oe=0,W9=0,Re=0,fe=0,r8=0,Be=0,m4=0,E8=0,e7=0,q4=0,I3=0,Pe=0,C8=0,re=0,P9=0,ne=0,S9=0,He=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,s8=0,D8=0,Y4=0,n7=0,b8=0,qe=0,m9=0,s7=0,Ye=0,M7=0,P7=0,v7=0,A7=0,S7=0,se=0,T7=0,H7=0,A8=0,_8=0,D7=0,J8=0,xe=0,ue=0,j9=0,b7=0,tt=0,Mt=0,Tt=0,Gt=0,gt=0,q7=0,ht=0,Y7=0,ft=0,J7=0,ut=0,it=0,ii=0,Nt=0,It=0,dt=0,ri=0,Et=0,rt=0,ni=0,Ut=0,Ot=0,Pt=0,Ht=0,nt=0,Ct=0,qt=0,K7=0,st=0,G7=0,V7=0,si=0,Yt=0,Ai=0,mt=0,Jt=0,Bt=0,pt=0,Kt=0,Qt=0,z7=0,yt=0,Vt=0,At=0,N7=0,wt=0,pe=0,kt=0,_7=0,ot=0,i9=0,u7=0,m8=0;m8=m,S=+(n|0),w=6.2831854820251465/S,h8=+Jo(+w),M7=+Fn(+w),d2=n+1|0,B3=d2>>1,G9=t+-1|0,U4=G9>>1,R9=i5(o,t)|0,E9=i5(n,t)|0,$4=(t|0)==1;e:do if(!$4){if(Q7=(a|0)>0,Q7)for(Be=0;a0=E+(Be<<2)|0,J0=e[a0>>2]|0,L0=C+(Be<<2)|0,e[L0>>2]=J0,i1=Be+1|0,I8=(i1|0)==(a|0),!I8;)Be=i1;if(P=(n|0)>1,P)for(Z=(o|0)>0,C8=1,P7=0;;){if(I1=P7+R9|0,Z)for(r7=0,j9=I1;k1=f+(j9<<2)|0,H1=e[k1>>2]|0,A2=I+(j9<<2)|0,e[A2>>2]=H1,e2=j9+t|0,q2=r7+1|0,Z9=(q2|0)==(o|0),!Z9;)r7=q2,j9=e2;if(z2=C8+1|0,t8=(z2|0)==(n|0),t8)break;C8=z2,P7=I1}if(C5=0-t|0,M1=(U4|0)>(o|0),M1){if(P)for(M3=(o|0)>0,Y5=(t|0)>2,I3=C5,P9=1,S7=0;;){if(w3=S7+R9|0,y6=I3+t|0,M3)for(Z3=w3-t|0,A3=y6+-1|0,n8=0,b7=Z3;;){if(x3=b7+t|0,Y5)for(i8=2,fe=A3,ft=x3;F3=fe+2|0,d6=ft+2|0,I9=fe+1|0,j4=p+(I9<<2)|0,G4=+s[j4>>2],N4=ft+1|0,s4=f+(N4<<2)|0,x4=+s[s4>>2],c4=x4*G4,Ie=p+(F3<<2)|0,O9=+s[Ie>>2],d9=f+(d6<<2)|0,de=+s[d9>>2],Me=de*O9,ze=Me+c4,Te=I+(N4<<2)|0,s[Te>>2]=ze,O4=+s[j4>>2],X4=+s[d9>>2],ke=X4*O4,Ze=+s[Ie>>2],V9=+s[s4>>2],oe=V9*Ze,g4=ke-oe,D6=I+(d6<<2)|0,s[D6>>2]=g4,P4=i8+2|0,A4=(P4|0)<(t|0),A4;)i8=P4,fe=F3,ft=d6;if(D4=n8+1|0,e8=(D4|0)==(o|0),e8)break;n8=D4,b7=x3}if(ae=P9+1|0,u8=(ae|0)==(n|0),u8)break;I3=y6,P9=ae,S7=w3}}else if(P)for(h5=(t|0)>2,g3=(o|0)>0,Pe=C5,ne=1,T7=0;;){if(z9=Pe+t|0,$e=T7+R9|0,h5)for(le=z9+-1|0,d8=2,r8=le,tt=$e;;){if(E4=r8+2|0,ee=tt+2|0,g3)for(F4=r8+1|0,ce=p+(F4<<2)|0,$6=p+(E4<<2)|0,s8=0,J7=ee;Ge=+s[ce>>2],o4=J7+-1|0,Ee=f+(o4<<2)|0,C4=+s[Ee>>2],a4=C4*Ge,U6=+s[$6>>2],ve=f+(J7<<2)|0,Se=+s[ve>>2],We=Se*U6,Q4=We+a4,g8=I+(o4<<2)|0,s[g8>>2]=Q4,H3=+s[ce>>2],Q9=+s[ve>>2],C9=Q9*H3,L4=+s[$6>>2],te=+s[Ee>>2],a7=te*L4,De=C9-a7,$7=I+(J7<<2)|0,s[$7>>2]=De,K8=J7+t|0,l7=s8+1|0,S8=(l7|0)==(o|0),!S8;)s8=l7,J7=K8;if(c7=d8+2|0,x8=(c7|0)<(t|0),x8)d8=c7,r8=E4,tt=ee;else break}if(F8=ne+1|0,ge=(F8|0)==(n|0),ge)break;Pe=z9,ne=F8,T7=$e}if(L8=i5(R9,n)|0,M8=(U4|0)<(o|0),V8=(B3|0)>1,!M8){if(!V8)break;for(z8=(o|0)>0,y7=(t|0)>2,He=1,A8=0,Tt=L8;;){if(E0=A8+R9|0,C0=Tt-R9|0,z8)for(Y4=0,it=E0,rt=C0;;){if(y7)for(me=2,K7=it,mt=rt;u0=K7+2|0,k0=mt+2|0,D0=K7+1|0,B0=I+(D0<<2)|0,x0=+s[B0>>2],F0=mt+1|0,M0=I+(F0<<2)|0,G0=+s[M0>>2],p0=G0+x0,P0=f+(D0<<2)|0,s[P0>>2]=p0,R0=I+(u0<<2)|0,S0=+s[R0>>2],q0=I+(k0<<2)|0,H0=+s[q0>>2],N0=S0-H0,V0=f+(F0<<2)|0,s[V0>>2]=N0,T0=+s[R0>>2],U0=+s[q0>>2],r1=U0+T0,O0=f+(u0<<2)|0,s[O0>>2]=r1,e1=+s[M0>>2],v0=+s[B0>>2],c1=e1-v0,$1=f+(k0<<2)|0,s[$1>>2]=c1,f1=me+2|0,g1=(f1|0)<(t|0),g1;)me=f1,K7=u0,mt=k0;if(l1=it+t|0,s1=rt+t|0,a1=Y4+1|0,H4=(a1|0)==(o|0),H4)break;Y4=a1,it=l1,rt=s1}if(n1=He+1|0,_e=(n1|0)==(B3|0),_e)break e;He=n1,A8=E0,Tt=C0}}if(V8)for(D=(t|0)>2,Q=(o|0)>0,S9=1,H7=0,Mt=L8;;){if(_=H7+R9|0,x=Mt-R9|0,D)for(he=2,ut=_,Et=x;;){if(R=ut+2|0,L=Et+2|0,Q)for(M=L-t|0,T=R-t|0,D8=0,qt=T,Ai=M;G=qt+t|0,N=Ai+t|0,z=G+-1|0,Y=I+(z<<2)|0,t0=+s[Y>>2],J=N+-1|0,W=I+(J<<2)|0,e0=+s[W>>2],H=e0+t0,X=f+(z<<2)|0,s[X>>2]=H,U=I+(G<<2)|0,o0=+s[U>>2],V=I+(N<<2)|0,A0=+s[V>>2],n0=o0-A0,i0=f+(J<<2)|0,s[i0>>2]=n0,r0=+s[U>>2],K=+s[V>>2],c0=K+r0,s0=f+(G<<2)|0,s[s0>>2]=c0,l0=+s[W>>2],j=+s[Y>>2],g0=l0-j,f0=f+(N<<2)|0,s[f0>>2]=g0,Q0=D8+1|0,v8=(Q0|0)==(o|0),!v8;)D8=Q0,qt=G,Ai=N;if(d0=he+2|0,y0=(d0|0)<(t|0),y0)he=d0,ut=R,Et=L;else break}if(h0=S9+1|0,Xe=(h0|0)==(B3|0),Xe)break;S9=h0,H7=_,Mt=x}}while(!1);if(y=(a|0)>0,y)for(m4=0;A1=C+(m4<<2)|0,z0=e[A1>>2]|0,h1=E+(m4<<2)|0,e[h1>>2]=z0,E1=m4+1|0,P8=(E1|0)==(a|0),!P8;)m4=E1;if(u1=i5(a,n)|0,d1=(B3|0)>1,d1){for(B1=(o|0)>0,H8=1,_8=0,Gt=u1;;){if(p1=_8+R9|0,Q1=Gt-R9|0,B1)for(D1=Q1-t|0,_1=p1-t|0,n7=0,ii=_1,ni=D1;y1=ii+t|0,x1=ni+t|0,L1=I+(y1<<2)|0,N1=+s[L1>>2],w1=I+(x1<<2)|0,U1=+s[w1>>2],Z1=U1+N1,G1=f+(y1<<2)|0,s[G1>>2]=Z1,v1=+s[w1>>2],K1=+s[L1>>2],P1=v1-K1,q1=f+(x1<<2)|0,s[q1>>2]=P1,Y1=n7+1|0,ie=(Y1|0)==(o|0),!ie;)n7=Y1,ii=y1,ni=x1;if(j1=H8+1|0,X8=(j1|0)==(B3|0),X8)break;H8=j1,_8=p1,Gt=Q1}if(r2=n+-1|0,W1=i5(r2,a)|0,d1){for(O1=(B3|0)>2,T8=0,N8=1,Ye=1,D7=0,gt=u1;;){if(l2=D7+a|0,z1=gt-a|0,h2=N8*h8,s2=T8*M7,V1=h2-s2,g2=T8*h8,a2=N8*M7,t2=a2+g2,y)for(E8=0,Ut=l2,st=z1,Jt=W1,z7=a;$2=E+(E8<<2)|0,i2=+s[$2>>2],o2=z7+1|0,X1=E+(z7<<2)|0,n2=+s[X1>>2],f2=n2*V1,y2=f2+i2,S2=Ut+1|0,w2=C+(Ut<<2)|0,s[w2>>2]=y2,C2=Jt+1|0,M2=E+(Jt<<2)|0,_2=+s[M2>>2],G2=_2*t2,u2=st+1|0,K2=C+(st<<2)|0,s[K2>>2]=G2,N2=E8+1|0,h7=(N2|0)==(a|0),!h7;)E8=N2,Ut=S2,st=u2,Jt=C2,z7=o2;if(O1)for(G8=t2,y8=V1,f7=2,Ot=a,G7=W1;;){if(T2=Ot+a|0,O2=G7-a|0,V2=y8*V1,s5=G8*t2,P2=V2-s5,T1=G8*V1,j2=y8*t2,R5=j2+T1,y)for(e7=0,Bt=l2,yt=z1,wt=T2,_7=O2;X2=wt+1|0,v5=E+(wt<<2)|0,f5=+s[v5>>2],w5=f5*P2,O5=Bt+1|0,$5=C+(Bt<<2)|0,k2=+s[$5>>2],E5=k2+w5,s[$5>>2]=E5,r5=_7+1|0,x2=E+(_7<<2)|0,R2=+s[x2>>2],m2=R2*R5,x5=yt+1|0,u5=C+(yt<<2)|0,S5=+s[u5>>2],G5=S5+m2,s[u5>>2]=G5,D5=e7+1|0,w7=(D5|0)==(a|0),!w7;)e7=D5,Bt=O5,yt=x5,wt=X2,_7=r5;if(H2=f7+1|0,j8=(H2|0)==(B3|0),j8)break;G8=R5,y8=P2,f7=H2,Ot=T2,G7=O2}if(I5=Ye+1|0,k7=(I5|0)==(B3|0),k7)break;T8=t2,N8=V1,Ye=I5,D7=l2,gt=z1}if(d1)for(t7=1,J8=0;;){if(A5=J8+a|0,y)for(q4=0,q7=A5;l5=q7+1|0,m5=E+(q7<<2)|0,k5=+s[m5>>2],c5=C+(q4<<2)|0,o5=+s[c5>>2],Z2=o5+k5,s[c5>>2]=Z2,c2=q4+1|0,g7=(c2|0)==(a|0),!g7;)q4=c2,q7=l5;if(B5=t7+1|0,Ce=(B5|0)==(B3|0),Ce)break;t7=B5,J8=A5}}}if(e5=(t|0)<(o|0),e5){if(J2=(t|0)>0,J2)for(t5=(o|0)>0,Oe=0;;){if(t5)for(qe=0,ue=Oe,Y7=Oe;V5=I+(ue<<2)|0,t3=e[V5>>2]|0,s3=c+(Y7<<2)|0,e[s3>>2]=t3,E3=ue+t|0,F5=Y7+E9|0,z5=qe+1|0,be=(z5|0)==(o|0),!be;)qe=z5,ue=E3,Y7=F5;if(y3=Oe+1|0,je=(y3|0)==(t|0),je)break;Oe=y3}}else if(n5=(o|0)>0,n5)for(g5=(t|0)>0,b8=0,xe=0,ht=0;;){if(g5)for(Ue=0,Nt=xe,Pt=ht;b5=Nt+1|0,W2=I+(Nt<<2)|0,a5=e[W2>>2]|0,F2=Pt+1|0,p5=c+(Pt<<2)|0,e[p5>>2]=a5,q5=Ue+1|0,k8=(q5|0)==(t|0),!k8;)Ue=q5,Nt=b5,Pt=F2;if(e3=xe+t|0,d5=ht+E9|0,f3=b8+1|0,y9=(f3|0)==(o|0),y9)break;b8=f3,xe=e3,ht=d5}if(h3=t<<1,m3=i5(R9,n)|0,d1)for(q3=(o|0)>0,i7=1,v7=0,It=0,Ht=m3;;){if(W5=v7+h3|0,Q3=It+R9|0,X5=Ht-R9|0,q3)for(m9=0,V7=W5,pt=Q3,Vt=X5;j3=I+(pt<<2)|0,_3=e[j3>>2]|0,T3=V7+-1|0,a3=c+(T3<<2)|0,e[a3>>2]=_3,$3=I+(Vt<<2)|0,l3=e[$3>>2]|0,C3=c+(V7<<2)|0,e[C3>>2]=l3,N5=V7+E9|0,P5=pt+t|0,y5=Vt+t|0,G3=m9+1|0,f8=(G3|0)==(o|0),!f8;)m9=G3,V7=N5,pt=P5,Vt=y5;if(L5=i7+1|0,Ne=(L5|0)==(B3|0),Ne)break;i7=L5,v7=W5,It=Q3,Ht=X5}if(!$4){if(t6=(U4|0)<(o|0),i3=0-t|0,!t6){if(!d1)return;for(B=(o|0)<1,v=(t|0)<3,w8=B|v,q8=1,A7=i3,dt=0,nt=0,si=m3;;){if(h6=A7+h3|0,p3=dt+h3|0,X3=nt+R9|0,V3=si-R9|0,!w8)for(s7=0,Kt=h6,At=p3,pe=X3,ot=V3;;){for(W9=2;o6=t-W9|0,u3=W9+pe|0,w6=u3+-1|0,k6=I+(w6<<2)|0,m6=+s[k6>>2],z3=W9+ot|0,a6=z3+-1|0,B6=I+(a6<<2)|0,_6=+s[B6>>2],Y6=_6+m6,C6=W9+At|0,v3=C6+-1|0,W3=c+(v3<<2)|0,s[W3>>2]=Y6,f6=+s[k6>>2],O3=+s[B6>>2],S3=f6-O3,P3=o6+Kt|0,Y3=P3+-1|0,v6=c+(Y3<<2)|0,s[v6>>2]=S3,i6=I+(u3<<2)|0,r3=+s[i6>>2],O6=I+(z3<<2)|0,r6=+s[O6>>2],u6=r6+r3,D3=c+(C6<<2)|0,s[D3>>2]=u6,T6=+s[O6>>2],e6=+s[i6>>2],p6=T6-e6,R6=c+(P3<<2)|0,s[R6>>2]=p6,K6=W9+2|0,I6=(K6|0)<(t|0),I6;)W9=K6;if(N3=Kt+E9|0,Z5=At+E9|0,k3=pe+t|0,c3=ot+t|0,U3=s7+1|0,Z8=(U3|0)==(o|0),Z8)break;s7=U3,Kt=N3,At=Z5,pe=k3,ot=c3}if(J6=q8+1|0,W8=(J6|0)==(B3|0),W8)break;q8=J6,A7=h6,dt=p3,nt=X3,si=V3}return}if(d1)for(o3=(t|0)>2,R3=(o|0)>0,re=1,se=i3,ri=0,Ct=0,Yt=m3;;){if(Z6=se+h3|0,G6=ri+h3|0,j6=Ct+R9|0,r9=Yt-R9|0,o3&&(x6=Z6+t|0,R3))for(Re=2;;){for(v4=Re+r9|0,S4=Re+j6|0,R4=Re+G6|0,T4=x6-Re|0,Y8=0,Qt=T4,N7=R4,kt=S4,i9=v4;V6=kt+-1|0,Q6=I+(V6<<2)|0,F6=+s[Q6>>2],L6=i9+-1|0,X6=I+(L6<<2)|0,s9=+s[X6>>2],W6=s9+F6,g9=N7+-1|0,h9=c+(g9<<2)|0,s[h9>>2]=W6,f9=+s[Q6>>2],A9=+s[X6>>2],o9=f9-A9,L9=Qt+-1|0,M6=c+(L9<<2)|0,s[M6>>2]=o9,e9=I+(kt<<2)|0,M9=+s[e9>>2],u9=I+(i9<<2)|0,u4=+s[u9>>2],r4=u4+M9,l4=c+(N7<<2)|0,s[l4>>2]=r4,T9=+s[u9>>2],K9=+s[e9>>2],v9=T9-K9,P6=c+(Qt<<2)|0,s[P6>>2]=v9,t9=Qt+E9|0,I4=N7+E9|0,k4=kt+t|0,n4=i9+t|0,p9=Y8+1|0,U8=(p9|0)==(o|0),!U8;)Y8=p9,Qt=t9,N7=I4,kt=k4,i9=n4;if(N6=Re+2|0,S6=(N6|0)<(t|0),S6)Re=N6;else break}if(d4=re+1|0,O8=(d4|0)==(B3|0),O8)break;re=d4,se=Z6,ri=G6,Ct=j6,Yt=r9}}}function JS(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,Z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,m6=0,z3=0,a6=0,B6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,A3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0,R4=0,T4=0,j4=0,d4=0,G4=0,G9=0,N4=0,s4=0,x4=0,c4=0,Ie=0,O9=0,d9=0,de=0,Me=0,ze=0,U4=0,Te=0,O4=0,X4=0,ke=0,Ze=0,V9=0,oe=0,g4=0,D6=0,P4=0,R9=0,A4=0,D4=0,ae=0,z9=0,$e=0,le=0,E4=0,ee=0,F4=0,ce=0,E9=0,$6=0,Ge=0,o4=0,Ee=0,C4=0,a4=0,U6=0,ve=0,Se=0,We=0,$4=0,Q4=0,g8=0,H3=0,Q9=0,C9=0,L4=0,te=0,a7=0,De=0,$7=0,Q7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,y7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ne=0,be=0,je=0,k8=0,y9=0,g7=0,Ce=0,h7=0,w7=0,j8=0,k7=0,ie=0,X8=0,P8=0,v8=0,Xe=0,H4=0,_e=0,e8=0,u8=0,S8=0,ge=0,Z9=0,t8=0,I8=0,i8=0,d8=0,he=0,me=0,Ue=0,Oe=0,W9=0,Re=0,fe=0,r8=0,Be=0,m4=0,E8=0,e7=0,q4=0,I3=0,Pe=0,C8=0,re=0,P9=0,ne=0,S9=0,He=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,s8=0,D8=0,Y4=0,n7=0,b8=0,qe=0,m9=0,s7=0,Ye=0,M7=0,P7=0,v7=0,A7=0,S7=0,se=0,T7=0,H7=0,A8=0,_8=0,D7=0,J8=0,xe=0,ue=0,j9=0,b7=0,tt=0,Mt=0,Tt=0,Gt=0,gt=0,q7=0,ht=0,Y7=0,ft=0,J7=0,ut=0,it=0,ii=0,Nt=0,It=0,dt=0,ri=0,Et=0,rt=0,ni=0,Ut=0,Ot=0,Pt=0,Ht=0,nt=0,Ct=0,qt=0,K7=0,st=0,G7=0,V7=0,si=0,Yt=0,Ai=0,mt=0,Jt=0,Bt=0,pt=0,Kt=0,Qt=0,z7=0,yt=0,Vt=0,At=0,N7=0,wt=0,pe=0,kt=0,_7=0,ot=0,i9=0,u7=0,m8=0,I7=0,R7=0,Pr=0,fr=0,zs=0,Mn=0,Zs=0,Tn=0,Ws=0,js=0,Gn=0,Xs=0,Hr=0,eA=0,tA=0,iA=0,Nn=0,rA=0,Un=0,On=0,nA=0,qr=0,Pn=0,Yr=0,Hn=0,qn=0,sA=0,AA=0,oA=0,Jr=0,Yn=0,aA=0,ur=0,Kr=0,$A=0,lA=0,Vr=0,oi=0,Jn=0,cA=0,gA=0,Kn=0,Vn=0,zn=0,hA=0,ai=0,zr=0,fA=0,Zn=0,uA=0,IA=0,dA=0,Wn=0,EA=0,CA=0,mA=0,BA=0,jn=0,pA=0,QA=0,Zr=0,Ir=0,Wr=0,yA=0,Vi=0,wA=0,Xn=0,jr=0,es=0,Xr=0,kA=0,ts=0,is=0,vA=0,rs=0,ns=0,SA=0,dr=0,ss=0,$i=0,en=0,Er=0,zi=0,Cr=0,Ui=0,mr=0,As=0,Oi=0,mi=0,Bi=0,zt=0,pi=0,Br=0,Zi=0,Wi=0,pr=0,li=0,DA=0,at=0,j$=0,tn=0,rn=0,Lh=0,X$=0,bA=0,Mh=0,zo=0,el=0,Th=0,Gh=0,Nh=0,Zo=0,tl=0,il=0,Wo=0,nn=0,rl=0,Uh=0,_A=0,ji=0,Oh=0,Ph=0,Hh=0,qh=0,Yh=0,Jh=0,Kh=0,Vh=0,zh=0,Zh=0,nl=0,Qr=0,Wh=0,jh=0,sl=0,Xh=0,jo=0,RA=0,Xo=0,ef=0,tf=0,ea=0,Al=0,ol=0,al=0,ta=0,$l=0,xA=0,rf=0,nf=0,ll=0,sf=0,Af=0,cl=0,of=0,af=0,gl=0,hl=0,fl=0,ul=0,Il=0,sn=0,$f=0,dl=0,lf=0,El=0,Cl=0,cf=0,gf=0,hf=0,ia=0,ml=0,Bl=0,os=0,pl=0,ra=0,ff=0,Ql=0,uf=0,yl=0,If=0,df=0,wl=0,kl=0,Ef=0,FA=0,Cf=0,na=0,vl=0,Sl=0,mf=0,Bf=0,pf=0,Qf=0,yf=0,wf=0,LA=0,Dl=0,bl=0,_l=0,MA=0,kf=0,Rl=0,vf=0,xl=0,Sf=0,Df=0,Fl=0,sa=0,bf=0,_f=0,TA=0,Rf=0,GA=0,xf=0,Aa=0,Ff=0,Lf=0,Mf=0,Ll=0,Tf=0,Gf=0,Nf=0,Uf=0,Ml=0,Tl=0,Xi=0,Gl=0,NA=0,oa=0,aa=0,An=0,Nl=0,on=0,Of=0,Ul=0,Pf=0,Hf=0,qf=0,Yf=0,UA=0,$a=0,yr=0,Jf=0,Kf=0,Ol=0,la=0,Pl=0,Hl=0,Vf=0,ql=0,zf=0,ca=0,Zf=0,Wf=0,N9=0,jf=0,Yl=0,Xf=0,eu=0,ga=0,tu=0,ha=0,Jl=0,iu=0,ru=0,Kl=0,Vl=0,nu=0,fa=0,ua=0,zl=0,Zl=0,su=0,Wl=0,Ia=0,Au=0,jl=0,ou=0,au=0,$u=0,lu=0,Xl=0,ec=0,da=0,OA=0,tc=0,cu=0,ic=0,rc=0,gu=0,hu=0,fu=0,nc=0,uu=0,Iu=0,du=0,Eu=0,Cu=0,mu=0,sc=0,Bu=0,Ac=0,pu=0,an=0,Qu=0,oc=0,yu=0,as=0,ac=0,Ea=0,wu=0,PA=0,Ca=0,ku=0,ma=0,$c=0,vu=0,Su=0,Du=0,bu=0,_u=0,lc=0,Ru=0,xu=0,Fu=0,HA=0,$s=0,Ba=0,Lu=0,pa=0,Mu=0,Tu=0,Gu=0,cc=0,Nu=0,Uu=0,Ou=0,Pu=0,Hu=0,qA=0,qu=0,Yu=0,gc=0,Ju=0,Ku=0,Vu=0,zu=0,ci=0,hc=0,gi=0,fc=0,Qa=0,Zu=0,Zt=0,ls=0,Wu=0,ju=0,Xu=0,eI=0,tI=0,uc=0,iI=0,rI=0,Ic=0,nI=0,sI=0,cs=0,ya=0,AI=0,dc=0,oI=0,aI=0,YA=0,$I=0,lI=0,Ec=0,Cc=0,cI=0,gI=0,$n=0,hI=0,fI=0,ln=0,uI=0,mc=0,II=0,dI=0,gs=0,Bc=0,EI=0,pc=0,CI=0,er=0,wa=0,mI=0,Qc=0,yc=0,BI=0,pI=0,wc=0,QI=0,yI=0,wI=0,kc=0,kI=0,hs=0,vI=0,cn=0,SI=0,DI=0,ka=0,bI=0,va=0,Sa=0,_I=0,vc=0,Sc=0,RI=0,Dc=0,bc=0,_c=0,xI=0,Rc=0,xc=0,FI=0,LI=0,Fc=0,Lc=0,MI=0,Mc=0,Tc=0,TI=0,GI=0,Gc=0,Da=0,Nc=0,Uc=0,Oc=0,Pc=0,NI=0,UI=0,OI=0,PI=0,HI=0,qI=0,YI=0,JI=0,Hc=0,ba=0,KI=0,VI=0,zI=0,qc=0,Yc=0,ZI=0,Jc=0,_a=0,JA=0,Kc=0,WI=0,jI=0,XI=0,ed=0,Vc=0,KA=0,td=0,id=0,rd=0,nd=0,sd=0,Ad=0,od=0,ad=0,zc=0,$d=0,ld=0,cd=0,gd=0,VA=0,Zc=0,hd=0,fd=0,gn=0,Wc=0,jc=0,Ra=0,ud=0,Xc=0,Id=0,eg=0,tg=0,dd=0,Ed=0,Cd=0,md=0,Bd=0,zA=0,xa=0,pd=0,Qd=0,yd=0,wd=0,ig=0,kd=0,rg=0,vd=0,Sd=0,ng=0,wr=0,sg=0,Ag=0,Dd=0,og=0,ZA=0,bd=0,_d=0,Rd=0,WA=0,ag=0,xd=0,Fd=0,$g=0,Ld=0,Md=0,Fa=0,jA=0,Td=0,Gd=0,Nd=0,lg=0,cg=0,gg=0,Ud=0,Od=0,fs=0,Pd=0,hg=0,Hd=0,La=0,fg=0,qd=0,Yd=0,Jd=0,Kd=0,ug=0,Vd=0,zd=0,Ig=0,XA=0,Zd=0,Wd=0,jd=0,us=0,dg=0,Eg=0,Xd=0,Cg=0,mg=0,Qi=0,Bg=0,tr=0,eE=0,tE=0,iE=0,rE=0,Ma=0,eo=0,pg=0,Qg=0,nE=0,to=0,Is=0,sE=0,io=0,Ta=0,AE=0,Ga=0,oE=0,aE=0,yg=0,ro=0,wg=0,$E=0,lE=0,cE=0,gE=0,kg=0,hE=0,Z7=0,B4=0,Wt=0,fE=0,vg=0,Sg=0,Na=0,uE=0,kr=0,ds=0,IE=0,dE=0,Dg=0,Ua=0,EE=0,bg=0,_g=0,Rg=0,Oa=0,Pa=0,xg=0,Es=0,Ha=0,Fg=0,CE=0,hn=0,mE=0,Lg=0,no=0,BE=0,Mg=0,yi=0,pE=0,QE=0,yE=0,wE=0,kE=0,vE=0,wi=0,SE=0,DE=0,bE=0,Tg=0,hi=0,so=0,qa=0,Gg=0,Ng=0,_E=0,Ug=0,Og=0,RE=0,xE=0,Pg=0,Hg=0,FE=0,LE=0,qg=0,ME=0,Cs=0,Ao=0,oo=0,TE=0,Ya=0,GE=0,NE=0,Yg=0,ms=0,UE=0,OE=0,Ja=0,Ka=0,ao=0,Va=0,za=0,ir=0,vr=0,Sr=0,Za=0,Wa=0,Bs=0,rr=0,fn=0,PE=0,nr=0,un=0,HE=0,vt=0,St=0,Dt=0,$o=0,lo=0,Jg=0,Kg=0,co=0,ja=0,bt=0,go=0,Dr=0,Xa=0,qE=0,e$=0,YE=0,t$=0,Vg=0,ho=0,JE=0,KE=0,fo=0,VE=0,uo=0,In=0,Je=0,y4=0,zg=0,zE=0,i$=0,Zg=0,ZE=0,WE=0,Io=0,jE=0,XE=0,eC=0,tC=0,Wg=0,iC=0,rC=0,nC=0,jt=0,Eo=0,dn=0,r$=0,ps=0,Qs=0,W7=0,ys=0,jg=0,Xg=0,Co=0,ws=0,ks=0,vs=0,sC=0,Ss=0,sr=0,eh=0,br=0,Xt=0,n$=0,s$=0,Pi=0,A$=0,o$=0,a$=0,_r=0,s6=0,mo=0,Rr=0,th=0,Qe=0,$$=0,B8=0,Ds=0,En=0,Cn=0,x9=0,mn=0,xr=0,J4=0,l$=0,fB=0,AC=0,jC=0,XC=0,uB=0,oC=0,RQ=0,xQ=0,FQ=0,LQ=0,MQ=0,TQ=0,GQ=0,NQ=0,UQ=0,OQ=0,PQ=0,HQ=0,IB=0,dB=0,qQ=0,YQ=0,JQ=0,ih=0,em=0,fi=0,rh=0,nh=0,sh=0,Ah=0,aC=0,$C=0,lC=0,cC=0,gC=0,hC=0,fC=0,uC=0,IC=0,dC=0,tm=0,Bo=0,Ar=0,c$=0,oh=0,g$=0,EB=0,po=0,EC=0,h$=0,im=0,rm=0,CC=0,nm=0,sm=0,Am=0,om=0,am=0,$m=0,lm=0,CB=0,mB=0,BB=0,pB=0,QB=0,Qo=0,yo=0,wo=0,ko=0,KQ=0,or=0,X9=0,BD=0,vo=0,cm=0;if(BD=m,l0=t+28|0,j=e[l0>>2]|0,W8=(j|0)==0,W8||(st=j+3456|0,As=e[st>>2]|0,Dl=(As|0)==0,n=Dl&1,as=j+3496|0,Dc=+o1[as>>3],lg=Dc>-80,lg?o1[as>>3]=-80:(xE=Dc<-200,xE&&(o1[as>>3]=-200)),a0=j+3512|0,z2=+o1[a0>>3],A3=z2>0,A3?o1[a0>>3]=0:(d4=z2<-99999,d4&&(o1[a0>>3]=-99999)),Me=j+3396|0,D6=e[Me>>2]|0,F4=(D6|0)==0,F4))return C=-131,C|0;if(Se=j+3392|0,e[Se>>2]=1,De=j+3400|0,z8=+o1[De>>3],f8=D6+24|0,k7=e[f8>>2]|0,ge=D6+28|0,Re=e[ge>>2]|0,re=~~z8,Y8=k7+(re<<2)|0,M7=e[Y8>>2]|0,J8=Re+(re<<2)|0,ht=e[J8>>2]|0,e[j>>2]=M7,Et=j+4|0,e[Et>>2]=ht,G7=(M7|0)==(ht|0),z7=D6+144|0,u7=e[z7>>2]|0,js=(u7|0)>0,js){for(nA=D6+136|0,aA=D6+140|0,Vn=D6+148|0,Vi=z8,yr=j,tm=0;;){if(EA=~~Vi,ns=e[nA>>2]|0,Oi=e[aA>>2]|0,at=e[Vn>>2]|0,Gh=at+(tm<<2)|0,Oh=e[Gh>>2]|0,Qr=t4(1,1120)|0,Al=Oh+(EA<<2)|0,cl=e[Al>>2]|0,lf=Oi+(cl*1120|0)|0,i4(Qr|0,lf|0,1120)|0,ra=e[Qr>>2]|0,Cf=(ra|0)>0,Cf){for(bl=Qr+4|0,em=0,lm=-1;;)if(Ia=bl+(em<<2)|0,tc=e[Ia>>2]|0,Eu=(tc|0)>(lm|0),t0=Eu?tc:lm,ac=em+1|0,PQ=(ac|0)==(ra|0),PQ){J=t0;break}else em=ac,lm=t0;if(bf=(J|0)<0,!bf){for(Tf=Qr+256|0,An=yr+24|0,Zf=Qr+192|0,iu=Qr+320|0,g$=0,Am=-1;;){if(yc=Tf+(g$<<2)|0,cn=e[yc>>2]|0,bc=(cn|0)>(Am|0),z=bc?cn:Am,Tc=e[An>>2]|0,OI=Tc+cn|0,e[yc>>2]=OI,qc=Zf+(g$<<2)|0,Vc=e[qc>>2]|0,$d=(Vc|0)==31,$d)om=z;else for(p9=Vc,nm=0,$m=z;;)if(Ra=(iu+(g$<<5)|0)+(nm<<2)|0,zA=e[Ra>>2]|0,ng=(zA|0)>($m|0),Y=ng?zA:$m,ag=(zA|0)>-1,ag?(cg=e[An>>2]|0,Yd=cg+zA|0,e[Ra>>2]=Yd,e0=e[qc>>2]|0,Ta=e0):Ta=p9,us=nm+1|0,iE=1<>2]|0,Zu=e[Yu>>2]|0,Ic=e[An>>2]|0,lI=Ic+1|0,e[An>>2]=lI,II=(yr+1824|0)+(Ic<<2)|0,e[II>>2]=Zu,GQ=(am|0)==0,!GQ))for(EB=0;Pa=EB+1|0,Z=e[Al>>2]|0,Mg=ns+(Z<<2)|0,bE=e[Mg>>2]|0,Pg=bE+(Pa<<2)|0,GE=e[Pg>>2]|0,ir=e[An>>2]|0,HE=ir+1|0,e[An>>2]=HE,go=(yr+1824|0)+(ir<<2)|0,e[go>>2]=GE,TQ=(Pa|0)==(am|0),!TQ;)EB=Pa}}if(fo=yr+16|0,WE=e[fo>>2]|0,Eo=(yr+800|0)+(WE<<2)|0,e[Eo>>2]=1,ks=e[fo>>2]|0,A$=(yr+1056|0)+(ks<<2)|0,e[A$>>2]=Qr,g0=e[fo>>2]|0,D0=g0+1|0,e[fo>>2]=D0,q0=tm+1|0,c1=e[z7>>2]|0,h1=(q0|0)<(c1|0),!h1)break;W=+o1[De>>3],r0=e[l0>>2]|0,Vi=W,yr=r0,tm=q0}c0=e[l0>>2]|0,W5=c0}else W5=j;x1=j+3520|0,q1=+o1[x1>>3],A2=D6+124|0,e2=e[A2>>2]|0,q2=D6+128|0,f5=e[q2>>2]|0,x5=~~q1,k5=+(x5|0),t5=q1-k5,V5=W5+2868|0,N5=f5+(x5<<3)|0,w3=+o1[N5>>3],y6=~~w3,Z3=e2+(y6*492|0)|0,i4(V5|0,Z3|0,492)|0,r6=+o1[N5>>3],Z6=1-t5,L6=r6*Z6,M6=x5+1|0,P6=f5+(M6<<3)|0,v4=+o1[P6>>3],S4=v4*t5,R4=S4+L6,T4=~~R4,j4=+(T4|0),G4=R4-j4,G9=G4==0,N4=(T4|0)>0,CB=N4&G9,I=CB?1:G4,s4=CB<<31>>31,L=s4+T4|0,x4=1-I,c4=L+1|0,Ie=(e2+(L*492|0)|0)+4|0,O9=+s[Ie>>2],d9=O9,de=x4*d9,ze=(e2+(c4*492|0)|0)+4|0,U4=+s[ze>>2],Te=U4,O4=I*Te,X4=de+O4,ke=X4,Ze=W5+2872|0,s[Ze>>2]=ke,V9=(e2+(L*492|0)|0)+32|0,oe=+s[V9>>2],g4=oe,P4=x4*g4,R9=(e2+(c4*492|0)|0)+32|0,A4=+s[R9>>2],D4=A4,ae=I*D4,z9=P4+ae,$e=z9,le=W5+2900|0,s[le>>2]=$e,E4=(e2+(L*492|0)|0)+8|0,ee=+s[E4>>2],ce=ee,E9=x4*ce,$6=(e2+(c4*492|0)|0)+8|0,Ge=+s[$6>>2],o4=Ge,Ee=I*o4,C4=E9+Ee,a4=C4,U6=W5+2876|0,s[U6>>2]=a4,ve=(e2+(L*492|0)|0)+36|0,We=+s[ve>>2],$4=We,Q4=x4*$4,g8=(e2+(c4*492|0)|0)+36|0,H3=+s[g8>>2],Q9=H3,C9=Q9*I,L4=C9+Q4,te=L4,a7=W5+2904|0,s[a7>>2]=te,$7=(e2+(L*492|0)|0)+12|0,Q7=+s[$7>>2],K8=Q7,l7=K8*x4,c7=(e2+(c4*492|0)|0)+12|0,x8=+s[c7>>2],F8=x8,L8=F8*I,M8=L8+l7,V8=M8,y7=W5+2880|0,s[y7>>2]=V8,T8=(e2+(L*492|0)|0)+40|0,G8=+s[T8>>2],N8=G8,y8=N8*x4,w8=(e2+(c4*492|0)|0)+40|0,h8=+s[w8>>2],U8=h8,O8=U8*I,Z8=O8+y8,Ne=Z8,be=W5+2908|0,s[be>>2]=Ne,je=(e2+(L*492|0)|0)+16|0,k8=+s[je>>2],y9=k8,g7=y9*x4,Ce=(e2+(c4*492|0)|0)+16|0,h7=+s[Ce>>2],w7=h7,j8=w7*I,ie=j8+g7,X8=ie,P8=W5+2884|0,s[P8>>2]=X8,v8=(e2+(L*492|0)|0)+44|0,Xe=+s[v8>>2],H4=Xe,_e=H4*x4,e8=(e2+(c4*492|0)|0)+44|0,u8=+s[e8>>2],S8=u8,Z9=S8*I,t8=Z9+_e,I8=t8,i8=W5+2912|0,s[i8>>2]=I8,d8=W5+3512|0,he=+o1[d8>>3],me=he,Ue=W5+2936|0,s[Ue>>2]=me,Oe=D6+132|0,W9=e[Oe>>2]|0,fe=j+3472|0,r8=+o1[fe>>3],Be=r8,m4=~~Be,E8=+(m4|0),e7=Be-E8,q4=e7,I3=e[l0>>2]|0,Pe=(W9|0)==0;e:do if(Pe)C8=I3+4|0,P9=e[I3>>2]|0,ne=I3+3240|0,e[ne>>2]=P9,S9=e[C8>>2]|0,He=I3+3300|0,e[He>>2]=S9,H8=I3+3244|0,e[H8>>2]=P9,f7=I3+3304|0,e[f7>>2]=S9,t7=I3+3248|0,e[t7>>2]=P9,i7=I3+3308|0,e[i7>>2]=S9,q8=I3+3252|0,e[q8>>2]=P9,r7=I3+3312|0,e[r7>>2]=S9,n8=I3+3256|0,e[n8>>2]=P9,s8=I3+3316|0,e[s8>>2]=S9,D8=I3+3260|0,e[D8>>2]=P9,Y4=I3+3320|0,e[Y4>>2]=S9,n7=I3+3264|0,e[n7>>2]=P9,b8=I3+3324|0,e[b8>>2]=S9,qe=I3+3268|0,e[qe>>2]=P9,m9=I3+3328|0,e[m9>>2]=S9,s7=I3+3272|0,e[s7>>2]=P9,Ye=I3+3332|0,e[Ye>>2]=S9,P7=I3+3276|0,e[P7>>2]=P9,v7=I3+3336|0,e[v7>>2]=S9,A7=I3+3280|0,e[A7>>2]=P9,S7=I3+3340|0,e[S7>>2]=S9,se=I3+3284|0,e[se>>2]=P9,T7=I3+3344|0,e[T7>>2]=S9,H7=I3+3288|0,e[H7>>2]=P9,A8=I3+3348|0,e[A8>>2]=S9,_8=I3+3292|0,e[_8>>2]=P9,D7=I3+3352|0,e[D7>>2]=S9,xe=I3+3296|0,e[xe>>2]=P9,ue=I3+3356|0,e[ue>>2]=S9;else{j9=I3+3120|0,b7=W9+(m4*240|0)|0,or=j9,vo=b7,cm=or+60|0;do e[or>>2]=e[vo>>2]|0,or=or+4|0,vo=vo+4|0;while((or|0)<(cm|0));tt=I3+3180|0,Mt=(W9+(m4*240|0)|0)+60|0,or=tt,vo=Mt,cm=or+60|0;do e[or>>2]=e[vo>>2]|0,or=or+4|0,vo=vo+4|0;while((or|0)<(cm|0));if(Tt=j+3420|0,Gt=e[Tt>>2]|0,gt=(Gt|0)==0,!gt)for(q7=1-q4,Y7=m4+1|0,ft=t+8|0,J7=I3+4|0,X=e[ft>>2]|0,ut=+(X|0),Ar=0;;){if(it=((W9+(m4*240|0)|0)+120|0)+(Ar<<2)|0,ii=+s[it>>2],Nt=ii,It=Nt*q7,dt=((W9+(Y7*240|0)|0)+120|0)+(Ar<<2)|0,ri=+s[dt>>2],rt=ri,ni=rt*q4,Ut=ni+It,Ot=Ut,Pt=Ot,Ht=Pt*1e3,nt=Ht/ut,Ct=e[I3>>2]|0,qt=+(Ct|0),K7=qt*nt,V7=~~K7,si=(I3+3e3|0)+(Ar<<2)|0,e[si>>2]=V7,Yt=e[J7>>2]|0,Ai=+(Yt|0),mt=Ai*nt,Jt=~~mt,Bt=(I3+3060|0)+(Ar<<2)|0,e[Bt>>2]=Jt,pt=~~Ot,Kt=(I3+2940|0)+(Ar<<2)|0,e[Kt>>2]=pt,Qt=((W9+(m4*240|0)|0)+180|0)+(Ar<<2)|0,yt=+s[Qt>>2],Vt=yt,At=Vt*q7,N7=((W9+(Y7*240|0)|0)+180|0)+(Ar<<2)|0,wt=+s[N7>>2],pe=wt,kt=pe*q4,_7=kt+At,ot=_7,i9=ot,m8=i9*1e3,I7=m8/ut,R7=e[I3>>2]|0,Pr=+(R7|0),fr=Pr*I7,zs=~~fr,Mn=(I3+3240|0)+(Ar<<2)|0,e[Mn>>2]=zs,Zs=e[J7>>2]|0,Tn=+(Zs|0),Ws=Tn*I7,Gn=~~Ws,Xs=(I3+3300|0)+(Ar<<2)|0,e[Xs>>2]=Gn,Hr=Ar+1|0,UQ=(Hr|0)==15,UQ)break e;Ar=Hr}for(eA=(W9+(m4*240|0)|0)+148|0,tA=+s[eA>>2],iA=tA,Nn=1-q4,rA=iA*Nn,Un=m4+1|0,On=(W9+(Un*240|0)|0)+148|0,qr=+s[On>>2],Pn=qr,Yr=Pn*q4,Hn=Yr+rA,qn=Hn,sA=qn,AA=sA*1e3,oA=t+8|0,Jr=I3+4|0,Yn=~~qn,o0=e[oA>>2]|0,ur=+(o0|0),Kr=AA/ur,oh=0;$A=e[I3>>2]|0,lA=+($A|0),Vr=lA*Kr,oi=~~Vr,Jn=(I3+3e3|0)+(oh<<2)|0,e[Jn>>2]=oi,cA=e[Jr>>2]|0,gA=+(cA|0),Kn=gA*Kr,zn=~~Kn,hA=(I3+3060|0)+(oh<<2)|0,e[hA>>2]=zn,ai=(I3+2940|0)+(oh<<2)|0,e[ai>>2]=Yn,zr=oh+1|0,HQ=(zr|0)==15,!HQ;)oh=zr;for(fA=(W9+(m4*240|0)|0)+208|0,Zn=+s[fA>>2],uA=Zn,IA=uA*Nn,dA=(W9+(Un*240|0)|0)+208|0,Wn=+s[dA>>2],CA=Wn,mA=CA*q4,BA=mA+IA,jn=BA,pA=jn,QA=pA*1e3,Zr=QA/ur,EC=0;Ir=e[I3>>2]|0,Wr=+(Ir|0),yA=Wr*Zr,wA=~~yA,Xn=(I3+3240|0)+(EC<<2)|0,e[Xn>>2]=wA,jr=e[Jr>>2]|0,es=+(jr|0),Xr=es*Zr,kA=~~Xr,ts=(I3+3300|0)+(EC<<2)|0,e[ts>>2]=kA,is=EC+1|0,NQ=(is|0)==15,!NQ;)EC=is}while(!1);for(vA=+o1[De>>3],rs=D6+92|0,SA=e[rs>>2]|0,dr=D6+100|0,ss=e[dr>>2]|0,$i=D6+108|0,en=e[$i>>2]|0,Er=e[l0>>2]|0,zi=Er+2852|0,Cr=e[zi>>2]|0,Ui=~~vA,mr=Er+28|0,mi=e[mr>>2]|0,Bi=(mi|0)>0,Bi||(e[mr>>2]=1),zt=(Cr|0)==0,zt?(pi=t4(1,520)|0,e[zi>>2]=pi,Qo=pi):Qo=Cr,i4(Qo|0,25784,520)|0,e[Qo>>2]=0,Br=Er+3460|0,Zi=e[Br>>2]|0,Wi=(Zi|0)==0,Wi||(pr=Qo+500|0,e[pr>>2]=1,li=SA+(Ui<<2)|0,DA=e[li>>2]|0,j$=Qo+504|0,e[j$>>2]=DA,tn=ss+(Ui<<2)|0,rn=e[tn>>2]|0,Lh=Qo+508|0,e[Lh>>2]=rn,X$=en+(Ui<<3)|0,bA=+o1[X$>>3],Mh=Qo+512|0,o1[Mh>>3]=bA),zo=+o1[De>>3],el=e[rs>>2]|0,Th=e[dr>>2]|0,Nh=e[$i>>2]|0,Zo=e[l0>>2]|0,tl=Zo+2856|0,il=e[tl>>2]|0,Wo=~~zo,nn=Zo+28|0,rl=e[nn>>2]|0,Uh=(rl|0)>1,Uh||(e[nn>>2]=2),_A=(il|0)==0,_A?(ji=t4(1,520)|0,e[tl>>2]=ji,yo=ji):yo=il,i4(yo|0,25784,520)|0,e[yo>>2]=0,Ph=Zo+3460|0,Hh=e[Ph>>2]|0,qh=(Hh|0)==0,qh||(Yh=yo+500|0,e[Yh>>2]=1,Jh=el+(Wo<<2)|0,Kh=e[Jh>>2]|0,Vh=yo+504|0,e[Vh>>2]=Kh,zh=Th+(Wo<<2)|0,Zh=e[zh>>2]|0,nl=yo+508|0,e[nl>>2]=Zh,Wh=Nh+(Wo<<3)|0,jh=+o1[Wh>>3],sl=yo+512|0,o1[sl>>3]=jh),G7||(Xh=+o1[De>>3],jo=D6+96|0,RA=e[jo>>2]|0,Xo=D6+104|0,ef=e[Xo>>2]|0,tf=e[$i>>2]|0,ea=e[l0>>2]|0,ol=ea+2860|0,al=e[ol>>2]|0,ta=~~Xh,$l=ea+28|0,xA=e[$l>>2]|0,rf=(xA|0)>2,rf||(e[$l>>2]=3),nf=(al|0)==0,nf?(ll=t4(1,520)|0,e[ol>>2]=ll,wo=ll):wo=al,i4(wo|0,25784,520)|0,e[wo>>2]=1,sf=ea+3460|0,Af=e[sf>>2]|0,of=(Af|0)==0,of||(af=wo+500|0,e[af>>2]=1,gl=RA+(ta<<2)|0,hl=e[gl>>2]|0,fl=wo+504|0,e[fl>>2]=hl,ul=ef+(ta<<2)|0,Il=e[ul>>2]|0,sn=wo+508|0,e[sn>>2]=Il,$f=tf+(ta<<3)|0,dl=+o1[$f>>3],El=wo+512|0,o1[El>>3]=dl),Cl=+o1[De>>3],cf=e[jo>>2]|0,gf=e[Xo>>2]|0,hf=e[$i>>2]|0,ia=e[l0>>2]|0,ml=ia+2864|0,Bl=e[ml>>2]|0,os=~~Cl,pl=ia+28|0,ff=e[pl>>2]|0,Ql=(ff|0)>3,Ql||(e[pl>>2]=4),uf=(Bl|0)==0,uf?(yl=t4(1,520)|0,e[ml>>2]=yl,ko=yl):ko=Bl,i4(ko|0,25784,520)|0,e[ko>>2]=1,If=ia+3460|0,df=e[If>>2]|0,wl=(df|0)==0,wl||(kl=ko+500|0,e[kl>>2]=1,Ef=cf+(os<<2)|0,FA=e[Ef>>2]|0,na=ko+504|0,e[na>>2]=FA,vl=gf+(os<<2)|0,Sl=e[vl>>2]|0,mf=ko+508|0,e[mf>>2]=Sl,Bf=hf+(os<<3)|0,pf=+o1[Bf>>3],Qf=ko+512|0,o1[Qf>>3]=pf)),yf=(j+3528|0)+(n<<5)|0,wf=+o1[yf>>3],LA=D6+32|0,_l=e[LA>>2]|0,MA=D6+36|0,kf=e[MA>>2]|0,Rl=D6+44|0,vf=e[Rl>>2]|0,KC(t,wf,0,_l,kf,vf),xl=j+3560|0,Sf=+o1[xl>>3],Df=e[LA>>2]|0,Fl=e[MA>>2]|0,sa=D6+52|0,_f=e[sa>>2]|0,KC(t,Sf,1,Df,Fl,_f),G7||(TA=j+3592|0,Rf=+o1[TA>>3],GA=e[LA>>2]|0,xf=e[MA>>2]|0,Aa=e[sa>>2]|0,KC(t,Rf,2,GA,xf,Aa),Ff=j+3624|0,Lf=+o1[Ff>>3],Mf=e[LA>>2]|0,Ll=e[MA>>2]|0,Gf=D6+48|0,Nf=e[Gf>>2]|0,KC(t,Lf,3,Mf,Ll,Nf)),Uf=((j+3528|0)+(n<<5)|0)+24|0,Ml=+o1[Uf>>3],Tl=D6+80|0,Xi=e[Tl>>2]|0,Gl=D6+84|0,NA=e[Gl>>2]|0,oa=~~Ml,aa=+(oa|0),Nl=Ml-aa,on=e[l0>>2]|0,Of=on+2852|0,Ul=e[Of>>2]|0,Pf=NA+(oa<<3)|0,Hf=+o1[Pf>>3],qf=1-Nl,Yf=Hf*qf,UA=oa+1|0,$a=NA+(UA<<3)|0,Jf=+o1[$a>>3],Kf=Jf*Nl,Ol=Kf+Yf,la=~~Ol,Pl=+(la|0),Hl=Ol-Pl,Vf=Hl==0,ql=(la|0)>0,mB=ql&Vf,a=mB?1:Hl,zf=mB<<31>>31,M=zf+la|0,ca=1-a,Wf=M+1|0,rh=0;N9=(Xi+(M*160|0)|0)+(rh<<2)|0,jf=e[N9>>2]|0,Yl=+(jf|0),Xf=Yl*ca,eu=(Xi+(Wf*160|0)|0)+(rh<<2)|0,ga=e[eu>>2]|0,tu=+(ga|0),ha=tu*a,Jl=ha+Xf,ru=Jl,Kl=(Ul+336|0)+(rh<<2)|0,s[Kl>>2]=ru,Vl=rh+1|0,xQ=(Vl|0)==40,!xQ;)rh=Vl;for(nu=j+3584|0,fa=+o1[nu>>3],ua=~~fa,zl=+(ua|0),Zl=fa-zl,su=on+2856|0,Wl=e[su>>2]|0,Au=NA+(ua<<3)|0,jl=+o1[Au>>3],ou=1-Zl,au=jl*ou,$u=ua+1|0,lu=NA+($u<<3)|0,Xl=+o1[lu>>3],ec=Xl*Zl,da=ec+au,OA=~~da,cu=+(OA|0),ic=da-cu,rc=ic==0,gu=(OA|0)>0,BB=gu&rc,c=BB?1:ic,hu=BB<<31>>31,T=hu+OA|0,fu=1-c,nc=T+1|0,nh=0;uu=(Xi+(T*160|0)|0)+(nh<<2)|0,Iu=e[uu>>2]|0,du=+(Iu|0),Cu=du*fu,mu=(Xi+(nc*160|0)|0)+(nh<<2)|0,sc=e[mu>>2]|0,Bu=+(sc|0),Ac=Bu*c,pu=Ac+Cu,an=pu,Qu=(Wl+336|0)+(nh<<2)|0,s[Qu>>2]=an,oc=nh+1|0,FQ=(oc|0)==40,!FQ;)nh=oc;if(!G7){for(yu=j+3616|0,Ea=+o1[yu>>3],wu=D6+88|0,PA=e[wu>>2]|0,Ca=~~Ea,ku=+(Ca|0),ma=Ea-ku,$c=on+2860|0,vu=e[$c>>2]|0,Su=PA+(Ca<<3)|0,Du=+o1[Su>>3],_u=1-ma,lc=Du*_u,Ru=Ca+1|0,xu=PA+(Ru<<3)|0,Fu=+o1[xu>>3],HA=Fu*ma,$s=HA+lc,Ba=~~$s,Lu=+(Ba|0),pa=$s-Lu,Tu=pa==0,Gu=(Ba|0)>0,pB=Gu&Tu,f=pB?1:pa,cc=pB<<31>>31,G=cc+Ba|0,Nu=1-f,Uu=G+1|0,sh=0;Ou=(Xi+(G*160|0)|0)+(sh<<2)|0,Pu=e[Ou>>2]|0,Hu=+(Pu|0),qA=Hu*Nu,qu=(Xi+(Uu*160|0)|0)+(sh<<2)|0,gc=e[qu>>2]|0,Ju=+(gc|0),Ku=Ju*f,Vu=Ku+qA,zu=Vu,ci=(vu+336|0)+(sh<<2)|0,s[ci>>2]=zu,hc=sh+1|0,LQ=(hc|0)==40,!LQ;)sh=hc;for(gi=j+3648|0,fc=+o1[gi>>3],Qa=~~fc,Zt=+(Qa|0),ls=fc-Zt,Wu=on+2864|0,ju=e[Wu>>2]|0,Xu=PA+(Qa<<3)|0,eI=+o1[Xu>>3],tI=1-ls,uc=eI*tI,iI=Qa+1|0,rI=PA+(iI<<3)|0,nI=+o1[rI>>3],sI=nI*ls,cs=sI+uc,ya=~~cs,AI=+(ya|0),dc=cs-AI,oI=dc==0,aI=(ya|0)>0,QB=aI&oI,E=QB?1:dc,YA=QB<<31>>31,N=YA+ya|0,$I=1-E,Ec=N+1|0,Ah=0;Cc=(Xi+(N*160|0)|0)+(Ah<<2)|0,cI=e[Cc>>2]|0,gI=+(cI|0),$n=gI*$I,hI=(Xi+(Ec*160|0)|0)+(Ah<<2)|0,fI=e[hI>>2]|0,ln=+(fI|0),uI=ln*E,mc=uI+$n,dI=mc,gs=(ju+336|0)+(Ah<<2)|0,s[gs>>2]=dI,Bc=Ah+1|0,MQ=(Bc|0)==40,!MQ;)Ah=Bc}for(EI=((j+3528|0)+(n<<5)|0)+8|0,pc=+o1[EI>>3],CI=D6+40|0,er=e[CI>>2]|0,wa=~~pc,mI=+(wa|0),Qc=pc-mI,BI=er+(wa<<2)|0,pI=e[BI>>2]|0,wc=+(pI|0),QI=1-Qc,yI=wc*QI,wI=wa+1|0,kc=er+(wI<<2)|0,kI=e[kc>>2]|0,hs=+(kI|0),vI=hs*Qc,SI=vI+yI,DI=SI,ka=Ul+32|0,s[ka>>2]=DI,bI=j+3568|0,va=+o1[bI>>3],Sa=~~va,_I=+(Sa|0),vc=va-_I,Sc=er+(Sa<<2)|0,RI=e[Sc>>2]|0,_c=+(RI|0),xI=1-vc,Rc=_c*xI,xc=Sa+1|0,FI=er+(xc<<2)|0,LI=e[FI>>2]|0,Fc=+(LI|0),Lc=Fc*vc,MI=Lc+Rc,Mc=MI,TI=Wl+32|0,s[TI>>2]=Mc,G7||(GI=j+3600|0,Gc=+o1[GI>>3],Da=~~Gc,Nc=+(Da|0),Uc=Gc-Nc,Oc=on+2860|0,Pc=e[Oc>>2]|0,NI=er+(Da<<2)|0,UI=e[NI>>2]|0,PI=+(UI|0),HI=1-Uc,qI=PI*HI,YI=Da+1|0,JI=er+(YI<<2)|0,Hc=e[JI>>2]|0,ba=+(Hc|0),KI=ba*Uc,VI=KI+qI,zI=VI,Yc=Pc+32|0,s[Yc>>2]=zI,ZI=j+3632|0,Jc=+o1[ZI>>3],_a=~~Jc,JA=+(_a|0),Kc=Jc-JA,WI=on+2864|0,jI=e[WI>>2]|0,XI=er+(_a<<2)|0,ed=e[XI>>2]|0,KA=+(ed|0),td=1-Kc,id=KA*td,rd=_a+1|0,nd=er+(rd<<2)|0,sd=e[nd>>2]|0,Ad=+(sd|0),od=Ad*Kc,ad=od+id,zc=ad,ld=jI+32|0,s[ld>>2]=zc),cd=((j+3528|0)+(n<<5)|0)+16|0,gd=+o1[cd>>3],VA=D6+76|0,Zc=e[VA>>2]|0,hd=D6+60|0,fd=e[hd>>2]|0,gn=D6+56|0,Wc=e[gn>>2]|0,Dl?Xc=0:(jc=j+3408|0,ud=+o1[jc>>3],Xc=ud),VC(t,gd,0,Zc,fd,Wc,Xc),Id=j+3576|0,eg=+o1[Id>>3],tg=e[VA>>2]|0,dd=D6+64|0,Ed=e[dd>>2]|0,Cd=e[gn>>2]|0,VC(t,eg,1,tg,Ed,Cd,0),G7?(fs=e[l0>>2]|0,Pd=fs+2852|0,hg=e[Pd>>2]|0,Hd=fs+3496|0,La=+o1[Hd>>3],fg=La,qd=hg+4|0,s[qd>>2]=fg,Jd=fs+3504|0,Kd=+o1[Jd>>3],ug=Kd,Vd=hg+8|0,s[Vd>>2]=ug,zd=fs+2856|0,Ig=e[zd>>2]|0,XA=Ig+4|0,s[XA>>2]=fg,Zd=Ig+8|0,s[Zd>>2]=ug,tr=fs):(md=j+3608|0,Bd=+o1[md>>3],xa=e[VA>>2]|0,pd=D6+68|0,Qd=e[pd>>2]|0,yd=e[gn>>2]|0,VC(t,Bd,2,xa,Qd,yd,0),wd=j+3640|0,ig=+o1[wd>>3],kd=e[VA>>2]|0,rg=D6+72|0,vd=e[rg>>2]|0,Sd=e[gn>>2]|0,VC(t,ig,3,kd,vd,Sd,0),wr=e[l0>>2]|0,sg=wr+2852|0,Ag=e[sg>>2]|0,Dd=wr+3496|0,og=+o1[Dd>>3],ZA=og,bd=Ag+4|0,s[bd>>2]=ZA,_d=wr+3504|0,Rd=+o1[_d>>3],WA=Rd,xd=Ag+8|0,s[xd>>2]=WA,Fd=wr+2856|0,$g=e[Fd>>2]|0,Ld=$g+4|0,s[Ld>>2]=ZA,Md=$g+8|0,s[Md>>2]=WA,Fa=wr+2860|0,jA=e[Fa>>2]|0,Td=jA+4|0,s[Td>>2]=ZA,Gd=jA+8|0,s[Gd>>2]=WA,Nd=wr+2864|0,gg=e[Nd>>2]|0,Ud=gg+4|0,s[Ud>>2]=ZA,Od=gg+8|0,s[Od>>2]=WA,tr=wr),Wd=+o1[De>>3],jd=D6+152|0,dg=e[jd>>2]|0,Eg=~~Wd,Xd=dg+(Eg<<3)|0,Cg=e[Xd>>2]|0,mg=(dg+(Eg<<3)|0)+4|0,Qi=e[mg>>2]|0,Bg=e[tr>>2]|0,eE=tr+4|0,tE=e[eE>>2]|0,rE=(Bg|0)==(tE|0),o=rE?1:2,Ma=tr+8|0,eo=tr+12|0,pg=t+8|0,Qg=t+4|0,fi=0;;){if(nE=t4(1,3208)|0,to=(tr+544|0)+(fi<<2)|0,e[to>>2]=nE,Is=t4(1,16)|0,sE=(tr+32|0)+(fi<<2)|0,e[sE>>2]=Is,io=26304+(fi<<4)|0,e[Is>>2]=e[io>>2]|0,e[Is+4>>2]=e[io+4>>2]|0,e[Is+8>>2]=e[io+8>>2]|0,e[Is+12>>2]=e[io+12>>2]|0,AE=e[Ma>>2]|0,Ga=(fi|0)<(AE|0),Ga||(oE=fi+1|0,e[Ma>>2]=oE),aE=(tr+288|0)+(fi<<2)|0,e[aE>>2]=0,yg=e[to>>2]|0,ro=Cg+(fi*3208|0)|0,i4(yg|0,ro|0,3208)|0,wg=e[eo>>2]|0,$E=(fi|0)<(wg|0),$E||(lE=fi+1|0,e[eo>>2]=lE),cE=e[ro>>2]|0,kg=(cE|0)>0,kg)for(rm=0;;){hE=((Cg+(fi*3208|0)|0)+1092|0)+(rm<<2)|0,Z7=e[hE>>2]|0,B4=e[l0>>2]|0,Wt=k9(2840)|0,fE=(B4+1568|0)+(Z7<<2)|0,e[fE>>2]=Wt,vg=(Qi+(Z7<<5)|0)+12|0,Sg=e[vg>>2]|0,i4(Wt|0,Sg|0,2840)|0,Na=B4+20|0,uE=e[Na>>2]|0,ds=(uE|0)>(Z7|0),ds||(IE=Z7+1|0,e[Na>>2]=IE),dE=(Qi+(Z7<<5)|0)+8|0,Dg=e[dE>>2]|0,Ua=Wt+8|0,e[Ua>>2]=Dg,EE=Qi+(Z7<<5)|0,bg=e[EE>>2]|0,_g=(B4+1312|0)+(Z7<<2)|0,e[_g>>2]=bg,Rg=B4+3420|0,Oa=e[Rg>>2]|0,xg=(Oa|0)==0,Es=Wt+12|0,Ha=e[Es>>2]|0,Fg=(Ha|0)>0;do if(xg){if(Fg)for(Lg=(Qi+(Z7<<5)|0)+24|0,no=e[Lg>>2]|0,BE=Wt+24|0,po=0;;)if(nr=BE+(po<<2)|0,un=no+(po<<4)|0,vt=e[un>>2]|0,St=(vt|0)==0,St||(Dt=e[nr>>2]|0,$o=Dt|1,e[nr>>2]=$o),lo=(no+(po<<4)|0)+4|0,Jg=e[lo>>2]|0,Kg=(Jg|0)==0,Kg||(k2=e[nr>>2]|0,E5=k2|2,e[nr>>2]=E5),r5=(no+(po<<4)|0)+8|0,x2=e[r5>>2]|0,R2=(x2|0)==0,R2||(m2=e[nr>>2]|0,C5=m2|4,e[nr>>2]=C5),u5=(no+(po<<4)|0)+12|0,S5=e[u5>>2]|0,G5=(S5|0)==0,G5||(D5=e[nr>>2]|0,H2=D5|8,e[nr>>2]=H2),I5=po+1|0,A5=e[Es>>2]|0,l5=(I5|0)<(A5|0),l5)po=I5;else{uo=A5;break}else uo=Ha;co=(Qi+(Z7<<5)|0)+16|0,ja=e[co>>2]|0,bt=B4+24|0,Dr=e[bt>>2]|0,Xa=(Dr|0)>0,qE=ja;e:do if(Xa)for(dC=0;;){if(e$=(B4+1824|0)+(dC<<2)|0,YE=e[e$>>2]|0,t$=(YE|0)==(ja|0),t$){R=dC;break e}if(Vg=dC+1|0,ho=(Vg|0)<(Dr|0),ho)dC=Vg;else{X9=116;break}}else X9=116;while(!1);if((X9|0)==116&&(X9=0,JE=Dr+1|0,e[bt>>2]=JE,R=Dr),KE=Wt+20|0,e[KE>>2]=R,VE=(B4+1824|0)+(R<<2)|0,e[VE>>2]=qE,In=(uo|0)>0,!In)break;for(Je=(Qi+(Z7<<5)|0)+24|0,y4=Wt+280|0,xr=0,h$=0;;){if(zg=e[Je>>2]|0,zE=zg+(h$<<4)|0,i$=e[zE>>2]|0,Zg=(i$|0)==0,ZE=i$,Zg)ps=zg,AC=xr;else{Io=e[bt>>2]|0,jE=(Io|0)>0;e:do if(jE)for(gC=0;;){if(XE=(B4+1824|0)+(gC<<2)|0,eC=e[XE>>2]|0,tC=(eC|0)==(i$|0),tC){x=gC;break e}if(Wg=gC+1|0,iC=(Wg|0)<(Io|0),iC)gC=Wg;else{X9=123;break}}else X9=123;while(!1);(X9|0)==123&&(X9=0,rC=Io+1|0,e[bt>>2]=rC,x=Io),nC=xr+1|0,jt=y4+(xr<<2)|0,e[jt>>2]=x,dn=(B4+1824|0)+(x<<2)|0,e[dn>>2]=ZE,n0=e[Je>>2]|0,ps=n0,AC=nC}if(r$=(ps+(h$<<4)|0)+4|0,Qs=e[r$>>2]|0,W7=(Qs|0)==0,ys=Qs,W7)d2=ps,J4=AC;else{K1=e[bt>>2]|0,P1=(K1|0)>0;e:do if(P1)for($C=0;;){if(H1=(B4+1824|0)+($C<<2)|0,Y1=e[H1>>2]|0,j1=(Y1|0)==(Qs|0),j1){D=$C;break e}if(r2=$C+1|0,W1=(r2|0)<(K1|0),W1)$C=r2;else{X9=147;break}}else X9=147;while(!1);(X9|0)==147&&(X9=0,O1=K1+1|0,e[bt>>2]=O1,D=K1),l2=AC+1|0,z1=y4+(AC<<2)|0,e[z1>>2]=D,h2=(B4+1824|0)+(D<<2)|0,e[h2>>2]=ys,i0=e[Je>>2]|0,d2=i0,J4=l2}if(s2=(d2+(h$<<4)|0)+8|0,V1=e[s2>>2]|0,g2=(V1|0)==0,a2=V1,g2)_2=d2,l$=J4;else{t2=e[bt>>2]|0,$2=(t2|0)>0;e:do if($2)for(lC=0;;){if(i2=(B4+1824|0)+(lC<<2)|0,o2=e[i2>>2]|0,X1=(o2|0)==(V1|0),X1){Q=lC;break e}if(n2=lC+1|0,f2=(n2|0)<(t2|0),f2)lC=n2;else{X9=153;break}}else X9=153;while(!1);(X9|0)==153&&(X9=0,y2=t2+1|0,e[bt>>2]=y2,Q=t2),S2=J4+1|0,w2=y4+(J4<<2)|0,e[w2>>2]=Q,C2=(B4+1824|0)+(Q<<2)|0,e[C2>>2]=a2,K=e[Je>>2]|0,_2=K,l$=S2}if(M2=(_2+(h$<<4)|0)+12|0,G2=e[M2>>2]|0,u2=(G2|0)==0,K2=G2,u2)fB=l$;else{N2=e[bt>>2]|0,T2=(N2|0)>0;e:do if(T2)for(cC=0;;){if(O2=(B4+1824|0)+(cC<<2)|0,V2=e[O2>>2]|0,s5=(V2|0)==(G2|0),s5){_=cC;break e}if(P2=cC+1|0,T1=(P2|0)<(N2|0),T1)cC=P2;else{X9=159;break}}else X9=159;while(!1);(X9|0)==159&&(X9=0,j2=N2+1|0,e[bt>>2]=j2,_=N2),R5=l$+1|0,X2=y4+(l$<<2)|0,e[X2>>2]=_,v5=(B4+1824|0)+(_<<2)|0,e[v5>>2]=K2,fB=R5}if(w5=h$+1|0,O5=e[Es>>2]|0,$5=(w5|0)<(O5|0),$5)xr=fB,h$=w5;else break}}else{if(Fg)for(CE=(Qi+(Z7<<5)|0)+28|0,hn=e[CE>>2]|0,mE=Wt+24|0,Bo=0;;)if(yi=mE+(Bo<<2)|0,pE=hn+(Bo<<4)|0,QE=e[pE>>2]|0,yE=(QE|0)==0,yE||(wE=e[yi>>2]|0,kE=wE|1,e[yi>>2]=kE),vE=(hn+(Bo<<4)|0)+4|0,wi=e[vE>>2]|0,SE=(wi|0)==0,SE||(t6=e[yi>>2]|0,i3=t6|2,e[yi>>2]=i3),o3=(hn+(Bo<<4)|0)+8|0,R3=e[o3>>2]|0,h6=(R3|0)==0,h6||(B3=e[yi>>2]|0,p3=B3|4,e[yi>>2]=p3),X3=(hn+(Bo<<4)|0)+12|0,V3=e[X3>>2]|0,N3=(V3|0)==0,N3||(Z5=e[yi>>2]|0,k3=Z5|8,e[yi>>2]=k3),c3=Bo+1|0,U3=e[Es>>2]|0,o6=(c3|0)<(U3|0),o6)Bo=c3;else{qg=U3;break}else qg=Ha;DE=(Qi+(Z7<<5)|0)+20|0,Tg=e[DE>>2]|0,hi=B4+24|0,so=e[hi>>2]|0,qa=(so|0)>0,Gg=Tg;e:do if(qa)for(aC=0;;){if(Ng=(B4+1824|0)+(aC<<2)|0,_E=e[Ng>>2]|0,Ug=(_E|0)==(Tg|0),Ug){B=aC;break e}if(Og=aC+1|0,RE=(Og|0)<(so|0),RE)aC=Og;else{X9=100;break}}else X9=100;while(!1);if((X9|0)==100&&(X9=0,Hg=so+1|0,e[hi>>2]=Hg,B=so),FE=Wt+20|0,e[FE>>2]=B,LE=(B4+1824|0)+(B<<2)|0,e[LE>>2]=Gg,ME=(qg|0)>0,!ME)break;for(Cs=(Qi+(Z7<<5)|0)+28|0,Ao=Wt+280|0,Ds=0,c$=0;;){if(oo=e[Cs>>2]|0,TE=oo+(c$<<4)|0,Ya=e[TE>>2]|0,NE=(Ya|0)==0,Yg=Ya,NE)Bs=oo,mn=Ds;else{ms=e[hi>>2]|0,UE=(ms|0)>0;e:do if(UE)for(IC=0;;){if(OE=(B4+1824|0)+(IC<<2)|0,Ja=e[OE>>2]|0,Ka=(Ja|0)==(Ya|0),Ka){y=IC;break e}if(ao=IC+1|0,Va=(ao|0)<(ms|0),Va)IC=ao;else{X9=107;break}}else X9=107;while(!1);(X9|0)==107&&(X9=0,za=ms+1|0,e[hi>>2]=za,y=ms),vr=Ds+1|0,Sr=Ao+(Ds<<2)|0,e[Sr>>2]=y,Za=(B4+1824|0)+(y<<2)|0,e[Za>>2]=Yg,H=e[Cs>>2]|0,Bs=H,mn=vr}if(Wa=(Bs+(c$<<4)|0)+4|0,rr=e[Wa>>2]|0,fn=(rr|0)==0,PE=rr,fn)b5=Bs,En=mn;else{m5=e[hi>>2]|0,M1=(m5|0)>0;e:do if(M1)for(hC=0;;){if(c5=(B4+1824|0)+(hC<<2)|0,o5=e[c5>>2]|0,Z2=(o5|0)==(rr|0),Z2){v=hC;break e}if(c2=hC+1|0,B5=(c2|0)<(m5|0),B5)hC=c2;else{X9=171;break}}else X9=171;while(!1);(X9|0)==171&&(X9=0,e5=m5+1|0,e[hi>>2]=e5,v=m5),n5=mn+1|0,g5=Ao+(mn<<2)|0,e[g5>>2]=v,J2=(B4+1824|0)+(v<<2)|0,e[J2>>2]=PE,V=e[Cs>>2]|0,b5=V,En=n5}if(h5=(b5+(c$<<4)|0)+8|0,W2=e[h5>>2]|0,a5=(W2|0)==0,F2=W2,a5)h3=b5,Cn=En;else{p5=e[hi>>2]|0,q5=(p5|0)>0;e:do if(q5)for(fC=0;;){if(e3=(B4+1824|0)+(fC<<2)|0,d5=e[e3>>2]|0,f3=(d5|0)==(W2|0),f3){S=fC;break e}if(g3=fC+1|0,t3=(g3|0)<(p5|0),t3)fC=g3;else{X9=177;break}}else X9=177;while(!1);(X9|0)==177&&(X9=0,s3=p5+1|0,e[hi>>2]=s3,S=p5),E3=En+1|0,F5=Ao+(En<<2)|0,e[F5>>2]=S,z5=(B4+1824|0)+(S<<2)|0,e[z5>>2]=F2,A0=e[Cs>>2]|0,h3=A0,Cn=E3}if(y3=(h3+(c$<<4)|0)+12|0,m3=e[y3>>2]|0,q3=(m3|0)==0,M3=m3,q3)x9=Cn;else{Q3=e[hi>>2]|0,X5=(Q3|0)>0;e:do if(X5)for(uC=0;;){if(j3=(B4+1824|0)+(uC<<2)|0,_3=e[j3>>2]|0,T3=(_3|0)==(m3|0),T3){w=uC;break e}if(a3=uC+1|0,$3=(a3|0)<(Q3|0),$3)uC=a3;else{X9=183;break}}else X9=183;while(!1);(X9|0)==183&&(X9=0,l3=Q3+1|0,e[hi>>2]=l3,w=Q3),C3=Cn+1|0,Y5=Ao+(Cn<<2)|0,e[Y5>>2]=w,P5=(B4+1824|0)+(w<<2)|0,e[P5>>2]=M3,x9=C3}if(y5=c$+1|0,G3=e[Es>>2]|0,L5=(y5|0)<(G3|0),L5)Ds=x9,c$=y5;else break}}while(!1);jg=B4+3480|0,Xg=+o1[jg>>3],Co=Xg*1e3,ws=(B4+1056|0)+(fi<<2)|0,vs=e[ws>>2]|0,sC=e[pg>>2]|0,Ss=+(sC|0),sr=Ss*.5,eh=B4+(fi<<2)|0,br=e[eh>>2]|0,Xt=br>>1,n$=Co>sr,IB=n$?sr:Co,s$=IB/sr,Pi=+(Xt|0),o$=Pi*s$,a$=~~o$,_r=vs+1116|0,e[_r>>2]=a$,s6=(Qi+(Z7<<5)|0)+4|0,mo=e[s6>>2]|0;do if((mo|0)==2)ih=250;else if((mo|0)==1){if(Rr=e[Rg>>2]|0,th=(Rr|0)==0,Qe=B4+2996|0,$$=B4+2968|0,JQ=th?$$:Qe,YQ=e[JQ>>2]|0,qQ=+(YQ|0),dB=qQ*1e3,B8=dB>sr,!B8){ih=dB;break}ih=sr}else ih=IB;while(!1);f0=e[_g>>2]|0,Q0=(f0|0)==2;do if(Q0){if(d0=B4+12|0,y0=e[d0>>2]|0,h0=(y0|0)>0,h0)for(im=0;;){if(E0=(B4+544|0)+(im<<2)|0,C0=e[E0>>2]|0,u0=e[C0>>2]|0,k0=(u0|0)>0,k0)for(CC=0;;){J0=(C0+1092|0)+(CC<<2)|0,B0=e[J0>>2]|0,x0=(B0|0)==(Z7|0);do if(x0){if(F0=e[Qg>>2]|0,M0=(F0|0)>0,M0)uB=0,sm=0;else{oC=0;break}for(;;)if(G0=(C0+4|0)+(sm<<2)|0,p0=e[G0>>2]|0,P0=(p0|0)==(CC|0),R0=P0&1,P=R0+uB|0,S0=sm+1|0,RQ=(S0|0)==(F0|0),RQ){oC=P;break}else uB=P,sm=S0}else oC=0;while(!1);if(L0=CC+1|0,H0=(L0|0)<(u0|0),N0=(oC|0)==0,V0=H0&N0,V0)CC=L0;else{XC=oC;break}}else XC=0;if(T0=im+1|0,U0=(T0|0)<(y0|0),r1=(XC|0)==0,O0=U0&r1,O0)im=T0;else{jC=XC;break}}else jC=0;if(e1=ih/sr,v0=+(jC|0),i1=v0*Pi,$1=i1*e1,f1=e[Ua>>2]|0,g1=+(f1|0),l1=$1/g1,s1=l1+.9,a1=~~s1,n1=i5(a1,f1)|0,A1=Wt+4|0,e[A1>>2]=n1,z0=i5(jC,Xt)|0,I1=(n1|0)>(z0|0),!I1){U=A1,Z1=n1,v1=f1;break}E1=(z0|0)%(f1|0)&-1,u1=z0-E1|0,e[A1>>2]=u1,U=A1,Z1=u1,v1=f1}else{if(d1=ih/sr,B1=d1*Pi,p1=e[Ua>>2]|0,Q1=+(p1|0),D1=B1/Q1,_1=D1+.9,y1=~~_1,k1=i5(y1,p1)|0,L1=Wt+4|0,e[L1>>2]=k1,N1=(k1|0)>(Xt|0),!N1){U=L1,Z1=k1,v1=p1;break}w1=(Xt|0)%(p1|0)&-1,U1=Xt-w1|0,e[L1>>2]=U1,U=L1,Z1=U1,v1=p1}while(!1);if(G1=(Z1|0)==0,G1&&(e[U>>2]=v1),u3=rm+1|0,w6=e[ro>>2]|0,k6=(u3|0)<(w6|0),k6)rm=u3;else break}if(m6=fi+1|0,z3=(m6|0)<(o|0),z3)fi=m6;else break}return a6=j+3428|0,B6=e[a6>>2]|0,_6=(B6|0)>0,_6?(Y6=t+16|0,e[Y6>>2]=B6):(C6=e[l0>>2]|0,v3=C6+3396|0,W3=e[v3>>2]|0,f6=C6+3400|0,O3=+o1[f6>>3],S3=~~O3,P3=+(S3|0),Y3=O3-P3,v6=W3+4|0,i6=e[v6>>2]|0,r3=(i6|0)==0,r3?p=-1:(O6=e[Qg>>2]|0,u6=i6+(S3<<3)|0,D3=+o1[u6>>3],T6=1-Y3,e6=D3*T6,p6=S3+1|0,R6=i6+(p6<<3)|0,K6=+o1[R6>>3],I6=K6*Y3,J6=I6+e6,x3=+(O6|0),G6=J6*x3,KQ=~~G6,p=KQ),j6=t+16|0,e[j6>>2]=p),r9=j+3424|0,x6=e[r9>>2]|0,N6=t+20|0,e[N6>>2]=x6,S6=j+3440|0,V6=e[S6>>2]|0,Q6=t+12|0,e[Q6>>2]=V6,F6=(B6|0)==0,F6?s0=0:(F3=j+3444|0,X6=e[F3>>2]|0,s9=+(X6|0),W6=+(B6|0),g9=s9/W6,h9=~~g9,s0=h9),f9=t+24|0,e[f9>>2]=s0,A9=j+3420|0,o9=e[A9>>2]|0,L9=(o9|0)==0,L9?(C=0,C|0):(d6=e[a6>>2]|0,e9=j+3360|0,e[e9>>2]=d6,M9=e[r9>>2]|0,u9=j+3364|0,e[u9>>2]=M9,u4=e[S6>>2]|0,r4=j+3368|0,e[r4>>2]=u4,l4=j+3444|0,T9=e[l4>>2]|0,K9=j+3372|0,e[K9>>2]=T9,v9=j+3448|0,I9=+o1[v9>>3],t9=j+3376|0,o1[t9>>3]=I9,I4=j+3432|0,k4=+o1[I4>>3],n4=j+3384|0,o1[n4>>3]=k4,C=0,C|0)}function KS(t,n,o,a){t=t|0,n=n|0,o=o|0,a=+a;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0;if(P=m,I=(o|0)<1,I)f=-131;else if(C=t+28|0,Q=e[C>>2]|0,_=a,x=_+1e-7,R=x,L=!(R>=1),E=L?R:.9998999834060669,M=Q+3416|0,s[M>>2]=E,T=E,G=Q+3400|0,p=VS(n,o,T,0,G)|0,B=Q+3396|0,e[B>>2]=p,v=(p|0)==0,v)f=-130;else return zS(t,n,o),S=Q+3420|0,e[S>>2]=0,w=Q+3464|0,e[w>>2]=1,y=JS(t)|0,D=(y|0)==0,D?(c=0,c|0):(nB(t),c=y,c|0);return nB(t),c=f,c|0}function KC(t,n,o,a,c,f){t=t|0,n=+n,o=o|0,a=a|0,c=c|0,f=f|0;var E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0;for(B1=m,E=~~n,I=+(E|0),x=n-I,J=t+28|0,i0=e[J>>2]|0,d0=(i0+2852|0)+(o<<2)|0,F0=e[d0>>2]|0,V0=a+(E*20|0)|0,g1=e[V0>>2]|0,h1=+(g1|0),C=1-x,p=h1*C,B=E+1|0,v=a+(B*20|0)|0,S=e[v>>2]|0,w=+(S|0),y=w*x,D=y+p,Q=D,_=F0+12|0,s[_>>2]=Q,R=(a+(E*20|0)|0)+4|0,L=e[R>>2]|0,M=+(L|0),T=M*C,G=(a+(B*20|0)|0)+4|0,N=e[G>>2]|0,P=+(N|0),z=P*x,Y=z+T,t0=Y,W=F0+16|0,s[W>>2]=t0,e0=(a+(E*20|0)|0)+8|0,H=e[e0>>2]|0,X=+(H|0),U=X*C,o0=(a+(B*20|0)|0)+8|0,Z=e[o0>>2]|0,V=+(Z|0),A0=V*x,n0=A0+U,r0=n0,K=F0+20|0,s[K>>2]=r0,c0=(a+(E*20|0)|0)+12|0,s0=+s[c0>>2],l0=s0,j=l0*C,a0=(a+(B*20|0)|0)+12|0,g0=+s[a0>>2],f0=g0,Q0=f0*x,y0=Q0+j,h0=y0,E0=F0+24|0,s[E0>>2]=h0,C0=(a+(E*20|0)|0)+16|0,u0=+s[C0>>2],k0=u0,J0=k0*C,D0=(a+(B*20|0)|0)+16|0,B0=+s[D0>>2],x0=B0,M0=x0*x,G0=M0+J0,p0=G0,P0=F0+28|0,s[P0>>2]=p0,R0=c+(E<<2)|0,S0=e[R0>>2]|0,L0=+(S0|0),q0=L0*C,H0=c+(B<<2)|0,N0=e[H0>>2]|0,T0=+(N0|0),U0=T0*x,r1=U0+q0,O0=r1,e1=F0+496|0,s[e1>>2]=O0,u1=0;v0=(f+(E*68|0)|0)+(u1<<2)|0,i1=e[v0>>2]|0,c1=+(i1|0),$1=c1*C,f1=(f+(B*68|0)|0)+(u1<<2)|0,l1=e[f1>>2]|0,s1=+(l1|0),a1=s1*x,n1=a1+$1,A1=n1,z0=(F0+36|0)+(u1<<2)|0,s[z0>>2]=A1,I1=u1+1|0,E1=(I1|0)==17,!E1;)u1=I1}function VC(t,n,o,a,c,f,E){t=t|0,n=+n,o=o|0,a=a|0,c=c|0,f=f|0,E=+E;var I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0;for(w2=m,w=~~n,y=+(w|0),o0=n-y,j=t+28|0,k0=e[j>>2]|0,S0=(k0+2852|0)+(o<<2)|0,v0=e[S0>>2]|0,z0=a+(w<<2)|0,y1=e[z0>>2]|0,P1=+(y1|0),D=1-o0,z=P1*D,Y=w+1|0,t0=a+(Y<<2)|0,J=e[t0>>2]|0,W=+(J|0),e0=W*o0,H=e0+z,X=H,U=v0+108|0,s[U>>2]=X,Z=f+(o*12|0)|0,V=e[Z>>2]|0,A0=v0+120|0,e[A0>>2]=V,n0=(f+(o*12|0)|0)+4|0,i0=e[n0>>2]|0,r0=v0+124|0,e[r0>>2]=i0,K=(f+(o*12|0)|0)+8|0,c0=e[K>>2]|0,s0=v0+128|0,e[s0>>2]=c0,t2=0;;)if(l0=(c+(w*204|0)|0)+(t2<<2)|0,a0=e[l0>>2]|0,g0=+(a0|0),f0=g0*D,Q0=(c+(Y*204|0)|0)+(t2<<2)|0,d0=e[Q0>>2]|0,y0=+(d0|0),h0=y0*o0,E0=h0+f0,C0=E0,u0=(v0+132|0)+(t2<<2)|0,s[u0>>2]=C0,J0=t2+1|0,V1=(J0|0)==17,V1){$2=0;break}else t2=J0;for(;;)if(_1=((c+(w*204|0)|0)+68|0)+($2<<2)|0,k1=e[_1>>2]|0,x1=+(k1|0),L1=x1*D,N1=((c+(Y*204|0)|0)+68|0)+($2<<2)|0,w1=e[N1>>2]|0,U1=+(w1|0),Z1=U1*o0,G1=Z1+L1,v1=G1,K1=(v0+200|0)+($2<<2)|0,s[K1>>2]=v1,H1=$2+1|0,g2=(H1|0)==17,g2){i2=0;break}else $2=H1;for(;q1=((c+(w*204|0)|0)+136|0)+(i2<<2)|0,Y1=e[q1>>2]|0,j1=+(Y1|0),r2=j1*D,W1=((c+(Y*204|0)|0)+136|0)+(i2<<2)|0,O1=e[W1>>2]|0,l2=+(O1|0),z1=l2*o0,h2=z1+r2,Q=h2,_=(v0+268|0)+(i2<<2)|0,s[_>>2]=Q,x=i2+1|0,a2=(x|0)==17,!a2;)i2=x;for(R=v0+132|0,L=+s[R>>2],p0=L+6,M=v0+132|0,T=L,G=T+E,N=G,P=N>2]=y2,D0=1;I=(v0+132|0)+(D0<<2)|0,B=+s[I>>2],B0=(v0+132|0)+(D0<<2)|0,x0=B,F0=x0+E,M0=F0,G0=M0>2]=o2,P0=D0+1|0,s2=(P0|0)==17,!s2;)D0=P0;for(R0=v0+200|0,L0=+s[R0>>2],q0=L0+6,H0=v0+200|0,N0=L0,V0=N0+E,T0=V0,U0=T0>2]=n2,r1=1;C=(v0+200|0)+(r1<<2)|0,v=+s[C>>2],O0=(v0+200|0)+(r1<<2)|0,e1=v,i1=e1+E,c1=i1,$1=c1>2]=X1,f1=r1+1|0,d2=(f1|0)==17,!d2;)r1=f1;for(g1=v0+268|0,l1=+s[g1>>2],s1=l1+6,a1=v0+268|0,n1=l1,A1=n1+E,I1=A1,h1=I1>2]=e2,E1=1;p=(v0+268|0)+(E1<<2)|0,S=+s[p>>2],u1=(v0+268|0)+(E1<<2)|0,d1=S,B1=d1+E,p1=B1,Q1=p1>2]=f2,D1=E1+1|0,A2=(D1|0)==17,!A2;)E1=D1}function VS(t,n,o,a,c){t=t|0,n=n|0,o=+o,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0;Q1=m,w=(a|0)==0;e:do if(w){for(H=26336,z0=0;;){if(e0=e[H>>2]|0,X=e0+12|0,U=e[X>>2]|0,o0=(U|0)==-1,V=(U|0)==(t|0),u1=o0|V,u1&&(A0=e0+16|0,n0=e[A0>>2]|0,i0=(n0|0)>(n|0),!i0&&(r0=e0+20|0,K=e[r0>>2]|0,c0=(K|0)<(n|0),!c0&&(s0=e[e0>>2]|0,l0=e0+8|0,j=e[l0>>2]|0,g0=+o1[j>>3],f0=g0>o,!f0&&(y0=j+(s0<<3)|0,h0=+o1[y0>>3],E0=h0>2]|0,J0=Z+12|0,L0=e[J0>>2]|0,i1=(L0|0)==-1,s1=(L0|0)==(t|0),d1=i1|s1,d1&&(a1=Z+16|0,D=e[a1>>2]|0,Q=(D|0)>(n|0),!Q&&(_=Z+20|0,x=e[_>>2]|0,R=(x|0)<(n|0),!R&&(L=e[Z>>2]|0,M=Z+4|0,T=e[M>>2]|0,G=+o1[T>>3],N=P>3],t0=P>Y,!t0))))){E=P,I=L,C=a0,p=T,l1=G;break e}if(A1=I1+1|0,J=26336+(A1<<2)|0,W=(A1|0)==17,W){f=0;break}else a0=J,I1=A1}return f|0}while(!1);C0=(I|0)>0;e:do if(C0)for(k0=l1,E1=0;;){if(u0=!(E>=k0),S=E1+1|0,!u0&&(D0=p+(S<<3)|0,B0=+o1[D0>>3],x0=E>3],k0=v,E1=S}else h1=0;while(!1);return M0=(h1|0)==(I|0),M0?(G0=+(I|0),p0=G0+-.001,B1=p0):(P0=p+(h1<<3)|0,R0=+o1[P0>>3],S0=R0,q0=h1+1|0,H0=p+(q0<<3)|0,N0=+o1[H0>>3],V0=N0,T0=S0,U0=E-T0,r1=V0-S0,O0=r1,e1=U0/O0,v0=e1,c1=+(h1|0),$1=v0+c1,f1=$1,B1=f1),o1[c>>3]=B1,g1=e[C>>2]|0,f=g1,f|0}function zS(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0;v0=m,I=t+28|0,C=e[I>>2]|0,R=C+3396|0,W=e[R>>2]|0,e[t>>2]=0,r0=t+4|0,e[r0>>2]=n,y0=t+8|0,e[y0>>2]=o,M0=C+3456|0,e[M0>>2]=1,T0=C+3460|0,e[T0>>2]=1,r1=C+3400|0,O0=+o1[r1>>3],p=~~O0,B=+(p|0),v=O0-B,S=C+3472|0,o1[S>>3]=O0,w=C+3488|0,y=e[w>>2]|0,D=(y|0)==0,D?(Q=W+120|0,_=e[Q>>2]|0,x=_+(p<<3)|0,L=+o1[x>>3],M=1-v,T=L*M,G=p+1|0,N=_+(G<<3)|0,P=+o1[N>>3],z=P*v,Y=z+T,t0=C+3480|0,o1[t0>>3]=Y,c=G,f=M):(a=1-v,E=p+1|0,c=E,f=a),J=W+112|0,e0=e[J>>2]|0,H=e0+(p<<2)|0,X=e[H>>2]|0,U=+(X|0),o0=U*f,Z=e0+(c<<2)|0,V=e[Z>>2]|0,A0=+(V|0),n0=A0*v,i0=n0+o0,K=C+3496|0,o1[K>>3]=i0,c0=W+116|0,s0=e[c0>>2]|0,l0=s0+(p<<2)|0,j=e[l0>>2]|0,a0=+(j|0),g0=a0*f,f0=s0+(c<<2)|0,Q0=e[f0>>2]|0,d0=+(Q0|0),h0=d0*v,E0=h0+g0,C0=C+3504|0,o1[C0>>3]=E0,u0=C+3512|0,o1[u0>>3]=-6,k0=C+3520|0,o1[k0>>3]=O0,J0=C+3528|0,o1[J0>>3]=O0,D0=C+3536|0,o1[D0>>3]=O0,B0=C+3544|0,o1[B0>>3]=O0,x0=C+3552|0,o1[x0>>3]=O0,F0=C+3560|0,o1[F0>>3]=O0,G0=C+3568|0,o1[G0>>3]=O0,p0=C+3576|0,o1[p0>>3]=O0,P0=C+3584|0,o1[P0>>3]=O0,R0=C+3592|0,o1[R0>>3]=O0,S0=C+3600|0,o1[S0>>3]=O0,L0=C+3608|0,o1[L0>>3]=O0,q0=C+3616|0,o1[q0>>3]=O0,H0=C+3624|0,o1[H0>>3]=O0,N0=C+3632|0,o1[N0>>3]=O0,V0=C+3640|0,o1[V0>>3]=O0,U0=C+3648|0,o1[U0>>3]=O0}function ZS(t,n,o,a,c,f){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0;var E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0;if(N0=m,I=(c|0)!=0,C=I?a:0,R=I?f:0,W=n+(C<<2)|0,r0=e[W>>2]|0,y0=520336+(r0<<2)|0,k0=e[y0>>2]|0,J0=n+(R<<2)|0,D0=e[J0>>2]|0,B0=520336+(D0<<2)|0,p=e[B0>>2]|0,B=o+(c<<2)|0,v=e[B>>2]|0,S=o+(C<<2)|0,w=e[S>>2]|0,y=o+(R<<2)|0,D=e[y>>2]|0,Q=(v|0)/4&-1,_=(w|0)/4&-1,x=Q-_|0,L=(w|0)/2&-1,M=x+L|0,T=(v|0)/2&-1,G=T+Q|0,E=(D|0)/-4&-1,N=G+E|0,P=(D|0)/2&-1,z=N+P|0,Y=(x|0)>0,Y?(t0=Q-_|0,J=t0<<2,Ae(t|0,0,J|0)|0,F0=x):F0=0,e0=(F0|0)<(M|0),e0)for(H=Q+L|0,X=H-F0|0,U=X-_|0,M0=F0,P0=0;A0=k0+(P0<<2)|0,n0=+s[A0>>2],i0=t+(M0<<2)|0,K=+s[i0>>2],c0=K*n0,s[i0>>2]=c0,s0=M0+1|0,l0=P0+1|0,x0=(l0|0)==(U|0),!x0;)M0=s0,P0=l0;if(o0=(D|0)>1,o0){for(Z=N+1|0,V=(z|0)>(Z|0),p0=N,S0=P;R0=S0+-1|0,f0=p+(R0<<2)|0,Q0=+s[f0>>2],d0=t+(p0<<2)|0,h0=+s[d0>>2],E0=h0*Q0,s[d0>>2]=E0,C0=p0+1|0,u0=(C0|0)<(z|0),u0;)p0=C0,S0=R0;q0=V?z:Z,G0=q0}else G0=N;j=(v|0)>(G0|0),j&&(L0=t+(G0<<2)|0,a0=v-G0|0,g0=a0<<2,Ae(L0|0,0,g0|0)|0)}function WS(t,n,o){t=t|0,n=+n,o=+o;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0;if(K=m,m=m+64|0,i0=K+32|0,n0=K,a=k9(688)|0,c=a+408|0,lS(c),D=~~n,KS(c,t,D,o)|0,z=a+440|0,oS(z),aS(z,553008,553016),X=a+456|0,Nv(X,c)|0,U=a+568|0,Tv(X,U)|0,o0=Kp(0)|0,nD(o0),Z=sD()|0,Sv(a,Z)|0,V=a+680|0,e[V>>2]=0,A0=a+684|0,e[A0>>2]=0,f=a+360|0,cS(X,z,f,i0,n0)|0,YC(a,f)|0,YC(a,i0)|0,YC(a,n0)|0,E=a+392|0,I=zp(a,E)|0,C=(I|0)==0,C)return m=K,a|0;for(p=a+396|0,B=a+404|0,v=a+400|0;S=e[A0>>2]|0,w=e[p>>2]|0,y=w+S|0,Q=e[B>>2]|0,_=y+Q|0,x=(_|0)==0,x||(M=e[V>>2]|0,T=Ni(M,_)|0,e[V>>2]=T,G=e[A0>>2]|0,N=T+G|0,P=e[E>>2]|0,Y=e[p>>2]|0,i4(N|0,P|0,Y|0)|0,t0=Y+G|0,e[A0>>2]=t0,J=T+t0|0,W=e[v>>2]|0,e0=e[B>>2]|0,i4(J|0,W|0,e0|0)|0,H=e0+t0|0,e[A0>>2]=H),R=zp(a,E)|0,L=(R|0)==0,!L;);return m=K,a|0}function jS(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0;C=m,Dv(t)|0,n=t+568|0,Gv(n)|0,o=t+456|0,Xp(o),a=t+440|0,$S(a),c=t+408|0,nB(c),f=t+680|0,E=e[f>>2]|0,I2(E),I2(t)}function XS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0;return f=m,o=t+456|0,a=eQ(o,n)|0,a|0}function eD(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0;if(K=m,o=t+456|0,Uv(o,n)|0,a=t+568|0,y=tQ(o,a)|0,P=(y|0)==1,!!P)for(o0=t+360|0,Z=t+392|0,V=t+684|0,A0=t+396|0,n0=t+404|0,i0=t+680|0,c=t+392|0,f=t+400|0;;){if(xv(a,0)|0,Mv(a)|0,C=jp(o,o0)|0,p=(C|0)==0,!p)for(;;){if(YC(t,o0)|0,S=Zp(t,Z)|0,w=(S|0)==0,!w)for(;D=e[V>>2]|0,Q=e[A0>>2]|0,_=Q+D|0,x=e[n0>>2]|0,R=_+x|0,L=(R|0)==0,L||(G=e[i0>>2]|0,N=Ni(G,R)|0,e[i0>>2]=N,z=e[V>>2]|0,Y=N+z|0,t0=e[c>>2]|0,J=e[A0>>2]|0,i4(Y|0,t0|0,J|0)|0,W=J+z|0,e[V>>2]=W,e0=N+W|0,H=e[f>>2]|0,X=e[n0>>2]|0,i4(e0|0,H|0,X|0)|0,U=X+W|0,e[V>>2]=U),M=Zp(t,Z)|0,T=(M|0)==0,!T;);if(B=jp(o,o0)|0,v=(B|0)==0,v)break}if(E=tQ(o,a)|0,I=(E|0)==1,!I)break}}function tD(t){t=t|0;var n=0,o=0,a=0,c=0;return c=m,n=t+684|0,o=e[n>>2]|0,o|0}function iD(t){t=t|0;var n=0,o=0,a=0,c=0,f=0;return f=m,n=t+684|0,e[n>>2]=0,o=t+680|0,a=e[o>>2]|0,a|0}function zC(t,n){t=+t,n=n|0;var o=0,a=0,c=0;return c=m,o=+rD(t,n),+o}function Fh(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0;if(R3=m,m=m+688|0,i3=R3+424|0,V5=R3+192|0,X5=R3,X=i5(o,n)|0,U=(X|0)==0,U){m=R3;return}for(J=X-o|0,q1=X5+4|0,e[q1>>2]=o,e[X5>>2]=o,e2=o,f5=o,y3=2;A2=e2+o|0,T2=A2+f5|0,x5=X5+(y3<<2)|0,e[x5>>2]=T2,k5=T2>>>0>>0,t5=y3+1|0,k5;)y2=f5,f5=T2,y3=t5,e2=y2;if(o0=0-o|0,j=t+J|0,k0=(J|0)>0,k0)for(S0=(o|0)==0,v0=j,y1=1,V2=0,F5=t,N5=1;;){z0=y1&3,K1=(z0|0)==3;do if(K1){e[V5>>2]=F5,P1=(N5|0)>1;e:do if(P1){for(B=N5,Q=F5,O1=F5,W5=1;;){if(H1=Q+o0|0,Y1=B+-2|0,j1=X5+(Y1<<2)|0,r2=e[j1>>2]|0,L5=r2+o|0,W=0-L5|0,W1=Q+W|0,l2=ct[a&15](O1,W1)|0,z1=(l2|0)>-1,z1&&(h2=ct[a&15](O1,H1)|0,s2=(h2|0)>-1,s2)){h3=W5;break}if(d2=ct[a&15](W1,H1)|0,V1=(d2|0)>-1,g2=W5+1|0,a2=V5+(W5<<2)|0,V1?(e[a2>>2]=W1,t2=B+-1|0,f=W1,C=t2):(e[a2>>2]=H1,f=H1,C=Y1),$2=(C|0)>1,!$2){h3=g2;break}P=e[V5>>2]|0,B=C,Q=f,O1=P,W5=g2}if(i2=(h3|0)<2,!i2&&(o2=V5+(h3<<2)|0,e[o2>>2]=i3,!S0))for(y=o,N2=i3;;){for(u2=y>>>0>256,n2=u2?256:y,K2=e[V5>>2]|0,i4(N2|0,K2|0,n2|0)|0,_2=K2,q3=0;S2=V5+(q3<<2)|0,w2=q3+1|0,C2=V5+(w2<<2)|0,M2=e[C2>>2]|0,i4(_2|0,M2|0,n2|0)|0,G2=_2+n2|0,e[S2>>2]=G2,t3=(w2|0)==(h3|0),!t3;)_2=M2,q3=w2;if(X1=(y|0)==(n2|0),X1)break e;f2=y-n2|0,Y=e[o2>>2]|0,y=f2,N2=Y}}while(!1);q2=y1>>>2,O2=V2<<30,s5=q2|O2,P2=V2>>>2,T1=N5+2|0,r0=s5,v1=P2,P5=T1}else{if(j2=N5+-1|0,R5=X5+(j2<<2)|0,X2=e[R5>>2]|0,v5=F5,z2=v0-v5|0,w5=X2>>>0>>0,w5){e[V5>>2]=F5,O5=(N5|0)>1;e:do if(O5){for(v=N5,_=F5,R2=F5,Q3=1;;){if($5=_+o0|0,k2=v+-2|0,E5=X5+(k2<<2)|0,r5=e[E5>>2]|0,t6=r5+o|0,e0=0-t6|0,x2=_+e0|0,m2=ct[a&15](R2,x2)|0,C5=(m2|0)>-1,C5&&(u5=ct[a&15](R2,$5)|0,S5=(u5|0)>-1,S5)){m3=Q3;break}if(G5=ct[a&15](x2,$5)|0,D5=(G5|0)>-1,H2=Q3+1|0,I5=V5+(Q3<<2)|0,D5?(e[I5>>2]=x2,A5=v+-1|0,E=x2,p=A5):(e[I5>>2]=$5,E=$5,p=k2),l5=(p|0)>1,!l5){m3=H2;break}z=e[V5>>2]|0,v=p,_=E,R2=z,Q3=H2}if(m5=(m3|0)<2,!m5&&(M1=V5+(m3<<2)|0,e[M1>>2]=i3,!S0))for(D=o,W2=i3;;){for(h5=D>>>0>256,o5=h5?256:D,b5=e[V5>>2]|0,i4(W2|0,b5|0,o5|0)|0,g5=b5,M3=0;c2=V5+(M3<<2)|0,B5=M3+1|0,e5=V5+(B5<<2)|0,n5=e[e5>>2]|0,i4(g5|0,n5|0,o5|0)|0,J2=g5+o5|0,e[c2>>2]=J2,s3=(B5|0)==(m3|0),!s3;)g5=n5,M3=B5;if(c5=(D|0)==(o5|0),c5)break e;Z2=D-o5|0,t0=e[M1>>2]|0,D=Z2,W2=t0}}while(!1)}else ZC(F5,o,a,y1,V2,N5,0,X5);if(a5=(N5|0)==1,a5){F2=V2<<1,p5=y1>>>31,q5=p5|F2,e3=y1<<1,r0=e3,v1=q5,P5=0;break}else{d5=j2>>>0>31,f3=N5+-33|0,c=d5?0:y1,x=d5?y1:V2,R=d5?f3:j2,g3=x<>>Z,A0=V|g3,n0=c<>>0>>0,c0)y1=i0,V2=v1,F5=K,N5=P5;else{T=v1,G=i0,E3=K,Y5=P5;break}}else T=0,G=1,E3=t,Y5=1;if(ZC(E3,o,a,G,T,Y5,0,X5),s0=(Y5|0)==1,l0=(G|0)==1,C3=l0&s0,a0=(T|0)==0,l3=a0&C3,l3){m=R3;return}else Q0=G,B0=T,z5=E3,y5=Y5;for(;;){if(g0=(y5|0)<2,!g0){U0=B0<<2,r1=Q0>>>30,O0=r1|U0,e1=y5+-2|0,i1=Q0<<1,c1=i1&2147483646,$1=r1<<31,f1=c1|$1,g1=f1^3,l1=O0>>>1,s1=X5+(e1<<2)|0,a1=e[s1>>2]|0,G3=a1+o|0,H=0-G3|0,n1=z5+H|0,A1=y5+-1|0,ZC(n1,o,a,g1,l1,A1,1,X5),I1=l1<<1,h1=r1&1,E1=I1|h1,u1=g1<<1,d1=u1|1,B1=z5+o0|0,ZC(B1,o,a,d1,E1,e1,1,X5),Q0=d1,B0=E1,z5=B1,y5=e1;continue}f0=Q0+-1|0,d0=(f0|0)==0;do if(d0)T0=32,o3=56;else{if(y0=f0&1,h0=(y0|0)==0,h0){for(S=f0,j3=0;;)if(E0=j3+1|0,C0=S>>>1,u0=C0&1,J0=(u0|0)==0,J0)S=C0,j3=E0;else{L=E0;break}D0=(L|0)==0,D0?o3=51:H0=L}else o3=51;if((o3|0)==51){if(o3=0,x0=(B0|0)==0,x0){T0=64,o3=56;break}if(F0=B0&1,M0=(F0|0)==0,M0)w=B0,_3=0;else{I=0,Q1=Q0,k1=B0,w1=0;break}for(;;)if(G0=_3+1|0,p0=w>>>1,P0=p0&1,R0=(P0|0)==0,R0)w=p0,_3=G0;else{M=G0,T3=_3;break}if(L0=T3+33|0,q0=(M|0)==0,q0){I=0,Q1=Q0,k1=B0,w1=0;break}else H0=L0}N0=H0>>>0>31,N0?(T0=H0,o3=56):(I=H0,Q1=Q0,k1=B0,w1=H0)}while(!1);if((o3|0)==56&&(o3=0,V0=T0+-32|0,I=V0,Q1=B0,k1=0,w1=T0),p1=Q1>>>I,D1=32-I|0,_1=k1<>>I,N1=w1+y5|0,N=z5+o0|0,U1=(N1|0)==1,Z1=(x1|0)==1,a3=Z1&U1,G1=(L1|0)==0,$3=G1&a3,$3)break;Q0=x1,B0=L1,z5=N,y5=N1}m=R3}function ZC(t,n,o,a,c,f,E,I){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0,I=I|0;var C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0;m2=m,m=m+720|0,x2=m2+456|0,O2=m2+228|0,T2=m2,e[T2>>2]=t,U=0-n|0,o0=(a|0)!=1,B0=(c|0)!=0,H0=B0|o0;e:do if(H0)if($1=I+(f<<2)|0,E1=e[$1>>2]|0,L1=0-E1|0,Y1=t+L1|0,V1=ct[o&15](Y1,t)|0,y2=(V1|0)<1,y2)B=t,x=f,N=E,P2=1,R2=18;else for(w=t,T=f,P=E,u0=Y1,U0=c,v5=1,k2=a;;){if(Z=(P|0)==0,a0=(T|0)>1,$5=Z&a0,$5){if(y0=w+U|0,h0=T+-2|0,E0=I+(h0<<2)|0,C0=e[E0>>2]|0,k0=ct[o&15](y0,u0)|0,J0=(k0|0)>-1,J0){v=w,R=T,j2=v5;break e}if(E5=C0+n|0,H=0-E5|0,D0=w+H|0,x0=ct[o&15](D0,u0)|0,F0=(x0|0)>-1,F0){v=w,R=T,j2=v5;break e}}M0=v5+1|0,G0=T2+(v5<<2)|0,e[G0>>2]=u0,p0=k2+-1|0,P0=(p0|0)==0;do if(P0)A1=32,R2=15;else{if(R0=p0&1,S0=(R0|0)==0,S0){for(Q=p0,f5=0;;)if(L0=f5+1|0,q0=Q>>>1,N0=q0&1,V0=(N0|0)==0,V0)Q=q0,f5=L0;else{z=L0;break}T0=(z|0)==0,T0?R2=10:s1=z}else R2=10;if((R2|0)==10){if(R2=0,r1=(U0|0)==0,r1){A1=64,R2=15;break}if(O0=U0&1,e1=(O0|0)==0,e1)_=U0,w5=0;else{p=0,I1=k2,d1=U0,D1=0;break}for(;;)if(v0=w5+1|0,i1=_>>>1,c1=i1&1,f1=(c1|0)==0,f1)_=i1,w5=v0;else{Y=v0,O5=w5;break}if(g1=O5+33|0,l1=(Y|0)==0,l1){p=0,I1=k2,d1=U0,D1=0;break}else s1=g1}a1=s1>>>0>31,a1?(A1=s1,R2=15):(p=s1,I1=k2,d1=U0,D1=s1)}while(!1);if((R2|0)==15&&(R2=0,n1=A1+-32|0,p=n1,I1=U0,d1=0,D1=A1),z0=I1>>>p,h1=32-p|0,u1=d1<>>p,Q1=D1+T|0,_1=(B1|0)!=1,y1=(p1|0)!=0,k1=y1|_1,!k1){v=u0,R=Q1,j2=M0;break e}if(t0=e[T2>>2]|0,x1=I+(Q1<<2)|0,N1=e[x1>>2]|0,w1=0-N1|0,U1=u0+w1|0,Z1=ct[o&15](U1,t0)|0,G1=(Z1|0)<1,G1){B=u0,x=Q1,N=0,P2=M0,R2=18;break}else y=u0,T=Q1,P=0,u0=U1,U0=p1,v5=M0,k2=B1,w=y}else B=t,x=f,N=E,P2=1,R2=18;while(!1);if((R2|0)==18)if(v1=(N|0)==0,v1)v=B,R=x,j2=P2;else{m=m2;return}K1=(j2|0)<2;e:do if(!K1&&(P1=T2+(j2<<2)|0,e[P1>>2]=x2,H1=(n|0)==0,!H1))for(M=n,g2=x2;;){for(d2=M>>>0>256,j1=d2?256:M,A2=e[T2>>2]|0,i4(g2|0,A2|0,j1|0)|0,h2=A2,X2=0;W1=T2+(X2<<2)|0,O1=X2+1|0,l2=T2+(O1<<2)|0,z1=e[l2>>2]|0,i4(h2|0,z1|0,j1|0)|0,s2=h2+j1|0,e[W1>>2]=s2,s5=(O1|0)==(j2|0),!s5;)h2=z1,X2=O1;if(q1=(M|0)==(j1|0),q1)break e;r2=M-j1|0,e0=e[P1>>2]|0,M=r2,g2=e0}while(!1);e[O2>>2]=v,a2=(R|0)>1;e:do if(a2){for(D=R,G=v,n2=v,z2=1;;){if(t2=G+U|0,$2=D+-2|0,i2=I+($2<<2)|0,o2=e[i2>>2]|0,r5=o2+n|0,X=0-r5|0,X1=G+X|0,f2=ct[o&15](n2,X1)|0,e2=(f2|0)>-1,e2&&(S2=ct[o&15](n2,t2)|0,w2=(S2|0)>-1,w2)){T1=z2;break}if(C2=ct[o&15](X1,t2)|0,M2=(C2|0)>-1,_2=z2+1|0,G2=O2+(z2<<2)|0,M2?(e[G2>>2]=X1,u2=D+-1|0,C=X1,S=u2):(e[G2>>2]=t2,C=t2,S=$2),K2=(S|0)>1,!K2){T1=_2;break}J=e[O2>>2]|0,D=S,G=C,n2=J,z2=_2}if(N2=(T1|0)<2,N2)d0=x2;else if(q2=O2+(T1<<2)|0,e[q2>>2]=x2,V=(n|0)==0,V)d0=x2;else for(L=n,Q0=x2;;){for(g0=L>>>0>256,n0=g0?256:L,f0=e[O2>>2]|0,i4(Q0|0,f0|0,n0|0)|0,l0=f0,R5=0;r0=O2+(R5<<2)|0,K=R5+1|0,c0=O2+(K<<2)|0,s0=e[c0>>2]|0,i4(l0|0,s0|0,n0|0)|0,j=l0+n0|0,e[r0>>2]=j,V2=(K|0)==(T1|0),!V2;)l0=s0,R5=K;if(A0=(L|0)==(n0|0),A0){d0=x2;break e}i0=L-n0|0,W=e[q2>>2]|0,L=i0,Q0=W}}else d0=x2;while(!1);m=m2}function Gi(t){t=+t;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0;return R=m,o1[p2>>3]=t,o=e[p2>>2]|0,a=e[p2+4>>2]|0,p=a&2146435072,B=p>>>0>1126170624,v=!1,S=(p|0)==1126170624,w=S&v,y=B|w,y?(n=t,+n):(D=(a|0)<0,Q=t+-4503599627370496,c=Q+4503599627370496,f=t+4503599627370496,E=f+-4503599627370496,_=D?c:E,I=_==0,I?(C=D?-0:0,n=C,+n):(n=_,+n))}function pQ(t){t=+t;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0;return y=m,o=(s[p2>>2]=t,e[p2>>2]|0),a=o&2130706432,c=a>>>0>1249902592,c?(n=t,+n):(f=(o|0)<0,E=t+-8388608,I=E+8388608,C=t+8388608,p=C+-8388608,S=f?I:p,B=S==0,B?(v=f?-0:0,n=v,+n):(n=S,+n))}function rD(t,n){t=+t,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0;return z=m,f=(n|0)>1023,f?(E=t*898846567431158e293,Q=n+-1023|0,_=(Q|0)>1023,_?(x=E*898846567431158e293,R=n+-2046|0,L=(R|0)>1023,o=L?1023:R,a=o,N=x):(a=Q,N=E)):(M=(n|0)<-1022,M?(T=t*22250738585072014e-324,G=n+1022|0,I=(G|0)<-1022,I?(C=T*22250738585072014e-324,p=n+2044|0,B=(p|0)<-1022,c=B?-1022:p,a=c,N=C):(a=G,N=T)):(a=n,N=t)),v=a+1023|0,S=wQ(v|0,0,52)|0,w=q6,e[p2>>2]=S,e[p2+4>>2]=w,y=+o1[p2>>3],D=N*y,+D}function nD(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0;I=m,n=t+-1|0,o=553040,a=o,e[a>>2]=n,c=o+4|0,f=c,e[f>>2]=0}function sD(){var t=0,n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0;return _=m,t=553040,n=t,C=e[n>>2]|0,p=t+4|0,B=p,v=e[B>>2]|0,S=$D(C|0,v|0,1284865837,1481765933)|0,w=q6,y=Ys(S|0,w|0,1,0)|0,D=q6,o=553040,a=o,e[a>>2]=y,c=o+4|0,f=c,e[f>>2]=D,E=Js(y|0,D|0,33)|0,I=q6,E|0}function k9(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,Z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,m6=0,z3=0,a6=0,B6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,A3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0,R4=0,T4=0,j4=0,d4=0,G4=0,G9=0,N4=0,s4=0,x4=0,c4=0,Ie=0,O9=0,d9=0,de=0,Me=0,ze=0,U4=0,Te=0,O4=0,X4=0,ke=0,Ze=0,V9=0,oe=0,g4=0,D6=0,P4=0,R9=0,A4=0,D4=0,ae=0,z9=0,$e=0,le=0,E4=0,ee=0,F4=0,ce=0,E9=0,$6=0,Ge=0,o4=0,Ee=0,C4=0,a4=0,U6=0,ve=0,Se=0,We=0,$4=0,Q4=0,g8=0,H3=0,Q9=0,C9=0,L4=0,te=0,a7=0,De=0,$7=0,Q7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,y7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ne=0,be=0,je=0,k8=0,y9=0,g7=0,Ce=0,h7=0,w7=0,j8=0,k7=0,ie=0,X8=0,P8=0,v8=0,Xe=0,H4=0,_e=0,e8=0,u8=0,S8=0,ge=0,Z9=0,t8=0,I8=0,i8=0,d8=0,he=0,me=0,Ue=0,Oe=0,W9=0,Re=0,fe=0,r8=0,Be=0,m4=0,E8=0,e7=0,q4=0,I3=0,Pe=0,C8=0,re=0,P9=0,ne=0,S9=0,He=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,s8=0,D8=0,Y4=0,n7=0,b8=0,qe=0,m9=0,s7=0,Ye=0,M7=0,P7=0,v7=0,A7=0,S7=0,se=0,T7=0,H7=0,A8=0,_8=0,D7=0,J8=0,xe=0,ue=0,j9=0,b7=0,tt=0,Mt=0,Tt=0,Gt=0,gt=0,q7=0,ht=0,Y7=0,ft=0,J7=0,ut=0,it=0,ii=0,Nt=0,It=0,dt=0,ri=0,Et=0,rt=0,ni=0,Ut=0,Ot=0,Pt=0,Ht=0,nt=0,Ct=0,qt=0,K7=0,st=0,G7=0,V7=0,si=0,Yt=0,Ai=0,mt=0,Jt=0,Bt=0,pt=0,Kt=0,Qt=0,z7=0,yt=0,Vt=0,At=0,N7=0,wt=0,pe=0,kt=0,_7=0,ot=0,i9=0,u7=0,m8=0,I7=0,R7=0,Pr=0,fr=0,zs=0,Mn=0,Zs=0,Tn=0,Ws=0,js=0,Gn=0,Xs=0,Hr=0,eA=0,tA=0,iA=0,Nn=0,rA=0,Un=0,On=0,nA=0,qr=0,Pn=0,Yr=0,Hn=0,qn=0,sA=0,AA=0,oA=0,Jr=0,Yn=0,aA=0,ur=0,Kr=0,$A=0,lA=0,Vr=0,oi=0,Jn=0,cA=0,gA=0,Kn=0,Vn=0,zn=0,hA=0,ai=0,zr=0,fA=0,Zn=0,uA=0,IA=0,dA=0,Wn=0,EA=0,CA=0,mA=0,BA=0,jn=0,pA=0,QA=0,Zr=0,Ir=0,Wr=0,yA=0,Vi=0,wA=0,Xn=0,jr=0,es=0,Xr=0,kA=0,ts=0,is=0,vA=0,rs=0,ns=0,SA=0,dr=0,ss=0,$i=0,en=0,Er=0,zi=0,Cr=0,Ui=0,mr=0,As=0,Oi=0,mi=0,Bi=0,zt=0,pi=0,Br=0,Zi=0,Wi=0,pr=0,li=0,DA=0,at=0,j$=0,tn=0,rn=0,Lh=0,X$=0,bA=0,Mh=0,zo=0,el=0,Th=0,Gh=0,Nh=0,Zo=0,tl=0,il=0,Wo=0,nn=0,rl=0,Uh=0,_A=0,ji=0,Oh=0,Ph=0,Hh=0,qh=0,Yh=0,Jh=0,Kh=0,Vh=0,zh=0,Zh=0,nl=0,Qr=0,Wh=0,jh=0,sl=0,Xh=0,jo=0,RA=0,Xo=0,ef=0,tf=0,ea=0,Al=0,ol=0,al=0,ta=0,$l=0,xA=0,rf=0,nf=0,ll=0,sf=0,Af=0,cl=0,of=0,af=0,gl=0,hl=0,fl=0,ul=0,Il=0,sn=0,$f=0,dl=0,lf=0,El=0,Cl=0,cf=0,gf=0,hf=0,ia=0,ml=0,Bl=0,os=0,pl=0,ra=0,ff=0,Ql=0,uf=0,yl=0,If=0,df=0,wl=0,kl=0,Ef=0,FA=0,Cf=0,na=0,vl=0,Sl=0,mf=0,Bf=0,pf=0,Qf=0,yf=0,wf=0,LA=0,Dl=0,bl=0,_l=0,MA=0,kf=0,Rl=0,vf=0,xl=0,Sf=0,Df=0,Fl=0,sa=0,bf=0,_f=0,TA=0,Rf=0,GA=0,xf=0,Aa=0,Ff=0,Lf=0,Mf=0,Ll=0,Tf=0,Gf=0,Nf=0,Uf=0,Ml=0,Tl=0,Xi=0,Gl=0,NA=0,oa=0,aa=0,An=0,Nl=0,on=0,Of=0,Ul=0,Pf=0,Hf=0,qf=0,Yf=0,UA=0,$a=0,yr=0,Jf=0,Kf=0,Ol=0,la=0,Pl=0,Hl=0,Vf=0,ql=0,zf=0,ca=0,Zf=0,Wf=0,N9=0,jf=0,Yl=0,Xf=0,eu=0,ga=0,tu=0,ha=0,Jl=0,iu=0,ru=0,Kl=0,Vl=0,nu=0,fa=0,ua=0,zl=0,Zl=0,su=0,Wl=0,Ia=0,Au=0,jl=0,ou=0,au=0,$u=0,lu=0,Xl=0,ec=0,da=0,OA=0,tc=0,cu=0,ic=0,rc=0,gu=0,hu=0,fu=0,nc=0,uu=0,Iu=0,du=0,Eu=0,Cu=0,mu=0,sc=0,Bu=0,Ac=0,pu=0,an=0,Qu=0,oc=0,yu=0,as=0,ac=0,Ea=0,wu=0,PA=0,Ca=0,ku=0,ma=0,$c=0,vu=0,Su=0,Du=0,bu=0,_u=0,lc=0,Ru=0,xu=0,Fu=0,HA=0,$s=0,Ba=0,Lu=0,pa=0,Mu=0,Tu=0,Gu=0,cc=0,Nu=0,Uu=0,Ou=0,Pu=0,Hu=0,qA=0,qu=0,Yu=0,gc=0,Ju=0,Ku=0,Vu=0,zu=0,ci=0,hc=0,gi=0,fc=0,Qa=0,Zu=0,Zt=0,ls=0,Wu=0,ju=0,Xu=0,eI=0,tI=0,uc=0,iI=0,rI=0,Ic=0,nI=0,sI=0,cs=0,ya=0,AI=0,dc=0,oI=0,aI=0,YA=0,$I=0,lI=0,Ec=0,Cc=0,cI=0,gI=0,$n=0,hI=0,fI=0,ln=0,uI=0,mc=0,II=0,dI=0,gs=0,Bc=0,EI=0,pc=0,CI=0,er=0,wa=0,mI=0,Qc=0,yc=0,BI=0,pI=0,wc=0,QI=0,yI=0,wI=0,kc=0,kI=0,hs=0,vI=0,cn=0,SI=0,DI=0,ka=0,bI=0,va=0,Sa=0,_I=0,vc=0,Sc=0,RI=0,Dc=0,bc=0,_c=0,xI=0,Rc=0,xc=0,FI=0,LI=0,Fc=0,Lc=0,MI=0,Mc=0,Tc=0,TI=0,GI=0,Gc=0,Da=0,Nc=0,Uc=0,Oc=0,Pc=0,NI=0,UI=0,OI=0,PI=0,HI=0,qI=0,YI=0,JI=0,Hc=0,ba=0,KI=0,VI=0,zI=0,qc=0,Yc=0,ZI=0,Jc=0,_a=0,JA=0,Kc=0,WI=0,jI=0,XI=0,ed=0,Vc=0,KA=0,td=0,id=0,rd=0,nd=0,sd=0,Ad=0,od=0,ad=0,zc=0,$d=0,ld=0,cd=0,gd=0,VA=0,Zc=0,hd=0,fd=0,gn=0,Wc=0,jc=0,Ra=0,ud=0,Xc=0,Id=0,eg=0,tg=0,dd=0,Ed=0,Cd=0,md=0,Bd=0,zA=0,xa=0,pd=0,Qd=0,yd=0,wd=0,ig=0,kd=0,rg=0,vd=0,Sd=0,ng=0,wr=0,sg=0,Ag=0,Dd=0,og=0,ZA=0,bd=0,_d=0,Rd=0,WA=0,ag=0,xd=0,Fd=0,$g=0,Ld=0,Md=0,Fa=0,jA=0,Td=0,Gd=0,Nd=0,lg=0,cg=0,gg=0,Ud=0,Od=0,fs=0,Pd=0,hg=0,Hd=0,La=0,fg=0,qd=0,Yd=0,Jd=0,Kd=0,ug=0,Vd=0,zd=0,Ig=0,XA=0,Zd=0,Wd=0,jd=0,us=0,dg=0,Eg=0,Xd=0,Cg=0,mg=0,Qi=0,Bg=0,tr=0,eE=0,tE=0,iE=0,rE=0,Ma=0,eo=0,pg=0,Qg=0,nE=0,to=0,Is=0,sE=0,io=0,Ta=0,AE=0,Ga=0,oE=0,aE=0,yg=0,ro=0,wg=0,$E=0,lE=0,cE=0,gE=0,kg=0,hE=0,Z7=0,B4=0,Wt=0,fE=0,vg=0,Sg=0,Na=0,uE=0,kr=0,ds=0,IE=0,dE=0,Dg=0,Ua=0,EE=0,bg=0,_g=0,Rg=0,Oa=0,Pa=0,xg=0,Es=0,Ha=0,Fg=0,CE=0,hn=0,mE=0,Lg=0,no=0,BE=0,Mg=0,yi=0,pE=0,QE=0,yE=0,wE=0,kE=0,vE=0,wi=0,SE=0,DE=0,bE=0,Tg=0,hi=0,so=0,qa=0,Gg=0,Ng=0,_E=0,Ug=0,Og=0,RE=0,xE=0,Pg=0,Hg=0,FE=0,LE=0,qg=0,ME=0,Cs=0,Ao=0,oo=0,TE=0,Ya=0,GE=0,NE=0,Yg=0,ms=0,UE=0,OE=0,Ja=0,Ka=0,ao=0,Va=0,za=0,ir=0,vr=0,Sr=0,Za=0,Wa=0,Bs=0,rr=0,fn=0,PE=0,nr=0,un=0,HE=0,vt=0,St=0,Dt=0,$o=0,lo=0,Jg=0,Kg=0,co=0,ja=0,bt=0,go=0,Dr=0,Xa=0,qE=0,e$=0,YE=0,t$=0,Vg=0,ho=0,JE=0,KE=0,fo=0,VE=0,uo=0,In=0,Je=0,y4=0,zg=0,zE=0,i$=0,Zg=0,ZE=0,WE=0,Io=0,jE=0,XE=0,eC=0,tC=0,Wg=0,iC=0,rC=0,nC=0,jt=0,Eo=0,dn=0,r$=0,ps=0,Qs=0,W7=0,ys=0,jg=0,Xg=0,Co=0,ws=0,ks=0,vs=0,sC=0,Ss=0,sr=0,eh=0,br=0,Xt=0,n$=0,s$=0,Pi=0,A$=0,o$=0,a$=0,_r=0,s6=0,mo=0,Rr=0,th=0,Qe=0,$$=0,B8=0,Ds=0,En=0,Cn=0,x9=0,mn=0,xr=0,J4=0,l$=0;l$=m,V1=t>>>0<245;do if(V1){if(g2=t>>>0<11,l4=t+11|0,H4=l4&-8,pe=g2?16:H4,bA=pe>>>3,Aa=e[138262]|0,HA=Aa>>>bA,Uc=HA&3,Ig=(Uc|0)==0,!Ig){a2=HA&1,h3=a2^1,$3=h3+bA|0,o3=$3<<1,c3=553088+(o3<<2)|0,Q0=o3+2|0,_6=553088+(Q0<<2)|0,v6=e[_6>>2]|0,R6=v6+8|0,S6=e[R6>>2]|0,f9=(c3|0)==(S6|0);do if(f9)T9=1<<$3,S4=T9^-1,Ie=Aa&S4,e[138262]=Ie;else if(Ze=e[138266]|0,$e=S6>>>0>>0,$e&&Q2(),C4=S6+12|0,C9=e[C4>>2]|0,F8=(C9|0)==(v6|0),F8){e[C4>>2]=c3,e[_6>>2]=S6;break}else Q2();while(!1);return h8=$3<<3,g7=h8|3,_e=v6+4|0,e[_e>>2]=g7,C0=h8|4,me=v6+C0|0,q4=e[me>>2]|0,t7=q4|1,e[me>>2]=t7,Je=R6,Je|0}if(qe=e[138264]|0,H7=pe>>>0>qe>>>0,H7){if(Tt=(HA|0)==0,!Tt){Nt=HA<>>12,Zr=uA&16,ts=Jn>>>Zr,zi=ts>>>5,Zi=zi&8,Mh=Zi|Zr,rl=ts>>>Zi,Vh=rl>>>2,Xo=Vh&4,nf=Mh|Xo,Il=rl>>>Xo,ml=Il>>>1,wl=ml&2,Qf=nf|wl,xl=Il>>>wl,Ff=xl>>>1,Gl=Ff&1,qf=Qf|Gl,Vf=xl>>>Gl,ga=qf+Vf|0,zl=ga<<1,Xl=553088+(zl<<2)|0,U1=zl+2|0,nc=553088+(U1<<2)|0,an=e[nc>>2]|0,ma=an+8|0,$s=e[ma>>2]|0,Pu=(Xl|0)==($s|0);do if(Pu)hc=1<>>0>>0,er&&Q2(),kc=$s+12|0,_I=e[kc>>2]|0,LI=(_I|0)==(an|0),LI){e[kc>>2]=Xl,e[nc>>2]=$s,y=e[138264]|0,jA=y;break}else Q2();while(!1);return Oc=ga<<3,ba=Oc-pe|0,WI=pe|3,Ad=an+4|0,e[Ad>>2]=WI,fd=an+pe|0,Ed=ba|1,j1=pe|4,kd=an+j1|0,e[kd>>2]=Ed,bd=an+Oc|0,e[bd>>2]=ba,hg=(jA|0)==0,hg||(XA=e[138267]|0,Bg=jA>>>3,to=Bg<<1,wg=553088+(to<<2)|0,vg=e[138262]|0,bg=1<>2]|0,C2=e[138266]|0,s5=t2>>>0>>0,s5?Q2():(N=Cs,ao=t2)),e[N>>2]=XA,$5=ao+12|0,e[$5>>2]=XA,G5=XA+8|0,e[G5>>2]=ao,Z2=XA+12|0,e[Z2>>2]=wg),e[138264]=ba,e[138267]=fd,Je=ma,Je|0}if(a5=e[138263]|0,E3=(a5|0)==0,E3)y4=pe;else{for(z5=0-a5|0,y3=a5&z5,m3=y3+-1|0,q3=m3>>>12,M3=q3&16,W5=m3>>>M3,Q3=W5>>>5,X5=Q3&8,j3=X5|M3,_3=W5>>>X5,T3=_3>>>2,a3=T3&4,l3=j3|a3,C3=_3>>>a3,Y5=C3>>>1,N5=Y5&2,P5=l3|N5,y5=C3>>>N5,G3=y5>>>1,L5=G3&1,t6=P5|L5,i3=y5>>>L5,R3=t6+i3|0,h6=553352+(R3<<2)|0,B3=e[h6>>2]|0,w3=B3+4|0,p3=e[w3>>2]|0,X3=p3&-8,V3=X3-pe|0,Eo=V3,s$=B3,$$=B3;;){if(N3=s$+16|0,Z5=e[N3>>2]|0,k3=(Z5|0)==0,k3)if(U3=s$+20|0,o6=e[U3>>2]|0,u3=(o6|0)==0,u3){dn=Eo,B8=$$;break}else w6=o6;else w6=Z5;y6=w6+4|0,k6=e[y6>>2]|0,m6=k6&-8,z3=m6-pe|0,a6=z3>>>0>>0,H=a6?z3:Eo,A2=a6?w6:$$,Eo=H,s$=w6,$$=A2}B6=e[138266]|0,Y6=B8>>>0>>0,Y6&&Q2(),C6=B8+pe|0,v3=B8>>>0>>0,v3||Q2(),Z3=B8+24|0,W3=e[Z3>>2]|0,f6=B8+12|0,O3=e[f6>>2]|0,S3=(O3|0)==(B8|0);do if(S3){if(T6=B8+20|0,e6=e[T6>>2]|0,p6=(e6|0)==0,p6)if(K6=B8+16|0,I6=e[K6>>2]|0,J6=(I6|0)==0,J6){vt=0;break}else rr=I6,$o=K6;else rr=e6,$o=T6;for(;;){if(x3=rr+20|0,Z6=e[x3>>2]|0,G6=(Z6|0)==0,!G6){rr=Z6,$o=x3;continue}if(j6=rr+16|0,r9=e[j6>>2]|0,x6=(r9|0)==0,x6){nr=rr,Kg=$o;break}else rr=r9,$o=j6}if(N6=Kg>>>0>>0,N6)Q2();else{e[Kg>>2]=0,vt=nr;break}}else if(P3=B8+8|0,Y3=e[P3>>2]|0,i6=Y3>>>0>>0,i6&&Q2(),r3=Y3+12|0,O6=e[r3>>2]|0,A3=(O6|0)==(B8|0),A3||Q2(),r6=O3+8|0,u6=e[r6>>2]|0,D3=(u6|0)==(B8|0),D3){e[r3>>2]=O3,e[r6>>2]=Y3,vt=O3;break}else Q2();while(!1);V6=(W3|0)==0;do if(!V6){if(Q6=B8+28|0,F6=e[Q6>>2]|0,F3=553352+(F6<<2)|0,L6=e[F3>>2]|0,X6=(B8|0)==(L6|0),X6){if(e[F3>>2]=vt,JE=(vt|0)==0,JE){s9=1<>>0>>0,o9&&Q2(),L9=W3+16|0,d6=e[L9>>2]|0,M6=(d6|0)==(B8|0),M6?e[L9>>2]=vt:(e9=W3+20|0,e[e9>>2]=vt),M9=(vt|0)==0,M9)break;u9=e[138266]|0,u4=vt>>>0>>0,u4&&Q2(),r4=vt+24|0,e[r4>>2]=W3,K9=B8+16|0,v9=e[K9>>2]|0,I9=(v9|0)==0;do if(!I9)if(P6=v9>>>0>>0,P6)Q2();else{t9=vt+16|0,e[t9>>2]=v9,I4=v9+24|0,e[I4>>2]=vt;break}while(!1);if(k4=B8+20|0,n4=e[k4>>2]|0,p9=(n4|0)==0,!p9)if(v4=e[138266]|0,R4=n4>>>0>>0,R4)Q2();else{T4=vt+20|0,e[T4>>2]=n4,j4=n4+24|0,e[j4>>2]=vt;break}}while(!1);return d4=dn>>>0<16,d4?(G4=dn+pe|0,G9=G4|3,N4=B8+4|0,e[N4>>2]=G9,Z1=G4+4|0,s4=B8+Z1|0,x4=e[s4>>2]|0,c4=x4|1,e[s4>>2]=c4):(O9=pe|3,d9=B8+4|0,e[d9>>2]=O9,de=dn|1,c0=pe|4,Me=B8+c0|0,e[Me>>2]=de,l0=dn+pe|0,ze=B8+l0|0,e[ze>>2]=dn,U4=e[138264]|0,Te=(U4|0)==0,Te||(O4=e[138267]|0,X4=U4>>>3,ke=X4<<1,V9=553088+(ke<<2)|0,oe=e[138262]|0,g4=1<>2]|0,ae=e[138266]|0,z9=D4>>>0>>0,z9?Q2():(T=A4,Ka=D4)),e[T>>2]=O4,le=Ka+12|0,e[le>>2]=O4,E4=O4+8|0,e[E4>>2]=Ka,ee=O4+12|0,e[ee>>2]=V9),e[138264]=dn,e[138267]=C6),F4=B8+8|0,Je=F4,Je|0}}else y4=pe}else if(ce=t>>>0>4294967231,ce)y4=-1;else if(E9=t+11|0,$6=E9&-8,Ge=e[138263]|0,o4=(Ge|0)==0,o4)y4=$6;else{Ee=0-$6|0,a4=E9>>>8,U6=(a4|0)==0,U6?In=0:(ve=$6>>>0>16777215,ve?In=31:(Se=a4+1048320|0,We=Se>>>16,$4=We&8,Q4=a4<<$4,g8=Q4+520192|0,H3=g8>>>16,Q9=H3&4,L4=Q9|$4,te=Q4<>>16,$7=De&2,Q7=L4|$7,K8=14-Q7|0,l7=te<<$7,c7=l7>>>15,x8=K8+c7|0,L8=x8<<1,M8=x8+7|0,V8=$6>>>M8,z8=V8&1,y7=z8|L8,In=y7)),T8=553352+(In<<2)|0,G8=e[T8>>2]|0,N8=(G8|0)==0;e:do if(N8)Qs=Ee,A$=0,Cn=0,J4=86;else for(y8=(In|0)==31,w8=In>>>1,U8=25-w8|0,O8=y8?0:U8,Z8=$6<>2]|0,Ne=f8&-8,be=Ne-$6|0,je=be>>>0>>0,je)if(k8=(Ne|0)==($6|0),k8){ys=be,_r=Pi,xr=Pi,J4=90;break e}else ps=be,En=Pi;else ps=r$,En=Ds;if(y9=Pi+20|0,Ce=e[y9>>2]|0,h7=Co>>>31,w7=(Pi+16|0)+(h7<<2)|0,j8=e[w7>>2]|0,k7=(Ce|0)==0,ie=(Ce|0)==(j8|0),jE=k7|ie,Xg=jE?jg:Ce,X8=(j8|0)==0,P8=Co<<1,X8){Qs=ps,A$=Xg,Cn=En,J4=86;break}else r$=ps,jg=Xg,Co=P8,Pi=j8,Ds=En}while(!1);if((J4|0)==86){if(v8=(A$|0)==0,Xe=(Cn|0)==0,ZE=v8&Xe,ZE){if(e8=2<>>12,he=d8&16,Ue=i8>>>he,Oe=Ue>>>5,W9=Oe&8,Re=W9|he,fe=Ue>>>W9,r8=fe>>>2,Be=r8&4,m4=Re|Be,E8=fe>>>Be,e7=E8>>>1,I3=e7&2,Pe=m4|I3,C8=E8>>>I3,re=C8>>>1,P9=re&1,ne=Pe|P9,S9=C8>>>P9,He=ne+S9|0,H8=553352+(He<<2)|0,f7=e[H8>>2]|0,o$=f7,mn=0}else o$=A$,mn=Cn;i7=(o$|0)==0,i7?(W7=Qs,x9=mn):(ys=Qs,_r=o$,xr=mn,J4=90)}if((J4|0)==90)for(;;){if(J4=0,q8=_r+4|0,r7=e[q8>>2]|0,Y8=r7&-8,n8=Y8-$6|0,s8=n8>>>0>>0,X=s8?n8:ys,a$=s8?_r:xr,D8=_r+16|0,Y4=e[D8>>2]|0,n7=(Y4|0)==0,!n7){ys=X,_r=Y4,xr=a$,J4=90;continue}if(b8=_r+20|0,m9=e[b8>>2]|0,s7=(m9|0)==0,s7){W7=X,x9=a$;break}else ys=X,_r=m9,xr=a$,J4=90}if(Ye=(x9|0)==0,Ye)y4=$6;else if(M7=e[138264]|0,P7=M7-$6|0,v7=W7>>>0>>0,v7){A7=e[138266]|0,S7=x9>>>0>>0,S7&&Q2(),se=x9+$6|0,T7=x9>>>0>>0,T7||Q2(),A8=x9+24|0,_8=e[A8>>2]|0,D7=x9+12|0,J8=e[D7>>2]|0,xe=(J8|0)==(x9|0);do if(xe){if(Y7=x9+20|0,ft=e[Y7>>2]|0,J7=(ft|0)==0,J7)if(ut=x9+16|0,it=e[ut>>2]|0,ii=(it|0)==0,ii){Dt=0;break}else un=it,co=ut;else un=ft,co=Y7;for(;;){if(It=un+20|0,dt=e[It>>2]|0,ri=(dt|0)==0,!ri){un=dt,co=It;continue}if(Et=un+16|0,rt=e[Et>>2]|0,ni=(rt|0)==0,ni){HE=un,ja=co;break}else un=rt,co=Et}if(Ut=ja>>>0>>0,Ut)Q2();else{e[ja>>2]=0,Dt=HE;break}}else if(ue=x9+8|0,j9=e[ue>>2]|0,b7=j9>>>0>>0,b7&&Q2(),tt=j9+12|0,Mt=e[tt>>2]|0,Gt=(Mt|0)==(x9|0),Gt||Q2(),gt=J8+8|0,q7=e[gt>>2]|0,ht=(q7|0)==(x9|0),ht){e[tt>>2]=J8,e[gt>>2]=j9,Dt=J8;break}else Q2();while(!1);Ot=(_8|0)==0;do if(!Ot){if(Pt=x9+28|0,Ht=e[Pt>>2]|0,Ct=553352+(Ht<<2)|0,qt=e[Ct>>2]|0,K7=(x9|0)==(qt|0),K7){if(e[Ct>>2]=Dt,fo=(Dt|0)==0,fo){st=1<>>0>>0,Ai&&Q2(),mt=_8+16|0,Bt=e[mt>>2]|0,pt=(Bt|0)==(x9|0),pt?e[mt>>2]=Dt:(Kt=_8+20|0,e[Kt>>2]=Dt),Qt=(Dt|0)==0,Qt)break;z7=e[138266]|0,yt=Dt>>>0>>0,yt&&Q2(),Vt=Dt+24|0,e[Vt>>2]=_8,At=x9+16|0,N7=e[At>>2]|0,wt=(N7|0)==0;do if(!wt)if(_7=N7>>>0>>0,_7)Q2();else{ot=Dt+16|0,e[ot>>2]=N7,i9=N7+24|0,e[i9>>2]=Dt;break}while(!1);if(u7=x9+20|0,m8=e[u7>>2]|0,I7=(m8|0)==0,!I7)if(R7=e[138266]|0,Pr=m8>>>0>>0,Pr)Q2();else{fr=Dt+20|0,e[fr>>2]=m8,zs=m8+24|0,e[zs>>2]=Dt;break}}while(!1);Zs=W7>>>0<16;e:do if(Zs)Tn=W7+$6|0,Ws=Tn|3,js=x9+4|0,e[js>>2]=Ws,c1=Tn+4|0,Gn=x9+c1|0,Xs=e[Gn>>2]|0,Hr=Xs|1,e[Gn>>2]=Hr;else{if(eA=$6|3,tA=x9+4|0,e[tA>>2]=eA,iA=W7|1,r0=$6|4,rA=x9+r0|0,e[rA>>2]=iA,f0=W7+$6|0,Un=x9+f0|0,e[Un>>2]=W7,On=W7>>>3,nA=W7>>>0<256,nA){qr=On<<1,Pn=553088+(qr<<2)|0,Yr=e[138262]|0,Hn=1<>2]|0,aA=e[138266]|0,ur=Yn>>>0>>0,ur?Q2():(M=Jr,za=Yn)),e[M>>2]=se,Kr=za+12|0,e[Kr>>2]=se,U0=$6+8|0,$A=x9+U0|0,e[$A>>2]=za,O0=$6+12|0,lA=x9+O0|0,e[lA>>2]=Pn;break}if(Vr=W7>>>8,oi=(Vr|0)==0,oi?vr=0:(cA=W7>>>0>16777215,cA?vr=31:(gA=Vr+1048320|0,Kn=gA>>>16,Vn=Kn&8,zn=Vr<>>16,zr=ai&4,fA=zr|Vn,Zn=zn<>>16,Wn=dA&2,EA=fA|Wn,CA=14-EA|0,mA=Zn<>>15,jn=CA+BA|0,pA=jn<<1,QA=jn+7|0,Ir=W7>>>QA,Wr=Ir&1,yA=Wr|pA,vr=yA)),Vi=553352+(vr<<2)|0,g1=$6+28|0,wA=x9+g1|0,e[wA>>2]=vr,_1=$6+16|0,Xn=x9+_1|0,v1=$6+20|0,jr=x9+v1|0,e[jr>>2]=0,e[Xn>>2]=0,es=e[138263]|0,Xr=1<>2]=se,q1=$6+24|0,rs=x9+q1|0,e[rs>>2]=Vi,r2=$6+12|0,ns=x9+r2|0,e[ns>>2]=se,O1=$6+8|0,SA=x9+O1|0,e[SA>>2]=se;break}dr=e[Vi>>2]|0,ss=dr+4|0,$i=e[ss>>2]|0,en=$i&-8,Er=(en|0)==(W7|0);t:do if(Er)bt=dr;else{for(Cr=(vr|0)==31,Ui=vr>>>1,mr=25-Ui|0,As=Cr?0:mr,Oi=W7<>>31,li=(Xa+16|0)+(pr<<2)|0,zt=e[li>>2]|0,DA=(zt|0)==0,DA){w=li,qE=Xa;break}if(mi=Za<<1,Bi=zt+4|0,pi=e[Bi>>2]|0,Br=pi&-8,Wi=(Br|0)==(W7|0),Wi){bt=zt;break t}else Za=mi,Xa=zt}if(at=e[138266]|0,j$=w>>>0>>0,j$)Q2();else{e[w>>2]=se,h0=$6+24|0,tn=x9+h0|0,e[tn>>2]=qE,G0=$6+12|0,rn=x9+G0|0,e[rn>>2]=se,N0=$6+8|0,Lh=x9+N0|0,e[Lh>>2]=se;break e}}while(!1);if(X$=bt+8|0,zo=e[X$>>2]|0,el=e[138266]|0,Th=zo>>>0>=el>>>0,zg=bt>>>0>=el>>>0,Gh=Th&zg,Gh){Nh=zo+12|0,e[Nh>>2]=se,e[X$>>2]=se,l2=$6+8|0,Zo=x9+l2|0,e[Zo>>2]=zo,h2=$6+12|0,tl=x9+h2|0,e[tl>>2]=bt,d0=$6+24|0,il=x9+d0|0,e[il>>2]=0;break}else Q2()}while(!1);return Wo=x9+8|0,Je=Wo,Je|0}else y4=$6}while(!1);if(nn=e[138264]|0,Uh=nn>>>0>>0,!Uh)return _A=nn-y4|0,ji=e[138267]|0,Oh=_A>>>0>15,Oh?(Ph=ji+y4|0,e[138267]=Ph,e[138264]=_A,Hh=_A|1,f1=y4+4|0,qh=ji+f1|0,e[qh>>2]=Hh,Yh=ji+nn|0,e[Yh>>2]=_A,Jh=y4|3,Kh=ji+4|0,e[Kh>>2]=Jh):(e[138264]=0,e[138267]=0,zh=nn|3,Zh=ji+4|0,e[Zh>>2]=zh,s0=nn+4|0,nl=ji+s0|0,Qr=e[nl>>2]|0,Wh=Qr|1,e[nl>>2]=Wh),jh=ji+8|0,Je=jh,Je|0;if(sl=e[138265]|0,Xh=sl>>>0>y4>>>0,Xh)return jo=sl-y4|0,e[138265]=jo,RA=e[138268]|0,ef=RA+y4|0,e[138268]=ef,tf=jo|1,U=y4+4|0,ea=RA+U|0,e[ea>>2]=tf,Al=y4|3,ol=RA+4|0,e[ol>>2]=Al,al=RA+8|0,Je=al,Je|0;ta=e[138380]|0,$l=(ta|0)==0;do if($l)if(xA=Ev(30)|0,rf=xA+-1|0,ll=rf&xA,sf=(ll|0)==0,sf){e[138382]=xA,e[138381]=xA,e[138383]=-1,e[138384]=-1,e[138385]=0,e[138373]=0,Af=Kp(0)|0,cl=Af&-16,of=cl^1431655768,e[138380]=of;break}else Q2();while(!1);if(af=y4+48|0,gl=e[138382]|0,hl=y4+47|0,fl=gl+hl|0,ul=0-gl|0,sn=fl&ul,$f=sn>>>0>y4>>>0,!$f||(dl=e[138372]|0,lf=(dl|0)==0,!lf&&(El=e[138370]|0,Cl=El+sn|0,cf=Cl>>>0<=El>>>0,gf=Cl>>>0>dl>>>0,Io=cf|gf,Io)))return Je=0,Je|0;hf=e[138373]|0,ia=hf&4,Bl=(ia|0)==0;e:do if(Bl){os=e[138268]|0,pl=(os|0)==0;t:do if(pl)J4=174;else{for(ws=553496;;){if(ra=e[ws>>2]|0,ff=ra>>>0>os>>>0,!ff&&(Ql=ws+4|0,uf=e[Ql>>2]|0,yl=ra+uf|0,If=yl>>>0>os>>>0,If)){v=ws,S=Ql;break}if(df=ws+8|0,kl=e[df>>2]|0,Ef=(kl|0)==0,Ef){J4=174;break t}else ws=kl}if(bf=e[138265]|0,_f=fl-bf|0,TA=_f&ul,Rf=TA>>>0<2147483647,Rf)if(GA=Lt(TA|0)|0,xf=e[v>>2]|0,Lf=e[S>>2]|0,Mf=xf+Lf|0,Ll=(GA|0)==(Mf|0),n=Ll?TA:0,Ll)if(Tf=(GA|0)==-1,Tf)Rr=n;else{s6=GA,Qe=n,J4=194;break e}else ho=GA,Xt=TA,mo=n,J4=184;else Rr=0}while(!1);do if((J4|0)==174)if(FA=Lt(0)|0,Cf=(FA|0)==-1,Cf)Rr=0;else if(na=FA,vl=e[138381]|0,Sl=vl+-1|0,mf=Sl&na,Bf=(mf|0)==0,Bf?br=sn:(pf=Sl+na|0,yf=0-vl|0,wf=pf&yf,LA=sn-na|0,Dl=LA+wf|0,br=Dl),bl=e[138370]|0,_l=bl+br|0,MA=br>>>0>y4>>>0,kf=br>>>0<2147483647,WE=MA&kf,WE){if(Rl=e[138372]|0,vf=(Rl|0)==0,!vf&&(Sf=_l>>>0<=bl>>>0,Df=_l>>>0>Rl>>>0,XE=Sf|Df,XE)){Rr=0;break}if(Fl=Lt(br|0)|0,sa=(Fl|0)==(FA|0),eh=sa?br:0,sa){s6=FA,Qe=eh,J4=194;break e}else ho=Fl,Xt=br,mo=eh,J4=184}else Rr=0;while(!1);t:do if((J4|0)==184){Gf=0-Xt|0,Nf=(ho|0)!=-1,Uf=Xt>>>0<2147483647,tC=Uf&Nf,Ml=af>>>0>Xt>>>0,iC=Ml&tC;do if(iC)if(Tl=e[138382]|0,Xi=hl-Xt|0,NA=Xi+Tl|0,oa=0-Tl|0,aa=NA&oa,An=aa>>>0<2147483647,An)if(Nl=Lt(aa|0)|0,on=(Nl|0)==-1,on){Lt(Gf|0)|0,Rr=mo;break t}else{Of=aa+Xt|0,n$=Of;break}else n$=Xt;else n$=Xt;while(!1);if(Ul=(ho|0)==-1,Ul)Rr=mo;else{s6=ho,Qe=n$,J4=194;break e}}while(!1);Pf=e[138373]|0,Hf=Pf|4,e[138373]=Hf,th=Rr,J4=191}else th=0,J4=191;while(!1);if((J4|0)==191&&(Yf=sn>>>0<2147483647,Yf&&(UA=Lt(sn|0)|0,$a=Lt(0)|0,yr=(UA|0)!=-1,Jf=($a|0)!=-1,eC=yr&Jf,Kf=UA>>>0<$a>>>0,rC=Kf&eC,rC&&(Ol=$a,la=UA,Pl=Ol-la|0,Hl=y4+40|0,ql=Pl>>>0>Hl>>>0,d2=ql?Pl:th,ql&&(s6=UA,Qe=d2,J4=194)))),(J4|0)==194){zf=e[138370]|0,ca=zf+Qe|0,e[138370]=ca,Zf=e[138371]|0,Wf=ca>>>0>Zf>>>0,Wf&&(e[138371]=ca),N9=e[138268]|0,jf=(N9|0)==0;e:do if(jf){for(Yl=e[138266]|0,Xf=(Yl|0)==0,eu=s6>>>0>>0,nC=Xf|eu,nC&&(e[138266]=s6),e[138374]=s6,e[138375]=Qe,e[138377]=0,tu=e[138380]|0,e[138271]=tu,e[138270]=-1,uo=0;ha=uo<<1,Jl=553088+(ha<<2)|0,o0=ha+3|0,iu=553088+(o0<<2)|0,e[iu>>2]=Jl,j=ha+2|0,ru=553088+(j<<2)|0,e[ru>>2]=Jl,Kl=uo+1|0,VE=(Kl|0)==32,!VE;)uo=Kl;Vl=Qe+-40|0,nu=s6+8|0,fa=nu,ua=fa&7,Zl=(ua|0)==0,su=0-fa|0,Wl=su&7,Ia=Zl?0:Wl,Au=s6+Ia|0,jl=Vl-Ia|0,e[138268]=Au,e[138265]=jl,ou=jl|1,V=Ia+4|0,au=s6+V|0,e[au>>2]=ou,l1=Qe+-36|0,$u=s6+l1|0,e[$u>>2]=40,lu=e[138384]|0,e[138269]=lu}else{for(vs=553496;;){if(ec=e[vs>>2]|0,da=vs+4|0,OA=e[da>>2]|0,tc=ec+OA|0,cu=(s6|0)==(tc|0),cu){C=ec,p=da,B=OA,sC=vs,J4=204;break}if(ic=vs+8|0,rc=e[ic>>2]|0,gu=(rc|0)==0,gu)break;vs=rc}if((J4|0)==204&&(hu=sC+12|0,fu=e[hu>>2]|0,uu=fu&8,Iu=(uu|0)==0,Iu&&(du=N9>>>0>=C>>>0,Eu=N9>>>0>>0,Wg=Eu&du,Wg))){Cu=B+Qe|0,e[p>>2]=Cu,mu=e[138265]|0,sc=mu+Qe|0,Bu=N9+8|0,Ac=Bu,pu=Ac&7,Qu=(pu|0)==0,oc=0-Ac|0,yu=oc&7,as=Qu?0:yu,ac=N9+as|0,Ea=sc-as|0,e[138268]=ac,e[138265]=Ea,wu=Ea|1,n0=as+4|0,PA=N9+n0|0,e[PA>>2]=wu,n1=sc+4|0,Ca=N9+n1|0,e[Ca>>2]=40,ku=e[138384]|0,e[138269]=ku;break}for($c=e[138266]|0,vu=s6>>>0<$c>>>0,vu?(e[138266]=s6,gs=s6):gs=$c,Su=s6+Qe|0,Ss=553496;;){if(Du=e[Ss>>2]|0,bu=(Du|0)==(Su|0),bu){I=Ss,sr=Ss,J4=212;break}if(_u=Ss+8|0,lc=e[_u>>2]|0,Ru=(lc|0)==0,Ru){ks=553496;break}else Ss=lc}if((J4|0)==212)if(xu=sr+12|0,Fu=e[xu>>2]|0,Ba=Fu&8,Lu=(Ba|0)==0,Lu){e[I>>2]=s6,pa=sr+4|0,Mu=e[pa>>2]|0,Tu=Mu+Qe|0,e[pa>>2]=Tu,Gu=s6+8|0,cc=Gu,Nu=cc&7,Uu=(Nu|0)==0,Ou=0-cc|0,Hu=Ou&7,qA=Uu?0:Hu,qu=s6+qA|0,u0=Qe+8|0,Yu=s6+u0|0,gc=Yu,Ju=gc&7,Ku=(Ju|0)==0,Vu=0-gc|0,zu=Vu&7,ci=Ku?0:zu,k0=ci+Qe|0,gi=s6+k0|0,fc=gi,Qa=qu,Zu=fc-Qa|0,i0=qA+y4|0,Zt=s6+i0|0,ls=Zu-y4|0,Wu=y4|3,g0=qA+4|0,ju=s6+g0|0,e[ju>>2]=Wu,Xu=(gi|0)==(N9|0);t:do if(Xu)eI=e[138265]|0,uc=eI+ls|0,e[138265]=uc,e[138268]=Zt,iI=uc|1,H1=i0+4|0,rI=s6+H1|0,e[rI>>2]=iI;else{if(Ic=e[138267]|0,nI=(gi|0)==(Ic|0),nI){sI=e[138264]|0,cs=sI+ls|0,e[138264]=cs,e[138267]=Zt,ya=cs|1,K1=i0+4|0,AI=s6+K1|0,e[AI>>2]=ya,P1=cs+i0|0,dc=s6+P1|0,e[dc>>2]=cs;break}if(A1=Qe+4|0,J0=A1+ci|0,aI=s6+J0|0,YA=e[aI>>2]|0,$I=YA&3,lI=($I|0)==1,lI){Ec=YA&-8,Cc=YA>>>3,cI=YA>>>0<256;i:do if(cI){N1=ci|8,q0=N1+Qe|0,gI=s6+q0|0,$n=e[gI>>2]|0,w1=Qe+12|0,H0=w1+ci|0,hI=s6+H0|0,ln=e[hI>>2]|0,uI=Cc<<1,mc=553088+(uI<<2)|0,II=($n|0)==(mc|0);do if(!II){if(dI=$n>>>0>>0,dI&&Q2(),Bc=$n+12|0,EI=e[Bc>>2]|0,pc=(EI|0)==(gi|0),pc)break;Q2()}while(!1);if(CI=(ln|0)==($n|0),CI){wa=1<>>0>>0,pI&&Q2(),wc=ln+8|0,QI=e[wc>>2]|0,yI=(QI|0)==(gi|0),yI){G=wc;break}Q2()}while(!1);wI=$n+12|0,e[wI>>2]=ln,e[G>>2]=$n}else{x1=ci|24,D0=x1+Qe|0,kI=s6+D0|0,hs=e[kI>>2]|0,Y1=Qe+12|0,B0=Y1+ci|0,vI=s6+B0|0,cn=e[vI>>2]|0,SI=(cn|0)==(gi|0);do if(SI){if(W1=ci|16,S0=A1+W1|0,bc=s6+S0|0,_c=e[bc>>2]|0,xI=(_c|0)==0,xI)if(L0=W1+Qe|0,Rc=s6+L0|0,xc=e[Rc>>2]|0,FI=(xc|0)==0,FI){St=0;break}else fn=xc,lo=Rc;else fn=_c,lo=bc;for(;;){if(Fc=fn+20|0,Lc=e[Fc>>2]|0,MI=(Lc|0)==0,!MI){fn=Lc,lo=Fc;continue}if(Mc=fn+16|0,Tc=e[Mc>>2]|0,TI=(Tc|0)==0,TI){PE=fn,Jg=lo;break}else fn=Tc,lo=Mc}if(GI=Jg>>>0>>0,GI)Q2();else{e[Jg>>2]=0,St=PE;break}}else if(L1=ci|8,x0=L1+Qe|0,DI=s6+x0|0,ka=e[DI>>2]|0,bI=ka>>>0>>0,bI&&Q2(),va=ka+12|0,Sa=e[va>>2]|0,vc=(Sa|0)==(gi|0),vc||Q2(),Sc=cn+8|0,RI=e[Sc>>2]|0,Dc=(RI|0)==(gi|0),Dc){e[va>>2]=cn,e[Sc>>2]=ka,St=cn;break}else Q2();while(!1);if(Gc=(hs|0)==0,Gc)break;y1=Qe+28|0,F0=y1+ci|0,Da=s6+F0|0,Nc=e[Da>>2]|0,Pc=553352+(Nc<<2)|0,NI=e[Pc>>2]|0,UI=(gi|0)==(NI|0);do if(UI){if(e[Pc>>2]=St,KE=(St|0)==0,!KE)break;OI=1<>>0>>0,JI&&Q2(),Hc=hs+16|0,KI=e[Hc>>2]|0,VI=(KI|0)==(gi|0),VI?e[Hc>>2]=St:(zI=hs+20|0,e[zI>>2]=St),qc=(St|0)==0,qc)break i;while(!1);Yc=e[138266]|0,ZI=St>>>0>>0,ZI&&Q2(),Jc=St+24|0,e[Jc>>2]=hs,k1=ci|16,M0=k1+Qe|0,_a=s6+M0|0,JA=e[_a>>2]|0,Kc=(JA|0)==0;do if(!Kc)if(jI=JA>>>0>>0,jI)Q2();else{XI=St+16|0,e[XI>>2]=JA,ed=JA+24|0,e[ed>>2]=St;break}while(!1);if(P0=A1+k1|0,Vc=s6+P0|0,KA=e[Vc>>2]|0,td=(KA|0)==0,td)break;if(id=e[138266]|0,rd=KA>>>0>>0,rd)Q2();else{nd=St+20|0,e[nd>>2]=KA,sd=KA+24|0,e[sd>>2]=St;break}}while(!1);s2=Ec|ci,R0=s2+Qe|0,od=s6+R0|0,ad=Ec+ls|0,Zg=od,jt=ad}else Zg=gi,jt=ls;if(zc=Zg+4|0,$d=e[zc>>2]|0,ld=$d&-2,e[zc>>2]=ld,cd=jt|1,y0=i0+4|0,gd=s6+y0|0,e[gd>>2]=cd,E0=jt+i0|0,VA=s6+E0|0,e[VA>>2]=jt,Zc=jt>>>3,hd=jt>>>0<256,hd){gn=Zc<<1,Wc=553088+(gn<<2)|0,jc=e[138262]|0,Ra=1<>2]|0,dd=e[138266]|0,Cd=tg>>>0
>>0,!Cd){L=eg,Va=tg;break}Q2()}while(!1);e[L>>2]=Zt,md=Va+12|0,e[md>>2]=Zt,B1=i0+8|0,Bd=s6+B1|0,e[Bd>>2]=Va,p1=i0+12|0,zA=s6+p1|0,e[zA>>2]=Wc;break}xa=jt>>>8,pd=(xa|0)==0;do if(pd)Sr=0;else{if(Qd=jt>>>0>16777215,Qd){Sr=31;break}yd=xa+1048320|0,wd=yd>>>16,ig=wd&8,rg=xa<>>16,ng=Sd&4,wr=ng|ig,sg=rg<>>16,og=Dd&2,ZA=wr|og,_d=14-ZA|0,Rd=sg<>>15,ag=_d+WA|0,xd=ag<<1,Fd=ag+7|0,$g=jt>>>Fd,Ld=$g&1,Md=Ld|xd,Sr=Md}while(!1);if(Fa=553352+(Sr<<2)|0,p0=i0+28|0,Td=s6+p0|0,e[Td>>2]=Sr,V0=i0+16|0,Gd=s6+V0|0,T0=i0+20|0,Nd=s6+T0|0,e[Nd>>2]=0,e[Gd>>2]=0,lg=e[138263]|0,cg=1<>2]=Zt,r1=i0+24|0,fs=s6+r1|0,e[fs>>2]=Fa,e1=i0+12|0,Pd=s6+e1|0,e[Pd>>2]=Zt,i1=i0+8|0,Hd=s6+i1|0,e[Hd>>2]=Zt;break}La=e[Fa>>2]|0,fg=La+4|0,qd=e[fg>>2]|0,Yd=qd&-8,Jd=(Yd|0)==(jt|0);i:do if(Jd)Dr=La;else{for(Kd=(Sr|0)==31,ug=Sr>>>1,Vd=25-ug|0,zd=Kd?0:Vd,Zd=jt<>>31,mg=(e$+16|0)+(Cg<<2)|0,us=e[mg>>2]|0,Qi=(us|0)==0,Qi){o=mg,YE=e$;break}if(Wd=Bs<<1,jd=us+4|0,dg=e[jd>>2]|0,Eg=dg&-8,Xd=(Eg|0)==(jt|0),Xd){Dr=us;break i}else Bs=Wd,e$=us}if(tr=e[138266]|0,eE=o>>>0>>0,eE)Q2();else{e[o>>2]=Zt,E1=i0+24|0,tE=s6+E1|0,e[tE>>2]=YE,u1=i0+12|0,iE=s6+u1|0,e[iE>>2]=Zt,d1=i0+8|0,rE=s6+d1|0,e[rE>>2]=Zt;break t}}while(!1);if(Ma=Dr+8|0,eo=e[Ma>>2]|0,pg=e[138266]|0,Qg=eo>>>0>=pg>>>0,i$=Dr>>>0>=pg>>>0,nE=Qg&i$,nE){Is=eo+12|0,e[Is>>2]=Zt,e[Ma>>2]=Zt,z0=i0+8|0,sE=s6+z0|0,e[sE>>2]=eo,I1=i0+12|0,io=s6+I1|0,e[io>>2]=Dr,h1=i0+24|0,Ta=s6+h1|0,e[Ta>>2]=0;break}else Q2()}while(!1);return $1=qA|8,AE=s6+$1|0,Je=AE,Je|0}else ks=553496;for(;;){if(Ga=e[ks>>2]|0,oE=Ga>>>0>N9>>>0,!oE&&(aE=ks+4|0,yg=e[aE>>2]|0,ro=Ga+yg|0,$E=ro>>>0>N9>>>0,$E)){c=Ga,f=yg,E=ro;break}lE=ks+8|0,cE=e[lE>>2]|0,ks=cE}if(A0=f+-47|0,a0=f+-39|0,gE=c+a0|0,kg=gE,hE=kg&7,Z7=(hE|0)==0,B4=0-kg|0,Wt=B4&7,fE=Z7?0:Wt,a1=A0+fE|0,Sg=c+a1|0,Na=N9+16|0,uE=Sg>>>0>>0,kr=uE?N9:Sg,ds=kr+8|0,IE=Qe+-40|0,dE=s6+8|0,Dg=dE,Ua=Dg&7,EE=(Ua|0)==0,_g=0-Dg|0,Rg=_g&7,Oa=EE?0:Rg,Pa=s6+Oa|0,xg=IE-Oa|0,e[138268]=Pa,e[138265]=xg,Es=xg|1,Z=Oa+4|0,Ha=s6+Z|0,e[Ha>>2]=Es,s1=Qe+-36|0,Fg=s6+s1|0,e[Fg>>2]=40,CE=e[138384]|0,e[138269]=CE,hn=kr+4|0,e[hn>>2]=27,e[ds>>2]=e[138374]|0,e[ds+4>>2]=e[138375]|0,e[ds+8>>2]=e[138376]|0,e[ds+12>>2]=e[138377]|0,e[138374]=s6,e[138375]=Qe,e[138377]=0,e[138376]=ds,Lg=kr+28|0,e[Lg>>2]=7,no=kr+32|0,BE=no>>>0>>0,BE)for(yi=Lg;Mg=yi+4|0,e[Mg>>2]=7,pE=yi+8|0,QE=pE>>>0>>0,QE;)yi=Mg;if(yE=(kr|0)==(N9|0),!yE){if(wE=kr,kE=N9,wi=wE-kE|0,SE=e[hn>>2]|0,DE=SE&-2,e[hn>>2]=DE,bE=wi|1,Tg=N9+4|0,e[Tg>>2]=bE,e[kr>>2]=wi,hi=wi>>>3,so=wi>>>0<256,so){qa=hi<<1,Gg=553088+(qa<<2)|0,Ng=e[138262]|0,Ug=1<>2]|0,FE=e[138266]|0,LE=Hg>>>0>>0,LE?Q2():(R=Pg,Ja=Hg)),e[R>>2]=N9,qg=Ja+12|0,e[qg>>2]=N9,ME=N9+8|0,e[ME>>2]=Ja,Ao=N9+12|0,e[Ao>>2]=Gg;break}if(oo=wi>>>8,TE=(oo|0)==0,TE?ir=0:(Ya=wi>>>0>16777215,Ya?ir=31:(GE=oo+1048320|0,NE=GE>>>16,Yg=NE&8,ms=oo<>>16,$2=OE&4,i2=$2|Yg,o2=ms<<$2,X1=o2+245760|0,n2=X1>>>16,f2=n2&2,e2=i2|f2,y2=14-e2|0,S2=o2<>>15,M2=y2+w2|0,_2=M2<<1,G2=M2+7|0,u2=wi>>>G2,K2=u2&1,N2=K2|_2,ir=N2)),q2=553352+(ir<<2)|0,T2=N9+28|0,e[T2>>2]=ir,O2=N9+20|0,e[O2>>2]=0,e[Na>>2]=0,V2=e[138263]|0,P2=1<>2]=N9,X2=N9+24|0,e[X2>>2]=q2,v5=N9+12|0,e[v5>>2]=N9,z2=N9+8|0,e[z2>>2]=N9;break}f5=e[q2>>2]|0,w5=f5+4|0,O5=e[w5>>2]|0,k2=O5&-8,E5=(k2|0)==(wi|0);t:do if(E5)go=f5;else{for(r5=(ir|0)==31,x2=ir>>>1,R2=25-x2|0,m2=r5?0:R2,C5=wi<>>31,l5=(t$+16|0)+(A5<<2)|0,S5=e[l5>>2]|0,m5=(S5|0)==0,m5){a=l5,Vg=t$;break}if(x5=Wa<<1,u5=S5+4|0,D5=e[u5>>2]|0,H2=D5&-8,I5=(H2|0)==(wi|0),I5){go=S5;break t}else Wa=x5,t$=S5}if(M1=e[138266]|0,k5=a>>>0>>0,k5)Q2();else{e[a>>2]=N9,c5=N9+24|0,e[c5>>2]=Vg,o5=N9+12|0,e[o5>>2]=N9,c2=N9+8|0,e[c2>>2]=N9;break e}}while(!1);if(B5=go+8|0,e5=e[B5>>2]|0,n5=e[138266]|0,g5=e5>>>0>=n5>>>0,zE=go>>>0>=n5>>>0,J2=g5&zE,J2){h5=e5+12|0,e[h5>>2]=N9,e[B5>>2]=N9,t5=N9+8|0,e[t5>>2]=e5,b5=N9+12|0,e[b5>>2]=go,W2=N9+24|0,e[W2>>2]=0;break}else Q2()}}while(!1);if(F2=e[138265]|0,p5=F2>>>0>y4>>>0,p5)return q5=F2-y4|0,e[138265]=q5,e3=e[138268]|0,d5=e3+y4|0,e[138268]=d5,f3=q5|1,K=y4+4|0,g3=e3+K|0,e[g3>>2]=f3,V5=y4|3,t3=e3+4|0,e[t3>>2]=V5,s3=e3+8|0,Je=s3,Je|0}return F5=Jp()|0,e[F5>>2]=12,Je=0,Je|0}function I2(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,Z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,m6=0,z3=0,a6=0,B6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,A3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0,R4=0,T4=0,j4=0,d4=0,G4=0,G9=0,N4=0,s4=0,x4=0,c4=0,Ie=0,O9=0,d9=0,de=0,Me=0,ze=0,U4=0,Te=0,O4=0,X4=0,ke=0,Ze=0,V9=0,oe=0,g4=0,D6=0,P4=0,R9=0,A4=0,D4=0,ae=0,z9=0,$e=0,le=0,E4=0,ee=0,F4=0,ce=0,E9=0,$6=0,Ge=0,o4=0,Ee=0,C4=0,a4=0,U6=0,ve=0,Se=0,We=0,$4=0,Q4=0,g8=0,H3=0,Q9=0,C9=0,L4=0,te=0,a7=0,De=0;if(De=m,X=(t|0)==0,!X){U=t+-8|0,K2=e[138266]|0,C6=U>>>0>>0,C6&&Q2(),Q6=t+-4|0,o9=e[Q6>>2]|0,K9=o9&3,R4=(K9|0)==1,R4&&Q2(),O9=o9&-8,p=O9+-8|0,V9=t+p|0,o0=o9&1,j=(o0|0)==0;do if(j){if(k0=e[U>>2]|0,S0=(K9|0)==0,S0)return;if(Q=-8-k0|0,v0=t+Q|0,z0=k0+O9|0,y1=v0>>>0>>0,y1&&Q2(),P1=e[138267]|0,s2=(v0|0)==(P1|0),s2){if(z=O9+-4|0,n0=t+z|0,i0=e[n0>>2]|0,r0=i0&3,K=(r0|0)==3,!K){H3=v0,Q9=z0;break}e[138264]=z0,c0=i0&-2,e[n0>>2]=c0,s0=z0|1,_=Q+4|0,l0=t+_|0,e[l0>>2]=s0,e[V9>>2]=z0;return}if(n2=k0>>>3,N2=k0>>>0<256,N2){if(Y=Q+8|0,v5=t+Y|0,m2=e[v5>>2]|0,t0=Q+12|0,m5=t+t0|0,J2=e[m5>>2]|0,f3=n2<<1,q3=553088+(f3<<2)|0,C3=(m2|0)==(q3|0),C3||(h6=m2>>>0>>0,h6&&Q2(),o6=m2+12|0,v3=e[o6>>2]|0,O6=(v3|0)==(v0|0),O6||Q2()),J6=(J2|0)==(m2|0),J6){G6=1<>>0>>0,S6&&Q2(),V6=J2+8|0,F6=e[V6>>2]|0,F3=(F6|0)==(v0|0),F3?c=V6:Q2()),L6=m2+12|0,e[L6>>2]=J2,e[c>>2]=m2,H3=v0,Q9=z0;break}x=Q+24|0,X6=t+x|0,s9=e[X6>>2]|0,R=Q+12|0,W6=t+R|0,g9=e[W6>>2]|0,h9=(g9|0)==(v0|0);do if(h9){if(M=Q+20|0,r4=t+M|0,l4=e[r4>>2]|0,T9=(l4|0)==0,T9)if(L=Q+16|0,v9=t+L|0,I9=e[v9>>2]|0,P6=(I9|0)==0,P6){E9=0;break}else F4=I9,Ee=v9;else F4=l4,Ee=r4;for(;;){if(t9=F4+20|0,I4=e[t9>>2]|0,k4=(I4|0)==0,!k4){F4=I4,Ee=t9;continue}if(n4=F4+16|0,p9=e[n4>>2]|0,v4=(p9|0)==0,v4){ce=F4,C4=Ee;break}else F4=p9,Ee=n4}if(S4=C4>>>0>>0,S4)Q2();else{e[C4>>2]=0,E9=ce;break}}else if(P=Q+8|0,f9=t+P|0,A9=e[f9>>2]|0,L9=A9>>>0>>0,L9&&Q2(),d6=A9+12|0,M6=e[d6>>2]|0,e9=(M6|0)==(v0|0),e9||Q2(),M9=g9+8|0,u9=e[M9>>2]|0,u4=(u9|0)==(v0|0),u4){e[d6>>2]=g9,e[M9>>2]=A9,E9=g9;break}else Q2();while(!1);if(T4=(s9|0)==0,T4)H3=v0,Q9=z0;else{if(T=Q+28|0,j4=t+T|0,d4=e[j4>>2]|0,G4=553352+(d4<<2)|0,G9=e[G4>>2]|0,N4=(v0|0)==(G9|0),N4){if(e[G4>>2]=E9,$4=(E9|0)==0,$4){s4=1<>>0>>0,de&&Q2(),Me=s9+16|0,ze=e[Me>>2]|0,U4=(ze|0)==(v0|0),U4?e[Me>>2]=E9:(Te=s9+20|0,e[Te>>2]=E9),O4=(E9|0)==0,O4){H3=v0,Q9=z0;break}X4=e[138266]|0,ke=E9>>>0>>0,ke&&Q2(),Ze=E9+24|0,e[Ze>>2]=s9,G=Q+16|0,oe=t+G|0,g4=e[oe>>2]|0,D6=(g4|0)==0;do if(!D6)if(P4=g4>>>0>>0,P4)Q2();else{R9=E9+16|0,e[R9>>2]=g4,A4=g4+24|0,e[A4>>2]=E9;break}while(!1);if(N=Q+20|0,D4=t+N|0,ae=e[D4>>2]|0,z9=(ae|0)==0,z9)H3=v0,Q9=z0;else if($e=e[138266]|0,Z=ae>>>0<$e>>>0,Z)Q2();else{V=E9+20|0,e[V>>2]=ae,A0=ae+24|0,e[A0>>2]=E9,H3=v0,Q9=z0;break}}}else H3=U,Q9=O9;while(!1);if(a0=H3>>>0>>0,a0||Q2(),D=O9+-4|0,g0=t+D|0,f0=e[g0>>2]|0,Q0=f0&1,d0=(Q0|0)==0,d0&&Q2(),y0=f0&2,h0=(y0|0)==0,h0){if(E0=e[138268]|0,C0=(V9|0)==(E0|0),C0){if(u0=e[138265]|0,J0=u0+Q9|0,e[138265]=J0,e[138268]=H3,D0=J0|1,B0=H3+4|0,e[B0>>2]=D0,x0=e[138267]|0,F0=(H3|0)==(x0|0),!F0)return;e[138267]=0,e[138264]=0;return}if(M0=e[138267]|0,G0=(V9|0)==(M0|0),G0){p0=e[138264]|0,P0=p0+Q9|0,e[138264]=P0,e[138267]=H3,R0=P0|1,L0=H3+4|0,e[L0>>2]=R0,q0=H3+P0|0,e[q0>>2]=P0;return}H0=f0&-8,N0=H0+Q9|0,V0=f0>>>3,T0=f0>>>0<256;do if(T0){if(U0=t+O9|0,r1=e[U0>>2]|0,y=O9|4,O0=t+y|0,e1=e[O0>>2]|0,i1=V0<<1,c1=553088+(i1<<2)|0,$1=(r1|0)==(c1|0),$1||(f1=e[138266]|0,g1=r1>>>0>>0,g1&&Q2(),l1=r1+12|0,s1=e[l1>>2]|0,a1=(s1|0)==(V9|0),a1||Q2()),n1=(e1|0)==(r1|0),n1){A1=1<>>0>>0,B1&&Q2(),p1=e1+8|0,Q1=e[p1>>2]|0,D1=(Q1|0)==(V9|0),D1?a=p1:Q2()),_1=r1+12|0,e[_1>>2]=e1,e[a>>2]=r1}else{J=O9+16|0,k1=t+J|0,x1=e[k1>>2]|0,W=O9|4,L1=t+W|0,N1=e[L1>>2]|0,w1=(N1|0)==(V9|0);do if(w1){if(H=O9+12|0,W1=t+H|0,O1=e[W1>>2]|0,l2=(O1|0)==0,l2)if(e0=O9+8|0,z1=t+e0|0,h2=e[z1>>2]|0,d2=(h2|0)==0,d2){o4=0;break}else $6=h2,a4=z1;else $6=O1,a4=W1;for(;;){if(A2=$6+20|0,V1=e[A2>>2]|0,g2=(V1|0)==0,!g2){$6=V1,a4=A2;continue}if(a2=$6+16|0,t2=e[a2>>2]|0,$2=(t2|0)==0,$2){Ge=$6,U6=a4;break}else $6=t2,a4=a2}if(i2=e[138266]|0,o2=U6>>>0>>0,o2)Q2();else{e[U6>>2]=0,o4=Ge;break}}else if(U1=t+O9|0,Z1=e[U1>>2]|0,G1=e[138266]|0,v1=Z1>>>0>>0,v1&&Q2(),K1=Z1+12|0,H1=e[K1>>2]|0,q1=(H1|0)==(V9|0),q1||Q2(),Y1=N1+8|0,j1=e[Y1>>2]|0,r2=(j1|0)==(V9|0),r2){e[K1>>2]=N1,e[Y1>>2]=Z1,o4=N1;break}else Q2();while(!1);if(X1=(x1|0)==0,!X1){if(v=O9+20|0,f2=t+v|0,e2=e[f2>>2]|0,y2=553352+(e2<<2)|0,S2=e[y2>>2]|0,w2=(V9|0)==(S2|0),w2){if(e[y2>>2]=o4,Q4=(o4|0)==0,Q4){C2=1<>>0>>0,q2&&Q2(),T2=x1+16|0,O2=e[T2>>2]|0,V2=(O2|0)==(V9|0),V2?e[T2>>2]=o4:(s5=x1+20|0,e[s5>>2]=o4),P2=(o4|0)==0,P2)break;T1=e[138266]|0,j2=o4>>>0>>0,j2&&Q2(),R5=o4+24|0,e[R5>>2]=x1,S=O9+8|0,X2=t+S|0,z2=e[X2>>2]|0,f5=(z2|0)==0;do if(!f5)if(w5=z2>>>0>>0,w5)Q2();else{O5=o4+16|0,e[O5>>2]=z2,$5=z2+24|0,e[$5>>2]=o4;break}while(!1);if(w=O9+12|0,k2=t+w|0,E5=e[k2>>2]|0,r5=(E5|0)==0,!r5)if(x2=e[138266]|0,R2=E5>>>0>>0,R2)Q2();else{C5=o4+20|0,e[C5>>2]=E5,x5=E5+24|0,e[x5>>2]=o4;break}}}while(!1);if(u5=N0|1,S5=H3+4|0,e[S5>>2]=u5,G5=H3+N0|0,e[G5>>2]=N0,D5=e[138267]|0,H2=(H3|0)==(D5|0),H2){e[138264]=N0;return}else C9=N0}else I5=f0&-2,e[g0>>2]=I5,A5=Q9|1,l5=H3+4|0,e[l5>>2]=A5,M1=H3+Q9|0,e[M1>>2]=Q9,C9=Q9;if(k5=C9>>>3,c5=C9>>>0<256,c5){o5=k5<<1,Z2=553088+(o5<<2)|0,c2=e[138262]|0,B5=1<>2]|0,b5=e[138266]|0,W2=t5>>>0>>0,W2?Q2():(f=h5,le=t5)),e[f>>2]=H3,a5=le+12|0,e[a5>>2]=H3,F2=H3+8|0,e[F2>>2]=le,p5=H3+12|0,e[p5>>2]=Z2;return}q5=C9>>>8,e3=(q5|0)==0,e3?E4=0:(d5=C9>>>0>16777215,d5?E4=31:(g3=q5+1048320|0,V5=g3>>>16,t3=V5&8,s3=q5<>>16,z5=F5&4,y3=z5|t3,h3=s3<>>16,W5=M3&2,Q3=y3|W5,X5=14-Q3|0,j3=h3<>>15,T3=X5+_3|0,a3=T3<<1,$3=T3+7|0,l3=C9>>>$3,Y5=l3&1,N5=Y5|a3,E4=N5)),P5=553352+(E4<<2)|0,y5=H3+28|0,e[y5>>2]=E4,G3=H3+16|0,L5=H3+20|0,e[L5>>2]=0,e[G3>>2]=0,t6=e[138263]|0,i3=1<>2]=H3,w3=H3+24|0,e[w3>>2]=P5,p3=H3+12|0,e[p3>>2]=H3,X3=H3+8|0,e[X3>>2]=H3;else{V3=e[P5>>2]|0,N3=V3+4|0,Z5=e[N3>>2]|0,k3=Z5&-8,c3=(k3|0)==(C9|0);t:do if(c3)ve=V3;else{for(U3=(E4|0)==31,u3=E4>>>1,y6=25-u3|0,w6=U3?0:y6,k6=C9<>>31,W3=(Se+16|0)+(Z3<<2)|0,a6=e[W3>>2]|0,f6=(a6|0)==0,f6){n=W3,We=Se;break}if(m6=ee<<1,z3=a6+4|0,B6=e[z3>>2]|0,_6=B6&-8,Y6=(_6|0)==(C9|0),Y6){ve=a6;break t}else ee=m6,Se=a6}if(O3=e[138266]|0,S3=n>>>0>>0,S3)Q2();else{e[n>>2]=H3,P3=H3+24|0,e[P3>>2]=We,Y3=H3+12|0,e[Y3>>2]=H3,v6=H3+8|0,e[v6>>2]=H3;break e}}while(!1);if(i6=ve+8|0,r3=e[i6>>2]|0,A3=e[138266]|0,r6=r3>>>0>=A3>>>0,g8=ve>>>0>=A3>>>0,u6=r6&g8,u6){D3=r3+12|0,e[D3>>2]=H3,e[i6>>2]=H3,T6=H3+8|0,e[T6>>2]=r3,e6=H3+12|0,e[e6>>2]=ve,p6=H3+24|0,e[p6>>2]=0;break}else Q2()}while(!1);if(R6=e[138270]|0,K6=R6+-1|0,e[138270]=K6,I6=(K6|0)==0,I6)te=553504;else return;for(;L4=e[te>>2]|0,x3=(L4|0)==0,Z6=L4+8|0,!x3;)te=Z6;e[138270]=-1}}function t4(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0;return _=m,a=(t|0)==0,a?D=0:(c=i5(n,t)|0,I=n|t,C=I>>>0>65535,C?(p=(c>>>0)/(t>>>0)&-1,B=(p|0)==(n|0),o=B?c:-1,D=o):D=c),v=k9(D)|0,S=(v|0)==0,S||(w=v+-4|0,y=e[w>>2]|0,f=y&3,E=(f|0)==0,E)||Ae(v|0,0,D|0)|0,v|0}function Ni(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0;return Y=m,o=(t|0)==0,o?(a=k9(n)|0,P=a,P|0):(y=n>>>0>4294967231,y?(x=Jp()|0,e[x>>2]=12,P=0,P|0):(R=n>>>0<11,L=n+11|0,M=L&-8,T=R?16:M,G=t+-8|0,N=AD(G,T)|0,c=(N|0)==0,c?(E=k9(n)|0,I=(E|0)==0,I?(P=0,P|0):(C=t+-4|0,p=e[C>>2]|0,B=p&-8,v=p&3,S=(v|0)==0,w=S?8:4,D=B-w|0,Q=D>>>0>>0,_=Q?D:n,i4(E|0,t|0,_|0)|0,I2(t),P=E,P|0)):(f=N+8|0,P=f,P|0)))}function AD(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0;if(z5=m,G=t+4|0,N=e[G>>2]|0,w1=N&-8,r2=t+w1|0,a2=e[138266]|0,w2=N&3,f3=t>>>0>=a2>>>0,g3=(w2|0)!=1,V5=g3&f3,V2=t>>>0>>0,t3=V5&V2,t3||Q2(),_=w1|4,O5=t+_|0,S5=e[O5>>2]|0,o5=S5&1,P=(o5|0)==0,P&&Q2(),Z=(w2|0)==0,Z)return a0=n>>>0<256,a0?(d5=0,d5|0):(J0=n+4|0,L0=w1>>>0>>0,!L0&&(i1=w1-n|0,I1=e[138382]|0,k1=I1<<1,L1=i1>>>0>k1>>>0,!L1)?(d5=t,d5|0):(d5=0,d5|0));if(N1=w1>>>0>>0,!N1)return U1=w1-n|0,Z1=U1>>>0>15,Z1?(G1=t+n|0,v1=N&1,K1=v1|n,P1=K1|2,e[G>>2]=P1,Q=n+4|0,H1=t+Q|0,q1=U1|3,e[H1>>2]=q1,Y1=e[O5>>2]|0,j1=Y1|1,e[O5>>2]=j1,QQ(G1,U1),d5=t,d5|0):(d5=t,d5|0);if(W1=e[138268]|0,O1=(r2|0)==(W1|0),O1)return l2=e[138265]|0,z1=l2+w1|0,h2=z1>>>0>n>>>0,h2?(s2=z1-n|0,d2=t+n|0,A2=N&1,V1=A2|n,g2=V1|2,e[G>>2]=g2,D=n+4|0,t2=t+D|0,$2=s2|1,e[t2>>2]=$2,e[138268]=d2,e[138265]=s2,d5=t,d5|0):(d5=0,d5|0);if(i2=e[138267]|0,o2=(r2|0)==(i2|0),o2)return X1=e[138264]|0,n2=X1+w1|0,f2=n2>>>0>>0,f2?(d5=0,d5|0):(e2=n2-n|0,y2=e2>>>0>15,y2?(S2=t+n|0,C2=t+n2|0,M2=N&1,_2=M2|n,G2=_2|2,e[G>>2]=G2,S=n+4|0,u2=t+S|0,K2=e2|1,e[u2>>2]=K2,e[C2>>2]=e2,y=n2+4|0,N2=t+y|0,q2=e[N2>>2]|0,T2=q2&-2,e[N2>>2]=T2,s3=S2,E3=e2):(O2=N&1,s5=O2|n2,P2=s5|2,e[G>>2]=P2,v=n2+4|0,T1=t+v|0,j2=e[T1>>2]|0,R5=j2|1,e[T1>>2]=R5,s3=0,E3=0),e[138264]=E3,e[138267]=s3,d5=t,d5|0);if(X2=S5&2,v5=(X2|0)==0,!v5||(z2=S5&-8,f5=z2+w1|0,w5=f5>>>0>>0,w5))return d5=0,d5|0;$5=f5-n|0,k2=S5>>>3,E5=S5>>>0<256;do if(E5){if(p=w1+8|0,r5=t+p|0,x2=e[r5>>2]|0,B=w1+12|0,R2=t+B|0,m2=e[R2>>2]|0,C5=k2<<1,x5=553088+(C5<<2)|0,u5=(x2|0)==(x5|0),u5||(G5=x2>>>0>>0,G5&&Q2(),D5=x2+12|0,H2=e[D5>>2]|0,I5=(H2|0)==(r2|0),I5||Q2()),A5=(m2|0)==(x2|0),A5){l5=1<>>0>>0,Z2&&Q2(),c2=m2+8|0,B5=e[c2>>2]|0,e5=(B5|0)==(r2|0),e5?a=c2:Q2()),n5=x2+12|0,e[n5>>2]=m2,e[a>>2]=x2}else{c=w1+24|0,g5=t+c|0,J2=e[g5>>2]|0,w=w1+12|0,h5=t+w|0,t5=e[h5>>2]|0,b5=(t5|0)==(r2|0);do if(b5){if(R=w1+20|0,o0=t+R|0,V=e[o0>>2]|0,A0=(V|0)==0,A0)if(x=w1+16|0,n0=t+x|0,i0=e[n0>>2]|0,r0=(i0|0)==0,r0){F2=0;break}else W2=i0,p5=n0;else W2=V,p5=o0;for(;;){if(K=W2+20|0,c0=e[K>>2]|0,s0=(c0|0)==0,!s0){W2=c0,p5=K;continue}if(l0=W2+16|0,j=e[l0>>2]|0,g0=(j|0)==0,g0){a5=W2,q5=p5;break}else W2=j,p5=l0}if(f0=q5>>>0>>0,f0)Q2();else{e[q5>>2]=0,F2=a5;break}}else if(C=w1+8|0,z=t+C|0,Y=e[z>>2]|0,t0=Y>>>0>>0,t0&&Q2(),J=Y+12|0,W=e[J>>2]|0,e0=(W|0)==(r2|0),e0||Q2(),H=t5+8|0,X=e[H>>2]|0,U=(X|0)==(r2|0),U){e[J>>2]=t5,e[H>>2]=Y,F2=t5;break}else Q2();while(!1);if(Q0=(J2|0)==0,!Q0){if(f=w1+28|0,d0=t+f|0,y0=e[d0>>2]|0,h0=553352+(y0<<2)|0,E0=e[h0>>2]|0,C0=(r2|0)==(E0|0),C0){if(e[h0>>2]=F2,e3=(F2|0)==0,e3){u0=1<>>0>>0,F0&&Q2(),M0=J2+16|0,G0=e[M0>>2]|0,p0=(G0|0)==(r2|0),p0?e[M0>>2]=F2:(P0=J2+20|0,e[P0>>2]=F2),R0=(F2|0)==0,R0)break;S0=e[138266]|0,q0=F2>>>0>>0,q0&&Q2(),H0=F2+24|0,e[H0>>2]=J2,E=w1+16|0,N0=t+E|0,V0=e[N0>>2]|0,T0=(V0|0)==0;do if(!T0)if(U0=V0>>>0>>0,U0)Q2();else{r1=F2+16|0,e[r1>>2]=V0,O0=V0+24|0,e[O0>>2]=F2;break}while(!1);if(I=w1+20|0,e1=t+I|0,v0=e[e1>>2]|0,c1=(v0|0)==0,!c1)if($1=e[138266]|0,f1=v0>>>0<$1>>>0,f1)Q2();else{g1=F2+20|0,e[g1>>2]=v0,l1=v0+24|0,e[l1>>2]=F2;break}}}while(!1);return s1=$5>>>0<16,s1?(a1=N&1,n1=f5|a1,A1=n1|2,e[G>>2]=A1,T=f5|4,z0=t+T|0,h1=e[z0>>2]|0,E1=h1|1,e[z0>>2]=E1,d5=t,d5|0):(u1=t+n|0,d1=N&1,B1=d1|n,p1=B1|2,e[G>>2]=p1,L=n+4|0,Q1=t+L|0,D1=$5|3,e[Q1>>2]=D1,M=f5|4,_1=t+M|0,y1=e[_1>>2]|0,x1=y1|1,e[_1>>2]=x1,QQ(u1,$5),d5=t,d5|0)}function QQ(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,q0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,V5=0,t3=0,s3=0,E3=0,F5=0,z5=0,y3=0,h3=0,m3=0,q3=0,M3=0,W5=0,Q3=0,X5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,Z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,m6=0,z3=0,a6=0,B6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,A3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0,R4=0,T4=0,j4=0,d4=0,G4=0,G9=0,N4=0,s4=0,x4=0,c4=0,Ie=0,O9=0,d9=0,de=0,Me=0,ze=0,U4=0,Te=0,O4=0,X4=0,ke=0,Ze=0,V9=0,oe=0,g4=0,D6=0,P4=0,R9=0,A4=0,D4=0,ae=0,z9=0,$e=0,le=0,E4=0,ee=0,F4=0,ce=0,E9=0,$6=0,Ge=0,o4=0,Ee=0,C4=0;C4=m,V=t+n|0,A0=t+4|0,O2=e[A0>>2]|0,f6=O2&1,J6=(f6|0)==0;do if(J6){if(F6=e[t>>2]|0,L9=O2&3,v9=(L9|0)==0,v9)return;if(T4=0-F6|0,d9=t+T4|0,n0=F6+n|0,Q0=e[138266]|0,x0=d9>>>0>>0,x0&&Q2(),N0=e[138267]|0,f1=(d9|0)==(N0|0),f1){if(w=n+4|0,V9=t+w|0,i0=e[V9>>2]|0,r0=i0&3,K=(r0|0)==3,!K){o=d9,a=n0;break}e[138264]=n0,c0=i0&-2,e[V9>>2]=c0,s0=n0|1,R=4-F6|0,l0=t+R|0,e[l0>>2]=s0,e[V>>2]=n0;return}if(u1=F6>>>3,N1=F6>>>0<256,N1){if(J=8-F6|0,j1=t+J|0,g2=e[j1>>2]|0,W=12-F6|0,S2=t+W|0,V2=e[S2>>2]|0,O5=u1<<1,S5=553088+(O5<<2)|0,o5=(g2|0)==(S5|0),o5||(W2=g2>>>0>>0,W2&&Q2(),s3=g2+12|0,X5=e[s3>>2]|0,y5=(X5|0)==(d9|0),y5||Q2()),X3=(V2|0)==(g2|0),X3){k6=1<>>0>>0,T6&&Q2(),e6=V2+8|0,p6=e[e6>>2]|0,R6=(p6|0)==(d9|0),R6?C=e6:Q2()),K6=g2+12|0,e[K6>>2]=V2,e[C>>2]=g2,o=d9,a=n0;break}L=24-F6|0,I6=t+L|0,x3=e[I6>>2]|0,M=12-F6|0,Z6=t+M|0,G6=e[Z6>>2]|0,j6=(G6|0)==(d9|0);do if(j6){if(T=16-F6|0,G=T+4|0,s9=t+G|0,W6=e[s9>>2]|0,g9=(W6|0)==0,g9)if(h9=t+T|0,f9=e[h9>>2]|0,A9=(f9|0)==0,A9){A4=0;break}else P4=f9,$e=h9;else P4=W6,$e=s9;for(;;){if(o9=P4+20|0,d6=e[o9>>2]|0,M6=(d6|0)==0,!M6){P4=d6,$e=o9;continue}if(e9=P4+16|0,M9=e[e9>>2]|0,u9=(M9|0)==0,u9){R9=P4,le=$e;break}else P4=M9,$e=e9}if(u4=le>>>0>>0,u4)Q2();else{e[le>>2]=0,A4=R9;break}}else if(t0=8-F6|0,r9=t+t0|0,x6=e[r9>>2]|0,N6=x6>>>0>>0,N6&&Q2(),S6=x6+12|0,V6=e[S6>>2]|0,Q6=(V6|0)==(d9|0),Q6||Q2(),F3=G6+8|0,L6=e[F3>>2]|0,X6=(L6|0)==(d9|0),X6){e[S6>>2]=G6,e[F3>>2]=x6,A4=G6;break}else Q2();while(!1);if(r4=(x3|0)==0,r4)o=d9,a=n0;else{if(P=28-F6|0,l4=t+P|0,T9=e[l4>>2]|0,K9=553352+(T9<<2)|0,I9=e[K9>>2]|0,P6=(d9|0)==(I9|0),P6){if(e[K9>>2]=A4,$6=(A4|0)==0,$6){t9=1<>>0>>0,v4&&Q2(),S4=x3+16|0,R4=e[S4>>2]|0,j4=(R4|0)==(d9|0),j4?e[S4>>2]=A4:(d4=x3+20|0,e[d4>>2]=A4),G4=(A4|0)==0,G4){o=d9,a=n0;break}G9=e[138266]|0,N4=A4>>>0>>0,N4&&Q2(),s4=A4+24|0,e[s4>>2]=x3,z=16-F6|0,x4=t+z|0,c4=e[x4>>2]|0,Ie=(c4|0)==0;do if(!Ie)if(O9=c4>>>0>>0,O9)Q2();else{de=A4+16|0,e[de>>2]=c4,Me=c4+24|0,e[Me>>2]=A4;break}while(!1);if(Y=z+4|0,ze=t+Y|0,U4=e[ze>>2]|0,Te=(U4|0)==0,Te)o=d9,a=n0;else if(O4=e[138266]|0,X4=U4>>>0>>0,X4)Q2();else{ke=A4+20|0,e[ke>>2]=U4,Ze=U4+24|0,e[Ze>>2]=A4,o=d9,a=n0;break}}}else o=t,a=n;while(!1);if(j=e[138266]|0,a0=V>>>0>>0,a0&&Q2(),y=n+4|0,g0=t+y|0,f0=e[g0>>2]|0,d0=f0&2,y0=(d0|0)==0,y0){if(h0=e[138268]|0,E0=(V|0)==(h0|0),E0){if(C0=e[138265]|0,u0=C0+a|0,e[138265]=u0,e[138268]=o,k0=u0|1,J0=o+4|0,e[J0>>2]=k0,D0=e[138267]|0,B0=(o|0)==(D0|0),!B0)return;e[138267]=0,e[138264]=0;return}if(F0=e[138267]|0,M0=(V|0)==(F0|0),M0){G0=e[138264]|0,p0=G0+a|0,e[138264]=p0,e[138267]=o,P0=p0|1,R0=o+4|0,e[R0>>2]=P0,S0=o+p0|0,e[S0>>2]=p0;return}L0=f0&-8,q0=L0+a|0,H0=f0>>>3,V0=f0>>>0<256;do if(V0){if(_=n+8|0,T0=t+_|0,U0=e[T0>>2]|0,x=n+12|0,r1=t+x|0,O0=e[r1>>2]|0,e1=H0<<1,v0=553088+(e1<<2)|0,i1=(U0|0)==(v0|0),i1||(c1=U0>>>0>>0,c1&&Q2(),$1=U0+12|0,g1=e[$1>>2]|0,l1=(g1|0)==(V|0),l1||Q2()),s1=(O0|0)==(U0|0),s1){a1=1<>>0>>0,h1&&Q2(),E1=O0+8|0,d1=e[E1>>2]|0,B1=(d1|0)==(V|0),B1?I=E1:Q2()),p1=U0+12|0,e[p1>>2]=O0,e[I>>2]=U0}else{N=n+24|0,Q1=t+N|0,D1=e[Q1>>2]|0,e0=n+12|0,_1=t+e0|0,y1=e[_1>>2]|0,k1=(y1|0)==(V|0);do if(k1){if(X=n+20|0,H1=t+X|0,q1=e[H1>>2]|0,Y1=(q1|0)==0,Y1)if(H=n+16|0,r2=t+H|0,W1=e[r2>>2]|0,O1=(W1|0)==0,O1){z9=0;break}else D4=W1,E4=r2;else D4=q1,E4=H1;for(;;){if(l2=D4+20|0,z1=e[l2>>2]|0,h2=(z1|0)==0,!h2){D4=z1,E4=l2;continue}if(s2=D4+16|0,d2=e[s2>>2]|0,A2=(d2|0)==0,A2){ae=D4,ee=E4;break}else D4=d2,E4=s2}if(V1=ee>>>0>>0,V1)Q2();else{e[ee>>2]=0,z9=ae;break}}else if(Q=n+8|0,x1=t+Q|0,L1=e[x1>>2]|0,w1=L1>>>0>>0,w1&&Q2(),U1=L1+12|0,Z1=e[U1>>2]|0,G1=(Z1|0)==(V|0),G1||Q2(),v1=y1+8|0,K1=e[v1>>2]|0,P1=(K1|0)==(V|0),P1){e[U1>>2]=y1,e[v1>>2]=L1,z9=y1;break}else Q2();while(!1);if(a2=(D1|0)==0,!a2){if(o0=n+28|0,t2=t+o0|0,$2=e[t2>>2]|0,i2=553352+($2<<2)|0,o2=e[i2>>2]|0,X1=(V|0)==(o2|0),X1){if(e[i2>>2]=z9,Ge=(z9|0)==0,Ge){n2=1<<$2,f2=n2^-1,e2=e[138263]|0,y2=e2&f2,e[138263]=y2;break}}else if(w2=e[138266]|0,C2=D1>>>0>>0,C2&&Q2(),M2=D1+16|0,_2=e[M2>>2]|0,G2=(_2|0)==(V|0),G2?e[M2>>2]=z9:(u2=D1+20|0,e[u2>>2]=z9),K2=(z9|0)==0,K2)break;N2=e[138266]|0,q2=z9>>>0>>0,q2&&Q2(),T2=z9+24|0,e[T2>>2]=D1,Z=n+16|0,s5=t+Z|0,P2=e[s5>>2]|0,T1=(P2|0)==0;do if(!T1)if(j2=P2>>>0>>0,j2)Q2();else{R5=z9+16|0,e[R5>>2]=P2,X2=P2+24|0,e[X2>>2]=z9;break}while(!1);if(D=n+20|0,v5=t+D|0,z2=e[v5>>2]|0,f5=(z2|0)==0,!f5)if(w5=e[138266]|0,$5=z2>>>0>>0,$5)Q2();else{k2=z9+20|0,e[k2>>2]=z2,E5=z2+24|0,e[E5>>2]=z9;break}}}while(!1);if(r5=q0|1,x2=o+4|0,e[x2>>2]=r5,R2=o+q0|0,e[R2>>2]=q0,m2=e[138267]|0,C5=(o|0)==(m2|0),C5){e[138264]=q0;return}else c=q0}else x5=f0&-2,e[g0>>2]=x5,u5=a|1,G5=o+4|0,e[G5>>2]=u5,D5=o+a|0,e[D5>>2]=a,c=a;if(H2=c>>>3,I5=c>>>0<256,I5){A5=H2<<1,l5=553088+(A5<<2)|0,m5=e[138262]|0,M1=1<>2]|0,e5=e[138266]|0,n5=B5>>>0>>0,n5?Q2():(p=c2,oe=B5)),e[p>>2]=o,g5=oe+12|0,e[g5>>2]=o,J2=o+8|0,e[J2>>2]=oe,h5=o+12|0,e[h5>>2]=l5;return}if(t5=c>>>8,b5=(t5|0)==0,b5?g4=0:(a5=c>>>0>16777215,a5?g4=31:(F2=t5+1048320|0,p5=F2>>>16,q5=p5&8,e3=t5<>>16,g3=f3&4,V5=g3|q5,t3=e3<>>16,z5=F5&2,y3=V5|z5,h3=14-y3|0,m3=t3<>>15,M3=h3+q3|0,W5=M3<<1,Q3=M3+7|0,j3=c>>>Q3,_3=j3&1,T3=_3|W5,g4=T3)),a3=553352+(g4<<2)|0,$3=o+28|0,e[$3>>2]=g4,l3=o+16|0,C3=o+20|0,e[C3>>2]=0,e[l3>>2]=0,Y5=e[138263]|0,N5=1<>2]=o,t6=o+24|0,e[t6>>2]=a3,i3=o+12|0,e[i3>>2]=o,o3=o+8|0,e[o3>>2]=o;return}R3=e[a3>>2]|0,h6=R3+4|0,B3=e[h6>>2]|0,w3=B3&-8,p3=(w3|0)==(c|0);e:do if(p3)F4=R3;else{for(V3=(g4|0)==31,N3=g4>>>1,Z5=25-N3|0,k3=V3?0:Z5,c3=c<>>31,a6=(ce+16|0)+(z3<<2)|0,u3=e[a6>>2]|0,B6=(u3|0)==0,B6){f=a6,E9=ce;break}if(U3=D6<<1,o6=u3+4|0,y6=e[o6>>2]|0,w6=y6&-8,m6=(w6|0)==(c|0),m6){F4=u3;break e}else D6=U3,ce=u3}_6=e[138266]|0,Y6=f>>>0<_6>>>0,Y6&&Q2(),e[f>>2]=o,C6=o+24|0,e[C6>>2]=E9,v3=o+12|0,e[v3>>2]=o,Z3=o+8|0,e[Z3>>2]=o;return}while(!1);W3=F4+8|0,S3=e[W3>>2]|0,P3=e[138266]|0,Y3=S3>>>0>=P3>>>0,o4=F4>>>0>=P3>>>0,v6=Y3&o4,v6||Q2(),i6=S3+12|0,e[i6>>2]=o,e[W3>>2]=o,r3=o+8|0,e[r3>>2]=S3,O6=o+12|0,e[O6>>2]=F4,A3=o+24|0,e[A3>>2]=0}function oD(){e[6410]=U9}function Ae(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0;if(a=t+o|0,(o|0)>=20){if(n=n&255,E=t&3,c=n|n<<8|n<<16|n<<24,f=a&-4,E)for(E=t+4-E|0;(t|0)<(E|0);)u[t>>0]=n,t=t+1|0;for(;(t|0)<(f|0);)e[t>>2]=c,t=t+4|0}for(;(t|0)<(a|0);)u[t>>0]=n,t=t+1|0;return t-o|0}function Z$(t){t=t|0;var n=0;for(n=t;u[n>>0]|0;)n=n+1|0;return n-t|0}function yQ(t,n){t=t|0,n=n|0;var o=0,a=0;a=t+(Z$(t)|0)|0;do u[a+o>>0]=u[n+o>>0],o=o+1|0;while(u[n+(o-1)>>0]|0);return t|0}function wQ(t,n,o){t=t|0,n=n|0,o=o|0;var a=0;return(o|0)<32?(a=(1<>>32-o,t<>>0,f=n+a+(c>>>0>>0|0)>>>0,q6=f,c|0|0}function Js(t,n,o){t=t|0,n=n|0,o=o|0;var a=0;return(o|0)<32?(a=(1<>>o,t>>>o|(n&a)<<32-o):(q6=0,n>>>o-32|0)}function i4(t,n,o){t=t|0,n=n|0,o=o|0;var a=0;if((o|0)>=4096)return dv(t|0,n|0,o|0)|0;if(a=t|0,(t&3)==(n&3)){for(;t&3;){if(!(o|0))return a|0;u[t>>0]=u[n>>0]|0,t=t+1|0,n=n+1|0,o=o-1|0}for(;(o|0)>=4;)e[t>>2]=e[n>>2]|0,t=t+4|0,n=n+4|0,o=o-4|0}for(;(o|0)>0;)u[t>>0]=u[n>>0]|0,t=t+1|0,n=n+1|0,o=o-1|0;return a|0}function Vo(t,n,o){t=t|0,n=n|0,o=o|0;var a=0;if((n|0)<(t|0)&(t|0)<(n+o|0)){for(a=t,n=n+o|0,t=t+o|0;(o|0)>0;)t=t-1|0,n=n-1|0,o=o-1|0,u[t>>0]=u[n>>0]|0;t=a}else i4(t,n,o)|0;return t|0}function aB(t,n){t=t|0,n=n|0;var o=0;do u[(t+o|0)>>0]=u[(n+o|0)>>0],o=o+1|0;while(u[n+(o-1)>>0]|0);return t|0}function Ks(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0;return c=t-o>>>0,f=n-a>>>0,f=n-a-(o>>>0>t>>>0|0)>>>0,q6=f,c|0|0}function xb(t,n,o){t=t|0,n=n|0,o=o|0;var a=0;return(o|0)<32?(a=(1<>o,t>>>o|(n&a)<<32-o):(q6=(n|0)<0?-1:0,n>>o-32|0)}function kQ(t){t=t|0;var n=0;return n=u[b9+(t&255)>>0]|0,(n|0)<8?n|0:(n=u[b9+(t>>8&255)>>0]|0,(n|0)<8?n+8|0:(n=u[b9+(t>>16&255)>>0]|0,(n|0)<8?n+16|0:(u[b9+(t>>>24)>>0]|0)+24|0))}function aD(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0;return o=t&65535,a=n&65535,c=i5(a,o)|0,f=t>>>16,E=(c>>>16)+(i5(a,f)|0)|0,I=n>>>16,C=i5(I,o)|0,q6=((E>>>16)+(i5(I,f)|0)|0)+(((E&65535)+C|0)>>>16)|0,0|(E+C<<16|c&65535)|0}function Fb(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0;return c=n>>31|((n|0)<0?-1:0)<<1,f=((n|0)<0?-1:0)>>31|((n|0)<0?-1:0)<<1,E=a>>31|((a|0)<0?-1:0)<<1,I=((a|0)<0?-1:0)>>31|((a|0)<0?-1:0)<<1,C=Ks(c^t,f^n,c,f)|0,p=q6,B=Ks(E^o,I^a,E,I)|0,v=E^c,S=I^f,w=WC(C,p,B,q6,0)|0,y=Ks(w^v,q6^S,v,S)|0,y|0}function Lb(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0;return y=m,m=m+8|0,c=y|0,f=n>>31|((n|0)<0?-1:0)<<1,E=((n|0)<0?-1:0)>>31|((n|0)<0?-1:0)<<1,I=a>>31|((a|0)<0?-1:0)<<1,C=((a|0)<0?-1:0)>>31|((a|0)<0?-1:0)<<1,p=Ks(f^t,E^n,f,E)|0,B=q6,v=Ks(I^o,C^a,I,C)|0,WC(p,B,v,q6,c)|0,S=Ks(e[c>>2]^f,e[c+4>>2]^E,f,E)|0,w=q6,m=y,q6=w,S|0}function $D(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0;return c=t,f=o,E=aD(c,f)|0,I=q6,C=i5(n,f)|0,q6=((i5(a,c)|0)+C|0)+I|I&0,0|E&-1|0}function Mb(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0;return c=WC(t,n,o,a,0)|0,c|0}function Tb(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0;return f=m,m=m+8|0,c=f|0,WC(t,n,o,a,c)|0,m=f,q6=e[c+4>>2]|0,e[c>>2]|0|0}function WC(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,x=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0;if(f=t,E=n,I=E,C=o,p=a,B=p,!(I|0))return v=(c|0)!=0,B|0?v?(e[c>>2]=t&-1,e[c+4>>2]=n&0,S0=0,R0=0,q6=S0,R0|0):(S0=0,R0=0,q6=S0,R0|0):(v&&(e[c>>2]=(f>>>0)%(C>>>0),e[c+4>>2]=0),S0=0,R0=(f>>>0)/(C>>>0)>>>0,q6=S0,R0|0);S=(B|0)==0;do if(C|0){if(!S){if(Y=qs(B|0)|0,t0=Y-(qs(I|0)|0)|0,t0>>>0<=31){J=t0+1|0,W=31-t0|0,e0=t0-31>>31,Z=J,o0=f>>>(J>>>0)&e0|I<>>(J>>>0)&e0,X=0,H=f<>2]=0|t&-1,e[c+4>>2]=E|n&0,S0=0,R0=0,q6=S0,R0|0):(S0=0,R0=0,q6=S0,R0|0)}if(x=C-1|0,x&C|0){L=(qs(C|0)|0)+33|0,M=L-(qs(I|0)|0)|0,T=64-M|0,G=32-M|0,N=G>>31,P=M-32|0,z=P>>31,Z=M,o0=G-1>>31&I>>>(P>>>0)|(I<>>(M>>>0))&z,U=z&I>>>(M>>>0),X=f<>>(P>>>0))&N|f<>31;break}return c|0&&(e[c>>2]=x&f,e[c+4>>2]=0),(C|0)==1?(S0=E|n&0,R0=0|t&-1,q6=S0,R0|0):(R=kQ(C|0)|0,S0=0|I>>>(R>>>0),R0=I<<32-R|f>>>(R>>>0)|0,q6=S0,R0|0)}else{if(S)return c|0&&(e[c>>2]=(I>>>0)%(C>>>0),e[c+4>>2]=0),S0=0,R0=(I>>>0)/(C>>>0)>>>0,q6=S0,R0|0;if(!(f|0))return c|0&&(e[c>>2]=0,e[c+4>>2]=(I>>>0)%(B>>>0)),S0=0,R0=(I>>>0)/(B>>>0)>>>0,q6=S0,R0|0;if(w=B-1|0,!(w&B|0))return c|0&&(e[c>>2]=0|t&-1,e[c+4>>2]=w&I|n&0),S0=0,R0=I>>>((kQ(B|0)|0)>>>0),q6=S0,R0|0;if(y=qs(B|0)|0,D=y-(qs(I|0)|0)|0,D>>>0<=30){Q=D+1|0,_=31-D|0,Z=Q,o0=I<<_|f>>>(Q>>>0),U=I>>>(Q>>>0),X=0,H=f<<_;break}return c|0?(e[c>>2]=0|t&-1,e[c+4>>2]=E|n&0,S0=0,R0=0,q6=S0,R0|0):(S0=0,R0=0,q6=S0,R0|0)}while(!1);if(!(Z|0))M0=H,F0=X,x0=U,B0=o0,D0=0,J0=0;else{for(V=0|o&-1,A0=p|a&0,n0=Ys(V|0,A0|0,-1,-1)|0,i0=q6,j=H,l0=X,s0=U,c0=o0,K=Z,r0=0;a0=l0>>>31|j<<1,g0=r0|l0<<1,f0=0|(c0<<1|j>>>31),Q0=c0>>>31|s0<<1|0,Ks(n0,i0,f0,Q0)|0,d0=q6,y0=d0>>31|((d0|0)<0?-1:0)<<1,h0=y0&1,E0=Ks(f0,Q0,y0&V,(((d0|0)<0?-1:0)>>31|((d0|0)<0?-1:0)<<1)&A0)|0,C0=E0,u0=q6,k0=K-1|0,k0|0;)j=a0,l0=g0,s0=u0,c0=C0,K=k0,r0=h0;M0=a0,F0=g0,x0=u0,B0=C0,D0=0,J0=h0}return G0=F0,p0=0,P0=M0|p0,c|0&&(e[c>>2]=0|B0,e[c+4>>2]=x0|0),S0=(0|G0)>>>31|P0<<1|(p0<<1|G0>>>31)&0|D0,R0=(G0<<1|0)&-2|J0,q6=S0,R0|0}function lD(t,n,o,a,c){return t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,cB[t&3](n|0,o|0,a|0,c|0)|0}function cD(t,n){t=t|0,n=n|0,Vs[t&7](n|0)}function gD(t,n,o){t=t|0,n=n|0,o=o|0,gB[t&3](n|0,o|0)}function hD(t,n){return t=t|0,n=n|0,DQ[t&1](n|0)|0}function fD(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0,bQ[t&1](n|0,o|0,a|0)}function uD(t,n,o,a,c,f,E,I,C){return t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0,I=I|0,C=C|0,_Q[t&3](n|0,o|0,a|0,c|0,f|0,E|0,I|0,C|0)|0}function ID(t,n,o){return t=t|0,n=n|0,o=o|0,ct[t&15](n|0,o|0)|0}function dD(t,n,o,a,c,f){return t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,hB[t&7](n|0,o|0,a|0,c|0,f|0)|0}function ED(t,n,o,a){return t=t|0,n=n|0,o=o|0,a=a|0,Or(0),0}function $B(t){t=t|0,Or(1)}function vQ(t,n){t=t|0,n=n|0,Or(2)}function CD(t){return t=t|0,Or(3),0}function mD(t,n,o){t=t|0,n=n|0,o=o|0,Or(4)}function SQ(t,n,o,a,c,f,E,I){return t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0,I=I|0,Or(5),0}function W$(t,n){return t=t|0,n=n|0,Or(6),0}function lB(t,n,o,a,c){return t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,Or(7),0}var cB=[ED,sS,Hv,qv],Vs=[$B,iS,rS,uS,SS,DS,$B,$B],gB=[vQ,Xv,bS,vQ],DQ=[CD,IS],bQ=[mD,hS],_Q=[SQ,FS,GS,SQ],ct=[W$,eS,tS,nS,fS,dS,_S,RS,AS,vS,qS,W$,W$,W$,W$,W$],hB=[lB,xS,LS,MS,TS,NS,lB,lB];return{_memmove:Vo,_strlen:Z$,_strcat:yQ,_free:I2,_i64Add:Ys,_encoder_clear:jS,_encoder_transfer_data:iD,_encoder_data_len:tD,_memset:Ae,_malloc:k9,_memcpy:i4,_encoder_init:WS,_encoder_process:eD,_bitshift64Lshr:Js,_bitshift64Shl:wQ,_strcpy:aB,_encoder_analysis_buffer:XS,runPostSets:oD,stackAlloc:mv,stackSave:Bv,stackRestore:pv,establishStackSpace:Qv,setThrew:yv,setTempRet0:wv,getTempRet0:kv,dynCall_iiiii:lD,dynCall_vi:cD,dynCall_vii:gD,dynCall_ii:hD,dynCall_viii:fD,dynCall_iiiiiiiii:uD,dynCall_iii:ID,dynCall_iiiiii:dD}}(A.asmGlobalArg,A.asmLibraryArg,Ri),ab=A.runPostSets=Y9.runPostSets,tv=A._strlen=Y9._strlen,iv=A._strcat=Y9._strcat,Zm=A._free=Y9._free,$b=A._encoder_init=Y9._encoder_init,rv=A._i64Add=Y9._i64Add,nv=A._memmove=Y9._memmove,lb=A._encoder_transfer_data=Y9._encoder_transfer_data,cb=A._encoder_process=Y9._encoder_process,gb=A._encoder_data_len=Y9._encoder_data_len,sv=A._memset=Y9._memset,Sh=A._malloc=Y9._malloc,Av=A._memcpy=Y9._memcpy,hb=A._encoder_clear=Y9._encoder_clear,ov=A._bitshift64Lshr=Y9._bitshift64Lshr,fb=A._encoder_analysis_buffer=Y9._encoder_analysis_buffer,av=A._strcpy=Y9._strcpy,$v=A._bitshift64Shl=Y9._bitshift64Shl,ub=A.dynCall_iiiii=Y9.dynCall_iiiii,Ib=A.dynCall_vi=Y9.dynCall_vi,db=A.dynCall_vii=Y9.dynCall_vii,Eb=A.dynCall_ii=Y9.dynCall_ii,Cb=A.dynCall_viii=Y9.dynCall_viii,mb=A.dynCall_iiiiiiiii=Y9.dynCall_iiiiiiiii,Bb=A.dynCall_iii=Y9.dynCall_iii,pb=A.dynCall_iiiiii=Y9.dynCall_iiiiii;F.stackAlloc=Y9.stackAlloc,F.stackSave=Y9.stackSave,F.stackRestore=Y9.stackRestore,F.establishStackSpace=Y9.establishStackSpace,F.setTempRet0=Y9.setTempRet0,F.getTempRet0=Y9.getTempRet0;var Qb=function(){var i={math:{}};i.math.Long=function(q,w0){this.low_=q|0,this.high_=w0|0},i.math.Long.IntCache_={},i.math.Long.fromInt=function(q){if(-128<=q&&q<128){var w0=i.math.Long.IntCache_[q];if(w0)return w0}var W0=new i.math.Long(q|0,q<0?-1:0);return-128<=q&&q<128&&(i.math.Long.IntCache_[q]=W0),W0},i.math.Long.fromNumber=function(q){return isNaN(q)||!isFinite(q)?i.math.Long.ZERO:q<=-i.math.Long.TWO_PWR_63_DBL_?i.math.Long.MIN_VALUE:q+1>=i.math.Long.TWO_PWR_63_DBL_?i.math.Long.MAX_VALUE:q<0?i.math.Long.fromNumber(-q).negate():new i.math.Long(q%i.math.Long.TWO_PWR_32_DBL_|0,q/i.math.Long.TWO_PWR_32_DBL_|0)},i.math.Long.fromBits=function(q,w0){return new i.math.Long(q,w0)},i.math.Long.fromString=function(q,w0){if(q.length==0)throw Error("number format error: empty string");var W0=w0||10;if(W0<2||36=0)throw Error('number format error: interior "-" character: '+q);for(var E2=i.math.Long.fromNumber(Math.pow(W0,8)),j5=i.math.Long.ZERO,T5=0;T5=0?this.low_:i.math.Long.TWO_PWR_32_DBL_+this.low_},i.math.Long.prototype.getNumBitsAbs=function(){if(this.isNegative())return this.equals(i.math.Long.MIN_VALUE)?64:this.negate().getNumBitsAbs();for(var q=this.high_!=0?this.high_:this.low_,w0=31;w0>0&&!(q&1<0},i.math.Long.prototype.greaterThanOrEqual=function(q){return this.compare(q)>=0},i.math.Long.prototype.compare=function(q){if(this.equals(q))return 0;var w0=this.isNegative(),W0=q.isNegative();return w0&&!W0?-1:!w0&&W0?1:this.subtract(q).isNegative()?-1:1},i.math.Long.prototype.negate=function(){return this.equals(i.math.Long.MIN_VALUE)?i.math.Long.MIN_VALUE:this.not().add(i.math.Long.ONE)},i.math.Long.prototype.add=function(q){var w0=this.high_>>>16,W0=this.high_&65535,E2=this.low_>>>16,j5=this.low_&65535,T5=q.high_>>>16,b3=q.high_&65535,z6=q.low_>>>16,F9=q.low_&65535,_9=0,Z4=0,et=0,Ki=0;return Ki+=j5+F9,et+=Ki>>>16,Ki&=65535,et+=E2+z6,Z4+=et>>>16,et&=65535,Z4+=W0+b3,_9+=Z4>>>16,Z4&=65535,_9+=w0+T5,_9&=65535,i.math.Long.fromBits(et<<16|Ki,_9<<16|Z4)},i.math.Long.prototype.subtract=function(q){return this.add(q.negate())},i.math.Long.prototype.multiply=function(q){if(this.isZero())return i.math.Long.ZERO;if(q.isZero())return i.math.Long.ZERO;if(this.equals(i.math.Long.MIN_VALUE))return q.isOdd()?i.math.Long.MIN_VALUE:i.math.Long.ZERO;if(q.equals(i.math.Long.MIN_VALUE))return this.isOdd()?i.math.Long.MIN_VALUE:i.math.Long.ZERO;if(this.isNegative())return q.isNegative()?this.negate().multiply(q.negate()):this.negate().multiply(q).negate();if(q.isNegative())return this.multiply(q.negate()).negate();if(this.lessThan(i.math.Long.TWO_PWR_24_)&&q.lessThan(i.math.Long.TWO_PWR_24_))return i.math.Long.fromNumber(this.toNumber()*q.toNumber());var w0=this.high_>>>16,W0=this.high_&65535,E2=this.low_>>>16,j5=this.low_&65535,T5=q.high_>>>16,b3=q.high_&65535,z6=q.low_>>>16,F9=q.low_&65535,_9=0,Z4=0,et=0,Ki=0;return Ki+=j5*F9,et+=Ki>>>16,Ki&=65535,et+=E2*F9,Z4+=et>>>16,et&=65535,et+=j5*z6,Z4+=et>>>16,et&=65535,Z4+=W0*F9,_9+=Z4>>>16,Z4&=65535,Z4+=E2*z6,_9+=Z4>>>16,Z4&=65535,Z4+=j5*b3,_9+=Z4>>>16,Z4&=65535,_9+=w0*F9+W0*z6+E2*b3+j5*T5,_9&=65535,i.math.Long.fromBits(et<<16|Ki,_9<<16|Z4)},i.math.Long.prototype.div=function(q){if(q.isZero())throw Error("division by zero");if(this.isZero())return i.math.Long.ZERO;if(this.equals(i.math.Long.MIN_VALUE)){if(q.equals(i.math.Long.ONE)||q.equals(i.math.Long.NEG_ONE))return i.math.Long.MIN_VALUE;if(q.equals(i.math.Long.MIN_VALUE))return i.math.Long.ONE;var w0=this.shiftRight(1),W0=w0.div(q).shiftLeft(1);if(W0.equals(i.math.Long.ZERO))return q.isNegative()?i.math.Long.ONE:i.math.Long.NEG_ONE;var T5=this.subtract(q.multiply(W0)),E2=W0.add(T5.div(q));return E2}else if(q.equals(i.math.Long.MIN_VALUE))return i.math.Long.ZERO;if(this.isNegative())return q.isNegative()?this.negate().div(q.negate()):this.negate().div(q).negate();if(q.isNegative())return this.div(q.negate()).negate();for(var j5=i.math.Long.ZERO,T5=this;T5.greaterThanOrEqual(q);){for(var W0=Math.max(1,Math.floor(T5.toNumber()/q.toNumber())),b3=Math.ceil(Math.log(W0)/Math.LN2),z6=b3<=48?1:Math.pow(2,b3-48),F9=i.math.Long.fromNumber(W0),_9=F9.multiply(q);_9.isNegative()||_9.greaterThan(T5);)W0-=z6,F9=i.math.Long.fromNumber(W0),_9=F9.multiply(q);F9.isZero()&&(F9=i.math.Long.ONE),j5=j5.add(F9),T5=T5.subtract(_9)}return j5},i.math.Long.prototype.modulo=function(q){return this.subtract(this.div(q).multiply(q))},i.math.Long.prototype.not=function(){return i.math.Long.fromBits(~this.low_,~this.high_)},i.math.Long.prototype.and=function(q){return i.math.Long.fromBits(this.low_&q.low_,this.high_&q.high_)},i.math.Long.prototype.or=function(q){return i.math.Long.fromBits(this.low_|q.low_,this.high_|q.high_)},i.math.Long.prototype.xor=function(q){return i.math.Long.fromBits(this.low_^q.low_,this.high_^q.high_)},i.math.Long.prototype.shiftLeft=function(q){if(q&=63,q==0)return this;var w0=this.low_;if(q<32){var W0=this.high_;return i.math.Long.fromBits(w0<>>32-q)}else return i.math.Long.fromBits(0,w0<>>q|w0<<32-q,w0>>q)}else return i.math.Long.fromBits(w0>>q-32,w0>=0?0:-1)},i.math.Long.prototype.shiftRightUnsigned=function(q){if(q&=63,q==0)return this;var w0=this.high_;if(q<32){var W0=this.low_;return i.math.Long.fromBits(W0>>>q|w0<<32-q,w0>>>q)}else return q==32?i.math.Long.fromBits(w0,0):i.math.Long.fromBits(w0>>>q-32,0)};var $={appName:"Modern Browser"},h,u=0xdeadbeefcafe,O=(u&16777215)==15715070;function e(q,w0,W0){q!=null&&(typeof q=="number"?this.fromNumber(q,w0,W0):w0==null&&typeof q!="string"?this.fromString(q,256):this.fromString(q,w0))}function Z0(){return new e(null)}function t1(q,w0,W0,E2,j5,T5){for(;--T5>=0;){var b3=w0*this[q++]+W0[E2]+j5;j5=Math.floor(b3/67108864),W0[E2++]=b3&67108863}return j5}function b2(q,w0,W0,E2,j5,T5){for(var b3=w0&32767,z6=w0>>15;--T5>=0;){var F9=this[q]&32767,_9=this[q++]>>15,Z4=z6*F9+_9*b3;F9=b3*F9+((Z4&32767)<<15)+W0[E2]+(j5&1073741823),j5=(F9>>>30)+(Z4>>>15)+z6*_9+(j5>>>30),W0[E2++]=F9&1073741823}return j5}function s(q,w0,W0,E2,j5,T5){for(var b3=w0&16383,z6=w0>>14;--T5>=0;){var F9=this[q]&16383,_9=this[q++]>>14,Z4=z6*F9+_9*b3;F9=b3*F9+((Z4&16383)<<14)+W0[E2]+j5,j5=(F9>>28)+(Z4>>14)+z6*_9,W0[E2++]=F9&268435455}return j5}O&&$.appName=="Microsoft Internet Explorer"?(e.prototype.am=b2,h=30):O&&$.appName!="Netscape"?(e.prototype.am=t1,h=26):(e.prototype.am=s,h=28),e.prototype.DB=h,e.prototype.DM=(1<=0;--w0)q[w0]=this[w0];q.t=this.t,q.s=this.s}function Q8(q){this.t=1,this.s=q<0?-1:0,q>0?this[0]=q:q<-1?this[0]=q+DV:this.t=0}function J9(q){var w0=Z0();return w0.fromInt(q),w0}function c8(q,w0){var W0;if(w0==16)W0=4;else if(w0==8)W0=3;else if(w0==256)W0=8;else if(w0==2)W0=1;else if(w0==32)W0=5;else if(w0==4)W0=2;else{this.fromRadix(q,w0);return}this.t=0,this.s=0;for(var E2=q.length,j5=!1,T5=0;--E2>=0;){var b3=W0==8?q[E2]&255:U9(q,E2);if(b3<0){q.charAt(E2)=="-"&&(j5=!0);continue}j5=!1,T5==0?this[this.t++]=b3:T5+W0>this.DB?(this[this.t-1]|=(b3&(1<>this.DB-T5):this[this.t-1]|=b3<=this.DB&&(T5-=this.DB)}W0==8&&q[0]&128&&(this.s=-1,T5>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==q;)--this.t}function Mi(q){if(this.s<0)return"-"+this.negate().toString(q);var w0;if(q==16)w0=4;else if(q==8)w0=3;else if(q==2)w0=1;else if(q==32)w0=5;else if(q==4)w0=2;else return this.toRadix(q);var W0=(1<0)for(z6>z6)>0&&(j5=!0,T5=b9(E2));b3>=0;)z6>(z6+=this.DB-w0)):(E2=this[b3]>>(z6-=w0)&W0,z6<=0&&(z6+=this.DB,--b3)),E2>0&&(j5=!0),j5&&(T5+=b9(E2));return j5?T5:"0"}function Ti(){var q=Z0();return e.ZERO.subTo(this,q),q}function hr(){return this.s<0?this.negate():this}function K$(q){var w0=this.s-q.s;if(w0!=0)return w0;var W0=this.t;if(w0=W0-q.t,w0!=0)return this.s<0?-w0:w0;for(;--W0>=0;)if((w0=this[W0]-q[W0])!=0)return w0;return 0}function HC(q){var w0=1,W0;return(W0=q>>>16)!=0&&(q=W0,w0+=16),(W0=q>>8)!=0&&(q=W0,w0+=8),(W0=q>>4)!=0&&(q=W0,w0+=4),(W0=q>>2)!=0&&(q=W0,w0+=2),(W0=q>>1)!=0&&(q=W0,w0+=1),w0}function wp(){return this.t<=0?0:this.DB*(this.t-1)+HC(this[this.t-1]^this.s&this.DM)}function kp(q,w0){var W0;for(W0=this.t-1;W0>=0;--W0)w0[W0+q]=this[W0];for(W0=q-1;W0>=0;--W0)w0[W0]=0;w0.t=this.t+q,w0.s=this.s}function vp(q,w0){for(var W0=q;W0=0;--z6)w0[z6+T5+1]=this[z6]>>E2|b3,b3=(this[z6]&j5)<=0;--z6)w0[z6]=0;w0[T5]=b3,w0.t=this.t+T5+1,w0.s=this.s,w0.clamp()}function Dp(q,w0){w0.s=this.s;var W0=Math.floor(q/this.DB);if(W0>=this.t){w0.t=0;return}var E2=q%this.DB,j5=this.DB-E2,T5=(1<>E2;for(var b3=W0+1;b3>E2;E2>0&&(w0[this.t-W0-1]|=(this.s&T5)<>=this.DB;if(q.t>=this.DB;E2+=this.s}else{for(E2+=this.s;W0>=this.DB;E2-=q.s}w0.s=E2<0?-1:0,E2<-1?w0[W0++]=this.DV+E2:E2>0&&(w0[W0++]=E2),w0.t=W0,w0.clamp()}function bp(q,w0){var W0=this.abs(),E2=q.abs(),j5=W0.t;for(w0.t=j5+E2.t;--j5>=0;)w0[j5]=0;for(j5=0;j5=0;)q[W0]=0;for(W0=0;W0=w0.DV&&(q[W0+w0.t]-=w0.DV,q[W0+w0.t+1]=1)}q.t>0&&(q[q.t-1]+=w0.am(W0,w0[W0],q,2*W0,0,1)),q.s=0,q.clamp()}function Rp(q,w0,W0){var E2=q.abs();if(!(E2.t<=0)){var j5=this.abs();if(j5.t0?(E2.lShiftTo(F9,T5),j5.lShiftTo(F9,W0)):(E2.copyTo(T5),j5.copyTo(W0));var _9=T5.t,Z4=T5[_9-1];if(Z4!=0){var et=Z4*(1<1?T5[_9-2]>>this.F2:0),Ki=this.FV/et,qp=(1<=0&&(W0[W0.t++]=1,W0.subTo(Lt,W0)),e.ONE.dlShiftTo(_9,Lt),Lt.subTo(T5,T5);T5.t<_9;)T5[T5.t++]=0;for(;--bh>=0;){var qC=W0[--Ko]==Z4?this.DM:Math.floor(W0[Ko]*Ki+(W0[Ko-1]+Yp)*qp);if((W0[Ko]+=T5.am(0,qC,W0,bh,0,_9))0&&W0.rShiftTo(F9,W0),b3<0&&e.ZERO.subTo(W0,W0)}}}function xp(q){var w0=Z0();return this.abs().divRemTo(q,null,w0),this.s<0&&w0.compareTo(e.ZERO)>0&&q.subTo(w0,w0),w0}function qo(q){this.m=q}function Fp(q){return q.s<0||q.compareTo(this.m)>=0?q.mod(this.m):q}function Lp(q){return q}function Mp(q){q.divRemTo(this.m,null,q)}function Tp(q,w0,W0){q.multiplyTo(w0,W0),this.reduce(W0)}function Yo(q,w0){q.squareTo(w0),this.reduce(w0)}qo.prototype.convert=Fp,qo.prototype.revert=Lp,qo.prototype.reduce=Mp,qo.prototype.mulTo=Tp,qo.prototype.sqrTo=Yo;function Ji(){if(this.t<1)return 0;var q=this[0];if(!(q&1))return 0;var w0=q&3;return w0=w0*(2-(q&15)*w0)&15,w0=w0*(2-(q&255)*w0)&255,w0=w0*(2-((q&65535)*w0&65535))&65535,w0=w0*(2-q*w0%this.DV)%this.DV,w0>0?this.DV-w0:-w0}function xn(q){this.m=q,this.mp=q.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<0&&this.m.subTo(w0,w0),w0}function Jo(q){var w0=Z0();return q.copyTo(w0),this.reduce(w0),w0}function Fn(q){for(;q.t<=this.mt2;)q[q.t++]=0;for(var w0=0;w0>15)*this.mpl&this.um)<<15)&q.DM;for(W0=w0+this.m.t,q[W0]+=this.m.am(0,E2,q,w0,0,this.m.t);q[W0]>=q.DV;)q[W0]-=q.DV,q[++W0]++}q.clamp(),q.drShiftTo(this.m.t,q),q.compareTo(this.m)>=0&&q.subTo(this.m,q)}function Gp(q,w0){q.squareTo(w0),this.reduce(w0)}function Np(q,w0,W0){q.multiplyTo(w0,W0),this.reduce(W0)}xn.prototype.convert=Dh,xn.prototype.revert=Jo,xn.prototype.reduce=Fn,xn.prototype.mulTo=Np,xn.prototype.sqrTo=Gp;function Up(){return(this.t>0?this[0]&1:this.s)==0}function Hs(q,w0){if(q>4294967295||q<1)return e.ONE;var W0=Z0(),E2=Z0(),j5=w0.convert(this),T5=HC(q)-1;for(j5.copyTo(W0);--T5>=0;)if(w0.sqrTo(W0,E2),(q&1<0)w0.mulTo(E2,j5,W0);else{var b3=W0;W0=E2,E2=b3}return w0.revert(W0)}function Op(q,w0){var W0;return q<256||w0.isEven()?W0=new qo(w0):W0=new xn(w0),this.exp(q,W0)}e.prototype.copyTo=f4,e.prototype.fromInt=Q8,e.prototype.fromString=c8,e.prototype.clamp=z4,e.prototype.dlShiftTo=kp,e.prototype.drShiftTo=vp,e.prototype.lShiftTo=Sp,e.prototype.rShiftTo=Dp,e.prototype.subTo=q6,e.prototype.multiplyTo=bp,e.prototype.squareTo=_p,e.prototype.divRemTo=Rp,e.prototype.invDigit=Ji,e.prototype.isEven=Up,e.prototype.exp=Hs,e.prototype.toString=Mi,e.prototype.negate=Ti,e.prototype.abs=hr,e.prototype.compareTo=K$,e.prototype.bitLength=wp,e.prototype.mod=xp,e.prototype.modPowInt=Op,e.ZERO=J9(0),e.ONE=J9(1);function Ln(q,w0){this.fromInt(0),w0==null&&(w0=10);for(var W0=this.chunkSize(w0),E2=Math.pow(w0,W0),j5=!1,T5=0,b3=0,z6=0;z6=W0&&(this.dMultiply(E2),this.dAddOffset(b3,0),T5=0,b3=0)}T5>0&&(this.dMultiply(Math.pow(w0,T5)),this.dAddOffset(b3,0)),j5&&e.ZERO.subTo(this,this)}function Ur(q){return Math.floor(Math.LN2*this.DB/Math.log(q))}function jm(){return this.s<0?-1:this.t<=0||this.t==1&&this[0]<=0?0:1}function i5(q){this[this.t]=this.am(0,q-1,this,0,0,this.t),++this.t,this.clamp()}function Pp(q,w0){if(q!=0){for(;this.t<=w0;)this[this.t++]=0;for(this[w0]+=q;this[w0]>=this.DV;)this[w0]-=this.DV,++w0>=this.t&&(this[this.t++]=0),++this[w0]}}function qs(q){if(q==null&&(q=10),this.signum()==0||q<2||q>36)return"0";var w0=this.chunkSize(q),W0=Math.pow(q,w0),E2=J9(W0),j5=Z0(),T5=Z0(),b3="";for(this.divRemTo(E2,j5,T5);j5.signum()>0;)b3=(W0+T5.intValue()).toString(q).substr(1)+b3,j5.divRemTo(E2,j5,T5);return T5.intValue().toString(q)+b3}function Or(){if(this.s<0){if(this.t==1)return this[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this[0];if(this.t==0)return 0}return(this[1]&(1<<32-this.DB)-1)<>=this.DB;if(q.t>=this.DB;E2+=this.s}else{for(E2+=this.s;W0>=this.DB;E2+=q.s}w0.s=E2<0?-1:0,E2>0?w0[W0++]=E2:E2<-1&&(w0[W0++]=this.DV+E2),w0.t=W0,w0.clamp()}e.prototype.fromRadix=Ln,e.prototype.chunkSize=Ur,e.prototype.signum=jm,e.prototype.dMultiply=i5,e.prototype.dAddOffset=Pp,e.prototype.toRadix=qs,e.prototype.intValue=Or,e.prototype.addTo=Hp;var ti={abs:function(q,w0){var W0=new i.math.Long(q,w0),E2;W0.isNegative()?E2=W0.negate():E2=W0,D9[p8>>2]=E2.low_,D9[p8+4>>2]=E2.high_},ensureTemps:function(){ti.ensuredTemps||(ti.ensuredTemps=!0,ti.two32=new e,ti.two32.fromString("4294967296",10),ti.two64=new e,ti.two64.fromString("18446744073709551616",10),ti.temp1=new e,ti.temp2=new e)},lh2bignum:function(q,w0){var W0=new e;W0.fromString(w0.toString(),10);var E2=new e;W0.multiplyTo(ti.two32,E2);var j5=new e;j5.fromString(q.toString(),10);var T5=new e;return j5.addTo(E2,T5),T5},stringify:function(q,w0,W0){var E2=new i.math.Long(q,w0).toString();if(W0&&E2[0]=="-"){ti.ensureTemps();var j5=new e;j5.fromString(E2,10),E2=new e,ti.two64.addTo(j5,E2),E2=E2.toString(10)}return E2},fromString:function(q,w0,W0,E2,j5){ti.ensureTemps();var T5=new e;T5.fromString(q,w0);var b3=new e;b3.fromString(W0,10);var z6=new e;if(z6.fromString(E2,10),j5&&T5.compareTo(e.ZERO)<0){var F9=new e;T5.addTo(ti.two64,F9),T5=F9}var _9=!1;T5.compareTo(b3)<0?(T5=b3,_9=!0):T5.compareTo(z6)>0&&(T5=z6,_9=!0);var Z4=i.math.Long.fromString(T5.toString());if(D9[p8>>2]=Z4.low_,D9[p8+4>>2]=Z4.high_,_9)throw"range error"}};return ti}();function Ho(i){this.name="ExitStatus",this.message="Program terminated with exit("+i+")",this.status=i}Ho.prototype=new Error,Ho.prototype.constructor=Ho;var Bp,PC=null,lv=!1;Fi=function i(){A.calledRun||Wm(),A.calledRun||(Fi=i)},A.callMain=A.callMain=function($){V4(C7==0,"cannot call main when async dependencies remain! (listen on __ATMAIN__)"),V4(MC.length==0,"cannot call main when preRun functions remain to be called"),$=$||[],Gs();var h=$.length+1;function u(){for(var t1=0;t1<3;t1++)O.push(0)}var O=[d3(Nr(A.thisProgram),"i8",Uo)];u();for(var e=0;e0||(kh(),C7>0)||A.calledRun)return;function $(){A.calledRun||(A.calledRun=!0,!K0&&(Gs(),gp(),g&&PC!==null&&A.printErr("pre-main prep time: "+(Date.now()-PC)+" ms"),A.onRuntimeInitialized&&A.onRuntimeInitialized(),A._main&&yp&&A.callMain(i),U$()))}A.setStatus?(A.setStatus("Running..."),setTimeout(function(){setTimeout(function(){A.setStatus("")},1),$()},1)):$()}A.run=A.run=Wm;function pp(i,$){if(!($&&A.noExitRuntime))throw A.noExitRuntime||(K0=!0,F1=i,Ei=Bp,TC(),A.onExit&&A.onExit(i)),d?(process.stdout.once("drain",function(){process.exit(i)}),console.log(" "),setTimeout(function(){process.exit(i)},500)):I0&&typeof quit=="function"&&quit(i),new Ho(i)}A.exit=A.exit=pp;var Qp=[];function Ps(i){i!==void 0?(A.print(i),A.printErr(i),i=JSON.stringify(i)):i="",K0=!0,F1=1;var $=` -If this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.`,h="abort("+i+") at "+xC()+$;throw Qp&&Qp.forEach(function(u){h=u(h,i)}),h}if(A.abort=A.abort=Ps,A.preInit)for(typeof A.preInit=="function"&&(A.preInit=[A.preInit]);A.preInit.length>0;)A.preInit.pop()();var yp=!0;A.noInitialRun&&(yp=!1),Wm();var cv=A._encoder_init,gv=A._encoder_clear,hv=A._encoder_analysis_buffer,fv=A._encoder_process,uv=A._encoder_data_len,Iv=A._encoder_transfer_data,Ci=A.HEAPU8,q$=A.HEAPU32,Y$=A.HEAPF32,J$=function(i,$,h){this.numChannels=$,this.oggBuffers=[],this.encoder=cv(this.numChannels,i,h)};J$.prototype.encode=function(i){for(var $=i[0].length,h=hv(this.encoder,$)>>2,u=0;u>2);this.process($)},J$.prototype.finish=function(){this.process(0);let i=this.oggBuffers.slice();return this.cleanup(),i},J$.prototype.cancel=J$.prototype.cleanup=function(){gv(this.encoder),delete this.encoder,delete this.oggBuffers},J$.prototype.process=function(i){fv(this.encoder,i);var $=uv(this.encoder);if($>0){var h=Iv(this.encoder);this.oggBuffers.push(new Uint8Array(Ci.subarray(h,h+$)))}},Pm.OggVorbisEncoder=J$}};typeof window<"u"&&window===self&&Pm.init();function Ek(A,r,l,g){let d=new Pm.OggVorbisEncoder(l,r,g);d.encode(A);let b=d.finish(),I0=b.reduce((Y0,m1)=>Y0+m1.length,0),b0=new Uint8Array(I0),m0=0;for(let Y0 of b)b0.set(Y0,m0),m0+=Y0.length;return b0}document.body.classList.add("load");var Ck=!1,Sn=class{channelColors=["rgba(255, 99, 71, 1)","rgba(255, 165, 0, 1)","rgba(255, 215, 0, 1)","rgba(50, 205, 50, 1)","rgba(60, 179, 113, 1)","rgba(0, 128, 0, 1)","rgba(0, 191, 255, 1)","rgba(65, 105, 225, 1)","rgba(138, 43, 226, 1)","rgba(50, 120, 125, 1)","rgba(255, 0, 255, 1)","rgba(255, 20, 147, 1)","rgba(218, 112, 214, 1)","rgba(240, 128, 128, 1)","rgba(255, 192, 203, 1)","rgba(255, 255, 0, 1)"];constructor(r,l,g){this.localeManager=g,this.context=r,this.isExporting=!1,this.compressionFunc=Ek;let d;this.ready=new Promise(b=>d=b),this.initializeContext(r,l).then(()=>{d()})}saveBlob(r,l){let g=URL.createObjectURL(r),d=document.createElement("a");d.href=g,d.download=l,d.click(),J5(d)}sfError;async initializeContext(r,l){if(!r.audioWorklet)throw alert("Audio worklet is not supported on your browser. Sorry!"),"Not supported.";for(let F of document.querySelectorAll("*[translate-path]"))this.localeManager.bindObjectProperty(F,"innerText",F.getAttribute("translate-path"));for(let F of document.querySelectorAll("*[translate-path-title]"))this.localeManager.bindObjectProperty(F,"innerText",F.getAttribute("translate-path-title")+".title"),this.localeManager.bindObjectProperty(F,"title",F.getAttribute("translate-path-title")+".description");let d=Ck?"synthetizer/worklet_system/worklet_processor.js":Mm;Ck&&console.warn("DEBUG ENABLED! DEBUGGING ENABLED!!"),r.audioWorklet&&await r.audioWorklet.addModule(new URL("../../spessasynth_lib/"+d,import.meta.url)),this.soundFont=l;let b=new URL("../../spessasynth_lib/synthetizer/audio_effects/impulse_response_2.flac",import.meta.url),b0=await(await fetch(b)).arrayBuffer();this.impulseResponse=await r.decodeAudioData(b0),this.synth=new ah(r.destination,this.soundFont,void 0,void 0,{chorusEnabled:!0,chorusConfig:void 0,reverbImpulseResponse:this.impulseResponse,reverbEnabled:!0}),this.synth.eventHandler.addEvent("soundfonterror","manager-sf-error",F=>{this.sfError&&this.sfError(F)}),await this.synth.isReady,this.midHandler=new vm,this.wml=new Sm(this.synth),this.keyboard=new BC(this.channelColors,this.synth);let m0=document.getElementById("note_canvas");m0.width=window.innerWidth*window.devicePixelRatio,m0.height=window.innerHeight*window.devicePixelRatio,this.renderer=new vi(this.channelColors,this.synth,m0),this.renderer.render(!0);let Y0=!1,m1=()=>{if(m0.width=window.innerWidth*window.devicePixelRatio,m0.height=window.innerHeight*window.devicePixelRatio,this.renderer.computeColors(),Bn){if(window.innerWidth/window.innerHeight>1){if(!Y0){let F=document.getElementById("title_wrapper"),j0=document.getElementById("settings_div");Y0=!0,F.parentElement.insertBefore(j0,F)}}else if(Y0){let F=document.getElementById("title_wrapper"),j0=document.getElementById("settings_div");Y0=!1,F.parentElement.insertBefore(F,j0)}}this.renderer.render(!1,!0)};m1(),window.addEventListener("resize",m1.bind(this)),window.addEventListener("orientationchange",m1.bind(this)),Bn&&(this.renderer.keyRange={min:36,max:96},this.keyboard.setKeyRange({min:36,max:96},!1)),this.synthUI=new Lr(this.channelColors,document.getElementById("synthetizer_controls"),this.localeManager),this.synthUI.connectSynth(this.synth),this.playerUI=new Fm(document.getElementById("player_info"),this.localeManager),this.seqUI=new _s(document.getElementById("sequencer_controls"),this.localeManager,this.playerUI),this.settingsUI=new di(document.getElementById("settings_div"),this.synthUI,this.seqUI,this.renderer,this.keyboard,this.midHandler,this.playerUI,this.localeManager),document.addEventListener("keydown",F=>{switch(F.key.toLowerCase()){case j7.cinematicMode:this.seq&&this.seq.pause();let j0=window.prompt(`Cinematic mode activated! +`));if(!$)return null;i.input=Nr($,!0)}return i.input.shift()},put_char:function(i,$){$===null||$===10?(A.print(Fs(i.output,0)),i.output=[]):$!=0&&i.output.push($)},flush:function(i){i.output&&i.output.length>0&&(A.print(Fs(i.output,0)),i.output=[])}},default_tty1_ops:{put_char:function(i,$){$===null||$===10?(A.printErr(Fs(i.output,0)),i.output=[]):$!=0&&i.output.push($)},flush:function(i){i.output&&i.output.length>0&&(A.printErr(Fs(i.output,0)),i.output=[])}}},w9={ops_table:null,mount:function(i){return w9.createNode(null,"/",16895,0)},createNode:function(i,$,h,u){if(k.isBlkdev(h)||k.isFIFO(h))throw new k.ErrnoError(L2.EPERM);w9.ops_table||(w9.ops_table={dir:{node:{getattr:w9.node_ops.getattr,setattr:w9.node_ops.setattr,lookup:w9.node_ops.lookup,mknod:w9.node_ops.mknod,rename:w9.node_ops.rename,unlink:w9.node_ops.unlink,rmdir:w9.node_ops.rmdir,readdir:w9.node_ops.readdir,symlink:w9.node_ops.symlink},stream:{llseek:w9.stream_ops.llseek}},file:{node:{getattr:w9.node_ops.getattr,setattr:w9.node_ops.setattr},stream:{llseek:w9.stream_ops.llseek,read:w9.stream_ops.read,write:w9.stream_ops.write,allocate:w9.stream_ops.allocate,mmap:w9.stream_ops.mmap,msync:w9.stream_ops.msync}},link:{node:{getattr:w9.node_ops.getattr,setattr:w9.node_ops.setattr,readlink:w9.node_ops.readlink},stream:{}},chrdev:{node:{getattr:w9.node_ops.getattr,setattr:w9.node_ops.setattr},stream:k.chrdev_stream_ops}});var O=k.createNode(i,$,h,u);return k.isDir(O.mode)?(O.node_ops=w9.ops_table.dir.node,O.stream_ops=w9.ops_table.dir.stream,O.contents={}):k.isFile(O.mode)?(O.node_ops=w9.ops_table.file.node,O.stream_ops=w9.ops_table.file.stream,O.usedBytes=0,O.contents=null):k.isLink(O.mode)?(O.node_ops=w9.ops_table.link.node,O.stream_ops=w9.ops_table.link.stream):k.isChrdev(O.mode)&&(O.node_ops=w9.ops_table.chrdev.node,O.stream_ops=w9.ops_table.chrdev.stream),O.timestamp=Date.now(),i&&(i.contents[$]=O),O},getFileDataAsRegularArray:function(i){if(i.contents&&i.contents.subarray){for(var $=[],h=0;hi.contents.length&&(i.contents=w9.getFileDataAsRegularArray(i),i.usedBytes=i.contents.length),!i.contents||i.contents.subarray){var h=i.contents?i.contents.buffer.byteLength:0;if(h>=$)return;var u=1024*1024;$=Math.max($,h*(h0&&i.contents.set(O.subarray(0,i.usedBytes),0);return}for(!i.contents&&$>0&&(i.contents=[]);i.contents.length<$;)i.contents.push(0)},resizeFileStorage:function(i,$){if(i.usedBytes!=$){if($==0){i.contents=null,i.usedBytes=0;return}if(!i.contents||i.contents.subarray){var h=i.contents;i.contents=new Uint8Array(new ArrayBuffer($)),h&&i.contents.set(h.subarray(0,Math.min($,i.usedBytes))),i.usedBytes=$;return}if(i.contents||(i.contents=[]),i.contents.length>$)i.contents.length=$;else for(;i.contents.length<$;)i.contents.push(0);i.usedBytes=$}},node_ops:{getattr:function(i){var $={};return $.dev=k.isChrdev(i.mode)?i.id:1,$.ino=i.id,$.mode=i.mode,$.nlink=1,$.uid=0,$.gid=0,$.rdev=i.rdev,k.isDir(i.mode)?$.size=4096:k.isFile(i.mode)?$.size=i.usedBytes:k.isLink(i.mode)?$.size=i.link.length:$.size=0,$.atime=new Date(i.timestamp),$.mtime=new Date(i.timestamp),$.ctime=new Date(i.timestamp),$.blksize=4096,$.blocks=Math.ceil($.size/$.blksize),$},setattr:function(i,$){$.mode!==void 0&&(i.mode=$.mode),$.timestamp!==void 0&&(i.timestamp=$.timestamp),$.size!==void 0&&w9.resizeFileStorage(i,$.size)},lookup:function(i,$){throw k.genericErrors[L2.ENOENT]},mknod:function(i,$,h,u){return w9.createNode(i,$,h,u)},rename:function(i,$,h){if(k.isDir(i.mode)){var u;try{u=k.lookupNode($,h)}catch{}if(u)for(var O in u.contents)throw new k.ErrnoError(L2.ENOTEMPTY)}delete i.parent.contents[i.name],i.name=h,$.contents[h]=i,i.parent=$},unlink:function(i,$){delete i.contents[$]},rmdir:function(i,$){var h=k.lookupNode(i,$);for(var u in h.contents)throw new k.ErrnoError(L2.ENOTEMPTY);delete i.contents[$]},readdir:function(i){var $=[".",".."];for(var h in i.contents)i.contents.hasOwnProperty(h)&&$.push(h);return $},symlink:function(i,$,h){var u=w9.createNode(i,$,41471,0);return u.link=h,u},readlink:function(i){if(!k.isLink(i.mode))throw new k.ErrnoError(L2.EINVAL);return i.link}},stream_ops:{read:function(i,$,h,u,O){var e=i.node.contents;if(O>=i.node.usedBytes)return 0;var Z0=Math.min(i.node.usedBytes-O,u);if(K4(Z0>=0),Z0>8&&e.subarray)$.set(e.subarray(O,O+Z0),h);else for(var t1=0;t10||O+uM5.timestamp)&&(O.push(Q5),u++)});var e=[];if(Object.keys($.entries).forEach(function(Q5){var p2=$.entries[Q5],M5=i.entries[Q5];M5||(e.push(Q5),u++)}),!u)return h(null);var Z0=!1,t1=0,b2=i.type==="remote"?i.db:$.db,s=b2.transaction([m7.DB_STORE_NAME],"readwrite"),o1=s.objectStore(m7.DB_STORE_NAME);function m(Q5){if(Q5)return m.errored?void 0:(m.errored=!0,h(Q5));if(++t1>=u)return h(null)}s.onerror=function(Q5){m(this.error),Q5.preventDefault()},O.sort().forEach(function(Q5){$.type==="local"?m7.loadRemoteEntry(o1,Q5,function(p2,M5){if(p2)return m(p2);m7.storeLocalEntry(Q5,M5,m)}):m7.loadLocalEntry(Q5,function(p2,M5){if(p2)return m(p2);m7.storeRemoteEntry(o1,Q5,M5,m)})}),e.sort().reverse().forEach(function(Q5){$.type==="local"?m7.removeLocalEntry(Q5,m):m7.removeRemoteEntry(o1,Q5,m)})}},l8={isWindows:!1,staticInit:function(){l8.isWindows=!!process.platform.match(/^win/)},mount:function(i){return K4(d),l8.createNode(null,"/",l8.getMode(i.opts.root),0)},createNode:function(i,$,h,u){if(!k.isDir(h)&&!k.isFile(h)&&!k.isLink(h))throw new k.ErrnoError(L2.EINVAL);var O=k.createNode(i,$,h);return O.node_ops=l8.node_ops,O.stream_ops=l8.stream_ops,O},getMode:function(i){var $;try{$=B7.lstatSync(i),l8.isWindows&&($.mode=$.mode|($.mode&146)>>1)}catch(h){throw h.code?new k.ErrnoError(L2[h.code]):h}return $.mode},realPath:function(i){for(var $=[];i.parent!==i;)$.push(i.name),i=i.parent;return $.push(i.mount.opts.root),$.reverse(),$9.join.apply(null,$)},flagsToPermissionStringMap:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},flagsToPermissionString:function(i){return i in l8.flagsToPermissionStringMap?l8.flagsToPermissionStringMap[i]:i},node_ops:{getattr:function(i){var $=l8.realPath(i),h;try{h=B7.lstatSync($)}catch(u){throw u.code?new k.ErrnoError(L2[u.code]):u}return l8.isWindows&&!h.blksize&&(h.blksize=4096),l8.isWindows&&!h.blocks&&(h.blocks=(h.size+h.blksize-1)/h.blksize|0),{dev:h.dev,ino:h.ino,mode:h.mode,nlink:h.nlink,uid:h.uid,gid:h.gid,rdev:h.rdev,size:h.size,atime:h.atime,mtime:h.mtime,ctime:h.ctime,blksize:h.blksize,blocks:h.blocks}},setattr:function(i,$){var h=l8.realPath(i);try{if($.mode!==void 0&&(B7.chmodSync(h,$.mode),i.mode=$.mode),$.timestamp!==void 0){var u=new Date($.timestamp);B7.utimesSync(h,u,u)}$.size!==void 0&&B7.truncateSync(h,$.size)}catch(O){throw O.code?new k.ErrnoError(L2[O.code]):O}},lookup:function(i,$){var h=$9.join2(l8.realPath(i),$),u=l8.getMode(h);return l8.createNode(i,$,u)},mknod:function(i,$,h,u){var O=l8.createNode(i,$,h,u),e=l8.realPath(O);try{k.isDir(O.mode)?B7.mkdirSync(e,O.mode):B7.writeFileSync(e,"",{mode:O.mode})}catch(Z0){throw Z0.code?new k.ErrnoError(L2[Z0.code]):Z0}return O},rename:function(i,$,h){var u=l8.realPath(i),O=$9.join2(l8.realPath($),h);try{B7.renameSync(u,O)}catch(e){throw e.code?new k.ErrnoError(L2[e.code]):e}},unlink:function(i,$){var h=$9.join2(l8.realPath(i),$);try{B7.unlinkSync(h)}catch(u){throw u.code?new k.ErrnoError(L2[u.code]):u}},rmdir:function(i,$){var h=$9.join2(l8.realPath(i),$);try{B7.rmdirSync(h)}catch(u){throw u.code?new k.ErrnoError(L2[u.code]):u}},readdir:function(i){var $=l8.realPath(i);try{return B7.readdirSync($)}catch(h){throw h.code?new k.ErrnoError(L2[h.code]):h}},symlink:function(i,$,h){var u=$9.join2(l8.realPath(i),$);try{B7.symlinkSync(h,u)}catch(O){throw O.code?new k.ErrnoError(L2[O.code]):O}},readlink:function(i){var $=l8.realPath(i);try{return $=B7.readlinkSync($),$=mp.relative(mp.resolve(i.mount.opts.root),$),$}catch(h){throw h.code?new k.ErrnoError(L2[h.code]):h}}},stream_ops:{open:function(i){var $=l8.realPath(i.node);try{k.isFile(i.node.mode)&&(i.nfd=B7.openSync($,l8.flagsToPermissionString(i.flags)))}catch(h){throw h.code?new k.ErrnoError(L2[h.code]):h}},close:function(i){try{k.isFile(i.node.mode)&&i.nfd&&B7.closeSync(i.nfd)}catch($){throw $.code?new k.ErrnoError(L2[$.code]):$}},read:function(i,$,h,u,O){if(u===0)return 0;var e=new Buffer(u),Z0;try{Z0=B7.readSync(i.nfd,e,0,u,O)}catch(b2){throw new k.ErrnoError(L2[b2.code])}if(Z0>0)for(var t1=0;t18)throw new k.ErrnoError(L2.ELOOP);for(var O=$9.normalizeArray(i.split("/").filter(function(Q5){return!!Q5}),!1),e=k.root,Z0="/",t1=0;t140)throw new k.ErrnoError(L2.ELOOP)}}return{path:Z0,node:e}},getPath:function(i){for(var $;;){if(k.isRoot(i)){var h=i.mount.mountpoint;return $?h[h.length-1]!=="/"?h+"/"+$:h+$:h}$=$?i.name+"/"+$:i.name,i=i.parent}},hashName:function(i,$){for(var h=0,u=0;u<$.length;u++)h=(h<<5)-h+$.charCodeAt(u)|0;return(i+h>>>0)%k.nameTable.length},hashAddNode:function(i){var $=k.hashName(i.parent.id,i.name);i.name_next=k.nameTable[$],k.nameTable[$]=i},hashRemoveNode:function(i){var $=k.hashName(i.parent.id,i.name);if(k.nameTable[$]===i)k.nameTable[$]=i.name_next;else for(var h=k.nameTable[$];h;){if(h.name_next===i){h.name_next=i.name_next;break}h=h.name_next}},lookupNode:function(i,$){var h=k.mayLookup(i);if(h)throw new k.ErrnoError(h,i);for(var u=k.hashName(i.id,$),O=k.nameTable[u];O;O=O.name_next){var e=O.name;if(O.parent.id===i.id&&e===$)return O}return k.lookup(i,$)},createNode:function(i,$,h,u){if(!k.FSNode){k.FSNode=function(t1,b2,s,o1){t1||(t1=this),this.parent=t1,this.mount=t1.mount,this.mounted=null,this.id=k.nextInode++,this.name=b2,this.mode=s,this.node_ops={},this.stream_ops={},this.rdev=o1},k.FSNode.prototype={};var O=365,e=146;Object.defineProperties(k.FSNode.prototype,{read:{get:function(){return(this.mode&O)===O},set:function(t1){t1?this.mode|=O:this.mode&=~O}},write:{get:function(){return(this.mode&e)===e},set:function(t1){t1?this.mode|=e:this.mode&=~e}},isFolder:{get:function(){return k.isDir(this.mode)}},isDevice:{get:function(){return k.isChrdev(this.mode)}}})}var Z0=new k.FSNode(i,$,h,u);return k.hashAddNode(Z0),Z0},destroyNode:function(i){k.hashRemoveNode(i)},isRoot:function(i){return i===i.parent},isMountpoint:function(i){return!!i.mounted},isFile:function(i){return(i&61440)===32768},isDir:function(i){return(i&61440)===16384},isLink:function(i){return(i&61440)===40960},isChrdev:function(i){return(i&61440)===8192},isBlkdev:function(i){return(i&61440)===24576},isFIFO:function(i){return(i&61440)===4096},isSocket:function(i){return(i&49152)===49152},flagModes:{r:0,rs:1052672,"r+":2,w:577,wx:705,xw:705,"w+":578,"wx+":706,"xw+":706,a:1089,ax:1217,xa:1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function(i){var $=k.flagModes[i];if(typeof $>"u")throw new Error("Unknown file open mode: "+i);return $},flagsToPermissionString:function(i){var $=i&2097155,h=["r","w","rw"][$];return i&512&&(h+="w"),h},nodePermissions:function(i,$){return k.ignorePermissions?0:$.indexOf("r")!==-1&&!(i.mode&292)||$.indexOf("w")!==-1&&!(i.mode&146)||$.indexOf("x")!==-1&&!(i.mode&73)?L2.EACCES:0},mayLookup:function(i){var $=k.nodePermissions(i,"x");return $||(i.node_ops.lookup?0:L2.EACCES)},mayCreate:function(i,$){try{var h=k.lookupNode(i,$);return L2.EEXIST}catch{}return k.nodePermissions(i,"wx")},mayDelete:function(i,$,h){var u;try{u=k.lookupNode(i,$)}catch(e){return e.errno}var O=k.nodePermissions(i,"wx");if(O)return O;if(h){if(!k.isDir(u.mode))return L2.ENOTDIR;if(k.isRoot(u)||k.getPath(u)===k.cwd())return L2.EBUSY}else if(k.isDir(u.mode))return L2.EISDIR;return 0},mayOpen:function(i,$){return i?k.isLink(i.mode)?L2.ELOOP:k.isDir(i.mode)&&($&2097155||$&512)?L2.EISDIR:k.nodePermissions(i,k.flagsToPermissionString($)):L2.ENOENT},MAX_OPEN_FDS:4096,nextfd:function(i,$){i=i||0,$=$||k.MAX_OPEN_FDS;for(var h=i;h<=$;h++)if(!k.streams[h])return h;throw new k.ErrnoError(L2.EMFILE)},getStream:function(i){return k.streams[i]},createStream:function(i,$,h){k.FSStream||(k.FSStream=function(){},k.FSStream.prototype={},Object.defineProperties(k.FSStream.prototype,{object:{get:function(){return this.node},set:function(Z0){this.node=Z0}},isRead:{get:function(){return(this.flags&2097155)!==1}},isWrite:{get:function(){return(this.flags&2097155)!==0}},isAppend:{get:function(){return this.flags&1024}}}));var u=new k.FSStream;for(var O in i)u[O]=i[O];i=u;var e=k.nextfd($,h);return i.fd=e,k.streams[e]=i,i},closeStream:function(i){k.streams[i]=null},getStreamFromPtr:function(i){return k.streams[i-1]},getPtrForStream:function(i){return i?i.fd+1:0},chrdev_stream_ops:{open:function(i){var $=k.getDevice(i.node.rdev);i.stream_ops=$.stream_ops,i.stream_ops.open&&i.stream_ops.open(i)},llseek:function(){throw new k.ErrnoError(L2.ESPIPE)}},major:function(i){return i>>8},minor:function(i){return i&255},makedev:function(i,$){return i<<8|$},registerDevice:function(i,$){k.devices[i]={stream_ops:$}},getDevice:function(i){return k.devices[i]},getMounts:function(i){for(var $=[],h=[i];h.length;){var u=h.pop();$.push(u),h.push.apply(h,u.mounts)}return $},syncfs:function(i,$){typeof i=="function"&&($=i,i=!1);var h=k.getMounts(k.root.mount),u=0;function O(e){if(e)return O.errored?void 0:(O.errored=!0,$(e));++u>=h.length&&$(null)}h.forEach(function(e){if(!e.type.syncfs)return O(null);e.type.syncfs(e,i,O)})},mount:function(i,$,h){var u=h==="/",O=!h,e;if(u&&k.root)throw new k.ErrnoError(L2.EBUSY);if(!u&&!O){var Z0=k.lookupPath(h,{follow_mount:!1});if(h=Z0.path,e=Z0.node,k.isMountpoint(e))throw new k.ErrnoError(L2.EBUSY);if(!k.isDir(e.mode))throw new k.ErrnoError(L2.ENOTDIR)}var t1={type:i,opts:$,mountpoint:h,mounts:[]},b2=i.mount(t1);return b2.mount=t1,t1.root=b2,u?k.root=b2:e&&(e.mounted=t1,e.mount&&e.mount.mounts.push(t1)),b2},unmount:function(i){var $=k.lookupPath(i,{follow_mount:!1});if(!k.isMountpoint($.node))throw new k.ErrnoError(L2.EINVAL);var h=$.node,u=h.mounted,O=k.getMounts(u);Object.keys(k.nameTable).forEach(function(Z0){for(var t1=k.nameTable[Z0];t1;){var b2=t1.name_next;O.indexOf(t1.mount)!==-1&&k.destroyNode(t1),t1=b2}}),h.mounted=null;var e=h.mount.mounts.indexOf(u);K4(e!==-1),h.mount.mounts.splice(e,1)},lookup:function(i,$){return i.node_ops.lookup(i,$)},mknod:function(i,$,h){var u=k.lookupPath(i,{parent:!0}),O=u.node,e=$9.basename(i);if(!e||e==="."||e==="..")throw new k.ErrnoError(L2.EINVAL);var Z0=k.mayCreate(O,e);if(Z0)throw new k.ErrnoError(Z0);if(!O.node_ops.mknod)throw new k.ErrnoError(L2.EPERM);return O.node_ops.mknod(O,e,$,h)},create:function(i,$){return $=$!==void 0?$:438,$&=4095,$|=32768,k.mknod(i,$,0)},mkdir:function(i,$){return $=$!==void 0?$:511,$&=1023,$|=16384,k.mknod(i,$,0)},mkdev:function(i,$,h){return typeof h>"u"&&(h=$,$=438),$|=8192,k.mknod(i,$,h)},symlink:function(i,$){if(!$9.resolve(i))throw new k.ErrnoError(L2.ENOENT);var h=k.lookupPath($,{parent:!0}),u=h.node;if(!u)throw new k.ErrnoError(L2.ENOENT);var O=$9.basename($),e=k.mayCreate(u,O);if(e)throw new k.ErrnoError(e);if(!u.node_ops.symlink)throw new k.ErrnoError(L2.EPERM);return u.node_ops.symlink(u,O,i)},rename:function(i,$){var h=$9.dirname(i),u=$9.dirname($),O=$9.basename(i),e=$9.basename($),Z0,t1,b2;try{Z0=k.lookupPath(i,{parent:!0}),t1=Z0.node,Z0=k.lookupPath($,{parent:!0}),b2=Z0.node}catch{throw new k.ErrnoError(L2.EBUSY)}if(!t1||!b2)throw new k.ErrnoError(L2.ENOENT);if(t1.mount!==b2.mount)throw new k.ErrnoError(L2.EXDEV);var s=k.lookupNode(t1,O),o1=$9.relative(i,u);if(o1.charAt(0)!==".")throw new k.ErrnoError(L2.EINVAL);if(o1=$9.relative($,h),o1.charAt(0)!==".")throw new k.ErrnoError(L2.ENOTEMPTY);var m;try{m=k.lookupNode(b2,e)}catch{}if(s!==m){var Q5=k.isDir(s.mode),p2=k.mayDelete(t1,O,Q5);if(p2)throw new k.ErrnoError(p2);if(p2=m?k.mayDelete(b2,e,Q5):k.mayCreate(b2,e),p2)throw new k.ErrnoError(p2);if(!t1.node_ops.rename)throw new k.ErrnoError(L2.EPERM);if(k.isMountpoint(s)||m&&k.isMountpoint(m))throw new k.ErrnoError(L2.EBUSY);if(b2!==t1&&(p2=k.nodePermissions(t1,"w"),p2))throw new k.ErrnoError(p2);try{k.trackingDelegate.willMovePath&&k.trackingDelegate.willMovePath(i,$)}catch(M5){console.log("FS.trackingDelegate['willMovePath']('"+i+"', '"+$+"') threw an exception: "+M5.message)}k.hashRemoveNode(s);try{t1.node_ops.rename(s,b2,e)}catch(M5){throw M5}finally{k.hashAddNode(s)}try{k.trackingDelegate.onMovePath&&k.trackingDelegate.onMovePath(i,$)}catch(M5){console.log("FS.trackingDelegate['onMovePath']('"+i+"', '"+$+"') threw an exception: "+M5.message)}}},rmdir:function(i){var $=k.lookupPath(i,{parent:!0}),h=$.node,u=$9.basename(i),O=k.lookupNode(h,u),e=k.mayDelete(h,u,!0);if(e)throw new k.ErrnoError(e);if(!h.node_ops.rmdir)throw new k.ErrnoError(L2.EPERM);if(k.isMountpoint(O))throw new k.ErrnoError(L2.EBUSY);try{k.trackingDelegate.willDeletePath&&k.trackingDelegate.willDeletePath(i)}catch(Z0){console.log("FS.trackingDelegate['willDeletePath']('"+i+"') threw an exception: "+Z0.message)}h.node_ops.rmdir(h,u),k.destroyNode(O);try{k.trackingDelegate.onDeletePath&&k.trackingDelegate.onDeletePath(i)}catch(Z0){console.log("FS.trackingDelegate['onDeletePath']('"+i+"') threw an exception: "+Z0.message)}},readdir:function(i){var $=k.lookupPath(i,{follow:!0}),h=$.node;if(!h.node_ops.readdir)throw new k.ErrnoError(L2.ENOTDIR);return h.node_ops.readdir(h)},unlink:function(i){var $=k.lookupPath(i,{parent:!0}),h=$.node,u=$9.basename(i),O=k.lookupNode(h,u),e=k.mayDelete(h,u,!1);if(e)throw e===L2.EISDIR&&(e=L2.EPERM),new k.ErrnoError(e);if(!h.node_ops.unlink)throw new k.ErrnoError(L2.EPERM);if(k.isMountpoint(O))throw new k.ErrnoError(L2.EBUSY);try{k.trackingDelegate.willDeletePath&&k.trackingDelegate.willDeletePath(i)}catch(Z0){console.log("FS.trackingDelegate['willDeletePath']('"+i+"') threw an exception: "+Z0.message)}h.node_ops.unlink(h,u),k.destroyNode(O);try{k.trackingDelegate.onDeletePath&&k.trackingDelegate.onDeletePath(i)}catch(Z0){console.log("FS.trackingDelegate['onDeletePath']('"+i+"') threw an exception: "+Z0.message)}},readlink:function(i){var $=k.lookupPath(i),h=$.node;if(!h)throw new k.ErrnoError(L2.ENOENT);if(!h.node_ops.readlink)throw new k.ErrnoError(L2.EINVAL);return $9.resolve(k.getPath($.node.parent),h.node_ops.readlink(h))},stat:function(i,$){var h=k.lookupPath(i,{follow:!$}),u=h.node;if(!u)throw new k.ErrnoError(L2.ENOENT);if(!u.node_ops.getattr)throw new k.ErrnoError(L2.EPERM);return u.node_ops.getattr(u)},lstat:function(i){return k.stat(i,!0)},chmod:function(i,$,h){var u;if(typeof i=="string"){var O=k.lookupPath(i,{follow:!h});u=O.node}else u=i;if(!u.node_ops.setattr)throw new k.ErrnoError(L2.EPERM);u.node_ops.setattr(u,{mode:$&4095|u.mode&-4096,timestamp:Date.now()})},lchmod:function(i,$){k.chmod(i,$,!0)},fchmod:function(i,$){var h=k.getStream(i);if(!h)throw new k.ErrnoError(L2.EBADF);k.chmod(h.node,$)},chown:function(i,$,h,u){var O;if(typeof i=="string"){var e=k.lookupPath(i,{follow:!u});O=e.node}else O=i;if(!O.node_ops.setattr)throw new k.ErrnoError(L2.EPERM);O.node_ops.setattr(O,{timestamp:Date.now()})},lchown:function(i,$,h){k.chown(i,$,h,!0)},fchown:function(i,$,h){var u=k.getStream(i);if(!u)throw new k.ErrnoError(L2.EBADF);k.chown(u.node,$,h)},truncate:function(i,$){if($<0)throw new k.ErrnoError(L2.EINVAL);var h;if(typeof i=="string"){var u=k.lookupPath(i,{follow:!0});h=u.node}else h=i;if(!h.node_ops.setattr)throw new k.ErrnoError(L2.EPERM);if(k.isDir(h.mode))throw new k.ErrnoError(L2.EISDIR);if(!k.isFile(h.mode))throw new k.ErrnoError(L2.EINVAL);var O=k.nodePermissions(h,"w");if(O)throw new k.ErrnoError(O);h.node_ops.setattr(h,{size:$,timestamp:Date.now()})},ftruncate:function(i,$){var h=k.getStream(i);if(!h)throw new k.ErrnoError(L2.EBADF);if(!(h.flags&2097155))throw new k.ErrnoError(L2.EINVAL);k.truncate(h.node,$)},utime:function(i,$,h){var u=k.lookupPath(i,{follow:!0}),O=u.node;O.node_ops.setattr(O,{timestamp:Math.max($,h)})},open:function(i,$,h,u,O){if(i==="")throw new k.ErrnoError(L2.ENOENT);$=typeof $=="string"?k.modeStringToFlags($):$,h=typeof h>"u"?438:h,$&64?h=h&4095|32768:h=0;var e;if(typeof i=="object")e=i;else{i=$9.normalize(i);try{var Z0=k.lookupPath(i,{follow:!($&131072)});e=Z0.node}catch{}}var t1=!1;if($&64)if(e){if($&128)throw new k.ErrnoError(L2.EEXIST)}else e=k.mknod(i,h,0),t1=!0;if(!e)throw new k.ErrnoError(L2.ENOENT);if(k.isChrdev(e.mode)&&($&=-513),!t1){var b2=k.mayOpen(e,$);if(b2)throw new k.ErrnoError(b2)}$&512&&k.truncate(e,0),$&=-641;var s=k.createStream({node:e,path:k.getPath(e),flags:$,seekable:!0,position:0,stream_ops:e.stream_ops,ungotten:[],error:!1},u,O);s.stream_ops.open&&s.stream_ops.open(s),A.logReadFiles&&!($&1)&&(k.readFiles||(k.readFiles={}),i in k.readFiles||(k.readFiles[i]=1,A.printErr("read file: "+i)));try{if(k.trackingDelegate.onOpenFile){var o1=0;($&2097155)!==1&&(o1|=k.tracking.openFlags.READ),$&2097155&&(o1|=k.tracking.openFlags.WRITE),k.trackingDelegate.onOpenFile(i,o1)}}catch(m){console.log("FS.trackingDelegate['onOpenFile']('"+i+"', flags) threw an exception: "+m.message)}return s},close:function(i){try{i.stream_ops.close&&i.stream_ops.close(i)}catch($){throw $}finally{k.closeStream(i.fd)}},llseek:function(i,$,h){if(!i.seekable||!i.stream_ops.llseek)throw new k.ErrnoError(L2.ESPIPE);return i.position=i.stream_ops.llseek(i,$,h),i.ungotten=[],i.position},read:function(i,$,h,u,O){if(u<0||O<0)throw new k.ErrnoError(L2.EINVAL);if((i.flags&2097155)===1)throw new k.ErrnoError(L2.EBADF);if(k.isDir(i.node.mode))throw new k.ErrnoError(L2.EISDIR);if(!i.stream_ops.read)throw new k.ErrnoError(L2.EINVAL);var e=!0;if(typeof O>"u")O=i.position,e=!1;else if(!i.seekable)throw new k.ErrnoError(L2.ESPIPE);var Z0=i.stream_ops.read(i,$,h,u,O);return e||(i.position+=Z0),Z0},write:function(i,$,h,u,O,e){if(u<0||O<0)throw new k.ErrnoError(L2.EINVAL);if(!(i.flags&2097155))throw new k.ErrnoError(L2.EBADF);if(k.isDir(i.node.mode))throw new k.ErrnoError(L2.EISDIR);if(!i.stream_ops.write)throw new k.ErrnoError(L2.EINVAL);i.flags&1024&&k.llseek(i,0,2);var Z0=!0;if(typeof O>"u")O=i.position,Z0=!1;else if(!i.seekable)throw new k.ErrnoError(L2.ESPIPE);var t1=i.stream_ops.write(i,$,h,u,O,e);Z0||(i.position+=t1);try{i.path&&k.trackingDelegate.onWriteToFile&&k.trackingDelegate.onWriteToFile(i.path)}catch(b2){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+b2.message)}return t1},allocate:function(i,$,h){if($<0||h<=0)throw new k.ErrnoError(L2.EINVAL);if(!(i.flags&2097155))throw new k.ErrnoError(L2.EBADF);if(!k.isFile(i.node.mode)&&!k.isDir(node.mode))throw new k.ErrnoError(L2.ENODEV);if(!i.stream_ops.allocate)throw new k.ErrnoError(L2.EOPNOTSUPP);i.stream_ops.allocate(i,$,h)},mmap:function(i,$,h,u,O,e,Z0){if((i.flags&2097155)===1)throw new k.ErrnoError(L2.EACCES);if(!i.stream_ops.mmap)throw new k.ErrnoError(L2.ENODEV);return i.stream_ops.mmap(i,$,h,u,O,e,Z0)},msync:function(i,$,h,u,O){return!i||!i.stream_ops.msync?0:i.stream_ops.msync(i,$,h,u,O)},munmap:function(i){return 0},ioctl:function(i,$,h){if(!i.stream_ops.ioctl)throw new k.ErrnoError(L2.ENOTTY);return i.stream_ops.ioctl(i,$,h)},readFile:function(i,$){if($=$||{},$.flags=$.flags||"r",$.encoding=$.encoding||"binary",$.encoding!=="utf8"&&$.encoding!=="binary")throw new Error('Invalid encoding type "'+$.encoding+'"');var h,u=k.open(i,$.flags),O=k.stat(i),e=O.size,Z0=new Uint8Array(e);return k.read(u,Z0,0,e,0),$.encoding==="utf8"?h=Fs(Z0,0):$.encoding==="binary"&&(h=Z0),k.close(u),h},writeFile:function(i,$,h){if(h=h||{},h.flags=h.flags||"w",h.encoding=h.encoding||"utf8",h.encoding!=="utf8"&&h.encoding!=="binary")throw new Error('Invalid encoding type "'+h.encoding+'"');var u=k.open(i,h.flags,h.mode);if(h.encoding==="utf8"){var O=new Uint8Array(Ls($)+1),e=Dn($,O,0,O.length);k.write(u,O,0,e,0,h.canOwn)}else h.encoding==="binary"&&k.write(u,$,0,$.length,0,h.canOwn);k.close(u)},cwd:function(){return k.currentPath},chdir:function(i){var $=k.lookupPath(i,{follow:!0});if(!k.isDir($.node.mode))throw new k.ErrnoError(L2.ENOTDIR);var h=k.nodePermissions($.node,"x");if(h)throw new k.ErrnoError(h);k.currentPath=$.path},createDefaultDirectories:function(){k.mkdir("/tmp"),k.mkdir("/home"),k.mkdir("/home/web_user")},createDefaultDevices:function(){k.mkdir("/dev"),k.registerDevice(k.makedev(1,3),{read:function(){return 0},write:function(h,u,O,e,Z0){return e}}),k.mkdev("/dev/null",k.makedev(1,3)),Rn.register(k.makedev(5,0),Rn.default_tty_ops),Rn.register(k.makedev(6,0),Rn.default_tty1_ops),k.mkdev("/dev/tty",k.makedev(5,0)),k.mkdev("/dev/tty1",k.makedev(6,0));var i;if(typeof crypto<"u"){var $=new Uint8Array(1);i=function(){return crypto.getRandomValues($),$[0]}}else d?i=void 0:i=function(){return Math.random()*256|0};k.createDevice("/dev","random",i),k.createDevice("/dev","urandom",i),k.mkdir("/dev/shm"),k.mkdir("/dev/shm/tmp")},createStandardStreams:function(){A.stdin?k.createDevice("/dev","stdin",A.stdin):k.symlink("/dev/tty","/dev/stdin"),A.stdout?k.createDevice("/dev","stdout",null,A.stdout):k.symlink("/dev/tty","/dev/stdout"),A.stderr?k.createDevice("/dev","stderr",null,A.stderr):k.symlink("/dev/tty1","/dev/stderr");var i=k.open("/dev/stdin","r");D9[Sk>>2]=k.getPtrForStream(i),K4(i.fd===0,"invalid handle for stdin ("+i.fd+")");var $=k.open("/dev/stdout","w");D9[Dk>>2]=k.getPtrForStream($),K4($.fd===1,"invalid handle for stdout ("+$.fd+")");var h=k.open("/dev/stderr","w");D9[bk>>2]=k.getPtrForStream(h),K4(h.fd===2,"invalid handle for stderr ("+h.fd+")")},ensureErrnoError:function(){k.ErrnoError||(k.ErrnoError=function($,h){this.node=h,this.setErrno=function(u){this.errno=u;for(var O in L2)if(L2[O]===u){this.code=O;break}},this.setErrno($),this.message=vk[$]},k.ErrnoError.prototype=new Error,k.ErrnoError.prototype.constructor=k.ErrnoError,[L2.ENOENT].forEach(function(i){k.genericErrors[i]=new k.ErrnoError(i),k.genericErrors[i].stack=""}))},staticInit:function(){k.ensureErrnoError(),k.nameTable=new Array(4096),k.mount(w9,{},"/"),k.createDefaultDirectories(),k.createDefaultDevices()},init:function(i,$,h){K4(!k.init.initialized,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)"),k.init.initialized=!0,k.ensureErrnoError(),A.stdin=i||A.stdin,A.stdout=$||A.stdout,A.stderr=h||A.stderr,k.createStandardStreams()},quit:function(){k.init.initialized=!1;for(var i=0;ithis.length-1||Q5<0)){var p2=Q5%this.chunkSize,M5=Q5/this.chunkSize|0;return this.getter(M5)[p2]}},e.prototype.setDataGetter=function(Q5){this.getter=Q5},e.prototype.cacheLength=function(){var Q5=new XMLHttpRequest;if(Q5.open("HEAD",h,!1),Q5.send(null),!(Q5.status>=200&&Q5.status<300||Q5.status===304))throw new Error("Couldn't load "+h+". Status: "+Q5.status);var p2=Number(Q5.getResponseHeader("Content-length")),M5,b9=(M5=Q5.getResponseHeader("Accept-Ranges"))&&M5==="bytes",O9=1024*1024;b9||(O9=p2);var I4=function(K9,c8){if(K9>c8)throw new Error("invalid range ("+K9+", "+c8+") or no bytes requested!");if(c8>p2-1)throw new Error("only "+p2+" bytes available! programmer error!");var V4=new XMLHttpRequest;if(V4.open("GET",h,!1),p2!==O9&&V4.setRequestHeader("Range","bytes="+K9+"-"+c8),typeof Uint8Array<"u"&&(V4.responseType="arraybuffer"),V4.overrideMimeType&&V4.overrideMimeType("text/plain; charset=x-user-defined"),V4.send(null),!(V4.status>=200&&V4.status<300||V4.status===304))throw new Error("Couldn't load "+h+". Status: "+V4.status);return V4.response!==void 0?new Uint8Array(V4.response||[]):Nr(V4.responseText||"",!0)},Q8=this;Q8.setDataGetter(function(K9){var c8=K9*O9,V4=(K9+1)*O9-1;if(V4=Math.min(V4,p2-1),typeof Q8.chunks[K9]>"u"&&(Q8.chunks[K9]=I4(c8,V4)),typeof Q8.chunks[K9]>"u")throw new Error("doXHR failed!");return Q8.chunks[K9]}),this._length=p2,this._chunkSize=O9,this.lengthKnown=!0},typeof XMLHttpRequest<"u"){if(!b)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var Z0=new e;Object.defineProperty(Z0,"length",{get:function(){return this.lengthKnown||this.cacheLength(),this._length}}),Object.defineProperty(Z0,"chunkSize",{get:function(){return this.lengthKnown||this.cacheLength(),this._chunkSize}});var t1={isDevice:!1,contents:Z0}}else var t1={isDevice:!1,url:h};var b2=k.createFile(i,$,t1,u,O);t1.contents?b2.contents=t1.contents:t1.url&&(b2.contents=null,b2.url=t1.url),Object.defineProperty(b2,"usedBytes",{get:function(){return this.contents.length}});var s={},o1=Object.keys(b2.stream_ops);return o1.forEach(function(m){var Q5=b2.stream_ops[m];s[m]=function(){if(!k.forceLoadFile(b2))throw new k.ErrnoError(L2.EIO);return Q5.apply(null,arguments)}}),s.read=function(Q5,p2,M5,b9,O9){if(!k.forceLoadFile(b2))throw new k.ErrnoError(L2.EIO);var I4=Q5.node.contents;if(O9>=I4.length)return 0;var Q8=Math.min(I4.length-O9,b9);if(K4(Q8>=0),I4.slice)for(var K9=0;K9=0;u--){var O=i[u];O==="."?i.splice(u,1):O===".."?(i.splice(u,1),h++):h&&(i.splice(u,1),h--)}if($)for(;h--;h)i.unshift("..");return i},normalize:function(i){var $=i.charAt(0)==="/",h=i.substr(-1)==="/";return i=$9.normalizeArray(i.split("/").filter(function(u){return!!u}),!$).join("/"),!i&&!$&&(i="."),i&&h&&(i+="/"),($?"/":"")+i},dirname:function(i){var $=$9.splitPath(i),h=$[0],u=$[1];return!h&&!u?".":(u&&(u=u.substr(0,u.length-1)),h+u)},basename:function(i){if(i==="/")return"/";var $=i.lastIndexOf("/");return $===-1?i:i.substr($+1)},extname:function(i){return $9.splitPath(i)[3]},join:function(){var i=Array.prototype.slice.call(arguments,0);return $9.normalize(i.join("/"))},join2:function(i,$){return $9.normalize(i+"/"+$)},resolve:function(){for(var i="",$=!1,h=arguments.length-1;h>=-1&&!$;h--){var u=h>=0?arguments[h]:k.cwd();if(typeof u!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!u)return"";i=u+"/"+i,$=u.charAt(0)==="/"}return i=$9.normalizeArray(i.split("/").filter(function(O){return!!O}),!$).join("/"),($?"/":"")+i||"."},relative:function(i,$){i=$9.resolve(i).substr(1),$=$9.resolve($).substr(1);function h(s){for(var o1=0;o1=0&&s[m]==="";m--);return o1>m?[]:s.slice(o1,m-o1+1)}for(var u=h(i.split("/")),O=h($.split("/")),e=Math.min(u.length,O.length),Z0=e,t1=0;t10){var t1=Date.now(),b2=J1.mainLoop.queue.shift();if(b2.func(b2.arg),J1.mainLoop.remainingBlockers){var s=J1.mainLoop.remainingBlockers,o1=s%1==0?s-1:Math.floor(s);b2.counted?J1.mainLoop.remainingBlockers=o1:(o1=o1+.5,J1.mainLoop.remainingBlockers=(8*s+o1)/9)}console.log('main loop blocker "'+b2.name+'" took '+(Date.now()-t1)+" ms"),J1.mainLoop.updateStatus(),setTimeout(J1.mainLoop.runner,0);return}if(!(e1&&J1.mainLoop.currentFrameNumber%J1.mainLoop.timingValue!=0){J1.mainLoop.scheduler();return}J1.mainLoop.method==="timeout"&&A.ctx&&(A.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),J1.mainLoop.method=""),J1.mainLoop.runIter(function(){typeof u<"u"?x.dynCall("vi",i,[u]):x.dynCall("v",i)}),!(e0?UC(0,1e3/$):UC(1,1),J1.mainLoop.scheduler()),h)throw"SimulateInfiniteLoop"}var J1={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){J1.mainLoop.scheduler=null,J1.mainLoop.currentlyRunningMainloop++},resume:function(){J1.mainLoop.currentlyRunningMainloop++;var i=J1.mainLoop.timingMode,$=J1.mainLoop.timingValue,h=J1.mainLoop.func;J1.mainLoop.func=null,Ep(h,0,!1,J1.mainLoop.arg,!0),UC(i,$),J1.mainLoop.scheduler()},updateStatus:function(){if(A.setStatus){var i=A.statusMessage||"Please wait...",$=J1.mainLoop.remainingBlockers,h=J1.mainLoop.expectedBlockers;$?$"u"&&(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),A.noImageDecoding=!0);var i={};i.canHandle=function(e){return!A.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(e)},i.handle=function(e,Z0,t1,b2){var s=null;if(J1.hasBlobConstructor)try{s=new Blob([e],{type:J1.getMimetype(Z0)}),s.size!==e.length&&(s=new Blob([new Uint8Array(e).buffer],{type:J1.getMimetype(Z0)}))}catch(p2){x.warnOnce("Blob constructor present but fails: "+p2+"; falling back to blob builder")}if(!s){var o1=new J1.BlobBuilder;o1.append(new Uint8Array(e).buffer),s=o1.getBlob()}var m=J1.URLObject.createObjectURL(s),Q5=new Image;Q5.onload=function(){K4(Q5.complete,"Image "+Z0+" could not be decoded");var M5=document.createElement("canvas");M5.width=Q5.width,M5.height=Q5.height;var b9=M5.getContext("2d");b9.drawImage(Q5,0,0),A.preloadedImages[Z0]=M5,J1.URLObject.revokeObjectURL(m),t1&&t1(e)},Q5.onerror=function(M5){console.log("Image "+m+" could not be decoded"),b2&&b2()},Q5.src=m},A.preloadPlugins.push(i);var $={};$.canHandle=function(e){return!A.noAudioDecoding&&e.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},$.handle=function(e,Z0,t1,b2){var s=!1;function o1(b9){s||(s=!0,A.preloadedAudios[Z0]=b9,t1&&t1(e))}function m(){s||(s=!0,A.preloadedAudios[Z0]=new Audio,b2&&b2())}if(J1.hasBlobConstructor){try{var Q5=new Blob([e],{type:J1.getMimetype(Z0)})}catch{return m()}var p2=J1.URLObject.createObjectURL(Q5),M5=new Audio;M5.addEventListener("canplaythrough",function(){o1(M5)},!1),M5.onerror=function(O9){if(s)return;console.log("warning: browser could not fully decode audio "+Z0+", trying slower base64 approach");function I4(Q8){for(var K9="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",c8="=",V4="",Mi=0,Ti=0,hr=0;hr=6;){var K$=Mi>>Ti-6&63;Ti-=6,V4+=K9[K$]}return Ti==2?(V4+=K9[(Mi&3)<<4],V4+=c8+c8):Ti==4&&(V4+=K9[(Mi&15)<<2],V4+=c8),V4}M5.src="data:audio/x-"+Z0.substr(-3)+";base64,"+I4(e),o1(M5)},M5.src=p2,J1.safeSetTimeout(function(){o1(M5)},1e4)}else return m()},A.preloadPlugins.push($);var h=A.canvas;function u(){J1.pointerLock=document.pointerLockElement===h||document.mozPointerLockElement===h||document.webkitPointerLockElement===h||document.msPointerLockElement===h}h&&(h.requestPointerLock=h.requestPointerLock||h.mozRequestPointerLock||h.webkitRequestPointerLock||h.msRequestPointerLock||function(){},h.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},h.exitPointerLock=h.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",u,!1),document.addEventListener("mozpointerlockchange",u,!1),document.addEventListener("webkitpointerlockchange",u,!1),document.addEventListener("mspointerlockchange",u,!1),A.elementPointerLock&&h.addEventListener("click",function(O){!J1.pointerLock&&h.requestPointerLock&&(h.requestPointerLock(),O.preventDefault())},!1))},createContext:function(i,$,h,u){if($&&A.ctx&&i==A.canvas)return A.ctx;var O,e;if($){var Z0={antialias:!1,alpha:!1};if(u)for(var t1 in u)Z0[t1]=u[t1];e=GL.createContext(i,Z0),e&&(O=GL.getContext(e).GLctx),i.style.backgroundColor="black"}else O=i.getContext("2d");return O?(h&&($||K4(typeof GLctx>"u","cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),A.ctx=O,$&&GL.makeContextCurrent(e),A.useWebGL=$,J1.moduleContextCreatedCallbacks.forEach(function(b2){b2()}),J1.init()),O):null},destroyContext:function(i,$,h){},fullScreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullScreen:function(i,$,h){J1.lockPointer=i,J1.resizeCanvas=$,J1.vrDevice=h,typeof J1.lockPointer>"u"&&(J1.lockPointer=!0),typeof J1.resizeCanvas>"u"&&(J1.resizeCanvas=!1),typeof J1.vrDevice>"u"&&(J1.vrDevice=null);var u=A.canvas;function O(){J1.isFullScreen=!1;var Z0=u.parentNode;(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===Z0?(u.cancelFullScreen=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullScreen||document.msExitFullscreen||document.exitFullscreen||function(){},u.cancelFullScreen=u.cancelFullScreen.bind(document),J1.lockPointer&&u.requestPointerLock(),J1.isFullScreen=!0,J1.resizeCanvas&&J1.setFullScreenCanvasSize()):(Z0.parentNode.insertBefore(u,Z0),Z0.parentNode.removeChild(Z0),J1.resizeCanvas&&J1.setWindowedCanvasSize()),A.onFullScreen&&A.onFullScreen(J1.isFullScreen),J1.updateCanvasDimensions(u)}J1.fullScreenHandlersInstalled||(J1.fullScreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",O,!1),document.addEventListener("mozfullscreenchange",O,!1),document.addEventListener("webkitfullscreenchange",O,!1),document.addEventListener("MSFullscreenChange",O,!1));var e=document.createElement("div");u.parentNode.insertBefore(e,u),e.appendChild(u),e.requestFullScreen=e.requestFullScreen||e.mozRequestFullScreen||e.msRequestFullscreen||(e.webkitRequestFullScreen?function(){e.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),h?e.requestFullScreen({vrDisplay:h}):e.requestFullScreen()},nextRAF:0,fakeRequestAnimationFrame:function(i){var $=Date.now();if(J1.nextRAF===0)J1.nextRAF=$+1e3/60;else for(;$+2>=J1.nextRAF;)J1.nextRAF+=1e3/60;var h=Math.max(J1.nextRAF-$,0);setTimeout(i,h)},requestAnimationFrame:function($){typeof window>"u"?J1.fakeRequestAnimationFrame($):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||J1.fakeRequestAnimationFrame),window.requestAnimationFrame($))},safeCallback:function(i){return function(){if(!K0)return i.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){J1.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(J1.allowAsyncCallbacks=!0,J1.queuedAsyncCallbacks.length>0){var i=J1.queuedAsyncCallbacks;J1.queuedAsyncCallbacks=[],i.forEach(function($){$()})}},safeRequestAnimationFrame:function(i){return J1.requestAnimationFrame(function(){K0||(J1.allowAsyncCallbacks?i():J1.queuedAsyncCallbacks.push(i))})},safeSetTimeout:function(i,$){return A.noExitRuntime=!0,setTimeout(function(){K0||(J1.allowAsyncCallbacks?i():J1.queuedAsyncCallbacks.push(i))},$)},safeSetInterval:function(i,$){return A.noExitRuntime=!0,setInterval(function(){K0||J1.allowAsyncCallbacks&&i()},$)},getMimetype:function(i){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[i.substr(i.lastIndexOf(".")+1)]},getUserMedia:function(i){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(i)},getMovementX:function(i){return i.movementX||i.mozMovementX||i.webkitMovementX||0},getMovementY:function(i){return i.movementY||i.mozMovementY||i.webkitMovementY||0},getMouseWheelDelta:function(i){var $=0;switch(i.type){case"DOMMouseScroll":$=i.detail;break;case"mousewheel":$=i.wheelDelta;break;case"wheel":$=i.deltaY;break;default:throw"unrecognized mouse wheel event: "+i.type}return $},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(i){if(J1.pointerLock)i.type!="mousemove"&&"mozMovementX"in i?J1.mouseMovementX=J1.mouseMovementY=0:(J1.mouseMovementX=J1.getMovementX(i),J1.mouseMovementY=J1.getMovementY(i)),typeof SDL<"u"?(J1.mouseX=SDL.mouseX+J1.mouseMovementX,J1.mouseY=SDL.mouseY+J1.mouseMovementY):(J1.mouseX+=J1.mouseMovementX,J1.mouseY+=J1.mouseMovementY);else{var $=A.canvas.getBoundingClientRect(),h=A.canvas.width,u=A.canvas.height,O=typeof window.scrollX<"u"?window.scrollX:window.pageXOffset,e=typeof window.scrollY<"u"?window.scrollY:window.pageYOffset;if(i.type==="touchstart"||i.type==="touchend"||i.type==="touchmove"){var Z0=i.touch;if(Z0===void 0)return;var t1=Z0.pageX-(O+$.left),b2=Z0.pageY-(e+$.top);t1=t1*(h/$.width),b2=b2*(u/$.height);var s={x:t1,y:b2};if(i.type==="touchstart")J1.lastTouches[Z0.identifier]=s,J1.touches[Z0.identifier]=s;else if(i.type==="touchend"||i.type==="touchmove"){var o1=J1.touches[Z0.identifier];o1||(o1=s),J1.lastTouches[Z0.identifier]=o1,J1.touches[Z0.identifier]=s}return}var m=i.pageX-(O+$.left),Q5=i.pageY-(e+$.top);m=m*(h/$.width),Q5=Q5*(u/$.height),J1.mouseMovementX=m-J1.mouseX,J1.mouseMovementY=Q5-J1.mouseY,J1.mouseX=m,J1.mouseY=Q5}},xhrLoad:function(i,$,h){var u=new XMLHttpRequest;u.open("GET",i,!0),u.responseType="arraybuffer",u.onload=function(){u.status==200||u.status==0&&u.response?$(u.response):h()},u.onerror=h,u.send(null)},asyncLoad:function(i,$,h,u){J1.xhrLoad(i,function(O){K4(O,'Loading data file "'+i+'" failed (no arrayBuffer).'),$(new Uint8Array(O)),u||cr("al "+i)},function(O){if(h)h();else throw'Loading data file "'+i+'" failed.'}),u||_n("al "+i)},resizeListeners:[],updateResizeListeners:function(){var i=A.canvas;J1.resizeListeners.forEach(function($){$(i.width,i.height)})},setCanvasSize:function(i,$,h){var u=A.canvas;J1.updateCanvasDimensions(u,i,$),h||J1.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:function(){if(typeof SDL<"u"){var i=q$[SDL.screen+x.QUANTUM_SIZE*0>>2];i=i|8388608,D9[SDL.screen+x.QUANTUM_SIZE*0>>2]=i}J1.updateResizeListeners()},setWindowedCanvasSize:function(){if(typeof SDL<"u"){var i=q$[SDL.screen+x.QUANTUM_SIZE*0>>2];i=i&-8388609,D9[SDL.screen+x.QUANTUM_SIZE*0>>2]=i}J1.updateResizeListeners()},updateCanvasDimensions:function(i,$,h){$&&h?(i.widthNative=$,i.heightNative=h):($=i.widthNative,h=i.heightNative);var u=$,O=h;if(A.forcedAspectRatio&&A.forcedAspectRatio>0&&(u/O>2]=$),$}function Yk(){A.printErr("missing function: floor0_exportbundle"),Ps(-1)}if(Us=x.staticAlloc(4),D9[Us>>2]=0,A.requestFullScreen=function($,h,u){J1.requestFullScreen($,h,u)},A.requestAnimationFrame=function($){J1.requestAnimationFrame($)},A.setCanvasSize=function($,h,u){J1.setCanvasSize($,h,u)},A.pauseMainLoop=function(){J1.mainLoop.pause()},A.resumeMainLoop=function(){J1.mainLoop.resume()},A.getUserMedia=function(){J1.getUserMedia()},A.createContext=function($,h,u,O){return J1.createContext($,h,u,O)},k.staticInit(),G$.unshift(function(){!A.noFSInit&&!k.init.initialized&&k.init()}),Qh.push(function(){k.ignorePermissions=!1}),N$.push(function(){k.quit()}),A.FS_createFolder=k.createFolder,A.FS_createPath=k.createPath,A.FS_createDataFile=k.createDataFile,A.FS_createPreloadedFile=k.createPreloadedFile,A.FS_createLazyFile=k.createLazyFile,A.FS_createLink=k.createLink,A.FS_createDevice=k.createDevice,G$.unshift(function(){Rn.init()}),N$.push(function(){Rn.shutdown()}),d)var B7=void 0,mp=void 0;ph=Ei=x.alignMemory(Tr),F$=!0,L$=ph+LC,M$=_i=x.alignMemory(L$),K4(M$>0]=u[t>>0],u[p2+1>>0]=u[t+1>>0],u[p2+2>>0]=u[t+2>>0],u[p2+3>>0]=u[t+3>>0]}function Rb(t){t=t|0,u[p2>>0]=u[t>>0],u[p2+1>>0]=u[t+1>>0],u[p2+2>>0]=u[t+2>>0],u[p2+3>>0]=u[t+3>>0],u[p2+4>>0]=u[t+4>>0],u[p2+5>>0]=u[t+5>>0],u[p2+6>>0]=u[t+6>>0],u[p2+7>>0]=u[t+7>>0]}function wv(t){t=t|0,q6=t}function kv(){return q6|0}function Xm(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0;E=m,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,n=k9(256)|0,o=t+8|0,e[o>>2]=n,a=t+12|0,e[a>>2]=n,u[n>>0]=0,c=t+16|0,e[c>>2]=256}function vv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0;R=m,o=n>>3,a=t+12|0,B=e[a>>2]|0,v=(B|0)==0,!v&&(S=o<<3,w=n-S|0,y=t+8|0,D=e[y>>2]|0,Q=D+o|0,e[a>>2]=Q,_=t+4|0,e[_>>2]=w,e[t>>2]=o,c=8+(w<<2)|0,f=e[c>>2]|0,E=u[Q>>0]|0,I=E&255,C=I&f,p=C&255,u[Q>>0]=p)}function U2(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0;U0=m,f=o>>>0>32;do if(!f){if(E=e[t>>2]|0,_=t+16|0,t0=e[_>>2]|0,n0=t0+-4|0,Q0=(E|0)<(n0|0),a=t+12|0,c=e[a>>2]|0,Q0)G=c;else{if(x0=(c|0)==0,x0)return;if(H0=(t0|0)>2147483391,H0||(N0=t+8|0,V0=e[N0>>2]|0,I=t0+256|0,C=Ni(V0,I)|0,p=(C|0)==0,p))break;e[N0>>2]=C,B=e[_>>2]|0,v=B+256|0,e[_>>2]=v,S=e[t>>2]|0,w=C+S|0,e[a>>2]=w,G=w}y=8+(o<<2)|0,D=e[y>>2]|0,Q=D&n,F=t+4|0,R=e[F>>2]|0,L=R+o|0,M=Q<>0]|0,N=T&255,P=N|M,z=P&255,u[G>>0]=z,Y=(L|0)>7;do if(Y&&(J=e[F>>2]|0,W=8-J|0,e0=Q>>>W,H=e0&255,X=e[a>>2]|0,U=X+1|0,u[U>>0]=H,o0=(L|0)>15,o0&&(Z=e[F>>2]|0,V=16-Z|0,A0=Q>>>V,i0=A0&255,r0=e[a>>2]|0,K=r0+2|0,u[K>>0]=i0,c0=(L|0)>23,c0&&(s0=e[F>>2]|0,l0=24-s0|0,j=Q>>>l0,$0=j&255,g0=e[a>>2]|0,f0=g0+3|0,u[f0>>0]=$0,d0=(L|0)>31,d0))))if(y0=e[F>>2]|0,h0=(y0|0)==0,h0){D0=e[a>>2]|0,B0=D0+4|0,u[B0>>0]=0;break}else{E0=32-y0|0,C0=Q>>>E0,u0=C0&255,k0=e[a>>2]|0,J0=k0+4|0,u[J0>>0]=u0;break}while(!1);F0=(L|0)/8&-1,M0=e[t>>2]|0,G0=M0+F0|0,e[t>>2]=G0,p0=e[a>>2]|0,P0=p0+F0|0,e[a>>2]=P0,R0=L&7,e[F>>2]=R0;return}while(!1);S0=t+8|0,L0=e[S0>>2]|0,Y0=(L0|0)==0,Y0||I2(L0),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0}function eB(t){t=t|0;var n=0,o=0,a=0,c=0,f=0;f=m,n=t+8|0,o=e[n>>2]|0,a=(o|0)==0,a||I2(o),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0}function lt(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0;p=m,n=t+12|0,o=e[n>>2]|0,a=(o|0)==0,!a&&(c=t+8|0,f=e[c>>2]|0,e[n>>2]=f,E=f,u[E>>0]=0,e[t>>2]=0,I=t+4|0,e[I>>2]=0)}function tB(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0;if(k0=m,a=n>>>0>32,a)return o=-1,o|0;if(c=8+(n<<2)|0,D=e[c>>2]|0,z=t+4|0,V=e[z>>2]|0,g0=V+n|0,Q0=e[t>>2]|0,d0=t+16|0,y0=e[d0>>2]|0,h0=y0+-4|0,f=(Q0|0)<(h0|0),!f){if(E=g0+7|0,I=E>>3,C=y0-I|0,p=(Q0|0)>(C|0),p)return o=-1,o|0;if(B=(g0|0)==0,B)return o=0,o|0}return v=t+12|0,S=e[v>>2]|0,w=u[S>>0]|0,y=w&255,Q=y>>>V,_=(g0|0)>8,_?(F=S+1|0,R=u[F>>0]|0,L=R&255,M=8-V|0,T=L<16,N?(P=S+2|0,Y=u[P>>0]|0,t0=Y&255,J=16-V|0,W=t0<24,H?(X=S+3|0,U=u[X>>0]|0,o0=U&255,Z=24-V|0,A0=o0<>0]|0,s0=c0&255,l0=32-V|0,j=s0<>2]|0,v=a+n|0,S=e[t>>2]|0,w=t+16|0,y=e[w>>2]|0,D=v+7|0,Q=D>>3,_=y-Q|0,F=(S|0)>(_|0),F){B=t+12|0,e[B>>2]=0,e[t>>2]=y,R=1,e[o>>2]=R;return}else{c=(v|0)/8&-1,f=t+12|0,E=e[f>>2]|0,I=E+c|0,e[f>>2]=I,C=S+c|0,e[t>>2]=C,p=v&7,R=p,e[o>>2]=R;return}}function Z4(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0;S0=m,C=n>>>0>32;do if(C)a=t+16|0,c=e[a>>2]|0,I=t+4|0,f=t,E=I,B0=c;else{if(p=8+(n<<2)|0,L=e[p>>2]|0,e0=t+4|0,K=e[e0>>2]|0,h0=K+n|0,x0=e[t>>2]|0,F0=t+16|0,M0=e[F0>>2]|0,G0=M0+-4|0,B=(x0|0)<(G0|0),!B){if(v=h0+7|0,S=v>>3,w=M0-S|0,y=(x0|0)>(w|0),y){f=t,E=e0,B0=M0;break}if(D=(h0|0)==0,D)return o=0,o|0}return Q=t+12|0,_=e[Q>>2]|0,F=u[_>>0]|0,R=F&255,M=R>>>K,T=(h0|0)>8,T?(G=_+1|0,N=u[G>>0]|0,P=N&255,z=8-K|0,Y=P<16,J?(W=_+2|0,H=u[W>>0]|0,X=H&255,U=16-K|0,o0=X<24,V?(A0=_+3|0,n0=u[A0>>0]|0,i0=n0&255,r0=24-K|0,c0=i0<>0]|0,f0=g0&255,Q0=32-K|0,d0=f0<>2]=u0,k0=x0+C0|0,e[t>>2]=k0,J0=h0&7,e[e0>>2]=J0,o=E0,o|0}while(!1);return D0=t+12|0,e[D0>>2]=0,e[f>>2]=B0,e[E>>2]=1,o=-1,o|0}function p7(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0;return C=m,n=e[t>>2]|0,o=t+4|0,a=e[o>>2]|0,c=a+7|0,f=(c|0)/8&-1,E=f+n|0,E|0}function Vp(t){t=t|0;var n=0,o=0,a=0,c=0;return c=m,n=t+8|0,o=e[n>>2]|0,o|0}function Sv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0;if(T=m,c=(t|0)==0,c)return o=-1,o|0;se(t|0,0,360)|0,f=t+4|0,e[f>>2]=16384,S=t+24|0,e[S>>2]=1024,w=k9(16384)|0,e[t>>2]=w,y=k9(4096)|0,D=t+16|0,e[D>>2]=y,Q=k9(8192)|0,_=t+20|0,e[_>>2]=Q,F=(w|0)==0;do if(F)I=y;else{if(R=(y|0)==0,E=(Q|0)==0,L=E|R,L){I2(w),a=e[D>>2]|0,I=a;break}return v=t+336|0,e[v>>2]=n,o=0,o|0}while(!1);return C=(I|0)==0,C||I2(I),p=e[_>>2]|0,B=(p|0)==0,B||I2(p),se(t|0,0,360)|0,o=-1,o|0}function Dv(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0;return v=m,n=(t|0)==0,n||(o=e[t>>2]|0,a=(o|0)==0,a||I2(o),c=t+16|0,f=e[c>>2]|0,E=(f|0)==0,E||I2(f),I=t+20|0,C=e[I>>2]|0,p=(C|0)==0,p||I2(C),se(t|0,0,360)|0),0}function bv(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0;if(M0=m,n=(t|0)==0,!n){if(o=e[t>>2]|0,w=o+22|0,u[w>>0]=0,N=e[t>>2]|0,o0=N+23|0,u[o0>>0]=0,j=e[t>>2]|0,y0=j+24|0,u[y0>>0]=0,h0=e[t>>2]|0,E0=h0+25|0,u[E0>>0]=0,C0=t+4|0,a=e[C0>>2]|0,c=(a|0)>0,c)for(f=e[t>>2]|0,k0=0,B0=0;;)if(v=k0<<8,S=k0>>>24,y=f+B0|0,D=u[y>>0]|0,Q=D&255,_=Q^S,F=144+(_<<2)|0,R=e[F>>2]|0,L=R^v,M=B0+1|0,T=(M|0)<(a|0),T)k0=L,B0=M;else{u0=L;break}else u0=0;if(E=t+12|0,I=e[E>>2]|0,C=(I|0)>0,C)for(p=t+8|0,B=e[p>>2]|0,D0=u0,x0=0;;)if(G=D0<<8,P=D0>>>24,z=B+x0|0,Y=u[z>>0]|0,t0=Y&255,J=t0^P,W=144+(J<<2)|0,e0=e[W>>2]|0,H=e0^G,X=x0+1|0,U=(X|0)<(I|0),U)D0=H,x0=X;else{J0=H;break}else J0=u0;Z=J0&255,V=e[t>>2]|0,A0=V+22|0,u[A0>>0]=Z,n0=J0>>>8,i0=n0&255,r0=e[t>>2]|0,K=r0+23|0,u[K>>0]=i0,c0=J0>>>16,s0=c0&255,l0=e[t>>2]|0,$0=l0+24|0,u[$0>>0]=s0,g0=J0>>>24,f0=g0&255,Q0=e[t>>2]|0,d0=Q0+25|0,u[d0>>0]=f0}}function _v(t,n,o,a,c,f){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0;var E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0;if(u2=m,j=(t|0)==0,j||(k0=e[t>>2]|0,S0=(k0|0)==0,S0))return I=-1,I|0;if(v0=(n|0)==0,v0)return I=0,I|0;z0=(o|0)>0;e:do if(z0){for(f2=0,y2=0;;){if(y1=(n+(y2<<3)|0)+4|0,P1=e[y1>>2]|0,s2=(P1|0)<0,y=2147483647-P1|0,P=(f2|0)>(y|0),M2=s2|P,M2){I=-1;break}if(Z=P1+f2|0,n0=y2+1|0,i0=(n0|0)<(o|0),i0)f2=Z,y2=n0;else{n2=Z;break e}}return I|0}else n2=0;while(!1);r0=(n2|0)/255&-1,K=r0+1|0,c0=t+12|0,s0=e[c0>>2]|0,l0=(s0|0)==0,w=t+8|0,l0||($0=e[w>>2]|0,g0=$0-s0|0,e[w>>2]=g0,f0=($0|0)==(s0|0),f0||(Q0=k0+s0|0,Vo(k0|0,Q0|0,g0|0)|0),e[c0>>2]=0),d0=t+4|0,y0=e[d0>>2]|0,h0=y0-n2|0,E0=e[w>>2]|0,C0=(h0|0)>(E0|0);do if(!C0){if(u0=2147483647-n2|0,J0=(y0|0)>(u0|0),J0)return D0=e[t>>2]|0,B0=(D0|0)==0,B0||I2(D0),x0=t+16|0,F0=e[x0>>2]|0,M0=(F0|0)==0,M0||I2(F0),G0=t+20|0,p0=e[G0>>2]|0,P0=(p0|0)==0,P0||I2(p0),se(t|0,0,360)|0,I=-1,I|0;if(R0=y0+n2|0,L0=(R0|0)<2147482623,Y0=R0+1024|0,E=L0?Y0:R0,H0=e[t>>2]|0,N0=Ni(H0,E)|0,V0=(N0|0)==0,!V0){e[d0>>2]=E,e[t>>2]=N0;break}return T0=e[t>>2]|0,U0=(T0|0)==0,U0||I2(T0),r1=t+16|0,O0=e[r1>>2]|0,e1=(O0|0)==0,e1||I2(O0),i1=t+20|0,c1=e[i1>>2]|0,$1=(c1|0)==0,$1||I2(c1),se(t|0,0,360)|0,I=-1,I|0}while(!1);if(f1=Rv(t,K)|0,g1=(f1|0)==0,!g1)return I=-1,I|0;if(z0)for(p=e[w>>2]|0,p1=p,S2=0;d1=e[t>>2]|0,B1=d1+p1|0,Q1=n+(S2<<3)|0,D1=e[Q1>>2]|0,_1=(n+(S2<<3)|0)+4|0,k1=e[_1>>2]|0,r4(B1|0,D1|0,k1|0)|0,x1=e[_1>>2]|0,L1=e[w>>2]|0,N1=L1+x1|0,e[w>>2]=N1,w1=S2+1|0,e2=(w1|0)==(o|0),!e2;)p1=N1,S2=w1;if(l1=(n2|0)>254,s1=t+28|0,a1=e[s1>>2]|0,n1=t+16|0,A1=e[n1>>2]|0,l1){for(I1=t+352|0,h1=t+20|0,E1=e[h1>>2]|0,u1=(r0|0)>1,C2=0;U1=a1+C2|0,Z1=A1+(U1<<2)|0,e[Z1>>2]=255,G1=I1,v1=G1,K1=e[v1>>2]|0,H1=G1+4|0,q1=H1,Y1=e[q1>>2]|0,j1=E1+(U1<<3)|0,r2=j1,W1=r2,e[W1>>2]=K1,O1=r2+4|0,l2=O1,e[l2>>2]=Y1,z1=C2+1|0,h2=(z1|0)<(r0|0),h2;)C2=z1;_2=u1?r0:1,B=I1,a2=E1,w2=_2}else C=t+20|0,v=e[C>>2]|0,S=t+352|0,B=S,a2=v,w2=0;return d2=(n2|0)%255&-1,A2=a1+w2|0,V1=A1+(A2<<2)|0,e[V1>>2]=d2,g2=a2+(A2<<3)|0,t2=g2,$2=t2,e[$2>>2]=c,i2=t2+4|0,o2=i2,e[o2>>2]=f,X1=B,D=X1,e[D>>2]=c,Q=X1+4|0,_=Q,e[_>>2]=f,F=A1+(a1<<2)|0,R=e[F>>2]|0,L=R|256,e[F>>2]=L,M=a1+K|0,e[s1>>2]=M,T=t+344|0,G=T,N=G,z=e[N>>2]|0,Y=G+4|0,t0=Y,J=e[t0>>2]|0,W=Ys(z|0,J|0,1,0)|0,e0=q6,H=T,X=H,e[X>>2]=W,U=H+4|0,o0=U,e[o0>>2]=e0,V=(a|0)==0,V?(I=0,I|0):(A0=t+328|0,e[A0>>2]=1,I=0,I|0)}function YC(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0;return F=m,m=m+16|0,Q=F,o=e[n>>2]|0,e[Q>>2]=o,a=n+4|0,C=e[a>>2]|0,p=Q+4|0,e[p>>2]=C,B=n+12|0,v=e[B>>2]|0,S=n+16|0,w=S,y=w,D=e[y>>2]|0,c=w+4|0,f=c,E=e[f>>2]|0,I=_v(t,Q,1,v,D,E)|0,m=F,I|0}function zp(t,n){t=t|0,n=n|0;var o=0,a=0,c=0;return c=m,o=Wp(t,n,1,4096)|0,o|0}function Zp(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0;return F=m,f=(t|0)==0,f||(E=e[t>>2]|0,I=(E|0)==0,I)?(o=0,o|0):(C=t+328|0,p=e[C>>2]|0,B=(p|0)==0,a=t+28|0,c=e[a>>2]|0,Q=(c|0)==0,B?Q?D=0:(v=t+332|0,S=e[v>>2]|0,w=(S|0)==0,w?_=7:D=0):Q?D=0:_=7,(_|0)==7&&(D=1),y=Wp(t,n,D,4096)|0,o=y,o|0)}function Rv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0;return $0=m,c=t+24|0,f=e[c>>2]|0,Q=f-n|0,Y=t+28|0,A0=e[Y>>2]|0,r0=(Q|0)>(A0|0),r0?(a=0,a|0):(K=2147483647-n|0,c0=(f|0)>(K|0),c0?(s0=e[t>>2]|0,l0=(s0|0)==0,l0||I2(s0),E=t+16|0,I=e[E>>2]|0,C=(I|0)==0,C||I2(I),p=t+20|0,B=e[p>>2]|0,v=(B|0)==0,v||I2(B),se(t|0,0,360)|0,a=-1,a|0):(S=f+n|0,w=(S|0)<2147483615,y=S+32|0,o=w?y:S,D=t+16|0,_=e[D>>2]|0,F=o<<2,R=Ni(_,F)|0,L=(R|0)==0,L?(M=e[t>>2]|0,T=(M|0)==0,T||I2(M),G=e[D>>2]|0,N=(G|0)==0,N||I2(G),P=t+20|0,z=e[P>>2]|0,t0=(z|0)==0,t0||I2(z),se(t|0,0,360)|0,a=-1,a|0):(e[D>>2]=R,J=t+20|0,W=e[J>>2]|0,e0=o<<3,H=Ni(W,e0)|0,X=(H|0)==0,X?(U=e[t>>2]|0,o0=(U|0)==0,o0||I2(U),Z=e[D>>2]|0,V=(Z|0)==0,V||I2(Z),n0=e[J>>2]|0,i0=(n0|0)==0,i0||I2(n0),se(t|0,0,360)|0,a=-1,a|0):(e[J>>2]=H,e[c>>2]=o,a=0,a|0))))}function Wp(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0;if(y5=m,Q=t+28|0,_=e[Q>>2]|0,c1=(_|0)>255,c=c1?255:_,h1=(t|0)==0,h1||(x1=e[t>>2]|0,q1=(x1|0)==0,A2=(c|0)==0,Q3=A2|q1,Q3))return f=0,f|0;e2=t+332|0,q2=e[e2>>2]|0,z2=(q2|0)==0;e:do if(z2)for(d0=t+16|0,$3=0;;){if(F0=($3|0)<(c|0),!F0){I=o,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,q5=$3,P5=14;break e}if(V0=e[d0>>2]|0,O0=V0+($3<<2)|0,e1=e[O0>>2]|0,v0=e1&255,i1=(v0|0)==255,$1=$3+1|0,i1)$3=$1;else{I=o,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,q5=$1,P5=14;break}}else if(F=(c|0)>0,F){for(J=t+16|0,i0=t+20|0,C5=0,k5=-1,c5=-1,o5=-1,Z2=-1,c2=-1,B5=-1,e5=-1,n5=-1,j5=0,_3=0,C3=0;;){if(f1=(C5|0)>(a|0),g1=(j5|0)>3,M3=f1&g1,M3){E=1,G5=k5,D5=c5,H2=o5,I5=Z2,A5=c2,l5=B5,m5=e5,M1=n5,l3=C3;break}if(l1=e[J>>2]|0,s1=l1+(C3<<2)|0,a1=e[s1>>2]|0,n1=a1&255,A1=n1+C5|0,z0=(n1|0)==255,z0?(g5=k5,Y2=c5,h5=o5,t5=Z2,b5=c2,W2=B5,a5=e5,F2=n5,j3=0,T3=_3):(I1=e[i0>>2]|0,E1=I1+(C3<<3)|0,u1=E1,d1=u1,B1=e[d1>>2]|0,p1=u1+4|0,Q1=p1,D1=e[Q1>>2]|0,_1=_3+1|0,y1=B1&255,k1=Js(B1|0,D1|0,8)|0,L1=q6,N1=k1&255,w1=Js(B1|0,D1|0,16)|0,U1=q6,Z1=w1&255,G1=Js(B1|0,D1|0,24)|0,v1=q6,K1=G1&255,P1=D1&255,H1=Js(B1|0,D1|0,40)|0,Y1=q6,j1=H1&255,r2=Js(B1|0,D1|0,48)|0,W1=q6,O1=r2&255,l2=Js(B1|0,D1|0,56)|0,z1=q6,h2=l2&255,g5=y1,Y2=Z1,h5=K1,t5=P1,b5=j1,W2=O1,a5=h2,F2=N1,j3=_1,T3=_1),s2=C3+1|0,d2=(s2|0)<(c|0),d2)C5=A1,k5=g5,c5=Y2,o5=h5,Z2=t5,c2=b5,B5=W2,e5=a5,n5=F2,j5=j3,_3=T3,C3=s2;else{E=o,G5=g5,D5=Y2,H2=h5,I5=t5,A5=b5,l5=W2,m5=a5,M1=F2,l3=s2;break}}V1=(l3|0)==255,V1?(s3=G5,E3=D5,F5=H2,V5=I5,y3=A5,h3=l5,m3=m5,q3=M1,N5=255):(I=E,p5=G5,H5=D5,X5=H2,d5=I5,f3=A5,g3=l5,K5=m5,e3=M1,q5=l3,P5=14)}else I=o,p5=-1,H5=-1,X5=-1,d5=-1,f3=-1,g3=-1,K5=-1,e3=-1,q5=0,P5=14;while(!1);if((P5|0)==14){if(g2=(I|0)==0,g2)return f=0,f|0;s3=p5,E3=H5,F5=X5,V5=d5,y3=f3,h3=g3,m3=K5,q3=e3,N5=q5}if(a2=t+40|0,u[a2>>0]=79,u[a2+1>>0]=103,u[a2+2>>0]=103,u[a2+3>>0]=83,t2=t+44|0,u[t2>>0]=0,$2=t+45|0,u[$2>>0]=0,i2=t+16|0,o2=e[i2>>2]|0,X1=e[o2>>2]|0,n2=X1>>>8,v=n2&1,f2=v^1,y2=f2|2,C=z2?y2:f2,a3=C&255,u[$2>>0]=a3,S2=t+328|0,w2=e[S2>>2]|0,C2=(w2|0)!=0,M2=(_|0)==(N5|0),Z5=C2&M2,Z5&&(p=z2?y2:f2,_2=p|4,G2=_2&255,u[$2>>0]=G2),e[e2>>2]=1,u2=t+46|0,u[u2>>0]=s3,K2=t+47|0,u[K2>>0]=q3,N2=t+48|0,u[N2>>0]=E3,T2=t+49|0,u[T2>>0]=F5,O2=t+50|0,u[O2>>0]=V5,V2=t+51|0,u[V2>>0]=y3,s5=t+52|0,u[s5>>0]=h3,P2=t+53|0,u[P2>>0]=m3,T1=t+336|0,j2=e[T1>>2]|0,R5=j2&255,X2=t+54|0,u[X2>>0]=R5,v5=j2>>>8,f5=v5&255,w5=t+55|0,u[w5>>0]=f5,O5=j2>>>16,$5=O5&255,k2=t+56|0,u[k2>>0]=$5,E5=j2>>>24,r5=E5&255,x2=t+57|0,u[x2>>0]=r5,R2=t+340|0,m2=e[R2>>2]|0,R=(m2|0)==-1,R?(e[R2>>2]=0,M=0):M=m2,L=M+1|0,e[R2>>2]=L,T=M&255,G=t+58|0,u[G>>0]=T,N=M>>>8,P=N&255,z=t+59|0,u[z>>0]=P,Y=M>>>16,t0=Y&255,W=t+60|0,u[W>>0]=t0,e0=M>>>24,H=e0&255,X=t+61|0,u[X>>0]=H,U=t+62|0,o0=N5&255,Z=t+66|0,u[U>>0]=0,u[U+1>>0]=0,u[U+2>>0]=0,u[U+3>>0]=0,u[Z>>0]=o0,V=(N5|0)>0,V){if(A0=e[o2>>2]|0,n0=A0&255,r0=t+67|0,u[r0>>0]=n0,K=A0&255,S5=(N5|0)==1,S5)B=K;else for(s0=1,y0=K;;)if(S=e[i2>>2]|0,c0=S+(s0<<2)|0,l0=e[c0>>2]|0,j=l0&255,$0=s0+27|0,g0=(t+40|0)+$0|0,u[g0>>0]=j,f0=l0&255,Q0=f0+y0|0,h0=s0+1|0,u5=(h0|0)==(N5|0),u5){B=Q0;break}else s0=h0,y0=Q0;w=e[t>>2]|0,y=e[Q>>2]|0,D=e[i2>>2]|0,B0=w,p0=y,R0=D,x5=B}else B0=x1,p0=_,R0=o2,x5=0;return e[n>>2]=a2,E0=N5+27|0,C0=t+324|0,e[C0>>2]=E0,u0=n+4|0,e[u0>>2]=E0,k0=t+12|0,J0=e[k0>>2]|0,D0=B0+J0|0,x0=n+8|0,e[x0>>2]=D0,M0=n+12|0,e[M0>>2]=x5,G0=p0-N5|0,e[Q>>2]=G0,P0=R0+(N5<<2)|0,S0=G0<<2,Vo(R0|0,P0|0,S0|0)|0,L0=t+20|0,Y0=e[L0>>2]|0,H0=Y0+(N5<<3)|0,N0=e[Q>>2]|0,T0=N0<<3,Vo(Y0|0,H0|0,T0|0)|0,U0=e[k0>>2]|0,r1=U0+x5|0,e[k0>>2]=r1,bv(n),f=1,f|0}function xv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0;return O0=m,a=t+104|0,c=e[a>>2]|0,D=t+88|0,z=c+12|0,e[D>>2]=0,e[D+4>>2]=0,e[D+8>>2]=0,e[D+12>>2]=0,V=e[z>>2]|0,lt(V),g0=c+16|0,D0=e[g0>>2]|0,lt(D0),Y0=c+20|0,T0=e[Y0>>2]|0,lt(T0),U0=c+24|0,f=e[U0>>2]|0,lt(f),E=c+28|0,I=e[E>>2]|0,lt(I),C=c+32|0,p=e[C>>2]|0,lt(p),B=c+36|0,v=e[B>>2]|0,lt(v),S=c+40|0,w=e[S>>2]|0,lt(w),y=c+44|0,Q=e[y>>2]|0,lt(Q),_=c+48|0,F=e[_>>2]|0,lt(F),R=c+52|0,L=e[R>>2]|0,lt(L),M=c+56|0,T=e[M>>2]|0,lt(T),G=c+60|0,N=e[G>>2]|0,lt(N),P=c+64|0,Y=e[P>>2]|0,lt(Y),t0=c+68|0,J=e[t0>>2]|0,lt(J),W=e[6416]|0,e0=W+12|0,H=e[e0>>2]|0,X=DQ[H&1](t)|0,U=(X|0)==0,U?(o0=(n|0)==0,o0?(o=0,o|0):(Z=_h(t)|0,A0=(Z|0)==0,A0?(n0=t+4|0,i0=Vp(n0)|0,e[n>>2]=i0,r0=p7(n0)|0,K=n+4|0,e[K>>2]=r0,c0=n+8|0,e[c0>>2]=0,s0=t+44|0,l0=e[s0>>2]|0,j=n+12|0,e[j>>2]=l0,$0=t+48|0,f0=$0,Q0=f0,d0=e[Q0>>2]|0,y0=f0+4|0,h0=y0,E0=e[h0>>2]|0,C0=n+16|0,u0=C0,k0=u0,e[k0>>2]=d0,J0=u0+4|0,B0=J0,e[B0>>2]=E0,x0=t+56|0,F0=x0,M0=F0,G0=e[M0>>2]|0,p0=F0+4|0,P0=p0,R0=e[P0>>2]|0,S0=n+24|0,L0=S0,H0=L0,e[H0>>2]=G0,N0=L0+4|0,V0=N0,e[V0>>2]=R0,o=0,o|0):(o=-131,o|0))):(o=X,o|0)}function Fv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0;d0=m,o=t+28|0,a=e[o>>2]|0,f0=n,y0=f0+48|0;do e[f0>>2]=0,f0=f0+4|0;while((f0|0)<(y0|0));y=a+3372|0,P=e[y>>2]|0,Z=(P|0)>0,Z&&(s0=t+8|0,l0=e[s0>>2]|0,j=e[a>>2]|0,$0=j>>1,g0=a+4|0,c=e[g0>>2]|0,f=(c|0)/(j|0)&-1,E=n+24|0,e[E>>2]=f,e[n>>2]=1,I=a+3360|0,C=e[I>>2]|0,p=+(C|0),B=+($0|0),v=p*B,S=+(l0|0),w=v/S,D=+Gi(w),Q=~~D,_=n+12|0,e[_>>2]=Q,F=a+3364|0,R=e[F>>2]|0,L=+(R|0),M=L*B,T=M/S,G=+Gi(T),N=~~G,z=n+16|0,e[z>>2]=N,Y=a+3368|0,t0=e[Y>>2]|0,J=+(t0|0),W=J*B,e0=W/S,H=+Gi(e0),X=~~H,U=n+20|0,e[U>>2]=X,o0=n+32|0,o1[o0>>3]=7,V=+(P|0),A0=a+3376|0,n0=+o1[A0>>3],i0=V*n0,r0=~~i0,K=n+8|0,e[K>>2]=r0,c0=n+4|0,e[c0>>2]=r0)}function Lv(t){t=t|0;var n=0,o=0,a=0,c=0;a=m,n=t,c=n+48|0;do e[n>>2]=0,n=n+4|0;while((n|0)<(c|0))}function _h(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0;return B=m,o=t+64|0,a=e[o>>2]|0,c=a+104|0,f=e[c>>2]|0,E=f+80|0,I=e[E>>2]|0,C=(I|0)!=0,n=C&1,n|0}function Mv(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,B6=0,z3=0,a6=0,p6=0,_6=0,Y6=0,m6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0;if(S6=m,p=t+104|0,B=e[p>>2]|0,z1=t+64|0,k2=e[z1>>2]|0,D5=k2+104|0,c2=e[D5>>2]|0,F2=k2+4|0,F5=e[F2>>2]|0,_3=F5+28|0,L5=e[_3>>2]|0,v=c2+112|0,T=+o1[v>>3],X=+Gi(T),s0=~~X,C0=(B+12|0)+(s0<<2)|0,P0=e[C0>>2]|0,O0=p7(P0)|0,n1=O0<<3,D1=t+28|0,v1=e[D1>>2]|0,h2=(v1|0)==0,X1=c2+96|0,u2=e[X1>>2]|0,h2?(R5=c2+100|0,v5=e[R5>>2]|0,U=u2,y0=R5,u0=v5):(z2=c2+104|0,f5=e[z2>>2]|0,w5=c2+100|0,O5=e[w5>>2]|0,$5=i5(f5,u2)|0,E5=i5(f5,O5)|0,U=$5,y0=w5,u0=E5),r5=L5+(v1<<2)|0,x2=e[r5>>2]|0,R2=x2>>1,m2=L5+3372|0,C5=e[m2>>2]|0,x5=+(C5|0),u5=L5+3376|0,S5=+o1[u5>>3],G5=x5*S5,H2=~~G5,I5=c2+80|0,A5=e[I5>>2]|0,l5=(A5|0)==0,m5=c2+120|0,l5)return M1=e[m5>>2]|0,k5=(M1|0)==0,k5?(e[m5>>2]=t,o=0,o|0):(o=-1,o|0);if(e[m5>>2]=t,c5=c2+92|0,o5=e[c5>>2]|0,Z2=(o5|0)>0,Z2){h2?a5=o5:(B5=c2+104|0,e5=e[B5>>2]|0,n5=i5(e5,o5)|0,a5=n5),g5=L5+3384|0,Y2=+o1[g5>>3],h5=15/Y2,t5=c2+84|0,b5=e[t5>>2]|0,W2=n1-a5|0,p5=b5+W2|0,H5=(p5|0)>(H2|0);e:do if(H5)if(X5=(s0|0)>0,d5=(n1|0)>(a5|0),v6=d5&X5,v6)if(f3=n1-a5|0,g3=f3+b5|0,K5=(g3|0)>(H2|0),K5)for(N3=s0;;){if(e3=N3+-1|0,s3=(B+12|0)+(e3<<2)|0,E3=e[s3>>2]|0,V5=p7(E3)|0,y3=V5<<3,h3=(N3|0)>1,m3=(y3|0)>(a5|0),k6=m3&h3,!k6){z5=e3;break e}if(I=e[t5>>2]|0,q3=y3-a5|0,M3=q3+I|0,Z5=(M3|0)>(H2|0),Z5)N3=e3;else{z5=e3;break}}else z5=s0;else z5=s0;else if(Q3=(p5|0)<(H2|0),Q3)if(j5=s0+1|0,j3=(j5|0)<15,T3=(n1|0)<(a5|0),z3=T3&j3,z3)if(a3=n1-a5|0,$3=a3+b5|0,l3=($3|0)<(H2|0),l3)for(q5=j5;;){if(C3=(B+12|0)+(q5<<2)|0,N5=e[C3>>2]|0,P5=p7(N5)|0,y5=P5<<3,G3=q5+1|0,t6=(G3|0)<15,t3=(y5|0)<(a5|0),B6=t3&t6,!B6){z5=q5;break e}if(E=e[t5>>2]|0,o3=y5-a5|0,R3=o3+E|0,f6=(R3|0)<(H2|0),f6)q5=G3;else{z5=q5;break}}else z5=s0;else z5=s0;else z5=s0;while(!1);B3=+(z5|0),w3=+o1[v>>3],p3=B3-w3,X3=+Gi(p3),V3=+(R2|0),S=X3/V3,w=F5+8|0,y=e[w>>2]|0,D=+(y|0),Q=D*S,_=-h5,F=Q<_,m6=F?_:Q,R=m6>h5,v3=R?h5:m6,L=v3/D,M=L*V3,G=M+w3,o1[v>>3]=G,N=+Gi(G),P=~~N,z=(B+12|0)+(P<<2)|0,Y=e[z>>2]|0,t0=p7(Y)|0,J=t0<<3,C=e[X1>>2]|0,W=C,k3=P,Z3=J}else W=u2,k3=s0,Z3=n1;e0=(W|0)>0,H=(Z3|0)<(U|0),a6=H&e0;e:do if(a6)if(o0=c2+88|0,Z=e[o0>>2]|0,V=Z3-U|0,A0=V+Z|0,n0=(A0|0)<0,n0)for(c3=k3,W3=Z3;;){if(i0=c3+1|0,r0=(c3|0)>13,r0){U3=i0,u6=W3;break e}if(K=(B+12|0)+(i0<<2)|0,c0=e[K>>2]|0,l0=p7(c0)|0,j=l0<<3,$0=e[o0>>2]|0,g0=j-U|0,f0=g0+$0|0,Q0=(f0|0)<0,Q0)c3=i0,W3=j;else{U3=i0,u6=j;break}}else U3=k3,u6=Z3;else U3=k3,u6=Z3;while(!1);d0=e[y0>>2]|0,h0=(d0|0)>0,E0=(u6|0)>(u0|0),p6=E0&h0;e:do if(p6)if(k0=c2+88|0,J0=e[k0>>2]|0,D0=u6-u0|0,B0=D0+J0|0,x0=e[m2>>2]|0,F0=(B0|0)>(x0|0),F0)for(o6=U3,O3=u6;;){if(M0=o6+-1|0,G0=(o6|0)<1,G0){u3=M0,S3=O3;break e}if(p0=(B+12|0)+(M0<<2)|0,R0=e[p0>>2]|0,S0=p7(R0)|0,L0=S0<<3,Y0=e[k0>>2]|0,H0=L0-u0|0,N0=H0+Y0|0,V0=e[m2>>2]|0,T0=(N0|0)>(V0|0),T0)o6=M0,O3=L0;else{u3=M0,S3=L0;break}}else u3=U3,S3=u6;else u3=U3,S3=u6;while(!1);if(U0=(u3|0)<0,U0)r1=e[m2>>2]|0,e1=c2+88|0,v0=e[e1>>2]|0,i1=r1+u0|0,c1=i1-v0|0,$1=(c1|0)/8&-1,f1=c2+124|0,e[f1>>2]=0,g1=B+12|0,l1=e[g1>>2]|0,s1=p7(l1)|0,a1=(s1|0)>($1|0),a1?(A1=e[g1>>2]|0,z0=$1<<3,vv(A1,z0),I1=e[g1>>2]|0,h1=p7(I1)|0,E1=h1<<3,P3=E1):P3=S3;else{if(u1=c2+88|0,d1=e[u1>>2]|0,B1=U+7|0,p1=B1-d1|0,Q1=(p1|0)/8&-1,_1=(u3|0)>14,c=_1?14:u3,y1=c2+124|0,e[y1>>2]=c,k1=(B+12|0)+(c<<2)|0,x1=e[k1>>2]|0,L1=p7(x1)|0,N1=Q1-L1|0,w1=(N1|0)>0,U1=e[k1>>2]|0,w1)for(G1=U1,w6=N1;;)if(Z1=w6+-1|0,U2(G1,0,8),K1=(w6|0)>1,P1=e[k1>>2]|0,K1)G1=P1,w6=Z1;else{f=P1;break}else f=U1;H1=p7(f)|0,q1=H1<<3,P3=q1}Y1=e[X1>>2]|0,j1=(Y1|0)>0,j1?Y3=37:(r2=e[y0>>2]|0,W1=(r2|0)>0,W1&&(Y3=37));do if((Y3|0)==37){if(O1=(u0|0)>0,l2=(P3|0)>(u0|0),_6=O1&l2,_6){s2=P3-u0|0,d2=c2+88|0,A2=e[d2>>2]|0,V1=s2+A2|0,e[d2>>2]=V1;break}if(g2=(U|0)>0,a2=(P3|0)<(U|0),Y6=g2&a2,Y6){t2=P3-U|0,$2=c2+88|0,i2=e[$2>>2]|0,o2=t2+i2|0,e[$2>>2]=o2;break}if(n2=c2+88|0,f2=e[n2>>2]|0,e2=(f2|0)>(H2|0),e2)if(O1){y2=P3-u0|0,S2=f2+y2|0,w2=(S2|0)<(H2|0),n=w2?H2:S2,e[n2>>2]=n;break}else{e[n2>>2]=H2;break}else if(g2){C2=P3-U|0,M2=f2+C2|0,_2=(M2|0)>(H2|0),a=_2?H2:M2,e[n2>>2]=a;break}else{e[n2>>2]=H2;break}}while(!1);return G2=e[c5>>2]|0,K2=(G2|0)>0,K2?(N2=e[D1>>2]|0,q2=(N2|0)==0,q2?P2=G2:(T2=c2+104|0,O2=e[T2>>2]|0,V2=i5(O2,G2)|0,P2=V2),s5=P3-P2|0,T1=c2+84|0,j2=e[T1>>2]|0,X2=s5+j2|0,e[T1>>2]=X2,o=0,o|0):(o=0,o|0)}function jp(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0;return u0=m,a=t+104|0,c=e[a>>2]|0,D=c+120|0,z=e[D>>2]|0,V=(z|0)==0,V?(o=0,o|0):(g0=(n|0)==0,g0||(f0=z+104|0,Q0=e[f0>>2]|0,d0=z+64|0,y0=e[d0>>2]|0,f=y0+104|0,E=e[f>>2]|0,I=E+80|0,C=e[I>>2]|0,E0=(C|0)==0,E0?h0=7:(p=c+124|0,B=e[p>>2]|0,h0=B),v=(Q0+12|0)+(h0<<2)|0,S=e[v>>2]|0,w=Vp(S)|0,e[n>>2]=w,y=e[v>>2]|0,Q=p7(y)|0,_=n+4|0,e[_>>2]=Q,F=n+8|0,e[F>>2]=0,R=z+44|0,L=e[R>>2]|0,M=n+12|0,e[M>>2]=L,T=z+48|0,G=T,N=G,P=e[N>>2]|0,Y=G+4|0,t0=Y,J=e[t0>>2]|0,W=n+16|0,e0=W,H=e0,e[H>>2]=P,X=e0+4|0,U=X,e[U>>2]=J,o0=z+56|0,Z=o0,A0=Z,n0=e[A0>>2]|0,i0=Z+4|0,r0=i0,K=e[r0>>2]|0,c0=n+24|0,s0=c0,l0=s0,e[l0>>2]=n0,j=s0+4|0,$0=j,e[$0>>2]=K),e[D>>2]=0,o=1,o|0)}function Tv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0;M=m,R=n,T=R+112|0;do e[R>>2]=0,R=R+4|0;while((R|0)<(T|0));if(o=n+64|0,e[o>>2]=t,a=n+76|0,e[a>>2]=0,p=n+68|0,e[p>>2]=0,B=e[t>>2]|0,v=(B|0)==0,v)return 0;for(S=i4(1,72)|0,w=n+104|0,e[w>>2]=S,y=S+4|0,s[y>>2]=-9999,D=n+4|0,Q=S+12|0,c=S+40|0,F=0;;)if(f=(F|0)==7,f){e[c>>2]=D,Xm(D),F=8;continue}else{if(E=i4(1,20)|0,I=Q+(F<<2)|0,e[I>>2]=E,Xm(E),C=F+1|0,_=(C|0)==15,_)break;F=C;continue}return 0}function O7(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0;return Y=m,o=n+7|0,a=o&-8,y=t+72|0,R=e[y>>2]|0,L=R+a|0,M=t+76|0,T=e[M>>2]|0,G=(L|0)>(T|0),N=t+68|0,P=e[N>>2]|0,G?(c=(P|0)==0,c||(f=P,E=k9(8)|0,I=t+80|0,C=e[I>>2]|0,p=C+R|0,e[I>>2]=p,B=t+84|0,v=e[B>>2]|0,S=E+4|0,e[S>>2]=v,e[E>>2]=f,e[B>>2]=E),e[M>>2]=a,w=k9(a)|0,e[N>>2]=w,e[y>>2]=0,Q=w,_=0,D=Q+_|0,F=_+a|0,e[y>>2]=F,D|0):(Q=P,_=R,D=Q+_|0,F=_+a|0,e[y>>2]=F,D|0)}function Gv(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0;if(Z=m,a=t+104|0,c=e[a>>2]|0,D=t+84|0,N=e[D>>2]|0,P=(N|0)==0,!P)for(X=N;z=X+4|0,Y=e[z>>2]|0,t0=e[X>>2]|0,I2(t0),I2(X),J=(Y|0)==0,!J;)X=Y;if(W=t+80|0,f=e[W>>2]|0,E=(f|0)==0,n=t+68|0,o=e[n>>2]|0,E?Q=o:(I=t+76|0,C=e[I>>2]|0,p=C+f|0,B=Ni(o,p)|0,e[n>>2]=B,v=e[W>>2]|0,S=e[I>>2]|0,w=S+v|0,e[I>>2]=w,e[W>>2]=0,Q=B),y=t+72|0,e[y>>2]=0,e[D>>2]=0,_=(Q|0)==0,_||I2(Q),F=(c|0)==0,F){U=t,V=U+112|0;do e[U>>2]=0,U=U+4|0;while((U|0)<(V|0));return 0}else H=0;for(;;){if(R=(c+12|0)+(H<<2)|0,L=e[R>>2]|0,eB(L),M=(H|0)==7,M){H=8;continue}if(T=e[R>>2]|0,I2(T),G=H+1|0,e0=(G|0)==15,e0)break;H=G}I2(c),U=t,V=U+112|0;do e[U>>2]=0,U=U+4|0;while((U|0)<(V|0));return 0}function Nv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0;return _=m,a=Ov(t,n,1)|0,c=(a|0)==0,c?(C=t+104|0,p=e[C>>2]|0,B=CS(n)|0,v=p+60|0,e[v>>2]=B,S=i4(1,180)|0,e[p>>2]=S,Jv(S,n),w=p+80|0,Fv(n,w),y=t+64|0,D=y,f=D,e[f>>2]=3,E=D+4|0,I=E,e[I>>2]=0,o=0,o|0):(o=1,o|0)}function Xp(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0;if(N2=m,B=(t|0)==0,!B){if(v=t+4|0,C0=e[v>>2]|0,P0=(C0|0)!=0,P0?(O0=C0+28|0,n1=e[O0>>2]|0,p0=n1):p0=0,D1=t+104|0,v1=e[D1>>2]|0,z1=(v1|0)!=0,z1){if(o2=e[v1>>2]|0,S=(o2|0)==0,S||(Kv(o2),G=e[v1>>2]|0,I2(G)),U=v1+12|0,l0=e[U>>2]|0,f0=(l0|0)==0,f0||(Q0=e[l0>>2]|0,AB(Q0),d0=e[U>>2]|0,y0=e[d0>>2]|0,I2(y0),h0=e[U>>2]|0,I2(h0)),E0=v1+16|0,u0=e[E0>>2]|0,k0=(u0|0)==0,k0||(J0=e[u0>>2]|0,AB(J0),D0=e[E0>>2]|0,B0=e[D0>>2]|0,I2(B0),x0=e[E0>>2]|0,I2(x0)),F0=v1+48|0,M0=e[F0>>2]|0,G0=(M0|0)==0,!G0){if(R0=(p0|0)==0,R0)u1=M0;else if(S0=p0+16|0,L0=e[S0>>2]|0,Y0=(L0|0)>0,Y0){if(H0=p0+800|0,N0=e[H0>>2]|0,V0=25640+(N0<<2)|0,T0=e[V0>>2]|0,U0=T0+16|0,r1=e[U0>>2]|0,e1=e[M0>>2]|0,Vs[r1&7](e1),v0=e[S0>>2]|0,i1=(v0|0)>1,i1)for($1=1;n=e[F0>>2]|0,c1=H0+($1<<2)|0,f1=e[c1>>2]|0,g1=25640+(f1<<2)|0,l1=e[g1>>2]|0,s1=l1+16|0,a1=e[s1>>2]|0,A1=n+($1<<2)|0,z0=e[A1>>2]|0,Vs[a1&7](z0),I1=$1+1|0,h1=e[S0>>2]|0,E1=(I1|0)<(h1|0),E1;)$1=I1;o=e[F0>>2]|0,u1=o}else u1=M0;I2(u1)}if(d1=v1+52|0,B1=e[d1>>2]|0,p1=(B1|0)==0,!p1){if(Q1=(p0|0)==0,Q1)V1=B1;else if(_1=p0+20|0,y1=e[_1>>2]|0,k1=(y1|0)>0,k1){if(x1=p0+1312|0,L1=e[x1>>2]|0,N1=25648+(L1<<2)|0,w1=e[N1>>2]|0,U1=w1+16|0,Z1=e[U1>>2]|0,G1=e[B1>>2]|0,Vs[Z1&7](G1),K1=e[_1>>2]|0,P1=(K1|0)>1,P1)for(q1=1;a=e[d1>>2]|0,H1=x1+(q1<<2)|0,Y1=e[H1>>2]|0,j1=25648+(Y1<<2)|0,r2=e[j1>>2]|0,W1=r2+16|0,O1=e[W1>>2]|0,l2=a+(q1<<2)|0,h2=e[l2>>2]|0,Vs[O1&7](h2),s2=q1+1|0,d2=e[_1>>2]|0,A2=(s2|0)<(d2|0),A2;)q1=s2;c=e[d1>>2]|0,V1=c}else V1=B1;I2(V1)}if(g2=v1+56|0,a2=e[g2>>2]|0,t2=(a2|0)==0,!t2){if($2=(p0|0)==0,$2)_2=a2;else if(i2=p0+28|0,X1=e[i2>>2]|0,n2=(X1|0)>0,n2){if(aQ(a2),f2=e[i2>>2]|0,e2=(f2|0)>1,e2)for(S2=1;f=e[g2>>2]|0,y2=f+(S2*52|0)|0,aQ(y2),w2=S2+1|0,C2=e[i2>>2]|0,M2=(w2|0)<(C2|0),M2;)S2=w2;E=e[g2>>2]|0,_2=E}else _2=a2;I2(_2)}w=v1+60|0,y=e[w>>2]|0,D=(y|0)==0,D||mS(y),Q=v1+80|0,Lv(Q),_=v1+20|0,EQ(_),F=v1+32|0,EQ(F)}if(R=t+8|0,L=e[R>>2]|0,M=(L|0)==0,!M){if(P0)if(T=C0+4|0,N=e[T>>2]|0,P=(N|0)>0,P){for(Y=L,g0=N,G2=0;z=Y+(G2<<2)|0,t0=e[z>>2]|0,J=(t0|0)==0,J?H=g0:(I2(t0),C=e[T>>2]|0,H=C),W=G2+1|0,e0=(W|0)<(H|0),!!e0;)I=e[R>>2]|0,Y=I,g0=H,G2=W;p=e[R>>2]|0,X=p}else X=L;else X=L;I2(X),o0=t+12|0,Z=e[o0>>2]|0,V=(Z|0)==0,V||I2(Z)}z1&&(A0=v1+64|0,n0=e[A0>>2]|0,i0=(n0|0)==0,i0||I2(n0),r0=v1+68|0,K=e[r0>>2]|0,c0=(K|0)==0,c0||I2(K),s0=v1+72|0,j=e[s0>>2]|0,$0=(j|0)==0,$0||I2(j),I2(v1)),u2=t,q2=u2+112|0;do e[u2>>2]=0,u2=u2+4|0;while((u2|0)<(q2|0))}}function eQ(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0;if(P0=m,I=t+4|0,C=e[I>>2]|0,R=t+104|0,W=e[R>>2]|0,r0=W+64|0,y0=e[r0>>2]|0,B0=(y0|0)==0,B0||I2(y0),e[r0>>2]=0,x0=W+68|0,F0=e[x0>>2]|0,M0=(F0|0)==0,M0||I2(F0),e[x0>>2]=0,p=W+72|0,B=e[p>>2]|0,v=(B|0)==0,v||I2(B),e[p>>2]=0,S=t+20|0,w=e[S>>2]|0,y=w+n|0,D=t+16|0,Q=e[D>>2]|0,_=(y|0)<(Q|0),_)o=C+4|0,f=e[o>>2]|0,X=f,p0=11;else if(F=n<<1,L=w+F|0,e[D>>2]=L,M=C+4|0,T=e[M>>2]|0,G=(T|0)>0,G)if(N=t+8|0,P=e[N>>2]|0,z=e[P>>2]|0,Y=L<<2,t0=Ni(z,Y)|0,J=e[N>>2]|0,e[J>>2]=t0,e0=e[M>>2]|0,H=(e0|0)>1,H)for(i0=1;;)if(a=e[D>>2]|0,A0=e[N>>2]|0,n0=A0+(i0<<2)|0,K=e[n0>>2]|0,c0=a<<2,s0=Ni(K,c0)|0,l0=e[N>>2]|0,j=l0+(i0<<2)|0,e[j>>2]=s0,$0=i0+1|0,g0=e[M>>2]|0,f0=($0|0)<(g0|0),f0)i0=$0;else{X=g0,p0=11;break}else X=e0,p0=11;if((p0|0)==11&&(U=(X|0)>0,U)){for(o0=t+8|0,Z=e[S>>2]|0,V=t+12|0,G0=0;;)if(Q0=e[o0>>2]|0,d0=Q0+(G0<<2)|0,h0=e[d0>>2]|0,E0=h0+(Z<<2)|0,C0=e[V>>2]|0,u0=C0+(G0<<2)|0,e[u0>>2]=E0,k0=G0+1|0,J0=(k0|0)<(X|0),J0)G0=k0;else{c=V;break}return D0=e[c>>2]|0,D0|0}return E=t+12|0,c=E,D0=e[c>>2]|0,D0|0}function Uv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0;if(N0=m,I=t+4|0,C=e[I>>2]|0,R=C+28|0,W=e[R>>2]|0,r0=(n|0)<1,!r0)return Q0=t+20|0,d0=e[Q0>>2]|0,h0=d0+n|0,E0=t+16|0,C0=e[E0>>2]|0,u0=(h0|0)>(C0|0),u0?(a=-131,m=N0,a|0):(e[Q0>>2]=h0,k0=t+28|0,J0=e[k0>>2]|0,D0=(J0|0)==0,!D0||(B0=t+48|0,x0=e[B0>>2]|0,F0=h0-x0|0,G0=W+4|0,p0=e[G0>>2]|0,P0=(F0|0)>(p0|0),!P0)?(a=0,m=N0,a|0):(iQ(t),a=0,m=N0,a|0));if(y0=m,m=m+128|0,M0=t+28|0,R0=e[M0>>2]|0,S0=(R0|0)==0,S0&&iQ(t),L0=W+4|0,p=e[L0>>2]|0,B=p*3|0,eQ(t,B)|0,v=t+20|0,S=e[v>>2]|0,w=t+32|0,e[w>>2]=S,y=e[L0>>2]|0,D=y*3|0,Q=S+D|0,e[v>>2]=Q,_=C+4|0,F=e[_>>2]|0,L=(F|0)>0,!L)return a=0,m=N0,a|0;for(M=t+8|0,T=S,Y0=0;;){if(G=(T|0)>64,G?(N=e[L0>>2]|0,P=(T|0)>(N|0),o=P?N:T,z=e[M>>2]|0,Y=z+(Y0<<2)|0,t0=e[Y>>2]|0,f=T-o|0,J=t0+(f<<2)|0,+rQ(J,y0,o,32),e0=e[M>>2]|0,H=e0+(Y0<<2)|0,X=e[H>>2]|0,U=e[w>>2]|0,o0=X+(U<<2)|0,E=U+-32|0,Z=X+(E<<2)|0,V=e[v>>2]|0,A0=V-U|0,nQ(y0,Z,32,o0,A0)):(n0=e[M>>2]|0,i0=n0+(Y0<<2)|0,K=e[i0>>2]|0,c0=K+(T<<2)|0,s0=e[v>>2]|0,l0=s0-T|0,j=l0<<2,se(c0|0,0,j|0)|0),$0=Y0+1|0,g0=e[_>>2]|0,f0=($0|0)<(g0|0),!f0){a=0;break}c=e[w>>2]|0,T=c,Y0=$0}return m=N0,a|0}function tQ(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,B6=0,z3=0,a6=0,p6=0,_6=0,Y6=0,m6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,A3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0;if(n4=m,v=t+4|0,S=e[v>>2]|0,s2=S+28|0,y5=e[s2>>2]|0,X3=t+104|0,v6=e[X3>>2]|0,u6=v6+60|0,I6=e[u6>>2]|0,G6=t+48|0,X6=e[G6>>2]|0,w=t+40|0,N=e[w>>2]|0,o0=y5+(N<<2)|0,j=e[o0>>2]|0,k0=(j|0)/2&-1,S0=X6-k0|0,v0=n+104|0,z0=e[v0>>2]|0,y1=t+28|0,P1=e[y1>>2]|0,d2=(P1|0)==0,d2||(f2=t+32|0,N2=e[f2>>2]|0,v5=(N2|0)==-1,v5))return a=0,a|0;m2=Vv(t)|0,m5=(m2|0)==-1;do if(m5){if(Y2=e[f2>>2]|0,f3=(Y2|0)==0,f3)return a=0,a|0;q3=t+44|0,e[q3>>2]=0,f=q3,N3=0;break}else if(C3=e[y5>>2]|0,G3=y5+4|0,L5=e[G3>>2]|0,t6=(C3|0)==(L5|0),t3=t+44|0,t6){e[t3>>2]=0,f=t3,N3=0;break}else{e[t3>>2]=m2,f=t3,N3=m2;break}while(!1);if(o3=e[G6>>2]|0,R3=e[w>>2]|0,f6=y5+(R3<<2)|0,B3=e[f6>>2]|0,w3=(B3|0)/4&-1,p3=w3+o3|0,V3=y5+(N3<<2)|0,z5=e[V3>>2]|0,k3=(z5|0)/4&-1,c3=p3+k3|0,U3=(z5|0)/2&-1,o6=c3+U3|0,u3=t+20|0,w6=e[u3>>2]|0,k6=(w6|0)<(o6|0),k6)return a=0,a|0;if(B6=n+84|0,z3=e[B6>>2]|0,a6=(z3|0)==0,!a6)for(u9=z3;p6=u9+4|0,_6=e[p6>>2]|0,Y6=e[u9>>2]|0,I2(Y6),I2(u9),m6=(_6|0)==0,!m6;)u9=_6;v3=n+80|0,Z3=e[v3>>2]|0,W3=(Z3|0)==0,W3||(O3=n+68|0,S3=e[O3>>2]|0,P3=n+76|0,Y3=e[P3>>2]|0,S6=Y3+Z3|0,i6=Ni(S3,S6)|0,e[O3>>2]=i6,i3=e[v3>>2]|0,P6=e[P3>>2]|0,A3=P6+i3|0,e[P3>>2]=A3,e[v3>>2]=0),r6=n+72|0,e[r6>>2]=0,e[B6>>2]=0,D3=t+36|0,T6=e[D3>>2]|0,e6=n+24|0,e[e6>>2]=T6,Q6=e[w>>2]|0,R6=n+28|0,e[R6>>2]=Q6,K6=e[f>>2]|0,d6=n+32|0,e[d6>>2]=K6,J6=(Q6|0)==0;do if(J6)if(r9=zv(t)|0,x6=(r9|0)==0,N6=z0+8|0,x6){e[N6>>2]=1;break}else{e[N6>>2]=0;break}else if(x3=(T6|0)==0,Z6=(K6|0)==0,T9=x3|Z6,j6=z0+8|0,T9){e[j6>>2]=0;break}else{e[j6>>2]=1;break}while(!1);D6=n+64|0,e[D6>>2]=t,V6=t+64|0,y6=V6,F6=y6,F3=e[F6>>2]|0,L6=y6+4|0,s9=L6,W6=e[s9>>2]|0,g9=Ys(F3|0,W6|0,1,0)|0,h9=q6,f9=V6,A9=f9,e[A9>>2]=g9,o9=f9+4|0,M9=o9,e[M9>>2]=h9,E6=n+56|0,M6=E6,y=M6,e[y>>2]=F3,D=M6+4|0,Q=D,e[Q>>2]=W6,_=t+56|0,F=_,R=F,L=e[R>>2]|0,M=F+4|0,T=M,G=e[T>>2]|0,P=n+48|0,z=P,Y=z,e[Y>>2]=L,t0=z+4|0,J=t0,e[J>>2]=G,W=e[w>>2]|0,e0=y5+(W<<2)|0,H=e[e0>>2]|0,X=n+36|0,e[X>>2]=H,U=z0+4|0,Z=+s[U>>2],V=+s[I6>>2],A0=Z>V,A0?(s[I6>>2]=Z,n0=Z):n0=V,i0=+QS(n0,t),s[I6>>2]=i0,s[U>>2]=i0,r0=S+4|0,K=e[r0>>2]|0,c0=K<<2,s0=c0+7|0,l0=s0&-8,$0=e[r6>>2]|0,g0=l0+$0|0,f0=n+76|0,Q0=e[f0>>2]|0,d0=(g0|0)>(Q0|0),y0=n+68|0,h0=e[y0>>2]|0,d0?(E0=(h0|0)==0,E0||(C0=h0,u0=k9(8)|0,J0=e[v3>>2]|0,D0=J0+$0|0,e[v3>>2]=D0,B0=e[B6>>2]|0,x0=u0+4|0,e[x0>>2]=B0,e[u0>>2]=C0,e[B6>>2]=u0),e[f0>>2]=l0,F0=k9(l0)|0,e[y0>>2]=F0,e[r6>>2]=0,c=e[r0>>2]|0,G0=F0,p0=0,L0=c,T0=l0):(G0=h0,p0=$0,L0=K,T0=Q0),M0=G0+p0|0,P0=p0+l0|0,e[r6>>2]=P0,e[n>>2]=M0,R0=L0<<2,Y0=R0+7|0,H0=Y0&-8,N0=H0+P0|0,V0=(N0|0)>(T0|0),V0?(U0=(G0|0)==0,U0||(r1=G0,O0=k9(8)|0,e1=e[v3>>2]|0,i1=e1+P0|0,e[v3>>2]=i1,c1=e[B6>>2]|0,$1=O0+4|0,e[$1>>2]=c1,e[O0>>2]=r1,e[B6>>2]=O0),e[f0>>2]=H0,f1=k9(H0)|0,e[y0>>2]=f1,e[r6>>2]=0,E=e[r0>>2]|0,l1=f1,s1=0,n1=E,P5=H0):(l1=G0,s1=P0,n1=L0,P5=T0),g1=l1+s1|0,a1=s1+H0|0,e[r6>>2]=a1,e[z0>>2]=g1,A1=(n1|0)>0;e:do if(A1)for(I1=t+8|0,Q1=a1,_1=P5,k1=l1,e9=0;;){if(h1=e[X>>2]|0,E1=h1+S0|0,u1=E1<<2,d1=u1+7|0,B1=d1&-8,p1=B1+Q1|0,D1=(p1|0)>(_1|0),D1?(x1=(k1|0)==0,x1||(L1=k1,N1=k9(8)|0,w1=e[v3>>2]|0,U1=w1+Q1|0,e[v3>>2]=U1,Z1=e[B6>>2]|0,G1=N1+4|0,e[G1>>2]=Z1,e[N1>>2]=L1,e[B6>>2]=N1),e[f0>>2]=B1,v1=k9(B1)|0,e[y0>>2]=v1,e[r6>>2]=0,H1=v1,q1=0):(H1=k1,q1=Q1),K1=H1+q1|0,Y1=q1+B1|0,e[r6>>2]=Y1,j1=e[z0>>2]|0,r2=j1+(e9<<2)|0,e[r2>>2]=K1,W1=e[z0>>2]|0,O1=W1+(e9<<2)|0,l2=e[O1>>2]|0,z1=e[I1>>2]|0,h2=z1+(e9<<2)|0,A2=e[h2>>2]|0,r4(l2|0,A2|0,u1|0)|0,V1=e[z0>>2]|0,g2=V1+(e9<<2)|0,a2=e[g2>>2]|0,t2=a2+(S0<<2)|0,$2=e[n>>2]|0,i2=$2+(e9<<2)|0,e[i2>>2]=t2,o2=e9+1|0,X1=e[r0>>2]|0,n2=(o2|0)<(X1|0),!n2)break e;I=e[r6>>2]|0,C=e[f0>>2]|0,p=e[y0>>2]|0,Q1=I,_1=C,k1=p,e9=o2}while(!1);if(e2=e[f2>>2]|0,y2=(e2|0)==0,!y2&&(S2=e[G6>>2]|0,w2=(S2|0)<(e2|0),!w2))return e[f2>>2]=-1,C2=n+44|0,e[C2>>2]=1,a=1,a|0;if(M2=y5+4|0,_2=e[M2>>2]|0,G2=(_2|0)/2&-1,u2=c3-G2|0,K2=(u2|0)>0,!K2)return a=1,a|0;if(q2=e[v6>>2]|0,Zv(q2,u2),T2=e[u3>>2]|0,O2=T2-u2|0,e[u3>>2]=O2,V2=e[r0>>2]|0,s5=(V2|0)>0,s5&&(P2=t+8|0,T1=e[P2>>2]|0,j2=e[T1>>2]|0,R5=j2+(u2<<2)|0,X2=O2<<2,Vo(j2|0,R5|0,X2|0)|0,z2=e[r0>>2]|0,f5=(z2|0)>1,f5))for($5=1;B=e[u3>>2]|0,w5=e[P2>>2]|0,O5=w5+($5<<2)|0,k2=e[O5>>2]|0,E5=k2+(u2<<2)|0,r5=B<<2,Vo(k2|0,E5|0,r5|0)|0,x2=$5+1|0,R2=e[r0>>2]|0,C5=(x2|0)<(R2|0),C5;)$5=x2;return x5=e[w>>2]|0,e[D3>>2]=x5,u5=e[f>>2]|0,e[w>>2]=u5,e[G6>>2]=G2,S5=e[f2>>2]|0,G5=(S5|0)==0,G5?(h3=(u2|0)<0,m3=h3<<31>>31,M3=_,Z5=M3,Q3=e[Z5>>2]|0,j5=M3+4|0,j3=j5,_3=e[j3>>2]|0,T3=Ys(Q3|0,_3|0,u2|0,m3|0)|0,a3=q6,$3=_,l3=$3,e[l3>>2]=T3,q5=$3+4|0,N5=q5,e[N5>>2]=a3,a=1,a|0):(D5=S5-u2|0,H2=(D5|0)<1,o=H2?-1:D5,e[f2>>2]=o,I5=(o|0)>(G2|0),I5?(a5=(u2|0)<0,F2=a5<<31>>31,p5=_,H5=p5,X5=e[H5>>2]|0,d5=p5+4|0,g3=d5,K5=e[g3>>2]|0,e3=Ys(X5|0,K5|0,u2|0,F2|0)|0,s3=q6,E3=_,F5=E3,e[F5>>2]=e3,V5=E3+4|0,y3=V5,e[y3>>2]=s3,a=1,a|0):(A5=o+u2|0,l5=A5-G2|0,M1=(l5|0)<0,k5=M1<<31>>31,c5=_,o5=c5,Z2=e[o5>>2]|0,c2=c5+4|0,B5=c2,e5=e[B5>>2]|0,n5=Ys(Z2|0,e5|0,l5|0,k5|0)|0,g5=q6,h5=_,t5=h5,e[t5>>2]=n5,b5=h5+4|0,W2=b5,e[W2>>2]=g5,a=1,a|0))}function Ov(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0;if(t5=m,p=n+28|0,B=e[p>>2]|0,p1=(B|0)==0,p1||(Z1=B+8|0,O1=e[Z1>>2]|0,$2=(O1|0)<1,$2)||(M2=e[B>>2]|0,P2=(M2|0)<64,P2)||(k2=B+4|0,D5=e[k2>>2]|0,v=(D5|0)<(M2|0),v))return a=1,a|0;T=B+3656|0,X=e[T>>2]|0,Y2=t,b5=Y2+112|0;do e[Y2>>2]=0,Y2=Y2+4|0;while((Y2|0)<(b5|0));s0=i4(1,136)|0,C0=t+104|0,e[C0>>2]=s0,P0=t+4|0,e[P0>>2]=n,O0=e[Z1>>2]|0,n1=O0+-1|0,d1=L7(n1)|0,B1=s0+44|0,e[B1>>2]=d1,Q1=i4(1,4)|0,D1=s0+12|0,e[D1>>2]=Q1,_1=i4(1,4)|0,y1=s0+16|0,e[y1>>2]=_1,k1=i4(1,20)|0,e[Q1>>2]=k1,x1=i4(1,20)|0,e[_1>>2]=x1,L1=e[B>>2]|0,N1=L1>>X,sB(k1,N1),w1=e[y1>>2]|0,U1=e[w1>>2]|0,G1=e[k2>>2]|0,v1=G1>>X,sB(U1,v1),K1=e[B>>2]|0,P1=L7(K1)|0,H1=P1+-7|0,q1=s0+4|0,e[q1>>2]=H1,Y1=e[k2>>2]|0,j1=L7(Y1)|0,r2=j1+-7|0,W1=s0+8|0,e[W1>>2]=r2,l2=(o|0)==0;e:do if(l2){if(m2=B+2848|0,C5=e[m2>>2]|0,x5=(C5|0)==0,x5&&(u5=B+24|0,S5=e[u5>>2]|0,G5=i4(S5,56)|0,e[m2>>2]=G5,H2=e[u5>>2]|0,I5=(H2|0)>0,I5)){for(E1=H2,B5=0;;){if(A5=(B+1824|0)+(B5<<2)|0,l5=e[A5>>2]|0,m5=(l5|0)==0,m5){M1=E1;break}if(c5=e[m2>>2]|0,o5=c5+(B5*56|0)|0,Z2=HS(o5,l5)|0,S=(Z2|0)==0,!S){h5=20;break}if(w=e[A5>>2]|0,oB(w),e[A5>>2]=0,y=B5+1|0,D=e[u5>>2]|0,Q=(y|0)<(D|0),Q)E1=D,B5=y;else break e}if((h5|0)==20&&(I=e[u5>>2]|0,M1=I),k5=(M1|0)>0,k5)for(u1=M1,g5=0;s1=(B+1824|0)+(g5<<2)|0,a1=e[s1>>2]|0,A1=(a1|0)==0,A1?h1=u1:(oB(a1),e[s1>>2]=0,C=e[u5>>2]|0,h1=C),z0=g5+1|0,I1=(z0|0)<(h1|0),I1;)u1=h1,g5=z0;return Xp(t),a=-1,a|0}}else{if(z1=s0+20|0,h2=e[B>>2]|0,dQ(z1,h2),s2=s0+32|0,d2=e[k2>>2]|0,dQ(s2,d2),A2=B+2848|0,V1=e[A2>>2]|0,g2=(V1|0)==0,g2&&(a2=B+24|0,t2=e[a2>>2]|0,i2=i4(t2,56)|0,e[A2>>2]=i2,o2=e[a2>>2]|0,X1=(o2|0)>0,X1&&(n2=B+1824|0,f2=e[n2>>2]|0,IQ(i2,f2)|0,e2=e[a2>>2]|0,y2=(e2|0)>1,y2)))for(w2=1;c=e[A2>>2]|0,S2=c+(w2*56|0)|0,C2=(B+1824|0)+(w2<<2)|0,_2=e[C2>>2]|0,IQ(S2,_2)|0,G2=w2+1|0,u2=e[a2>>2]|0,K2=(G2|0)<(u2|0),K2;)w2=G2;N2=B+28|0,q2=e[N2>>2]|0,T2=i4(q2,52)|0,O2=s0+56|0,e[O2>>2]=T2,V2=e[N2>>2]|0,s5=(V2|0)>0;t:do if(s5)for(T1=B+2868|0,j2=n+8|0,X2=T2,c2=0;;){if(R5=X2+(c2*52|0)|0,v5=(B+2852|0)+(c2<<2)|0,z2=e[v5>>2]|0,f5=e[z2>>2]|0,w5=B+(f5<<2)|0,O5=e[w5>>2]|0,$5=(O5|0)/2&-1,E5=e[j2>>2]|0,pS(R5,z2,T1,$5,E5),r5=c2+1|0,x2=e[N2>>2]|0,R2=(r5|0)<(x2|0),!R2)break t;f=e[O2>>2]|0,X2=f,c2=r5}while(!1);e[t>>2]=1}while(!1);if(_=e[k2>>2]|0,F=t+16|0,e[F>>2]=_,R=n+4|0,L=e[R>>2]|0,M=L<<2,G=k9(M)|0,N=t+8|0,e[N>>2]=G,P=k9(M)|0,z=t+12|0,e[z>>2]=P,Y=(L|0)>0,Y&&(t0=i4(_,4)|0,e[G>>2]=t0,J=(L|0)>1,J))for(H=1;E=e[N>>2]|0,W=i4(_,4)|0,e0=E+(H<<2)|0,e[e0>>2]=W,U=H+1|0,o0=(U|0)<(L|0),o0;)H=U;if(Z=t+36|0,e[Z>>2]=0,V=t+40|0,e[V>>2]=0,A0=e[k2>>2]|0,n0=(A0|0)/2&-1,i0=t+48|0,e[i0>>2]=n0,r0=t+20|0,e[r0>>2]=n0,K=B+16|0,c0=e[K>>2]|0,l0=i4(c0,4)|0,j=s0+48|0,e[j>>2]=l0,$0=B+20|0,g0=e[$0>>2]|0,f0=i4(g0,4)|0,Q0=s0+52|0,e[Q0>>2]=f0,d0=e[K>>2]|0,y0=(d0|0)>0,y0)for(e5=0;u0=(B+800|0)+(e5<<2)|0,k0=e[u0>>2]|0,J0=25640+(k0<<2)|0,D0=e[J0>>2]|0,B0=D0+8|0,x0=e[B0>>2]|0,F0=(B+1056|0)+(e5<<2)|0,M0=e[F0>>2]|0,G0=ct[x0&15](t,M0)|0,p0=e[j>>2]|0,R0=p0+(e5<<2)|0,e[R0>>2]=G0,S0=e5+1|0,L0=e[K>>2]|0,Y0=(S0|0)<(L0|0),Y0;)e5=S0;if(h0=e[$0>>2]|0,E0=(h0|0)>0,E0)n5=0;else return a=0,a|0;for(;;)if(H0=(B+1312|0)+(n5<<2)|0,N0=e[H0>>2]|0,V0=25648+(N0<<2)|0,T0=e[V0>>2]|0,U0=T0+8|0,r1=e[U0>>2]|0,e1=(B+1568|0)+(n5<<2)|0,v0=e[e1>>2]|0,i1=ct[r1&15](t,v0)|0,c1=e[Q0>>2]|0,$1=c1+(n5<<2)|0,e[$1>>2]=i1,f1=n5+1|0,g1=e[$0>>2]|0,l1=(f1|0)<(g1|0),l1)n5=f1;else{a=0;break}return a|0}function iQ(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0;if(D0=m,m=m+64|0,c=D0,f=t+20|0,Q=e[f>>2]|0,Y=Q<<2,n=Y,A0=m,m=m+((1*n|0)+15&-16)|0,f0=t+28|0,e[f0>>2]=1,d0=t+48|0,y0=e[d0>>2]|0,h0=Q-y0|0,E0=(h0|0)>32,!E0){m=D0;return}if(E=t+4|0,I=e[E>>2]|0,C=I+4|0,p=e[C>>2]|0,B=(p|0)>0,!B){m=D0;return}for(v=t+8|0,S=Q,C0=0;;){if(w=(S|0)>0,w)for(y=e[v>>2]|0,D=y+(C0<<2)|0,_=e[D>>2]|0,u0=0;F=u0^-1,R=S+F|0,L=_+(R<<2)|0,M=e[L>>2]|0,T=A0+(u0<<2)|0,e[T>>2]=M,G=u0+1|0,N=(S|0)>(G|0),N;)u0=G;if(P=e[d0>>2]|0,z=S-P|0,+rQ(A0,c,z,16),t0=e[f>>2]|0,J=e[d0>>2]|0,o=t0-J|0,W=A0+(o<<2)|0,a=o+-16|0,e0=A0+(a<<2)|0,nQ(c,e0,16,W,J),H=e[f>>2]|0,X=(H|0)>0,X)for(U=e[v>>2]|0,o0=U+(C0<<2)|0,Z=e[o0>>2]|0,k0=0;V=A0+(k0<<2)|0,n0=e[V>>2]|0,i0=k0^-1,r0=H+i0|0,K=Z+(r0<<2)|0,e[K>>2]=n0,c0=k0+1|0,s0=(H|0)>(c0|0),s0;)k0=c0;if(l0=C0+1|0,j=e[E>>2]|0,$0=j+4|0,g0=e[$0>>2]|0,Q0=(l0|0)<(g0|0),Q0)S=H,C0=l0;else break}m=D0}function Pv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0;o2=m,U2(n,5653314,24),E=e[t>>2]|0,U2(n,E,16),I=t+4|0,N=e[I>>2]|0,U2(n,N,24),o0=e[I>>2]|0,j=(o0|0)>1;e:do if(j)for(k0=t+8|0,S0=e[k0>>2]|0,c=u[S0>>0]|0,v0=c,O1=1;;){if(z0=v0<<24>>24==0,z0){W1=O1;break e}if(y1=S0+O1|0,C=u[y1>>0]|0,D=C<<24>>24>24,D){W1=O1;break e}if(Q=O1+1|0,_=(Q|0)<(o0|0),_)v0=C,O1=Q;else{W1=Q;break}}else W1=1;while(!1);F=(W1|0)==(o0|0);e:do if(F){if(U2(n,1,1),R=t+8|0,L=e[R>>2]|0,M=u[L>>0]|0,T=M<<24>>24,G=T+-1|0,U2(n,G,5),P=e[I>>2]|0,z=(P|0)>1,z)for(y=P,H1=0,z1=1;;){if(Y=e[R>>2]|0,t0=Y+z1|0,J=u[t0>>0]|0,W=z1+-1|0,e0=Y+W|0,H=u[e0>>0]|0,X=J<<24>>24>H<<24>>24,X)for(U=H<<24>>24,Z=J<<24>>24,n0=y,q1=H1,a2=U;;)if(V=z1-q1|0,A0=n0-q1|0,i0=L7(A0)|0,U2(n,V,i0),r0=a2+1|0,r2=(r0|0)==(Z|0),f=e[I>>2]|0,r2){s0=f,Y1=z1;break}else n0=f,q1=z1,a2=r0;else s0=y,Y1=H1;if(K=z1+1|0,c0=(K|0)<(s0|0),c0)y=s0,H1=Y1,z1=K;else{a=s0,P1=Y1,l2=K;break}}else a=P,P1=0,l2=1;l0=l2-P1|0,$0=a-P1|0,g0=L7($0)|0,U2(n,l0,g0)}else{U2(n,0,1),f0=e[I>>2]|0,Q0=(f0|0)>0;t:do if(Q0)for(d0=t+8|0,y0=e[d0>>2]|0,s2=0;;){if(h0=y0+s2|0,E0=u[h0>>0]|0,C0=E0<<24>>24==0,C0){h2=s2;break t}if(u0=s2+1|0,J0=(u0|0)<(f0|0),J0)s2=u0;else{h2=u0;break}}else h2=0;while(!1);if(D0=(h2|0)==(f0|0),D0){if(U2(n,0,1),B0=e[I>>2]|0,x0=(B0|0)>0,!x0)break;for(F0=t+8|0,d2=0;;)if(M0=e[F0>>2]|0,G0=M0+d2|0,p0=u[G0>>0]|0,P0=p0<<24>>24,R0=P0+-1|0,U2(n,R0,5),L0=d2+1|0,Y0=e[I>>2]|0,H0=(L0|0)<(Y0|0),H0)d2=L0;else break e}if(U2(n,1,1),N0=e[I>>2]|0,V0=(N0|0)>0,V0)for(T0=t+8|0,A2=0;U0=e[T0>>2]|0,r1=U0+A2|0,O0=u[r1>>0]|0,e1=O0<<24>>24==0,e1?U2(n,0,1):(U2(n,1,1),i1=e[T0>>2]|0,c1=i1+A2|0,$1=u[c1>>0]|0,f1=$1<<24>>24,g1=f1+-1|0,U2(n,g1,5)),l1=A2+1|0,s1=e[I>>2]|0,a1=(l1|0)<(s1|0),a1;)A2=l1}while(!1);if(n1=t+12|0,A1=e[n1>>2]|0,U2(n,A1,4),I1=e[n1>>2]|0,(I1|0)==2|(I1|0)==1)i2=28;else if(I1|0)return o=-1,o|0;do if((i2|0)==28){if(h1=t+32|0,E1=e[h1>>2]|0,u1=(E1|0)==0,u1)return o=-1,o|0;if(d1=t+16|0,B1=e[d1>>2]|0,U2(n,B1,32),p1=t+20|0,Q1=e[p1>>2]|0,U2(n,Q1,32),D1=t+24|0,_1=e[D1>>2]|0,k1=_1+-1|0,U2(n,k1,4),x1=t+28|0,L1=e[x1>>2]|0,U2(n,L1,1),N1=e[n1>>2]|0,(N1|0)==1)w1=US(t)|0,$2=w1;else if((N1|0)==2)U1=e[I>>2]|0,Z1=e[t>>2]|0,G1=i5(Z1,U1)|0,$2=G1;else break;if(v1=($2|0)>0,v1)for(V1=0;K1=e[h1>>2]|0,p=K1+(V1<<2)|0,B=e[p>>2]|0,g2=(B|0)>-1,t2=0-B|0,v=g2?B:t2,S=e[D1>>2]|0,U2(n,v,S),w=V1+1|0,j1=(w|0)==($2|0),!j1;)V1=w}while(!1);return o=0,o|0}function Rh(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0;return z=m,c=(n|0)<0,c||(f=t+12|0,Q=e[f>>2]|0,F=Q+4|0,R=e[F>>2]|0,L=(R|0)>(n|0),!L)?(a=0,a|0):(M=t+20|0,T=e[M>>2]|0,G=T+(n<<2)|0,N=e[G>>2]|0,E=Q+8|0,I=e[E>>2]|0,C=I+n|0,p=u[C>>0]|0,B=p<<24>>24,U2(o,N,B),v=e[f>>2]|0,S=v+8|0,w=e[S>>2]|0,y=w+n|0,D=u[y>>0]|0,_=D<<24>>24,a=_,a|0)}function JC(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0;return w=m,a=t+8|0,c=e[a>>2]|0,f=(c|0)>0,!f||(E=xh(t,n)|0,I=(E|0)>-1,!I)?(o=-1,o|0):(C=t+24|0,p=e[C>>2]|0,B=p+(E<<2)|0,v=e[B>>2]|0,o=v,o|0)}function Hv(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0;if(j=m,C=t+8|0,p=e[C>>2]|0,L=(p|0)>0,!L)return c=0,m=j,c|0;e0=e[t>>2]|0,X=(a|0)/(e0|0)&-1,U=X<<2,f=U,o0=m,m=m+((1*f|0)+15&-16)|0,Z=(X|0)>0;e:do if(Z){for(V=t+16|0,r0=0;;){if(G=xh(t,o)|0,N=(G|0)==-1,N){c=-1;break}if(P=e[V>>2]|0,z=e[t>>2]|0,Y=i5(z,G)|0,t0=P+(Y<<2)|0,J=o0+(r0<<2)|0,e[J>>2]=t0,W=r0+1|0,H=(W|0)<(X|0),H)r0=W;else{A0=z;break e}}return m=j,c|0}else A0=e0;while(!1);if(E=(A0|0)<1,I=Z^1,n0=E|I,n0)return c=0,m=j,c|0;for(K=0,s0=0;;){for(c0=0;w=o0+(c0<<2)|0,y=e[w>>2]|0,D=y+(K<<2)|0,Q=+s[D>>2],_=c0+s0|0,F=n+(_<<2)|0,R=+s[F>>2],M=R+Q,s[F>>2]=M,T=c0+1|0,i0=(T|0)==(X|0),!i0;)c0=T;if(B=K+1|0,v=s0+X|0,S=(B|0)<(A0|0),S)K=B,s0=v;else{c=0;break}}return m=j,c|0}function qv(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0;if(j2=m,Y=t+8|0,t0=e[Y>>2]|0,l0=(t0|0)>0,!l0)return c=0,c|0;if(u0=e[t>>2]|0,R0=(u0|0)>8,R0){if(_1=(a|0)>0,!_1)return c=0,c|0;for(K1=t+16|0,X1=0;;){if(Z=xh(t,o)|0,V=(Z|0)==-1,V){c=-1,T1=29;break}if(A0=e[K1>>2]|0,n0=e[t>>2]|0,i0=i5(n0,Z)|0,r0=(n0|0)>0,r0){for(K=(n0|0)>1,P2=K?n0:1,f2=X1,u2=0;c0=u2+1|0,z=u2+i0|0,s0=A0+(z<<2)|0,j=+s[s0>>2],$0=f2+1|0,g0=n+(f2<<2)|0,f0=+s[g0>>2],Q0=f0+j,s[g0>>2]=Q0,d0=(c0|0)<(n0|0),d0;)f2=$0,u2=c0;h2=X1+P2|0,n2=h2}else n2=X1;if(J=(n2|0)<(a|0),J)X1=n2;else{c=0,T1=29;break}}if((T1|0)==29)return c|0}if(e1=t+16|0,A1=(a|0)>0,A1)e2=0;else return c=0,c|0;e:for(;;){t:for(;;){if(H=xh(t,o)|0,X=(H|0)==-1,X){c=-1,T1=29;break e}switch(U=e[e1>>2]|0,o0=e[t>>2]|0,o0|0){case 4:{B=H,Q=U,T1=19;break t}case 3:{v=H,_=U,T1=21;break t}case 7:{I=H,w=U,T1=13;break t}case 6:{C=H,y=U,T1=15;break t}case 8:{f=U,E=H,T1=12;break t}case 5:{p=H,D=U,T1=17;break t}case 1:{V1=H,a2=U,G2=e2,s5=0;break t}case 2:{S=H,F=U,T1=23;break t}default:}}if((T1|0)==12?(T1=0,y0=E<<3,h0=f+(y0<<2)|0,E0=+s[h0>>2],C0=e2+1|0,k0=n+(e2<<2)|0,J0=+s[k0>>2],D0=J0+E0,s[k0>>2]=D0,F0=y0,G0=f,y2=C0,K2=1,T1=14):(T1|0)==13?(T1=0,B0=I*7|0,F0=B0,G0=w,y2=e2,K2=0,T1=14):(T1|0)==15?(T1=0,H0=C*6|0,V0=H0,U0=y,S2=e2,N2=0,T1=16):(T1|0)==17?(T1=0,$1=p*5|0,g1=$1,s1=D,w2=e2,q2=0,T1=18):(T1|0)==19?(T1=0,E1=B<<2,d1=E1,p1=Q,C2=e2,T2=0,T1=20):(T1|0)==21?(T1=0,L1=v*3|0,w1=L1,Z1=_,M2=e2,O2=0,T1=22):(T1|0)==23&&(T1=0,Y1=S<<1,r2=Y1,O1=F,_2=e2,V2=0,T1=24),(T1|0)==14&&(T1=0,x0=K2+1|0,P=K2+F0|0,M0=G0+(P<<2)|0,p0=+s[M0>>2],P0=y2+1|0,S0=n+(y2<<2)|0,L0=+s[S0>>2],Y0=L0+p0,s[S0>>2]=Y0,V0=F0,U0=G0,S2=P0,N2=x0,T1=16),(T1|0)==16&&(T1=0,N0=N2+1|0,N=N2+V0|0,T0=U0+(N<<2)|0,r1=+s[T0>>2],O0=S2+1|0,v0=n+(S2<<2)|0,i1=+s[v0>>2],c1=i1+r1,s[v0>>2]=c1,g1=V0,s1=U0,w2=O0,q2=N0,T1=18),(T1|0)==18&&(T1=0,f1=q2+1|0,G=q2+g1|0,l1=s1+(G<<2)|0,a1=+s[l1>>2],n1=w2+1|0,z0=n+(w2<<2)|0,I1=+s[z0>>2],h1=I1+a1,s[z0>>2]=h1,d1=g1,p1=s1,C2=n1,T2=f1,T1=20),(T1|0)==20&&(T1=0,u1=T2+1|0,T=T2+d1|0,B1=p1+(T<<2)|0,Q1=+s[B1>>2],D1=C2+1|0,y1=n+(C2<<2)|0,k1=+s[y1>>2],x1=k1+Q1,s[y1>>2]=x1,w1=d1,Z1=p1,M2=D1,O2=u1,T1=22),(T1|0)==22&&(T1=0,N1=O2+1|0,M=O2+w1|0,U1=Z1+(M<<2)|0,G1=+s[U1>>2],v1=M2+1|0,P1=n+(M2<<2)|0,H1=+s[P1>>2],q1=H1+G1,s[P1>>2]=q1,r2=w1,O1=Z1,_2=v1,V2=N1,T1=24),(T1|0)==24&&(T1=0,j1=V2+1|0,L=V2+r2|0,W1=O1+(L<<2)|0,l2=+s[W1>>2],z1=_2+1|0,s2=n+(_2<<2)|0,d2=+s[s2>>2],A2=d2+l2,s[s2>>2]=A2,V1=r2,a2=O1,G2=z1,s5=j1),R=s5+V1|0,g2=a2+(R<<2)|0,t2=+s[g2>>2],$2=G2+1|0,i2=n+(G2<<2)|0,o2=+s[i2>>2],W=o2+t2,s[i2>>2]=W,e0=($2|0)<(a|0),e0)e2=$2;else{c=0,T1=29;break}}return(T1|0)==29?c|0:0}function Yv(t,n,o,a,c,f){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0;var E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0;if(l0=m,B=t+8|0,v=e[B>>2]|0,T=(v|0)>0,!T||(W=(o|0)/(a|0)&-1,e0=f+o|0,H=(e0|0)/(a|0)&-1,X=(W|0)<(H|0),!X))return I=0,I|0;for(U=t+16|0,V=0,i0=W;;){if(Z=xh(t,c)|0,S=(Z|0)==-1,S){I=-1,s0=8;break}if(w=e[U>>2]|0,y=e[t>>2]|0,D=i5(y,Z)|0,Q=(y|0)>0,Q)for(n0=V,K=i0,c0=0;;)if(p=c0+D|0,_=w+(p<<2)|0,F=+s[_>>2],R=n0+1|0,L=n+(n0<<2)|0,M=e[L>>2]|0,G=M+(K<<2)|0,N=+s[G>>2],P=N+F,s[G>>2]=P,z=(R|0)==(a|0),Y=z&1,C=Y+K|0,E=z?0:R,t0=c0+1|0,J=(t0|0)<(y|0),J)n0=E,K=C,c0=t0;else{A0=E,r0=C;break}else A0=V,r0=i0;if(o0=(r0|0)<(H|0),o0)V=A0,i0=r0;else{I=0,s0=8;break}}return(s0|0)==8?I|0:0}function xh(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0;h1=m,c=t+40|0,f=e[c>>2]|0,Q=t+36|0,Y=e[Q>>2]|0,A0=tB(n,Y)|0,f0=(A0|0)>-1;do if(f0){if(B0=t+32|0,H0=e[B0>>2]|0,c1=H0+(A0<<2)|0,$1=e[c1>>2]|0,E=($1|0)<0,E){I=$1>>>15,C=I&32767,p=t+8|0,B=e[p>>2]|0,v=$1&32767,S=B-v|0,f1=S,l1=C;break}return w=$1+-1|0,y=t+28|0,D=e[y>>2]|0,_=D+w|0,F=u[_>>0]|0,R=F<<24>>24,iB(n,R),o=w,o|0}else L=t+8|0,M=e[L>>2]|0,f1=M,l1=0;while(!1);if(T=tB(n,f)|0,G=(T|0)<0,N=(f|0)>1,P=G&N,P)for(z0=f;;)if(z=z0+-1|0,t0=tB(n,z)|0,J=(t0|0)<0,W=(z|0)>1,e0=J&W,e0)z0=z;else{a=J,n1=t0,A1=z;break}else a=G,n1=T,A1=f;if(a)return o=-1,o|0;if(H=n1>>>16,X=n1<<16,U=H|X,o0=U>>>8,Z=o0&16711935,V=U<<8,n0=V&-16711936,i0=Z|n0,r0=i0>>>4,K=r0&252645135,c0=i0<<4,s0=c0&-252645136,l0=K|s0,j=l0>>>2,$0=j&858993459,g0=l0<<2,Q0=g0&-858993460,d0=$0|Q0,y0=d0>>>1,h0=y0&1431655765,E0=d0<<1,C0=E0&-1431655766,u0=h0|C0,k0=f1-l1|0,J0=(k0|0)>1,J0)for(D0=t+20|0,x0=e[D0>>2]|0,M0=k0,g1=f1,a1=l1;;)if(F0=M0>>1,G0=F0+a1|0,p0=x0+(G0<<2)|0,P0=e[p0>>2]|0,R0=P0>>>0>u0>>>0,S0=R0?0:F0,L0=S0+a1|0,Y0=R0?F0:0,N0=g1-Y0|0,V0=N0-L0|0,T0=(V0|0)>1,T0)M0=V0,g1=N0,a1=L0;else{s1=L0;break}else s1=l1;return U0=t+28|0,r1=e[U0>>2]|0,O0=r1+s1|0,e1=u[O0>>0]|0,v0=e1<<24>>24,i1=(v0|0)>(A1|0),i1?(iB(n,A1),o=-1,o|0):(iB(n,v0),o=s1,o|0)}function Jv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0;for(c1=m,p=n+28|0,B=e[p>>2]|0,M=n+4|0,H=e[M>>2]|0,c0=t+4|0,e[c0>>2]=128,E0=t+8|0,e[E0>>2]=64,p0=B+2932|0,H0=e[p0>>2]|0,N0=t+12|0,e[N0>>2]=H0,e[t>>2]=H,V0=t+164|0,e[V0>>2]=128,v=B+4|0,S=e[v>>2]|0,w=(S|0)/2&-1,y=t+176|0,e[y>>2]=w,D=i4(128,4)|0,Q=t+36|0,e[Q>>2]=D,_=t+16|0,sB(_,128),F=e[Q>>2]|0,O0=0;R=+(O0|0),L=R*.024736950028266088,T=+Fn(+L),G=T,N=F+(O0<<2)|0,P=G*G,s[N>>2]=P,z=O0+1|0,r1=(z|0)==128,!r1;)O0=z;for(Y=t+40|0,e[Y>>2]=2,t0=t+44|0,e[t0>>2]=4,J=t+56|0,e[J>>2]=4,W=t+60|0,e[W>>2]=5,e0=t+72|0,e[e0>>2]=6,X=t+76|0,e[X>>2]=6,U=t+88|0,e[U>>2]=9,o0=t+92|0,e[o0>>2]=8,Z=t+104|0,e[Z>>2]=13,V=t+108|0,e[V>>2]=8,A0=t+120|0,e[A0>>2]=17,n0=t+124|0,e[n0>>2]=8,i0=t+136|0,e[i0>>2]=22,r0=t+140|0,e[r0>>2]=8,s0=4,v0=0;;){if(K=s0<<2,l0=k9(K)|0,j=((t+40|0)+(v0<<4)|0)+8|0,e[j>>2]=l0,$0=(s0|0)>0,$0){for(g0=+(s0|0),f0=((t+40|0)+(v0<<4)|0)+12|0,C=+s[f0>>2],D0=C,e1=0;;)if(Q0=+(e1|0),d0=Q0+.5,y0=d0/g0,h0=y0*3.141592653589793,C0=+Fn(+h0),u0=C0,k0=l0+(e1<<2)|0,s[k0>>2]=u0,J0=D0+u0,B0=e1+1|0,T0=(B0|0)==(s0|0),T0){o=J0;break}else D0=J0,e1=B0;s[f0>>2]=o,E=f0,F0=o}else c=((t+40|0)+(v0<<4)|0)+12|0,I=+s[c>>2],E=c,F0=I;if(x0=1/F0,s[E>>2]=x0,M0=v0+1|0,U0=(M0|0)==7,U0)break;a=((t+40|0)+(M0<<4)|0)+4|0,f=e[a>>2]|0,s0=f,v0=M0}G0=H*7|0,P0=i4(G0,144)|0,R0=t+152|0,e[R0>>2]=P0,S0=e[V0>>2]|0,L0=i4(S0,4)|0,Y0=t+160|0,e[Y0>>2]=L0}function Kv(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0;G=m,n=t+16|0,AB(n),o=t+48|0,w=e[o>>2]|0,I2(w),D=t+64|0,Q=e[D>>2]|0,I2(Q),_=t+80|0,F=e[_>>2]|0,I2(F),R=t+96|0,L=e[R>>2]|0,I2(L),M=t+112|0,a=e[M>>2]|0,I2(a),c=t+128|0,f=e[c>>2]|0,I2(f),E=t+144|0,I=e[E>>2]|0,I2(I),C=t+36|0,p=e[C>>2]|0,I2(p),B=t+152|0,v=e[B>>2]|0,I2(v),S=t+160|0,y=e[S>>2]|0,I2(y),se(t|0,0,180)|0}function Vv(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0;if(j1=m,f=t+4|0,E=e[f>>2]|0,L=E+28|0,e0=e[L>>2]|0,K=e0+2868|0,h0=t+104|0,G0=e[h0>>2]|0,U0=e[G0>>2]|0,s1=U0+168|0,p1=e[s1>>2]|0,I=U0+8|0,v=e[I>>2]|0,S=(p1|0)/(v|0)&-1,w=t+20|0,y=e[w>>2]|0,D=(y|0)/(v|0)&-1,Q=D+-4|0,_=(S|0)<0,n=_?0:S,F=D+2|0,R=U0+164|0,M=e[R>>2]|0,T=(F|0)>(M|0),T&&(e[R>>2]=F,G=U0+160|0,N=e[G>>2]|0,P=F<<2,z=Ni(N,P)|0,e[G>>2]=z),Y=(n|0)<(Q|0),Y)for(t0=U0+156|0,J=U0+160|0,W=t+8|0,H=U0+40|0,X=U0+152|0,v1=n;;){if(U=e[t0>>2]|0,o0=U+1|0,Z=(U|0)>23,a=Z?24:o0,e[t0>>2]=a,V=e[U0>>2]|0,A0=(V|0)>0,A0){for(G1=0,q1=0;;)if(c0=e[W>>2]|0,s0=c0+(G1<<2)|0,l0=e[s0>>2]|0,j=e[I>>2]|0,$0=i5(j,v1)|0,g0=l0+($0<<2)|0,f0=e[X>>2]|0,Q0=G1*7|0,d0=f0+(Q0*144|0)|0,y0=Wv(U0,K,g0,H,d0)|0,E0=y0|q1,C0=G1+1|0,u0=e[U0>>2]|0,k0=(C0|0)<(u0|0),k0)G1=C0,q1=E0;else{c=E0;break}J0=v1+2|0,D0=e[J>>2]|0,B0=D0+(J0<<2)|0,e[B0>>2]=0,x0=c&1,F0=(x0|0)==0,F0||(M0=D0+(v1<<2)|0,e[M0>>2]=1,p0=v1+1|0,P0=D0+(p0<<2)|0,e[P0>>2]=1),R0=c&2,S0=(R0|0)==0,S0||(L0=D0+(v1<<2)|0,e[L0>>2]=1,Y0=(v1|0)>0,Y0&&(H0=v1+-1|0,N0=D0+(H0<<2)|0,e[N0>>2]=1)),V0=c&4,T0=(V0|0)==0,T0||(e[t0>>2]=-1)}else n0=v1+2|0,i0=e[J>>2]|0,r0=i0+(n0<<2)|0,e[r0>>2]=0;if(r1=v1+1|0,Z1=(r1|0)==(Q|0),Z1)break;v1=r1}if(O0=e[I>>2]|0,e1=i5(O0,Q)|0,e[s1>>2]=e1,v0=t+48|0,i1=e[v0>>2]|0,c1=t+40|0,$1=e[c1>>2]|0,f1=e0+($1<<2)|0,g1=e[f1>>2]|0,l1=(g1|0)/4&-1,a1=l1+i1|0,n1=e0+4|0,A1=e[n1>>2]|0,z0=(A1|0)/2&-1,I1=a1+z0|0,h1=e[e0>>2]|0,E1=(h1|0)/4&-1,u1=I1+E1|0,d1=U0+176|0,B1=e[d1>>2]|0,Q1=e1-O0|0,D1=(B1|0)<(Q1|0),!D1)return o=-1,o|0;for(_1=U0+160|0,K1=B1;;){if(x1=(K1|0)<(u1|0),!x1){o=1,Y1=22;break}if(e[d1>>2]=K1,L1=(K1|0)/(O0|0)&-1,N1=e[_1>>2]|0,w1=N1+(L1<<2)|0,U1=e[w1>>2]|0,C=(U1|0)!=0,p=(K1|0)>(i1|0),H1=p&C,y1=O0+K1|0,H1){P1=K1,Y1=21;break}if(k1=(y1|0)<(Q1|0),k1)K1=y1;else{o=-1,Y1=22;break}}return(Y1|0)==21?(B=U0+172|0,e[B>>2]=P1,o=0,o|0):(Y1|0)==22?o|0:0}function zv(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0;if(E0=m,c=t+104|0,f=e[c>>2]|0,Q=e[f>>2]|0,Y=t+4|0,A0=e[Y>>2]|0,s0=A0+28|0,l0=e[s0>>2]|0,j=t+48|0,$0=e[j>>2]|0,g0=t+40|0,E=e[g0>>2]|0,I=l0+(E<<2)|0,C=e[I>>2]|0,p=(C|0)/4&-1,B=$0-p|0,v=p+$0|0,S=(E|0)==0,S?(N=e[l0>>2]|0,P=(N|0)/4&-1,o=P,a=P):(w=t+36|0,y=e[w>>2]|0,D=l0+(y<<2)|0,_=e[D>>2]|0,F=(_|0)/4&-1,R=t+44|0,L=e[R>>2]|0,M=l0+(L<<2)|0,T=e[M>>2]|0,G=(T|0)/4&-1,o=G,a=F),f0=B-a|0,Q0=v+o|0,z=Q+172|0,t0=e[z>>2]|0,J=(t0|0)>=(f0|0),W=(t0|0)<(Q0|0),y0=J&W,y0)return n=1,n|0;if(e0=Q+8|0,H=e[e0>>2]|0,X=(f0|0)/(H|0)&-1,U=(Q0|0)/(H|0)&-1,o0=(X|0)<(U|0),!o0)return n=0,n|0;for(Z=Q+160|0,V=e[Z>>2]|0,d0=X;;){if(r0=V+(d0<<2)|0,K=e[r0>>2]|0,c0=(K|0)==0,n0=d0+1|0,!c0){n=1,h0=9;break}if(i0=(n0|0)<(U|0),i0)d0=n0;else{n=0,h0=9;break}}return(h0|0)==9?n|0:0}function Zv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0;if(N=m,o=t+168|0,a=e[o>>2]|0,y=t+8|0,Q=e[y>>2]|0,_=(a|0)/(Q|0)&-1,F=_+2|0,R=(n|0)/(Q|0)&-1,L=t+160|0,M=e[L>>2]|0,T=M+(R<<2)|0,c=F-R|0,f=c<<2,Vo(M|0,T|0,f|0)|0,E=e[o>>2]|0,I=E-n|0,e[o>>2]=I,C=t+172|0,p=e[C>>2]|0,B=(p|0)>-1,!B){S=t+176|0,w=e[S>>2]|0,D=w-n|0,e[S>>2]=D;return}v=p-n|0,e[C>>2]=v,S=t+176|0,w=e[S>>2]|0,D=w-n|0,e[S>>2]=D}function Wv(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0;if(u3=m,Y=t+4|0,t0=e[Y>>2]|0,$2=t+12|0,M2=+s[$2>>2],P2=t0<<2,_=P2,k2=m,m=m+((1*_|0)+15&-16)|0,D5=t+156|0,c2=e[D5>>2]|0,F2=(c2|0)>5,F5=(c2|0)/2&-1,f=F2?F5:2,J=n+60|0,i0=+s[J>>2],d0=F5+-2|0,F0=+(d0|0),V0=i0-F0,g1=V0<0,f6=g1?0:V0,d1=f6>i0,B3=d1?i0:f6,w1=(t0|0)>0,w1)for(r2=t+36|0,a2=e[r2>>2]|0,P5=0;i2=o+(P5<<2)|0,o2=+s[i2>>2],X1=a2+(P5<<2)|0,n2=+s[X1>>2],f2=n2*o2,e2=k2+(P5<<2)|0,s[e2>>2]=f2,y2=P5+1|0,C3=(y2|0)==(t0|0),!C3;)P5=y2;S2=t+16|0,sQ(S2,k2,k2),w2=+s[k2>>2],C2=w2*w2,_2=C2,G2=k2+4|0,u2=+s[G2>>2],K2=u2,N2=K2*K2,q2=N2*.7,T2=q2+_2,O2=k2+8|0,V2=+s[O2>>2],s5=V2,T1=s5*s5,j2=T1*.2,R5=T2+j2,X2=R5,v5=c+140|0,z2=e[v5>>2]|0,f5=(z2|0)==0,f5?(w5=c+136|0,O5=+s[w5>>2],$5=O5+X2,E5=c+132|0,s[E5>>2]=$5,s[w5>>2]=X2,T=E5,H2=$5):(r5=c+132|0,x2=+s[r5>>2],R2=x2+X2,s[r5>>2]=R2,m2=c+136|0,C5=+s[m2>>2],x5=C5+X2,s[m2>>2]=x5,T=r5,H2=R2),u5=(c+72|0)+(z2<<2)|0,S5=+s[u5>>2],G5=H2-S5,s[T>>2]=G5,s[u5>>2]=X2,I5=e[v5>>2]|0,A5=I5+1|0,l5=(I5|0)>13,E=l5?0:A5,e[v5>>2]=E,m5=(t0|0)/2&-1,M1=(t0|0)>1;e:do if(M1)for(k5=H2*.0625,c5=(s[p2>>2]=k5,e[p2>>2]|0),o5=c5&2147483647,Z2=+(o5>>>0),B5=Z2*7177114298428933e-22,e5=B5+-764.6162109375,n5=e5,g5=n5*.5,Y2=g5+-15,h5=Y2,F=h5,x0=w2,y5=0;;){if(B0=x0*x0,M0=y5|1,G0=k2+(M0<<2)|0,p0=+s[G0>>2],P0=p0*p0,R0=P0+B0,S0=(s[p2>>2]=R0,e[p2>>2]|0),L0=S0&2147483647,Y0=+(L0>>>0),H0=Y0*35885571492144663e-23,N0=H0+-382.30810546875,T0=N0>1,O0=k2+(r1<<2)|0,s[O0>>2]=z,e1=y5+2|0,v0=(e1|0)<(m5|0),!v0)break e;i1=F+-8,L=k2+(e1<<2)|0,M=+s[L>>2],F=i1,x0=M,y5=e1}while(!1);if(t5=(f|0)>0,t5)o3=0,N3=0;else{for(t3=0,V3=0;;){if(c1=(a+(t3<<4)|0)+4|0,$1=e[c1>>2]|0,f1=($1|0)>0,f1)for(l1=a+(t3<<4)|0,s1=e[l1>>2]|0,a1=(a+(t3<<4)|0)+8|0,n1=e[a1>>2]|0,a3=0,G3=0;;)if(A1=s1+G3|0,z0=k2+(A1<<2)|0,I1=+s[z0>>2],h1=n1+(G3<<2)|0,E1=+s[h1>>2],u1=E1*I1,B1=u1+a3,p1=G3+1|0,Q1=(p1|0)<($1|0),Q1)a3=B1,G3=p1;else{_3=B1;break}else _3=0;if(D1=(a+(t3<<4)|0)+12|0,_1=+s[D1>>2],y1=_1*_3,k1=(c+(t3*144|0)|0)+68|0,x1=e[k1>>2]|0,L1=(x1|0)<1,p=L1?16:-1,I=p+x1|0,N1=(c+(t3*144|0)|0)+(I<<2)|0,U1=+s[N1>>2],Z1=y1U1,v=v1?U1:y1,K1=v+-99999,P1=G1+99999,H1=(c+(t3*144|0)|0)+(x1<<2)|0,s[H1>>2]=y1,q1=e[k1>>2]|0,Y1=q1+1|0,j1=(q1|0)>15,D=j1?0:Y1,e[k1>>2]=D,W1=(n+4|0)+(t3<<2)|0,O1=+s[W1>>2],l2=O1+B3,z1=P1>l2,h2=V3|5,z5=z1?h2:V3,s2=(n+32|0)+(t3<<2)|0,d2=+s[s2>>2],A2=d2-B3,V1=K1>2]|0,a5=(W2|0)>0,a5)for(Q0=a+(o3<<4)|0,n0=e[Q0>>2]|0,y0=(a+(o3<<4)|0)+8|0,s0=e[y0>>2]|0,$3=0,L5=0;;)if(A0=n0+L5|0,r0=k2+(A0<<2)|0,K=+s[r0>>2],c0=s0+(L5<<2)|0,l0=+s[c0>>2],j=l0*K,$0=j+$3,g0=L5+1|0,f0=(g0|0)<(W2|0),f0)$3=$0,L5=g0;else{T3=$0;break}else T3=0;for(h0=(a+(o3<<4)|0)+12|0,E0=+s[h0>>2],g3=E0*T3,e3=(c+(o3*144|0)|0)+68|0,f3=e[e3>>2]|0,C0=(f3|0)<1,B=C0?16:-1,C=B+f3|0,u0=(c+(o3*144|0)|0)+(C<<2)|0,k0=+s[u0>>2],J0=g3k0,S=D0?k0:g3,t6=0,R3=C,w3=-99999,p3=99999;;)if(e0=(R3|0)<1,y=e0?16:-1,w=y+R3|0,H=(c+(o3*144|0)|0)+(w<<2)|0,X=+s[H>>2],U=w3X,G=Z?X:p3,V=t6+1|0,q5=(V|0)==(f|0),q5){R=o0,N=G;break}else t6=V,R3=w,w3=o0,p3=G;if(p5=S-N,H5=X5-R,d5=(c+(o3*144|0)|0)+(f3<<2)|0,s[d5>>2]=g3,K5=e[e3>>2]|0,s3=K5+1|0,E3=(K5|0)>15,Q=E3?0:s3,e[e3>>2]=Q,V5=(n+4|0)+(o3<<2)|0,y3=+s[V5>>2],h3=y3+B3,m3=H5>h3,q3=N3|5,k3=m3?q3:N3,M3=(n+32|0)+(o3<<2)|0,Z5=+s[M3>>2],Q3=Z5-B3,j5=p5>2]|0,C2=n+1288|0,z3=e[C2>>2]|0,F3=n+1284|0,E6=e[F3>>2]|0,I9=(E6|0)>0,I9){for(g8=0;W4=B4+(g8<<2)|0,e[W4>>2]=-200,Ie=g8+1|0,de=(Ie|0)==(E6|0),!de;)g8=Ie;if(I9){for(H3=0;h4=$4+(H3<<2)|0,e[h4>>2]=-200,W=H3+1|0,a4=(W|0)==(E6|0),!a4;)H3=W;if(I9){for(r0=E6<<2,se(F8|0,0,r0|0)|0,Q9=0;y0=ke+(Q9<<2)|0,e[y0>>2]=1,M0=Q9+1|0,Te=(M0|0)==(E6|0),!Te;)Q9=M0;if(I9){if(l1=E6<<2,se(V8|0,-1,l1|0)|0,B1=(E6|0)>1,!B1)return te=0,m=X9,te|0;for(U1=z3+-1|0,W1=J+1112|0,t2=E6+-1|0,M=e[n>>2]|0,C4=M,C9=0,Ee=0;;){S4=C9+1|0,D4=n+(S4<<2)|0,x4=e[D4>>2]|0,T4=U6+(C9*56|0)|0,Re=T4,b7=Re+56|0;do e[Re>>2]=0,Re=Re+4|0;while((Re|0)<(b7|0));if(e[T4>>2]=C4,G4=(U6+(C9*56|0)|0)+4|0,e[G4>>2]=x4,N9=(x4|0)<(z3|0),X8=N9?x4:U1,N4=(X8|0)<(C4|0),N4)y8=0,W8=0,v8=0,S8=0,d8=0,_e=0,e7=0,H9=0,Y8=0,b8=0,P7=0,H7=0;else for(w4=C4,h8=0,Ge=0,H4=0,W9=0,Ce=0,r8=0,I3=0,S9=0,s8=0,m9=0,A7=0,_8=0;;){A4=a+(w4<<2)|0,P=+s[A4>>2],F4=P*7.314285755157471,g4=F4+1023.5,ue=~~g4,P9=(ue|0)>1023,d9=(ue|0)<0,E=d9?0:ue,v=P9?1023:E,Le=(v|0)==0;do if(Le)O8=h8,je=Ge,e8=H4,I8=W9,Ue=Ce,p4=r8,C8=I3,H8=S9,Y4=s8,qe=m9,ne=A7,J8=_8;else if(ze=o+(w4<<2)|0,U4=+s[ze>>2],Me=+s[W1>>2],O4=Me+U4,j4=!(O4>=P),j4){oe=w4+r8|0,Z9=v+_8|0,ae=i5(w4,w4)|0,$e=ae+W9|0,m4=i5(v,v)|0,e0=m4+m9|0,H=i5(v,w4)|0,X=H+S9|0,U=Ge+1|0,O8=h8,je=U,e8=H4,I8=$e,Ue=Ce,p4=oe,C8=I3,H8=X,Y4=s8,qe=e0,ne=A7,J8=Z9;break}else{we=w4+Ce|0,Ze=v+A7|0,z9=i5(w4,w4)|0,Ae=z9+H4|0,b6=i5(v,v)|0,P4=b6+s8|0,R9=i5(v,w4)|0,o4=R9+I3|0,b4=h8+1|0,O8=b4,je=Ge,e8=Ae,I8=W9,Ue=we,p4=r8,C8=o4,H8=S9,Y4=P4,qe=m9,ne=Ze,J8=_8;break}while(!1);if(o0=w4+1|0,Z=(w4|0)<(X8|0),Z)w4=o0,h8=O8,Ge=je,H4=e8,W9=I8,Ce=Ue,r8=p4,I3=C8,S9=H8,s8=Y4,m9=qe,A7=ne,_8=J8;else{y8=O8,W8=je,v8=e8,S8=I8,d8=Ue,_e=p4,e7=C8,H9=H8,Y8=Y4,b8=qe,P7=ne,H7=J8;break}}if(V=(U6+(C9*56|0)|0)+8|0,e[V>>2]=d8,A0=(U6+(C9*56|0)|0)+12|0,e[A0>>2]=P7,n0=(U6+(C9*56|0)|0)+16|0,e[n0>>2]=v8,i0=(U6+(C9*56|0)|0)+20|0,e[i0>>2]=Y8,K=(U6+(C9*56|0)|0)+24|0,e[K>>2]=e7,c0=(U6+(C9*56|0)|0)+28|0,e[c0>>2]=y8,s0=(U6+(C9*56|0)|0)+32|0,e[s0>>2]=_e,l0=(U6+(C9*56|0)|0)+36|0,e[l0>>2]=H7,j=(U6+(C9*56|0)|0)+40|0,e[j>>2]=S8,$0=(U6+(C9*56|0)|0)+44|0,e[$0>>2]=b8,g0=(U6+(C9*56|0)|0)+48|0,e[g0>>2]=H9,f0=(U6+(C9*56|0)|0)+52|0,e[f0>>2]=W8,Q0=y8+Ee|0,$6=(S4|0)==(t2|0),$6){h7=Q0;break}else C4=x4,C9=S4,Ee=Q0}}else fe=9}else fe=9}else fe=9}else fe=9;if((fe|0)==9){if(T0=(E6|0)==0,!T0)return te=0,m=X9,te|0;M2=U6+4|0,Re=U6,b7=Re+56|0;do e[Re>>2]=0,Re=Re+4|0;while((Re|0)<(b7|0));if(e[M2>>2]=z3,P2=(z3|0)<1,P2)N8=0,Z8=0,P8=0,u8=0,i8=0,j9=0,E8=0,ie=0,r7=0,n7=0,M7=0,T7=0;else for(k2=J+1112|0,l4=0,w8=0,f8=0,Xe=0,ce=0,ge=0,he=0,q4=0,re=0,n8=0,He=0,v7=0,A8=0;;){D5=a+(l4<<2)|0,N=+s[D5>>2],c2=N*7.314285755157471,F2=c2+1023.5,F5=~~F2,_3=(F5|0)>1023,L5=(F5|0)<0,f=L5?0:F5,B=_3?1023:f,N3=(B|0)==0;do if(N3)U8=w8,De=f8,be=Xe,t8=ce,Ne=ge,me=he,Oe=q4,Pe=re,D8=n8,s7=He,S7=v7,D7=A8;else if(a6=o+(l4<<2)|0,P3=+s[a6>>2],e6=+s[k2>>2],r9=e6+P3,x6=!(r9>=N),x6){g9=l4+he|0,h9=B+A8|0,f9=i5(l4,l4)|0,A9=f9+ce|0,o9=i5(B,B)|0,M9=o9+He|0,M6=i5(B,l4)|0,e9=M6+re|0,T9=f8+1|0,U8=w8,De=T9,be=Xe,t8=A9,Ne=ge,me=g9,Oe=q4,Pe=e9,D8=n8,s7=M9,S7=v7,D7=h9;break}else{N6=l4+ge|0,D6=B+v7|0,V6=i5(l4,l4)|0,y6=V6+Xe|0,F6=i5(B,B)|0,L6=F6+n8|0,X6=i5(B,l4)|0,s9=X6+q4|0,W6=w8+1|0,U8=W6,De=f8,be=y6,t8=ce,Ne=N6,me=he,Oe=s9,Pe=re,D8=L6,s7=He,S7=D6,D7=A8;break}while(!1);if(u9=l4+1|0,E9=(u9|0)==(z3|0),E9){N8=U8,Z8=De,P8=be,u8=t8,i8=Ne,j9=me,E8=Oe,ie=Pe,r7=D8,n7=s7,M7=S7,T7=D7;break}else l4=u9,w8=U8,f8=De,Xe=be,ce=t8,ge=Ne,he=me,q4=Oe,re=Pe,n8=D8,He=s7,v7=S7,A8=D7}d4=U6+8|0,e[d4>>2]=i8,n4=U6+12|0,e[n4>>2]=M7,c4=U6+16|0,e[c4>>2]=P8,G9=U6+20|0,e[G9>>2]=r7,V9=U6+24|0,e[V9>>2]=E8,v9=U6+28|0,e[v9>>2]=N8,H6=U6+32|0,e[H6>>2]=j9,t9=U6+36|0,e[t9>>2]=T7,E4=U6+40|0,e[E4>>2]=u8,v4=U6+44|0,e[v4>>2]=n7,s4=U6+48|0,e[s4>>2]=ie,p9=U6+52|0,e[p9>>2]=Z8,h7=N8}if(d0=(h7|0)==0,d0)return te=0,m=X9,te|0;e[i7>>2]=-200,e[q8>>2]=-200,h0=E6+-1|0,rB(U6,h0,i7,q8,J)|0,E0=e[i7>>2]|0,e[B4>>2]=E0,e[$4>>2]=E0,C0=e[q8>>2]|0,u0=$4+4|0,e[u0>>2]=C0,k0=B4+4|0,e[k0>>2]=C0,J0=(E6|0)>2;do if(J0){D0=J+1112|0,B0=J+1096|0,x0=J+1100|0,F0=J+1104|0,M4=2;e:for(;;){G0=(n+520|0)+(M4<<2)|0,p0=e[G0>>2]|0,P0=F8+(p0<<2)|0,R0=e[P0>>2]|0,S0=ke+(p0<<2)|0,L0=e[S0>>2]|0,Y0=V8+(R0<<2)|0,H0=e[Y0>>2]|0,N0=(H0|0)==(L0|0);t:do if(!N0){if(V0=(n+520|0)+(R0<<2)|0,U0=e[V0>>2]|0,r1=(n+520|0)+(L0<<2)|0,O0=e[r1>>2]|0,e[Y0>>2]=L0,e1=(J+836|0)+(R0<<2)|0,v0=e[e1>>2]|0,i1=(J+836|0)+(L0<<2)|0,c1=e[i1>>2]|0,$1=B4+(R0<<2)|0,f1=e[$1>>2]|0,g1=(f1|0)<0,s1=$4+(R0<<2)|0,a1=e[s1>>2]|0,g1?y=a1:(n1=(a1|0)<0,n1?y=f1:(A1=a1+f1|0,z0=A1>>1,y=z0)),I1=B4+(L0<<2)|0,h1=e[I1>>2]|0,E1=(h1|0)<0,u1=$4+(L0<<2)|0,d1=e[u1>>2]|0,E1?Q=d1:(p1=(d1|0)<0,p1?Q=h1:(Q1=d1+h1|0,D1=Q1>>1,Q=D1)),_1=(y|0)==-1,y1=(Q|0)==-1,w7=_1|y1,w7){fe=38;break e}k1=Q-y|0,x1=c1-v0|0,Se=(k1|0)>-1,y9=0-k1|0,L1=Se?k1:y9,N1=(k1|0)/(x1|0)&-1,w1=k1>>31,Z1=w1|1,G1=a+(v0<<2)|0,Y=+s[G1>>2],v1=Y*7.314285755157471,K1=v1+1023.5,P1=~~K1,H1=(P1|0)>1023,q1=(P1|0)<0,I=q1?0:P1,S=H1?1023:I,Y1=i5(N1,x1)|0,$7=(Y1|0)>-1,g7=0-Y1|0,j1=$7?Y1:g7,r2=L1-j1|0,O1=y-S|0,l2=i5(O1,O1)|0,z1=o+(v0<<2)|0,h2=+s[z1>>2],s2=+s[D0>>2],d2=s2+h2,A2=!(d2>=Y),A2?fe=42:(V1=+(y|0),g2=+s[B0>>2],a2=g2+V1,$2=+(S|0),i2=a2<$2,i2||(o2=+s[x0>>2],X1=V1-o2,n2=X1>$2,n2||(fe=42)));i:do if((fe|0)==42){if(fe=0,f2=v0+1|0,e2=(f2|0)<(c1|0),e2)for(u2=f2,X4=0,y7=l2,G8=1,f7=y;;){if(y2=X4+r2|0,S2=(y2|0)<(x1|0),w2=S2?0:Z1,_2=S2?0:x1,L4=y2-_2|0,L=f7+N1|0,t7=L+w2|0,G2=a+(u2<<2)|0,z=+s[G2>>2],K2=z*7.314285755157471,N2=K2+1023.5,q2=~~N2,T2=(q2|0)>1023,O2=(q2|0)<0,C=O2?0:q2,D=T2?1023:C,V2=t7-D|0,s5=i5(V2,V2)|0,T1=s5+y7|0,j2=G8+1|0,R5=o+(u2<<2)|0,X2=+s[R5>>2],v5=X2+s2,z2=v5>=z,f5=(D|0)!=0,j8=z2&f5,j8&&(w5=+(t7|0),O5=+s[B0>>2],$5=O5+w5,E5=+(D|0),r5=$5>2],R2=w5-x2,m2=R2>E5,m2)))break i;if(C5=u2+1|0,x5=(C5|0)<(c1|0),x5)u2=C5,X4=L4,y7=T1,G8=j2,f7=t7;else{z8=T1,T8=j2;break}}else z8=l2,T8=1;if(u5=+s[B0>>2],S5=u5*u5,G5=+(T8|0),H2=S5/G5,I5=+s[F0>>2],A5=H2>I5,!A5&&(l5=+s[x0>>2],m5=l5*l5,M1=m5/G5,k5=M1>I5,!k5&&(c5=(z8|0)/(T8|0)&-1,o5=+(c5|0),Z2=o5>I5,Z2)))break;$3=B4+(M4<<2)|0,e[$3>>2]=-200,l3=$4+(M4<<2)|0,e[l3>>2]=-200;break t}while(!1);if(e[L8>>2]=-200,e[M8>>2]=-200,e[ve>>2]=-200,e[We>>2]=-200,B5=U6+(U0*56|0)|0,e5=p0-U0|0,n5=rB(B5,e5,L8,M8,J)|0,g5=U6+(p0*56|0)|0,Y2=O0-p0|0,h5=rB(g5,Y2,ve,We,J)|0,t5=(n5|0)!=0,t5&&(e[L8>>2]=y,b5=e[ve>>2]|0,e[M8>>2]=b5),W2=(h5|0)==0,!W2&&(a5=e[M8>>2]|0,e[ve>>2]=a5,e[We>>2]=Q,t5)){p5=B4+(M4<<2)|0,e[p5>>2]=-200,H5=$4+(M4<<2)|0,e[H5>>2]=-200;break}if(X5=e[L8>>2]|0,e[s1>>2]=X5,d5=(R0|0)==0,d5&&(e[B4>>2]=X5),f3=e[M8>>2]|0,g3=B4+(M4<<2)|0,e[g3>>2]=f3,K5=e[ve>>2]|0,e3=$4+(M4<<2)|0,e[e3>>2]=K5,s3=e[We>>2]|0,e[I1>>2]=s3,E3=(L0|0)==1,E3&&(e[u0>>2]=s3),V5=K5&f3,y3=(V5|0)>-1,y3){h3=(p0|0)>0;i:do if(h3)for(K8=p0;;){if(Q7=K8+-1|0,q3=ke+(Q7<<2)|0,M3=e[q3>>2]|0,Z5=(M3|0)==(L0|0),!Z5)break i;if(e[q3>>2]=M4,Q3=(K8|0)>1,Q3)K8=Q7;else break}while(!1);if(c7=p0+1|0,m3=(c7|0)<(E6|0),m3)for(x8=c7;;){if(j5=F8+(x8<<2)|0,j3=e[j5>>2]|0,T3=(j3|0)==(R0|0),!T3)break t;if(e[j5>>2]=M4,l7=x8+1|0,a3=(l7|0)<(E6|0),a3)x8=l7;else break}}}while(!1);if(C3=M4+1|0,q5=(C3|0)<(E6|0),q5)M4=C3;else{fe=68;break}}if((fe|0)==38)Cv(1);else if((fe|0)==68){T=e[B4>>2]|0,G=e[$4>>2]|0,y5=T,t6=G;break}}else y5=E0,t6=E0;while(!1);if(N5=E6<<2,P5=O7(t,N5)|0,G3=(y5|0)<0,G3?w=t6:(t3=(t6|0)<0,t3?w=y5:(o3=t6+y5|0,R3=o3>>1,w=R3)),e[P5>>2]=w,f6=e[k0>>2]|0,B3=(f6|0)<0,w3=e[u0>>2]|0,B3?F=w3:(p3=(w3|0)<0,p3?F=f6:(X3=w3+f6|0,V3=X3>>1,F=V3)),z5=P5+4|0,e[z5>>2]=F,J0)ee=2;else return te=P5,m=X9,te|0;for(;;)if(k3=ee+-2|0,c3=(n+1032|0)+(k3<<2)|0,U3=e[c3>>2]|0,o6=(n+780|0)+(k3<<2)|0,u3=e[o6>>2]|0,w6=(J+836|0)+(U3<<2)|0,k6=e[w6>>2]|0,v6=(J+836|0)+(u3<<2)|0,B6=e[v6>>2]|0,p6=P5+(U3<<2)|0,_6=e[p6>>2]|0,Y6=P5+(u3<<2)|0,m6=e[Y6>>2]|0,v3=(J+836|0)+(ee<<2)|0,Z3=e[v3>>2]|0,W3=_6&32767,u6=m6&32767,O3=u6-W3|0,S3=B6-k6|0,a7=(O3|0)>-1,k8=0-O3|0,Y3=a7?O3:k8,S6=Z3-k6|0,i6=i5(Y3,S6)|0,i3=(i6|0)/(S3|0)&-1,P6=(O3|0)<0,A3=0-i3|0,R=P6?A3:i3,_=R+W3|0,r6=B4+(ee<<2)|0,I6=e[r6>>2]|0,D3=(I6|0)<0,T6=$4+(ee<<2)|0,Q6=e[T6>>2]|0,D3?p=Q6:(R6=(Q6|0)<0,R6?p=I6:(K6=Q6+I6|0,d6=K6>>1,p=d6)),J6=(p|0)<0,x3=(_|0)==(p|0),k7=J6|x3,Z6=_|32768,c=k7?Z6:p,G6=P5+(ee<<2)|0,e[G6>>2]=c,j6=ee+1|0,le=(j6|0)==(E6|0),le){te=P5;break}else ee=j6;return m=X9,te|0}function R8(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0;if(A0=m,f=n+1284|0,E=e[f>>2]|0,_=(o|0)!=0,z=(a|0)!=0,o0=_&z,!o0)return Z=0,Z|0;if(Y=E<<2,t0=O7(t,Y)|0,J=(E|0)>0,!J)return Z=t0,Z|0;for(W=65536-c|0,U=0;;)if(e0=o+(U<<2)|0,H=e[e0>>2]|0,I=H&32767,C=i5(I,W)|0,p=a+(U<<2)|0,B=e[p>>2]|0,v=B&32767,S=i5(v,c)|0,w=C+32768|0,y=w+S|0,D=y>>16,Q=t0+(U<<2)|0,e[Q>>2]=D,F=e[e0>>2]|0,R=F&32768,L=(R|0)==0,L||(M=e[p>>2]|0,T=M&32768,G=(T|0)==0,G||(N=D|32768,e[Q>>2]=N)),P=U+1|0,X=(P|0)==(E|0),X){Z=t0;break}else U=P;return Z|0}function jv(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,B6=0,z3=0,a6=0,p6=0,_6=0,Y6=0,m6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,A3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0;if(L6=m,m=m+336|0,x6=L6+64|0,c3=L6+32|0,x3=L6,D=o+1296|0,Q=e[D>>2]|0,g2=o+1284|0,x2=e[g2>>2]|0,A5=n+64|0,n5=e[A5>>2]|0,X5=n5+4|0,h3=e[X5>>2]|0,$3=h3+28|0,o3=e[$3>>2]|0,_=o3+2848|0,t0=e[_>>2]|0,n0=(a|0)==0,n0)return U2(t,0,1),R5=n+36|0,X2=e[R5>>2]|0,v5=(X2|0)/2&-1,z2=v5<<2,se(c|0,0,z2|0)|0,E=0,m=L6,E|0;if(Q0=(x2|0)>0,Q0)for(x0=Q+832|0,u6=0;N0=a+(u6<<2)|0,f1=e[N0>>2]|0,u1=f1&32767,N1=e[x0>>2]|0,(N1|0)==4?(V2=u1>>>4,N6=V2):(N1|0)==1?(j1=u1>>>2,N6=j1):(N1|0)==2?(a2=u1>>>3,N6=a2):(N1|0)==3?(w2=(u1>>>0)/12&-1,N6=w2):N6=u1,f5=f1&32768,w5=f5|N6,e[N0>>2]=w5,O5=u6+1|0,m6=(O5|0)==(x2|0),!m6;)u6=O5;if($5=e[a>>2]|0,e[x6>>2]=$5,k2=a+4|0,E5=e[k2>>2]|0,r5=x6+4|0,e[r5>>2]=E5,R2=(x2|0)>2,m2=o+1292|0,R2){for(O3=2;;){if(C5=O3+-2|0,x5=(o+1032|0)+(C5<<2)|0,u5=e[x5>>2]|0,S5=(o+780|0)+(C5<<2)|0,G5=e[S5>>2]|0,D5=(Q+836|0)+(u5<<2)|0,H2=e[D5>>2]|0,I5=(Q+836|0)+(G5<<2)|0,l5=e[I5>>2]|0,m5=a+(u5<<2)|0,M1=e[m5>>2]|0,k5=a+(G5<<2)|0,c5=e[k5>>2]|0,o5=(Q+836|0)+(O3<<2)|0,Z2=e[o5>>2]|0,c2=M1&32767,B5=c5&32767,e5=B5-c2|0,g5=l5-H2|0,P3=(e5|0)>-1,Z6=0-e5|0,Y2=P3?e5:Z6,h5=Z2-H2|0,t5=i5(Y2,h5)|0,b5=(t5|0)/(g5|0)&-1,W2=(e5|0)<0,a5=0-b5|0,C=W2?a5:b5,I=C+c2|0,F2=a+(O3<<2)|0,p5=e[F2>>2]|0,H5=p5&32768,d5=(H5|0)!=0,f3=(p5|0)==(I|0),r9=d5|f3,r9)g3=I|32768,e[F2>>2]=g3,K5=x6+(O3<<2)|0,e[K5>>2]=0;else{e3=e[m2>>2]|0,s3=e3-I|0,E3=(s3|0)<(I|0),f=E3?s3:I,F5=p5-I|0,V5=(F5|0)<0;do if(V5)if(y3=0-f|0,m3=(F5|0)<(y3|0),m3){q3=F5^-1,M3=f+q3|0,D6=M3;break}else{Z5=F5<<1,Q3=Z5^-1,D6=Q3;break}else if(j5=(f|0)>(F5|0),j5){_3=F5<<1,D6=_3;break}else{j3=f+F5|0,D6=j3;break}while(!1);T3=x6+(O3<<2)|0,e[T3>>2]=D6,e[m5>>2]=c2,a3=e[k5>>2]|0,l3=a3&32767,e[k5>>2]=l3}if(C3=O3+1|0,Y6=(C3|0)==(x2|0),Y6)break;O3=C3}v=e[x6>>2]|0,S=e[r5>>2]|0,X3=v,k3=S}else X3=$5,k3=E5;if(U2(t,1,1),q5=o+1308|0,N5=e[q5>>2]|0,P5=N5+1|0,e[q5>>2]=P5,y5=e[m2>>2]|0,G3=y5+-1|0,L5=L7(G3)|0,t6=L5<<1,t3=o+1304|0,R3=e[t3>>2]|0,f6=R3+t6|0,e[t3>>2]=f6,B3=e[m2>>2]|0,w3=B3+-1|0,p3=L7(w3)|0,U2(t,X3,p3),V3=e[m2>>2]|0,N3=V3+-1|0,z5=L7(N3)|0,U2(t,k3,z5),F=e[Q>>2]|0,R=(F|0)>0,R)for(L=o+1300|0,S3=0,i6=2;;){if(M=(Q+4|0)+(S3<<2)|0,T=e[M>>2]|0,G=(Q+128|0)+(T<<2)|0,N=e[G>>2]|0,P=(Q+192|0)+(T<<2)|0,z=e[P>>2]|0,Y=1<>2]=0,e[c3+4>>2]=0,e[c3+8>>2]=0,e[c3+12>>2]=0,e[c3+16>>2]=0,e[c3+20>>2]=0,e[c3+24>>2]=0,e[c3+28>>2]=0,J=(z|0)==0,!J){if(e[x3>>2]=0,e[x3+4>>2]=0,e[x3+8>>2]=0,e[x3+12>>2]=0,e[x3+16>>2]=0,e[x3+20>>2]=0,e[x3+24>>2]=0,e[x3+28>>2]=0,W=(z|0)==31,!W)for(A3=0;$0=((Q+320|0)+(T<<5)|0)+(A3<<2)|0,g0=e[$0>>2]|0,f0=(g0|0)<0,f0?y=1:(d0=(o3+1824|0)+(g0<<2)|0,y0=e[d0>>2]|0,h0=y0+4|0,E0=e[h0>>2]|0,y=E0),C0=x3+(A3<<2)|0,e[C0>>2]=y,u0=A3+1|0,k0=(u0|0)<(Y|0),k0;)A3=u0;e0=(N|0)>0;e:do if(e0){if(W)for(U3=0,w6=0,r6=0;;)if(J0=c3+(r6<<2)|0,D0=e[J0>>2]|0,B0=D0<>2]|0,T6=0;;){if(H=x3+(T6<<2)|0,X=e[H>>2]|0,o0=(U|0)<(X|0),o0){e6=T6,F3=31;break}if(Z=T6+1|0,V=(Z|0)<(Y|0),V)T6=Z;else{F3=33;break}}if((F3|0)==31?(F3=0,A0=c3+(I6<<2)|0,e[A0>>2]=e6,r0=e6):(F3|0)==33&&(F3=0,p=c3+(I6<<2)|0,w=e[p>>2]|0,r0=w),i0=r0<>2]|0,R0=t0+(P0*56|0)|0,S0=Rh(R0,u3,t)|0,L0=e[L>>2]|0,Y0=L0+S0|0,e[L>>2]=Y0}if(H0=(N|0)>0,H0)for(D3=0;V0=c3+(D3<<2)|0,T0=e[V0>>2]|0,U0=((Q+320|0)+(T<<5)|0)+(T0<<2)|0,r1=e[U0>>2]|0,O0=(r1|0)>-1,O0&&(e1=D3+i6|0,v0=x6+(e1<<2)|0,i1=e[v0>>2]|0,c1=(t0+(r1*56|0)|0)+4|0,$1=e[c1>>2]|0,g1=(i1|0)<($1|0),g1&&(l1=t0+(r1*56|0)|0,s1=Rh(l1,i1,t)|0,a1=e[t3>>2]|0,n1=a1+s1|0,e[t3>>2]=n1)),A1=D3+1|0,p6=(A1|0)==(N|0),!p6;)D3=A1;if(z0=N+i6|0,I1=S3+1|0,h1=e[Q>>2]|0,E1=(I1|0)<(h1|0),E1)S3=I1,i6=z0;else break}if(d1=e[a>>2]|0,B1=Q+832|0,p1=e[B1>>2]|0,Q1=i5(p1,d1)|0,D1=n+28|0,_1=e[D1>>2]|0,y1=o3+(_1<<2)|0,k1=e[y1>>2]|0,x1=(k1|0)/2&-1,L1=e[g2>>2]|0,w1=(L1|0)>1,w1)for(Z3=0,i3=1,Q6=0,d6=Q1;;){if(K1=(o+260|0)+(i3<<2)|0,P1=e[K1>>2]|0,H1=a+(P1<<2)|0,q1=e[H1>>2]|0,Y1=q1&32767,r2=(Y1|0)==(q1|0),r2)if(W1=e[B1>>2]|0,O1=i5(W1,q1)|0,l2=(Q+836|0)+(P1<<2)|0,z1=e[l2>>2]|0,h2=O1-d6|0,s2=z1-Q6|0,Y3=(h2|0)>-1,G6=0-h2|0,d2=Y3?h2:G6,A2=(h2|0)/(s2|0)&-1,V1=h2>>31,t2=V1|1,$2=i5(A2,s2)|0,S6=($2|0)>-1,j6=0-$2|0,i2=S6?$2:j6,o2=d2-i2|0,X1=(x1|0)>(z1|0),V6=X1?z1:x1,n2=(V6|0)>(Q6|0),n2&&(f2=c+(Q6<<2)|0,e[f2>>2]=d6),e2=Q6+1|0,y2=(e2|0)<(V6|0),y2)for(u2=e2,v6=0,y6=d6;;)if(S2=v6+o2|0,C2=(S2|0)<(s2|0),M2=C2?0:t2,_2=C2?0:s2,B6=S2-_2|0,B=y6+A2|0,F6=B+M2|0,G2=c+(u2<<2)|0,e[G2>>2]=F6,K2=u2+1|0,a6=(K2|0)==(V6|0),a6){W3=z1,R6=z1,J6=O1;break}else u2=K2,v6=B6,y6=F6;else W3=z1,R6=z1,J6=O1;else W3=Z3,R6=Q6,J6=d6;if(N2=i3+1|0,q2=e[g2>>2]|0,T2=(N2|0)<(q2|0),T2)Z3=W3,i3=N2,Q6=R6,d6=J6;else{v3=W3,K6=J6;break}}else v3=0,K6=Q1;if(U1=n+36|0,Z1=e[U1>>2]|0,G1=(Z1|0)/2&-1,v1=(v3|0)<(G1|0),v1)P6=v3;else return E=1,m=L6,E|0;for(;;)if(O2=c+(P6<<2)|0,e[O2>>2]=K6,s5=P6+1|0,P2=e[U1>>2]|0,T1=(P2|0)/2&-1,j2=(s5|0)<(T1|0),j2)P6=s5;else{E=1;break}return m=L6,E|0}function rB(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0;if(s5=m,p=e[t>>2]|0,B=n+-1|0,i0=(t+(B*56|0)|0)+4|0,d0=e[i0>>2]|0,F0=(n|0)>0,F0)for(V0=c+1108|0,g1=+s[V0>>2],t2=0,X1=0,f2=0,w2=0,G2=0,q2=0;;)if(d1=(t+(X1*56|0)|0)+52|0,w1=e[d1>>2]|0,r2=(t+(X1*56|0)|0)+28|0,v=e[r2>>2]|0,T=v+w1|0,H=+(T|0),X=H*g1,U=v+1|0,o0=+(U|0),Z=X/o0,V=Z,A0=V+1,n0=(t+(X1*56|0)|0)+32|0,r0=e[n0>>2]|0,K=+(r0|0),c0=(t+(X1*56|0)|0)+8|0,s0=e[c0>>2]|0,l0=+(s0|0),j=l0*A0,$0=K+w2,g0=$0+j,f0=(t+(X1*56|0)|0)+36|0,Q0=e[f0>>2]|0,y0=+(Q0|0),h0=(t+(X1*56|0)|0)+12|0,E0=e[h0>>2]|0,C0=+(E0|0),u0=C0*A0,k0=y0+q2,J0=k0+u0,D0=(t+(X1*56|0)|0)+40|0,B0=e[D0>>2]|0,x0=+(B0|0),M0=(t+(X1*56|0)|0)+16|0,G0=e[M0>>2]|0,p0=+(G0|0),P0=p0*A0,R0=x0+f2,S0=R0+P0,L0=(t+(X1*56|0)|0)+48|0,Y0=e[L0>>2]|0,H0=+(Y0|0),N0=(t+(X1*56|0)|0)+24|0,T0=e[N0>>2]|0,U0=+(T0|0),r1=U0*A0,O0=H0+G2,e1=O0+r1,v0=+(w1|0),i1=+(v|0),c1=A0*i1,$1=v0+t2,f1=$1+c1,l1=X1+1|0,o2=(l1|0)==(n|0),o2){a2=f1,n2=S0,S2=g0,_2=e1,N2=J0;break}else t2=f1,X1=l1,f2=S0,w2=g0,G2=e1,q2=J0;else a2=0,n2=0,S2=0,_2=0,N2=0;return s1=e[o>>2]|0,a1=(s1|0)>-1,a1?(n1=+(p|0),A1=S2+n1,z0=+(s1|0),I1=z0+N2,h1=i5(p,p)|0,E1=+(h1|0),u1=n2+E1,B1=i5(s1,p)|0,p1=+(B1|0),Q1=p1+_2,D1=a2+1,$2=D1,e2=u1,C2=A1,u2=Q1,T2=I1):($2=a2,e2=n2,C2=S2,u2=_2,T2=N2),_1=e[a>>2]|0,y1=(_1|0)>-1,y1?(k1=+(d0|0),x1=C2+k1,L1=+(_1|0),N1=L1+T2,U1=i5(d0,d0)|0,Z1=+(U1|0),G1=e2+Z1,v1=i5(_1,d0)|0,K1=+(v1|0),P1=K1+u2,H1=$2+1,i2=H1,y2=G1,M2=x1,K2=P1,O2=N1):(i2=$2,y2=e2,M2=C2,K2=u2,O2=T2),q1=y2*i2,Y1=M2*M2,j1=q1-Y1,W1=j1>0,W1?(O1=O2*y2,l2=M2*K2,z1=O1-l2,h2=z1/j1,s2=K2*i2,d2=M2*O2,A2=s2-d2,V1=A2/j1,g2=+(p|0),S=V1*g2,w=S+h2,y=+Gi(w),D=~~y,e[o>>2]=D,Q=+(d0|0),_=V1*Q,F=_+h2,R=+Gi(F),L=~~R,e[a>>2]=L,M=e[o>>2]|0,G=(M|0)>1023,G?(e[o>>2]=1023,E=e[a>>2]|0,N=E,W=1023):(N=L,W=M),P=(N|0)>1023,P?(e[a>>2]=1023,I=e[o>>2]|0,z=I,e0=1023):(z=W,e0=N),Y=(z|0)<0,Y?(e[o>>2]=0,C=e[a>>2]|0,t0=C):t0=e0,J=(t0|0)<0,J?(e[a>>2]=0,f=0,f|0):(f=0,f|0)):(e[o>>2]=0,e[a>>2]=0,f=1,f|0)}function Xv(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0;if(v0=m,E=t+836|0,I=t+840|0,F=e[I>>2]|0,J=e[t>>2]|0,U2(n,J,5),i0=e[t>>2]|0,d0=(i0|0)>0,d0){for(F0=t+4|0,Y0=0,O0=-1;;)if(B=F0+(Y0<<2)|0,v=e[B>>2]|0,U2(n,v,4),S=e[B>>2]|0,w=(O0|0)<(S|0),o=w?S:O0,y=Y0+1|0,D=e[t>>2]|0,Q=(y|0)<(D|0),Q)Y0=y,O0=o;else{a=o;break}if(G0=(a|0)>-1,G0)for(p0=t+128|0,P0=t+192|0,C=t+256|0,p=t+320|0,H0=0;;){if(_=p0+(H0<<2)|0,R=e[_>>2]|0,L=R+-1|0,U2(n,L,3),M=P0+(H0<<2)|0,T=e[M>>2]|0,U2(n,T,2),G=e[M>>2]|0,N=(G|0)==0,N?(V0=0,e1=8):(P=C+(H0<<2)|0,z=e[P>>2]|0,U2(n,z,8),c=e[M>>2]|0,Y=(c|0)==31,Y||(V0=0,e1=8)),(e1|0)==8)for(;e1=0,t0=(p+(H0<<5)|0)+(V0<<2)|0,W=e[t0>>2]|0,e0=W+1|0,U2(n,e0,8),H=V0+1|0,X=e[M>>2]|0,U=1<>2]|0,n0=A0+-1|0,U2(n,n0,2),r0=F+-1|0,K=L7(r0)|0,U2(n,K,4),c0=L7(r0)|0,s0=e[t>>2]|0,l0=(s0|0)>0,!!l0)for(j=t+4|0,$0=t+128|0,M0=s0,R0=0,N0=0,T0=0;;){if(g0=j+(N0<<2)|0,f0=e[g0>>2]|0,Q0=$0+(f0<<2)|0,y0=e[Q0>>2]|0,h0=y0+R0|0,E0=(T0|0)<(h0|0),E0){for(r1=T0;C0=r1+2|0,u0=E+(C0<<2)|0,k0=e[u0>>2]|0,U2(n,k0,c0),J0=r1+1|0,S0=(J0|0)==(h0|0),!S0;)r1=J0;f=e[t>>2]|0,x0=f,U0=h0}else x0=M0,U0=T0;if(D0=N0+1|0,B0=(D0|0)<(x0|0),B0)M0=x0,R0=h0,N0=D0,T0=U0;else break}}function eS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0;z1=m,m=m+272|0,O1=z1,D=t+28|0,Q=e[D>>2]|0,Y=i4(1,1120)|0,A0=Z4(n,5)|0,e[Y>>2]=A0,f0=(A0|0)>0;e:do if(f0){for(B0=Y+4|0,Z1=0,r2=-1;;){if(R=Z4(n,4)|0,L=B0+(Z1<<2)|0,e[L>>2]=R,M=(R|0)<0,M)break e;if(T=(r2|0)<(R|0),c=T?R:r2,G=Z1+1|0,N=e[Y>>2]|0,P=(G|0)<(N|0),P)Z1=G,r2=c;else{f=c;break}}if(H0=(f|0)>-1,H0)for($1=Y+128|0,E1=Y+192|0,L1=Y+256|0,_=Q+24|0,F=Y+320|0,G1=0;;){if(z=Z4(n,3)|0,t0=z+1|0,J=$1+(G1<<2)|0,e[J>>2]=t0,W=Z4(n,2)|0,e0=E1+(G1<<2)|0,e[e0>>2]=W,H=(W|0)<0,H||(X=(W|0)==0,X?(E=L1+(G1<<2)|0,I=e[E>>2]|0,Z=I):(U=Z4(n,8)|0,o0=L1+(G1<<2)|0,e[o0>>2]=U,Z=U),V=(Z|0)<0,V)||(n0=e[_>>2]|0,i0=(Z|0)<(n0|0),!i0))break e;if(r0=e[e0>>2]|0,K=(r0|0)==31,!K)for(H1=0;;){if($0=Z4(n,8)|0,g0=$0+-1|0,Q0=(F+(G1<<5)|0)+(H1<<2)|0,e[Q0>>2]=g0,d0=($0|0)<0,d0||(y0=e[_>>2]|0,h0=($0|0)>(y0|0),l0=H1+1|0,h0))break e;if(c0=e[e0>>2]|0,s0=1<>2]=k0,D0=Z4(n,4)|0,x0=(D0|0)<0,!x0)){if(F0=e[Y>>2]|0,M0=(F0|0)>0,M0)for(G0=Y+4|0,p0=Y+128|0,P0=Y+836|0,R0=1<>2]|0,Y0=p0+(L0<<2)|0,N0=e[Y0>>2]|0,V0=N0+U1|0,T0=(V0|0)>63,T0)break e;if(U0=(q1|0)<(V0|0),U0){for(j1=q1;;){if(r1=Z4(n,D0)|0,O0=j1+2|0,e1=P0+(O0<<2)|0,e[e1>>2]=r1,v0=(r1|0)>-1,i1=(r1|0)<(R0|0),W1=v0&i1,!W1)break e;if(c1=j1+1|0,f1=(c1|0)<(V0|0),f1)j1=c1;else{a=c1;break}}B=e[Y>>2]|0,s1=B,Y1=a}else s1=N1,Y1=q1;if(g1=v1+1|0,l1=(g1|0)<(s1|0),l1)N1=s1,U1=V0,v1=g1,q1=Y1;else{C=P0,p=R0,w1=V0;break}}else w=Y+836|0,y=1<>2]=0,a1=Y+840|0,e[a1>>2]=p,n1=w1+2|0,A1=(w1|0)>-2,A1)for(K1=0;z0=C+(K1<<2)|0,I1=O1+(K1<<2)|0,e[I1>>2]=z0,h1=K1+1|0,u1=(h1|0)<(n1|0),u1;)K1=h1;Fh(O1,n1,4,8),d1=(n1|0)>1;t:do if(d1){for(v=e[O1>>2]|0,S=e[v>>2]|0,y1=S,P1=1;Q1=O1+(P1<<2)|0,D1=e[Q1>>2]|0,_1=e[D1>>2]|0,k1=(y1|0)==(_1|0),B1=P1+1|0,!k1;)if(p1=(B1|0)<(n1|0),p1)y1=_1,P1=B1;else break t;if(x1=(Y|0)==0,x1)o=0;else break e;return m=z1,o|0}while(!1);return o=Y,m=z1,o|0}while(!1);return I2(Y),o=0,m=z1,o|0}function tS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0;if(x1=m,m=m+272|0,y1=x1,a=i4(1,1312)|0,c=a+1296|0,e[c>>2]=n,D=n+836|0,z=n+840|0,V=e[z>>2]|0,g0=a+1288|0,e[g0>>2]=V,D0=e[n>>2]|0,Y0=(D0|0)>0,Y0){for(O0=n+4|0,f=n+128|0,g1=0,Q1=0;;)if(E=O0+(g1<<2)|0,I=e[E>>2]|0,C=f+(I<<2)|0,p=e[C>>2]|0,B=p+Q1|0,v=g1+1|0,S=(v|0)<(D0|0),S)g1=v,Q1=B;else{o=B;break}w=o+2|0,y=a+1284|0,e[y>>2]=w,Q=(o|0)>-2,Q?(M=w,p1=o,k1=7):(Fh(y1,w,4,8),B1=o)}else r1=a+1284|0,e[r1>>2]=2,M=2,p1=0,k1=7;if((k1|0)==7){for(l1=0;_=D+(l1<<2)|0,F=y1+(l1<<2)|0,e[F>>2]=_,R=l1+1|0,L=(R|0)<(M|0),L;)l1=R;for(Fh(y1,M,4,8),T=D,G=a+260|0,s1=0;Y=y1+(s1<<2)|0,t0=e[Y>>2]|0,J=t0,W=J-T|0,e0=W>>2,H=G+(s1<<2)|0,e[H>>2]=e0,X=s1+1|0,U=(X|0)<(M|0),U;)s1=X;for(N=a+260|0,P=a+520|0,a1=0;Z=N+(a1<<2)|0,A0=e[Z>>2]|0,n0=P+(A0<<2)|0,e[n0>>2]=a1,i0=a1+1|0,r0=(i0|0)<(M|0),r0;)a1=i0;for(o0=a+260|0,n1=0;;)if(K=o0+(n1<<2)|0,c0=e[K>>2]|0,s0=D+(c0<<2)|0,l0=e[s0>>2]|0,j=a+(n1<<2)|0,e[j>>2]=l0,$0=n1+1|0,f0=($0|0)<(M|0),f0)n1=$0;else{B1=p1;break}}if(Q0=n+832|0,d0=e[Q0>>2]|0,(d0|0)==4?(C0=a+1292|0,e[C0>>2]=64):(d0|0)==2?(h0=a+1292|0,e[h0>>2]=128):(d0|0)==1?(y0=a+1292|0,e[y0>>2]=256):(d0|0)==3&&(E0=a+1292|0,e[E0>>2]=86),u0=(B1|0)>0,!u0)return m=x1,a|0;for(k0=a+1032|0,J0=a+780|0,A1=0;;){for(B0=A1+2|0,x0=D+(B0<<2)|0,F0=e[x0>>2]|0,M0=e[g0>>2]|0,v0=1,$1=M0,z0=0,I1=0,u1=0;;)if(G0=D+(z0<<2)|0,p0=e[G0>>2]|0,P0=(p0|0)>(u1|0),R0=(p0|0)<(F0|0),D1=P0&R0,h1=D1?z0:I1,d1=D1?p0:u1,S0=(p0|0)<($1|0),L0=(p0|0)>(F0|0),_1=S0&L0,i1=_1?z0:v0,f1=_1?p0:$1,H0=z0+1|0,N0=(H0|0)<(B0|0),N0)v0=i1,$1=f1,z0=H0,I1=h1,u1=d1;else{c1=i1,E1=h1;break}if(V0=k0+(A1<<2)|0,e[V0>>2]=E1,T0=J0+(A1<<2)|0,e[T0>>2]=c1,U0=A1+1|0,e1=(U0|0)==(B1|0),e1)break;A1=U0}return m=x1,a|0}function iS(t){t=t|0;var n=0,o=0,a=0;a=m,n=(t|0)==0,n||I2(t)}function rS(t){t=t|0;var n=0,o=0,a=0;a=m,n=(t|0)==0,n||I2(t)}function nS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0;if(w2=m,f=n+1296|0,E=e[f>>2]|0,r0=t+64|0,y0=e[r0>>2]|0,M0=y0+4|0,T0=e[M0>>2]|0,l1=T0+28|0,B1=e[l1>>2]|0,U1=B1+2848|0,W1=e[U1>>2]|0,I=t+4|0,F=Z4(I,1)|0,J=(F|0)==1,!J)return o=0,o|0;U=n+1284|0,o0=e[U>>2]|0,Z=o0<<2,V=O7(t,Z)|0,A0=n+1292|0,n0=e[A0>>2]|0,i0=n0+-1|0,K=L7(i0)|0,c0=Z4(I,K)|0,e[V>>2]=c0,s0=e[A0>>2]|0,l0=s0+-1|0,j=L7(l0)|0,$0=Z4(I,j)|0,g0=V+4|0,e[g0>>2]=$0,f0=e[E>>2]|0,Q0=(f0|0)>0;e:do if(Q0){i2=0,n2=2;t:for(;;){if(u0=(E+4|0)+(i2<<2)|0,k0=e[u0>>2]|0,J0=(E+128|0)+(k0<<2)|0,D0=e[J0>>2]|0,B0=(E+192|0)+(k0<<2)|0,x0=e[B0>>2]|0,F0=1<>2]|0,R0=W1+(P0*56|0)|0,S0=JC(R0,I)|0,L0=(S0|0)==-1,L0){o=0,S2=25;break}else t2=S0;if(Y0=(D0|0)>0,Y0)for(H0=F0+-1|0,$2=t2,f2=0;;){if(N0=$2&H0,V0=((E+320|0)+(k0<<5)|0)+(N0<<2)|0,U0=e[V0>>2]|0,r1=$2>>x0,O0=(U0|0)>-1,O0){if(e1=W1+(U0*56|0)|0,v0=JC(e1,I)|0,i1=f2+n2|0,c1=V+(i1<<2)|0,e[c1>>2]=v0,$1=(v0|0)==-1,$1){o=0,S2=25;break t}}else f1=f2+n2|0,g1=V+(f1<<2)|0,e[g1>>2]=0;if(s1=f2+1|0,a1=(s1|0)<(D0|0),a1)$2=r1,f2=s1;else break}if(n1=D0+n2|0,A1=i2+1|0,z0=e[E>>2]|0,I1=(A1|0)<(z0|0),I1)i2=A1,n2=n1;else break e}if((S2|0)==25)return o|0}while(!1);if(d0=e[U>>2]|0,h0=(d0|0)>2,!h0)return o=V,o|0;for(E0=n+1032|0,C0=n+780|0,o2=2;;){if(h1=o2+-2|0,E1=E0+(h1<<2)|0,u1=e[E1>>2]|0,d1=(E+836|0)+(u1<<2)|0,p1=e[d1>>2]|0,Q1=C0+(h1<<2)|0,D1=e[Q1>>2]|0,_1=(E+836|0)+(D1<<2)|0,y1=e[_1>>2]|0,k1=V+(u1<<2)|0,x1=e[k1>>2]|0,L1=V+(D1<<2)|0,N1=e[L1>>2]|0,w1=(E+836|0)+(o2<<2)|0,Z1=e[w1>>2]|0,G1=x1&32767,v1=N1&32767,K1=v1-G1|0,P1=y1-p1|0,X1=(K1|0)>-1,e2=0-K1|0,H1=X1?K1:e2,q1=Z1-p1|0,Y1=i5(H1,q1)|0,j1=(Y1|0)/(P1|0)&-1,r2=(K1|0)<0,O1=0-j1|0,c=r2?O1:j1,a=c+G1|0,l2=e[A0>>2]|0,z1=l2-a|0,h2=V+(o2<<2)|0,s2=e[h2>>2]|0,d2=(s2|0)==0,d2)W=a|32768,e[h2>>2]=W;else{A2=(z1|0)<(a|0),V1=A2?z1:a,g2=V1<<1,a2=(s2|0)<(g2|0);do if(a2)if(S=s2&1,w=(S|0)==0,w){_=s2>>1,y2=_;break}else{y=s2+1|0,D=y>>1,Q=0-D|0,y2=Q;break}else if(C=(z1|0)>(a|0),C){p=s2-a|0,y2=p;break}else{B=s2-z1|0,v=B^-1,y2=v;break}while(!1);R=y2+a|0,L=R&32767,e[h2>>2]=L,M=e[E1>>2]|0,T=V+(M<<2)|0,G=e[T>>2]|0,N=G&32767,e[T>>2]=N,P=e[Q1>>2]|0,z=V+(P<<2)|0,Y=e[z>>2]|0,t0=Y&32767,e[z>>2]=t0}if(e0=o2+1|0,H=e[U>>2]|0,X=(e0|0)<(H|0),X)o2=e0;else{o=V;break}}return o|0}function sS(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0;if(w1=m,E=n+1296|0,I=e[E>>2]|0,F=t+64|0,J=e[F>>2]|0,i0=J+4|0,d0=e[i0>>2]|0,F0=d0+28|0,V0=e[F0>>2]|0,$1=t+28|0,f1=e[$1>>2]|0,C=V0+(f1<<2)|0,p=e[C>>2]|0,B=(p|0)/2&-1,v=(o|0)==0,v)return c1=B<<2,se(a|0,0,c1|0)|0,c=0,c|0;if(S=e[o>>2]|0,w=I+832|0,y=e[w>>2]|0,D=i5(y,S)|0,Q=(D|0)<0,_=(D|0)>255,R=_?255:D,L=Q?0:R,M=n+1284|0,T=e[M>>2]|0,G=(T|0)>1,G)for(N=n+260|0,A1=0,E1=1,d1=0,Q1=L;;){if(t0=N+(E1<<2)|0,W=e[t0>>2]|0,e0=o+(W<<2)|0,H=e[e0>>2]|0,X=H&32767,U=(X|0)==(H|0),U)if(o0=(I+836|0)+(W<<2)|0,Z=e[o0>>2]|0,V=i5(y,H)|0,A0=(V|0)<0,n0=(V|0)>255,r0=n0?255:V,K=A0?0:r0,c0=K-Q1|0,s0=Z-d1|0,I1=(c0|0)>-1,_1=0-c0|0,l0=I1?c0:_1,j=(c0|0)/(s0|0)&-1,$0=c0>>31,g0=$0|1,f0=i5(j,s0)|0,h1=(f0|0)>-1,y1=0-f0|0,Q0=h1?f0:y1,y0=l0-Q0|0,h0=(B|0)>(Z|0),k1=h0?Z:B,E0=(k1|0)>(d1|0),E0&&(C0=1768+(Q1<<2)|0,u0=+s[C0>>2],k0=a+(d1<<2)|0,J0=+s[k0>>2],D0=J0*u0,s[k0>>2]=D0),B0=d1+1|0,x0=(B0|0)<(k1|0),x0)for(Y0=B0,g1=0,x1=Q1;;)if(M0=g1+y0|0,G0=(M0|0)<(s0|0),p0=G0?0:g0,P0=G0?0:s0,l1=M0-P0|0,f=x1+j|0,L1=f+p0|0,R0=1768+(L1<<2)|0,S0=+s[R0>>2],L0=a+(Y0<<2)|0,H0=+s[L0>>2],N0=H0*S0,s[L0>>2]=N0,T0=Y0+1|0,a1=(T0|0)==(k1|0),a1){z0=Z,B1=Z,D1=K;break}else Y0=T0,g1=l1,x1=L1;else z0=Z,B1=Z,D1=K;else z0=A1,B1=d1,D1=Q1;if(U0=E1+1|0,r1=(U0|0)<(T|0),r1)A1=z0,E1=U0,d1=B1,Q1=D1;else{n1=z0,p1=D1;break}}else n1=0,p1=L;if(P=(n1|0)<(B|0),!P)return c=1,c|0;for(z=1768+(p1<<2)|0,Y=+s[z>>2],u1=n1;;)if(O0=a+(u1<<2)|0,e1=+s[O0>>2],v0=e1*Y,s[O0>>2]=v0,i1=u1+1|0,s1=(i1|0)==(B|0),s1){c=1;break}else u1=i1;return c|0}function AS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0;return C=m,o=e[t>>2]|0,a=e[o>>2]|0,c=e[n>>2]|0,f=e[c>>2]|0,E=a-f|0,E|0}function oS(t){t=t|0;var n=0,o=0;o=m,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0}function aS(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0;A0=m,c=Z$(n|0)|0,f=Z$(o|0)|0,Q=c+2|0,Y=Q+f|0,a=Y,J=m,m=m+((1*a|0)+15&-16)|0,aB(J|0,n|0)|0,Z=Z$(J|0)|0,o0=J+Z|0,u[o0>>0]=61,u[o0+1>>0]=0,yQ(J|0,o|0)|0,W=e[t>>2]|0,e0=t+8|0,H=e[e0>>2]|0,X=H<<2,U=X+8|0,E=Ni(W,U)|0,e[t>>2]=E,I=t+4|0,C=e[I>>2]|0,p=e[e0>>2]|0,B=p<<2,v=B+8|0,S=Ni(C,v)|0,e[I>>2]=S,w=Z$(J|0)|0,y=e[e0>>2]|0,D=S+(y<<2)|0,e[D>>2]=w,_=w+1|0,F=k9(_)|0,R=e[t>>2]|0,L=R+(y<<2)|0,e[L>>2]=F,M=e[t>>2]|0,T=M+(y<<2)|0,G=e[T>>2]|0,aB(G|0,J|0)|0,N=e[e0>>2]|0,P=N+1|0,e[e0>>2]=P,z=e[t>>2]|0,t0=z+(P<<2)|0,e[t0>>2]=0,m=A0}function $S(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0;if(Y=m,c=(t|0)==0,!c){if(f=e[t>>2]|0,Q=(f|0)==0,!Q){if(F=t+8|0,R=e[F>>2]|0,L=(R|0)>0,L){for(_=R,T=f,P=0;M=T+(P<<2)|0,G=e[M>>2]|0,N=(G|0)==0,N?C=_:(I2(G),o=e[F>>2]|0,C=o),E=P+1|0,I=(E|0)<(C|0),!!I;)n=e[t>>2]|0,_=C,T=n,P=E;a=e[t>>2]|0,p=a}else p=f;I2(p)}B=t+4|0,v=e[B>>2]|0,S=(v|0)==0,S||I2(v),w=t+12|0,y=e[w>>2]|0,D=(y|0)==0,D||I2(y),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0}}function lS(t){t=t|0;var n=0,o=0,a=0,c=0;c=m,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,e[t+20>>2]=0,e[t+24>>2]=0,n=i4(1,3664)|0,o=t+28|0,e[o>>2]=n}function nB(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0;if(B1=m,f=t+28|0,E=e[f>>2]|0,_=(E|0)==0,_){e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,e[t+20>>2]=0,e[t+24>>2]=0,e[t+28>>2]=0;return}if(t0=E+8|0,n0=e[t0>>2]|0,Q0=(n0|0)>0,Q0)for(g1=n0,A1=0;n1=(E+32|0)+(A1<<2)|0,I=e[n1>>2]|0,C=(I|0)==0,C?v=g1:(I2(I),n=e[t0>>2]|0,v=n),p=A1+1|0,B=(p|0)<(v|0),B;)g1=v,A1=p;if(x0=E+12|0,N0=e[x0>>2]|0,f1=(N0|0)>0,f1)for(l1=N0,z0=0;D=(E+544|0)+(z0<<2)|0,Q=e[D>>2]|0,F=(Q|0)==0,F?Y=l1:(R=(E+288|0)+(z0<<2)|0,L=e[R>>2]|0,M=25664+(L<<2)|0,T=e[M>>2]|0,G=T+8|0,N=e[G>>2]|0,Vs[N&7](Q),o=e[x0>>2]|0,Y=o),P=z0+1|0,z=(P|0)<(Y|0),z;)l1=Y,z0=P;if(S=E+16|0,w=e[S>>2]|0,y=(w|0)>0,y)for(s1=w,I1=0;H=(E+1056|0)+(I1<<2)|0,X=e[H>>2]|0,U=(X|0)==0,U?s0=s1:(o0=(E+800|0)+(I1<<2)|0,Z=e[o0>>2]|0,V=25640+(Z<<2)|0,A0=e[V>>2]|0,i0=A0+12|0,r0=e[i0>>2]|0,Vs[r0&7](X),a=e[S>>2]|0,s0=a),K=I1+1|0,c0=(K|0)<(s0|0),c0;)s1=s0,I1=K;if(J=E+20|0,W=e[J>>2]|0,e0=(W|0)>0,e0)for(a1=W,h1=0;f0=(E+1568|0)+(h1<<2)|0,d0=e[f0>>2]|0,y0=(d0|0)==0,y0?F0=a1:(h0=(E+1312|0)+(h1<<2)|0,E0=e[h0>>2]|0,C0=25648+(E0<<2)|0,u0=e[C0>>2]|0,k0=u0+12|0,J0=e[k0>>2]|0,Vs[J0&7](d0),c=e[J>>2]|0,F0=c),D0=h1+1|0,B0=(D0|0)<(F0|0),B0;)a1=F0,h1=D0;if(l0=E+24|0,j=e[l0>>2]|0,$0=(j|0)>0,g0=E+2848|0,$0)for(E1=0;M0=(E+1824|0)+(E1<<2)|0,G0=e[M0>>2]|0,p0=(G0|0)==0,p0||oB(G0),P0=e[g0>>2]|0,R0=(P0|0)==0,R0||(S0=P0+(E1*56|0)|0,PS(S0)),L0=E1+1|0,Y0=e[l0>>2]|0,H0=(L0|0)<(Y0|0),H0;)E1=L0;if(V0=e[g0>>2]|0,T0=(V0|0)==0,T0||I2(V0),U0=E+28|0,r1=e[U0>>2]|0,O0=(r1|0)>0,O0)for(u1=0;e1=(E+2852|0)+(u1<<2)|0,v0=e[e1>>2]|0,BS(v0),i1=u1+1|0,c1=e[U0>>2]|0,$1=(i1|0)<(c1|0),$1;)u1=i1;I2(E),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,e[t+20>>2]=0,e[t+24>>2]=0,e[t+28>>2]=0}function cS(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0;if(Z2=m,m=m+32|0,M1=Z2,C=t+4|0,p=e[C>>2]|0,a1=t+104|0,Q1=e[a1>>2]|0,G1=(Q1|0)==0,G1)return e[o>>2]=0,e[o+4>>2]=0,e[o+8>>2]=0,e[o+12>>2]=0,e[o+16>>2]=0,e[o+20>>2]=0,e[o+24>>2]=0,e[o+28>>2]=0,e[a>>2]=0,e[a+4>>2]=0,e[a+8>>2]=0,e[a+12>>2]=0,e[a+16>>2]=0,e[a+20>>2]=0,e[a+24>>2]=0,e[a+28>>2]=0,e[c>>2]=0,e[c+4>>2]=0,e[c+8>>2]=0,e[c+12>>2]=0,e[c+16>>2]=0,e[c+20>>2]=0,e[c+24>>2]=0,e[c+28>>2]=0,f=-129,m=Z2,f|0;if(l2=p+4|0,i2=e[l2>>2]|0,_2=(i2|0)<1,_2)k5=-129,o5=27;else if(Xm(M1),T1=p+28|0,E5=e[T1>>2]|0,B=(E5|0)==0,B)k5=-130,o5=27;else if(M=e[E5>>2]|0,H=(M|0)<64,H)k5=-130,o5=27;else if(c0=E5+4|0,E0=e[c0>>2]|0,p0=(E0|0)<(M|0),p0)k5=-130,o5=27;else{U2(M1,1,8),U2(M1,118,8),U2(M1,111,8),U2(M1,114,8),U2(M1,98,8),U2(M1,105,8),U2(M1,115,8),U2(M1,0,32),r1=e[l2>>2]|0,U2(M1,r1,8),g1=p+8|0,l1=e[g1>>2]|0,U2(M1,l1,32),s1=p+12|0,n1=e[s1>>2]|0,U2(M1,n1,32),A1=p+16|0,z0=e[A1>>2]|0,U2(M1,z0,32),I1=p+20|0,h1=e[I1>>2]|0,U2(M1,h1,32),E1=e[E5>>2]|0,u1=E1+-1|0,d1=L7(u1)|0,U2(M1,d1,4),B1=e[c0>>2]|0,p1=B1+-1|0,D1=L7(p1)|0,U2(M1,D1,4),U2(M1,1,1),_1=Q1+64|0,y1=e[_1>>2]|0,k1=(y1|0)==0,k1||I2(y1),x1=p7(M1)|0,L1=k9(x1)|0,e[_1>>2]=L1,N1=M1+8|0,w1=e[N1>>2]|0,U1=p7(M1)|0,r4(L1|0,w1|0,U1|0)|0,Z1=e[_1>>2]|0,e[o>>2]=Z1,v1=p7(M1)|0,K1=o+4|0,e[K1>>2]=v1,P1=o+8|0,e[P1>>2]=1,H1=o+12|0,e[H1>>2]=0,e[H1+4>>2]=0,e[H1+8>>2]=0,e[H1+12>>2]=0,e[H1+16>>2]=0,lt(M1),gS(M1,n),q1=Q1+68|0,Y1=e[q1>>2]|0,j1=(Y1|0)==0,j1||I2(Y1),r2=p7(M1)|0,W1=k9(r2)|0,e[q1>>2]=W1,O1=e[N1>>2]|0,z1=p7(M1)|0,r4(W1|0,O1|0,z1|0)|0,h2=e[q1>>2]|0,e[a>>2]=h2,s2=p7(M1)|0,d2=a+4|0,e[d2>>2]=s2,A2=a+8|0,V1=a+24|0,e[A2>>2]=0,e[A2+4>>2]=0,e[A2+8>>2]=0,e[A2+12>>2]=0,g2=V1,a2=g2,e[a2>>2]=1,t2=g2+4|0,$2=t2,e[$2>>2]=0,lt(M1),o2=e[T1>>2]|0,X1=(o2|0)==0;e:do if(!X1){if(U2(M1,5,8),U2(M1,118,8),U2(M1,111,8),U2(M1,114,8),U2(M1,98,8),U2(M1,105,8),U2(M1,115,8),n2=o2+24|0,f2=e[n2>>2]|0,e2=f2+-1|0,U2(M1,e2,8),y2=e[n2>>2]|0,S2=(y2|0)>0,S2)for(H2=0;;){if(G2=(o2+1824|0)+(H2<<2)|0,u2=e[G2>>2]|0,K2=Pv(u2,M1)|0,N2=(K2|0)==0,C2=H2+1|0,!N2)break e;if(w2=e[n2>>2]|0,M2=(C2|0)<(w2|0),M2)H2=C2;else break}if(U2(M1,0,6),U2(M1,0,16),q2=o2+16|0,T2=e[q2>>2]|0,O2=T2+-1|0,U2(M1,O2,6),V2=e[q2>>2]|0,s5=(V2|0)>0,s5)for(I5=0;;){if(P2=(o2+800|0)+(I5<<2)|0,j2=e[P2>>2]|0,U2(M1,j2,16),R5=e[P2>>2]|0,X2=25640+(R5<<2)|0,v5=e[X2>>2]|0,z2=e[v5>>2]|0,f5=(z2|0)==0,f5)break e;if(w5=(o2+1056|0)+(I5<<2)|0,O5=e[w5>>2]|0,gB[z2&3](O5,M1),$5=I5+1|0,k2=e[q2>>2]|0,r5=($5|0)<(k2|0),r5)I5=$5;else break}if(x2=o2+20|0,R2=e[x2>>2]|0,m2=R2+-1|0,U2(M1,m2,6),C5=e[x2>>2]|0,x5=(C5|0)>0,x5)for(A5=0;u5=(o2+1312|0)+(A5<<2)|0,S5=e[u5>>2]|0,U2(M1,S5,16),G5=e[u5>>2]|0,D5=25648+(G5<<2)|0,v=e[D5>>2]|0,S=e[v>>2]|0,w=(o2+1568|0)+(A5<<2)|0,y=e[w>>2]|0,gB[S&3](y,M1),D=A5+1|0,Q=e[x2>>2]|0,_=(D|0)<(Q|0),_;)A5=D;if(F=o2+12|0,R=e[F>>2]|0,L=R+-1|0,U2(M1,L,6),T=e[F>>2]|0,G=(T|0)>0,G)for(l5=0;N=(o2+288|0)+(l5<<2)|0,P=e[N>>2]|0,U2(M1,P,16),z=e[N>>2]|0,Y=25664+(z<<2)|0,t0=e[Y>>2]|0,J=e[t0>>2]|0,W=(o2+544|0)+(l5<<2)|0,e0=e[W>>2]|0,bQ[J&1](p,e0,M1),X=l5+1|0,U=e[F>>2]|0,o0=(X|0)<(U|0),o0;)l5=X;if(Z=o2+8|0,V=e[Z>>2]|0,A0=V+-1|0,U2(M1,A0,6),n0=e[Z>>2]|0,i0=(n0|0)>0,i0)for(m5=0;r0=(o2+32|0)+(m5<<2)|0,K=e[r0>>2]|0,s0=e[K>>2]|0,U2(M1,s0,1),l0=e[r0>>2]|0,j=l0+4|0,$0=e[j>>2]|0,U2(M1,$0,16),g0=e[r0>>2]|0,f0=g0+8|0,Q0=e[f0>>2]|0,U2(M1,Q0,16),d0=e[r0>>2]|0,y0=d0+12|0,h0=e[y0>>2]|0,U2(M1,h0,8),C0=m5+1|0,u0=e[Z>>2]|0,k0=(C0|0)<(u0|0),k0;)m5=C0;return U2(M1,1,1),J0=Q1+72|0,D0=e[J0>>2]|0,B0=(D0|0)==0,B0||I2(D0),x0=p7(M1)|0,F0=k9(x0)|0,e[J0>>2]=F0,M0=e[N1>>2]|0,G0=p7(M1)|0,r4(F0|0,M0|0,G0|0)|0,P0=e[J0>>2]|0,e[c>>2]=P0,R0=p7(M1)|0,S0=c+4|0,e[S0>>2]=R0,L0=c+8|0,Y0=c+24|0,e[L0>>2]=0,e[L0+4>>2]=0,e[L0+8>>2]=0,e[L0+12>>2]=0,H0=Y0,N0=H0,e[N0>>2]=2,V0=H0+4|0,T0=V0,e[T0>>2]=0,eB(M1),f=0,m=Z2,f|0}while(!1);e[o>>2]=0,e[o+4>>2]=0,e[o+8>>2]=0,e[o+12>>2]=0,e[o+16>>2]=0,e[o+20>>2]=0,e[o+24>>2]=0,e[o+28>>2]=0,e[a>>2]=0,e[a+4>>2]=0,e[a+8>>2]=0,e[a+12>>2]=0,e[a+16>>2]=0,e[a+20>>2]=0,e[a+24>>2]=0,e[a+28>>2]=0,e[c>>2]=0,e[c+4>>2]=0,e[c+8>>2]=0,e[c+12>>2]=0,e[c+16>>2]=0,e[c+20>>2]=0,e[c+24>>2]=0,e[c+28>>2]=0,I=_1,c5=-130}return(o5|0)==27&&(e[o>>2]=0,e[o+4>>2]=0,e[o+8>>2]=0,e[o+12>>2]=0,e[o+16>>2]=0,e[o+20>>2]=0,e[o+24>>2]=0,e[o+28>>2]=0,e[a>>2]=0,e[a+4>>2]=0,e[a+8>>2]=0,e[a+12>>2]=0,e[a+16>>2]=0,e[a+20>>2]=0,e[a+24>>2]=0,e[a+28>>2]=0,e[c>>2]=0,e[c+4>>2]=0,e[c+8>>2]=0,e[c+12>>2]=0,e[c+16>>2]=0,e[c+20>>2]=0,e[c+24>>2]=0,e[c+28>>2]=0,E=Q1+64|0,I=E,c5=k5),eB(M1),U0=e[I>>2]|0,O0=(U0|0)==0,O0||I2(U0),e1=Q1+68|0,v0=e[e1>>2]|0,i1=(v0|0)==0,i1||I2(v0),c1=Q1+72|0,$1=e[c1>>2]|0,f1=($1|0)==0,f1||I2($1),e[I>>2]=0,e[e1>>2]=0,e[c1>>2]=0,f=c5,m=Z2,f|0}function gS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0;for(i0=m,U2(t,3,8),U2(t,118,8),U2(t,111,8),U2(t,114,8),U2(t,98,8),U2(t,105,8),U2(t,115,8),U2(t,44,32),o=1200,c=44;E=c+-1|0,I=o+1|0,F=u[o>>0]|0,J=F<<24>>24,U2(t,J,8),H=(E|0)==0,!H;)o=I,c=E;if(X=n+8|0,U=e[X>>2]|0,U2(t,U,32),o0=e[X>>2]|0,Z=(o0|0)>0,!Z){U2(t,1,1);return}for(V=n+4|0,A0=0;;){if(C=e[n>>2]|0,p=C+(A0<<2)|0,B=e[p>>2]|0,v=(B|0)==0,v)U2(t,0,32);else if(S=e[V>>2]|0,w=S+(A0<<2)|0,y=e[w>>2]|0,U2(t,y,32),D=e[V>>2]|0,Q=D+(A0<<2)|0,_=e[Q>>2]|0,R=(_|0)==0,!R)for(L=e[n>>2]|0,M=L+(A0<<2)|0,T=e[M>>2]|0,a=T,f=_;G=f+-1|0,N=a+1|0,P=u[a>>0]|0,z=P<<24>>24,U2(t,z,8),Y=(G|0)==0,!Y;)a=N,f=G;if(t0=A0+1|0,W=e[X>>2]|0,e0=(t0|0)<(W|0),e0)A0=t0;else break}U2(t,1,1)}function rQ(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0;if(Y1=m,C=a+1|0,p=C<<3,c=p,L=m,m=m+((1*c|0)+15&-16)|0,e0=a<<3,f=e0,K=m,m=m+((1*f|0)+15&-16)|0,h0=(C|0)==0,h0)G=0;else{for(G0=a;;){if(U0=(G0|0)<(o|0),U0)for(E1=0,x1=G0;;)if(s1=t+(x1<<2)|0,I1=+s[s1>>2],B=I1,v=x1-G0|0,S=t+(v<<2)|0,w=+s[S>>2],y=w,D=y*B,Q=D+E1,_=x1+1|0,k1=(_|0)==(o|0),k1){h1=Q;break}else E1=Q,x1=_;else h1=0;if(F=L+(G0<<3)|0,o1[F>>3]=h1,R=G0+-1|0,M=(G0|0)==0,M)break;G0=R}I=+o1[L>>3],G=I}if(T=G*1.0000000001,N=G*1e-9,P=N+1e-10,z=(a|0)>0,z)d1=T,L1=0;else return Q1=T,z0=Q1,m=Y1,+z0;for(;;){if(w1=L1+1|0,Y=d1>3],U=-X,o0=(L1|0)>0,o0){for(U1=0,P1=U;;)if(A0=K+(U1<<3)|0,n0=+o1[A0>>3],i0=L1-U1|0,r0=L+(i0<<3)|0,c0=+o1[r0>>3],s0=c0*n0,l0=P1-s0,j=U1+1|0,y1=(j|0)==(L1|0),y1){E=l0;break}else U1=j,P1=l0;if($0=E/d1,g0=K+(L1<<3)|0,o1[g0>>3]=$0,f0=(L1|0)/2&-1,Q0=(L1|0)>1,Q0){for(d0=L1+-1|0,y0=(f0|0)>1,G1=0;E0=K+(G1<<3)|0,C0=+o1[E0>>3],u0=d0-G1|0,k0=K+(u0<<3)|0,J0=+o1[k0>>3],D0=J0*$0,B0=D0+C0,o1[E0>>3]=B0,x0=C0*$0,F0=+o1[k0>>3],M0=F0+x0,o1[k0>>3]=M0,p0=G1+1|0,P0=(p0|0)<(f0|0),P0;)G1=p0;H1=y0?f0:1,N0=$0,Z1=H1}else N0=$0,Z1=0}else Z=U/d1,V=K+(L1<<3)|0,o1[V>>3]=Z,N0=Z,Z1=0;if(R0=L1&1,S0=(R0|0)==0,S0||(L0=K+(Z1<<3)|0,Y0=+o1[L0>>3],H0=Y0*N0,V0=H0+Y0,o1[L0>>3]=V0),T0=N0*N0,r1=1-T0,O0=r1*d1,e1=(w1|0)<(a|0),e1)d1=O0,L1=w1;else{p1=O0;break}}if((q1|0)==8&&(t0=K+(N1<<3)|0,J=a-N1|0,W=J<<3,se(t0|0,0,W|0)|0,p1=B1),z)u1=.99,v1=0;else return Q1=p1,z0=Q1,m=Y1,+z0;for(;v0=K+(v1<<3)|0,i1=+o1[v0>>3],c1=i1*u1,o1[v0>>3]=c1,$1=u1*.99,f1=v1+1|0,_1=(f1|0)==(a|0),!_1;)u1=$1,v1=f1;if(z)K1=0;else return Q1=p1,z0=Q1,m=Y1,+z0;for(;;)if(g1=K+(K1<<3)|0,l1=+o1[g1>>3],a1=l1,n1=n+(K1<<2)|0,s[n1>>2]=a1,A1=K1+1|0,D1=(A1|0)==(a|0),D1){Q1=p1;break}else K1=A1;return z0=Q1,m=Y1,+z0}function nQ(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0;if(V=m,I=c+o|0,C=I<<2,f=C,R=m,m=m+((1*f|0)+15&-16)|0,M=(n|0)==0,T=(o|0)>0,M?T&&(N=o<<2,se(R|0,0,N|0)|0):T&&(G=o<<2,r4(R|0,n|0,G|0)|0),P=(c|0)>0,!P){m=V;return}if(z=(o|0)>0,z)W=0,e0=o;else{Y=c<<2,se(R|0,0,Y|0)|0,se(a|0,0,Y|0)|0,m=V;return}for(;;){for(X=W,U=o,o0=0;;)if(S=X+1|0,w=R+(X<<2)|0,y=+s[w>>2],D=U+-1|0,Q=t+(D<<2)|0,_=+s[Q>>2],F=_*y,L=o0-F,t0=(S|0)==(e0|0),t0){E=L;break}else X=S,U=D,o0=L;if(p=R+(e0<<2)|0,s[p>>2]=E,B=a+(W<<2)|0,s[B>>2]=E,v=W+1|0,H=e0+1|0,J=(v|0)==(c|0),J)break;W=v,e0=H}m=V}function hS(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0;if(k0=m,c=e[n>>2]|0,f=(c|0)>1,f?(U2(o,1,1),Q=e[n>>2]|0,Y=Q+-1|0,U2(o,Y,4)):U2(o,0,1),A0=n+1156|0,g0=e[A0>>2]|0,f0=(g0|0)>0,f0){if(U2(o,1,1),Q0=e[A0>>2]|0,d0=Q0+-1|0,U2(o,d0,8),y0=e[A0>>2]|0,E=(y0|0)>0,E)for(I=n+1160|0,C=t+4|0,p=n+2184|0,h0=0;B=I+(h0<<2)|0,v=e[B>>2]|0,S=e[C>>2]|0,w=S+-1|0,y=L7(w)|0,U2(o,v,y),D=p+(h0<<2)|0,_=e[D>>2]|0,F=e[C>>2]|0,R=F+-1|0,L=L7(R)|0,U2(o,_,L),M=h0+1|0,T=e[A0>>2]|0,G=(M|0)<(T|0),G;)h0=M}else U2(o,0,1);if(U2(o,0,2),N=e[n>>2]|0,P=(N|0)>1,P){if(z=t+4|0,t0=e[z>>2]|0,J=(t0|0)>0,J){for(W=n+4|0,E0=0;o0=W+(E0<<2)|0,Z=e[o0>>2]|0,U2(o,Z,4),V=E0+1|0,n0=e[z>>2]|0,i0=(V|0)<(n0|0),i0;)E0=V;a=e[n>>2]|0,e0=a,u0=13}}else e0=N,u0=13;if(!((u0|0)==13&&(H=(e0|0)>0,!H)))for(X=n+1028|0,U=n+1092|0,C0=0;U2(o,0,8),r0=X+(C0<<2)|0,K=e[r0>>2]|0,U2(o,K,8),c0=U+(C0<<2)|0,s0=e[c0>>2]|0,U2(o,s0,8),l0=C0+1|0,j=e[n>>2]|0,$0=(l0|0)<(j|0),$0;)C0=l0}function fS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0;n1=m,c=i4(1,3208)|0,f=t+28|0,Q=e[f>>2]|0,se(c|0,0,3208)|0,Y=t+4|0,A0=e[Y>>2]|0,f0=(A0|0)<1;e:do if(f0)a1=24;else if(B0=Z4(n,1)|0,H0=(B0|0)<0,H0)a1=24;else{if(O0=(B0|0)==0,O0)e[c>>2]=1;else if(e1=Z4(n,4)|0,E=e1+1|0,e[c>>2]=E,I=(e1|0)<0,I)break;if(C=Z4(n,1)|0,p=(C|0)<0,!p){if(B=(C|0)==0,!B){if(v=Z4(n,8)|0,S=v+1|0,w=c+1156|0,e[w>>2]=S,y=(v|0)<0,y)break;for(D=c+1160|0,_=c+2184|0,a=e[Y>>2]|0,T=a,v0=0;;){if(M=T+-1|0,G=L7(M)|0,N=Z4(n,G)|0,P=D+(v0<<2)|0,e[P>>2]=N,z=e[Y>>2]|0,t0=z+-1|0,J=L7(t0)|0,W=Z4(n,J)|0,e0=_+(v0<<2)|0,e[e0>>2]=W,H=W|N,X=(H|0)<0,U=(N|0)==(W|0),$1=U|X,$1||(o0=e[Y>>2]|0,Z=(N|0)<(o0|0),V=(W|0)<(o0|0),f1=Z&V,R=v0+1|0,!f1))break e;if(F=e[w>>2]|0,L=(R|0)<(F|0),L)T=o0,v0=R;else break}}if(n0=Z4(n,2)|0,i0=(n0|0)==0,i0){if(r0=e[c>>2]|0,K=(r0|0)>1,K){if(c0=e[Y>>2]|0,s0=(c0|0)>0,s0)for(l0=c+4|0,i1=0;;){if(u0=Z4(n,4)|0,k0=l0+(i1<<2)|0,e[k0>>2]=u0,J0=e[c>>2]|0,D0=(u0|0)>=(J0|0),x0=(u0|0)<0,g1=x0|D0,E0=i1+1|0,g1)break e;if(h0=e[Y>>2]|0,C0=(E0|0)<(h0|0),C0)i1=E0;else{j=J0,a1=17;break}}}else j=r0,a1=17;if((a1|0)==17&&($0=(j|0)>0,!$0))return o=c,o|0;for(g0=c+1028|0,Q0=Q+16|0,d0=c+1092|0,y0=Q+20|0,c1=0;;){if(Z4(n,8)|0,p0=Z4(n,8)|0,P0=g0+(c1<<2)|0,e[P0>>2]=p0,R0=e[Q0>>2]|0,S0=(p0|0)>=(R0|0),L0=(p0|0)<0,l1=L0|S0,l1||(Y0=Z4(n,8)|0,N0=d0+(c1<<2)|0,e[N0>>2]=Y0,V0=e[y0>>2]|0,T0=(Y0|0)>=(V0|0),U0=(Y0|0)<0,s1=U0|T0,M0=c1+1|0,s1))break e;if(F0=e[c>>2]|0,G0=(M0|0)<(F0|0),G0)c1=M0;else{o=c;break}}return o|0}}}while(!1);return(a1|0)==24&&(r1=(c|0)==0,r1)?(o=0,o|0):(I2(c),o=0,o|0)}function uS(t){t=t|0;var n=0,o=0,a=0;a=m,n=(t|0)==0,n||I2(t)}function IS(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,B6=0,z3=0,a6=0,p6=0,_6=0,Y6=0,m6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,A3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,s4=0,p9=0,S4=0,D4=0,x4=0,T4=0,W4=0,C4=0,G4=0,N9=0,N4=0,A4=0,F4=0,g4=0,ue=0,P9=0,d9=0,Ie=0,Le=0,ze=0,U4=0,Me=0,O4=0,j4=0,we=0,Ze=0,z9=0,Ae=0,h4=0,b6=0,P4=0,R9=0,o4=0,b4=0,oe=0,Z9=0,ae=0,$e=0,m4=0,X4=0,L4=0,le=0,E9=0,$6=0,Te=0,a4=0,de=0,B4=0,$4=0,U6=0,ke=0,ve=0,We=0,l4=0,w4=0,g8=0,H3=0,Q9=0,C9=0,M4=0,ee=0,a7=0,Se=0,$7=0,Q7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,y7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ge=0,De=0,je=0,k8=0,y9=0,g7=0,Ee=0,h7=0,w7=0,j8=0,k7=0,te=0,X8=0,P8=0,v8=0,Xe=0,H4=0,be=0,e8=0,u8=0,S8=0,ce=0,W9=0,t8=0,I8=0,i8=0,d8=0,ge=0,Ce=0,Ne=0,Ue=0,j9=0,_e=0,he=0,r8=0,me=0,p4=0,E8=0,e7=0,q4=0,I3=0,Oe=0,C8=0,ie=0,H9=0,re=0,S9=0,Pe=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,s8=0,D8=0,Y4=0,n7=0,b8=0,He=0,m9=0,s7=0,qe=0,M7=0,P7=0,v7=0,A7=0,S7=0,ne=0,T7=0,H7=0,A8=0,_8=0,D7=0,J8=0,Re=0,fe=0,X9=0,b7=0,tt=0,Mt=0,Tt=0,Gt=0,gt=0,q7=0,ht=0,Y7=0,ft=0,J7=0,ut=0,it=0,ii=0,Nt=0,It=0,dt=0,ri=0,Et=0,rt=0,ni=0,Ut=0,Ot=0,Pt=0,Ht=0,nt=0,Ct=0,qt=0,K7=0,st=0,G7=0,V7=0,si=0,Yt=0,Ai=0,mt=0,Jt=0,Bt=0,pt=0,Kt=0,Qt=0,z7=0,yt=0,Vt=0,At=0,N7=0,wt=0,Be=0,kt=0,_7=0,ot=0,i9=0,u7=0,m8=0,I7=0,R7=0,Pr=0,fr=0,zs=0,Mn=0,Zs=0,Tn=0,Ws=0,js=0,Gn=0,Xs=0,Hr=0,eA=0,tA=0,iA=0,Nn=0,rA=0,Un=0,On=0,nA=0,qr=0,Pn=0,Yr=0,Hn=0,qn=0,sA=0,AA=0,oA=0,Jr=0,Yn=0,aA=0,ur=0,Kr=0,$A=0,lA=0,Vr=0,oi=0,Jn=0,cA=0,gA=0,Kn=0,Vn=0,zn=0,hA=0,ai=0,zr=0,fA=0,Zn=0,uA=0,IA=0,dA=0,Wn=0,EA=0,CA=0,mA=0,BA=0,jn=0,pA=0,QA=0,Zr=0,Ir=0,Wr=0,yA=0,Vi=0,wA=0,Xn=0,jr=0,es=0,Xr=0,kA=0,ts=0,is=0,vA=0,rs=0,ns=0,SA=0,dr=0,ss=0,$i=0,en=0,Er=0,zi=0,Cr=0,Ui=0,mr=0,As=0,Oi=0,mi=0,Bi=0,zt=0,pi=0,Br=0,Zi=0,Wi=0,pr=0,li=0,DA=0,at=0,j$=0,tn=0,rn=0;if(tn=m,_=t+64|0,F=e[_>>2]|0,t2=F+4|0,N3=e[t2>>2]|0,b4=N3+28|0,Y4=e[b4>>2]|0,$A=F+104|0,ai=e[$A>>2]|0,BA=t+104|0,jr=e[BA>>2]|0,R=t+36|0,W=e[R>>2]|0,r0=N3+4|0,y0=e[r0>>2]|0,M0=y0<<2,a=M0,T0=m,m=m+((1*a|0)+15&-16)|0,l1=O7(t,M0)|0,B1=e[r0>>2]|0,U1=B1<<2,W1=O7(t,U1)|0,$2=e[r0>>2]|0,M2=$2<<2,P2=O7(t,M2)|0,k2=jr+4|0,D5=+s[k2>>2],c2=e[r0>>2]|0,F2=c2<<2,c=F2,F5=m,m=m+((1*c|0)+15&-16)|0,_3=jr+8|0,L5=e[_3>>2]|0,z5=t+28|0,a6=e[z5>>2]|0,P3=(Y4+544|0)+(a6<<2)|0,e6=e[P3>>2]|0,x6=ai+56|0,g9=e[x6>>2]|0,d4=(a6|0)!=0,s4=d4?2:0,D=s4+L5|0,A4=g9+(D*52|0)|0,O4=t+40|0,e[O4>>2]=a6,oe=(c2|0)>0,oe)for(a4=+(W|0),H3=4/a4,c7=(s[p2>>2]=H3,e[p2>>2]|0),y8=(W|0)/2&-1,k8=y8<<2,v8=c7&2147483647,i8=+(v8>>>0),p4=i8*7177114298428933e-22,Pe=p4+-764.6162109375,n7=Pe,ne=n7+.345,tt=ne,it=ai+4|0,Pt=t+24|0,Ai=t+32|0,N7=tt+-764.6162109375,Pr=W+-1|0,eA=(Pr|0)>1,Hn=tt+-382.30810546875,mr=D5,Oi=0;;){if(lA=e[t>>2]|0,Vr=lA+(Oi<<2)|0,oi=e[Vr>>2]|0,Jn=O7(t,k8)|0,cA=W1+(Oi<<2)|0,e[cA>>2]=Jn,gA=O7(t,k8)|0,Kn=l1+(Oi<<2)|0,e[Kn>>2]=gA,Vn=e[Pt>>2]|0,zn=e[z5>>2]|0,hA=e[Ai>>2]|0,ZS(oi,it,Y4,Vn,zn,hA),zr=e[z5>>2]|0,fA=(ai+12|0)+(zr<<2)|0,Zn=e[fA>>2]|0,uA=e[Zn>>2]|0,IA=e[Kn>>2]|0,sQ(uA,oi,IA),dA=e[z5>>2]|0,Wn=(ai+20|0)+(dA*12|0)|0,YS(Wn,oi),EA=e[oi>>2]|0,CA=EA&2147483647,mA=+(CA>>>0),jn=mA*7177114298428933e-22,pA=N7+jn,QA=pA,Zr=QA+.345,Ir=Zr,s[oi>>2]=Ir,Wr=F5+(Oi<<2)|0,s[Wr>>2]=Ir,eA)for(P=Ir,Br=1;;)if(yA=oi+(Br<<2)|0,Vi=+s[yA>>2],wA=Vi*Vi,Xn=Br+1|0,es=oi+(Xn<<2)|0,Xr=+s[es>>2],kA=Xr*Xr,ts=kA+wA,is=(s[p2>>2]=ts,e[p2>>2]|0),vA=is&2147483647,rs=+(vA>>>0),ns=rs*35885571492144663e-23,SA=Hn+ns,dr=SA,L=dr+.345,M=L,T=Xn>>1,G=oi+(T<<2)|0,s[G>>2]=M,N=M>P,N?(s[Wr>>2]=M,ur=M):ur=P,z=Br+2|0,Y=(z|0)<(Pr|0),Y)P=ur,Br=z;else{J=ur;break}else J=Ir;if(t0=J>0,t0?(s[Wr>>2]=0,H=0):H=J,e0=H>mr,As=e0?H:mr,X=Oi+1|0,U=e[r0>>2]|0,o0=(X|0)<(U|0),o0)mr=As,Oi=X;else{p=k8,v=y8,Ui=As;break}}else S=(W|0)/2&-1,w=S<<2,p=w,v=S,Ui=D5;Z=O7(t,p)|0,V=O7(t,p)|0,A0=e[r0>>2]|0,n0=(A0|0)>0;e:do if(n0){if(i0=(W|0)>1,K=ai+48|0,i0)Bi=0;else{for(mi=0;;){W3=(e6+4|0)+(mi<<2)|0,u6=e[W3>>2]|0,O3=l1+(mi<<2)|0,S3=e[O3>>2]|0,Y3=e[t>>2]|0,S6=Y3+(mi<<2)|0,i6=e[S6>>2]|0,i3=i6+(v<<2)|0,e[O4>>2]=a6,P6=O7(t,60)|0,A3=P2+(mi<<2)|0,e[A3>>2]=P6,at=P6,rn=at+60|0;do e[at>>2]=0,at=at+4|0;while((at|0)<(rn|0));if($Q(A4,i3,Z),r6=F5+(mi<<2)|0,I6=+s[r6>>2],lQ(A4,i6,V,Ui,I6),z$(A4,Z,V,1,i6,S3,i3),D3=(e6+1028|0)+(u6<<2)|0,T6=e[D3>>2]|0,Q6=(Y4+800|0)+(T6<<2)|0,R6=e[Q6>>2]|0,K6=(R6|0)==1,!K6){o=-1;break}if(d6=e[K>>2]|0,J6=d6+(T6<<2)|0,x3=e[J6>>2]|0,Z6=V$(t,x3,i3,i6)|0,G6=e[A3>>2]|0,j6=G6+28|0,e[j6>>2]=Z6,r9=_h(t)|0,N6=(r9|0)==0,N6||(D6=e[A3>>2]|0,V6=D6+28|0,y6=e[V6>>2]|0,F6=(y6|0)==0,F6||(z$(A4,Z,V,2,i6,S3,i3),F3=e[D3>>2]|0,L6=e[K>>2]|0,X6=L6+(F3<<2)|0,s9=e[X6>>2]|0,W6=V$(t,s9,i3,i6)|0,h9=e[A3>>2]|0,f9=h9+56|0,e[f9>>2]=W6,z$(A4,Z,V,0,i6,S3,i3),A9=e[D3>>2]|0,o9=e[K>>2]|0,M9=o9+(A9<<2)|0,E6=e[M9>>2]|0,M6=V$(t,E6,i3,i6)|0,e9=e[A3>>2]|0,e[e9>>2]=M6,T9=e[D3>>2]|0,u9=e[K>>2]|0,n4=u9+(T9<<2)|0,c4=e[n4>>2]|0,G9=e[A3>>2]|0,V9=e[G9>>2]|0,v9=G9+28|0,I9=e[v9>>2]|0,H6=R8(t,c4,V9,I9,9362)|0,t9=e[A3>>2]|0,E4=t9+4|0,e[E4>>2]=H6,v4=e[D3>>2]|0,p9=e[K>>2]|0,S4=p9+(v4<<2)|0,D4=e[S4>>2]|0,x4=e[A3>>2]|0,T4=e[x4>>2]|0,W4=x4+28|0,C4=e[W4>>2]|0,G4=R8(t,D4,T4,C4,18724)|0,N9=e[A3>>2]|0,N4=N9+8|0,e[N4>>2]=G4,F4=e[D3>>2]|0,g4=e[K>>2]|0,ue=g4+(F4<<2)|0,P9=e[ue>>2]|0,d9=e[A3>>2]|0,Ie=e[d9>>2]|0,Le=d9+28|0,ze=e[Le>>2]|0,U4=R8(t,P9,Ie,ze,28086)|0,Me=e[A3>>2]|0,j4=Me+12|0,e[j4>>2]=U4,we=e[D3>>2]|0,Ze=e[K>>2]|0,z9=Ze+(we<<2)|0,Ae=e[z9>>2]|0,h4=e[A3>>2]|0,b6=e[h4>>2]|0,P4=h4+28|0,R9=e[P4>>2]|0,o4=R8(t,Ae,b6,R9,37449)|0,Z9=e[A3>>2]|0,ae=Z9+16|0,e[ae>>2]=o4,$e=e[D3>>2]|0,m4=e[K>>2]|0,X4=m4+($e<<2)|0,L4=e[X4>>2]|0,le=e[A3>>2]|0,E9=e[le>>2]|0,$6=le+28|0,Te=e[$6>>2]|0,de=R8(t,L4,E9,Te,46811)|0,B4=e[A3>>2]|0,$4=B4+20|0,e[$4>>2]=de,U6=e[D3>>2]|0,ke=e[K>>2]|0,ve=ke+(U6<<2)|0,We=e[ve>>2]|0,l4=e[A3>>2]|0,w4=e[l4>>2]|0,g8=l4+28|0,Q9=e[g8>>2]|0,C9=R8(t,We,w4,Q9,56173)|0,M4=e[A3>>2]|0,ee=M4+24|0,e[ee>>2]=C9,a7=e[D3>>2]|0,Se=e[K>>2]|0,$7=Se+(a7<<2)|0,Q7=e[$7>>2]|0,K8=e[A3>>2]|0,l7=K8+28|0,x8=e[l7>>2]|0,F8=K8+56|0,L8=e[F8>>2]|0,M8=R8(t,Q7,x8,L8,9362)|0,V8=e[A3>>2]|0,z8=V8+32|0,e[z8>>2]=M8,y7=e[D3>>2]|0,T8=e[K>>2]|0,G8=T8+(y7<<2)|0,N8=e[G8>>2]|0,w8=e[A3>>2]|0,h8=w8+28|0,U8=e[h8>>2]|0,O8=w8+56|0,Z8=e[O8>>2]|0,W8=R8(t,N8,U8,Z8,18724)|0,f8=e[A3>>2]|0,Ge=f8+36|0,e[Ge>>2]=W8,De=e[D3>>2]|0,je=e[K>>2]|0,y9=je+(De<<2)|0,g7=e[y9>>2]|0,Ee=e[A3>>2]|0,h7=Ee+28|0,w7=e[h7>>2]|0,j8=Ee+56|0,k7=e[j8>>2]|0,te=R8(t,g7,w7,k7,28086)|0,X8=e[A3>>2]|0,P8=X8+40|0,e[P8>>2]=te,Xe=e[D3>>2]|0,H4=e[K>>2]|0,be=H4+(Xe<<2)|0,e8=e[be>>2]|0,u8=e[A3>>2]|0,S8=u8+28|0,ce=e[S8>>2]|0,W9=u8+56|0,t8=e[W9>>2]|0,I8=R8(t,e8,ce,t8,37449)|0,d8=e[A3>>2]|0,ge=d8+44|0,e[ge>>2]=I8,Ce=e[D3>>2]|0,Ne=e[K>>2]|0,Ue=Ne+(Ce<<2)|0,j9=e[Ue>>2]|0,_e=e[A3>>2]|0,he=_e+28|0,r8=e[he>>2]|0,me=_e+56|0,E8=e[me>>2]|0,e7=R8(t,j9,r8,E8,46811)|0,q4=e[A3>>2]|0,I3=q4+48|0,e[I3>>2]=e7,Oe=e[D3>>2]|0,C8=e[K>>2]|0,ie=C8+(Oe<<2)|0,H9=e[ie>>2]|0,re=e[A3>>2]|0,S9=re+28|0,H8=e[S9>>2]|0,f7=re+56|0,t7=e[f7>>2]|0,i7=R8(t,H9,H8,t7,56173)|0,q8=e[A3>>2]|0,r7=q8+52|0,e[r7>>2]=i7)),Y8=mi+1|0,n8=e[r0>>2]|0,s8=(Y8|0)<(n8|0),s8)mi=Y8;else{B=K,b8=n8;break e}}return m=tn,o|0}for(;;){_6=(e6+4|0)+(Bi<<2)|0,f0=e[_6>>2]|0,Y6=l1+(Bi<<2)|0,$0=e[Y6>>2]|0,m6=e[t>>2]|0,v3=m6+(Bi<<2)|0,j=e[v3>>2]|0,c0=j+(v<<2)|0,e[O4>>2]=a6,Z3=O7(t,60)|0,B0=P2+(Bi<<2)|0,e[B0>>2]=Z3,at=Z3,rn=at+60|0;do e[at>>2]=0,at=at+4|0;while((at|0)<(rn|0));for(Zi=0;V3=$0+(Zi<<2)|0,k3=e[V3>>2]|0,c3=k3&2147483647,U3=+(c3>>>0),o6=U3*7177114298428933e-22,u3=o6+-764.6162109375,w6=u3,k6=w6+.345,v6=k6,Q=Zi+v|0,B6=j+(Q<<2)|0,s[B6>>2]=v6,z3=Zi+1|0,p6=(z3|0)<(v|0),p6;)Zi=z3;if($Q(A4,c0,Z),s0=F5+(Bi<<2)|0,l0=+s[s0>>2],lQ(A4,j,V,Ui,l0),z$(A4,Z,V,1,j,$0,c0),g0=(e6+1028|0)+(f0<<2)|0,Q0=e[g0>>2]|0,d0=(Y4+800|0)+(Q0<<2)|0,h0=e[d0>>2]|0,E0=(h0|0)==1,!E0){o=-1;break}if(C0=e[K>>2]|0,u0=C0+(Q0<<2)|0,k0=e[u0>>2]|0,J0=V$(t,k0,c0,j)|0,D0=e[B0>>2]|0,x0=D0+28|0,e[x0>>2]=J0,F0=_h(t)|0,G0=(F0|0)==0,G0||(p0=e[B0>>2]|0,P0=p0+28|0,R0=e[P0>>2]|0,S0=(R0|0)==0,S0||(z$(A4,Z,V,2,j,$0,c0),L0=e[g0>>2]|0,Y0=e[K>>2]|0,H0=Y0+(L0<<2)|0,N0=e[H0>>2]|0,V0=V$(t,N0,c0,j)|0,U0=e[B0>>2]|0,r1=U0+56|0,e[r1>>2]=V0,z$(A4,Z,V,0,j,$0,c0),O0=e[g0>>2]|0,e1=e[K>>2]|0,v0=e1+(O0<<2)|0,i1=e[v0>>2]|0,c1=V$(t,i1,c0,j)|0,$1=e[B0>>2]|0,e[$1>>2]=c1,f1=e[g0>>2]|0,g1=e[K>>2]|0,s1=g1+(f1<<2)|0,a1=e[s1>>2]|0,n1=e[B0>>2]|0,A1=e[n1>>2]|0,z0=n1+28|0,I1=e[z0>>2]|0,h1=R8(t,a1,A1,I1,9362)|0,E1=e[B0>>2]|0,u1=E1+4|0,e[u1>>2]=h1,d1=e[g0>>2]|0,p1=e[K>>2]|0,Q1=p1+(d1<<2)|0,D1=e[Q1>>2]|0,_1=e[B0>>2]|0,y1=e[_1>>2]|0,k1=_1+28|0,x1=e[k1>>2]|0,L1=R8(t,D1,y1,x1,18724)|0,N1=e[B0>>2]|0,w1=N1+8|0,e[w1>>2]=L1,Z1=e[g0>>2]|0,G1=e[K>>2]|0,v1=G1+(Z1<<2)|0,K1=e[v1>>2]|0,P1=e[B0>>2]|0,H1=e[P1>>2]|0,q1=P1+28|0,Y1=e[q1>>2]|0,j1=R8(t,K1,H1,Y1,28086)|0,r2=e[B0>>2]|0,O1=r2+12|0,e[O1>>2]=j1,l2=e[g0>>2]|0,z1=e[K>>2]|0,h2=z1+(l2<<2)|0,s2=e[h2>>2]|0,d2=e[B0>>2]|0,A2=e[d2>>2]|0,V1=d2+28|0,g2=e[V1>>2]|0,a2=R8(t,s2,A2,g2,37449)|0,i2=e[B0>>2]|0,o2=i2+16|0,e[o2>>2]=a2,X1=e[g0>>2]|0,n2=e[K>>2]|0,f2=n2+(X1<<2)|0,e2=e[f2>>2]|0,y2=e[B0>>2]|0,S2=e[y2>>2]|0,w2=y2+28|0,C2=e[w2>>2]|0,_2=R8(t,e2,S2,C2,46811)|0,G2=e[B0>>2]|0,u2=G2+20|0,e[u2>>2]=_2,K2=e[g0>>2]|0,N2=e[K>>2]|0,q2=N2+(K2<<2)|0,T2=e[q2>>2]|0,O2=e[B0>>2]|0,V2=e[O2>>2]|0,s5=O2+28|0,T1=e[s5>>2]|0,j2=R8(t,T2,V2,T1,56173)|0,R5=e[B0>>2]|0,X2=R5+24|0,e[X2>>2]=j2,v5=e[g0>>2]|0,z2=e[K>>2]|0,f5=z2+(v5<<2)|0,w5=e[f5>>2]|0,O5=e[B0>>2]|0,$5=O5+28|0,E5=e[$5>>2]|0,r5=O5+56|0,x2=e[r5>>2]|0,R2=R8(t,w5,E5,x2,9362)|0,m2=e[B0>>2]|0,C5=m2+32|0,e[C5>>2]=R2,x5=e[g0>>2]|0,u5=e[K>>2]|0,S5=u5+(x5<<2)|0,G5=e[S5>>2]|0,H2=e[B0>>2]|0,I5=H2+28|0,A5=e[I5>>2]|0,l5=H2+56|0,m5=e[l5>>2]|0,M1=R8(t,G5,A5,m5,18724)|0,k5=e[B0>>2]|0,c5=k5+36|0,e[c5>>2]=M1,o5=e[g0>>2]|0,Z2=e[K>>2]|0,B5=Z2+(o5<<2)|0,e5=e[B5>>2]|0,n5=e[B0>>2]|0,g5=n5+28|0,Y2=e[g5>>2]|0,h5=n5+56|0,t5=e[h5>>2]|0,b5=R8(t,e5,Y2,t5,28086)|0,W2=e[B0>>2]|0,a5=W2+40|0,e[a5>>2]=b5,p5=e[g0>>2]|0,H5=e[K>>2]|0,X5=H5+(p5<<2)|0,d5=e[X5>>2]|0,f3=e[B0>>2]|0,g3=f3+28|0,K5=e[g3>>2]|0,e3=f3+56|0,s3=e[e3>>2]|0,E3=R8(t,d5,K5,s3,37449)|0,V5=e[B0>>2]|0,y3=V5+44|0,e[y3>>2]=E3,h3=e[g0>>2]|0,m3=e[K>>2]|0,q3=m3+(h3<<2)|0,M3=e[q3>>2]|0,Z5=e[B0>>2]|0,Q3=Z5+28|0,j5=e[Q3>>2]|0,j3=Z5+56|0,T3=e[j3>>2]|0,a3=R8(t,M3,j5,T3,46811)|0,$3=e[B0>>2]|0,l3=$3+48|0,e[l3>>2]=a3,C3=e[g0>>2]|0,q5=e[K>>2]|0,N5=q5+(C3<<2)|0,P5=e[N5>>2]|0,y5=e[B0>>2]|0,G3=y5+28|0,t6=e[G3>>2]|0,t3=y5+56|0,o3=e[t3>>2]|0,R3=R8(t,P5,t6,o3,56173)|0,f6=e[B0>>2]|0,B3=f6+52|0,e[B3>>2]=R3)),w3=Bi+1|0,p3=e[r0>>2]|0,X3=(w3|0)<(p3|0),X3)Bi=w3;else{B=K,b8=p3;break e}}return m=tn,o|0}else y=ai+48|0,B=y,b8=A0;while(!1);for(s[k2>>2]=Ui,D8=b8<<2,f=D8,He=m,m=m+((1*f|0)+15&-16)|0,E=D8,m9=m,m=m+((1*E|0)+15&-16)|0,s7=_h(t)|0,qe=(s7|0)!=0,M7=qe?0:7,P7=ai+44|0,v7=t+24|0,A7=t+32|0,S7=Y4+2868|0,T7=ai+52|0,li=M7;;){if(H7=(jr+12|0)+(li<<2)|0,A8=e[H7>>2]|0,U2(A8,0,1),_8=e[P7>>2]|0,U2(A8,a6,_8),D7=e[z5>>2]|0,J8=(D7|0)==0,J8||(Re=e[v7>>2]|0,U2(A8,Re,1),fe=e[A7>>2]|0,U2(A8,fe,1)),X9=e[r0>>2]|0,b7=(X9|0)>0,b7)for(zt=0;;)if(Mt=(e6+4|0)+(zt<<2)|0,Tt=e[Mt>>2]|0,Gt=W1+(zt<<2)|0,gt=e[Gt>>2]|0,q7=(e6+1028|0)+(Tt<<2)|0,ht=e[q7>>2]|0,Y7=e[B>>2]|0,ft=Y7+(ht<<2)|0,J7=e[ft>>2]|0,ut=P2+(zt<<2)|0,ii=e[ut>>2]|0,Nt=ii+(li<<2)|0,It=e[Nt>>2]|0,dt=jv(A8,t,J7,It,gt)|0,ri=T0+(zt<<2)|0,e[ri>>2]=dt,Et=zt+1|0,rt=e[r0>>2]|0,ni=(Et|0)<(rt|0),ni)zt=Et;else{I=rt;break}else I=X9;if(Ut=e[z5>>2]|0,Ot=((Y4+3240|0)+(Ut*60|0)|0)+(li<<2)|0,Ht=e[Ot>>2]|0,yS(li,S7,A4,e6,l1,W1,T0,Ht,I),nt=e[e6>>2]|0,Ct=(nt|0)>0,Ct)for(pi=0;;){if(qt=(e6+1092|0)+(pi<<2)|0,K7=e[qt>>2]|0,st=e[r0>>2]|0,G7=(st|0)>0,G7)for(Kr=st,$i=0,Wi=0;;)if(V7=(e6+4|0)+(Wi<<2)|0,si=e[V7>>2]|0,Yt=(si|0)==(pi|0),Yt?(mt=m9+($i<<2)|0,Jt=T0+(Wi<<2)|0,Bt=e[Jt>>2]|0,DA=(Bt|0)!=0,n=DA&1,e[mt>>2]=n,pt=W1+(Wi<<2)|0,Kt=e[pt>>2]|0,Qt=$i+1|0,z7=He+($i<<2)|0,e[z7>>2]=Kt,C=e[r0>>2]|0,At=C,en=Qt):(At=Kr,en=$i),yt=Wi+1|0,Vt=(yt|0)<(At|0),Vt)Kr=At,$i=en,Wi=yt;else{ss=en;break}else ss=0;if(wt=(Y4+1312|0)+(K7<<2)|0,Be=e[wt>>2]|0,kt=25648+(Be<<2)|0,_7=e[kt>>2]|0,ot=_7+20|0,i9=e[ot>>2]|0,u7=e[T7>>2]|0,m8=u7+(K7<<2)|0,I7=e[m8>>2]|0,R7=hB[i9&7](t,I7,He,m9,ss)|0,fr=e[r0>>2]|0,zs=(fr|0)>0,zs)for(zi=0,pr=0;;)if(Mn=(e6+4|0)+(pr<<2)|0,Zs=e[Mn>>2]|0,Tn=(Zs|0)==(pi|0),Tn?(Ws=W1+(pr<<2)|0,js=e[Ws>>2]|0,Gn=zi+1|0,Xs=He+(zi<<2)|0,e[Xs>>2]=js,Cr=Gn):Cr=zi,Hr=pr+1|0,tA=(Hr|0)<(fr|0),tA)zi=Cr,pr=Hr;else{Er=Cr;break}else Er=0;if(iA=e[wt>>2]|0,Nn=25648+(iA<<2)|0,rA=e[Nn>>2]|0,Un=rA+24|0,On=e[Un>>2]|0,nA=e[T7>>2]|0,qr=nA+(K7<<2)|0,Pn=e[qr>>2]|0,_Q[On&3](A8,t,Pn,He,m9,Er,R7,pi)|0,Yr=pi+1|0,qn=e[e6>>2]|0,sA=(Yr|0)<(qn|0),sA)pi=Yr;else break}if(AA=li+1|0,oA=_h(t)|0,Jr=(oA|0)!=0,Yn=Jr?14:7,aA=(li|0)<(Yn|0),aA)li=AA;else{o=0;break}}return m=tn,o|0}function dS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0;if(F2=m,S=t+64|0,w=e[S>>2]|0,E1=w+4|0,L1=e[E1>>2]|0,Y1=L1+28|0,V1=e[Y1>>2]|0,y2=w+104|0,T2=e[y2>>2]|0,f5=t+28|0,x5=e[f5>>2]|0,y=V1+(x5<<2)|0,P=e[y>>2]|0,Z=t+36|0,e[Z>>2]=P,$0=L1+4|0,J0=e[$0>>2]|0,L0=J0<<2,c=L0,i1=m,m=m+((1*c|0)+15&-16)|0,f=L0,z0=m,m=m+((1*f|0)+15&-16)|0,E=L0,I1=m,m=m+((1*E|0)+15&-16)|0,I=L0,h1=m,m=m+((1*I|0)+15&-16)|0,u1=e[$0>>2]|0,d1=(u1|0)>0,d1)for(B1=n+4|0,p1=n+1028|0,Q1=T2+48|0,D1=P<<1,_1=D1&2147483646,Z2=0;;)if(U1=B1+(Z2<<2)|0,Z1=e[U1>>2]|0,G1=p1+(Z1<<2)|0,v1=e[G1>>2]|0,K1=(V1+800|0)+(v1<<2)|0,P1=e[K1>>2]|0,H1=25640+(P1<<2)|0,q1=e[H1>>2]|0,j1=q1+20|0,r2=e[j1>>2]|0,W1=e[Q1>>2]|0,O1=W1+(v1<<2)|0,l2=e[O1>>2]|0,z1=ct[r2&15](t,l2)|0,h2=h1+(Z2<<2)|0,e[h2>>2]=z1,s2=I1+(Z2<<2)|0,W2=(z1|0)!=0,o=W2&1,e[s2>>2]=o,d2=e[t>>2]|0,A2=d2+(Z2<<2)|0,g2=e[A2>>2]|0,se(g2|0,0,_1|0)|0,a2=Z2+1|0,t2=e[$0>>2]|0,$2=(a2|0)<(t2|0),$2)Z2=a2;else{n1=t2;break}else n1=u1;if(y1=n+1156|0,k1=e[y1>>2]|0,x1=(k1|0)>0,x1)for(N1=n+1160|0,w1=n+2184|0,c2=0;e2=N1+(c2<<2)|0,S2=e[e2>>2]|0,w2=I1+(S2<<2)|0,C2=e[w2>>2]|0,M2=(C2|0)==0,_2=w1+(c2<<2)|0,G2=e[_2>>2]|0,M2?(u2=I1+(G2<<2)|0,K2=e[u2>>2]|0,N2=(K2|0)==0,N2||(a5=10)):a5=10,(a5|0)==10&&(a5=0,e[w2>>2]=1,q2=I1+(G2<<2)|0,e[q2>>2]=1),O2=c2+1|0,V2=(O2|0)<(k1|0),V2;)c2=O2;if(i2=e[n>>2]|0,o2=(i2|0)>0,o2){for(X1=n+1092|0,n2=T2+52|0,f2=n+4|0,s5=n1,B5=0;;){if(P2=(s5|0)>0,P2)for(A1=s5,c5=0,h5=0;;)if(T1=f2+(h5<<2)|0,j2=e[T1>>2]|0,R5=(j2|0)==(B5|0),R5?(X2=I1+(h5<<2)|0,v5=e[X2>>2]|0,z2=z0+(c5<<2)|0,b5=(v5|0)!=0,a=b5&1,e[z2>>2]=a,w5=e[t>>2]|0,O5=w5+(h5<<2)|0,$5=e[O5>>2]|0,k2=c5+1|0,E5=i1+(c5<<2)|0,e[E5>>2]=$5,B=e[$0>>2]|0,R2=B,o5=k2):(R2=A1,o5=c5),r5=h5+1|0,x2=(r5|0)<(R2|0),x2)A1=R2,c5=o5,h5=r5;else{k5=o5;break}else k5=0;if(m2=X1+(B5<<2)|0,C5=e[m2>>2]|0,u5=(V1+1312|0)+(C5<<2)|0,S5=e[u5>>2]|0,G5=25648+(S5<<2)|0,D5=e[G5>>2]|0,H2=D5+28|0,I5=e[H2>>2]|0,A5=e[n2>>2]|0,l5=A5+(C5<<2)|0,m5=e[l5>>2]|0,hB[I5&7](t,m5,i1,z0,k5)|0,M1=B5+1|0,D=e[n>>2]|0,Q=(M1|0)<(D|0),!Q)break;p=e[$0>>2]|0,s5=p,B5=M1}v=e[y1>>2]|0,_=v}else _=k1;if(F=(_|0)>0,F)for(R=n+1160|0,L=e[t>>2]|0,M=n+2184|0,T=(P|0)/2&-1,G=(P|0)>1,n5=_;;){if(e5=n5+-1|0,e0=R+(e5<<2)|0,H=e[e0>>2]|0,X=L+(H<<2)|0,U=e[X>>2]|0,o0=M+(e5<<2)|0,V=e[o0>>2]|0,A0=L+(V<<2)|0,n0=e[A0>>2]|0,G)for(t5=0;;){i0=U+(t5<<2)|0,r0=+s[i0>>2],K=n0+(t5<<2)|0,c0=+s[K>>2],s0=r0>0,l0=c0>0;do if(s0)if(l0){s[i0>>2]=r0,j=r0-c0,s[K>>2]=j;break}else{s[K>>2]=r0,g0=c0+r0,s[i0>>2]=g0;break}else if(l0){s[i0>>2]=r0,f0=c0+r0,s[K>>2]=f0;break}else{s[K>>2]=r0,Q0=r0-c0,s[i0>>2]=Q0;break}while(!1);if(d0=t5+1|0,y0=(d0|0)<(T|0),y0)t5=d0;else break}if(N=(n5|0)>1,N)n5=e5;else break}if(z=e[$0>>2]|0,Y=(z|0)>0,!Y)return m=F2,0;for(t0=n+4|0,J=n+1028|0,W=T2+48|0,g5=0;;)if(E0=e[t>>2]|0,C0=E0+(g5<<2)|0,u0=e[C0>>2]|0,k0=t0+(g5<<2)|0,D0=e[k0>>2]|0,B0=J+(D0<<2)|0,x0=e[B0>>2]|0,F0=(V1+800|0)+(x0<<2)|0,M0=e[F0>>2]|0,G0=25640+(M0<<2)|0,p0=e[G0>>2]|0,P0=p0+24|0,R0=e[P0>>2]|0,S0=e[W>>2]|0,Y0=S0+(x0<<2)|0,H0=e[Y0>>2]|0,N0=h1+(g5<<2)|0,V0=e[N0>>2]|0,cB[R0&3](t,H0,V0,u0)|0,T0=g5+1|0,U0=e[$0>>2]|0,r1=(T0|0)<(U0|0),r1)g5=T0;else{C=U0;break}if(h0=(C|0)>0,!h0)return m=F2,0;for(Y2=0;O0=e[t>>2]|0,e1=O0+(Y2<<2)|0,v0=e[e1>>2]|0,c1=e[f5>>2]|0,$1=(T2+12|0)+(c1<<2)|0,f1=e[$1>>2]|0,g1=e[f1>>2]|0,ES(g1,v0,v0),l1=Y2+1|0,s1=e[$0>>2]|0,a1=(l1|0)<(s1|0),a1;)Y2=l1;return m=F2,0}function sB(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0;if(y1=m,o=(n|0)/4&-1,a=o<<2,y=k9(a)|0,P=o+n|0,Z=P<<2,$0=k9(Z)|0,J0=n>>1,L0=+(n|0),i1=L0,I1=+Ur(+i1),c=I1*1.4426950408889634,f=+Gi(c),E=~~f,I=t+4|0,e[I>>2]=E,e[t>>2]=n,C=t+8|0,e[C>>2]=$0,p=t+12|0,e[p>>2]=y,B=(n|0)>3,!B){z0=4/L0,h1=t+16|0,s[h1>>2]=z0;return}for(v=+(n|0),S=3.141592653589793/v,w=n<<1,D=+(w|0),Q=3.141592653589793/D,B1=0;M=B1<<2,T=+(M|0),G=S*T,N=+Jo(+G),z=N,Y=B1<<1,t0=$0+(Y<<2)|0,s[t0>>2]=z,J=+Fn(+G),W=J,e0=-W,H=Y|1,X=$0+(H<<2)|0,s[X>>2]=e0,U=+(H|0),o0=Q*U,V=+Jo(+o0),A0=V,n0=Y+J0|0,i0=$0+(n0<<2)|0,s[i0>>2]=A0,r0=+Fn(+o0),K=r0,c0=n0+1|0,s0=$0+(c0<<2)|0,s[s0>>2]=K,l0=B1+1|0,j=(l0|0)<(o|0),j;)B1=l0;if(_=(n|0)/8&-1,F=(n|0)>7,!F){z0=4/L0,h1=t+16|0,s[h1>>2]=z0;return}for(R=+(n|0),L=3.141592653589793/R,p1=0;g0=p1<<2,f0=g0|2,Q0=+(f0|0),d0=L*Q0,y0=+Jo(+d0),h0=y0*.5,E0=h0,C0=p1<<1,u0=C0+n|0,k0=$0+(u0<<2)|0,s[k0>>2]=E0,D0=+Fn(+d0),B0=D0*-.5,x0=B0,F0=u0+1|0,M0=$0+(F0<<2)|0,s[M0>>2]=x0,G0=p1+1|0,p0=(G0|0)<(_|0),p0;)p1=G0;if(P0=E+-1|0,R0=1<>2]=z0;return}for(;;){for(V0=H0,E1=0,D1=0;;)if(N0=V0&Q1,T0=(N0|0)==0,U0=1<>O0,v0=(e1|0)==0,v0){d1=u1;break}else V0=e1,E1=u1,D1=O0;if(c1=d1^-1,$1=S0&c1,f1=$1+-1|0,g1=Q1<<1,l1=y+(g1<<2)|0,e[l1>>2]=f1,s1=g1|1,a1=y+(s1<<2)|0,e[a1>>2]=d1,n1=Q1+1|0,A1=(n1|0)<(_|0),A1)Q1=n1;else break}z0=4/L0,h1=t+16|0,s[h1>>2]=z0}function AB(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0;p=m,n=(t|0)==0,!n&&(o=t+8|0,a=e[o>>2]|0,c=(a|0)==0,c||I2(a),f=t+12|0,E=e[f>>2]|0,I=(E|0)==0,I||I2(E),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0)}function ES(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0;for(U3=m,E=e[t>>2]|0,I=E>>1,W1=E>>2,a=I+-7|0,K2=n+(a<<2)|0,c=I+W1|0,X2=o+(c<<2)|0,R2=t+8|0,l5=e[R2>>2]|0,g5=l5+(W1<<2)|0,l3=g5,N5=K2,w3=X2;d5=w3+-16|0,m3=N5+8|0,C=+s[m3>>2],R=l3+12|0,W=+s[R>>2],r0=C*W,y0=-r0,M0=+s[N5>>2],T0=l3+8|0,l1=+s[T0>>2],B1=l1*M0,U1=y0-B1,s[d5>>2]=U1,O1=+s[N5>>2],$2=+s[R>>2],y2=$2*O1,S2=+s[m3>>2],w2=+s[T0>>2],C2=w2*S2,M2=y2-C2,_2=w3+-12|0,s[_2>>2]=M2,G2=N5+24|0,u2=+s[G2>>2],N2=l3+4|0,q2=+s[N2>>2],T2=u2*q2,O2=-T2,V2=N5+16|0,s5=+s[V2>>2],P2=+s[l3>>2],T1=P2*s5,j2=O2-T1,R5=w3+-8|0,s[R5>>2]=j2,v5=+s[V2>>2],z2=+s[N2>>2],f5=z2*v5,w5=+s[G2>>2],O5=+s[l3>>2],$5=O5*w5,k2=f5-$5,E5=w3+-4|0,s[E5>>2]=k2,r5=N5+-32|0,x2=l3+16|0,m2=r5>>>0>>0,!m2;)l3=x2,N5=r5,w3=d5;for(C5=o+(I<<2)|0,f=I+-8|0,x5=n+(f<<2)|0,C3=g5,P5=x5,p3=X2;u5=C3+-16|0,S5=P5+16|0,G5=+s[S5>>2],D5=C3+-4|0,H2=+s[D5>>2],I5=H2*G5,A5=P5+24|0,m5=+s[A5>>2],M1=C3+-8|0,k5=+s[M1>>2],c5=k5*m5,o5=c5+I5,s[p3>>2]=o5,Z2=+s[S5>>2],c2=+s[M1>>2],B5=c2*Z2,e5=+s[A5>>2],n5=+s[D5>>2],Y2=n5*e5,h5=B5-Y2,t5=p3+4|0,s[t5>>2]=h5,b5=+s[P5>>2],W2=C3+-12|0,a5=+s[W2>>2],F2=a5*b5,p5=P5+8|0,H5=+s[p5>>2],X5=+s[u5>>2],f3=X5*H5,g3=f3+F2,K5=p3+8|0,s[K5>>2]=g3,e3=+s[P5>>2],s3=+s[u5>>2],E3=s3*e3,F5=+s[p5>>2],V5=+s[W2>>2],y3=V5*F5,h3=E3-y3,q3=p3+12|0,s[q3>>2]=h3,M3=P5+-32|0,Z5=p3+16|0,Q3=M3>>>0>>0,!Q3;)C3=u5,P5=M3,p3=Z5;for(t6=t+4|0,t3=e[t6>>2]|0,AQ(t3,l5,C5,I),o3=e[t>>2]|0,R3=e[R2>>2]|0,f6=t+12|0,B3=e[f6>>2]|0,oQ(o3,R3,B3,o),j5=e[R2>>2]|0,j3=j5+(I<<2)|0,q5=j3,y5=o,X3=X2,z5=X2;_3=X3+-16|0,T3=+s[y5>>2],a3=q5+4|0,$3=+s[a3>>2],p=$3*T3,B=y5+4|0,v=+s[B>>2],S=+s[q5>>2],w=S*v,y=p-w,D=X3+-4|0,s[D>>2]=y,Q=+s[y5>>2],_=+s[q5>>2],F=_*Q,L=+s[B>>2],M=+s[a3>>2],T=M*L,G=F+T,N=-G,s[z5>>2]=N,P=y5+8|0,z=+s[P>>2],Y=q5+12|0,t0=+s[Y>>2],J=t0*z,e0=y5+12|0,H=+s[e0>>2],X=q5+8|0,U=+s[X>>2],o0=U*H,Z=J-o0,V=X3+-8|0,s[V>>2]=Z,A0=+s[P>>2],n0=+s[X>>2],i0=n0*A0,K=+s[e0>>2],c0=+s[Y>>2],s0=c0*K,l0=i0+s0,j=-l0,$0=z5+4|0,s[$0>>2]=j,g0=y5+16|0,f0=+s[g0>>2],Q0=q5+20|0,d0=+s[Q0>>2],h0=d0*f0,E0=y5+20|0,C0=+s[E0>>2],u0=q5+16|0,k0=+s[u0>>2],J0=k0*C0,D0=h0-J0,B0=X3+-12|0,s[B0>>2]=D0,x0=+s[g0>>2],F0=+s[u0>>2],G0=F0*x0,p0=+s[E0>>2],P0=+s[Q0>>2],R0=P0*p0,S0=G0+R0,L0=-S0,Y0=z5+8|0,s[Y0>>2]=L0,H0=y5+24|0,N0=+s[H0>>2],V0=q5+28|0,U0=+s[V0>>2],r1=U0*N0,O0=y5+28|0,e1=+s[O0>>2],v0=q5+24|0,i1=+s[v0>>2],c1=i1*e1,$1=r1-c1,s[_3>>2]=$1,f1=+s[H0>>2],g1=+s[v0>>2],s1=g1*f1,a1=+s[O0>>2],n1=+s[V0>>2],A1=n1*a1,z0=s1+A1,I1=-z0,h1=z5+12|0,s[h1>>2]=I1,E1=z5+16|0,u1=y5+32|0,d1=q5+32|0,p1=u1>>>0<_3>>>0,p1;)q5=d1,y5=u1,X3=_3,z5=E1;for(Q1=o+(W1<<2)|0,G3=X2,V3=Q1,k3=Q1;;)if(D1=V3+-16|0,_1=G3+-16|0,y1=G3+-4|0,k1=+s[y1>>2],x1=V3+-4|0,s[x1>>2]=k1,L1=-k1,s[k3>>2]=L1,N1=G3+-8|0,w1=+s[N1>>2],Z1=V3+-8|0,s[Z1>>2]=w1,G1=-w1,v1=k3+4|0,s[v1>>2]=G1,K1=G3+-12|0,P1=+s[K1>>2],H1=V3+-12|0,s[H1>>2]=P1,q1=-P1,Y1=k3+8|0,s[Y1>>2]=q1,j1=+s[_1>>2],s[D1>>2]=j1,r2=-j1,l2=k3+12|0,s[l2>>2]=r2,z1=k3+16|0,h2=z1>>>0<_1>>>0,h2)G3=_1,V3=D1,k3=z1;else{L5=X2,N3=X2;break}for(;s2=N3+-16|0,d2=L5+12|0,A2=e[d2>>2]|0,e[s2>>2]=A2,V1=L5+8|0,g2=e[V1>>2]|0,a2=N3+-12|0,e[a2>>2]=g2,t2=L5+4|0,i2=e[t2>>2]|0,o2=N3+-8|0,e[o2>>2]=i2,X1=e[L5>>2]|0,n2=N3+-4|0,e[n2>>2]=X1,f2=L5+16|0,e2=s2>>>0>C5>>>0,e2;)L5=f2,N3=s2}function sQ(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0;if(H5=m,w=e[t>>2]|0,y=w>>1,r1=w>>2,a1=w>>3,Q1=w<<2,a=Q1,G1=m,m=m+((1*a|0)+15&-16)|0,l2=G1+(y<<2)|0,c=y+r1|0,i2=n+(c<<2)|0,_2=t+8|0,T1=e[_2>>2]|0,D=T1+(y<<2)|0,z=(a1|0)>0,z){for(f=c+1|0,V=n+(f<<2)|0,g0=a1+-1|0,D0=g0>>>1,Y0=D0<<1,N0=y+-2|0,V0=N0-Y0|0,T0=c+-4|0,U0=D0<<2,O0=T0-U0|0,r5=D,S5=0,g5=i2,b5=V;e1=g5+-16|0,v0=r5+-8|0,i1=g5+-8|0,c1=+s[i1>>2],$1=+s[b5>>2],f1=$1+c1,g1=+s[e1>>2],l1=b5+8|0,s1=+s[l1>>2],n1=s1+g1,A1=r5+-4|0,z0=+s[A1>>2],I1=n1*z0,h1=+s[v0>>2],E1=h1*f1,u1=E1+I1,v=S5+y|0,d1=G1+(v<<2)|0,s[d1>>2]=u1,B1=+s[v0>>2],p1=B1*n1,D1=+s[A1>>2],_1=D1*f1,y1=p1-_1,k1=S5|1,S=k1+y|0,x1=G1+(S<<2)|0,s[x1>>2]=y1,L1=b5+16|0,N1=S5+2|0,w1=(N1|0)<(a1|0),w1;)r5=v0,S5=N1,g5=e1,b5=L1;U1=Y0+2|0,c2=T1+(V0<<2)|0,B5=n+(O0<<2)|0,P2=V0,E5=c2,u5=U1,n5=B5}else P2=y,E5=D,u5=0,n5=i2;if(Z1=n+4|0,v1=y-a1|0,K1=(u5|0)<(v1|0),K1){for(P1=y+-1|0,H1=P1-u5|0,q1=H1-a1|0,Y1=q1>>>1,j1=Y1<<1,r2=u5+j1|0,W1=Y1<<2,O1=W1+5|0,z1=-2-j1|0,R2=E5,D5=u5,Y2=n5,a5=Z1;h2=R2+-8|0,s2=Y2+-16|0,d2=Y2+-8|0,A2=+s[d2>>2],V1=+s[a5>>2],g2=A2-V1,a2=+s[s2>>2],t2=a5+8|0,$2=+s[t2>>2],o2=a2-$2,X1=R2+-4|0,n2=+s[X1>>2],f2=o2*n2,e2=+s[h2>>2],y2=e2*g2,S2=y2+f2,C=D5+y|0,w2=G1+(C<<2)|0,s[w2>>2]=S2,C2=+s[h2>>2],M2=C2*o2,G2=+s[X1>>2],u2=G2*g2,K2=M2-u2,N2=D5|1,p=N2+y|0,q2=G1+(p<<2)|0,s[q2>>2]=K2,T2=a5+16|0,O2=D5+2|0,V2=(O2|0)<(v1|0),V2;)R2=h2,D5=O2,Y2=s2,a5=T2;s5=r2+2|0,o5=n+(O1<<2)|0,B=P2+z1|0,Z2=T1+(B<<2)|0,x2=Z2,G5=s5,W2=o5}else x2=E5,G5=u5,W2=Z1;if(j2=(G5|0)<(y|0),j2)for(R5=n+(w<<2)|0,m2=x2,H2=G5,h5=R5,F2=W2;X2=m2+-8|0,v5=h5+-16|0,z2=h5+-8|0,f5=+s[z2>>2],w5=-f5,O5=+s[F2>>2],$5=w5-O5,k2=+s[v5>>2],Q=-k2,_=F2+8|0,F=+s[_>>2],R=Q-F,L=m2+-4|0,M=+s[L>>2],T=R*M,G=+s[X2>>2],N=G*$5,P=N+T,E=H2+y|0,Y=G1+(E<<2)|0,s[Y>>2]=P,t0=+s[X2>>2],J=t0*R,W=+s[L>>2],e0=W*$5,H=J-e0,X=H2|1,I=X+y|0,U=G1+(I<<2)|0,s[U>>2]=H,o0=F2+16|0,Z=H2+2|0,A0=(Z|0)<(y|0),A0;)m2=X2,H2=Z,h5=v5,F2=o0;if(A5=t+4|0,l5=e[A5>>2]|0,AQ(l5,T1,l2,y),c5=e[t>>2]|0,m5=e[_2>>2]|0,M1=t+12|0,k5=e[M1>>2]|0,oQ(c5,m5,k5,G1),n0=(r1|0)>0,!n0){m=H5;return}for(i0=o+(y<<2)|0,r0=e[_2>>2]|0,K=r0+(y<<2)|0,c0=t+16|0,C5=K,I5=0,e5=G1,t5=i0;s0=t5+-4|0,l0=+s[e5>>2],j=+s[C5>>2],$0=j*l0,f0=e5+4|0,Q0=+s[f0>>2],d0=C5+4|0,y0=+s[d0>>2],h0=y0*Q0,E0=h0+$0,C0=+s[c0>>2],u0=E0*C0,k0=o+(I5<<2)|0,s[k0>>2]=u0,J0=+s[e5>>2],B0=+s[d0>>2],x0=B0*J0,F0=+s[f0>>2],M0=+s[C5>>2],G0=M0*F0,p0=x0-G0,P0=+s[c0>>2],R0=p0*P0,s[s0>>2]=R0,S0=e5+8|0,L0=C5+8|0,H0=I5+1|0,x5=(H0|0)==(r1|0),!x5;)C5=L0,I5=H0,e5=S0,t5=s0;m=H5}function AQ(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,B6=0,z3=0,a6=0,p6=0,_6=0,Y6=0,m6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,A3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,s4=0,p9=0,S4=0,D4=0,x4=0,T4=0,W4=0,C4=0,G4=0,N9=0,N4=0,A4=0,F4=0,g4=0,ue=0,P9=0,d9=0,Ie=0,Le=0,ze=0,U4=0,Me=0,O4=0,j4=0,we=0,Ze=0,z9=0,Ae=0,h4=0,b6=0,P4=0,R9=0,o4=0,b4=0,oe=0,Z9=0,ae=0,$e=0,m4=0,X4=0,L4=0,le=0,E9=0,$6=0,Te=0,a4=0,de=0,B4=0,$4=0,U6=0,ke=0,ve=0,We=0,l4=0,w4=0,g8=0,H3=0,Q9=0,C9=0,M4=0,ee=0,a7=0,Se=0,$7=0,Q7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,y7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ge=0,De=0,je=0,k8=0,y9=0,g7=0,Ee=0,h7=0,w7=0,j8=0,k7=0,te=0,X8=0,P8=0,v8=0,Xe=0,H4=0,be=0,e8=0,u8=0,S8=0,ce=0,W9=0,t8=0,I8=0,i8=0,d8=0,ge=0,Ce=0,Ne=0,Ue=0,j9=0,_e=0,he=0,r8=0,me=0,p4=0,E8=0,e7=0,q4=0,I3=0,Oe=0,C8=0,ie=0,H9=0,re=0,S9=0,Pe=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,s8=0,D8=0,Y4=0,n7=0,b8=0,He=0,m9=0,s7=0,qe=0,M7=0,P7=0,v7=0,A7=0,S7=0,ne=0,T7=0,H7=0,A8=0,_8=0,D7=0,J8=0,Re=0,fe=0,X9=0,b7=0,tt=0,Mt=0,Tt=0,Gt=0,gt=0,q7=0,ht=0,Y7=0,ft=0,J7=0,ut=0,it=0,ii=0,Nt=0,It=0,dt=0,ri=0,Et=0,rt=0,ni=0,Ut=0,Ot=0,Pt=0,Ht=0,nt=0,Ct=0,qt=0,K7=0,st=0,G7=0,V7=0,si=0,Yt=0,Ai=0,mt=0,Jt=0,Bt=0,pt=0,Kt=0,Qt=0,z7=0,yt=0,Vt=0,At=0,N7=0,wt=0,Be=0,kt=0,_7=0,ot=0,i9=0,u7=0,m8=0,I7=0,R7=0,Pr=0,fr=0;if(fr=m,f0=t+-6|0,Q0=(t|0)>6,Q0)for(I=a+-8|0,O5=o+(I<<2)|0,D3=a>>1,B=D3+-8|0,K8=o+(B<<2)|0,c=n,u7=O5,I7=K8;A8=u7+24|0,Gt=+s[A8>>2],It=I7+24|0,Ct=+s[It>>2],Bt=Gt-Ct,d0=u7+28|0,F0=+s[d0>>2],V0=I7+28|0,g1=+s[V0>>2],d1=F0-g1,w1=Ct+Gt,s[A8>>2]=w1,r2=+s[V0>>2],a2=r2+F0,s[d0>>2]=a2,w2=c+4|0,V2=+s[w2>>2],$5=V2*d1,G5=+s[c>>2],Z2=G5*Bt,a5=Z2+$5,s[It>>2]=a5,E3=+s[c>>2],j3=E3*d1,G3=+s[w2>>2],V3=G3*Bt,B6=j3-V3,s[V0>>2]=B6,O3=u7+16|0,T6=+s[O3>>2],r9=I7+16|0,W6=+s[r9>>2],u9=T6-W6,v4=u7+20|0,N4=+s[v4>>2],Me=I7+20|0,o4=+s[Me>>2],$6=N4-o4,w4=W6+T6,s[O3>>2]=w4,l7=+s[Me>>2],N8=l7+N4,s[v4>>2]=N8,je=c+20|0,P8=+s[je>>2],I8=P8*$6,me=c+16|0,S9=+s[me>>2],D8=S9*u9,A7=D8+I8,s[r9>>2]=A7,H7=+s[me>>2],_8=H7*$6,D7=+s[je>>2],J8=D7*u9,Re=_8-J8,s[Me>>2]=Re,fe=u7+8|0,X9=+s[fe>>2],b7=I7+8|0,tt=+s[b7>>2],Mt=X9-tt,Tt=u7+12|0,gt=+s[Tt>>2],q7=I7+12|0,ht=+s[q7>>2],Y7=gt-ht,ft=tt+X9,s[fe>>2]=ft,J7=+s[q7>>2],ut=J7+gt,s[Tt>>2]=ut,it=c+36|0,ii=+s[it>>2],Nt=ii*Y7,dt=c+32|0,ri=+s[dt>>2],Et=ri*Mt,rt=Et+Nt,s[b7>>2]=rt,ni=+s[dt>>2],Ut=ni*Y7,Ot=+s[it>>2],Pt=Ot*Mt,Ht=Ut-Pt,s[q7>>2]=Ht,nt=+s[u7>>2],qt=+s[I7>>2],K7=nt-qt,st=u7+4|0,G7=+s[st>>2],V7=I7+4|0,si=+s[V7>>2],Yt=G7-si,Ai=qt+nt,s[u7>>2]=Ai,mt=+s[V7>>2],Jt=mt+G7,s[st>>2]=Jt,pt=c+52|0,Kt=+s[pt>>2],Qt=Kt*Yt,z7=c+48|0,yt=+s[z7>>2],Vt=yt*K7,At=Vt+Qt,s[I7>>2]=At,N7=+s[z7>>2],wt=N7*Yt,Be=+s[pt>>2],y0=Be*K7,h0=wt-y0,s[V7>>2]=h0,E0=u7+-32|0,C0=I7+-32|0,u0=c+64|0,k0=C0>>>0>>0,!k0;)c=u0,u7=E0,I7=C0;if(J0=(f0|0)>1,J0)for(_7=1;;){if(D0=1<<_7,B0=(_7|0)==31,!B0)for(x0=a>>_7,M0=4<<_7,C=x0+-8|0,G0=x0>>1,v=G0+-8|0,G=M0+1|0,o0=M0<<1,i0=o0|1,c0=M0*3|0,l0=c0+1|0,$0=M0<<2,ot=0;;){for(P0=i5(ot,x0)|0,R0=o+(P0<<2)|0,E=C+P0|0,S0=o+(E<<2)|0,A0=v+P0|0,L0=o+(A0<<2)|0,f=n,m8=S0,R7=L0;Y0=m8+24|0,H0=+s[Y0>>2],N0=R7+24|0,T0=+s[N0>>2],U0=H0-T0,r1=m8+28|0,O0=+s[r1>>2],e1=R7+28|0,v0=+s[e1>>2],i1=O0-v0,c1=T0+H0,s[Y0>>2]=c1,$1=+s[e1>>2],f1=$1+O0,s[r1>>2]=f1,l1=f+4|0,s1=+s[l1>>2],a1=s1*i1,n1=+s[f>>2],A1=n1*U0,z0=A1+a1,s[N0>>2]=z0,I1=+s[f>>2],h1=I1*i1,E1=+s[l1>>2],u1=E1*U0,B1=h1-u1,s[e1>>2]=B1,p1=f+(M0<<2)|0,Q1=m8+16|0,D1=+s[Q1>>2],_1=R7+16|0,y1=+s[_1>>2],k1=D1-y1,x1=m8+20|0,L1=+s[x1>>2],N1=R7+20|0,U1=+s[N1>>2],Z1=L1-U1,G1=y1+D1,s[Q1>>2]=G1,v1=+s[N1>>2],K1=v1+L1,s[x1>>2]=K1,P1=f+(G<<2)|0,H1=+s[P1>>2],q1=H1*Z1,Y1=+s[p1>>2],j1=Y1*k1,W1=j1+q1,s[_1>>2]=W1,O1=+s[p1>>2],l2=O1*Z1,z1=+s[P1>>2],h2=z1*k1,s2=l2-h2,s[N1>>2]=s2,d2=f+(o0<<2)|0,A2=m8+8|0,V1=+s[A2>>2],g2=R7+8|0,t2=+s[g2>>2],$2=V1-t2,i2=m8+12|0,o2=+s[i2>>2],X1=R7+12|0,n2=+s[X1>>2],f2=o2-n2,e2=t2+V1,s[A2>>2]=e2,y2=+s[X1>>2],S2=y2+o2,s[i2>>2]=S2,C2=f+(i0<<2)|0,M2=+s[C2>>2],_2=M2*f2,G2=+s[d2>>2],u2=G2*$2,K2=u2+_2,s[g2>>2]=K2,N2=+s[d2>>2],q2=N2*f2,T2=+s[C2>>2],O2=T2*$2,s5=q2-O2,s[X1>>2]=s5,P2=f+(c0<<2)|0,T1=+s[m8>>2],j2=+s[R7>>2],R5=T1-j2,X2=m8+4|0,v5=+s[X2>>2],z2=R7+4|0,f5=+s[z2>>2],w5=v5-f5,k2=j2+T1,s[m8>>2]=k2,E5=+s[z2>>2],r5=E5+v5,s[X2>>2]=r5,x2=f+(l0<<2)|0,R2=+s[x2>>2],m2=R2*w5,C5=+s[P2>>2],x5=C5*R5,u5=x5+m2,s[R7>>2]=u5,S5=+s[P2>>2],D5=S5*w5,H2=+s[x2>>2],I5=H2*R5,A5=D5-I5,s[z2>>2]=A5,l5=f+($0<<2)|0,m5=m8+-32|0,M1=R7+-32|0,k5=M1>>>0>>0,!k5;)f=l5,m8=m5,R7=M1;if(c5=ot+1|0,o5=(c5|0)<(D0|0),o5)ot=c5;else break}if(c2=_7+1|0,kt=(c2|0)==(f0|0),kt)break;_7=c2}if(p0=(a|0)>0,p0)i9=0;else return;for(;B5=o+(i9<<2)|0,p=i9|30,e5=o+(p<<2)|0,n5=+s[e5>>2],T=i9|14,g5=o+(T<<2)|0,Y2=+s[g5>>2],h5=n5-Y2,U=i9|31,t5=o+(U<<2)|0,b5=+s[t5>>2],n0=i9|15,W2=o+(n0<<2)|0,F2=+s[W2>>2],p5=b5-F2,H5=Y2+n5,s[e5>>2]=H5,X5=F2+b5,s[t5>>2]=X5,s[g5>>2]=h5,s[W2>>2]=p5,r0=i9|28,d5=o+(r0<<2)|0,f3=+s[d5>>2],K=i9|12,g3=o+(K<<2)|0,K5=+s[g3>>2],e3=f3-K5,s0=i9|29,s3=o+(s0<<2)|0,F5=+s[s3>>2],j=i9|13,V5=o+(j<<2)|0,y3=+s[V5>>2],h3=F5-y3,m3=K5+f3,s[d5>>2]=m3,q3=y3+F5,s[s3>>2]=q3,M3=e3*.9238795042037964,Z5=h3*.3826834261417389,Q3=M3-Z5,s[g3>>2]=Q3,j5=e3*.3826834261417389,_3=h3*.9238795042037964,T3=_3+j5,s[V5>>2]=T3,g0=i9|26,a3=o+(g0<<2)|0,$3=+s[a3>>2],S=i9|10,l3=o+(S<<2)|0,C3=+s[l3>>2],q5=$3-C3,w=i9|27,N5=o+(w<<2)|0,P5=+s[N5>>2],y=i9|11,y5=o+(y<<2)|0,L5=+s[y5>>2],t6=P5-L5,t3=C3+$3,s[a3>>2]=t3,o3=L5+P5,s[N5>>2]=o3,R3=q5-t6,f6=R3*.7071067690849304,s[l3>>2]=f6,B3=t6+q5,w3=B3*.7071067690849304,s[y5>>2]=w3,D=i9|24,p3=o+(D<<2)|0,X3=+s[p3>>2],Q=i9|8,N3=o+(Q<<2)|0,z5=+s[N3>>2],k3=X3-z5,_=i9|25,c3=o+(_<<2)|0,U3=+s[c3>>2],F=i9|9,o6=o+(F<<2)|0,u3=+s[o6>>2],w6=U3-u3,k6=z5+X3,s[p3>>2]=k6,v6=u3+U3,s[c3>>2]=v6,z3=k3*.3826834261417389,a6=w6*.9238795042037964,p6=z3-a6,_6=w6*.3826834261417389,Y6=k3*.9238795042037964,m6=_6+Y6,R=i9|22,v3=o+(R<<2)|0,Z3=+s[v3>>2],L=i9|6,W3=o+(L<<2)|0,u6=+s[W3>>2],S3=Z3-u6,M=i9|7,P3=o+(M<<2)|0,Y3=+s[P3>>2],N=i9|23,S6=o+(N<<2)|0,i6=+s[S6>>2],i3=Y3-i6,P6=u6+Z3,s[v3>>2]=P6,A3=i6+Y3,s[S6>>2]=A3,s[W3>>2]=i3,s[P3>>2]=S3,P=i9|4,r6=o+(P<<2)|0,I6=+s[r6>>2],z=i9|20,e6=o+(z<<2)|0,Q6=+s[e6>>2],R6=I6-Q6,Y=i9|5,K6=o+(Y<<2)|0,d6=+s[K6>>2],t0=i9|21,J6=o+(t0<<2)|0,x3=+s[J6>>2],Z6=d6-x3,G6=Q6+I6,s[e6>>2]=G6,j6=x3+d6,s[J6>>2]=j6,x6=Z6*.9238795042037964,N6=R6*.3826834261417389,D6=x6+N6,V6=Z6*.3826834261417389,y6=R6*.9238795042037964,F6=V6-y6,J=i9|2,F3=o+(J<<2)|0,L6=+s[F3>>2],W=i9|18,X6=o+(W<<2)|0,s9=+s[X6>>2],g9=L6-s9,e0=i9|3,h9=o+(e0<<2)|0,f9=+s[h9>>2],H=i9|19,A9=o+(H<<2)|0,o9=+s[A9>>2],M9=f9-o9,E6=s9+L6,s[X6>>2]=E6,M6=o9+f9,s[A9>>2]=M6,e9=M9+g9,T9=e9*.7071067690849304,d4=M9-g9,n4=d4*.7071067690849304,c4=+s[B5>>2],X=i9|16,G9=o+(X<<2)|0,V9=+s[G9>>2],v9=c4-V9,Z=i9|1,I9=o+(Z<<2)|0,H6=+s[I9>>2],V=i9|17,t9=o+(V<<2)|0,E4=+s[t9>>2],s4=H6-E4,p9=V9+c4,s[G9>>2]=p9,S4=E4+H6,s[t9>>2]=S4,D4=s4*.3826834261417389,x4=v9*.9238795042037964,T4=D4+x4,W4=s4*.9238795042037964,C4=v9*.3826834261417389,G4=W4-C4,N9=G4-m6,A4=T4-p6,F4=T4+p6,g4=G4+m6,ue=A4+N9,P9=N9-A4,d9=+s[y5>>2],Ie=n4-d9,Le=+s[l3>>2],ze=Le-T9,U4=Le+T9,O4=d9+n4,j4=+s[g3>>2],we=j4-D6,Ze=+s[V5>>2],z9=Ze-F6,Ae=j4+D6,h4=Ze+F6,b6=we-z9,P4=z9+we,R9=+s[g5>>2],b4=R9-i3,oe=+s[W2>>2],Z9=oe-S3,ae=i3+R9,$e=S3+oe,m4=b4+Ie,X4=b4-Ie,L4=b6+ue,le=L4*.7071067690849304,E9=b6-ue,Te=E9*.7071067690849304,a4=le+m4,s[W3>>2]=a4,de=m4-le,s[r6>>2]=de,B4=P4-P9,$4=B4*.7071067690849304,U6=Z9-ze,ke=$4+X4,s[B5>>2]=ke,ve=X4-$4,s[F3>>2]=ve,We=P4+P9,l4=We*.7071067690849304,g8=Z9+ze,H3=U6+Te,s[h9>>2]=H3,Q9=U6-Te,s[I9>>2]=Q9,C9=g8+l4,s[P3>>2]=C9,M4=g8-l4,s[K6>>2]=M4,ee=ae+U4,a7=ae-U4,Se=F4+Ae,$7=Ae-F4,Q7=ee+Se,s[g5>>2]=Q7,c7=ee-Se,s[g3>>2]=c7,x8=h4-g4,F8=$e-O4,L8=a7+x8,s[N3>>2]=L8,M8=a7-x8,s[l3>>2]=M8,V8=h4+g4,z8=$e+O4,y7=F8+$7,s[y5>>2]=y7,T8=F8-$7,s[o6>>2]=T8,G8=z8+V8,s[W2>>2]=G8,y8=z8-V8,s[V5>>2]=y8,w8=+s[c3>>2],h8=S4-w8,U8=+s[p3>>2],O8=p9-U8,Z8=U8+p9,W8=w8+S4,f8=O8+h8,Ge=h8-O8,De=+s[A9>>2],k8=+s[N5>>2],y9=De-k8,g7=+s[a3>>2],Ee=+s[X6>>2],h7=g7-Ee,w7=Ee+g7,j8=k8+De,k7=+s[d5>>2],te=+s[e6>>2],X8=k7-te,v8=+s[s3>>2],Xe=+s[J6>>2],H4=v8-Xe,be=te+k7,e8=Xe+v8,u8=X8-H4,S8=H4+X8,ce=+s[e5>>2],W9=+s[v3>>2],t8=ce-W9,i8=+s[t5>>2],d8=+s[S6>>2],ge=i8-d8,Ce=W9+ce,Ne=d8+i8,Ue=t8+y9,j9=t8-y9,_e=u8+f8,he=_e*.7071067690849304,r8=u8-f8,p4=r8*.7071067690849304,E8=he+Ue,s[v3>>2]=E8,e7=Ue-he,s[e6>>2]=e7,q4=S8-Ge,I3=q4*.7071067690849304,Oe=ge-h7,C8=I3+j9,s[G9>>2]=C8,ie=j9-I3,s[X6>>2]=ie,H9=S8+Ge,re=H9*.7071067690849304,Pe=ge+h7,H8=Oe+p4,s[A9>>2]=H8,f7=Oe-p4,s[t9>>2]=f7,t7=Pe+re,s[S6>>2]=t7,i7=Pe-re,s[J6>>2]=i7,q8=Ce+w7,r7=Ce-w7,Y8=be+Z8,n8=be-Z8,s8=q8+Y8,s[e5>>2]=s8,Y4=q8-Y8,s[d5>>2]=Y4,n7=e8-W8,b8=Ne-j8,He=r7+n7,s[p3>>2]=He,m9=r7-n7,s[a3>>2]=m9,s7=e8+W8,qe=Ne+j8,M7=b8+n8,s[N5>>2]=M7,P7=b8-n8,s[c3>>2]=P7,v7=qe+s7,s[t5>>2]=v7,S7=qe-s7,s[s3>>2]=S7,ne=i9+32|0,T7=(ne|0)<(a|0),T7;)i9=ne}function oQ(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0;for(E1=m,S=t>>1,w=a+(S<<2)|0,N=n+(t<<2)|0,n1=N,A1=o,z0=a,I1=w;o0=e[A1>>2]|0,c=o0+S|0,j=a+(c<<2)|0,k0=A1+4|0,S0=e[k0>>2]|0,f=S0+S|0,v0=a+(f<<2)|0,E=c+1|0,s1=a+(E<<2)|0,a1=+s[s1>>2],I=f+1|0,y=a+(I<<2)|0,D=+s[y>>2],Q=a1-D,_=+s[j>>2],F=+s[v0>>2],R=F+_,L=+s[n1>>2],M=R*L,T=n1+4|0,G=+s[T>>2],P=G*Q,z=P+M,Y=G*R,t0=L*Q,J=Y-t0,W=I1+-16|0,e0=D+a1,H=e0*.5,X=_-F,U=X*.5,Z=z+H,s[z0>>2]=Z,V=H-z,A0=I1+-8|0,s[A0>>2]=V,n0=J+U,i0=z0+4|0,s[i0>>2]=n0,r0=J-U,K=I1+-4|0,s[K>>2]=r0,c0=A1+8|0,s0=e[c0>>2]|0,C=s0+S|0,l0=a+(C<<2)|0,$0=A1+12|0,g0=e[$0>>2]|0,p=g0+S|0,f0=a+(p<<2)|0,B=C+1|0,Q0=a+(B<<2)|0,d0=+s[Q0>>2],v=p+1|0,y0=a+(v<<2)|0,h0=+s[y0>>2],E0=d0-h0,C0=+s[l0>>2],u0=+s[f0>>2],J0=u0+C0,D0=n1+8|0,B0=+s[D0>>2],x0=J0*B0,F0=n1+12|0,M0=+s[F0>>2],G0=M0*E0,p0=G0+x0,P0=M0*J0,R0=B0*E0,L0=P0-R0,Y0=h0+d0,H0=Y0*.5,N0=C0-u0,V0=N0*.5,T0=p0+H0,U0=z0+8|0,s[U0>>2]=T0,r1=H0-p0,s[W>>2]=r1,O0=L0+V0,e1=z0+12|0,s[e1>>2]=O0,i1=L0-V0,c1=I1+-12|0,s[c1>>2]=i1,$1=n1+16|0,f1=A1+16|0,g1=z0+16|0,l1=g1>>>0>>0,l1;)n1=$1,A1=f1,z0=g1,I1=W}function CS(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0;return B=m,n=t+28|0,o=e[n>>2]|0,a=o+2868|0,c=i4(1,36)|0,f=t+4|0,E=e[f>>2]|0,I=c+4|0,e[I>>2]=E,s[c>>2]=-9999,C=c+8|0,e[C>>2]=a,c|0}function mS(t){t=t|0;var n=0,o=0,a=0;a=m,n=(t|0)==0,!n&&I2(t)}function BS(t){t=t|0;var n=0,o=0,a=0;a=m,n=(t|0)==0,n||I2(t)}function pS(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,B6=0,z3=0,a6=0,p6=0,_6=0,Y6=0,m6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,A3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0;e9=m,E6=t,T9=E6+48|0;do e[E6>>2]=0,E6=E6+4|0;while((E6|0)<(T9|0));_=e[o>>2]|0,F=t+36|0,e[F>>2]=_,t2=+(_|0),X5=t2*8,h3=X5,$3=+Ur(+h3),o3=$3*1.4426950408889634,c3=+Gi(o3),_6=c3+-1,S6=~~_6,R=t+32|0,e[R>>2]=S6,W=+(c|0),r0=W*.25,y0=r0,M0=y0*.5,T0=+(a|0),l1=M0/T0,B1=+Ur(+l1),U1=B1*1.4426950216293335,W1=U1+-5.965784072875977,$2=S6+1|0,M2=1<<$2,P2=+(M2|0),k2=P2*W1,D5=+(_|0),c2=k2-D5,a5=~~c2,F2=t+28|0,e[F2>>2]=a5,p5=+(a|0),H5=p5+.25,d5=H5*W,f3=d5,g3=f3*.5,K5=g3/T0,e3=+Ur(+K5),s3=e3*1.4426950216293335,E3=s3+-5.965784072875977,F5=P2*E3,V5=F5+.5,y3=~~V5,m3=1-a5|0,q3=m3+y3|0,M3=t+40|0,e[M3>>2]=q3,Z5=a<<2,Q3=k9(Z5)|0,j5=t+16|0,e[j5>>2]=Q3,j3=k9(Z5)|0,_3=t+20|0,e[_3>>2]=j3,T3=k9(Z5)|0,a3=t+24|0,e[a3>>2]=T3,l3=t+4|0,e[l3>>2]=n,e[t>>2]=a,C3=t+44|0,e[C3>>2]=c,q5=t+48|0,s[q5>>2]=1,N5=(c|0)<26e3;do if(N5)s[q5>>2]=0;else{if(P5=(c|0)<38e3,P5){s[q5>>2]=.9399999976158142;break}y5=(c|0)>46e3,y5&&(s[q5>>2]=1.274999976158142)}while(!1);G3=T0*2,L5=+(c|0),t6=(a|0)>0,B3=t6,V6=0,W6=0;e:for(;;){for(p=B3^1,y6=V6;;){if(p3=y6+1|0,X3=+(p3|0),V3=X3*.08664337545633316,N3=V3+2.7488713472395148,z5=+Ln(+N3),k3=G3*z5,U3=k3/L5,o6=+Gi(U3),u3=~~o6,C=(u3|0)<=(W6|0),K6=C|p,!K6){E=p3,I=u3,F6=y6;break}if(w6=(p3|0)<87,w6)y6=p3;else{s9=W6;break e}}for(k6=1272+(F6<<2)|0,v6=+s[k6>>2],B6=1272+(E<<2)|0,z3=+s[B6>>2],a6=z3-v6,p6=I-W6|0,Y6=+(p6|0),m6=a6/Y6,v3=W6-I|0,Z3=W6-a|0,W3=v3>>>0>Z3>>>0,M9=W3?v3:Z3,t3=W6-M9|0,R6=v6,g9=W6;u6=R6+100,O3=Q3+(g9<<2)|0,s[O3>>2]=u6,S3=R6+m6,P3=g9+1|0,G6=(P3|0)==(t3|0),!G6;)R6=S3,g9=P3;if(R3=(t3|0)<(a|0),f6=(E|0)<87,f6)B3=R3,V6=E,W6=t3;else{s9=t3;break}}if(w3=(s9|0)<(a|0),w3)for(h9=s9;T6=h9+-1|0,e6=Q3+(T6<<2)|0,Q6=e[e6>>2]|0,L=Q3+(h9<<2)|0,e[L>>2]=Q6,M=h9+1|0,Z6=(M|0)==(a|0),!Z6;)h9=M;if(Y3=(a|0)>0,Y3){for(i6=a<<1,i3=(c|0)/(i6|0)&-1,P6=n+120|0,A3=e[P6>>2]|0,r6=n+124|0,I6=n+116|0,D3=n+112|0,x6=1,F3=0,f9=-99;;){Y=i5(i3,F3)|0,t0=+(Y|0),J=t0*.0007399999885819852,e0=J,H=+Hs(+e0),X=H*13.100000381469727,U=i5(Y,Y)|0,o0=+(U|0),Z=o0*18499999754340024e-24,V=Z,A0=+Hs(+V),n0=A0*2.240000009536743,i0=n0+X,K=t0*9999999747378752e-20,c0=K,s0=i0+c0,l0=s0,j=A3+f9|0,$0=(j|0)<(F3|0);e:do if($0)for(g0=+s[D3>>2],f0=l0-g0,Q0=f0,o9=f9;;){if(d0=i5(o9,i3)|0,h0=+(d0|0),E0=h0*.0007399999885819852,C0=E0,u0=+Hs(+C0),k0=u0*13.100000381469727,J0=i5(d0,d0)|0,D0=+(J0|0),B0=D0*18499999754340024e-24,x0=B0,F0=+Hs(+x0),G0=F0*2.240000009536743,p0=h0*9999999747378752e-20,P0=p0,R0=k0+P0,S0=R0+G0,L0=S0(a|0);e:do if(Y0)N6=x6;else for(H0=e[r6>>2]|0,N0=H0+F3|0,D6=x6;;){if(O0=(D6|0)<(N0|0),!O0&&(e1=i5(D6,i3)|0,v0=+(e1|0),i1=v0*.0007399999885819852,c1=i1,$1=+Hs(+c1),f1=$1*13.100000381469727,g1=i5(e1,e1)|0,s1=+(g1|0),a1=s1*18499999754340024e-24,n1=a1,A1=+Hs(+n1),z0=A1*2.240000009536743,I1=v0*9999999747378752e-20,h1=I1,E1=f1+h1,u1=E1+z0,d1=+s[I6>>2],p1=d1+l0,Q1=p1,D1=u1>2]=L1,w1=F3+1|0,x3=(w1|0)==(a|0),x3)break;x6=N6,F3=w1,f9=A9}if(Y3)for(T=L5*.5,G=e[R>>2]|0,N=G+1|0,P=1<>2]=O1,z1=L6+1|0,J6=(z1|0)==(a|0),J6){w=T;break}else L6=z1;else M6=19}else M6=19;if((M6|0)==19&&(Q=L5*.5,w=Q),h2=n+36|0,s2=w/T0,d2=s2,A2=n+24|0,V1=+s[A2>>2],g2=n+28|0,a2=+s[g2>>2],i2=wS(h2,d2,a,V1,a2)|0,o2=t+8|0,e[o2>>2]=i2,X1=k9(12)|0,n2=t+12|0,e[n2>>2]=X1,f2=k9(Z5)|0,e[X1>>2]=f2,e2=k9(Z5)|0,y2=X1+4|0,e[y2>>2]=e2,S2=k9(Z5)|0,w2=X1+8|0,e[w2>>2]=S2,!!Y3)for(C2=e[l3>>2]|0,S=e[X1>>2]|0,B=X1+4|0,y=e[B>>2]|0,v=X1+8|0,D=e[v>>2]|0,X6=0;_2=+(X6|0),G2=_2+.5,u2=G2*L5,K2=u2/G3,N2=+Ur(+K2),q2=N2*2.885390043258667,T2=q2+-11.931568145751953,O2=T2,V2=O2<0,j6=V2?0:O2,f=j6>=16,r9=f?16:j6,s5=~~r9,T1=+(s5|0),j2=r9-T1,R5=j2,X2=1-R5,v5=s5+1|0,z2=(C2+132|0)+(s5<<2)|0,f5=+s[z2>>2],w5=f5,O5=w5*X2,$5=(C2+132|0)+(v5<<2)|0,E5=+s[$5>>2],r5=E5*j2,x2=r5,R2=x2+O5,m2=R2,C5=S+(X6<<2)|0,s[C5>>2]=m2,x5=(C2+200|0)+(s5<<2)|0,u5=+s[x5>>2],S5=u5,G5=S5*X2,H2=(C2+200|0)+(v5<<2)|0,I5=+s[H2>>2],A5=I5*j2,l5=A5,m5=l5+G5,M1=m5,k5=y+(X6<<2)|0,s[k5>>2]=M1,c5=(C2+268|0)+(s5<<2)|0,o5=+s[c5>>2],Z2=o5,B5=Z2*X2,e5=(C2+268|0)+(v5<<2)|0,n5=+s[e5>>2],g5=n5*j2,Y2=g5,h5=Y2+B5,t5=h5,b5=D+(X6<<2)|0,s[b5>>2]=t5,W2=X6+1|0,d6=(W2|0)==(a|0),!d6;)X6=W2}function aQ(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0;if(T0=m,o=(t|0)==0,!o){if(a=t+16|0,y=e[a>>2]|0,P=(y|0)==0,P||I2(y),Z=t+20|0,$0=e[Z>>2]|0,J0=($0|0)==0,J0||I2($0),R0=t+24|0,S0=e[R0>>2]|0,L0=(S0|0)==0,L0||I2(S0),c=t+8|0,f=e[c>>2]|0,E=(f|0)==0,!E){for(C=f,H0=0;I=C+(H0<<2)|0,p=e[I>>2]|0,B=e[p>>2]|0,I2(B),v=e[c>>2]|0,S=v+(H0<<2)|0,w=e[S>>2]|0,D=w+4|0,Q=e[D>>2]|0,I2(Q),_=e[c>>2]|0,F=_+(H0<<2)|0,R=e[F>>2]|0,L=R+8|0,M=e[L>>2]|0,I2(M),T=e[c>>2]|0,G=T+(H0<<2)|0,N=e[G>>2]|0,z=N+12|0,Y=e[z>>2]|0,I2(Y),t0=e[c>>2]|0,J=t0+(H0<<2)|0,W=e[J>>2]|0,e0=W+16|0,H=e[e0>>2]|0,I2(H),X=e[c>>2]|0,U=X+(H0<<2)|0,o0=e[U>>2]|0,V=o0+20|0,A0=e[V>>2]|0,I2(A0),n0=e[c>>2]|0,i0=n0+(H0<<2)|0,r0=e[i0>>2]|0,K=r0+24|0,c0=e[K>>2]|0,I2(c0),s0=e[c>>2]|0,l0=s0+(H0<<2)|0,j=e[l0>>2]|0,g0=j+28|0,f0=e[g0>>2]|0,I2(f0),Q0=e[c>>2]|0,d0=Q0+(H0<<2)|0,y0=e[d0>>2]|0,I2(y0),h0=H0+1|0,Y0=(h0|0)==17,!Y0;)n=e[c>>2]|0,C=n,H0=h0;E0=e[c>>2]|0,I2(E0)}C0=t+12|0,u0=e[C0>>2]|0,k0=(u0|0)==0,k0||(D0=e[u0>>2]|0,I2(D0),B0=e[C0>>2]|0,x0=B0+4|0,F0=e[x0>>2]|0,I2(F0),M0=e[C0>>2]|0,G0=M0+8|0,p0=e[G0>>2]|0,I2(p0),P0=e[C0>>2]|0,I2(P0)),N0=t,U0=N0+52|0;do e[N0>>2]=0,N0=N0+4|0;while((N0|0)<(U0|0))}}function $Q(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0;if(d0=m,E=e[t>>2]|0,I=E<<2,f=I,F=m,m=m+((1*f|0)+15&-16)|0,J=t+24|0,A0=e[J>>2]|0,cQ(E,A0,n,o,140,-1),n0=(E|0)>0,n0)for($0=0;i0=n+($0<<2)|0,r0=+s[i0>>2],K=o+($0<<2)|0,c0=+s[K>>2],C=r0-c0,p=F+($0<<2)|0,s[p>>2]=C,B=$0+1|0,l0=(B|0)==(E|0),!l0;)$0=B;if(v=e[J>>2]|0,S=t+4|0,w=e[S>>2]|0,y=w+128|0,D=e[y>>2]|0,cQ(E,v,F,o,0,D),n0)g0=0;else{m=d0;return}for(;_=n+(g0<<2)|0,R=+s[_>>2],L=F+(g0<<2)|0,M=+s[L>>2],T=R-M,s[L>>2]=T,G=g0+1|0,j=(G|0)==(E|0),!j;)g0=G;if(!n0){m=d0;return}for(Q=e[S>>2]|0,f0=0;N=o+(f0<<2)|0,P=+s[N>>2],z=P,Y=z+.5,t0=~~Y,W=(t0|0)>39,a=W?39:t0,e0=(a|0)<0,c=e0?0:a,H=F+(f0<<2)|0,X=+s[H>>2],U=(Q+336|0)+(c<<2)|0,o0=+s[U>>2],Z=o0+X,s[N>>2]=Z,V=f0+1|0,s0=(V|0)==(E|0),!s0;)f0=V;m=d0}function lQ(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=+a,c=+c;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0;if(d5=m,M=e[t>>2]|0,T=t+40|0,l1=e[T>>2]|0,B1=l1<<2,I=B1,U1=m,m=m+((1*I|0)+15&-16)|0,W1=t+4|0,t2=e[W1>>2]|0,C2=t2+4|0,s5=+s[C2>>2],$5=s5+c,G=(l1|0)>0,G)for(A5=0;U=U1+(A5<<2)|0,s[U>>2]=-9999,l0=A5+1|0,u0=(l0|0)<(l1|0),u0;)A5=l0;if(R0=t2+8|0,e1=+s[R0>>2],c1=$50,$1){for(f1=t+16|0,g1=e[f1>>2]|0,c5=0;s1=g1+(c5<<2)|0,a1=+s[s1>>2],n1=a1+G5,A1=o+(c5<<2)|0,s[A1>>2]=n1,z0=c5+1|0,H2=(z0|0)==(M|0),!H2;)c5=z0;if(I1=t+8|0,h1=e[I1>>2]|0,E1=t2+496|0,u1=+s[E1>>2],d1=u1-a,$1)for(p1=t+20|0,Q1=e[p1>>2]|0,D1=t+32|0,_1=t+36|0,y1=t+28|0,l5=0;;){k1=n+(l5<<2)|0,x1=+s[k1>>2],L1=Q1+(l5<<2)|0,N1=e[L1>>2]|0,k5=l5,n5=x1;e:for(;;)for(m5=k5;;){if(w1=m5+1|0,Z1=(w1|0)<(M|0),!Z1){v=0,w=w1,M1=m5,g5=n5;break e}if(G1=Q1+(w1<<2)|0,v1=e[G1>>2]|0,K1=(v1|0)==(N1|0),!K1){v=1,w=w1,M1=m5,g5=n5;break e}if(P1=n+(w1<<2)|0,H1=+s[P1>>2],q1=H1>n5,q1){k5=w1,n5=H1;continue e}else m5=w1}if(Y1=g5+6,j1=o+(M1<<2)|0,r2=+s[j1>>2],O1=Y1>r2,O1&&(l2=e[D1>>2]|0,z1=N1>>l2,h2=(z1|0)>16,E=h2?16:z1,s2=(E|0)<0,f=s2?0:E,d2=h1+(f<<2)|0,A2=e[d2>>2]|0,V1=e[_1>>2]|0,g2=d1+g5,a2=g2,$2=a2+-30,i2=$2*.10000000149011612,o2=~~i2,X1=(o2|0)<0,n2=X1?0:o2,f2=(n2|0)>7,e2=f2?7:n2,y2=A2+(e2<<2)|0,S2=e[y2>>2]|0,w2=S2+4|0,M2=+s[w2>>2],_2=~~M2,G2=+s[S2>>2],u2=~~G2,K2=(u2|0)<(_2|0),K2))for(N2=Q1+(M1<<2)|0,q2=e[N2>>2]|0,T2=e[y1>>2]|0,O2=q2-T2|0,V2=+(O2|0),P2=V1>>1,T1=+(P2|0),j2=G2+-16,R5=+(V1|0),X2=j2*R5,v5=X2-T1,z2=v5+V2,f5=~~z2,I5=u2,H5=f5;w5=(H5|0)>0,w5&&(L=I5+2|0,O5=S2+(L<<2)|0,k2=+s[O5>>2],E5=k2+g5,r5=U1+(H5<<2)|0,x2=+s[r5>>2],R2=x2>2]=E5)),m2=H5+V1|0,C5=(m2|0)<(l1|0),x5=I5+1|0,u5=(x5|0)<(_2|0),a5=u5&C5,a5;)I5=x5,H5=m2;if(v)l5=w;else{F=_1;break}}else X5=7}else X5=7;(X5|0)==7&&(Q=t+36|0,F=Q),S5=e[F>>2]|0,kS(U1,S5,l1),N=e[t>>2]|0,P=(N|0)>1;e:do if(P)for(z=t+20|0,Y=t+28|0,t0=e[z>>2]|0,J=e[t0>>2]|0,W=S5>>1,e0=J-W|0,H=e[Y>>2]|0,X=e0-H|0,o0=e[W1>>2]|0,Z=o0+32|0,K=1,j=J,Z2=0,F2=X;;){n0=U1+(F2<<2)|0,i0=+s[n0>>2],r0=t0+(K<<2)|0,c0=e[r0>>2]|0,s0=c0+j|0,$0=s0>>1,g0=$0-H|0,f0=+s[Z>>2],Q0=i0>f0,Y2=Q0?f0:i0,d0=(F2|0)<(g0|0);t:do if(d0)for(C=F2,t5=Y2;;){for(y0=t5==-9999,p=C;;){if(h0=p+1|0,E0=U1+(h0<<2)|0,C0=+s[E0>>2],k0=C0>-9999,k0){if(J0=C0=(N|0),M0=(j|0)>(x0|0),b5=F0|M0;t:do if(b5)c2=Z2;else for(B5=Z2;;){if(G0=o+(B5<<2)|0,p0=+s[G0>>2],P0=p0>2]=h5),S0=B5+1|0,L0=(S0|0)<(N|0),!L0){c2=S0;break t}if(D=t0+(S0<<2)|0,R=e[D>>2]|0,Y0=(R|0)>(x0|0),Y0){c2=S0;break}else B5=S0}while(!1);if(V=c2+1|0,A0=(V|0)<(N|0),!A0){o5=c2;break e}y=t0+(c2<<2)|0,_=e[y>>2]|0,K=V,j=_,Z2=c2,F2=p5}else o5=0;while(!1);if(H0=e[T>>2]|0,N0=H0+-1|0,V0=U1+(N0<<2)|0,T0=+s[V0>>2],U0=(o5|0)<(N|0),U0)e5=o5;else{m=d5;return}for(;r1=o+(e5<<2)|0,O0=+s[r1>>2],v0=O0>2]=T0),i1=e5+1|0,D5=(i1|0)==(N|0),!D5;)e5=i1;m=d5}function z$(t,n,o,a,c,f,E){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0;var I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0;if(D0=m,C=e[t>>2]|0,p=t+4|0,L=e[p>>2]|0,e0=(L+12|0)+(a<<2)|0,K=+s[e0>>2],f0=(C|0)>0,!!f0)for(Q0=t+48|0,d0=+s[Q0>>2],y0=t+12|0,h0=e[y0>>2]|0,B=h0+(a<<2)|0,v=e[B>>2]|0,S=L+108|0,w=(a|0)==1,y=d0,D=y*.005,Q=y*3e-4,u0=0;_=n+(u0<<2)|0,F=+s[_>>2],R=v+(u0<<2)|0,M=+s[R>>2],T=M+F,G=+s[S>>2],N=T>G,k0=N?G:T,P=o+(u0<<2)|0,z=+s[P>>2],Y=z+K,t0=k0>2]=I,w&&(W=E+(u0<<2)|0,H=+s[W>>2],X=k0-H,U=X>-17.200000762939453,o0=X+17.200000762939453,Z=o0,U?(V=D*Z,A0=1-V,n0=A0,i0=n0<0,i0?E0=9999999747378752e-20:E0=n0):(r0=Q*Z,c0=1-r0,s0=c0,E0=s0),l0=f+(u0<<2)|0,j=+s[l0>>2],$0=j*E0,s[l0>>2]=$0),g0=u0+1|0,C0=(g0|0)==(C|0),!C0;)u0=g0}function QS(t,n){t=+t,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0;return G=m,a=n+4|0,c=e[a>>2]|0,y=c+28|0,D=e[y>>2]|0,Q=n+40|0,_=e[Q>>2]|0,F=D+(_<<2)|0,R=e[F>>2]|0,L=(R|0)/2&-1,M=+(L|0),f=c+8|0,E=e[f>>2]|0,I=+(E|0),C=M/I,p=D+2936|0,B=+s[p>>2],v=B*C,S=v+t,w=S<-9999,o=w?-9999:S,+o}function yS(t,n,o,a,c,f,E,I,C){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0,I=I|0,C=C|0;var p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,B6=0,z3=0,a6=0,p6=0,_6=0,Y6=0,m6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,A3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,s4=0,p9=0,S4=0,D4=0,x4=0,T4=0,W4=0,C4=0,G4=0,N9=0,N4=0;if(N4=m,n0=e[o>>2]|0,i0=o+4|0,s5=e[i0>>2]|0,q3=s5+500|0,C3=e[q3>>2]|0,f6=(C3|0)==0,f6?V5=16:(o6=s5+508|0,m6=e[o6>>2]|0,V5=m6),i3=e[s5>>2]|0,d6=((n+132|0)+(i3*60|0)|0)+(t<<2)|0,r0=e[d6>>2]|0,y0=(n+252|0)+(t<<2)|0,M0=e[y0>>2]|0,T0=1624+(M0<<3)|0,l1=+o1[T0>>3],B1=(n+312|0)+(t<<2)|0,U1=e[B1>>2]|0,W1=C<<2,v=W1,t2=m,m=m+((1*v|0)+15&-16)|0,S=W1,C2=m,m=m+((1*S|0)+15&-16)|0,Q=W1,P2=m,m=m+((1*Q|0)+15&-16)|0,_=W1,k2=m,m=m+((1*_|0)+15&-16)|0,F=W1,D5=m,m=m+((1*F|0)+15&-16)|0,c2=a+1156|0,F2=(n0|0)>1e3,G4=F2?1696:1624,T4=G4+(U1<<3)|0,x4=+o1[T4>>3],F5=i5(W1,V5)|0,R=F5,y3=m,m=m+((1*R|0)+15&-16)|0,e[t2>>2]=y3,w=F5,h3=m,m=m+((1*w|0)+15&-16)|0,e[C2>>2]=h3,y=F5,m3=m,m=m+((1*y|0)+15&-16)|0,e[P2>>2]=m3,D=F5,M3=m,m=m+((1*D|0)+15&-16)|0,e[k2>>2]=M3,Z5=(C|0)>1,Z5&&(Q3=y3+(V5<<2)|0,j5=t2+4|0,e[j5>>2]=Q3,j3=h3+(V5<<2)|0,_3=C2+4|0,e[_3>>2]=j3,T3=m3+(V5<<2)|0,a3=P2+4|0,e[a3>>2]=T3,$3=M3+(V5<<2)|0,l3=k2+4|0,e[l3>>2]=$3,g9=(C|0)==2,!g9))for(y5=2;M=e[t2>>2]|0,N=e[C2>>2]|0,P=e[P2>>2]|0,z=e[k2>>2]|0,P5=i5(y5,V5)|0,G3=M+(P5<<2)|0,L5=t2+(y5<<2)|0,e[L5>>2]=G3,t6=N+(P5<<2)|0,t3=C2+(y5<<2)|0,e[t3>>2]=t6,o3=P+(P5<<2)|0,R3=P2+(y5<<2)|0,e[R3>>2]=o3,B3=z+(P5<<2)|0,w3=k2+(y5<<2)|0,e[w3>>2]=B3,p3=y5+1|0,W6=(p3|0)==(C|0),!W6;)y5=p3;if(q5=e[c2>>2]|0,N5=(n0|0)>0,N5)for(X3=e[k2>>2]|0,V3=(C|0)>0,N3=n0^-1,z5=V5^-1,M6=0,u9=N3;;){if(U3=(u9|0)>(z5|0),W4=U3?u9:z5,u3=W4^-1,w6=n0-M6|0,k6=(V5|0)>(w6|0),p=k6?w6:V5,r4(D5|0,E|0,W1|0)|0,se(X3|0,0,F5|0)|0,V3)for(v6=(p|0)>0,B6=r0-M6|0,t9=0;;){if(v3=f+(t9<<2)|0,Z3=e[v3>>2]|0,W3=Z3+(M6<<2)|0,u6=D5+(t9<<2)|0,O3=e[u6>>2]|0,S3=(O3|0)==0,S3){if(v6)for(S6=P2+(t9<<2)|0,i6=e[S6>>2]|0,P6=t2+(t9<<2)|0,A3=e[P6>>2]|0,r6=C2+(t9<<2)|0,I6=e[r6>>2]|0,D3=k2+(t9<<2)|0,T6=e[D3>>2]|0,I9=0;L0=i6+(I9<<2)|0,s[L0>>2]=1000000013351432e-25,Y0=A3+(I9<<2)|0,s[Y0>>2]=0,H0=I6+(I9<<2)|0,s[H0>>2]=0,N0=T6+(I9<<2)|0,e[N0>>2]=0,U=I9+M6|0,V0=Z3+(U<<2)|0,e[V0>>2]=0,U0=I9+1|0,L6=(U0|0)==(u3|0),!L6;)I9=U0}else{if(P3=P2+(t9<<2)|0,Y3=e[P3>>2]|0,v6){for(V9=0;o0=V9+M6|0,e6=Z3+(o0<<2)|0,Q6=e[e6>>2]|0,R6=1768+(Q6<<2)|0,K6=e[R6>>2]|0,J6=Y3+(V9<<2)|0,e[J6>>2]=K6,x3=V9+1|0,y6=(x3|0)==(u3|0),!y6;)V9=x3;if(Z6=c+(t9<<2)|0,G6=e[Z6>>2]|0,j6=k2+(t9<<2)|0,r9=e[j6>>2]|0,v6){for(G9=0;x6=(G9|0)>=(B6|0),A0=x6?x4:l1,N6=A0,Z=G9+M6|0,D6=G6+(Z<<2)|0,V6=+s[D6>>2],f9=+Ji(+V6),K=Y3+(G9<<2)|0,c0=+s[K>>2],s0=f9/c0,l0=r9+(G9<<2)|0,p9=!(s0>2]=B,j=G9+1|0,F6=(j|0)==(p|0),!F6;)G9=j;if(v6)for($0=t2+(t9<<2)|0,g0=e[$0>>2]|0,f0=C2+(t9<<2)|0,Q0=e[f0>>2]|0,v9=0;;)if(d0=v9+M6|0,h0=G6+(d0<<2)|0,E0=+s[h0>>2],C0=E0*E0,u0=g0+(v9<<2)|0,s[u0>>2]=C0,k0=Q0+(v9<<2)|0,s[k0>>2]=C0,J0=+s[h0>>2],D0=J0<0,D0&&(B0=+s[u0>>2],x0=-B0,s[u0>>2]=x0),F0=Y3+(v9<<2)|0,G0=+s[F0>>2],p0=G0*G0,s[F0>>2]=p0,P0=v9+1|0,F3=(P0|0)==(u3|0),F3){T=f0,S0=g0;break}else v9=P0;else N9=21}else N9=21}else N9=21;(N9|0)==21&&(N9=0,L=t2+(t9<<2)|0,Y=e[L>>2]|0,H=C2+(t9<<2)|0,T=H,S0=Y),R0=e[T>>2]|0,S4=e[i0>>2]|0,+gQ(S4,r0,S0,R0,Y3,0,M6,p,W3)}if(r1=t9+1|0,X6=(r1|0)==(C|0),X6)break;t9=r1}if(z3=e[c2>>2]|0,a6=(z3|0)>0,a6)for(p6=(p|0)>0,_6=I-M6|0,Y6=r0-M6|0,E3=z3,C4=0;;){if(O0=(a+1160|0)+(C4<<2)|0,e1=e[O0>>2]|0,v0=(a+2184|0)+(C4<<2)|0,i1=e[v0>>2]|0,c1=f+(e1<<2)|0,$1=e[c1>>2]|0,f1=$1+(M6<<2)|0,g1=f+(i1<<2)|0,s1=e[g1>>2]|0,a1=t2+(e1<<2)|0,n1=e[a1>>2]|0,A1=t2+(i1<<2)|0,z0=e[A1>>2]|0,I1=C2+(e1<<2)|0,h1=e[I1>>2]|0,E1=C2+(i1<<2)|0,u1=e[E1>>2]|0,d1=P2+(e1<<2)|0,p1=e[d1>>2]|0,Q1=P2+(i1<<2)|0,D1=e[Q1>>2]|0,_1=k2+(e1<<2)|0,y1=e[_1>>2]|0,k1=k2+(i1<<2)|0,x1=e[k1>>2]|0,L1=D5+(e1<<2)|0,N1=e[L1>>2]|0,w1=(N1|0)==0,Z1=D5+(i1<<2)|0,w1?(G1=e[Z1>>2]|0,v1=(G1|0)==0,v1?Z2=E3:N9=31):N9=31,(N9|0)==31){if(N9=0,e[Z1>>2]=1,e[L1>>2]=1,p6)for(H6=0;;){K1=(H6|0)<(_6|0);do if(K1){if(P1=y1+(H6<<2)|0,H1=e[P1>>2]|0,q1=(H1|0)==0,Y1=x1+(H6<<2)|0,q1&&(j1=e[Y1>>2]|0,r2=(j1|0)==0,r2)){X2=(H6|0)<(Y6|0);do if(X2)v5=z0+(H6<<2)|0,z2=+s[v5>>2],f5=n1+(H6<<2)|0,w5=+s[f5>>2],O5=w5+z2,s[f5>>2]=O5,o9=+Ji(+O5),$5=h1+(H6<<2)|0,s[$5>>2]=o9,G=v5;else if(E5=n1+(H6<<2)|0,r5=+s[E5>>2],x2=z0+(H6<<2)|0,R2=+s[x2>>2],m2=R2+r5,C5=m2<0,h9=+Ji(+r5),A9=+Ji(+R2),x5=A9+h9,u5=h1+(H6<<2)|0,s[u5>>2]=x5,C5){S5=-x5,s[E5>>2]=S5,G=x2;break}else{s[E5>>2]=x5,G=x2;break}while(!1);G5=u1+(H6<<2)|0,s[G5>>2]=0,s[G>>2]=0,e[Y1>>2]=1,X=H6+M6|0,H2=s1+(X<<2)|0,e[H2>>2]=0;break}O1=n1+(H6<<2)|0,l2=+s[O1>>2],M9=+Ji(+l2),z1=z0+(H6<<2)|0,h2=+s[z1>>2],E6=+Ji(+h2),s2=E6+M9,s[O1>>2]=s2,d2=h1+(H6<<2)|0,A2=+s[d2>>2],V1=u1+(H6<<2)|0,g2=+s[V1>>2],a2=g2+A2,s[d2>>2]=a2,e[Y1>>2]=1,e[P1>>2]=1,V=H6+M6|0,$2=$1+(V<<2)|0,i2=e[$2>>2]|0,o2=s1+(V<<2)|0,X1=e[o2>>2]|0,d4=(i2|0)>-1,E4=0-i2|0,n2=d4?i2:E4,n4=(X1|0)>-1,s4=0-X1|0,f2=n4?X1:s4,e2=(n2|0)>(f2|0),e2?(y2=(i2|0)>0,S2=i2-X1|0,w2=X1-i2|0,M2=y2?S2:w2,e[o2>>2]=M2,J=e[$2>>2]|0,N2=J,O2=M2):(_2=(X1|0)>0,G2=i2-X1|0,u2=X1-i2|0,K2=_2?G2:u2,e[o2>>2]=K2,e[$2>>2]=X1,t0=e[o2>>2]|0,N2=X1,O2=t0),c4=(N2|0)>-1,v4=0-N2|0,q2=c4?N2:v4,T2=q2<<1,V2=(O2|0)<(T2|0),V2||(T1=0-O2|0,e[o2>>2]=T1,j2=e[$2>>2]|0,R5=0-j2|0,e[$2>>2]=R5)}while(!1);if(I5=p1+(H6<<2)|0,A5=+s[I5>>2],l5=D1+(H6<<2)|0,m5=+s[l5>>2],M1=m5+A5,s[l5>>2]=M1,s[I5>>2]=M1,k5=H6+1|0,s9=(k5|0)==(u3|0),s9)break;H6=k5}D4=e[i0>>2]|0,+gQ(D4,r0,n1,h1,p1,y1,M6,p,f1),W=e[c2>>2]|0,Z2=W}if(c5=C4+1|0,o5=(c5|0)<(Z2|0),o5)E3=Z2,C4=c5;else{s3=Z2;break}}else s3=z3;if(B5=M6+V5|0,e5=(n0|0)>(B5|0),T9=u9+V5|0,e5)M6=B5,u9=T9;else{k3=s3;break}}else k3=q5;if(c3=(k3|0)>0,c3)e3=k3,e9=0;else{m=N4;return}for(;n5=(a+1160|0)+(e9<<2)|0,g5=e[n5>>2]|0,Y2=E+(g5<<2)|0,h5=e[Y2>>2]|0,t5=(h5|0)==0,b5=(a+2184|0)+(e9<<2)|0,t5?(W2=e[b5>>2]|0,a5=E+(W2<<2)|0,p5=e[a5>>2]|0,H5=(p5|0)==0,H5?K5=e3:N9=52):N9=52,(N9|0)==52&&(N9=0,e[Y2>>2]=1,X5=e[b5>>2]|0,d5=E+(X5<<2)|0,e[d5>>2]=1,e0=e[c2>>2]|0,K5=e0),f3=e9+1|0,g3=(f3|0)<(K5|0),g3;)e3=K5,e9=f3;m=N4}function wS(t,n,o,a,c){t=t|0,n=+n,o=o|0,a=+a,c=+c;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,B6=0,z3=0,a6=0,p6=0,_6=0,Y6=0,m6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,A3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,s4=0,p9=0,S4=0,D4=0,x4=0,T4=0,W4=0,C4=0,G4=0,N9=0,N4=0,A4=0,F4=0,g4=0,ue=0,P9=0,d9=0,Ie=0,Le=0,ze=0,U4=0,Me=0,O4=0,j4=0,we=0,Ze=0,z9=0,Ae=0,h4=0,b6=0,P4=0,R9=0,o4=0,b4=0,oe=0,Z9=0,ae=0,$e=0,m4=0,X4=0,L4=0,le=0,E9=0,$6=0,Te=0,a4=0,de=0,B4=0,$4=0,U6=0,ke=0,ve=0,We=0,l4=0,w4=0,g8=0,H3=0,Q9=0,C9=0,M4=0,ee=0,a7=0,Se=0,$7=0,Q7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,y7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ge=0,De=0,je=0,k8=0,y9=0,g7=0,Ee=0,h7=0,w7=0,j8=0,k7=0,te=0,X8=0,P8=0,v8=0,Xe=0,H4=0,be=0,e8=0,u8=0,S8=0,ce=0,W9=0,t8=0,I8=0,i8=0,d8=0,ge=0,Ce=0,Ne=0,Ue=0,j9=0,_e=0,he=0,r8=0,me=0,p4=0,E8=0,e7=0,q4=0,I3=0,Oe=0,C8=0,ie=0,H9=0,re=0,S9=0,Pe=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,s8=0,D8=0,Y4=0,n7=0,b8=0,He=0,m9=0,s7=0,qe=0;for(qe=m,m=m+32480|0,H3=qe+32256|0,m9=qe+1792|0,Q9=qe,R=o<<2,S=R,L=m,m=m+((1*S|0)+15&-16)|0,i2=k9(68)|0,se(m9|0,0,30464)|0,k3=a>0,n4=a<0,y9=0;;){for(oe=y9<<2,te=0;r5=te+oe|0,I5=(r5|0)<88,I5?(e5=1272+(r5<<2)|0,H5=+s[e5>>2],H9=H5):H9=-30,y3=r5+1|0,a3=(y3|0)<88,a3?(x6=1272+(y3<<2)|0,N6=+s[x6>>2],V6=H9>N6,V6?re=N6:re=H9):(r9=H9>-30,r9?re=-30:re=H9),y6=r5+2|0,F6=(y6|0)<88,F6?(L6=1272+(y6<<2)|0,X6=+s[L6>>2],s9=re>X6,s9?S9=X6:S9=re):(F3=re>-30,F3?S9=-30:S9=re),W6=r5+3|0,g9=(W6|0)<88,g9?(A9=1272+(W6<<2)|0,o9=+s[A9>>2],M9=S9>o9,M9?Pe=o9:Pe=S9):(h9=S9>-30,h9?Pe=-30:Pe=S9),E6=H3+(te<<2)|0,s[E6>>2]=Pe,M6=te+1|0,L8=(M6|0)==56,!L8;)te=M6;if(a4=(m9+(y9*1792|0)|0)+448|0,M=2792+(y9*1344|0)|0,r4(a4|0,M|0,224)|0,H=(m9+(y9*1792|0)|0)+672|0,c0=(2792+(y9*1344|0)|0)+224|0,r4(H|0,c0|0,224)|0,E0=(m9+(y9*1792|0)|0)+896|0,p0=(2792+(y9*1344|0)|0)+448|0,r4(E0|0,p0|0,224)|0,r1=(m9+(y9*1792|0)|0)+1120|0,a1=(2792+(y9*1344|0)|0)+672|0,r4(r1|0,a1|0,224)|0,Q1=(m9+(y9*1792|0)|0)+1344|0,G1=(2792+(y9*1344|0)|0)+896|0,r4(Q1|0,G1|0,224)|0,l2=(m9+(y9*1792|0)|0)+1568|0,o2=(2792+(y9*1344|0)|0)+1120|0,r4(l2|0,o2|0,224)|0,G2=m9+(y9*1792|0)|0,r4(G2|0,M|0,224)|0,j2=(m9+(y9*1792|0)|0)+224|0,r4(j2|0,M|0,224)|0,k3)for(Xe=0;;){if(n4)for(I8=0;c4=16-I8|0,w7=(c4|0)>-1,i7=0-c4|0,G9=w7?c4:i7,V9=+(G9|0),v9=V9*c,I9=v9+a,H6=I9<0,I=H6?0:I9,t9=I>0,f=t9?0:I,E4=((m9+(y9*1792|0)|0)+(Xe*224|0)|0)+(I8<<2)|0,v4=+s[E4>>2],s4=v4+f,s[E4>>2]=s4,S4=I8+1|0,N8=(S4|0)==56,!N8;)I8=S4;else for(i8=0;c3=16-i8|0,j8=(c3|0)>-1,q8=0-c3|0,_6=j8?c3:q8,S6=+(_6|0),R6=S6*c,D6=R6+a,f9=D6<0,C=f9?0:D6,e9=((m9+(y9*1792|0)|0)+(Xe*224|0)|0)+(i8<<2)|0,T9=+s[e9>>2],u9=T9+C,s[e9>>2]=u9,d4=i8+1|0,G8=(d4|0)==56,!G8;)i8=d4;if(t3=Xe+1|0,y8=(t3|0)==8,y8)break;Xe=t3}else for(v8=0;;){if(n4)for(d8=0;W4=16-d8|0,k7=(W4|0)>-1,r7=0-W4|0,C4=k7?W4:r7,G4=+(C4|0),N9=G4*c,N4=N9+a,A4=N4>0,E=A4?0:N4,g4=((m9+(y9*1792|0)|0)+(v8*224|0)|0)+(d8<<2)|0,ue=+s[g4>>2],P9=ue+E,s[g4>>2]=P9,d9=d8+1|0,V8=(d9|0)==56,!V8;)d8=d9;else for(t8=0;Ie=16-t8|0,h7=(Ie|0)>-1,t7=0-Ie|0,Le=h7?Ie:t7,ze=+(Le|0),U4=ze*c,Me=U4+a,O4=((m9+(y9*1792|0)|0)+(v8*224|0)|0)+(t8<<2)|0,we=+s[O4>>2],Ze=we+Me,s[O4>>2]=Ze,z9=t8+1|0,M8=(z9|0)==56,!M8;)t8=z9;if(Ae=v8+1|0,z8=(Ae|0)==8,z8)break;v8=Ae}for(D4=t+(y9<<2)|0,x4=+s[D4>>2],T4=x4,H4=0;;){for(h4=(H4|0)<2,b6=+(H4|0),w=b6*10,y=70-w,P4=h4?50:y,R9=P4+T4,o4=R9,f8=0;b4=((m9+(y9*1792|0)|0)+(H4*224|0)|0)+(f8<<2)|0,Z9=+s[b4>>2],ae=Z9+o4,s[b4>>2]=ae,$e=f8+1|0,M4=($e|0)==56,!M4;)f8=$e;for(m4=Q9+(H4*224|0)|0,r4(m4|0,H3|0,224)|0,X4=+(H4|0),L4=X4*10,le=70-L4,k8=0;;)if(E9=(Q9+(H4*224|0)|0)+(k8<<2)|0,$6=+s[E9>>2],Te=le+$6,s[E9>>2]=Te,de=k8+1|0,$7=(de|0)==56,$7){je=0;break}else k8=de;for(;B4=((m9+(y9*1792|0)|0)+(H4*224|0)|0)+(je<<2)|0,$4=+s[B4>>2],U6=(Q9+(H4*224|0)|0)+(je<<2)|0,ke=+s[U6>>2],ve=$4>ke,ve&&(s[U6>>2]=$4),We=je+1|0,Se=(We|0)==56,!Se;)je=We;if(l4=H4+1|0,y7=(l4|0)==8,y7){be=1;break}else H4=l4}for(;;){for(w4=be+-1|0,De=0;;)if(g8=(Q9+(w4*224|0)|0)+(De<<2)|0,T=+s[g8>>2],G=(Q9+(be*224|0)|0)+(De<<2)|0,N=+s[G>>2],P=T>2]=T),z=De+1|0,a7=(z|0)==56,a7){Ge=0;break}else De=z;for(;Y=(Q9+(be*224|0)|0)+(Ge<<2)|0,t0=+s[Y>>2],J=((m9+(y9*1792|0)|0)+(be*224|0)|0)+(Ge<<2)|0,W=+s[J>>2],e0=t0>2]=t0),X=Ge+1|0,ee=(X|0)==56,!ee;)Ge=X;if(U=be+1|0,T8=(U|0)==8,T8)break;be=U}if(o0=y9+1|0,w8=(o0|0)==17,w8)break;y9=o0}for(p9=n,F4=(o|0)>0,j4=o^-1,Ee=0;;){for(Z=k9(32)|0,V=i2+(Ee<<2)|0,e[V>>2]=Z,A0=+(Ee|0),n0=A0*.5,i0=A0*.34657350182533264,r0=i0+4.135165354540845,K=+Ln(+r0),s0=K/p9,l0=+Yo(+s0),j=~~l0,$0=+(j|0),g0=$0*n,f0=g0+1,Q0=f0,d0=+Ur(+Q0),y0=d0*2.885390043258667,h0=y0+-11.931568145751953,C0=+jm(+h0),u0=~~C0,k0=j+1|0,J0=+(k0|0),D0=J0*n,B0=D0,x0=+Ur(+B0),F0=x0*2.885390043258667,M0=F0+-11.931568145751953,G0=+Yo(+M0),P0=~~G0,R0=(u0|0)>(Ee|0),g7=R0?Ee:u0,S0=(g7|0)<0,C8=S0?0:g7,L0=(P0|0)>16,p=L0?16:P0,Y0=(C8|0)>(p|0),H0=Ee+1|0,N0=(H0|0)<17,V0=n0+3.9657840728759766,ie=0;;){if(T0=k9(232)|0,U0=Z+(ie<<2)|0,e[U0>>2]=T0,F4)for(e8=0;O0=L+(e8<<2)|0,s[O0>>2]=999,e1=e8+1|0,C9=(e1|0)==(o|0),!C9;)e8=e1;if(!Y0)for(ge=C8;;){for(v0=+(ge|0),i1=v0*.5,u8=0,Ce=0;;){if(g1=+(u8|0),l1=g1*.125,s1=l1+i1,n1=s1+3.9032840728759766,A1=n1*.6931470036506653,z0=+Ln(+A1),I1=z0/p9,h1=~~I1,E1=s1+4.028284072875977,u1=E1*.6931470036506653,d1=+Ln(+u1),B1=d1/p9,p1=B1+1,D1=~~p1,_1=(h1|0)<0,B=_1?0:h1,y1=(B|0)>(o|0),e7=y1?o:B,k1=(e7|0)<(Ce|0),q4=k1?e7:Ce,x1=(D1|0)<0,Z8=x1?0:D1,L1=(Z8|0)>(o|0),H8=L1?o:Z8,N1=(q4|0)<(H8|0),w1=(q4|0)<(o|0),Y8=N1&w1,Y8)for(U1=((m9+(ge*1792|0)|0)+(ie*224|0)|0)+(u8<<2)|0,Z1=+s[U1>>2],v1=(Ce|0)<(o|0),K1=v1?Ce:o,P1=K1^-1,H1=(h1|0)>0,_=h1^-1,q1=H1?_:-1,Y1=(q1|0)<(P1|0),Y4=Y1?P1:q1,j1=Y4^-1,r2=(D1|0)>0,F=D1^-1,W1=r2?F:-1,O1=(W1|0)<(j4|0),n7=O1?j4:W1,z1=n7-Y4|0,h2=Y4+o|0,s2=h2^-1,d2=z1>>>0>s2>>>0,b8=d2?z1:s2,A2=j1-b8|0,j9=q4;;)if(V1=L+(j9<<2)|0,g2=+s[V1>>2],a2=g2>Z1,a2&&(s[V1>>2]=Z1),t2=j9+1|0,h8=(t2|0)==(A2|0),h8){Ne=A2;break}else j9=t2;else Ne=q4;if($2=u8+1|0,U8=($2|0)==56,U8){Ue=Ne;break}else u8=$2,Ce=Ne}if(c1=(Ue|0)<(o|0),c1)for($1=((m9+(ge*1792|0)|0)+(ie*224|0)|0)+220|0,f1=+s[$1>>2],_e=Ue;X1=L+(_e<<2)|0,n2=+s[X1>>2],f2=n2>f1,f2&&(s[X1>>2]=f1),e2=_e+1|0,O8=(e2|0)==(o|0),!O8;)_e=e2;if(y2=ge+1|0,S2=(ge|0)<(p|0),S2)ge=y2;else break}if(N0){for(S8=0,he=0;;){if(N2=+(S8|0),q2=N2*.125,T2=q2+n0,O2=T2+3.9032840728759766,V2=O2*.6931470036506653,s5=+Ln(+V2),P2=s5/p9,T1=~~P2,R5=T2+4.028284072875977,X2=R5*.6931470036506653,v5=+Ln(+X2),z2=v5/p9,f5=z2+1,w5=~~f5,O5=(T1|0)<0,v=O5?0:T1,$5=(v|0)>(o|0),I3=$5?o:v,k2=(I3|0)<(he|0),Oe=k2?I3:he,E5=(w5|0)<0,W8=E5?0:w5,x2=(W8|0)>(o|0),f7=x2?o:W8,R2=(Oe|0)<(f7|0),m2=(Oe|0)<(o|0),n8=R2&m2,n8)for(C5=((m9+(H0*1792|0)|0)+(ie*224|0)|0)+(S8<<2)|0,x5=+s[C5>>2],u5=(he|0)<(o|0),S5=u5?he:o,G5=S5^-1,D5=(T1|0)>0,D=T1^-1,H2=D5?D:-1,A5=(H2|0)<(G5|0),s8=A5?G5:H2,l5=s8^-1,m5=(w5|0)>0,Q=w5^-1,M1=m5?Q:-1,k5=(M1|0)<(j4|0),D8=k5?j4:M1,c5=D8-s8|0,o5=s8+o|0,Z2=o5^-1,c2=c5>>>0>Z2>>>0,He=c2?c5:Z2,B5=l5-He|0,p4=Oe;;)if(n5=L+(p4<<2)|0,g5=+s[n5>>2],Y2=g5>x5,Y2&&(s[n5>>2]=x5),h5=p4+1|0,Q7=(h5|0)==(B5|0),Q7){r8=B5;break}else p4=h5;else r8=Oe;if(t5=S8+1|0,K8=(t5|0)==56,K8){me=r8;break}else S8=t5,he=r8}if(_2=(me|0)<(o|0),_2)for(u2=((m9+(H0*1792|0)|0)+(ie*224|0)|0)+220|0,K2=+s[u2>>2],E8=me;b5=L+(E8<<2)|0,W2=+s[b5>>2],a5=W2>K2,a5&&(s[b5>>2]=K2),F2=E8+1|0,l7=(F2|0)==(o|0),!l7;)E8=F2}for(w2=Z+(ie<<2)|0,C2=Z+(ie<<2)|0,M2=Z+(ie<<2)|0,ce=0;;){f3=+(ce|0),g3=f3*.125,K5=V0+g3,e3=K5*.6931470036506653,s3=+Ln(+e3),E3=s3/p9,F5=~~E3,V5=(F5|0)<0;do if(V5)h3=ce+2|0,m3=e[w2>>2]|0,q3=m3+(h3<<2)|0,s[q3>>2]=-999;else if(M3=(F5|0)<(o|0),M3){j3=L+(F5<<2)|0,_3=e[j3>>2]|0,T3=ce+2|0,$3=e[C2>>2]|0,l3=$3+(T3<<2)|0,e[l3>>2]=_3;break}else{Z5=ce+2|0,Q3=e[M2>>2]|0,j5=Q3+(Z5<<2)|0,s[j5>>2]=-999;break}while(!1);if(C3=ce+1|0,c7=(C3|0)==56,c7)break;ce=C3}p5=T0+8|0,X5=+s[p5>>2],d5=X5>-200;do if(d5)W9=0;else if(q5=T0+12|0,N5=+s[q5>>2],P5=N5>-200,P5)W9=1;else if(p3=T0+16|0,X3=+s[p3>>2],V3=X3>-200,V3)W9=2;else if(N3=T0+20|0,z5=+s[N3>>2],U3=z5>-200,U3)W9=3;else if(o6=T0+24|0,u3=+s[o6>>2],w6=u3>-200,w6)W9=4;else if(k6=T0+28|0,v6=+s[k6>>2],B6=v6>-200,B6)W9=5;else if(z3=T0+32|0,a6=+s[z3>>2],p6=a6>-200,p6)W9=6;else if(Y6=T0+36|0,m6=+s[Y6>>2],v3=m6>-200,v3)W9=7;else if(Z3=T0+40|0,W3=+s[Z3>>2],u6=W3>-200,u6)W9=8;else if(O3=T0+44|0,S3=+s[O3>>2],P3=S3>-200,P3)W9=9;else if(Y3=T0+48|0,i6=+s[Y3>>2],i3=i6>-200,i3)W9=10;else if(P6=T0+52|0,A3=+s[P6>>2],r6=A3>-200,r6)W9=11;else if(I6=T0+56|0,D3=+s[I6>>2],T6=D3>-200,T6)W9=12;else if(e6=T0+60|0,Q6=+s[e6>>2],K6=Q6>-200,K6)W9=13;else{if(d6=T0+64|0,J6=+s[d6>>2],x3=J6>-200,x3){W9=14;break}if(Z6=T0+68|0,G6=+s[Z6>>2],j6=G6>-200,j6){W9=15;break}W9=16}while(!1);for(s[T0>>2]=W9,P8=55;;){if(y5=P8+2|0,G3=T0+(y5<<2)|0,L5=+s[G3>>2],t6=L5>-200,t6){X8=P8;break}if(o3=P8+-1|0,R3=(o3|0)>17,R3)P8=o3;else{X8=o3;break}}if(f6=+(X8|0),B3=T0+4|0,s[B3>>2]=f6,w3=ie+1|0,x8=(w3|0)==8,x8)break;ie=w3}if(F8=(H0|0)==17,F8)break;Ee=H0}return m=qe,i2|0}function cQ(t,n,o,a,c,f){t=t|0,n=n|0,o=o|0,a=a|0,c=+c,f=f|0;var E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,B6=0,z3=0,a6=0,p6=0,_6=0,Y6=0,m6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,A3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,s4=0,p9=0,S4=0,D4=0;if(D4=m,w=t<<2,E=w,y=m,m=m+((1*E|0)+15&-16)|0,I=w,A2=m,m=m+((1*I|0)+15&-16)|0,C=w,W2=m,m=m+((1*C|0)+15&-16)|0,p=w,s3=m,m=m+((1*p|0)+15&-16)|0,B=w,j5=m,m=m+((1*B|0)+15&-16)|0,y5=+s[o>>2],X3=y5+c,v6=X3<1,s4=v6?1:X3,u6=s4*s4,D=u6*.5,z=D*s4,s[y>>2]=D,s[A2>>2]=D,s[W2>>2]=0,s[s3>>2]=z,s[j5>>2]=0,V=(t|0)>1,V)for(F3=1,E6=D,M6=D,e9=0,T9=0,u9=z,d4=1;c1=o+(F3<<2)|0,h1=+s[c1>>2],x1=h1+c,q1=x1<1,p9=q1?1:x1,V1=p9*p9,y2=V1+E6,T2=V1*d4,f5=T2+M6,x5=T2*d4,k5=x5+e9,Y2=V1*p9,h5=Y2+u9,t5=T2*p9,b5=t5+T9,a5=y+(F3<<2)|0,s[a5>>2]=y2,F2=A2+(F3<<2)|0,s[F2>>2]=f5,p5=W2+(F3<<2)|0,s[p5>>2]=k5,H5=s3+(F3<<2)|0,s[H5>>2]=h5,X5=j5+(F3<<2)|0,s[X5>>2]=b5,d5=F3+1|0,f3=d4+1,F6=(d5|0)==(t|0),!F6;)F3=d5,E6=y2,M6=f5,e9=k5,T9=b5,u9=h5,d4=f3;if(g0=e[n>>2]|0,D0=g0>>16,Y0=(D0|0)>-1,Y0)K5=g0,I6=0,Q6=0,J6=1,L6=0,n4=0;else for(F5=g0,m3=D0,X6=0,c4=0;;)if(E3=F5&65535,V5=y+(E3<<2)|0,y3=+s[V5>>2],h3=0-m3|0,q3=y+(h3<<2)|0,M3=+s[q3>>2],Z5=M3+y3,Q3=A2+(E3<<2)|0,j3=+s[Q3>>2],_3=A2+(h3<<2)|0,T3=+s[_3>>2],a3=j3-T3,$3=W2+(E3<<2)|0,l3=+s[$3>>2],C3=W2+(h3<<2)|0,q5=+s[C3>>2],N5=q5+l3,P5=s3+(E3<<2)|0,G3=+s[P5>>2],L5=s3+(h3<<2)|0,t6=+s[L5>>2],t3=t6+G3,o3=j5+(E3<<2)|0,R3=+s[o3>>2],f6=j5+(h3<<2)|0,B3=+s[f6>>2],w3=R3-B3,p3=t3*N5,V3=w3*a3,N3=p3-V3,z5=w3*Z5,k3=t3*a3,c3=z5-k3,U3=N5*Z5,o6=a3*a3,u3=U3-o6,w6=c3*c4,k6=w6+N3,B6=k6/u3,z3=B6<0,j6=z3?0:B6,a6=j6-c,p6=a+(X6<<2)|0,s[p6>>2]=a6,_6=X6+1|0,Y6=c4+1,m6=n+(_6<<2)|0,v3=e[m6>>2]|0,Z3=v3>>16,W3=(Z3|0)>-1,W3){K5=v3,I6=N3,Q6=c3,J6=u3,L6=_6,n4=Y6;break}else F5=v3,m3=Z3,X6=_6,c4=Y6;if(g3=K5&65535,e3=(g3|0)<(t|0),e3)for(v=K5,Y3=g3,W6=L6,V9=n4;;)if(S3=v>>16,P3=y+(Y3<<2)|0,S6=+s[P3>>2],i6=y+(S3<<2)|0,i3=+s[i6>>2],P6=S6-i3,A3=A2+(Y3<<2)|0,r6=+s[A3>>2],Q=A2+(S3<<2)|0,_=+s[Q>>2],F=r6-_,R=W2+(Y3<<2)|0,L=+s[R>>2],M=W2+(S3<<2)|0,T=+s[M>>2],G=L-T,N=s3+(Y3<<2)|0,P=+s[N>>2],Y=s3+(S3<<2)|0,t0=+s[Y>>2],J=P-t0,W=j5+(Y3<<2)|0,e0=+s[W>>2],H=j5+(S3<<2)|0,X=+s[H>>2],U=e0-X,o0=J*G,Z=U*F,A0=o0-Z,n0=U*P6,i0=J*F,r0=n0-i0,K=G*P6,c0=F*F,s0=K-c0,l0=r0*V9,j=l0+A0,$0=j/s0,f0=$0<0,r9=f0?0:$0,Q0=r9-c,d0=a+(W6<<2)|0,s[d0>>2]=Q0,y0=W6+1|0,h0=V9+1,E0=n+(y0<<2)|0,C0=e[E0>>2]|0,u0=C0&65535,k0=(u0|0)<(t|0),k0)v=C0,Y3=u0,W6=y0,V9=h0;else{D3=A0,R6=r0,x3=s0,s9=y0,G9=h0;break}else D3=I6,R6=Q6,x3=J6,s9=L6,G9=n4;if(O3=(s9|0)<(t|0),O3)for(g9=s9,v9=G9;J0=v9*R6,B0=J0+D3,x0=B0/x3,F0=x0<0,x6=F0?0:x0,M0=x6-c,G0=a+(g9<<2)|0,s[G0>>2]=M0,p0=g9+1|0,P0=v9+1,y6=(p0|0)==(t|0),!y6;)g9=p0,v9=P0;if(R0=(f|0)<1,R0){m=D4;return}if(S0=(f|0)/2&-1,L0=S0-f|0,H0=(L0|0)>-1,H0)T6=D3,K6=R6,Z6=x3,h9=0,I9=0;else for(N0=f-S0|0,O0=S0,i1=L0,f9=0,H6=0;;)if(r1=y+(O0<<2)|0,e1=+s[r1>>2],v0=0-i1|0,$1=y+(v0<<2)|0,f1=+s[$1>>2],g1=f1+e1,l1=A2+(O0<<2)|0,s1=+s[l1>>2],a1=A2+(v0<<2)|0,n1=+s[a1>>2],A1=s1-n1,z0=W2+(O0<<2)|0,I1=+s[z0>>2],E1=W2+(v0<<2)|0,u1=+s[E1>>2],d1=u1+I1,B1=s3+(O0<<2)|0,p1=+s[B1>>2],Q1=s3+(v0<<2)|0,D1=+s[Q1>>2],_1=D1+p1,y1=j5+(O0<<2)|0,k1=+s[y1>>2],L1=j5+(v0<<2)|0,N1=+s[L1>>2],w1=k1-N1,U1=_1*d1,Z1=w1*A1,G1=U1-Z1,v1=w1*g1,K1=_1*A1,P1=v1-K1,H1=d1*g1,Y1=A1*A1,j1=H1-Y1,r2=P1*H6,W1=r2+G1,O1=W1/j1,l2=O1-c,z1=a+(f9<<2)|0,h2=+s[z1>>2],s2=l2>2]=l2),d2=f9+1|0,g2=H6+1,a2=S0+d2|0,t2=a2-f|0,V6=(d2|0)==(N0|0),V6){T6=G1,K6=P1,Z6=j1,h9=N0,I9=g2;break}else O0=a2,i1=t2,f9=d2,H6=g2;if(V0=h9+S0|0,T0=(V0|0)<(t|0),T0)for(U0=t-S0|0,S=V0,o9=h9,E4=I9;;)if(i2=S-f|0,o2=y+(S<<2)|0,X1=+s[o2>>2],n2=y+(i2<<2)|0,f2=+s[n2>>2],e2=X1-f2,S2=A2+(S<<2)|0,w2=+s[S2>>2],C2=A2+(i2<<2)|0,M2=+s[C2>>2],_2=w2-M2,G2=W2+(S<<2)|0,u2=+s[G2>>2],K2=W2+(i2<<2)|0,N2=+s[K2>>2],q2=u2-N2,O2=s3+(S<<2)|0,V2=+s[O2>>2],s5=s3+(i2<<2)|0,P2=+s[s5>>2],T1=V2-P2,j2=j5+(S<<2)|0,R5=+s[j2>>2],X2=j5+(i2<<2)|0,v5=+s[X2>>2],z2=R5-v5,w5=T1*q2,O5=z2*_2,$5=w5-O5,k2=z2*e2,E5=T1*_2,r5=k2-E5,x2=q2*e2,R2=_2*_2,m2=x2-R2,C5=r5*E4,u5=C5+$5,S5=u5/m2,G5=S5-c,D5=a+(o9<<2)|0,H2=+s[D5>>2],I5=G5>2]=G5),A5=o9+1|0,l5=E4+1,m5=A5+S0|0,D6=(A5|0)==(U0|0),D6){e6=$5,d6=r5,G6=m2,A9=U0,t9=l5;break}else S=m5,o9=A5,E4=l5;else e6=T6,d6=K6,G6=Z6,A9=h9,t9=I9;if($2=(A9|0)<(t|0),$2)M9=A9,v4=t9;else{m=D4;return}for(;M1=v4*d6,c5=M1+e6,o5=c5/G6,Z2=o5-c,c2=a+(M9<<2)|0,B5=+s[c2>>2],e5=Z2>2]=Z2),n5=M9+1|0,g5=v4+1,N6=(n5|0)==(t|0),!N6;)M9=n5,v4=g5;m=D4}function kS(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0;if(c1=m,f=o<<2,a=f,E=m,m=m+((1*a|0)+15&-16)|0,c=f,_=m,m=m+((1*c|0)+15&-16)|0,t0=(o|0)>0,t0)p0=0,N0=0;else{m=c1;return}for(;;){k0=(N0|0)<2;do if(k0)B0=E+(N0<<2)|0,e[B0>>2]=p0,I=t+(p0<<2)|0,C=e[I>>2]|0,p=_+(N0<<2)|0,e[p>>2]=C,O0=N0;else{for(J0=t+(p0<<2)|0,D0=+s[J0>>2],V0=N0;;){if(B=V0+-1|0,v=_+(B<<2)|0,S=+s[v>>2],w=D0>2]|0,R=F+n|0,L=(p0|0)<(R|0),M=(V0|0)>1,S0=M&L,!S0){U0=V0,i1=12;break}if(T=V0+-2|0,G=_+(T<<2)|0,N=+s[G>>2],P=!(S<=N),P){U0=V0,i1=12;break}if(z=E+(T<<2)|0,Y=e[z>>2]|0,J=Y+n|0,W=(p0|0)<(J|0),W)V0=B;else{U0=V0,i1=12;break}}if((i1|0)==8){i1=0,y=E+(T0<<2)|0,e[y>>2]=p0,D=_+(T0<<2)|0,s[D>>2]=D0,O0=T0;break}else if((i1|0)==12){i1=0,e0=E+(U0<<2)|0,e[e0>>2]=p0,H=_+(U0<<2)|0,s[H>>2]=D0,O0=U0;break}}while(!1);if(r1=O0+1|0,X=p0+1|0,G0=(X|0)==(o|0),G0){e1=O0,v0=r1;break}else p0=X,N0=r1}if(n0=(e1|0)>-1,!n0){m=c1;return}for(Q0=n+1|0,P0=0,L0=0;;){if(U=(P0|0)<(e1|0),U?(o0=P0+1|0,Z=_+(o0<<2)|0,V=+s[Z>>2],A0=_+(P0<<2)|0,i0=+s[A0>>2],r0=V>i0,r0?(K=E+(o0<<2)|0,c0=e[K>>2]|0,x0=c0):i1=17):i1=17,(i1|0)==17&&(i1=0,s0=E+(P0<<2)|0,l0=e[s0>>2]|0,j=Q0+l0|0,x0=j),$0=(x0|0)>(o|0),R0=$0?o:x0,g0=(L0|0)<(R0|0),g0)for(f0=_+(P0<<2)|0,d0=e[f0>>2]|0,y0=(x0|0)<(o|0),h0=y0?x0:o,H0=L0;;)if(E0=t+(H0<<2)|0,e[E0>>2]=d0,C0=H0+1|0,F0=(C0|0)==(h0|0),F0){Y0=h0;break}else H0=C0;else Y0=L0;if(u0=P0+1|0,M0=(u0|0)==(v0|0),M0)break;P0=u0,L0=Y0}m=c1}function gQ(t,n,o,a,c,f,E,I,C){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0,I=I|0,C=C|0;var p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0;if(l2=m,R=I<<2,D=R,L=m,m=m+((1*D|0)+15&-16)|0,e0=t+500|0,K=e[e0>>2]|0,h0=(K|0)==0,h0?p1=I:(G0=t+504|0,U0=e[G0>>2]|0,s1=U0-E|0,p1=s1),L1=(p1|0)>(I|0),Y1=L1?I:p1,M=(Y1|0)>0,M)for(T=(f|0)==0,G=(p1|0)<(I|0),N=G?p1:I,P1=0;;){T?O1=9:(t0=f+(P1<<2)|0,J=e[t0>>2]|0,W=(J|0)==0,W&&(O1=9));do if((O1|0)==9)if(O1=0,H=a+(P1<<2)|0,X=+s[H>>2],U=c+(P1<<2)|0,o0=+s[U>>2],Z=X/o0,V=o+(P1<<2)|0,A0=+s[V>>2],n0=A0<0,i0=Z,r0=+xn(+i0),c0=+Gi(r0),n0){s0=-c0,l0=~~s0,j=C+(P1<<2)|0,e[j>>2]=l0;break}else{$0=~~c0,g0=C+(P1<<2)|0,e[g0>>2]=$0;break}while(!1);if(f0=P1+1|0,v1=(f0|0)==(N|0),v1){K1=N;break}else P1=f0}else K1=0;if(P=(K1|0)<(I|0),!P)return y=0,m=l2,+y;for(z=(f|0)!=0,Y=n-E|0,p=0,N1=0,H1=K1;;){z?(Q0=f+(H1<<2)|0,d0=e[Q0>>2]|0,y0=(d0|0)==0,y0?O1=15:(B=p,w1=N1)):O1=15;do if((O1|0)==15)if(O1=0,E0=a+(H1<<2)|0,C0=+s[E0>>2],u0=c+(H1<<2)|0,k0=+s[u0>>2],J0=C0/k0,D0=!(J0<.25),B0=(H1|0)<(Y|0),j1=z&B0,r2=D0|j1,r2){p0=o+(H1<<2)|0,P0=+s[p0>>2],R0=P0<0,S0=J0,L0=+xn(+S0),Y0=+Gi(L0),H0=-Y0,_=R0?H0:Y0,Q=~~_,N0=C+(H1<<2)|0,e[N0>>2]=Q,V0=i5(Q,Q)|0,T0=+(V0|0),r1=+s[u0>>2],O0=T0*r1,s[E0>>2]=O0,B=p,w1=N1;break}else{x0=J0+p,F0=N1+1|0,M0=L+(N1<<2)|0,e[M0>>2]=E0,B=x0,w1=F0;break}while(!1);if(e1=H1+1|0,G1=(e1|0)==(I|0),G1){v=B,U1=w1;break}else p=B,N1=w1,H1=e1}if(v0=(U1|0)==0,v0||(Fh(L,U1,4,9),i1=(U1|0)>0,!i1))return y=v,m=l2,+y;for(c1=a,$1=t+512|0,f1=+o1[$1>>3],S=v,q1=0;;)if(g1=L+(q1<<2)|0,l1=e[g1>>2]|0,a1=l1,n1=a1-c1|0,A1=n1>>2,z0=S,I1=!(z0>=f1),I1?(w=S,F=0,W1=0):(h1=o+(A1<<2)|0,E1=e[h1>>2]|0,u1=E1&-2147483648,d1=u1|1065353216,B1=(e[p2>>2]=d1,+s[p2>>2]),Q1=~~B1,D1=S+-1,_1=c+(A1<<2)|0,y1=+s[_1>>2],w=D1,F=Q1,W1=y1),k1=C+(A1<<2)|0,e[k1>>2]=F,s[l1>>2]=W1,x1=q1+1|0,Z1=(x1|0)==(U1|0),Z1){y=w;break}else S=w,q1=x1;return m=l2,+y}function vS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0;return S=m,o=e[t>>2]|0,a=+s[o>>2],c=e[n>>2]|0,f=+s[c>>2],E=af,p=C&1,B=I-p|0,B|0}function SS(t){t=t|0;var n=0,o=0,a=0;a=m,n=(t|0)==0,n||I2(t)}function DS(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0;if(W=m,o=(t|0)==0,!o){if(a=t+4|0,y=e[a>>2]|0,L=(y|0)>0,M=t+20|0,L)for(R=y,Y=0;T=e[M>>2]|0,G=T+(Y<<2)|0,N=e[G>>2]|0,P=(N|0)==0,P?f=R:(I2(N),n=e[a>>2]|0,f=n),z=Y+1|0,c=(z|0)<(f|0),c;)R=f,Y=z;if(E=e[M>>2]|0,I2(E),I=t+24|0,C=e[I>>2]|0,p=(C|0)>0,B=t+28|0,p)for(t0=0;v=e[B>>2]|0,S=v+(t0<<2)|0,w=e[S>>2]|0,I2(w),D=t0+1|0,Q=e[I>>2]|0,_=(D|0)<(Q|0),_;)t0=D;F=e[B>>2]|0,I2(F),I2(t)}}function bS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0;if($0=m,c=e[t>>2]|0,U2(n,c,24),f=t+4|0,Q=e[f>>2]|0,U2(n,Q,24),Y=t+8|0,U=e[Y>>2]|0,o0=U+-1|0,U2(n,o0,24),Z=t+12|0,V=e[Z>>2]|0,A0=V+-1|0,U2(n,A0,6),n0=t+20|0,E=e[n0>>2]|0,U2(n,E,8),I=e[Z>>2]|0,C=(I|0)>0,!!C){for(p=t+24|0,i0=0,K=0;;){if(S=p+(K<<2)|0,w=e[S>>2]|0,y=L7(w)|0,D=(y|0)>3,_=e[S>>2]|0,D?(U2(n,_,3),U2(n,1,1),F=e[S>>2]|0,R=F>>3,U2(n,R,5)):U2(n,_,4),L=e[S>>2]|0,M=(L|0)==0,M)s0=0;else for(o=L,l0=0;;)if(T=o&1,G=T+l0|0,N=o>>>1,P=(N|0)==0,P){s0=G;break}else o=N,l0=G;if(z=s0+i0|0,t0=K+1|0,J=e[Z>>2]|0,W=(t0|0)<(J|0),W)i0=z,K=t0;else{a=z;break}}if(B=(a|0)>0,!!B)for(v=t+280|0,c0=0;e0=v+(c0<<2)|0,H=e[e0>>2]|0,U2(n,H,8),X=c0+1|0,r0=(X|0)==(a|0),!r0;)c0=X}}function _S(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0;n1=m,E=i4(1,2840)|0,I=t+28|0,F=e[I>>2]|0,J=Z4(n,24)|0,e[E>>2]=J,i0=Z4(n,24)|0,d0=E+4|0,e[d0>>2]=i0,F0=Z4(n,24)|0,V0=F0+1|0,U0=E+8|0,e[U0>>2]=V0,r1=Z4(n,6)|0,C=r1+1|0,p=E+12|0,e[p>>2]=C,B=Z4(n,8)|0,v=E+20|0,e[v>>2]=B,S=(B|0)<0;e:do if(S)a1=26;else{if(w=(r1|0)>-1,w){for(y=E+24|0,e1=0,c1=0;;){if(_=Z4(n,3)|0,R=Z4(n,1)|0,L=(R|0)<0,L){a1=26;break e}if(M=(R|0)==0,M)v0=_;else{if(T=Z4(n,5)|0,G=(T|0)<0,G){a1=26;break e}N=T<<3,P=N|_,v0=P}if(z=y+(c1<<2)|0,e[z>>2]=v0,Y=(v0|0)==0,Y)l1=0;else for(a=v0,s1=0;;)if(t0=a&1,W=t0+s1|0,e0=a>>>1,H=(e0|0)==0,H){l1=W;break}else a=e0,s1=W;if(X=l1+e1|0,U=c1+1|0,o0=e[p>>2]|0,Z=(U|0)<(o0|0),Z)e1=X,c1=U;else{f=X;break}}if(D=(f|0)>0,D)for(Q=E+280|0,$1=0;;){if(V=Z4(n,8)|0,A0=(V|0)<0,A0)break e;if(n0=Q+($1<<2)|0,e[n0>>2]=V,r0=$1+1|0,K=(r0|0)<(f|0),K)$1=r0;else{T0=D,O0=f;break}}else T0=0,O0=f}else T0=0,O0=0;if(c0=e[v>>2]|0,s0=F+24|0,l0=e[s0>>2]|0,j=(c0|0)<(l0|0),j){if(T0)for($0=E+280|0,f1=0;;){if(Q0=$0+(f1<<2)|0,y0=e[Q0>>2]|0,h0=(y0|0)<(l0|0),!h0||(E0=(F+1824|0)+(y0<<2)|0,C0=e[E0>>2]|0,u0=C0+12|0,k0=e[u0>>2]|0,J0=(k0|0)==0,g0=f1+1|0,J0))break e;if(f0=(g0|0)<(O0|0),f0)f1=g0;else break}if(D0=(F+1824|0)+(c0<<2)|0,B0=e[D0>>2]|0,x0=B0+4|0,M0=e[x0>>2]|0,G0=e[B0>>2]|0,p0=(G0|0)<1,!p0){for(P0=e[p>>2]|0,i1=G0,g1=1;;){if(L0=i5(P0,g1)|0,Y0=(L0|0)>(M0|0),Y0)break e;if(R0=i1+-1|0,S0=(i1|0)>1,S0)i1=R0,g1=L0;else{c=L0;break}}return H0=E+16|0,e[H0>>2]=c,o=E,o|0}}}while(!1);return(a1|0)==26&&(N0=(E|0)==0,N0)?(o=0,o|0):(I2(E),o=0,o|0)}function RS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0;if(p1=m,f=i4(1,44)|0,E=t+4|0,_=e[E>>2]|0,t0=_+28|0,n0=e[t0>>2]|0,e[f>>2]=n,Q0=n+12|0,x0=e[Q0>>2]|0,N0=f+4|0,e[N0>>2]=x0,r1=n0+2848|0,O0=e[r1>>2]|0,I=f+12|0,e[I>>2]=O0,C=O0,p=n+20|0,B=e[p>>2]|0,v=C+(B*56|0)|0,S=f+16|0,e[S>>2]=v,w=e[v>>2]|0,y=i4(x0,4)|0,D=f+20|0,e[D>>2]=y,Q=(x0|0)>0,Q)for(F=n+24|0,R=n+280|0,e1=0,l1=0,h1=0;;){if(L=F+(l1<<2)|0,M=e[L>>2]|0,T=L7(M)|0,G=(T|0)==0,G)c1=e1,E1=h1;else if(N=(T|0)>(h1|0),a=N?T:h1,P=i4(T,4)|0,z=y+(l1<<2)|0,e[z>>2]=P,Y=(T|0)>0,Y)for(J=e[L>>2]|0,W=y+(l1<<2)|0,v0=e1,A1=0;;)if(e0=1<>2]|0,o0=v0+1|0,Z=R+(v0<<2)|0,V=e[Z>>2]|0,A0=U+(V*56|0)|0,i0=e[W>>2]|0,r0=i0+(A1<<2)|0,e[r0>>2]=A0,i1=o0),K=A1+1|0,f1=(K|0)==(T|0),f1){c1=i1,E1=a;break}else v0=i1,A1=K;else c1=e1,E1=a;if(c0=l1+1|0,s0=(c0|0)<(x0|0),s0)e1=c1,l1=c0,h1=E1;else{I1=E1;break}}else I1=0;if(l0=f+24|0,e[l0>>2]=1,j=(w|0)>0,j){for(g0=1,s1=0;;)if($0=i5(g0,x0)|0,f0=s1+1|0,$1=(f0|0)==(w|0),$1){o=$0;break}else g0=$0,s1=f0;e[l0>>2]=o,h0=o}else h0=1;if(d0=f+8|0,e[d0>>2]=I1,y0=h0<<2,E0=k9(y0)|0,C0=f+28|0,e[C0>>2]=E0,u0=(h0|0)>0,!u0)return f|0;if(k0=w<<2,!j){for(a1=0;H0=k9(k0)|0,V0=E0+(a1<<2)|0,e[V0>>2]=H0,T0=a1+1|0,U0=(T0|0)<(h0|0),U0;)a1=T0;return f|0}for(J0=e[C0>>2]|0,n1=0;;){for(S0=k9(k0)|0,L0=E0+(n1<<2)|0,e[L0>>2]=S0,Y0=J0+(n1<<2)|0,P0=e[Y0>>2]|0,c=h0,z0=0,d1=n1;u1=(c|0)/(x0|0)&-1,F0=(d1|0)/(u1|0)&-1,M0=i5(F0,u1)|0,G0=d1-M0|0,p0=P0+(z0<<2)|0,e[p0>>2]=F0,R0=z0+1|0,g1=(R0|0)==(w|0),!g1;)c=u1,z0=R0,d1=G0;if(D0=n1+1|0,B0=(D0|0)<(h0|0),B0)n1=D0;else break}return f|0}function xS(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0;if(M=m,f=(c|0)>0,f)Q=0,_=0;else return 0;for(;;)if(E=a+(Q<<2)|0,I=e[E>>2]|0,C=(I|0)==0,C?F=_:(p=o+(Q<<2)|0,B=e[p>>2]|0,v=_+1|0,S=o+(_<<2)|0,e[S>>2]=B,F=v),w=Q+1|0,D=(w|0)==(c|0),D){R=F;break}else Q=w,_=F;return y=(R|0)==0,y||hQ(t,n,o,R,2),0}function FS(t,n,o,a,c,f,E,I){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0,I=I|0;var C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0;if(N=m,C=(f|0)>0,C)R=0,L=0;else return 0;for(;;)if(p=c+(R<<2)|0,B=e[p>>2]|0,v=(B|0)==0,v?M=L:(S=a+(R<<2)|0,w=e[S>>2]|0,y=L+1|0,D=a+(L<<2)|0,e[D>>2]=w,M=y),Q=R+1|0,F=(Q|0)==(f|0),F){T=M;break}else R=Q,L=M;return _=(T|0)==0,_||fQ(t,o,a,T,E),0}function LS(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0;if(B1=m,I=(c|0)>0,I)i1=0,h1=0;else return f=0,f|0;for(;;)if(C=a+(i1<<2)|0,R=e[C>>2]|0,W=(R|0)==0,W?E1=h1:(r0=o+(i1<<2)|0,y0=e[r0>>2]|0,M0=h1+1|0,Y0=o+(h1<<2)|0,e[Y0>>2]=y0,E1=M0),H0=i1+1|0,U0=(H0|0)==(c|0),U0){u1=E1;break}else i1=H0,h1=E1;if(N0=(u1|0)==0,N0)return f=0,f|0;if(p=e[n>>2]|0,B=p+8|0,v=e[B>>2]|0,S=p+12|0,w=e[S>>2]|0,y=p+4|0,D=e[y>>2]|0,Q=e[p>>2]|0,_=D-Q|0,F=(_|0)/(v|0)&-1,L=u1<<2,M=O7(t,L)|0,T=+(v|0),G=100/T,N=G,P=(u1|0)>0,P)for(z=F<<2,c1=0;H=O7(t,z)|0,X=M+(c1<<2)|0,e[X>>2]=H,se(H|0,0,z|0)|0,U=c1+1|0,v0=(U|0)==(u1|0),!v0;)c1=U;if(Y=(F|0)>0,Y)for(t0=(v|0)>0,J=w+-1|0,e0=(w|0)>1,$1=0;;){if(o0=i5($1,v)|0,Z=e[p>>2]|0,V=Z+o0|0,P)for(g1=0;;){if(t0)for(A0=o+(g1<<2)|0,n0=e[A0>>2]|0,T0=0,l1=0,A1=0;;)if(i0=V+l1|0,K=n0+(i0<<2)|0,c0=e[K>>2]|0,f1=(c0|0)>-1,z0=0-c0|0,s0=f1?c0:z0,l0=(s0|0)>(A1|0),E=l0?s0:A1,j=s0+T0|0,$0=l1+1|0,r1=($0|0)==(v|0),r1){V0=j,n1=E;break}else T0=j,l1=$0,A1=E;else V0=0,n1=0;g0=+(V0|0),f0=g0*N,Q0=~~f0;e:do if(e0)for(a1=0;;){if(d0=(p+2328|0)+(a1<<2)|0,h0=e[d0>>2]|0,E0=(n1|0)>(h0|0),!E0&&(C0=(p+2584|0)+(a1<<2)|0,u0=e[C0>>2]|0,k0=(u0|0)<0,J0=(Q0|0)<(u0|0),I1=k0|J0,I1)){s1=a1;break e}if(D0=a1+1|0,B0=(D0|0)<(J|0),B0)a1=D0;else{s1=D0;break}}else s1=0;while(!1);if(x0=M+(g1<<2)|0,F0=e[x0>>2]|0,G0=F0+($1<<2)|0,e[G0>>2]=s1,p0=g1+1|0,O0=(p0|0)==(u1|0),O0)break;g1=p0}if(P0=$1+1|0,e1=(P0|0)==(F|0),e1)break;$1=P0}return R0=n+40|0,S0=e[R0>>2]|0,L0=S0+1|0,e[R0>>2]=L0,f=M,f|0}function MS(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0;if(M=m,f=(c|0)>0,f)Q=0,_=0;else return 0;for(;;)if(E=a+(Q<<2)|0,I=e[E>>2]|0,C=(I|0)==0,C?F=_:(p=o+(Q<<2)|0,B=e[p>>2]|0,v=_+1|0,S=o+(_<<2)|0,e[S>>2]=B,F=v),w=Q+1|0,D=(w|0)==(c|0),D){R=F;break}else Q=w,_=F;return y=(R|0)==0,y||hQ(t,n,o,R,3),0}function TS(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0;if(z0=m,C=(c|0)>0,C)L0=0,n1=0;else return f=0,f|0;for(;;)if(p=a+(L0<<2)|0,L=e[p>>2]|0,g1=(L|0)!=0,e0=g1&1,s1=e0+n1|0,K=L0+1|0,P0=(K|0)==(c|0),P0){a1=s1;break}else L0=K,n1=s1;if(l1=(a1|0)==0,l1)return f=0,f|0;if(h0=e[n>>2]|0,J0=h0+8|0,D0=e[J0>>2]|0,B0=h0+12|0,x0=e[B0>>2]|0,B=h0+4|0,v=e[B>>2]|0,S=e[h0>>2]|0,w=v-S|0,y=(w|0)/(D0|0)&-1,D=O7(t,4)|0,Q=y<<2,_=O7(t,Q)|0,e[D>>2]=_,se(_|0,0,Q|0)|0,F=(y|0)>0,F)for(R=e[h0>>2]|0,M=(R|0)/(c|0)&-1,T=(D0|0)>0,G=x0+-1|0,N=(x0|0)>1,P=e[D>>2]|0,z=(c|0)>1,Y0=0,O0=M;;){if(T)for(Y=e[o>>2]|0,M0=0,V0=0,v0=O0,c1=0;;){if(t0=Y+(v0<<2)|0,J=e[t0>>2]|0,H0=(J|0)>-1,$1=0-J|0,W=H0?J:$1,H=(W|0)>(c1|0),I=H?W:c1,z)for(p0=M0,r1=1;;)if(X=o+(r1<<2)|0,U=e[X>>2]|0,o0=U+(v0<<2)|0,Z=e[o0>>2]|0,N0=(Z|0)>-1,f1=0-Z|0,V=N0?Z:f1,A0=(V|0)>(p0|0),E=A0?V:p0,n0=r1+1|0,R0=(n0|0)==(c|0),R0){G0=E;break}else p0=E,r1=n0;else G0=M0;if(i0=v0+1|0,r0=V0+c|0,c0=(r0|0)<(D0|0),c0)M0=G0,V0=r0,v0=i0,c1=I;else{F0=G0,e1=i0,i1=I;break}}else F0=0,e1=O0,i1=0;e:do if(N)for(U0=0;;){if(s0=(h0+2328|0)+(U0<<2)|0,l0=e[s0>>2]|0,j=(i1|0)>(l0|0),!j&&($0=(h0+2584|0)+(U0<<2)|0,g0=e[$0>>2]|0,f0=(F0|0)>(g0|0),!f0)){T0=U0;break e}if(Q0=U0+1|0,d0=(Q0|0)<(G|0),d0)U0=Q0;else{T0=Q0;break}}else T0=0;while(!1);if(y0=P+(Y0<<2)|0,e[y0>>2]=T0,E0=Y0+1|0,S0=(E0|0)==(y|0),S0)break;Y0=E0,O0=e1}return C0=n+40|0,u0=e[C0>>2]|0,k0=u0+1|0,e[C0>>2]=k0,f=D,f|0}function GS(t,n,o,a,c,f,E,I){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0,I=I|0;var C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0;if(n0=m,m=m+16|0,V=n0,C=n+36|0,p=e[C>>2]|0,L=(p|0)/2&-1,M=f<<2,T=i5(M,L)|0,G=O7(n,T)|0,e[V>>2]=G,N=(f|0)>0,!N)return m=n0,0;for(P=(p|0)>1,J=0,Z=0;;){if(z=a+(J<<2)|0,Y=e[z>>2]|0,B=c+(J<<2)|0,v=e[B>>2]|0,H=(v|0)!=0,S=H&1,U=S+Z|0,P)for(W=0,e0=J;w=Y+(W<<2)|0,y=e[w>>2]|0,D=G+(e0<<2)|0,e[D>>2]=y,Q=W+1|0,_=e0+f|0,F=(Q|0)<(L|0),F;)W=Q,e0=_;if(R=J+1|0,t0=(R|0)==(f|0),t0){o0=U;break}else J=R,Z=U}return X=(o0|0)==0,X?(m=n0,0):(fQ(t,o,V,1,E),m=n0,0)}function NS(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0;if(Q1=m,I=e[n>>2]|0,C=I+8|0,R=e[C>>2]|0,W=n+16|0,r0=e[W>>2]|0,y0=e[r0>>2]|0,M0=t+36|0,T0=e[M0>>2]|0,l1=i5(T0,c)|0,s1=l1>>1,p=I+4|0,B=e[p>>2]|0,v=(B|0)<(s1|0),f=v?B:s1,S=e[I>>2]|0,w=f-S|0,y=(w|0)>0,!y)return 0;D=(w|0)/(R|0)&-1,Q=y0+-1|0,_=Q+D|0,F=(_|0)/(y0|0)&-1,L=F<<2,M=O7(t,L)|0,T=(c|0)>0;e:do if(T)for(n1=0;;){if(G=a+(n1<<2)|0,N=e[G>>2]|0,P=(N|0)==0,!P){a1=n1;break e}if(z=n1+1|0,Y=(z|0)<(c|0),Y)n1=z;else{a1=z;break}}else a1=0;while(!1);if(t0=(a1|0)==(c|0),t0||(J=n+8|0,e0=e[J>>2]|0,H=(e0|0)>0,!H))return 0;X=(D|0)>0,U=t+4|0,o0=I+16|0,Z=n+28|0,V=(y0|0)>0,A0=n+20|0,g1=e0,B1=0;e:for(;;){if(X){for(n0=(B1|0)==0,i0=1<>2]|0,c0=JC(K,U)|0,s0=(c0|0)==-1,s0){p1=23;break e}if(l0=e[o0>>2]|0,j=(c0|0)<(l0|0),!j){p1=23;break e}if($0=e[Z>>2]|0,g0=$0+(c0<<2)|0,f0=e[g0>>2]|0,Q0=M+(E1<<2)|0,e[Q0>>2]=f0,d0=(f0|0)==0,d0){p1=23;break e}}if(h0=(A1|0)<(D|0),d1=V&h0,d1)for(E0=M+(E1<<2)|0,I1=A1,h1=0;;){if(C0=e[E0>>2]|0,u0=C0+(h1<<2)|0,k0=e[u0>>2]|0,J0=(I+24|0)+(k0<<2)|0,D0=e[J0>>2]|0,B0=D0&i0,x0=(B0|0)==0,!x0&&(F0=e[A0>>2]|0,G0=F0+(k0<<2)|0,p0=e[G0>>2]|0,P0=p0+(B1<<2)|0,R0=e[P0>>2]|0,S0=(R0|0)==0,!S0&&(L0=i5(I1,R)|0,Y0=e[I>>2]|0,H0=Y0+L0|0,N0=Yv(R0,o,H0,c,U,R)|0,V0=(N0|0)==-1,V0))){p1=23;break e}if(U0=h1+1|0,r1=I1+1|0,O0=(U0|0)<(y0|0),e1=(r1|0)<(D|0),u1=O0&e1,u1)I1=r1,h1=U0;else{z0=r1;break}}else z0=A1;if(v0=E1+1|0,i1=(z0|0)<(D|0),i1)A1=z0,E1=v0;else break}E=e[J>>2]|0,f1=E}else f1=g1;if(c1=B1+1|0,$1=(c1|0)<(f1|0),$1)g1=f1,B1=c1;else{p1=23;break}}return(p1|0)==23,0}function hQ(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0;if(j1=m,p=e[n>>2]|0,B=p+8|0,M=e[B>>2]|0,H=n+16|0,c0=e[H>>2]|0,E0=e[c0>>2]|0,p0=t+36|0,r1=e[p0>>2]|0,a1=r1>>1,Q1=p+4|0,v=e[Q1>>2]|0,S=(v|0)<(a1|0),f=S?v:a1,w=e[p>>2]|0,y=f-w|0,D=(y|0)>0,!D){m=j1;return}if(Q=(y|0)/(M|0)&-1,_=a<<2,E=_,F=m,m=m+((1*E|0)+15&-16)|0,R=(a|0)>0,R)for(L=E0+-1|0,T=L+Q|0,G=(T|0)/(E0|0)&-1,N=G<<2,N1=0;o0=O7(t,N)|0,Z=F+(N1<<2)|0,e[Z>>2]=o0,V=N1+1|0,_1=(V|0)==(a|0),!_1;)N1=V;if(P=n+8|0,z=e[P>>2]|0,Y=(z|0)>0,!Y){m=j1;return}t0=(Q|0)>0,J=t+4|0,W=p+16|0,e0=n+28|0,X=(E0|0)>0,U=n+20|0,C=R^1,q1=0;e:for(;;){if(t0)for(A0=1<>2]|0,O0=JC(U0,J)|0,e1=(O0|0)==-1,e1){Y1=25;break e}if(v0=e[W>>2]|0,i1=(O0|0)<(v0|0),!i1){Y1=25;break e}if(c1=e[e0>>2]|0,$1=c1+(O0<<2)|0,f1=e[$1>>2]|0,g1=F+(w1<<2)|0,l1=e[g1>>2]|0,s1=l1+(v1<<2)|0,e[s1>>2]=f1,n1=(f1|0)==0,V0=w1+1|0,n1){Y1=25;break e}if(T0=(V0|0)<(a|0),T0)w1=V0;else break}n0=(y1|0)<(Q|0),H1=X&n0;t:do if(H1){if(R)L1=y1,G1=0;else for(x1=y1,Z1=0;;)if(A1=Z1+1|0,z0=x1+1|0,I1=(A1|0)<(E0|0),h1=(z0|0)<(Q|0),K1=I1&h1,K1)x1=z0,Z1=A1;else{k1=z0;break t}for(;;){for($0=i5(L1,M)|0,U1=0;;){if(l0=e[p>>2]|0,j=l0+$0|0,g0=F+(U1<<2)|0,f0=e[g0>>2]|0,Q0=f0+(v1<<2)|0,d0=e[Q0>>2]|0,y0=d0+(G1<<2)|0,h0=e[y0>>2]|0,C0=(p+24|0)+(h0<<2)|0,u0=e[C0>>2]|0,k0=u0&A0,J0=(k0|0)==0,!J0&&(D0=e[U>>2]|0,B0=D0+(h0<<2)|0,x0=e[B0>>2]|0,F0=x0+(q1<<2)|0,M0=e[F0>>2]|0,G0=(M0|0)==0,!G0&&(P0=o+(U1<<2)|0,R0=e[P0>>2]|0,S0=R0+(j<<2)|0,L0=cB[c&3](M0,S0,J,M)|0,Y0=(L0|0)==-1,Y0))){Y1=25;break e}if(H0=U1+1|0,N0=(H0|0)<(a|0),N0)U1=H0;else break}if(i0=G1+1|0,r0=L1+1|0,K=(i0|0)<(E0|0),s0=(r0|0)<(Q|0),P1=K&s0,P1)L1=r0,G1=i0;else{k1=r0;break}}}else k1=y1;while(!1);if(E1=v1+1|0,u1=(k1|0)<(Q|0),u1)y1=k1,v1=E1;else break}if(d1=q1+1|0,B1=e[P>>2]|0,p1=(d1|0)<(B1|0),p1)q1=d1;else{Y1=25;break}}if((Y1|0)==25){m=j1;return}}function fQ(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,B6=0,z3=0,a6=0,p6=0,_6=0,Y6=0,m6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,A3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0;if(d6=m,m=m+1088|0,i3=d6+1056|0,L5=d6+1024|0,P6=d6+512|0,A3=d6,Q=e[n>>2]|0,_=Q+8|0,a2=e[_>>2]|0,q2=Q+12|0,z2=e[q2>>2]|0,C5=n+16|0,M1=e[C5>>2]|0,h5=e[M1>>2]|0,g3=Q+4|0,M3=e[g3>>2]|0,F=e[Q>>2]|0,J=M3-F|0,i0=(J|0)/(a2|0)&-1,se(P6|0,0,512)|0,se(A3|0,0,512)|0,d0=n+8|0,F0=e[d0>>2]|0,V0=(F0|0)>0,!V0){m=d6;return}for(g1=(i0|0)>0,d1=(a|0)>0,w1=(h5|0)>1,r2=n+36|0,t2=(h5|0)>0,S2=n+20|0,w2=n+32|0,C2=0-h5|0,y2=F0,r6=0;;){if(g1){for(M2=(r6|0)==0,_2=1<>2]|0,G5=S5+(z5<<2)|0,D5=e[G5>>2]|0,H2=e[C5>>2]|0,I5=H2+4|0,A5=e[I5>>2]|0,l5=(D5|0)<(A5|0),l5&&(m5=Rh(H2,D5,t)|0,k5=e[r2>>2]|0,c5=k5+m5|0,e[r2>>2]=c5),o5=m6+1|0,t6=(o5|0)==(a|0),t6)break e;m6=o5}for(;;){for(k2=c+(v3<<2)|0,f5=e[k2>>2]|0,E5=f5+(z5<<2)|0,r5=e[E5>>2]|0,u6=1,e6=r5;;)if(j2=i5(e6,z2)|0,R5=u6+z5|0,X2=(R5|0)<(i0|0),X2?(v5=f5+(R5<<2)|0,w5=e[v5>>2]|0,O5=w5+j2|0,Q6=O5):Q6=j2,$5=u6+1|0,w3=($5|0)==(h5|0),w3){R6=Q6;break}else u6=$5,e6=Q6;if(K2=e[C5>>2]|0,N2=K2+4|0,T2=e[N2>>2]|0,O2=(R6|0)<(T2|0),O2&&(V2=Rh(K2,R6,t)|0,s5=e[r2>>2]|0,P2=s5+V2|0,e[r2>>2]=P2),T1=v3+1|0,p3=(T1|0)==(a|0),p3)break;v3=T1}}while(!1);if(x2=(z5|0)<(i0|0),S6=t2&x2,S6){for(R2=z5-i0|0,m2=R2>>>0>>0,T6=m2?C2:R2,x5=0-T6|0,o6=z5,O3=0;;){if(Z2=i5(o6,a2)|0,c2=e[Q>>2]|0,B5=c2+Z2|0,d1)for(W3=0;;){if(e5=c+(W3<<2)|0,n5=e[e5>>2]|0,g5=n5+(o6<<2)|0,Y2=e[g5>>2]|0,M2&&(t5=A3+(Y2<<2)|0,b5=e[t5>>2]|0,W2=b5+a2|0,e[t5>>2]=W2),a5=(Q+24|0)+(Y2<<2)|0,F2=e[a5>>2]|0,p5=F2&_2,H5=(p5|0)==0,!H5&&(X5=e[S2>>2]|0,d5=X5+(Y2<<2)|0,f3=e[d5>>2]|0,K5=f3+(r6<<2)|0,e3=e[K5>>2]|0,s3=(e3|0)==0,!s3)){if(E3=o+(W3<<2)|0,F5=e[E3>>2]|0,V5=e[e3>>2]|0,y3=(a2|0)/(V5|0)&-1,h3=(y3|0)>0,h3){for(m3=e3+48|0,q3=e3+52|0,Z5=e3+44|0,Q3=e3+12|0,j5=e3+4|0,R=V5,y5=0,c3=0;;){j3=i5(c3,V5)|0,S=j3+B5|0,_3=F5+(S<<2)|0,T3=e[m3>>2]|0,a3=e[q3>>2]|0,$3=e[Z5>>2]|0,l3=$3>>1,e[i3>>2]=0,e[i3+4>>2]=0,e[i3+8>>2]=0,e[i3+12>>2]=0,e[i3+16>>2]=0,e[i3+20>>2]=0,e[i3+24>>2]=0,e[i3+28>>2]=0,C3=(a3|0)==1,L=(R|0)>0;do if(C3){if(!L){z3=0;break}for(N=$3+-1|0,u3=0,B6=0,P3=R;;)if(f0=P3+-1|0,D=S+f0|0,Q0=F5+(D<<2)|0,y0=e[Q0>>2]|0,h0=y0-T3|0,E0=(h0|0)<(l3|0),E0?(C0=l3-h0|0,u0=C0<<1,k0=u0+-1|0,x0=k0):(J0=h0-l3|0,D0=J0<<1,x0=D0),B0=i5(B6,$3)|0,M0=(x0|0)<0,G0=(x0|0)>=($3|0),p0=G0?N:x0,P0=M0?0:p0,R0=P0+B0|0,S0=i3+(f0<<2)|0,e[S0>>2]=y0,L0=u3+1|0,V3=(L0|0)==(R|0),V3){z3=R0;break}else u3=L0,B6=R0,P3=f0}else{if(!L){z3=0;break}for(M=a3>>1,T=M-T3|0,G=$3+-1|0,k3=0,v6=0,S3=R;;)if(P=S3+-1|0,y=S+P|0,z=F5+(y<<2)|0,Y=e[z>>2]|0,t0=T+Y|0,W=(t0|0)/(a3|0)&-1,e0=(W|0)<(l3|0),e0?(H=l3-W|0,X=H<<1,U=X+-1|0,A0=U):(o0=W-l3|0,Z=o0<<1,A0=Z),V=i5(v6,$3)|0,n0=(A0|0)<0,r0=(A0|0)>=($3|0),K=r0?G:A0,c0=n0?0:K,s0=c0+V|0,l0=i5(W,a3)|0,j=l0+T3|0,$0=i3+(P<<2)|0,e[$0>>2]=j,g0=k3+1|0,N3=(g0|0)==(R|0),N3){z3=s0;break}else k3=g0,v6=s0,S3=P}while(!1);Y0=e[Q3>>2]|0,H0=Y0+8|0,N0=e[H0>>2]|0,T0=N0+z3|0,U0=u[T0>>0]|0,r1=U0<<24>>24<1;do if(r1){if(e[L5>>2]=0,e[L5+4>>2]=0,e[L5+8>>2]=0,e[L5+12>>2]=0,e[L5+16>>2]=0,e[L5+20>>2]=0,e[L5+24>>2]=0,e[L5+28>>2]=0,O0=$3+-1|0,e1=i5(O0,a3)|0,v0=e1+T3|0,i1=e[j5>>2]|0,c1=(i1|0)>0,c1)q5=-1,w6=0,a6=z3;else{_6=z3;break}for(;;){$1=N0+w6|0,f1=u[$1>>0]|0,l1=f1<<24>>24>0;do if(l1){if(L)for(Y6=0,D3=0;;)if(s1=L5+(Y6<<2)|0,a1=e[s1>>2]|0,w=S+Y6|0,n1=F5+(w<<2)|0,A1=e[n1>>2]|0,z0=a1-A1|0,I1=i5(z0,z0)|0,h1=I1+D3|0,E1=Y6+1|0,X3=(E1|0)==(R|0),X3){I6=h1;break}else Y6=E1,D3=h1;else I6=0;if(u1=(q5|0)==-1,B1=(I6|0)<(q5|0),Y3=u1|B1,!Y3){N5=q5,p6=a6;break}e[i3>>2]=e[L5>>2]|0,e[i3+4>>2]=e[L5+4>>2]|0,e[i3+8>>2]=e[L5+8>>2]|0,e[i3+12>>2]=e[L5+12>>2]|0,e[i3+16>>2]=e[L5+16>>2]|0,e[i3+20>>2]=e[L5+20>>2]|0,e[i3+24>>2]=e[L5+24>>2]|0,e[i3+28>>2]=e[L5+28>>2]|0,N5=I6,p6=w6}else N5=q5,p6=a6;while(!1);if(p1=e[L5>>2]|0,Q1=(p1|0)<(v0|0),Q1)E=L5,I=p1;else for(_1=L5,Z3=0;;)if(D1=Z3+1|0,e[_1>>2]=0,y1=L5+(D1<<2)|0,k1=e[y1>>2]|0,x1=(k1|0)<(v0|0),x1){E=y1,I=k1;break}else _1=y1,Z3=D1;if(L1=(I|0)>-1,L1?(N1=I+a3|0,e[E>>2]=N1,Z1=N1):Z1=I,U1=0-Z1|0,e[E>>2]=U1,G1=w6+1|0,t3=(G1|0)==(i1|0),t3){_6=p6;break}else q5=N5,w6=G1,a6=p6}}else _6=z3;while(!1);if(v1=(_6|0)>-1,i6=L&v1,i6)for(f=_3,k6=0;K1=i3+(k6<<2)|0,P1=e[K1>>2]|0,H1=f+4|0,q1=e[f>>2]|0,Y1=q1-P1|0,e[f>>2]=Y1,j1=k6+1|0,o3=(j1|0)==(R|0),!o3;)f=H1,k6=j1;if(W1=Rh(e3,_6,t)|0,O1=W1+y5|0,l2=c3+1|0,R3=(l2|0)==(y3|0),R3){C=O1;break}p=e[e3>>2]|0,R=p,y5=O1,c3=l2}B=e[e5>>2]|0,d2=B,P5=C}else d2=n5,P5=0;z1=e[w2>>2]|0,h2=z1+P5|0,e[w2>>2]=h2,s2=d2+(o6<<2)|0,A2=e[s2>>2]|0,V1=P6+(A2<<2)|0,g2=e[V1>>2]|0,$2=g2+P5|0,e[V1>>2]=$2}if(i2=W3+1|0,f6=(i2|0)==(a|0),f6)break;W3=i2}if(o2=O3+1|0,X1=o6+1|0,B3=(o2|0)==(x5|0),B3)break;o6=X1,O3=o2}G2=z5-T6|0,U3=G2}else U3=z5;if(u2=(U3|0)<(i0|0),u2)z5=U3;else break}v=e[d0>>2]|0,e2=v}else e2=y2;if(n2=r6+1|0,f2=(n2|0)<(e2|0),f2)y2=e2,r6=n2;else break}m=d6}function L7(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0;if(p=m,o=(t|0)==0,o)E=0;else for(n=t,I=0;;)if(a=n>>>1,c=I+1|0,f=(a|0)==0,f){E=c;break}else n=a,I=c;return E|0}function uQ(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0;g2=m,m=m+144|0,O1=g2,C=(o|0)!=0,p=C?o:n,L=p<<2,e0=k9(L)|0,se(O1|0,0,132)|0,K=(n|0)>0;do if(K){h0=O1+4|0,G0=(o|0)==0,U0=G0&1,p1=0,w1=0;e:for(;;){s1=t+w1|0,B1=u[s1>>0]|0,B=B1<<24>>24,v=B1<<24>>24>0;t:do if(v){if(S=O1+(B<<2)|0,w=e[S>>2]|0,y=B1<<24>>24>31,D=w>>>B,Q=(D|0)==0,l2=y|Q,!l2){V1=5;break e}_=e0+(p1<<2)|0,e[_>>2]=w,F=O1+(B<<2)|0,R=w&1,M=(R|0)==0;i:do if(M)for(H=w,X=F,K1=B;;){if(W=H+1|0,e[X>>2]=W,U=K1+-1|0,o0=(K1|0)>1,!o0)break i;if(f=O1+(U<<2)|0,I=e[f>>2]|0,Z=O1+(U<<2)|0,V=I&1,A0=(V|0)==0,A0)H=I,X=Z,K1=U;else{c=Z,v1=U,V1=8;break}}else c=F,v1=B,V1=8;while(!1);do if((V1|0)==8)if(V1=0,G=(v1|0)==1,G){N=e[h0>>2]|0,P=N+1|0,e[h0>>2]=P;break}else{z=v1+-1|0,Y=O1+(z<<2)|0,t0=e[Y>>2]|0,J=t0<<1,e[c>>2]=J;break}while(!1);if(Y1=B+1|0,T=(Y1|0)<33,T)for(x1=w,H1=B,j1=Y1;;){if(n0=O1+(j1<<2)|0,i0=e[n0>>2]|0,r0=i0>>>1,c0=(r0|0)==(x1|0),!c0){E=1;break t}if(s0=O1+(H1<<2)|0,l0=e[s0>>2]|0,j=l0<<1,e[n0>>2]=j,P1=j1+1|0,$0=(P1|0)<33,$0)q1=j1,x1=i0,j1=P1,H1=q1;else{E=1;break}}else E=1}else E=U0;while(!1);if(Q1=p1+E|0,g0=w1+1|0,f0=(g0|0)<(n|0),f0)p1=Q1,w1=g0;else{D1=Q1,V1=16;break}}if((V1|0)==5)return I2(e0),a=0,m=g2,a|0;if((V1|0)==16){if(z1=(D1|0)==1,!z1){U1=1,V1=27;break}if(Q0=O1+8|0,d0=e[Q0>>2]|0,y0=(d0|0)==2,y0)break;U1=1,V1=27;break}}else U1=1,V1=27;while(!1);e:do if((V1|0)==27){for(;V1=0,V0=O1+(U1<<2)|0,T0=e[V0>>2]|0,r1=32-U1|0,O0=-1>>>r1,e1=T0&O0,v0=(e1|0)==0,H0=U1+1|0,!!v0;)if(N0=(H0|0)<33,N0)U1=H0,V1=27;else break e;return I2(e0),a=0,m=g2,a|0}while(!1);if(!K)return a=e0,m=g2,a|0;if(C)y1=0,G1=0;else{for(_1=0,Z1=0;;){if(i1=t+Z1|0,c1=u[i1>>0]|0,$1=c1<<24>>24>0,$1)for(f1=e0+(_1<<2)|0,g1=e[f1>>2]|0,l1=c1<<24>>24,r2=0,d2=0;;)if(a1=d2<<1,n1=g1>>>r2,A1=n1&1,z0=A1|a1,I1=r2+1|0,h1=(I1|0)<(l1|0),h1)r2=I1,d2=z0;else{h2=z0;break}else h2=0;if(E1=_1+1|0,u1=e0+(_1<<2)|0,e[u1>>2]=h2,d1=Z1+1|0,L1=(d1|0)==(n|0),L1){a=e0;break}else _1=E1,Z1=d1}return m=g2,a|0}for(;;){if(E0=t+G1|0,C0=u[E0>>0]|0,u0=C0<<24>>24>0,u0)for(Y0=e0+(y1<<2)|0,M0=e[Y0>>2]|0,L0=C0<<24>>24,W1=0,A2=0;;)if(x0=A2<<1,F0=M0>>>W1,p0=F0&1,P0=p0|x0,R0=W1+1|0,S0=(R0|0)<(L0|0),S0)W1=R0,A2=P0;else{s2=P0;break}else s2=0;if(k0=C0<<24>>24==0,k0?k1=y1:(J0=y1+1|0,D0=e0+(y1<<2)|0,e[D0>>2]=s2,k1=J0),B0=G1+1|0,N1=(B0|0)==(n|0),N1){a=e0;break}else y1=k1,G1=B0}return m=g2,a|0}function US(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0;if(H=m,a=t+4|0,c=e[a>>2]|0,D=e[t>>2]|0,Q=(D|0)>0,!Q)for(;;);for(_=+(c|0),F=_,R=+(D|0),L=1/R,M=L,T=+Dh(+F,+M),f=+Yo(+T),E=~~f,Y=E;;){for(S=Y+1|0,G=1,N=1,P=0;;)if(B=i5(G,Y)|0,v=i5(N,S)|0,w=P+1|0,y=(w|0)<(D|0),y)G=B,N=v,P=w;else{n=B,o=v;break}if(I=(n|0)<=(c|0),C=(o|0)>(c|0),z=I&C,z){W=Y;break}p=(n|0)>(c|0),J=p?-1:1,t0=Y+J|0,Y=t0}return W|0}function OS(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0;if(H5=m,p=t+12|0,B=e[p>>2]|0,C=B+-1|0,t5=C>>>0<2,!t5)return f=0,f|0;if(O0=t+16|0,n1=e[O0>>2]|0,D1=n1&2097151,v1=+(D1|0),z1=n1>>>21,o2=z1&1023,G2=(n1|0)<0,j2=-v1,a=G2?j2:v1,v=o2+-788|0,T=+zC(a,v),X=T,s0=t+20|0,C0=e[s0>>2]|0,P0=C0&2097151,V0=+(P0|0),T0=C0>>>21,U0=T0&1023,r1=(C0|0)<0,e1=-V0,c=r1?e1:V0,v0=U0+-788|0,i1=+zC(c,v0),c1=i1,$1=e[t>>2]|0,f1=i5($1,n)|0,g1=i4(f1,4)|0,(B|0)==1){if(B1=t+4|0,p1=e[B1>>2]|0,Q1=($1|0)>0,!Q1)for(;;);for(_1=+(p1|0),y1=_1,k1=+($1|0),x1=1/k1,L1=x1,N1=+Dh(+y1,+L1),w1=+Yo(+N1),U1=~~w1,a5=U1;;){for(h2=a5+1|0,r5=1,x2=1,I5=0;;)if(O1=i5(r5,a5)|0,l2=i5(x2,h2)|0,s2=I5+1|0,u5=(s2|0)==($1|0),u5){E=O1,I=l2;break}else r5=O1,x2=l2,I5=s2;if(Z1=(E|0)<=(p1|0),G1=(I|0)>(p1|0),h5=G1&Z1,h5){F2=a5;break}W1=(E|0)>(p1|0),W2=W1?-1:1,b5=W2+a5|0,a5=b5}if(K1=(p1|0)>0,!K1)return f=g1,f|0;for(P1=(o|0)==0,H1=t+8|0,q1=t+32|0,Y1=c1,j1=X,r2=t+28|0,R2=0,M1=0;;){if(P1)if(a2=e[q1>>2]|0,t2=e[r2>>2]|0,$2=(t2|0)==0,i2=i5($1,R2)|0,$2)for(m5=1,Z2=0;;)if(v5=(M1|0)/(m5|0)&-1,z2=(v5|0)%(F2|0)&-1,f5=a2+(z2<<2)|0,w5=e[f5>>2]|0,O5=+(w5|0),H2=+Ji(+O5),$5=H2,k2=$5*Y1,E5=j1+k2,S=E5,w=i2+Z2|0,y=g1+(w<<2)|0,s[y>>2]=S,D=i5(m5,F2)|0,Q=Z2+1|0,_=(Q|0)<($1|0),_)m5=D,Z2=Q;else{p5=21;break}else for(A5=1,c5=0,e5=0;;)if(F=(M1|0)/(A5|0)&-1,R=(F|0)%(F2|0)&-1,L=a2+(R<<2)|0,M=e[L>>2]|0,G=+(M|0),G5=+Ji(+G),N=G5,P=N*Y1,z=e5,Y=z+j1,t0=Y+P,J=t0,W=i2+c5|0,e0=g1+(W<<2)|0,s[e0>>2]=J,H=i5(A5,F2)|0,U=c5+1|0,o0=(U|0)<($1|0),o0)A5=H,c5=U,e5=J;else{p5=21;break}else if(d2=e[H1>>2]|0,A2=d2+M1|0,V1=u[A2>>0]|0,g2=V1<<24>>24==0,g2)m2=R2;else for(X1=e[q1>>2]|0,n2=e[r2>>2]|0,f2=(n2|0)==0,e2=o+(R2<<2)|0,y2=e[e2>>2]|0,S2=i5(y2,$1)|0,l5=1,o5=0,n5=0;;)if(w2=(M1|0)/(l5|0)&-1,C2=(w2|0)%(F2|0)&-1,M2=X1+(C2<<2)|0,_2=e[M2>>2]|0,u2=+(_2|0),D5=+Ji(+u2),K2=D5,N2=K2*Y1,q2=n5,T2=q2+j1,O2=T2+N2,V2=O2,B5=f2?n5:V2,s5=S2+o5|0,P2=g1+(s5<<2)|0,s[P2>>2]=V2,T1=i5(l5,F2)|0,R5=o5+1|0,X2=(R5|0)<($1|0),X2)l5=T1,o5=R5,n5=B5;else{p5=21;break}if((p5|0)==21&&(p5=0,Z=R2+1|0,m2=Z),V=M1+1|0,A0=(V|0)<(p1|0),A0)R2=m2,M1=V;else{f=g1;break}}return f|0}else if((B|0)==2){if(l1=t+4|0,s1=e[l1>>2]|0,a1=(s1|0)>0,!a1)return f=g1,f|0;for(A1=(o|0)!=0,z0=t+8|0,I1=t+32|0,h1=c1,E1=X,u1=t+28|0,d1=($1|0)>0,C5=0,k5=0;;){if(A1?(n0=e[z0>>2]|0,i0=n0+k5|0,r0=u[i0>>0]|0,K=r0<<24>>24==0,K?x5=C5:p5=25):p5=25,(p5|0)==25){if(p5=0,d1)for(c0=e[I1>>2]|0,l0=e[u1>>2]|0,j=(l0|0)==0,$0=o+(C5<<2)|0,g0=i5($1,k5)|0,f0=i5($1,C5)|0,c2=0,Y2=0;Q0=g0+c2|0,d0=c0+(Q0<<2)|0,y0=e[d0>>2]|0,h0=+(y0|0),S5=+Ji(+h0),E0=S5,u0=E0*h1,k0=Y2,J0=k0+E1,D0=J0+u0,B0=D0,g5=j?Y2:B0,A1?(x0=e[$0>>2]|0,F0=i5(x0,$1)|0,M0=F0+c2|0,G0=g1+(M0<<2)|0,s[G0>>2]=B0):(p0=f0+c2|0,R0=g1+(p0<<2)|0,s[R0>>2]=B0),S0=c2+1|0,L0=(S0|0)<($1|0),L0;)c2=S0,Y2=g5;Y0=C5+1|0,x5=Y0}if(H0=k5+1|0,N0=(H0|0)<(s1|0),N0)C5=x5,k5=H0;else{f=g1;break}}return f|0}else return f=g1,f|0;return 0}function oB(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0;v=m,n=t+36|0,o=e[n>>2]|0,a=(o|0)==0,!a&&(c=t+32|0,f=e[c>>2]|0,E=(f|0)==0,E||I2(f),I=t+8|0,C=e[I>>2]|0,p=(C|0)==0,p||I2(C),I2(t))}function PS(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0;F=m,n=t+16|0,o=e[n>>2]|0,C=(o|0)==0,C||I2(o),p=t+20|0,B=e[p>>2]|0,v=(B|0)==0,v||I2(B),S=t+24|0,w=e[S>>2]|0,y=(w|0)==0,y||I2(w),D=t+28|0,a=e[D>>2]|0,c=(a|0)==0,c||I2(a),f=t+32|0,E=e[f>>2]|0,I=(E|0)==0,I||I2(E),Q=t,R=Q+56|0;do e[Q>>2]=0,Q=Q+4|0;while((Q|0)<(R|0))}function IQ(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0;T0=m,N0=t,U0=N0+56|0;do e[N0>>2]=0,N0=N0+4|0;while((N0|0)<(U0|0));if(E=t+12|0,e[E>>2]=n,I=n+4|0,F=e[I>>2]|0,J=t+4|0,e[J>>2]=F,i0=t+8|0,e[i0>>2]=F,d0=e[n>>2]|0,e[t>>2]=d0,k0=n+8|0,J0=e[k0>>2]|0,D0=uQ(J0,F,0)|0,B0=t+20|0,e[B0>>2]=D0,C=e[I>>2]|0,p=e[n>>2]|0,B=(p|0)>0,!B)for(;;);for(v=+(C|0),S=v,w=+(p|0),y=1/w,D=y,Q=+Dh(+S,+D),_=+Yo(+Q),R=~~_,Y0=R;;){for(P=Y0+1|0,x0=1,F0=1,G0=0;;)if(G=i5(x0,Y0)|0,N=i5(F0,P)|0,z=G0+1|0,M0=(z|0)==(p|0),M0){c=G,f=N;break}else x0=G,F0=N,G0=z;if(L=(c|0)<=(C|0),M=(f|0)>(C|0),p0=M&L,p0){H0=Y0;break}T=(c|0)>(C|0),L0=T?-1:1,S0=L0+Y0|0,Y0=S0}return Y=t+44|0,e[Y>>2]=H0,t0=n+16|0,W=e[t0>>2]|0,e0=W&2097151,H=+(e0|0),X=W>>>21,U=X&1023,o0=(W|0)<0,Z=-H,o=o0?Z:H,V=U+-788|0,A0=+zC(o,V),n0=A0,P0=+pQ(n0),r0=~~P0,K=t+48|0,e[K>>2]=r0,c0=n+20|0,s0=e[c0>>2]|0,l0=s0&2097151,j=+(l0|0),$0=s0>>>21,g0=$0&1023,f0=(s0|0)<0,Q0=-j,a=f0?Q0:j,y0=g0+-788|0,h0=+zC(a,y0),E0=h0,R0=+pQ(E0),C0=~~R0,u0=t+52|0,e[u0>>2]=C0,0}function HS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,B6=0,z3=0,a6=0,p6=0,_6=0,Y6=0,m6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,A3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0;F3=m,y6=t,L6=y6+56|0;do e[y6>>2]=0,y6=y6+4|0;while((y6|0)<(L6|0));if(S=n+4|0,w=e[S>>2]|0,d2=(w|0)>0,d2)for(H2=n+8|0,B5=e[H2>>2]|0,O3=0,R6=0;;)if(p5=B5+O3|0,V5=u[p5>>0]|0,T3=V5<<24>>24>0,t6=T3&1,C=t6+R6|0,z5=O3+1|0,y=(z5|0)<(w|0),y)O3=z5,R6=C;else{$0=C;break}else $0=0;if(P=t+4|0,e[P>>2]=w,Z=t+8|0,e[Z>>2]=$0,J0=e[n>>2]|0,e[t>>2]=J0,L0=($0|0)>0,!L0)return a=0,m=F3,a|0;if(i1=n+8|0,I1=e[i1>>2]|0,k1=uQ(I1,w,$0)|0,H1=$0<<2,f=H1,A2=m,m=m+((1*f|0)+15&-16)|0,e2=(k1|0)==0,e2){O2=t+16|0,V2=e[O2>>2]|0,s5=(V2|0)==0,s5||I2(V2),P2=t+20|0,T1=e[P2>>2]|0,j2=(T1|0)==0,j2||I2(T1),R5=t+24|0,X2=e[R5>>2]|0,v5=(X2|0)==0,v5||I2(X2),f5=t+28|0,w5=e[f5>>2]|0,O5=(w5|0)==0,O5||I2(w5),$5=t+32|0,k2=e[$5>>2]|0,E5=(k2|0)==0,E5||I2(k2),y6=t,L6=y6+56|0;do e[y6>>2]=0,y6=y6+4|0;while((y6|0)<(L6|0));return a=-1,m=F3,a|0}else S3=0;for(;q2=k1+(S3<<2)|0,z2=e[q2>>2]|0,C5=z2>>>16,x5=z2<<16,u5=C5|x5,S5=u5>>>8,G5=S5&16711935,D5=u5<<8,I5=D5&-16711936,A5=G5|I5,l5=A5>>>4,m5=l5&252645135,M1=A5<<4,k5=M1&-252645136,c5=m5|k5,o5=c5>>>2,Z2=o5&858993459,c2=c5<<2,e5=c2&-858993460,n5=Z2|e5,g5=n5>>>1,Y2=g5&1431655765,h5=n5<<1,t5=h5&-1431655766,b5=Y2|t5,e[q2>>2]=b5,W2=A2+(S3<<2)|0,e[W2>>2]=q2,a5=S3+1|0,Y6=(a5|0)==($0|0),!Y6;)S3=a5;for(Fh(A2,$0,4,10),E=H1,F2=m,m=m+((1*E|0)+15&-16)|0,H5=k9(H1)|0,X5=t+20|0,e[X5>>2]=H5,d5=k1,P3=0;;)if(f3=A2+(P3<<2)|0,g3=e[f3>>2]|0,K5=g3,e3=K5-d5|0,s3=e3>>2,E3=F2+(s3<<2)|0,e[E3>>2]=P3,F5=P3+1|0,_6=(F5|0)==($0|0),_6){Y3=0;break}else P3=F5;for(;y3=k1+(Y3<<2)|0,h3=e[y3>>2]|0,m3=F2+(Y3<<2)|0,q3=e[m3>>2]|0,M3=H5+(q3<<2)|0,e[M3>>2]=h3,Z5=Y3+1|0,p6=(Z5|0)==($0|0),!p6;)Y3=Z5;if(I2(k1),Q3=OS(n,$0,F2)|0,j5=t+16|0,e[j5>>2]=Q3,j3=k9(H1)|0,_3=t+24|0,e[_3>>2]=j3,a3=e[S>>2]|0,$3=(a3|0)>0,$3)for(p=e[i1>>2]|0,S6=0,d6=0;;)if(l3=p+S6|0,C3=u[l3>>0]|0,q5=C3<<24>>24>0,q5?(N5=d6+1|0,P5=F2+(d6<<2)|0,y5=e[P5>>2]|0,G3=j3+(y5<<2)|0,e[G3>>2]=S6,J6=N5):J6=d6,L5=S6+1|0,t3=(L5|0)<(a3|0),t3)S6=L5,d6=J6;else{K6=J6;break}else K6=0;if(o3=k9(K6)|0,R3=t+28|0,e[R3>>2]=o3,f6=t+40|0,e[f6>>2]=0,$3){for(B=e[i1>>2]|0,r5=0,w3=B,i6=0,Z6=0;;)if(B3=w3+i6|0,p3=u[B3>>0]|0,X3=p3<<24>>24>0,X3?(V3=Z6+1|0,N3=F2+(Z6<<2)|0,k3=e[N3>>2]|0,c3=e[R3>>2]|0,U3=c3+k3|0,u[U3>>0]=p3,o6=e[i1>>2]|0,u3=o6+i6|0,w6=u[u3>>0]|0,k6=w6<<24>>24,v6=e[f6>>2]|0,B6=(k6|0)>(v6|0),B6?(e[f6>>2]=k6,x2=k6,R2=o6,G6=V3):(x2=v6,R2=o6,G6=V3)):(x2=r5,R2=w3,G6=Z6),z3=i6+1|0,D=e[S>>2]|0,Q=(z3|0)<(D|0),Q)r5=x2,w3=R2,i6=z3,Z6=G6;else{I=x2,j6=G6;break}if(_=(j6|0)==1,_){if(F=(I|0)==1,F)return R=t+36|0,e[R>>2]=1,L=i4(2,4)|0,M=t+32|0,e[M>>2]=L,T=L+4|0,e[T>>2]=1,e[L>>2]=1,a=0,m=F3,a|0;x3=1}else x3=j6}else x3=0;if(G=e[Z>>2]|0,N=(G|0)==0,N)x6=-4;else{for(c=G,N6=0;;)if(z=c>>>1,Y=N6+1|0,t0=(z|0)==0,t0){D6=N6;break}else c=z,N6=Y;r9=D6+-3|0,x6=r9}if(J=t+36|0,W=(x6|0)<5,o=W?5:x6,e0=(o|0)>8,V6=e0?8:o,e[J>>2]=V6,H=1<>2]=X,o0=(x3|0)>0,o0)for(r0=V6,i3=0;;){if(V=e[R3>>2]|0,A0=V+i3|0,n0=u[A0>>0]|0,i0=n0<<24>>24,K=(r0|0)<(i0|0),K)m2=r0;else if(c0=e[X5>>2]|0,s0=c0+(i3<<2)|0,l0=e[s0>>2]|0,j=l0>>>16,g0=l0<<16,f0=j|g0,Q0=f0>>>8,d0=Q0&16711935,y0=f0<<8,h0=y0&-16711936,E0=d0|h0,C0=E0>>>4,u0=C0&252645135,k0=E0<<4,D0=k0&-252645136,B0=u0|D0,x0=B0>>>2,F0=x0&858993459,M0=B0<<2,G0=M0&-858993460,p0=F0|G0,P0=p0>>>1,R0=P0&1431655765,S0=p0<<1,Y0=S0&-1431655766,H0=R0|Y0,N0=r0-i0|0,V0=(N0|0)==31,V0)m2=r0;else for(T0=i3+1|0,r1=i0,A3=0;;)if(U0=A3<>2]=T0,v0=A3+1|0,c1=e[J>>2]|0,$1=u[A0>>0]|0,f1=$1<<24>>24,g1=c1-f1|0,l1=1<>>16,p1=d1<<16,Q1=B1|p1,D1=Q1>>>8,_1=D1&16711935,y1=Q1<<8,x1=y1&-16711936,L1=_1|x1,N1=L1>>>4,w1=N1&252645135,U1=L1<<4,Z1=U1&-252645136,G1=w1|Z1,v1=G1>>>2,K1=v1&858993459,P1=G1<<2,q1=P1&-858993460,Y1=K1|q1,j1=Y1>>>1,r2=j1&1431655765,W1=Y1<<1,O1=W1&-1431655766,l2=r2|O1,z1=X+(l2<<2)|0,h2=e[z1>>2]|0,s2=(h2|0)==0,s2){for(I6=r6;;){if(V1=I6+1|0,g2=(V1|0)<(x3|0),!g2){D3=I6;break}if(a2=e[X5>>2]|0,t2=a2+(V1<<2)|0,$2=e[t2>>2]|0,i2=$2>>>0>d1>>>0,i2){D3=I6;break}else I6=V1}o2=(x3|0)>(m6|0);e:do if(o2)for(X1=e[X5>>2]|0,Z3=m6;;){if(n2=X1+(Z3<<2)|0,f2=e[n2>>2]|0,y2=f2&z0,S2=d1>>>0>>0,S2){v3=Z3;break e}if(w2=Z3+1|0,C2=(x3|0)>(w2|0),C2)Z3=w2;else{v3=w2;break}}else v3=m6;while(!1);M2=x3-v3|0,_2=D3>>>0>32767,G2=M2>>>0>32767,u6=G2?32767:M2,T6=D3<<15,e6=T6|-2147483648,u2=_2?-1073774592:e6,K2=u2|u6,e[z1>>2]=K2,W3=v3,Q6=D3}else W3=m6,Q6=r6;if(N2=P6+1|0,T2=(N2|0)<(H|0),!T2){a=0;break}v=e[J>>2]|0,u1=v,m6=W3,P6=N2,r6=Q6}return m=F3,a|0}function qS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0;return S=m,o=e[t>>2]|0,a=e[o>>2]|0,c=e[n>>2]|0,f=e[c>>2]|0,E=a>>>0>f>>>0,I=E&1,C=a>>>0>>0,p=C&1,B=I-p|0,B|0}function YS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0;if(J0=m,p=e[t>>2]|0,B=(p|0)==1,!B&&(M=t+4|0,H=e[M>>2]|0,i0=t+8|0,r0=e[i0>>2]|0,K=r0+4|0,c0=e[K>>2]|0,s0=(c0|0)>0,!!s0)){for(l0=c0+1|0,C=p+-1|0,f0=p,Q0=0,d0=p,h0=1;;){v=l0-Q0|0,S=r0+(v<<2)|0,w=e[S>>2]|0,y=(d0|0)/(w|0)&-1,D=(p|0)/(d0|0)&-1,Q=i5(D,y)|0,_=w+-1|0,F=i5(D,_)|0,R=f0-F|0,L=1-h0|0;do if((w|0)==2)if(Y=(L|0)==0,o=C+R|0,t0=H+(o<<2)|0,Y){mQ(D,y,n,H,t0),E0=0;break}else{mQ(D,y,H,n,t0),E0=L;break}else if((w|0)==4)if(T=R+D|0,G=(L|0)==0,a=C+R|0,N=H+(a<<2)|0,c=C+T|0,P=H+(c<<2)|0,f=C+D|0,E=f+T|0,z=H+(E<<2)|0,G){CQ(D,y,n,H,N,P,z),E0=0;break}else{CQ(D,y,H,n,N,P,z),E0=L;break}else if(J=(D|0)==1,y0=J?h0:L,W=(y0|0)==0,I=C+R|0,e0=H+(I<<2)|0,W){BQ(D,w,y,Q,n,n,n,H,H,e0),E0=1;break}else{BQ(D,w,y,Q,H,H,H,n,n,e0),E0=0;break}while(!1);if(X=Q0+1|0,$0=(X|0)==(c0|0),$0){C0=E0;break}else f0=R,Q0=X,d0=y,h0=E0}if(U=(C0|0)!=1,o0=(p|0)>0,u0=o0&U,u0)g0=0;else return;for(;Z=H+(g0<<2)|0,V=e[Z>>2]|0,A0=n+(g0<<2)|0,e[A0>>2]=V,n0=g0+1|0,j=(n0|0)==(p|0),!j;)g0=n0}}function dQ(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0;if(I1=m,e[t>>2]=n,E=n*3|0,I=i4(E,4)|0,F=t+4|0,e[F>>2]=I,J=i4(32,4)|0,i0=t+8|0,e[i0>>2]=J,d0=(n|0)==1,!d0){J0=J+8|0,O0=-1,$1=0,f1=n,l1=0;e:for(;;)for(D0=O0+1|0,B0=(D0|0)<4,B0?(x0=25768+(D0<<2)|0,C=e[x0>>2]|0,s1=C):(p=l1+2|0,s1=p),B=(s1|0)!=2,N0=$1,g1=f1;;){if(Y0=N0+1|0,v=(g1|0)/(s1|0)&-1,S=i5(v,s1)|0,w=(g1|0)==(S|0),!w){O0=D0,$1=N0,f1=g1,l1=s1;continue e}if(y=N0+2|0,D=J+(y<<2)|0,e[D>>2]=s1,Q=(N0|0)==0,a1=B|Q,!a1){if(_=(N0|0)<1,!_)for(R0=1;R=Y0-R0|0,L=R+1|0,M=J+(L<<2)|0,T=e[M>>2]|0,G=R+2|0,N=J+(G<<2)|0,e[N>>2]=T,P=R0+1|0,p0=(P|0)==(Y0|0),!p0;)R0=P;e[J0>>2]=2}if(z=(v|0)==1,z){o=Q,H0=Y0,V0=N0;break e}else N0=Y0,g1=v}if(e[J>>2]=n,Y=J+4|0,e[Y>>2]=H0,t0=+(n|0),W=6.2831854820251465/t0,a=o^1,e0=(V0|0)>0,n1=e0&a,!!n1)for(H=n+1|0,T0=0,v0=0,i1=1;;){if(X=v0+2|0,U=J+(X<<2)|0,o0=e[U>>2]|0,Z=i5(o0,i1)|0,V=(n|0)/(Z|0)&-1,A0=(o0|0)>1,A0){for(n0=(V|0)>2,r0=o0+-1|0,r1=T0,e1=0,c1=0;;){if(K=c1+i1|0,c0=+(K|0),s0=c0*W,n0)for(P0=0,S0=r1,L0=2;l0=P0+1,j=s0*l0,F0=+Jo(+j),c=S0+n|0,$0=I+(c<<2)|0,s[$0>>2]=F0,A1=+Fn(+j),g0=S0+2|0,f=H+S0|0,f0=I+(f<<2)|0,s[f0>>2]=A1,Q0=L0+2|0,y0=(Q0|0)<(V|0),y0;)P0=l0,S0=g0,L0=Q0;if(h0=r1+V|0,E0=e1+1|0,M0=(E0|0)==(r0|0),M0)break;r1=h0,e1=E0,c1=K}C0=i5(V,r0)|0,u0=C0+T0|0,U0=u0}else U0=T0;if(k0=v0+1|0,G0=(k0|0)==(V0|0),G0)break;T0=U0,v0=k0,i1=Z}}}function EQ(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0;p=m,n=(t|0)==0,!n&&(o=t+4|0,a=e[o>>2]|0,c=(a|0)==0,c||I2(a),f=t+8|0,E=e[f>>2]|0,I=(E|0)==0,I||I2(E),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0)}function CQ(t,n,o,a,c,f,E){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0;var I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0;if(f3=m,I=i5(n,t)|0,C=I<<1,E1=(n|0)>0,E1)for(L1=I*3|0,Y1=t<<2,V1=Y1+-1|0,y2=t<<1,c2=0,n5=I,h5=L1,W2=0,a5=C;T2=o+(n5<<2)|0,f5=+s[T2>>2],x5=o+(h5<<2)|0,p=+s[x5>>2],L=p+f5,e0=o+(W2<<2)|0,K=+s[e0>>2],h0=o+(a5<<2)|0,G0=+s[h0>>2],U0=G0+K,s1=U0+L,I1=W2<<2,h1=a+(I1<<2)|0,s[h1>>2]=s1,u1=U0-L,d1=V1+I1|0,B1=a+(d1<<2)|0,s[B1>>2]=u1,p1=+s[e0>>2],Q1=+s[h0>>2],D1=p1-Q1,_1=I1+y2|0,y1=_1+-1|0,k1=a+(y1<<2)|0,s[k1>>2]=D1,x1=+s[x5>>2],N1=+s[T2>>2],w1=x1-N1,U1=a+(_1<<2)|0,s[U1>>2]=w1,Z1=n5+t|0,G1=h5+t|0,v1=W2+t|0,K1=a5+t|0,P1=c2+1|0,c5=(P1|0)==(n|0),!c5;)c2=P1,n5=Z1,h5=G1,W2=v1,a5=K1;if(H1=(t|0)<2,!H1){if(q1=(t|0)==2,!q1){if(E1)for(j1=t<<1,B5=0,g5=0;;){for(j=g5<<2,$0=j+j1|0,Z2=2,t5=g5,F2=j,H5=$0;O1=t5+2|0,l2=F2+2|0,z1=H5+-2|0,h2=O1+I|0,s2=Z2+-2|0,d2=c+(s2<<2)|0,A2=+s[d2>>2],g2=h2+-1|0,a2=o+(g2<<2)|0,t2=+s[a2>>2],$2=t2*A2,i2=Z2+-1|0,o2=c+(i2<<2)|0,X1=+s[o2>>2],n2=o+(h2<<2)|0,f2=+s[n2>>2],e2=f2*X1,S2=e2+$2,w2=f2*A2,C2=X1*t2,M2=w2-C2,_2=h2+I|0,G2=f+(s2<<2)|0,u2=+s[G2>>2],K2=_2+-1|0,N2=o+(K2<<2)|0,q2=+s[N2>>2],O2=q2*u2,V2=f+(i2<<2)|0,s5=+s[V2>>2],P2=o+(_2<<2)|0,T1=+s[P2>>2],j2=T1*s5,R5=j2+O2,X2=T1*u2,v5=s5*q2,z2=X2-v5,w5=_2+I|0,O5=E+(s2<<2)|0,$5=+s[O5>>2],k2=w5+-1|0,E5=o+(k2<<2)|0,r5=+s[E5>>2],x2=r5*$5,R2=E+(i2<<2)|0,m2=+s[R2>>2],C5=o+(w5<<2)|0,u5=+s[C5>>2],S5=u5*m2,G5=S5+x2,D5=u5*$5,H2=m2*r5,I5=D5-H2,A5=G5+S2,l5=G5-S2,m5=I5+M2,M1=M2-I5,B=o+(O1<<2)|0,v=+s[B>>2],S=v+z2,w=v-z2,y=t5+1|0,D=o+(y<<2)|0,Q=+s[D>>2],_=Q+R5,F=Q-R5,R=A5+_,M=F2|1,T=a+(M<<2)|0,s[T>>2]=R,G=m5+S,N=a+(l2<<2)|0,s[N>>2]=G,P=F-M1,z=H5+-3|0,Y=a+(z<<2)|0,s[Y>>2]=P,t0=l5-w,J=a+(z1<<2)|0,s[J>>2]=t0,W=M1+F,H=l2+j1|0,X=H+-1|0,U=a+(X<<2)|0,s[U>>2]=W,o0=l5+w,Z=a+(H<<2)|0,s[Z>>2]=o0,V=_-A5,A0=z1+j1|0,n0=A0+-1|0,i0=a+(n0<<2)|0,s[i0>>2]=V,r0=m5-S,c0=a+(A0<<2)|0,s[c0>>2]=r0,s0=Z2+2|0,l0=(s0|0)<(t|0),l0;)Z2=s0,t5=O1,F2=l2,H5=z1;if(r2=g5+t|0,W1=B5+1|0,o5=(W1|0)==(n|0),o5)break;B5=W1,g5=r2}if(g0=t&1,f0=(g0|0)==0,!f0)return}if(Q0=t+-1|0,d0=Q0+I|0,y0=t<<2,E0=t<<1,!!E1)for(C0=d0+C|0,e5=0,Y2=d0,b5=C0,p5=t,X5=t;u0=o+(Y2<<2)|0,k0=+s[u0>>2],J0=o+(b5<<2)|0,D0=+s[J0>>2],B0=D0+k0,x0=B0*-.7071067690849304,F0=k0-D0,M0=F0*.7071067690849304,p0=X5+-1|0,P0=o+(p0<<2)|0,R0=+s[P0>>2],S0=M0+R0,L0=p5+-1|0,Y0=a+(L0<<2)|0,s[Y0>>2]=S0,H0=+s[P0>>2],N0=H0-M0,V0=p5+E0|0,T0=V0+-1|0,r1=a+(T0<<2)|0,s[r1>>2]=N0,O0=Y2+I|0,e1=o+(O0<<2)|0,v0=+s[e1>>2],i1=x0-v0,c1=a+(p5<<2)|0,s[c1>>2]=i1,$1=+s[e1>>2],f1=$1+x0,g1=a+(V0<<2)|0,s[g1>>2]=f1,l1=Y2+t|0,a1=b5+t|0,n1=p5+y0|0,A1=X5+t|0,z0=e5+1|0,k5=(z0|0)==(n|0),!k5;)e5=z0,Y2=l1,b5=a1,p5=n1,X5=A1}}function mQ(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0;if(w1=m,f=i5(n,t)|0,E=t<<1,_=(n|0)>0,_)for(t0=E+-1|0,I1=0,u1=0,p1=f;n0=o+(u1<<2)|0,Q0=+s[n0>>2],x0=o+(p1<<2)|0,N0=+s[x0>>2],f1=N0+Q0,s1=u1<<1,I=a+(s1<<2)|0,s[I>>2]=f1,C=+s[n0>>2],p=+s[x0>>2],B=C-p,v=t0+s1|0,S=a+(v<<2)|0,s[S>>2]=B,w=u1+t|0,y=p1+t|0,D=I1+1|0,n1=(D|0)==(n|0),!n1;)I1=D,u1=w,p1=y;if(Q=(t|0)<2,!Q){if(F=(t|0)==2,!F){if(_)for(h1=0,d1=0,Q1=f;;){for(P0=d1<<1,R0=P0+E|0,z0=2,_1=Q1,k1=R0,x1=d1,L1=P0;T=_1+2|0,G=k1+-2|0,N=x1+2|0,P=L1+2|0,z=z0+-2|0,Y=c+(z<<2)|0,J=+s[Y>>2],W=_1+1|0,e0=o+(W<<2)|0,H=+s[e0>>2],X=H*J,U=z0+-1|0,o0=c+(U<<2)|0,Z=+s[o0>>2],V=o+(T<<2)|0,A0=+s[V>>2],i0=A0*Z,r0=i0+X,K=A0*J,c0=Z*H,s0=K-c0,l0=o+(N<<2)|0,j=+s[l0>>2],$0=s0+j,g0=a+(P<<2)|0,s[g0>>2]=$0,f0=+s[l0>>2],d0=s0-f0,y0=a+(G<<2)|0,s[y0>>2]=d0,h0=x1+1|0,E0=o+(h0<<2)|0,C0=+s[E0>>2],u0=C0+r0,k0=L1|1,J0=a+(k0<<2)|0,s[J0>>2]=u0,D0=+s[E0>>2],B0=D0-r0,F0=k1+-3|0,M0=a+(F0<<2)|0,s[M0>>2]=B0,G0=z0+2|0,p0=(G0|0)<(t|0),p0;)z0=G0,_1=T,k1=G,x1=N,L1=P;if(R=d1+t|0,L=Q1+t|0,M=h1+1|0,A1=(M|0)==(n|0),A1)break;h1=M,d1=R,Q1=L}if(S0=(t|0)%2&-1,L0=(S0|0)==1,L0)return}if(Y0=t+-1|0,!!_)for(H0=f+Y0|0,E1=0,B1=t,D1=H0,y1=Y0;V0=o+(D1<<2)|0,T0=+s[V0>>2],U0=-T0,r1=a+(B1<<2)|0,s[r1>>2]=U0,O0=o+(y1<<2)|0,e1=e[O0>>2]|0,v0=B1+-1|0,i1=a+(v0<<2)|0,e[i1>>2]=e1,c1=B1+E|0,$1=D1+t|0,g1=y1+t|0,l1=E1+1|0,a1=(l1|0)==(n|0),!a1;)E1=l1,B1=c1,D1=$1,y1=g1}}function BQ(t,n,o,a,c,f,E,I,C,p){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0,I=I|0,C=C|0,p=p|0;var B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,B6=0,z3=0,a6=0,p6=0,_6=0,Y6=0,m6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,A3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,s4=0,p9=0,S4=0,D4=0,x4=0,T4=0,W4=0,C4=0,G4=0,N9=0,N4=0,A4=0,F4=0,g4=0,ue=0,P9=0,d9=0,Ie=0,Le=0,ze=0,U4=0,Me=0,O4=0,j4=0,we=0,Ze=0,z9=0,Ae=0,h4=0,b6=0,P4=0,R9=0,o4=0,b4=0,oe=0,Z9=0,ae=0,$e=0,m4=0,X4=0,L4=0,le=0,E9=0,$6=0,Te=0,a4=0,de=0,B4=0,$4=0,U6=0,ke=0,ve=0,We=0,l4=0,w4=0,g8=0,H3=0,Q9=0,C9=0,M4=0,ee=0,a7=0,Se=0,$7=0,Q7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,y7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ge=0,De=0,je=0,k8=0,y9=0,g7=0,Ee=0,h7=0,w7=0,j8=0,k7=0,te=0,X8=0,P8=0,v8=0,Xe=0,H4=0,be=0,e8=0,u8=0,S8=0,ce=0,W9=0,t8=0,I8=0,i8=0,d8=0,ge=0,Ce=0,Ne=0,Ue=0,j9=0,_e=0,he=0,r8=0,me=0,p4=0,E8=0,e7=0,q4=0,I3=0,Oe=0,C8=0,ie=0,H9=0,re=0,S9=0,Pe=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,s8=0,D8=0,Y4=0,n7=0,b8=0,He=0,m9=0,s7=0,qe=0,M7=0,P7=0,v7=0,A7=0,S7=0,ne=0,T7=0,H7=0,A8=0,_8=0,D7=0,J8=0,Re=0,fe=0,X9=0,b7=0,tt=0,Mt=0,Tt=0,Gt=0,gt=0,q7=0,ht=0,Y7=0,ft=0,J7=0,ut=0,it=0,ii=0,Nt=0,It=0,dt=0,ri=0,Et=0,rt=0,ni=0,Ut=0,Ot=0,Pt=0,Ht=0,nt=0,Ct=0,qt=0,K7=0,st=0,G7=0,V7=0,si=0,Yt=0,Ai=0,mt=0,Jt=0,Bt=0,pt=0,Kt=0,Qt=0,z7=0,yt=0,Vt=0,At=0,N7=0,wt=0,Be=0,kt=0,_7=0,ot=0,i9=0,u7=0,m8=0;m8=m,S=+(n|0),w=6.2831854820251465/S,h8=+Jo(+w),M7=+Fn(+w),d2=n+1|0,B3=d2>>1,N9=t+-1|0,U4=N9>>1,R9=i5(o,t)|0,E9=i5(n,t)|0,l4=(t|0)==1;e:do if(!l4){if(Q7=(a|0)>0,Q7)for(me=0;$0=E+(me<<2)|0,J0=e[$0>>2]|0,L0=C+(me<<2)|0,e[L0>>2]=J0,i1=me+1|0,I8=(i1|0)==(a|0),!I8;)me=i1;if(P=(n|0)>1,P)for(Z=(o|0)>0,C8=1,P7=0;;){if(I1=P7+R9|0,Z)for(r7=0,X9=I1;k1=f+(X9<<2)|0,H1=e[k1>>2]|0,A2=I+(X9<<2)|0,e[A2>>2]=H1,e2=X9+t|0,q2=r7+1|0,W9=(q2|0)==(o|0),!W9;)r7=q2,X9=e2;if(z2=C8+1|0,t8=(z2|0)==(n|0),t8)break;C8=z2,P7=I1}if(C5=0-t|0,M1=(U4|0)>(o|0),M1){if(P)for(M3=(o|0)>0,q5=(t|0)>2,I3=C5,H9=1,S7=0;;){if(w3=S7+R9|0,w6=I3+t|0,M3)for(Z3=w3-t|0,A3=w6+-1|0,n8=0,b7=Z3;;){if(x3=b7+t|0,q5)for(i8=2,he=A3,ft=x3;F3=he+2|0,E6=ft+2|0,I9=he+1|0,W4=p+(I9<<2)|0,G4=+s[W4>>2],N4=ft+1|0,A4=f+(N4<<2)|0,F4=+s[A4>>2],g4=F4*G4,ue=p+(F3<<2)|0,P9=+s[ue>>2],d9=f+(E6<<2)|0,Ie=+s[d9>>2],Le=Ie*P9,ze=Le+g4,Me=I+(N4<<2)|0,s[Me>>2]=ze,O4=+s[W4>>2],j4=+s[d9>>2],we=j4*O4,Ze=+s[ue>>2],z9=+s[A4>>2],Ae=z9*Ze,h4=we-Ae,b6=I+(E6<<2)|0,s[b6>>2]=h4,P4=i8+2|0,o4=(P4|0)<(t|0),o4;)i8=P4,he=F3,ft=E6;if(b4=n8+1|0,e8=(b4|0)==(o|0),e8)break;n8=b4,b7=x3}if(oe=H9+1|0,u8=(oe|0)==(n|0),u8)break;I3=w6,H9=oe,S7=w3}}else if(P)for(h5=(t|0)>2,g3=(o|0)>0,Oe=C5,re=1,T7=0;;){if(Z9=Oe+t|0,ae=T7+R9|0,h5)for($e=Z9+-1|0,d8=2,r8=$e,tt=ae;;){if(m4=r8+2|0,X4=tt+2|0,g3)for(L4=r8+1|0,le=p+(L4<<2)|0,$6=p+(m4<<2)|0,s8=0,J7=X4;Te=+s[le>>2],a4=J7+-1|0,de=f+(a4<<2)|0,B4=+s[de>>2],$4=B4*Te,U6=+s[$6>>2],ke=f+(J7<<2)|0,ve=+s[ke>>2],We=ve*U6,w4=We+$4,g8=I+(a4<<2)|0,s[g8>>2]=w4,H3=+s[le>>2],Q9=+s[ke>>2],C9=Q9*H3,M4=+s[$6>>2],ee=+s[de>>2],a7=ee*M4,Se=C9-a7,$7=I+(J7<<2)|0,s[$7>>2]=Se,K8=J7+t|0,l7=s8+1|0,S8=(l7|0)==(o|0),!S8;)s8=l7,J7=K8;if(c7=d8+2|0,x8=(c7|0)<(t|0),x8)d8=c7,r8=m4,tt=X4;else break}if(F8=re+1|0,ce=(F8|0)==(n|0),ce)break;Oe=Z9,re=F8,T7=ae}if(L8=i5(R9,n)|0,M8=(U4|0)<(o|0),V8=(B3|0)>1,!M8){if(!V8)break;for(z8=(o|0)>0,y7=(t|0)>2,Pe=1,A8=0,Tt=L8;;){if(E0=A8+R9|0,C0=Tt-R9|0,z8)for(Y4=0,it=E0,rt=C0;;){if(y7)for(Ce=2,K7=it,mt=rt;u0=K7+2|0,k0=mt+2|0,D0=K7+1|0,B0=I+(D0<<2)|0,x0=+s[B0>>2],F0=mt+1|0,M0=I+(F0<<2)|0,G0=+s[M0>>2],p0=G0+x0,P0=f+(D0<<2)|0,s[P0>>2]=p0,R0=I+(u0<<2)|0,S0=+s[R0>>2],Y0=I+(k0<<2)|0,H0=+s[Y0>>2],N0=S0-H0,V0=f+(F0<<2)|0,s[V0>>2]=N0,T0=+s[R0>>2],U0=+s[Y0>>2],r1=U0+T0,O0=f+(u0<<2)|0,s[O0>>2]=r1,e1=+s[M0>>2],v0=+s[B0>>2],c1=e1-v0,$1=f+(k0<<2)|0,s[$1>>2]=c1,f1=Ce+2|0,g1=(f1|0)<(t|0),g1;)Ce=f1,K7=u0,mt=k0;if(l1=it+t|0,s1=rt+t|0,a1=Y4+1|0,H4=(a1|0)==(o|0),H4)break;Y4=a1,it=l1,rt=s1}if(n1=Pe+1|0,be=(n1|0)==(B3|0),be)break e;Pe=n1,A8=E0,Tt=C0}}if(V8)for(D=(t|0)>2,Q=(o|0)>0,S9=1,H7=0,Mt=L8;;){if(_=H7+R9|0,F=Mt-R9|0,D)for(ge=2,ut=_,Et=F;;){if(R=ut+2|0,L=Et+2|0,Q)for(M=L-t|0,T=R-t|0,D8=0,qt=T,Ai=M;G=qt+t|0,N=Ai+t|0,z=G+-1|0,Y=I+(z<<2)|0,t0=+s[Y>>2],J=N+-1|0,W=I+(J<<2)|0,e0=+s[W>>2],H=e0+t0,X=f+(z<<2)|0,s[X>>2]=H,U=I+(G<<2)|0,o0=+s[U>>2],V=I+(N<<2)|0,A0=+s[V>>2],n0=o0-A0,i0=f+(J<<2)|0,s[i0>>2]=n0,r0=+s[U>>2],K=+s[V>>2],c0=K+r0,s0=f+(G<<2)|0,s[s0>>2]=c0,l0=+s[W>>2],j=+s[Y>>2],g0=l0-j,f0=f+(N<<2)|0,s[f0>>2]=g0,Q0=D8+1|0,v8=(Q0|0)==(o|0),!v8;)D8=Q0,qt=G,Ai=N;if(d0=ge+2|0,y0=(d0|0)<(t|0),y0)ge=d0,ut=R,Et=L;else break}if(h0=S9+1|0,Xe=(h0|0)==(B3|0),Xe)break;S9=h0,H7=_,Mt=F}}while(!1);if(y=(a|0)>0,y)for(p4=0;A1=C+(p4<<2)|0,z0=e[A1>>2]|0,h1=E+(p4<<2)|0,e[h1>>2]=z0,E1=p4+1|0,P8=(E1|0)==(a|0),!P8;)p4=E1;if(u1=i5(a,n)|0,d1=(B3|0)>1,d1){for(B1=(o|0)>0,H8=1,_8=0,Gt=u1;;){if(p1=_8+R9|0,Q1=Gt-R9|0,B1)for(D1=Q1-t|0,_1=p1-t|0,n7=0,ii=_1,ni=D1;y1=ii+t|0,x1=ni+t|0,L1=I+(y1<<2)|0,N1=+s[L1>>2],w1=I+(x1<<2)|0,U1=+s[w1>>2],Z1=U1+N1,G1=f+(y1<<2)|0,s[G1>>2]=Z1,v1=+s[w1>>2],K1=+s[L1>>2],P1=v1-K1,q1=f+(x1<<2)|0,s[q1>>2]=P1,Y1=n7+1|0,te=(Y1|0)==(o|0),!te;)n7=Y1,ii=y1,ni=x1;if(j1=H8+1|0,X8=(j1|0)==(B3|0),X8)break;H8=j1,_8=p1,Gt=Q1}if(r2=n+-1|0,W1=i5(r2,a)|0,d1){for(O1=(B3|0)>2,T8=0,N8=1,qe=1,D7=0,gt=u1;;){if(l2=D7+a|0,z1=gt-a|0,h2=N8*h8,s2=T8*M7,V1=h2-s2,g2=T8*h8,a2=N8*M7,t2=a2+g2,y)for(E8=0,Ut=l2,st=z1,Jt=W1,z7=a;$2=E+(E8<<2)|0,i2=+s[$2>>2],o2=z7+1|0,X1=E+(z7<<2)|0,n2=+s[X1>>2],f2=n2*V1,y2=f2+i2,S2=Ut+1|0,w2=C+(Ut<<2)|0,s[w2>>2]=y2,C2=Jt+1|0,M2=E+(Jt<<2)|0,_2=+s[M2>>2],G2=_2*t2,u2=st+1|0,K2=C+(st<<2)|0,s[K2>>2]=G2,N2=E8+1|0,h7=(N2|0)==(a|0),!h7;)E8=N2,Ut=S2,st=u2,Jt=C2,z7=o2;if(O1)for(G8=t2,y8=V1,f7=2,Ot=a,G7=W1;;){if(T2=Ot+a|0,O2=G7-a|0,V2=y8*V1,s5=G8*t2,P2=V2-s5,T1=G8*V1,j2=y8*t2,R5=j2+T1,y)for(e7=0,Bt=l2,yt=z1,wt=T2,_7=O2;X2=wt+1|0,v5=E+(wt<<2)|0,f5=+s[v5>>2],w5=f5*P2,O5=Bt+1|0,$5=C+(Bt<<2)|0,k2=+s[$5>>2],E5=k2+w5,s[$5>>2]=E5,r5=_7+1|0,x2=E+(_7<<2)|0,R2=+s[x2>>2],m2=R2*R5,x5=yt+1|0,u5=C+(yt<<2)|0,S5=+s[u5>>2],G5=S5+m2,s[u5>>2]=G5,D5=e7+1|0,w7=(D5|0)==(a|0),!w7;)e7=D5,Bt=O5,yt=x5,wt=X2,_7=r5;if(H2=f7+1|0,j8=(H2|0)==(B3|0),j8)break;G8=R5,y8=P2,f7=H2,Ot=T2,G7=O2}if(I5=qe+1|0,k7=(I5|0)==(B3|0),k7)break;T8=t2,N8=V1,qe=I5,D7=l2,gt=z1}if(d1)for(t7=1,J8=0;;){if(A5=J8+a|0,y)for(q4=0,q7=A5;l5=q7+1|0,m5=E+(q7<<2)|0,k5=+s[m5>>2],c5=C+(q4<<2)|0,o5=+s[c5>>2],Z2=o5+k5,s[c5>>2]=Z2,c2=q4+1|0,g7=(c2|0)==(a|0),!g7;)q4=c2,q7=l5;if(B5=t7+1|0,Ee=(B5|0)==(B3|0),Ee)break;t7=B5,J8=A5}}}if(e5=(t|0)<(o|0),e5){if(Y2=(t|0)>0,Y2)for(t5=(o|0)>0,Ue=0;;){if(t5)for(He=0,fe=Ue,Y7=Ue;K5=I+(fe<<2)|0,e3=e[K5>>2]|0,s3=c+(Y7<<2)|0,e[s3>>2]=e3,E3=fe+t|0,F5=Y7+E9|0,V5=He+1|0,De=(V5|0)==(o|0),!De;)He=V5,fe=E3,Y7=F5;if(y3=Ue+1|0,je=(y3|0)==(t|0),je)break;Ue=y3}}else if(n5=(o|0)>0,n5)for(g5=(t|0)>0,b8=0,Re=0,ht=0;;){if(g5)for(Ne=0,Nt=Re,Pt=ht;b5=Nt+1|0,W2=I+(Nt<<2)|0,a5=e[W2>>2]|0,F2=Pt+1|0,p5=c+(Pt<<2)|0,e[p5>>2]=a5,H5=Ne+1|0,k8=(H5|0)==(t|0),!k8;)Ne=H5,Nt=b5,Pt=F2;if(X5=Re+t|0,d5=ht+E9|0,f3=b8+1|0,y9=(f3|0)==(o|0),y9)break;b8=f3,Re=X5,ht=d5}if(h3=t<<1,m3=i5(R9,n)|0,d1)for(q3=(o|0)>0,i7=1,v7=0,It=0,Ht=m3;;){if(Z5=v7+h3|0,Q3=It+R9|0,j5=Ht-R9|0,q3)for(m9=0,V7=Z5,pt=Q3,Vt=j5;j3=I+(pt<<2)|0,_3=e[j3>>2]|0,T3=V7+-1|0,a3=c+(T3<<2)|0,e[a3>>2]=_3,$3=I+(Vt<<2)|0,l3=e[$3>>2]|0,C3=c+(V7<<2)|0,e[C3>>2]=l3,N5=V7+E9|0,P5=pt+t|0,y5=Vt+t|0,G3=m9+1|0,f8=(G3|0)==(o|0),!f8;)m9=G3,V7=N5,pt=P5,Vt=y5;if(L5=i7+1|0,Ge=(L5|0)==(B3|0),Ge)break;i7=L5,v7=Z5,It=Q3,Ht=j5}if(!l4){if(t6=(U4|0)<(o|0),t3=0-t|0,!t6){if(!d1)return;for(B=(o|0)<1,v=(t|0)<3,w8=B|v,q8=1,A7=t3,dt=0,nt=0,si=m3;;){if(f6=A7+h3|0,p3=dt+h3|0,X3=nt+R9|0,V3=si-R9|0,!w8)for(s7=0,Kt=f6,At=p3,Be=X3,ot=V3;;){for(j9=2;o6=t-j9|0,u3=j9+Be|0,k6=u3+-1|0,v6=I+(k6<<2)|0,B6=+s[v6>>2],z3=j9+ot|0,a6=z3+-1|0,p6=I+(a6<<2)|0,_6=+s[p6>>2],Y6=_6+B6,m6=j9+At|0,v3=m6+-1|0,W3=c+(v3<<2)|0,s[W3>>2]=Y6,u6=+s[v6>>2],O3=+s[p6>>2],S3=u6-O3,P3=o6+Kt|0,Y3=P3+-1|0,S6=c+(Y3<<2)|0,s[S6>>2]=S3,i6=I+(u3<<2)|0,i3=+s[i6>>2],P6=I+(z3<<2)|0,r6=+s[P6>>2],I6=r6+i3,D3=c+(m6<<2)|0,s[D3>>2]=I6,T6=+s[P6>>2],e6=+s[i6>>2],Q6=T6-e6,R6=c+(P3<<2)|0,s[R6>>2]=Q6,K6=j9+2|0,d6=(K6|0)<(t|0),d6;)j9=K6;if(N3=Kt+E9|0,z5=At+E9|0,k3=Be+t|0,c3=ot+t|0,U3=s7+1|0,Z8=(U3|0)==(o|0),Z8)break;s7=U3,Kt=N3,At=z5,Be=k3,ot=c3}if(J6=q8+1|0,W8=(J6|0)==(B3|0),W8)break;q8=J6,A7=f6,dt=p3,nt=X3,si=V3}return}if(d1)for(o3=(t|0)>2,R3=(o|0)>0,ie=1,ne=t3,ri=0,Ct=0,Yt=m3;;){if(Z6=ne+h3|0,G6=ri+h3|0,j6=Ct+R9|0,r9=Yt-R9|0,o3&&(x6=Z6+t|0,R3))for(_e=2;;){for(S4=_e+r9|0,D4=_e+j6|0,x4=_e+G6|0,T4=x6-_e|0,Y8=0,Qt=T4,N7=x4,kt=D4,i9=S4;V6=kt+-1|0,y6=I+(V6<<2)|0,F6=+s[y6>>2],L6=i9+-1|0,X6=I+(L6<<2)|0,s9=+s[X6>>2],W6=s9+F6,g9=N7+-1|0,h9=c+(g9<<2)|0,s[h9>>2]=W6,f9=+s[y6>>2],A9=+s[X6>>2],o9=f9-A9,M9=Qt+-1|0,M6=c+(M9<<2)|0,s[M6>>2]=o9,e9=I+(kt<<2)|0,T9=+s[e9>>2],u9=I+(i9<<2)|0,d4=+s[u9>>2],n4=d4+T9,c4=c+(N7<<2)|0,s[c4>>2]=n4,G9=+s[u9>>2],V9=+s[e9>>2],v9=G9-V9,H6=c+(Qt<<2)|0,s[H6>>2]=v9,t9=Qt+E9|0,E4=N7+E9|0,v4=kt+t|0,s4=i9+t|0,p9=Y8+1|0,U8=(p9|0)==(o|0),!U8;)Y8=p9,Qt=t9,N7=E4,kt=v4,i9=s4;if(N6=_e+2|0,D6=(N6|0)<(t|0),D6)_e=N6;else break}if(C4=ie+1|0,O8=(C4|0)==(B3|0),O8)break;ie=C4,ne=Z6,ri=G6,Ct=j6,Yt=r9}}}function JS(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,B6=0,z3=0,a6=0,p6=0,_6=0,Y6=0,m6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,A3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,s4=0,p9=0,S4=0,D4=0,x4=0,T4=0,W4=0,C4=0,G4=0,N9=0,N4=0,A4=0,F4=0,g4=0,ue=0,P9=0,d9=0,Ie=0,Le=0,ze=0,U4=0,Me=0,O4=0,j4=0,we=0,Ze=0,z9=0,Ae=0,h4=0,b6=0,P4=0,R9=0,o4=0,b4=0,oe=0,Z9=0,ae=0,$e=0,m4=0,X4=0,L4=0,le=0,E9=0,$6=0,Te=0,a4=0,de=0,B4=0,$4=0,U6=0,ke=0,ve=0,We=0,l4=0,w4=0,g8=0,H3=0,Q9=0,C9=0,M4=0,ee=0,a7=0,Se=0,$7=0,Q7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,y7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ge=0,De=0,je=0,k8=0,y9=0,g7=0,Ee=0,h7=0,w7=0,j8=0,k7=0,te=0,X8=0,P8=0,v8=0,Xe=0,H4=0,be=0,e8=0,u8=0,S8=0,ce=0,W9=0,t8=0,I8=0,i8=0,d8=0,ge=0,Ce=0,Ne=0,Ue=0,j9=0,_e=0,he=0,r8=0,me=0,p4=0,E8=0,e7=0,q4=0,I3=0,Oe=0,C8=0,ie=0,H9=0,re=0,S9=0,Pe=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,s8=0,D8=0,Y4=0,n7=0,b8=0,He=0,m9=0,s7=0,qe=0,M7=0,P7=0,v7=0,A7=0,S7=0,ne=0,T7=0,H7=0,A8=0,_8=0,D7=0,J8=0,Re=0,fe=0,X9=0,b7=0,tt=0,Mt=0,Tt=0,Gt=0,gt=0,q7=0,ht=0,Y7=0,ft=0,J7=0,ut=0,it=0,ii=0,Nt=0,It=0,dt=0,ri=0,Et=0,rt=0,ni=0,Ut=0,Ot=0,Pt=0,Ht=0,nt=0,Ct=0,qt=0,K7=0,st=0,G7=0,V7=0,si=0,Yt=0,Ai=0,mt=0,Jt=0,Bt=0,pt=0,Kt=0,Qt=0,z7=0,yt=0,Vt=0,At=0,N7=0,wt=0,Be=0,kt=0,_7=0,ot=0,i9=0,u7=0,m8=0,I7=0,R7=0,Pr=0,fr=0,zs=0,Mn=0,Zs=0,Tn=0,Ws=0,js=0,Gn=0,Xs=0,Hr=0,eA=0,tA=0,iA=0,Nn=0,rA=0,Un=0,On=0,nA=0,qr=0,Pn=0,Yr=0,Hn=0,qn=0,sA=0,AA=0,oA=0,Jr=0,Yn=0,aA=0,ur=0,Kr=0,$A=0,lA=0,Vr=0,oi=0,Jn=0,cA=0,gA=0,Kn=0,Vn=0,zn=0,hA=0,ai=0,zr=0,fA=0,Zn=0,uA=0,IA=0,dA=0,Wn=0,EA=0,CA=0,mA=0,BA=0,jn=0,pA=0,QA=0,Zr=0,Ir=0,Wr=0,yA=0,Vi=0,wA=0,Xn=0,jr=0,es=0,Xr=0,kA=0,ts=0,is=0,vA=0,rs=0,ns=0,SA=0,dr=0,ss=0,$i=0,en=0,Er=0,zi=0,Cr=0,Ui=0,mr=0,As=0,Oi=0,mi=0,Bi=0,zt=0,pi=0,Br=0,Zi=0,Wi=0,pr=0,li=0,DA=0,at=0,j$=0,tn=0,rn=0,Lh=0,X$=0,bA=0,Mh=0,zo=0,el=0,Th=0,Gh=0,Nh=0,Zo=0,tl=0,il=0,Wo=0,nn=0,rl=0,Uh=0,_A=0,ji=0,Oh=0,Ph=0,Hh=0,qh=0,Yh=0,Jh=0,Kh=0,Vh=0,zh=0,Zh=0,nl=0,Qr=0,Wh=0,jh=0,sl=0,Xh=0,jo=0,RA=0,Xo=0,ef=0,tf=0,ea=0,Al=0,ol=0,al=0,ta=0,$l=0,xA=0,rf=0,nf=0,ll=0,sf=0,Af=0,cl=0,of=0,af=0,gl=0,hl=0,fl=0,ul=0,Il=0,sn=0,$f=0,dl=0,lf=0,El=0,Cl=0,cf=0,gf=0,hf=0,ia=0,ml=0,Bl=0,os=0,pl=0,ra=0,ff=0,Ql=0,uf=0,yl=0,If=0,df=0,wl=0,kl=0,Ef=0,FA=0,Cf=0,na=0,vl=0,Sl=0,mf=0,Bf=0,pf=0,Qf=0,yf=0,wf=0,LA=0,Dl=0,bl=0,_l=0,MA=0,kf=0,Rl=0,vf=0,xl=0,Sf=0,Df=0,Fl=0,sa=0,bf=0,_f=0,TA=0,Rf=0,GA=0,xf=0,Aa=0,Ff=0,Lf=0,Mf=0,Ll=0,Tf=0,Gf=0,Nf=0,Uf=0,Ml=0,Tl=0,Xi=0,Gl=0,NA=0,oa=0,aa=0,An=0,Nl=0,on=0,Of=0,Ul=0,Pf=0,Hf=0,qf=0,Yf=0,UA=0,$a=0,yr=0,Jf=0,Kf=0,Ol=0,la=0,Pl=0,Hl=0,Vf=0,ql=0,zf=0,ca=0,Zf=0,Wf=0,U9=0,jf=0,Yl=0,Xf=0,eu=0,ga=0,tu=0,ha=0,Jl=0,iu=0,ru=0,Kl=0,Vl=0,nu=0,fa=0,ua=0,zl=0,Zl=0,su=0,Wl=0,Ia=0,Au=0,jl=0,ou=0,au=0,$u=0,lu=0,Xl=0,ec=0,da=0,OA=0,tc=0,cu=0,ic=0,rc=0,gu=0,hu=0,fu=0,nc=0,uu=0,Iu=0,du=0,Eu=0,Cu=0,mu=0,sc=0,Bu=0,Ac=0,pu=0,an=0,Qu=0,oc=0,yu=0,as=0,ac=0,Ea=0,wu=0,PA=0,Ca=0,ku=0,ma=0,$c=0,vu=0,Su=0,Du=0,bu=0,_u=0,lc=0,Ru=0,xu=0,Fu=0,HA=0,$s=0,Ba=0,Lu=0,pa=0,Mu=0,Tu=0,Gu=0,cc=0,Nu=0,Uu=0,Ou=0,Pu=0,Hu=0,qA=0,qu=0,Yu=0,gc=0,Ju=0,Ku=0,Vu=0,zu=0,ci=0,hc=0,gi=0,fc=0,Qa=0,Zu=0,Zt=0,ls=0,Wu=0,ju=0,Xu=0,eI=0,tI=0,uc=0,iI=0,rI=0,Ic=0,nI=0,sI=0,cs=0,ya=0,AI=0,dc=0,oI=0,aI=0,YA=0,$I=0,lI=0,Ec=0,Cc=0,cI=0,gI=0,$n=0,hI=0,fI=0,ln=0,uI=0,mc=0,II=0,dI=0,gs=0,Bc=0,EI=0,pc=0,CI=0,er=0,wa=0,mI=0,Qc=0,yc=0,BI=0,pI=0,wc=0,QI=0,yI=0,wI=0,kc=0,kI=0,hs=0,vI=0,cn=0,SI=0,DI=0,ka=0,bI=0,va=0,Sa=0,_I=0,vc=0,Sc=0,RI=0,Dc=0,bc=0,_c=0,xI=0,Rc=0,xc=0,FI=0,LI=0,Fc=0,Lc=0,MI=0,Mc=0,Tc=0,TI=0,GI=0,Gc=0,Da=0,Nc=0,Uc=0,Oc=0,Pc=0,NI=0,UI=0,OI=0,PI=0,HI=0,qI=0,YI=0,JI=0,Hc=0,ba=0,KI=0,VI=0,zI=0,qc=0,Yc=0,ZI=0,Jc=0,_a=0,JA=0,Kc=0,WI=0,jI=0,XI=0,ed=0,Vc=0,KA=0,td=0,id=0,rd=0,nd=0,sd=0,Ad=0,od=0,ad=0,zc=0,$d=0,ld=0,cd=0,gd=0,VA=0,Zc=0,hd=0,fd=0,gn=0,Wc=0,jc=0,Ra=0,ud=0,Xc=0,Id=0,eg=0,tg=0,dd=0,Ed=0,Cd=0,md=0,Bd=0,zA=0,xa=0,pd=0,Qd=0,yd=0,wd=0,ig=0,kd=0,rg=0,vd=0,Sd=0,ng=0,wr=0,sg=0,Ag=0,Dd=0,og=0,ZA=0,bd=0,_d=0,Rd=0,WA=0,ag=0,xd=0,Fd=0,$g=0,Ld=0,Md=0,Fa=0,jA=0,Td=0,Gd=0,Nd=0,lg=0,cg=0,gg=0,Ud=0,Od=0,fs=0,Pd=0,hg=0,Hd=0,La=0,fg=0,qd=0,Yd=0,Jd=0,Kd=0,ug=0,Vd=0,zd=0,Ig=0,XA=0,Zd=0,Wd=0,jd=0,us=0,dg=0,Eg=0,Xd=0,Cg=0,mg=0,Qi=0,Bg=0,tr=0,eE=0,tE=0,iE=0,rE=0,Ma=0,eo=0,pg=0,Qg=0,nE=0,to=0,Is=0,sE=0,io=0,Ta=0,AE=0,Ga=0,oE=0,aE=0,yg=0,ro=0,wg=0,$E=0,lE=0,cE=0,gE=0,kg=0,hE=0,Z7=0,Q4=0,Wt=0,fE=0,vg=0,Sg=0,Na=0,uE=0,kr=0,ds=0,IE=0,dE=0,Dg=0,Ua=0,EE=0,bg=0,_g=0,Rg=0,Oa=0,Pa=0,xg=0,Es=0,Ha=0,Fg=0,CE=0,hn=0,mE=0,Lg=0,no=0,BE=0,Mg=0,yi=0,pE=0,QE=0,yE=0,wE=0,kE=0,vE=0,wi=0,SE=0,DE=0,bE=0,Tg=0,hi=0,so=0,qa=0,Gg=0,Ng=0,_E=0,Ug=0,Og=0,RE=0,xE=0,Pg=0,Hg=0,FE=0,LE=0,qg=0,ME=0,Cs=0,Ao=0,oo=0,TE=0,Ya=0,GE=0,NE=0,Yg=0,ms=0,UE=0,OE=0,Ja=0,Ka=0,ao=0,Va=0,za=0,ir=0,vr=0,Sr=0,Za=0,Wa=0,Bs=0,rr=0,fn=0,PE=0,nr=0,un=0,HE=0,vt=0,St=0,Dt=0,$o=0,lo=0,Jg=0,Kg=0,co=0,ja=0,bt=0,go=0,Dr=0,Xa=0,qE=0,e$=0,YE=0,t$=0,Vg=0,ho=0,JE=0,KE=0,fo=0,VE=0,uo=0,In=0,Ye=0,k4=0,zg=0,zE=0,i$=0,Zg=0,ZE=0,WE=0,Io=0,jE=0,XE=0,eC=0,tC=0,Wg=0,iC=0,rC=0,nC=0,jt=0,Eo=0,dn=0,r$=0,ps=0,Qs=0,W7=0,ys=0,jg=0,Xg=0,Co=0,ws=0,ks=0,vs=0,sC=0,Ss=0,sr=0,eh=0,br=0,Xt=0,n$=0,s$=0,Pi=0,A$=0,o$=0,a$=0,_r=0,s6=0,mo=0,Rr=0,th=0,pe=0,$$=0,B8=0,Ds=0,En=0,Cn=0,x9=0,mn=0,xr=0,J4=0,l$=0,fB=0,AC=0,jC=0,XC=0,uB=0,oC=0,RQ=0,xQ=0,FQ=0,LQ=0,MQ=0,TQ=0,GQ=0,NQ=0,UQ=0,OQ=0,PQ=0,HQ=0,IB=0,dB=0,qQ=0,YQ=0,JQ=0,ih=0,em=0,fi=0,rh=0,nh=0,sh=0,Ah=0,aC=0,$C=0,lC=0,cC=0,gC=0,hC=0,fC=0,uC=0,IC=0,dC=0,tm=0,Bo=0,Ar=0,c$=0,oh=0,g$=0,EB=0,po=0,EC=0,h$=0,im=0,rm=0,CC=0,nm=0,sm=0,Am=0,om=0,am=0,$m=0,lm=0,CB=0,mB=0,BB=0,pB=0,QB=0,Qo=0,yo=0,wo=0,ko=0,KQ=0,or=0,e4=0,BD=0,vo=0,cm=0;if(BD=m,l0=t+28|0,j=e[l0>>2]|0,W8=(j|0)==0,W8||(st=j+3456|0,As=e[st>>2]|0,Dl=(As|0)==0,n=Dl&1,as=j+3496|0,Dc=+o1[as>>3],lg=Dc>-80,lg?o1[as>>3]=-80:(xE=Dc<-200,xE&&(o1[as>>3]=-200)),$0=j+3512|0,z2=+o1[$0>>3],A3=z2>0,A3?o1[$0>>3]=0:(C4=z2<-99999,C4&&(o1[$0>>3]=-99999)),Le=j+3396|0,b6=e[Le>>2]|0,L4=(b6|0)==0,L4))return C=-131,C|0;if(ve=j+3392|0,e[ve>>2]=1,Se=j+3400|0,z8=+o1[Se>>3],f8=b6+24|0,k7=e[f8>>2]|0,ce=b6+28|0,_e=e[ce>>2]|0,ie=~~z8,Y8=k7+(ie<<2)|0,M7=e[Y8>>2]|0,J8=_e+(ie<<2)|0,ht=e[J8>>2]|0,e[j>>2]=M7,Et=j+4|0,e[Et>>2]=ht,G7=(M7|0)==(ht|0),z7=b6+144|0,u7=e[z7>>2]|0,js=(u7|0)>0,js){for(nA=b6+136|0,aA=b6+140|0,Vn=b6+148|0,Vi=z8,yr=j,tm=0;;){if(EA=~~Vi,ns=e[nA>>2]|0,Oi=e[aA>>2]|0,at=e[Vn>>2]|0,Gh=at+(tm<<2)|0,Oh=e[Gh>>2]|0,Qr=i4(1,1120)|0,Al=Oh+(EA<<2)|0,cl=e[Al>>2]|0,lf=Oi+(cl*1120|0)|0,r4(Qr|0,lf|0,1120)|0,ra=e[Qr>>2]|0,Cf=(ra|0)>0,Cf){for(bl=Qr+4|0,em=0,lm=-1;;)if(Ia=bl+(em<<2)|0,tc=e[Ia>>2]|0,Eu=(tc|0)>(lm|0),t0=Eu?tc:lm,ac=em+1|0,PQ=(ac|0)==(ra|0),PQ){J=t0;break}else em=ac,lm=t0;if(bf=(J|0)<0,!bf){for(Tf=Qr+256|0,An=yr+24|0,Zf=Qr+192|0,iu=Qr+320|0,g$=0,Am=-1;;){if(yc=Tf+(g$<<2)|0,cn=e[yc>>2]|0,bc=(cn|0)>(Am|0),z=bc?cn:Am,Tc=e[An>>2]|0,OI=Tc+cn|0,e[yc>>2]=OI,qc=Zf+(g$<<2)|0,Vc=e[qc>>2]|0,$d=(Vc|0)==31,$d)om=z;else for(p9=Vc,nm=0,$m=z;;)if(Ra=(iu+(g$<<5)|0)+(nm<<2)|0,zA=e[Ra>>2]|0,ng=(zA|0)>($m|0),Y=ng?zA:$m,ag=(zA|0)>-1,ag?(cg=e[An>>2]|0,Yd=cg+zA|0,e[Ra>>2]=Yd,e0=e[qc>>2]|0,Ta=e0):Ta=p9,us=nm+1|0,iE=1<>2]|0,Zu=e[Yu>>2]|0,Ic=e[An>>2]|0,lI=Ic+1|0,e[An>>2]=lI,II=(yr+1824|0)+(Ic<<2)|0,e[II>>2]=Zu,GQ=(am|0)==0,!GQ))for(EB=0;Pa=EB+1|0,Z=e[Al>>2]|0,Mg=ns+(Z<<2)|0,bE=e[Mg>>2]|0,Pg=bE+(Pa<<2)|0,GE=e[Pg>>2]|0,ir=e[An>>2]|0,HE=ir+1|0,e[An>>2]=HE,go=(yr+1824|0)+(ir<<2)|0,e[go>>2]=GE,TQ=(Pa|0)==(am|0),!TQ;)EB=Pa}}if(fo=yr+16|0,WE=e[fo>>2]|0,Eo=(yr+800|0)+(WE<<2)|0,e[Eo>>2]=1,ks=e[fo>>2]|0,A$=(yr+1056|0)+(ks<<2)|0,e[A$>>2]=Qr,g0=e[fo>>2]|0,D0=g0+1|0,e[fo>>2]=D0,Y0=tm+1|0,c1=e[z7>>2]|0,h1=(Y0|0)<(c1|0),!h1)break;W=+o1[Se>>3],r0=e[l0>>2]|0,Vi=W,yr=r0,tm=Y0}c0=e[l0>>2]|0,Z5=c0}else Z5=j;x1=j+3520|0,q1=+o1[x1>>3],A2=b6+124|0,e2=e[A2>>2]|0,q2=b6+128|0,f5=e[q2>>2]|0,x5=~~q1,k5=+(x5|0),t5=q1-k5,K5=Z5+2868|0,N5=f5+(x5<<3)|0,w3=+o1[N5>>3],w6=~~w3,Z3=e2+(w6*492|0)|0,r4(K5|0,Z3|0,492)|0,r6=+o1[N5>>3],Z6=1-t5,L6=r6*Z6,M6=x5+1|0,H6=f5+(M6<<3)|0,S4=+o1[H6>>3],D4=S4*t5,x4=D4+L6,T4=~~x4,W4=+(T4|0),G4=x4-W4,N9=G4==0,N4=(T4|0)>0,CB=N4&N9,I=CB?1:G4,A4=CB<<31>>31,L=A4+T4|0,F4=1-I,g4=L+1|0,ue=(e2+(L*492|0)|0)+4|0,P9=+s[ue>>2],d9=P9,Ie=F4*d9,ze=(e2+(g4*492|0)|0)+4|0,U4=+s[ze>>2],Me=U4,O4=I*Me,j4=Ie+O4,we=j4,Ze=Z5+2872|0,s[Ze>>2]=we,z9=(e2+(L*492|0)|0)+32|0,Ae=+s[z9>>2],h4=Ae,P4=F4*h4,R9=(e2+(g4*492|0)|0)+32|0,o4=+s[R9>>2],b4=o4,oe=I*b4,Z9=P4+oe,ae=Z9,$e=Z5+2900|0,s[$e>>2]=ae,m4=(e2+(L*492|0)|0)+8|0,X4=+s[m4>>2],le=X4,E9=F4*le,$6=(e2+(g4*492|0)|0)+8|0,Te=+s[$6>>2],a4=Te,de=I*a4,B4=E9+de,$4=B4,U6=Z5+2876|0,s[U6>>2]=$4,ke=(e2+(L*492|0)|0)+36|0,We=+s[ke>>2],l4=We,w4=F4*l4,g8=(e2+(g4*492|0)|0)+36|0,H3=+s[g8>>2],Q9=H3,C9=Q9*I,M4=C9+w4,ee=M4,a7=Z5+2904|0,s[a7>>2]=ee,$7=(e2+(L*492|0)|0)+12|0,Q7=+s[$7>>2],K8=Q7,l7=K8*F4,c7=(e2+(g4*492|0)|0)+12|0,x8=+s[c7>>2],F8=x8,L8=F8*I,M8=L8+l7,V8=M8,y7=Z5+2880|0,s[y7>>2]=V8,T8=(e2+(L*492|0)|0)+40|0,G8=+s[T8>>2],N8=G8,y8=N8*F4,w8=(e2+(g4*492|0)|0)+40|0,h8=+s[w8>>2],U8=h8,O8=U8*I,Z8=O8+y8,Ge=Z8,De=Z5+2908|0,s[De>>2]=Ge,je=(e2+(L*492|0)|0)+16|0,k8=+s[je>>2],y9=k8,g7=y9*F4,Ee=(e2+(g4*492|0)|0)+16|0,h7=+s[Ee>>2],w7=h7,j8=w7*I,te=j8+g7,X8=te,P8=Z5+2884|0,s[P8>>2]=X8,v8=(e2+(L*492|0)|0)+44|0,Xe=+s[v8>>2],H4=Xe,be=H4*F4,e8=(e2+(g4*492|0)|0)+44|0,u8=+s[e8>>2],S8=u8,W9=S8*I,t8=W9+be,I8=t8,i8=Z5+2912|0,s[i8>>2]=I8,d8=Z5+3512|0,ge=+o1[d8>>3],Ce=ge,Ne=Z5+2936|0,s[Ne>>2]=Ce,Ue=b6+132|0,j9=e[Ue>>2]|0,he=j+3472|0,r8=+o1[he>>3],me=r8,p4=~~me,E8=+(p4|0),e7=me-E8,q4=e7,I3=e[l0>>2]|0,Oe=(j9|0)==0;e:do if(Oe)C8=I3+4|0,H9=e[I3>>2]|0,re=I3+3240|0,e[re>>2]=H9,S9=e[C8>>2]|0,Pe=I3+3300|0,e[Pe>>2]=S9,H8=I3+3244|0,e[H8>>2]=H9,f7=I3+3304|0,e[f7>>2]=S9,t7=I3+3248|0,e[t7>>2]=H9,i7=I3+3308|0,e[i7>>2]=S9,q8=I3+3252|0,e[q8>>2]=H9,r7=I3+3312|0,e[r7>>2]=S9,n8=I3+3256|0,e[n8>>2]=H9,s8=I3+3316|0,e[s8>>2]=S9,D8=I3+3260|0,e[D8>>2]=H9,Y4=I3+3320|0,e[Y4>>2]=S9,n7=I3+3264|0,e[n7>>2]=H9,b8=I3+3324|0,e[b8>>2]=S9,He=I3+3268|0,e[He>>2]=H9,m9=I3+3328|0,e[m9>>2]=S9,s7=I3+3272|0,e[s7>>2]=H9,qe=I3+3332|0,e[qe>>2]=S9,P7=I3+3276|0,e[P7>>2]=H9,v7=I3+3336|0,e[v7>>2]=S9,A7=I3+3280|0,e[A7>>2]=H9,S7=I3+3340|0,e[S7>>2]=S9,ne=I3+3284|0,e[ne>>2]=H9,T7=I3+3344|0,e[T7>>2]=S9,H7=I3+3288|0,e[H7>>2]=H9,A8=I3+3348|0,e[A8>>2]=S9,_8=I3+3292|0,e[_8>>2]=H9,D7=I3+3352|0,e[D7>>2]=S9,Re=I3+3296|0,e[Re>>2]=H9,fe=I3+3356|0,e[fe>>2]=S9;else{X9=I3+3120|0,b7=j9+(p4*240|0)|0,or=X9,vo=b7,cm=or+60|0;do e[or>>2]=e[vo>>2]|0,or=or+4|0,vo=vo+4|0;while((or|0)<(cm|0));tt=I3+3180|0,Mt=(j9+(p4*240|0)|0)+60|0,or=tt,vo=Mt,cm=or+60|0;do e[or>>2]=e[vo>>2]|0,or=or+4|0,vo=vo+4|0;while((or|0)<(cm|0));if(Tt=j+3420|0,Gt=e[Tt>>2]|0,gt=(Gt|0)==0,!gt)for(q7=1-q4,Y7=p4+1|0,ft=t+8|0,J7=I3+4|0,X=e[ft>>2]|0,ut=+(X|0),Ar=0;;){if(it=((j9+(p4*240|0)|0)+120|0)+(Ar<<2)|0,ii=+s[it>>2],Nt=ii,It=Nt*q7,dt=((j9+(Y7*240|0)|0)+120|0)+(Ar<<2)|0,ri=+s[dt>>2],rt=ri,ni=rt*q4,Ut=ni+It,Ot=Ut,Pt=Ot,Ht=Pt*1e3,nt=Ht/ut,Ct=e[I3>>2]|0,qt=+(Ct|0),K7=qt*nt,V7=~~K7,si=(I3+3e3|0)+(Ar<<2)|0,e[si>>2]=V7,Yt=e[J7>>2]|0,Ai=+(Yt|0),mt=Ai*nt,Jt=~~mt,Bt=(I3+3060|0)+(Ar<<2)|0,e[Bt>>2]=Jt,pt=~~Ot,Kt=(I3+2940|0)+(Ar<<2)|0,e[Kt>>2]=pt,Qt=((j9+(p4*240|0)|0)+180|0)+(Ar<<2)|0,yt=+s[Qt>>2],Vt=yt,At=Vt*q7,N7=((j9+(Y7*240|0)|0)+180|0)+(Ar<<2)|0,wt=+s[N7>>2],Be=wt,kt=Be*q4,_7=kt+At,ot=_7,i9=ot,m8=i9*1e3,I7=m8/ut,R7=e[I3>>2]|0,Pr=+(R7|0),fr=Pr*I7,zs=~~fr,Mn=(I3+3240|0)+(Ar<<2)|0,e[Mn>>2]=zs,Zs=e[J7>>2]|0,Tn=+(Zs|0),Ws=Tn*I7,Gn=~~Ws,Xs=(I3+3300|0)+(Ar<<2)|0,e[Xs>>2]=Gn,Hr=Ar+1|0,UQ=(Hr|0)==15,UQ)break e;Ar=Hr}for(eA=(j9+(p4*240|0)|0)+148|0,tA=+s[eA>>2],iA=tA,Nn=1-q4,rA=iA*Nn,Un=p4+1|0,On=(j9+(Un*240|0)|0)+148|0,qr=+s[On>>2],Pn=qr,Yr=Pn*q4,Hn=Yr+rA,qn=Hn,sA=qn,AA=sA*1e3,oA=t+8|0,Jr=I3+4|0,Yn=~~qn,o0=e[oA>>2]|0,ur=+(o0|0),Kr=AA/ur,oh=0;$A=e[I3>>2]|0,lA=+($A|0),Vr=lA*Kr,oi=~~Vr,Jn=(I3+3e3|0)+(oh<<2)|0,e[Jn>>2]=oi,cA=e[Jr>>2]|0,gA=+(cA|0),Kn=gA*Kr,zn=~~Kn,hA=(I3+3060|0)+(oh<<2)|0,e[hA>>2]=zn,ai=(I3+2940|0)+(oh<<2)|0,e[ai>>2]=Yn,zr=oh+1|0,HQ=(zr|0)==15,!HQ;)oh=zr;for(fA=(j9+(p4*240|0)|0)+208|0,Zn=+s[fA>>2],uA=Zn,IA=uA*Nn,dA=(j9+(Un*240|0)|0)+208|0,Wn=+s[dA>>2],CA=Wn,mA=CA*q4,BA=mA+IA,jn=BA,pA=jn,QA=pA*1e3,Zr=QA/ur,EC=0;Ir=e[I3>>2]|0,Wr=+(Ir|0),yA=Wr*Zr,wA=~~yA,Xn=(I3+3240|0)+(EC<<2)|0,e[Xn>>2]=wA,jr=e[Jr>>2]|0,es=+(jr|0),Xr=es*Zr,kA=~~Xr,ts=(I3+3300|0)+(EC<<2)|0,e[ts>>2]=kA,is=EC+1|0,NQ=(is|0)==15,!NQ;)EC=is}while(!1);for(vA=+o1[Se>>3],rs=b6+92|0,SA=e[rs>>2]|0,dr=b6+100|0,ss=e[dr>>2]|0,$i=b6+108|0,en=e[$i>>2]|0,Er=e[l0>>2]|0,zi=Er+2852|0,Cr=e[zi>>2]|0,Ui=~~vA,mr=Er+28|0,mi=e[mr>>2]|0,Bi=(mi|0)>0,Bi||(e[mr>>2]=1),zt=(Cr|0)==0,zt?(pi=i4(1,520)|0,e[zi>>2]=pi,Qo=pi):Qo=Cr,r4(Qo|0,25784,520)|0,e[Qo>>2]=0,Br=Er+3460|0,Zi=e[Br>>2]|0,Wi=(Zi|0)==0,Wi||(pr=Qo+500|0,e[pr>>2]=1,li=SA+(Ui<<2)|0,DA=e[li>>2]|0,j$=Qo+504|0,e[j$>>2]=DA,tn=ss+(Ui<<2)|0,rn=e[tn>>2]|0,Lh=Qo+508|0,e[Lh>>2]=rn,X$=en+(Ui<<3)|0,bA=+o1[X$>>3],Mh=Qo+512|0,o1[Mh>>3]=bA),zo=+o1[Se>>3],el=e[rs>>2]|0,Th=e[dr>>2]|0,Nh=e[$i>>2]|0,Zo=e[l0>>2]|0,tl=Zo+2856|0,il=e[tl>>2]|0,Wo=~~zo,nn=Zo+28|0,rl=e[nn>>2]|0,Uh=(rl|0)>1,Uh||(e[nn>>2]=2),_A=(il|0)==0,_A?(ji=i4(1,520)|0,e[tl>>2]=ji,yo=ji):yo=il,r4(yo|0,25784,520)|0,e[yo>>2]=0,Ph=Zo+3460|0,Hh=e[Ph>>2]|0,qh=(Hh|0)==0,qh||(Yh=yo+500|0,e[Yh>>2]=1,Jh=el+(Wo<<2)|0,Kh=e[Jh>>2]|0,Vh=yo+504|0,e[Vh>>2]=Kh,zh=Th+(Wo<<2)|0,Zh=e[zh>>2]|0,nl=yo+508|0,e[nl>>2]=Zh,Wh=Nh+(Wo<<3)|0,jh=+o1[Wh>>3],sl=yo+512|0,o1[sl>>3]=jh),G7||(Xh=+o1[Se>>3],jo=b6+96|0,RA=e[jo>>2]|0,Xo=b6+104|0,ef=e[Xo>>2]|0,tf=e[$i>>2]|0,ea=e[l0>>2]|0,ol=ea+2860|0,al=e[ol>>2]|0,ta=~~Xh,$l=ea+28|0,xA=e[$l>>2]|0,rf=(xA|0)>2,rf||(e[$l>>2]=3),nf=(al|0)==0,nf?(ll=i4(1,520)|0,e[ol>>2]=ll,wo=ll):wo=al,r4(wo|0,25784,520)|0,e[wo>>2]=1,sf=ea+3460|0,Af=e[sf>>2]|0,of=(Af|0)==0,of||(af=wo+500|0,e[af>>2]=1,gl=RA+(ta<<2)|0,hl=e[gl>>2]|0,fl=wo+504|0,e[fl>>2]=hl,ul=ef+(ta<<2)|0,Il=e[ul>>2]|0,sn=wo+508|0,e[sn>>2]=Il,$f=tf+(ta<<3)|0,dl=+o1[$f>>3],El=wo+512|0,o1[El>>3]=dl),Cl=+o1[Se>>3],cf=e[jo>>2]|0,gf=e[Xo>>2]|0,hf=e[$i>>2]|0,ia=e[l0>>2]|0,ml=ia+2864|0,Bl=e[ml>>2]|0,os=~~Cl,pl=ia+28|0,ff=e[pl>>2]|0,Ql=(ff|0)>3,Ql||(e[pl>>2]=4),uf=(Bl|0)==0,uf?(yl=i4(1,520)|0,e[ml>>2]=yl,ko=yl):ko=Bl,r4(ko|0,25784,520)|0,e[ko>>2]=1,If=ia+3460|0,df=e[If>>2]|0,wl=(df|0)==0,wl||(kl=ko+500|0,e[kl>>2]=1,Ef=cf+(os<<2)|0,FA=e[Ef>>2]|0,na=ko+504|0,e[na>>2]=FA,vl=gf+(os<<2)|0,Sl=e[vl>>2]|0,mf=ko+508|0,e[mf>>2]=Sl,Bf=hf+(os<<3)|0,pf=+o1[Bf>>3],Qf=ko+512|0,o1[Qf>>3]=pf)),yf=(j+3528|0)+(n<<5)|0,wf=+o1[yf>>3],LA=b6+32|0,_l=e[LA>>2]|0,MA=b6+36|0,kf=e[MA>>2]|0,Rl=b6+44|0,vf=e[Rl>>2]|0,KC(t,wf,0,_l,kf,vf),xl=j+3560|0,Sf=+o1[xl>>3],Df=e[LA>>2]|0,Fl=e[MA>>2]|0,sa=b6+52|0,_f=e[sa>>2]|0,KC(t,Sf,1,Df,Fl,_f),G7||(TA=j+3592|0,Rf=+o1[TA>>3],GA=e[LA>>2]|0,xf=e[MA>>2]|0,Aa=e[sa>>2]|0,KC(t,Rf,2,GA,xf,Aa),Ff=j+3624|0,Lf=+o1[Ff>>3],Mf=e[LA>>2]|0,Ll=e[MA>>2]|0,Gf=b6+48|0,Nf=e[Gf>>2]|0,KC(t,Lf,3,Mf,Ll,Nf)),Uf=((j+3528|0)+(n<<5)|0)+24|0,Ml=+o1[Uf>>3],Tl=b6+80|0,Xi=e[Tl>>2]|0,Gl=b6+84|0,NA=e[Gl>>2]|0,oa=~~Ml,aa=+(oa|0),Nl=Ml-aa,on=e[l0>>2]|0,Of=on+2852|0,Ul=e[Of>>2]|0,Pf=NA+(oa<<3)|0,Hf=+o1[Pf>>3],qf=1-Nl,Yf=Hf*qf,UA=oa+1|0,$a=NA+(UA<<3)|0,Jf=+o1[$a>>3],Kf=Jf*Nl,Ol=Kf+Yf,la=~~Ol,Pl=+(la|0),Hl=Ol-Pl,Vf=Hl==0,ql=(la|0)>0,mB=ql&Vf,a=mB?1:Hl,zf=mB<<31>>31,M=zf+la|0,ca=1-a,Wf=M+1|0,rh=0;U9=(Xi+(M*160|0)|0)+(rh<<2)|0,jf=e[U9>>2]|0,Yl=+(jf|0),Xf=Yl*ca,eu=(Xi+(Wf*160|0)|0)+(rh<<2)|0,ga=e[eu>>2]|0,tu=+(ga|0),ha=tu*a,Jl=ha+Xf,ru=Jl,Kl=(Ul+336|0)+(rh<<2)|0,s[Kl>>2]=ru,Vl=rh+1|0,xQ=(Vl|0)==40,!xQ;)rh=Vl;for(nu=j+3584|0,fa=+o1[nu>>3],ua=~~fa,zl=+(ua|0),Zl=fa-zl,su=on+2856|0,Wl=e[su>>2]|0,Au=NA+(ua<<3)|0,jl=+o1[Au>>3],ou=1-Zl,au=jl*ou,$u=ua+1|0,lu=NA+($u<<3)|0,Xl=+o1[lu>>3],ec=Xl*Zl,da=ec+au,OA=~~da,cu=+(OA|0),ic=da-cu,rc=ic==0,gu=(OA|0)>0,BB=gu&rc,c=BB?1:ic,hu=BB<<31>>31,T=hu+OA|0,fu=1-c,nc=T+1|0,nh=0;uu=(Xi+(T*160|0)|0)+(nh<<2)|0,Iu=e[uu>>2]|0,du=+(Iu|0),Cu=du*fu,mu=(Xi+(nc*160|0)|0)+(nh<<2)|0,sc=e[mu>>2]|0,Bu=+(sc|0),Ac=Bu*c,pu=Ac+Cu,an=pu,Qu=(Wl+336|0)+(nh<<2)|0,s[Qu>>2]=an,oc=nh+1|0,FQ=(oc|0)==40,!FQ;)nh=oc;if(!G7){for(yu=j+3616|0,Ea=+o1[yu>>3],wu=b6+88|0,PA=e[wu>>2]|0,Ca=~~Ea,ku=+(Ca|0),ma=Ea-ku,$c=on+2860|0,vu=e[$c>>2]|0,Su=PA+(Ca<<3)|0,Du=+o1[Su>>3],_u=1-ma,lc=Du*_u,Ru=Ca+1|0,xu=PA+(Ru<<3)|0,Fu=+o1[xu>>3],HA=Fu*ma,$s=HA+lc,Ba=~~$s,Lu=+(Ba|0),pa=$s-Lu,Tu=pa==0,Gu=(Ba|0)>0,pB=Gu&Tu,f=pB?1:pa,cc=pB<<31>>31,G=cc+Ba|0,Nu=1-f,Uu=G+1|0,sh=0;Ou=(Xi+(G*160|0)|0)+(sh<<2)|0,Pu=e[Ou>>2]|0,Hu=+(Pu|0),qA=Hu*Nu,qu=(Xi+(Uu*160|0)|0)+(sh<<2)|0,gc=e[qu>>2]|0,Ju=+(gc|0),Ku=Ju*f,Vu=Ku+qA,zu=Vu,ci=(vu+336|0)+(sh<<2)|0,s[ci>>2]=zu,hc=sh+1|0,LQ=(hc|0)==40,!LQ;)sh=hc;for(gi=j+3648|0,fc=+o1[gi>>3],Qa=~~fc,Zt=+(Qa|0),ls=fc-Zt,Wu=on+2864|0,ju=e[Wu>>2]|0,Xu=PA+(Qa<<3)|0,eI=+o1[Xu>>3],tI=1-ls,uc=eI*tI,iI=Qa+1|0,rI=PA+(iI<<3)|0,nI=+o1[rI>>3],sI=nI*ls,cs=sI+uc,ya=~~cs,AI=+(ya|0),dc=cs-AI,oI=dc==0,aI=(ya|0)>0,QB=aI&oI,E=QB?1:dc,YA=QB<<31>>31,N=YA+ya|0,$I=1-E,Ec=N+1|0,Ah=0;Cc=(Xi+(N*160|0)|0)+(Ah<<2)|0,cI=e[Cc>>2]|0,gI=+(cI|0),$n=gI*$I,hI=(Xi+(Ec*160|0)|0)+(Ah<<2)|0,fI=e[hI>>2]|0,ln=+(fI|0),uI=ln*E,mc=uI+$n,dI=mc,gs=(ju+336|0)+(Ah<<2)|0,s[gs>>2]=dI,Bc=Ah+1|0,MQ=(Bc|0)==40,!MQ;)Ah=Bc}for(EI=((j+3528|0)+(n<<5)|0)+8|0,pc=+o1[EI>>3],CI=b6+40|0,er=e[CI>>2]|0,wa=~~pc,mI=+(wa|0),Qc=pc-mI,BI=er+(wa<<2)|0,pI=e[BI>>2]|0,wc=+(pI|0),QI=1-Qc,yI=wc*QI,wI=wa+1|0,kc=er+(wI<<2)|0,kI=e[kc>>2]|0,hs=+(kI|0),vI=hs*Qc,SI=vI+yI,DI=SI,ka=Ul+32|0,s[ka>>2]=DI,bI=j+3568|0,va=+o1[bI>>3],Sa=~~va,_I=+(Sa|0),vc=va-_I,Sc=er+(Sa<<2)|0,RI=e[Sc>>2]|0,_c=+(RI|0),xI=1-vc,Rc=_c*xI,xc=Sa+1|0,FI=er+(xc<<2)|0,LI=e[FI>>2]|0,Fc=+(LI|0),Lc=Fc*vc,MI=Lc+Rc,Mc=MI,TI=Wl+32|0,s[TI>>2]=Mc,G7||(GI=j+3600|0,Gc=+o1[GI>>3],Da=~~Gc,Nc=+(Da|0),Uc=Gc-Nc,Oc=on+2860|0,Pc=e[Oc>>2]|0,NI=er+(Da<<2)|0,UI=e[NI>>2]|0,PI=+(UI|0),HI=1-Uc,qI=PI*HI,YI=Da+1|0,JI=er+(YI<<2)|0,Hc=e[JI>>2]|0,ba=+(Hc|0),KI=ba*Uc,VI=KI+qI,zI=VI,Yc=Pc+32|0,s[Yc>>2]=zI,ZI=j+3632|0,Jc=+o1[ZI>>3],_a=~~Jc,JA=+(_a|0),Kc=Jc-JA,WI=on+2864|0,jI=e[WI>>2]|0,XI=er+(_a<<2)|0,ed=e[XI>>2]|0,KA=+(ed|0),td=1-Kc,id=KA*td,rd=_a+1|0,nd=er+(rd<<2)|0,sd=e[nd>>2]|0,Ad=+(sd|0),od=Ad*Kc,ad=od+id,zc=ad,ld=jI+32|0,s[ld>>2]=zc),cd=((j+3528|0)+(n<<5)|0)+16|0,gd=+o1[cd>>3],VA=b6+76|0,Zc=e[VA>>2]|0,hd=b6+60|0,fd=e[hd>>2]|0,gn=b6+56|0,Wc=e[gn>>2]|0,Dl?Xc=0:(jc=j+3408|0,ud=+o1[jc>>3],Xc=ud),VC(t,gd,0,Zc,fd,Wc,Xc),Id=j+3576|0,eg=+o1[Id>>3],tg=e[VA>>2]|0,dd=b6+64|0,Ed=e[dd>>2]|0,Cd=e[gn>>2]|0,VC(t,eg,1,tg,Ed,Cd,0),G7?(fs=e[l0>>2]|0,Pd=fs+2852|0,hg=e[Pd>>2]|0,Hd=fs+3496|0,La=+o1[Hd>>3],fg=La,qd=hg+4|0,s[qd>>2]=fg,Jd=fs+3504|0,Kd=+o1[Jd>>3],ug=Kd,Vd=hg+8|0,s[Vd>>2]=ug,zd=fs+2856|0,Ig=e[zd>>2]|0,XA=Ig+4|0,s[XA>>2]=fg,Zd=Ig+8|0,s[Zd>>2]=ug,tr=fs):(md=j+3608|0,Bd=+o1[md>>3],xa=e[VA>>2]|0,pd=b6+68|0,Qd=e[pd>>2]|0,yd=e[gn>>2]|0,VC(t,Bd,2,xa,Qd,yd,0),wd=j+3640|0,ig=+o1[wd>>3],kd=e[VA>>2]|0,rg=b6+72|0,vd=e[rg>>2]|0,Sd=e[gn>>2]|0,VC(t,ig,3,kd,vd,Sd,0),wr=e[l0>>2]|0,sg=wr+2852|0,Ag=e[sg>>2]|0,Dd=wr+3496|0,og=+o1[Dd>>3],ZA=og,bd=Ag+4|0,s[bd>>2]=ZA,_d=wr+3504|0,Rd=+o1[_d>>3],WA=Rd,xd=Ag+8|0,s[xd>>2]=WA,Fd=wr+2856|0,$g=e[Fd>>2]|0,Ld=$g+4|0,s[Ld>>2]=ZA,Md=$g+8|0,s[Md>>2]=WA,Fa=wr+2860|0,jA=e[Fa>>2]|0,Td=jA+4|0,s[Td>>2]=ZA,Gd=jA+8|0,s[Gd>>2]=WA,Nd=wr+2864|0,gg=e[Nd>>2]|0,Ud=gg+4|0,s[Ud>>2]=ZA,Od=gg+8|0,s[Od>>2]=WA,tr=wr),Wd=+o1[Se>>3],jd=b6+152|0,dg=e[jd>>2]|0,Eg=~~Wd,Xd=dg+(Eg<<3)|0,Cg=e[Xd>>2]|0,mg=(dg+(Eg<<3)|0)+4|0,Qi=e[mg>>2]|0,Bg=e[tr>>2]|0,eE=tr+4|0,tE=e[eE>>2]|0,rE=(Bg|0)==(tE|0),o=rE?1:2,Ma=tr+8|0,eo=tr+12|0,pg=t+8|0,Qg=t+4|0,fi=0;;){if(nE=i4(1,3208)|0,to=(tr+544|0)+(fi<<2)|0,e[to>>2]=nE,Is=i4(1,16)|0,sE=(tr+32|0)+(fi<<2)|0,e[sE>>2]=Is,io=26304+(fi<<4)|0,e[Is>>2]=e[io>>2]|0,e[Is+4>>2]=e[io+4>>2]|0,e[Is+8>>2]=e[io+8>>2]|0,e[Is+12>>2]=e[io+12>>2]|0,AE=e[Ma>>2]|0,Ga=(fi|0)<(AE|0),Ga||(oE=fi+1|0,e[Ma>>2]=oE),aE=(tr+288|0)+(fi<<2)|0,e[aE>>2]=0,yg=e[to>>2]|0,ro=Cg+(fi*3208|0)|0,r4(yg|0,ro|0,3208)|0,wg=e[eo>>2]|0,$E=(fi|0)<(wg|0),$E||(lE=fi+1|0,e[eo>>2]=lE),cE=e[ro>>2]|0,kg=(cE|0)>0,kg)for(rm=0;;){hE=((Cg+(fi*3208|0)|0)+1092|0)+(rm<<2)|0,Z7=e[hE>>2]|0,Q4=e[l0>>2]|0,Wt=k9(2840)|0,fE=(Q4+1568|0)+(Z7<<2)|0,e[fE>>2]=Wt,vg=(Qi+(Z7<<5)|0)+12|0,Sg=e[vg>>2]|0,r4(Wt|0,Sg|0,2840)|0,Na=Q4+20|0,uE=e[Na>>2]|0,ds=(uE|0)>(Z7|0),ds||(IE=Z7+1|0,e[Na>>2]=IE),dE=(Qi+(Z7<<5)|0)+8|0,Dg=e[dE>>2]|0,Ua=Wt+8|0,e[Ua>>2]=Dg,EE=Qi+(Z7<<5)|0,bg=e[EE>>2]|0,_g=(Q4+1312|0)+(Z7<<2)|0,e[_g>>2]=bg,Rg=Q4+3420|0,Oa=e[Rg>>2]|0,xg=(Oa|0)==0,Es=Wt+12|0,Ha=e[Es>>2]|0,Fg=(Ha|0)>0;do if(xg){if(Fg)for(Lg=(Qi+(Z7<<5)|0)+24|0,no=e[Lg>>2]|0,BE=Wt+24|0,po=0;;)if(nr=BE+(po<<2)|0,un=no+(po<<4)|0,vt=e[un>>2]|0,St=(vt|0)==0,St||(Dt=e[nr>>2]|0,$o=Dt|1,e[nr>>2]=$o),lo=(no+(po<<4)|0)+4|0,Jg=e[lo>>2]|0,Kg=(Jg|0)==0,Kg||(k2=e[nr>>2]|0,E5=k2|2,e[nr>>2]=E5),r5=(no+(po<<4)|0)+8|0,x2=e[r5>>2]|0,R2=(x2|0)==0,R2||(m2=e[nr>>2]|0,C5=m2|4,e[nr>>2]=C5),u5=(no+(po<<4)|0)+12|0,S5=e[u5>>2]|0,G5=(S5|0)==0,G5||(D5=e[nr>>2]|0,H2=D5|8,e[nr>>2]=H2),I5=po+1|0,A5=e[Es>>2]|0,l5=(I5|0)<(A5|0),l5)po=I5;else{uo=A5;break}else uo=Ha;co=(Qi+(Z7<<5)|0)+16|0,ja=e[co>>2]|0,bt=Q4+24|0,Dr=e[bt>>2]|0,Xa=(Dr|0)>0,qE=ja;e:do if(Xa)for(dC=0;;){if(e$=(Q4+1824|0)+(dC<<2)|0,YE=e[e$>>2]|0,t$=(YE|0)==(ja|0),t$){R=dC;break e}if(Vg=dC+1|0,ho=(Vg|0)<(Dr|0),ho)dC=Vg;else{e4=116;break}}else e4=116;while(!1);if((e4|0)==116&&(e4=0,JE=Dr+1|0,e[bt>>2]=JE,R=Dr),KE=Wt+20|0,e[KE>>2]=R,VE=(Q4+1824|0)+(R<<2)|0,e[VE>>2]=qE,In=(uo|0)>0,!In)break;for(Ye=(Qi+(Z7<<5)|0)+24|0,k4=Wt+280|0,xr=0,h$=0;;){if(zg=e[Ye>>2]|0,zE=zg+(h$<<4)|0,i$=e[zE>>2]|0,Zg=(i$|0)==0,ZE=i$,Zg)ps=zg,AC=xr;else{Io=e[bt>>2]|0,jE=(Io|0)>0;e:do if(jE)for(gC=0;;){if(XE=(Q4+1824|0)+(gC<<2)|0,eC=e[XE>>2]|0,tC=(eC|0)==(i$|0),tC){F=gC;break e}if(Wg=gC+1|0,iC=(Wg|0)<(Io|0),iC)gC=Wg;else{e4=123;break}}else e4=123;while(!1);(e4|0)==123&&(e4=0,rC=Io+1|0,e[bt>>2]=rC,F=Io),nC=xr+1|0,jt=k4+(xr<<2)|0,e[jt>>2]=F,dn=(Q4+1824|0)+(F<<2)|0,e[dn>>2]=ZE,n0=e[Ye>>2]|0,ps=n0,AC=nC}if(r$=(ps+(h$<<4)|0)+4|0,Qs=e[r$>>2]|0,W7=(Qs|0)==0,ys=Qs,W7)d2=ps,J4=AC;else{K1=e[bt>>2]|0,P1=(K1|0)>0;e:do if(P1)for($C=0;;){if(H1=(Q4+1824|0)+($C<<2)|0,Y1=e[H1>>2]|0,j1=(Y1|0)==(Qs|0),j1){D=$C;break e}if(r2=$C+1|0,W1=(r2|0)<(K1|0),W1)$C=r2;else{e4=147;break}}else e4=147;while(!1);(e4|0)==147&&(e4=0,O1=K1+1|0,e[bt>>2]=O1,D=K1),l2=AC+1|0,z1=k4+(AC<<2)|0,e[z1>>2]=D,h2=(Q4+1824|0)+(D<<2)|0,e[h2>>2]=ys,i0=e[Ye>>2]|0,d2=i0,J4=l2}if(s2=(d2+(h$<<4)|0)+8|0,V1=e[s2>>2]|0,g2=(V1|0)==0,a2=V1,g2)_2=d2,l$=J4;else{t2=e[bt>>2]|0,$2=(t2|0)>0;e:do if($2)for(lC=0;;){if(i2=(Q4+1824|0)+(lC<<2)|0,o2=e[i2>>2]|0,X1=(o2|0)==(V1|0),X1){Q=lC;break e}if(n2=lC+1|0,f2=(n2|0)<(t2|0),f2)lC=n2;else{e4=153;break}}else e4=153;while(!1);(e4|0)==153&&(e4=0,y2=t2+1|0,e[bt>>2]=y2,Q=t2),S2=J4+1|0,w2=k4+(J4<<2)|0,e[w2>>2]=Q,C2=(Q4+1824|0)+(Q<<2)|0,e[C2>>2]=a2,K=e[Ye>>2]|0,_2=K,l$=S2}if(M2=(_2+(h$<<4)|0)+12|0,G2=e[M2>>2]|0,u2=(G2|0)==0,K2=G2,u2)fB=l$;else{N2=e[bt>>2]|0,T2=(N2|0)>0;e:do if(T2)for(cC=0;;){if(O2=(Q4+1824|0)+(cC<<2)|0,V2=e[O2>>2]|0,s5=(V2|0)==(G2|0),s5){_=cC;break e}if(P2=cC+1|0,T1=(P2|0)<(N2|0),T1)cC=P2;else{e4=159;break}}else e4=159;while(!1);(e4|0)==159&&(e4=0,j2=N2+1|0,e[bt>>2]=j2,_=N2),R5=l$+1|0,X2=k4+(l$<<2)|0,e[X2>>2]=_,v5=(Q4+1824|0)+(_<<2)|0,e[v5>>2]=K2,fB=R5}if(w5=h$+1|0,O5=e[Es>>2]|0,$5=(w5|0)<(O5|0),$5)xr=fB,h$=w5;else break}}else{if(Fg)for(CE=(Qi+(Z7<<5)|0)+28|0,hn=e[CE>>2]|0,mE=Wt+24|0,Bo=0;;)if(yi=mE+(Bo<<2)|0,pE=hn+(Bo<<4)|0,QE=e[pE>>2]|0,yE=(QE|0)==0,yE||(wE=e[yi>>2]|0,kE=wE|1,e[yi>>2]=kE),vE=(hn+(Bo<<4)|0)+4|0,wi=e[vE>>2]|0,SE=(wi|0)==0,SE||(t6=e[yi>>2]|0,t3=t6|2,e[yi>>2]=t3),o3=(hn+(Bo<<4)|0)+8|0,R3=e[o3>>2]|0,f6=(R3|0)==0,f6||(B3=e[yi>>2]|0,p3=B3|4,e[yi>>2]=p3),X3=(hn+(Bo<<4)|0)+12|0,V3=e[X3>>2]|0,N3=(V3|0)==0,N3||(z5=e[yi>>2]|0,k3=z5|8,e[yi>>2]=k3),c3=Bo+1|0,U3=e[Es>>2]|0,o6=(c3|0)<(U3|0),o6)Bo=c3;else{qg=U3;break}else qg=Ha;DE=(Qi+(Z7<<5)|0)+20|0,Tg=e[DE>>2]|0,hi=Q4+24|0,so=e[hi>>2]|0,qa=(so|0)>0,Gg=Tg;e:do if(qa)for(aC=0;;){if(Ng=(Q4+1824|0)+(aC<<2)|0,_E=e[Ng>>2]|0,Ug=(_E|0)==(Tg|0),Ug){B=aC;break e}if(Og=aC+1|0,RE=(Og|0)<(so|0),RE)aC=Og;else{e4=100;break}}else e4=100;while(!1);if((e4|0)==100&&(e4=0,Hg=so+1|0,e[hi>>2]=Hg,B=so),FE=Wt+20|0,e[FE>>2]=B,LE=(Q4+1824|0)+(B<<2)|0,e[LE>>2]=Gg,ME=(qg|0)>0,!ME)break;for(Cs=(Qi+(Z7<<5)|0)+28|0,Ao=Wt+280|0,Ds=0,c$=0;;){if(oo=e[Cs>>2]|0,TE=oo+(c$<<4)|0,Ya=e[TE>>2]|0,NE=(Ya|0)==0,Yg=Ya,NE)Bs=oo,mn=Ds;else{ms=e[hi>>2]|0,UE=(ms|0)>0;e:do if(UE)for(IC=0;;){if(OE=(Q4+1824|0)+(IC<<2)|0,Ja=e[OE>>2]|0,Ka=(Ja|0)==(Ya|0),Ka){y=IC;break e}if(ao=IC+1|0,Va=(ao|0)<(ms|0),Va)IC=ao;else{e4=107;break}}else e4=107;while(!1);(e4|0)==107&&(e4=0,za=ms+1|0,e[hi>>2]=za,y=ms),vr=Ds+1|0,Sr=Ao+(Ds<<2)|0,e[Sr>>2]=y,Za=(Q4+1824|0)+(y<<2)|0,e[Za>>2]=Yg,H=e[Cs>>2]|0,Bs=H,mn=vr}if(Wa=(Bs+(c$<<4)|0)+4|0,rr=e[Wa>>2]|0,fn=(rr|0)==0,PE=rr,fn)b5=Bs,En=mn;else{m5=e[hi>>2]|0,M1=(m5|0)>0;e:do if(M1)for(hC=0;;){if(c5=(Q4+1824|0)+(hC<<2)|0,o5=e[c5>>2]|0,Z2=(o5|0)==(rr|0),Z2){v=hC;break e}if(c2=hC+1|0,B5=(c2|0)<(m5|0),B5)hC=c2;else{e4=171;break}}else e4=171;while(!1);(e4|0)==171&&(e4=0,e5=m5+1|0,e[hi>>2]=e5,v=m5),n5=mn+1|0,g5=Ao+(mn<<2)|0,e[g5>>2]=v,Y2=(Q4+1824|0)+(v<<2)|0,e[Y2>>2]=PE,V=e[Cs>>2]|0,b5=V,En=n5}if(h5=(b5+(c$<<4)|0)+8|0,W2=e[h5>>2]|0,a5=(W2|0)==0,F2=W2,a5)h3=b5,Cn=En;else{p5=e[hi>>2]|0,H5=(p5|0)>0;e:do if(H5)for(fC=0;;){if(X5=(Q4+1824|0)+(fC<<2)|0,d5=e[X5>>2]|0,f3=(d5|0)==(W2|0),f3){S=fC;break e}if(g3=fC+1|0,e3=(g3|0)<(p5|0),e3)fC=g3;else{e4=177;break}}else e4=177;while(!1);(e4|0)==177&&(e4=0,s3=p5+1|0,e[hi>>2]=s3,S=p5),E3=En+1|0,F5=Ao+(En<<2)|0,e[F5>>2]=S,V5=(Q4+1824|0)+(S<<2)|0,e[V5>>2]=F2,A0=e[Cs>>2]|0,h3=A0,Cn=E3}if(y3=(h3+(c$<<4)|0)+12|0,m3=e[y3>>2]|0,q3=(m3|0)==0,M3=m3,q3)x9=Cn;else{Q3=e[hi>>2]|0,j5=(Q3|0)>0;e:do if(j5)for(uC=0;;){if(j3=(Q4+1824|0)+(uC<<2)|0,_3=e[j3>>2]|0,T3=(_3|0)==(m3|0),T3){w=uC;break e}if(a3=uC+1|0,$3=(a3|0)<(Q3|0),$3)uC=a3;else{e4=183;break}}else e4=183;while(!1);(e4|0)==183&&(e4=0,l3=Q3+1|0,e[hi>>2]=l3,w=Q3),C3=Cn+1|0,q5=Ao+(Cn<<2)|0,e[q5>>2]=w,P5=(Q4+1824|0)+(w<<2)|0,e[P5>>2]=M3,x9=C3}if(y5=c$+1|0,G3=e[Es>>2]|0,L5=(y5|0)<(G3|0),L5)Ds=x9,c$=y5;else break}}while(!1);jg=Q4+3480|0,Xg=+o1[jg>>3],Co=Xg*1e3,ws=(Q4+1056|0)+(fi<<2)|0,vs=e[ws>>2]|0,sC=e[pg>>2]|0,Ss=+(sC|0),sr=Ss*.5,eh=Q4+(fi<<2)|0,br=e[eh>>2]|0,Xt=br>>1,n$=Co>sr,IB=n$?sr:Co,s$=IB/sr,Pi=+(Xt|0),o$=Pi*s$,a$=~~o$,_r=vs+1116|0,e[_r>>2]=a$,s6=(Qi+(Z7<<5)|0)+4|0,mo=e[s6>>2]|0;do if((mo|0)==2)ih=250;else if((mo|0)==1){if(Rr=e[Rg>>2]|0,th=(Rr|0)==0,pe=Q4+2996|0,$$=Q4+2968|0,JQ=th?$$:pe,YQ=e[JQ>>2]|0,qQ=+(YQ|0),dB=qQ*1e3,B8=dB>sr,!B8){ih=dB;break}ih=sr}else ih=IB;while(!1);f0=e[_g>>2]|0,Q0=(f0|0)==2;do if(Q0){if(d0=Q4+12|0,y0=e[d0>>2]|0,h0=(y0|0)>0,h0)for(im=0;;){if(E0=(Q4+544|0)+(im<<2)|0,C0=e[E0>>2]|0,u0=e[C0>>2]|0,k0=(u0|0)>0,k0)for(CC=0;;){J0=(C0+1092|0)+(CC<<2)|0,B0=e[J0>>2]|0,x0=(B0|0)==(Z7|0);do if(x0){if(F0=e[Qg>>2]|0,M0=(F0|0)>0,M0)uB=0,sm=0;else{oC=0;break}for(;;)if(G0=(C0+4|0)+(sm<<2)|0,p0=e[G0>>2]|0,P0=(p0|0)==(CC|0),R0=P0&1,P=R0+uB|0,S0=sm+1|0,RQ=(S0|0)==(F0|0),RQ){oC=P;break}else uB=P,sm=S0}else oC=0;while(!1);if(L0=CC+1|0,H0=(L0|0)<(u0|0),N0=(oC|0)==0,V0=H0&N0,V0)CC=L0;else{XC=oC;break}}else XC=0;if(T0=im+1|0,U0=(T0|0)<(y0|0),r1=(XC|0)==0,O0=U0&r1,O0)im=T0;else{jC=XC;break}}else jC=0;if(e1=ih/sr,v0=+(jC|0),i1=v0*Pi,$1=i1*e1,f1=e[Ua>>2]|0,g1=+(f1|0),l1=$1/g1,s1=l1+.9,a1=~~s1,n1=i5(a1,f1)|0,A1=Wt+4|0,e[A1>>2]=n1,z0=i5(jC,Xt)|0,I1=(n1|0)>(z0|0),!I1){U=A1,Z1=n1,v1=f1;break}E1=(z0|0)%(f1|0)&-1,u1=z0-E1|0,e[A1>>2]=u1,U=A1,Z1=u1,v1=f1}else{if(d1=ih/sr,B1=d1*Pi,p1=e[Ua>>2]|0,Q1=+(p1|0),D1=B1/Q1,_1=D1+.9,y1=~~_1,k1=i5(y1,p1)|0,L1=Wt+4|0,e[L1>>2]=k1,N1=(k1|0)>(Xt|0),!N1){U=L1,Z1=k1,v1=p1;break}w1=(Xt|0)%(p1|0)&-1,U1=Xt-w1|0,e[L1>>2]=U1,U=L1,Z1=U1,v1=p1}while(!1);if(G1=(Z1|0)==0,G1&&(e[U>>2]=v1),u3=rm+1|0,k6=e[ro>>2]|0,v6=(u3|0)<(k6|0),v6)rm=u3;else break}if(B6=fi+1|0,z3=(B6|0)<(o|0),z3)fi=B6;else break}return a6=j+3428|0,p6=e[a6>>2]|0,_6=(p6|0)>0,_6?(Y6=t+16|0,e[Y6>>2]=p6):(m6=e[l0>>2]|0,v3=m6+3396|0,W3=e[v3>>2]|0,u6=m6+3400|0,O3=+o1[u6>>3],S3=~~O3,P3=+(S3|0),Y3=O3-P3,S6=W3+4|0,i6=e[S6>>2]|0,i3=(i6|0)==0,i3?p=-1:(P6=e[Qg>>2]|0,I6=i6+(S3<<3)|0,D3=+o1[I6>>3],T6=1-Y3,e6=D3*T6,Q6=S3+1|0,R6=i6+(Q6<<3)|0,K6=+o1[R6>>3],d6=K6*Y3,J6=d6+e6,x3=+(P6|0),G6=J6*x3,KQ=~~G6,p=KQ),j6=t+16|0,e[j6>>2]=p),r9=j+3424|0,x6=e[r9>>2]|0,N6=t+20|0,e[N6>>2]=x6,D6=j+3440|0,V6=e[D6>>2]|0,y6=t+12|0,e[y6>>2]=V6,F6=(p6|0)==0,F6?s0=0:(F3=j+3444|0,X6=e[F3>>2]|0,s9=+(X6|0),W6=+(p6|0),g9=s9/W6,h9=~~g9,s0=h9),f9=t+24|0,e[f9>>2]=s0,A9=j+3420|0,o9=e[A9>>2]|0,M9=(o9|0)==0,M9?(C=0,C|0):(E6=e[a6>>2]|0,e9=j+3360|0,e[e9>>2]=E6,T9=e[r9>>2]|0,u9=j+3364|0,e[u9>>2]=T9,d4=e[D6>>2]|0,n4=j+3368|0,e[n4>>2]=d4,c4=j+3444|0,G9=e[c4>>2]|0,V9=j+3372|0,e[V9>>2]=G9,v9=j+3448|0,I9=+o1[v9>>3],t9=j+3376|0,o1[t9>>3]=I9,E4=j+3432|0,v4=+o1[E4>>3],s4=j+3384|0,o1[s4>>3]=v4,C=0,C|0)}function KS(t,n,o,a){t=t|0,n=n|0,o=o|0,a=+a;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0;if(P=m,I=(o|0)<1,I)f=-131;else if(C=t+28|0,Q=e[C>>2]|0,_=a,F=_+1e-7,R=F,L=!(R>=1),E=L?R:.9998999834060669,M=Q+3416|0,s[M>>2]=E,T=E,G=Q+3400|0,p=VS(n,o,T,0,G)|0,B=Q+3396|0,e[B>>2]=p,v=(p|0)==0,v)f=-130;else return zS(t,n,o),S=Q+3420|0,e[S>>2]=0,w=Q+3464|0,e[w>>2]=1,y=JS(t)|0,D=(y|0)==0,D?(c=0,c|0):(nB(t),c=y,c|0);return nB(t),c=f,c|0}function KC(t,n,o,a,c,f){t=t|0,n=+n,o=o|0,a=a|0,c=c|0,f=f|0;var E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0;for(B1=m,E=~~n,I=+(E|0),F=n-I,J=t+28|0,i0=e[J>>2]|0,d0=(i0+2852|0)+(o<<2)|0,F0=e[d0>>2]|0,V0=a+(E*20|0)|0,g1=e[V0>>2]|0,h1=+(g1|0),C=1-F,p=h1*C,B=E+1|0,v=a+(B*20|0)|0,S=e[v>>2]|0,w=+(S|0),y=w*F,D=y+p,Q=D,_=F0+12|0,s[_>>2]=Q,R=(a+(E*20|0)|0)+4|0,L=e[R>>2]|0,M=+(L|0),T=M*C,G=(a+(B*20|0)|0)+4|0,N=e[G>>2]|0,P=+(N|0),z=P*F,Y=z+T,t0=Y,W=F0+16|0,s[W>>2]=t0,e0=(a+(E*20|0)|0)+8|0,H=e[e0>>2]|0,X=+(H|0),U=X*C,o0=(a+(B*20|0)|0)+8|0,Z=e[o0>>2]|0,V=+(Z|0),A0=V*F,n0=A0+U,r0=n0,K=F0+20|0,s[K>>2]=r0,c0=(a+(E*20|0)|0)+12|0,s0=+s[c0>>2],l0=s0,j=l0*C,$0=(a+(B*20|0)|0)+12|0,g0=+s[$0>>2],f0=g0,Q0=f0*F,y0=Q0+j,h0=y0,E0=F0+24|0,s[E0>>2]=h0,C0=(a+(E*20|0)|0)+16|0,u0=+s[C0>>2],k0=u0,J0=k0*C,D0=(a+(B*20|0)|0)+16|0,B0=+s[D0>>2],x0=B0,M0=x0*F,G0=M0+J0,p0=G0,P0=F0+28|0,s[P0>>2]=p0,R0=c+(E<<2)|0,S0=e[R0>>2]|0,L0=+(S0|0),Y0=L0*C,H0=c+(B<<2)|0,N0=e[H0>>2]|0,T0=+(N0|0),U0=T0*F,r1=U0+Y0,O0=r1,e1=F0+496|0,s[e1>>2]=O0,u1=0;v0=(f+(E*68|0)|0)+(u1<<2)|0,i1=e[v0>>2]|0,c1=+(i1|0),$1=c1*C,f1=(f+(B*68|0)|0)+(u1<<2)|0,l1=e[f1>>2]|0,s1=+(l1|0),a1=s1*F,n1=a1+$1,A1=n1,z0=(F0+36|0)+(u1<<2)|0,s[z0>>2]=A1,I1=u1+1|0,E1=(I1|0)==17,!E1;)u1=I1}function VC(t,n,o,a,c,f,E){t=t|0,n=+n,o=o|0,a=a|0,c=c|0,f=f|0,E=+E;var I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0;for(w2=m,w=~~n,y=+(w|0),o0=n-y,j=t+28|0,k0=e[j>>2]|0,S0=(k0+2852|0)+(o<<2)|0,v0=e[S0>>2]|0,z0=a+(w<<2)|0,y1=e[z0>>2]|0,P1=+(y1|0),D=1-o0,z=P1*D,Y=w+1|0,t0=a+(Y<<2)|0,J=e[t0>>2]|0,W=+(J|0),e0=W*o0,H=e0+z,X=H,U=v0+108|0,s[U>>2]=X,Z=f+(o*12|0)|0,V=e[Z>>2]|0,A0=v0+120|0,e[A0>>2]=V,n0=(f+(o*12|0)|0)+4|0,i0=e[n0>>2]|0,r0=v0+124|0,e[r0>>2]=i0,K=(f+(o*12|0)|0)+8|0,c0=e[K>>2]|0,s0=v0+128|0,e[s0>>2]=c0,t2=0;;)if(l0=(c+(w*204|0)|0)+(t2<<2)|0,$0=e[l0>>2]|0,g0=+($0|0),f0=g0*D,Q0=(c+(Y*204|0)|0)+(t2<<2)|0,d0=e[Q0>>2]|0,y0=+(d0|0),h0=y0*o0,E0=h0+f0,C0=E0,u0=(v0+132|0)+(t2<<2)|0,s[u0>>2]=C0,J0=t2+1|0,V1=(J0|0)==17,V1){$2=0;break}else t2=J0;for(;;)if(_1=((c+(w*204|0)|0)+68|0)+($2<<2)|0,k1=e[_1>>2]|0,x1=+(k1|0),L1=x1*D,N1=((c+(Y*204|0)|0)+68|0)+($2<<2)|0,w1=e[N1>>2]|0,U1=+(w1|0),Z1=U1*o0,G1=Z1+L1,v1=G1,K1=(v0+200|0)+($2<<2)|0,s[K1>>2]=v1,H1=$2+1|0,g2=(H1|0)==17,g2){i2=0;break}else $2=H1;for(;q1=((c+(w*204|0)|0)+136|0)+(i2<<2)|0,Y1=e[q1>>2]|0,j1=+(Y1|0),r2=j1*D,W1=((c+(Y*204|0)|0)+136|0)+(i2<<2)|0,O1=e[W1>>2]|0,l2=+(O1|0),z1=l2*o0,h2=z1+r2,Q=h2,_=(v0+268|0)+(i2<<2)|0,s[_>>2]=Q,F=i2+1|0,a2=(F|0)==17,!a2;)i2=F;for(R=v0+132|0,L=+s[R>>2],p0=L+6,M=v0+132|0,T=L,G=T+E,N=G,P=N>2]=y2,D0=1;I=(v0+132|0)+(D0<<2)|0,B=+s[I>>2],B0=(v0+132|0)+(D0<<2)|0,x0=B,F0=x0+E,M0=F0,G0=M0>2]=o2,P0=D0+1|0,s2=(P0|0)==17,!s2;)D0=P0;for(R0=v0+200|0,L0=+s[R0>>2],Y0=L0+6,H0=v0+200|0,N0=L0,V0=N0+E,T0=V0,U0=T0>2]=n2,r1=1;C=(v0+200|0)+(r1<<2)|0,v=+s[C>>2],O0=(v0+200|0)+(r1<<2)|0,e1=v,i1=e1+E,c1=i1,$1=c1>2]=X1,f1=r1+1|0,d2=(f1|0)==17,!d2;)r1=f1;for(g1=v0+268|0,l1=+s[g1>>2],s1=l1+6,a1=v0+268|0,n1=l1,A1=n1+E,I1=A1,h1=I1>2]=e2,E1=1;p=(v0+268|0)+(E1<<2)|0,S=+s[p>>2],u1=(v0+268|0)+(E1<<2)|0,d1=S,B1=d1+E,p1=B1,Q1=p1>2]=f2,D1=E1+1|0,A2=(D1|0)==17,!A2;)E1=D1}function VS(t,n,o,a,c){t=t|0,n=n|0,o=+o,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0;Q1=m,w=(a|0)==0;e:do if(w){for(H=26336,z0=0;;){if(e0=e[H>>2]|0,X=e0+12|0,U=e[X>>2]|0,o0=(U|0)==-1,V=(U|0)==(t|0),u1=o0|V,u1&&(A0=e0+16|0,n0=e[A0>>2]|0,i0=(n0|0)>(n|0),!i0&&(r0=e0+20|0,K=e[r0>>2]|0,c0=(K|0)<(n|0),!c0&&(s0=e[e0>>2]|0,l0=e0+8|0,j=e[l0>>2]|0,g0=+o1[j>>3],f0=g0>o,!f0&&(y0=j+(s0<<3)|0,h0=+o1[y0>>3],E0=h0>2]|0,J0=Z+12|0,L0=e[J0>>2]|0,i1=(L0|0)==-1,s1=(L0|0)==(t|0),d1=i1|s1,d1&&(a1=Z+16|0,D=e[a1>>2]|0,Q=(D|0)>(n|0),!Q&&(_=Z+20|0,F=e[_>>2]|0,R=(F|0)<(n|0),!R&&(L=e[Z>>2]|0,M=Z+4|0,T=e[M>>2]|0,G=+o1[T>>3],N=P>3],t0=P>Y,!t0))))){E=P,I=L,C=$0,p=T,l1=G;break e}if(A1=I1+1|0,J=26336+(A1<<2)|0,W=(A1|0)==17,W){f=0;break}else $0=J,I1=A1}return f|0}while(!1);C0=(I|0)>0;e:do if(C0)for(k0=l1,E1=0;;){if(u0=!(E>=k0),S=E1+1|0,!u0&&(D0=p+(S<<3)|0,B0=+o1[D0>>3],x0=E>3],k0=v,E1=S}else h1=0;while(!1);return M0=(h1|0)==(I|0),M0?(G0=+(I|0),p0=G0+-.001,B1=p0):(P0=p+(h1<<3)|0,R0=+o1[P0>>3],S0=R0,Y0=h1+1|0,H0=p+(Y0<<3)|0,N0=+o1[H0>>3],V0=N0,T0=S0,U0=E-T0,r1=V0-S0,O0=r1,e1=U0/O0,v0=e1,c1=+(h1|0),$1=v0+c1,f1=$1,B1=f1),o1[c>>3]=B1,g1=e[C>>2]|0,f=g1,f|0}function zS(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0;v0=m,I=t+28|0,C=e[I>>2]|0,R=C+3396|0,W=e[R>>2]|0,e[t>>2]=0,r0=t+4|0,e[r0>>2]=n,y0=t+8|0,e[y0>>2]=o,M0=C+3456|0,e[M0>>2]=1,T0=C+3460|0,e[T0>>2]=1,r1=C+3400|0,O0=+o1[r1>>3],p=~~O0,B=+(p|0),v=O0-B,S=C+3472|0,o1[S>>3]=O0,w=C+3488|0,y=e[w>>2]|0,D=(y|0)==0,D?(Q=W+120|0,_=e[Q>>2]|0,F=_+(p<<3)|0,L=+o1[F>>3],M=1-v,T=L*M,G=p+1|0,N=_+(G<<3)|0,P=+o1[N>>3],z=P*v,Y=z+T,t0=C+3480|0,o1[t0>>3]=Y,c=G,f=M):(a=1-v,E=p+1|0,c=E,f=a),J=W+112|0,e0=e[J>>2]|0,H=e0+(p<<2)|0,X=e[H>>2]|0,U=+(X|0),o0=U*f,Z=e0+(c<<2)|0,V=e[Z>>2]|0,A0=+(V|0),n0=A0*v,i0=n0+o0,K=C+3496|0,o1[K>>3]=i0,c0=W+116|0,s0=e[c0>>2]|0,l0=s0+(p<<2)|0,j=e[l0>>2]|0,$0=+(j|0),g0=$0*f,f0=s0+(c<<2)|0,Q0=e[f0>>2]|0,d0=+(Q0|0),h0=d0*v,E0=h0+g0,C0=C+3504|0,o1[C0>>3]=E0,u0=C+3512|0,o1[u0>>3]=-6,k0=C+3520|0,o1[k0>>3]=O0,J0=C+3528|0,o1[J0>>3]=O0,D0=C+3536|0,o1[D0>>3]=O0,B0=C+3544|0,o1[B0>>3]=O0,x0=C+3552|0,o1[x0>>3]=O0,F0=C+3560|0,o1[F0>>3]=O0,G0=C+3568|0,o1[G0>>3]=O0,p0=C+3576|0,o1[p0>>3]=O0,P0=C+3584|0,o1[P0>>3]=O0,R0=C+3592|0,o1[R0>>3]=O0,S0=C+3600|0,o1[S0>>3]=O0,L0=C+3608|0,o1[L0>>3]=O0,Y0=C+3616|0,o1[Y0>>3]=O0,H0=C+3624|0,o1[H0>>3]=O0,N0=C+3632|0,o1[N0>>3]=O0,V0=C+3640|0,o1[V0>>3]=O0,U0=C+3648|0,o1[U0>>3]=O0}function ZS(t,n,o,a,c,f){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0;var E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0;if(N0=m,I=(c|0)!=0,C=I?a:0,R=I?f:0,W=n+(C<<2)|0,r0=e[W>>2]|0,y0=520336+(r0<<2)|0,k0=e[y0>>2]|0,J0=n+(R<<2)|0,D0=e[J0>>2]|0,B0=520336+(D0<<2)|0,p=e[B0>>2]|0,B=o+(c<<2)|0,v=e[B>>2]|0,S=o+(C<<2)|0,w=e[S>>2]|0,y=o+(R<<2)|0,D=e[y>>2]|0,Q=(v|0)/4&-1,_=(w|0)/4&-1,F=Q-_|0,L=(w|0)/2&-1,M=F+L|0,T=(v|0)/2&-1,G=T+Q|0,E=(D|0)/-4&-1,N=G+E|0,P=(D|0)/2&-1,z=N+P|0,Y=(F|0)>0,Y?(t0=Q-_|0,J=t0<<2,se(t|0,0,J|0)|0,F0=F):F0=0,e0=(F0|0)<(M|0),e0)for(H=Q+L|0,X=H-F0|0,U=X-_|0,M0=F0,P0=0;A0=k0+(P0<<2)|0,n0=+s[A0>>2],i0=t+(M0<<2)|0,K=+s[i0>>2],c0=K*n0,s[i0>>2]=c0,s0=M0+1|0,l0=P0+1|0,x0=(l0|0)==(U|0),!x0;)M0=s0,P0=l0;if(o0=(D|0)>1,o0){for(Z=N+1|0,V=(z|0)>(Z|0),p0=N,S0=P;R0=S0+-1|0,f0=p+(R0<<2)|0,Q0=+s[f0>>2],d0=t+(p0<<2)|0,h0=+s[d0>>2],E0=h0*Q0,s[d0>>2]=E0,C0=p0+1|0,u0=(C0|0)<(z|0),u0;)p0=C0,S0=R0;Y0=V?z:Z,G0=Y0}else G0=N;j=(v|0)>(G0|0),j&&(L0=t+(G0<<2)|0,$0=v-G0|0,g0=$0<<2,se(L0|0,0,g0|0)|0)}function WS(t,n,o){t=t|0,n=+n,o=+o;var a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0;if(K=m,m=m+64|0,i0=K+32|0,n0=K,a=k9(688)|0,c=a+408|0,lS(c),D=~~n,KS(c,t,D,o)|0,z=a+440|0,oS(z),aS(z,553008,553016),X=a+456|0,Nv(X,c)|0,U=a+568|0,Tv(X,U)|0,o0=Kp(0)|0,nD(o0),Z=sD()|0,Sv(a,Z)|0,V=a+680|0,e[V>>2]=0,A0=a+684|0,e[A0>>2]=0,f=a+360|0,cS(X,z,f,i0,n0)|0,YC(a,f)|0,YC(a,i0)|0,YC(a,n0)|0,E=a+392|0,I=zp(a,E)|0,C=(I|0)==0,C)return m=K,a|0;for(p=a+396|0,B=a+404|0,v=a+400|0;S=e[A0>>2]|0,w=e[p>>2]|0,y=w+S|0,Q=e[B>>2]|0,_=y+Q|0,F=(_|0)==0,F||(M=e[V>>2]|0,T=Ni(M,_)|0,e[V>>2]=T,G=e[A0>>2]|0,N=T+G|0,P=e[E>>2]|0,Y=e[p>>2]|0,r4(N|0,P|0,Y|0)|0,t0=Y+G|0,e[A0>>2]=t0,J=T+t0|0,W=e[v>>2]|0,e0=e[B>>2]|0,r4(J|0,W|0,e0|0)|0,H=e0+t0|0,e[A0>>2]=H),R=zp(a,E)|0,L=(R|0)==0,!L;);return m=K,a|0}function jS(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0;C=m,Dv(t)|0,n=t+568|0,Gv(n)|0,o=t+456|0,Xp(o),a=t+440|0,$S(a),c=t+408|0,nB(c),f=t+680|0,E=e[f>>2]|0,I2(E),I2(t)}function XS(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0;return f=m,o=t+456|0,a=eQ(o,n)|0,a|0}function eD(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0;if(K=m,o=t+456|0,Uv(o,n)|0,a=t+568|0,y=tQ(o,a)|0,P=(y|0)==1,!!P)for(o0=t+360|0,Z=t+392|0,V=t+684|0,A0=t+396|0,n0=t+404|0,i0=t+680|0,c=t+392|0,f=t+400|0;;){if(xv(a,0)|0,Mv(a)|0,C=jp(o,o0)|0,p=(C|0)==0,!p)for(;;){if(YC(t,o0)|0,S=Zp(t,Z)|0,w=(S|0)==0,!w)for(;D=e[V>>2]|0,Q=e[A0>>2]|0,_=Q+D|0,F=e[n0>>2]|0,R=_+F|0,L=(R|0)==0,L||(G=e[i0>>2]|0,N=Ni(G,R)|0,e[i0>>2]=N,z=e[V>>2]|0,Y=N+z|0,t0=e[c>>2]|0,J=e[A0>>2]|0,r4(Y|0,t0|0,J|0)|0,W=J+z|0,e[V>>2]=W,e0=N+W|0,H=e[f>>2]|0,X=e[n0>>2]|0,r4(e0|0,H|0,X|0)|0,U=X+W|0,e[V>>2]=U),M=Zp(t,Z)|0,T=(M|0)==0,!T;);if(B=jp(o,o0)|0,v=(B|0)==0,v)break}if(E=tQ(o,a)|0,I=(E|0)==1,!I)break}}function tD(t){t=t|0;var n=0,o=0,a=0,c=0;return c=m,n=t+684|0,o=e[n>>2]|0,o|0}function iD(t){t=t|0;var n=0,o=0,a=0,c=0,f=0;return f=m,n=t+684|0,e[n>>2]=0,o=t+680|0,a=e[o>>2]|0,a|0}function zC(t,n){t=+t,n=n|0;var o=0,a=0,c=0;return c=m,o=+rD(t,n),+o}function Fh(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0;if(R3=m,m=m+688|0,t3=R3+424|0,K5=R3+192|0,j5=R3,X=i5(o,n)|0,U=(X|0)==0,U){m=R3;return}for(J=X-o|0,q1=j5+4|0,e[q1>>2]=o,e[j5>>2]=o,e2=o,f5=o,y3=2;A2=e2+o|0,T2=A2+f5|0,x5=j5+(y3<<2)|0,e[x5>>2]=T2,k5=T2>>>0>>0,t5=y3+1|0,k5;)y2=f5,f5=T2,y3=t5,e2=y2;if(o0=0-o|0,j=t+J|0,k0=(J|0)>0,k0)for(S0=(o|0)==0,v0=j,y1=1,V2=0,F5=t,N5=1;;){z0=y1&3,K1=(z0|0)==3;do if(K1){e[K5>>2]=F5,P1=(N5|0)>1;e:do if(P1){for(B=N5,Q=F5,O1=F5,Z5=1;;){if(H1=Q+o0|0,Y1=B+-2|0,j1=j5+(Y1<<2)|0,r2=e[j1>>2]|0,L5=r2+o|0,W=0-L5|0,W1=Q+W|0,l2=ct[a&15](O1,W1)|0,z1=(l2|0)>-1,z1&&(h2=ct[a&15](O1,H1)|0,s2=(h2|0)>-1,s2)){h3=Z5;break}if(d2=ct[a&15](W1,H1)|0,V1=(d2|0)>-1,g2=Z5+1|0,a2=K5+(Z5<<2)|0,V1?(e[a2>>2]=W1,t2=B+-1|0,f=W1,C=t2):(e[a2>>2]=H1,f=H1,C=Y1),$2=(C|0)>1,!$2){h3=g2;break}P=e[K5>>2]|0,B=C,Q=f,O1=P,Z5=g2}if(i2=(h3|0)<2,!i2&&(o2=K5+(h3<<2)|0,e[o2>>2]=t3,!S0))for(y=o,N2=t3;;){for(u2=y>>>0>256,n2=u2?256:y,K2=e[K5>>2]|0,r4(N2|0,K2|0,n2|0)|0,_2=K2,q3=0;S2=K5+(q3<<2)|0,w2=q3+1|0,C2=K5+(w2<<2)|0,M2=e[C2>>2]|0,r4(_2|0,M2|0,n2|0)|0,G2=_2+n2|0,e[S2>>2]=G2,e3=(w2|0)==(h3|0),!e3;)_2=M2,q3=w2;if(X1=(y|0)==(n2|0),X1)break e;f2=y-n2|0,Y=e[o2>>2]|0,y=f2,N2=Y}}while(!1);q2=y1>>>2,O2=V2<<30,s5=q2|O2,P2=V2>>>2,T1=N5+2|0,r0=s5,v1=P2,P5=T1}else{if(j2=N5+-1|0,R5=j5+(j2<<2)|0,X2=e[R5>>2]|0,v5=F5,z2=v0-v5|0,w5=X2>>>0>>0,w5){e[K5>>2]=F5,O5=(N5|0)>1;e:do if(O5){for(v=N5,_=F5,R2=F5,Q3=1;;){if($5=_+o0|0,k2=v+-2|0,E5=j5+(k2<<2)|0,r5=e[E5>>2]|0,t6=r5+o|0,e0=0-t6|0,x2=_+e0|0,m2=ct[a&15](R2,x2)|0,C5=(m2|0)>-1,C5&&(u5=ct[a&15](R2,$5)|0,S5=(u5|0)>-1,S5)){m3=Q3;break}if(G5=ct[a&15](x2,$5)|0,D5=(G5|0)>-1,H2=Q3+1|0,I5=K5+(Q3<<2)|0,D5?(e[I5>>2]=x2,A5=v+-1|0,E=x2,p=A5):(e[I5>>2]=$5,E=$5,p=k2),l5=(p|0)>1,!l5){m3=H2;break}z=e[K5>>2]|0,v=p,_=E,R2=z,Q3=H2}if(m5=(m3|0)<2,!m5&&(M1=K5+(m3<<2)|0,e[M1>>2]=t3,!S0))for(D=o,W2=t3;;){for(h5=D>>>0>256,o5=h5?256:D,b5=e[K5>>2]|0,r4(W2|0,b5|0,o5|0)|0,g5=b5,M3=0;c2=K5+(M3<<2)|0,B5=M3+1|0,e5=K5+(B5<<2)|0,n5=e[e5>>2]|0,r4(g5|0,n5|0,o5|0)|0,Y2=g5+o5|0,e[c2>>2]=Y2,s3=(B5|0)==(m3|0),!s3;)g5=n5,M3=B5;if(c5=(D|0)==(o5|0),c5)break e;Z2=D-o5|0,t0=e[M1>>2]|0,D=Z2,W2=t0}}while(!1)}else ZC(F5,o,a,y1,V2,N5,0,j5);if(a5=(N5|0)==1,a5){F2=V2<<1,p5=y1>>>31,H5=p5|F2,X5=y1<<1,r0=X5,v1=H5,P5=0;break}else{d5=j2>>>0>31,f3=N5+-33|0,c=d5?0:y1,F=d5?y1:V2,R=d5?f3:j2,g3=F<>>Z,A0=V|g3,n0=c<>>0>>0,c0)y1=i0,V2=v1,F5=K,N5=P5;else{T=v1,G=i0,E3=K,q5=P5;break}}else T=0,G=1,E3=t,q5=1;if(ZC(E3,o,a,G,T,q5,0,j5),s0=(q5|0)==1,l0=(G|0)==1,C3=l0&s0,$0=(T|0)==0,l3=$0&C3,l3){m=R3;return}else Q0=G,B0=T,V5=E3,y5=q5;for(;;){if(g0=(y5|0)<2,!g0){U0=B0<<2,r1=Q0>>>30,O0=r1|U0,e1=y5+-2|0,i1=Q0<<1,c1=i1&2147483646,$1=r1<<31,f1=c1|$1,g1=f1^3,l1=O0>>>1,s1=j5+(e1<<2)|0,a1=e[s1>>2]|0,G3=a1+o|0,H=0-G3|0,n1=V5+H|0,A1=y5+-1|0,ZC(n1,o,a,g1,l1,A1,1,j5),I1=l1<<1,h1=r1&1,E1=I1|h1,u1=g1<<1,d1=u1|1,B1=V5+o0|0,ZC(B1,o,a,d1,E1,e1,1,j5),Q0=d1,B0=E1,V5=B1,y5=e1;continue}f0=Q0+-1|0,d0=(f0|0)==0;do if(d0)T0=32,o3=56;else{if(y0=f0&1,h0=(y0|0)==0,h0){for(S=f0,j3=0;;)if(E0=j3+1|0,C0=S>>>1,u0=C0&1,J0=(u0|0)==0,J0)S=C0,j3=E0;else{L=E0;break}D0=(L|0)==0,D0?o3=51:H0=L}else o3=51;if((o3|0)==51){if(o3=0,x0=(B0|0)==0,x0){T0=64,o3=56;break}if(F0=B0&1,M0=(F0|0)==0,M0)w=B0,_3=0;else{I=0,Q1=Q0,k1=B0,w1=0;break}for(;;)if(G0=_3+1|0,p0=w>>>1,P0=p0&1,R0=(P0|0)==0,R0)w=p0,_3=G0;else{M=G0,T3=_3;break}if(L0=T3+33|0,Y0=(M|0)==0,Y0){I=0,Q1=Q0,k1=B0,w1=0;break}else H0=L0}N0=H0>>>0>31,N0?(T0=H0,o3=56):(I=H0,Q1=Q0,k1=B0,w1=H0)}while(!1);if((o3|0)==56&&(o3=0,V0=T0+-32|0,I=V0,Q1=B0,k1=0,w1=T0),p1=Q1>>>I,D1=32-I|0,_1=k1<>>I,N1=w1+y5|0,N=V5+o0|0,U1=(N1|0)==1,Z1=(x1|0)==1,a3=Z1&U1,G1=(L1|0)==0,$3=G1&a3,$3)break;Q0=x1,B0=L1,V5=N,y5=N1}m=R3}function ZC(t,n,o,a,c,f,E,I){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0,I=I|0;var C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0;m2=m,m=m+720|0,x2=m2+456|0,O2=m2+228|0,T2=m2,e[T2>>2]=t,U=0-n|0,o0=(a|0)!=1,B0=(c|0)!=0,H0=B0|o0;e:do if(H0)if($1=I+(f<<2)|0,E1=e[$1>>2]|0,L1=0-E1|0,Y1=t+L1|0,V1=ct[o&15](Y1,t)|0,y2=(V1|0)<1,y2)B=t,F=f,N=E,P2=1,R2=18;else for(w=t,T=f,P=E,u0=Y1,U0=c,v5=1,k2=a;;){if(Z=(P|0)==0,$0=(T|0)>1,$5=Z&$0,$5){if(y0=w+U|0,h0=T+-2|0,E0=I+(h0<<2)|0,C0=e[E0>>2]|0,k0=ct[o&15](y0,u0)|0,J0=(k0|0)>-1,J0){v=w,R=T,j2=v5;break e}if(E5=C0+n|0,H=0-E5|0,D0=w+H|0,x0=ct[o&15](D0,u0)|0,F0=(x0|0)>-1,F0){v=w,R=T,j2=v5;break e}}M0=v5+1|0,G0=T2+(v5<<2)|0,e[G0>>2]=u0,p0=k2+-1|0,P0=(p0|0)==0;do if(P0)A1=32,R2=15;else{if(R0=p0&1,S0=(R0|0)==0,S0){for(Q=p0,f5=0;;)if(L0=f5+1|0,Y0=Q>>>1,N0=Y0&1,V0=(N0|0)==0,V0)Q=Y0,f5=L0;else{z=L0;break}T0=(z|0)==0,T0?R2=10:s1=z}else R2=10;if((R2|0)==10){if(R2=0,r1=(U0|0)==0,r1){A1=64,R2=15;break}if(O0=U0&1,e1=(O0|0)==0,e1)_=U0,w5=0;else{p=0,I1=k2,d1=U0,D1=0;break}for(;;)if(v0=w5+1|0,i1=_>>>1,c1=i1&1,f1=(c1|0)==0,f1)_=i1,w5=v0;else{Y=v0,O5=w5;break}if(g1=O5+33|0,l1=(Y|0)==0,l1){p=0,I1=k2,d1=U0,D1=0;break}else s1=g1}a1=s1>>>0>31,a1?(A1=s1,R2=15):(p=s1,I1=k2,d1=U0,D1=s1)}while(!1);if((R2|0)==15&&(R2=0,n1=A1+-32|0,p=n1,I1=U0,d1=0,D1=A1),z0=I1>>>p,h1=32-p|0,u1=d1<>>p,Q1=D1+T|0,_1=(B1|0)!=1,y1=(p1|0)!=0,k1=y1|_1,!k1){v=u0,R=Q1,j2=M0;break e}if(t0=e[T2>>2]|0,x1=I+(Q1<<2)|0,N1=e[x1>>2]|0,w1=0-N1|0,U1=u0+w1|0,Z1=ct[o&15](U1,t0)|0,G1=(Z1|0)<1,G1){B=u0,F=Q1,N=0,P2=M0,R2=18;break}else y=u0,T=Q1,P=0,u0=U1,U0=p1,v5=M0,k2=B1,w=y}else B=t,F=f,N=E,P2=1,R2=18;while(!1);if((R2|0)==18)if(v1=(N|0)==0,v1)v=B,R=F,j2=P2;else{m=m2;return}K1=(j2|0)<2;e:do if(!K1&&(P1=T2+(j2<<2)|0,e[P1>>2]=x2,H1=(n|0)==0,!H1))for(M=n,g2=x2;;){for(d2=M>>>0>256,j1=d2?256:M,A2=e[T2>>2]|0,r4(g2|0,A2|0,j1|0)|0,h2=A2,X2=0;W1=T2+(X2<<2)|0,O1=X2+1|0,l2=T2+(O1<<2)|0,z1=e[l2>>2]|0,r4(h2|0,z1|0,j1|0)|0,s2=h2+j1|0,e[W1>>2]=s2,s5=(O1|0)==(j2|0),!s5;)h2=z1,X2=O1;if(q1=(M|0)==(j1|0),q1)break e;r2=M-j1|0,e0=e[P1>>2]|0,M=r2,g2=e0}while(!1);e[O2>>2]=v,a2=(R|0)>1;e:do if(a2){for(D=R,G=v,n2=v,z2=1;;){if(t2=G+U|0,$2=D+-2|0,i2=I+($2<<2)|0,o2=e[i2>>2]|0,r5=o2+n|0,X=0-r5|0,X1=G+X|0,f2=ct[o&15](n2,X1)|0,e2=(f2|0)>-1,e2&&(S2=ct[o&15](n2,t2)|0,w2=(S2|0)>-1,w2)){T1=z2;break}if(C2=ct[o&15](X1,t2)|0,M2=(C2|0)>-1,_2=z2+1|0,G2=O2+(z2<<2)|0,M2?(e[G2>>2]=X1,u2=D+-1|0,C=X1,S=u2):(e[G2>>2]=t2,C=t2,S=$2),K2=(S|0)>1,!K2){T1=_2;break}J=e[O2>>2]|0,D=S,G=C,n2=J,z2=_2}if(N2=(T1|0)<2,N2)d0=x2;else if(q2=O2+(T1<<2)|0,e[q2>>2]=x2,V=(n|0)==0,V)d0=x2;else for(L=n,Q0=x2;;){for(g0=L>>>0>256,n0=g0?256:L,f0=e[O2>>2]|0,r4(Q0|0,f0|0,n0|0)|0,l0=f0,R5=0;r0=O2+(R5<<2)|0,K=R5+1|0,c0=O2+(K<<2)|0,s0=e[c0>>2]|0,r4(l0|0,s0|0,n0|0)|0,j=l0+n0|0,e[r0>>2]=j,V2=(K|0)==(T1|0),!V2;)l0=s0,R5=K;if(A0=(L|0)==(n0|0),A0){d0=x2;break e}i0=L-n0|0,W=e[q2>>2]|0,L=i0,Q0=W}}else d0=x2;while(!1);m=m2}function Gi(t){t=+t;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0;return R=m,o1[p2>>3]=t,o=e[p2>>2]|0,a=e[p2+4>>2]|0,p=a&2146435072,B=p>>>0>1126170624,v=!1,S=(p|0)==1126170624,w=S&v,y=B|w,y?(n=t,+n):(D=(a|0)<0,Q=t+-4503599627370496,c=Q+4503599627370496,f=t+4503599627370496,E=f+-4503599627370496,_=D?c:E,I=_==0,I?(C=D?-0:0,n=C,+n):(n=_,+n))}function pQ(t){t=+t;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0;return y=m,o=(s[p2>>2]=t,e[p2>>2]|0),a=o&2130706432,c=a>>>0>1249902592,c?(n=t,+n):(f=(o|0)<0,E=t+-8388608,I=E+8388608,C=t+8388608,p=C+-8388608,S=f?I:p,B=S==0,B?(v=f?-0:0,n=v,+n):(n=S,+n))}function rD(t,n){t=+t,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0;return z=m,f=(n|0)>1023,f?(E=t*898846567431158e293,Q=n+-1023|0,_=(Q|0)>1023,_?(F=E*898846567431158e293,R=n+-2046|0,L=(R|0)>1023,o=L?1023:R,a=o,N=F):(a=Q,N=E)):(M=(n|0)<-1022,M?(T=t*22250738585072014e-324,G=n+1022|0,I=(G|0)<-1022,I?(C=T*22250738585072014e-324,p=n+2044|0,B=(p|0)<-1022,c=B?-1022:p,a=c,N=C):(a=G,N=T)):(a=n,N=t)),v=a+1023|0,S=wQ(v|0,0,52)|0,w=q6,e[p2>>2]=S,e[p2+4>>2]=w,y=+o1[p2>>3],D=N*y,+D}function nD(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0;I=m,n=t+-1|0,o=553040,a=o,e[a>>2]=n,c=o+4|0,f=c,e[f>>2]=0}function sD(){var t=0,n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0;return _=m,t=553040,n=t,C=e[n>>2]|0,p=t+4|0,B=p,v=e[B>>2]|0,S=$D(C|0,v|0,1284865837,1481765933)|0,w=q6,y=Ys(S|0,w|0,1,0)|0,D=q6,o=553040,a=o,e[a>>2]=y,c=o+4|0,f=c,e[f>>2]=D,E=Js(y|0,D|0,33)|0,I=q6,E|0}function k9(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,B6=0,z3=0,a6=0,p6=0,_6=0,Y6=0,m6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,A3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,s4=0,p9=0,S4=0,D4=0,x4=0,T4=0,W4=0,C4=0,G4=0,N9=0,N4=0,A4=0,F4=0,g4=0,ue=0,P9=0,d9=0,Ie=0,Le=0,ze=0,U4=0,Me=0,O4=0,j4=0,we=0,Ze=0,z9=0,Ae=0,h4=0,b6=0,P4=0,R9=0,o4=0,b4=0,oe=0,Z9=0,ae=0,$e=0,m4=0,X4=0,L4=0,le=0,E9=0,$6=0,Te=0,a4=0,de=0,B4=0,$4=0,U6=0,ke=0,ve=0,We=0,l4=0,w4=0,g8=0,H3=0,Q9=0,C9=0,M4=0,ee=0,a7=0,Se=0,$7=0,Q7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,y7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ge=0,De=0,je=0,k8=0,y9=0,g7=0,Ee=0,h7=0,w7=0,j8=0,k7=0,te=0,X8=0,P8=0,v8=0,Xe=0,H4=0,be=0,e8=0,u8=0,S8=0,ce=0,W9=0,t8=0,I8=0,i8=0,d8=0,ge=0,Ce=0,Ne=0,Ue=0,j9=0,_e=0,he=0,r8=0,me=0,p4=0,E8=0,e7=0,q4=0,I3=0,Oe=0,C8=0,ie=0,H9=0,re=0,S9=0,Pe=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,s8=0,D8=0,Y4=0,n7=0,b8=0,He=0,m9=0,s7=0,qe=0,M7=0,P7=0,v7=0,A7=0,S7=0,ne=0,T7=0,H7=0,A8=0,_8=0,D7=0,J8=0,Re=0,fe=0,X9=0,b7=0,tt=0,Mt=0,Tt=0,Gt=0,gt=0,q7=0,ht=0,Y7=0,ft=0,J7=0,ut=0,it=0,ii=0,Nt=0,It=0,dt=0,ri=0,Et=0,rt=0,ni=0,Ut=0,Ot=0,Pt=0,Ht=0,nt=0,Ct=0,qt=0,K7=0,st=0,G7=0,V7=0,si=0,Yt=0,Ai=0,mt=0,Jt=0,Bt=0,pt=0,Kt=0,Qt=0,z7=0,yt=0,Vt=0,At=0,N7=0,wt=0,Be=0,kt=0,_7=0,ot=0,i9=0,u7=0,m8=0,I7=0,R7=0,Pr=0,fr=0,zs=0,Mn=0,Zs=0,Tn=0,Ws=0,js=0,Gn=0,Xs=0,Hr=0,eA=0,tA=0,iA=0,Nn=0,rA=0,Un=0,On=0,nA=0,qr=0,Pn=0,Yr=0,Hn=0,qn=0,sA=0,AA=0,oA=0,Jr=0,Yn=0,aA=0,ur=0,Kr=0,$A=0,lA=0,Vr=0,oi=0,Jn=0,cA=0,gA=0,Kn=0,Vn=0,zn=0,hA=0,ai=0,zr=0,fA=0,Zn=0,uA=0,IA=0,dA=0,Wn=0,EA=0,CA=0,mA=0,BA=0,jn=0,pA=0,QA=0,Zr=0,Ir=0,Wr=0,yA=0,Vi=0,wA=0,Xn=0,jr=0,es=0,Xr=0,kA=0,ts=0,is=0,vA=0,rs=0,ns=0,SA=0,dr=0,ss=0,$i=0,en=0,Er=0,zi=0,Cr=0,Ui=0,mr=0,As=0,Oi=0,mi=0,Bi=0,zt=0,pi=0,Br=0,Zi=0,Wi=0,pr=0,li=0,DA=0,at=0,j$=0,tn=0,rn=0,Lh=0,X$=0,bA=0,Mh=0,zo=0,el=0,Th=0,Gh=0,Nh=0,Zo=0,tl=0,il=0,Wo=0,nn=0,rl=0,Uh=0,_A=0,ji=0,Oh=0,Ph=0,Hh=0,qh=0,Yh=0,Jh=0,Kh=0,Vh=0,zh=0,Zh=0,nl=0,Qr=0,Wh=0,jh=0,sl=0,Xh=0,jo=0,RA=0,Xo=0,ef=0,tf=0,ea=0,Al=0,ol=0,al=0,ta=0,$l=0,xA=0,rf=0,nf=0,ll=0,sf=0,Af=0,cl=0,of=0,af=0,gl=0,hl=0,fl=0,ul=0,Il=0,sn=0,$f=0,dl=0,lf=0,El=0,Cl=0,cf=0,gf=0,hf=0,ia=0,ml=0,Bl=0,os=0,pl=0,ra=0,ff=0,Ql=0,uf=0,yl=0,If=0,df=0,wl=0,kl=0,Ef=0,FA=0,Cf=0,na=0,vl=0,Sl=0,mf=0,Bf=0,pf=0,Qf=0,yf=0,wf=0,LA=0,Dl=0,bl=0,_l=0,MA=0,kf=0,Rl=0,vf=0,xl=0,Sf=0,Df=0,Fl=0,sa=0,bf=0,_f=0,TA=0,Rf=0,GA=0,xf=0,Aa=0,Ff=0,Lf=0,Mf=0,Ll=0,Tf=0,Gf=0,Nf=0,Uf=0,Ml=0,Tl=0,Xi=0,Gl=0,NA=0,oa=0,aa=0,An=0,Nl=0,on=0,Of=0,Ul=0,Pf=0,Hf=0,qf=0,Yf=0,UA=0,$a=0,yr=0,Jf=0,Kf=0,Ol=0,la=0,Pl=0,Hl=0,Vf=0,ql=0,zf=0,ca=0,Zf=0,Wf=0,U9=0,jf=0,Yl=0,Xf=0,eu=0,ga=0,tu=0,ha=0,Jl=0,iu=0,ru=0,Kl=0,Vl=0,nu=0,fa=0,ua=0,zl=0,Zl=0,su=0,Wl=0,Ia=0,Au=0,jl=0,ou=0,au=0,$u=0,lu=0,Xl=0,ec=0,da=0,OA=0,tc=0,cu=0,ic=0,rc=0,gu=0,hu=0,fu=0,nc=0,uu=0,Iu=0,du=0,Eu=0,Cu=0,mu=0,sc=0,Bu=0,Ac=0,pu=0,an=0,Qu=0,oc=0,yu=0,as=0,ac=0,Ea=0,wu=0,PA=0,Ca=0,ku=0,ma=0,$c=0,vu=0,Su=0,Du=0,bu=0,_u=0,lc=0,Ru=0,xu=0,Fu=0,HA=0,$s=0,Ba=0,Lu=0,pa=0,Mu=0,Tu=0,Gu=0,cc=0,Nu=0,Uu=0,Ou=0,Pu=0,Hu=0,qA=0,qu=0,Yu=0,gc=0,Ju=0,Ku=0,Vu=0,zu=0,ci=0,hc=0,gi=0,fc=0,Qa=0,Zu=0,Zt=0,ls=0,Wu=0,ju=0,Xu=0,eI=0,tI=0,uc=0,iI=0,rI=0,Ic=0,nI=0,sI=0,cs=0,ya=0,AI=0,dc=0,oI=0,aI=0,YA=0,$I=0,lI=0,Ec=0,Cc=0,cI=0,gI=0,$n=0,hI=0,fI=0,ln=0,uI=0,mc=0,II=0,dI=0,gs=0,Bc=0,EI=0,pc=0,CI=0,er=0,wa=0,mI=0,Qc=0,yc=0,BI=0,pI=0,wc=0,QI=0,yI=0,wI=0,kc=0,kI=0,hs=0,vI=0,cn=0,SI=0,DI=0,ka=0,bI=0,va=0,Sa=0,_I=0,vc=0,Sc=0,RI=0,Dc=0,bc=0,_c=0,xI=0,Rc=0,xc=0,FI=0,LI=0,Fc=0,Lc=0,MI=0,Mc=0,Tc=0,TI=0,GI=0,Gc=0,Da=0,Nc=0,Uc=0,Oc=0,Pc=0,NI=0,UI=0,OI=0,PI=0,HI=0,qI=0,YI=0,JI=0,Hc=0,ba=0,KI=0,VI=0,zI=0,qc=0,Yc=0,ZI=0,Jc=0,_a=0,JA=0,Kc=0,WI=0,jI=0,XI=0,ed=0,Vc=0,KA=0,td=0,id=0,rd=0,nd=0,sd=0,Ad=0,od=0,ad=0,zc=0,$d=0,ld=0,cd=0,gd=0,VA=0,Zc=0,hd=0,fd=0,gn=0,Wc=0,jc=0,Ra=0,ud=0,Xc=0,Id=0,eg=0,tg=0,dd=0,Ed=0,Cd=0,md=0,Bd=0,zA=0,xa=0,pd=0,Qd=0,yd=0,wd=0,ig=0,kd=0,rg=0,vd=0,Sd=0,ng=0,wr=0,sg=0,Ag=0,Dd=0,og=0,ZA=0,bd=0,_d=0,Rd=0,WA=0,ag=0,xd=0,Fd=0,$g=0,Ld=0,Md=0,Fa=0,jA=0,Td=0,Gd=0,Nd=0,lg=0,cg=0,gg=0,Ud=0,Od=0,fs=0,Pd=0,hg=0,Hd=0,La=0,fg=0,qd=0,Yd=0,Jd=0,Kd=0,ug=0,Vd=0,zd=0,Ig=0,XA=0,Zd=0,Wd=0,jd=0,us=0,dg=0,Eg=0,Xd=0,Cg=0,mg=0,Qi=0,Bg=0,tr=0,eE=0,tE=0,iE=0,rE=0,Ma=0,eo=0,pg=0,Qg=0,nE=0,to=0,Is=0,sE=0,io=0,Ta=0,AE=0,Ga=0,oE=0,aE=0,yg=0,ro=0,wg=0,$E=0,lE=0,cE=0,gE=0,kg=0,hE=0,Z7=0,Q4=0,Wt=0,fE=0,vg=0,Sg=0,Na=0,uE=0,kr=0,ds=0,IE=0,dE=0,Dg=0,Ua=0,EE=0,bg=0,_g=0,Rg=0,Oa=0,Pa=0,xg=0,Es=0,Ha=0,Fg=0,CE=0,hn=0,mE=0,Lg=0,no=0,BE=0,Mg=0,yi=0,pE=0,QE=0,yE=0,wE=0,kE=0,vE=0,wi=0,SE=0,DE=0,bE=0,Tg=0,hi=0,so=0,qa=0,Gg=0,Ng=0,_E=0,Ug=0,Og=0,RE=0,xE=0,Pg=0,Hg=0,FE=0,LE=0,qg=0,ME=0,Cs=0,Ao=0,oo=0,TE=0,Ya=0,GE=0,NE=0,Yg=0,ms=0,UE=0,OE=0,Ja=0,Ka=0,ao=0,Va=0,za=0,ir=0,vr=0,Sr=0,Za=0,Wa=0,Bs=0,rr=0,fn=0,PE=0,nr=0,un=0,HE=0,vt=0,St=0,Dt=0,$o=0,lo=0,Jg=0,Kg=0,co=0,ja=0,bt=0,go=0,Dr=0,Xa=0,qE=0,e$=0,YE=0,t$=0,Vg=0,ho=0,JE=0,KE=0,fo=0,VE=0,uo=0,In=0,Ye=0,k4=0,zg=0,zE=0,i$=0,Zg=0,ZE=0,WE=0,Io=0,jE=0,XE=0,eC=0,tC=0,Wg=0,iC=0,rC=0,nC=0,jt=0,Eo=0,dn=0,r$=0,ps=0,Qs=0,W7=0,ys=0,jg=0,Xg=0,Co=0,ws=0,ks=0,vs=0,sC=0,Ss=0,sr=0,eh=0,br=0,Xt=0,n$=0,s$=0,Pi=0,A$=0,o$=0,a$=0,_r=0,s6=0,mo=0,Rr=0,th=0,pe=0,$$=0,B8=0,Ds=0,En=0,Cn=0,x9=0,mn=0,xr=0,J4=0,l$=0;l$=m,V1=t>>>0<245;do if(V1){if(g2=t>>>0<11,c4=t+11|0,H4=c4&-8,Be=g2?16:H4,bA=Be>>>3,Aa=e[138262]|0,HA=Aa>>>bA,Uc=HA&3,Ig=(Uc|0)==0,!Ig){a2=HA&1,h3=a2^1,$3=h3+bA|0,o3=$3<<1,c3=553088+(o3<<2)|0,Q0=o3+2|0,_6=553088+(Q0<<2)|0,S6=e[_6>>2]|0,R6=S6+8|0,D6=e[R6>>2]|0,f9=(c3|0)==(D6|0);do if(f9)G9=1<<$3,D4=G9^-1,ue=Aa&D4,e[138262]=ue;else if(Ze=e[138266]|0,ae=D6>>>0>>0,ae&&Q2(),B4=D6+12|0,C9=e[B4>>2]|0,F8=(C9|0)==(S6|0),F8){e[B4>>2]=c3,e[_6>>2]=D6;break}else Q2();while(!1);return h8=$3<<3,g7=h8|3,be=S6+4|0,e[be>>2]=g7,C0=h8|4,Ce=S6+C0|0,q4=e[Ce>>2]|0,t7=q4|1,e[Ce>>2]=t7,Ye=R6,Ye|0}if(He=e[138264]|0,H7=Be>>>0>He>>>0,H7){if(Tt=(HA|0)==0,!Tt){Nt=HA<>>12,Zr=uA&16,ts=Jn>>>Zr,zi=ts>>>5,Zi=zi&8,Mh=Zi|Zr,rl=ts>>>Zi,Vh=rl>>>2,Xo=Vh&4,nf=Mh|Xo,Il=rl>>>Xo,ml=Il>>>1,wl=ml&2,Qf=nf|wl,xl=Il>>>wl,Ff=xl>>>1,Gl=Ff&1,qf=Qf|Gl,Vf=xl>>>Gl,ga=qf+Vf|0,zl=ga<<1,Xl=553088+(zl<<2)|0,U1=zl+2|0,nc=553088+(U1<<2)|0,an=e[nc>>2]|0,ma=an+8|0,$s=e[ma>>2]|0,Pu=(Xl|0)==($s|0);do if(Pu)hc=1<>>0>>0,er&&Q2(),kc=$s+12|0,_I=e[kc>>2]|0,LI=(_I|0)==(an|0),LI){e[kc>>2]=Xl,e[nc>>2]=$s,y=e[138264]|0,jA=y;break}else Q2();while(!1);return Oc=ga<<3,ba=Oc-Be|0,WI=Be|3,Ad=an+4|0,e[Ad>>2]=WI,fd=an+Be|0,Ed=ba|1,j1=Be|4,kd=an+j1|0,e[kd>>2]=Ed,bd=an+Oc|0,e[bd>>2]=ba,hg=(jA|0)==0,hg||(XA=e[138267]|0,Bg=jA>>>3,to=Bg<<1,wg=553088+(to<<2)|0,vg=e[138262]|0,bg=1<>2]|0,C2=e[138266]|0,s5=t2>>>0>>0,s5?Q2():(N=Cs,ao=t2)),e[N>>2]=XA,$5=ao+12|0,e[$5>>2]=XA,G5=XA+8|0,e[G5>>2]=ao,Z2=XA+12|0,e[Z2>>2]=wg),e[138264]=ba,e[138267]=fd,Ye=ma,Ye|0}if(a5=e[138263]|0,E3=(a5|0)==0,E3)k4=Be;else{for(V5=0-a5|0,y3=a5&V5,m3=y3+-1|0,q3=m3>>>12,M3=q3&16,Z5=m3>>>M3,Q3=Z5>>>5,j5=Q3&8,j3=j5|M3,_3=Z5>>>j5,T3=_3>>>2,a3=T3&4,l3=j3|a3,C3=_3>>>a3,q5=C3>>>1,N5=q5&2,P5=l3|N5,y5=C3>>>N5,G3=y5>>>1,L5=G3&1,t6=P5|L5,t3=y5>>>L5,R3=t6+t3|0,f6=553352+(R3<<2)|0,B3=e[f6>>2]|0,w3=B3+4|0,p3=e[w3>>2]|0,X3=p3&-8,V3=X3-Be|0,Eo=V3,s$=B3,$$=B3;;){if(N3=s$+16|0,z5=e[N3>>2]|0,k3=(z5|0)==0,k3)if(U3=s$+20|0,o6=e[U3>>2]|0,u3=(o6|0)==0,u3){dn=Eo,B8=$$;break}else k6=o6;else k6=z5;w6=k6+4|0,v6=e[w6>>2]|0,B6=v6&-8,z3=B6-Be|0,a6=z3>>>0>>0,H=a6?z3:Eo,A2=a6?k6:$$,Eo=H,s$=k6,$$=A2}p6=e[138266]|0,Y6=B8>>>0>>0,Y6&&Q2(),m6=B8+Be|0,v3=B8>>>0>>0,v3||Q2(),Z3=B8+24|0,W3=e[Z3>>2]|0,u6=B8+12|0,O3=e[u6>>2]|0,S3=(O3|0)==(B8|0);do if(S3){if(T6=B8+20|0,e6=e[T6>>2]|0,Q6=(e6|0)==0,Q6)if(K6=B8+16|0,d6=e[K6>>2]|0,J6=(d6|0)==0,J6){vt=0;break}else rr=d6,$o=K6;else rr=e6,$o=T6;for(;;){if(x3=rr+20|0,Z6=e[x3>>2]|0,G6=(Z6|0)==0,!G6){rr=Z6,$o=x3;continue}if(j6=rr+16|0,r9=e[j6>>2]|0,x6=(r9|0)==0,x6){nr=rr,Kg=$o;break}else rr=r9,$o=j6}if(N6=Kg>>>0>>0,N6)Q2();else{e[Kg>>2]=0,vt=nr;break}}else if(P3=B8+8|0,Y3=e[P3>>2]|0,i6=Y3>>>0>>0,i6&&Q2(),i3=Y3+12|0,P6=e[i3>>2]|0,A3=(P6|0)==(B8|0),A3||Q2(),r6=O3+8|0,I6=e[r6>>2]|0,D3=(I6|0)==(B8|0),D3){e[i3>>2]=O3,e[r6>>2]=Y3,vt=O3;break}else Q2();while(!1);V6=(W3|0)==0;do if(!V6){if(y6=B8+28|0,F6=e[y6>>2]|0,F3=553352+(F6<<2)|0,L6=e[F3>>2]|0,X6=(B8|0)==(L6|0),X6){if(e[F3>>2]=vt,JE=(vt|0)==0,JE){s9=1<>>0>>0,o9&&Q2(),M9=W3+16|0,E6=e[M9>>2]|0,M6=(E6|0)==(B8|0),M6?e[M9>>2]=vt:(e9=W3+20|0,e[e9>>2]=vt),T9=(vt|0)==0,T9)break;u9=e[138266]|0,d4=vt>>>0>>0,d4&&Q2(),n4=vt+24|0,e[n4>>2]=W3,V9=B8+16|0,v9=e[V9>>2]|0,I9=(v9|0)==0;do if(!I9)if(H6=v9>>>0>>0,H6)Q2();else{t9=vt+16|0,e[t9>>2]=v9,E4=v9+24|0,e[E4>>2]=vt;break}while(!1);if(v4=B8+20|0,s4=e[v4>>2]|0,p9=(s4|0)==0,!p9)if(S4=e[138266]|0,x4=s4>>>0>>0,x4)Q2();else{T4=vt+20|0,e[T4>>2]=s4,W4=s4+24|0,e[W4>>2]=vt;break}}while(!1);return C4=dn>>>0<16,C4?(G4=dn+Be|0,N9=G4|3,N4=B8+4|0,e[N4>>2]=N9,Z1=G4+4|0,A4=B8+Z1|0,F4=e[A4>>2]|0,g4=F4|1,e[A4>>2]=g4):(P9=Be|3,d9=B8+4|0,e[d9>>2]=P9,Ie=dn|1,c0=Be|4,Le=B8+c0|0,e[Le>>2]=Ie,l0=dn+Be|0,ze=B8+l0|0,e[ze>>2]=dn,U4=e[138264]|0,Me=(U4|0)==0,Me||(O4=e[138267]|0,j4=U4>>>3,we=j4<<1,z9=553088+(we<<2)|0,Ae=e[138262]|0,h4=1<>2]|0,oe=e[138266]|0,Z9=b4>>>0>>0,Z9?Q2():(T=o4,Ka=b4)),e[T>>2]=O4,$e=Ka+12|0,e[$e>>2]=O4,m4=O4+8|0,e[m4>>2]=Ka,X4=O4+12|0,e[X4>>2]=z9),e[138264]=dn,e[138267]=m6),L4=B8+8|0,Ye=L4,Ye|0}}else k4=Be}else if(le=t>>>0>4294967231,le)k4=-1;else if(E9=t+11|0,$6=E9&-8,Te=e[138263]|0,a4=(Te|0)==0,a4)k4=$6;else{de=0-$6|0,$4=E9>>>8,U6=($4|0)==0,U6?In=0:(ke=$6>>>0>16777215,ke?In=31:(ve=$4+1048320|0,We=ve>>>16,l4=We&8,w4=$4<>>16,Q9=H3&4,M4=Q9|l4,ee=w4<>>16,$7=Se&2,Q7=M4|$7,K8=14-Q7|0,l7=ee<<$7,c7=l7>>>15,x8=K8+c7|0,L8=x8<<1,M8=x8+7|0,V8=$6>>>M8,z8=V8&1,y7=z8|L8,In=y7)),T8=553352+(In<<2)|0,G8=e[T8>>2]|0,N8=(G8|0)==0;e:do if(N8)Qs=de,A$=0,Cn=0,J4=86;else for(y8=(In|0)==31,w8=In>>>1,U8=25-w8|0,O8=y8?0:U8,Z8=$6<>2]|0,Ge=f8&-8,De=Ge-$6|0,je=De>>>0>>0,je)if(k8=(Ge|0)==($6|0),k8){ys=De,_r=Pi,xr=Pi,J4=90;break e}else ps=De,En=Pi;else ps=r$,En=Ds;if(y9=Pi+20|0,Ee=e[y9>>2]|0,h7=Co>>>31,w7=(Pi+16|0)+(h7<<2)|0,j8=e[w7>>2]|0,k7=(Ee|0)==0,te=(Ee|0)==(j8|0),jE=k7|te,Xg=jE?jg:Ee,X8=(j8|0)==0,P8=Co<<1,X8){Qs=ps,A$=Xg,Cn=En,J4=86;break}else r$=ps,jg=Xg,Co=P8,Pi=j8,Ds=En}while(!1);if((J4|0)==86){if(v8=(A$|0)==0,Xe=(Cn|0)==0,ZE=v8&Xe,ZE){if(e8=2<>>12,ge=d8&16,Ne=i8>>>ge,Ue=Ne>>>5,j9=Ue&8,_e=j9|ge,he=Ne>>>j9,r8=he>>>2,me=r8&4,p4=_e|me,E8=he>>>me,e7=E8>>>1,I3=e7&2,Oe=p4|I3,C8=E8>>>I3,ie=C8>>>1,H9=ie&1,re=Oe|H9,S9=C8>>>H9,Pe=re+S9|0,H8=553352+(Pe<<2)|0,f7=e[H8>>2]|0,o$=f7,mn=0}else o$=A$,mn=Cn;i7=(o$|0)==0,i7?(W7=Qs,x9=mn):(ys=Qs,_r=o$,xr=mn,J4=90)}if((J4|0)==90)for(;;){if(J4=0,q8=_r+4|0,r7=e[q8>>2]|0,Y8=r7&-8,n8=Y8-$6|0,s8=n8>>>0>>0,X=s8?n8:ys,a$=s8?_r:xr,D8=_r+16|0,Y4=e[D8>>2]|0,n7=(Y4|0)==0,!n7){ys=X,_r=Y4,xr=a$,J4=90;continue}if(b8=_r+20|0,m9=e[b8>>2]|0,s7=(m9|0)==0,s7){W7=X,x9=a$;break}else ys=X,_r=m9,xr=a$,J4=90}if(qe=(x9|0)==0,qe)k4=$6;else if(M7=e[138264]|0,P7=M7-$6|0,v7=W7>>>0>>0,v7){A7=e[138266]|0,S7=x9>>>0>>0,S7&&Q2(),ne=x9+$6|0,T7=x9>>>0>>0,T7||Q2(),A8=x9+24|0,_8=e[A8>>2]|0,D7=x9+12|0,J8=e[D7>>2]|0,Re=(J8|0)==(x9|0);do if(Re){if(Y7=x9+20|0,ft=e[Y7>>2]|0,J7=(ft|0)==0,J7)if(ut=x9+16|0,it=e[ut>>2]|0,ii=(it|0)==0,ii){Dt=0;break}else un=it,co=ut;else un=ft,co=Y7;for(;;){if(It=un+20|0,dt=e[It>>2]|0,ri=(dt|0)==0,!ri){un=dt,co=It;continue}if(Et=un+16|0,rt=e[Et>>2]|0,ni=(rt|0)==0,ni){HE=un,ja=co;break}else un=rt,co=Et}if(Ut=ja>>>0>>0,Ut)Q2();else{e[ja>>2]=0,Dt=HE;break}}else if(fe=x9+8|0,X9=e[fe>>2]|0,b7=X9>>>0>>0,b7&&Q2(),tt=X9+12|0,Mt=e[tt>>2]|0,Gt=(Mt|0)==(x9|0),Gt||Q2(),gt=J8+8|0,q7=e[gt>>2]|0,ht=(q7|0)==(x9|0),ht){e[tt>>2]=J8,e[gt>>2]=X9,Dt=J8;break}else Q2();while(!1);Ot=(_8|0)==0;do if(!Ot){if(Pt=x9+28|0,Ht=e[Pt>>2]|0,Ct=553352+(Ht<<2)|0,qt=e[Ct>>2]|0,K7=(x9|0)==(qt|0),K7){if(e[Ct>>2]=Dt,fo=(Dt|0)==0,fo){st=1<>>0>>0,Ai&&Q2(),mt=_8+16|0,Bt=e[mt>>2]|0,pt=(Bt|0)==(x9|0),pt?e[mt>>2]=Dt:(Kt=_8+20|0,e[Kt>>2]=Dt),Qt=(Dt|0)==0,Qt)break;z7=e[138266]|0,yt=Dt>>>0>>0,yt&&Q2(),Vt=Dt+24|0,e[Vt>>2]=_8,At=x9+16|0,N7=e[At>>2]|0,wt=(N7|0)==0;do if(!wt)if(_7=N7>>>0>>0,_7)Q2();else{ot=Dt+16|0,e[ot>>2]=N7,i9=N7+24|0,e[i9>>2]=Dt;break}while(!1);if(u7=x9+20|0,m8=e[u7>>2]|0,I7=(m8|0)==0,!I7)if(R7=e[138266]|0,Pr=m8>>>0>>0,Pr)Q2();else{fr=Dt+20|0,e[fr>>2]=m8,zs=m8+24|0,e[zs>>2]=Dt;break}}while(!1);Zs=W7>>>0<16;e:do if(Zs)Tn=W7+$6|0,Ws=Tn|3,js=x9+4|0,e[js>>2]=Ws,c1=Tn+4|0,Gn=x9+c1|0,Xs=e[Gn>>2]|0,Hr=Xs|1,e[Gn>>2]=Hr;else{if(eA=$6|3,tA=x9+4|0,e[tA>>2]=eA,iA=W7|1,r0=$6|4,rA=x9+r0|0,e[rA>>2]=iA,f0=W7+$6|0,Un=x9+f0|0,e[Un>>2]=W7,On=W7>>>3,nA=W7>>>0<256,nA){qr=On<<1,Pn=553088+(qr<<2)|0,Yr=e[138262]|0,Hn=1<>2]|0,aA=e[138266]|0,ur=Yn>>>0>>0,ur?Q2():(M=Jr,za=Yn)),e[M>>2]=ne,Kr=za+12|0,e[Kr>>2]=ne,U0=$6+8|0,$A=x9+U0|0,e[$A>>2]=za,O0=$6+12|0,lA=x9+O0|0,e[lA>>2]=Pn;break}if(Vr=W7>>>8,oi=(Vr|0)==0,oi?vr=0:(cA=W7>>>0>16777215,cA?vr=31:(gA=Vr+1048320|0,Kn=gA>>>16,Vn=Kn&8,zn=Vr<>>16,zr=ai&4,fA=zr|Vn,Zn=zn<>>16,Wn=dA&2,EA=fA|Wn,CA=14-EA|0,mA=Zn<>>15,jn=CA+BA|0,pA=jn<<1,QA=jn+7|0,Ir=W7>>>QA,Wr=Ir&1,yA=Wr|pA,vr=yA)),Vi=553352+(vr<<2)|0,g1=$6+28|0,wA=x9+g1|0,e[wA>>2]=vr,_1=$6+16|0,Xn=x9+_1|0,v1=$6+20|0,jr=x9+v1|0,e[jr>>2]=0,e[Xn>>2]=0,es=e[138263]|0,Xr=1<>2]=ne,q1=$6+24|0,rs=x9+q1|0,e[rs>>2]=Vi,r2=$6+12|0,ns=x9+r2|0,e[ns>>2]=ne,O1=$6+8|0,SA=x9+O1|0,e[SA>>2]=ne;break}dr=e[Vi>>2]|0,ss=dr+4|0,$i=e[ss>>2]|0,en=$i&-8,Er=(en|0)==(W7|0);t:do if(Er)bt=dr;else{for(Cr=(vr|0)==31,Ui=vr>>>1,mr=25-Ui|0,As=Cr?0:mr,Oi=W7<>>31,li=(Xa+16|0)+(pr<<2)|0,zt=e[li>>2]|0,DA=(zt|0)==0,DA){w=li,qE=Xa;break}if(mi=Za<<1,Bi=zt+4|0,pi=e[Bi>>2]|0,Br=pi&-8,Wi=(Br|0)==(W7|0),Wi){bt=zt;break t}else Za=mi,Xa=zt}if(at=e[138266]|0,j$=w>>>0>>0,j$)Q2();else{e[w>>2]=ne,h0=$6+24|0,tn=x9+h0|0,e[tn>>2]=qE,G0=$6+12|0,rn=x9+G0|0,e[rn>>2]=ne,N0=$6+8|0,Lh=x9+N0|0,e[Lh>>2]=ne;break e}}while(!1);if(X$=bt+8|0,zo=e[X$>>2]|0,el=e[138266]|0,Th=zo>>>0>=el>>>0,zg=bt>>>0>=el>>>0,Gh=Th&zg,Gh){Nh=zo+12|0,e[Nh>>2]=ne,e[X$>>2]=ne,l2=$6+8|0,Zo=x9+l2|0,e[Zo>>2]=zo,h2=$6+12|0,tl=x9+h2|0,e[tl>>2]=bt,d0=$6+24|0,il=x9+d0|0,e[il>>2]=0;break}else Q2()}while(!1);return Wo=x9+8|0,Ye=Wo,Ye|0}else k4=$6}while(!1);if(nn=e[138264]|0,Uh=nn>>>0>>0,!Uh)return _A=nn-k4|0,ji=e[138267]|0,Oh=_A>>>0>15,Oh?(Ph=ji+k4|0,e[138267]=Ph,e[138264]=_A,Hh=_A|1,f1=k4+4|0,qh=ji+f1|0,e[qh>>2]=Hh,Yh=ji+nn|0,e[Yh>>2]=_A,Jh=k4|3,Kh=ji+4|0,e[Kh>>2]=Jh):(e[138264]=0,e[138267]=0,zh=nn|3,Zh=ji+4|0,e[Zh>>2]=zh,s0=nn+4|0,nl=ji+s0|0,Qr=e[nl>>2]|0,Wh=Qr|1,e[nl>>2]=Wh),jh=ji+8|0,Ye=jh,Ye|0;if(sl=e[138265]|0,Xh=sl>>>0>k4>>>0,Xh)return jo=sl-k4|0,e[138265]=jo,RA=e[138268]|0,ef=RA+k4|0,e[138268]=ef,tf=jo|1,U=k4+4|0,ea=RA+U|0,e[ea>>2]=tf,Al=k4|3,ol=RA+4|0,e[ol>>2]=Al,al=RA+8|0,Ye=al,Ye|0;ta=e[138380]|0,$l=(ta|0)==0;do if($l)if(xA=Ev(30)|0,rf=xA+-1|0,ll=rf&xA,sf=(ll|0)==0,sf){e[138382]=xA,e[138381]=xA,e[138383]=-1,e[138384]=-1,e[138385]=0,e[138373]=0,Af=Kp(0)|0,cl=Af&-16,of=cl^1431655768,e[138380]=of;break}else Q2();while(!1);if(af=k4+48|0,gl=e[138382]|0,hl=k4+47|0,fl=gl+hl|0,ul=0-gl|0,sn=fl&ul,$f=sn>>>0>k4>>>0,!$f||(dl=e[138372]|0,lf=(dl|0)==0,!lf&&(El=e[138370]|0,Cl=El+sn|0,cf=Cl>>>0<=El>>>0,gf=Cl>>>0>dl>>>0,Io=cf|gf,Io)))return Ye=0,Ye|0;hf=e[138373]|0,ia=hf&4,Bl=(ia|0)==0;e:do if(Bl){os=e[138268]|0,pl=(os|0)==0;t:do if(pl)J4=174;else{for(ws=553496;;){if(ra=e[ws>>2]|0,ff=ra>>>0>os>>>0,!ff&&(Ql=ws+4|0,uf=e[Ql>>2]|0,yl=ra+uf|0,If=yl>>>0>os>>>0,If)){v=ws,S=Ql;break}if(df=ws+8|0,kl=e[df>>2]|0,Ef=(kl|0)==0,Ef){J4=174;break t}else ws=kl}if(bf=e[138265]|0,_f=fl-bf|0,TA=_f&ul,Rf=TA>>>0<2147483647,Rf)if(GA=Lt(TA|0)|0,xf=e[v>>2]|0,Lf=e[S>>2]|0,Mf=xf+Lf|0,Ll=(GA|0)==(Mf|0),n=Ll?TA:0,Ll)if(Tf=(GA|0)==-1,Tf)Rr=n;else{s6=GA,pe=n,J4=194;break e}else ho=GA,Xt=TA,mo=n,J4=184;else Rr=0}while(!1);do if((J4|0)==174)if(FA=Lt(0)|0,Cf=(FA|0)==-1,Cf)Rr=0;else if(na=FA,vl=e[138381]|0,Sl=vl+-1|0,mf=Sl&na,Bf=(mf|0)==0,Bf?br=sn:(pf=Sl+na|0,yf=0-vl|0,wf=pf&yf,LA=sn-na|0,Dl=LA+wf|0,br=Dl),bl=e[138370]|0,_l=bl+br|0,MA=br>>>0>k4>>>0,kf=br>>>0<2147483647,WE=MA&kf,WE){if(Rl=e[138372]|0,vf=(Rl|0)==0,!vf&&(Sf=_l>>>0<=bl>>>0,Df=_l>>>0>Rl>>>0,XE=Sf|Df,XE)){Rr=0;break}if(Fl=Lt(br|0)|0,sa=(Fl|0)==(FA|0),eh=sa?br:0,sa){s6=FA,pe=eh,J4=194;break e}else ho=Fl,Xt=br,mo=eh,J4=184}else Rr=0;while(!1);t:do if((J4|0)==184){Gf=0-Xt|0,Nf=(ho|0)!=-1,Uf=Xt>>>0<2147483647,tC=Uf&Nf,Ml=af>>>0>Xt>>>0,iC=Ml&tC;do if(iC)if(Tl=e[138382]|0,Xi=hl-Xt|0,NA=Xi+Tl|0,oa=0-Tl|0,aa=NA&oa,An=aa>>>0<2147483647,An)if(Nl=Lt(aa|0)|0,on=(Nl|0)==-1,on){Lt(Gf|0)|0,Rr=mo;break t}else{Of=aa+Xt|0,n$=Of;break}else n$=Xt;else n$=Xt;while(!1);if(Ul=(ho|0)==-1,Ul)Rr=mo;else{s6=ho,pe=n$,J4=194;break e}}while(!1);Pf=e[138373]|0,Hf=Pf|4,e[138373]=Hf,th=Rr,J4=191}else th=0,J4=191;while(!1);if((J4|0)==191&&(Yf=sn>>>0<2147483647,Yf&&(UA=Lt(sn|0)|0,$a=Lt(0)|0,yr=(UA|0)!=-1,Jf=($a|0)!=-1,eC=yr&Jf,Kf=UA>>>0<$a>>>0,rC=Kf&eC,rC&&(Ol=$a,la=UA,Pl=Ol-la|0,Hl=k4+40|0,ql=Pl>>>0>Hl>>>0,d2=ql?Pl:th,ql&&(s6=UA,pe=d2,J4=194)))),(J4|0)==194){zf=e[138370]|0,ca=zf+pe|0,e[138370]=ca,Zf=e[138371]|0,Wf=ca>>>0>Zf>>>0,Wf&&(e[138371]=ca),U9=e[138268]|0,jf=(U9|0)==0;e:do if(jf){for(Yl=e[138266]|0,Xf=(Yl|0)==0,eu=s6>>>0>>0,nC=Xf|eu,nC&&(e[138266]=s6),e[138374]=s6,e[138375]=pe,e[138377]=0,tu=e[138380]|0,e[138271]=tu,e[138270]=-1,uo=0;ha=uo<<1,Jl=553088+(ha<<2)|0,o0=ha+3|0,iu=553088+(o0<<2)|0,e[iu>>2]=Jl,j=ha+2|0,ru=553088+(j<<2)|0,e[ru>>2]=Jl,Kl=uo+1|0,VE=(Kl|0)==32,!VE;)uo=Kl;Vl=pe+-40|0,nu=s6+8|0,fa=nu,ua=fa&7,Zl=(ua|0)==0,su=0-fa|0,Wl=su&7,Ia=Zl?0:Wl,Au=s6+Ia|0,jl=Vl-Ia|0,e[138268]=Au,e[138265]=jl,ou=jl|1,V=Ia+4|0,au=s6+V|0,e[au>>2]=ou,l1=pe+-36|0,$u=s6+l1|0,e[$u>>2]=40,lu=e[138384]|0,e[138269]=lu}else{for(vs=553496;;){if(ec=e[vs>>2]|0,da=vs+4|0,OA=e[da>>2]|0,tc=ec+OA|0,cu=(s6|0)==(tc|0),cu){C=ec,p=da,B=OA,sC=vs,J4=204;break}if(ic=vs+8|0,rc=e[ic>>2]|0,gu=(rc|0)==0,gu)break;vs=rc}if((J4|0)==204&&(hu=sC+12|0,fu=e[hu>>2]|0,uu=fu&8,Iu=(uu|0)==0,Iu&&(du=U9>>>0>=C>>>0,Eu=U9>>>0>>0,Wg=Eu&du,Wg))){Cu=B+pe|0,e[p>>2]=Cu,mu=e[138265]|0,sc=mu+pe|0,Bu=U9+8|0,Ac=Bu,pu=Ac&7,Qu=(pu|0)==0,oc=0-Ac|0,yu=oc&7,as=Qu?0:yu,ac=U9+as|0,Ea=sc-as|0,e[138268]=ac,e[138265]=Ea,wu=Ea|1,n0=as+4|0,PA=U9+n0|0,e[PA>>2]=wu,n1=sc+4|0,Ca=U9+n1|0,e[Ca>>2]=40,ku=e[138384]|0,e[138269]=ku;break}for($c=e[138266]|0,vu=s6>>>0<$c>>>0,vu?(e[138266]=s6,gs=s6):gs=$c,Su=s6+pe|0,Ss=553496;;){if(Du=e[Ss>>2]|0,bu=(Du|0)==(Su|0),bu){I=Ss,sr=Ss,J4=212;break}if(_u=Ss+8|0,lc=e[_u>>2]|0,Ru=(lc|0)==0,Ru){ks=553496;break}else Ss=lc}if((J4|0)==212)if(xu=sr+12|0,Fu=e[xu>>2]|0,Ba=Fu&8,Lu=(Ba|0)==0,Lu){e[I>>2]=s6,pa=sr+4|0,Mu=e[pa>>2]|0,Tu=Mu+pe|0,e[pa>>2]=Tu,Gu=s6+8|0,cc=Gu,Nu=cc&7,Uu=(Nu|0)==0,Ou=0-cc|0,Hu=Ou&7,qA=Uu?0:Hu,qu=s6+qA|0,u0=pe+8|0,Yu=s6+u0|0,gc=Yu,Ju=gc&7,Ku=(Ju|0)==0,Vu=0-gc|0,zu=Vu&7,ci=Ku?0:zu,k0=ci+pe|0,gi=s6+k0|0,fc=gi,Qa=qu,Zu=fc-Qa|0,i0=qA+k4|0,Zt=s6+i0|0,ls=Zu-k4|0,Wu=k4|3,g0=qA+4|0,ju=s6+g0|0,e[ju>>2]=Wu,Xu=(gi|0)==(U9|0);t:do if(Xu)eI=e[138265]|0,uc=eI+ls|0,e[138265]=uc,e[138268]=Zt,iI=uc|1,H1=i0+4|0,rI=s6+H1|0,e[rI>>2]=iI;else{if(Ic=e[138267]|0,nI=(gi|0)==(Ic|0),nI){sI=e[138264]|0,cs=sI+ls|0,e[138264]=cs,e[138267]=Zt,ya=cs|1,K1=i0+4|0,AI=s6+K1|0,e[AI>>2]=ya,P1=cs+i0|0,dc=s6+P1|0,e[dc>>2]=cs;break}if(A1=pe+4|0,J0=A1+ci|0,aI=s6+J0|0,YA=e[aI>>2]|0,$I=YA&3,lI=($I|0)==1,lI){Ec=YA&-8,Cc=YA>>>3,cI=YA>>>0<256;i:do if(cI){N1=ci|8,Y0=N1+pe|0,gI=s6+Y0|0,$n=e[gI>>2]|0,w1=pe+12|0,H0=w1+ci|0,hI=s6+H0|0,ln=e[hI>>2]|0,uI=Cc<<1,mc=553088+(uI<<2)|0,II=($n|0)==(mc|0);do if(!II){if(dI=$n>>>0>>0,dI&&Q2(),Bc=$n+12|0,EI=e[Bc>>2]|0,pc=(EI|0)==(gi|0),pc)break;Q2()}while(!1);if(CI=(ln|0)==($n|0),CI){wa=1<>>0>>0,pI&&Q2(),wc=ln+8|0,QI=e[wc>>2]|0,yI=(QI|0)==(gi|0),yI){G=wc;break}Q2()}while(!1);wI=$n+12|0,e[wI>>2]=ln,e[G>>2]=$n}else{x1=ci|24,D0=x1+pe|0,kI=s6+D0|0,hs=e[kI>>2]|0,Y1=pe+12|0,B0=Y1+ci|0,vI=s6+B0|0,cn=e[vI>>2]|0,SI=(cn|0)==(gi|0);do if(SI){if(W1=ci|16,S0=A1+W1|0,bc=s6+S0|0,_c=e[bc>>2]|0,xI=(_c|0)==0,xI)if(L0=W1+pe|0,Rc=s6+L0|0,xc=e[Rc>>2]|0,FI=(xc|0)==0,FI){St=0;break}else fn=xc,lo=Rc;else fn=_c,lo=bc;for(;;){if(Fc=fn+20|0,Lc=e[Fc>>2]|0,MI=(Lc|0)==0,!MI){fn=Lc,lo=Fc;continue}if(Mc=fn+16|0,Tc=e[Mc>>2]|0,TI=(Tc|0)==0,TI){PE=fn,Jg=lo;break}else fn=Tc,lo=Mc}if(GI=Jg>>>0>>0,GI)Q2();else{e[Jg>>2]=0,St=PE;break}}else if(L1=ci|8,x0=L1+pe|0,DI=s6+x0|0,ka=e[DI>>2]|0,bI=ka>>>0>>0,bI&&Q2(),va=ka+12|0,Sa=e[va>>2]|0,vc=(Sa|0)==(gi|0),vc||Q2(),Sc=cn+8|0,RI=e[Sc>>2]|0,Dc=(RI|0)==(gi|0),Dc){e[va>>2]=cn,e[Sc>>2]=ka,St=cn;break}else Q2();while(!1);if(Gc=(hs|0)==0,Gc)break;y1=pe+28|0,F0=y1+ci|0,Da=s6+F0|0,Nc=e[Da>>2]|0,Pc=553352+(Nc<<2)|0,NI=e[Pc>>2]|0,UI=(gi|0)==(NI|0);do if(UI){if(e[Pc>>2]=St,KE=(St|0)==0,!KE)break;OI=1<>>0>>0,JI&&Q2(),Hc=hs+16|0,KI=e[Hc>>2]|0,VI=(KI|0)==(gi|0),VI?e[Hc>>2]=St:(zI=hs+20|0,e[zI>>2]=St),qc=(St|0)==0,qc)break i;while(!1);Yc=e[138266]|0,ZI=St>>>0>>0,ZI&&Q2(),Jc=St+24|0,e[Jc>>2]=hs,k1=ci|16,M0=k1+pe|0,_a=s6+M0|0,JA=e[_a>>2]|0,Kc=(JA|0)==0;do if(!Kc)if(jI=JA>>>0>>0,jI)Q2();else{XI=St+16|0,e[XI>>2]=JA,ed=JA+24|0,e[ed>>2]=St;break}while(!1);if(P0=A1+k1|0,Vc=s6+P0|0,KA=e[Vc>>2]|0,td=(KA|0)==0,td)break;if(id=e[138266]|0,rd=KA>>>0>>0,rd)Q2();else{nd=St+20|0,e[nd>>2]=KA,sd=KA+24|0,e[sd>>2]=St;break}}while(!1);s2=Ec|ci,R0=s2+pe|0,od=s6+R0|0,ad=Ec+ls|0,Zg=od,jt=ad}else Zg=gi,jt=ls;if(zc=Zg+4|0,$d=e[zc>>2]|0,ld=$d&-2,e[zc>>2]=ld,cd=jt|1,y0=i0+4|0,gd=s6+y0|0,e[gd>>2]=cd,E0=jt+i0|0,VA=s6+E0|0,e[VA>>2]=jt,Zc=jt>>>3,hd=jt>>>0<256,hd){gn=Zc<<1,Wc=553088+(gn<<2)|0,jc=e[138262]|0,Ra=1<>2]|0,dd=e[138266]|0,Cd=tg>>>0
>>0,!Cd){L=eg,Va=tg;break}Q2()}while(!1);e[L>>2]=Zt,md=Va+12|0,e[md>>2]=Zt,B1=i0+8|0,Bd=s6+B1|0,e[Bd>>2]=Va,p1=i0+12|0,zA=s6+p1|0,e[zA>>2]=Wc;break}xa=jt>>>8,pd=(xa|0)==0;do if(pd)Sr=0;else{if(Qd=jt>>>0>16777215,Qd){Sr=31;break}yd=xa+1048320|0,wd=yd>>>16,ig=wd&8,rg=xa<>>16,ng=Sd&4,wr=ng|ig,sg=rg<>>16,og=Dd&2,ZA=wr|og,_d=14-ZA|0,Rd=sg<>>15,ag=_d+WA|0,xd=ag<<1,Fd=ag+7|0,$g=jt>>>Fd,Ld=$g&1,Md=Ld|xd,Sr=Md}while(!1);if(Fa=553352+(Sr<<2)|0,p0=i0+28|0,Td=s6+p0|0,e[Td>>2]=Sr,V0=i0+16|0,Gd=s6+V0|0,T0=i0+20|0,Nd=s6+T0|0,e[Nd>>2]=0,e[Gd>>2]=0,lg=e[138263]|0,cg=1<>2]=Zt,r1=i0+24|0,fs=s6+r1|0,e[fs>>2]=Fa,e1=i0+12|0,Pd=s6+e1|0,e[Pd>>2]=Zt,i1=i0+8|0,Hd=s6+i1|0,e[Hd>>2]=Zt;break}La=e[Fa>>2]|0,fg=La+4|0,qd=e[fg>>2]|0,Yd=qd&-8,Jd=(Yd|0)==(jt|0);i:do if(Jd)Dr=La;else{for(Kd=(Sr|0)==31,ug=Sr>>>1,Vd=25-ug|0,zd=Kd?0:Vd,Zd=jt<>>31,mg=(e$+16|0)+(Cg<<2)|0,us=e[mg>>2]|0,Qi=(us|0)==0,Qi){o=mg,YE=e$;break}if(Wd=Bs<<1,jd=us+4|0,dg=e[jd>>2]|0,Eg=dg&-8,Xd=(Eg|0)==(jt|0),Xd){Dr=us;break i}else Bs=Wd,e$=us}if(tr=e[138266]|0,eE=o>>>0>>0,eE)Q2();else{e[o>>2]=Zt,E1=i0+24|0,tE=s6+E1|0,e[tE>>2]=YE,u1=i0+12|0,iE=s6+u1|0,e[iE>>2]=Zt,d1=i0+8|0,rE=s6+d1|0,e[rE>>2]=Zt;break t}}while(!1);if(Ma=Dr+8|0,eo=e[Ma>>2]|0,pg=e[138266]|0,Qg=eo>>>0>=pg>>>0,i$=Dr>>>0>=pg>>>0,nE=Qg&i$,nE){Is=eo+12|0,e[Is>>2]=Zt,e[Ma>>2]=Zt,z0=i0+8|0,sE=s6+z0|0,e[sE>>2]=eo,I1=i0+12|0,io=s6+I1|0,e[io>>2]=Dr,h1=i0+24|0,Ta=s6+h1|0,e[Ta>>2]=0;break}else Q2()}while(!1);return $1=qA|8,AE=s6+$1|0,Ye=AE,Ye|0}else ks=553496;for(;;){if(Ga=e[ks>>2]|0,oE=Ga>>>0>U9>>>0,!oE&&(aE=ks+4|0,yg=e[aE>>2]|0,ro=Ga+yg|0,$E=ro>>>0>U9>>>0,$E)){c=Ga,f=yg,E=ro;break}lE=ks+8|0,cE=e[lE>>2]|0,ks=cE}if(A0=f+-47|0,$0=f+-39|0,gE=c+$0|0,kg=gE,hE=kg&7,Z7=(hE|0)==0,Q4=0-kg|0,Wt=Q4&7,fE=Z7?0:Wt,a1=A0+fE|0,Sg=c+a1|0,Na=U9+16|0,uE=Sg>>>0>>0,kr=uE?U9:Sg,ds=kr+8|0,IE=pe+-40|0,dE=s6+8|0,Dg=dE,Ua=Dg&7,EE=(Ua|0)==0,_g=0-Dg|0,Rg=_g&7,Oa=EE?0:Rg,Pa=s6+Oa|0,xg=IE-Oa|0,e[138268]=Pa,e[138265]=xg,Es=xg|1,Z=Oa+4|0,Ha=s6+Z|0,e[Ha>>2]=Es,s1=pe+-36|0,Fg=s6+s1|0,e[Fg>>2]=40,CE=e[138384]|0,e[138269]=CE,hn=kr+4|0,e[hn>>2]=27,e[ds>>2]=e[138374]|0,e[ds+4>>2]=e[138375]|0,e[ds+8>>2]=e[138376]|0,e[ds+12>>2]=e[138377]|0,e[138374]=s6,e[138375]=pe,e[138377]=0,e[138376]=ds,Lg=kr+28|0,e[Lg>>2]=7,no=kr+32|0,BE=no>>>0>>0,BE)for(yi=Lg;Mg=yi+4|0,e[Mg>>2]=7,pE=yi+8|0,QE=pE>>>0>>0,QE;)yi=Mg;if(yE=(kr|0)==(U9|0),!yE){if(wE=kr,kE=U9,wi=wE-kE|0,SE=e[hn>>2]|0,DE=SE&-2,e[hn>>2]=DE,bE=wi|1,Tg=U9+4|0,e[Tg>>2]=bE,e[kr>>2]=wi,hi=wi>>>3,so=wi>>>0<256,so){qa=hi<<1,Gg=553088+(qa<<2)|0,Ng=e[138262]|0,Ug=1<>2]|0,FE=e[138266]|0,LE=Hg>>>0>>0,LE?Q2():(R=Pg,Ja=Hg)),e[R>>2]=U9,qg=Ja+12|0,e[qg>>2]=U9,ME=U9+8|0,e[ME>>2]=Ja,Ao=U9+12|0,e[Ao>>2]=Gg;break}if(oo=wi>>>8,TE=(oo|0)==0,TE?ir=0:(Ya=wi>>>0>16777215,Ya?ir=31:(GE=oo+1048320|0,NE=GE>>>16,Yg=NE&8,ms=oo<>>16,$2=OE&4,i2=$2|Yg,o2=ms<<$2,X1=o2+245760|0,n2=X1>>>16,f2=n2&2,e2=i2|f2,y2=14-e2|0,S2=o2<>>15,M2=y2+w2|0,_2=M2<<1,G2=M2+7|0,u2=wi>>>G2,K2=u2&1,N2=K2|_2,ir=N2)),q2=553352+(ir<<2)|0,T2=U9+28|0,e[T2>>2]=ir,O2=U9+20|0,e[O2>>2]=0,e[Na>>2]=0,V2=e[138263]|0,P2=1<>2]=U9,X2=U9+24|0,e[X2>>2]=q2,v5=U9+12|0,e[v5>>2]=U9,z2=U9+8|0,e[z2>>2]=U9;break}f5=e[q2>>2]|0,w5=f5+4|0,O5=e[w5>>2]|0,k2=O5&-8,E5=(k2|0)==(wi|0);t:do if(E5)go=f5;else{for(r5=(ir|0)==31,x2=ir>>>1,R2=25-x2|0,m2=r5?0:R2,C5=wi<>>31,l5=(t$+16|0)+(A5<<2)|0,S5=e[l5>>2]|0,m5=(S5|0)==0,m5){a=l5,Vg=t$;break}if(x5=Wa<<1,u5=S5+4|0,D5=e[u5>>2]|0,H2=D5&-8,I5=(H2|0)==(wi|0),I5){go=S5;break t}else Wa=x5,t$=S5}if(M1=e[138266]|0,k5=a>>>0>>0,k5)Q2();else{e[a>>2]=U9,c5=U9+24|0,e[c5>>2]=Vg,o5=U9+12|0,e[o5>>2]=U9,c2=U9+8|0,e[c2>>2]=U9;break e}}while(!1);if(B5=go+8|0,e5=e[B5>>2]|0,n5=e[138266]|0,g5=e5>>>0>=n5>>>0,zE=go>>>0>=n5>>>0,Y2=g5&zE,Y2){h5=e5+12|0,e[h5>>2]=U9,e[B5>>2]=U9,t5=U9+8|0,e[t5>>2]=e5,b5=U9+12|0,e[b5>>2]=go,W2=U9+24|0,e[W2>>2]=0;break}else Q2()}}while(!1);if(F2=e[138265]|0,p5=F2>>>0>k4>>>0,p5)return H5=F2-k4|0,e[138265]=H5,X5=e[138268]|0,d5=X5+k4|0,e[138268]=d5,f3=H5|1,K=k4+4|0,g3=X5+K|0,e[g3>>2]=f3,K5=k4|3,e3=X5+4|0,e[e3>>2]=K5,s3=X5+8|0,Ye=s3,Ye|0}return F5=Jp()|0,e[F5>>2]=12,Ye=0,Ye|0}function I2(t){t=t|0;var n=0,o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,B6=0,z3=0,a6=0,p6=0,_6=0,Y6=0,m6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,A3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,s4=0,p9=0,S4=0,D4=0,x4=0,T4=0,W4=0,C4=0,G4=0,N9=0,N4=0,A4=0,F4=0,g4=0,ue=0,P9=0,d9=0,Ie=0,Le=0,ze=0,U4=0,Me=0,O4=0,j4=0,we=0,Ze=0,z9=0,Ae=0,h4=0,b6=0,P4=0,R9=0,o4=0,b4=0,oe=0,Z9=0,ae=0,$e=0,m4=0,X4=0,L4=0,le=0,E9=0,$6=0,Te=0,a4=0,de=0,B4=0,$4=0,U6=0,ke=0,ve=0,We=0,l4=0,w4=0,g8=0,H3=0,Q9=0,C9=0,M4=0,ee=0,a7=0,Se=0;if(Se=m,X=(t|0)==0,!X){U=t+-8|0,K2=e[138266]|0,m6=U>>>0>>0,m6&&Q2(),y6=t+-4|0,o9=e[y6>>2]|0,V9=o9&3,x4=(V9|0)==1,x4&&Q2(),P9=o9&-8,p=P9+-8|0,z9=t+p|0,o0=o9&1,j=(o0|0)==0;do if(j){if(k0=e[U>>2]|0,S0=(V9|0)==0,S0)return;if(Q=-8-k0|0,v0=t+Q|0,z0=k0+P9|0,y1=v0>>>0>>0,y1&&Q2(),P1=e[138267]|0,s2=(v0|0)==(P1|0),s2){if(z=P9+-4|0,n0=t+z|0,i0=e[n0>>2]|0,r0=i0&3,K=(r0|0)==3,!K){H3=v0,Q9=z0;break}e[138264]=z0,c0=i0&-2,e[n0>>2]=c0,s0=z0|1,_=Q+4|0,l0=t+_|0,e[l0>>2]=s0,e[z9>>2]=z0;return}if(n2=k0>>>3,N2=k0>>>0<256,N2){if(Y=Q+8|0,v5=t+Y|0,m2=e[v5>>2]|0,t0=Q+12|0,m5=t+t0|0,Y2=e[m5>>2]|0,f3=n2<<1,q3=553088+(f3<<2)|0,C3=(m2|0)==(q3|0),C3||(f6=m2>>>0>>0,f6&&Q2(),o6=m2+12|0,v3=e[o6>>2]|0,P6=(v3|0)==(v0|0),P6||Q2()),J6=(Y2|0)==(m2|0),J6){G6=1<>>0>>0,D6&&Q2(),V6=Y2+8|0,F6=e[V6>>2]|0,F3=(F6|0)==(v0|0),F3?c=V6:Q2()),L6=m2+12|0,e[L6>>2]=Y2,e[c>>2]=m2,H3=v0,Q9=z0;break}F=Q+24|0,X6=t+F|0,s9=e[X6>>2]|0,R=Q+12|0,W6=t+R|0,g9=e[W6>>2]|0,h9=(g9|0)==(v0|0);do if(h9){if(M=Q+20|0,n4=t+M|0,c4=e[n4>>2]|0,G9=(c4|0)==0,G9)if(L=Q+16|0,v9=t+L|0,I9=e[v9>>2]|0,H6=(I9|0)==0,H6){E9=0;break}else L4=I9,de=v9;else L4=c4,de=n4;for(;;){if(t9=L4+20|0,E4=e[t9>>2]|0,v4=(E4|0)==0,!v4){L4=E4,de=t9;continue}if(s4=L4+16|0,p9=e[s4>>2]|0,S4=(p9|0)==0,S4){le=L4,B4=de;break}else L4=p9,de=s4}if(D4=B4>>>0>>0,D4)Q2();else{e[B4>>2]=0,E9=le;break}}else if(P=Q+8|0,f9=t+P|0,A9=e[f9>>2]|0,M9=A9>>>0>>0,M9&&Q2(),E6=A9+12|0,M6=e[E6>>2]|0,e9=(M6|0)==(v0|0),e9||Q2(),T9=g9+8|0,u9=e[T9>>2]|0,d4=(u9|0)==(v0|0),d4){e[E6>>2]=g9,e[T9>>2]=A9,E9=g9;break}else Q2();while(!1);if(T4=(s9|0)==0,T4)H3=v0,Q9=z0;else{if(T=Q+28|0,W4=t+T|0,C4=e[W4>>2]|0,G4=553352+(C4<<2)|0,N9=e[G4>>2]|0,N4=(v0|0)==(N9|0),N4){if(e[G4>>2]=E9,l4=(E9|0)==0,l4){A4=1<>>0>>0,Ie&&Q2(),Le=s9+16|0,ze=e[Le>>2]|0,U4=(ze|0)==(v0|0),U4?e[Le>>2]=E9:(Me=s9+20|0,e[Me>>2]=E9),O4=(E9|0)==0,O4){H3=v0,Q9=z0;break}j4=e[138266]|0,we=E9>>>0>>0,we&&Q2(),Ze=E9+24|0,e[Ze>>2]=s9,G=Q+16|0,Ae=t+G|0,h4=e[Ae>>2]|0,b6=(h4|0)==0;do if(!b6)if(P4=h4>>>0>>0,P4)Q2();else{R9=E9+16|0,e[R9>>2]=h4,o4=h4+24|0,e[o4>>2]=E9;break}while(!1);if(N=Q+20|0,b4=t+N|0,oe=e[b4>>2]|0,Z9=(oe|0)==0,Z9)H3=v0,Q9=z0;else if(ae=e[138266]|0,Z=oe>>>0>>0,Z)Q2();else{V=E9+20|0,e[V>>2]=oe,A0=oe+24|0,e[A0>>2]=E9,H3=v0,Q9=z0;break}}}else H3=U,Q9=P9;while(!1);if($0=H3>>>0>>0,$0||Q2(),D=P9+-4|0,g0=t+D|0,f0=e[g0>>2]|0,Q0=f0&1,d0=(Q0|0)==0,d0&&Q2(),y0=f0&2,h0=(y0|0)==0,h0){if(E0=e[138268]|0,C0=(z9|0)==(E0|0),C0){if(u0=e[138265]|0,J0=u0+Q9|0,e[138265]=J0,e[138268]=H3,D0=J0|1,B0=H3+4|0,e[B0>>2]=D0,x0=e[138267]|0,F0=(H3|0)==(x0|0),!F0)return;e[138267]=0,e[138264]=0;return}if(M0=e[138267]|0,G0=(z9|0)==(M0|0),G0){p0=e[138264]|0,P0=p0+Q9|0,e[138264]=P0,e[138267]=H3,R0=P0|1,L0=H3+4|0,e[L0>>2]=R0,Y0=H3+P0|0,e[Y0>>2]=P0;return}H0=f0&-8,N0=H0+Q9|0,V0=f0>>>3,T0=f0>>>0<256;do if(T0){if(U0=t+P9|0,r1=e[U0>>2]|0,y=P9|4,O0=t+y|0,e1=e[O0>>2]|0,i1=V0<<1,c1=553088+(i1<<2)|0,$1=(r1|0)==(c1|0),$1||(f1=e[138266]|0,g1=r1>>>0>>0,g1&&Q2(),l1=r1+12|0,s1=e[l1>>2]|0,a1=(s1|0)==(z9|0),a1||Q2()),n1=(e1|0)==(r1|0),n1){A1=1<>>0>>0,B1&&Q2(),p1=e1+8|0,Q1=e[p1>>2]|0,D1=(Q1|0)==(z9|0),D1?a=p1:Q2()),_1=r1+12|0,e[_1>>2]=e1,e[a>>2]=r1}else{J=P9+16|0,k1=t+J|0,x1=e[k1>>2]|0,W=P9|4,L1=t+W|0,N1=e[L1>>2]|0,w1=(N1|0)==(z9|0);do if(w1){if(H=P9+12|0,W1=t+H|0,O1=e[W1>>2]|0,l2=(O1|0)==0,l2)if(e0=P9+8|0,z1=t+e0|0,h2=e[z1>>2]|0,d2=(h2|0)==0,d2){a4=0;break}else $6=h2,$4=z1;else $6=O1,$4=W1;for(;;){if(A2=$6+20|0,V1=e[A2>>2]|0,g2=(V1|0)==0,!g2){$6=V1,$4=A2;continue}if(a2=$6+16|0,t2=e[a2>>2]|0,$2=(t2|0)==0,$2){Te=$6,U6=$4;break}else $6=t2,$4=a2}if(i2=e[138266]|0,o2=U6>>>0>>0,o2)Q2();else{e[U6>>2]=0,a4=Te;break}}else if(U1=t+P9|0,Z1=e[U1>>2]|0,G1=e[138266]|0,v1=Z1>>>0>>0,v1&&Q2(),K1=Z1+12|0,H1=e[K1>>2]|0,q1=(H1|0)==(z9|0),q1||Q2(),Y1=N1+8|0,j1=e[Y1>>2]|0,r2=(j1|0)==(z9|0),r2){e[K1>>2]=N1,e[Y1>>2]=Z1,a4=N1;break}else Q2();while(!1);if(X1=(x1|0)==0,!X1){if(v=P9+20|0,f2=t+v|0,e2=e[f2>>2]|0,y2=553352+(e2<<2)|0,S2=e[y2>>2]|0,w2=(z9|0)==(S2|0),w2){if(e[y2>>2]=a4,w4=(a4|0)==0,w4){C2=1<>>0>>0,q2&&Q2(),T2=x1+16|0,O2=e[T2>>2]|0,V2=(O2|0)==(z9|0),V2?e[T2>>2]=a4:(s5=x1+20|0,e[s5>>2]=a4),P2=(a4|0)==0,P2)break;T1=e[138266]|0,j2=a4>>>0>>0,j2&&Q2(),R5=a4+24|0,e[R5>>2]=x1,S=P9+8|0,X2=t+S|0,z2=e[X2>>2]|0,f5=(z2|0)==0;do if(!f5)if(w5=z2>>>0>>0,w5)Q2();else{O5=a4+16|0,e[O5>>2]=z2,$5=z2+24|0,e[$5>>2]=a4;break}while(!1);if(w=P9+12|0,k2=t+w|0,E5=e[k2>>2]|0,r5=(E5|0)==0,!r5)if(x2=e[138266]|0,R2=E5>>>0>>0,R2)Q2();else{C5=a4+20|0,e[C5>>2]=E5,x5=E5+24|0,e[x5>>2]=a4;break}}}while(!1);if(u5=N0|1,S5=H3+4|0,e[S5>>2]=u5,G5=H3+N0|0,e[G5>>2]=N0,D5=e[138267]|0,H2=(H3|0)==(D5|0),H2){e[138264]=N0;return}else C9=N0}else I5=f0&-2,e[g0>>2]=I5,A5=Q9|1,l5=H3+4|0,e[l5>>2]=A5,M1=H3+Q9|0,e[M1>>2]=Q9,C9=Q9;if(k5=C9>>>3,c5=C9>>>0<256,c5){o5=k5<<1,Z2=553088+(o5<<2)|0,c2=e[138262]|0,B5=1<>2]|0,b5=e[138266]|0,W2=t5>>>0>>0,W2?Q2():(f=h5,$e=t5)),e[f>>2]=H3,a5=$e+12|0,e[a5>>2]=H3,F2=H3+8|0,e[F2>>2]=$e,p5=H3+12|0,e[p5>>2]=Z2;return}H5=C9>>>8,X5=(H5|0)==0,X5?m4=0:(d5=C9>>>0>16777215,d5?m4=31:(g3=H5+1048320|0,K5=g3>>>16,e3=K5&8,s3=H5<>>16,V5=F5&4,y3=V5|e3,h3=s3<>>16,Z5=M3&2,Q3=y3|Z5,j5=14-Q3|0,j3=h3<>>15,T3=j5+_3|0,a3=T3<<1,$3=T3+7|0,l3=C9>>>$3,q5=l3&1,N5=q5|a3,m4=N5)),P5=553352+(m4<<2)|0,y5=H3+28|0,e[y5>>2]=m4,G3=H3+16|0,L5=H3+20|0,e[L5>>2]=0,e[G3>>2]=0,t6=e[138263]|0,t3=1<>2]=H3,w3=H3+24|0,e[w3>>2]=P5,p3=H3+12|0,e[p3>>2]=H3,X3=H3+8|0,e[X3>>2]=H3;else{V3=e[P5>>2]|0,N3=V3+4|0,z5=e[N3>>2]|0,k3=z5&-8,c3=(k3|0)==(C9|0);t:do if(c3)ke=V3;else{for(U3=(m4|0)==31,u3=m4>>>1,w6=25-u3|0,k6=U3?0:w6,v6=C9<>>31,W3=(ve+16|0)+(Z3<<2)|0,a6=e[W3>>2]|0,u6=(a6|0)==0,u6){n=W3,We=ve;break}if(B6=X4<<1,z3=a6+4|0,p6=e[z3>>2]|0,_6=p6&-8,Y6=(_6|0)==(C9|0),Y6){ke=a6;break t}else X4=B6,ve=a6}if(O3=e[138266]|0,S3=n>>>0>>0,S3)Q2();else{e[n>>2]=H3,P3=H3+24|0,e[P3>>2]=We,Y3=H3+12|0,e[Y3>>2]=H3,S6=H3+8|0,e[S6>>2]=H3;break e}}while(!1);if(i6=ke+8|0,i3=e[i6>>2]|0,A3=e[138266]|0,r6=i3>>>0>=A3>>>0,g8=ke>>>0>=A3>>>0,I6=r6&g8,I6){D3=i3+12|0,e[D3>>2]=H3,e[i6>>2]=H3,T6=H3+8|0,e[T6>>2]=i3,e6=H3+12|0,e[e6>>2]=ke,Q6=H3+24|0,e[Q6>>2]=0;break}else Q2()}while(!1);if(R6=e[138270]|0,K6=R6+-1|0,e[138270]=K6,d6=(K6|0)==0,d6)ee=553504;else return;for(;M4=e[ee>>2]|0,x3=(M4|0)==0,Z6=M4+8|0,!x3;)ee=Z6;e[138270]=-1}}function i4(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0;return _=m,a=(t|0)==0,a?D=0:(c=i5(n,t)|0,I=n|t,C=I>>>0>65535,C?(p=(c>>>0)/(t>>>0)&-1,B=(p|0)==(n|0),o=B?c:-1,D=o):D=c),v=k9(D)|0,S=(v|0)==0,S||(w=v+-4|0,y=e[w>>2]|0,f=y&3,E=(f|0)==0,E)||se(v|0,0,D|0)|0,v|0}function Ni(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0;return Y=m,o=(t|0)==0,o?(a=k9(n)|0,P=a,P|0):(y=n>>>0>4294967231,y?(F=Jp()|0,e[F>>2]=12,P=0,P|0):(R=n>>>0<11,L=n+11|0,M=L&-8,T=R?16:M,G=t+-8|0,N=AD(G,T)|0,c=(N|0)==0,c?(E=k9(n)|0,I=(E|0)==0,I?(P=0,P|0):(C=t+-4|0,p=e[C>>2]|0,B=p&-8,v=p&3,S=(v|0)==0,w=S?8:4,D=B-w|0,Q=D>>>0>>0,_=Q?D:n,r4(E|0,t|0,_|0)|0,I2(t),P=E,P|0)):(f=N+8|0,P=f,P|0)))}function AD(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0;if(V5=m,G=t+4|0,N=e[G>>2]|0,w1=N&-8,r2=t+w1|0,a2=e[138266]|0,w2=N&3,f3=t>>>0>=a2>>>0,g3=(w2|0)!=1,K5=g3&f3,V2=t>>>0>>0,e3=K5&V2,e3||Q2(),_=w1|4,O5=t+_|0,S5=e[O5>>2]|0,o5=S5&1,P=(o5|0)==0,P&&Q2(),Z=(w2|0)==0,Z)return $0=n>>>0<256,$0?(d5=0,d5|0):(J0=n+4|0,L0=w1>>>0>>0,!L0&&(i1=w1-n|0,I1=e[138382]|0,k1=I1<<1,L1=i1>>>0>k1>>>0,!L1)?(d5=t,d5|0):(d5=0,d5|0));if(N1=w1>>>0>>0,!N1)return U1=w1-n|0,Z1=U1>>>0>15,Z1?(G1=t+n|0,v1=N&1,K1=v1|n,P1=K1|2,e[G>>2]=P1,Q=n+4|0,H1=t+Q|0,q1=U1|3,e[H1>>2]=q1,Y1=e[O5>>2]|0,j1=Y1|1,e[O5>>2]=j1,QQ(G1,U1),d5=t,d5|0):(d5=t,d5|0);if(W1=e[138268]|0,O1=(r2|0)==(W1|0),O1)return l2=e[138265]|0,z1=l2+w1|0,h2=z1>>>0>n>>>0,h2?(s2=z1-n|0,d2=t+n|0,A2=N&1,V1=A2|n,g2=V1|2,e[G>>2]=g2,D=n+4|0,t2=t+D|0,$2=s2|1,e[t2>>2]=$2,e[138268]=d2,e[138265]=s2,d5=t,d5|0):(d5=0,d5|0);if(i2=e[138267]|0,o2=(r2|0)==(i2|0),o2)return X1=e[138264]|0,n2=X1+w1|0,f2=n2>>>0>>0,f2?(d5=0,d5|0):(e2=n2-n|0,y2=e2>>>0>15,y2?(S2=t+n|0,C2=t+n2|0,M2=N&1,_2=M2|n,G2=_2|2,e[G>>2]=G2,S=n+4|0,u2=t+S|0,K2=e2|1,e[u2>>2]=K2,e[C2>>2]=e2,y=n2+4|0,N2=t+y|0,q2=e[N2>>2]|0,T2=q2&-2,e[N2>>2]=T2,s3=S2,E3=e2):(O2=N&1,s5=O2|n2,P2=s5|2,e[G>>2]=P2,v=n2+4|0,T1=t+v|0,j2=e[T1>>2]|0,R5=j2|1,e[T1>>2]=R5,s3=0,E3=0),e[138264]=E3,e[138267]=s3,d5=t,d5|0);if(X2=S5&2,v5=(X2|0)==0,!v5||(z2=S5&-8,f5=z2+w1|0,w5=f5>>>0>>0,w5))return d5=0,d5|0;$5=f5-n|0,k2=S5>>>3,E5=S5>>>0<256;do if(E5){if(p=w1+8|0,r5=t+p|0,x2=e[r5>>2]|0,B=w1+12|0,R2=t+B|0,m2=e[R2>>2]|0,C5=k2<<1,x5=553088+(C5<<2)|0,u5=(x2|0)==(x5|0),u5||(G5=x2>>>0>>0,G5&&Q2(),D5=x2+12|0,H2=e[D5>>2]|0,I5=(H2|0)==(r2|0),I5||Q2()),A5=(m2|0)==(x2|0),A5){l5=1<>>0>>0,Z2&&Q2(),c2=m2+8|0,B5=e[c2>>2]|0,e5=(B5|0)==(r2|0),e5?a=c2:Q2()),n5=x2+12|0,e[n5>>2]=m2,e[a>>2]=x2}else{c=w1+24|0,g5=t+c|0,Y2=e[g5>>2]|0,w=w1+12|0,h5=t+w|0,t5=e[h5>>2]|0,b5=(t5|0)==(r2|0);do if(b5){if(R=w1+20|0,o0=t+R|0,V=e[o0>>2]|0,A0=(V|0)==0,A0)if(F=w1+16|0,n0=t+F|0,i0=e[n0>>2]|0,r0=(i0|0)==0,r0){F2=0;break}else W2=i0,p5=n0;else W2=V,p5=o0;for(;;){if(K=W2+20|0,c0=e[K>>2]|0,s0=(c0|0)==0,!s0){W2=c0,p5=K;continue}if(l0=W2+16|0,j=e[l0>>2]|0,g0=(j|0)==0,g0){a5=W2,H5=p5;break}else W2=j,p5=l0}if(f0=H5>>>0>>0,f0)Q2();else{e[H5>>2]=0,F2=a5;break}}else if(C=w1+8|0,z=t+C|0,Y=e[z>>2]|0,t0=Y>>>0>>0,t0&&Q2(),J=Y+12|0,W=e[J>>2]|0,e0=(W|0)==(r2|0),e0||Q2(),H=t5+8|0,X=e[H>>2]|0,U=(X|0)==(r2|0),U){e[J>>2]=t5,e[H>>2]=Y,F2=t5;break}else Q2();while(!1);if(Q0=(Y2|0)==0,!Q0){if(f=w1+28|0,d0=t+f|0,y0=e[d0>>2]|0,h0=553352+(y0<<2)|0,E0=e[h0>>2]|0,C0=(r2|0)==(E0|0),C0){if(e[h0>>2]=F2,X5=(F2|0)==0,X5){u0=1<>>0>>0,F0&&Q2(),M0=Y2+16|0,G0=e[M0>>2]|0,p0=(G0|0)==(r2|0),p0?e[M0>>2]=F2:(P0=Y2+20|0,e[P0>>2]=F2),R0=(F2|0)==0,R0)break;S0=e[138266]|0,Y0=F2>>>0>>0,Y0&&Q2(),H0=F2+24|0,e[H0>>2]=Y2,E=w1+16|0,N0=t+E|0,V0=e[N0>>2]|0,T0=(V0|0)==0;do if(!T0)if(U0=V0>>>0>>0,U0)Q2();else{r1=F2+16|0,e[r1>>2]=V0,O0=V0+24|0,e[O0>>2]=F2;break}while(!1);if(I=w1+20|0,e1=t+I|0,v0=e[e1>>2]|0,c1=(v0|0)==0,!c1)if($1=e[138266]|0,f1=v0>>>0<$1>>>0,f1)Q2();else{g1=F2+20|0,e[g1>>2]=v0,l1=v0+24|0,e[l1>>2]=F2;break}}}while(!1);return s1=$5>>>0<16,s1?(a1=N&1,n1=f5|a1,A1=n1|2,e[G>>2]=A1,T=f5|4,z0=t+T|0,h1=e[z0>>2]|0,E1=h1|1,e[z0>>2]=E1,d5=t,d5|0):(u1=t+n|0,d1=N&1,B1=d1|n,p1=B1|2,e[G>>2]=p1,L=n+4|0,Q1=t+L|0,D1=$5|3,e[Q1>>2]=D1,M=f5|4,_1=t+M|0,y1=e[_1>>2]|0,x1=y1|1,e[_1>>2]=x1,QQ(u1,$5),d5=t,d5|0)}function QQ(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0,L0=0,Y0=0,H0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,$1=0,f1=0,g1=0,l1=0,s1=0,a1=0,n1=0,A1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,B1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,s2=0,d2=0,A2=0,V1=0,g2=0,a2=0,t2=0,$2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,s5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,$5=0,k2=0,E5=0,r5=0,x2=0,R2=0,m2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,A5=0,l5=0,m5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,B5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,a5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,K5=0,e3=0,s3=0,E3=0,F5=0,V5=0,y3=0,h3=0,m3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,a3=0,$3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,B3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,B6=0,z3=0,a6=0,p6=0,_6=0,Y6=0,m6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,A3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,s9=0,W6=0,g9=0,h9=0,f9=0,A9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,s4=0,p9=0,S4=0,D4=0,x4=0,T4=0,W4=0,C4=0,G4=0,N9=0,N4=0,A4=0,F4=0,g4=0,ue=0,P9=0,d9=0,Ie=0,Le=0,ze=0,U4=0,Me=0,O4=0,j4=0,we=0,Ze=0,z9=0,Ae=0,h4=0,b6=0,P4=0,R9=0,o4=0,b4=0,oe=0,Z9=0,ae=0,$e=0,m4=0,X4=0,L4=0,le=0,E9=0,$6=0,Te=0,a4=0,de=0,B4=0;B4=m,V=t+n|0,A0=t+4|0,O2=e[A0>>2]|0,u6=O2&1,J6=(u6|0)==0;do if(J6){if(F6=e[t>>2]|0,M9=O2&3,v9=(M9|0)==0,v9)return;if(T4=0-F6|0,d9=t+T4|0,n0=F6+n|0,Q0=e[138266]|0,x0=d9>>>0>>0,x0&&Q2(),N0=e[138267]|0,f1=(d9|0)==(N0|0),f1){if(w=n+4|0,z9=t+w|0,i0=e[z9>>2]|0,r0=i0&3,K=(r0|0)==3,!K){o=d9,a=n0;break}e[138264]=n0,c0=i0&-2,e[z9>>2]=c0,s0=n0|1,R=4-F6|0,l0=t+R|0,e[l0>>2]=s0,e[V>>2]=n0;return}if(u1=F6>>>3,N1=F6>>>0<256,N1){if(J=8-F6|0,j1=t+J|0,g2=e[j1>>2]|0,W=12-F6|0,S2=t+W|0,V2=e[S2>>2]|0,O5=u1<<1,S5=553088+(O5<<2)|0,o5=(g2|0)==(S5|0),o5||(W2=g2>>>0>>0,W2&&Q2(),s3=g2+12|0,j5=e[s3>>2]|0,y5=(j5|0)==(d9|0),y5||Q2()),X3=(V2|0)==(g2|0),X3){v6=1<>>0>>0,T6&&Q2(),e6=V2+8|0,Q6=e[e6>>2]|0,R6=(Q6|0)==(d9|0),R6?C=e6:Q2()),K6=g2+12|0,e[K6>>2]=V2,e[C>>2]=g2,o=d9,a=n0;break}L=24-F6|0,d6=t+L|0,x3=e[d6>>2]|0,M=12-F6|0,Z6=t+M|0,G6=e[Z6>>2]|0,j6=(G6|0)==(d9|0);do if(j6){if(T=16-F6|0,G=T+4|0,s9=t+G|0,W6=e[s9>>2]|0,g9=(W6|0)==0,g9)if(h9=t+T|0,f9=e[h9>>2]|0,A9=(f9|0)==0,A9){o4=0;break}else P4=f9,ae=h9;else P4=W6,ae=s9;for(;;){if(o9=P4+20|0,E6=e[o9>>2]|0,M6=(E6|0)==0,!M6){P4=E6,ae=o9;continue}if(e9=P4+16|0,T9=e[e9>>2]|0,u9=(T9|0)==0,u9){R9=P4,$e=ae;break}else P4=T9,ae=e9}if(d4=$e>>>0>>0,d4)Q2();else{e[$e>>2]=0,o4=R9;break}}else if(t0=8-F6|0,r9=t+t0|0,x6=e[r9>>2]|0,N6=x6>>>0>>0,N6&&Q2(),D6=x6+12|0,V6=e[D6>>2]|0,y6=(V6|0)==(d9|0),y6||Q2(),F3=G6+8|0,L6=e[F3>>2]|0,X6=(L6|0)==(d9|0),X6){e[D6>>2]=G6,e[F3>>2]=x6,o4=G6;break}else Q2();while(!1);if(n4=(x3|0)==0,n4)o=d9,a=n0;else{if(P=28-F6|0,c4=t+P|0,G9=e[c4>>2]|0,V9=553352+(G9<<2)|0,I9=e[V9>>2]|0,H6=(d9|0)==(I9|0),H6){if(e[V9>>2]=o4,$6=(o4|0)==0,$6){t9=1<>>0>>0,S4&&Q2(),D4=x3+16|0,x4=e[D4>>2]|0,W4=(x4|0)==(d9|0),W4?e[D4>>2]=o4:(C4=x3+20|0,e[C4>>2]=o4),G4=(o4|0)==0,G4){o=d9,a=n0;break}N9=e[138266]|0,N4=o4>>>0>>0,N4&&Q2(),A4=o4+24|0,e[A4>>2]=x3,z=16-F6|0,F4=t+z|0,g4=e[F4>>2]|0,ue=(g4|0)==0;do if(!ue)if(P9=g4>>>0>>0,P9)Q2();else{Ie=o4+16|0,e[Ie>>2]=g4,Le=g4+24|0,e[Le>>2]=o4;break}while(!1);if(Y=z+4|0,ze=t+Y|0,U4=e[ze>>2]|0,Me=(U4|0)==0,Me)o=d9,a=n0;else if(O4=e[138266]|0,j4=U4>>>0>>0,j4)Q2();else{we=o4+20|0,e[we>>2]=U4,Ze=U4+24|0,e[Ze>>2]=o4,o=d9,a=n0;break}}}else o=t,a=n;while(!1);if(j=e[138266]|0,$0=V>>>0>>0,$0&&Q2(),y=n+4|0,g0=t+y|0,f0=e[g0>>2]|0,d0=f0&2,y0=(d0|0)==0,y0){if(h0=e[138268]|0,E0=(V|0)==(h0|0),E0){if(C0=e[138265]|0,u0=C0+a|0,e[138265]=u0,e[138268]=o,k0=u0|1,J0=o+4|0,e[J0>>2]=k0,D0=e[138267]|0,B0=(o|0)==(D0|0),!B0)return;e[138267]=0,e[138264]=0;return}if(F0=e[138267]|0,M0=(V|0)==(F0|0),M0){G0=e[138264]|0,p0=G0+a|0,e[138264]=p0,e[138267]=o,P0=p0|1,R0=o+4|0,e[R0>>2]=P0,S0=o+p0|0,e[S0>>2]=p0;return}L0=f0&-8,Y0=L0+a|0,H0=f0>>>3,V0=f0>>>0<256;do if(V0){if(_=n+8|0,T0=t+_|0,U0=e[T0>>2]|0,F=n+12|0,r1=t+F|0,O0=e[r1>>2]|0,e1=H0<<1,v0=553088+(e1<<2)|0,i1=(U0|0)==(v0|0),i1||(c1=U0>>>0>>0,c1&&Q2(),$1=U0+12|0,g1=e[$1>>2]|0,l1=(g1|0)==(V|0),l1||Q2()),s1=(O0|0)==(U0|0),s1){a1=1<>>0>>0,h1&&Q2(),E1=O0+8|0,d1=e[E1>>2]|0,B1=(d1|0)==(V|0),B1?I=E1:Q2()),p1=U0+12|0,e[p1>>2]=O0,e[I>>2]=U0}else{N=n+24|0,Q1=t+N|0,D1=e[Q1>>2]|0,e0=n+12|0,_1=t+e0|0,y1=e[_1>>2]|0,k1=(y1|0)==(V|0);do if(k1){if(X=n+20|0,H1=t+X|0,q1=e[H1>>2]|0,Y1=(q1|0)==0,Y1)if(H=n+16|0,r2=t+H|0,W1=e[r2>>2]|0,O1=(W1|0)==0,O1){Z9=0;break}else b4=W1,m4=r2;else b4=q1,m4=H1;for(;;){if(l2=b4+20|0,z1=e[l2>>2]|0,h2=(z1|0)==0,!h2){b4=z1,m4=l2;continue}if(s2=b4+16|0,d2=e[s2>>2]|0,A2=(d2|0)==0,A2){oe=b4,X4=m4;break}else b4=d2,m4=s2}if(V1=X4>>>0>>0,V1)Q2();else{e[X4>>2]=0,Z9=oe;break}}else if(Q=n+8|0,x1=t+Q|0,L1=e[x1>>2]|0,w1=L1>>>0>>0,w1&&Q2(),U1=L1+12|0,Z1=e[U1>>2]|0,G1=(Z1|0)==(V|0),G1||Q2(),v1=y1+8|0,K1=e[v1>>2]|0,P1=(K1|0)==(V|0),P1){e[U1>>2]=y1,e[v1>>2]=L1,Z9=y1;break}else Q2();while(!1);if(a2=(D1|0)==0,!a2){if(o0=n+28|0,t2=t+o0|0,$2=e[t2>>2]|0,i2=553352+($2<<2)|0,o2=e[i2>>2]|0,X1=(V|0)==(o2|0),X1){if(e[i2>>2]=Z9,Te=(Z9|0)==0,Te){n2=1<<$2,f2=n2^-1,e2=e[138263]|0,y2=e2&f2,e[138263]=y2;break}}else if(w2=e[138266]|0,C2=D1>>>0>>0,C2&&Q2(),M2=D1+16|0,_2=e[M2>>2]|0,G2=(_2|0)==(V|0),G2?e[M2>>2]=Z9:(u2=D1+20|0,e[u2>>2]=Z9),K2=(Z9|0)==0,K2)break;N2=e[138266]|0,q2=Z9>>>0>>0,q2&&Q2(),T2=Z9+24|0,e[T2>>2]=D1,Z=n+16|0,s5=t+Z|0,P2=e[s5>>2]|0,T1=(P2|0)==0;do if(!T1)if(j2=P2>>>0>>0,j2)Q2();else{R5=Z9+16|0,e[R5>>2]=P2,X2=P2+24|0,e[X2>>2]=Z9;break}while(!1);if(D=n+20|0,v5=t+D|0,z2=e[v5>>2]|0,f5=(z2|0)==0,!f5)if(w5=e[138266]|0,$5=z2>>>0>>0,$5)Q2();else{k2=Z9+20|0,e[k2>>2]=z2,E5=z2+24|0,e[E5>>2]=Z9;break}}}while(!1);if(r5=Y0|1,x2=o+4|0,e[x2>>2]=r5,R2=o+Y0|0,e[R2>>2]=Y0,m2=e[138267]|0,C5=(o|0)==(m2|0),C5){e[138264]=Y0;return}else c=Y0}else x5=f0&-2,e[g0>>2]=x5,u5=a|1,G5=o+4|0,e[G5>>2]=u5,D5=o+a|0,e[D5>>2]=a,c=a;if(H2=c>>>3,I5=c>>>0<256,I5){A5=H2<<1,l5=553088+(A5<<2)|0,m5=e[138262]|0,M1=1<>2]|0,e5=e[138266]|0,n5=B5>>>0>>0,n5?Q2():(p=c2,Ae=B5)),e[p>>2]=o,g5=Ae+12|0,e[g5>>2]=o,Y2=o+8|0,e[Y2>>2]=Ae,h5=o+12|0,e[h5>>2]=l5;return}if(t5=c>>>8,b5=(t5|0)==0,b5?h4=0:(a5=c>>>0>16777215,a5?h4=31:(F2=t5+1048320|0,p5=F2>>>16,H5=p5&8,X5=t5<>>16,g3=f3&4,K5=g3|H5,e3=X5<>>16,V5=F5&2,y3=K5|V5,h3=14-y3|0,m3=e3<>>15,M3=h3+q3|0,Z5=M3<<1,Q3=M3+7|0,j3=c>>>Q3,_3=j3&1,T3=_3|Z5,h4=T3)),a3=553352+(h4<<2)|0,$3=o+28|0,e[$3>>2]=h4,l3=o+16|0,C3=o+20|0,e[C3>>2]=0,e[l3>>2]=0,q5=e[138263]|0,N5=1<>2]=o,t6=o+24|0,e[t6>>2]=a3,t3=o+12|0,e[t3>>2]=o,o3=o+8|0,e[o3>>2]=o;return}R3=e[a3>>2]|0,f6=R3+4|0,B3=e[f6>>2]|0,w3=B3&-8,p3=(w3|0)==(c|0);e:do if(p3)L4=R3;else{for(V3=(h4|0)==31,N3=h4>>>1,z5=25-N3|0,k3=V3?0:z5,c3=c<>>31,a6=(le+16|0)+(z3<<2)|0,u3=e[a6>>2]|0,p6=(u3|0)==0,p6){f=a6,E9=le;break}if(U3=b6<<1,o6=u3+4|0,w6=e[o6>>2]|0,k6=w6&-8,B6=(k6|0)==(c|0),B6){L4=u3;break e}else b6=U3,le=u3}_6=e[138266]|0,Y6=f>>>0<_6>>>0,Y6&&Q2(),e[f>>2]=o,m6=o+24|0,e[m6>>2]=E9,v3=o+12|0,e[v3>>2]=o,Z3=o+8|0,e[Z3>>2]=o;return}while(!1);W3=L4+8|0,S3=e[W3>>2]|0,P3=e[138266]|0,Y3=S3>>>0>=P3>>>0,a4=L4>>>0>=P3>>>0,S6=Y3&a4,S6||Q2(),i6=S3+12|0,e[i6>>2]=o,e[W3>>2]=o,i3=o+8|0,e[i3>>2]=S3,P6=o+12|0,e[P6>>2]=L4,A3=o+24|0,e[A3>>2]=0}function oD(){e[6410]=O9}function se(t,n,o){t=t|0,n=n|0,o=o|0;var a=0,c=0,f=0,E=0;if(a=t+o|0,(o|0)>=20){if(n=n&255,E=t&3,c=n|n<<8|n<<16|n<<24,f=a&-4,E)for(E=t+4-E|0;(t|0)<(E|0);)u[t>>0]=n,t=t+1|0;for(;(t|0)<(f|0);)e[t>>2]=c,t=t+4|0}for(;(t|0)<(a|0);)u[t>>0]=n,t=t+1|0;return t-o|0}function Z$(t){t=t|0;var n=0;for(n=t;u[n>>0]|0;)n=n+1|0;return n-t|0}function yQ(t,n){t=t|0,n=n|0;var o=0,a=0;a=t+(Z$(t)|0)|0;do u[a+o>>0]=u[n+o>>0],o=o+1|0;while(u[n+(o-1)>>0]|0);return t|0}function wQ(t,n,o){t=t|0,n=n|0,o=o|0;var a=0;return(o|0)<32?(a=(1<>>32-o,t<>>0,f=n+a+(c>>>0>>0|0)>>>0,q6=f,c|0|0}function Js(t,n,o){t=t|0,n=n|0,o=o|0;var a=0;return(o|0)<32?(a=(1<>>o,t>>>o|(n&a)<<32-o):(q6=0,n>>>o-32|0)}function r4(t,n,o){t=t|0,n=n|0,o=o|0;var a=0;if((o|0)>=4096)return dv(t|0,n|0,o|0)|0;if(a=t|0,(t&3)==(n&3)){for(;t&3;){if(!(o|0))return a|0;u[t>>0]=u[n>>0]|0,t=t+1|0,n=n+1|0,o=o-1|0}for(;(o|0)>=4;)e[t>>2]=e[n>>2]|0,t=t+4|0,n=n+4|0,o=o-4|0}for(;(o|0)>0;)u[t>>0]=u[n>>0]|0,t=t+1|0,n=n+1|0,o=o-1|0;return a|0}function Vo(t,n,o){t=t|0,n=n|0,o=o|0;var a=0;if((n|0)<(t|0)&(t|0)<(n+o|0)){for(a=t,n=n+o|0,t=t+o|0;(o|0)>0;)t=t-1|0,n=n-1|0,o=o-1|0,u[t>>0]=u[n>>0]|0;t=a}else r4(t,n,o)|0;return t|0}function aB(t,n){t=t|0,n=n|0;var o=0;do u[(t+o|0)>>0]=u[(n+o|0)>>0],o=o+1|0;while(u[n+(o-1)>>0]|0);return t|0}function Ks(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0;return c=t-o>>>0,f=n-a>>>0,f=n-a-(o>>>0>t>>>0|0)>>>0,q6=f,c|0|0}function xb(t,n,o){t=t|0,n=n|0,o=o|0;var a=0;return(o|0)<32?(a=(1<>o,t>>>o|(n&a)<<32-o):(q6=(n|0)<0?-1:0,n>>o-32|0)}function kQ(t){t=t|0;var n=0;return n=u[b9+(t&255)>>0]|0,(n|0)<8?n|0:(n=u[b9+(t>>8&255)>>0]|0,(n|0)<8?n+8|0:(n=u[b9+(t>>16&255)>>0]|0,(n|0)<8?n+16|0:(u[b9+(t>>>24)>>0]|0)+24|0))}function aD(t,n){t=t|0,n=n|0;var o=0,a=0,c=0,f=0,E=0,I=0,C=0;return o=t&65535,a=n&65535,c=i5(a,o)|0,f=t>>>16,E=(c>>>16)+(i5(a,f)|0)|0,I=n>>>16,C=i5(I,o)|0,q6=((E>>>16)+(i5(I,f)|0)|0)+(((E&65535)+C|0)>>>16)|0,0|(E+C<<16|c&65535)|0}function Fb(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0;return c=n>>31|((n|0)<0?-1:0)<<1,f=((n|0)<0?-1:0)>>31|((n|0)<0?-1:0)<<1,E=a>>31|((a|0)<0?-1:0)<<1,I=((a|0)<0?-1:0)>>31|((a|0)<0?-1:0)<<1,C=Ks(c^t,f^n,c,f)|0,p=q6,B=Ks(E^o,I^a,E,I)|0,v=E^c,S=I^f,w=WC(C,p,B,q6,0)|0,y=Ks(w^v,q6^S,v,S)|0,y|0}function Lb(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0;return y=m,m=m+8|0,c=y|0,f=n>>31|((n|0)<0?-1:0)<<1,E=((n|0)<0?-1:0)>>31|((n|0)<0?-1:0)<<1,I=a>>31|((a|0)<0?-1:0)<<1,C=((a|0)<0?-1:0)>>31|((a|0)<0?-1:0)<<1,p=Ks(f^t,E^n,f,E)|0,B=q6,v=Ks(I^o,C^a,I,C)|0,WC(p,B,v,q6,c)|0,S=Ks(e[c>>2]^f,e[c+4>>2]^E,f,E)|0,w=q6,m=y,q6=w,S|0}function $D(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0,E=0,I=0,C=0;return c=t,f=o,E=aD(c,f)|0,I=q6,C=i5(n,f)|0,q6=((i5(a,c)|0)+C|0)+I|I&0,0|E&-1|0}function Mb(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0;return c=WC(t,n,o,a,0)|0,c|0}function Tb(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0;var c=0,f=0;return f=m,m=m+8|0,c=f|0,WC(t,n,o,a,c)|0,m=f,q6=e[c+4>>2]|0,e[c>>2]|0|0}function WC(t,n,o,a,c){t=t|0,n=n|0,o=o|0,a=a|0,c=c|0;var f=0,E=0,I=0,C=0,p=0,B=0,v=0,S=0,w=0,y=0,D=0,Q=0,_=0,F=0,R=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,A0=0,n0=0,i0=0,r0=0,K=0,c0=0,s0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,B0=0,x0=0,F0=0,M0=0,G0=0,p0=0,P0=0,R0=0,S0=0;if(f=t,E=n,I=E,C=o,p=a,B=p,!(I|0))return v=(c|0)!=0,B|0?v?(e[c>>2]=t&-1,e[c+4>>2]=n&0,S0=0,R0=0,q6=S0,R0|0):(S0=0,R0=0,q6=S0,R0|0):(v&&(e[c>>2]=(f>>>0)%(C>>>0),e[c+4>>2]=0),S0=0,R0=(f>>>0)/(C>>>0)>>>0,q6=S0,R0|0);S=(B|0)==0;do if(C|0){if(!S){if(Y=qs(B|0)|0,t0=Y-(qs(I|0)|0)|0,t0>>>0<=31){J=t0+1|0,W=31-t0|0,e0=t0-31>>31,Z=J,o0=f>>>(J>>>0)&e0|I<>>(J>>>0)&e0,X=0,H=f<>2]=0|t&-1,e[c+4>>2]=E|n&0,S0=0,R0=0,q6=S0,R0|0):(S0=0,R0=0,q6=S0,R0|0)}if(F=C-1|0,F&C|0){L=(qs(C|0)|0)+33|0,M=L-(qs(I|0)|0)|0,T=64-M|0,G=32-M|0,N=G>>31,P=M-32|0,z=P>>31,Z=M,o0=G-1>>31&I>>>(P>>>0)|(I<>>(M>>>0))&z,U=z&I>>>(M>>>0),X=f<>>(P>>>0))&N|f<>31;break}return c|0&&(e[c>>2]=F&f,e[c+4>>2]=0),(C|0)==1?(S0=E|n&0,R0=0|t&-1,q6=S0,R0|0):(R=kQ(C|0)|0,S0=0|I>>>(R>>>0),R0=I<<32-R|f>>>(R>>>0)|0,q6=S0,R0|0)}else{if(S)return c|0&&(e[c>>2]=(I>>>0)%(C>>>0),e[c+4>>2]=0),S0=0,R0=(I>>>0)/(C>>>0)>>>0,q6=S0,R0|0;if(!(f|0))return c|0&&(e[c>>2]=0,e[c+4>>2]=(I>>>0)%(B>>>0)),S0=0,R0=(I>>>0)/(B>>>0)>>>0,q6=S0,R0|0;if(w=B-1|0,!(w&B|0))return c|0&&(e[c>>2]=0|t&-1,e[c+4>>2]=w&I|n&0),S0=0,R0=I>>>((kQ(B|0)|0)>>>0),q6=S0,R0|0;if(y=qs(B|0)|0,D=y-(qs(I|0)|0)|0,D>>>0<=30){Q=D+1|0,_=31-D|0,Z=Q,o0=I<<_|f>>>(Q>>>0),U=I>>>(Q>>>0),X=0,H=f<<_;break}return c|0?(e[c>>2]=0|t&-1,e[c+4>>2]=E|n&0,S0=0,R0=0,q6=S0,R0|0):(S0=0,R0=0,q6=S0,R0|0)}while(!1);if(!(Z|0))M0=H,F0=X,x0=U,B0=o0,D0=0,J0=0;else{for(V=0|o&-1,A0=p|a&0,n0=Ys(V|0,A0|0,-1,-1)|0,i0=q6,j=H,l0=X,s0=U,c0=o0,K=Z,r0=0;$0=l0>>>31|j<<1,g0=r0|l0<<1,f0=0|(c0<<1|j>>>31),Q0=c0>>>31|s0<<1|0,Ks(n0,i0,f0,Q0)|0,d0=q6,y0=d0>>31|((d0|0)<0?-1:0)<<1,h0=y0&1,E0=Ks(f0,Q0,y0&V,(((d0|0)<0?-1:0)>>31|((d0|0)<0?-1:0)<<1)&A0)|0,C0=E0,u0=q6,k0=K-1|0,k0|0;)j=$0,l0=g0,s0=u0,c0=C0,K=k0,r0=h0;M0=$0,F0=g0,x0=u0,B0=C0,D0=0,J0=h0}return G0=F0,p0=0,P0=M0|p0,c|0&&(e[c>>2]=0|B0,e[c+4>>2]=x0|0),S0=(0|G0)>>>31|P0<<1|(p0<<1|G0>>>31)&0|D0,R0=(G0<<1|0)&-2|J0,q6=S0,R0|0}function lD(t,n,o,a,c){return t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,cB[t&3](n|0,o|0,a|0,c|0)|0}function cD(t,n){t=t|0,n=n|0,Vs[t&7](n|0)}function gD(t,n,o){t=t|0,n=n|0,o=o|0,gB[t&3](n|0,o|0)}function hD(t,n){return t=t|0,n=n|0,DQ[t&1](n|0)|0}function fD(t,n,o,a){t=t|0,n=n|0,o=o|0,a=a|0,bQ[t&1](n|0,o|0,a|0)}function uD(t,n,o,a,c,f,E,I,C){return t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0,I=I|0,C=C|0,_Q[t&3](n|0,o|0,a|0,c|0,f|0,E|0,I|0,C|0)|0}function ID(t,n,o){return t=t|0,n=n|0,o=o|0,ct[t&15](n|0,o|0)|0}function dD(t,n,o,a,c,f){return t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,hB[t&7](n|0,o|0,a|0,c|0,f|0)|0}function ED(t,n,o,a){return t=t|0,n=n|0,o=o|0,a=a|0,Or(0),0}function $B(t){t=t|0,Or(1)}function vQ(t,n){t=t|0,n=n|0,Or(2)}function CD(t){return t=t|0,Or(3),0}function mD(t,n,o){t=t|0,n=n|0,o=o|0,Or(4)}function SQ(t,n,o,a,c,f,E,I){return t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,f=f|0,E=E|0,I=I|0,Or(5),0}function W$(t,n){return t=t|0,n=n|0,Or(6),0}function lB(t,n,o,a,c){return t=t|0,n=n|0,o=o|0,a=a|0,c=c|0,Or(7),0}var cB=[ED,sS,Hv,qv],Vs=[$B,iS,rS,uS,SS,DS,$B,$B],gB=[vQ,Xv,bS,vQ],DQ=[CD,IS],bQ=[mD,hS],_Q=[SQ,FS,GS,SQ],ct=[W$,eS,tS,nS,fS,dS,_S,RS,AS,vS,qS,W$,W$,W$,W$,W$],hB=[lB,xS,LS,MS,TS,NS,lB,lB];return{_memmove:Vo,_strlen:Z$,_strcat:yQ,_free:I2,_i64Add:Ys,_encoder_clear:jS,_encoder_transfer_data:iD,_encoder_data_len:tD,_memset:se,_malloc:k9,_memcpy:r4,_encoder_init:WS,_encoder_process:eD,_bitshift64Lshr:Js,_bitshift64Shl:wQ,_strcpy:aB,_encoder_analysis_buffer:XS,runPostSets:oD,stackAlloc:mv,stackSave:Bv,stackRestore:pv,establishStackSpace:Qv,setThrew:yv,setTempRet0:wv,getTempRet0:kv,dynCall_iiiii:lD,dynCall_vi:cD,dynCall_vii:gD,dynCall_ii:hD,dynCall_viii:fD,dynCall_iiiiiiiii:uD,dynCall_iii:ID,dynCall_iiiiii:dD}}(A.asmGlobalArg,A.asmLibraryArg,Ri),ab=A.runPostSets=J9.runPostSets,tv=A._strlen=J9._strlen,iv=A._strcat=J9._strcat,Zm=A._free=J9._free,$b=A._encoder_init=J9._encoder_init,rv=A._i64Add=J9._i64Add,nv=A._memmove=J9._memmove,lb=A._encoder_transfer_data=J9._encoder_transfer_data,cb=A._encoder_process=J9._encoder_process,gb=A._encoder_data_len=J9._encoder_data_len,sv=A._memset=J9._memset,Sh=A._malloc=J9._malloc,Av=A._memcpy=J9._memcpy,hb=A._encoder_clear=J9._encoder_clear,ov=A._bitshift64Lshr=J9._bitshift64Lshr,fb=A._encoder_analysis_buffer=J9._encoder_analysis_buffer,av=A._strcpy=J9._strcpy,$v=A._bitshift64Shl=J9._bitshift64Shl,ub=A.dynCall_iiiii=J9.dynCall_iiiii,Ib=A.dynCall_vi=J9.dynCall_vi,db=A.dynCall_vii=J9.dynCall_vii,Eb=A.dynCall_ii=J9.dynCall_ii,Cb=A.dynCall_viii=J9.dynCall_viii,mb=A.dynCall_iiiiiiiii=J9.dynCall_iiiiiiiii,Bb=A.dynCall_iii=J9.dynCall_iii,pb=A.dynCall_iiiiii=J9.dynCall_iiiiii;x.stackAlloc=J9.stackAlloc,x.stackSave=J9.stackSave,x.stackRestore=J9.stackRestore,x.establishStackSpace=J9.establishStackSpace,x.setTempRet0=J9.setTempRet0,x.getTempRet0=J9.getTempRet0;var Qb=function(){var i={math:{}};i.math.Long=function(q,w0){this.low_=q|0,this.high_=w0|0},i.math.Long.IntCache_={},i.math.Long.fromInt=function(q){if(-128<=q&&q<128){var w0=i.math.Long.IntCache_[q];if(w0)return w0}var W0=new i.math.Long(q|0,q<0?-1:0);return-128<=q&&q<128&&(i.math.Long.IntCache_[q]=W0),W0},i.math.Long.fromNumber=function(q){return isNaN(q)||!isFinite(q)?i.math.Long.ZERO:q<=-i.math.Long.TWO_PWR_63_DBL_?i.math.Long.MIN_VALUE:q+1>=i.math.Long.TWO_PWR_63_DBL_?i.math.Long.MAX_VALUE:q<0?i.math.Long.fromNumber(-q).negate():new i.math.Long(q%i.math.Long.TWO_PWR_32_DBL_|0,q/i.math.Long.TWO_PWR_32_DBL_|0)},i.math.Long.fromBits=function(q,w0){return new i.math.Long(q,w0)},i.math.Long.fromString=function(q,w0){if(q.length==0)throw Error("number format error: empty string");var W0=w0||10;if(W0<2||36=0)throw Error('number format error: interior "-" character: '+q);for(var E2=i.math.Long.fromNumber(Math.pow(W0,8)),W5=i.math.Long.ZERO,T5=0;T5=0?this.low_:i.math.Long.TWO_PWR_32_DBL_+this.low_},i.math.Long.prototype.getNumBitsAbs=function(){if(this.isNegative())return this.equals(i.math.Long.MIN_VALUE)?64:this.negate().getNumBitsAbs();for(var q=this.high_!=0?this.high_:this.low_,w0=31;w0>0&&!(q&1<0},i.math.Long.prototype.greaterThanOrEqual=function(q){return this.compare(q)>=0},i.math.Long.prototype.compare=function(q){if(this.equals(q))return 0;var w0=this.isNegative(),W0=q.isNegative();return w0&&!W0?-1:!w0&&W0?1:this.subtract(q).isNegative()?-1:1},i.math.Long.prototype.negate=function(){return this.equals(i.math.Long.MIN_VALUE)?i.math.Long.MIN_VALUE:this.not().add(i.math.Long.ONE)},i.math.Long.prototype.add=function(q){var w0=this.high_>>>16,W0=this.high_&65535,E2=this.low_>>>16,W5=this.low_&65535,T5=q.high_>>>16,b3=q.high_&65535,z6=q.low_>>>16,L9=q.low_&65535,_9=0,z4=0,et=0,Ki=0;return Ki+=W5+L9,et+=Ki>>>16,Ki&=65535,et+=E2+z6,z4+=et>>>16,et&=65535,z4+=W0+b3,_9+=z4>>>16,z4&=65535,_9+=w0+T5,_9&=65535,i.math.Long.fromBits(et<<16|Ki,_9<<16|z4)},i.math.Long.prototype.subtract=function(q){return this.add(q.negate())},i.math.Long.prototype.multiply=function(q){if(this.isZero())return i.math.Long.ZERO;if(q.isZero())return i.math.Long.ZERO;if(this.equals(i.math.Long.MIN_VALUE))return q.isOdd()?i.math.Long.MIN_VALUE:i.math.Long.ZERO;if(q.equals(i.math.Long.MIN_VALUE))return this.isOdd()?i.math.Long.MIN_VALUE:i.math.Long.ZERO;if(this.isNegative())return q.isNegative()?this.negate().multiply(q.negate()):this.negate().multiply(q).negate();if(q.isNegative())return this.multiply(q.negate()).negate();if(this.lessThan(i.math.Long.TWO_PWR_24_)&&q.lessThan(i.math.Long.TWO_PWR_24_))return i.math.Long.fromNumber(this.toNumber()*q.toNumber());var w0=this.high_>>>16,W0=this.high_&65535,E2=this.low_>>>16,W5=this.low_&65535,T5=q.high_>>>16,b3=q.high_&65535,z6=q.low_>>>16,L9=q.low_&65535,_9=0,z4=0,et=0,Ki=0;return Ki+=W5*L9,et+=Ki>>>16,Ki&=65535,et+=E2*L9,z4+=et>>>16,et&=65535,et+=W5*z6,z4+=et>>>16,et&=65535,z4+=W0*L9,_9+=z4>>>16,z4&=65535,z4+=E2*z6,_9+=z4>>>16,z4&=65535,z4+=W5*b3,_9+=z4>>>16,z4&=65535,_9+=w0*L9+W0*z6+E2*b3+W5*T5,_9&=65535,i.math.Long.fromBits(et<<16|Ki,_9<<16|z4)},i.math.Long.prototype.div=function(q){if(q.isZero())throw Error("division by zero");if(this.isZero())return i.math.Long.ZERO;if(this.equals(i.math.Long.MIN_VALUE)){if(q.equals(i.math.Long.ONE)||q.equals(i.math.Long.NEG_ONE))return i.math.Long.MIN_VALUE;if(q.equals(i.math.Long.MIN_VALUE))return i.math.Long.ONE;var w0=this.shiftRight(1),W0=w0.div(q).shiftLeft(1);if(W0.equals(i.math.Long.ZERO))return q.isNegative()?i.math.Long.ONE:i.math.Long.NEG_ONE;var T5=this.subtract(q.multiply(W0)),E2=W0.add(T5.div(q));return E2}else if(q.equals(i.math.Long.MIN_VALUE))return i.math.Long.ZERO;if(this.isNegative())return q.isNegative()?this.negate().div(q.negate()):this.negate().div(q).negate();if(q.isNegative())return this.div(q.negate()).negate();for(var W5=i.math.Long.ZERO,T5=this;T5.greaterThanOrEqual(q);){for(var W0=Math.max(1,Math.floor(T5.toNumber()/q.toNumber())),b3=Math.ceil(Math.log(W0)/Math.LN2),z6=b3<=48?1:Math.pow(2,b3-48),L9=i.math.Long.fromNumber(W0),_9=L9.multiply(q);_9.isNegative()||_9.greaterThan(T5);)W0-=z6,L9=i.math.Long.fromNumber(W0),_9=L9.multiply(q);L9.isZero()&&(L9=i.math.Long.ONE),W5=W5.add(L9),T5=T5.subtract(_9)}return W5},i.math.Long.prototype.modulo=function(q){return this.subtract(this.div(q).multiply(q))},i.math.Long.prototype.not=function(){return i.math.Long.fromBits(~this.low_,~this.high_)},i.math.Long.prototype.and=function(q){return i.math.Long.fromBits(this.low_&q.low_,this.high_&q.high_)},i.math.Long.prototype.or=function(q){return i.math.Long.fromBits(this.low_|q.low_,this.high_|q.high_)},i.math.Long.prototype.xor=function(q){return i.math.Long.fromBits(this.low_^q.low_,this.high_^q.high_)},i.math.Long.prototype.shiftLeft=function(q){if(q&=63,q==0)return this;var w0=this.low_;if(q<32){var W0=this.high_;return i.math.Long.fromBits(w0<>>32-q)}else return i.math.Long.fromBits(0,w0<>>q|w0<<32-q,w0>>q)}else return i.math.Long.fromBits(w0>>q-32,w0>=0?0:-1)},i.math.Long.prototype.shiftRightUnsigned=function(q){if(q&=63,q==0)return this;var w0=this.high_;if(q<32){var W0=this.low_;return i.math.Long.fromBits(W0>>>q|w0<<32-q,w0>>>q)}else return q==32?i.math.Long.fromBits(w0,0):i.math.Long.fromBits(w0>>>q-32,0)};var $={appName:"Modern Browser"},h,u=0xdeadbeefcafe,O=(u&16777215)==15715070;function e(q,w0,W0){q!=null&&(typeof q=="number"?this.fromNumber(q,w0,W0):w0==null&&typeof q!="string"?this.fromString(q,256):this.fromString(q,w0))}function Z0(){return new e(null)}function t1(q,w0,W0,E2,W5,T5){for(;--T5>=0;){var b3=w0*this[q++]+W0[E2]+W5;W5=Math.floor(b3/67108864),W0[E2++]=b3&67108863}return W5}function b2(q,w0,W0,E2,W5,T5){for(var b3=w0&32767,z6=w0>>15;--T5>=0;){var L9=this[q]&32767,_9=this[q++]>>15,z4=z6*L9+_9*b3;L9=b3*L9+((z4&32767)<<15)+W0[E2]+(W5&1073741823),W5=(L9>>>30)+(z4>>>15)+z6*_9+(W5>>>30),W0[E2++]=L9&1073741823}return W5}function s(q,w0,W0,E2,W5,T5){for(var b3=w0&16383,z6=w0>>14;--T5>=0;){var L9=this[q]&16383,_9=this[q++]>>14,z4=z6*L9+_9*b3;L9=b3*L9+((z4&16383)<<14)+W0[E2]+W5,W5=(L9>>28)+(z4>>14)+z6*_9,W0[E2++]=L9&268435455}return W5}O&&$.appName=="Microsoft Internet Explorer"?(e.prototype.am=b2,h=30):O&&$.appName!="Netscape"?(e.prototype.am=t1,h=26):(e.prototype.am=s,h=28),e.prototype.DB=h,e.prototype.DM=(1<=0;--w0)q[w0]=this[w0];q.t=this.t,q.s=this.s}function Q8(q){this.t=1,this.s=q<0?-1:0,q>0?this[0]=q:q<-1?this[0]=q+DV:this.t=0}function K9(q){var w0=Z0();return w0.fromInt(q),w0}function c8(q,w0){var W0;if(w0==16)W0=4;else if(w0==8)W0=3;else if(w0==256)W0=8;else if(w0==2)W0=1;else if(w0==32)W0=5;else if(w0==4)W0=2;else{this.fromRadix(q,w0);return}this.t=0,this.s=0;for(var E2=q.length,W5=!1,T5=0;--E2>=0;){var b3=W0==8?q[E2]&255:O9(q,E2);if(b3<0){q.charAt(E2)=="-"&&(W5=!0);continue}W5=!1,T5==0?this[this.t++]=b3:T5+W0>this.DB?(this[this.t-1]|=(b3&(1<>this.DB-T5):this[this.t-1]|=b3<=this.DB&&(T5-=this.DB)}W0==8&&q[0]&128&&(this.s=-1,T5>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==q;)--this.t}function Mi(q){if(this.s<0)return"-"+this.negate().toString(q);var w0;if(q==16)w0=4;else if(q==8)w0=3;else if(q==2)w0=1;else if(q==32)w0=5;else if(q==4)w0=2;else return this.toRadix(q);var W0=(1<0)for(z6>z6)>0&&(W5=!0,T5=b9(E2));b3>=0;)z6>(z6+=this.DB-w0)):(E2=this[b3]>>(z6-=w0)&W0,z6<=0&&(z6+=this.DB,--b3)),E2>0&&(W5=!0),W5&&(T5+=b9(E2));return W5?T5:"0"}function Ti(){var q=Z0();return e.ZERO.subTo(this,q),q}function hr(){return this.s<0?this.negate():this}function K$(q){var w0=this.s-q.s;if(w0!=0)return w0;var W0=this.t;if(w0=W0-q.t,w0!=0)return this.s<0?-w0:w0;for(;--W0>=0;)if((w0=this[W0]-q[W0])!=0)return w0;return 0}function HC(q){var w0=1,W0;return(W0=q>>>16)!=0&&(q=W0,w0+=16),(W0=q>>8)!=0&&(q=W0,w0+=8),(W0=q>>4)!=0&&(q=W0,w0+=4),(W0=q>>2)!=0&&(q=W0,w0+=2),(W0=q>>1)!=0&&(q=W0,w0+=1),w0}function wp(){return this.t<=0?0:this.DB*(this.t-1)+HC(this[this.t-1]^this.s&this.DM)}function kp(q,w0){var W0;for(W0=this.t-1;W0>=0;--W0)w0[W0+q]=this[W0];for(W0=q-1;W0>=0;--W0)w0[W0]=0;w0.t=this.t+q,w0.s=this.s}function vp(q,w0){for(var W0=q;W0=0;--z6)w0[z6+T5+1]=this[z6]>>E2|b3,b3=(this[z6]&W5)<=0;--z6)w0[z6]=0;w0[T5]=b3,w0.t=this.t+T5+1,w0.s=this.s,w0.clamp()}function Dp(q,w0){w0.s=this.s;var W0=Math.floor(q/this.DB);if(W0>=this.t){w0.t=0;return}var E2=q%this.DB,W5=this.DB-E2,T5=(1<>E2;for(var b3=W0+1;b3>E2;E2>0&&(w0[this.t-W0-1]|=(this.s&T5)<>=this.DB;if(q.t>=this.DB;E2+=this.s}else{for(E2+=this.s;W0>=this.DB;E2-=q.s}w0.s=E2<0?-1:0,E2<-1?w0[W0++]=this.DV+E2:E2>0&&(w0[W0++]=E2),w0.t=W0,w0.clamp()}function bp(q,w0){var W0=this.abs(),E2=q.abs(),W5=W0.t;for(w0.t=W5+E2.t;--W5>=0;)w0[W5]=0;for(W5=0;W5=0;)q[W0]=0;for(W0=0;W0=w0.DV&&(q[W0+w0.t]-=w0.DV,q[W0+w0.t+1]=1)}q.t>0&&(q[q.t-1]+=w0.am(W0,w0[W0],q,2*W0,0,1)),q.s=0,q.clamp()}function Rp(q,w0,W0){var E2=q.abs();if(!(E2.t<=0)){var W5=this.abs();if(W5.t0?(E2.lShiftTo(L9,T5),W5.lShiftTo(L9,W0)):(E2.copyTo(T5),W5.copyTo(W0));var _9=T5.t,z4=T5[_9-1];if(z4!=0){var et=z4*(1<1?T5[_9-2]>>this.F2:0),Ki=this.FV/et,qp=(1<=0&&(W0[W0.t++]=1,W0.subTo(Lt,W0)),e.ONE.dlShiftTo(_9,Lt),Lt.subTo(T5,T5);T5.t<_9;)T5[T5.t++]=0;for(;--bh>=0;){var qC=W0[--Ko]==z4?this.DM:Math.floor(W0[Ko]*Ki+(W0[Ko-1]+Yp)*qp);if((W0[Ko]+=T5.am(0,qC,W0,bh,0,_9))0&&W0.rShiftTo(L9,W0),b3<0&&e.ZERO.subTo(W0,W0)}}}function xp(q){var w0=Z0();return this.abs().divRemTo(q,null,w0),this.s<0&&w0.compareTo(e.ZERO)>0&&q.subTo(w0,w0),w0}function qo(q){this.m=q}function Fp(q){return q.s<0||q.compareTo(this.m)>=0?q.mod(this.m):q}function Lp(q){return q}function Mp(q){q.divRemTo(this.m,null,q)}function Tp(q,w0,W0){q.multiplyTo(w0,W0),this.reduce(W0)}function Yo(q,w0){q.squareTo(w0),this.reduce(w0)}qo.prototype.convert=Fp,qo.prototype.revert=Lp,qo.prototype.reduce=Mp,qo.prototype.mulTo=Tp,qo.prototype.sqrTo=Yo;function Ji(){if(this.t<1)return 0;var q=this[0];if(!(q&1))return 0;var w0=q&3;return w0=w0*(2-(q&15)*w0)&15,w0=w0*(2-(q&255)*w0)&255,w0=w0*(2-((q&65535)*w0&65535))&65535,w0=w0*(2-q*w0%this.DV)%this.DV,w0>0?this.DV-w0:-w0}function xn(q){this.m=q,this.mp=q.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<0&&this.m.subTo(w0,w0),w0}function Jo(q){var w0=Z0();return q.copyTo(w0),this.reduce(w0),w0}function Fn(q){for(;q.t<=this.mt2;)q[q.t++]=0;for(var w0=0;w0>15)*this.mpl&this.um)<<15)&q.DM;for(W0=w0+this.m.t,q[W0]+=this.m.am(0,E2,q,w0,0,this.m.t);q[W0]>=q.DV;)q[W0]-=q.DV,q[++W0]++}q.clamp(),q.drShiftTo(this.m.t,q),q.compareTo(this.m)>=0&&q.subTo(this.m,q)}function Gp(q,w0){q.squareTo(w0),this.reduce(w0)}function Np(q,w0,W0){q.multiplyTo(w0,W0),this.reduce(W0)}xn.prototype.convert=Dh,xn.prototype.revert=Jo,xn.prototype.reduce=Fn,xn.prototype.mulTo=Np,xn.prototype.sqrTo=Gp;function Up(){return(this.t>0?this[0]&1:this.s)==0}function Hs(q,w0){if(q>4294967295||q<1)return e.ONE;var W0=Z0(),E2=Z0(),W5=w0.convert(this),T5=HC(q)-1;for(W5.copyTo(W0);--T5>=0;)if(w0.sqrTo(W0,E2),(q&1<0)w0.mulTo(E2,W5,W0);else{var b3=W0;W0=E2,E2=b3}return w0.revert(W0)}function Op(q,w0){var W0;return q<256||w0.isEven()?W0=new qo(w0):W0=new xn(w0),this.exp(q,W0)}e.prototype.copyTo=I4,e.prototype.fromInt=Q8,e.prototype.fromString=c8,e.prototype.clamp=V4,e.prototype.dlShiftTo=kp,e.prototype.drShiftTo=vp,e.prototype.lShiftTo=Sp,e.prototype.rShiftTo=Dp,e.prototype.subTo=q6,e.prototype.multiplyTo=bp,e.prototype.squareTo=_p,e.prototype.divRemTo=Rp,e.prototype.invDigit=Ji,e.prototype.isEven=Up,e.prototype.exp=Hs,e.prototype.toString=Mi,e.prototype.negate=Ti,e.prototype.abs=hr,e.prototype.compareTo=K$,e.prototype.bitLength=wp,e.prototype.mod=xp,e.prototype.modPowInt=Op,e.ZERO=K9(0),e.ONE=K9(1);function Ln(q,w0){this.fromInt(0),w0==null&&(w0=10);for(var W0=this.chunkSize(w0),E2=Math.pow(w0,W0),W5=!1,T5=0,b3=0,z6=0;z6=W0&&(this.dMultiply(E2),this.dAddOffset(b3,0),T5=0,b3=0)}T5>0&&(this.dMultiply(Math.pow(w0,T5)),this.dAddOffset(b3,0)),W5&&e.ZERO.subTo(this,this)}function Ur(q){return Math.floor(Math.LN2*this.DB/Math.log(q))}function jm(){return this.s<0?-1:this.t<=0||this.t==1&&this[0]<=0?0:1}function i5(q){this[this.t]=this.am(0,q-1,this,0,0,this.t),++this.t,this.clamp()}function Pp(q,w0){if(q!=0){for(;this.t<=w0;)this[this.t++]=0;for(this[w0]+=q;this[w0]>=this.DV;)this[w0]-=this.DV,++w0>=this.t&&(this[this.t++]=0),++this[w0]}}function qs(q){if(q==null&&(q=10),this.signum()==0||q<2||q>36)return"0";var w0=this.chunkSize(q),W0=Math.pow(q,w0),E2=K9(W0),W5=Z0(),T5=Z0(),b3="";for(this.divRemTo(E2,W5,T5);W5.signum()>0;)b3=(W0+T5.intValue()).toString(q).substr(1)+b3,W5.divRemTo(E2,W5,T5);return T5.intValue().toString(q)+b3}function Or(){if(this.s<0){if(this.t==1)return this[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this[0];if(this.t==0)return 0}return(this[1]&(1<<32-this.DB)-1)<>=this.DB;if(q.t>=this.DB;E2+=this.s}else{for(E2+=this.s;W0>=this.DB;E2+=q.s}w0.s=E2<0?-1:0,E2>0?w0[W0++]=E2:E2<-1&&(w0[W0++]=this.DV+E2),w0.t=W0,w0.clamp()}e.prototype.fromRadix=Ln,e.prototype.chunkSize=Ur,e.prototype.signum=jm,e.prototype.dMultiply=i5,e.prototype.dAddOffset=Pp,e.prototype.toRadix=qs,e.prototype.intValue=Or,e.prototype.addTo=Hp;var ti={abs:function(q,w0){var W0=new i.math.Long(q,w0),E2;W0.isNegative()?E2=W0.negate():E2=W0,D9[p8>>2]=E2.low_,D9[p8+4>>2]=E2.high_},ensureTemps:function(){ti.ensuredTemps||(ti.ensuredTemps=!0,ti.two32=new e,ti.two32.fromString("4294967296",10),ti.two64=new e,ti.two64.fromString("18446744073709551616",10),ti.temp1=new e,ti.temp2=new e)},lh2bignum:function(q,w0){var W0=new e;W0.fromString(w0.toString(),10);var E2=new e;W0.multiplyTo(ti.two32,E2);var W5=new e;W5.fromString(q.toString(),10);var T5=new e;return W5.addTo(E2,T5),T5},stringify:function(q,w0,W0){var E2=new i.math.Long(q,w0).toString();if(W0&&E2[0]=="-"){ti.ensureTemps();var W5=new e;W5.fromString(E2,10),E2=new e,ti.two64.addTo(W5,E2),E2=E2.toString(10)}return E2},fromString:function(q,w0,W0,E2,W5){ti.ensureTemps();var T5=new e;T5.fromString(q,w0);var b3=new e;b3.fromString(W0,10);var z6=new e;if(z6.fromString(E2,10),W5&&T5.compareTo(e.ZERO)<0){var L9=new e;T5.addTo(ti.two64,L9),T5=L9}var _9=!1;T5.compareTo(b3)<0?(T5=b3,_9=!0):T5.compareTo(z6)>0&&(T5=z6,_9=!0);var z4=i.math.Long.fromString(T5.toString());if(D9[p8>>2]=z4.low_,D9[p8+4>>2]=z4.high_,_9)throw"range error"}};return ti}();function Ho(i){this.name="ExitStatus",this.message="Program terminated with exit("+i+")",this.status=i}Ho.prototype=new Error,Ho.prototype.constructor=Ho;var Bp,PC=null,lv=!1;Fi=function i(){A.calledRun||Wm(),A.calledRun||(Fi=i)},A.callMain=A.callMain=function($){K4(C7==0,"cannot call main when async dependencies remain! (listen on __ATMAIN__)"),K4(MC.length==0,"cannot call main when preRun functions remain to be called"),$=$||[],Gs();var h=$.length+1;function u(){for(var t1=0;t1<3;t1++)O.push(0)}var O=[d3(Nr(A.thisProgram),"i8",Uo)];u();for(var e=0;e0||(kh(),C7>0)||A.calledRun)return;function $(){A.calledRun||(A.calledRun=!0,!K0&&(Gs(),gp(),g&&PC!==null&&A.printErr("pre-main prep time: "+(Date.now()-PC)+" ms"),A.onRuntimeInitialized&&A.onRuntimeInitialized(),A._main&&yp&&A.callMain(i),U$()))}A.setStatus?(A.setStatus("Running..."),setTimeout(function(){setTimeout(function(){A.setStatus("")},1),$()},1)):$()}A.run=A.run=Wm;function pp(i,$){if(!($&&A.noExitRuntime))throw A.noExitRuntime||(K0=!0,F1=i,Ei=Bp,TC(),A.onExit&&A.onExit(i)),d?(process.stdout.once("drain",function(){process.exit(i)}),console.log(" "),setTimeout(function(){process.exit(i)},500)):I0&&typeof quit=="function"&&quit(i),new Ho(i)}A.exit=A.exit=pp;var Qp=[];function Ps(i){i!==void 0?(A.print(i),A.printErr(i),i=JSON.stringify(i)):i="",K0=!0,F1=1;var $=` +If this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.`,h="abort("+i+") at "+xC()+$;throw Qp&&Qp.forEach(function(u){h=u(h,i)}),h}if(A.abort=A.abort=Ps,A.preInit)for(typeof A.preInit=="function"&&(A.preInit=[A.preInit]);A.preInit.length>0;)A.preInit.pop()();var yp=!0;A.noInitialRun&&(yp=!1),Wm();var cv=A._encoder_init,gv=A._encoder_clear,hv=A._encoder_analysis_buffer,fv=A._encoder_process,uv=A._encoder_data_len,Iv=A._encoder_transfer_data,Ci=A.HEAPU8,q$=A.HEAPU32,Y$=A.HEAPF32,J$=function(i,$,h){this.numChannels=$,this.oggBuffers=[],this.encoder=cv(this.numChannels,i,h)};J$.prototype.encode=function(i){for(var $=i[0].length,h=hv(this.encoder,$)>>2,u=0;u>2);this.process($)},J$.prototype.finish=function(){this.process(0);let i=this.oggBuffers.slice();return this.cleanup(),i},J$.prototype.cancel=J$.prototype.cleanup=function(){gv(this.encoder),delete this.encoder,delete this.oggBuffers},J$.prototype.process=function(i){fv(this.encoder,i);var $=uv(this.encoder);if($>0){var h=Iv(this.encoder);this.oggBuffers.push(new Uint8Array(Ci.subarray(h,h+$)))}},Pm.OggVorbisEncoder=J$}};typeof window<"u"&&window===self&&Pm.init();function Ek(A,r,l,g){let d=new Pm.OggVorbisEncoder(l,r,g);d.encode(A);let b=d.finish(),I0=b.reduce((q0,m1)=>q0+m1.length,0),b0=new Uint8Array(I0),m0=0;for(let q0 of b)b0.set(q0,m0),m0+=q0.length;return b0}document.body.classList.add("load");var Ck=!1,Sn=class{channelColors=["rgba(255, 99, 71, 1)","rgba(255, 165, 0, 1)","rgba(255, 215, 0, 1)","rgba(50, 205, 50, 1)","rgba(60, 179, 113, 1)","rgba(0, 128, 0, 1)","rgba(0, 191, 255, 1)","rgba(65, 105, 225, 1)","rgba(138, 43, 226, 1)","rgba(50, 120, 125, 1)","rgba(255, 0, 255, 1)","rgba(255, 20, 147, 1)","rgba(218, 112, 214, 1)","rgba(240, 128, 128, 1)","rgba(255, 192, 203, 1)","rgba(255, 255, 0, 1)"];constructor(r,l,g){this.localeManager=g,this.context=r,this.isExporting=!1,this.compressionFunc=Ek;let d;this.ready=new Promise(b=>d=b),this.initializeContext(r,l).then(()=>{d()})}saveBlob(r,l){let g=URL.createObjectURL(r),d=document.createElement("a");d.href=g,d.download=l,d.click(),Y5(d)}sfError;async initializeContext(r,l){if(!r.audioWorklet)throw alert("Audio worklet is not supported on your browser. Sorry!"),"Not supported.";for(let x of document.querySelectorAll("*[translate-path]"))this.localeManager.bindObjectProperty(x,"innerText",x.getAttribute("translate-path"));for(let x of document.querySelectorAll("*[translate-path-title]"))this.localeManager.bindObjectProperty(x,"innerText",x.getAttribute("translate-path-title")+".title"),this.localeManager.bindObjectProperty(x,"title",x.getAttribute("translate-path-title")+".description");let d=Ck?"synthetizer/worklet_system/worklet_processor.js":Mm;Ck&&console.warn("DEBUG ENABLED! DEBUGGING ENABLED!!"),r.audioWorklet&&await r.audioWorklet.addModule(new URL("../../spessasynth_lib/"+d,import.meta.url)),this.soundFont=l;let b=new URL("../../spessasynth_lib/synthetizer/audio_effects/impulse_response_2.flac",import.meta.url),b0=await(await fetch(b)).arrayBuffer();this.impulseResponse=await r.decodeAudioData(b0),this.synth=new ah(r.destination,this.soundFont,void 0,void 0,{chorusEnabled:!0,chorusConfig:void 0,reverbImpulseResponse:this.impulseResponse,reverbEnabled:!0}),this.synth.eventHandler.addEvent("soundfonterror","manager-sf-error",x=>{this.sfError&&this.sfError(x)}),await this.synth.isReady,this.midHandler=new vm,this.wml=new Sm(this.synth),this.keyboard=new BC(this.channelColors,this.synth);let m0=document.getElementById("note_canvas");m0.width=window.innerWidth*window.devicePixelRatio,m0.height=window.innerHeight*window.devicePixelRatio,this.renderer=new vi(this.channelColors,this.synth,m0),this.renderer.render(!0);let q0=!1,m1=()=>{if(m0.width=window.innerWidth*window.devicePixelRatio,m0.height=window.innerHeight*window.devicePixelRatio,this.renderer.computeColors(),Bn){if(window.innerWidth/window.innerHeight>1){if(!q0){let x=document.getElementById("title_wrapper"),j0=document.getElementById("settings_div");q0=!0,x.parentElement.insertBefore(j0,x)}}else if(q0){let x=document.getElementById("title_wrapper"),j0=document.getElementById("settings_div");q0=!1,x.parentElement.insertBefore(x,j0)}}this.renderer.render(!1,!0)};m1(),window.addEventListener("resize",m1.bind(this)),window.addEventListener("orientationchange",m1.bind(this)),Bn&&(this.renderer.keyRange={min:36,max:96},this.keyboard.setKeyRange({min:36,max:96},!1)),this.synthUI=new Lr(this.channelColors,document.getElementById("synthetizer_controls"),this.localeManager),this.synthUI.connectSynth(this.synth),this.playerUI=new Fm(document.getElementById("player_info"),this.localeManager),this.seqUI=new _s(document.getElementById("sequencer_controls"),this.localeManager,this.playerUI),this.settingsUI=new di(document.getElementById("settings_div"),this.synthUI,this.seqUI,this.renderer,this.keyboard,this.midHandler,this.playerUI,this.localeManager),document.addEventListener("keydown",x=>{switch(x.key.toLowerCase()){case j7.cinematicMode:this.seq&&this.seq.pause();let j0=window.prompt(`Cinematic mode activated! Paste the link to the image for canvas (leave blank to disable)`,"");if(this.seq&&this.seq.play(),j0===null)return;m0.style.background=`linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)), center center / cover url("${j0}")`,document.getElementsByClassName("top_part")[0].style.display="none",document.getElementsByClassName("bottom_part")[0].style.display="none",document.body.requestFullscreen().then();break;case j7.videoMode:this.seq&&this.seq.pause();let K0=window.prompt(`Video mode! Paste the link to the video source (leave blank to disable) -Note: the video will be available in console as 'video'`,"");if(K0===null)return;let F1=document.createElement("video");F1.src=K0,F1.classList.add("secret_video"),m0.parentElement.appendChild(F1),F1.play(),window.video=F1,this.seq&&(F1.currentTime=parseFloat(window.prompt("Video offset to sync to midi, in seconds.","0")),F1.play(),this.seq.currentTime=0),document.addEventListener("keydown",B2=>{B2.key===" "&&(F1.paused?F1.play():F1.pause())});break}}),this.renderer.render(!1,!0)}async reloadSf(r){await this.synth.soundfontManager.reloadManager(r),this.soundFont=r}play(r){this.synth&&(this.seq=new pm(r,this.synth),this.seq.onError=l=>{document.getElementById("title").textContent=l},this.seqUI.connectSequencer(this.seq),this.playerUI.connectSequencer(this.seq),this.renderer.connectSequencer(this.seq),this.settingsUI.addSequencer(this.seq),this.seq.play(!0))}downloadDesfont(){let l=Eh(this.soundFont).write(),g=new Blob([l.buffer],{type:"audio/soundfont"});this.saveBlob(g,"desfont.sf2")}};Sn.prototype.exportSong=Ik;Sn.prototype._exportAudioData=Ow;Sn.prototype._doExportAudioData=Uw;Sn.prototype.exportMidi=Pw;Sn.prototype._exportSoundfont=uk;Sn.prototype._exportRMIDI=dk;var XD="SGM.sf3",jB=document.getElementById("title"),Mo=document.getElementById("midi_file_input"),eb=document.getElementById("sf_file_input"),mk=document.getElementById("demo_song"),zB=document.getElementById("export_button"),w$=document.getElementsByClassName("loading")[0],bi=document.getElementById("loading_message"),tb="spessasynth-db",v$="soundFontStore";function XB(A){let r=indexedDB.open(tb,1);r.onsuccess=()=>{let l=r.result;A(l)},r.onupgradeneeded=l=>{l.target.result.createObjectStore(v$,{keyPath:"id"})}}async function ib(){return await new Promise(A=>{XB(r=>{let d=r.transaction([v$],"readonly").objectStore(v$).get("buffer");d.onerror=b=>{throw console.error("Database error"),b},d.onsuccess=async()=>{let b=d.result;if(!b){A(void 0);return}A(b.data)}})})}function k$(A,r=!0){let l=w$.getElementsByClassName("loading_icon")[0];l.innerHTML=A,l.style.animation=r?"none":""}async function Bk(A){XB(r=>{let g=r.transaction([v$],"readwrite").objectStore(v$);try{let d=g.put({id:"buffer",data:A});d.onsuccess=()=>{J5("SoundFont stored successfully")},d.onerror=b=>{console.error("Error saving soundfont",b)}}catch(d){b4("Failed saving soundfont:",d)}})}async function rb(A){let r=new Lm(A);try{let d=window.AudioContext||window.webkitAudioContext;window.audioContextMain=new d({sampleRate:44100})}catch(d){throw k$(yC(256)),bi.textContent=r.getLocaleString("locale.synthInit.noWebAudio"),d}bi.textContent=r.getLocaleString("locale.synthInit.loadingSoundfont");let l=await ib(),g=!0;if(l===void 0){b4("Failed to load from db, fetching online instead"),g=!1;let d=document.getElementById("progress_bar"),b=r.getLocaleString("locale.synthInit.loadingBundledSoundfont");bi.textContent=b,l=await nb(`soundfonts/${XD}`,I0=>{bi.textContent=`${b} ${I0}%`}),d.style.width="0"}else J5("Loaded the soundfont from the database succesfully");window.soundFontParser=l,g||(bi.textContent=r.getLocaleString("locale.synthInit.savingSoundfont"),await Bk(l)),window.audioContextMain.state!=="running"&&document.addEventListener("mousedown",()=>{window.audioContextMain.state!=="running"&&window.audioContextMain.resume().then()}),bi.textContent=r.getLocaleString("locale.synthInit.startingSynthesizer"),window.manager=new Sn(audioContextMain,soundFontParser,r),window.manager.sfError=d=>{k$(yC(256)),g?(b4("Invalid soundfont in the database. Resetting."),XB(b=>{let m0=b.transaction([v$],"readwrite").objectStore(v$).delete("buffer");m0.onsuccess=()=>{location.reload()}})):jB.innerHTML=`Error parsing soundfont:
${d}
`,bi.innerHTML=`Error parsing soundfont:
${d}
`},await manager.ready,Mo.files[0]?await ZB(Mo.files):(Mo.onclick=void 0,Mo.onchange=()=>{Mo.files[0]&&ZB(Mo.files).then()}),k$(GB(256)),bi.textContent=r.getLocaleString("locale.synthInit.done")}async function nb(A,r){let l=await fetch(A);if(!l.ok)throw jB.innerText="Error downloading soundfont!",l;let g=l.headers.get("content-length"),d=await(await l.body).getReader(),b=!1,I0=new Uint8Array(parseInt(g)),b0=0;do{let m0=await d.read();m0.value&&(I0.set(m0.value,b0),b0+=m0.value.length),b=m0.done;let Y0=Math.round(b0/g*100);r(Y0)}while(!b);return I0.buffer}async function ZB(A){mk.style.display="none";let r;A[0].name.length>20?r=A[0].name.substring(0,21)+"...":r=A[0].name,A.length>1&&(r+=` and ${A.length-1} others`),document.getElementById("file_upload").innerText=r,document.getElementById("file_upload").title=A[0].name;let l=[];for(let g of A)l.push({binary:await g.arrayBuffer(),altName:g.name});manager.synth.setLogLevel(!1,!1,!1,!1),manager.seq?manager.seq.loadNewSongList(l):manager.play(l),zB.style.display="flex",zB.onclick=window.manager.exportSong.bind(window.manager)}function sb(A){localStorage.setItem("spessasynth-settings",JSON.stringify(A)),J5("saved as",A)}window.saveSettings=sb;var vC=JSON.parse(localStorage.getItem("spessasynth-settings"));vC!==null&&(window.savedSettings=new Promise(A=>{A(vC)}));var WB;vC&&vC.interface&&vC.interface.language?WB=(await savedSettings).interface.language||navigator.language.split("-")[0].toLowerCase():WB=navigator.language.split("-")[0].toLowerCase();Mo.value="";Mo.focus();zB.style.display="none";document.getElementById("sf_upload").style.display="none";document.getElementById("file_upload").style.display="none";async function VB(A){jB.textContent=window.manager.localeManager.getLocaleString("locale.synthInit.genericLoading");let r=await fetch("demo_songs/"+A);r.name=A,await ZB([r])}rb(WB).then(()=>{document.getElementById("sf_upload").style.display="flex",document.getElementById("file_upload").style.display="flex",w$.classList.add("done"),document.documentElement.classList.add("no_scroll"),document.body.classList.add("no_scroll"),setTimeout(()=>{w$.style.display="none",document.body.classList.remove("no_scroll"),document.documentElement.classList.remove("no_scroll"),Bn&&window.chrome&&U7(window.manager.localeManager.getLocaleString("locale.warnings.warning"),[{type:"text",textContent:window.manager.localeManager.getLocaleString("locale.warnings.chromeMobile")}],7)},1e3),eb.onchange=A=>{if(!A.target.files[0])return;let r=A.target.files[0];window.manager.seq&&window.manager.seq.pause(),document.getElementById("sf_upload").firstElementChild.innerText=r.name,w$.style.display="",setTimeout(async()=>{w$.classList.remove("done"),k$(by(256),!1),bi.textContent=window.manager.localeManager.getLocaleString("locale.synthInit.loadingSoundfont");let l=performance.now()/1e3,g;try{g=await r.arrayBuffer(),window.soundFontParser=g}catch(b){throw bi.textContent=window.manager.localeManager.getLocaleString("locale.warnings.outOfMemory"),k$(yC(256)),U7(manager.localeManager.getLocaleString("locale.warnings.warning"),[{type:"text",textContent:window.manager.localeManager.getLocaleString("locale.warnings.outOfMemory")}]),b}window.manager.sfError=b=>{bi.innerHTML=`Error parsing soundfont:
${b}
`,k$(yC(256)),console.log(b)},bi.textContent=window.manager.localeManager.getLocaleString("locale.synthInit.startingSynthesizer"),await window.manager.reloadSf(g),window.manager.seq&&(window.manager.seq.currentTime-=.1),bi.textContent=window.manager.localeManager.getLocaleString("locale.synthInit.savingSoundfont"),await Bk(g);let d=performance.now()/1e3-l;await new Promise(b=>setTimeout(b,1e3-d)),k$(GB(256)),bi.textContent=window.manager.localeManager.getLocaleString("locale.synthInit.done"),w$.classList.add("done"),document.documentElement.classList.add("no_scroll"),document.body.classList.add("no_scroll"),setTimeout(()=>{w$.style.display="none",document.body.classList.remove("no_scroll"),document.documentElement.classList.remove("no_scroll")},1e3)},75)},mk.onclick=()=>{U7(window.manager.localeManager.getLocaleString("locale.demoSongButton"),[{type:"button",textContent:window.manager.localeManager.getLocaleString("locale.credits"),onClick:()=>{window.open("https://github.com/spessasus/SpessaSynth/blob/master/demo_songs/CREDITS.md")}},{type:"button",textContent:"Field Of Hopes and Dreams - Deltarune",onClick:async A=>{X7(A.id),await VB("Field of Hopes and Dreams.rmi")}},{type:"button",textContent:"Hybrid Song/Funky Stars - Quazar of Sanxion",onClick:async A=>{X7(A.id),await VB("Hybrid song 2_20.rmi")}},{type:"button",textContent:"Unreeeal Superhero 3 - Kenet & Rez",onClick:async A=>{X7(A.id),await VB("Unreeeal superhero 3.rmi")}}],999999,!0,void 0,{display:"flex","flex-direction":"column"})}}); +Note: the video will be available in console as 'video'`,"");if(K0===null)return;let F1=document.createElement("video");F1.src=K0,F1.classList.add("secret_video"),m0.parentElement.appendChild(F1),F1.play(),window.video=F1,this.seq&&(F1.currentTime=parseFloat(window.prompt("Video offset to sync to midi, in seconds.","0")),F1.play(),this.seq.currentTime=0),document.addEventListener("keydown",B2=>{B2.key===" "&&(F1.paused?F1.play():F1.pause())});break}}),this.renderer.render(!1,!0)}async reloadSf(r){await this.synth.soundfontManager.reloadManager(r),this.soundFont=r}play(r){this.synth&&(this.seq=new pm(r,this.synth),this.seq.onError=l=>{document.getElementById("title").textContent=l},this.seqUI.connectSequencer(this.seq),this.playerUI.connectSequencer(this.seq),this.renderer.connectSequencer(this.seq),this.settingsUI.addSequencer(this.seq),this.seq.play(!0))}downloadDesfont(){let l=Eh(this.soundFont).write(),g=new Blob([l.buffer],{type:"audio/soundfont"});this.saveBlob(g,"desfont.sf2")}};Sn.prototype.exportSong=Ik;Sn.prototype._exportAudioData=Ow;Sn.prototype._doExportAudioData=Uw;Sn.prototype.exportMidi=Pw;Sn.prototype._exportSoundfont=uk;Sn.prototype._exportRMIDI=dk;var XD="SGM.sf3",jB=document.getElementById("title"),Mo=document.getElementById("midi_file_input"),eb=document.getElementById("sf_file_input"),mk=document.getElementById("demo_song"),zB=document.getElementById("export_button"),w$=document.getElementsByClassName("loading")[0],bi=document.getElementById("loading_message"),tb="spessasynth-db",v$="soundFontStore";function XB(A){let r=indexedDB.open(tb,1);r.onsuccess=()=>{let l=r.result;A(l)},r.onupgradeneeded=l=>{l.target.result.createObjectStore(v$,{keyPath:"id"})}}async function ib(){return await new Promise(A=>{XB(r=>{let d=r.transaction([v$],"readonly").objectStore(v$).get("buffer");d.onerror=b=>{throw console.error("Database error"),b},d.onsuccess=async()=>{let b=d.result;if(!b){A(void 0);return}A(b.data)}})})}function k$(A,r=!0){let l=w$.getElementsByClassName("loading_icon")[0];l.innerHTML=A,l.style.animation=r?"none":""}async function Bk(A){XB(r=>{let g=r.transaction([v$],"readwrite").objectStore(v$);try{let d=g.put({id:"buffer",data:A});d.onsuccess=()=>{Y5("SoundFont stored successfully")},d.onerror=b=>{console.error("Error saving soundfont",b)}}catch(d){_4("Failed saving soundfont:",d)}})}async function rb(A){let r=new Lm(A);try{let d=window.AudioContext||window.webkitAudioContext;window.audioContextMain=new d({sampleRate:44100})}catch(d){throw k$(yC(256)),bi.textContent=r.getLocaleString("locale.synthInit.noWebAudio"),d}bi.textContent=r.getLocaleString("locale.synthInit.loadingSoundfont");let l=await ib(),g=!0;if(l===void 0){_4("Failed to load from db, fetching online instead"),g=!1;let d=document.getElementById("progress_bar"),b=r.getLocaleString("locale.synthInit.loadingBundledSoundfont");bi.textContent=b,l=await nb(`soundfonts/${XD}`,I0=>{bi.textContent=`${b} ${I0}%`}),d.style.width="0"}else Y5("Loaded the soundfont from the database succesfully");window.soundFontParser=l,g||(bi.textContent=r.getLocaleString("locale.synthInit.savingSoundfont"),await Bk(l)),window.audioContextMain.state!=="running"&&document.addEventListener("mousedown",()=>{window.audioContextMain.state!=="running"&&window.audioContextMain.resume().then()}),bi.textContent=r.getLocaleString("locale.synthInit.startingSynthesizer"),window.manager=new Sn(audioContextMain,soundFontParser,r),window.manager.sfError=d=>{k$(yC(256)),g?(_4("Invalid soundfont in the database. Resetting."),XB(b=>{let m0=b.transaction([v$],"readwrite").objectStore(v$).delete("buffer");m0.onsuccess=()=>{location.reload()}})):jB.innerHTML=`Error parsing soundfont:
${d}
`,bi.innerHTML=`Error parsing soundfont:
${d}
`},await manager.ready,Mo.files[0]?await ZB(Mo.files):(Mo.onclick=void 0,Mo.onchange=()=>{Mo.files[0]&&ZB(Mo.files).then()}),k$(GB(256)),bi.textContent=r.getLocaleString("locale.synthInit.done")}async function nb(A,r){let l=await fetch(A);if(!l.ok)throw jB.innerText="Error downloading soundfont!",l;let g=l.headers.get("content-length"),d=await(await l.body).getReader(),b=!1,I0=new Uint8Array(parseInt(g)),b0=0;do{let m0=await d.read();m0.value&&(I0.set(m0.value,b0),b0+=m0.value.length),b=m0.done;let q0=Math.round(b0/g*100);r(q0)}while(!b);return I0.buffer}async function ZB(A){mk.style.display="none";let r;A[0].name.length>20?r=A[0].name.substring(0,21)+"...":r=A[0].name,A.length>1&&(r+=` and ${A.length-1} others`),document.getElementById("file_upload").innerText=r,document.getElementById("file_upload").title=A[0].name;let l=[];for(let g of A)l.push({binary:await g.arrayBuffer(),altName:g.name});manager.synth.setLogLevel(!1,!1,!1,!1),manager.seq?manager.seq.loadNewSongList(l):manager.play(l),zB.style.display="flex",zB.onclick=window.manager.exportSong.bind(window.manager)}function sb(A){localStorage.setItem("spessasynth-settings",JSON.stringify(A)),Y5("saved as",A)}window.saveSettings=sb;var vC=JSON.parse(localStorage.getItem("spessasynth-settings"));vC!==null&&(window.savedSettings=new Promise(A=>{A(vC)}));var WB;vC&&vC.interface&&vC.interface.language?WB=(await savedSettings).interface.language||navigator.language.split("-")[0].toLowerCase():WB=navigator.language.split("-")[0].toLowerCase();Mo.value="";Mo.focus();zB.style.display="none";document.getElementById("sf_upload").style.display="none";document.getElementById("file_upload").style.display="none";async function VB(A){jB.textContent=window.manager.localeManager.getLocaleString("locale.synthInit.genericLoading");let r=await fetch("demo_songs/"+A);r.name=A,await ZB([r])}rb(WB).then(()=>{document.getElementById("sf_upload").style.display="flex",document.getElementById("file_upload").style.display="flex",w$.classList.add("done"),document.documentElement.classList.add("no_scroll"),document.body.classList.add("no_scroll"),setTimeout(()=>{w$.style.display="none",document.body.classList.remove("no_scroll"),document.documentElement.classList.remove("no_scroll"),Bn&&window.chrome&&U7(window.manager.localeManager.getLocaleString("locale.warnings.warning"),[{type:"text",textContent:window.manager.localeManager.getLocaleString("locale.warnings.chromeMobile")}],7)},1e3),eb.onchange=A=>{if(!A.target.files[0])return;let r=A.target.files[0];window.manager.seq&&window.manager.seq.pause(),document.getElementById("sf_upload").firstElementChild.innerText=r.name,w$.style.display="",setTimeout(async()=>{w$.classList.remove("done"),k$(by(256),!1),bi.textContent=window.manager.localeManager.getLocaleString("locale.synthInit.loadingSoundfont");let l=performance.now()/1e3,g;try{g=await r.arrayBuffer(),window.soundFontParser=g}catch(b){throw bi.textContent=window.manager.localeManager.getLocaleString("locale.warnings.outOfMemory"),k$(yC(256)),U7(manager.localeManager.getLocaleString("locale.warnings.warning"),[{type:"text",textContent:window.manager.localeManager.getLocaleString("locale.warnings.outOfMemory")}]),b}window.manager.sfError=b=>{bi.innerHTML=`Error parsing soundfont:
${b}
`,k$(yC(256)),console.log(b)},bi.textContent=window.manager.localeManager.getLocaleString("locale.synthInit.startingSynthesizer"),await window.manager.reloadSf(g),window.manager.seq&&(window.manager.seq.currentTime-=.1),bi.textContent=window.manager.localeManager.getLocaleString("locale.synthInit.savingSoundfont"),await Bk(g);let d=performance.now()/1e3-l;await new Promise(b=>setTimeout(b,1e3-d)),k$(GB(256)),bi.textContent=window.manager.localeManager.getLocaleString("locale.synthInit.done"),w$.classList.add("done"),document.documentElement.classList.add("no_scroll"),document.body.classList.add("no_scroll"),setTimeout(()=>{w$.style.display="none",document.body.classList.remove("no_scroll"),document.documentElement.classList.remove("no_scroll")},1e3)},75)},mk.onclick=()=>{U7(window.manager.localeManager.getLocaleString("locale.demoSongButton"),[{type:"button",textContent:window.manager.localeManager.getLocaleString("locale.credits"),onClick:()=>{window.open("https://github.com/spessasus/SpessaSynth/blob/master/demo_songs/CREDITS.md")}},{type:"button",textContent:"Field Of Hopes and Dreams - Deltarune",onClick:async A=>{X7(A.id),await VB("Field of Hopes and Dreams.rmi")}},{type:"button",textContent:"Hybrid Song/Funky Stars - Quazar of Sanxion",onClick:async A=>{X7(A.id),await VB("Hybrid song 2_20.rmi")}},{type:"button",textContent:"Unreeeal Superhero 3 - Kenet & Rez",onClick:async A=>{X7(A.id),await VB("Unreeeal superhero 3.rmi")}}],999999,!0,void 0)}}); diff --git a/src/website/minified/local_main.min.js b/src/website/minified/local_main.min.js index e02bbcd7..53874c8d 100644 --- a/src/website/minified/local_main.min.js +++ b/src/website/minified/local_main.min.js @@ -1,5 +1,5 @@ -var oB=(o=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(o,{get:(r,l)=>(typeof require<"u"?require:r)[l]}):o)(function(o){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+o+'" is not supported')});var l6=class extends Uint8Array{constructor(r){super(r),this.currentIndex=0}currentIndex};function DA(o){let r=o.reduce((E,F)=>E+F.length,0),l=new l6(r),h=0;for(let E of o)l.set(E,h),h+=E.length;return l}function ha(o){o=Math.floor(o);let r=Math.floor(o/60),l=Math.round(o-r*60);return{minutes:r,seconds:l,time:`${r.toString().padStart(2,"0")}:${l.toString().padStart(2,"0")}`}}function Cm(o){return o.trim().replaceAll(".mid","").replaceAll(".rmi","").replaceAll("_"," ")}var S1={warn:"color: orange;",unrecognized:"color: red;",info:"color: aqua;",recognized:"color: lime",value:"color: yellow; background-color: black;"};var fi=class{constructor(r,l,h){this.ticks=r,this.messageStatusByte=l,this.messageData=h}};var J3={noteOff:128,noteOn:144,polyPressure:160,controllerChange:176,programChange:192,channelPressure:208,pitchBend:224,systemExclusive:240,timecode:241,songPosition:242,songSelect:243,tuneRequest:246,clock:248,start:250,continue:251,stop:252,activeSensing:254,reset:255,sequenceNumber:0,text:1,copyright:2,trackName:3,instrumentName:4,lyric:5,marker:6,cuePoint:7,midiChannelPrefix:32,midiPort:33,endOfTrack:47,setTempo:81,smpteOffset:84,timeSignature:88,keySignature:89,sequenceSpecific:127};function UQ(o){let r=o&240,l=o&15,h=-1,E=o;return r>=128&&r<=224&&(h=l,E=r),{status:E,channel:h}}var s6={bankSelect:0,modulationWheel:1,breathController:2,footController:4,portamentoTime:5,dataEntryMsb:6,mainVolume:7,balance:8,pan:10,expressionController:11,effectControl1:12,effectControl2:13,generalPurposeController1:16,generalPurposeController2:17,generalPurposeController3:18,generalPurposeController4:19,lsbForControl0BankSelect:32,lsbForControl1ModulationWheel:33,lsbForControl2BreathController:34,lsbForControl4FootController:36,lsbForControl5PortamentoTime:37,lsbForControl6DataEntry:38,lsbForControl7MainVolume:39,lsbForControl8Balance:40,lsbForControl10Pan:42,lsbForControl11ExpressionController:43,lsbForControl12EffectControl1:44,lsbForControl13EffectControl2:45,sustainPedal:64,portamentoOnOff:65,sostenutoPedal:66,softPedal:67,legatoFootswitch:68,hold2Pedal:69,soundVariation:70,timbreHarmonicContent:71,releaseTime:72,attackTime:73,brightness:74,soundController6:75,soundController7:76,soundController8:77,soundController9:78,soundController10:79,generalPurposeController5:80,generalPurposeController6:81,generalPurposeController7:82,generalPurposeController8:83,portamentoControl:84,effects1Depth:91,effects2Depth:92,effects3Depth:93,effects4Depth:94,effects5Depth:95,dataIncrement:96,dataDecrement:97,NRPNLsb:98,NRPNMsb:99,RPNLsb:100,RPNMsb:101,allSoundOff:120,resetAllControllers:121,localControlOnOff:122,allNotesOff:123,omniModeOff:124,omniModeOn:125,monoModeOn:126,polyModeOn:127};var $B=class{constructor(){this.events={noteoff:{},noteon:{},pitchwheel:{},controllerchange:{},programchange:{},channelpressure:{},polypressure:{},drumchange:{},stopall:{},newchannel:{},mutechannel:{},presetlistchange:{},allcontrollerreset:{},soundfonterror:{}}}addEvent(r,l,h){this.events[r][l]=h}removeEvent(r,l){delete this.events[r][l]}callEvent(r,l){this.events[r]&&Object.values(this.events[r]).forEach(h=>h(l))}};var Bm={nodesAmount:4,defaultDelay:.03,delayVariation:.01,stereoDifference:.02,oscillatorFrequency:.3,oscillatorFrequencyVariation:.05,oscillatorGain:.003},aB=class{constructor(r,l=Bm){let h=r.context;this.input=new ChannelSplitterNode(h,{numberOfOutputs:2});let E=new ChannelMergerNode(h,{numberOfInputs:2}),F=[],I0=[],b0=l.oscillatorFrequency,B0=l.defaultDelay;for(let P0=0;P0{let F=await E.arrayBuffer();l.buffer=await o.decodeAudioData(F)})}return l}var Ke={noteOff:0,noteOn:1,ccChange:2,programChange:3,channelPressure:4,polyPressure:5,killNote:6,ccReset:7,setChannelVibrato:8,soundFontManager:9,stopAll:10,killNotes:11,muteChannel:12,addNewChannel:13,customcCcChange:14,debugMessage:15,systemExclusive:16,setMasterParameter:17,setDrums:18,pitchWheel:19,transpose:20,highPerformanceMode:21,lockController:22,sequencerSpecific:23,requestSynthesizerSnapshot:24,setLogLevel:25},lB={mainVolume:0,masterPan:1,voicesCap:2},Pi=-1,fa={channelProperties:0,eventCall:1,reportedCurrentTime:2,sequencerSpecific:3,synthesizerSnapshot:4,ready:5,soundfontError:6};var fD=!0,uD=!0,mm=!0;function X5(...o){fD&&console.info(...o)}function ue(...o){uD&&console.warn(...o)}function or(...o){mm&&console.group(...o)}function Xt(...o){mm&&console.groupCollapsed(...o)}function e4(){mm&&console.groupEnd()}var PQ={chorusEnabled:!0,chorusConfig:Bm,reverbEnabled:!0,reverbImpulseResponse:void 0};var dC={reloadSoundFont:0,addNewSoundFont:2,deleteSoundFont:3,rearrangeSoundFonts:4};var cB=class{constructor(r){this.soundfontList=[{id:"main",bankOffset:0}],this._port=r.worklet.port,this.synth=r}_sendToWorklet(r,l){this._port.postMessage({messageType:Ke.soundFontManager,messageData:[r,l]})}async addNewSoundFont(r,l,h=0){if(this.soundfontList.find(E=>E.id===l)!==void 0)throw new Error("Cannot overwrite the existing soundfont. Use soundfontManager.delete(id) instead.");this._sendToWorklet(dC.addNewSoundFont,[r,l,h]),await new Promise(E=>this.synth.resolveWhenReady=E),this.soundfontList.push({id:l,bankOffset:h})}deleteSoundFont(r){if(this.soundfontList.length===0){ue("1 soundfont left. Aborting!");return}if(this.soundfontList.findIndex(l=>l.id===r)===-1){ue(`No soundfont with id of "${r}" found. Aborting!`);return}this._sendToWorklet(dC.deleteSoundFont,r)}rearrangeSoundFonts(r){this._sendToWorklet(dC.rearrangeSoundFonts,r),this.soundfontList.sort((l,h)=>r.indexOf(l.id)-r.indexOf(h.id))}async reloadManager(r){this._sendToWorklet(dC.reloadSoundFont,r),await new Promise(l=>this.synth.resolveWhenReady=l)}};var ID="spessasynth-worklet-system",pm=450,ki=9,dD=16;var Ah=class{constructor(r,l,h=!0,E=void 0,F=PQ){X5("%cInitializing SpessaSynth synthesizer...",S1.info),this.context=r.context;let I0=E?.oneOutput===!0;this.eventHandler=new $B,this._voiceCap=pm,this._outputsAmount=dD,this.channelsAmount=this._outputsAmount,this.resolveWhenReady=void 0,this.isReady=new Promise(P0=>this.resolveWhenReady=P0),this.channelProperties=[];for(let P0=0;P0this.handleMessage(P0.data),this.soundfontManager=new cB(this),this._snapshotCallback=void 0,this.sequencerCallbackFunction=void 0,F.reverbEnabled&&!I0&&(this.reverbProcessor=OQ(this.context,F.reverbImpulseResponse),this.reverbProcessor.connect(r),this.worklet.connect(this.reverbProcessor,0)),F.chorusEnabled&&!I0&&(this.chorusProcessor=new aB(r,F.chorusConfig),this.worklet.connect(this.chorusProcessor.input,1)),I0)this.worklet.connect(r,0);else for(let P0=2;P0{this.channelsAmount++})}get voiceCap(){return this._voiceCap}set voiceCap(r){this.post({messageType:Ke.setMasterParameter,messageData:[lB.voicesCap,r]}),this._voiceCap=r}set highPerformanceMode(r){this._highPerformanceMode=r}get highPerformanceMode(){return this._highPerformanceMode}setLogLevel(r,l,h,E){this.post({channelNumber:-1,messageType:Ke.setLogLevel,messageData:[r,l,h,E]})}handleMessage(r){let l=r.messageData;switch(r.messageType){case fa.channelProperties:this.channelProperties=l,this._voicesAmount=this.channelProperties.reduce((h,E)=>h+E.voicesAmount,0);break;case fa.eventCall:this.eventHandler.callEvent(l.eventName,l.eventData);break;case fa.sequencerSpecific:this.sequencerCallbackFunction&&this.sequencerCallbackFunction(l.messageType,l.messageData);break;case fa.synthesizerSnapshot:this._snapshotCallback&&this._snapshotCallback(l);break;case fa.ready:this.resolveWhenReady();break;case fa.soundfontError:ue(new Error(l)),this.eventHandler.callEvent("soundfonterror",l)}}async getSynthesizerSnapshot(){return new Promise(r=>{this._snapshotCallback=l=>{this._snapshotCallback=void 0,r(l)},this.post({messageType:Ke.requestSynthesizerSnapshot,messageData:void 0,channelNumber:Pi})})}addNewChannel(r=!0){this.channelProperties.push({voicesAmount:0,pitchBend:0,pitchBendRangeSemitones:0,isMuted:!1,isDrum:!1}),r&&this.post({channelNumber:0,messageType:Ke.addNewChannel,messageData:null})}setVibrato(r,l){this.post({channelNumber:r,messageType:Ke.setChannelVibrato,messageData:l})}connectIndividualOutputs(r){if(r.length!==this._outputsAmount)throw new Error(`input nodes amount differs from the system's outputs amount! - Expected ${this._outputsAmount} got ${r.length}`);for(let l=0;l0?this.noteOn(l.channel,r[1],h):this.noteOff(l.channel,r[1]);break;case J3.noteOff:this.noteOff(l.channel,r[1]);break;case J3.pitchBend:this.pitchWheel(l.channel,r[2],r[1]);break;case J3.controllerChange:this.controllerChange(l.channel,r[1],r[2]);break;case J3.programChange:this.programChange(l.channel,r[1]);break;case J3.polyPressure:this.polyPressure(l.channel,r[0],r[1]);break;case J3.channelPressure:this.channelPressure(l.channel,r[1]);break;case J3.systemExclusive:this.systemExclusive(new l6(r.slice(1)));break;case J3.reset:this.stopAll(!0),this.resetControllers();break;default:break}}get currentTime(){return this.context.currentTime}get voicesAmount(){return this._voicesAmount}reverbateEverythingBecauseWhyNot(){for(let r=0;r{this.pressedKeys.delete(h),this.releaseNote(h,this.channel),this.synth.noteOff(this.channel,h)},r=(h,E)=>{let F;if(vo)F=127;else{let b0=this.keys[0].getBoundingClientRect();if(this.keyboard.classList.contains("sideways")){let B0=E.clientX-b0.left,P0=b0.width;F=Math.floor((P0-B0)/P0*127)}else{let B0=E.clientY-b0.top,P0=b0.height;F=Math.floor(B0/P0*127)}}this.synth.noteOn(this.channel,h,F,this.enableDebugging)},l=h=>{let E=h.touches?Array.from(h.touches):[h],F=new Set;E.forEach(I0=>{let b0=document.elementFromPoint(I0.clientX,I0.clientY),B0=parseInt(b0.id.replace("note",""));F.add(B0),!(isNaN(B0)||B0<0||this.pressedKeys.has(B0))&&(this.pressedKeys.add(B0),r(B0,I0))}),this.pressedKeys.forEach(I0=>{F.has(I0)||o(I0)})};vo||(document.addEventListener("mousedown",h=>{this.mouseHeld=!0,l(h)}),document.addEventListener("mouseup",()=>{this.mouseHeld=!1,this.pressedKeys.forEach(h=>{o(h)})}),this.keyboard.onmousemove=h=>{this.mouseHeld&&l(h)},this.keyboard.onmouseleave=()=>{this.pressedKeys.forEach(h=>{o(h)})}),this.keyboard.ontouchstart=l.bind(this),this.keyboard.ontouchend=l.bind(this),this.keyboard.ontouchmove=l.bind(this)}var qQ=20,EC=class{constructor(r,l){this.mouseHeld=!1,this.pressedKeys=new Set,this.mode="light",this.enableDebugging=!1,this.sizeChangeAnimationId=-1,this.modeChangeAnimationId=-1,this._keyRange={min:0,max:127},document.addEventListener("keydown",h=>{h.key==="Shift"&&(this.synth.controllerChange(this.channel,s6.sustainPedal,127),this.keyboard.style.filter="brightness(0.5)")}),document.addEventListener("keyup",h=>{h.key==="Shift"&&(this.synth.controllerChange(this.channel,s6.sustainPedal,0),this.keyboard.style.filter="")}),this.synth=l,this.channel=0,this.channelColors=r,this._createKeyboard(),this.synth.eventHandler.addEvent("noteon","keyboard-note-on",h=>{this.pressNote(h.midiNote,h.channel,h.velocity)}),this.synth.eventHandler.addEvent("noteoff","keyboard-note-off",h=>{this.releaseNote(h.midiNote,h.channel)}),this.synth.eventHandler.addEvent("stopall","keyboard-stop-all",()=>{this.clearNotes()}),this.synth.eventHandler.addEvent("mutechannel","keyboard-mute-channel",h=>{if(h.isMuted)for(let E=0;E<128;E++)this.releaseNote(E,h.channel)})}_createKeyboard(){this.keyboard=document.getElementById("keyboard"),this.keyboard.innerHTML="",this.keys=[],this.keyColors=[];for(let r=this._keyRange.min;r=0&&(F=l(r-1)),r<127&&(I0=l(r+1)),I0&&F?h.classList.add("between_sharps"):F?h.classList.add("left_sharp"):I0&&h.classList.add("right_sharp")}return h}toggleMode(r=!0){if(this.mode==="light"?this.mode="dark":this.mode="light",!r){this.keys.forEach(h=>{h.classList.contains("flat_key")&&h.classList.toggle("flat_dark_key")});return}this.modeChangeAnimationId&&clearTimeout(this.modeChangeAnimationId),this.keyboard.classList.add("mode_transform"),document.body.scrollHeight<=window.innerHeight&&document.body.classList.add("no_scroll"),this.modeChangeAnimationId=setTimeout(()=>{this.keys.forEach(h=>{h.classList.contains("flat_key")&&h.classList.toggle("flat_dark_key")}),this.keyboard.classList.remove("mode_transform"),setTimeout(()=>document.body.classList.remove("no_scroll"),500)},500)}get keyRange(){return this._keyRange}set keyRange(r){if(r.max===void 0||r.min===void 0)throw new TypeError("No min or max property!");if(r.min>r.max){let l=r.min;r.min=r.max,r.max=l}r.min=Math.max(0,r.min),r.max=Math.min(127,r.max),this.setKeyRange(r,!0)}setKeyRange(r,l=!0){Math.abs(r.max-r.min)<24&&(r.min-=12,r.max=r.min+24);let E=900/(r.max-r.min+5),F=document.styleSheets[0].cssRules,I0;for(let b0 of F)if(b0.selectorText==="#keyboard .key"){I0=b0;break}if(I0.style.setProperty("--pressed-transform-skew",`${8e-4/(E/7)}`),l){this.sizeChangeAnimationId&&clearTimeout(this.sizeChangeAnimationId);let b0=getComputedStyle(this.keyboard),B0=parseFloat(b0.getPropertyValue("--current-min-height").replace(/[^\d.]+/g,"")),P0=this.keyboard.getBoundingClientRect().height,B1=E/B0,x=P0*B1-P0,j0=(this._keyRange.min+this._keyRange.max)/2,K0=(r.min+r.max)/2;this._keyRange=r;let F1=this.keys.find(_5=>_5.classList.contains("sharp_key")).getBoundingClientRect().width,m2=(j0-K0)*F1,b1=parseFloat(b0.getPropertyValue("--key-border-radius").replace(/[^\d.]+/g,""));this.keyboard.style.marginTop=`${x}px`,this.keyboard.style.transition="",this.keyboard.style.transform=`scale(${B1}) translateX(${m2}px)`,this.keyboard.style.setProperty("--key-border-radius",`${b1/B1}vmin`),this.sizeChangeAnimationId=setTimeout(()=>{this.keyboard.style.setProperty("--current-min-height",`${E}`),this.keyboard.style.transition="none",this.keyboard.style.transform="",this.keyboard.style.marginTop="",this.keyboard.style.setProperty("--key-border-radius",""),this._createKeyboard(),setTimeout(()=>this.keyboard.style.transition="",75)},500)}else this.keyboard.style.setProperty("--current-min-height",`${E}`),this._keyRange=r,this._createKeyboard()}selectChannel(r){this.channel=r}pressNote(r,l,h){let E=this.keys[r-this._keyRange.min];if(E===void 0)return;E.classList.add("pressed");let F=E.classList.contains("sharp_key"),I0=h/127,b0=this.channelColors[l%16].match(/\d+(\.\d+)?/g).map(parseFloat),B0;if(!F&&this.mode==="light"?B0=`rgba(${b0.slice(0,3).map(B1=>255-(255-B1)*I0).join(", ")}, ${b0[3]})`:B0=`rgba(${b0.slice(0,3).map(B1=>B1*I0).join(", ")}, ${b0[3]})`,E.style.background=B0,this.mode==="dark"){let P0=qQ*I0;E.style.boxShadow=`${B0} 0px 0px ${P0}px ${P0/5}px`}this.keyColors[r-this._keyRange.min].push(this.channelColors[l%16])}releaseNote(r,l){let h=this.keys[r-this._keyRange.min];if(h===void 0)return;l%=this.channelColors.length;let E=this.keyColors[r-this._keyRange.min];if(!E)return;let F=E.findLastIndex(I0=>I0===this.channelColors[l]);F!==-1&&(E.splice(F,1),h.style.background=E[E.length-1],this.mode==="dark"&&(h.style.boxShadow=`0px 0px ${qQ}px ${E[E.length-1]}`),E.length<1&&(h.classList.remove("pressed"),h.style.background="",h.style.boxShadow=""))}clearNotes(){this.keys.forEach((r,l)=>{r.classList.remove("pressed"),r.style.background="",r.style.boxShadow="",this.keyColors[l]=[]})}};EC.prototype._handlePointers=HQ;function ua(o,r){let l=o.replace(/[^\d,]/g,"").split(",");return`rgb(${r(parseInt(l[0]))}, ${r(parseInt(l[1]))}, ${r(parseInt(l[2]))})`}var CD="#000";function YQ(o,r,l){o.forEach(h=>{if(h.pressedProgress===0)return;r.fillStyle=h.color;let E=h.pressedProgress*h.velocity;if(r.globalAlpha=.5*E,l){r.fillRect(h.xPos,h.yPos-h.height*E,h.width,h.height*(E*2+1)),r.globalAlpha=1;return}r.fillRect(h.xPos-h.width*E,h.yPos,h.width*(E*2+1),h.height),r.globalAlpha=1}),o.forEach(h=>{r.fillStyle=h.color,r.save(),r.translate(h.xPos,h.yPos),r.fillRect(0,0,h.width,h.height),r.restore(),r.strokeStyle=CD,r.lineWidth=h.stroke,r.strokeRect(h.xPos,h.yPos,h.width,h.height)})}var Qm=!1;function JQ(o=!0,r=!1){let l=(this.seq===void 0||this?.seq?.paused===!0)&&this.synth.voicesAmount===0&&!r;if(!this.renderBool||l)if(Qm){o&&requestAnimationFrame(this.render.bind(this));return}else Qm=!0;else Qm=!1;if(o&&this.drawingContext.clearRect(0,0,this.canvas.width,this.canvas.height),this.renderAnalysers&&!this.synth.highPerformanceMode&&this.renderWaveforms(),this.renderNotes&&this.noteTimes){let F=this.computeNotePositions(this.synth.highPerformanceMode);this.synth.highPerformanceMode||YQ(F,this.drawingContext,this.sideways)}let h=performance.now()-this.frameTimeStart;this.frameTimeStart=performance.now();let E=1e3/h;this.drawingContext.textBaseline="hanging",this.drawingContext.textAlign="end",this.drawingContext.font=`${ym}px Verdana`,this.drawingContext.fillStyle="white",this.drawingContext.strokeStyle="white",this.drawingContext.fillText(`${this.notesOnScreen} notes`,this.canvas.width,ym+5),this.drawingContext.fillText(Math.round(E).toString()+" FPS",this.canvas.width,5),this.onRender&&this.onRender(),o&&requestAnimationFrame(this.render.bind(this))}function KQ(o=!1){this.notesOnScreen=0;let r=this.sideways?this.canvas.height:this.canvas.width,l=this.sideways?this.canvas.width:this.canvas.height,h=this.keyRange.max-this.keyRange.min,E=r/(h+1),F=E-da*2,I0=this.noteFallingTimeMs/1e3,b0=this.noteAfterTriggerTimeMs/1e3,B0=this.seq.currentHighResolutionTime,P0=B0-b0,B1=I0+b0,x=P0+B1,j0=zQ/B1,K0=[];this.synth.channelProperties.forEach(m2=>{if(this.showVisualPitch){let b1=m2.pitchBend-8192+this.visualPitchBendOffset;K0.push(m2.pitchBendRangeSemitones*(b1/8192*E))}else K0.push(0)});let F1=[];return this.noteTimes.forEach((m2,b1)=>{if(m2.renderStartIndex>=m2.notes.length||!this.renderChannels[b1])return;let _5=m2.renderStartIndex,v2=m2.notes,Y2=v2[_5],J5=-1;for(;Y2.start<=x&&(_5++,!(this.notesOnScreen>ZQ));){let U5=Y2.start+Y2.length;if(U5>P0&&Y2.length>0){let a0=Y2.length/B1*l-da*2;if(this.notesOnScreen<1e3||a0>j0){J5===-1&&(J5=_5-1);let H5=(Y2.start-P0)/B1*l,n6;if(this._notesFall?n6=l-a0-H5+da:n6=H5+da,Y2.midiNotethis.keyRange.max){if(_5>=v2.length)break;Y2=v2[_5];continue}let b6=Y2.midiNote-this.keyRange.min,H6=E*b6+da,c6,w4,L4,J4;if(this.sideways?(c6=n6,w4=H6,J4=F,L4=a0):(w4=n6,c6=H6,L4=F,J4=a0),this.notesOnScreen++,o)this.drawingContext.fillStyle=this.plainColors[b1],this.drawingContext.fillRect(c6+Ia+da,w4+Ia,L4-Ia*2,J4-Ia*2);else{let b4;if(Y2.start>B0||U5=v2.length)break;Y2=v2[_5]}J5>-1&&(m2.renderStartIndex=J5)}),F1.sort((m2,b1)=>b1.height-m2.height),F1}function WQ(){let o=this.canvas.width/4,r=this.canvas.height/4;this.channelAnalysers.forEach((l,h)=>{let E=h%4,F=Math.floor(h/4),I0=!1;for(let x=h;x0){I0=!0;break}if(!I0){let x=this.canvas.width/4,j0=this.canvas.height/4,K0=x*E,F1=j0*F+j0/2;this.drawingContext.lineWidth=this.lineThickness,this.drawingContext.strokeStyle=this.channelColors[h],this.drawingContext.beginPath(),this.drawingContext.moveTo(K0,F1),this.drawingContext.lineTo(K0+x,F1),this.drawingContext.stroke();return}let b0=new Float32Array(l.frequencyBinCount);l.getFloatTimeDomainData(b0);let B0=o*E,P0=r*F+r/2,B1=this.waveMultiplier*r;if(this.drawingContext.lineWidth=this.lineThickness,this.drawingContext.strokeStyle=this.channelColors[h],this.drawingContext.beginPath(),this._stabilizeWaveforms){let x=b0.length/4,j0=o/x,K0=Math.floor(x/2),F1=b0.length-K0;for(let v2=F1;v2>=1;v2--)if(b0[v2-1]<0&&b0[v2]>=0){F1=v2;break}let m2=B0,b1=F1-K0,_5=F1+K0;for(let v2=b1;v2<_5;v2++)this.drawingContext.lineTo(m2,P0+b0[v2]*B1),m2+=j0}else{let x=o/b0.length,j0=B0;for(let K0=0;K0{this.renderChannels[r.channel]=!r.isMuted}),this.updateFftSize()}function ey(){for(let o=0;o{this.updateFftSize()})}function iy(){for(let o of this.channelAnalysers)o.disconnect();X5("%cAnalysers disconnected!",S1.recognized)}function ry(o){this.seq=o,this.seq.addOnTimeChangeEvent(()=>this.resetIndexes(),"renderer-time-change"),this.seq.addOnSongChangeEvent(async r=>{if(this.calculateNoteTimes(await this.seq.getMIDI()),this.resetIndexes(),r.RMIDInfo?.IPIC!==void 0){let l=new Blob([r.RMIDInfo?.IPIC.buffer]),h=URL.createObjectURL(l),E=this.canvas.classList.contains("light_mode")?0:.9;this.canvas.style.background=`linear-gradient(rgba(0, 0, 0, ${E}), rgba(0, 0, 0, ${E})), center center / cover url("${h}")`}else this.canvas.style.background=""},"renderer-song-change")}function ny(){this.noteTimes&&this.noteTimes.forEach(o=>o.renderStartIndex=0)}function wm(o,r){let l=0;for(let h=8*(r-1);h>=0;h-=8)l|=o[o.currentIndex++]<>>0}function CC(o,r){let l=new Array(r).fill(0);for(let h=r-1;h>=0;h--)l[h]=o&255,o>>=8;return l}var sh=.02;function Ay(o){function r(P0){return P0.messageData=new l6(P0.messageData.buffer),P0.messageData.currentIndex=0,6e7/wm(P0.messageData,3)}let l=[],E=o.tracks.flat();E.sort((P0,B1)=>P0.ticks-B1.ticks);for(let P0=0;P0<16;P0++)l.push({renderStartIndex:0,notes:[]});let F=0,I0=60/(120*o.timeDivision),b0=0,B0=0;for(;b0>4,x=P0.messageStatusByte&15;if(B1===8){let j0=l[x].notes.findLast(K0=>K0.midiNote===P0.messageData[0]&&K0.length===-1);if(j0){let K0=F-j0.start;j0.length=K0K0.midiNote===P0.messageData[0]&&K0.length===-1);if(j0){let K0=F-j0.start;j0.length=K0=E.length)break;F+=I0*(E[b0].ticks-P0.ticks)}B0>0&&l.forEach((P0,B1)=>P0.notes.filter(x=>x.length===-1).forEach(x=>{let j0=F-x.start;x.length=j0{let l=this.drawingContext.createLinearGradient(0,0,this.canvas.width/128,0);return l.addColorStop(0,ua(r,h=>h*hB)),l.addColorStop(1,r),l}),this.darkerColors=this.plainColors.map(r=>{let l=this.drawingContext.createLinearGradient(0,0,this.canvas.width/128,0);return l.addColorStop(0,ua(r,h=>h*hB*gB)),l.addColorStop(1,ua(r,h=>h*gB)),l}),this.sidewaysChannelColors=this.plainColors.map(r=>{let l=this.drawingContext.createLinearGradient(0,0,0,this.canvas.width/128);return l.addColorStop(0,ua(r,h=>h*hB)),l.addColorStop(1,r),l}),this.sidewaysDarkerColors=this.plainColors.map(r=>{let l=this.drawingContext.createLinearGradient(0,0,0,this.canvas.width/128);return l.addColorStop(0,ua(r,h=>h*hB*gB)),l.addColorStop(1,ua(r,h=>h*gB)),l})}toggleDarkMode(){this.canvas.classList.toggle("light_mode")}onRender;get normalAnalyserFft(){return this._normalAnalyserFft}set normalAnalyserFft(r){this._normalAnalyserFft=r,this.updateFftSize()}get drumAnalyserFft(){return this._drumAnalyserFft}set drumAnalyserFft(r){this._drumAnalyserFft=r,this.updateFftSize()}get renderBool(){return this._renderBool}set renderBool(r){this._renderBool=r,r===!0?this.connectChannelAnalysers(this.synth):this.disconnectChannelAnalysers()}get keyRange(){return this._keyRange}set keyRange(r){if(r.max===void 0||r.min===void 0)throw new TypeError("No min or max property!");if(r.min>r.max){let l=r.min;r.min=r.max,r.max=l}r.min=Math.max(0,r.min),r.max=Math.min(127,r.max),this._keyRange=r}};vi.prototype.render=JQ;vi.prototype.computeNotePositions=KQ;vi.prototype.createChannelAnalysers=XQ;vi.prototype.updateFftSize=ey;vi.prototype.connectChannelAnalysers=ty;vi.prototype.disconnectChannelAnalysers=iy;vi.prototype.connectSequencer=ry;vi.prototype.calculateNoteTimes=Ay;vi.prototype.resetIndexes=ny;vi.prototype.renderWaveforms=WQ;function n3(o,r){let l=0;for(let h=0;h>>0}function Ea(o,r,l){for(let h=0;h>h*8&255}function m9(o,r){o[o.currentIndex++]=r&255,o[o.currentIndex++]=r>>8}function ot(o,r){Ea(o,r,4)}function oh(o,r){let l=r<<8|o;return l>32767?l-65536:l}function sy(o){return o>127?o-256:o}function Fe(o,r,l=void 0,h=!0){if(l){let E=o.slice(o.currentIndex,o.currentIndex+r);return o.currentIndex+=r,new TextDecoder(l.replace(/[^\x20-\x7E]/g,"")).decode(E.buffer)}else{let E=!1,F="";for(let I0=0;I0127){if(h){E=!0;continue}else if(b0===0){E=!0;continue}}F+=String.fromCharCode(b0)}}return F}}function So(o,r=0){let l=o.length;r>0&&(l=r);let h=new l6(l);return ui(h,o,r),h}function ui(o,r,l=0){l>0&&r.length>l&&(r=r.slice(0,l));for(let h=0;hr.length)for(let h=0;hl.header!=="LIST"?!1:(l.chunkData.currentIndex=0,Fe(l.chunkData,4)===r))}function fB(o){let r=[o&127];for(o>>=7;o>0;)r.unshift(o&127|128),o>>=7;return r}function uB(o){let r=[];for(let E of o.tracks){let F=[],I0=0,b0;for(let B0 of E){let P0=B0.ticks-I0,B1;B0.messageStatusByte<=J3.keySignature||B0.messageStatusByte===J3.sequenceSpecific?B1=[255,B0.messageStatusByte,...fB(B0.messageData.length),...B0.messageData]:B0.messageStatusByte===J3.systemExclusive?B1=[240,...fB(B0.messageData.length),...B0.messageData]:(B1=[],b0!==B0.messageStatusByte&&(b0=B0.messageStatusByte,B1.push(B0.messageStatusByte)),B1.push(...B0.messageData)),F.push(...fB(P0)),F.push(...B1),I0+=P0}r.push(new Uint8Array(F))}function l(E,F){for(let I0=0;I0o.chunkData.currentIndex;)r.push(new km(o.chunkData));return r.length>1&&r.pop(),r}var R7={noController:0,noteOnVelocity:2,noteOnKeyNum:3,polyPressure:10,channelPressure:13,pitchWheel:14,pitchWheelRange:16,link:127},Qn={linear:0,concave:1,convex:2,switch:3},yD=[];for(let o=0;o<4;o++)yD.push([[],[]]);var o7=class o{constructor(r){r.srcEnum?(this.modulatorSource=r.srcEnum,this.modulatorDestination=r.dest,this.modulationSecondarySrc=r.secSrcEnum,this.transformAmount=r.amt,this.transformType=r.transform):(this.modulatorSource=n3(r,2),this.modulatorDestination=n3(r,2),this.transformAmount=oh(r[r.currentIndex++],r[r.currentIndex++]),this.modulationSecondarySrc=n3(r,2),this.transformType=n3(r,2)),this.modulatorDestination>58&&(this.modulatorDestination=R1.INVALID),this.sourcePolarity=this.modulatorSource>>9&1,this.sourceDirection=this.modulatorSource>>8&1,this.sourceUsesCC=this.modulatorSource>>7&1,this.sourceIndex=this.modulatorSource&127,this.sourceCurveType=this.modulatorSource>>10&3,this.secSrcPolarity=this.modulationSecondarySrc>>9&1,this.secSrcDirection=this.modulationSecondarySrc>>8&1,this.secSrcUsesCC=this.modulationSecondarySrc>>7&1,this.secSrcIndex=this.modulationSecondarySrc&127,this.secSrcCurveType=this.modulationSecondarySrc>>10&3}sumTransform(r){return new o({srcEnum:this.modulatorSource,secSrcEnum:this.modulationSecondarySrc,dest:this.modulatorDestination,transform:this.transformType,amt:this.transformAmount+r.transformAmount})}debugString(){function r(E,F){return Object.keys(E).find(I0=>E[I0]===F)}let l=r(Qn,this.sourceCurveType);l+=this.sourcePolarity===0?" unipolar ":" bipolar ",l+=this.sourceDirection===0?"forwards ":"backwards ",this.sourceUsesCC?l+=r(s6,this.sourceIndex):l+=r(R7,this.sourceIndex);let h=r(Qn,this.secSrcCurveType);return h+=this.secSrcPolarity===0?" unipolar ":" bipolar ",h+=this.secSrcCurveType===0?"forwards ":"backwards ",this.secSrcUsesCC?h+=r(s6,this.secSrcIndex):h+=r(R7,this.secSrcIndex),`Modulator: +var oB=(o=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(o,{get:(r,l)=>(typeof require<"u"?require:r)[l]}):o)(function(o){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+o+'" is not supported')});var l6=class extends Uint8Array{constructor(r){super(r),this.currentIndex=0}currentIndex};function DA(o){let r=o.reduce((E,F)=>E+F.length,0),l=new l6(r),h=0;for(let E of o)l.set(E,h),h+=E.length;return l}function ha(o){o=Math.floor(o);let r=Math.floor(o/60),l=Math.round(o-r*60);return{minutes:r,seconds:l,time:`${r.toString().padStart(2,"0")}:${l.toString().padStart(2,"0")}`}}function Cm(o){return o.trim().replaceAll(".mid","").replaceAll(".rmi","").replaceAll("_"," ")}var S1={warn:"color: orange;",unrecognized:"color: red;",info:"color: aqua;",recognized:"color: lime",value:"color: yellow; background-color: black;"};var fi=class{constructor(r,l,h){this.ticks=r,this.messageStatusByte=l,this.messageData=h}};var J3={noteOff:128,noteOn:144,polyPressure:160,controllerChange:176,programChange:192,channelPressure:208,pitchBend:224,systemExclusive:240,timecode:241,songPosition:242,songSelect:243,tuneRequest:246,clock:248,start:250,continue:251,stop:252,activeSensing:254,reset:255,sequenceNumber:0,text:1,copyright:2,trackName:3,instrumentName:4,lyric:5,marker:6,cuePoint:7,midiChannelPrefix:32,midiPort:33,endOfTrack:47,setTempo:81,smpteOffset:84,timeSignature:88,keySignature:89,sequenceSpecific:127};function UQ(o){let r=o&240,l=o&15,h=-1,E=o;return r>=128&&r<=224&&(h=l,E=r),{status:E,channel:h}}var s6={bankSelect:0,modulationWheel:1,breathController:2,footController:4,portamentoTime:5,dataEntryMsb:6,mainVolume:7,balance:8,pan:10,expressionController:11,effectControl1:12,effectControl2:13,generalPurposeController1:16,generalPurposeController2:17,generalPurposeController3:18,generalPurposeController4:19,lsbForControl0BankSelect:32,lsbForControl1ModulationWheel:33,lsbForControl2BreathController:34,lsbForControl4FootController:36,lsbForControl5PortamentoTime:37,lsbForControl6DataEntry:38,lsbForControl7MainVolume:39,lsbForControl8Balance:40,lsbForControl10Pan:42,lsbForControl11ExpressionController:43,lsbForControl12EffectControl1:44,lsbForControl13EffectControl2:45,sustainPedal:64,portamentoOnOff:65,sostenutoPedal:66,softPedal:67,legatoFootswitch:68,hold2Pedal:69,soundVariation:70,timbreHarmonicContent:71,releaseTime:72,attackTime:73,brightness:74,soundController6:75,soundController7:76,soundController8:77,soundController9:78,soundController10:79,generalPurposeController5:80,generalPurposeController6:81,generalPurposeController7:82,generalPurposeController8:83,portamentoControl:84,effects1Depth:91,effects2Depth:92,effects3Depth:93,effects4Depth:94,effects5Depth:95,dataIncrement:96,dataDecrement:97,NRPNLsb:98,NRPNMsb:99,RPNLsb:100,RPNMsb:101,allSoundOff:120,resetAllControllers:121,localControlOnOff:122,allNotesOff:123,omniModeOff:124,omniModeOn:125,monoModeOn:126,polyModeOn:127};var $B=class{constructor(){this.events={noteoff:{},noteon:{},pitchwheel:{},controllerchange:{},programchange:{},channelpressure:{},polypressure:{},drumchange:{},stopall:{},newchannel:{},mutechannel:{},presetlistchange:{},allcontrollerreset:{},soundfonterror:{}}}addEvent(r,l,h){this.events[r][l]=h}removeEvent(r,l){delete this.events[r][l]}callEvent(r,l){this.events[r]&&Object.values(this.events[r]).forEach(h=>h(l))}};var Bm={nodesAmount:4,defaultDelay:.03,delayVariation:.01,stereoDifference:.02,oscillatorFrequency:.3,oscillatorFrequencyVariation:.05,oscillatorGain:.003},aB=class{constructor(r,l=Bm){let h=r.context;this.input=new ChannelSplitterNode(h,{numberOfOutputs:2});let E=new ChannelMergerNode(h,{numberOfInputs:2}),F=[],I0=[],b0=l.oscillatorFrequency,B0=l.defaultDelay;for(let O0=0;O0{let F=await E.arrayBuffer();l.buffer=await o.decodeAudioData(F)})}return l}var Je={noteOff:0,noteOn:1,ccChange:2,programChange:3,channelPressure:4,polyPressure:5,killNote:6,ccReset:7,setChannelVibrato:8,soundFontManager:9,stopAll:10,killNotes:11,muteChannel:12,addNewChannel:13,customcCcChange:14,debugMessage:15,systemExclusive:16,setMasterParameter:17,setDrums:18,pitchWheel:19,transpose:20,highPerformanceMode:21,lockController:22,sequencerSpecific:23,requestSynthesizerSnapshot:24,setLogLevel:25},lB={mainVolume:0,masterPan:1,voicesCap:2},Pi=-1,fa={channelProperties:0,eventCall:1,reportedCurrentTime:2,sequencerSpecific:3,synthesizerSnapshot:4,ready:5,soundfontError:6};var fD=!0,uD=!0,mm=!0;function j5(...o){fD&&console.info(...o)}function fe(...o){uD&&console.warn(...o)}function or(...o){mm&&console.group(...o)}function Xt(...o){mm&&console.groupCollapsed(...o)}function t4(){mm&&console.groupEnd()}var PQ={chorusEnabled:!0,chorusConfig:Bm,reverbEnabled:!0,reverbImpulseResponse:void 0};var dC={reloadSoundFont:0,addNewSoundFont:2,deleteSoundFont:3,rearrangeSoundFonts:4};var cB=class{constructor(r){this.soundfontList=[{id:"main",bankOffset:0}],this._port=r.worklet.port,this.synth=r}_sendToWorklet(r,l){this._port.postMessage({messageType:Je.soundFontManager,messageData:[r,l]})}async addNewSoundFont(r,l,h=0){if(this.soundfontList.find(E=>E.id===l)!==void 0)throw new Error("Cannot overwrite the existing soundfont. Use soundfontManager.delete(id) instead.");this._sendToWorklet(dC.addNewSoundFont,[r,l,h]),await new Promise(E=>this.synth.resolveWhenReady=E),this.soundfontList.push({id:l,bankOffset:h})}deleteSoundFont(r){if(this.soundfontList.length===0){fe("1 soundfont left. Aborting!");return}if(this.soundfontList.findIndex(l=>l.id===r)===-1){fe(`No soundfont with id of "${r}" found. Aborting!`);return}this._sendToWorklet(dC.deleteSoundFont,r)}rearrangeSoundFonts(r){this._sendToWorklet(dC.rearrangeSoundFonts,r),this.soundfontList.sort((l,h)=>r.indexOf(l.id)-r.indexOf(h.id))}async reloadManager(r){this._sendToWorklet(dC.reloadSoundFont,r),await new Promise(l=>this.synth.resolveWhenReady=l)}};var ID="spessasynth-worklet-system",pm=450,ki=9,dD=16;var Ah=class{constructor(r,l,h=!0,E=void 0,F=PQ){j5("%cInitializing SpessaSynth synthesizer...",S1.info),this.context=r.context;let I0=E?.oneOutput===!0;this.eventHandler=new $B,this._voiceCap=pm,this._outputsAmount=dD,this.channelsAmount=this._outputsAmount,this.resolveWhenReady=void 0,this.isReady=new Promise(O0=>this.resolveWhenReady=O0),this.channelProperties=[];for(let O0=0;O0this.handleMessage(O0.data),this.soundfontManager=new cB(this),this._snapshotCallback=void 0,this.sequencerCallbackFunction=void 0,F.reverbEnabled&&!I0&&(this.reverbProcessor=OQ(this.context,F.reverbImpulseResponse),this.reverbProcessor.connect(r),this.worklet.connect(this.reverbProcessor,0)),F.chorusEnabled&&!I0&&(this.chorusProcessor=new aB(r,F.chorusConfig),this.worklet.connect(this.chorusProcessor.input,1)),I0)this.worklet.connect(r,0);else for(let O0=2;O0{this.channelsAmount++})}get voiceCap(){return this._voiceCap}set voiceCap(r){this.post({messageType:Je.setMasterParameter,messageData:[lB.voicesCap,r]}),this._voiceCap=r}set highPerformanceMode(r){this._highPerformanceMode=r}get highPerformanceMode(){return this._highPerformanceMode}setLogLevel(r,l,h,E){this.post({channelNumber:-1,messageType:Je.setLogLevel,messageData:[r,l,h,E]})}handleMessage(r){let l=r.messageData;switch(r.messageType){case fa.channelProperties:this.channelProperties=l,this._voicesAmount=this.channelProperties.reduce((h,E)=>h+E.voicesAmount,0);break;case fa.eventCall:this.eventHandler.callEvent(l.eventName,l.eventData);break;case fa.sequencerSpecific:this.sequencerCallbackFunction&&this.sequencerCallbackFunction(l.messageType,l.messageData);break;case fa.synthesizerSnapshot:this._snapshotCallback&&this._snapshotCallback(l);break;case fa.ready:this.resolveWhenReady();break;case fa.soundfontError:fe(new Error(l)),this.eventHandler.callEvent("soundfonterror",l)}}async getSynthesizerSnapshot(){return new Promise(r=>{this._snapshotCallback=l=>{this._snapshotCallback=void 0,r(l)},this.post({messageType:Je.requestSynthesizerSnapshot,messageData:void 0,channelNumber:Pi})})}addNewChannel(r=!0){this.channelProperties.push({voicesAmount:0,pitchBend:0,pitchBendRangeSemitones:0,isMuted:!1,isDrum:!1}),r&&this.post({channelNumber:0,messageType:Je.addNewChannel,messageData:null})}setVibrato(r,l){this.post({channelNumber:r,messageType:Je.setChannelVibrato,messageData:l})}connectIndividualOutputs(r){if(r.length!==this._outputsAmount)throw new Error(`input nodes amount differs from the system's outputs amount! + Expected ${this._outputsAmount} got ${r.length}`);for(let l=0;l0?this.noteOn(l.channel,r[1],h):this.noteOff(l.channel,r[1]);break;case J3.noteOff:this.noteOff(l.channel,r[1]);break;case J3.pitchBend:this.pitchWheel(l.channel,r[2],r[1]);break;case J3.controllerChange:this.controllerChange(l.channel,r[1],r[2]);break;case J3.programChange:this.programChange(l.channel,r[1]);break;case J3.polyPressure:this.polyPressure(l.channel,r[0],r[1]);break;case J3.channelPressure:this.channelPressure(l.channel,r[1]);break;case J3.systemExclusive:this.systemExclusive(new l6(r.slice(1)));break;case J3.reset:this.stopAll(!0),this.resetControllers();break;default:break}}get currentTime(){return this.context.currentTime}get voicesAmount(){return this._voicesAmount}reverbateEverythingBecauseWhyNot(){for(let r=0;r{this.pressedKeys.delete(h),this.releaseNote(h,this.channel),this.synth.noteOff(this.channel,h)},r=(h,E)=>{let F;if(vo)F=127;else{let b0=this.keys[0].getBoundingClientRect();if(this.keyboard.classList.contains("sideways")){let B0=E.clientX-b0.left,O0=b0.width;F=Math.floor((O0-B0)/O0*127)}else{let B0=E.clientY-b0.top,O0=b0.height;F=Math.floor(B0/O0*127)}}this.synth.noteOn(this.channel,h,F,this.enableDebugging)},l=h=>{let E=h.touches?Array.from(h.touches):[h],F=new Set;E.forEach(I0=>{let b0=document.elementFromPoint(I0.clientX,I0.clientY),B0=parseInt(b0.id.replace("note",""));F.add(B0),!(isNaN(B0)||B0<0||this.pressedKeys.has(B0))&&(this.pressedKeys.add(B0),r(B0,I0))}),this.pressedKeys.forEach(I0=>{F.has(I0)||o(I0)})};vo||(document.addEventListener("mousedown",h=>{this.mouseHeld=!0,l(h)}),document.addEventListener("mouseup",()=>{this.mouseHeld=!1,this.pressedKeys.forEach(h=>{o(h)})}),this.keyboard.onmousemove=h=>{this.mouseHeld&&l(h)},this.keyboard.onmouseleave=()=>{this.pressedKeys.forEach(h=>{o(h)})}),this.keyboard.ontouchstart=l.bind(this),this.keyboard.ontouchend=l.bind(this),this.keyboard.ontouchmove=l.bind(this)}var qQ=20,EC=class{constructor(r,l){this.mouseHeld=!1,this.pressedKeys=new Set,this.mode="light",this.enableDebugging=!1,this.sizeChangeAnimationId=-1,this.modeChangeAnimationId=-1,this._keyRange={min:0,max:127},document.addEventListener("keydown",h=>{h.key==="Shift"&&(this.synth.controllerChange(this.channel,s6.sustainPedal,127),this.keyboard.style.filter="brightness(0.5)")}),document.addEventListener("keyup",h=>{h.key==="Shift"&&(this.synth.controllerChange(this.channel,s6.sustainPedal,0),this.keyboard.style.filter="")}),this.synth=l,this.channel=0,this.channelColors=r,this._createKeyboard(),this.synth.eventHandler.addEvent("noteon","keyboard-note-on",h=>{this.pressNote(h.midiNote,h.channel,h.velocity)}),this.synth.eventHandler.addEvent("noteoff","keyboard-note-off",h=>{this.releaseNote(h.midiNote,h.channel)}),this.synth.eventHandler.addEvent("stopall","keyboard-stop-all",()=>{this.clearNotes()}),this.synth.eventHandler.addEvent("mutechannel","keyboard-mute-channel",h=>{if(h.isMuted)for(let E=0;E<128;E++)this.releaseNote(E,h.channel)})}_createKeyboard(){this.keyboard=document.getElementById("keyboard"),this.keyboard.innerHTML="",this.keys=[],this.keyColors=[];for(let r=this._keyRange.min;r=0&&(F=l(r-1)),r<127&&(I0=l(r+1)),I0&&F?h.classList.add("between_sharps"):F?h.classList.add("left_sharp"):I0&&h.classList.add("right_sharp")}return h}toggleMode(r=!0){if(this.mode==="light"?this.mode="dark":this.mode="light",!r){this.keys.forEach(h=>{h.classList.contains("flat_key")&&h.classList.toggle("flat_dark_key")});return}this.modeChangeAnimationId&&clearTimeout(this.modeChangeAnimationId),this.keyboard.classList.add("mode_transform"),document.body.scrollHeight<=window.innerHeight&&document.body.classList.add("no_scroll"),this.modeChangeAnimationId=setTimeout(()=>{this.keys.forEach(h=>{h.classList.contains("flat_key")&&h.classList.toggle("flat_dark_key")}),this.keyboard.classList.remove("mode_transform"),setTimeout(()=>document.body.classList.remove("no_scroll"),500)},500)}get keyRange(){return this._keyRange}set keyRange(r){if(r.max===void 0||r.min===void 0)throw new TypeError("No min or max property!");if(r.min>r.max){let l=r.min;r.min=r.max,r.max=l}r.min=Math.max(0,r.min),r.max=Math.min(127,r.max),this.setKeyRange(r,!0)}setKeyRange(r,l=!0){Math.abs(r.max-r.min)<24&&(r.min-=12,r.max=r.min+24);let E=900/(r.max-r.min+5),F=document.styleSheets[0].cssRules,I0;for(let b0 of F)if(b0.selectorText==="#keyboard .key"){I0=b0;break}if(I0.style.setProperty("--pressed-transform-skew",`${8e-4/(E/7)}`),l){this.sizeChangeAnimationId&&clearTimeout(this.sizeChangeAnimationId);let b0=getComputedStyle(this.keyboard),B0=parseFloat(b0.getPropertyValue("--current-min-height").replace(/[^\d.]+/g,"")),O0=this.keyboard.getBoundingClientRect().height,B1=E/B0,R=O0*B1-O0,j0=(this._keyRange.min+this._keyRange.max)/2,K0=(r.min+r.max)/2;this._keyRange=r;let F1=this.keys.find(_5=>_5.classList.contains("sharp_key")).getBoundingClientRect().width,m2=(j0-K0)*F1,b1=parseFloat(b0.getPropertyValue("--key-border-radius").replace(/[^\d.]+/g,""));this.keyboard.style.marginTop=`${R}px`,this.keyboard.style.transition="",this.keyboard.style.transform=`scale(${B1}) translateX(${m2}px)`,this.keyboard.style.setProperty("--key-border-radius",`${b1/B1}vmin`),this.sizeChangeAnimationId=setTimeout(()=>{this.keyboard.style.setProperty("--current-min-height",`${E}`),this.keyboard.style.transition="none",this.keyboard.style.transform="",this.keyboard.style.marginTop="",this.keyboard.style.setProperty("--key-border-radius",""),this._createKeyboard(),setTimeout(()=>this.keyboard.style.transition="",75)},500)}else this.keyboard.style.setProperty("--current-min-height",`${E}`),this._keyRange=r,this._createKeyboard()}selectChannel(r){this.channel=r}pressNote(r,l,h){let E=this.keys[r-this._keyRange.min];if(E===void 0)return;E.classList.add("pressed");let F=E.classList.contains("sharp_key"),I0=h/127,b0=this.channelColors[l%16].match(/\d+(\.\d+)?/g).map(parseFloat),B0;if(!F&&this.mode==="light"?B0=`rgba(${b0.slice(0,3).map(B1=>255-(255-B1)*I0).join(", ")}, ${b0[3]})`:B0=`rgba(${b0.slice(0,3).map(B1=>B1*I0).join(", ")}, ${b0[3]})`,E.style.background=B0,this.mode==="dark"){let O0=qQ*I0;E.style.boxShadow=`${B0} 0px 0px ${O0}px ${O0/5}px`}this.keyColors[r-this._keyRange.min].push(this.channelColors[l%16])}releaseNote(r,l){let h=this.keys[r-this._keyRange.min];if(h===void 0)return;l%=this.channelColors.length;let E=this.keyColors[r-this._keyRange.min];if(!E)return;let F=E.findLastIndex(I0=>I0===this.channelColors[l]);F!==-1&&(E.splice(F,1),h.style.background=E[E.length-1],this.mode==="dark"&&(h.style.boxShadow=`0px 0px ${qQ}px ${E[E.length-1]}`),E.length<1&&(h.classList.remove("pressed"),h.style.background="",h.style.boxShadow=""))}clearNotes(){this.keys.forEach((r,l)=>{r.classList.remove("pressed"),r.style.background="",r.style.boxShadow="",this.keyColors[l]=[]})}};EC.prototype._handlePointers=HQ;function ua(o,r){let l=o.replace(/[^\d,]/g,"").split(",");return`rgb(${r(parseInt(l[0]))}, ${r(parseInt(l[1]))}, ${r(parseInt(l[2]))})`}var CD="#000";function YQ(o,r,l){o.forEach(h=>{if(h.pressedProgress===0)return;r.fillStyle=h.color;let E=h.pressedProgress*h.velocity;if(r.globalAlpha=.5*E,l){r.fillRect(h.xPos,h.yPos-h.height*E,h.width,h.height*(E*2+1)),r.globalAlpha=1;return}r.fillRect(h.xPos-h.width*E,h.yPos,h.width*(E*2+1),h.height),r.globalAlpha=1}),o.forEach(h=>{r.fillStyle=h.color,r.save(),r.translate(h.xPos,h.yPos),r.fillRect(0,0,h.width,h.height),r.restore(),r.strokeStyle=CD,r.lineWidth=h.stroke,r.strokeRect(h.xPos,h.yPos,h.width,h.height)})}var Qm=!1;function JQ(o=!0,r=!1){let l=(this.seq===void 0||this?.seq?.paused===!0)&&this.synth.voicesAmount===0&&!r;if(!this.renderBool||l)if(Qm){o&&requestAnimationFrame(this.render.bind(this));return}else Qm=!0;else Qm=!1;if(o&&this.drawingContext.clearRect(0,0,this.canvas.width,this.canvas.height),this.renderAnalysers&&!this.synth.highPerformanceMode&&this.renderWaveforms(),this.renderNotes&&this.noteTimes){let F=this.computeNotePositions(this.synth.highPerformanceMode);this.synth.highPerformanceMode||YQ(F,this.drawingContext,this.sideways)}let h=performance.now()-this.frameTimeStart;this.frameTimeStart=performance.now();let E=1e3/h;this.drawingContext.textBaseline="hanging",this.drawingContext.textAlign="end",this.drawingContext.font=`${ym}px Verdana`,this.drawingContext.fillStyle="white",this.drawingContext.strokeStyle="white",this.drawingContext.fillText(`${this.notesOnScreen} notes`,this.canvas.width,ym+5),this.drawingContext.fillText(Math.round(E).toString()+" FPS",this.canvas.width,5),this.onRender&&this.onRender(),o&&requestAnimationFrame(this.render.bind(this))}function KQ(o=!1){this.notesOnScreen=0;let r=this.sideways?this.canvas.height:this.canvas.width,l=this.sideways?this.canvas.width:this.canvas.height,h=this.keyRange.max-this.keyRange.min,E=r/(h+1),F=E-da*2,I0=this.noteFallingTimeMs/1e3,b0=this.noteAfterTriggerTimeMs/1e3,B0=this.seq.currentHighResolutionTime,O0=B0-b0,B1=I0+b0,R=O0+B1,j0=zQ/B1,K0=[];this.synth.channelProperties.forEach(m2=>{if(this.showVisualPitch){let b1=m2.pitchBend-8192+this.visualPitchBendOffset;K0.push(m2.pitchBendRangeSemitones*(b1/8192*E))}else K0.push(0)});let F1=[];return this.noteTimes.forEach((m2,b1)=>{if(m2.renderStartIndex>=m2.notes.length||!this.renderChannels[b1])return;let _5=m2.renderStartIndex,v2=m2.notes,J2=v2[_5],n3=-1;for(;J2.start<=R&&(_5++,!(this.notesOnScreen>ZQ));){let U5=J2.start+J2.length;if(U5>O0&&J2.length>0){let $0=J2.length/B1*l-da*2;if(this.notesOnScreen<1e3||$0>j0){n3===-1&&(n3=_5-1);let Y5=(J2.start-O0)/B1*l,n6;if(this._notesFall?n6=l-$0-Y5+da:n6=Y5+da,J2.midiNotethis.keyRange.max){if(_5>=v2.length)break;J2=v2[_5];continue}let c6=J2.midiNote-this.keyRange.min,O6=E*c6+da,g6,u4,Ke,_4;if(this.sideways?(g6=n6,u4=O6,_4=F,Ke=$0):(u4=n6,g6=O6,Ke=F,_4=$0),this.notesOnScreen++,o)this.drawingContext.fillStyle=this.plainColors[b1],this.drawingContext.fillRect(g6+Ia+da,u4+Ia,Ke-Ia*2,_4-Ia*2);else{let F9;if(J2.start>B0||U5=v2.length)break;J2=v2[_5]}n3>-1&&(m2.renderStartIndex=n3)}),F1.sort((m2,b1)=>b1.height-m2.height),F1}function WQ(){let o=this.canvas.width/4,r=this.canvas.height/4;this.channelAnalysers.forEach((l,h)=>{let E=h%4,F=Math.floor(h/4),I0=!1;for(let R=h;R0){I0=!0;break}if(!I0){let R=this.canvas.width/4,j0=this.canvas.height/4,K0=R*E,F1=j0*F+j0/2;this.drawingContext.lineWidth=this.lineThickness,this.drawingContext.strokeStyle=this.channelColors[h],this.drawingContext.beginPath(),this.drawingContext.moveTo(K0,F1),this.drawingContext.lineTo(K0+R,F1),this.drawingContext.stroke();return}let b0=new Float32Array(l.frequencyBinCount);l.getFloatTimeDomainData(b0);let B0=o*E,O0=r*F+r/2,B1=this.waveMultiplier*r;if(this.drawingContext.lineWidth=this.lineThickness,this.drawingContext.strokeStyle=this.channelColors[h],this.drawingContext.beginPath(),this._stabilizeWaveforms){let R=b0.length/4,j0=o/R,K0=Math.floor(R/2),F1=b0.length-K0;for(let v2=F1;v2>=1;v2--)if(b0[v2-1]<0&&b0[v2]>=0){F1=v2;break}let m2=B0,b1=F1-K0,_5=F1+K0;for(let v2=b1;v2<_5;v2++)this.drawingContext.lineTo(m2,O0+b0[v2]*B1),m2+=j0}else{let R=o/b0.length,j0=B0;for(let K0=0;K0{this.renderChannels[r.channel]=!r.isMuted}),this.updateFftSize()}function ey(){for(let o=0;o{this.updateFftSize()})}function iy(){for(let o of this.channelAnalysers)o.disconnect();j5("%cAnalysers disconnected!",S1.recognized)}function ry(o){this.seq=o,this.seq.addOnTimeChangeEvent(()=>this.resetIndexes(),"renderer-time-change"),this.seq.addOnSongChangeEvent(async r=>{if(this.calculateNoteTimes(await this.seq.getMIDI()),this.resetIndexes(),r.RMIDInfo?.IPIC!==void 0){let l=new Blob([r.RMIDInfo?.IPIC.buffer]),h=URL.createObjectURL(l),E=this.canvas.classList.contains("light_mode")?0:.9;this.canvas.style.background=`linear-gradient(rgba(0, 0, 0, ${E}), rgba(0, 0, 0, ${E})), center center / cover url("${h}")`}else this.canvas.style.background=""},"renderer-song-change")}function ny(){this.noteTimes&&this.noteTimes.forEach(o=>o.renderStartIndex=0)}function wm(o,r){let l=0;for(let h=8*(r-1);h>=0;h-=8)l|=o[o.currentIndex++]<>>0}function CC(o,r){let l=new Array(r).fill(0);for(let h=r-1;h>=0;h--)l[h]=o&255,o>>=8;return l}var sh=.02;function Ay(o){function r(O0){return O0.messageData=new l6(O0.messageData.buffer),O0.messageData.currentIndex=0,6e7/wm(O0.messageData,3)}let l=[],E=o.tracks.flat();E.sort((O0,B1)=>O0.ticks-B1.ticks);for(let O0=0;O0<16;O0++)l.push({renderStartIndex:0,notes:[]});let F=0,I0=60/(120*o.timeDivision),b0=0,B0=0;for(;b0>4,R=O0.messageStatusByte&15;if(B1===8){let j0=l[R].notes.findLast(K0=>K0.midiNote===O0.messageData[0]&&K0.length===-1);if(j0){let K0=F-j0.start;j0.length=K0K0.midiNote===O0.messageData[0]&&K0.length===-1);if(j0){let K0=F-j0.start;j0.length=K0=E.length)break;F+=I0*(E[b0].ticks-O0.ticks)}B0>0&&l.forEach((O0,B1)=>O0.notes.filter(R=>R.length===-1).forEach(R=>{let j0=F-R.start;R.length=j0{let l=this.drawingContext.createLinearGradient(0,0,this.canvas.width/128,0);return l.addColorStop(0,ua(r,h=>h*hB)),l.addColorStop(1,r),l}),this.darkerColors=this.plainColors.map(r=>{let l=this.drawingContext.createLinearGradient(0,0,this.canvas.width/128,0);return l.addColorStop(0,ua(r,h=>h*hB*gB)),l.addColorStop(1,ua(r,h=>h*gB)),l}),this.sidewaysChannelColors=this.plainColors.map(r=>{let l=this.drawingContext.createLinearGradient(0,0,0,this.canvas.width/128);return l.addColorStop(0,ua(r,h=>h*hB)),l.addColorStop(1,r),l}),this.sidewaysDarkerColors=this.plainColors.map(r=>{let l=this.drawingContext.createLinearGradient(0,0,0,this.canvas.width/128);return l.addColorStop(0,ua(r,h=>h*hB*gB)),l.addColorStop(1,ua(r,h=>h*gB)),l})}toggleDarkMode(){this.canvas.classList.toggle("light_mode")}onRender;get normalAnalyserFft(){return this._normalAnalyserFft}set normalAnalyserFft(r){this._normalAnalyserFft=r,this.updateFftSize()}get drumAnalyserFft(){return this._drumAnalyserFft}set drumAnalyserFft(r){this._drumAnalyserFft=r,this.updateFftSize()}get renderBool(){return this._renderBool}set renderBool(r){this._renderBool=r,r===!0?this.connectChannelAnalysers(this.synth):this.disconnectChannelAnalysers()}get keyRange(){return this._keyRange}set keyRange(r){if(r.max===void 0||r.min===void 0)throw new TypeError("No min or max property!");if(r.min>r.max){let l=r.min;r.min=r.max,r.max=l}r.min=Math.max(0,r.min),r.max=Math.min(127,r.max),this._keyRange=r}};vi.prototype.render=JQ;vi.prototype.computeNotePositions=KQ;vi.prototype.createChannelAnalysers=XQ;vi.prototype.updateFftSize=ey;vi.prototype.connectChannelAnalysers=ty;vi.prototype.disconnectChannelAnalysers=iy;vi.prototype.connectSequencer=ry;vi.prototype.calculateNoteTimes=Ay;vi.prototype.resetIndexes=ny;vi.prototype.renderWaveforms=WQ;function r3(o,r){let l=0;for(let h=0;h>>0}function Ea(o,r,l){for(let h=0;h>h*8&255}function m9(o,r){o[o.currentIndex++]=r&255,o[o.currentIndex++]=r>>8}function ot(o,r){Ea(o,r,4)}function oh(o,r){let l=r<<8|o;return l>32767?l-65536:l}function sy(o){return o>127?o-256:o}function xe(o,r,l=void 0,h=!0){if(l){let E=o.slice(o.currentIndex,o.currentIndex+r);return o.currentIndex+=r,new TextDecoder(l.replace(/[^\x20-\x7E]/g,"")).decode(E.buffer)}else{let E=!1,F="";for(let I0=0;I0127){if(h){E=!0;continue}else if(b0===0){E=!0;continue}}F+=String.fromCharCode(b0)}}return F}}function So(o,r=0){let l=o.length;r>0&&(l=r);let h=new l6(l);return ui(h,o,r),h}function ui(o,r,l=0){l>0&&r.length>l&&(r=r.slice(0,l));for(let h=0;hr.length)for(let h=0;hl.header!=="LIST"?!1:(l.chunkData.currentIndex=0,xe(l.chunkData,4)===r))}function fB(o){let r=[o&127];for(o>>=7;o>0;)r.unshift(o&127|128),o>>=7;return r}function uB(o){let r=[];for(let E of o.tracks){let F=[],I0=0,b0;for(let B0 of E){let O0=B0.ticks-I0,B1;B0.messageStatusByte<=J3.keySignature||B0.messageStatusByte===J3.sequenceSpecific?B1=[255,B0.messageStatusByte,...fB(B0.messageData.length),...B0.messageData]:B0.messageStatusByte===J3.systemExclusive?B1=[240,...fB(B0.messageData.length),...B0.messageData]:(B1=[],b0!==B0.messageStatusByte&&(b0=B0.messageStatusByte,B1.push(B0.messageStatusByte)),B1.push(...B0.messageData)),F.push(...fB(O0)),F.push(...B1),I0+=O0}r.push(new Uint8Array(F))}function l(E,F){for(let I0=0;I0o.chunkData.currentIndex;)r.push(new km(o.chunkData));return r.length>1&&r.pop(),r}var R7={noController:0,noteOnVelocity:2,noteOnKeyNum:3,polyPressure:10,channelPressure:13,pitchWheel:14,pitchWheelRange:16,link:127},Qn={linear:0,concave:1,convex:2,switch:3},yD=[];for(let o=0;o<4;o++)yD.push([[],[]]);var o7=class o{constructor(r){r.srcEnum?(this.modulatorSource=r.srcEnum,this.modulatorDestination=r.dest,this.modulationSecondarySrc=r.secSrcEnum,this.transformAmount=r.amt,this.transformType=r.transform):(this.modulatorSource=r3(r,2),this.modulatorDestination=r3(r,2),this.transformAmount=oh(r[r.currentIndex++],r[r.currentIndex++]),this.modulationSecondarySrc=r3(r,2),this.transformType=r3(r,2)),this.modulatorDestination>58&&(this.modulatorDestination=R1.INVALID),this.sourcePolarity=this.modulatorSource>>9&1,this.sourceDirection=this.modulatorSource>>8&1,this.sourceUsesCC=this.modulatorSource>>7&1,this.sourceIndex=this.modulatorSource&127,this.sourceCurveType=this.modulatorSource>>10&3,this.secSrcPolarity=this.modulationSecondarySrc>>9&1,this.secSrcDirection=this.modulationSecondarySrc>>8&1,this.secSrcUsesCC=this.modulationSecondarySrc>>7&1,this.secSrcIndex=this.modulationSecondarySrc&127,this.secSrcCurveType=this.modulationSecondarySrc>>10&3}sumTransform(r){return new o({srcEnum:this.modulatorSource,secSrcEnum:this.modulationSecondarySrc,dest:this.modulatorDestination,transform:this.transformType,amt:this.transformAmount+r.transformAmount})}debugString(){function r(E,F){return Object.keys(E).find(I0=>E[I0]===F)}let l=r(Qn,this.sourceCurveType);l+=this.sourcePolarity===0?" unipolar ":" bipolar ",l+=this.sourceDirection===0?"forwards ":"backwards ",this.sourceUsesCC?l+=r(s6,this.sourceIndex):l+=r(R7,this.sourceIndex);let h=r(Qn,this.secSrcCurveType);return h+=this.secSrcPolarity===0?" unipolar ":" bipolar ",h+=this.secSrcCurveType===0?"forwards ":"backwards ",this.secSrcUsesCC?h+=r(s6,this.secSrcIndex):h+=r(R7,this.secSrcIndex),`Modulator: Source: ${l} Secondary source: ${h} Destination: ${r(R1,this.modulatorDestination)} @@ -7,7 +7,7 @@ var oB=(o=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(o,{get:(r,l)=>( Transform type: ${this.transformType} -`}};function pn(o,r,l,h,E){return o<<10|r<<9|l<<8|h<<7|E}var Sm=960,Dm=Qn.concave,oy=[new o7({srcEnum:pn(Dm,0,1,0,R7.noteOnVelocity),dest:R1.initialAttenuation,amt:Sm,secSrcEnum:0,transform:0}),new o7({srcEnum:129,dest:R1.vibLfoToPitch,amt:50,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Dm,0,1,1,s6.mainVolume),dest:R1.initialAttenuation,amt:Sm,secSrcEnum:0,transform:0}),new o7({srcEnum:13,dest:R1.vibLfoToPitch,amt:50,secSrcEnum:0,transform:0}),new o7({srcEnum:526,dest:R1.fineTune,amt:12700,secSrcEnum:16,transform:0}),new o7({srcEnum:650,dest:R1.pan,amt:1e3,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Dm,0,1,1,s6.expressionController),dest:R1.initialAttenuation,amt:Sm,secSrcEnum:0,transform:0}),new o7({srcEnum:219,dest:R1.reverbEffectsSend,amt:200,secSrcEnum:0,transform:0}),new o7({srcEnum:221,dest:R1.chorusEffectsSend,amt:200,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Qn.linear,0,0,0,R7.polyPressure),dest:R1.vibLfoToPitch,amt:50,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Qn.linear,0,0,1,s6.effects2Depth),dest:R1.modLfoToVolume,amt:24,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Qn.linear,1,0,1,s6.releaseTime),dest:R1.releaseVolEnv,amt:1200,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Qn.linear,1,0,1,s6.brightness),dest:R1.initialFilterFc,amt:4e3,secSrcEnum:0,transform:0})];function bm(o){let r=[];for(;o.chunkData.length>o.chunkData.currentIndex;)r.push(new o7(o.chunkData));return r}var Ca=128,wD=147,Do=new Int16Array(wD).fill(0);Do[s6.mainVolume]=12800;Do[s6.expressionController]=16256;Do[s6.pan]=8192;Do[s6.releaseTime]=8192;Do[s6.brightness]=8192;Do[s6.effects1Depth]=5120;Do[Ca+R7.pitchWheel]=8192;Do[Ca+R7.pitchWheelRange]=256;var IB={channelTuning:0,channelTransposeFine:1,modulationMultiplier:2,masterTuning:3,channelTuningSemitones:4},kD=Object.keys(IB).length,vD=new Float32Array(kD);vD[IB.modulationMultiplier]=1;function _m(o){return new fi(o,J3.systemExclusive,new l6([65,16,66,18,64,0,127,0,65,247]))}function $y(o,r,l,h){return new fi(h,J3.controllerChange|o%16,new l6([r,l]))}function SD(o,r){let l=16|[1,2,3,4,5,6,7,8,0,9,10,11,12,13,14,15][o%16],h=[65,16,66,18,64,l,21,1],F=128-(64+l+21+1)%128;return new fi(r,J3.systemExclusive,new l6([...h,F,247]))}function DD(o,r=[],l=[],h=[],E=[]){Xt("%cApplying changes to the MIDI file...",S1.info);let F=(j0,K0)=>{o.tracks.forEach((F1,m2)=>{if(o.midiPorts[m2]===K0)for(let b1=F1.length-1;b1>=0;b1--)F1[b1].messageStatusByte>=128&&F1[b1].messageStatusByte<240&&(F1[b1].messageStatusByte&15)===j0&&F1.splice(b1,1)})};h.forEach(j0=>{let K0=j0%16,F1=j0-K0,m2=o.midiPortChannelOffsets.findIndex(b1=>b1===F1);F(K0,m2),X5(`%cRemoving channel %c${j0}%c!`,S1.info,S1.recognized,S1.info)});let I0=!1,b0="gs",B0=[],P0=[];o.tracks.forEach((j0,K0)=>{j0.forEach(F1=>{let m2=F1.messageStatusByte&240;m2===J3.controllerChange?B0.push({track:K0,message:F1,channel:F1.messageStatusByte&15}):m2===J3.programChange?P0.push({track:K0,message:F1,channel:F1.messageStatusByte&15}):F1.messageStatusByte===J3.systemExclusive&&(F1.messageData[0]===67&&F1.messageData[2]===76&&F1.messageData[5]===126&&F1.messageData[6]===0?(X5("%cXG system on detected",S1.info),b0="xg",I0=!0):F1.messageData[0]===67&&F1.messageData[2]===76&&F1.messageData[3]===8&&F1.messageData[5]===3&&P0.push({track:K0,message:F1,channel:F1.messageData[4]}))})});let B1=(j0,K0,F1)=>o.tracks.reduce((m2,b1,_5)=>{if(o.usedChannelsOnTrack[_5].has(j0)&&o.midiPorts[_5]===K0){let v2;F1?v2=b1.findIndex(Y2=>(Y2.messageStatusByte&240)===J3.noteOn):v2=b1.findIndex(Y2=>Y2.messageStatusByte>128&&Y2.messageStatusByte<240&&(Y2.messageStatusByte&15)===j0&&!(Y2.messageStatusByte&J3.controllerChange===240&&(Y2.messageData[0]===s6.resetAllControllers||Y2.messageData[0]===s6.allNotesOff||Y2.messageData[0]===s6.allSoundOff))),v2!==-1&&m2.push({index:v2,track:_5})}return m2},[]),x=(j0,K0,F1)=>{let m2=B0.filter(b1=>b1.channel===j0&&b1.message.messageData[0]===F1&&o.midiPorts[b1.track]===K0);for(let b1=0;b1{let K0=j0.channel,F1=K0%16,m2=K0-F1,b1=o.midiPortChannelOffsets.findIndex(a0=>a0===m2),_5=j0.controllerValue,v2=j0.controllerNumber;x(F1,b1,v2),X5(`%cNo controller %c${v2}%c on channel %c${K0}%c found. Adding it!`,S1.info,S1.unrecognized,S1.info,S1.value,S1.info);let Y2=B1(F1,b1,m2>0);if(Y2.length===0){ue("Program change but no notes... ignoring!");return}let J5=Y2.reduce((a0,H5)=>o.tracks[H5.track][H5.index].ticks{let K0=j0.channel%16,F1=j0.channel-K0,m2=o.midiPortChannelOffsets.findIndex(b6=>b6===F1),b1=j0.isDrum?0:j0.bank,_5=j0.program,v2=P0.filter(b6=>o.midiPorts[b6.track]===m2&&b6.channel===K0);if(x(K0,m2,s6.bankSelect),x(K0,m2,s6.lsbForControl0BankSelect),(j0.isDrum||b1>0)&&!I0&&(o.tracks.forEach(b6=>{for(let H6=0;H60);if(Y2.length===0){ue("Program change but no notes... ignoring!");return}let J5=Y2.reduce((b6,H6)=>o.tracks[H6.track][H6.index].ticks{if(o.midiPorts[v2]!==F1||!o.usedChannelsOnTrack[v2].has(K0))return;let Y2=J3.noteOn|K0,J5=J3.noteOff|K0,U5=J3.polyPressure|K0;_5.forEach(a0=>{a0.messageStatusByte!==Y2&&a0.messageStatusByte!==J5&&a0.messageStatusByte!==U5||(a0.messageData[0]=Math.max(0,Math.min(127,a0.messageData[0]+m2)))})}),b1!==0){let _5=o.tracks.find((c6,w4)=>o.usedChannelsOnTrack[w4].has(j0.channel));if(_5===void 0){ue(`Channel ${j0.channel} unused but transpose requested???`);continue}let v2=J3.noteOn|j0.channel%16,Y2=_5.findIndex(c6=>c6.messageStatusByte===v2);if(Y2===-1){ue(`No notes on channel ${j0.channel} but transpose requested???`);continue}let J5=_5[Y2].ticks,U5=b1*64+64,a0=J3.controllerChange|j0.channel%16,H5=new fi(J5,a0,new l6([s6.RPNMsb,0])),n6=new fi(J5,a0,new l6([s6.RPNLsb,1])),b6=new fi(J5,a0,new l6([s6.dataEntryMsb,U5])),H6=new fi(J5,a0,new l6([s6.lsbForControl6DataEntry,0]));_5.splice(Y2,0,H6),_5.splice(Y2,0,b6),_5.splice(Y2,0,n6),_5.splice(Y2,0,H5)}}e4()}function $h(o,r){let l=[],h=[],E=[],F=[];r.channelSnapshots.forEach((I0,b0)=>{if(I0.isMuted){h.push(b0);return}let B0=I0.channelTransposeKeyShift+I0.customControllers[IB.channelTransposeFine]/100;B0!==0&&l.push({channel:b0,keyShift:B0}),I0.lockPreset&&E.push({channel:b0,program:I0.program,bank:I0.bank,isDrum:I0.drumChannel}),I0.lockedControllers.forEach((P0,B1)=>{if(!P0||B1>127||B1===s6.bankSelect)return;let x=I0.midiControllers[B1]>>7;F.push({channel:b0,controllerNumber:B1,controllerValue:x})})}),DD(o,E,F,h,l)}var x7={name:"INAM",album:"IPRD",artist:"IART",genre:"IGNR",picture:"IPIC",copyright:"ICOP",creationDate:"ICRD",comment:"ICMT",engineer:"IENG",software:"ISFT",encoding:"IENC",midiEncoding:"MENC",bankOffset:"DBNK"},bo="utf-8",bD="Created using SpessaSynth";function ay(o,r,l,h=0,E="Shift_JIS",F={},I0=!0){if(or("%cWriting the RMIDI File...",S1.info),X5(`%cConfiguration: Bank offset: %c${h}%c, encoding: %c${E}`,S1.info,S1.value,S1.info,S1.value),X5("metadata",F),X5("Initial bank offset",r.bankOffset),I0){let _5=function(){let U5=0,a0=1/0;return r.tracks.forEach((H5,n6)=>{m2[n6]>=H5.length||H5[m2[n6]].ticksa0>U5?a0:U5),J5=[];for(let U5=0;U50;){let U5=_5(),a0=r.tracks[U5];if(m2[U5]>=a0.length){b1--;continue}let H5=a0[m2[U5]];m2[U5]++;let n6=r.midiPortChannelOffsets[v2[U5]];if(H5.messageStatusByte===J3.midiPort){v2[U5]=H5.messageData[0];continue}let b6=H5.messageStatusByte&240;if(b6!==J3.controllerChange&&b6!==J3.programChange&&b6!==J3.systemExclusive)continue;if(b6===J3.systemExclusive){if(H5.messageData[0]!==65||H5.messageData[2]!==66||H5.messageData[3]!==18||H5.messageData[4]!==64||!(H5.messageData[5]&16)||H5.messageData[6]!==21){H5.messageData[0]===67&&H5.messageData[2]===76&&H5.messageData[5]===126&&H5.messageData[6]===0?K0="xg":H5.messageData[0]===65&&H5.messageData[2]===66&&H5.messageData[6]===127?K0="gs":H5.messageData[0]===126&&H5.messageData[2]===9&&(K0="gm",F1.push({tNum:U5,e:H5}));continue}let w4=[9,0,1,2,3,4,5,6,7,8,10,11,12,13,14,15][H5.messageData[5]&15]+n6;J5[w4].drums=!!(H5.messageData[7]>0&&H5.messageData[5]>>4);continue}let H6=(H5.messageStatusByte&15)+n6,c6=J5[H6];if(b6===J3.programChange){c6.drums?l.presets.findIndex(J4=>J4.program===H5.messageData[0]&&J4.bank===128)===-1&&(H5.messageData[0]=l.presets.find(J4=>J4.bank===128)?.program||0):l.presets.findIndex(J4=>J4.program===H5.messageData[0]&&J4.bank!==128)===-1&&(H5.messageData[0]=l.presets.find(J4=>J4.bank!==128)?.program||0),c6.program=H5.messageData[0];let w4=Math.max(0,c6.lastBank?.messageData[1]-r.bankOffset),L4=c6.drums?128:w4;if(c6.lastBank===void 0)continue;if(K0==="xg"&&c6.drums&&(J5[H6].lastBank.messageData[1]=127),l.presets.findIndex(J4=>J4.bank===L4&&J4.program===H5.messageData[0])===-1){let J4=l.presets.find(b4=>b4.program===H5.messageData[0])?.bank+h||h;c6.lastBank.messageData[1]=J4,X5(`%cNo preset %c${L4}:${H5.messageData[0]}%c. Changing bank to ${J4}.`,S1.info,S1.recognized,S1.info)}else{let J4=(L4===128?0:w4)+h;c6.lastBank.messageData[1]=J4,X5(`%cPreset %c${L4}:${H5.messageData[0]}%c exists. Changing bank to ${J4}.`,S1.info,S1.recognized,S1.info)}continue}H5.messageData[0]===s6.bankSelect&&(c6.hasBankSelect=!0,K0==="xg"&&(c6.drums=H5.messageData[1]===120||H5.messageData[1]===126||H5.messageData[1]===127),c6.lastBank=H5)}if(J5.forEach((U5,a0)=>{if(U5.hasBankSelect===!0)return;let H5=a0%16,n6=J3.programChange|H5,b6=Math.floor(a0/16)*16,H6=r.midiPortChannelOffsets.indexOf(b6),c6=r.tracks.find((b4,bt)=>r.midiPorts[bt]===H6&&r.usedChannelsOnTrack[bt].has(H5));if(c6===void 0)return;let w4=c6.findIndex(b4=>b4.messageStatusByte===n6);if(w4===-1){let b4=c6.findIndex(To=>To.messageStatusByte>128&&To.messageStatusByte<240&&(To.messageStatusByte&15)===H5);if(b4===-1)return;let bt=c6[b4].ticks,Mo=l.getPreset(0,0).program;c6.splice(b4,0,new fi(bt,J3.programChange|H5,new l6([Mo]))),w4=b4}X5(`%cAdding bank select for %c${a0}`,S1.info,S1.recognized);let L4=c6[w4].ticks,J4=l.getPreset(0,U5.program)?.bank+h||h;c6.splice(w4,0,new fi(L4,J3.controllerChange|H5,new l6([s6.bankSelect,J4])))}),K0!=="gs"&&K0!=="xg"){for(let a0 of F1)r.tracks[a0.tNum].splice(r.tracks[a0.tNum].indexOf(a0.e),1);let U5=0;r.tracks[0][0].messageStatusByte===J3.trackName&&U5++,r.tracks[0].splice(U5,0,_m(0))}}let b0=new l6(uB(r).buffer),B0=[So("INFO")],P0=new TextEncoder;if(B0.push($8(x7.software,P0.encode("SpessaSynth"),!0)),F.name!==void 0?(B0.push($8(x7.name,P0.encode(F.name),!0)),E=bo):B0.push($8(x7.name,r.rawMidiName,!0)),F.creationDate!==void 0)E=bo,B0.push($8(x7.creationDate,P0.encode(F.creationDate),!0));else{let K0=new Date().toLocaleString(void 0,{weekday:"long",year:"numeric",month:"long",day:"numeric",hour:"numeric",minute:"numeric"});B0.push($8(x7.creationDate,So(K0),!0))}if(F.comment!==void 0&&(E=bo,B0.push($8(x7.comment,P0.encode(F.comment)))),F.engineer!==void 0&&B0.push($8(x7.engineer,P0.encode(F.engineer),!0)),F.album!==void 0&&(E=bo,B0.push($8(x7.album,P0.encode(F.album),!0))),F.artist!==void 0&&(E=bo,B0.push($8(x7.artist,P0.encode(F.artist),!0))),F.genre!==void 0&&(E=bo,B0.push($8(x7.genre,P0.encode(F.genre),!0))),F.picture!==void 0&&B0.push($8(x7.picture,new Uint8Array(F.picture))),F.copyright!==void 0)E=bo,B0.push($8(x7.copyright,P0.encode(F.copyright),!0));else{let K0=r.copyright.length>0?r.copyright:bD;B0.push($8(x7.copyright,So(K0)))}let B1=new l6(2);Ea(B1,h,2),B0.push($8(x7.bankOffset,B1)),F.midiEncoding!==void 0&&(B0.push($8(x7.midiEncoding,P0.encode(F.midiEncoding))),E=bo),B0.push($8(x7.encoding,So(E)));let x=DA(B0),j0=DA([So("RMID"),$8("data",b0),$8("LIST",x),o]);return X5("%cFinished!",S1.info),e4(),$8("RIFF",j0)}var Di={loadNewSongList:0,pause:1,stop:2,play:3,setTime:4,changeMIDIMessageSending:5,setPlaybackRate:6,setLoop:7,changeSong:8,getMIDI:9,setSkipToFirstNote:10},_o={midiEvent:0,songChange:1,textEvent:2,timeChange:3,pause:4,getMIDI:5,midiError:6};var ly={duration:99999,firstNoteOn:0,loop:{start:0,end:123456},lastVoiceEventTick:123456,lyrics:[],copyright:"",midiPorts:[],midiPortChannelOffsets:[],tracksAmount:0,tempoChanges:[{ticks:0,tempo:120}],fileName:"NOT_LOADED.mid",midiName:"Loading...",rawMidiName:new Uint8Array([76,111,97,100,105,110,103,46,46,46]),usedChannelsOnTrack:[],timeDivision:0,keyRange:{min:0,max:127},isEmbedded:!1,RMIDInfo:void 0,bankOffset:0};var _D={skipToFirstNoteOn:!0},dB=class{constructor(r,l,h=_D){this.ignoreEvents=!1,this.synth=l,this.highResTimeOffset=0,this.absoluteStartTime=this.synth.currentTime,this._getMIDIResolve=void 0,this._playbackRate=1,this.songIndex=0,this.hasDummyData=!0,this._loop=!0,this.isFinished=!1,this.duration=0,this.synth.sequencerCallbackFunction=this._handleMessage.bind(this),this._skipToFirstNoteOn=h?.skipToFirstNoteOn??!0,this._skipToFirstNoteOn===!1&&this._sendMessage(Di.setSkipToFirstNote,!1),this.loadNewSongList(r),window.addEventListener("beforeunload",this.resetMIDIOut.bind(this))}get skipToFirstNoteOn(){return this._skipToFirstNoteOn}set skipToFirstNoteOn(r){this._skipToFirstNoteOn=r,this._sendMessage(Di.setSkipToFirstNote,this._skipToFirstNoteOn)}resetMIDIOut(){if(this.MIDIout){for(let r=0;r<16;r++)this.MIDIout.send([J3.controllerChange|r,120,0]),this.MIDIout.send([J3.controllerChange|r,123,0]);this.MIDIout.send([J3.reset])}}set loop(r){this._sendMessage(Di.setLoop,r),this._loop=r}get loop(){return this._loop}_sendMessage(r,l=void 0){this.synth.post({channelNumber:-1,messageType:Ke.sequencerSpecific,messageData:{messageType:r,messageData:l}})}onError;_handleMessage(r,l){if(!this.ignoreEvents)switch(r){default:break;case _o.midiEvent:let h=l;if(this.MIDIout&&h[0]>=128){this.MIDIout.send(h);return}break;case _o.songChange:let E=l[0];this.songIndex=l[1],this.midiData=E,this.hasDummyData=!1,this.absoluteStartTime=0,this.duration=this.midiData.duration,Object.entries(this.onSongChange).forEach(b0=>b0[1](E)),this.unpause();break;case _o.textEvent:let F=l;this.onTextEvent&&this.onTextEvent(F[0],F[1]);break;case _o.timeChange:let I0=this.synth.currentTime-l;Object.entries(this.onTimeChange).forEach(b0=>b0[1](I0)),this.unpause(),this._recalculateStartTime(I0);break;case _o.pause:this.pausedTime=this.currentTime,this.isFinished=l,this.isFinished&&Object.entries(this.onSongEnded).forEach(b0=>b0[1]());break;case _o.midiError:if(this.onError)this.onError(l);else throw new Error(l);return;case _o.getMIDI:this._getMIDIResolve&&this._getMIDIResolve(l)}}set playbackRate(r){this._sendMessage(Di.setPlaybackRate,r),this.highResTimeOffset*=r/this._playbackRate,this._playbackRate=r}get playbackRate(){return this._playbackRate}addOnSongChangeEvent(r,l){this.onSongChange[l]=r,r(this.midiData)}addOnSongEndedEvent(r,l){this.onSongEnded[l]=r}addOnTimeChangeEvent(r,l){this.onTimeChange[l]=r}async getMIDI(){return new Promise(r=>{this._getMIDIResolve=r,this._sendMessage(Di.getMIDI,void 0)})}loadNewSongList(r){this.pause(),this.midiData=ly,this.hasDummyData=!0,this.duration=99999,this._sendMessage(Di.loadNewSongList,r),this.songIndex=0,this.songsAmount=r.length,this.songsAmount>1&&(this.loop=!1)}nextSong(){this._sendMessage(Di.changeSong,!0)}previousSong(){this._sendMessage(Di.changeSong,!1)}get currentTime(){return this.pausedTime?this.pausedTime:(this.synth.currentTime-this.absoluteStartTime)*this._playbackRate}_recalculateStartTime(r){this.absoluteStartTime=this.synth.currentTime-r/this._playbackRate,this.highResTimeOffset=(this.synth.currentTime-performance.now()/1e3)*this._playbackRate}get currentHighResolutionTime(){if(this.pausedTime)return this.pausedTime;let r=this.highResTimeOffset,l=this.absoluteStartTime,h=(performance.now()/1e3-l)*this._playbackRate,E=r+h,F=this.currentTime,I0=.01*this._playbackRate,b0=F-E;return this.highResTimeOffset+=b0*I0,E=this.highResTimeOffset+h,E}set currentTime(r){this.unpause(),this._sendMessage(Di.setTime,r)}connectMidiOutput(r){this.resetMIDIOut(),this.MIDIout=r,this._sendMessage(Di.changeMIDIMessageSending,r!==void 0),this.currentTime-=.1}pause(){if(this.paused){ue("Already paused");return}this.pausedTime=this.currentTime,this._sendMessage(Di.pause)}unpause(){this.pausedTime=void 0,this.isFinished=!1}get paused(){return this.pausedTime!==void 0}play(r=!1){this.isFinished&&(r=!0),this._recalculateStartTime(this.pausedTime||0),this.unpause(),this._sendMessage(Di.play,r)}stop(){this._sendMessage(Di.stop)}midiData;onSongChange={};onTextEvent;onTimeChange={};onSongEnded={}};var BC=["Shift_JIS","windows-1250","utf-8","utf-16","utf-16le","utf-16be","latin1","ISO-8859-1","ISO-8859-2","ISO-8859-3","ISO-8859-4","ISO-8859-5","ISO-8859-6","ISO-8859-7","ISO-8859-8","ISO-8859-9","ISO-8859-10","ISO-8859-11","ISO-8859-13","ISO-8859-14","ISO-8859-15","ISO-8859-16","windows-1251","windows-1252","windows-1253","windows-1254","windows-1255","windows-1256","windows-1257","windows-1258","EUC-JP","ISO-2022-JP","EUC-KR","Big5","GB18030"];function cy(o){return` +`}};function pn(o,r,l,h,E){return o<<10|r<<9|l<<8|h<<7|E}var Sm=960,Dm=Qn.concave,oy=[new o7({srcEnum:pn(Dm,0,1,0,R7.noteOnVelocity),dest:R1.initialAttenuation,amt:Sm,secSrcEnum:0,transform:0}),new o7({srcEnum:129,dest:R1.vibLfoToPitch,amt:50,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Dm,0,1,1,s6.mainVolume),dest:R1.initialAttenuation,amt:Sm,secSrcEnum:0,transform:0}),new o7({srcEnum:13,dest:R1.vibLfoToPitch,amt:50,secSrcEnum:0,transform:0}),new o7({srcEnum:526,dest:R1.fineTune,amt:12700,secSrcEnum:16,transform:0}),new o7({srcEnum:650,dest:R1.pan,amt:1e3,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Dm,0,1,1,s6.expressionController),dest:R1.initialAttenuation,amt:Sm,secSrcEnum:0,transform:0}),new o7({srcEnum:219,dest:R1.reverbEffectsSend,amt:200,secSrcEnum:0,transform:0}),new o7({srcEnum:221,dest:R1.chorusEffectsSend,amt:200,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Qn.linear,0,0,0,R7.polyPressure),dest:R1.vibLfoToPitch,amt:50,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Qn.linear,0,0,1,s6.effects2Depth),dest:R1.modLfoToVolume,amt:24,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Qn.linear,1,0,1,s6.releaseTime),dest:R1.releaseVolEnv,amt:1200,secSrcEnum:0,transform:0}),new o7({srcEnum:pn(Qn.linear,1,0,1,s6.brightness),dest:R1.initialFilterFc,amt:4e3,secSrcEnum:0,transform:0})];function bm(o){let r=[];for(;o.chunkData.length>o.chunkData.currentIndex;)r.push(new o7(o.chunkData));return r}var Ca=128,wD=147,Do=new Int16Array(wD).fill(0);Do[s6.mainVolume]=12800;Do[s6.expressionController]=16256;Do[s6.pan]=8192;Do[s6.releaseTime]=8192;Do[s6.brightness]=8192;Do[s6.effects1Depth]=5120;Do[Ca+R7.pitchWheel]=8192;Do[Ca+R7.pitchWheelRange]=256;var IB={channelTuning:0,channelTransposeFine:1,modulationMultiplier:2,masterTuning:3,channelTuningSemitones:4},kD=Object.keys(IB).length,vD=new Float32Array(kD);vD[IB.modulationMultiplier]=1;function _m(o){return new fi(o,J3.systemExclusive,new l6([65,16,66,18,64,0,127,0,65,247]))}function $y(o,r,l,h){return new fi(h,J3.controllerChange|o%16,new l6([r,l]))}function SD(o,r){let l=16|[1,2,3,4,5,6,7,8,0,9,10,11,12,13,14,15][o%16],h=[65,16,66,18,64,l,21,1],F=128-(64+l+21+1)%128;return new fi(r,J3.systemExclusive,new l6([...h,F,247]))}function DD(o,r=[],l=[],h=[],E=[]){Xt("%cApplying changes to the MIDI file...",S1.info);let F=(j0,K0)=>{o.tracks.forEach((F1,m2)=>{if(o.midiPorts[m2]===K0)for(let b1=F1.length-1;b1>=0;b1--)F1[b1].messageStatusByte>=128&&F1[b1].messageStatusByte<240&&(F1[b1].messageStatusByte&15)===j0&&F1.splice(b1,1)})};h.forEach(j0=>{let K0=j0%16,F1=j0-K0,m2=o.midiPortChannelOffsets.findIndex(b1=>b1===F1);F(K0,m2),j5(`%cRemoving channel %c${j0}%c!`,S1.info,S1.recognized,S1.info)});let I0=!1,b0="gs",B0=[],O0=[];o.tracks.forEach((j0,K0)=>{j0.forEach(F1=>{let m2=F1.messageStatusByte&240;m2===J3.controllerChange?B0.push({track:K0,message:F1,channel:F1.messageStatusByte&15}):m2===J3.programChange?O0.push({track:K0,message:F1,channel:F1.messageStatusByte&15}):F1.messageStatusByte===J3.systemExclusive&&(F1.messageData[0]===67&&F1.messageData[2]===76&&F1.messageData[5]===126&&F1.messageData[6]===0?(j5("%cXG system on detected",S1.info),b0="xg",I0=!0):F1.messageData[0]===67&&F1.messageData[2]===76&&F1.messageData[3]===8&&F1.messageData[5]===3&&O0.push({track:K0,message:F1,channel:F1.messageData[4]}))})});let B1=(j0,K0,F1)=>o.tracks.reduce((m2,b1,_5)=>{if(o.usedChannelsOnTrack[_5].has(j0)&&o.midiPorts[_5]===K0){let v2;F1?v2=b1.findIndex(J2=>(J2.messageStatusByte&240)===J3.noteOn):v2=b1.findIndex(J2=>J2.messageStatusByte>128&&J2.messageStatusByte<240&&(J2.messageStatusByte&15)===j0&&!(J2.messageStatusByte&J3.controllerChange===240&&(J2.messageData[0]===s6.resetAllControllers||J2.messageData[0]===s6.allNotesOff||J2.messageData[0]===s6.allSoundOff))),v2!==-1&&m2.push({index:v2,track:_5})}return m2},[]),R=(j0,K0,F1)=>{let m2=B0.filter(b1=>b1.channel===j0&&b1.message.messageData[0]===F1&&o.midiPorts[b1.track]===K0);for(let b1=0;b1{let K0=j0.channel,F1=K0%16,m2=K0-F1,b1=o.midiPortChannelOffsets.findIndex($0=>$0===m2),_5=j0.controllerValue,v2=j0.controllerNumber;R(F1,b1,v2),j5(`%cNo controller %c${v2}%c on channel %c${K0}%c found. Adding it!`,S1.info,S1.unrecognized,S1.info,S1.value,S1.info);let J2=B1(F1,b1,m2>0);if(J2.length===0){fe("Program change but no notes... ignoring!");return}let n3=J2.reduce(($0,Y5)=>o.tracks[Y5.track][Y5.index].ticks{let K0=j0.channel%16,F1=j0.channel-K0,m2=o.midiPortChannelOffsets.findIndex(c6=>c6===F1),b1=j0.isDrum?0:j0.bank,_5=j0.program,v2=O0.filter(c6=>o.midiPorts[c6.track]===m2&&c6.channel===K0);if(R(K0,m2,s6.bankSelect),R(K0,m2,s6.lsbForControl0BankSelect),(j0.isDrum||b1>0)&&!I0&&(o.tracks.forEach(c6=>{for(let O6=0;O60);if(J2.length===0){fe("Program change but no notes... ignoring!");return}let n3=J2.reduce((c6,O6)=>o.tracks[O6.track][O6.index].ticks{if(o.midiPorts[v2]!==F1||!o.usedChannelsOnTrack[v2].has(K0))return;let J2=J3.noteOn|K0,n3=J3.noteOff|K0,U5=J3.polyPressure|K0;_5.forEach($0=>{$0.messageStatusByte!==J2&&$0.messageStatusByte!==n3&&$0.messageStatusByte!==U5||($0.messageData[0]=Math.max(0,Math.min(127,$0.messageData[0]+m2)))})}),b1!==0){let _5=o.tracks.find((g6,u4)=>o.usedChannelsOnTrack[u4].has(j0.channel));if(_5===void 0){fe(`Channel ${j0.channel} unused but transpose requested???`);continue}let v2=J3.noteOn|j0.channel%16,J2=_5.findIndex(g6=>g6.messageStatusByte===v2);if(J2===-1){fe(`No notes on channel ${j0.channel} but transpose requested???`);continue}let n3=_5[J2].ticks,U5=b1*64+64,$0=J3.controllerChange|j0.channel%16,Y5=new fi(n3,$0,new l6([s6.RPNMsb,0])),n6=new fi(n3,$0,new l6([s6.RPNLsb,1])),c6=new fi(n3,$0,new l6([s6.dataEntryMsb,U5])),O6=new fi(n3,$0,new l6([s6.lsbForControl6DataEntry,0]));_5.splice(J2,0,O6),_5.splice(J2,0,c6),_5.splice(J2,0,n6),_5.splice(J2,0,Y5)}}t4()}function $h(o,r){let l=[],h=[],E=[],F=[];r.channelSnapshots.forEach((I0,b0)=>{if(I0.isMuted){h.push(b0);return}let B0=I0.channelTransposeKeyShift+I0.customControllers[IB.channelTransposeFine]/100;B0!==0&&l.push({channel:b0,keyShift:B0}),I0.lockPreset&&E.push({channel:b0,program:I0.program,bank:I0.bank,isDrum:I0.drumChannel}),I0.lockedControllers.forEach((O0,B1)=>{if(!O0||B1>127||B1===s6.bankSelect)return;let R=I0.midiControllers[B1]>>7;F.push({channel:b0,controllerNumber:B1,controllerValue:R})})}),DD(o,E,F,h,l)}var x7={name:"INAM",album:"IPRD",artist:"IART",genre:"IGNR",picture:"IPIC",copyright:"ICOP",creationDate:"ICRD",comment:"ICMT",engineer:"IENG",software:"ISFT",encoding:"IENC",midiEncoding:"MENC",bankOffset:"DBNK"},bo="utf-8",bD="Created using SpessaSynth";function ay(o,r,l,h=0,E="Shift_JIS",F={},I0=!0){if(or("%cWriting the RMIDI File...",S1.info),j5(`%cConfiguration: Bank offset: %c${h}%c, encoding: %c${E}`,S1.info,S1.value,S1.info,S1.value),j5("metadata",F),j5("Initial bank offset",r.bankOffset),I0){let _5=function(){let U5=0,$0=1/0;return r.tracks.forEach((Y5,n6)=>{m2[n6]>=Y5.length||Y5[m2[n6]].ticks<$0&&(U5=n6,$0=Y5[m2[n6]].ticks)}),U5},K0="gm",F1=[],m2=Array(r.tracks.length).fill(0),b1=r.tracks.length,v2=Array(r.tracks.length).fill(0),J2=16+r.midiPortChannelOffsets.reduce((U5,$0)=>$0>U5?$0:U5),n3=[];for(let U5=0;U50;){let U5=_5(),$0=r.tracks[U5];if(m2[U5]>=$0.length){b1--;continue}let Y5=$0[m2[U5]];m2[U5]++;let n6=r.midiPortChannelOffsets[v2[U5]];if(Y5.messageStatusByte===J3.midiPort){v2[U5]=Y5.messageData[0];continue}let c6=Y5.messageStatusByte&240;if(c6!==J3.controllerChange&&c6!==J3.programChange&&c6!==J3.systemExclusive)continue;if(c6===J3.systemExclusive){if(Y5.messageData[0]!==65||Y5.messageData[2]!==66||Y5.messageData[3]!==18||Y5.messageData[4]!==64||!(Y5.messageData[5]&16)||Y5.messageData[6]!==21){Y5.messageData[0]===67&&Y5.messageData[2]===76&&Y5.messageData[5]===126&&Y5.messageData[6]===0?K0="xg":Y5.messageData[0]===65&&Y5.messageData[2]===66&&Y5.messageData[6]===127?K0="gs":Y5.messageData[0]===126&&Y5.messageData[2]===9&&(K0="gm",F1.push({tNum:U5,e:Y5}));continue}let u4=[9,0,1,2,3,4,5,6,7,8,10,11,12,13,14,15][Y5.messageData[5]&15]+n6;n3[u4].drums=!!(Y5.messageData[7]>0&&Y5.messageData[5]>>4);continue}let O6=(Y5.messageStatusByte&15)+n6,g6=n3[O6];if(c6===J3.programChange){g6.drums?l.presets.findIndex(_4=>_4.program===Y5.messageData[0]&&_4.bank===128)===-1&&(Y5.messageData[0]=l.presets.find(_4=>_4.bank===128)?.program||0):l.presets.findIndex(_4=>_4.program===Y5.messageData[0]&&_4.bank!==128)===-1&&(Y5.messageData[0]=l.presets.find(_4=>_4.bank!==128)?.program||0),g6.program=Y5.messageData[0];let u4=Math.max(0,g6.lastBank?.messageData[1]-r.bankOffset),Ke=g6.drums?128:u4;if(g6.lastBank===void 0)continue;if(K0==="xg"&&g6.drums&&(n3[O6].lastBank.messageData[1]=127),l.presets.findIndex(_4=>_4.bank===Ke&&_4.program===Y5.messageData[0])===-1){let _4=l.presets.find(F9=>F9.program===Y5.messageData[0])?.bank+h||h;g6.lastBank.messageData[1]=_4,j5(`%cNo preset %c${Ke}:${Y5.messageData[0]}%c. Changing bank to ${_4}.`,S1.info,S1.recognized,S1.info)}else{let _4=(Ke===128?0:u4)+h;g6.lastBank.messageData[1]=_4,j5(`%cPreset %c${Ke}:${Y5.messageData[0]}%c exists. Changing bank to ${_4}.`,S1.info,S1.recognized,S1.info)}continue}Y5.messageData[0]===s6.bankSelect&&(g6.hasBankSelect=!0,K0==="xg"&&(g6.drums=Y5.messageData[1]===120||Y5.messageData[1]===126||Y5.messageData[1]===127),g6.lastBank=Y5)}if(n3.forEach((U5,$0)=>{if(U5.hasBankSelect===!0)return;let Y5=$0%16,n6=J3.programChange|Y5,c6=Math.floor($0/16)*16,O6=r.midiPortChannelOffsets.indexOf(c6),g6=r.tracks.find((F9,bt)=>r.midiPorts[bt]===O6&&r.usedChannelsOnTrack[bt].has(Y5));if(g6===void 0)return;let u4=g6.findIndex(F9=>F9.messageStatusByte===n6);if(u4===-1){let F9=g6.findIndex(To=>To.messageStatusByte>128&&To.messageStatusByte<240&&(To.messageStatusByte&15)===Y5);if(F9===-1)return;let bt=g6[F9].ticks,Mo=l.getPreset(0,0).program;g6.splice(F9,0,new fi(bt,J3.programChange|Y5,new l6([Mo]))),u4=F9}j5(`%cAdding bank select for %c${$0}`,S1.info,S1.recognized);let Ke=g6[u4].ticks,_4=l.getPreset(0,U5.program)?.bank+h||h;g6.splice(u4,0,new fi(Ke,J3.controllerChange|Y5,new l6([s6.bankSelect,_4])))}),K0!=="gs"&&K0!=="xg"){for(let $0 of F1)r.tracks[$0.tNum].splice(r.tracks[$0.tNum].indexOf($0.e),1);let U5=0;r.tracks[0][0].messageStatusByte===J3.trackName&&U5++,r.tracks[0].splice(U5,0,_m(0))}}let b0=new l6(uB(r).buffer),B0=[So("INFO")],O0=new TextEncoder;if(B0.push($8(x7.software,O0.encode("SpessaSynth"),!0)),F.name!==void 0?(B0.push($8(x7.name,O0.encode(F.name),!0)),E=bo):B0.push($8(x7.name,r.rawMidiName,!0)),F.creationDate!==void 0)E=bo,B0.push($8(x7.creationDate,O0.encode(F.creationDate),!0));else{let K0=new Date().toLocaleString(void 0,{weekday:"long",year:"numeric",month:"long",day:"numeric",hour:"numeric",minute:"numeric"});B0.push($8(x7.creationDate,So(K0),!0))}if(F.comment!==void 0&&(E=bo,B0.push($8(x7.comment,O0.encode(F.comment)))),F.engineer!==void 0&&B0.push($8(x7.engineer,O0.encode(F.engineer),!0)),F.album!==void 0&&(E=bo,B0.push($8(x7.album,O0.encode(F.album),!0))),F.artist!==void 0&&(E=bo,B0.push($8(x7.artist,O0.encode(F.artist),!0))),F.genre!==void 0&&(E=bo,B0.push($8(x7.genre,O0.encode(F.genre),!0))),F.picture!==void 0&&B0.push($8(x7.picture,new Uint8Array(F.picture))),F.copyright!==void 0)E=bo,B0.push($8(x7.copyright,O0.encode(F.copyright),!0));else{let K0=r.copyright.length>0?r.copyright:bD;B0.push($8(x7.copyright,So(K0)))}let B1=new l6(2);Ea(B1,h,2),B0.push($8(x7.bankOffset,B1)),F.midiEncoding!==void 0&&(B0.push($8(x7.midiEncoding,O0.encode(F.midiEncoding))),E=bo),B0.push($8(x7.encoding,So(E)));let R=DA(B0),j0=DA([So("RMID"),$8("data",b0),$8("LIST",R),o]);return j5("%cFinished!",S1.info),t4(),$8("RIFF",j0)}var Di={loadNewSongList:0,pause:1,stop:2,play:3,setTime:4,changeMIDIMessageSending:5,setPlaybackRate:6,setLoop:7,changeSong:8,getMIDI:9,setSkipToFirstNote:10},_o={midiEvent:0,songChange:1,textEvent:2,timeChange:3,pause:4,getMIDI:5,midiError:6};var ly={duration:99999,firstNoteOn:0,loop:{start:0,end:123456},lastVoiceEventTick:123456,lyrics:[],copyright:"",midiPorts:[],midiPortChannelOffsets:[],tracksAmount:0,tempoChanges:[{ticks:0,tempo:120}],fileName:"NOT_LOADED.mid",midiName:"Loading...",rawMidiName:new Uint8Array([76,111,97,100,105,110,103,46,46,46]),usedChannelsOnTrack:[],timeDivision:0,keyRange:{min:0,max:127},isEmbedded:!1,RMIDInfo:void 0,bankOffset:0};var _D={skipToFirstNoteOn:!0},dB=class{constructor(r,l,h=_D){this.ignoreEvents=!1,this.synth=l,this.highResTimeOffset=0,this.absoluteStartTime=this.synth.currentTime,this._getMIDIResolve=void 0,this._playbackRate=1,this.songIndex=0,this.hasDummyData=!0,this._loop=!0,this.isFinished=!1,this.duration=0,this.synth.sequencerCallbackFunction=this._handleMessage.bind(this),this._skipToFirstNoteOn=h?.skipToFirstNoteOn??!0,this._skipToFirstNoteOn===!1&&this._sendMessage(Di.setSkipToFirstNote,!1),this.loadNewSongList(r),window.addEventListener("beforeunload",this.resetMIDIOut.bind(this))}get skipToFirstNoteOn(){return this._skipToFirstNoteOn}set skipToFirstNoteOn(r){this._skipToFirstNoteOn=r,this._sendMessage(Di.setSkipToFirstNote,this._skipToFirstNoteOn)}resetMIDIOut(){if(this.MIDIout){for(let r=0;r<16;r++)this.MIDIout.send([J3.controllerChange|r,120,0]),this.MIDIout.send([J3.controllerChange|r,123,0]);this.MIDIout.send([J3.reset])}}set loop(r){this._sendMessage(Di.setLoop,r),this._loop=r}get loop(){return this._loop}_sendMessage(r,l=void 0){this.synth.post({channelNumber:-1,messageType:Je.sequencerSpecific,messageData:{messageType:r,messageData:l}})}onError;_handleMessage(r,l){if(!this.ignoreEvents)switch(r){default:break;case _o.midiEvent:let h=l;if(this.MIDIout&&h[0]>=128){this.MIDIout.send(h);return}break;case _o.songChange:let E=l[0];this.songIndex=l[1],this.midiData=E,this.hasDummyData=!1,this.absoluteStartTime=0,this.duration=this.midiData.duration,Object.entries(this.onSongChange).forEach(b0=>b0[1](E)),this.unpause();break;case _o.textEvent:let F=l;this.onTextEvent&&this.onTextEvent(F[0],F[1]);break;case _o.timeChange:let I0=this.synth.currentTime-l;Object.entries(this.onTimeChange).forEach(b0=>b0[1](I0)),this.unpause(),this._recalculateStartTime(I0);break;case _o.pause:this.pausedTime=this.currentTime,this.isFinished=l,this.isFinished&&Object.entries(this.onSongEnded).forEach(b0=>b0[1]());break;case _o.midiError:if(this.onError)this.onError(l);else throw new Error(l);return;case _o.getMIDI:this._getMIDIResolve&&this._getMIDIResolve(l)}}set playbackRate(r){this._sendMessage(Di.setPlaybackRate,r),this.highResTimeOffset*=r/this._playbackRate,this._playbackRate=r}get playbackRate(){return this._playbackRate}addOnSongChangeEvent(r,l){this.onSongChange[l]=r,r(this.midiData)}addOnSongEndedEvent(r,l){this.onSongEnded[l]=r}addOnTimeChangeEvent(r,l){this.onTimeChange[l]=r}async getMIDI(){return new Promise(r=>{this._getMIDIResolve=r,this._sendMessage(Di.getMIDI,void 0)})}loadNewSongList(r){this.pause(),this.midiData=ly,this.hasDummyData=!0,this.duration=99999,this._sendMessage(Di.loadNewSongList,r),this.songIndex=0,this.songsAmount=r.length,this.songsAmount>1&&(this.loop=!1)}nextSong(){this._sendMessage(Di.changeSong,!0)}previousSong(){this._sendMessage(Di.changeSong,!1)}get currentTime(){return this.pausedTime?this.pausedTime:(this.synth.currentTime-this.absoluteStartTime)*this._playbackRate}_recalculateStartTime(r){this.absoluteStartTime=this.synth.currentTime-r/this._playbackRate,this.highResTimeOffset=(this.synth.currentTime-performance.now()/1e3)*this._playbackRate}get currentHighResolutionTime(){if(this.pausedTime)return this.pausedTime;let r=this.highResTimeOffset,l=this.absoluteStartTime,h=(performance.now()/1e3-l)*this._playbackRate,E=r+h,F=this.currentTime,I0=.01*this._playbackRate,b0=F-E;return this.highResTimeOffset+=b0*I0,E=this.highResTimeOffset+h,E}set currentTime(r){this.unpause(),this._sendMessage(Di.setTime,r)}connectMidiOutput(r){this.resetMIDIOut(),this.MIDIout=r,this._sendMessage(Di.changeMIDIMessageSending,r!==void 0),this.currentTime-=.1}pause(){if(this.paused){fe("Already paused");return}this.pausedTime=this.currentTime,this._sendMessage(Di.pause)}unpause(){this.pausedTime=void 0,this.isFinished=!1}get paused(){return this.pausedTime!==void 0}play(r=!1){this.isFinished&&(r=!0),this._recalculateStartTime(this.pausedTime||0),this.unpause(),this._sendMessage(Di.play,r)}stop(){this._sendMessage(Di.stop)}midiData;onSongChange={};onTextEvent;onTimeChange={};onSongEnded={}};var BC=["Shift_JIS","windows-1250","utf-8","utf-16","utf-16le","utf-16be","latin1","ISO-8859-1","ISO-8859-2","ISO-8859-3","ISO-8859-4","ISO-8859-5","ISO-8859-6","ISO-8859-7","ISO-8859-8","ISO-8859-9","ISO-8859-10","ISO-8859-11","ISO-8859-13","ISO-8859-14","ISO-8859-15","ISO-8859-16","windows-1251","windows-1252","windows-1253","windows-1254","windows-1255","windows-1256","windows-1257","windows-1258","EUC-JP","ISO-2022-JP","EUC-KR","Big5","GB18030"];function cy(o){return` `}function Ba(o){return` @@ -66,7 +66,7 @@ var oB=(o=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(o,{get:(r,l)=>( `}function my(o){return` -`}function ah(o,r){let l=document.createElement("div");return l.classList.add("control_buttons"),l.title=o,l.innerHTML=r,l}var W7={synthesizerUIShow:"s",settingsShow:"r",blackMidiMode:"b",midiPanic:"backspace",playPause:" ",toggleLoop:"l",toggleLyrics:"t",seekBackwards:"arrowleft",seekForwards:"arrowright",previousSong:"[",nextSong:"]",cinematicMode:"c",videoMode:"v"};function py(){navigator.mediaSession&&(navigator.mediaSession.metadata=new MediaMetadata({title:this.currentSongTitle,artist:"SpessaSynth"}),navigator.mediaSession.setActionHandler("play",()=>{this.seqPlay()}),navigator.mediaSession.setActionHandler("pause",()=>{this.seqPause()}),navigator.mediaSession.setActionHandler("stop",()=>{this.seq.currentTime=0,this.seqPause()}),navigator.mediaSession.setActionHandler("seekbackward",o=>{this.seq.currentTime-=o.seekOffset||10}),navigator.mediaSession.setActionHandler("seekforward",o=>{this.seq.currentTime+=o.seekOffset||10}),navigator.mediaSession.setActionHandler("seekto",o=>{this.seq.currentTime=o.seekTime}),navigator.mediaSession.setActionHandler("previoustrack",()=>{this.switchToPreviousSong()}),navigator.mediaSession.setActionHandler("nexttrack",()=>{this.switchToNextSong()}),navigator.mediaSession.playbackState="playing")}function Qy(o=!0){if(this.seq?.hasDummyData===!0)this.currentSongTitle=this.locale.getLocaleString("locale.synthInit.genericLoading");else{let r=this.infoDecoder.decode(this.seq.midiData.rawMidiName.buffer).replace(/\0$/,"");this.currentSongTitle=Cm(r)}if(this.seq.midiData){let r=this.seq.midiData.lyrics;this.currentLyrics=new Uint8Array(r.reduce((h,E)=>h+E.length,0));let l=0;for(let h of r)this.currentLyrics.set(h,l),l+=h.length;this.currentLyricsString=this.decodeTextFix(this.currentLyrics.buffer)||this.locale.getLocaleString("locale.sequencerController.lyrics.noLyrics"),this.setLyricsText(""),o&&(this.rawOtherTextEvents=[])}if(document.getElementById("title").innerText=this.currentSongTitle,document.title=this.currentSongTitle+" - SpessaSynth",this.musicModeUI.setTitle(this.currentSongTitle),!!navigator.mediaSession)try{navigator.mediaSession.setPositionState({duration:this.seq.duration,playbackRate:this.seq.playbackRate,position:this.seq.currentTime})}catch{}}var RD=parseFloat(getComputedStyle(document.body).fontSize);function yy(){this.lyricsElement={};let o=document.createElement("div");o.classList.add("lyrics");let r=document.createElement("div");r.classList.add("lyrics_title_wrapper"),o.append(r),this.lyricsElement.titleWrapper=r;let l=document.createElement("h2");this.locale.bindObjectProperty(l,"textContent","locale.sequencerController.lyrics.title"),l.classList.add("lyrics_title"),r.appendChild(l),this.lyricsElement.title=l;let h=document.createElement("select");BC.forEach(B1=>{let x=document.createElement("option");x.innerText=B1,x.value=B1,h.appendChild(x)}),h.value=this.encoding,h.onchange=()=>this.changeEncoding(h.value),h.classList.add("lyrics_selector"),this.encodingSelector=h,r.appendChild(h);let E=document.createElement("p");E.classList.add("lyrics_text"),o.appendChild(E);let F=document.createElement("span");F.classList.add("lyrics_text_highlight"),E.appendChild(F);let I0=document.createElement("span");I0.classList.add("lyrics_text_gray"),E.appendChild(I0);let b0=document.createElement("details"),B0=document.createElement("summary");this.locale.bindObjectProperty(B0,"textContent","locale.sequencerController.lyrics.otherText.title"),b0.appendChild(B0);let P0=document.createElement("div");P0.innerText="",b0.appendChild(P0),o.appendChild(b0),this.lyricsElement.text={highlight:F,gray:I0,main:E,other:P0},this.lyricsElement.mainDiv=o,this.lyricsElement.selector=h,this.controls.appendChild(o),this.requiresTextUpdate=!0}function wy(o){let r=this.lyricsElement.text.highlight,l=this.lyricsElement.text.gray;l.innerText=this.currentLyricsString.replace(o,""),r.innerText=o,this.lyricsElement.text.main.scrollTo(0,r.offsetHeight-RD*5)}function ky(){let o="";for(let r of this.rawOtherTextEvents)o+=`
${Object.keys(J3).find(l=>J3[l]===r.type).replace(/([a-z])([A-Z])/g,"$1 $2")}:
${this.decodeTextFix(r.data.buffer)}

`;this.lyricsElement.text.other.innerHTML=o}var xr=32,vy="#ccc",Sy="#555",xD="#333",FD="#ddd",LD="Shift_JIS",bA=class{constructor(r,l,h){this.iconColor=vy,this.iconDisabledColor=Sy,this.controls=r,this.encoding=LD,this.decoder=new TextDecoder(this.encoding),this.infoDecoder=new TextDecoder(this.encoding),this.hasInfoDecoding=!1,this.text="",this.requiresTextUpdate=!1,this.rawLyrics=[],this.rawOtherTextEvents=[],this.mode="dark",this.locale=l,this.currentSongTitle="",this.currentLyrics=new Uint8Array(0),this.currentLyricsString="",this.musicModeUI=h}toggleDarkMode(){if(this.mode==="dark"?(this.mode="light",this.iconColor=xD,this.iconDisabledColor=FD):(this.mode="dark",this.iconColor=vy,this.iconDisabledColor=Sy),!this.seq){this.requiresThemeUpdate=!0;return}this.progressBar.classList.toggle("note_progress_light"),this.progressBarBackground.classList.toggle("note_progress_background_light"),this.lyricsElement.mainDiv.classList.toggle("lyrics_light"),this.lyricsElement.titleWrapper.classList.toggle("lyrics_light"),this.lyricsElement.selector.classList.toggle("lyrics_light")}seqPlay(r=!0){r&&this.seq.play(),this.playPause.innerHTML=Ba(xr),this.createNavigatorHandler(),this.updateTitleAndMediaStatus(),navigator.mediaSession&&(navigator.mediaSession.playbackState="playing")}seqPause(r=!0){r&&this.seq.pause(),this.playPause.innerHTML=cy(xr),this.createNavigatorHandler(),this.updateTitleAndMediaStatus(),navigator.mediaSession&&(navigator.mediaSession.playbackState="paused")}switchToNextSong(){this.seq.nextSong(),this.createNavigatorHandler(),this.updateTitleAndMediaStatus()}switchToPreviousSong(){this.seq.previousSong(),this.createNavigatorHandler(),this.updateTitleAndMediaStatus()}decodeTextFix(r,l=!1){let h=0;for(;;)try{return this.decoder.decode(r)}catch{h++,this.changeEncoding(BC[h]),this.encodingSelector.value=BC[h]}}connectSequencer(r){this.seq=r,this.createControls(),this.setSliderInterval(),this.createNavigatorHandler(),this.updateTitleAndMediaStatus(),this.seq.onTextEvent=(l,h)=>{let E=this.decodeTextFix(l.buffer);switch(h){default:return;case J3.text:case J3.copyright:case J3.cuePoint:case J3.trackName:case J3.instrumentName:case J3.marker:this.rawOtherTextEvents.push({type:h,data:l}),this.requiresTextUpdate=!0;return;case J3.lyric:this.text+=E,this.rawLyrics.push(...l),this.setLyricsText(this.text);break}},this.seq.addOnTimeChangeEvent(()=>{this.text="",this.rawLyrics=[],this.seqPlay(!1)},"sequi-time-change"),this.seq.addOnSongChangeEvent(l=>{if(this.createNavigatorHandler(),this.updateTitleAndMediaStatus(),this.seqPlay(!1),this.seq.songsAmount>1&&(this.seq.loop=!1,this.loopButton.firstElementChild.setAttribute("fill",this.iconDisabledColor)),this.hasInfoDecoding=this.seq.midiData.RMIDInfo?.[x7.encoding]!==void 0,l.isEmbedded){let h=(b0,B0,P0,B1="")=>this.seq.midiData.RMIDInfo?.[b0]===void 0?B0:B1+P0.decode(this.seq.midiData.RMIDInfo?.[b0]).replace(/\0$/,""),E=new TextDecoder,F=h(x7.midiEncoding,this.encoding,E),I0=h(x7.encoding,"utf-8",E);this.infoDecoder=new TextDecoder(I0),this.changeEncoding(F)}},"sequi-song-change"),this.requiresThemeUpdate&&this.mode==="light"&&(this.mode="dark",this.toggleDarkMode())}changeEncoding(r){this.encoding=r,this.decoder=new TextDecoder(r),this.hasInfoDecoding||(this.infoDecoder=new TextDecoder(r)),this.updateOtherTextEvents(),this.text=this.decodeTextFix(new Uint8Array(this.rawLyrics).buffer),this.lyricsElement.selector.value=r,this.updateTitleAndMediaStatus(!1),this.setLyricsText(this.text)}createControls(){this.progressTime=document.createElement("p"),this.progressTime.id="note_time",this.progressTime.onclick=x=>{x.preventDefault();let j0=r.getBoundingClientRect(),K0=x.clientX-j0.left,F1=j0.width;this.seq.currentTime=K0/F1*this.seq.duration,h.innerHTML=Ba(xr)},this.createLyrics();let r=document.createElement("div");r.id="note_progress_background",this.progressBarBackground=r,this.progressBar=document.createElement("div"),this.progressBar.id="note_progress",this.progressBar.min="0",this.progressBar.max=this.seq.duration.toString();let l=document.createElement("div"),h=ah("Play/Pause",Ba(xr));this.playPause=h,this.locale.bindObjectProperty(h,"title","locale.sequencerController.playPause");let E=()=>{this.seq.paused?this.seqPlay():this.seqPause()};h.onclick=E;let F=ah("Previous song",uy(xr));this.locale.bindObjectProperty(F,"title","locale.sequencerController.previousSong"),F.onclick=()=>this.switchToPreviousSong();let I0=ah("Next song",fy(xr));this.locale.bindObjectProperty(I0,"title","locale.sequencerController.nextSong"),I0.onclick=()=>this.switchToNextSong();let b0=ah("Loop this",gy(xr));this.locale.bindObjectProperty(b0,"title","locale.sequencerController.loopThis");let B0=()=>{this.seq.loop?this.seq.loop=!1:(this.seq.loop=!0,this.seq.currentTime>=this.seq.duration&&(this.seq.currentTime=0)),b0.firstElementChild.setAttribute("fill",this.seq.loop?this.iconColor:this.iconDisabledColor)};b0.onclick=B0,this.loopButton=b0;let P0=ah("Show lyrics",hy(xr));this.locale.bindObjectProperty(P0,"title","locale.sequencerController.lyrics.show"),P0.firstElementChild.setAttribute("fill",this.iconDisabledColor);let B1=()=>{this.lyricsElement.mainDiv.classList.toggle("lyrics_show"),P0.firstElementChild.setAttribute("fill",this.lyricsElement.mainDiv.classList.contains("lyrics_show")?this.iconColor:this.iconDisabledColor)};P0.onclick=B1,document.addEventListener("keydown",x=>{switch(x.key.toLowerCase()){case W7.playPause:x.preventDefault(),E();break;case W7.toggleLoop:x.preventDefault(),B0();break;case W7.toggleLyrics:x.preventDefault(),B1();break;default:break}}),l.appendChild(F),l.appendChild(b0),l.appendChild(h),l.appendChild(P0),l.appendChild(I0),this.controls.appendChild(r),r.appendChild(this.progressBar),this.controls.appendChild(this.progressTime),this.controls.appendChild(l),document.addEventListener("keydown",x=>{switch(x.key.toLowerCase()){case W7.seekBackwards:x.preventDefault(),this.seq.currentTime-=5,h.innerHTML=Ba(xr);break;case W7.seekForwards:x.preventDefault(),this.seq.currentTime+=5,h.innerHTML=Ba(xr);break;case W7.previousSong:this.switchToPreviousSong();break;case W7.nextSong:this.switchToNextSong();break;default:if(!isNaN(parseFloat(x.key))){x.preventDefault();let j0=parseInt(x.key);0<=j0&&j0<=9&&(this.seq.currentTime=this.seq.duration*(j0/10),h.innerHTML=Ba(xr))}break}})}_updateInterval(){this.progressBar.style.width=`${this.seq.currentTime/this.seq.duration*100}%`;let r=ha(this.seq.currentTime),l=ha(this.seq.duration);this.progressTime.innerText=`${r.time} / ${l.time}`,this.requiresTextUpdate&&(this.updateOtherTextEvents(),this.requiresTextUpdate=!1)}setSliderInterval(){setInterval(this._updateInterval.bind(this),100)}};bA.prototype.createNavigatorHandler=py;bA.prototype.updateTitleAndMediaStatus=Qy;bA.prototype.createLyrics=yy;bA.prototype.setLyricsText=wy;bA.prototype.updateOtherTextEvents=ky;function Dy(){this.controllers.forEach(o=>{o.voiceMeter.hide(),o.pitchWheel.hide(),o.pan.hide(),o.expression.hide(),o.volume.hide(),o.mod.hide(),o.chorus.hide(),o.preset.hide()})}function by(){this.controllers.forEach(o=>{o.voiceMeter.show(),o.pitchWheel.show(),o.pan.show(),o.expression.show(),o.volume.show(),o.mod.show(),o.chorus.show(),o.preset.show()})}function _y(){this.mainControllerDiv.classList.toggle("synthui_controller_light"),this.mainButtons.forEach(o=>{o.classList.toggle("synthui_button"),o.classList.toggle("synthui_button_light")}),this.mainMeters.forEach(o=>{o.toggleMode(!0)}),this.controllers.forEach(o=>{o.voiceMeter.toggleMode(),o.pitchWheel.toggleMode(),o.pan.toggleMode(),o.expression.toggleMode(),o.volume.toggleMode(),o.mod.toggleMode(),o.chorus.toggleMode(),o.preset.toggleMode(),o.presetReset.classList.toggle("voice_reset_light"),o.drumsToggle.classList.toggle("mute_button_light"),o.muteButton.classList.toggle("mute_button_light")})}var $r=class{constructor(r="none",l,h,E,F=0,I0=100,b0=!1,B0=void 0,P0=void 0,B1=void 0){if(this.meterText="",h.bindObjectProperty(this,"meterText",l+".title"),this.min=F,this.max=I0,this.currentValue=-1,this.isShown=!0,this.isVisualValueSet=!0,this.isLocked=!1,this.lockCallback=P0,this.unlockCallback=B1,this.div=document.createElement("div"),this.div.classList.add("voice_meter"),this.div.classList.add("controller_element"),r!=="none"&&r!==""&&(this.div.style.borderColor=r),h.bindObjectProperty(this.div,"title",l+".description",E),this.bar=document.createElement("div"),this.bar.classList.add("voice_meter_bar"),this.bar.style.background=r,this.div.appendChild(this.bar),this.text=document.createElement("p"),this.text.classList.add("voice_meter_text"),this.div.appendChild(this.text),this.isActive=!1,b0){if(B0===void 0)throw new Error("No editable function given!");this.div.onmousedown=x=>{x.preventDefault(),x.button===0?this.isActive=!0:this.lockMeter()},this.div.onmousemove=x=>{if(!this.isActive)return;let j0=x.currentTarget.getBoundingClientRect(),K0=j0.left,F1=j0.width,m2=x.clientX-K0,b1=Math.max(0,Math.min(1,m2/F1));B0(b1*(I0-F)+F)},this.div.onmouseup=()=>this.isActive=!1,this.div.onmouseleave=x=>{this.div.onmousemove(x),this.isActive=!1},this.text.oncontextmenu=x=>{x.preventDefault()},this.div.onclick=x=>{x.preventDefault(),this.isActive=!0,this.div.onmousemove(x),this.isActive=!1},this.div.classList.add("editable")}}lockMeter(){this.lockCallback!==void 0&&(this.isLocked?(this.text.classList.remove("locked_meter"),this.unlockCallback()):(this.text.classList.add("locked_meter"),this.lockCallback()),this.isLocked=!this.isLocked)}toggleMode(r=!1){r&&(this.bar.classList.toggle("voice_meter_light_color"),this.div.classList.toggle("voice_meter_light_color")),this.text.classList.toggle("voice_meter_text_light")}show(){if(this.isShown=!0,!this.isVisualValueSet){let r=Math.max(0,Math.min((this.currentValue-this.min)/(this.max-this.min),1));this.bar.style.width=`${r*100}%`,this.text.textContent=this.meterText+(Math.round(this.currentValue*100)/100).toString(),this.isVisualValueSet=!0}}hide(){this.isShown=!1}update(r,l=!1){if(!(r===this.currentValue&&l===!1))if(this.currentValue=r,this.isShown){let h=Math.max(0,Math.min((r-this.min)/(this.max-this.min),1));this.bar.style.width=`${h*100}%`,this.text.textContent=this.meterText+(Math.round(r*100)/100).toString(),this.isVisualValueSet=!0}else this.isVisualValueSet=!1}};var Ry=["Acoustic Grand Piano","Bright Acoustic Piano","Electric Grand Piano","Honky-tonk Piano","Electric Piano 1","Electric Piano 2","Harpsichord","Clavi","Celesta","Glockenspiel","Music Box","Vibraphone","Marimba","Xylophone","Tubular Bells","Dulcimer","Drawbar Organ","Percussive Organ","Rock Organ","Church Organ","Reed Organ","Accordion","Harmonica","Tango Accordion","Acoustic Guitar (nylon)","Acoustic Guitar (steel)","Electric Guitar (jazz)","Electric Guitar (clean)","Electric Guitar (muted)","Overdriven Guitar","Distortion Guitar","Guitar Harmonics","Acoustic Bass","Electric Bass (finger)","Electric Bass (pick)","Fretless Bass","Slap Bass 1","Slap Bass 2","Synth Bass 1","Synth Bass 2","Violin","Viola","Cello","Contrabass","Tremolo Strings","Pizzicato Strings","Orchestral Harp","Timpani","String Ensemble 1","String Ensemble 2","Synth Strings 1","Synth Strings 2","Choir Aahs","VoiceGroup Oohs","Synth Choir","Orchestra Hit","Trumpet","Trombone","Tuba","Muted Trumpet","French Horn","Brass Section","Synth Brass 1","Synth Brass 2","Soprano Sax","Alto Sax","Tenor Sax","Baritone Sax","Oboe","English Horn","Bassoon","Clarinet","Piccolo","Flute","Recorder","Pan Flute","Blown Bottle","Shakuhachi","Whistle","Ocarina","Lead 1 (square)","Lead 2 (sawtooth)","Lead 3 (calliope)","Lead 4 (chiff)","Lead 5 (charang)","Lead 6 (voice)","Lead 7 (fifths)","Lead 8 (bass + lead)","Pad 1 (new age)","Pad 2 (warm)","Pad 3 (polysynth)","Pad 4 (choir)","Pad 5 (bowed)","Pad 6 (metallic)","Pad 7 (halo)","Pad 8 (sweep)","FX 1 (rain)","FX 2 (soundtrack)","FX 3 (crystal)","FX 4 (atmosphere)","FX 5 (brightness)","FX 6 (goblins)","FX 7 (echoes)","FX 8 (sci-fi)","Sitar","Banjo","Shamisen","Koto","Kalimba","Bagpipe","Fiddle","Shanai","Tinkle Bell","Agogo","Steel Drums","Woodblock","Taiko Drum","Melodic Tom","Synth Drum","Reverse Cymbal","Guitar Fret Noise","Breath Noise","Seashore","Bird Tweet","Telephone Ring","Helicopter","Applause","Gunshot"];var mB=class{constructor(r,l,h,E,F=void 0){this.isShown=!0,this.isReloaded=!0,this.elements=r,this.elements.length>0?this.value=`${this.elements[0].bank}:${this.elements[0].program}`:this.value="",this.mainDiv=document.createElement("select"),this.mainDiv.classList.add("voice_selector"),this.mainDiv.classList.add("controller_element"),l.bindObjectProperty(this.mainDiv,"title",h,E),this.reload(),this.mainDiv.onchange=()=>{F(this.mainDiv.value),this.mainDiv.blur()}}toggleMode(){this.mainDiv.classList.toggle("voice_selector_light")}reload(r=this.elements){if(this.elements=r,!this.isShown){this.isReloaded=!1;return}this.mainDiv.innerHTML="";let l=-20,h=!1,E="";for(let F of r){let I0=F.program;I0!==l&&(l=I0,r.filter(b0=>b0.program===l).length>1?(h=!0,E+=``):(h=!1,E+="")),h||F.bank!==0&&F.bank!==128?E+=``:E+=``}this.mainDiv.innerHTML=E,this.isReloaded=!0}set(r){this.value=r,this.isShown&&(this.isReloaded||this.reload(),this.mainDiv.value=r)}show(){this.isShown=!0,this.isReloaded||this.reload(),this.mainDiv.value=this.value}hide(){this.isShown=!1}};var yn=32;function xy(o){this.soloChannels=new Set;let r=document.createElement("div");r.classList.add("channel_controller");let l=new $r(this.channelColors[o%this.channelColors.length],a8+"channelController.voiceMeter",this.locale,[o+1],0,100);l.bar.classList.add("voice_meter_bar_smooth"),r.appendChild(l.div);let h=new $r(this.channelColors[o%this.channelColors.length],a8+"channelController.pitchBendMeter",this.locale,[o+1],-8192,8192,!0,v2=>{let Y2=h.isLocked;Y2&&this.synth.lockController(o,Ca+R7.pitchWheel,!1),v2=Math.round(v2)+8192;let J5=v2>>7,U5=v2&127;this.synth.pitchWheel(o,J5,U5),Y2&&this.synth.lockController(o,Ca+R7.pitchWheel,!0)},()=>this.synth.lockController(o,Ca+R7.pitchWheel,!0),()=>this.synth.lockController(o,Ca+R7.pitchWheel,!1));h.update(0),r.appendChild(h.div);let E=(v2,Y2,J5)=>{J5.isLocked?(this.synth.lockController(o,v2,!1),this.synth.controllerChange(o,v2,Y2),this.synth.lockController(o,v2,!0)):this.synth.controllerChange(o,v2,Y2)},F=(v2,Y2,J5)=>{let U5=new $r(this.channelColors[o%this.channelColors.length],a8+Y2,this.locale,[o+1],0,127,!0,a0=>E(v2,Math.round(a0),U5),()=>this.synth.lockController(o,v2,!0),()=>this.synth.lockController(o,v2,!1));return U5.update(J5),U5},I0=F(s6.pan,"channelController.panMeter",64);r.appendChild(I0.div);let b0=F(s6.expressionController,"channelController.expressionMeter",127);r.appendChild(b0.div);let B0=F(s6.mainVolume,"channelController.volumeMeter",100);r.appendChild(B0.div);let P0=F(s6.modulationWheel,"channelController.modulationWheelMeter",0);r.appendChild(P0.div);let B1=F(s6.effects3Depth,"channelController.chorusMeter",0);r.appendChild(B1.div);let x=F(s6.effects1Depth,"channelController.reverbMeter",40);r.appendChild(x.div);let j0=new $r(this.channelColors[o%this.channelColors.length],a8+"channelController.transposeMeter",this.locale,[o+1],-36,36,!0,v2=>{v2=Math.round(v2),this.synth.transposeChannel(o,v2,!0),j0.update(v2)});j0.update(0),r.appendChild(j0.div);let K0=document.createElement("div"),F1=new mB([],this.locale,a8+"channelController.presetSelector.description",[o+1],async v2=>{let Y2=v2.split(":");this.synth.lockController(o,Pi,!1),this.synth.controllerChange(o,s6.bankSelect,parseInt(Y2[0]),!0),this.synth.programChange(o,parseInt(Y2[1]),!0),F1.mainDiv.classList.add("locked_selector"),this.synth.lockController(o,Pi,!0)});r.appendChild(F1.mainDiv),K0.innerHTML=my(yn),this.locale.bindObjectProperty(K0,"title",a8+"channelController.presetReset.description",[o+1]),K0.classList.add("controller_element"),K0.classList.add("voice_reset"),K0.onclick=()=>{this.synth.lockController(o,Pi,!1),F1.mainDiv.classList.remove("locked_selector")},r.appendChild(K0);let m2=document.createElement("div");m2.innerHTML=EB(yn),this.locale.bindObjectProperty(m2,"title",a8+"channelController.soloButton.description",[o+1]),m2.classList.add("controller_element"),m2.classList.add("mute_button"),m2.onclick=()=>{if(this.soloChannels.has(o)?this.soloChannels.delete(o):this.soloChannels.add(o),this.soloChannels.size===0||this.soloChannels.size>=this.synth.channelsAmount){for(let v2=0;v2=this.synth.channelsAmount&&this.soloChannels.clear();return}for(let v2=0;v2{if(b1.hasAttribute("is_muted")){b1.removeAttribute("is_muted");let v2=this.soloChannels.size===0||this.soloChannels.has(o);this.synth.muteChannel(o,!v2),b1.innerHTML=Rm(yn)}else this.synth.muteChannel(o,!0),b1.setAttribute("is_muted","true"),b1.innerHTML=dy(yn)},r.appendChild(b1);let _5=document.createElement("div");return _5.innerHTML=o===ki?CB(yn):BB(yn),this.locale.bindObjectProperty(_5,"title",a8+"channelController.drumToggleButton.description",[o+1]),_5.classList.add("controller_element"),_5.classList.add("mute_button"),_5.onclick=()=>{this.synth.setDrums(o,!this.synth.channelProperties[o].isDrum)},r.appendChild(_5),{controller:r,voiceMeter:l,pitchWheel:h,pan:I0,expression:b0,volume:B0,mod:P0,chorus:B1,reverb:x,preset:F1,presetReset:K0,drumsToggle:_5,soloButton:m2,muteButton:b1,transpose:j0}}function Fy(){let o=this.uiDiv.getElementsByClassName("synthui_controller")[0];this.controllers=[];for(let r=0;r{this.synth.setMainVolume(Math.round(B0)/100),this.volumeController.update(B0)}),this.volumeController.bar.classList.add("voice_meter_bar_smooth"),this.volumeController.div.classList.add("main_controller_element"),this.volumeController.update(100),this.panController=new $r("",a8+"mainPanMeter",this.locale,[],-1,1,!0,B0=>{this.synth.setMasterPan(B0),this.panController.update(B0)}),this.panController.bar.classList.add("voice_meter_bar_smooth"),this.panController.div.classList.add("main_controller_element"),this.panController.update(0),this.transposeController=new $r("",a8+"mainTransposeMeter",this.locale,[],-12,12,!0,B0=>{this.synth.transpose(Math.round(B0*2)/2),this.transposeController.update(Math.round(B0*2)/2)}),this.transposeController.bar.classList.add("voice_meter_bar_smooth"),this.transposeController.div.classList.add("main_controller_element"),this.transposeController.update(0);let r=document.createElement("button");this.locale.bindObjectProperty(r,"textContent",a8+"midiPanic.title"),this.locale.bindObjectProperty(r,"title",a8+"midiPanic.description"),r.classList.add("synthui_button"),r.classList.add("main_controller_element"),r.onclick=()=>this.synth.stopAll(!0);let l=document.createElement("button");this.locale.bindObjectProperty(l,"textContent",a8+"systemReset.title"),this.locale.bindObjectProperty(l,"title",a8+"systemReset.description"),l.classList.add("synthui_button"),l.classList.add("main_controller_element"),l.onclick=()=>this.synth.resetControllers();let h=document.createElement("button");this.locale.bindObjectProperty(h,"textContent",a8+"blackMidiMode.title"),this.locale.bindObjectProperty(h,"title",a8+"blackMidiMode.description"),h.classList.add("synthui_button"),h.classList.add("main_controller_element"),h.onclick=()=>{this.synth.highPerformanceMode=!this.synth.highPerformanceMode};let E=document.createElement("button");this.locale.bindObjectProperty(E,"textContent",a8+"disableCustomVibrato.title"),this.locale.bindObjectProperty(E,"title",a8+"disableCustomVibrato.description"),E.classList.add("synthui_button"),E.classList.add("main_controller_element"),E.onclick=()=>{this.synth.lockAndResetChannelVibrato(),E.parentNode.removeChild(E)};let F=document.createElement("a");F.href="https://github.com/spessasus/SpessaSynth/wiki/How-To-Use-App#synthesizer-controller",F.target="#",F.classList.add("main_controller_element"),F.classList.add("synthui_button"),this.locale.bindObjectProperty(F,"textContent",a8+"helpButton.title"),this.locale.bindObjectProperty(F,"title",a8+"helpButton.description");let I0=document.createElement("div");I0.classList.add("synthui_controller"),this.uiDiv.appendChild(I0);let b0=document.createElement("button");this.locale.bindObjectProperty(b0,"textContent",a8+"toggleButton.title"),this.locale.bindObjectProperty(b0,"title",a8+"toggleButton.description"),b0.classList.add("synthui_button"),b0.onclick=()=>{this.hideOnDocClick=!1,this.toggleVisibility()},o.appendChild(this.volumeController.div),o.appendChild(this.panController.div),o.appendChild(this.transposeController.div),o.appendChild(r),o.appendChild(l),o.appendChild(h),o.appendChild(E),o.appendChild(F),this.mainMeters=[this.volumeController,this.panController,this.transposeController,this.voiceMeter],this.mainButtons=[r,l,h,E,b0,F],this.uiDiv.appendChild(this.voiceMeter.div),this.uiDiv.appendChild(b0),I0.appendChild(o),this.mainControllerDiv=I0,this.mainControllerDiv.onclick=B0=>B0.stopPropagation(),document.addEventListener("click",()=>{if(!this.hideOnDocClick){this.hideOnDocClick=!0;return}I0.classList.remove("synthui_controller_show"),this.isShown=!1,this.hideControllers()})}function My(){let o=this.uiDiv.getElementsByClassName("synthui_controller")[0];this.synth.eventHandler.addEvent("programchange","synthui-program-change",r=>{this.controllers[r.channel].preset.set(`${r.bank}:${r.program}`)}),this.synth.eventHandler.addEvent("allcontrollerreset","synthui-all-controller-reset",()=>{for(let r of this.controllers)r.pan.update(64),r.mod.update(0),r.chorus.update(0),r.pitchWheel.update(0),r.expression.update(127),r.volume.update(100),r.reverb.update(40)}),this.synth.eventHandler.addEvent("controllerchange","synthui-controller-change",r=>{let l=r.controllerNumber,h=r.channel,E=r.controllerValue;switch(l){default:break;case s6.expressionController:this.controllers[h].expression.update(E);break;case s6.mainVolume:this.controllers[h].volume.update(E);break;case s6.pan:this.controllers[h].pan.update(E);break;case s6.modulationWheel:this.controllers[h].mod.update(E);break;case s6.effects3Depth:this.controllers[h].chorus.update(E);break;case s6.effects1Depth:this.controllers[h].reverb.update(E)}}),this.synth.eventHandler.addEvent("pitchwheel","synthui-pitch-wheel",r=>{let l=r.MSB<<7|r.LSB;this.controllers[r.channel].pitchWheel.update(l-8192)}),this.synth.eventHandler.addEvent("drumchange","synthui-drum-change",r=>{this.controllers[r.channel].drumsToggle.innerHTML=r.isDrumChannel?CB(32):BB(32),this.controllers[r.channel].preset.reload(r.isDrumChannel?this.percussionList:this.instrumentList)}),this.synth.eventHandler.addEvent("newchannel","synthui-new-channel",()=>{let r=this.createChannelController(this.controllers.length);this.controllers.push(r),o.appendChild(r.controller),this.hideControllers()})}var a8="locale.synthesizerController.",Fr=class{constructor(r,l,h){this.channelColors=r;let E=l;this.uiDiv=document.createElement("div"),this.uiDiv.classList.add("wrapper"),E.appendChild(this.uiDiv),this.uiDiv.style.visibility="visible",this.isShown=!1,this.animationId=-1,this.locale=h,this.hideOnDocClick=!0}connectSynth(r){this.synth=r,this.getInstrumentList(),this.createMainSynthController(),this.createChannelControllers(),document.addEventListener("keydown",l=>{switch(l.key.toLowerCase()){case W7.synthesizerUIShow:l.preventDefault(),this.toggleVisibility();break;case W7.settingsShow:this.isShown=!0,this.toggleVisibility();break;case W7.blackMidiMode:l.preventDefault(),this.synth.highPerformanceMode=!this.synth.highPerformanceMode;break;case W7.midiPanic:l.preventDefault(),this.synth.stopAll(!0);break}}),this.locale.onLocaleChanged.push(()=>{this.voiceMeter.update(this.voiceMeter.currentValue,!0),this.volumeController.update(this.volumeController.currentValue,!0),this.panController.update(this.panController.currentValue,!0),this.panController.update(this.panController.currentValue,!0),this.transposeController.update(this.transposeController.currentValue,!0);for(let l of this.controllers)l.voiceMeter.update(l.voiceMeter.currentValue,!0),l.pitchWheel.update(l.pitchWheel.currentValue,!0),l.pan.update(l.pan.currentValue,!0),l.volume.update(l.volume.currentValue,!0),l.expression.update(l.expression.currentValue,!0),l.mod.update(l.mod.currentValue,!0),l.chorus.update(l.chorus.currentValue,!0),l.reverb.update(l.reverb.currentValue,!0),l.transpose.update(l.transpose.currentValue,!0)})}toggleVisibility(){this.animationId!==-1&&clearTimeout(this.animationId);let r=document.getElementsByClassName("synthui_controller")[0];this.isShown=!this.isShown,this.isShown?(r.style.display="block",document.getElementsByClassName("top_part")[0].classList.add("synthui_shown"),this.showControllers(),setTimeout(()=>{r.classList.add("synthui_controller_show")},75)):(document.getElementsByClassName("top_part")[0].classList.remove("synthui_shown"),this.hideControllers(),r.classList.remove("synthui_controller_show"),this.animationId=setTimeout(()=>{r.style.display="none"},200))}updateVoicesAmount(){this.voiceMeter.update(this.synth.voicesAmount),this.controllers.forEach((r,l)=>{let h=this.synth.channelProperties[l].voicesAmount;r.voiceMeter.update(h),h<1&&this.synth.voicesAmount>0?r.controller.classList.add("no_voices"):r.controller.classList.remove("no_voices")})}getInstrumentList(){this.synth.eventHandler.addEvent("presetlistchange","synthui-preset-list-change",r=>{let l=r;this.instrumentList=l.filter(h=>h.bank!==128).sort((h,E)=>h.program===E.program?h.bank-E.bank:h.program-E.program).map(h=>({name:h.presetName,bank:h.bank,program:h.program})),this.percussionList=l.filter(h=>h.bank===128).sort((h,E)=>h.program-E.program).map(h=>({name:h.presetName,bank:h.bank,program:h.program})),this.percussionList.length===0?this.percussionList=this.instrumentList:this.instrumentList.length===0&&(this.instrumentList=this.percussionList),this.controllers.forEach((h,E)=>{let F=this.synth.channelProperties[E].isDrum?this.percussionList:this.instrumentList;h.preset.reload(F),h.preset.set(`${F[0].bank}:${F[0].program}`)})})}};Fr.prototype.hideControllers=Dy;Fr.prototype.showControllers=by;Fr.prototype.toggleDarkMode=_y;Fr.prototype.createChannelController=xy;Fr.prototype.createChannelControllers=Fy;Fr.prototype.createMainSynthController=Ly;Fr.prototype.setEventListeners=My;var mC=null,pB=class{constructor(){}async createMIDIDeviceHandler(){if(this.selectedInput=mC,this.selectedOutput=mC,navigator.requestMIDIAccess)try{let r=await navigator.requestMIDIAccess({sysex:!0,software:!0});return this.inputs=r.inputs,this.outputs=r.outputs,X5("%cMIDI handler created!",S1.recognized),!0}catch(r){return ue("Could not get MIDI Devices:",r),this.inputs=[],this.outputs=[],!1}else return ue("Web MIDI Api not supported!",S1.unrecognized),this.inputs=[],this.outputs=[],!1}connectMIDIOutputToSeq(r,l){this.selectedOutput=r,l.connectMidiOutput(r),X5(`%cPlaying MIDI to %c${r.name}`,S1.info,S1.recognized)}disconnectSeqFromMIDI(r){this.selectedOutput=mC,r.connectMidiOutput(void 0),X5("%cDisconnected from MIDI out.",S1.info)}connectDeviceToSynth(r,l){this.selectedInput=r,r.onmidimessage=h=>{l.sendMessage(h.data)},X5(`%cListening for messages on %c${r.name}`,S1.info,S1.recognized)}disconnectDeviceFromSynth(r){this.selectedInput=mC,r.onmidimessage=void 0,X5(`%cDisconnected from %c${r.name}`,S1.info,S1.recognized)}disconnectAllDevicesFromSynth(){this.selectedInput=mC;for(let r of this.inputs)r[1].onmidimessage=void 0}};var QB=class{constructor(r){window.addEventListener("message",l=>{if(typeof l.data!="string")return;let h=l.data.split(",");if(h[0]!=="midi")return;h.shift();let E=h.map(F=>parseInt(F,16));r.sendMessage(E)}),X5("%cWeb MIDI Link handler created!",S1.recognized)}};var Ro="midi range";function Ty(o,r,l){let h=0,E=this.htmlControls.keyboard,F=()=>{let I0=document.createElement("option");I0.value=h.toString(),this.locale.bindObjectProperty(I0,"textContent","locale.settings.keyboardSettings.selectedChannel.channelOption",[h+1]),I0.style.background=r.channelColors[h%r.channelColors.length],I0.style.color="rgb(0, 0, 0)",E.channelSelector.appendChild(I0),h++};for(let I0=0;I0{o.selectChannel(parseInt(E.channelSelector.value))},E.sizeSelector.onchange=()=>{if(this.musicMode.visible){this.musicMode.setVisibility(!1,document.getElementById("keyboard_canvas_wrapper")),setTimeout(()=>{E.sizeSelector.value===Ro?(this.autoKeyRange=!0,this?.sequi?.seq&&(o.keyRange=this.sequi.seq.midiData.keyRange,l.keyRange=this.sequi.seq.midiData.keyRange)):(this.autoKeyRange=!1,o.keyRange=this.keyboardSizes[E.sizeSelector.value],l.keyRange=this.keyboardSizes[E.sizeSelector.value]),this._saveSettings()},600);return}E.sizeSelector.value===Ro?(this.autoKeyRange=!0,this?.sequi?.seq&&(o.keyRange=this.sequi.seq.midiData.keyRange,l.keyRange=this.sequi.seq.midiData.keyRange)):(this.autoKeyRange=!1,o.keyRange=this.keyboardSizes[E.sizeSelector.value],l.keyRange=this.keyboardSizes[E.sizeSelector.value]),this._saveSettings()},this.addSequencer=I0=>{I0.addOnSongChangeEvent(b0=>{this.autoKeyRange&&(o.keyRange=b0.keyRange,l.keyRange=b0.keyRange),b0.RMIDInfo?.IPIC!==void 0&&this.musicMode.visible===!1&&this.toggleMusicPlayerMode().then()},"settings-keyboard-handler-song-change")},r.synth.eventHandler.addEvent("newchannel","settings-new-channel",()=>{F()}),r.synth.eventHandler.addEvent("programchange","settings-keyboard-program-change",I0=>{I0.userCalled&&(o.selectChannel(I0.channel),E.channelSelector.value=I0.channel)}),r.synth.eventHandler.addEvent("mutechannel","settings-keuboard-mute-channel",I0=>{if(I0.isMuted&&I0.channel===o.channel){let b0=0;for(;r.synth.channelProperties[b0].isMuted;)b0++;b0{if(this.musicMode.visible){this.musicMode.setVisibility(!1,document.getElementById("keyboard_canvas_wrapper")),setTimeout(()=>{o.toggleMode(),this._saveSettings()},600);return}o.toggleMode(),this._saveSettings()}}var Gy=` +`}function ah(o,r){let l=document.createElement("div");return l.classList.add("control_buttons"),l.title=o,l.innerHTML=r,l}var W7={synthesizerUIShow:"s",settingsShow:"r",blackMidiMode:"b",midiPanic:"backspace",playPause:" ",toggleLoop:"l",toggleLyrics:"t",seekBackwards:"arrowleft",seekForwards:"arrowright",previousSong:"[",nextSong:"]",cinematicMode:"c",videoMode:"v"};function py(){navigator.mediaSession&&(navigator.mediaSession.metadata=new MediaMetadata({title:this.currentSongTitle,artist:"SpessaSynth"}),navigator.mediaSession.setActionHandler("play",()=>{this.seqPlay()}),navigator.mediaSession.setActionHandler("pause",()=>{this.seqPause()}),navigator.mediaSession.setActionHandler("stop",()=>{this.seq.currentTime=0,this.seqPause()}),navigator.mediaSession.setActionHandler("seekbackward",o=>{this.seq.currentTime-=o.seekOffset||10}),navigator.mediaSession.setActionHandler("seekforward",o=>{this.seq.currentTime+=o.seekOffset||10}),navigator.mediaSession.setActionHandler("seekto",o=>{this.seq.currentTime=o.seekTime}),navigator.mediaSession.setActionHandler("previoustrack",()=>{this.switchToPreviousSong()}),navigator.mediaSession.setActionHandler("nexttrack",()=>{this.switchToNextSong()}),navigator.mediaSession.playbackState="playing")}function Qy(o=!0){if(this.seq?.hasDummyData===!0)this.currentSongTitle=this.locale.getLocaleString("locale.synthInit.genericLoading");else{let r=this.infoDecoder.decode(this.seq.midiData.rawMidiName.buffer).replace(/\0$/,"");this.currentSongTitle=Cm(r)}if(this.seq.midiData){let r=this.seq.midiData.lyrics;this.currentLyrics=new Uint8Array(r.reduce((h,E)=>h+E.length,0));let l=0;for(let h of r)this.currentLyrics.set(h,l),l+=h.length;this.currentLyricsString=this.decodeTextFix(this.currentLyrics.buffer)||this.locale.getLocaleString("locale.sequencerController.lyrics.noLyrics"),this.setLyricsText(""),o&&(this.rawOtherTextEvents=[])}if(document.getElementById("title").innerText=this.currentSongTitle,document.title=this.currentSongTitle+" - SpessaSynth",this.musicModeUI.setTitle(this.currentSongTitle),!!navigator.mediaSession)try{navigator.mediaSession.setPositionState({duration:this.seq.duration,playbackRate:this.seq.playbackRate,position:this.seq.currentTime})}catch{}}var RD=parseFloat(getComputedStyle(document.body).fontSize);function yy(){this.lyricsElement={};let o=document.createElement("div");o.classList.add("lyrics");let r=document.createElement("div");r.classList.add("lyrics_title_wrapper"),o.append(r),this.lyricsElement.titleWrapper=r;let l=document.createElement("h2");this.locale.bindObjectProperty(l,"textContent","locale.sequencerController.lyrics.title"),l.classList.add("lyrics_title"),r.appendChild(l),this.lyricsElement.title=l;let h=document.createElement("select");BC.forEach(B1=>{let R=document.createElement("option");R.innerText=B1,R.value=B1,h.appendChild(R)}),h.value=this.encoding,h.onchange=()=>this.changeEncoding(h.value),h.classList.add("lyrics_selector"),this.encodingSelector=h,r.appendChild(h);let E=document.createElement("p");E.classList.add("lyrics_text"),o.appendChild(E);let F=document.createElement("span");F.classList.add("lyrics_text_highlight"),E.appendChild(F);let I0=document.createElement("span");I0.classList.add("lyrics_text_gray"),E.appendChild(I0);let b0=document.createElement("details"),B0=document.createElement("summary");this.locale.bindObjectProperty(B0,"textContent","locale.sequencerController.lyrics.otherText.title"),b0.appendChild(B0);let O0=document.createElement("div");O0.innerText="",b0.appendChild(O0),o.appendChild(b0),this.lyricsElement.text={highlight:F,gray:I0,main:E,other:O0},this.lyricsElement.mainDiv=o,this.lyricsElement.selector=h,this.controls.appendChild(o),this.requiresTextUpdate=!0}function wy(o){let r=this.lyricsElement.text.highlight,l=this.lyricsElement.text.gray;l.innerText=this.currentLyricsString.replace(o,""),r.innerText=o,this.lyricsElement.text.main.scrollTo(0,r.offsetHeight-RD*5)}function ky(){let o="";for(let r of this.rawOtherTextEvents)o+=`
${Object.keys(J3).find(l=>J3[l]===r.type).replace(/([a-z])([A-Z])/g,"$1 $2")}:
${this.decodeTextFix(r.data.buffer)}

`;this.lyricsElement.text.other.innerHTML=o}var xr=32,vy="#ccc",Sy="#555",xD="#333",FD="#ddd",LD="Shift_JIS",bA=class{constructor(r,l,h){this.iconColor=vy,this.iconDisabledColor=Sy,this.controls=r,this.encoding=LD,this.decoder=new TextDecoder(this.encoding),this.infoDecoder=new TextDecoder(this.encoding),this.hasInfoDecoding=!1,this.text="",this.requiresTextUpdate=!1,this.rawLyrics=[],this.rawOtherTextEvents=[],this.mode="dark",this.locale=l,this.currentSongTitle="",this.currentLyrics=new Uint8Array(0),this.currentLyricsString="",this.musicModeUI=h}toggleDarkMode(){if(this.mode==="dark"?(this.mode="light",this.iconColor=xD,this.iconDisabledColor=FD):(this.mode="dark",this.iconColor=vy,this.iconDisabledColor=Sy),!this.seq){this.requiresThemeUpdate=!0;return}this.progressBar.classList.toggle("note_progress_light"),this.progressBarBackground.classList.toggle("note_progress_background_light"),this.lyricsElement.mainDiv.classList.toggle("lyrics_light"),this.lyricsElement.titleWrapper.classList.toggle("lyrics_light"),this.lyricsElement.selector.classList.toggle("lyrics_light")}seqPlay(r=!0){r&&this.seq.play(),this.playPause.innerHTML=Ba(xr),this.createNavigatorHandler(),this.updateTitleAndMediaStatus(),navigator.mediaSession&&(navigator.mediaSession.playbackState="playing")}seqPause(r=!0){r&&this.seq.pause(),this.playPause.innerHTML=cy(xr),this.createNavigatorHandler(),this.updateTitleAndMediaStatus(),navigator.mediaSession&&(navigator.mediaSession.playbackState="paused")}switchToNextSong(){this.seq.nextSong(),this.createNavigatorHandler(),this.updateTitleAndMediaStatus()}switchToPreviousSong(){this.seq.previousSong(),this.createNavigatorHandler(),this.updateTitleAndMediaStatus()}decodeTextFix(r,l=!1){let h=0;for(;;)try{return this.decoder.decode(r)}catch{h++,this.changeEncoding(BC[h]),this.encodingSelector.value=BC[h]}}connectSequencer(r){this.seq=r,this.createControls(),this.setSliderInterval(),this.createNavigatorHandler(),this.updateTitleAndMediaStatus(),this.seq.onTextEvent=(l,h)=>{let E=this.decodeTextFix(l.buffer);switch(h){default:return;case J3.text:case J3.copyright:case J3.cuePoint:case J3.trackName:case J3.instrumentName:case J3.marker:this.rawOtherTextEvents.push({type:h,data:l}),this.requiresTextUpdate=!0;return;case J3.lyric:this.text+=E,this.rawLyrics.push(...l),this.setLyricsText(this.text);break}},this.seq.addOnTimeChangeEvent(()=>{this.text="",this.rawLyrics=[],this.seqPlay(!1)},"sequi-time-change"),this.seq.addOnSongChangeEvent(l=>{if(this.createNavigatorHandler(),this.updateTitleAndMediaStatus(),this.seqPlay(!1),this.seq.songsAmount>1&&(this.seq.loop=!1,this.loopButton.firstElementChild.setAttribute("fill",this.iconDisabledColor)),this.hasInfoDecoding=this.seq.midiData.RMIDInfo?.[x7.encoding]!==void 0,l.isEmbedded){let h=(b0,B0,O0,B1="")=>this.seq.midiData.RMIDInfo?.[b0]===void 0?B0:B1+O0.decode(this.seq.midiData.RMIDInfo?.[b0]).replace(/\0$/,""),E=new TextDecoder,F=h(x7.midiEncoding,this.encoding,E),I0=h(x7.encoding,"utf-8",E);this.infoDecoder=new TextDecoder(I0),this.changeEncoding(F)}},"sequi-song-change"),this.requiresThemeUpdate&&this.mode==="light"&&(this.mode="dark",this.toggleDarkMode())}changeEncoding(r){this.encoding=r,this.decoder=new TextDecoder(r),this.hasInfoDecoding||(this.infoDecoder=new TextDecoder(r)),this.updateOtherTextEvents(),this.text=this.decodeTextFix(new Uint8Array(this.rawLyrics).buffer),this.lyricsElement.selector.value=r,this.updateTitleAndMediaStatus(!1),this.setLyricsText(this.text)}createControls(){this.progressTime=document.createElement("p"),this.progressTime.id="note_time",this.progressTime.onclick=R=>{R.preventDefault();let j0=r.getBoundingClientRect(),K0=R.clientX-j0.left,F1=j0.width;this.seq.currentTime=K0/F1*this.seq.duration,h.innerHTML=Ba(xr)},this.createLyrics();let r=document.createElement("div");r.id="note_progress_background",this.progressBarBackground=r,this.progressBar=document.createElement("div"),this.progressBar.id="note_progress",this.progressBar.min="0",this.progressBar.max=this.seq.duration.toString();let l=document.createElement("div"),h=ah("Play/Pause",Ba(xr));this.playPause=h,this.locale.bindObjectProperty(h,"title","locale.sequencerController.playPause");let E=()=>{this.seq.paused?this.seqPlay():this.seqPause()};h.onclick=E;let F=ah("Previous song",uy(xr));this.locale.bindObjectProperty(F,"title","locale.sequencerController.previousSong"),F.onclick=()=>this.switchToPreviousSong();let I0=ah("Next song",fy(xr));this.locale.bindObjectProperty(I0,"title","locale.sequencerController.nextSong"),I0.onclick=()=>this.switchToNextSong();let b0=ah("Loop this",gy(xr));this.locale.bindObjectProperty(b0,"title","locale.sequencerController.loopThis");let B0=()=>{this.seq.loop?this.seq.loop=!1:(this.seq.loop=!0,this.seq.currentTime>=this.seq.duration&&(this.seq.currentTime=0)),b0.firstElementChild.setAttribute("fill",this.seq.loop?this.iconColor:this.iconDisabledColor)};b0.onclick=B0,this.loopButton=b0;let O0=ah("Show lyrics",hy(xr));this.locale.bindObjectProperty(O0,"title","locale.sequencerController.lyrics.show"),O0.firstElementChild.setAttribute("fill",this.iconDisabledColor);let B1=()=>{this.lyricsElement.mainDiv.classList.toggle("lyrics_show"),O0.firstElementChild.setAttribute("fill",this.lyricsElement.mainDiv.classList.contains("lyrics_show")?this.iconColor:this.iconDisabledColor)};O0.onclick=B1,document.addEventListener("keydown",R=>{switch(R.key.toLowerCase()){case W7.playPause:R.preventDefault(),E();break;case W7.toggleLoop:R.preventDefault(),B0();break;case W7.toggleLyrics:R.preventDefault(),B1();break;default:break}}),l.appendChild(F),l.appendChild(b0),l.appendChild(h),l.appendChild(O0),l.appendChild(I0),this.controls.appendChild(r),r.appendChild(this.progressBar),this.controls.appendChild(this.progressTime),this.controls.appendChild(l),document.addEventListener("keydown",R=>{switch(R.key.toLowerCase()){case W7.seekBackwards:R.preventDefault(),this.seq.currentTime-=5,h.innerHTML=Ba(xr);break;case W7.seekForwards:R.preventDefault(),this.seq.currentTime+=5,h.innerHTML=Ba(xr);break;case W7.previousSong:this.switchToPreviousSong();break;case W7.nextSong:this.switchToNextSong();break;default:if(!isNaN(parseFloat(R.key))){R.preventDefault();let j0=parseInt(R.key);0<=j0&&j0<=9&&(this.seq.currentTime=this.seq.duration*(j0/10),h.innerHTML=Ba(xr))}break}})}_updateInterval(){this.progressBar.style.width=`${this.seq.currentTime/this.seq.duration*100}%`;let r=ha(this.seq.currentTime),l=ha(this.seq.duration);this.progressTime.innerText=`${r.time} / ${l.time}`,this.requiresTextUpdate&&(this.updateOtherTextEvents(),this.requiresTextUpdate=!1)}setSliderInterval(){setInterval(this._updateInterval.bind(this),100)}};bA.prototype.createNavigatorHandler=py;bA.prototype.updateTitleAndMediaStatus=Qy;bA.prototype.createLyrics=yy;bA.prototype.setLyricsText=wy;bA.prototype.updateOtherTextEvents=ky;function Dy(){this.controllers.forEach(o=>{o.voiceMeter.hide(),o.pitchWheel.hide(),o.pan.hide(),o.expression.hide(),o.volume.hide(),o.mod.hide(),o.chorus.hide(),o.preset.hide()})}function by(){this.controllers.forEach(o=>{o.voiceMeter.show(),o.pitchWheel.show(),o.pan.show(),o.expression.show(),o.volume.show(),o.mod.show(),o.chorus.show(),o.preset.show()})}function _y(){this.mainControllerDiv.classList.toggle("synthui_controller_light"),this.mainButtons.forEach(o=>{o.classList.toggle("synthui_button"),o.classList.toggle("synthui_button_light")}),this.mainMeters.forEach(o=>{o.toggleMode(!0)}),this.controllers.forEach(o=>{o.voiceMeter.toggleMode(),o.pitchWheel.toggleMode(),o.pan.toggleMode(),o.expression.toggleMode(),o.volume.toggleMode(),o.mod.toggleMode(),o.chorus.toggleMode(),o.preset.toggleMode(),o.presetReset.classList.toggle("voice_reset_light"),o.drumsToggle.classList.toggle("mute_button_light"),o.muteButton.classList.toggle("mute_button_light")})}var $r=class{constructor(r="none",l,h,E,F=0,I0=100,b0=!1,B0=void 0,O0=void 0,B1=void 0){if(this.meterText="",h.bindObjectProperty(this,"meterText",l+".title"),this.min=F,this.max=I0,this.currentValue=-1,this.isShown=!0,this.isVisualValueSet=!0,this.isLocked=!1,this.lockCallback=O0,this.unlockCallback=B1,this.div=document.createElement("div"),this.div.classList.add("voice_meter"),this.div.classList.add("controller_element"),r!=="none"&&r!==""&&(this.div.style.borderColor=r),h.bindObjectProperty(this.div,"title",l+".description",E),this.bar=document.createElement("div"),this.bar.classList.add("voice_meter_bar"),this.bar.style.background=r,this.div.appendChild(this.bar),this.text=document.createElement("p"),this.text.classList.add("voice_meter_text"),this.div.appendChild(this.text),this.isActive=!1,b0){if(B0===void 0)throw new Error("No editable function given!");this.div.onmousedown=R=>{R.preventDefault(),R.button===0?this.isActive=!0:this.lockMeter()},this.div.onmousemove=R=>{if(!this.isActive)return;let j0=R.currentTarget.getBoundingClientRect(),K0=j0.left,F1=j0.width,m2=R.clientX-K0,b1=Math.max(0,Math.min(1,m2/F1));B0(b1*(I0-F)+F)},this.div.onmouseup=()=>this.isActive=!1,this.div.onmouseleave=R=>{this.div.onmousemove(R),this.isActive=!1},this.text.oncontextmenu=R=>{R.preventDefault()},this.div.onclick=R=>{R.preventDefault(),this.isActive=!0,this.div.onmousemove(R),this.isActive=!1},this.div.classList.add("editable")}}lockMeter(){this.lockCallback!==void 0&&(this.isLocked?(this.text.classList.remove("locked_meter"),this.unlockCallback()):(this.text.classList.add("locked_meter"),this.lockCallback()),this.isLocked=!this.isLocked)}toggleMode(r=!1){r&&(this.bar.classList.toggle("voice_meter_light_color"),this.div.classList.toggle("voice_meter_light_color")),this.text.classList.toggle("voice_meter_text_light")}show(){if(this.isShown=!0,!this.isVisualValueSet){let r=Math.max(0,Math.min((this.currentValue-this.min)/(this.max-this.min),1));this.bar.style.width=`${r*100}%`,this.text.textContent=this.meterText+(Math.round(this.currentValue*100)/100).toString(),this.isVisualValueSet=!0}}hide(){this.isShown=!1}update(r,l=!1){if(!(r===this.currentValue&&l===!1))if(this.currentValue=r,this.isShown){let h=Math.max(0,Math.min((r-this.min)/(this.max-this.min),1));this.bar.style.width=`${h*100}%`,this.text.textContent=this.meterText+(Math.round(r*100)/100).toString(),this.isVisualValueSet=!0}else this.isVisualValueSet=!1}};var Ry=["Acoustic Grand Piano","Bright Acoustic Piano","Electric Grand Piano","Honky-tonk Piano","Electric Piano 1","Electric Piano 2","Harpsichord","Clavi","Celesta","Glockenspiel","Music Box","Vibraphone","Marimba","Xylophone","Tubular Bells","Dulcimer","Drawbar Organ","Percussive Organ","Rock Organ","Church Organ","Reed Organ","Accordion","Harmonica","Tango Accordion","Acoustic Guitar (nylon)","Acoustic Guitar (steel)","Electric Guitar (jazz)","Electric Guitar (clean)","Electric Guitar (muted)","Overdriven Guitar","Distortion Guitar","Guitar Harmonics","Acoustic Bass","Electric Bass (finger)","Electric Bass (pick)","Fretless Bass","Slap Bass 1","Slap Bass 2","Synth Bass 1","Synth Bass 2","Violin","Viola","Cello","Contrabass","Tremolo Strings","Pizzicato Strings","Orchestral Harp","Timpani","String Ensemble 1","String Ensemble 2","Synth Strings 1","Synth Strings 2","Choir Aahs","VoiceGroup Oohs","Synth Choir","Orchestra Hit","Trumpet","Trombone","Tuba","Muted Trumpet","French Horn","Brass Section","Synth Brass 1","Synth Brass 2","Soprano Sax","Alto Sax","Tenor Sax","Baritone Sax","Oboe","English Horn","Bassoon","Clarinet","Piccolo","Flute","Recorder","Pan Flute","Blown Bottle","Shakuhachi","Whistle","Ocarina","Lead 1 (square)","Lead 2 (sawtooth)","Lead 3 (calliope)","Lead 4 (chiff)","Lead 5 (charang)","Lead 6 (voice)","Lead 7 (fifths)","Lead 8 (bass + lead)","Pad 1 (new age)","Pad 2 (warm)","Pad 3 (polysynth)","Pad 4 (choir)","Pad 5 (bowed)","Pad 6 (metallic)","Pad 7 (halo)","Pad 8 (sweep)","FX 1 (rain)","FX 2 (soundtrack)","FX 3 (crystal)","FX 4 (atmosphere)","FX 5 (brightness)","FX 6 (goblins)","FX 7 (echoes)","FX 8 (sci-fi)","Sitar","Banjo","Shamisen","Koto","Kalimba","Bagpipe","Fiddle","Shanai","Tinkle Bell","Agogo","Steel Drums","Woodblock","Taiko Drum","Melodic Tom","Synth Drum","Reverse Cymbal","Guitar Fret Noise","Breath Noise","Seashore","Bird Tweet","Telephone Ring","Helicopter","Applause","Gunshot"];var mB=class{constructor(r,l,h,E,F=void 0){this.isShown=!0,this.isReloaded=!0,this.elements=r,this.elements.length>0?this.value=`${this.elements[0].bank}:${this.elements[0].program}`:this.value="",this.mainDiv=document.createElement("select"),this.mainDiv.classList.add("voice_selector"),this.mainDiv.classList.add("controller_element"),l.bindObjectProperty(this.mainDiv,"title",h,E),this.reload(),this.mainDiv.onchange=()=>{F(this.mainDiv.value),this.mainDiv.blur()}}toggleMode(){this.mainDiv.classList.toggle("voice_selector_light")}reload(r=this.elements){if(this.elements=r,!this.isShown){this.isReloaded=!1;return}this.mainDiv.innerHTML="";let l=-20,h=!1,E="";for(let F of r){let I0=F.program;I0!==l&&(l=I0,r.filter(b0=>b0.program===l).length>1?(h=!0,E+=``):(h=!1,E+="")),h||F.bank!==0&&F.bank!==128?E+=``:E+=``}this.mainDiv.innerHTML=E,this.isReloaded=!0}set(r){this.value=r,this.isShown&&(this.isReloaded||this.reload(),this.mainDiv.value=r)}show(){this.isShown=!0,this.isReloaded||this.reload(),this.mainDiv.value=this.value}hide(){this.isShown=!1}};var yn=32;function xy(o){this.soloChannels=new Set;let r=document.createElement("div");r.classList.add("channel_controller");let l=new $r(this.channelColors[o%this.channelColors.length],a8+"channelController.voiceMeter",this.locale,[o+1],0,100);l.bar.classList.add("voice_meter_bar_smooth"),r.appendChild(l.div);let h=new $r(this.channelColors[o%this.channelColors.length],a8+"channelController.pitchBendMeter",this.locale,[o+1],-8192,8192,!0,v2=>{let J2=h.isLocked;J2&&this.synth.lockController(o,Ca+R7.pitchWheel,!1),v2=Math.round(v2)+8192;let n3=v2>>7,U5=v2&127;this.synth.pitchWheel(o,n3,U5),J2&&this.synth.lockController(o,Ca+R7.pitchWheel,!0)},()=>this.synth.lockController(o,Ca+R7.pitchWheel,!0),()=>this.synth.lockController(o,Ca+R7.pitchWheel,!1));h.update(0),r.appendChild(h.div);let E=(v2,J2,n3)=>{n3.isLocked?(this.synth.lockController(o,v2,!1),this.synth.controllerChange(o,v2,J2),this.synth.lockController(o,v2,!0)):this.synth.controllerChange(o,v2,J2)},F=(v2,J2,n3)=>{let U5=new $r(this.channelColors[o%this.channelColors.length],a8+J2,this.locale,[o+1],0,127,!0,$0=>E(v2,Math.round($0),U5),()=>this.synth.lockController(o,v2,!0),()=>this.synth.lockController(o,v2,!1));return U5.update(n3),U5},I0=F(s6.pan,"channelController.panMeter",64);r.appendChild(I0.div);let b0=F(s6.expressionController,"channelController.expressionMeter",127);r.appendChild(b0.div);let B0=F(s6.mainVolume,"channelController.volumeMeter",100);r.appendChild(B0.div);let O0=F(s6.modulationWheel,"channelController.modulationWheelMeter",0);r.appendChild(O0.div);let B1=F(s6.effects3Depth,"channelController.chorusMeter",0);r.appendChild(B1.div);let R=F(s6.effects1Depth,"channelController.reverbMeter",40);r.appendChild(R.div);let j0=new $r(this.channelColors[o%this.channelColors.length],a8+"channelController.transposeMeter",this.locale,[o+1],-36,36,!0,v2=>{v2=Math.round(v2),this.synth.transposeChannel(o,v2,!0),j0.update(v2)});j0.update(0),r.appendChild(j0.div);let K0=document.createElement("div"),F1=new mB([],this.locale,a8+"channelController.presetSelector.description",[o+1],async v2=>{let J2=v2.split(":");this.synth.lockController(o,Pi,!1),this.synth.controllerChange(o,s6.bankSelect,parseInt(J2[0]),!0),this.synth.programChange(o,parseInt(J2[1]),!0),F1.mainDiv.classList.add("locked_selector"),this.synth.lockController(o,Pi,!0)});r.appendChild(F1.mainDiv),K0.innerHTML=my(yn),this.locale.bindObjectProperty(K0,"title",a8+"channelController.presetReset.description",[o+1]),K0.classList.add("controller_element"),K0.classList.add("voice_reset"),K0.onclick=()=>{this.synth.lockController(o,Pi,!1),F1.mainDiv.classList.remove("locked_selector")},r.appendChild(K0);let m2=document.createElement("div");m2.innerHTML=EB(yn),this.locale.bindObjectProperty(m2,"title",a8+"channelController.soloButton.description",[o+1]),m2.classList.add("controller_element"),m2.classList.add("mute_button"),m2.onclick=()=>{if(this.soloChannels.has(o)?this.soloChannels.delete(o):this.soloChannels.add(o),this.soloChannels.size===0||this.soloChannels.size>=this.synth.channelsAmount){for(let v2=0;v2=this.synth.channelsAmount&&this.soloChannels.clear();return}for(let v2=0;v2{if(b1.hasAttribute("is_muted")){b1.removeAttribute("is_muted");let v2=this.soloChannels.size===0||this.soloChannels.has(o);this.synth.muteChannel(o,!v2),b1.innerHTML=Rm(yn)}else this.synth.muteChannel(o,!0),b1.setAttribute("is_muted","true"),b1.innerHTML=dy(yn)},r.appendChild(b1);let _5=document.createElement("div");return _5.innerHTML=o===ki?CB(yn):BB(yn),this.locale.bindObjectProperty(_5,"title",a8+"channelController.drumToggleButton.description",[o+1]),_5.classList.add("controller_element"),_5.classList.add("mute_button"),_5.onclick=()=>{this.synth.setDrums(o,!this.synth.channelProperties[o].isDrum)},r.appendChild(_5),{controller:r,voiceMeter:l,pitchWheel:h,pan:I0,expression:b0,volume:B0,mod:O0,chorus:B1,reverb:R,preset:F1,presetReset:K0,drumsToggle:_5,soloButton:m2,muteButton:b1,transpose:j0}}function Fy(){let o=this.uiDiv.getElementsByClassName("synthui_controller")[0];this.controllers=[];for(let r=0;r{this.synth.setMainVolume(Math.round(B0)/100),this.volumeController.update(B0)}),this.volumeController.bar.classList.add("voice_meter_bar_smooth"),this.volumeController.div.classList.add("main_controller_element"),this.volumeController.update(100),this.panController=new $r("",a8+"mainPanMeter",this.locale,[],-1,1,!0,B0=>{this.synth.setMasterPan(B0),this.panController.update(B0)}),this.panController.bar.classList.add("voice_meter_bar_smooth"),this.panController.div.classList.add("main_controller_element"),this.panController.update(0),this.transposeController=new $r("",a8+"mainTransposeMeter",this.locale,[],-12,12,!0,B0=>{this.synth.transpose(Math.round(B0*2)/2),this.transposeController.update(Math.round(B0*2)/2)}),this.transposeController.bar.classList.add("voice_meter_bar_smooth"),this.transposeController.div.classList.add("main_controller_element"),this.transposeController.update(0);let r=document.createElement("button");this.locale.bindObjectProperty(r,"textContent",a8+"midiPanic.title"),this.locale.bindObjectProperty(r,"title",a8+"midiPanic.description"),r.classList.add("synthui_button"),r.classList.add("main_controller_element"),r.onclick=()=>this.synth.stopAll(!0);let l=document.createElement("button");this.locale.bindObjectProperty(l,"textContent",a8+"systemReset.title"),this.locale.bindObjectProperty(l,"title",a8+"systemReset.description"),l.classList.add("synthui_button"),l.classList.add("main_controller_element"),l.onclick=()=>this.synth.resetControllers();let h=document.createElement("button");this.locale.bindObjectProperty(h,"textContent",a8+"blackMidiMode.title"),this.locale.bindObjectProperty(h,"title",a8+"blackMidiMode.description"),h.classList.add("synthui_button"),h.classList.add("main_controller_element"),h.onclick=()=>{this.synth.highPerformanceMode=!this.synth.highPerformanceMode};let E=document.createElement("button");this.locale.bindObjectProperty(E,"textContent",a8+"disableCustomVibrato.title"),this.locale.bindObjectProperty(E,"title",a8+"disableCustomVibrato.description"),E.classList.add("synthui_button"),E.classList.add("main_controller_element"),E.onclick=()=>{this.synth.lockAndResetChannelVibrato(),E.parentNode.removeChild(E)};let F=document.createElement("a");F.href="https://github.com/spessasus/SpessaSynth/wiki/How-To-Use-App#synthesizer-controller",F.target="#",F.classList.add("main_controller_element"),F.classList.add("synthui_button"),this.locale.bindObjectProperty(F,"textContent",a8+"helpButton.title"),this.locale.bindObjectProperty(F,"title",a8+"helpButton.description");let I0=document.createElement("div");I0.classList.add("synthui_controller"),this.uiDiv.appendChild(I0);let b0=document.createElement("button");this.locale.bindObjectProperty(b0,"textContent",a8+"toggleButton.title"),this.locale.bindObjectProperty(b0,"title",a8+"toggleButton.description"),b0.classList.add("synthui_button"),b0.onclick=()=>{this.hideOnDocClick=!1,this.toggleVisibility()},o.appendChild(this.volumeController.div),o.appendChild(this.panController.div),o.appendChild(this.transposeController.div),o.appendChild(r),o.appendChild(l),o.appendChild(h),o.appendChild(E),o.appendChild(F),this.mainMeters=[this.volumeController,this.panController,this.transposeController,this.voiceMeter],this.mainButtons=[r,l,h,E,b0,F],this.uiDiv.appendChild(this.voiceMeter.div),this.uiDiv.appendChild(b0),I0.appendChild(o),this.mainControllerDiv=I0,this.mainControllerDiv.onclick=B0=>B0.stopPropagation(),document.addEventListener("click",()=>{if(!this.hideOnDocClick){this.hideOnDocClick=!0;return}I0.classList.remove("synthui_controller_show"),this.isShown=!1,this.hideControllers()})}function My(){let o=this.uiDiv.getElementsByClassName("synthui_controller")[0];this.synth.eventHandler.addEvent("programchange","synthui-program-change",r=>{this.controllers[r.channel].preset.set(`${r.bank}:${r.program}`)}),this.synth.eventHandler.addEvent("allcontrollerreset","synthui-all-controller-reset",()=>{for(let r of this.controllers)r.pan.update(64),r.mod.update(0),r.chorus.update(0),r.pitchWheel.update(0),r.expression.update(127),r.volume.update(100),r.reverb.update(40)}),this.synth.eventHandler.addEvent("controllerchange","synthui-controller-change",r=>{let l=r.controllerNumber,h=r.channel,E=r.controllerValue;switch(l){default:break;case s6.expressionController:this.controllers[h].expression.update(E);break;case s6.mainVolume:this.controllers[h].volume.update(E);break;case s6.pan:this.controllers[h].pan.update(E);break;case s6.modulationWheel:this.controllers[h].mod.update(E);break;case s6.effects3Depth:this.controllers[h].chorus.update(E);break;case s6.effects1Depth:this.controllers[h].reverb.update(E)}}),this.synth.eventHandler.addEvent("pitchwheel","synthui-pitch-wheel",r=>{let l=r.MSB<<7|r.LSB;this.controllers[r.channel].pitchWheel.update(l-8192)}),this.synth.eventHandler.addEvent("drumchange","synthui-drum-change",r=>{this.controllers[r.channel].drumsToggle.innerHTML=r.isDrumChannel?CB(32):BB(32),this.controllers[r.channel].preset.reload(r.isDrumChannel?this.percussionList:this.instrumentList)}),this.synth.eventHandler.addEvent("newchannel","synthui-new-channel",()=>{let r=this.createChannelController(this.controllers.length);this.controllers.push(r),o.appendChild(r.controller),this.hideControllers()})}var a8="locale.synthesizerController.",Fr=class{constructor(r,l,h){this.channelColors=r;let E=l;this.uiDiv=document.createElement("div"),this.uiDiv.classList.add("wrapper"),E.appendChild(this.uiDiv),this.uiDiv.style.visibility="visible",this.isShown=!1,this.animationId=-1,this.locale=h,this.hideOnDocClick=!0}connectSynth(r){this.synth=r,this.getInstrumentList(),this.createMainSynthController(),this.createChannelControllers(),document.addEventListener("keydown",l=>{switch(l.key.toLowerCase()){case W7.synthesizerUIShow:l.preventDefault(),this.toggleVisibility();break;case W7.settingsShow:this.isShown=!0,this.toggleVisibility();break;case W7.blackMidiMode:l.preventDefault(),this.synth.highPerformanceMode=!this.synth.highPerformanceMode;break;case W7.midiPanic:l.preventDefault(),this.synth.stopAll(!0);break}}),this.locale.onLocaleChanged.push(()=>{this.voiceMeter.update(this.voiceMeter.currentValue,!0),this.volumeController.update(this.volumeController.currentValue,!0),this.panController.update(this.panController.currentValue,!0),this.panController.update(this.panController.currentValue,!0),this.transposeController.update(this.transposeController.currentValue,!0);for(let l of this.controllers)l.voiceMeter.update(l.voiceMeter.currentValue,!0),l.pitchWheel.update(l.pitchWheel.currentValue,!0),l.pan.update(l.pan.currentValue,!0),l.volume.update(l.volume.currentValue,!0),l.expression.update(l.expression.currentValue,!0),l.mod.update(l.mod.currentValue,!0),l.chorus.update(l.chorus.currentValue,!0),l.reverb.update(l.reverb.currentValue,!0),l.transpose.update(l.transpose.currentValue,!0)})}toggleVisibility(){this.animationId!==-1&&clearTimeout(this.animationId);let r=document.getElementsByClassName("synthui_controller")[0];this.isShown=!this.isShown,this.isShown?(r.style.display="block",document.getElementsByClassName("top_part")[0].classList.add("synthui_shown"),this.showControllers(),setTimeout(()=>{r.classList.add("synthui_controller_show")},75)):(document.getElementsByClassName("top_part")[0].classList.remove("synthui_shown"),this.hideControllers(),r.classList.remove("synthui_controller_show"),this.animationId=setTimeout(()=>{r.style.display="none"},200))}updateVoicesAmount(){this.voiceMeter.update(this.synth.voicesAmount),this.controllers.forEach((r,l)=>{let h=this.synth.channelProperties[l].voicesAmount;r.voiceMeter.update(h),h<1&&this.synth.voicesAmount>0?r.controller.classList.add("no_voices"):r.controller.classList.remove("no_voices")})}getInstrumentList(){this.synth.eventHandler.addEvent("presetlistchange","synthui-preset-list-change",r=>{let l=r;this.instrumentList=l.filter(h=>h.bank!==128).sort((h,E)=>h.program===E.program?h.bank-E.bank:h.program-E.program).map(h=>({name:h.presetName,bank:h.bank,program:h.program})),this.percussionList=l.filter(h=>h.bank===128).sort((h,E)=>h.program-E.program).map(h=>({name:h.presetName,bank:h.bank,program:h.program})),this.percussionList.length===0?this.percussionList=this.instrumentList:this.instrumentList.length===0&&(this.instrumentList=this.percussionList),this.controllers.forEach((h,E)=>{let F=this.synth.channelProperties[E].isDrum?this.percussionList:this.instrumentList;h.preset.reload(F),h.preset.set(`${F[0].bank}:${F[0].program}`)})})}};Fr.prototype.hideControllers=Dy;Fr.prototype.showControllers=by;Fr.prototype.toggleDarkMode=_y;Fr.prototype.createChannelController=xy;Fr.prototype.createChannelControllers=Fy;Fr.prototype.createMainSynthController=Ly;Fr.prototype.setEventListeners=My;var mC=null,pB=class{constructor(){}async createMIDIDeviceHandler(){if(this.selectedInput=mC,this.selectedOutput=mC,navigator.requestMIDIAccess)try{let r=await navigator.requestMIDIAccess({sysex:!0,software:!0});return this.inputs=r.inputs,this.outputs=r.outputs,j5("%cMIDI handler created!",S1.recognized),!0}catch(r){return fe("Could not get MIDI Devices:",r),this.inputs=[],this.outputs=[],!1}else return fe("Web MIDI Api not supported!",S1.unrecognized),this.inputs=[],this.outputs=[],!1}connectMIDIOutputToSeq(r,l){this.selectedOutput=r,l.connectMidiOutput(r),j5(`%cPlaying MIDI to %c${r.name}`,S1.info,S1.recognized)}disconnectSeqFromMIDI(r){this.selectedOutput=mC,r.connectMidiOutput(void 0),j5("%cDisconnected from MIDI out.",S1.info)}connectDeviceToSynth(r,l){this.selectedInput=r,r.onmidimessage=h=>{l.sendMessage(h.data)},j5(`%cListening for messages on %c${r.name}`,S1.info,S1.recognized)}disconnectDeviceFromSynth(r){this.selectedInput=mC,r.onmidimessage=void 0,j5(`%cDisconnected from %c${r.name}`,S1.info,S1.recognized)}disconnectAllDevicesFromSynth(){this.selectedInput=mC;for(let r of this.inputs)r[1].onmidimessage=void 0}};var QB=class{constructor(r){window.addEventListener("message",l=>{if(typeof l.data!="string")return;let h=l.data.split(",");if(h[0]!=="midi")return;h.shift();let E=h.map(F=>parseInt(F,16));r.sendMessage(E)}),j5("%cWeb MIDI Link handler created!",S1.recognized)}};var Ro="midi range";function Ty(o,r,l){let h=0,E=this.htmlControls.keyboard,F=()=>{let I0=document.createElement("option");I0.value=h.toString(),this.locale.bindObjectProperty(I0,"textContent","locale.settings.keyboardSettings.selectedChannel.channelOption",[h+1]),I0.style.background=r.channelColors[h%r.channelColors.length],I0.style.color="rgb(0, 0, 0)",E.channelSelector.appendChild(I0),h++};for(let I0=0;I0{o.selectChannel(parseInt(E.channelSelector.value))},E.sizeSelector.onchange=()=>{if(this.musicMode.visible){this.musicMode.setVisibility(!1,document.getElementById("keyboard_canvas_wrapper")),setTimeout(()=>{E.sizeSelector.value===Ro?(this.autoKeyRange=!0,this?.sequi?.seq&&(o.keyRange=this.sequi.seq.midiData.keyRange,l.keyRange=this.sequi.seq.midiData.keyRange)):(this.autoKeyRange=!1,o.keyRange=this.keyboardSizes[E.sizeSelector.value],l.keyRange=this.keyboardSizes[E.sizeSelector.value]),this._saveSettings()},600);return}E.sizeSelector.value===Ro?(this.autoKeyRange=!0,this?.sequi?.seq&&(o.keyRange=this.sequi.seq.midiData.keyRange,l.keyRange=this.sequi.seq.midiData.keyRange)):(this.autoKeyRange=!1,o.keyRange=this.keyboardSizes[E.sizeSelector.value],l.keyRange=this.keyboardSizes[E.sizeSelector.value]),this._saveSettings()},this.addSequencer=I0=>{I0.addOnSongChangeEvent(b0=>{this.autoKeyRange&&(o.keyRange=b0.keyRange,l.keyRange=b0.keyRange),b0.RMIDInfo?.IPIC!==void 0&&this.musicMode.visible===!1&&this.toggleMusicPlayerMode().then()},"settings-keyboard-handler-song-change")},r.synth.eventHandler.addEvent("newchannel","settings-new-channel",()=>{F()}),r.synth.eventHandler.addEvent("programchange","settings-keyboard-program-change",I0=>{I0.userCalled&&(o.selectChannel(I0.channel),E.channelSelector.value=I0.channel)}),r.synth.eventHandler.addEvent("mutechannel","settings-keuboard-mute-channel",I0=>{if(I0.isMuted&&I0.channel===o.channel){let b0=0;for(;r.synth.channelProperties[b0].isMuted;)b0++;b0{if(this.musicMode.visible){this.musicMode.setVisibility(!1,document.getElementById("keyboard_canvas_wrapper")),setTimeout(()=>{o.toggleMode(),this._saveSettings()},600);return}o.toggleMode(),this._saveSettings()}}var Gy=`

@@ -188,15 +188,15 @@ var oB=(o=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(o,{get:(r,l)=>(
-`;function wn(o){return o.parentElement.nextElementSibling}function Ny(o){let r=o.getElementsByTagName("spessarange");for(let l of r)l.parentElement.insertBefore(xm(l,!0),l);for(;r.length>0;)r[0].parentNode.removeChild(r[0])}function xm(o,r=!0){let l=document.createElement("div");l.classList.add("settings_slider_wrapper");let h=o.getAttribute("min"),E=o.getAttribute("max"),F=o.getAttribute("value"),I0=o.getAttribute("units"),b0=o.getAttribute("input_id"),B0=document.createElement("input");B0.classList.add("settings_slider"),B0.type="range",B0.id=b0,B0.min=h,B0.max=E,B0.value=F;let P0;r&&(P0=document.createElement("span"),P0.textContent=F+I0);let B1=document.createElement("div");B1.classList.add("settings_visual_wrapper");let x=document.createElement("div");x.classList.add("settings_slider_progress"),B1.appendChild(x);let j0=document.createElement("div");return j0.classList.add("settings_slider_thumb"),B1.appendChild(j0),B1.appendChild(B0),B0.addEventListener("input",()=>{let K0=parseInt(B1.style.getPropertyValue("--visual-width").replace("%","")),F1=Math.round((B0.value-B0.min)/(B0.max-B0.min)*100);Math.abs((K0-F1)/100)>.05?B1.classList.add("settings_slider_transition"):B1.classList.remove("settings_slider_transition"),B1.style.setProperty("--visual-width",`${F1}%`)}),B1.style.setProperty("--visual-width",`${(B0.value-B0.min)/(B0.max-B0.min)*100}%`),l.appendChild(B1),r&&l.appendChild(P0),l}async function Uy(){let o=await window.savedSettings;if(!o.interface)return;X5("Loading saved settings...",o);let r=this.htmlControls.renderer,l=this.renderer,h=o.renderer;l.noteFallingTimeMs=h.noteFallingTimeMs,r.noteTimeSlider.value=h.noteFallingTimeMs,r.noteTimeSlider.dispatchEvent(new Event("input")),wn(r.noteTimeSlider).innerText=`${h.noteFallingTimeMs}ms`,r.analyserThicknessSlider.value=h.waveformThickness,r.analyserThicknessSlider.dispatchEvent(new Event("input")),l.lineThickness=h.waveformThickness,wn(r.analyserThicknessSlider).innerText=`${h.waveformThickness}px`;let E=h.sampleSize;r.analyserFftSlider.value=Math.log2(E),r.analyserFftSlider.dispatchEvent(new Event("input")),l.normalAnalyserFft=E,l.drumAnalyserFft=Math.pow(2,Math.min(15,Math.log2(E)+2)),l.updateFftSize(),wn(r.analyserFftSlider).innerText=`${E}`,l.waveMultiplier=h.amplifier,r.waveMultiplierSlizer.value=h.amplifier,r.waveMultiplierSlizer.dispatchEvent(new Event("input")),wn(r.waveMultiplierSlizer).innerText=h.amplifier.toString();let F=this.htmlControls.renderer;l.renderAnalysers=h.renderWaveforms,F.analyserToggler.checked=h.renderWaveforms,l.renderNotes=h.renderNotes,F.noteToggler.checked=h.renderNotes,l.drawActiveNotes=h.drawActiveNotes,F.activeNoteToggler.checked=h.drawActiveNotes,l.showVisualPitch=h.showVisualPitch,F.visualPitchToggler.checked=h.showVisualPitch,l.stabilizeWaveforms=h.stabilizeWaveforms,F.stabilizeWaveformsToggler.checked=h.stabilizeWaveforms,l.keyRange=h.keyRange;let I0=this.htmlControls.keyboard,b0=this.midiKeyboard,B0=o.keyboard;b0.setKeyRange(B0.keyRange,!1),B0.autoRange?(I0.sizeSelector.value=Ro,this.autoKeyRange=!0):(this.autoKeyRange=!1,I0.sizeSelector.value=Object.keys(this.keyboardSizes).find(P0=>this.keyboardSizes[P0].min===B0.keyRange.min&&this.keyboardSizes[P0].max===B0.keyRange.max)),B0.mode==="dark"&&(b0.toggleMode(!1),this.htmlControls.keyboard.modeSelector.checked=!0),this.locale.changeGlobalLocale(o.interface.language,!0),setTimeout(()=>{this.htmlControls.interface.languageSelector.value=o.interface.language},100),o.interface.mode==="light"?(this._toggleDarkMode(),this.htmlControls.interface.themeSelector.checked=!1):this.htmlControls.interface.themeSelector.checked=!0,this.htmlControls.interface.layoutSelector.value=o.interface.layout||"downwards",this._changeLayout(o.interface.layout||"downwards")}function Oy(){window.saveSettings&&window.saveSettings(this._serializeSettings())}function Py(){return{renderer:{noteFallingTimeMs:this.renderer.noteFallingTimeMs,waveformThickness:this.renderer.lineThickness,sampleSize:this.renderer.normalAnalyserFft,amplifier:this.renderer.waveMultiplier,renderWaveforms:this.renderer.renderAnalysers,renderNotes:this.renderer.renderNotes,drawActiveNotes:this.renderer.drawActiveNotes,showVisualPitch:this.renderer.showVisualPitch,stabilizeWaveforms:this.renderer.stabilizeWaveforms,keyRange:this.renderer.keyRange},keyboard:{selectedChannel:this.midiKeyboard.channel,keyRange:this.midiKeyboard.keyRange,mode:this.midiKeyboard.mode,autoRange:this.htmlControls.keyboard.sizeSelector.value===Ro},midi:{input:this.midiDeviceHandler.selectedInput===null?null:this.midiDeviceHandler.selectedInput.name,output:this.midiDeviceHandler.selectedOutput===null?null:this.midiDeviceHandler.selectedOutput.name},interface:{mode:this.mode,language:this.htmlControls.interface.languageSelector.value,layout:this.htmlControls.interface.layoutSelector.value}}}function Hy(){let o=this.htmlControls.interface.themeSelector;o.onclick=()=>{this._toggleDarkMode(),this._saveSettings()};let r=this.htmlControls.interface.languageSelector;for(let[h,E]of Object.entries(this.locales)){let F=document.createElement("option");F.value=h,F.textContent=E.localeName,r.appendChild(F)}r.onchange=()=>{this.locale.changeGlobalLocale(r.value),this._saveSettings()};let l=this.htmlControls.interface.layoutSelector;l.onchange=()=>{this._changeLayout(l.value),this._saveSettings(),l.blur()}}function qy(o){let r=document.getElementById("keyboard_canvas_wrapper"),l=document.getElementById("note_canvas"),h=document.getElementById("keyboard");switch(o){case"downwards":r.classList.remove("upwards"),r.classList.remove("left_to_right"),r.classList.remove("right_to_left"),l.classList.remove("sideways"),h.classList.remove("sideways"),this.renderer.direction="down",this.renderer.sideways=!1;break;case"upwards":r.classList.add("upwards"),r.classList.remove("left_to_right"),r.classList.remove("right_to_left"),l.classList.remove("sideways"),h.classList.remove("sideways"),this.renderer.direction="up",this.renderer.sideways=!1;break;case"left":r.classList.remove("upwards"),r.classList.add("left_to_right"),r.classList.remove("right_to_left"),l.classList.add("sideways"),h.classList.add("sideways"),this.renderer.direction="up",this.renderer.sideways=!0;break;case"right":r.classList.remove("upwards"),r.classList.remove("left_to_right"),r.classList.add("right_to_left"),l.classList.add("sideways"),h.classList.add("sideways"),this.renderer.direction="down",this.renderer.sideways=!0}}var yB={start:"#101010",end:"#212121"},wB={start:"#bbb",end:"#f0f0f0"},Yy="#eee",Jy="#333",kB={start:"#222",end:"#333"},vB={start:"#ccc",end:"#fff"},kn=.2;function Ky(){this.mode==="dark"?(this.mode="light",this.renderer.drawActiveNotes=!1):(this.renderer.drawActiveNotes=!0,this.mode="dark"),this.renderer.toggleDarkMode(),this.synthui.toggleDarkMode(),this.sequi.toggleDarkMode(),this.musicMode.toggleDarkMode(),document.getElementsByClassName("spessasynth_main")[0].classList.toggle("light_mode"),document.getElementsByClassName("top_part")[0].classList.toggle("top_part_light"),this.mainDiv.classList.toggle("settings_menu_light");let o=document.styleSheets[0].cssRules;for(let r of o)if(r.selectorText==="*"){this.mode==="dark"?(vn(Jy,Yy,kn,r,"--font-color"),vn(vB.start,kB.start,kn,r,"--top-buttons-color-start"),vn(vB.end,kB.end,kn,r,"--top-buttons-color-end"),vn(wB.start,yB.start,kn,r,"--top-color-start"),vn(wB.end,yB.end,kn,r,"--top-color-end")):(vn(Yy,Jy,kn,r,"--font-color"),vn(kB.start,vB.start,kn,r,"--top-buttons-color-start"),vn(kB.end,vB.end,kn,r,"--top-buttons-color-end"),vn(yB.start,wB.start,kn,r,"--top-color-start"),vn(yB.end,wB.end,kn,r,"--top-color-end"));break}document.body.style.background=this.mode==="dark"?"black":"white"}var lh={};function vn(o,r,l,h,E){lh[E]&&(clearInterval(lh[E]),lh[E]=void 0);function F(x){x.length===4&&(x=`#${x[1]}${x[1]}${x[2]}${x[2]}${x[3]}${x[3]}`);let j0=parseInt(x.slice(1),16);return{r:j0>>16&255,g:j0>>8&255,b:j0&255}}function I0(x,j0,K0){return x+(j0-x)*K0}let b0=F(o),B0=F(r),P0=performance.now()/1e3;function B1(){let j0=performance.now()/1e3-P0,K0=Math.min(j0/l,1),F1=Math.round(I0(b0.r,B0.r,K0)),m2=Math.round(I0(b0.g,B0.g,K0)),b1=Math.round(I0(b0.b,B0.b,K0));h.style.setProperty(E,`rgb(${F1}, ${m2}, ${b1})`),K0>=1&&(clearInterval(lh[E]),lh[E]=void 0)}lh[E]=setInterval(B1,1e3/60)}function Vy(o){let r=this.htmlControls.renderer;r.noteTimeSlider.addEventListener("input",()=>{o.noteFallingTimeMs=r.noteTimeSlider.value,wn(r.noteTimeSlider).innerText=`${r.noteTimeSlider.value}ms`}),r.noteTimeSlider.onchange=()=>{this._saveSettings()},r.analyserThicknessSlider.addEventListener("input",()=>{o.lineThickness=parseInt(r.analyserThicknessSlider.value),wn(r.analyserThicknessSlider).innerText=`${r.analyserThicknessSlider.value}px`}),r.analyserThicknessSlider.onchange=()=>{this._saveSettings()},r.analyserFftSlider.addEventListener("input",()=>{let l=Math.pow(2,parseInt(r.analyserFftSlider.value));o.normalAnalyserFft=l,o.drumAnalyserFft=Math.pow(2,Math.min(15,parseInt(r.analyserFftSlider.value)+2)),o.updateFftSize(),wn(r.analyserFftSlider).innerText=`${l}`}),r.analyserFftSlider.onchange=()=>{this._saveSettings()},r.waveMultiplierSlizer.addEventListener("input",()=>{o.waveMultiplier=parseInt(r.waveMultiplierSlizer.value),wn(r.waveMultiplierSlizer).innerText=r.waveMultiplierSlizer.value}),r.waveMultiplierSlizer.onchange=()=>{this._saveSettings()},r.analyserToggler.onclick=()=>{o.renderAnalysers=!o.renderAnalysers,this._saveSettings()},r.noteToggler.onclick=()=>{o.renderNotes=!o.renderNotes,this._saveSettings()},r.activeNoteToggler.onclick=()=>{o.drawActiveNotes=!o.drawActiveNotes,this._saveSettings()},r.visualPitchToggler.onclick=()=>{o.showVisualPitch=!o.showVisualPitch,this._saveSettings()},r.stabilizeWaveformsToggler.onclick=()=>{o.stabilizeWaveforms=!o.stabilizeWaveforms,this._saveSettings()}}function xo(o,r,l){if(r.textContent&&(o.textContent=r.textContent),r.translatePathTitle){if(!l)throw new Error("Translate path title provided but no locale provided.");l.bindObjectProperty(o,"textContent",r.translatePathTitle+".title"),l.bindObjectProperty(o,"title",r.translatePathTitle+".description")}}function zy(o,r){switch(o.type){case"button":let l=document.createElement("button");return xo(l,o,r),ma(o,[l]),l;case"text":let h=document.createElement("p");return xo(h,o,r),ma(o,[h]),h;case"input":let E=document.createElement("div");E.classList.add("notification_input_wrapper");let F=document.createElement("input");xo(F,o,r),F.addEventListener("keydown",_5=>_5.stopPropagation());let I0=document.createElement("label");return xo(I0,o,r),ma(o,[F,I0]),E.append(I0),E.appendChild(F),E;case"file":let b0=document.createElement("label");b0.classList.add("notification_input_wrapper");let B0=document.createElement("input");B0.type="file";let P0=document.createElement("label");P0.classList.add("notification_file_button"),xo(P0,o,r);let B1=document.createElement("label");return xo(B1,o,r),ma(o,[P0,B0,B1]),P0.appendChild(B0),b0.append(B1),b0.appendChild(P0),b0;case"progress":let x=document.createElement("div");x.classList.add("notification_progress_background");let j0=document.createElement("div");return j0.classList.add("notification_progress"),ma(o,[j0,x]),x.appendChild(j0),x;case"toggle":return MD(o,r);case"range":let K0=document.createElement("input");K0.type="range";let F1=document.createElement("label");ma(o,[K0,F1]),xo(F1,o,r);let m2=xm(K0,!1),b1=document.createElement("div");return b1.classList.add("notification_slider_wrapper"),b1.appendChild(F1),b1.appendChild(m2),b1}}function ma(o,r){if(o.attributes)for(let[l,h]of Object.entries(o.attributes))for(let E of r)E.setAttribute(l,h)}function MD(o,r){let l=document.createElement("label");l.classList.add("notification_switch_wrapper");let h=document.createElement("label");xo(h,o,r);let E=document.createElement("input");E.type="checkbox",ma(o,[h,E]);let F=document.createElement("div");F.classList.add("notification_switch"),F.appendChild(E);let I0=document.createElement("div");return I0.classList.add("notification_switch_slider"),F.appendChild(I0),l.appendChild(h),l.appendChild(F),l}var TD=13,GD=0,SB={};function $t(o,r,l=TD,h=!0,E=void 0,F=void 0){let I0=document.createElement("div"),b0=GD++;I0.classList.add("notification"),I0.innerHTML=` +`;function wn(o){return o.parentElement.nextElementSibling}function Ny(o){let r=o.getElementsByTagName("spessarange");for(let l of r)l.parentElement.insertBefore(xm(l,!0),l);for(;r.length>0;)r[0].parentNode.removeChild(r[0])}function xm(o,r=!0){let l=document.createElement("div");l.classList.add("settings_slider_wrapper");let h=o.getAttribute("min"),E=o.getAttribute("max"),F=o.getAttribute("value"),I0=o.getAttribute("units"),b0=o.getAttribute("input_id"),B0=document.createElement("input");B0.classList.add("settings_slider"),B0.type="range",B0.id=b0,B0.min=h,B0.max=E,B0.value=F;let O0;r&&(O0=document.createElement("span"),O0.textContent=F+I0);let B1=document.createElement("div");B1.classList.add("settings_visual_wrapper");let R=document.createElement("div");R.classList.add("settings_slider_progress"),B1.appendChild(R);let j0=document.createElement("div");return j0.classList.add("settings_slider_thumb"),B1.appendChild(j0),B1.appendChild(B0),B0.addEventListener("input",()=>{let K0=parseInt(B1.style.getPropertyValue("--visual-width").replace("%","")),F1=Math.round((B0.value-B0.min)/(B0.max-B0.min)*100);Math.abs((K0-F1)/100)>.05?B1.classList.add("settings_slider_transition"):B1.classList.remove("settings_slider_transition"),B1.style.setProperty("--visual-width",`${F1}%`)}),B1.style.setProperty("--visual-width",`${(B0.value-B0.min)/(B0.max-B0.min)*100}%`),l.appendChild(B1),r&&l.appendChild(O0),l}async function Uy(){let o=await window.savedSettings;if(!o.interface)return;j5("Loading saved settings...",o);let r=this.htmlControls.renderer,l=this.renderer,h=o.renderer;l.noteFallingTimeMs=h.noteFallingTimeMs,r.noteTimeSlider.value=h.noteFallingTimeMs,r.noteTimeSlider.dispatchEvent(new Event("input")),wn(r.noteTimeSlider).innerText=`${h.noteFallingTimeMs}ms`,r.analyserThicknessSlider.value=h.waveformThickness,r.analyserThicknessSlider.dispatchEvent(new Event("input")),l.lineThickness=h.waveformThickness,wn(r.analyserThicknessSlider).innerText=`${h.waveformThickness}px`;let E=h.sampleSize;r.analyserFftSlider.value=Math.log2(E),r.analyserFftSlider.dispatchEvent(new Event("input")),l.normalAnalyserFft=E,l.drumAnalyserFft=Math.pow(2,Math.min(15,Math.log2(E)+2)),l.updateFftSize(),wn(r.analyserFftSlider).innerText=`${E}`,l.waveMultiplier=h.amplifier,r.waveMultiplierSlizer.value=h.amplifier,r.waveMultiplierSlizer.dispatchEvent(new Event("input")),wn(r.waveMultiplierSlizer).innerText=h.amplifier.toString();let F=this.htmlControls.renderer;l.renderAnalysers=h.renderWaveforms,F.analyserToggler.checked=h.renderWaveforms,l.renderNotes=h.renderNotes,F.noteToggler.checked=h.renderNotes,l.drawActiveNotes=h.drawActiveNotes,F.activeNoteToggler.checked=h.drawActiveNotes,l.showVisualPitch=h.showVisualPitch,F.visualPitchToggler.checked=h.showVisualPitch,l.stabilizeWaveforms=h.stabilizeWaveforms,F.stabilizeWaveformsToggler.checked=h.stabilizeWaveforms,l.keyRange=h.keyRange;let I0=this.htmlControls.keyboard,b0=this.midiKeyboard,B0=o.keyboard;b0.setKeyRange(B0.keyRange,!1),B0.autoRange?(I0.sizeSelector.value=Ro,this.autoKeyRange=!0):(this.autoKeyRange=!1,I0.sizeSelector.value=Object.keys(this.keyboardSizes).find(O0=>this.keyboardSizes[O0].min===B0.keyRange.min&&this.keyboardSizes[O0].max===B0.keyRange.max)),B0.mode==="dark"&&(b0.toggleMode(!1),this.htmlControls.keyboard.modeSelector.checked=!0),this.locale.changeGlobalLocale(o.interface.language,!0),setTimeout(()=>{this.htmlControls.interface.languageSelector.value=o.interface.language},100),o.interface.mode==="light"?(this._toggleDarkMode(),this.htmlControls.interface.themeSelector.checked=!1):this.htmlControls.interface.themeSelector.checked=!0,this.htmlControls.interface.layoutSelector.value=o.interface.layout||"downwards",this._changeLayout(o.interface.layout||"downwards")}function Oy(){window.saveSettings&&window.saveSettings(this._serializeSettings())}function Py(){return{renderer:{noteFallingTimeMs:this.renderer.noteFallingTimeMs,waveformThickness:this.renderer.lineThickness,sampleSize:this.renderer.normalAnalyserFft,amplifier:this.renderer.waveMultiplier,renderWaveforms:this.renderer.renderAnalysers,renderNotes:this.renderer.renderNotes,drawActiveNotes:this.renderer.drawActiveNotes,showVisualPitch:this.renderer.showVisualPitch,stabilizeWaveforms:this.renderer.stabilizeWaveforms,keyRange:this.renderer.keyRange},keyboard:{selectedChannel:this.midiKeyboard.channel,keyRange:this.midiKeyboard.keyRange,mode:this.midiKeyboard.mode,autoRange:this.htmlControls.keyboard.sizeSelector.value===Ro},midi:{input:this.midiDeviceHandler.selectedInput===null?null:this.midiDeviceHandler.selectedInput.name,output:this.midiDeviceHandler.selectedOutput===null?null:this.midiDeviceHandler.selectedOutput.name},interface:{mode:this.mode,language:this.htmlControls.interface.languageSelector.value,layout:this.htmlControls.interface.layoutSelector.value}}}function Hy(){let o=this.htmlControls.interface.themeSelector;o.onclick=()=>{this._toggleDarkMode(),this._saveSettings()};let r=this.htmlControls.interface.languageSelector;for(let[h,E]of Object.entries(this.locales)){let F=document.createElement("option");F.value=h,F.textContent=E.localeName,r.appendChild(F)}r.onchange=()=>{this.locale.changeGlobalLocale(r.value),this._saveSettings()};let l=this.htmlControls.interface.layoutSelector;l.onchange=()=>{this._changeLayout(l.value),this._saveSettings(),l.blur()}}function qy(o){let r=document.getElementById("keyboard_canvas_wrapper"),l=document.getElementById("note_canvas"),h=document.getElementById("keyboard");switch(o){case"downwards":r.classList.remove("upwards"),r.classList.remove("left_to_right"),r.classList.remove("right_to_left"),l.classList.remove("sideways"),h.classList.remove("sideways"),this.renderer.direction="down",this.renderer.sideways=!1;break;case"upwards":r.classList.add("upwards"),r.classList.remove("left_to_right"),r.classList.remove("right_to_left"),l.classList.remove("sideways"),h.classList.remove("sideways"),this.renderer.direction="up",this.renderer.sideways=!1;break;case"left":r.classList.remove("upwards"),r.classList.add("left_to_right"),r.classList.remove("right_to_left"),l.classList.add("sideways"),h.classList.add("sideways"),this.renderer.direction="up",this.renderer.sideways=!0;break;case"right":r.classList.remove("upwards"),r.classList.remove("left_to_right"),r.classList.add("right_to_left"),l.classList.add("sideways"),h.classList.add("sideways"),this.renderer.direction="down",this.renderer.sideways=!0}}var yB={start:"#101010",end:"#212121"},wB={start:"#bbb",end:"#f0f0f0"},Yy="#eee",Jy="#333",kB={start:"#222",end:"#333"},vB={start:"#ccc",end:"#fff"},kn=.2;function Ky(){this.mode==="dark"?(this.mode="light",this.renderer.drawActiveNotes=!1):(this.renderer.drawActiveNotes=!0,this.mode="dark"),this.renderer.toggleDarkMode(),this.synthui.toggleDarkMode(),this.sequi.toggleDarkMode(),this.musicMode.toggleDarkMode(),document.getElementsByClassName("spessasynth_main")[0].classList.toggle("light_mode"),document.getElementsByClassName("top_part")[0].classList.toggle("top_part_light"),this.mainDiv.classList.toggle("settings_menu_light");let o=document.styleSheets[0].cssRules;for(let r of o)if(r.selectorText==="*"){this.mode==="dark"?(vn(Jy,Yy,kn,r,"--font-color"),vn(vB.start,kB.start,kn,r,"--top-buttons-color-start"),vn(vB.end,kB.end,kn,r,"--top-buttons-color-end"),vn(wB.start,yB.start,kn,r,"--top-color-start"),vn(wB.end,yB.end,kn,r,"--top-color-end")):(vn(Yy,Jy,kn,r,"--font-color"),vn(kB.start,vB.start,kn,r,"--top-buttons-color-start"),vn(kB.end,vB.end,kn,r,"--top-buttons-color-end"),vn(yB.start,wB.start,kn,r,"--top-color-start"),vn(yB.end,wB.end,kn,r,"--top-color-end"));break}document.body.style.background=this.mode==="dark"?"black":"white"}var lh={};function vn(o,r,l,h,E){lh[E]&&(clearInterval(lh[E]),lh[E]=void 0);function F(R){R.length===4&&(R=`#${R[1]}${R[1]}${R[2]}${R[2]}${R[3]}${R[3]}`);let j0=parseInt(R.slice(1),16);return{r:j0>>16&255,g:j0>>8&255,b:j0&255}}function I0(R,j0,K0){return R+(j0-R)*K0}let b0=F(o),B0=F(r),O0=performance.now()/1e3;function B1(){let j0=performance.now()/1e3-O0,K0=Math.min(j0/l,1),F1=Math.round(I0(b0.r,B0.r,K0)),m2=Math.round(I0(b0.g,B0.g,K0)),b1=Math.round(I0(b0.b,B0.b,K0));h.style.setProperty(E,`rgb(${F1}, ${m2}, ${b1})`),K0>=1&&(clearInterval(lh[E]),lh[E]=void 0)}lh[E]=setInterval(B1,1e3/60)}function Vy(o){let r=this.htmlControls.renderer;r.noteTimeSlider.addEventListener("input",()=>{o.noteFallingTimeMs=r.noteTimeSlider.value,wn(r.noteTimeSlider).innerText=`${r.noteTimeSlider.value}ms`}),r.noteTimeSlider.onchange=()=>{this._saveSettings()},r.analyserThicknessSlider.addEventListener("input",()=>{o.lineThickness=parseInt(r.analyserThicknessSlider.value),wn(r.analyserThicknessSlider).innerText=`${r.analyserThicknessSlider.value}px`}),r.analyserThicknessSlider.onchange=()=>{this._saveSettings()},r.analyserFftSlider.addEventListener("input",()=>{let l=Math.pow(2,parseInt(r.analyserFftSlider.value));o.normalAnalyserFft=l,o.drumAnalyserFft=Math.pow(2,Math.min(15,parseInt(r.analyserFftSlider.value)+2)),o.updateFftSize(),wn(r.analyserFftSlider).innerText=`${l}`}),r.analyserFftSlider.onchange=()=>{this._saveSettings()},r.waveMultiplierSlizer.addEventListener("input",()=>{o.waveMultiplier=parseInt(r.waveMultiplierSlizer.value),wn(r.waveMultiplierSlizer).innerText=r.waveMultiplierSlizer.value}),r.waveMultiplierSlizer.onchange=()=>{this._saveSettings()},r.analyserToggler.onclick=()=>{o.renderAnalysers=!o.renderAnalysers,this._saveSettings()},r.noteToggler.onclick=()=>{o.renderNotes=!o.renderNotes,this._saveSettings()},r.activeNoteToggler.onclick=()=>{o.drawActiveNotes=!o.drawActiveNotes,this._saveSettings()},r.visualPitchToggler.onclick=()=>{o.showVisualPitch=!o.showVisualPitch,this._saveSettings()},r.stabilizeWaveformsToggler.onclick=()=>{o.stabilizeWaveforms=!o.stabilizeWaveforms,this._saveSettings()}}function xo(o,r,l){if(r.textContent&&(o.textContent=r.textContent),r.translatePathTitle){if(!l)throw new Error("Translate path title provided but no locale provided.");l.bindObjectProperty(o,"textContent",r.translatePathTitle+".title"),l.bindObjectProperty(o,"title",r.translatePathTitle+".description")}}function zy(o,r){switch(o.type){case"button":let l=document.createElement("button");return xo(l,o,r),ma(o,[l]),l;case"text":let h=document.createElement("p");return xo(h,o,r),ma(o,[h]),h;case"input":let E=document.createElement("div");E.classList.add("notification_input_wrapper");let F=document.createElement("input");xo(F,o,r),F.addEventListener("keydown",_5=>_5.stopPropagation());let I0=document.createElement("label");return xo(I0,o,r),ma(o,[F,I0]),E.append(I0),E.appendChild(F),E;case"file":let b0=document.createElement("label");b0.classList.add("notification_input_wrapper");let B0=document.createElement("input");B0.type="file";let O0=document.createElement("label");O0.classList.add("notification_file_button"),xo(O0,o,r);let B1=document.createElement("label");return xo(B1,o,r),ma(o,[O0,B0,B1]),O0.appendChild(B0),b0.append(B1),b0.appendChild(O0),b0;case"progress":let R=document.createElement("div");R.classList.add("notification_progress_background");let j0=document.createElement("div");return j0.classList.add("notification_progress"),ma(o,[j0,R]),R.appendChild(j0),R;case"toggle":return MD(o,r);case"range":let K0=document.createElement("input");K0.type="range";let F1=document.createElement("label");ma(o,[K0,F1]),xo(F1,o,r);let m2=xm(K0,!1),b1=document.createElement("div");return b1.classList.add("notification_slider_wrapper"),b1.appendChild(F1),b1.appendChild(m2),b1}}function ma(o,r){if(o.attributes)for(let[l,h]of Object.entries(o.attributes))for(let E of r)E.setAttribute(l,h)}function MD(o,r){let l=document.createElement("label");l.classList.add("notification_switch_wrapper");let h=document.createElement("label");xo(h,o,r);let E=document.createElement("input");E.type="checkbox",ma(o,[h,E]);let F=document.createElement("div");F.classList.add("notification_switch"),F.appendChild(E);let I0=document.createElement("div");return I0.classList.add("notification_switch_slider"),F.appendChild(I0),l.appendChild(h),l.appendChild(F),l}var TD=13,GD=0,SB={};function $t(o,r,l=TD,h=!0,E=void 0,F=void 0){let I0=document.createElement("div"),b0=GD++;I0.classList.add("notification"),I0.innerHTML=`

${o}

\xD7 -
`;let B0=document.createElement("div");if(B0.classList.add("notification_content"),F)for(let[B1,x]of Object.entries(F))B0.style[B1]=x;I0.appendChild(B0);for(let B1 of r){let x=zy(B1,E);B1.onClick&&(x.onclick=()=>B1.onClick({div:I0,id:b0},x)),B0.appendChild(x)}h?I0.getElementsByClassName("close_btn")[0].onclick=()=>{Ii(b0)}:I0.getElementsByClassName("close_btn")[0].style.display="none",setTimeout(()=>{I0.classList.add("drop")},75);let P0=setTimeout(()=>{Ii(b0)},l*1e3+75);return document.getElementsByClassName("spessasynth_main")[0].appendChild(I0),SB[b0]={div:I0,timeout:P0},{div:I0,id:b0}}function Ii(o){let r=SB[o].div;clearTimeout(SB[o].timeout),r.classList.remove("drop"),setTimeout(()=>r.parentElement.removeChild(r),500),SB[o]=void 0}function Zy(o,r,l){o.createMIDIDeviceHandler().then(h=>{h?(this._createMidiInputHandler(o,l.synth),this._createMidiOutputHandler(o,r)):(vo||$t(this.locale.getLocaleString("locale.warnings.warning"),[{type:"text",textContent:this.locale.getLocaleString("locale.warnings.noMidiSupport")}]),document.getElementById("midi_settings").style.display="none")})}function Wy(o,r){if(o.inputs.length<1)return;let l=this.htmlControls.midi.inputSelector;for(let h of o.inputs){let E=document.createElement("option");E.value=h[0],E.innerText=h[1].name,l.appendChild(E)}l.onchange=()=>{l.value==="-1"?o.disconnectAllDevicesFromSynth():o.connectDeviceToSynth(o.inputs.get(l.value),r),this._saveSettings()}}function jy(o,r){if(!o.outputs){setTimeout(()=>{this._createMidiOutputHandler(o,r)},1e3);return}if(o.outputs.length<1)return;let l=this.htmlControls.midi.outputSelector;for(let h of o.outputs){let E=document.createElement("option");E.value=h[0],E.innerText=h[1].name,l.appendChild(E)}l.onchange=()=>{r.seq&&(l.value==="-1"?o.disconnectSeqFromMIDI(r.seq):o.connectMIDIOutputToSeq(o.outputs.get(l.value),r.seq),this._saveSettings())}}var Xy={title:"Renderer settings",noteFallingTime:{title:"Note falling time (miliseconds)",description:"How fast the notes fall (visually)"},waveformThickness:{title:"Waveform line thickness (px)",description:"How thick the waveform lines are"},waveformSampleSize:{title:"Waveform sample size",description:"How detailed the waveforms are (Note: high values might impact performance)"},waveformAmplifier:{title:"Waveform amplifier",description:"How vibrant the waveforms are"},toggleWaveformsRendering:{title:"Enable waveforms rendering",description:"Enable rendering the channel waveforms (colorful lines showing audio)"},toggleNotesRendering:{title:"Enable notes rendering",description:"Enable rendering of the falling notes when playing a MIDI file"},toggleDrawingActiveNotes:{title:"Enable drawing active notes",description:"Enable notes lighting up and glowing when they get pressed"},toggleDrawingVisualPitch:{title:"Enable drawing visual pitch",description:"Enable notes sliding left or right when the pitch wheel is applied"},toggleStabilizeWaveforms:{title:"Stabilize waveforms",description:"Enable oscilloscope triggering"}};var ew={title:"Keyboard settings",selectedChannel:{title:"Selected channel",description:"The channel keyboard sends messages to",channelOption:"Channel {0}"},keyboardSize:{title:"Keyboard size",description:"The range of keys shown on the keyboard. Adjusts the MIDI note size accordingly",full:"128 keys (full)",piano:"88 keys (piano)",fiveOctaves:"5 octaves",useSongKeyRange:"Use song's key range"},toggleTheme:{title:"Use dark theme",description:"Use the dark keyboard theme"}};var tw={title:"MIDI settings",midiInput:{title:"MIDI input",description:"The port to listen on for MIDI messages",disabled:"Disabled"},midiOutput:{title:"MIDI output",description:"The port to play the MIDI file to",disabled:"Use SpessaSynth"}};var iw={toggleButton:"Settings",mainTitle:"Program settings",rendererSettings:Xy,keyboardSettings:ew,midiSettings:tw,interfaceSettings:{title:"Interface settings",toggleTheme:{title:"Use dark theme",description:"Enable the dark theme for the interface"},selectLanguage:{title:"Language",description:"Change the program language"},layoutDirection:{title:"Layout direction",description:"The layout direction of the renderer and keyboard",values:{downwards:"Downwards",upwards:"Upwards",leftToRight:"Left to right",rightToLeft:"Right to left"}}}};var rw={toggleButton:{title:"Toggle music player mode",description:"Toggle the simplified UI version, hiding the keyboard and note visualizations"},currentlyPlaying:"Currently playing:",nothingPlaying:"Nothing is playing",nothingPlayingCopyright:"Upload a MIDI!"};var nw={voiceMeter:{title:"Voices: ",description:"The current amount of voices playing on channel {0}"},pitchBendMeter:{title:"Pitch: ",description:"The current pitch bend applied to channel {0}"},panMeter:{title:"Pan: ",description:"The current stereo panning applied to channel {0} (right-click to lock)"},expressionMeter:{title:"Expression: ",description:"The current expression (loudness) of channel {0} (right-click to lock)"},volumeMeter:{title:"Volume: ",description:"The current volume of channel {0} (right-click to lock)"},modulationWheelMeter:{title:"Mod wheel: ",description:"The current modulation (usually vibrato) depth of channel {0} (right-click to lock)"},chorusMeter:{title:"Chorus: ",description:"The current level of chorus effect applied to channel {0} (right-click to lock)"},reverbMeter:{title:"Reverb: ",description:"The current level of reverb effect applied to channel {0} (right-click to lock)"},transposeMeter:{title:"Transpose: ",description:"The current transposition (key shift) of channel {0}"},presetSelector:{description:"Change the patch (instrument) channel {0} is using"},presetReset:{description:"Unlock channel {0} to allow program changes"},soloButton:{description:"Solo on channel {0}"},muteButton:{description:"Mute/unmute channel {0}"},drumToggleButton:{description:"Toggle drums on channel {0}"}};var Aw={toggleButton:{title:"Synthesizer controller",description:"Show the synthesizer controller"},mainVoiceMeter:{title:"Voices: ",description:"The total amount of voices currently playing"},mainVolumeMeter:{title:"Volume: ",description:"The current master volume of the synthesizer"},mainPanMeter:{title:"Pan: ",description:"The current master stereo panning of the synthesizer"},mainTransposeMeter:{title:"Transpose: ",description:"Transposes the synthesizer (in semitones or keys)"},midiPanic:{title:"MIDI Panic",description:"Stops all voices immediately"},systemReset:{title:"System reset",description:"Resets all controllers to their default values"},blackMidiMode:{title:"Black MIDI mode",description:"Toggles the High Performance Mode, simplifying the look and killing the notes faster"},disableCustomVibrato:{title:"Disable custom vibrato",description:"Disables the custom (NRPN) Vibrato permamently. Reload the website to reenable it"},helpButton:{title:"Help",description:"Opens an external website with the usage guide"},channelController:nw};var sw={previousSong:"Previous song",nextSong:"Next song",loopThis:"Loop this song",playPause:"Play/pause",lyrics:{show:"Show lyrics",title:"Decoded text",noLyrics:"No lyrics available...",otherText:{title:"Other text"}}};var ow={button:{title:"Save audio",description:"Save audio as WAV, MIDI, SF2 or RMI file"},formats:{title:"Choose format",formats:{wav:{button:{title:"WAV audio",description:"Export the song with modifications as a .wav audio file"},options:{title:"WAV export options",confirm:"Export",normalizeVolume:{title:"Normalize volume",description:"Keep the volume at the same level, no matter how loud or quiet the MIDI is. Recommended."},additionalTime:{title:"Additional time (s)",description:"Additional time at the end of the song to allow for the sound to fade. (seconds)"},separateChannels:{title:"Separate channels",description:"Save each channel as a separate file. Useful for things like oscilloscope viewers. Note that this disables reverb and chorus.",saving:{title:"Channel files",save:"Save channel {0}"}}},exportMessage:{message:"Exporting WAV audio...",estimated:"Remaining:",convertWav:"Converting to wav..."}},midi:{button:{title:"Modified MIDI",description:"Export the MIDI file with the controller and instrument changes applied"}},soundfont:{button:{title:"Trimmed soundfont",description:"Export the soundfont trimmed to only use instruments and samples that the MIDI file uses"},options:{title:"SF export options",confirm:"Export",compress:{title:"Compress",description:"Compress samples with lossy Ogg Vorbis compression if uncompressed. Significantly reduces the file size.If the soundfont was already compressed, it won't be uncompressed even if this option is disabled"},quality:{title:"Compression quality",description:"The quality of compression. Higher is better"}}},rmidi:{button:{title:"Embedded MIDI (.rmi)",description:"Export the modified MIDI with the embedded trimmed soundfont as a single file. Note that this format isn't widely supported"},progress:{title:"Exporting embeded MIDI...",loading:"Loading Soundfont and MIDI...",modifyingMIDI:"Modifying MIDI...",modifyingSoundfont:"Trimming Soundfont...",saving:"Saving RMIDI...",done:"Done!"},options:{title:"RMIDI export options",confirm:"Export",compress:{title:"Compress",description:"Compress the Soundfont with lossy Ogg Vorbis compression. Significantly reduces the file size. Recommended."},quality:{title:"Compression quality",description:"The quality of compression. Higher is better."},bankOffset:{title:"Bank offset",description:"The bank offset of the file. Value of 0 is recommended. Only change if you know what you're doing."}}}},metadata:{songTitle:{title:"Title:",description:"The song's title"},album:{title:"Album:",description:"The song's album"},artist:{title:"Artist:",description:"The song's artist"},albumCover:{title:"Album cover:",description:"The song's album cover"},creationDate:{title:"Created:",description:"The song's creation date"},genre:{title:"Genre:",description:"The song's genre"},comment:{title:"Comment:",description:"The song's comment"},duration:{title:"Duration:",description:"The song's duration"}}}};var $w={localeName:"English",titleMessage:"SpessaSynth: SoundFont2 Javascript Synthesizer",demoTitleMessage:"SpessaSynth: SoundFont2 Javascript Synthesizer Online Demo",synthInit:{genericLoading:"Loading...",loadingSoundfont:"Loading SoundFont...",loadingBundledSoundfont:"Loading bundled SoundFont...",startingSynthesizer:"Starting Synthesizer...",savingSoundfont:"Saving SoundFont for reuse...",noWebAudio:"Your browser does not support Web Audio.",done:"Ready!"},midiUploadButton:"Upload your MIDI files",exportAudio:ow,demoSoundfontUploadButton:"Upload the soundfont",demoGithubPage:"Project's page",demoSongButton:"Demo Song",credits:"Credits",warnings:{outOfMemory:"Your browser ran out of memory. Consider using Firefox or SF3 soundfont instead. (see console for error).",noMidiSupport:"MIDI Inputs are not supported by this browser, this functionality will not be available. Consider using Chrome or Firefox.",chromeMobile:"SpessaSynth performs poorly on Chrome Mobile. Consider using Firefox Android instead.",warning:"Warning"},hideTopBar:{title:"Hide top bar",description:"Hide the top (title) bar to provide a more seamless experience"},musicPlayerMode:rw,settings:iw,synthesizerController:Aw,sequencerController:sw};var aw={title:"Ustawienia wizualizacji",noteFallingTime:{title:"Czas spadania nut (ms)",description:"Jak szybko spadaj\u0105 z g\xF3ry nuty (w milisekundach)"},waveformThickness:{title:"Grubo\u015B\u0107 lini fal (px)",description:"Jak grube s\u0105 linie fal d\u017Awi\u0119kowych"},waveformSampleSize:{title:"Rozmiar pr\xF3bki fali",description:"Jak szczeg\xF3\u0142owe s\u0105 linei fal d\u017Awi\u0119kowcyh (Uwaga: wysokie warto\u015Bci mog\u0105 pogorszy\u0107 wydajno\u015B\u0107)"},waveformAmplifier:{title:"Wzmacniasz fal",description:"Jak '\u017Cywe' s\u0105 fale. Kontroluje ich amplitud\u0119"},toggleWaveformsRendering:{title:"W\u0142\u0105cz rysowanie fal",description:"W\u0142\u0105cz rysowanie fal d\u017Awi\u0119kowych (16-tu kolorowych linii z ty\u0142u)"},toggleNotesRendering:{title:"W\u0142\u0105cz rysowanie nut",description:"W\u0142\u0105cz rysowanie spadaj\u0105cych nut podczas odtwarzania pliku MIDI"},toggleDrawingActiveNotes:{title:"W\u0142\u0105cz rysowanie aktywnych nut",description:"W\u0142\u0105cz efekt pod\u015Bwietlania si\u0119 nut przy aktywacji"},toggleDrawingVisualPitch:{title:"W\u0142\u0105cz wizualizacj\u0119 wysoko\u015Bci tonu",description:"W\u0142\u0105cz przesuwanie nut w lewo lub w prawo gdy wysoko\u015B\u0107 nut jest zmieniana"},toggleStabilizeWaveforms:{title:"W\u0142\u0105cz stabilizacj\u0119 fal",description:"W\u0142\u0105cz stabilizowanie fal d\u017Awi\u0119kowych"}};var lw={title:"Ustawienia pianina",selectedChannel:{title:"Wybrany kana\u0142",description:"Kana\u0142, do kt\xF3rego b\u0119dzie pod\u0142\u0105czone pianino",channelOption:"Kana\u0142 {0}"},keyboardSize:{title:"Rozmiar pianina",description:"Zakres klawiszy widocznych na pianine. Dostosowuje r\xF3wnie\u017C szeroko\u015B\u0107 wizualizowanych nut",full:"128 klawiszy (pe\u0142en zakres)",piano:"88 klawiszy (fortepian)",fiveOctaves:"5 oktaw",useSongKeyRange:"U\u017Cyj zakresu utworu"},toggleTheme:{title:"W\u0142\u0105cz ciemny motyw",description:"W\u0142\u0105cz ciemny motyw wbudowanego pianina"}};var cw={title:"Ustawienia MIDI",midiInput:{title:"Wej\u015Bcie MIDI",description:"Port MIDI, kt\xF3ry b\u0119dzie nas\u0142uchiwany",disabled:"Wy\u0142\u0105czony"},midiOutput:{title:"Wyj\u015Bcie MIDI",description:"Port MIDI, do kt\xF3rego b\u0119dzie grany utw\xF3r",disabled:"U\u017Cyj SpessaSynth"}};var gw={toggleButton:"Ustawienia",mainTitle:"Ustawienia programu",rendererSettings:aw,keyboardSettings:lw,midiSettings:cw,interfaceSettings:{title:"Ustawienia interfejsu",toggleTheme:{title:"W\u0142\u0105cz ciemny motyw",description:"W\u0142\u0105cz ciemny motyw programu"},selectLanguage:{title:"J\u0119zyk",description:"Zmie\u0144 j\u0119zyk programu"},layoutDirection:{title:"Uk\u0142ad",description:"Kierunek uk\u0142adu wizualizacji i pianina",values:{downwards:"W d\xF3\u0142",upwards:"W g\xF3r\u0119",leftToRight:"Od lewej do prawej",rightToLeft:"Od prawej do lewej"}}}};var hw={toggleButton:{title:"Prze\u0142\u0105cz tryb odtwarzania muzyki",description:"Prze\u0142\u0105cz uproszczon\u0105 wersj\u0119 interfejsu, ukrywaj\u0105c pianino i wizualizacj\u0119 nut"},currentlyPlaying:"Teraz gramy:",nothingPlaying:"Nic teraz nie gra",nothingPlayingCopyright:"Wgraj jakie\u015B MIDI!"};var fw={voiceMeter:{title:"D\u017Awi\u0119ki: ",description:"Aktualna ilo\u015B\u0107 d\u017Awi\u0119k\xF3w na kanale {0}"},pitchBendMeter:{title:"Wysoko\u015B\u0107: ",description:"Aktualna wysoko\u015B\u0107 tonu na kanale {0}"},panMeter:{title:"Stereo: ",description:"Aktualny efekt stereo na kanale {0} (kliknij prawym aby zablokowa\u0107)"},expressionMeter:{title:"Ekspresja: ",description:"Aktualna ekspresja (g\u0142o\u015Bno\u015Bc) kana\u0142u {0} (kliknij prawym aby zablokowa\u0107)"},volumeMeter:{title:"G\u0142o\u015Bno\u015B\u0107: ",description:"Aktualna g\u0142o\u015Bno\u015B\u0107 kana\u0142u {0} (kliknij prawym aby zablokowa\u0107)"},modulationWheelMeter:{title:"Modulacja: ",description:"Aktualna g\u0142\u0119boko\u015B\u0107 modulacji (zazwyczaj vibrato) kana\u0142u {0} (kliknij prawym aby zablokowa\u0107)"},chorusMeter:{title:"Ch\xF3r: ",description:"Aktualny efekt ch\xF3ru na kanale {0} (kliknij prawym aby zablokowa\u0107)"},reverbMeter:{title:"Pog\u0142os: ",description:"Aktualny efekt pog\u0142osu na kanale {0} (kliknij prawym aby zablokowa\u0107)"},transposeMeter:{title:"Transpozycja: ",description:"Aktualna transpozycja (przesuni\u0119cie klawiszy) kana\u0142u {0}"},presetSelector:{description:"Zmie\u0144 patch (instrument), kt\xF3rego u\u017Cywa kana\u0142 {0}"},presetReset:{description:"Odblokuj kana\u0142 {0}, aby program m\xF3g\u0142 go zmienia\u0107"},soloButton:{description:"Solo na kanale {0}"},muteButton:{description:"Wycisz/odcisz kana\u0142 {0}"},drumToggleButton:{description:"Prze\u0142\u0105cz perkusj\u0119 na kanale {0}"}};var uw={toggleButton:{title:"Kontroler syntezatora",description:"Poka\u017C kontroler syntezatora"},mainVoiceMeter:{title:"D\u017Awi\u0119ki: ",description:"Ca\u0142kowita ilo\u015B\u0107 aktualnie odtwarzanych d\u017Awi\u0119k\xF3w"},mainVolumeMeter:{title:"G\u0142o\u015Bno\u015B\u0107: ",description:"Aktualna g\u0142o\u015Bno\u015B\u0107 syntezatora"},mainPanMeter:{title:"Stereo: ",description:"Aktualna pozycja stereo syntezatora"},mainTransposeMeter:{title:"Transpozycja: ",description:"Transpozycjonuje syntezator (w semitonach)"},midiPanic:{title:"MIDI Panic",description:"Zatrzymuje wszystkie d\u017Awi\u0119ki"},systemReset:{title:"Reset systemu",description:"Resetuje wszystkie kontroleru do ich domy\u015Blnych warto\u015Bci"},blackMidiMode:{title:"Tryb black MIDI",description:"Prze\u0142\u0105cza tryb wysokiej wydajno\u015Bci, upraszczaj\u0105c wygl\u0105d i pogarszaj\u0105c jako\u015B\u0107 d\u017Awi\u0119ku"},disableCustomVibrato:{title:"Wy\u0142\u0105cz niestandardowe vibrato",description:"Wy\u0142\u0105cza niestandardowe (NRPN) vibrato. Wymaga prze\u0142adowania strony aby je ponownie w\u0142\u0105czy\u0107"},helpButton:{title:"Pomoc",description:"Poka\u017C instrukcj\u0119 obs\u0142ugi"},channelController:fw};var Iw={previousSong:"Poprzedni utw\xF3r",nextSong:"Nast\u0119pny utw\xF3r",loopThis:"Odtwarzaj w p\u0119tli",playPause:"Odtw\xF3rz/wstrzymaj",lyrics:{show:"Poka\u017C tekst",title:"Odczytany tekst",noLyrics:"Brak dost\u0119pnego tekstu...",otherText:{title:"Inny tekst"}}};var dw={button:{title:"Zapisz utw\xF3r",description:"Zapisz utw\xF3r jako plik WAV, MIDI, SF2 lub RMI"},formats:{title:"Wybierz format",formats:{wav:{button:{title:"Audio WAV",description:"Eksportuj utw\xF3r ze zmianami jako plik audio .wav"},options:{title:"Opcje eksportu audio",confirm:"Eksportuj",normalizeVolume:{title:"Normalizuj g\u0142o\u015Bno\u015B\u0107",description:"Eksportuj audio z tak\u0105 sam\u0105 g\u0142o\u015Bno\u015Bci\u0105, niezale\u017Cnie od g\u0142o\u015Bno\u015Bci MIDI."},additionalTime:{title:"Dodatkowy czas (s)",description:"Dodatkowy czas na ko\u0144cu utworu aby pozwoli\u0107 na wyciszenie si\u0119 d\u017Awi\u0119ku. (sekundy)"},separateChannels:{title:"Rozdziel kana\u0142y",description:"Zapisz ka\u017Cdy kana\u0142 w osobnym pliuku. Przydatne dla rzeczy jak widok oscyloskopowy. Nale\u017Cy pami\u0119ta\u0107 \u017Ce to wy\u0142\u0105cza ekfet pog\u0142osu i ch\xF3ru",saving:{title:"Pliki audio kana\u0142\xF3w",save:"Zapisz kana\u0142 {0}"}}},exportMessage:{message:"Eksportowanie audio...",estimated:"Pozosta\u0142o:",convertWav:"Konwertowanie do wav..."}},midi:{button:{title:"Zmodyfikowane MIDI",description:"Eksportuj plik MIDI wraz ze zmianami instrument\xF3w i kontroler\xF3w"}},soundfont:{button:{title:"Zmniejszony soundfont",description:"Eksportuj soundfont zawieraj\u0105cy tylko klawisze u\u017Cyte w MIDI"},options:{title:"Opcje eksportu soundfonta",confirm:"Eksportuj",compress:{title:"Kompresuj",description:"Zkompresuj pr\xF3bki kt\xF3re nie s\u0105 zkompresowane przy u\u017Cyciu stratnego kodeka Ogg Vorbis. Znacznie zmniejsza rozmiar pliku.Je\u015Bli soundfont by\u0142 ju\u017C skompresowany, nie zostanie zdekompresowany nawet gdy ta opcja jest wy\u0142\u0105czona"},quality:{title:"Jako\u015B\u0107 kompresji",description:"Jako\u015B\u0107 skompresowanych pr\xF3bek. Im wy\u017Csza tym lepsza"}}},rmidi:{button:{title:"Osadzone MIDI (.rmi)",description:"Eksportuj zmodyfikowane MIDI wraz ze zmniejszonym soundfontem jako jeden plik. Uwaga: ten format nie jest szeroko wspierany"},progress:{title:"Exportowanie osadzonego MIDI...",loading:"Wczytywanie soundfonta i MIDI...",modifyingMIDI:"Modyfikowanie MIDI...",modifyingSoundfont:"Zmniejszanie Soundfonta...",saving:"Zapisywanie RMIDI...",done:"Gotowe!"},options:{title:"Opcje eksportu RMIDI",confirm:"Eksportuj",compress:{title:"Kompresuj",description:"Skompresuj osadzonego soundfonta za pomoc\u0105 stratnego kodeka Ogg Vorbis. Znacznie zmniejsza rozmiar pliku. Zalecane."},quality:{title:"Jako\u015B\u0107 kompresji",description:"Jako\u015B\u0107 skompresowanych pr\xF3bek. Im wy\u017Csza tym lepsza"},bankOffset:{title:"Przesuni\u0119cie banku",description:"Przesuni\u0119cie banku w pliku. Zalecane 0. Zmie\u0144 tylko je\u015Bli wiesz co robisz."}}}},metadata:{songTitle:{title:"Tytu\u0142:",description:"Tytu\u0142 utworu"},album:{title:"Album:",description:"Album utworu"},artist:{title:"Tw\xF3rca:",description:"Tw\xF3rca utworu"},albumCover:{title:"Ok\u0142adka albumu:",description:"Ok\u0142adka albumu utworu"},creationDate:{title:"Stworzono:",description:"Data stworzenia utworu"},genre:{title:"Gatunek:",description:"Gatunek utworu"},comment:{title:"Komentarz:",description:"Komentarz do utworu"},duration:{title:"Czas trwania:",description:"Czas trwania utworu"}}}};var Ew={localeName:"Polski",titleMessage:"SpessaSynth: JavaScriptowy Syntezator SoundFont2",demoTitleMessage:"SpessaSynth: JavaScriptowy Syntezator SoundFont2 Wersja Demo",synthInit:{genericLoading:"Wczytywanie...",loadingSoundfont:"Wczytywanie SoundFonta...",loadingBundledSoundfont:"Wczytywanie wbudowanego SoundFonta...",startingSynthesizer:"Uruchamianie syntezatora...",savingSoundfont:"Zapisywanie SoundFonta do przegl\u0105darki...",noWebAudio:"Twoja przegl\u0105darka nie wspiera Web Audio.",done:"Gotowe!"},midiUploadButton:"Wgraj Twoje pliki MIDI",midiRenderButton:{title:"Eksportuj audio",description:"Zapisz audio do pliku WAV lub MIDI"},exportAudio:dw,demoSoundfontUploadButton:"Wgraj SoundFonta",demoGithubPage:"Strona projektu",demoSongButton:"Piosenka demo",credits:"Tw\xF3rcy",warnings:{outOfMemory:"Twojej przegl\u0105darce sko\u0144czy\u0142a si\u0119 pami\u0119\u0107. Rozwa\u017C u\u017Cycie Firefoxa albo plik\xF3w SF3. (Zobacz b\u0142\u0105d w konsoli)",noMidiSupport:"Twoja przegl\u0105darka nie wspiera Web MIDI. Korzystanie z port\xF3w MIDI nie b\u0119dzie dost\u0119pne. Rozwa\u017C u\u017Cycie Chrome albo Firefoxa.",chromeMobile:"SpessaSynth dzia\u0142a wolno na Chromie na telefon. Rozwa\u017C u\u017Cycie Firefoxa Android.",warning:"Uwaga"},hideTopBar:{title:"Ukryj g\xF3rny pasek",description:"Ukryj pasek tytu\u0142owy w celu poprawy widoczno\u015Bci na pionowych ekranach"},musicPlayerMode:hw,settings:gw,synthesizerController:uw,sequencerController:Iw};var Cw={title:"\u30EC\u30F3\u30C0\u30E9\u30FC\u8A2D\u5B9A",noteFallingTime:{title:"\u30CE\u30FC\u30C8\u306E\u843D\u4E0B\u6642\u9593\uFF08\u30DF\u30EA\u79D2\uFF09",description:"\u30CE\u30FC\u30C8\u304C\u843D\u3061\u308B\u901F\u3055\uFF08\u8996\u899A\u7684\u306B\uFF09"},waveformThickness:{title:"\u6CE2\u5F62\u306E\u7DDA\u306E\u592A\u3055\uFF08\u30D4\u30AF\u30BB\u30EB\uFF09",description:"\u6CE2\u5F62\u306E\u7DDA\u306E\u592A\u3055"},waveformSampleSize:{title:"\u6CE2\u5F62\u306E\u30B5\u30F3\u30D7\u30EB\u30B5\u30A4\u30BA",description:"\u6CE2\u5F62\u306E\u8A73\u7D30\u5EA6\uFF08\u6CE8\uFF1A\u9AD8\u3044\u5024\u306F\u30D1\u30D5\u30A9\u30FC\u30DE\u30F3\u30B9\u306B\u5F71\u97FF\u3092\u4E0E\u3048\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\uFF09"},waveformAmplifier:{title:"\u6CE2\u5F62\u306E\u5897\u5E45\u5668",description:"\u6CE2\u5F62\u306E\u9BAE\u3084\u304B\u3055"},toggleWaveformsRendering:{title:"\u6CE2\u5F62\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u306E\u5207\u308A\u66FF\u3048",description:"\u30C1\u30E3\u30F3\u30CD\u30EB\u6CE2\u5F62\u306E\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u3092\u5207\u308A\u66FF\u3048\u307E\u3059\uFF08\u30AA\u30FC\u30C7\u30A3\u30AA\u3092\u8868\u793A\u3059\u308B\u30AB\u30E9\u30D5\u30EB\u306A\u7DDA\uFF09"},toggleNotesRendering:{title:"\u30CE\u30FC\u30C8\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u306E\u5207\u308A\u66FF\u3048",description:"MIDI\u30D5\u30A1\u30A4\u30EB\u3092\u518D\u751F\u3059\u308B\u969B\u306E\u843D\u4E0B\u30CE\u30FC\u30C8\u306E\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},toggleDrawingActiveNotes:{title:"\u30A2\u30AF\u30C6\u30A3\u30D6\u30CE\u30FC\u30C8\u306E\u63CF\u753B\u3092\u5207\u308A\u66FF\u3048",description:"\u30CE\u30FC\u30C8\u304C\u62BC\u3055\u308C\u305F\u3068\u304D\u306B\u5149\u308A\u8F1D\u304F\u63CF\u753B\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},toggleDrawingVisualPitch:{title:"\u30D3\u30B8\u30E5\u30A2\u30EB\u30D4\u30C3\u30C1\u63CF\u753B\u306E\u5207\u308A\u66FF\u3048",description:"\u30D4\u30C3\u30C1\u30DB\u30A4\u30FC\u30EB\u304C\u9069\u7528\u3055\u308C\u305F\u3068\u304D\u306B\u30CE\u30FC\u30C8\u304C\u5DE6\u53F3\u306B\u30B9\u30E9\u30A4\u30C9\u3059\u308B\u63CF\u753B\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},toggleStabilizeWaveforms:{title:"\u6CE2\u5F62\u3092\u5B89\u5B9A\u3055\u305B\u308B",description:"\u30AA\u30FC\u30C7\u30A3\u30AA\u6CE2\u5F62\u3092\u5B89\u5B9A\u3055\u305B\u308B\u8A2D\u5B9A\u3092\u5207\u308A\u66FF\u3048\u3001\u6CE2\u5F62\u3092\u56FA\u5B9A\u3057\u307E\u3059\u3002"}};var Bw={title:"\u30AD\u30FC\u30DC\u30FC\u30C9\u8A2D\u5B9A",selectedChannel:{title:"\u9078\u629E\u3055\u308C\u305F\u30C1\u30E3\u30F3\u30CD\u30EB",description:"\u30AD\u30FC\u30DC\u30FC\u30C9\u304C\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u9001\u4FE1\u3059\u308B\u30C1\u30E3\u30F3\u30CD\u30EB",channelOption:"\u30C1\u30E3\u30F3\u30CD\u30EB {0}"},keyboardSize:{title:"\u30AD\u30FC\u30DC\u30FC\u30C9\u30B5\u30A4\u30BA",description:"\u30AD\u30FC\u30DC\u30FC\u30C9\u306B\u8868\u793A\u3055\u308C\u308B\u30AD\u30FC\u306E\u7BC4\u56F2\u3002MIDI\u30CE\u30FC\u30C8\u306E\u30B5\u30A4\u30BA\u306B\u5FDC\u3058\u3066\u8ABF\u6574\u3055\u308C\u307E\u3059",full:"128\u30AD\u30FC\uFF08\u5168\u4F53\uFF09",piano:"88\u30AD\u30FC\uFF08\u30D4\u30A2\u30CE\uFF09",fiveOctaves:"5\u30AA\u30AF\u30BF\u30FC\u30D6",useSongKeyRange:"\u66F2\u306E\u30AD\u30FC\u7BC4\u56F2\u3092\u4F7F\u7528"},toggleTheme:{title:"\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048",description:"\u30AD\u30FC\u30DC\u30FC\u30C9\u306E\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"}};var mw={title:"MIDI\u8A2D\u5B9A",midiInput:{title:"MIDI\u5165\u529B",description:"MIDI\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u53D7\u4FE1\u3059\u308B\u30DD\u30FC\u30C8",disabled:"\u7121\u52B9"},midiOutput:{title:"MIDI\u51FA\u529B",description:"MIDI\u30D5\u30A1\u30A4\u30EB\u3092\u518D\u751F\u3059\u308B\u30DD\u30FC\u30C8",disabled:"SpessaSynth\u3092\u4F7F\u7528"}};var pw={toggleButton:"\u8A2D\u5B9A",mainTitle:"\u30D7\u30ED\u30B0\u30E9\u30E0\u8A2D\u5B9A",rendererSettings:Cw,keyboardSettings:Bw,midiSettings:mw,interfaceSettings:{title:"\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u8A2D\u5B9A",toggleTheme:{title:"\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048",description:"\u30D7\u30ED\u30B0\u30E9\u30E0\u306E\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},selectLanguage:{title:"\u8A00\u8A9E",description:"\u30D7\u30ED\u30B0\u30E9\u30E0\u306E\u8A00\u8A9E\u3092\u5909\u66F4\u3057\u307E\u3059"},layoutDirection:{title:"\u30EC\u30A4\u30A2\u30A6\u30C8\u306E\u65B9\u5411",description:"\u30EC\u30F3\u30C0\u30E9\u30FC\u3068\u30AD\u30FC\u30DC\u30FC\u30C9\u306E\u30EC\u30A4\u30A2\u30A6\u30C8\u65B9\u5411",values:{downwards:"\u4E0B\u5411\u304D",upwards:"\u4E0A\u5411\u304D",leftToRight:"\u5DE6\u304B\u3089\u53F3",rightToLeft:"\u53F3\u304B\u3089\u5DE6"}}}};var Qw={toggleButton:{title:"\u97F3\u697D\u30D7\u30EC\u30A4\u30E4\u30FC\u30E2\u30FC\u30C9\u306E\u5207\u308A\u66FF\u3048",description:"\u7C21\u7565\u5316\u3055\u308C\u305FUI\u30D0\u30FC\u30B8\u30E7\u30F3\u306B\u5207\u308A\u66FF\u3048\u3001\u30AD\u30FC\u30DC\u30FC\u30C9\u3068\u30CE\u30FC\u30C8\u306E\u8996\u899A\u5316\u3092\u96A0\u3057\u307E\u3059"},currentlyPlaying:"\u518D\u751F\u4E2D:",nothingPlaying:"\u518D\u751F\u3057\u3066\u3044\u308B\u3082\u306E\u306F\u3042\u308A\u307E\u305B\u3093",nothingPlayingCopyright:"MIDI\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3057\u3066\u304F\u3060\u3055\u3044\uFF01"};var yw={voiceMeter:{title:"\u30DC\u30A4\u30B9: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3067\u518D\u751F\u4E2D\u306E\u30DC\u30A4\u30B9\u306E\u73FE\u5728\u306E\u6570"},pitchBendMeter:{title:"\u30D4\u30C3\u30C1: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30D4\u30C3\u30C1\u30D9\u30F3\u30C9"},panMeter:{title:"\u30D1\u30F3: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30B9\u30C6\u30EC\u30AA\u30D1\u30F3\u30CB\u30F3\u30B0\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},expressionMeter:{title:"\u30A8\u30AF\u30B9\u30D7\u30EC\u30C3\u30B7\u30E7\u30F3: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u8868\u73FE\uFF08\u97F3\u91CF\uFF09\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},volumeMeter:{title:"\u30DC\u30EA\u30E5\u30FC\u30E0: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u97F3\u91CF\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},modulationWheelMeter:{title:"\u30E2\u30B8\u30E5\u30EC\u30FC\u30B7\u30E7\u30F3\u30DB\u30A4\u30FC\u30EB: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u30E2\u30B8\u30E5\u30EC\u30FC\u30B7\u30E7\u30F3\uFF08\u901A\u5E38\u306F\u30D3\u30D6\u30E9\u30FC\u30C8\uFF09\u306E\u6DF1\u3055\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},chorusMeter:{title:"\u30B3\u30FC\u30E9\u30B9: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30B3\u30FC\u30E9\u30B9\u30A8\u30D5\u30A7\u30AF\u30C8\u306E\u30EC\u30D9\u30EB\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},reverbMeter:{title:"\u30EA\u30D0\u30FC\u30D6: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30EA\u30D0\u30FC\u30D6\u30A8\u30D5\u30A7\u30AF\u30C8\u306E\u30EC\u30D9\u30EB\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},transposeMeter:{title:"\u30C8\u30E9\u30F3\u30B9\u30DD\u30FC\u30BA: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u79FB\u8ABF\uFF08\u30AD\u30FC\u30B7\u30D5\u30C8\uFF09"},presetSelector:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u304C\u4F7F\u7528\u3059\u308B\u30D1\u30C3\u30C1\uFF08\u697D\u5668\uFF09\u3092\u5909\u66F4"},presetReset:{description:"\u30D7\u30ED\u30B0\u30E9\u30E0\u5909\u66F4\u3092\u8A31\u53EF\u3059\u308B\u305F\u3081\u306B\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u30ED\u30C3\u30AF\u3092\u89E3\u9664"},soloButton:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3092\u5358\u72EC\u518D\u751F"},muteButton:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3092\u30DF\u30E5\u30FC\u30C8/\u30DF\u30E5\u30FC\u30C8\u89E3\u9664"},drumToggleButton:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3067\u30C9\u30E9\u30E0\u3092\u5207\u308A\u66FF\u3048"}};var ww={toggleButton:{title:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC\u3092\u8868\u793A"},mainVoiceMeter:{title:"\u30DC\u30A4\u30B9: ",description:"\u73FE\u5728\u518D\u751F\u4E2D\u306E\u30DC\u30A4\u30B9\u306E\u7DCF\u6570"},mainVolumeMeter:{title:"\u30DC\u30EA\u30E5\u30FC\u30E0: ",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u306E\u73FE\u5728\u306E\u30DE\u30B9\u30BF\u30FC\u30DC\u30EA\u30E5\u30FC\u30E0"},mainPanMeter:{title:"\u30D1\u30F3: ",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u306E\u73FE\u5728\u306E\u30DE\u30B9\u30BF\u30FC\u30B9\u30C6\u30EC\u30AA\u30D1\u30F3\u30CB\u30F3\u30B0"},mainTransposeMeter:{title:"\u30C8\u30E9\u30F3\u30B9\u30DD\u30FC\u30BA: ",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u3092\u79FB\u8ABF\u3057\u307E\u3059\uFF08\u30BB\u30DF\u30C8\u30FC\u30F3\u307E\u305F\u306F\u30AD\u30FC\uFF09"},midiPanic:{title:"MIDI\u30D1\u30CB\u30C3\u30AF",description:"\u3059\u3079\u3066\u306E\u30DC\u30A4\u30B9\u3092\u5373\u5EA7\u306B\u505C\u6B62"},systemReset:{title:"\u30B7\u30B9\u30C6\u30E0\u30EA\u30BB\u30C3\u30C8",description:"\u3059\u3079\u3066\u306E\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC\u3092\u30C7\u30D5\u30A9\u30EB\u30C8\u5024\u306B\u30EA\u30BB\u30C3\u30C8"},blackMidiMode:{title:"\u30D6\u30E9\u30C3\u30AFMIDI\u30E2\u30FC\u30C9",description:"\u9AD8\u6027\u80FD\u30E2\u30FC\u30C9\u3092\u5207\u308A\u66FF\u3048\u3001\u898B\u305F\u76EE\u3092\u7C21\u7D20\u5316\u3057\u3001\u30CE\u30FC\u30C8\u3092\u901F\u304F\u6D88\u53BB"},disableCustomVibrato:{title:"\u30AB\u30B9\u30BF\u30E0\u30D3\u30D6\u30E9\u30FC\u30C8\u3092\u7121\u52B9\u5316",description:"\u30AB\u30B9\u30BF\u30E0\uFF08NRPN\uFF09\u30D3\u30D6\u30E9\u30FC\u30C8\u3092\u6C38\u4E45\u306B\u7121\u52B9\u5316\u3002\u518D\u5EA6\u6709\u52B9\u5316\u3059\u308B\u306B\u306F\u30A6\u30A7\u30D6\u30B5\u30A4\u30C8\u3092\u30EA\u30ED\u30FC\u30C9"},helpButton:{title:"\u30D8\u30EB\u30D7",description:"\u4F7F\u7528\u30AC\u30A4\u30C9\u3092\u8868\u793A\u3057\u307E\u3059"},channelController:yw};var kw={previousSong:"\u524D\u306E\u66F2",nextSong:"\u6B21\u306E\u66F2",loopThis:"\u3053\u306E\u66F2\u3092\u30EB\u30FC\u30D7",playPause:"\u518D\u751F/\u4E00\u6642\u505C\u6B62",lyrics:{show:"\u6B4C\u8A5E\u3092\u8868\u793A",title:"\u30C7\u30B3\u30FC\u30C9\u3055\u308C\u305F\u30C6\u30AD\u30B9\u30C8",noLyrics:"\u6B4C\u8A5E\u304C\u3042\u308A\u307E\u305B\u3093...",otherText:{title:"\u305D\u306E\u4ED6\u306E\u30C6\u30AD\u30B9\u30C8"}}};var vw={button:{title:"\u97F3\u58F0\u3092\u4FDD\u5B58",description:"\u97F3\u58F0\u3092WAV\u3001MIDI\u3001SF2\u3001\u307E\u305F\u306FRMI\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u4FDD\u5B58"},formats:{title:"\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u3092\u9078\u629E",formats:{wav:{button:{title:"WAV\u97F3\u58F0",description:"\u5909\u66F4\u3092\u52A0\u3048\u305F\u66F2\u3092.wav\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059"},options:{title:"\u97F3\u58F0\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3",confirm:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",normalizeVolume:{title:"\u97F3\u91CF\u306E\u6B63\u898F\u5316",description:"MIDI\u306E\u97F3\u91CF\u306B\u304B\u304B\u308F\u3089\u305A\u3001\u97F3\u91CF\u3092\u4E00\u5B9A\u306B\u4FDD\u3061\u307E\u3059\u3002\u63A8\u5968\u8A2D\u5B9A\u3067\u3059\u3002"},additionalTime:{title:"\u8FFD\u52A0\u6642\u9593\uFF08\u79D2\uFF09",description:"\u97F3\u304C\u30D5\u30A7\u30FC\u30C9\u30A2\u30A6\u30C8\u3059\u308B\u305F\u3081\u306B\u66F2\u306E\u6700\u5F8C\u306B\u8FFD\u52A0\u3059\u308B\u6642\u9593\u3067\u3059\u3002 (\u79D2)"},separateChannels:{title:"\u30C1\u30E3\u30F3\u30CD\u30EB\u3092\u5206\u5272",description:"\u5404\u30C1\u30E3\u30F3\u30CD\u30EB\u3092\u5225\u3005\u306E\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u4FDD\u5B58\u3057\u307E\u3059\u3002\u30AA\u30B7\u30ED\u30B9\u30B3\u30FC\u30D7\u30D3\u30E5\u30FC\u30A2\u306A\u3069\u306B\u4FBF\u5229\u3067\u3059\u3002\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u4F7F\u7528\u3059\u308B\u3068\u30EA\u30D0\u30FC\u30D6\u3084\u30B3\u30FC\u30E9\u30B9\u304C\u7121\u52B9\u306B\u306A\u308A\u307E\u3059\u3002",saving:{title:"\u30C1\u30E3\u30F3\u30CD\u30EB\u30D5\u30A1\u30A4\u30EB",save:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3092\u4FDD\u5B58"}}},exportMessage:{message:"\u97F3\u58F0\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u3059...",estimated:"\u6B8B\u308A\u6642\u9593:",convertWav:"WAV\u306B\u5909\u63DB\u4E2D..."}},midi:{button:{title:"\u5909\u66F4\u3055\u308C\u305FMIDI",description:"\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC\u3068\u697D\u5668\u306E\u5909\u66F4\u304C\u9069\u7528\u3055\u308C\u305FMIDI\u30D5\u30A1\u30A4\u30EB\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059"}},soundfont:{button:{title:"\u30C8\u30EA\u30DF\u30F3\u30B0\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8",description:"MIDI\u30D5\u30A1\u30A4\u30EB\u3067\u4F7F\u7528\u3055\u308C\u3066\u3044\u308B\u697D\u5668\u3068\u30B5\u30F3\u30D7\u30EB\u3060\u3051\u306B\u30C8\u30EA\u30DF\u30F3\u30B0\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059"},options:{title:"SF\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3",confirm:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",compress:{title:"\u5727\u7E2E",description:"\u672A\u5727\u7E2E\u306E\u30B5\u30F3\u30D7\u30EB\u3092Ogg Vorbis\u306E\u30ED\u30B9\u5727\u7E2E\u3067\u5727\u7E2E\u3057\u307E\u3059\u3002\u30D5\u30A1\u30A4\u30EB\u30B5\u30A4\u30BA\u304C\u5927\u5E45\u306B\u524A\u6E1B\u3055\u308C\u307E\u3059\u3002\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u304C\u3059\u3067\u306B\u5727\u7E2E\u3055\u308C\u3066\u3044\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u518D\u5727\u7E2E\u3055\u308C\u308B\u3053\u3068\u306F\u3042\u308A\u307E\u305B\u3093"},quality:{title:"\u5727\u7E2E\u54C1\u8CEA",description:"\u5727\u7E2E\u306E\u54C1\u8CEA\u3067\u3059\u3002\u9AD8\u3044\u307B\u3069\u826F\u3044"}}},rmidi:{button:{title:"\u57CB\u3081\u8FBC\u307E\u308C\u305FMIDI (.rmi)",description:"\u5909\u66F4\u3055\u308C\u305FMIDI\u3068\u30C8\u30EA\u30DF\u30F3\u30B0\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u30921\u3064\u306E\u30D5\u30A1\u30A4\u30EB\u306B\u57CB\u3081\u8FBC\u3093\u3067\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002 \u3053\u306E\u5F62\u5F0F\u306F\u5E83\u304F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u306A\u3044\u3053\u3068\u306B\u6CE8\u610F\u3057\u3066\u304F\u3060\u3055\u3044"},progress:{title:"\u57CB\u3081\u8FBC\u307E\u308C\u305FMIDI\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u4E2D...",loading:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3068MIDI\u3092\u8AAD\u307F\u8FBC\u307F\u4E2D...",modifyingMIDI:"MIDI\u3092\u4FEE\u6B63\u4E2D...",modifyingSoundfont:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u30C8\u30EA\u30DF\u30F3\u30B0\u4E2D...",saving:"RMIDI\u3092\u4FDD\u5B58\u4E2D...",done:"\u5B8C\u4E86\u3057\u307E\u3057\u305F\uFF01"},options:{title:"RMIDI\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3",confirm:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",compress:{title:"\u5727\u7E2E",description:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092Ogg Vorbis\u306E\u30ED\u30B9\u5727\u7E2E\u3067\u5727\u7E2E\u3057\u307E\u3059\u3002\u30D5\u30A1\u30A4\u30EB\u30B5\u30A4\u30BA\u304C\u5927\u5E45\u306B\u524A\u6E1B\u3055\u308C\u307E\u3059\u3002\u63A8\u5968\u8A2D\u5B9A\u3067\u3059\u3002"},quality:{title:"\u5727\u7E2E\u54C1\u8CEA",description:"\u5727\u7E2E\u306E\u54C1\u8CEA\u3067\u3059\u3002\u9AD8\u3044\u307B\u3069\u826F\u3044"},bankOffset:{title:"\u9280\u884C\u306E\u76F8\u6BBA",description:"\u30D5\u30A1\u30A4\u30EB\u306E\u30D0\u30F3\u30AF \u30AA\u30D5\u30BB\u30C3\u30C8\u3002\u5024 0 \u304C\u63A8\u5968\u3055\u308C\u307E\u3059\u3002\u4F55\u3092\u3057\u3066\u3044\u308B\u306E\u304B\u308F\u304B\u3063\u3066\u3044\u308B\u5834\u5408\u306B\u306E\u307F\u5909\u66F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002"}}}},metadata:{songTitle:{title:"\u30BF\u30A4\u30C8\u30EB:",description:"\u66F2\u306E\u30BF\u30A4\u30C8\u30EB"},album:{title:"\u30A2\u30EB\u30D0\u30E0:",description:"\u66F2\u306E\u30A2\u30EB\u30D0\u30E0"},artist:{title:"\u30A2\u30FC\u30C6\u30A3\u30B9\u30C8:",description:"\u66F2\u306E\u30A2\u30FC\u30C6\u30A3\u30B9\u30C8"},albumCover:{title:"\u30A2\u30EB\u30D0\u30E0\u30AB\u30D0\u30FC:",description:"\u66F2\u306E\u30A2\u30EB\u30D0\u30E0\u30AB\u30D0\u30FC"},creationDate:{title:"\u4F5C\u6210\u65E5:",description:"\u66F2\u306E\u4F5C\u6210\u65E5"},genre:{title:"\u30B8\u30E3\u30F3\u30EB:",description:"\u66F2\u306E\u30B8\u30E3\u30F3\u30EB"},comment:{title:"\u30B3\u30E1\u30F3\u30C8:",description:"\u66F2\u306E\u30B3\u30E1\u30F3\u30C8"},duration:{title:"\u9577\u3055:",description:"\u66F2\u306E\u9577\u3055"}}}};var Sw={localeName:"\u65E5\u672C\u8A9E",titleMessage:"SpessaSynth: SoundFont2 Javascript \u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC",demoTitleMessage:"SpessaSynth: SoundFont2 Javascript \u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC \u30AA\u30F3\u30E9\u30A4\u30F3\u30C7\u30E2",synthInit:{genericLoading:"\u8AAD\u307F\u8FBC\u307F\u4E2D...",loadingSoundfont:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u8AAD\u307F\u8FBC\u3093\u3067\u3044\u307E\u3059...",loadingBundledSoundfont:"\u30D0\u30F3\u30C9\u30EB\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u8AAD\u307F\u8FBC\u3093\u3067\u3044\u307E\u3059...",startingSynthesizer:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059...",savingSoundfont:"\u518D\u5229\u7528\u306E\u305F\u3081\u306B\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u4FDD\u5B58\u3057\u3066\u3044\u307E\u3059...",noWebAudio:"\u304A\u4F7F\u3044\u306E\u30D6\u30E9\u30A6\u30B6\u306FWeb Audio\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u305B\u3093\u3002",done:"\u6E96\u5099\u5B8C\u4E86\uFF01"},midiUploadButton:"MIDI\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9",exportAudio:vw,demoSoundfontUploadButton:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9",demoGithubPage:"\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30DA\u30FC\u30B8",demoSongButton:"\u30C7\u30E2\u30BD\u30F3\u30B0",credits:"\u30AF\u30EA\u30A8\u30A4\u30BF\u30FC",warnings:{noMidiSupport:"\u3053\u306E\u30D6\u30E9\u30A6\u30B6\u306FMIDI\u5165\u529B\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u306A\u3044\u305F\u3081\u3001\u3053\u306E\u6A5F\u80FD\u306F\u5229\u7528\u3067\u304D\u307E\u305B\u3093\u3002Chrome\u307E\u305F\u306FFirefox\u3092\u4F7F\u7528\u3059\u308B\u3053\u3068\u3092\u691C\u8A0E\u3057\u3066\u304F\u3060\u3055\u3044\u3002",outOfMemory:`\u30D6\u30E9\u30A6\u30B6\u306E\u30E1\u30E2\u30EA\u304C\u4E0D\u8DB3\u3057\u307E\u3057\u305F\u3002Firefox\u3084SF3\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u306E\u4F7F\u7528\u3092\u691C\u8A0E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 + `;let B0=document.createElement("div");if(B0.classList.add("notification_content"),F)for(let[B1,R]of Object.entries(F))B0.style[B1]=R;I0.appendChild(B0);for(let B1 of r){let R=zy(B1,E);B1.onClick&&(R.onclick=()=>B1.onClick({div:I0,id:b0},R)),B0.appendChild(R)}h?I0.getElementsByClassName("close_btn")[0].onclick=()=>{Ii(b0)}:I0.getElementsByClassName("close_btn")[0].style.display="none",setTimeout(()=>{I0.classList.add("drop")},75);let O0=setTimeout(()=>{Ii(b0)},l*1e3+75);return document.getElementsByClassName("spessasynth_main")[0].appendChild(I0),SB[b0]={div:I0,timeout:O0},{div:I0,id:b0}}function Ii(o){let r=SB[o].div;clearTimeout(SB[o].timeout),r.classList.remove("drop"),setTimeout(()=>r.parentElement.removeChild(r),500),SB[o]=void 0}function Zy(o,r,l){o.createMIDIDeviceHandler().then(h=>{h?(this._createMidiInputHandler(o,l.synth),this._createMidiOutputHandler(o,r)):(vo||$t(this.locale.getLocaleString("locale.warnings.warning"),[{type:"text",textContent:this.locale.getLocaleString("locale.warnings.noMidiSupport")}]),document.getElementById("midi_settings").style.display="none")})}function Wy(o,r){if(o.inputs.length<1)return;let l=this.htmlControls.midi.inputSelector;for(let h of o.inputs){let E=document.createElement("option");E.value=h[0],E.innerText=h[1].name,l.appendChild(E)}l.onchange=()=>{l.value==="-1"?o.disconnectAllDevicesFromSynth():o.connectDeviceToSynth(o.inputs.get(l.value),r),this._saveSettings()}}function jy(o,r){if(!o.outputs){setTimeout(()=>{this._createMidiOutputHandler(o,r)},1e3);return}if(o.outputs.length<1)return;let l=this.htmlControls.midi.outputSelector;for(let h of o.outputs){let E=document.createElement("option");E.value=h[0],E.innerText=h[1].name,l.appendChild(E)}l.onchange=()=>{r.seq&&(l.value==="-1"?o.disconnectSeqFromMIDI(r.seq):o.connectMIDIOutputToSeq(o.outputs.get(l.value),r.seq),this._saveSettings())}}var Xy={title:"Renderer settings",noteFallingTime:{title:"Note falling time (miliseconds)",description:"How fast the notes fall (visually)"},waveformThickness:{title:"Waveform line thickness (px)",description:"How thick the waveform lines are"},waveformSampleSize:{title:"Waveform sample size",description:"How detailed the waveforms are (Note: high values might impact performance)"},waveformAmplifier:{title:"Waveform amplifier",description:"How vibrant the waveforms are"},toggleWaveformsRendering:{title:"Enable waveforms rendering",description:"Enable rendering the channel waveforms (colorful lines showing audio)"},toggleNotesRendering:{title:"Enable notes rendering",description:"Enable rendering of the falling notes when playing a MIDI file"},toggleDrawingActiveNotes:{title:"Enable drawing active notes",description:"Enable notes lighting up and glowing when they get pressed"},toggleDrawingVisualPitch:{title:"Enable drawing visual pitch",description:"Enable notes sliding left or right when the pitch wheel is applied"},toggleStabilizeWaveforms:{title:"Stabilize waveforms",description:"Enable oscilloscope triggering"}};var ew={title:"Keyboard settings",selectedChannel:{title:"Selected channel",description:"The channel keyboard sends messages to",channelOption:"Channel {0}"},keyboardSize:{title:"Keyboard size",description:"The range of keys shown on the keyboard. Adjusts the MIDI note size accordingly",full:"128 keys (full)",piano:"88 keys (piano)",fiveOctaves:"5 octaves",useSongKeyRange:"Use song's key range"},toggleTheme:{title:"Use dark theme",description:"Use the dark keyboard theme"}};var tw={title:"MIDI settings",midiInput:{title:"MIDI input",description:"The port to listen on for MIDI messages",disabled:"Disabled"},midiOutput:{title:"MIDI output",description:"The port to play the MIDI file to",disabled:"Use SpessaSynth"}};var iw={toggleButton:"Settings",mainTitle:"Program settings",rendererSettings:Xy,keyboardSettings:ew,midiSettings:tw,interfaceSettings:{title:"Interface settings",toggleTheme:{title:"Use dark theme",description:"Enable the dark theme for the interface"},selectLanguage:{title:"Language",description:"Change the program language"},layoutDirection:{title:"Layout direction",description:"The layout direction of the renderer and keyboard",values:{downwards:"Downwards",upwards:"Upwards",leftToRight:"Left to right",rightToLeft:"Right to left"}}}};var rw={toggleButton:{title:"Toggle music player mode",description:"Toggle the simplified UI version, hiding the keyboard and note visualizations"},currentlyPlaying:"Currently playing:",nothingPlaying:"Nothing is playing",nothingPlayingCopyright:"Upload a MIDI!"};var nw={voiceMeter:{title:"Voices: ",description:"The current amount of voices playing on channel {0}"},pitchBendMeter:{title:"Pitch: ",description:"The current pitch bend applied to channel {0}"},panMeter:{title:"Pan: ",description:"The current stereo panning applied to channel {0} (right-click to lock)"},expressionMeter:{title:"Expression: ",description:"The current expression (loudness) of channel {0} (right-click to lock)"},volumeMeter:{title:"Volume: ",description:"The current volume of channel {0} (right-click to lock)"},modulationWheelMeter:{title:"Mod wheel: ",description:"The current modulation (usually vibrato) depth of channel {0} (right-click to lock)"},chorusMeter:{title:"Chorus: ",description:"The current level of chorus effect applied to channel {0} (right-click to lock)"},reverbMeter:{title:"Reverb: ",description:"The current level of reverb effect applied to channel {0} (right-click to lock)"},transposeMeter:{title:"Transpose: ",description:"The current transposition (key shift) of channel {0}"},presetSelector:{description:"Change the patch (instrument) channel {0} is using"},presetReset:{description:"Unlock channel {0} to allow program changes"},soloButton:{description:"Solo on channel {0}"},muteButton:{description:"Mute/unmute channel {0}"},drumToggleButton:{description:"Toggle drums on channel {0}"}};var Aw={toggleButton:{title:"Synthesizer controller",description:"Show the synthesizer controller"},mainVoiceMeter:{title:"Voices: ",description:"The total amount of voices currently playing"},mainVolumeMeter:{title:"Volume: ",description:"The current master volume of the synthesizer"},mainPanMeter:{title:"Pan: ",description:"The current master stereo panning of the synthesizer"},mainTransposeMeter:{title:"Transpose: ",description:"Transposes the synthesizer (in semitones or keys)"},midiPanic:{title:"MIDI Panic",description:"Stops all voices immediately"},systemReset:{title:"System reset",description:"Resets all controllers to their default values"},blackMidiMode:{title:"Black MIDI mode",description:"Toggles the High Performance Mode, simplifying the look and killing the notes faster"},disableCustomVibrato:{title:"Disable custom vibrato",description:"Disables the custom (NRPN) Vibrato permamently. Reload the website to reenable it"},helpButton:{title:"Help",description:"Opens an external website with the usage guide"},channelController:nw};var sw={previousSong:"Previous song",nextSong:"Next song",loopThis:"Loop this song",playPause:"Play/pause",lyrics:{show:"Show lyrics",title:"Decoded text",noLyrics:"No lyrics available...",otherText:{title:"Other text"}}};var ow={button:{title:"Save audio",description:"Save audio as WAV, MIDI, SF2 or RMI file"},formats:{title:"Choose format",formats:{wav:{button:{title:"WAV audio (.wav)",description:"Export the song with modifications as a .wav audio file"},options:{title:"WAV export options",confirm:"Export",normalizeVolume:{title:"Normalize volume",description:"Keep the volume at the same level, no matter how loud or quiet the MIDI is. Recommended."},additionalTime:{title:"Additional time (s)",description:"Additional time at the end of the song to allow for the sound to fade. (seconds)"},separateChannels:{title:"Separate channels",description:"Save each channel as a separate file. Useful for things like oscilloscope viewers. Note that this disables reverb and chorus.",saving:{title:"Channel files",save:"Save channel {0}"}}},exportMessage:{message:"Exporting WAV audio...",estimated:"Remaining:",convertWav:"Converting to wav..."}},midi:{button:{title:"MIDI (.mid)",description:"Export the MIDI file with the controller and instrument changes applied"}},soundfont:{button:{title:"SoundFont (.sf2)",description:"Export a SoundFont2 file"},options:{title:"SF export options",confirm:"Export",trim:{title:"Trim",description:"Export the soundfont trimmed to only use instruments and samples that the MIDI file uses"},compress:{title:"Compress",description:"Compress samples with lossy Ogg Vorbis compression if uncompressed. Significantly reduces the file size.If the soundfont was already compressed, it won't be uncompressed even if this option is disabled"},quality:{title:"Compression quality",description:"The quality of compression. Higher is better"}}},rmidi:{button:{title:"Embedded MIDI (.rmi)",description:"Export the modified MIDI with the embedded trimmed soundfont as a single file. Note that this format isn't widely supported"},progress:{title:"Exporting embeded MIDI...",loading:"Loading Soundfont and MIDI...",modifyingMIDI:"Modifying MIDI...",modifyingSoundfont:"Trimming Soundfont...",saving:"Saving RMIDI...",done:"Done!"},options:{title:"RMIDI export options",confirm:"Export",compress:{title:"Compress",description:"Compress the Soundfont with lossy Ogg Vorbis compression. Significantly reduces the file size. Recommended."},quality:{title:"Compression quality",description:"The quality of compression. Higher is better."},bankOffset:{title:"Bank offset",description:"The bank offset of the file. Value of 0 is recommended. Only change if you know what you're doing."},adjust:{title:"Adjust MIDI",description:"Adjusts the MIDI file to the SoundFont. Leave this on unless you know what you're doing."}}}},metadata:{songTitle:{title:"Title:",description:"The song's title"},album:{title:"Album:",description:"The song's album"},artist:{title:"Artist:",description:"The song's artist"},albumCover:{title:"Album cover:",description:"The song's album cover"},creationDate:{title:"Created:",description:"The song's creation date"},genre:{title:"Genre:",description:"The song's genre"},comment:{title:"Comment:",description:"The song's comment"},duration:{title:"Duration:",description:"The song's duration"}}}};var $w={localeName:"English",titleMessage:"SpessaSynth: SoundFont2 Javascript Synthesizer",demoTitleMessage:"SpessaSynth: SoundFont2 Javascript Synthesizer Online Demo",synthInit:{genericLoading:"Loading...",loadingSoundfont:"Loading SoundFont...",loadingBundledSoundfont:"Loading bundled SoundFont...",startingSynthesizer:"Starting Synthesizer...",savingSoundfont:"Saving SoundFont for reuse...",noWebAudio:"Your browser does not support Web Audio.",done:"Ready!"},midiUploadButton:"Upload your MIDI files",exportAudio:ow,demoSoundfontUploadButton:"Upload the soundfont",demoGithubPage:"Project's page",demoSongButton:"Demo Song",credits:"Credits",warnings:{outOfMemory:"Your browser ran out of memory. Consider using Firefox or SF3 soundfont instead. (see console for error).",noMidiSupport:"No MIDI ports detected, this functionality will be disabled.",chromeMobile:"SpessaSynth performs poorly on Chrome Mobile. Consider using Firefox Android instead.",warning:"Warning"},hideTopBar:{title:"Hide top bar",description:"Hide the top (title) bar to provide a more seamless experience"},musicPlayerMode:rw,settings:iw,synthesizerController:Aw,sequencerController:sw};var aw={title:"Ustawienia wizualizacji",noteFallingTime:{title:"Czas spadania nut (ms)",description:"Jak szybko spadaj\u0105 z g\xF3ry nuty (w milisekundach)"},waveformThickness:{title:"Grubo\u015B\u0107 lini fal (px)",description:"Jak grube s\u0105 linie fal d\u017Awi\u0119kowych"},waveformSampleSize:{title:"Rozmiar pr\xF3bki fali",description:"Jak szczeg\xF3\u0142owe s\u0105 linei fal d\u017Awi\u0119kowcyh (Uwaga: wysokie warto\u015Bci mog\u0105 pogorszy\u0107 wydajno\u015B\u0107)"},waveformAmplifier:{title:"Wzmacniasz fal",description:"Jak '\u017Cywe' s\u0105 fale. Kontroluje ich amplitud\u0119"},toggleWaveformsRendering:{title:"W\u0142\u0105cz rysowanie fal",description:"W\u0142\u0105cz rysowanie fal d\u017Awi\u0119kowych (16-tu kolorowych linii z ty\u0142u)"},toggleNotesRendering:{title:"W\u0142\u0105cz rysowanie nut",description:"W\u0142\u0105cz rysowanie spadaj\u0105cych nut podczas odtwarzania pliku MIDI"},toggleDrawingActiveNotes:{title:"W\u0142\u0105cz rysowanie aktywnych nut",description:"W\u0142\u0105cz efekt pod\u015Bwietlania si\u0119 nut przy aktywacji"},toggleDrawingVisualPitch:{title:"W\u0142\u0105cz wizualizacj\u0119 wysoko\u015Bci tonu",description:"W\u0142\u0105cz przesuwanie nut w lewo lub w prawo gdy wysoko\u015B\u0107 nut jest zmieniana"},toggleStabilizeWaveforms:{title:"W\u0142\u0105cz stabilizacj\u0119 fal",description:"W\u0142\u0105cz stabilizowanie fal d\u017Awi\u0119kowych"}};var lw={title:"Ustawienia pianina",selectedChannel:{title:"Wybrany kana\u0142",description:"Kana\u0142, do kt\xF3rego b\u0119dzie pod\u0142\u0105czone pianino",channelOption:"Kana\u0142 {0}"},keyboardSize:{title:"Rozmiar pianina",description:"Zakres klawiszy widocznych na pianine. Dostosowuje r\xF3wnie\u017C szeroko\u015B\u0107 wizualizowanych nut",full:"128 klawiszy (pe\u0142en zakres)",piano:"88 klawiszy (fortepian)",fiveOctaves:"5 oktaw",useSongKeyRange:"U\u017Cyj zakresu utworu"},toggleTheme:{title:"W\u0142\u0105cz ciemny motyw",description:"W\u0142\u0105cz ciemny motyw wbudowanego pianina"}};var cw={title:"Ustawienia MIDI",midiInput:{title:"Wej\u015Bcie MIDI",description:"Port MIDI, kt\xF3ry b\u0119dzie nas\u0142uchiwany",disabled:"Wy\u0142\u0105czony"},midiOutput:{title:"Wyj\u015Bcie MIDI",description:"Port MIDI, do kt\xF3rego b\u0119dzie grany utw\xF3r",disabled:"U\u017Cyj SpessaSynth"}};var gw={toggleButton:"Ustawienia",mainTitle:"Ustawienia programu",rendererSettings:aw,keyboardSettings:lw,midiSettings:cw,interfaceSettings:{title:"Ustawienia interfejsu",toggleTheme:{title:"W\u0142\u0105cz ciemny motyw",description:"W\u0142\u0105cz ciemny motyw programu"},selectLanguage:{title:"J\u0119zyk",description:"Zmie\u0144 j\u0119zyk programu"},layoutDirection:{title:"Uk\u0142ad",description:"Kierunek uk\u0142adu wizualizacji i pianina",values:{downwards:"W d\xF3\u0142",upwards:"W g\xF3r\u0119",leftToRight:"Od lewej do prawej",rightToLeft:"Od prawej do lewej"}}}};var hw={toggleButton:{title:"Prze\u0142\u0105cz tryb odtwarzania muzyki",description:"Prze\u0142\u0105cz uproszczon\u0105 wersj\u0119 interfejsu, ukrywaj\u0105c pianino i wizualizacj\u0119 nut"},currentlyPlaying:"Teraz gramy:",nothingPlaying:"Nic teraz nie gra",nothingPlayingCopyright:"Wgraj jakie\u015B MIDI!"};var fw={voiceMeter:{title:"D\u017Awi\u0119ki: ",description:"Aktualna ilo\u015B\u0107 d\u017Awi\u0119k\xF3w na kanale {0}"},pitchBendMeter:{title:"Wysoko\u015B\u0107: ",description:"Aktualna wysoko\u015B\u0107 tonu na kanale {0}"},panMeter:{title:"Stereo: ",description:"Aktualny efekt stereo na kanale {0} (kliknij prawym aby zablokowa\u0107)"},expressionMeter:{title:"Ekspresja: ",description:"Aktualna ekspresja (g\u0142o\u015Bno\u015Bc) kana\u0142u {0} (kliknij prawym aby zablokowa\u0107)"},volumeMeter:{title:"G\u0142o\u015Bno\u015B\u0107: ",description:"Aktualna g\u0142o\u015Bno\u015B\u0107 kana\u0142u {0} (kliknij prawym aby zablokowa\u0107)"},modulationWheelMeter:{title:"Modulacja: ",description:"Aktualna g\u0142\u0119boko\u015B\u0107 modulacji (zazwyczaj vibrato) kana\u0142u {0} (kliknij prawym aby zablokowa\u0107)"},chorusMeter:{title:"Ch\xF3r: ",description:"Aktualny efekt ch\xF3ru na kanale {0} (kliknij prawym aby zablokowa\u0107)"},reverbMeter:{title:"Pog\u0142os: ",description:"Aktualny efekt pog\u0142osu na kanale {0} (kliknij prawym aby zablokowa\u0107)"},transposeMeter:{title:"Transpozycja: ",description:"Aktualna transpozycja (przesuni\u0119cie klawiszy) kana\u0142u {0}"},presetSelector:{description:"Zmie\u0144 patch (instrument), kt\xF3rego u\u017Cywa kana\u0142 {0}"},presetReset:{description:"Odblokuj kana\u0142 {0}, aby program m\xF3g\u0142 go zmienia\u0107"},soloButton:{description:"Solo na kanale {0}"},muteButton:{description:"Wycisz/odcisz kana\u0142 {0}"},drumToggleButton:{description:"Prze\u0142\u0105cz perkusj\u0119 na kanale {0}"}};var uw={toggleButton:{title:"Kontroler syntezatora",description:"Poka\u017C kontroler syntezatora"},mainVoiceMeter:{title:"D\u017Awi\u0119ki: ",description:"Ca\u0142kowita ilo\u015B\u0107 aktualnie odtwarzanych d\u017Awi\u0119k\xF3w"},mainVolumeMeter:{title:"G\u0142o\u015Bno\u015B\u0107: ",description:"Aktualna g\u0142o\u015Bno\u015B\u0107 syntezatora"},mainPanMeter:{title:"Stereo: ",description:"Aktualna pozycja stereo syntezatora"},mainTransposeMeter:{title:"Transpozycja: ",description:"Transpozycjonuje syntezator (w semitonach)"},midiPanic:{title:"MIDI Panic",description:"Zatrzymuje wszystkie d\u017Awi\u0119ki"},systemReset:{title:"Reset systemu",description:"Resetuje wszystkie kontroleru do ich domy\u015Blnych warto\u015Bci"},blackMidiMode:{title:"Tryb black MIDI",description:"Prze\u0142\u0105cza tryb wysokiej wydajno\u015Bci, upraszczaj\u0105c wygl\u0105d i pogarszaj\u0105c jako\u015B\u0107 d\u017Awi\u0119ku"},disableCustomVibrato:{title:"Wy\u0142\u0105cz niestandardowe vibrato",description:"Wy\u0142\u0105cza niestandardowe (NRPN) vibrato. Wymaga prze\u0142adowania strony aby je ponownie w\u0142\u0105czy\u0107"},helpButton:{title:"Pomoc",description:"Poka\u017C instrukcj\u0119 obs\u0142ugi"},channelController:fw};var Iw={previousSong:"Poprzedni utw\xF3r",nextSong:"Nast\u0119pny utw\xF3r",loopThis:"Odtwarzaj w p\u0119tli",playPause:"Odtw\xF3rz/wstrzymaj",lyrics:{show:"Poka\u017C tekst",title:"Odczytany tekst",noLyrics:"Brak dost\u0119pnego tekstu...",otherText:{title:"Inny tekst"}}};var dw={button:{title:"Zapisz utw\xF3r",description:"Zapisz utw\xF3r jako plik WAV, MIDI, SF2 lub RMI"},formats:{title:"Wybierz format",formats:{wav:{button:{title:"Audio WAV (.wav)",description:"Eksportuj utw\xF3r ze zmianami jako plik audio .wav"},options:{title:"Opcje eksportu audio",confirm:"Eksportuj",normalizeVolume:{title:"Normalizuj g\u0142o\u015Bno\u015B\u0107",description:"Eksportuj audio z tak\u0105 sam\u0105 g\u0142o\u015Bno\u015Bci\u0105, niezale\u017Cnie od g\u0142o\u015Bno\u015Bci MIDI."},additionalTime:{title:"Dodatkowy czas (s)",description:"Dodatkowy czas na ko\u0144cu utworu aby pozwoli\u0107 na wyciszenie si\u0119 d\u017Awi\u0119ku. (sekundy)"},separateChannels:{title:"Rozdziel kana\u0142y",description:"Zapisz ka\u017Cdy kana\u0142 w osobnym pliuku. Przydatne dla rzeczy jak widok oscyloskopowy. Nale\u017Cy pami\u0119ta\u0107 \u017Ce to wy\u0142\u0105cza ekfet pog\u0142osu i ch\xF3ru",saving:{title:"Pliki audio kana\u0142\xF3w",save:"Zapisz kana\u0142 {0}"}}},exportMessage:{message:"Eksportowanie audio...",estimated:"Pozosta\u0142o:",convertWav:"Konwertowanie do wav..."}},midi:{button:{title:"MIDI (.mid)",description:"Eksportuj plik MIDI wraz ze zmianami instrument\xF3w i kontroler\xF3w"}},soundfont:{button:{title:"SoundFont (.sf2)",description:"Eksportuj SoundFont"},options:{title:"Opcje eksportu soundfonta",confirm:"Eksportuj",trim:{title:"Zmniejsz",description:"Zmniejsz SoundFont aby zawiera\u0142 tylko klawisze u\u017Cyte w MIDI"},compress:{title:"Kompresuj",description:"Zkompresuj pr\xF3bki kt\xF3re nie s\u0105 zkompresowane przy u\u017Cyciu stratnego kodeka Ogg Vorbis. Znacznie zmniejsza rozmiar pliku.Je\u015Bli soundfont by\u0142 ju\u017C skompresowany, nie zostanie zdekompresowany nawet gdy ta opcja jest wy\u0142\u0105czona"},quality:{title:"Jako\u015B\u0107 kompresji",description:"Jako\u015B\u0107 skompresowanych pr\xF3bek. Im wy\u017Csza tym lepsza"}}},rmidi:{button:{title:"Osadzone MIDI (.rmi)",description:"Eksportuj zmodyfikowane MIDI wraz ze zmniejszonym soundfontem jako jeden plik. Uwaga: ten format nie jest szeroko wspierany"},progress:{title:"Exportowanie osadzonego MIDI...",loading:"Wczytywanie soundfonta i MIDI...",modifyingMIDI:"Modyfikowanie MIDI...",modifyingSoundfont:"Zmniejszanie Soundfonta...",saving:"Zapisywanie RMIDI...",done:"Gotowe!"},options:{title:"Opcje eksportu RMIDI",confirm:"Eksportuj",compress:{title:"Kompresuj",description:"Skompresuj osadzonego soundfonta za pomoc\u0105 stratnego kodeka Ogg Vorbis. Znacznie zmniejsza rozmiar pliku. Zalecane."},quality:{title:"Jako\u015B\u0107 kompresji",description:"Jako\u015B\u0107 skompresowanych pr\xF3bek. Im wy\u017Csza tym lepsza"},bankOffset:{title:"Przesuni\u0119cie banku",description:"Przesuni\u0119cie banku w pliku. Zalecane 0. Zmie\u0144 tylko je\u015Bli wiesz co robisz."},adjust:{title:"Adjust MIDI",description:"Adjusts the MIDI file to the SoundFont. Leave this on unless you know what you're doing."}}}},metadata:{songTitle:{title:"Tytu\u0142:",description:"Tytu\u0142 utworu"},album:{title:"Album:",description:"Album utworu"},artist:{title:"Tw\xF3rca:",description:"Tw\xF3rca utworu"},albumCover:{title:"Ok\u0142adka albumu:",description:"Ok\u0142adka albumu utworu"},creationDate:{title:"Stworzono:",description:"Data stworzenia utworu"},genre:{title:"Gatunek:",description:"Gatunek utworu"},comment:{title:"Komentarz:",description:"Komentarz do utworu"},duration:{title:"Czas trwania:",description:"Czas trwania utworu"}}}};var Ew={localeName:"Polski",titleMessage:"SpessaSynth: JavaScriptowy Syntezator SoundFont2",demoTitleMessage:"SpessaSynth: JavaScriptowy Syntezator SoundFont2 Wersja Demo",synthInit:{genericLoading:"Wczytywanie...",loadingSoundfont:"Wczytywanie SoundFonta...",loadingBundledSoundfont:"Wczytywanie wbudowanego SoundFonta...",startingSynthesizer:"Uruchamianie syntezatora...",savingSoundfont:"Zapisywanie SoundFonta do przegl\u0105darki...",noWebAudio:"Twoja przegl\u0105darka nie wspiera Web Audio.",done:"Gotowe!"},midiUploadButton:"Wgraj Twoje pliki MIDI",midiRenderButton:{title:"Eksportuj audio",description:"Zapisz audio do pliku WAV lub MIDI"},exportAudio:dw,demoSoundfontUploadButton:"Wgraj SoundFonta",demoGithubPage:"Strona projektu",demoSongButton:"Piosenka demo",credits:"Tw\xF3rcy",warnings:{outOfMemory:"Twojej przegl\u0105darce sko\u0144czy\u0142a si\u0119 pami\u0119\u0107. Rozwa\u017C u\u017Cycie Firefoxa albo plik\xF3w SF3. (Zobacz b\u0142\u0105d w konsoli)",noMidiSupport:"Nie wykryto MIDI. Korzystanie z port\xF3w MIDI nie b\u0119dzie dost\u0119pne.",chromeMobile:"SpessaSynth dzia\u0142a wolno na Chromie na telefon. Rozwa\u017C u\u017Cycie Firefoxa Android.",warning:"Uwaga"},hideTopBar:{title:"Ukryj g\xF3rny pasek",description:"Ukryj pasek tytu\u0142owy w celu poprawy widoczno\u015Bci na pionowych ekranach"},musicPlayerMode:hw,settings:gw,synthesizerController:uw,sequencerController:Iw};var Cw={title:"\u30EC\u30F3\u30C0\u30E9\u30FC\u8A2D\u5B9A",noteFallingTime:{title:"\u30CE\u30FC\u30C8\u306E\u843D\u4E0B\u6642\u9593\uFF08\u30DF\u30EA\u79D2\uFF09",description:"\u30CE\u30FC\u30C8\u304C\u843D\u3061\u308B\u901F\u3055\uFF08\u8996\u899A\u7684\u306B\uFF09"},waveformThickness:{title:"\u6CE2\u5F62\u306E\u7DDA\u306E\u592A\u3055\uFF08\u30D4\u30AF\u30BB\u30EB\uFF09",description:"\u6CE2\u5F62\u306E\u7DDA\u306E\u592A\u3055"},waveformSampleSize:{title:"\u6CE2\u5F62\u306E\u30B5\u30F3\u30D7\u30EB\u30B5\u30A4\u30BA",description:"\u6CE2\u5F62\u306E\u8A73\u7D30\u5EA6\uFF08\u6CE8\uFF1A\u9AD8\u3044\u5024\u306F\u30D1\u30D5\u30A9\u30FC\u30DE\u30F3\u30B9\u306B\u5F71\u97FF\u3092\u4E0E\u3048\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\uFF09"},waveformAmplifier:{title:"\u6CE2\u5F62\u306E\u5897\u5E45\u5668",description:"\u6CE2\u5F62\u306E\u9BAE\u3084\u304B\u3055"},toggleWaveformsRendering:{title:"\u6CE2\u5F62\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u306E\u5207\u308A\u66FF\u3048",description:"\u30C1\u30E3\u30F3\u30CD\u30EB\u6CE2\u5F62\u306E\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u3092\u5207\u308A\u66FF\u3048\u307E\u3059\uFF08\u30AA\u30FC\u30C7\u30A3\u30AA\u3092\u8868\u793A\u3059\u308B\u30AB\u30E9\u30D5\u30EB\u306A\u7DDA\uFF09"},toggleNotesRendering:{title:"\u30CE\u30FC\u30C8\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u306E\u5207\u308A\u66FF\u3048",description:"MIDI\u30D5\u30A1\u30A4\u30EB\u3092\u518D\u751F\u3059\u308B\u969B\u306E\u843D\u4E0B\u30CE\u30FC\u30C8\u306E\u30EC\u30F3\u30C0\u30EA\u30F3\u30B0\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},toggleDrawingActiveNotes:{title:"\u30A2\u30AF\u30C6\u30A3\u30D6\u30CE\u30FC\u30C8\u306E\u63CF\u753B\u3092\u5207\u308A\u66FF\u3048",description:"\u30CE\u30FC\u30C8\u304C\u62BC\u3055\u308C\u305F\u3068\u304D\u306B\u5149\u308A\u8F1D\u304F\u63CF\u753B\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},toggleDrawingVisualPitch:{title:"\u30D3\u30B8\u30E5\u30A2\u30EB\u30D4\u30C3\u30C1\u63CF\u753B\u306E\u5207\u308A\u66FF\u3048",description:"\u30D4\u30C3\u30C1\u30DB\u30A4\u30FC\u30EB\u304C\u9069\u7528\u3055\u308C\u305F\u3068\u304D\u306B\u30CE\u30FC\u30C8\u304C\u5DE6\u53F3\u306B\u30B9\u30E9\u30A4\u30C9\u3059\u308B\u63CF\u753B\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},toggleStabilizeWaveforms:{title:"\u6CE2\u5F62\u3092\u5B89\u5B9A\u3055\u305B\u308B",description:"\u30AA\u30FC\u30C7\u30A3\u30AA\u6CE2\u5F62\u3092\u5B89\u5B9A\u3055\u305B\u308B\u8A2D\u5B9A\u3092\u5207\u308A\u66FF\u3048\u3001\u6CE2\u5F62\u3092\u56FA\u5B9A\u3057\u307E\u3059\u3002"}};var Bw={title:"\u30AD\u30FC\u30DC\u30FC\u30C9\u8A2D\u5B9A",selectedChannel:{title:"\u9078\u629E\u3055\u308C\u305F\u30C1\u30E3\u30F3\u30CD\u30EB",description:"\u30AD\u30FC\u30DC\u30FC\u30C9\u304C\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u9001\u4FE1\u3059\u308B\u30C1\u30E3\u30F3\u30CD\u30EB",channelOption:"\u30C1\u30E3\u30F3\u30CD\u30EB {0}"},keyboardSize:{title:"\u30AD\u30FC\u30DC\u30FC\u30C9\u30B5\u30A4\u30BA",description:"\u30AD\u30FC\u30DC\u30FC\u30C9\u306B\u8868\u793A\u3055\u308C\u308B\u30AD\u30FC\u306E\u7BC4\u56F2\u3002MIDI\u30CE\u30FC\u30C8\u306E\u30B5\u30A4\u30BA\u306B\u5FDC\u3058\u3066\u8ABF\u6574\u3055\u308C\u307E\u3059",full:"128\u30AD\u30FC\uFF08\u5168\u4F53\uFF09",piano:"88\u30AD\u30FC\uFF08\u30D4\u30A2\u30CE\uFF09",fiveOctaves:"5\u30AA\u30AF\u30BF\u30FC\u30D6",useSongKeyRange:"\u66F2\u306E\u30AD\u30FC\u7BC4\u56F2\u3092\u4F7F\u7528"},toggleTheme:{title:"\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048",description:"\u30AD\u30FC\u30DC\u30FC\u30C9\u306E\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"}};var mw={title:"MIDI\u8A2D\u5B9A",midiInput:{title:"MIDI\u5165\u529B",description:"MIDI\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u53D7\u4FE1\u3059\u308B\u30DD\u30FC\u30C8",disabled:"\u7121\u52B9"},midiOutput:{title:"MIDI\u51FA\u529B",description:"MIDI\u30D5\u30A1\u30A4\u30EB\u3092\u518D\u751F\u3059\u308B\u30DD\u30FC\u30C8",disabled:"SpessaSynth\u3092\u4F7F\u7528"}};var pw={toggleButton:"\u8A2D\u5B9A",mainTitle:"\u30D7\u30ED\u30B0\u30E9\u30E0\u8A2D\u5B9A",rendererSettings:Cw,keyboardSettings:Bw,midiSettings:mw,interfaceSettings:{title:"\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u8A2D\u5B9A",toggleTheme:{title:"\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048",description:"\u30D7\u30ED\u30B0\u30E9\u30E0\u306E\u30C6\u30FC\u30DE\u3092\u5207\u308A\u66FF\u3048\u307E\u3059"},selectLanguage:{title:"\u8A00\u8A9E",description:"\u30D7\u30ED\u30B0\u30E9\u30E0\u306E\u8A00\u8A9E\u3092\u5909\u66F4\u3057\u307E\u3059"},layoutDirection:{title:"\u30EC\u30A4\u30A2\u30A6\u30C8\u306E\u65B9\u5411",description:"\u30EC\u30F3\u30C0\u30E9\u30FC\u3068\u30AD\u30FC\u30DC\u30FC\u30C9\u306E\u30EC\u30A4\u30A2\u30A6\u30C8\u65B9\u5411",values:{downwards:"\u4E0B\u5411\u304D",upwards:"\u4E0A\u5411\u304D",leftToRight:"\u5DE6\u304B\u3089\u53F3",rightToLeft:"\u53F3\u304B\u3089\u5DE6"}}}};var Qw={toggleButton:{title:"\u97F3\u697D\u30D7\u30EC\u30A4\u30E4\u30FC\u30E2\u30FC\u30C9\u306E\u5207\u308A\u66FF\u3048",description:"\u7C21\u7565\u5316\u3055\u308C\u305FUI\u30D0\u30FC\u30B8\u30E7\u30F3\u306B\u5207\u308A\u66FF\u3048\u3001\u30AD\u30FC\u30DC\u30FC\u30C9\u3068\u30CE\u30FC\u30C8\u306E\u8996\u899A\u5316\u3092\u96A0\u3057\u307E\u3059"},currentlyPlaying:"\u518D\u751F\u4E2D:",nothingPlaying:"\u518D\u751F\u3057\u3066\u3044\u308B\u3082\u306E\u306F\u3042\u308A\u307E\u305B\u3093",nothingPlayingCopyright:"MIDI\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3057\u3066\u304F\u3060\u3055\u3044\uFF01"};var yw={voiceMeter:{title:"\u30DC\u30A4\u30B9: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3067\u518D\u751F\u4E2D\u306E\u30DC\u30A4\u30B9\u306E\u73FE\u5728\u306E\u6570"},pitchBendMeter:{title:"\u30D4\u30C3\u30C1: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30D4\u30C3\u30C1\u30D9\u30F3\u30C9"},panMeter:{title:"\u30D1\u30F3: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30B9\u30C6\u30EC\u30AA\u30D1\u30F3\u30CB\u30F3\u30B0\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},expressionMeter:{title:"\u30A8\u30AF\u30B9\u30D7\u30EC\u30C3\u30B7\u30E7\u30F3: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u8868\u73FE\uFF08\u97F3\u91CF\uFF09\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},volumeMeter:{title:"\u30DC\u30EA\u30E5\u30FC\u30E0: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u97F3\u91CF\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},modulationWheelMeter:{title:"\u30E2\u30B8\u30E5\u30EC\u30FC\u30B7\u30E7\u30F3\u30DB\u30A4\u30FC\u30EB: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u30E2\u30B8\u30E5\u30EC\u30FC\u30B7\u30E7\u30F3\uFF08\u901A\u5E38\u306F\u30D3\u30D6\u30E9\u30FC\u30C8\uFF09\u306E\u6DF1\u3055\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},chorusMeter:{title:"\u30B3\u30FC\u30E9\u30B9: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30B3\u30FC\u30E9\u30B9\u30A8\u30D5\u30A7\u30AF\u30C8\u306E\u30EC\u30D9\u30EB\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},reverbMeter:{title:"\u30EA\u30D0\u30FC\u30D6: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306B\u9069\u7528\u3055\u308C\u3066\u3044\u308B\u73FE\u5728\u306E\u30EA\u30D0\u30FC\u30D6\u30A8\u30D5\u30A7\u30AF\u30C8\u306E\u30EC\u30D9\u30EB\uFF08\u53F3\u30AF\u30EA\u30C3\u30AF\u3067\u30ED\u30C3\u30AF\uFF09"},transposeMeter:{title:"\u30C8\u30E9\u30F3\u30B9\u30DD\u30FC\u30BA: ",description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u73FE\u5728\u306E\u79FB\u8ABF\uFF08\u30AD\u30FC\u30B7\u30D5\u30C8\uFF09"},presetSelector:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u304C\u4F7F\u7528\u3059\u308B\u30D1\u30C3\u30C1\uFF08\u697D\u5668\uFF09\u3092\u5909\u66F4"},presetReset:{description:"\u30D7\u30ED\u30B0\u30E9\u30E0\u5909\u66F4\u3092\u8A31\u53EF\u3059\u308B\u305F\u3081\u306B\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u306E\u30ED\u30C3\u30AF\u3092\u89E3\u9664"},soloButton:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3092\u5358\u72EC\u518D\u751F"},muteButton:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3092\u30DF\u30E5\u30FC\u30C8/\u30DF\u30E5\u30FC\u30C8\u89E3\u9664"},drumToggleButton:{description:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3067\u30C9\u30E9\u30E0\u3092\u5207\u308A\u66FF\u3048"}};var ww={toggleButton:{title:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC\u3092\u8868\u793A"},mainVoiceMeter:{title:"\u30DC\u30A4\u30B9: ",description:"\u73FE\u5728\u518D\u751F\u4E2D\u306E\u30DC\u30A4\u30B9\u306E\u7DCF\u6570"},mainVolumeMeter:{title:"\u30DC\u30EA\u30E5\u30FC\u30E0: ",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u306E\u73FE\u5728\u306E\u30DE\u30B9\u30BF\u30FC\u30DC\u30EA\u30E5\u30FC\u30E0"},mainPanMeter:{title:"\u30D1\u30F3: ",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u306E\u73FE\u5728\u306E\u30DE\u30B9\u30BF\u30FC\u30B9\u30C6\u30EC\u30AA\u30D1\u30F3\u30CB\u30F3\u30B0"},mainTransposeMeter:{title:"\u30C8\u30E9\u30F3\u30B9\u30DD\u30FC\u30BA: ",description:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u3092\u79FB\u8ABF\u3057\u307E\u3059\uFF08\u30BB\u30DF\u30C8\u30FC\u30F3\u307E\u305F\u306F\u30AD\u30FC\uFF09"},midiPanic:{title:"MIDI\u30D1\u30CB\u30C3\u30AF",description:"\u3059\u3079\u3066\u306E\u30DC\u30A4\u30B9\u3092\u5373\u5EA7\u306B\u505C\u6B62"},systemReset:{title:"\u30B7\u30B9\u30C6\u30E0\u30EA\u30BB\u30C3\u30C8",description:"\u3059\u3079\u3066\u306E\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC\u3092\u30C7\u30D5\u30A9\u30EB\u30C8\u5024\u306B\u30EA\u30BB\u30C3\u30C8"},blackMidiMode:{title:"\u30D6\u30E9\u30C3\u30AFMIDI\u30E2\u30FC\u30C9",description:"\u9AD8\u6027\u80FD\u30E2\u30FC\u30C9\u3092\u5207\u308A\u66FF\u3048\u3001\u898B\u305F\u76EE\u3092\u7C21\u7D20\u5316\u3057\u3001\u30CE\u30FC\u30C8\u3092\u901F\u304F\u6D88\u53BB"},disableCustomVibrato:{title:"\u30AB\u30B9\u30BF\u30E0\u30D3\u30D6\u30E9\u30FC\u30C8\u3092\u7121\u52B9\u5316",description:"\u30AB\u30B9\u30BF\u30E0\uFF08NRPN\uFF09\u30D3\u30D6\u30E9\u30FC\u30C8\u3092\u6C38\u4E45\u306B\u7121\u52B9\u5316\u3002\u518D\u5EA6\u6709\u52B9\u5316\u3059\u308B\u306B\u306F\u30A6\u30A7\u30D6\u30B5\u30A4\u30C8\u3092\u30EA\u30ED\u30FC\u30C9"},helpButton:{title:"\u30D8\u30EB\u30D7",description:"\u4F7F\u7528\u30AC\u30A4\u30C9\u3092\u8868\u793A\u3057\u307E\u3059"},channelController:yw};var kw={previousSong:"\u524D\u306E\u66F2",nextSong:"\u6B21\u306E\u66F2",loopThis:"\u3053\u306E\u66F2\u3092\u30EB\u30FC\u30D7",playPause:"\u518D\u751F/\u4E00\u6642\u505C\u6B62",lyrics:{show:"\u6B4C\u8A5E\u3092\u8868\u793A",title:"\u30C7\u30B3\u30FC\u30C9\u3055\u308C\u305F\u30C6\u30AD\u30B9\u30C8",noLyrics:"\u6B4C\u8A5E\u304C\u3042\u308A\u307E\u305B\u3093...",otherText:{title:"\u305D\u306E\u4ED6\u306E\u30C6\u30AD\u30B9\u30C8"}}};var vw={button:{title:"\u97F3\u58F0\u3092\u4FDD\u5B58",description:"\u97F3\u58F0\u3092WAV\u3001MIDI\u3001SF2\u3001\u307E\u305F\u306FRMI\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u4FDD\u5B58"},formats:{title:"\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u3092\u9078\u629E",formats:{wav:{button:{title:"WAV\u97F3\u58F0",description:"\u5909\u66F4\u3092\u52A0\u3048\u305F\u66F2\u3092.wav\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059"},options:{title:"\u97F3\u58F0\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3",confirm:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",normalizeVolume:{title:"\u97F3\u91CF\u306E\u6B63\u898F\u5316",description:"MIDI\u306E\u97F3\u91CF\u306B\u304B\u304B\u308F\u3089\u305A\u3001\u97F3\u91CF\u3092\u4E00\u5B9A\u306B\u4FDD\u3061\u307E\u3059\u3002\u63A8\u5968\u8A2D\u5B9A\u3067\u3059\u3002"},additionalTime:{title:"\u8FFD\u52A0\u6642\u9593\uFF08\u79D2\uFF09",description:"\u97F3\u304C\u30D5\u30A7\u30FC\u30C9\u30A2\u30A6\u30C8\u3059\u308B\u305F\u3081\u306B\u66F2\u306E\u6700\u5F8C\u306B\u8FFD\u52A0\u3059\u308B\u6642\u9593\u3067\u3059\u3002 (\u79D2)"},separateChannels:{title:"\u30C1\u30E3\u30F3\u30CD\u30EB\u3092\u5206\u5272",description:"\u5404\u30C1\u30E3\u30F3\u30CD\u30EB\u3092\u5225\u3005\u306E\u30D5\u30A1\u30A4\u30EB\u3068\u3057\u3066\u4FDD\u5B58\u3057\u307E\u3059\u3002\u30AA\u30B7\u30ED\u30B9\u30B3\u30FC\u30D7\u30D3\u30E5\u30FC\u30A2\u306A\u3069\u306B\u4FBF\u5229\u3067\u3059\u3002\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u4F7F\u7528\u3059\u308B\u3068\u30EA\u30D0\u30FC\u30D6\u3084\u30B3\u30FC\u30E9\u30B9\u304C\u7121\u52B9\u306B\u306A\u308A\u307E\u3059\u3002",saving:{title:"\u30C1\u30E3\u30F3\u30CD\u30EB\u30D5\u30A1\u30A4\u30EB",save:"\u30C1\u30E3\u30F3\u30CD\u30EB {0} \u3092\u4FDD\u5B58"}}},exportMessage:{message:"\u97F3\u58F0\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u3059...",estimated:"\u6B8B\u308A\u6642\u9593:",convertWav:"WAV\u306B\u5909\u63DB\u4E2D..."}},midi:{button:{title:"\u5909\u66F4\u3055\u308C\u305FMIDI",description:"\u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC\u3068\u697D\u5668\u306E\u5909\u66F4\u304C\u9069\u7528\u3055\u308C\u305FMIDI\u30D5\u30A1\u30A4\u30EB\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059"}},soundfont:{button:{title:"\u30C8\u30EA\u30DF\u30F3\u30B0\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8",description:"MIDI\u30D5\u30A1\u30A4\u30EB\u3067\u4F7F\u7528\u3055\u308C\u3066\u3044\u308B\u697D\u5668\u3068\u30B5\u30F3\u30D7\u30EB\u3060\u3051\u306B\u30C8\u30EA\u30DF\u30F3\u30B0\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059"},options:{title:"SF\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3",confirm:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",compress:{title:"\u5727\u7E2E",description:"\u672A\u5727\u7E2E\u306E\u30B5\u30F3\u30D7\u30EB\u3092Ogg Vorbis\u306E\u30ED\u30B9\u5727\u7E2E\u3067\u5727\u7E2E\u3057\u307E\u3059\u3002\u30D5\u30A1\u30A4\u30EB\u30B5\u30A4\u30BA\u304C\u5927\u5E45\u306B\u524A\u6E1B\u3055\u308C\u307E\u3059\u3002\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u304C\u3059\u3067\u306B\u5727\u7E2E\u3055\u308C\u3066\u3044\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u518D\u5727\u7E2E\u3055\u308C\u308B\u3053\u3068\u306F\u3042\u308A\u307E\u305B\u3093"},quality:{title:"\u5727\u7E2E\u54C1\u8CEA",description:"\u5727\u7E2E\u306E\u54C1\u8CEA\u3067\u3059\u3002\u9AD8\u3044\u307B\u3069\u826F\u3044"}}},rmidi:{button:{title:"\u57CB\u3081\u8FBC\u307E\u308C\u305FMIDI (.rmi)",description:"\u5909\u66F4\u3055\u308C\u305FMIDI\u3068\u30C8\u30EA\u30DF\u30F3\u30B0\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u30921\u3064\u306E\u30D5\u30A1\u30A4\u30EB\u306B\u57CB\u3081\u8FBC\u3093\u3067\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002 \u3053\u306E\u5F62\u5F0F\u306F\u5E83\u304F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u306A\u3044\u3053\u3068\u306B\u6CE8\u610F\u3057\u3066\u304F\u3060\u3055\u3044"},progress:{title:"\u57CB\u3081\u8FBC\u307E\u308C\u305FMIDI\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u4E2D...",loading:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3068MIDI\u3092\u8AAD\u307F\u8FBC\u307F\u4E2D...",modifyingMIDI:"MIDI\u3092\u4FEE\u6B63\u4E2D...",modifyingSoundfont:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u30C8\u30EA\u30DF\u30F3\u30B0\u4E2D...",saving:"RMIDI\u3092\u4FDD\u5B58\u4E2D...",done:"\u5B8C\u4E86\u3057\u307E\u3057\u305F\uFF01"},options:{title:"RMIDI\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3",confirm:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",compress:{title:"\u5727\u7E2E",description:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092Ogg Vorbis\u306E\u30ED\u30B9\u5727\u7E2E\u3067\u5727\u7E2E\u3057\u307E\u3059\u3002\u30D5\u30A1\u30A4\u30EB\u30B5\u30A4\u30BA\u304C\u5927\u5E45\u306B\u524A\u6E1B\u3055\u308C\u307E\u3059\u3002\u63A8\u5968\u8A2D\u5B9A\u3067\u3059\u3002"},quality:{title:"\u5727\u7E2E\u54C1\u8CEA",description:"\u5727\u7E2E\u306E\u54C1\u8CEA\u3067\u3059\u3002\u9AD8\u3044\u307B\u3069\u826F\u3044"},bankOffset:{title:"\u9280\u884C\u306E\u76F8\u6BBA",description:"\u30D5\u30A1\u30A4\u30EB\u306E\u30D0\u30F3\u30AF \u30AA\u30D5\u30BB\u30C3\u30C8\u3002\u5024 0 \u304C\u63A8\u5968\u3055\u308C\u307E\u3059\u3002\u4F55\u3092\u3057\u3066\u3044\u308B\u306E\u304B\u308F\u304B\u3063\u3066\u3044\u308B\u5834\u5408\u306B\u306E\u307F\u5909\u66F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002"}}}},metadata:{songTitle:{title:"\u30BF\u30A4\u30C8\u30EB:",description:"\u66F2\u306E\u30BF\u30A4\u30C8\u30EB"},album:{title:"\u30A2\u30EB\u30D0\u30E0:",description:"\u66F2\u306E\u30A2\u30EB\u30D0\u30E0"},artist:{title:"\u30A2\u30FC\u30C6\u30A3\u30B9\u30C8:",description:"\u66F2\u306E\u30A2\u30FC\u30C6\u30A3\u30B9\u30C8"},albumCover:{title:"\u30A2\u30EB\u30D0\u30E0\u30AB\u30D0\u30FC:",description:"\u66F2\u306E\u30A2\u30EB\u30D0\u30E0\u30AB\u30D0\u30FC"},creationDate:{title:"\u4F5C\u6210\u65E5:",description:"\u66F2\u306E\u4F5C\u6210\u65E5"},genre:{title:"\u30B8\u30E3\u30F3\u30EB:",description:"\u66F2\u306E\u30B8\u30E3\u30F3\u30EB"},comment:{title:"\u30B3\u30E1\u30F3\u30C8:",description:"\u66F2\u306E\u30B3\u30E1\u30F3\u30C8"},duration:{title:"\u9577\u3055:",description:"\u66F2\u306E\u9577\u3055"}}}};var Sw={localeName:"\u65E5\u672C\u8A9E",titleMessage:"SpessaSynth: SoundFont2 Javascript \u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC",demoTitleMessage:"SpessaSynth: SoundFont2 Javascript \u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC \u30AA\u30F3\u30E9\u30A4\u30F3\u30C7\u30E2",synthInit:{genericLoading:"\u8AAD\u307F\u8FBC\u307F\u4E2D...",loadingSoundfont:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u8AAD\u307F\u8FBC\u3093\u3067\u3044\u307E\u3059...",loadingBundledSoundfont:"\u30D0\u30F3\u30C9\u30EB\u3055\u308C\u305F\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u8AAD\u307F\u8FBC\u3093\u3067\u3044\u307E\u3059...",startingSynthesizer:"\u30B7\u30F3\u30BB\u30B5\u30A4\u30B6\u30FC\u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059...",savingSoundfont:"\u518D\u5229\u7528\u306E\u305F\u3081\u306B\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u4FDD\u5B58\u3057\u3066\u3044\u307E\u3059...",noWebAudio:"\u304A\u4F7F\u3044\u306E\u30D6\u30E9\u30A6\u30B6\u306FWeb Audio\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u305B\u3093\u3002",done:"\u6E96\u5099\u5B8C\u4E86\uFF01"},midiUploadButton:"MIDI\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9",exportAudio:vw,demoSoundfontUploadButton:"\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9",demoGithubPage:"\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30DA\u30FC\u30B8",demoSongButton:"\u30C7\u30E2\u30BD\u30F3\u30B0",credits:"\u30AF\u30EA\u30A8\u30A4\u30BF\u30FC",warnings:{noMidiSupport:"\u3053\u306E\u30D6\u30E9\u30A6\u30B6\u306FMIDI\u5165\u529B\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u306A\u3044\u305F\u3081\u3001\u3053\u306E\u6A5F\u80FD\u306F\u5229\u7528\u3067\u304D\u307E\u305B\u3093\u3002Chrome\u307E\u305F\u306FFirefox\u3092\u4F7F\u7528\u3059\u308B\u3053\u3068\u3092\u691C\u8A0E\u3057\u3066\u304F\u3060\u3055\u3044\u3002",outOfMemory:`\u30D6\u30E9\u30A6\u30B6\u306E\u30E1\u30E2\u30EA\u304C\u4E0D\u8DB3\u3057\u307E\u3057\u305F\u3002Firefox\u3084SF3\u30B5\u30A6\u30F3\u30C9\u30D5\u30A9\u30F3\u30C8\u306E\u4F7F\u7528\u3092\u691C\u8A0E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 \uFF08\u30A8\u30E9\u30FC\u306B\u3064\u3044\u3066\u306F\u30B3\u30F3\u30BD\u30FC\u30EB\u3092\u53C2\u7167\u3057\u3066\u304F\u3060\u3055\u3044\uFF09\u3002`,chromeMobile:`SpessaSynth\u306FChrome Mobile\u3067\u306E\u52D5\u4F5C\u304C\u826F\u304F\u3042\u308A\u307E\u305B\u3093\u3002 -\u4EE3\u308F\u308A\u306BFirefox Android\u3092\u4F7F\u7528\u3059\u308B\u3053\u3068\u3092\u691C\u8A0E\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,warning:"\u6CE8\u610F"},hideTopBar:{title:"\u30C8\u30C3\u30D7\u30D0\u30FC\u3092\u96A0\u3059",description:"\u30C8\u30C3\u30D7\uFF08\u30BF\u30A4\u30C8\u30EB\uFF09\u30D0\u30FC\u3092\u96A0\u3057\u3066\u3001\u3088\u308A\u30B7\u30FC\u30E0\u30EC\u30B9\u306A\u4F53\u9A13\u3092\u63D0\u4F9B\u3057\u307E\u3059"},musicPlayerMode:Qw,settings:pw,synthesizerController:ww,sequencerController:kw};var Fm="en",pa={en:$w,pl:Ew,ja:Sw};var ND=.2,di=class{constructor(r,l,h,E,F,I0,b0,B0){this.mode="dark",this.autoKeyRange=!1,this.renderer=E,this.midiKeyboard=F,this.midiDeviceHandler=I0,this.synthui=l,this.sequi=h,this.locale=B0,this.musicMode=b0,this.locales=pa,this.keyboardSizes={full:{min:0,max:127},piano:{min:21,max:108},"5 octaves":{min:36,max:96}};let P0=document.createElement("div");P0.style.position="relative",P0.classList.add("seamless_button"),P0.classList.add("settings_button"),r.appendChild(P0);let B1=document.createElement("div");B1.classList.add("seamless_button"),this.locale.bindObjectProperty(B1,"innerText","locale.musicPlayerMode.toggleButton.title"),this.locale.bindObjectProperty(B1,"title","locale.musicPlayerMode.toggleButton.description"),r.appendChild(B1);let x=document.createElement("div");x.classList.add("seamless_button"),this.locale.bindObjectProperty(x,"innerText","locale.hideTopBar.title"),this.locale.bindObjectProperty(x,"title","locale.hideTopBar.description"),r.appendChild(x);let j0=document.getElementsByClassName("show_top_button")[0];j0.innerHTML=By(20);let K0=document.createElement("span");this.locale.bindObjectProperty(K0,"innerText","locale.settings.toggleButton"),P0.appendChild(K0);let F1=document.createElement("div");F1.innerHTML=Ey(24),F1.classList.add("gear"),P0.appendChild(F1),this.mainDiv=document.createElement("div"),this.mainDiv.classList.add("settings_menu"),this.visible=!1,this.animationId=-1,P0.onclick=()=>this.setVisibility(!this.visible),r.appendChild(this.mainDiv),B1.onclick=this.toggleMusicPlayerMode.bind(this),x.onclick=this.hideTopPart.bind(this),this.hideOnDocClick=!0,this.mainDiv.onclick=()=>{this.hideOnDocClick=!1},document.addEventListener("click",()=>{if(!this.hideOnDocClick){this.hideOnDocClick=!0;return}this.setVisibility(!1)}),this.mainDiv.innerHTML=Gy,Ny(this.mainDiv);for(let b1 of this.mainDiv.querySelectorAll("*[translate-path]"))this.locale.bindObjectProperty(b1,"textContent",b1.getAttribute("translate-path"));for(let b1 of this.mainDiv.querySelectorAll("*[translate-path-title]")){let _5=b1.getAttribute("translate-path-title");this.locale.bindObjectProperty(b1,"textContent",_5+".title"),this.locale.bindObjectProperty(b1,"title",_5+".description")}this.getHtmlControls(),document.addEventListener("keydown",b1=>{switch(b1.key.toLowerCase()){case W7.settingsShow:this.setVisibility(!this.visible);break;case W7.synthesizerUIShow:this.setVisibility(!1)}}),window.savedSettings?this._loadSettings().then(()=>{this.createHandlers(E,F,I0,h,l)}):this.createHandlers(E,F,I0,h,l),this.topPartVisible=!0;let m2=!1;window.addEventListener("resize",()=>{let b1=window.screen.height,_5=window.screen.width,v2=window.outerHeight,Y2=window.outerWidth,J5;J5=_5===Y2&&b1===v2,J5!==m2&&(m2=J5,J5?this.hideTopPart():this.showTopPart())}),document.addEventListener("fullscreenchange",()=>{document.fullscreenElement===null?this.showTopPart():this.hideTopPart()})}addSequencer;async toggleMusicPlayerMode(){if(this.musicMode.visible===!1){try{await document.body.requestFullscreen()}catch{}await new Promise(r=>setTimeout(r,500))}this.musicMode.setVisibility(!this.musicMode.visible,document.getElementById("keyboard_canvas_wrapper")),this.renderer.renderBool=!this.musicMode.visible}showTopPart(){if(this.topPartVisible===!0)return;this.topPartVisible=!0;let r=document.getElementsByClassName("top_part")[0],l=document.getElementsByClassName("show_top_button")[0];r.style.display="",setTimeout(()=>{r.classList.remove("top_part_hidden")},75),l.classList.remove("shown"),l.style.display="none"}hideTopPart(){if(this.topPartVisible===!1)return;this.topPartVisible=!1;let r=document.getElementsByClassName("top_part")[0];r.classList.add("top_part_hidden"),setTimeout(()=>{r.style.display="none"},200);let l=document.getElementsByClassName("show_top_button")[0];l.style.display="flex",setTimeout(()=>{l.classList.add("shown")},75),l.onclick=this.showTopPart.bind(this)}setVisibility(r){this.animationId&&clearTimeout(this.animationId),r?(this.mainDiv.style.display="block",setTimeout(()=>{document.getElementsByClassName("top_part")[0].classList.add("settings_shown"),this.mainDiv.classList.add("settings_menu_show")},75),this.hideOnDocClick=!1):(document.getElementsByClassName("top_part")[0].classList.remove("settings_shown"),this.mainDiv.classList.remove("settings_menu_show"),this.animationId=setTimeout(()=>{this.mainDiv.style.display="none"},ND*1e3)),this.visible=r}createHandlers(r,l,h,E,F){this._createRendererHandler(r),this._createMidiSettingsHandler(h,E,F),this._createKeyboardHandler(l,F,r),this._createInterfaceSettingsHandler()}getHtmlControls(){this.htmlControls={renderer:{noteTimeSlider:document.getElementById("note_time_slider"),analyserToggler:document.getElementById("analyser_toggler"),noteToggler:document.getElementById("note_toggler"),activeNoteToggler:document.getElementById("active_note_toggler"),visualPitchToggler:document.getElementById("visual_pitch_toggler"),stabilizeWaveformsToggler:document.getElementById("stabilize_waveforms_toggler"),analyserThicknessSlider:document.getElementById("analyser_thickness_slider"),analyserFftSlider:document.getElementById("analyser_fft_slider"),waveMultiplierSlizer:document.getElementById("wave_multiplier_slider")},keyboard:{channelSelector:document.getElementById("channel_selector"),modeSelector:document.getElementById("mode_selector"),sizeSelector:document.getElementById("keyboard_size_selector")},midi:{outputSelector:document.getElementById("midi_output_selector"),inputSelector:document.getElementById("midi_input_selector")},interface:{themeSelector:document.getElementById("toggle_mode_button"),languageSelector:document.getElementById("language_selector"),layoutSelector:document.getElementById("layout_selector")}}}};di.prototype._toggleDarkMode=Ky;di.prototype._createInterfaceSettingsHandler=Hy;di.prototype._changeLayout=qy;di.prototype._createRendererHandler=Vy;di.prototype._createMidiSettingsHandler=Zy;di.prototype._createMidiInputHandler=Wy;di.prototype._createMidiOutputHandler=jy;di.prototype._createKeyboardHandler=Ty;di.prototype._loadSettings=Uy;di.prototype._serializeSettings=Py;di.prototype._saveSettings=Oy;var Dw=.5,DB=class{constructor(r,l){this.mainDiv=r,this.mainDiv.innerHTML=` +\u4EE3\u308F\u308A\u306BFirefox Android\u3092\u4F7F\u7528\u3059\u308B\u3053\u3068\u3092\u691C\u8A0E\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,warning:"\u6CE8\u610F"},hideTopBar:{title:"\u30C8\u30C3\u30D7\u30D0\u30FC\u3092\u96A0\u3059",description:"\u30C8\u30C3\u30D7\uFF08\u30BF\u30A4\u30C8\u30EB\uFF09\u30D0\u30FC\u3092\u96A0\u3057\u3066\u3001\u3088\u308A\u30B7\u30FC\u30E0\u30EC\u30B9\u306A\u4F53\u9A13\u3092\u63D0\u4F9B\u3057\u307E\u3059"},musicPlayerMode:Qw,settings:pw,synthesizerController:ww,sequencerController:kw};var Fm="en",pa={en:$w,pl:Ew,ja:Sw};var ND=.2,di=class{constructor(r,l,h,E,F,I0,b0,B0){this.mode="dark",this.autoKeyRange=!1,this.renderer=E,this.midiKeyboard=F,this.midiDeviceHandler=I0,this.synthui=l,this.sequi=h,this.locale=B0,this.musicMode=b0,this.locales=pa,this.keyboardSizes={full:{min:0,max:127},piano:{min:21,max:108},"5 octaves":{min:36,max:96}};let O0=document.createElement("div");O0.style.position="relative",O0.classList.add("seamless_button"),O0.classList.add("settings_button"),r.appendChild(O0);let B1=document.createElement("div");B1.classList.add("seamless_button"),this.locale.bindObjectProperty(B1,"innerText","locale.musicPlayerMode.toggleButton.title"),this.locale.bindObjectProperty(B1,"title","locale.musicPlayerMode.toggleButton.description"),r.appendChild(B1);let R=document.createElement("div");R.classList.add("seamless_button"),this.locale.bindObjectProperty(R,"innerText","locale.hideTopBar.title"),this.locale.bindObjectProperty(R,"title","locale.hideTopBar.description"),r.appendChild(R);let j0=document.getElementsByClassName("show_top_button")[0];j0.innerHTML=By(20);let K0=document.createElement("span");this.locale.bindObjectProperty(K0,"innerText","locale.settings.toggleButton"),O0.appendChild(K0);let F1=document.createElement("div");F1.innerHTML=Ey(24),F1.classList.add("gear"),O0.appendChild(F1),this.mainDiv=document.createElement("div"),this.mainDiv.classList.add("settings_menu"),this.visible=!1,this.animationId=-1,O0.onclick=()=>this.setVisibility(!this.visible),r.appendChild(this.mainDiv),B1.onclick=this.toggleMusicPlayerMode.bind(this),R.onclick=this.hideTopPart.bind(this),this.hideOnDocClick=!0,this.mainDiv.onclick=()=>{this.hideOnDocClick=!1},document.addEventListener("click",()=>{if(!this.hideOnDocClick){this.hideOnDocClick=!0;return}this.setVisibility(!1)}),this.mainDiv.innerHTML=Gy,Ny(this.mainDiv);for(let b1 of this.mainDiv.querySelectorAll("*[translate-path]"))this.locale.bindObjectProperty(b1,"textContent",b1.getAttribute("translate-path"));for(let b1 of this.mainDiv.querySelectorAll("*[translate-path-title]")){let _5=b1.getAttribute("translate-path-title");this.locale.bindObjectProperty(b1,"textContent",_5+".title"),this.locale.bindObjectProperty(b1,"title",_5+".description")}this.getHtmlControls(),document.addEventListener("keydown",b1=>{switch(b1.key.toLowerCase()){case W7.settingsShow:this.setVisibility(!this.visible);break;case W7.synthesizerUIShow:this.setVisibility(!1)}}),window.savedSettings?this._loadSettings().then(()=>{this.createHandlers(E,F,I0,h,l)}):this.createHandlers(E,F,I0,h,l),this.topPartVisible=!0;let m2=!1;window.addEventListener("resize",()=>{let b1=window.screen.height,_5=window.screen.width,v2=window.outerHeight,J2=window.outerWidth,n3;n3=_5===J2&&b1===v2,n3!==m2&&(m2=n3,n3?this.hideTopPart():this.showTopPart())}),document.addEventListener("fullscreenchange",()=>{document.fullscreenElement===null?this.showTopPart():this.hideTopPart()})}addSequencer;async toggleMusicPlayerMode(){if(this.musicMode.visible===!1){try{await document.body.requestFullscreen()}catch{}await new Promise(r=>setTimeout(r,500))}this.musicMode.setVisibility(!this.musicMode.visible,document.getElementById("keyboard_canvas_wrapper")),this.renderer.renderBool=!this.musicMode.visible}showTopPart(){if(this.topPartVisible===!0)return;this.topPartVisible=!0;let r=document.getElementsByClassName("top_part")[0],l=document.getElementsByClassName("show_top_button")[0];r.style.display="",setTimeout(()=>{r.classList.remove("top_part_hidden")},75),l.classList.remove("shown"),l.style.display="none"}hideTopPart(){if(this.topPartVisible===!1)return;this.topPartVisible=!1;let r=document.getElementsByClassName("top_part")[0];r.classList.add("top_part_hidden"),setTimeout(()=>{r.style.display="none"},200);let l=document.getElementsByClassName("show_top_button")[0];l.style.display="flex",setTimeout(()=>{l.classList.add("shown")},75),l.onclick=this.showTopPart.bind(this)}setVisibility(r){this.animationId&&clearTimeout(this.animationId),r?(this.mainDiv.style.display="block",setTimeout(()=>{document.getElementsByClassName("top_part")[0].classList.add("settings_shown"),this.mainDiv.classList.add("settings_menu_show")},75),this.hideOnDocClick=!1):(document.getElementsByClassName("top_part")[0].classList.remove("settings_shown"),this.mainDiv.classList.remove("settings_menu_show"),this.animationId=setTimeout(()=>{this.mainDiv.style.display="none"},ND*1e3)),this.visible=r}createHandlers(r,l,h,E,F){this._createRendererHandler(r),this._createMidiSettingsHandler(h,E,F),this._createKeyboardHandler(l,F,r),this._createInterfaceSettingsHandler()}getHtmlControls(){this.htmlControls={renderer:{noteTimeSlider:document.getElementById("note_time_slider"),analyserToggler:document.getElementById("analyser_toggler"),noteToggler:document.getElementById("note_toggler"),activeNoteToggler:document.getElementById("active_note_toggler"),visualPitchToggler:document.getElementById("visual_pitch_toggler"),stabilizeWaveformsToggler:document.getElementById("stabilize_waveforms_toggler"),analyserThicknessSlider:document.getElementById("analyser_thickness_slider"),analyserFftSlider:document.getElementById("analyser_fft_slider"),waveMultiplierSlizer:document.getElementById("wave_multiplier_slider")},keyboard:{channelSelector:document.getElementById("channel_selector"),modeSelector:document.getElementById("mode_selector"),sizeSelector:document.getElementById("keyboard_size_selector")},midi:{outputSelector:document.getElementById("midi_output_selector"),inputSelector:document.getElementById("midi_input_selector")},interface:{themeSelector:document.getElementById("toggle_mode_button"),languageSelector:document.getElementById("language_selector"),layoutSelector:document.getElementById("layout_selector")}}}};di.prototype._toggleDarkMode=Ky;di.prototype._createInterfaceSettingsHandler=Hy;di.prototype._changeLayout=qy;di.prototype._createRendererHandler=Vy;di.prototype._createMidiSettingsHandler=Zy;di.prototype._createMidiInputHandler=Wy;di.prototype._createMidiOutputHandler=jy;di.prototype._createKeyboardHandler=Ty;di.prototype._loadSettings=Uy;di.prototype._serializeSettings=Py;di.prototype._saveSettings=Oy;var Dw=.5,DB=class{constructor(r,l){this.mainDiv=r,this.mainDiv.innerHTML=`
@@ -241,19 +241,19 @@ var oB=(o=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(o,{get:(r,l)=>(
`;for(let h of this.mainDiv.querySelectorAll("*[translate-path]"))l.bindObjectProperty(h,"textContent",h.getAttribute("translate-path"));for(let h of this.mainDiv.querySelectorAll("*[translate-path-title]"))l.bindObjectProperty(h,"textContent",h.getAttribute("translate-path-title")+".title"),l.bindObjectProperty(h,"title",h.getAttribute("translate-path-title")+".description");this.timeoutId=-1,this.visible=!1,this.locale=l}toggleDarkMode(){this.mainDiv.getElementsByClassName("player_info_wrapper")[0].classList.toggle("light_mode")}setTitle(r){document.getElementById("player_info_title").textContent=r}connectSequencer(r){this.seq=r,this.seq.addOnSongChangeEvent(l=>{let h=l.copyright.replaceAll(` `,""),E=(K0,F1,m2=!0)=>{let b1=document.getElementById(K0);if(F1.length>0)if(b1.parentElement.classList.remove("hidden"),b1.innerHTML="",F1.length>30&&m2){b1.classList.add("marquee");let _5=document.createElement("span");_5.textContent=F1,b1.appendChild(_5)}else b1.textContent=F1;else b1.parentElement.classList.add("hidden")};E("player_info_detail",h),E("player_info_time",ha(this.seq.duration).time),E("player_info_file_name",l.fileName,!1);let F=(K0,F1,m2,b1="")=>this.seq.midiData.RMIDInfo?.[K0]===void 0?F1:b1+m2.decode(this.seq.midiData.RMIDInfo?.[K0]).replace(/\0$/,""),I0=F("IENC","ascii",new TextDecoder),b0=new TextDecoder(I0);E("player_info_album",F("IPRD","",b0)),E("player_info_artist",F("IART","",b0)),E("player_info_genre",F("IGNR","",b0)),E("player_info_creation",F("ICRD","",b0)+F("ICRT","",b0,` -`)),E("player_info_comment",F("ICMT","",b0));let B0=this.mainDiv.getElementsByTagName("svg")[0],P0=this.mainDiv.getElementsByTagName("img")[0],B1=document.getElementById("player_info_background_image");if(!l.isEmbedded){B0.style.display="",P0.style.display="none",B1.style.setProperty("--bg-image","undefined");return}if(l.RMIDInfo.IPIC===void 0){B0.style.display="",P0.style.display="none",B1.style.setProperty("--bg-image","undefined");return}B0.style.display="none",P0.style.display="";let x=new Blob([l.RMIDInfo.IPIC.buffer]),j0=URL.createObjectURL(x);P0.src=j0,B1.style.setProperty("--bg-image",`url('${j0}')`)},"player-js-song-change")}setVisibility(r,l){if(r===this.visible)return;this.visible=r,this.timeoutId&&clearTimeout(this.timeoutId);let h=this.mainDiv;if(r){l.classList.add("out_animation"),this.savedCKWrapperHeight=l.clientHeight;let E=l.clientHeight,F=l.getBoundingClientRect().top;h.style.position="absolute",h.style.top=`${F}px`,h.style.height=`${E}px`,h.style.display="flex",setTimeout(()=>{h.classList.add("player_info_show"),document.body.style.overflow="hidden"},75),this.timeoutId=setTimeout(async()=>{l.style.display="none",h.style.position="",h.style.top="",h.style.height="",document.body.style.overflow=""},Dw*1e3)}else{let E=h.getBoundingClientRect().top;l.style.display="",l.style.position="absolute",l.style.top=`${E}px`,l.style.height=`${this.savedCKWrapperHeight}px`,h.classList.remove("player_info_show"),setTimeout(()=>{l.classList.remove("out_animation"),document.body.style.overflow="hidden"},75),this.timeoutId=setTimeout(()=>{h.style.display="none",l.style.position="",l.style.top="",l.style.height="",document.body.style.overflow=""},Dw*1e3)}}};var bB=class{constructor(r){this.locale=pa[r]||pa[Fm],this.fallbackLocale=pa[Fm],this.localeCode=r,this._boundObjectProperties=[]}getLocaleString(r,l=[]){let h=this._resolveLocalePath(r);return l.length>0?this._formatLocale(h,l):h}_applyPropertyInternal(r){if(r.isEdited)return;let l=this._resolveLocalePath(r.localePath);r.formattingArguments.length>0&&(l=this._formatLocale(l,r.formattingArguments)),r.object[r.propertyName]=l}_validatePropertyIntegrity(r){let l=this._resolveLocalePath(r.localePath);r.formattingArguments.length>0&&(l=this._formatLocale(l,r.formattingArguments)),r.object[r.propertyName]!==l&&(r.isEdited=!0)}onLocaleChanged=[];_formatLocale(r,l){return r.replace(/{(\d+)}/g,(h,E)=>typeof l[E]<"u"?l[E]:h)}bindObjectProperty(r,l,h,E=[]){let F={object:r,propertyName:l,localePath:h,formattingArguments:E,isEdited:!1};this._applyPropertyInternal(F),this._boundObjectProperties.push(F)}_resolveLocalePath(r,l=!1){if(!r.startsWith("locale."))throw new Error(`Invalid locale path: ${r} (it should start with "locale.")`);let h=r.split("."),E=l?this.fallbackLocale:this.locale;for(let F=1;F{this._validatePropertyIntegrity(E)}),this.locale=h,this._boundObjectProperties.forEach(E=>{this._applyPropertyInternal(E)}),this.onLocaleChanged.forEach(E=>E())}};function Lm(o,r=!0,l=0,h={}){let E=o.getChannelData(l),F=o.getChannelData(l+1),I0=E.length,b0=2,B0=new l6(0),P0=Object.keys(h).length>0;if(P0){let Y2=new TextEncoder,J5=[So("INFO"),$8("ICMT",Y2.encode("Created with SpessaSynth"),!0)];h.artist&&J5.push($8("IART",Y2.encode(h.artist),!0)),h.album&&J5.push($8("IPRD",Y2.encode(h.album),!0)),h.genre&&J5.push($8("IGNR",Y2.encode(h.genre),!0)),h.title&&J5.push($8("INAM",Y2.encode(h.title),!0)),B0=$8("LIST",DA(J5))}let B1=44,x=I0*2*b0,j0=B1+x+B0.length-8,K0=new Uint8Array(B1);K0.set([82,73,70,70],0),K0.set(new Uint8Array([j0&255,j0>>8&255,j0>>16&255,j0>>24&255]),4),K0.set([87,65,86,69],8),K0.set([102,109,116,32],12),K0.set([16,0,0,0],16),K0.set([1,0],20),K0.set([2,0],22);let F1=o.sampleRate;K0.set(new Uint8Array([F1&255,F1>>8&255,F1>>16&255,F1>>24&255]),24);let m2=F1*2*b0;K0.set(new Uint8Array([m2&255,m2>>8&255,m2>>16&255,m2>>24&255]),28),K0.set([4,0],32),K0.set([16,0],34),K0.set([100,97,116,97],36),K0.set(new Uint8Array([x&255,x>>8&255,x>>16&255,x>>24&255]),40);let b1,_5=B1;P0?b1=new Uint8Array(B1+x+B0.length):b1=new Uint8Array(B1+x),b1.set(K0,0);let v2=32767;if(r){let Y2=E.map((J5,U5)=>Math.max(Math.abs(J5),Math.abs(F[U5]))).reduce((J5,U5)=>Math.max(J5,U5));v2=Y2>0?32767/Y2:1}for(let Y2=0;Y2>8&255,b1[_5++]=U5&255,b1[_5++]=U5>>8&255}return P0&&b1.set(B0,_5),new Blob([b1.buffer],{type:"audio/wav"})}var _B="synthetizer/worklet_processor.min.js";var bw=1e3;async function _w(o=!0,r=2,l=!1,h={}){if(this.isExporting=!0,!this.seq)throw new Error("No sequencer active");let E=manager.localeManager.getLocaleString("locale.exportAudio.formats.formats.wav.exportMessage.message"),F=manager.localeManager.getLocaleString("locale.exportAudio.formats.formats.wav.exportMessage.estimated"),I0=manager.localeManager.getLocaleString("locale.synthInit.genericLoading"),b0=$t(E,[{type:"text",textContent:I0},{type:"progress"}],9999999,!1),B0=await this.seq.getMIDI(),P0=B0.duration+r,B1=new OfflineAudioContext({numberOfChannels:l?32:2,sampleRate:this.context.sampleRate,length:this.context.sampleRate*P0});await B1.audioWorklet.addModule(new URL("../../spessasynth_lib/"+_B,import.meta.url));let x=await this.synth.getSynthesizerSnapshot(),j0=this.soundFont,K0;try{K0=new Ah(B1.destination,j0,!1,{parsedMIDI:B0,snapshot:x,oneOutput:l},{reverbEnabled:!0,chorusEnabled:!0,chorusConfig:void 0,reverbImpulseResponse:this.impulseResponse})}catch(a0){throw $t(this.localeManager.getLocaleString("locale.warnings.warning"),[{type:"text",textContent:this.localeManager.getLocaleString("locale.warnings.outOfMemory")}]),a0}let F1=b0.div.getElementsByTagName("p")[0],m2=b0.div.getElementsByClassName("notification_progress")[0],b1=bw/1e3,_5=K0.currentTime,v2=P0,Y2=.1,J5=setInterval(()=>{let a0=K0.currentTime-_5;_5=K0.currentTime;let H5=K0.currentTime/P0;m2.style.width=`${H5*100}%`;let n6=a0/b1,b6=(1-H5)/n6*P0;b6!==1/0&&(v2=Y2*b6+(1-Y2)*v2,F1.innerText=`${F} ${ha(v2).time}`)},bw),U5=await B1.startRendering();if(m2.style.width="100%",clearInterval(J5),F1.innerText=this.localeManager.getLocaleString("locale.exportAudio.formats.formats.wav.exportMessage.convertWav"),await new Promise(a0=>setTimeout(a0,75)),!l)this.saveBlob(Lm(U5,o,0,h),`${this.seqUI.currentSongTitle||"unnamed_song"}.wav`);else{let a0="locale.exportAudio.formats.formats.wav.options.separateChannels.saving.",H5=[],n6=new Set;for(let H6 of B0.usedChannelsOnTrack)H6.forEach(c6=>n6.add(c6));for(let H6=0;H6<16;H6++){let c6=!0;for(let w4=H6;w4{let J4=L4.textContent;L4.textContent=this.localeManager.getLocaleString("locale.exportAudio.formats.formats.wav.exportMessage.convertWav"),await new Promise(Mo=>setTimeout(Mo,75));let b4=Lm(U5,!1,H6*2),bt=`${H6+1} - ${x.channelSnapshots[H6].patchName}.wav`;this.saveBlob(b4,bt),L4.classList.add("green_button"),L4.textContent=J4}})}let b6=$t(this.localeManager.getLocaleString(a0+"title"),H5,99999999,!0,void 0,{display:"flex",flexWrap:"wrap",justifyContent:"space-around"});b6.div.style.width="30rem"}Ii(b0.id),this.isExporting=!1}async function Rw(){if(this.isExporting)return;let o="locale.exportAudio.formats.formats.wav.options.",r="locale.exportAudio.formats.metadata.",l=(P0,B1,x)=>this.seq.midiData.RMIDInfo?.[P0]===void 0?B1:x.decode(this.seq.midiData.RMIDInfo?.[P0]).replace(/\0$/,""),h=l("IENC","ascii",new TextDecoder),E=new TextDecoder(h),F=l("IPRD","",E),I0=l("IART","",E),b0=l("IGNR","",E),B0=[{type:"toggle",translatePathTitle:o+"normalizeVolume",attributes:{"normalize-volume-toggle":"1",checked:"true"}},{type:"input",translatePathTitle:o+"additionalTime",attributes:{value:"2",type:"number"}},{type:"toggle",translatePathTitle:o+"separateChannels",attributes:{"separate-channels-toggle":"1"}},{type:"input",translatePathTitle:r+"songTitle",attributes:{name:"song_title",type:"text",value:this.seqUI.currentSongTitle}},{type:"input",translatePathTitle:r+"album",attributes:{value:F,name:"album",type:"text"}},{type:"input",translatePathTitle:r+"artist",attributes:{value:I0,name:"artist",type:"text"}},{type:"input",translatePathTitle:r+"genre",attributes:{value:b0,name:"genre",type:"text"}},{type:"button",textContent:this.localeManager.getLocaleString(o+"confirm"),onClick:P0=>{Ii(P0.id);let B1=P0.div.querySelector("input[normalize-volume-toggle]").checked,x=P0.div.querySelector("input[type='number']").value,j0=P0.div.querySelector("input[separate-channels-toggle]").checked,K0=P0.div.querySelector("input[name='artist']").value,F1=P0.div.querySelector("input[name='album']").value,m2=P0.div.querySelector("input[name='song_title']").value,b1=P0.div.querySelector("input[name='genre']").value,_5={artist:K0.length>0?K0:void 0,album:F1.length>0?F1:void 0,title:m2.length>0?m2:void 0,genre:b1.length>0?b1:void 0};this._doExportAudioData(B1,parseInt(x),j0,_5)}}];$t(this.localeManager.getLocaleString(o+"title"),B0,9999999,!0,this.localeManager)}async function xw(){let o=await this.seq.getMIDI();$h(o,await this.synth.getSynthesizerSnapshot());let r=uB(o),l=new Blob([r],{type:"audio/mid"});this.saveBlob(l,`${this.seqUI.currentSongTitle||"unnamed_song"}.mid`)}function Fw(o,r){Xt("%cSearching for all used programs and keys...",S1.info);let l=16+o.midiPortChannelOffsets.reduce((x,j0)=>j0>x?j0:x),h=[];for(let x=0;x{I0[F1]>=K0.length||K0[I0[F1]].ticks0;){let x=B0(),j0=o.tracks[x];if(I0[x]>=j0.length){b0--;continue}let K0=j0[I0[x]];if(I0[x]++,K0.messageStatusByte===J3.midiPort){P0[x]=K0.messageData[0];continue}let F1=K0.messageStatusByte&240;if(F1!==J3.noteOn&&F1!==J3.controllerChange&&F1!==J3.programChange&&F1!==J3.systemExclusive)continue;let m2=(K0.messageStatusByte&15)+o.midiPortChannelOffsets[P0[x]]||0,b1=h[m2];switch(F1){case J3.programChange:b1.program=K0.messageData[0],E(b1);break;case J3.controllerChange:if(K0.messageData[0]!==s6.bankSelect||B1==="gs"&&b1.drums)continue;let _5=K0.messageData[1],v2=Math.max(0,_5-o.bankOffset);if(B1==="xg"){let U5=_5===120||_5===126||_5===127;U5!==b1.drums?(b1.drums=U5,b1.bank=b1.drums?128:v2,E(b1)):b1.bank=b1.drums?128:v2;continue}h[m2].bank=v2;break;case J3.noteOn:if(K0.messageData[1]===0)continue;E(b1),F[b1.string].add(`${K0.messageData[0]}-${K0.messageData[1]}`);break;case J3.systemExclusive:if(K0.messageData[0]!==65||K0.messageData[2]!==66||K0.messageData[3]!==18||K0.messageData[4]!==64||!(K0.messageData[5]&16)||K0.messageData[6]!==21){K0.messageData[0]===67&&K0.messageData[2]===76&&K0.messageData[5]===126&&K0.messageData[6]===0&&(B1="xg");continue}let Y2=[9,0,1,2,3,4,5,6,7,8,10,11,12,13,14,15][K0.messageData[5]&15]+o.midiPortChannelOffsets[P0[x]],J5=!!(K0.messageData[7]>0&&K0.messageData[5]>>4);b1=h[Y2],b1.drums=J5,b1.bank=J5?128:0,E(b1);break}}for(let x of Object.keys(F))F[x].size===0&&(X5(`%cDetected change but no keys for %c${x}`,S1.info,S1.value),delete F[x]);return e4(),F}function RB(o,r){function l(E,F){let I0=0;for(let b0=0;b0=P0.min&&j0.key<=P0.max&&j0.velocity>=B1.min&&j0.velocity<=B1.max){x=!0;break}x||(X5(`%c${B0.sample.sampleName} %cremoved from %c${E.instrumentName}%c. Use count: %c${B0.useCount-1}`,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized),E.safeDeleteZone(b0)&&(I0++,b0--,X5(`%c${B0.sample.sampleName} %cdeleted`,S1.recognized,S1.info)),B0.sample.useCount<1&&o.deleteSample(B0.sample))}return I0}or("%cTrimming soundfont...",S1.info);let h=Fw(r,o);Xt("%cModifying soundfont...",S1.info),X5("Detected keys for midi:",h);for(let E=0;E{let x=B1.split("-");return{key:parseInt(x[0]),velocity:parseInt(x[1])}});Xt(`%cTrimming %c${F.presetName}`,S1.info,S1.recognized),X5(`Keys for ${F.presetName}:`,B0);let P0=0;for(let B1=0;B1=j0.min&&m2.key<=j0.max&&m2.velocity>=K0.min&&m2.velocity<=K0.max){F1=!0;let b1=l(x.instrument,B0);X5(`%cTrimmed off %c${b1}%c zones from %c${x.instrument.instrumentName}`,S1.info,S1.recognized,S1.info,S1.recognized);break}F1||(P0++,F.deleteZone(B1),x.instrument.useCount<1&&o.deleteInstrument(x.instrument),B1--)}X5(`%cTrimmed off %c${P0}%c zones from %c${F.presetName}`,S1.info,S1.recognized,S1.info,S1.recognized),e4()}}o.removeUnusedElements(),o.soundFontInfo.ICMT=`NOTE: This soundfont was trimmed by SpessaSynth to only contain presets used in "${r.midiName}" +`)),E("player_info_comment",F("ICMT","",b0));let B0=this.mainDiv.getElementsByTagName("svg")[0],O0=this.mainDiv.getElementsByTagName("img")[0],B1=document.getElementById("player_info_background_image");if(!l.isEmbedded){B0.style.display="",O0.style.display="none",B1.style.setProperty("--bg-image","undefined");return}if(l.RMIDInfo.IPIC===void 0){B0.style.display="",O0.style.display="none",B1.style.setProperty("--bg-image","undefined");return}B0.style.display="none",O0.style.display="";let R=new Blob([l.RMIDInfo.IPIC.buffer]),j0=URL.createObjectURL(R);O0.src=j0,B1.style.setProperty("--bg-image",`url('${j0}')`)},"player-js-song-change")}setVisibility(r,l){if(r===this.visible)return;this.visible=r,this.timeoutId&&clearTimeout(this.timeoutId);let h=this.mainDiv;if(r){l.classList.add("out_animation"),this.savedCKWrapperHeight=l.clientHeight;let E=l.clientHeight,F=l.getBoundingClientRect().top;h.style.position="absolute",h.style.top=`${F}px`,h.style.height=`${E}px`,h.style.display="flex",setTimeout(()=>{h.classList.add("player_info_show"),document.body.style.overflow="hidden"},75),this.timeoutId=setTimeout(async()=>{l.style.display="none",h.style.position="",h.style.top="",h.style.height="",document.body.style.overflow=""},Dw*1e3)}else{let E=h.getBoundingClientRect().top;l.style.display="",l.style.position="absolute",l.style.top=`${E}px`,l.style.height=`${this.savedCKWrapperHeight}px`,h.classList.remove("player_info_show"),setTimeout(()=>{l.classList.remove("out_animation"),document.body.style.overflow="hidden"},75),this.timeoutId=setTimeout(()=>{h.style.display="none",l.style.position="",l.style.top="",l.style.height="",document.body.style.overflow=""},Dw*1e3)}}};var bB=class{constructor(r){this.locale=pa[r]||pa[Fm],this.fallbackLocale=pa[Fm],this.localeCode=r,this._boundObjectProperties=[]}getLocaleString(r,l=[]){let h=this._resolveLocalePath(r);return l.length>0?this._formatLocale(h,l):h}_applyPropertyInternal(r){if(r.isEdited)return;let l=this._resolveLocalePath(r.localePath);r.formattingArguments.length>0&&(l=this._formatLocale(l,r.formattingArguments)),r.object[r.propertyName]=l}_validatePropertyIntegrity(r){let l=this._resolveLocalePath(r.localePath);r.formattingArguments.length>0&&(l=this._formatLocale(l,r.formattingArguments)),r.object[r.propertyName]!==l&&(r.isEdited=!0)}onLocaleChanged=[];_formatLocale(r,l){return r.replace(/{(\d+)}/g,(h,E)=>typeof l[E]<"u"?l[E]:h)}bindObjectProperty(r,l,h,E=[]){let F={object:r,propertyName:l,localePath:h,formattingArguments:E,isEdited:!1};this._applyPropertyInternal(F),this._boundObjectProperties.push(F)}_resolveLocalePath(r,l=!1){if(!r.startsWith("locale."))throw new Error(`Invalid locale path: ${r} (it should start with "locale.")`);let h=r.split("."),E=l?this.fallbackLocale:this.locale;for(let F=1;F{this._validatePropertyIntegrity(E)}),this.locale=h,this._boundObjectProperties.forEach(E=>{this._applyPropertyInternal(E)}),this.onLocaleChanged.forEach(E=>E())}};function Lm(o,r=!0,l=0,h={}){let E=o.getChannelData(l),F=o.getChannelData(l+1),I0=E.length,b0=2,B0=new l6(0),O0=Object.keys(h).length>0;if(O0){let J2=new TextEncoder,n3=[So("INFO"),$8("ICMT",J2.encode("Created with SpessaSynth"),!0)];h.artist&&n3.push($8("IART",J2.encode(h.artist),!0)),h.album&&n3.push($8("IPRD",J2.encode(h.album),!0)),h.genre&&n3.push($8("IGNR",J2.encode(h.genre),!0)),h.title&&n3.push($8("INAM",J2.encode(h.title),!0)),B0=$8("LIST",DA(n3))}let B1=44,R=I0*2*b0,j0=B1+R+B0.length-8,K0=new Uint8Array(B1);K0.set([82,73,70,70],0),K0.set(new Uint8Array([j0&255,j0>>8&255,j0>>16&255,j0>>24&255]),4),K0.set([87,65,86,69],8),K0.set([102,109,116,32],12),K0.set([16,0,0,0],16),K0.set([1,0],20),K0.set([2,0],22);let F1=o.sampleRate;K0.set(new Uint8Array([F1&255,F1>>8&255,F1>>16&255,F1>>24&255]),24);let m2=F1*2*b0;K0.set(new Uint8Array([m2&255,m2>>8&255,m2>>16&255,m2>>24&255]),28),K0.set([4,0],32),K0.set([16,0],34),K0.set([100,97,116,97],36),K0.set(new Uint8Array([R&255,R>>8&255,R>>16&255,R>>24&255]),40);let b1,_5=B1;O0?b1=new Uint8Array(B1+R+B0.length):b1=new Uint8Array(B1+R),b1.set(K0,0);let v2=32767;if(r){let J2=E.map((n3,U5)=>Math.max(Math.abs(n3),Math.abs(F[U5]))).reduce((n3,U5)=>Math.max(n3,U5));v2=J2>0?32767/J2:1}for(let J2=0;J2>8&255,b1[_5++]=U5&255,b1[_5++]=U5>>8&255}return O0&&b1.set(B0,_5),new Blob([b1.buffer],{type:"audio/wav"})}var _B="synthetizer/worklet_processor.min.js";var bw=1e3;async function _w(o=!0,r=2,l=!1,h={}){if(this.isExporting=!0,!this.seq)throw new Error("No sequencer active");let E=manager.localeManager.getLocaleString("locale.exportAudio.formats.formats.wav.exportMessage.message"),F=manager.localeManager.getLocaleString("locale.exportAudio.formats.formats.wav.exportMessage.estimated"),I0=manager.localeManager.getLocaleString("locale.synthInit.genericLoading"),b0=$t(E,[{type:"text",textContent:I0},{type:"progress"}],9999999,!1),B0=await this.seq.getMIDI(),O0=B0.duration+r,B1=new OfflineAudioContext({numberOfChannels:l?32:2,sampleRate:this.context.sampleRate,length:this.context.sampleRate*O0});await B1.audioWorklet.addModule(new URL("../../spessasynth_lib/"+_B,import.meta.url));let R=await this.synth.getSynthesizerSnapshot(),j0=this.soundFont,K0;try{K0=new Ah(B1.destination,j0,!1,{parsedMIDI:B0,snapshot:R,oneOutput:l},{reverbEnabled:!0,chorusEnabled:!0,chorusConfig:void 0,reverbImpulseResponse:this.impulseResponse})}catch($0){throw $t(this.localeManager.getLocaleString("locale.warnings.warning"),[{type:"text",textContent:this.localeManager.getLocaleString("locale.warnings.outOfMemory")}]),$0}let F1=b0.div.getElementsByTagName("p")[0],m2=b0.div.getElementsByClassName("notification_progress")[0],b1=bw/1e3,_5=K0.currentTime,v2=O0,J2=.1,n3=setInterval(()=>{let $0=K0.currentTime-_5;_5=K0.currentTime;let Y5=K0.currentTime/O0;m2.style.width=`${Y5*100}%`;let n6=$0/b1,c6=(1-Y5)/n6*O0;c6!==1/0&&(v2=J2*c6+(1-J2)*v2,F1.innerText=`${F} ${ha(v2).time}`)},bw),U5=await B1.startRendering();if(m2.style.width="100%",clearInterval(n3),F1.innerText=this.localeManager.getLocaleString("locale.exportAudio.formats.formats.wav.exportMessage.convertWav"),await new Promise($0=>setTimeout($0,75)),!l)this.saveBlob(Lm(U5,o,0,h),`${this.seqUI.currentSongTitle||"unnamed_song"}.wav`);else{let $0="locale.exportAudio.formats.formats.wav.options.separateChannels.saving.",Y5=[],n6=new Set;for(let O6 of B0.usedChannelsOnTrack)O6.forEach(g6=>n6.add(g6));for(let O6=0;O6<16;O6++){let g6=!0;for(let u4=O6;u4{let _4=Ke.textContent;Ke.textContent=this.localeManager.getLocaleString("locale.exportAudio.formats.formats.wav.exportMessage.convertWav"),await new Promise(Mo=>setTimeout(Mo,75));let F9=Lm(U5,!1,O6*2),bt=`${O6+1} - ${R.channelSnapshots[O6].patchName}.wav`;this.saveBlob(F9,bt),Ke.classList.add("green_button"),Ke.textContent=_4}})}let c6=$t(this.localeManager.getLocaleString($0+"title"),Y5,99999999,!0,void 0,{display:"flex",flexWrap:"wrap",justifyContent:"space-around"});c6.div.style.width="30rem"}Ii(b0.id),this.isExporting=!1}async function Rw(){if(this.isExporting)return;let o="locale.exportAudio.formats.formats.wav.options.",r="locale.exportAudio.formats.metadata.",l=(O0,B1,R)=>this.seq.midiData.RMIDInfo?.[O0]===void 0?B1:R.decode(this.seq.midiData.RMIDInfo?.[O0]).replace(/\0$/,""),h=l("IENC","ascii",new TextDecoder),E=new TextDecoder(h),F=l("IPRD","",E),I0=l("IART","",E),b0=l("IGNR","",E),B0=[{type:"toggle",translatePathTitle:o+"normalizeVolume",attributes:{"normalize-volume-toggle":"1",checked:"true"}},{type:"input",translatePathTitle:o+"additionalTime",attributes:{value:"2",type:"number"}},{type:"toggle",translatePathTitle:o+"separateChannels",attributes:{"separate-channels-toggle":"1"}},{type:"input",translatePathTitle:r+"songTitle",attributes:{name:"song_title",type:"text",value:this.seqUI.currentSongTitle}},{type:"input",translatePathTitle:r+"album",attributes:{value:F,name:"album",type:"text"}},{type:"input",translatePathTitle:r+"artist",attributes:{value:I0,name:"artist",type:"text"}},{type:"input",translatePathTitle:r+"genre",attributes:{value:b0,name:"genre",type:"text"}},{type:"button",textContent:this.localeManager.getLocaleString(o+"confirm"),onClick:O0=>{Ii(O0.id);let B1=O0.div.querySelector("input[normalize-volume-toggle]").checked,R=O0.div.querySelector("input[type='number']").value,j0=O0.div.querySelector("input[separate-channels-toggle]").checked,K0=O0.div.querySelector("input[name='artist']").value,F1=O0.div.querySelector("input[name='album']").value,m2=O0.div.querySelector("input[name='song_title']").value,b1=O0.div.querySelector("input[name='genre']").value,_5={artist:K0.length>0?K0:void 0,album:F1.length>0?F1:void 0,title:m2.length>0?m2:void 0,genre:b1.length>0?b1:void 0};this._doExportAudioData(B1,parseInt(R),j0,_5)}}];$t(this.localeManager.getLocaleString(o+"title"),B0,9999999,!0,this.localeManager)}async function xw(){let o=await this.seq.getMIDI();$h(o,await this.synth.getSynthesizerSnapshot());let r=uB(o),l=new Blob([r],{type:"audio/mid"});this.saveBlob(l,`${this.seqUI.currentSongTitle||"unnamed_song"}.mid`)}function Fw(o,r){Xt("%cSearching for all used programs and keys...",S1.info);let l=16+o.midiPortChannelOffsets.reduce((R,j0)=>j0>R?j0:R),h=[];for(let R=0;R{I0[F1]>=K0.length||K0[I0[F1]].ticks0;){let R=B0(),j0=o.tracks[R];if(I0[R]>=j0.length){b0--;continue}let K0=j0[I0[R]];if(I0[R]++,K0.messageStatusByte===J3.midiPort){O0[R]=K0.messageData[0];continue}let F1=K0.messageStatusByte&240;if(F1!==J3.noteOn&&F1!==J3.controllerChange&&F1!==J3.programChange&&F1!==J3.systemExclusive)continue;let m2=(K0.messageStatusByte&15)+o.midiPortChannelOffsets[O0[R]]||0,b1=h[m2];switch(F1){case J3.programChange:b1.program=K0.messageData[0],E(b1);break;case J3.controllerChange:if(K0.messageData[0]!==s6.bankSelect||B1==="gs"&&b1.drums)continue;let _5=K0.messageData[1],v2=Math.max(0,_5-o.bankOffset);if(B1==="xg"){let U5=_5===120||_5===126||_5===127;U5!==b1.drums?(b1.drums=U5,b1.bank=b1.drums?128:v2,E(b1)):b1.bank=b1.drums?128:v2;continue}h[m2].bank=v2;break;case J3.noteOn:if(K0.messageData[1]===0)continue;E(b1),F[b1.string].add(`${K0.messageData[0]}-${K0.messageData[1]}`);break;case J3.systemExclusive:if(K0.messageData[0]!==65||K0.messageData[2]!==66||K0.messageData[3]!==18||K0.messageData[4]!==64||!(K0.messageData[5]&16)||K0.messageData[6]!==21){K0.messageData[0]===67&&K0.messageData[2]===76&&K0.messageData[5]===126&&K0.messageData[6]===0&&(B1="xg");continue}let J2=[9,0,1,2,3,4,5,6,7,8,10,11,12,13,14,15][K0.messageData[5]&15]+o.midiPortChannelOffsets[O0[R]],n3=!!(K0.messageData[7]>0&&K0.messageData[5]>>4);b1=h[J2],b1.drums=n3,b1.bank=n3?128:0,E(b1);break}}for(let R of Object.keys(F))F[R].size===0&&(j5(`%cDetected change but no keys for %c${R}`,S1.info,S1.value),delete F[R]);return t4(),F}function RB(o,r){function l(E,F){let I0=0;for(let b0=0;b0=O0.min&&j0.key<=O0.max&&j0.velocity>=B1.min&&j0.velocity<=B1.max){R=!0;break}R||(j5(`%c${B0.sample.sampleName} %cremoved from %c${E.instrumentName}%c. Use count: %c${B0.useCount-1}`,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized),E.safeDeleteZone(b0)&&(I0++,b0--,j5(`%c${B0.sample.sampleName} %cdeleted`,S1.recognized,S1.info)),B0.sample.useCount<1&&o.deleteSample(B0.sample))}return I0}or("%cTrimming soundfont...",S1.info);let h=Fw(r,o);Xt("%cModifying soundfont...",S1.info),j5("Detected keys for midi:",h);for(let E=0;E{let R=B1.split("-");return{key:parseInt(R[0]),velocity:parseInt(R[1])}});Xt(`%cTrimming %c${F.presetName}`,S1.info,S1.recognized),j5(`Keys for ${F.presetName}:`,B0);let O0=0;for(let B1=0;B1=j0.min&&m2.key<=j0.max&&m2.velocity>=K0.min&&m2.velocity<=K0.max){F1=!0;let b1=l(R.instrument,B0);j5(`%cTrimmed off %c${b1}%c zones from %c${R.instrument.instrumentName}`,S1.info,S1.recognized,S1.info,S1.recognized);break}F1||(O0++,F.deleteZone(B1),R.instrument.useCount<1&&o.deleteInstrument(R.instrument),B1--)}j5(`%cTrimmed off %c${O0}%c zones from %c${F.presetName}`,S1.info,S1.recognized,S1.info,S1.recognized),t4()}}o.removeUnusedElements(),o.soundFontInfo.ICMT=`NOTE: This soundfont was trimmed by SpessaSynth to only contain presets used in "${r.midiName}" -`+o.soundFontInfo.ICMT,X5("%cSoundfont modified!",S1.recognized),e4(),e4()}function Lw(){let o=4;for(let h of this.instruments)o+=h.instrumentZones.reduce((E,F)=>(F.generators=F.generators.filter(I0=>I0.generatorType!==R1.sampleID&&I0.generatorType!==R1.keyRange&&I0.generatorType!==R1.velRange),(F.velRange.max!==127||F.velRange.min!==0)&&F.generators.unshift({generatorType:R1.velRange,generatorValue:F.velRange.max<<8|F.velRange.min}),(F.keyRange.max!==127||F.keyRange.min!==0)&&F.generators.unshift({generatorType:R1.keyRange,generatorValue:F.keyRange.max<<8|F.keyRange.min}),F.isGlobal||F.generators.push({generatorType:R1.sampleID,generatorValue:this.samples.indexOf(F.sample)}),F.generators.length*4+E),0);let r=new l6(o),l=0;for(let h of this.instruments)for(let E of h.instrumentZones){E.generatorZoneStartIndex=l;for(let F of E.generators)m9(r,F.generatorType),m9(r,F.generatorValue),l++}return ot(r,0),o8(new ye("igen",r.length,r))}function Mw(o,r,l,h,E){let F=this.samples.map((P0,B1)=>{l&&P0.compressSample(h,E);let x=P0.getRawData();return X5(`%cEncoded sample %c${B1}. ${P0.sampleName}%c of %c${this.samples.length}`,S1.info,S1.recognized,S1.info,S1.recognized),x}),I0=this.samples.reduce((P0,B1,x)=>P0+F[x].length+46,0),b0=new l6(I0);this.samples.forEach((P0,B1)=>{let x=F[B1],j0,K0,F1=x.length;P0.isCompressed?(j0=b0.currentIndex,K0=j0+x.length):(j0=b0.currentIndex/2,K0=j0+x.length/2,F1+=46),o.push(j0),b0.set(x,b0.currentIndex),b0.currentIndex+=F1,r.push(K0)});let B0=o8(new ye("smpl",b0.length,b0),new l6([115,100,116,97]));return o8(new ye("LIST",B0.length,B0))}function Tw(o,r){let h=new l6(46*(this.samples.length+1));return this.samples.forEach((E,F)=>{ui(h,E.sampleName,20);let I0=o[F];ot(h,I0);let b0=r[F];ot(h,b0);let B0=E.sampleLoopStartIndex/2+I0,P0=E.sampleLoopEndIndex/2+I0;E.isCompressed&&(B0-=I0,P0-=I0),ot(h,B0),ot(h,P0),ot(h,E.sampleRate),h[h.currentIndex++]=E.samplePitch,h[h.currentIndex++]=E.samplePitchCorrection,m9(h,E.sampleLink),m9(h,E.sampleType)}),ui(h,"EOS",46),o8(new ye("shdr",h.length,h))}function Gw(){let o=10;for(let h of this.instruments)o+=h.instrumentZones.reduce((E,F)=>F.modulators.length*10+E,0);let r=new l6(o),l=0;for(let h of this.instruments)for(let E of h.instrumentZones){E.modulatorZoneStartIndex=l;for(let F of E.modulators)m9(r,F.modulatorSource),m9(r,F.modulatorDestination),m9(r,F.transformAmount),m9(r,F.modulationSecondarySrc),m9(r,F.transformType),l++}return Ea(r,0,10),o8(new ye("imod",r.length,r))}function Nw(){let o=this.instruments.reduce((F,I0)=>I0.instrumentZones.length*4+F,4),r=new l6(o),l=0,h=0,E=0;for(let F of this.instruments){F.instrumentZoneIndex=l;for(let I0 of F.instrumentZones)I0.zoneID=l,m9(r,h),m9(r,E),h+=I0.generators.length,E+=I0.modulators.length,l++}return m9(r,h),m9(r,E),o8(new ye("ibag",r.length,r))}function Uw(){let o=this.instruments.length*22+22,r=new l6(o),l=0,h=0;for(let E of this.instruments)ui(r,E.instrumentName,20),m9(r,l),l+=E.instrumentZones.length,E.instrumentID=h,h++;return ui(r,"EOI",20),m9(r,l),o8(new ye("inst",r.length,r))}function Ow(){let o=4;for(let h of this.presets)o+=h.presetZones.reduce((E,F)=>(F.generators=F.generators.filter(I0=>I0.generatorType!==R1.instrument&&I0.generatorType!==R1.keyRange&&I0.generatorType!==R1.velRange),(F.velRange.max!==127||F.velRange.min!==0)&&F.generators.unshift({generatorType:R1.velRange,generatorValue:F.velRange.max<<8|F.velRange.min}),(F.keyRange.max!==127||F.keyRange.min!==0)&&F.generators.unshift({generatorType:R1.keyRange,generatorValue:F.keyRange.max<<8|F.keyRange.min}),F.isGlobal||F.generators.push({generatorType:R1.instrument,generatorValue:this.instruments.indexOf(F.instrument)}),F.generators.length*4+E),0);let r=new l6(o),l=0;for(let h of this.presets)for(let E of h.presetZones){E.generatorZoneStartIndex=l;for(let F of E.generators)m9(r,F.generatorType),m9(r,F.generatorValue);l+=E.generators.length}return m9(r,0),m9(r,0),o8(new ye("pgen",r.length,r))}function Pw(){let o=10;for(let h of this.presets)o+=h.presetZones.reduce((E,F)=>F.modulators.length*10+E,0);let r=new l6(o),l=0;for(let h of this.presets)for(let E of h.presetZones){E.modulatorZoneStartIndex=l;for(let F of E.modulators)m9(r,F.modulatorSource),m9(r,F.modulatorDestination),m9(r,F.transformAmount),m9(r,F.modulationSecondarySrc),m9(r,F.transformType),l++}return Ea(r,0,10),o8(new ye("pmod",r.length,r))}function Hw(){let o=this.presets.reduce((F,I0)=>I0.presetZones.length*4+F,4),r=new l6(o),l=0,h=0,E=0;for(let F of this.presets){F.presetZoneStartIndex=l;for(let I0 of F.presetZones)I0.zoneID=l,m9(r,h),m9(r,E),h+=I0.generators.length,E+=I0.modulators.length,l++}return m9(r,h),m9(r,E),o8(new ye("pbag",r.length,r))}function qw(){let o=this.presets.length*38+38,r=new l6(o),l=0;for(let h of this.presets)ui(r,h.presetName,20),m9(r,h.program),m9(r,h.bank),m9(r,l),ot(r,h.library),ot(r,h.genre),ot(r,h.morphology),l+=h.presetZones.length;return ui(r,"EOP",20),m9(r,0),m9(r,0),m9(r,l),ot(r,0),ot(r,0),ot(r,0),o8(new ye("phdr",r.length,r))}var UD={compress:!1,compressionQuality:.5,compressionFunction:void 0};function Yw(o=UD){if(o.compress&&typeof o.compressionFunction!="function")throw new TypeError("No compression function supplied but compression enabled.");Xt("%cSaving soundfont...",S1.info),X5(`%cCompression: %c${o?.compress||"false"}%c quality: %c${o?.compressionQuality||"none"}`,S1.info,S1.recognized,S1.info,S1.recognized),X5("%cWriting INFO...",S1.info);let r=[];this.soundFontInfo.ISFT="SpessaSynth",o?.compress&&(this.soundFontInfo.ifil="3.0");for(let[J5,U5]of Object.entries(this.soundFontInfo))if(J5==="ifil"||J5==="iver"){let a0=parseInt(U5.split(".")[0]),H5=parseInt(U5.split(".")[1]),n6=new l6(4);m9(n6,a0),m9(n6,H5),r.push(o8(new ye(J5,4,n6)))}else{let a0=new l6(U5.length);ui(a0,U5),r.push(o8(new ye(J5,U5.length,a0)))}let l=DA([new l6([73,78,70,79]),...r]),h=o8(new ye("LIST",l.length,l));X5("%cWriting SDTA...",S1.info);let E=[],F=[],I0=Mw.call(this,E,F,o?.compress,o?.compressionQuality||.5,o.compressionFunction);X5("%cWriting PDTA...",S1.info),X5("%cWriting SHDR...",S1.info);let b0=Tw.call(this,E,F);X5("%cWriting IGEN...",S1.info);let B0=Lw.call(this);X5("%cWriting IMOD...",S1.info);let P0=Gw.call(this);X5("%cWriting IBAG...",S1.info);let B1=Nw.call(this);X5("%cWriting INST...",S1.info);let x=Uw.call(this),j0=Ow.call(this);X5("%cWriting PMOD...",S1.info);let K0=Pw.call(this);X5("%cWriting PBAG...",S1.info);let F1=Hw.call(this);X5("%cWriting PHDR...",S1.info);let m2=qw.call(this),b1=DA([new l6([112,100,116,97]),m2,F1,K0,j0,x,B1,P0,B0,b0]),_5=o8(new ye("LIST",b1.length,b1));X5("%cWriting the output file...",S1.info);let v2=DA([new l6([115,102,98,107]),h,I0,_5]),Y2=o8(new ye("RIFF",v2.length,v2));return X5(`%cSaved succesfully! Final file size: %c${Y2.length}`,S1.info,S1.recognized),e4(),Y2}var Qa=class o{constructor(r=void 0){this.soundFontInfo={},this.presets=[],this.samples=[],this.instruments=[],r?.presets&&(this.presets.push(...r.presets),this.soundFontInfo=r.info)}removeUnusedElements(){this.instruments.forEach(r=>{r.useCount<1&&r.instrumentZones.forEach(l=>{l.isGlobal||l.sample.useCount--})}),this.instruments=this.instruments.filter(r=>r.useCount>0),this.samples=this.samples.filter(r=>r.useCount>0)}deleteInstrument(r){if(r.useCount>0)throw new Error(`Cannot delete an instrument that has ${r.useCount} usages.`);this.instruments.splice(this.instruments.indexOf(r),1),r.deleteInstrument(),this.removeUnusedElements()}deleteSample(r){if(r.useCount>0)throw new Error(`Cannot delete sample that has ${r.useCount} usages.`);this.samples.splice(this.samples.indexOf(r),1),this.removeUnusedElements()}deletePreset(r){r.deletePreset(),this.presets.splice(this.presets.indexOf(r),1),this.removeUnusedElements()}getPresetNoFallback(r,l,h=!1){let E=this.presets.find(F=>F.bank===r&&F.program===l);if(E)return E;if(h!==!1)return r===128?this.presets.find(F=>F.bank===128):this.presets.find(F=>F.program===l)}setSampleIDOffset(r){this.presets.forEach(l=>l.sampleIDOffset=r)}getPreset(r,l){let h=this.presets.find(E=>E.bank===r&&E.program===l);return h||(h=this.presets.find(E=>E.program===l&&E.bank!==128),r===128&&(h=this.presets.find(E=>E.bank===128&&E.program===l),h||(h=this.presets.find(E=>E.bank===128))),h&&ue(`%cPreset ${r}.${l} not found. Replaced with %c${h.presetName} (${h.bank}.${h.program})`,S1.warn,S1.recognized)),h||(ue(`Preset ${l} not found. Defaulting to`,this.presets[0].presetName),h=this.presets[0]),h}getPresetByName(r){let l=this.presets.find(h=>h.presetName===r);return l||(ue("Preset not found. Defaulting to:",this.presets[0].presetName),l=this.presets[0]),l}static mergeSoundfonts(...r){let l=r.shift(),h=l.presets;for(;r.length;)r.shift().presets.forEach(F=>{h.find(I0=>I0.bank===F.bank&&I0.program===F.program)===void 0&&h.push(F)});return new o({presets:h,info:l.soundFontInfo})}};Qa.prototype.write=Yw;function Jw(o){Xt("%cLoading instruments...",S1.info);for(let r=0;rr.deleteZone()),this.presetZones.length=0}deleteZone(r){this.presetZones[r].deleteZone(),this.presetZones.splice(r,1)}preload(r,l){for(let h=r;h{F.sample.isSampleLoaded||F.sample.getAudioData()})}preloadSpecific(r,l){this.getSamplesAndGenerators(r,l).forEach(h=>{h.sample.isSampleLoaded||h.sample.getAudioData()})}getSamplesAndGenerators(r,l){let h=this.foundSamplesAndGenerators[r][l];if(h)return h;if(this.presetZones.length<1)return[];function E(j0,K0,F1){return F1>=j0&&F1<=K0}function F(j0,K0){return j0.modulatorSource===K0.modulatorSource&&j0.modulatorDestination===K0.modulatorDestination&&j0.modulationSecondarySrc===K0.modulationSecondarySrc&&j0.transformType===K0.transformType}function I0(j0,K0){j0.push(...K0.filter(F1=>!j0.find(m2=>m2.generatorType===F1.generatorType)))}function b0(j0,K0){j0.push(...K0.filter(F1=>!j0.find(m2=>F(F1,m2))))}let B0=[],P0=this.presetZones[0].isGlobal?[...this.presetZones[0].generators]:[],B1=this.presetZones[0].isGlobal?[...this.presetZones[0].modulators]:[];return this.presetZones.filter(j0=>E(j0.keyRange.min,j0.keyRange.max,r)&&E(j0.velRange.min,j0.velRange.max,l)&&!j0.isGlobal).forEach(j0=>{if(j0.instrument.instrumentZones.length<1)return;let K0=j0.generators,F1=j0.modulators,m2=j0.instrument.instrumentZones[0].isGlobal?[...j0.instrument.instrumentZones[0].generators]:[],b1=j0.instrument.instrumentZones[0].isGlobal?[...j0.instrument.instrumentZones[0].modulators]:[];j0.instrument.instrumentZones.filter(v2=>E(v2.keyRange.min,v2.keyRange.max,r)&&E(v2.velRange.min,v2.velRange.max,l)&&!v2.isGlobal).forEach(v2=>{let Y2=[...v2.generators],J5=[...v2.modulators];I0(K0,P0),I0(Y2,m2),b0(F1,B1),b0(J5,b1),b0(J5,oy);let U5=[...J5];for(let a0=0;a0F(H5,b6));n6!==-1?U5[n6]=U5[n6].sumTransform(H5):U5.push(H5)}B0.push({instrumentGenerators:Y2,presetGenerators:K0,modulators:U5,sample:v2.sample,sampleID:v2.generators.find(a0=>a0.generatorType===R1.sampleID).generatorValue})})}),this.foundSamplesAndGenerators[r][l]=B0,B0}};var pC=class{velRange={min:0,max:127};keyRange={min:0,max:127};isGlobal=!1;generators=[];modulators=[]};var Fo=class extends pC{sample=void 0;useCount=0;deleteZone(){this.useCount--,!this.isGlobal&&this.sample.useCount--}},gh=class extends pC{instrument=void 0;deleteZone(){this.isGlobal||this.instrument.removeUseCount()}};var hh=class{constructor(){this.instrumentName="",this.instrumentZones=[],this._useCount=0}addUseCount(){this._useCount++,this.instrumentZones.forEach(r=>r.useCount++)}removeUseCount(){this._useCount--;for(let r=0;rr.deleteZone()),this.instrumentZones.length=0}safeDeleteZone(r){return this.instrumentZones[r].useCount--,this.instrumentZones[r].useCount<1?(this.deleteZone(r),!0):!1}deleteZone(r){this.instrumentZones[r].deleteZone(),this.instrumentZones.splice(r,1)}};var xB=class extends ch{constructor(r,l){super(),this.program=l&127,this.bank=r>>8&127,r>>31&&(this.bank=128),this.DLSInstrument=new hh,this.DLSInstrument.addUseCount();let E=new gh;E.instrument=this.DLSInstrument,this.presetZones=[E]}};function Kw(o){this.verifyHeader(o,"LIST"),this.verifyText(Fe(o.chunkData,4),"ins ");let r=[];for(;o.chunkData.length>o.chunkData.currentIndex;)r.push(h4(o.chunkData));let l=r.find(K0=>K0.header==="insh");if(!l)throw e4(),new Error("No instrument header!");let h=n3(l.chunkData,4),E=n3(l.chunkData,4),F=n3(l.chunkData,4),I0=new xB(E,F),b0="unnamedPreset",B0=Si(r,"INFO");if(B0){let K0=h4(B0.chunkData);for(;K0.header!=="INAM";)K0=h4(B0.chunkData);b0=Fe(K0.chunkData,K0.chunkData.length).trim()}I0.presetName=b0,I0.DLSInstrument.instrumentName=b0,or(`%cParsing %c"${b0}"%c...`,S1.info,S1.recognized,S1.info);let P0=Si(r,"lrgn");if(!P0)throw e4(),new Error("No region list!");let B1=new Fo;B1.isGlobal=!0;let x=Si(r,"lart"),j0=Si(r,"lar2");this.readLart(x,j0,B1),I0.DLSInstrument.instrumentZones.push(B1);for(let K0=0;K0>10&15;_5===Qn.linear&&b1!==Qn.linear&&(_5=b1);let v2=h>>14&1,Y2=h>>15&1;I0===R1.initialAttenuation&&(Y2=!Y2),x=pn(_5,v2,Y2,b0.isCC,b0.enum)}let j0=h>>4&15,K0=h>>8&1,F1=h>>9&1,m2=pn(j0,K0,F1,B1.isCC,B1.enum);if(B0){let b1=m2;m2=x,x=b1}return new o7({srcEnum:x,secSrcEnum:m2,dest:I0,transform:0,amt:E})}function Mm(o,r){let l=o.chunkData,h=[],E=[];n3(l,4);let F=n3(l,4);for(let I0=0;I0>16;if(b0===0&&B0===0&&B1===0){let j0;switch(P0){case E6.pan:j0=new n9(R1.pan,x);break;case E6.gain:j0=new n9(R1.initialAttenuation,-x*10/.4);break;case E6.filterCutoff:j0=new n9(R1.initialFilterFc,x);break;case E6.filterQ:j0=new n9(R1.initialFilterQ,x);break;case E6.modLfoFreq:j0=new n9(R1.freqModLFO,x);break;case E6.modLfoDelay:j0=new n9(R1.delayModLFO,x);break;case E6.vibLfoFreq:j0=new n9(R1.freqVibLFO,x);break;case E6.vibLfoDelay:j0=new n9(R1.delayVibLFO,x);break;case E6.volEnvDelay:j0=new n9(R1.delayVolEnv,x);break;case E6.volEnvAttack:j0=new n9(R1.attackVolEnv,x);break;case E6.volEnvHold:j0=new n9(R1.holdVolEnv,x);break;case E6.volEnvDecay:j0=new n9(R1.decayVolEnv,x);break;case E6.volEnvRelease:j0=new n9(R1.releaseVolEnv,x);break;case E6.volEnvSustain:let K0=(1e3-x)/10;j0=new n9(R1.sustainVolEnv,K0*10);break;case E6.modEnvDelay:j0=new n9(R1.delayModEnv,x);break;case E6.modEnvAttack:j0=new n9(R1.attackModEnv,x);break;case E6.modEnvHold:j0=new n9(R1.holdModEnv,x);break;case E6.modEnvDecay:j0=new n9(R1.decayModEnv,x);break;case E6.modEnvRelease:j0=new n9(R1.releaseModEnv,x);break;case E6.modEnvSustain:let F1=1e3-x;j0=new n9(R1.sustainModEnv,F1);break;case E6.reverbSend:j0=new n9(R1.reverbEffectsSend,x);break;case E6.chorusSend:j0=new n9(R1.chorusEffectsSend,x);break;case E6.pitch:let m2=Math.floor(x/100),b1=Math.floor(x-m2*100);j0=new n9(R1.fineTune,b1),h.push(new n9(R1.coarseTune,m2));break}j0&&h.push(j0)}else{let j0=!0;if(B0===p4.none?b0===p4.modLfo&&P0===E6.pitch?h.push(new n9(R1.modLfoToPitch,x)):b0===p4.modLfo&&P0===E6.gain?h.push(new n9(R1.modLfoToVolume,x)):b0===p4.modLfo&&P0===E6.filterCutoff?h.push(new n9(R1.modLfoToFilterFc,x)):b0===p4.vibratoLfo&&P0===E6.pitch?h.push(new n9(R1.vibLfoToPitch,x)):b0===p4.modEnv&&P0===E6.pitch?h.push(new n9(R1.modEnvToPitch,x)):b0===p4.modEnv&&P0===E6.filterCutoff?h.push(new n9(R1.modEnvToFilterFc,x)):b0===p4.keyNum&&P0===E6.volEnvHold?h.push(new n9(R1.keyNumToVolEnvHold,x/-127)):b0===p4.keyNum&&P0===E6.volEnvDecay?h.push(new n9(R1.keyNumToVolEnvDecay,x/-127)):b0===p4.keyNum&&P0===E6.modEnvHold?h.push(new n9(R1.keyNumToModEnvHold,x/-127)):b0===p4.keyNum&&P0===E6.modEnvDecay?h.push(new n9(R1.keyNumToModEnvDecay,x/-127)):j0=!1:j0=!1,j0===!1){let K0=zw(b0,B0,P0,B1,x);K0?(E.push(K0),X5("%cSucceeded converting to SF2 Modulator!",S1.recognized)):ue("Failed converting to SF2 Modulator!")}}}return E.push(new o7({srcEnum:219,dest:R1.reverbEffectsSend,amt:1e3,secSrcEnum:0,transform:0}),new o7({srcEnum:221,dest:R1.chorusEffectsSend,amt:1e3,secSrcEnum:0,transform:0})),r&&E.push(new o7({srcEnum:129,dest:R1.vibLfoToPitch,amt:0,secSrcEnum:0,transform:0}),new o7({srcEnum:13,dest:R1.vibLfoToPitch,amt:0,secSrcEnum:0,transform:0})),{modulators:E,generators:h}}function Zw(o,r,l){if(o)for(;o.chunkData.currentIndexo.chunkData.currentIndex;)r.push(h4(o.chunkData));let l=r.find(a0=>a0.header==="rgnh"),h=n3(l.chunkData,2),E=n3(l.chunkData,2),F=n3(l.chunkData,2),I0=n3(l.chunkData,2),b0=new FB({min:h,max:E},{min:F,max:I0});n3(l.chunkData,2);let B0=n3(l.chunkData,2);B0!==0&&b0.generators.push(new n9(R1.exclusiveClass,B0));let P0=Si(r,"lart"),B1=Si(r,"lar2");this.readLart(P0,B1,b0),b0.isGlobal=!1;let x=r.find(a0=>a0.header==="wsmp");n3(x.chunkData,4);let j0=n3(x.chunkData,2);n3(x.chunkData,2);let m2=(n3(x.chunkData,4)|0)/-655360*10/.4;n3(x.chunkData,4);let b1=n3(x.chunkData,4),_5,v2={start:0,end:0};if(b1===0)_5=0;else{n3(x.chunkData,4),n3(x.chunkData,4)===0?_5=1:_5=3,v2.start=n3(x.chunkData,4);let H5=n3(x.chunkData,4);v2.end=v2.start+H5}let Y2=r.find(a0=>a0.header==="wlnk");if(Y2===void 0)return;n3(Y2.chunkData,2),n3(Y2.chunkData,2),n3(Y2.chunkData,4);let J5=n3(Y2.chunkData,4),U5=this.samples[J5];if(U5===void 0)throw new Error("Invalid sample ID!");return b0.setWavesample(m2,_5,v2,j0,U5,J5),b0}var fh=class{constructor(r,l,h,E,F,I0,b0,B0){this.sampleName=r,this.sampleRate=l,this.samplePitch=h,this.samplePitchCorrection=E,this.sampleLink=F,this.sampleType=I0,this.sampleLoopStartIndex=b0,this.sampleLoopEndIndex=B0,this.isCompressed=(I0&16)>0,this.compressedData=void 0,this.useCount=0}getRawData(){let r=new Error("Not implemented");throw r.name="NotImplementedError",r}compressSample(r,l){if(!this.isCompressed)try{this.compressedData=l([this.getAudioData()],1,this.sampleRate,r),this.sampleType|=16,this.isCompressed=!0}catch{ue(`Failed to compress ${this.sampleName}. Leaving as uncompressed!`),this.isCompressed=!1,this.compressedData=void 0,this.sampleType&=-17}}getAudioData(){let r=new Error("Not implemented");throw r.name="NotImplementedError",r}};var LB=class extends fh{constructor(r,l,h,E,F,I0,b0){super(r,l,h,E,0,1,F*2,(I0-1)*2),this.sampleData=b0}getAudioData(){return this.sampleData}sampleData;getRawData(){let r=new Uint8Array(this.sampleData.length*2);for(let l=0;l>8&255}return r}};function jw(o){Xt("%cLoading Wave samples...",S1.recognized);let r=0;for(;o.chunkData.currentIndexn6.header==="fmt ");if(!E)throw new Error("No fmt chunk in the wave file!");if(n3(E.chunkData,2)!==1)throw new Error("Only PCM format in WAVE is supported.");if(n3(E.chunkData,2)!==1)throw new Error("Only mono samples are supported.");let b0=n3(E.chunkData,4);n3(E.chunkData,4),n3(E.chunkData,2);let B0=n3(E.chunkData,2),P0=B0/8,B1=Math.pow(2,P0*8-1),x=Math.pow(2,P0*8),j0,K0=!1;B0===8?(j0=255,K0=!0):j0=B1;let F1=h.find(n6=>n6.header==="data");if(!F1)throw new Error("No data chunk in the wave chunk!");let m2=F1.size/P0,b1=new Float32Array(m2);for(let n6=0;n6=B1&&(b6-=x),b1[n6]=b6/j0)}let _5=60,v2=0,Y2=0,J5=b1.length-1,U5=h.find(n6=>n6.header==="wsmp");if(U5){if(n3(U5.chunkData,4),_5=n3(U5.chunkData,2),v2=oh(U5.chunkData[U5.chunkData.currentIndex++],U5.chunkData[U5.chunkData.currentIndex++]),n3(U5.chunkData,4),n3(U5.chunkData,4),n3(U5.chunkData,4)===1){n3(U5.chunkData,8),Y2=n3(U5.chunkData,4);let b6=n3(U5.chunkData,4);J5=Y2+b6}}else ue("No wsmp chunk in wave... using sane defaults.");let a0=Si(h,"INFO"),H5=`Unnamed ${r}`;if(a0){let n6=h4(a0.chunkData);for(;n6.header!=="INAM"&&a0.chunkData.currentIndex(F.generators=F.generators.filter(I0=>I0.generatorType!==R1.sampleID&&I0.generatorType!==R1.keyRange&&I0.generatorType!==R1.velRange),(F.velRange.max!==127||F.velRange.min!==0)&&F.generators.unshift({generatorType:R1.velRange,generatorValue:F.velRange.max<<8|F.velRange.min}),(F.keyRange.max!==127||F.keyRange.min!==0)&&F.generators.unshift({generatorType:R1.keyRange,generatorValue:F.keyRange.max<<8|F.keyRange.min}),F.isGlobal||F.generators.push({generatorType:R1.sampleID,generatorValue:this.samples.indexOf(F.sample)}),F.generators.length*4+E),0);let r=new l6(o),l=0;for(let h of this.instruments)for(let E of h.instrumentZones){E.generatorZoneStartIndex=l;for(let F of E.generators)m9(r,F.generatorType),m9(r,F.generatorValue),l++}return ot(r,0),o8(new Qe("igen",r.length,r))}function Mw(o,r,l,h,E){let F=this.samples.map((O0,B1)=>{l&&O0.compressSample(h,E);let R=O0.getRawData();return j5(`%cEncoded sample %c${B1}. ${O0.sampleName}%c of %c${this.samples.length}`,S1.info,S1.recognized,S1.info,S1.recognized),R}),I0=this.samples.reduce((O0,B1,R)=>O0+F[R].length+46,0),b0=new l6(I0);this.samples.forEach((O0,B1)=>{let R=F[B1],j0,K0,F1=R.length;O0.isCompressed?(j0=b0.currentIndex,K0=j0+R.length):(j0=b0.currentIndex/2,K0=j0+R.length/2,F1+=46),o.push(j0),b0.set(R,b0.currentIndex),b0.currentIndex+=F1,r.push(K0)});let B0=o8(new Qe("smpl",b0.length,b0),new l6([115,100,116,97]));return o8(new Qe("LIST",B0.length,B0))}function Tw(o,r){let h=new l6(46*(this.samples.length+1));return this.samples.forEach((E,F)=>{ui(h,E.sampleName,20);let I0=o[F];ot(h,I0);let b0=r[F];ot(h,b0);let B0=E.sampleLoopStartIndex/2+I0,O0=E.sampleLoopEndIndex/2+I0;E.isCompressed&&(B0-=I0,O0-=I0),ot(h,B0),ot(h,O0),ot(h,E.sampleRate),h[h.currentIndex++]=E.samplePitch,h[h.currentIndex++]=E.samplePitchCorrection,m9(h,E.sampleLink),m9(h,E.sampleType)}),ui(h,"EOS",46),o8(new Qe("shdr",h.length,h))}function Gw(){let o=10;for(let h of this.instruments)o+=h.instrumentZones.reduce((E,F)=>F.modulators.length*10+E,0);let r=new l6(o),l=0;for(let h of this.instruments)for(let E of h.instrumentZones){E.modulatorZoneStartIndex=l;for(let F of E.modulators)m9(r,F.modulatorSource),m9(r,F.modulatorDestination),m9(r,F.transformAmount),m9(r,F.modulationSecondarySrc),m9(r,F.transformType),l++}return Ea(r,0,10),o8(new Qe("imod",r.length,r))}function Nw(){let o=this.instruments.reduce((F,I0)=>I0.instrumentZones.length*4+F,4),r=new l6(o),l=0,h=0,E=0;for(let F of this.instruments){F.instrumentZoneIndex=l;for(let I0 of F.instrumentZones)I0.zoneID=l,m9(r,h),m9(r,E),h+=I0.generators.length,E+=I0.modulators.length,l++}return m9(r,h),m9(r,E),o8(new Qe("ibag",r.length,r))}function Uw(){let o=this.instruments.length*22+22,r=new l6(o),l=0,h=0;for(let E of this.instruments)ui(r,E.instrumentName,20),m9(r,l),l+=E.instrumentZones.length,E.instrumentID=h,h++;return ui(r,"EOI",20),m9(r,l),o8(new Qe("inst",r.length,r))}function Ow(){let o=4;for(let h of this.presets)o+=h.presetZones.reduce((E,F)=>(F.generators=F.generators.filter(I0=>I0.generatorType!==R1.instrument&&I0.generatorType!==R1.keyRange&&I0.generatorType!==R1.velRange),(F.velRange.max!==127||F.velRange.min!==0)&&F.generators.unshift({generatorType:R1.velRange,generatorValue:F.velRange.max<<8|F.velRange.min}),(F.keyRange.max!==127||F.keyRange.min!==0)&&F.generators.unshift({generatorType:R1.keyRange,generatorValue:F.keyRange.max<<8|F.keyRange.min}),F.isGlobal||F.generators.push({generatorType:R1.instrument,generatorValue:this.instruments.indexOf(F.instrument)}),F.generators.length*4+E),0);let r=new l6(o),l=0;for(let h of this.presets)for(let E of h.presetZones){E.generatorZoneStartIndex=l;for(let F of E.generators)m9(r,F.generatorType),m9(r,F.generatorValue);l+=E.generators.length}return m9(r,0),m9(r,0),o8(new Qe("pgen",r.length,r))}function Pw(){let o=10;for(let h of this.presets)o+=h.presetZones.reduce((E,F)=>F.modulators.length*10+E,0);let r=new l6(o),l=0;for(let h of this.presets)for(let E of h.presetZones){E.modulatorZoneStartIndex=l;for(let F of E.modulators)m9(r,F.modulatorSource),m9(r,F.modulatorDestination),m9(r,F.transformAmount),m9(r,F.modulationSecondarySrc),m9(r,F.transformType),l++}return Ea(r,0,10),o8(new Qe("pmod",r.length,r))}function Hw(){let o=this.presets.reduce((F,I0)=>I0.presetZones.length*4+F,4),r=new l6(o),l=0,h=0,E=0;for(let F of this.presets){F.presetZoneStartIndex=l;for(let I0 of F.presetZones)I0.zoneID=l,m9(r,h),m9(r,E),h+=I0.generators.length,E+=I0.modulators.length,l++}return m9(r,h),m9(r,E),o8(new Qe("pbag",r.length,r))}function qw(){let o=this.presets.length*38+38,r=new l6(o),l=0;for(let h of this.presets)ui(r,h.presetName,20),m9(r,h.program),m9(r,h.bank),m9(r,l),ot(r,h.library),ot(r,h.genre),ot(r,h.morphology),l+=h.presetZones.length;return ui(r,"EOP",20),m9(r,0),m9(r,0),m9(r,l),ot(r,0),ot(r,0),ot(r,0),o8(new Qe("phdr",r.length,r))}var UD={compress:!1,compressionQuality:.5,compressionFunction:void 0};function Yw(o=UD){if(o.compress&&typeof o.compressionFunction!="function")throw new TypeError("No compression function supplied but compression enabled.");Xt("%cSaving soundfont...",S1.info),j5(`%cCompression: %c${o?.compress||"false"}%c quality: %c${o?.compressionQuality||"none"}`,S1.info,S1.recognized,S1.info,S1.recognized),j5("%cWriting INFO...",S1.info);let r=[];this.soundFontInfo.ISFT="SpessaSynth",o?.compress&&(this.soundFontInfo.ifil="3.0");for(let[n3,U5]of Object.entries(this.soundFontInfo))if(n3==="ifil"||n3==="iver"){let $0=parseInt(U5.split(".")[0]),Y5=parseInt(U5.split(".")[1]),n6=new l6(4);m9(n6,$0),m9(n6,Y5),r.push(o8(new Qe(n3,4,n6)))}else{let $0=new l6(U5.length);ui($0,U5),r.push(o8(new Qe(n3,U5.length,$0)))}let l=DA([new l6([73,78,70,79]),...r]),h=o8(new Qe("LIST",l.length,l));j5("%cWriting SDTA...",S1.info);let E=[],F=[],I0=Mw.call(this,E,F,o?.compress,o?.compressionQuality||.5,o.compressionFunction);j5("%cWriting PDTA...",S1.info),j5("%cWriting SHDR...",S1.info);let b0=Tw.call(this,E,F);j5("%cWriting IGEN...",S1.info);let B0=Lw.call(this);j5("%cWriting IMOD...",S1.info);let O0=Gw.call(this);j5("%cWriting IBAG...",S1.info);let B1=Nw.call(this);j5("%cWriting INST...",S1.info);let R=Uw.call(this),j0=Ow.call(this);j5("%cWriting PMOD...",S1.info);let K0=Pw.call(this);j5("%cWriting PBAG...",S1.info);let F1=Hw.call(this);j5("%cWriting PHDR...",S1.info);let m2=qw.call(this),b1=DA([new l6([112,100,116,97]),m2,F1,K0,j0,R,B1,O0,B0,b0]),_5=o8(new Qe("LIST",b1.length,b1));j5("%cWriting the output file...",S1.info);let v2=DA([new l6([115,102,98,107]),h,I0,_5]),J2=o8(new Qe("RIFF",v2.length,v2));return j5(`%cSaved succesfully! Final file size: %c${J2.length}`,S1.info,S1.recognized),t4(),J2}var Qa=class o{constructor(r=void 0){this.soundFontInfo={},this.presets=[],this.samples=[],this.instruments=[],r?.presets&&(this.presets.push(...r.presets),this.soundFontInfo=r.info)}removeUnusedElements(){this.instruments.forEach(r=>{r.useCount<1&&r.instrumentZones.forEach(l=>{l.isGlobal||l.sample.useCount--})}),this.instruments=this.instruments.filter(r=>r.useCount>0),this.samples=this.samples.filter(r=>r.useCount>0)}deleteInstrument(r){if(r.useCount>0)throw new Error(`Cannot delete an instrument that has ${r.useCount} usages.`);this.instruments.splice(this.instruments.indexOf(r),1),r.deleteInstrument(),this.removeUnusedElements()}deleteSample(r){if(r.useCount>0)throw new Error(`Cannot delete sample that has ${r.useCount} usages.`);this.samples.splice(this.samples.indexOf(r),1),this.removeUnusedElements()}deletePreset(r){r.deletePreset(),this.presets.splice(this.presets.indexOf(r),1),this.removeUnusedElements()}getPresetNoFallback(r,l,h=!1){let E=this.presets.find(F=>F.bank===r&&F.program===l);if(E)return E;if(h!==!1)return r===128?this.presets.find(F=>F.bank===128):this.presets.find(F=>F.program===l)}setSampleIDOffset(r){this.presets.forEach(l=>l.sampleIDOffset=r)}getPreset(r,l){let h=this.presets.find(E=>E.bank===r&&E.program===l);return h||(h=this.presets.find(E=>E.program===l&&E.bank!==128),r===128&&(h=this.presets.find(E=>E.bank===128&&E.program===l),h||(h=this.presets.find(E=>E.bank===128))),h&&fe(`%cPreset ${r}.${l} not found. Replaced with %c${h.presetName} (${h.bank}.${h.program})`,S1.warn,S1.recognized)),h||(fe(`Preset ${l} not found. Defaulting to`,this.presets[0].presetName),h=this.presets[0]),h}getPresetByName(r){let l=this.presets.find(h=>h.presetName===r);return l||(fe("Preset not found. Defaulting to:",this.presets[0].presetName),l=this.presets[0]),l}static mergeSoundfonts(...r){let l=r.shift(),h=l.presets;for(;r.length;)r.shift().presets.forEach(F=>{h.find(I0=>I0.bank===F.bank&&I0.program===F.program)===void 0&&h.push(F)});return new o({presets:h,info:l.soundFontInfo})}};Qa.prototype.write=Yw;function Jw(o){Xt("%cLoading instruments...",S1.info);for(let r=0;rr.deleteZone()),this.presetZones.length=0}deleteZone(r){this.presetZones[r].deleteZone(),this.presetZones.splice(r,1)}preload(r,l){for(let h=r;h{F.sample.isSampleLoaded||F.sample.getAudioData()})}preloadSpecific(r,l){this.getSamplesAndGenerators(r,l).forEach(h=>{h.sample.isSampleLoaded||h.sample.getAudioData()})}getSamplesAndGenerators(r,l){let h=this.foundSamplesAndGenerators[r][l];if(h)return h;if(this.presetZones.length<1)return[];function E(j0,K0,F1){return F1>=j0&&F1<=K0}function F(j0,K0){return j0.modulatorSource===K0.modulatorSource&&j0.modulatorDestination===K0.modulatorDestination&&j0.modulationSecondarySrc===K0.modulationSecondarySrc&&j0.transformType===K0.transformType}function I0(j0,K0){j0.push(...K0.filter(F1=>!j0.find(m2=>m2.generatorType===F1.generatorType)))}function b0(j0,K0){j0.push(...K0.filter(F1=>!j0.find(m2=>F(F1,m2))))}let B0=[],O0=this.presetZones[0].isGlobal?[...this.presetZones[0].generators]:[],B1=this.presetZones[0].isGlobal?[...this.presetZones[0].modulators]:[];return this.presetZones.filter(j0=>E(j0.keyRange.min,j0.keyRange.max,r)&&E(j0.velRange.min,j0.velRange.max,l)&&!j0.isGlobal).forEach(j0=>{if(j0.instrument.instrumentZones.length<1)return;let K0=j0.generators,F1=j0.modulators,m2=j0.instrument.instrumentZones[0].isGlobal?[...j0.instrument.instrumentZones[0].generators]:[],b1=j0.instrument.instrumentZones[0].isGlobal?[...j0.instrument.instrumentZones[0].modulators]:[];j0.instrument.instrumentZones.filter(v2=>E(v2.keyRange.min,v2.keyRange.max,r)&&E(v2.velRange.min,v2.velRange.max,l)&&!v2.isGlobal).forEach(v2=>{let J2=[...v2.generators],n3=[...v2.modulators];I0(K0,O0),I0(J2,m2),b0(F1,B1),b0(n3,b1),b0(n3,oy);let U5=[...n3];for(let $0=0;$0F(Y5,c6));n6!==-1?U5[n6]=U5[n6].sumTransform(Y5):U5.push(Y5)}B0.push({instrumentGenerators:J2,presetGenerators:K0,modulators:U5,sample:v2.sample,sampleID:v2.generators.find($0=>$0.generatorType===R1.sampleID).generatorValue})})}),this.foundSamplesAndGenerators[r][l]=B0,B0}};var pC=class{velRange={min:0,max:127};keyRange={min:0,max:127};isGlobal=!1;generators=[];modulators=[]};var Fo=class extends pC{sample=void 0;useCount=0;deleteZone(){this.useCount--,!this.isGlobal&&this.sample.useCount--}},gh=class extends pC{instrument=void 0;deleteZone(){this.isGlobal||this.instrument.removeUseCount()}};var hh=class{constructor(){this.instrumentName="",this.instrumentZones=[],this._useCount=0}addUseCount(){this._useCount++,this.instrumentZones.forEach(r=>r.useCount++)}removeUseCount(){this._useCount--;for(let r=0;rr.deleteZone()),this.instrumentZones.length=0}safeDeleteZone(r){return this.instrumentZones[r].useCount--,this.instrumentZones[r].useCount<1?(this.deleteZone(r),!0):!1}deleteZone(r){this.instrumentZones[r].deleteZone(),this.instrumentZones.splice(r,1)}};var xB=class extends ch{constructor(r,l){super(),this.program=l&127,this.bank=r>>8&127,r>>31&&(this.bank=128),this.DLSInstrument=new hh,this.DLSInstrument.addUseCount();let E=new gh;E.instrument=this.DLSInstrument,this.presetZones=[E]}};function Kw(o){this.verifyHeader(o,"LIST"),this.verifyText(xe(o.chunkData,4),"ins ");let r=[];for(;o.chunkData.length>o.chunkData.currentIndex;)r.push(f4(o.chunkData));let l=r.find(K0=>K0.header==="insh");if(!l)throw t4(),new Error("No instrument header!");let h=r3(l.chunkData,4),E=r3(l.chunkData,4),F=r3(l.chunkData,4),I0=new xB(E,F),b0="unnamedPreset",B0=Si(r,"INFO");if(B0){let K0=f4(B0.chunkData);for(;K0.header!=="INAM";)K0=f4(B0.chunkData);b0=xe(K0.chunkData,K0.chunkData.length).trim()}I0.presetName=b0,I0.DLSInstrument.instrumentName=b0,or(`%cParsing %c"${b0}"%c...`,S1.info,S1.recognized,S1.info);let O0=Si(r,"lrgn");if(!O0)throw t4(),new Error("No region list!");let B1=new Fo;B1.isGlobal=!0;let R=Si(r,"lart"),j0=Si(r,"lar2");this.readLart(R,j0,B1),I0.DLSInstrument.instrumentZones.push(B1);for(let K0=0;K0>10&15;_5===Qn.linear&&b1!==Qn.linear&&(_5=b1);let v2=h>>14&1,J2=h>>15&1;I0===R1.initialAttenuation&&(J2=!J2),R=pn(_5,v2,J2,b0.isCC,b0.enum)}let j0=h>>4&15,K0=h>>8&1,F1=h>>9&1,m2=pn(j0,K0,F1,B1.isCC,B1.enum);if(B0){let b1=m2;m2=R,R=b1}return new o7({srcEnum:R,secSrcEnum:m2,dest:I0,transform:0,amt:E})}function Mm(o,r){let l=o.chunkData,h=[],E=[];r3(l,4);let F=r3(l,4);for(let I0=0;I0>16;if(b0===0&&B0===0&&B1===0){let j0;switch(O0){case C6.pan:j0=new n9(R1.pan,R);break;case C6.gain:j0=new n9(R1.initialAttenuation,-R*10/.4);break;case C6.filterCutoff:j0=new n9(R1.initialFilterFc,R);break;case C6.filterQ:j0=new n9(R1.initialFilterQ,R);break;case C6.modLfoFreq:j0=new n9(R1.freqModLFO,R);break;case C6.modLfoDelay:j0=new n9(R1.delayModLFO,R);break;case C6.vibLfoFreq:j0=new n9(R1.freqVibLFO,R);break;case C6.vibLfoDelay:j0=new n9(R1.delayVibLFO,R);break;case C6.volEnvDelay:j0=new n9(R1.delayVolEnv,R);break;case C6.volEnvAttack:j0=new n9(R1.attackVolEnv,R);break;case C6.volEnvHold:j0=new n9(R1.holdVolEnv,R);break;case C6.volEnvDecay:j0=new n9(R1.decayVolEnv,R);break;case C6.volEnvRelease:j0=new n9(R1.releaseVolEnv,R);break;case C6.volEnvSustain:let K0=(1e3-R)/10;j0=new n9(R1.sustainVolEnv,K0*10);break;case C6.modEnvDelay:j0=new n9(R1.delayModEnv,R);break;case C6.modEnvAttack:j0=new n9(R1.attackModEnv,R);break;case C6.modEnvHold:j0=new n9(R1.holdModEnv,R);break;case C6.modEnvDecay:j0=new n9(R1.decayModEnv,R);break;case C6.modEnvRelease:j0=new n9(R1.releaseModEnv,R);break;case C6.modEnvSustain:let F1=1e3-R;j0=new n9(R1.sustainModEnv,F1);break;case C6.reverbSend:j0=new n9(R1.reverbEffectsSend,R);break;case C6.chorusSend:j0=new n9(R1.chorusEffectsSend,R);break;case C6.pitch:let m2=Math.floor(R/100),b1=Math.floor(R-m2*100);j0=new n9(R1.fineTune,b1),h.push(new n9(R1.coarseTune,m2));break}j0&&h.push(j0)}else{let j0=!0;if(B0===y4.none?b0===y4.modLfo&&O0===C6.pitch?h.push(new n9(R1.modLfoToPitch,R)):b0===y4.modLfo&&O0===C6.gain?h.push(new n9(R1.modLfoToVolume,R)):b0===y4.modLfo&&O0===C6.filterCutoff?h.push(new n9(R1.modLfoToFilterFc,R)):b0===y4.vibratoLfo&&O0===C6.pitch?h.push(new n9(R1.vibLfoToPitch,R)):b0===y4.modEnv&&O0===C6.pitch?h.push(new n9(R1.modEnvToPitch,R)):b0===y4.modEnv&&O0===C6.filterCutoff?h.push(new n9(R1.modEnvToFilterFc,R)):b0===y4.keyNum&&O0===C6.volEnvHold?h.push(new n9(R1.keyNumToVolEnvHold,R/-127)):b0===y4.keyNum&&O0===C6.volEnvDecay?h.push(new n9(R1.keyNumToVolEnvDecay,R/-127)):b0===y4.keyNum&&O0===C6.modEnvHold?h.push(new n9(R1.keyNumToModEnvHold,R/-127)):b0===y4.keyNum&&O0===C6.modEnvDecay?h.push(new n9(R1.keyNumToModEnvDecay,R/-127)):j0=!1:j0=!1,j0===!1){let K0=zw(b0,B0,O0,B1,R);K0?(E.push(K0),j5("%cSucceeded converting to SF2 Modulator!",S1.recognized)):fe("Failed converting to SF2 Modulator!")}}}return E.push(new o7({srcEnum:219,dest:R1.reverbEffectsSend,amt:1e3,secSrcEnum:0,transform:0}),new o7({srcEnum:221,dest:R1.chorusEffectsSend,amt:1e3,secSrcEnum:0,transform:0})),r&&E.push(new o7({srcEnum:129,dest:R1.vibLfoToPitch,amt:0,secSrcEnum:0,transform:0}),new o7({srcEnum:13,dest:R1.vibLfoToPitch,amt:0,secSrcEnum:0,transform:0})),{modulators:E,generators:h}}function Zw(o,r,l){if(o)for(;o.chunkData.currentIndexo.chunkData.currentIndex;)r.push(f4(o.chunkData));let l=r.find($0=>$0.header==="rgnh"),h=r3(l.chunkData,2),E=r3(l.chunkData,2),F=r3(l.chunkData,2),I0=r3(l.chunkData,2),b0=new FB({min:h,max:E},{min:F,max:I0});r3(l.chunkData,2);let B0=r3(l.chunkData,2);B0!==0&&b0.generators.push(new n9(R1.exclusiveClass,B0));let O0=Si(r,"lart"),B1=Si(r,"lar2");this.readLart(O0,B1,b0),b0.isGlobal=!1;let R=r.find($0=>$0.header==="wsmp");r3(R.chunkData,4);let j0=r3(R.chunkData,2);r3(R.chunkData,2);let m2=(r3(R.chunkData,4)|0)/-655360*10/.4;r3(R.chunkData,4);let b1=r3(R.chunkData,4),_5,v2={start:0,end:0};if(b1===0)_5=0;else{r3(R.chunkData,4),r3(R.chunkData,4)===0?_5=1:_5=3,v2.start=r3(R.chunkData,4);let Y5=r3(R.chunkData,4);v2.end=v2.start+Y5}let J2=r.find($0=>$0.header==="wlnk");if(J2===void 0)return;r3(J2.chunkData,2),r3(J2.chunkData,2),r3(J2.chunkData,4);let n3=r3(J2.chunkData,4),U5=this.samples[n3];if(U5===void 0)throw new Error("Invalid sample ID!");return b0.setWavesample(m2,_5,v2,j0,U5,n3),b0}var fh=class{constructor(r,l,h,E,F,I0,b0,B0){this.sampleName=r,this.sampleRate=l,this.samplePitch=h,this.samplePitchCorrection=E,this.sampleLink=F,this.sampleType=I0,this.sampleLoopStartIndex=b0,this.sampleLoopEndIndex=B0,this.isCompressed=(I0&16)>0,this.compressedData=void 0,this.useCount=0}getRawData(){let r=new Error("Not implemented");throw r.name="NotImplementedError",r}compressSample(r,l){if(!this.isCompressed)try{this.compressedData=l([this.getAudioData()],1,this.sampleRate,r),this.sampleType|=16,this.isCompressed=!0}catch{fe(`Failed to compress ${this.sampleName}. Leaving as uncompressed!`),this.isCompressed=!1,this.compressedData=void 0,this.sampleType&=-17}}getAudioData(){let r=new Error("Not implemented");throw r.name="NotImplementedError",r}};var LB=class extends fh{constructor(r,l,h,E,F,I0,b0){super(r,l,h,E,0,1,F*2,(I0-1)*2),this.sampleData=b0}getAudioData(){return this.sampleData}sampleData;getRawData(){if(this.isCompressed){if(!this.compressedData)throw new Error("Compressed but no data??");return this.compressedData}let r=new Uint8Array(this.sampleData.length*2);for(let l=0;l>8&255}return r}};function jw(o){Xt("%cLoading Wave samples...",S1.recognized);let r=0;for(;o.chunkData.currentIndexn6.header==="fmt ");if(!E)throw new Error("No fmt chunk in the wave file!");if(r3(E.chunkData,2)!==1)throw new Error("Only PCM format in WAVE is supported.");if(r3(E.chunkData,2)!==1)throw new Error("Only mono samples are supported.");let b0=r3(E.chunkData,4);r3(E.chunkData,4),r3(E.chunkData,2);let B0=r3(E.chunkData,2),O0=B0/8,B1=Math.pow(2,O0*8-1),R=Math.pow(2,O0*8),j0,K0=!1;B0===8?(j0=255,K0=!0):j0=B1;let F1=h.find(n6=>n6.header==="data");if(!F1)throw new Error("No data chunk in the wave chunk!");let m2=F1.size/O0,b1=new Float32Array(m2);for(let n6=0;n6=B1&&(c6-=R),b1[n6]=c6/j0)}let _5=60,v2=0,J2=0,n3=b1.length-1,U5=h.find(n6=>n6.header==="wsmp");if(U5){if(r3(U5.chunkData,4),_5=r3(U5.chunkData,2),v2=oh(U5.chunkData[U5.chunkData.currentIndex++],U5.chunkData[U5.chunkData.currentIndex++]),r3(U5.chunkData,4),r3(U5.chunkData,4),r3(U5.chunkData,4)===1){r3(U5.chunkData,8),J2=r3(U5.chunkData,4);let c6=r3(U5.chunkData,4);n3=J2+c6}}else fe("No wsmp chunk in wave... using sane defaults.");let $0=Si(h,"INFO"),Y5=`Unnamed ${r}`;if($0){let n6=f4($0.chunkData);for(;n6.header!=="INAM"&&$0.chunkData.currentIndex<$0.chunkData.length;)n6=f4($0.chunkData);n6.header==="INAM"&&(Y5=xe(n6.chunkData,n6.size).trim())}this.samples.push(new LB(Y5,b0,_5,v2,J2,m2,b1)),r++,j5(`%cLoaded sample %c${Y5}`,S1.info,S1.recognized)}t4()}var _A=class extends Qa{constructor(r){if(super(),this.dataArray=new l6(r),or("%cParsing DLS...",S1.info),!this.dataArray)throw t4(),new TypeError("No data!");let l=f4(this.dataArray,!1);this.verifyHeader(l,"riff"),this.verifyText(xe(this.dataArray,4).toLowerCase(),"dls ");let h=[];for(;this.dataArray.currentIndexB0.header==="colh");if(!F)throw e4(),new Error("No colh chunk!");this.instrumentAmount=n3(F.chunkData,4),X5(`%cInstruments amount: %c${this.instrumentAmount}`,S1.info,S1.recognized);let I0=Si(h,"wvpl");this.readDLSSamples(I0);let b0=Si(h,"lins");if(!b0)throw e4(),new Error("No lins chunk!");this.readDLSInstrumentList(b0),X5(`%cParsing finished! %c"${this.soundFontInfo.INAM||"UNNAMED"}"%c has %c${this.presets.length} %cpresets, - %c${this.instruments.length}%c instruments and %c${this.samples.length}%c samples.`,S1.info,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized,S1.info),e4()}verifyHeader(r,l){if(r.header.toLowerCase()!==l.toLowerCase())throw e4(),new SyntaxError(`Invalid DLS chunk header! Expected "${l.toLowerCase()}" got "${r.header.toLowerCase()}"`)}verifyText(r,l){if(r.toLowerCase()!==l.toLowerCase())throw e4(),new SyntaxError(`Invalid DLS soundfont! Expected "${l.toLowerCase()}" got "${r.toLowerCase()}"`)}};_A.prototype.readDLSInstrumentList=Jw;_A.prototype.readDLSInstrument=Kw;_A.prototype.readRegion=Ww;_A.prototype.readLart=Zw;_A.prototype.readDLSSamples=jw;var Lo=Lo!==void 0?Lo:{},Xw=!1,ek;Lo.isInitialized=new Promise(o=>ek=o);var HD=function(o){var r,l,h,E,F,I0,b0,B0="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",P0="",B1=0;o=o.replace(/[^A-Za-z0-9\+\/\=]/g,"");do E=B0.indexOf(o.charAt(B1++)),F=B0.indexOf(o.charAt(B1++)),I0=B0.indexOf(o.charAt(B1++)),b0=B0.indexOf(o.charAt(B1++)),r=E<<2|F>>4,l=(15&F)<<4|I0>>2,h=(3&I0)<<6|b0,P0+=String.fromCharCode(r),I0!==64&&(P0+=String.fromCharCode(l)),b0!==64&&(P0+=String.fromCharCode(h));while(B11&&(a0.thisProgram=process.argv[1].replace(/\\/g,"/")),a0.arguments=process.argv.slice(2),typeof module<"u",process.on("uncaughtException",function(_0){if(!(_0 instanceof Na))throw _0}),process.on("unhandledRejection",function(_0,X0){process.exit(1)}),a0.quit=function(_0){process.exit(_0)},a0.inspect=function(){return"[Emscripten Module object]"}):c6?(typeof read<"u"&&(a0.read=function(X0){return read(X0)}),a0.readBinary=function(X0){var C1;return typeof readbuffer=="function"?new Uint8Array(readbuffer(X0)):(ar(typeof(C1=read(X0,"binary"))=="object"),C1)},typeof scriptArgs<"u"?a0.arguments=scriptArgs:typeof arguments<"u"&&(a0.arguments=arguments),typeof quit=="function"&&(a0.quit=function(_0){quit(_0)})):(n6||b6)&&(n6?document.currentScript&&(w4=document.currentScript.src):w4=self.location.href,w4=w4.indexOf("blob:")!==0?w4.split("/").slice(0,-1).join("/")+"/":"",a0.read=function(X0){var C1=new XMLHttpRequest;return C1.open("GET",X0,!1),C1.send(null),C1.responseText},b6&&(a0.readBinary=function(X0){var C1=new XMLHttpRequest;return C1.open("GET",X0,!1),C1.responseType="arraybuffer",C1.send(null),new Uint8Array(C1.response)}),a0.readAsync=function(X0,C1,D2){var K3=new XMLHttpRequest;K3.open("GET",X0,!0),K3.responseType="arraybuffer",K3.onload=function(){if(K3.status==200||K3.status==0&&K3.response){C1(K3.response);return}D2()},K3.onerror=D2,K3.send(null)},a0.setWindowTitle=function(_0){document.title=_0});var J4=a0.print||(typeof console<"u"?console.log.bind(console):typeof print<"u"?print:null),b4=a0.printErr||(typeof printErr<"u"?printErr:typeof console<"u"&&console.warn.bind(console)||J4);for(o in H5)H5.hasOwnProperty(o)&&(a0[o]=H5[o]);function bt(_0){var X0=K0;return K0=K0+_0+15&-16,X0}function Mo(_0){var X0=B0[Y2>>2],C1=X0+_0+15&-16;return B0[Y2>>2]=C1,C1>=D9&&!Tr()?(B0[Y2>>2]=X0,0):X0}function To(_0,X0){return X0||(X0=16),_0=Math.ceil(_0/X0)*X0}function Jm(_0){switch(_0){case"i1":case"i8":return 1;case"i16":return 2;case"i32":case"float":return 4;case"i64":case"double":return 8;default:if(_0[_0.length-1]==="*")return 4;if(_0[0]!=="i")return 0;var X0=parseInt(_0.substr(1));return ar(X0%8==0),X0/8}}function wa(_0){wa.shown||(wa.shown={}),wa.shown[_0]||(wa.shown[_0]=1,b4(_0))}H5=void 0;var Km={"f64-rem":function(_0,X0){return _0%X0},debugger:function(){}},QC=[];function fk(_0,X0){for(var C1=0,D2=C1;D2>>0)+4294967296*+(X0>>>0):+(_0>>>0)+4294967296*+(0|X0)}function ka(_0,X0,C1){return C1&&C1.length?a0["dynCall_"+_0].apply(null,[X0].concat(C1)):a0["dynCall_"+_0].call(null,X0)}var Go=0,Ih=0;function ar(_0,X0){_0||Hi("Assertion failed: "+X0)}function No(_0){var X0=a0["_"+_0];return ar(X0,"Cannot call unknown function "+_0+", make sure it is exported"),X0}var yC={stackSave:function(){xC()},stackRestore:function(){Ga()},arrayToC:function(_0){var X0,C1,D2=Uo(_0.length);return X0=_0,C1=D2,E.set(X0,C1),D2},stringToC:function(_0){var X0=0;if(_0!=null&&_0!==0){var C1=(_0.length<<2)+1;X0=Uo(C1),kC(_0,X0,C1)}return X0}},RA={string:yC.stringToC,array:yC.arrayToC};function dh(_0,X0,C1,D2,K3){var l9=No(_0),q9=[],g6=0;if(D2)for(var d7=0;d7>0]=X0;break;case"i16":I0[_0>>1]=X0;break;case"i32":B0[_0>>2]=X0;break;case"i64":tempI64=[X0>>>0,+Bh(tempDouble=X0)>=1?tempDouble>0?(0|ph(+mh(tempDouble/4294967296),4294967295))>>>0:~~+Ma((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0],B0[_0>>2]=tempI64[0],B0[_0+4>>2]=tempI64[1];break;case"float":B1[_0>>2]=X0;break;case"double":x[_0>>3]=X0;break;default:Hi("invalid type for setValue: "+C1)}}function d3(_0,X0,C1){switch((X0=X0||"i8").charAt(X0.length-1)==="*"&&(X0="i32"),X0){case"i1":case"i8":return E[_0>>0];case"i16":return I0[_0>>1];case"i32":case"i64":return B0[_0>>2];case"float":return B1[_0>>2];case"double":return x[_0>>3];default:Hi("invalid type for getValue: "+X0)}return null}function Vm(_0,X0,C1,D2){typeof _0=="number"?(l9=!0,q9=_0):(l9=!1,q9=_0.length);var K3=typeof X0=="string"?X0:null;if(g6=C1==4?D2:[typeof GA=="function"?GA:bt,Uo,bt,Mo][C1===void 0?2:C1](Math.max(q9,K3?1:X0.length)),l9){for(D2=g6,ar((3&g6)==0),d7=g6+(-4&q9);D2>2]=0;for(d7=g6+q9;D2>0]=0;return g6}if(K3==="i8")return _0.subarray||_0.slice?F.set(_0,g6):F.set(new Uint8Array(_0),g6),g6;for(var l9,q9,g6,d7,Le,Ve,we,c9=0;c9>0],(D2!=0||X0)&&(q9++,!X0||q9!=X0););X0||(X0=q9);var g6="";if(l9<128){for(;X0>0;)K3=String.fromCharCode.apply(String,F.subarray(_0,_0+Math.min(X0,1024))),g6=g6?g6+K3:K3,_0+=1024,X0-=1024;return g6}return C1=_0,function(Le,Ve){for(var we=Ve;Le[we];)++we;if(we-Ve>16&&Le.subarray&&wC)return wC.decode(Le.subarray(Ve,we));for(var c9,Rt,Ri,E7,xt,xi,Fi="";;){if(!(c9=Le[Ve++]))return Fi;if(!(128&c9)){Fi+=String.fromCharCode(c9);continue}if(Rt=63&Le[Ve++],(224&c9)==192){Fi+=String.fromCharCode((31&c9)<<6|Rt);continue}if(Ri=63&Le[Ve++],(240&c9)==224?c9=(15&c9)<<12|Rt<<6|Ri:(E7=63&Le[Ve++],(248&c9)==240?c9=(7&c9)<<18|Rt<<12|Ri<<6|E7:(xt=63&Le[Ve++],c9=(252&c9)==248?(3&c9)<<24|Rt<<18|Ri<<12|E7<<6|xt:(1&c9)<<30|Rt<<24|Ri<<18|E7<<12|xt<<6|(xi=63&Le[Ve++]))),c9<65536)Fi+=String.fromCharCode(c9);else{var bn=c9-65536;Fi+=String.fromCharCode(55296|bn>>10,56320|1023&bn)}}}(F,C1)}function zm(_0){for(var X0="";;){var C1=E[_0++>>0];if(!C1)return X0;X0+=String.fromCharCode(C1)}}function xA(_0,X0){return function(D2,K3,l9){for(var q9=0;q9>0]=D2.charCodeAt(q9);l9||(E[K3>>0]=0)}(_0,X0,!1)}var wC=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function Sn(_0,X0,C1,D2){if(!(D2>0))return 0;for(var K3=C1,l9=C1+D2-1,q9=0;q9<_0.length;++q9){var g6=_0.charCodeAt(q9);if(g6>=55296&&g6<=57343&&(g6=65536+((1023&g6)<<10)|1023&_0.charCodeAt(++q9)),g6<=127){if(C1>=l9)break;X0[C1++]=g6}else if(g6<=2047){if(C1+1>=l9)break;X0[C1++]=192|g6>>6,X0[C1++]=128|63&g6}else if(g6<=65535){if(C1+2>=l9)break;X0[C1++]=224|g6>>12,X0[C1++]=128|g6>>6&63,X0[C1++]=128|63&g6}else if(g6<=2097151){if(C1+3>=l9)break;X0[C1++]=240|g6>>18,X0[C1++]=128|g6>>12&63,X0[C1++]=128|g6>>6&63,X0[C1++]=128|63&g6}else if(g6<=67108863){if(C1+4>=l9)break;X0[C1++]=248|g6>>24,X0[C1++]=128|g6>>18&63,X0[C1++]=128|g6>>12&63,X0[C1++]=128|g6>>6&63,X0[C1++]=128|63&g6}else{if(C1+5>=l9)break;X0[C1++]=252|g6>>30,X0[C1++]=128|g6>>24&63,X0[C1++]=128|g6>>18&63,X0[C1++]=128|g6>>12&63,X0[C1++]=128|g6>>6&63,X0[C1++]=128|63&g6}}return X0[C1]=0,C1-K3}function kC(_0,X0,C1){return Sn(_0,F,X0,C1)}function FA(_0){for(var X0=0,C1=0;C1<_0.length;++C1){var D2=_0.charCodeAt(C1);D2>=55296&&D2<=57343&&(D2=65536+((1023&D2)<<10)|1023&_0.charCodeAt(++C1)),D2<=127?++X0:D2<=2047?X0+=2:D2<=65535?X0+=3:D2<=2097151?X0+=4:D2<=67108863?X0+=5:X0+=6}return X0}var vC=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function Zm(_0){for(var X0=_0,C1=X0>>1;I0[C1];)++C1;if((X0=C1<<1)-_0>32&&vC)return vC.decode(F.subarray(_0,X0));for(var D2=0,K3="";;){var l9=I0[_0+2*D2>>1];if(l9==0)return K3;++D2,K3+=String.fromCharCode(l9)}}function Wm(_0,X0,C1){if(C1===void 0&&(C1=2147483647),C1<2)return 0;for(var D2=X0,K3=(C1-=2)<2*_0.length?C1/2:_0.length,l9=0;l9>1]=q9,X0+=2}return I0[X0>>1]=0,X0-D2}function jm(_0){return 2*_0.length}function Xm(_0){for(var X0=0,C1="";;){var D2=B0[_0+4*X0>>2];if(D2==0)return C1;if(++X0,D2>=65536){var K3=D2-65536;C1+=String.fromCharCode(55296|K3>>10,56320|1023&K3)}else C1+=String.fromCharCode(D2)}}function ep(_0,X0,C1){if(C1===void 0&&(C1=2147483647),C1<4)return 0;for(var D2=X0,K3=D2+C1-4,l9=0;l9<_0.length;++l9){var q9=_0.charCodeAt(l9);if(q9>=55296&&q9<=57343&&(q9=65536+((1023&q9)<<10)|1023&_0.charCodeAt(++l9)),B0[X0>>2]=q9,(X0+=4)+4>K3)break}return B0[X0>>2]=0,X0-D2}function tp(_0){for(var X0=0,C1=0;C1<_0.length;++C1){var D2=_0.charCodeAt(C1);D2>=55296&&D2<=57343&&++C1,X0+=4}return X0}function ip(_0){var X0=FA(_0)+1,C1=GA(X0);return C1&&Sn(_0,E,C1,X0),C1}function rp(_0){var X0=FA(_0)+1,C1=Uo(X0);return Sn(_0,E,C1,X0),C1}function SC(_0){return _0}function NB(){var _0,X0=function(){var D2=Error();if(!D2.stack){try{throw Error(0)}catch(K3){D2=K3}if(!D2.stack)return"(no stack trace available)"}return D2.stack.toString()}();return a0.extraStackTrace&&(X0+=` -`+a0.extraStackTrace()),(_0=X0).replace(/__Z[\w\d_]+/g,function(C1){var D2,K3=D2=C1;return C1===K3?C1:C1+" ["+K3+"]"})}function Eh(_0,X0){return _0%X0>0&&(_0+=X0-_0%X0),_0}function DC(_0){a0.buffer=h=_0}function H9(){a0.HEAP8=E=new Int8Array(h),a0.HEAP16=I0=new Int16Array(h),a0.HEAP32=B0=new Int32Array(h),a0.HEAPU8=F=new Uint8Array(h),a0.HEAPU16=b0=new Uint16Array(h),a0.HEAPU32=P0=new Uint32Array(h),a0.HEAPF32=B1=new Float32Array(h),a0.HEAPF64=x=new Float64Array(h)}function Tr(){var _0=a0.usingWasm?65536:16777216,X0=2147483648-_0;if(B0[Y2>>2]>X0)return!1;var C1=D9;for(D9=Math.max(D9,16777216);D9>2];)D9=D9<=536870912?Eh(2*D9,_0):Math.min(Eh((3*D9+2147483648)/4,_0),X0);var D2=a0.reallocBuffer(D9);return D2&&D2.byteLength==D9?(DC(D2),H9(),!0):(D9=C1,!1)}j0=K0=m2=b1=_5=v2=Y2=0,F1=!1,a0.reallocBuffer||(a0.reallocBuffer=function(_0){try{if(ArrayBuffer.transfer)X0=ArrayBuffer.transfer(h,_0);else{var X0,C1=E;X0=new ArrayBuffer(_0),new Int8Array(X0).set(C1)}}catch{return!1}return!!PB(X0)&&X0});try{(J5=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get))(new ArrayBuffer(4))}catch{J5=function(X0){return X0.byteLength}}var Da=a0.TOTAL_STACK||5242880,D9=a0.TOTAL_MEMORY||16777216;function ba(){return D9}function LA(_0){for(;_0.length>0;){var X0=_0.shift();if(typeof X0=="function"){X0();continue}var C1=X0.func;typeof C1=="number"?X0.arg===void 0?a0.dynCall_v(C1):a0.dynCall_vi(C1,X0.arg):C1(X0.arg===void 0?null:X0.arg)}}D9=0?_0:X0<=32?2*Math.abs(1<=D2&&(X0<=32||_0>D2)&&(_0=-2*D2+_0),_0}var Bh=Math.abs,Ma=Math.ceil,mh=Math.floor,ph=Math.min,Dn=0,Qh=null,TA=null;function np(_0){return _0}a0.preloadedImages={},a0.preloadedAudios={};var RC="data:application/octet-stream;base64,";function Ta(_0){return String.prototype.startsWith?_0.startsWith(RC):_0.indexOf(RC)===0}(function(){var X0="main.wast",C1="main.wasm",D2="main.temp.asm.js";Ta(X0)||(X0=L4(X0)),Ta(C1)||(C1=L4(C1)),Ta(D2)||(D2=L4(D2));var K3={global:null,env:null,asm2wasm:Km,parent:a0},l9=null;function q9(we){return we}function g6(){try{if(a0.wasmBinary)return new Uint8Array(a0.wasmBinary);if(a0.readBinary)return a0.readBinary(C1);throw"both async and sync fetching of the wasm failed"}catch(we){Hi(we)}}a0.asmPreload=a0.asm;var d7=a0.reallocBuffer,Le=function(we){we=Eh(we,a0.usingWasm?65536:16777216);var c9=a0.buffer.byteLength;if(a0.usingWasm)try{var Rt=a0.wasmMemory.grow((we-c9)/65536);return Rt!==-1?a0.buffer=a0.wasmMemory.buffer:null}catch{return null}};a0.reallocBuffer=function(we){return Ve==="asmjs"?d7(we):Le(we)};var Ve="";a0.asm=function(we,c9,Rt){var Ri;if(!(c9=Ri=c9).table){var E7,xt=a0.wasmTableSize;xt===void 0&&(xt=1024);var xi=a0.wasmMaxTableSize;typeof WebAssembly=="object"&&typeof WebAssembly.Table=="function"?xi!==void 0?c9.table=new WebAssembly.Table({initial:xt,maximum:xi,element:"anyfunc"}):c9.table=new WebAssembly.Table({initial:xt,element:"anyfunc"}):c9.table=Array(xt),a0.wasmTable=c9.table}return c9.memoryBase||(c9.memoryBase=a0.STATIC_BASE),c9.tableBase||(c9.tableBase=0),E7=function(bn,lr,FC){if(typeof WebAssembly!="object")return b4("no native wasm support detected"),!1;if(!(a0.wasmMemory instanceof WebAssembly.Memory))return b4("no native wasm Memory in use"),!1;function yh(cr,qi){if((l9=cr.exports).memory){var Oo,NA,UA;Oo=l9.memory,NA=a0.buffer,Oo.byteLength0?C1:FA(_0)+1,K3=Array(D2),l9=Sn(_0,K3,0,K3.length);return X0&&(K3.length=l9),K3}function OB(_0){for(var X0=[],C1=0;C1<_0.length;C1++){var D2=_0[C1];D2>255&&(D2&=255),X0.push(String.fromCharCode(D2))}return X0.join("")}K0+=16,Y2=bt(4),_5=(m2=b1=To(K0))+Da,v2=To(_5),B0[Y2>>2]=v2,F1=!0,a0.wasmTableSize=4,a0.wasmMaxTableSize=4,a0.asmGlobalArg={},a0.asmLibraryArg={abort:Hi,assert:ar,enlargeMemory:Tr,getTotalMemory:ba,abortOnCannotGrowMemory:function(){Hi("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+D9+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")},invoke_iii:function(X0,C1,D2){var K3=xC();try{return a0.dynCall_iii(X0,C1,D2)}catch(l9){if(Ga(K3),typeof l9!="number"&&l9!=="longjmp")throw l9;a0.setThrew(1,0)}},___assert_fail:function(X0,C1,D2,K3){Hi("Assertion failed: "+Sa(X0)+", at: "+[C1?Sa(C1):"unknown filename",D2,K3?Sa(K3):"unknown function"])},___setErrNo:function(X0){return a0.___errno_location&&(B0[a0.___errno_location()>>2]=X0),X0},_abort:function(){a0.abort()},_emscripten_memcpy_big:function(X0,C1,D2){return F.set(F.subarray(C1,C1+D2),X0),X0},_llvm_floor_f64:mh,DYNAMICTOP_PTR:Y2,tempDoublePtr:_t,ABORT:Go,STACKTOP:b1,STACK_MAX:_5};var Ur=a0.asm(a0.asmGlobalArg,a0.asmLibraryArg,h);a0.asm=Ur,a0.___errno_location=function(){return a0.asm.___errno_location.apply(null,arguments)};var PB=a0._emscripten_replace_memory=function(){return a0.asm._emscripten_replace_memory.apply(null,arguments)};a0._free=function(){return a0.asm._free.apply(null,arguments)};var GA=a0._malloc=function(){return a0.asm._malloc.apply(null,arguments)};a0._memcpy=function(){return a0.asm._memcpy.apply(null,arguments)},a0._memset=function(){return a0.asm._memset.apply(null,arguments)},a0._sbrk=function(){return a0.asm._sbrk.apply(null,arguments)},a0._stb_vorbis_js_channels=function(){return a0.asm._stb_vorbis_js_channels.apply(null,arguments)},a0._stb_vorbis_js_close=function(){return a0.asm._stb_vorbis_js_close.apply(null,arguments)},a0._stb_vorbis_js_decode=function(){return a0.asm._stb_vorbis_js_decode.apply(null,arguments)},a0._stb_vorbis_js_open=function(){return a0.asm._stb_vorbis_js_open.apply(null,arguments)},a0._stb_vorbis_js_sample_rate=function(){return a0.asm._stb_vorbis_js_sample_rate.apply(null,arguments)},a0.establishStackSpace=function(){return a0.asm.establishStackSpace.apply(null,arguments)},a0.getTempRet0=function(){return a0.asm.getTempRet0.apply(null,arguments)},a0.runPostSets=function(){return a0.asm.runPostSets.apply(null,arguments)},a0.setTempRet0=function(){return a0.asm.setTempRet0.apply(null,arguments)},a0.setThrew=function(){return a0.asm.setThrew.apply(null,arguments)};var Uo=a0.stackAlloc=function(){return a0.asm.stackAlloc.apply(null,arguments)},Ga=a0.stackRestore=function(){return a0.asm.stackRestore.apply(null,arguments)},xC=a0.stackSave=function(){return a0.asm.stackSave.apply(null,arguments)};function Na(_0){this.name="ExitStatus",this.message="Program terminated with exit("+_0+")",this.status=_0}function Ua(_0){_0=_0||a0.arguments,!(Dn>0)&&(function(){if(a0.preRun)for(typeof a0.preRun=="function"&&(a0.preRun=[a0.preRun]);a0.preRun.length;)UB(a0.preRun.shift());LA(Gr)}(),!(Dn>0)&&(a0.calledRun||(a0.setStatus?(a0.setStatus("Running..."),setTimeout(function(){setTimeout(function(){a0.setStatus("")},1),X0()},1)):X0())));function X0(){!a0.calledRun&&(a0.calledRun=!0,Go||(xa||(xa=!0,LA(_a)),LA(Ch),a0.onRuntimeInitialized&&a0.onRuntimeInitialized(),function(){if(a0.postRun)for(typeof a0.postRun=="function"&&(a0.postRun=[a0.postRun]);a0.postRun.length;)_i(a0.postRun.shift());LA(Ra)}()))}}function HB(_0,X0){(!X0||!a0.noExitRuntime||_0!==0)&&(a0.noExitRuntime||(Go=!0,Ih=_0,b1=U5,LA(Ei),bi=!0,a0.onExit&&a0.onExit(_0)),a0.quit(_0,new Na(_0)))}function Hi(_0){throw a0.onAbort&&a0.onAbort(_0),_0!==void 0?(J4(_0),b4(_0),_0=JSON.stringify(_0)):_0="",Go=!0,Ih=1,"abort("+_0+"). Build with -s ASSERTIONS=1 for more info."}if(a0.dynCall_iii=function(){return a0.asm.dynCall_iii.apply(null,arguments)},a0.asm=Ur,a0.ccall=dh,a0.cwrap=function(X0,C1,D2,K3){var l9=(D2=D2||[]).every(function(q9){return q9==="number"});return C1!=="string"&&l9&&!K3?No(X0):function(){return dh(X0,C1,D2,arguments,K3)}},Na.prototype=Error(),Na.prototype.constructor=Na,TA=function _0(){a0.calledRun||Ua(),a0.calledRun||(TA=_0)},a0.run=Ua,a0.abort=Hi,a0.preInit)for(typeof a0.preInit=="function"&&(a0.preInit=[a0.preInit]);a0.preInit.length>0;)a0.preInit.pop()();a0.noExitRuntime=!0,Ua(),a0.onRuntimeInitialized=()=>{Xw=!0,ek()},Lo.decode=function(_0){return function(C1){if(!Xw)throw Error("Not initialized");var D2={};function K3(lr){return new Int32Array(a0.HEAPU8.buffer,lr,1)[0]}function l9(lr,FC){var yh=new ArrayBuffer(FC*Float32Array.BYTES_PER_ELEMENT),p8=new Float32Array(yh);return p8.set(new Float32Array(a0.HEAPU8.buffer,lr,FC)),p8}D2.open=a0.cwrap("stb_vorbis_js_open","number",[]),D2.close=a0.cwrap("stb_vorbis_js_close","void",["number"]),D2.channels=a0.cwrap("stb_vorbis_js_channels","number",["number"]),D2.sampleRate=a0.cwrap("stb_vorbis_js_sample_rate","number",["number"]),D2.decode=a0.cwrap("stb_vorbis_js_decode","number",["number","number","number","number","number"]);var q9,g6,d7,Le,Ve=D2.open(),we=(q9=C1,g6=C1.byteLength,d7=a0._malloc(g6),(Le=new Uint8Array(a0.HEAPU8.buffer,d7,g6)).set(new Uint8Array(q9,0,g6)),Le),c9=a0._malloc(4),Rt=a0._malloc(4),Ri=D2.decode(Ve,we.byteOffset,we.byteLength,c9,Rt);if(a0._free(we.byteOffset),Ri<0)throw D2.close(Ve),a0._free(c9),Error("stbvorbis decode failed: "+Ri);for(var E7=D2.channels(Ve),xt=Array(E7),xi=new Int32Array(a0.HEAPU32.buffer,K3(c9),E7),Fi=0;Fio.chunkData.currentIndex;){let F=qD(E,o.chunkData,r,l);h.push(F),E++}return h.length>1&&h.pop(),h}function qD(o,r,l,h){let E=Fe(r,20),F=n3(r,4)*2,I0=n3(r,4)*2,b0=n3(r,4)*2,B0=n3(r,4)*2,P0=n3(r,4),B1=r[r.currentIndex++];B1===255&&(B1=60);let x=sy(r[r.currentIndex++]),j0=n3(r,2),K0=n3(r,2);return new Tm(E,F,I0,b0,B0,P0,B1,x,j0,K0,l,o,h)}var Gm=class extends hh{constructor(r){super(),this.instrumentName=Fe(r.chunkData,20).trim(),this.instrumentZoneIndex=n3(r.chunkData,2),this.instrumentZonesAmount=0}getInstrumentZones(r,l){this.instrumentZonesAmount=r;for(let h=this.instrumentZoneIndex;ho.chunkData.currentIndex;){let h=new Gm(o);if(l.length>0){let E=h.instrumentZoneIndex-l[l.length-1].instrumentZoneIndex;l[l.length-1].getInstrumentZones(E,r)}l.push(h)}return l.length>1&&l.pop(),l}var Nm=class extends Fo{constructor(r){super(),this.generatorZoneStartIndex=n3(r,2),this.modulatorZoneStartIndex=n3(r,2),this.modulatorZoneSize=0,this.generatorZoneSize=0,this.isGlobal=!0}setZoneSize(r,l){this.modulatorZoneSize=r,this.generatorZoneSize=l}getGenerators(r){for(let l=this.generatorZoneStartIndex;lh.generatorType===R1.sampleID);l&&(this.sample=r[l.generatorValue],this.isGlobal=!1,this.sample.useCount++)}getKeyRange(){let r=this.generators.find(l=>l.generatorType===R1.keyRange);r&&(this.keyRange.min=r.generatorValue&127,this.keyRange.max=r.generatorValue>>8&127)}getVelRange(){let r=this.generators.find(l=>l.generatorType===R1.velRange);r&&(this.velRange.min=r.generatorValue&127,this.velRange.max=r.generatorValue>>8&127)}};function rk(o,r,l,h){let E=[];for(;o.chunkData.length>o.chunkData.currentIndex;){let F=new Nm(o.chunkData);if(E.length>0){let I0=F.modulatorZoneStartIndex-E[E.length-1].modulatorZoneStartIndex,b0=F.generatorZoneStartIndex-E[E.length-1].generatorZoneStartIndex;E[E.length-1].setZoneSize(I0,b0),E[E.length-1].getGenerators(r),E[E.length-1].getModulators(l),E[E.length-1].getSample(h),E[E.length-1].getKeyRange(),E[E.length-1].getVelRange()}E.push(F)}return E.length>1&&E.pop(),E}var Um=class extends gh{constructor(r){super(),this.generatorZoneStartIndex=n3(r,2),this.modulatorZoneStartIndex=n3(r,2),this.modulatorZoneSize=0,this.generatorZoneSize=0,this.isGlobal=!0}setZoneSize(r,l){this.modulatorZoneSize=r,this.generatorZoneSize=l}getGenerators(r){for(let l=this.generatorZoneStartIndex;lh.generatorType===R1.instrument);l&&(this.instrument=r[l.generatorValue],this.instrument.addUseCount(),this.isGlobal=!1)}getKeyRange(){let r=this.generators.find(l=>l.generatorType===R1.keyRange);r&&(this.keyRange.min=r.generatorValue&127,this.keyRange.max=r.generatorValue>>8&127)}getVelRange(){let r=this.generators.find(l=>l.generatorType===R1.velRange);r&&(this.velRange.min=r.generatorValue&127,this.velRange.max=r.generatorValue>>8&127)}};function nk(o,r,l,h){let E=[];for(;o.chunkData.length>o.chunkData.currentIndex;){let F=new Um(o.chunkData);if(E.length>0){let I0=F.modulatorZoneStartIndex-E[E.length-1].modulatorZoneStartIndex,b0=F.generatorZoneStartIndex-E[E.length-1].generatorZoneStartIndex;E[E.length-1].setZoneSize(I0,b0),E[E.length-1].getGenerators(r),E[E.length-1].getModulators(l),E[E.length-1].getInstrument(h),E[E.length-1].getKeyRange(),E[E.length-1].getVelRange()}E.push(F)}return E.length>1&&E.pop(),E}var Om=class extends ch{constructor(r){super(),this.presetName=Fe(r.chunkData,20).trim().replace(/\d{3}:\d{3}/,""),this.program=n3(r.chunkData,2),this.bank=n3(r.chunkData,2),this.presetZoneStartIndex=n3(r.chunkData,2),this.library=n3(r.chunkData,4),this.genre=n3(r.chunkData,4),this.morphology=n3(r.chunkData,4),this.presetZonesAmount=0}getPresetZones(r,l){this.presetZonesAmount=r;for(let h=this.presetZoneStartIndex;ho.chunkData.currentIndex;){let h=new Om(o);if(l.length>0){let E=h.presetZoneStartIndex-l[l.length-1].presetZoneStartIndex;l[l.length-1].getPresetZones(E,r)}l.push(h)}return l.length>1&&l.pop(),l}var MB=class extends Qa{constructor(r,l=!0){if(super(),l&&console.warn("Using the constructor directly is deprecated. Use loadSoundFont instead."),this.dataArray=new l6(r),or("%cParsing SoundFont...",S1.info),!this.dataArray)throw e4(),new TypeError("No data!");let h=h4(this.dataArray,!1);this.verifyHeader(h,"riff");let E=Fe(this.dataArray,4).toLowerCase();if(E!=="sfbk"&&E!=="sfpk")throw e4(),new SyntaxError(`Invalid soundFont! Expected "sfbk" or "sfpk" got "${E}"`);let F=E==="sfpk",I0=h4(this.dataArray);for(this.verifyHeader(I0,"list"),Fe(I0.chunkData,4);I0.chunkData.length>I0.chunkData.currentIndex;){let H6=h4(I0.chunkData),c6;switch(H6.header.toLowerCase()){case"ifil":case"iver":c6=`${n3(H6.chunkData,2)}.${n3(H6.chunkData,2)}`;break;case"icmt":c6=Fe(H6.chunkData,H6.chunkData.length,void 0,!1);break;default:c6=Fe(H6.chunkData,H6.chunkData.length)}X5(`%c"${H6.header}": %c"${c6}"`,S1.info,S1.recognized),this.soundFontInfo[H6.header]=c6}let b0=h4(this.dataArray,!1);this.verifyHeader(b0,"list"),this.verifyText(Fe(this.dataArray,4),"sdta"),X5("%cVerifying smpl chunk...",S1.warn);let B0=h4(this.dataArray,!1);this.verifyHeader(B0,"smpl");let P0;if(F){X5("%cSF2Pack detected, attempting to decode the smpl chunk...",S1.info);try{P0=Lo.decode(this.dataArray.buffer.slice(this.dataArray.currentIndex,this.dataArray.currentIndex+b0.size-12)).data[0]}catch(H6){throw e4(),new Error(`SF2Pack Ogg Vorbis decode error: ${H6}`)}X5(`%cDecoded the smpl chunk! Length: %c${P0.length}`,S1.info,S1.value)}else P0=this.dataArray,this.sampleDataStartIndex=this.dataArray.currentIndex;X5(`%cSkipping sample chunk, length: %c${b0.size-12}`,S1.info,S1.value),this.dataArray.currentIndex+=b0.size-12,X5("%cLoading preset data chunk...",S1.warn);let B1=h4(this.dataArray);this.verifyHeader(B1,"list"),Fe(B1.chunkData,4);let x=h4(B1.chunkData);this.verifyHeader(x,"phdr");let j0=h4(B1.chunkData);this.verifyHeader(j0,"pbag");let K0=h4(B1.chunkData);this.verifyHeader(K0,"pmod");let F1=h4(B1.chunkData);this.verifyHeader(F1,"pgen");let m2=h4(B1.chunkData);this.verifyHeader(m2,"inst");let b1=h4(B1.chunkData);this.verifyHeader(b1,"ibag");let _5=h4(B1.chunkData);this.verifyHeader(_5,"imod");let v2=h4(B1.chunkData);this.verifyHeader(v2,"igen");let Y2=h4(B1.chunkData);this.verifyHeader(Y2,"shdr"),this.dataArray.currentIndex=this.sampleDataStartIndex,this.samples.push(...tk(Y2,P0,!F));let J5=vm(v2),U5=bm(_5),a0=rk(b1,J5,U5,this.samples);this.instruments=ik(m2,a0);let H5=vm(F1),n6=bm(K0),b6=nk(j0,H5,n6,this.instruments);this.presets.push(...Ak(x,b6)),this.presets.sort((H6,c6)=>H6.program-c6.program+(H6.bank-c6.bank)),X5(`%cParsing finished! %c"${this.soundFontInfo.INAM}"%c has %c${this.presets.length} %cpresets, - %c${this.instruments.length}%c instruments and %c${this.samples.length}%c samples.`,S1.info,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized,S1.info),e4(),F&&delete this.dataArray}verifyHeader(r,l){if(r.header.toLowerCase()!==l.toLowerCase())throw e4(),new SyntaxError(`Invalid chunk header! Expected "${l.toLowerCase()}" got "${r.header.toLowerCase()}"`)}verifyText(r,l){if(r.toLowerCase()!==l.toLowerCase())throw e4(),new SyntaxError(`Invalid soundFont! Expected "${l.toLowerCase()}" got "${r.toLowerCase()}"`)}};function uh(o){let r=o.slice(8,12),l=new l6(r);return Fe(l,4,void 0,!1).toLowerCase()==="dls "?new _A(o):new MB(o,!1)}async function sk(){let o="locale.exportAudio.formats.formats.soundfont.options.";$t(this.localeManager.getLocaleString(o+"title"),[{type:"toggle",textContent:"Trim",attributes:{"trim-toggle":"1",checked:"checked"}},{type:"toggle",translatePathTitle:o+"compress",attributes:{"compress-toggle":"1"}},{type:"range",translatePathTitle:o+"quality",attributes:{min:"0",max:"10",value:"5"}},{type:"button",textContent:this.localeManager.getLocaleString(o+"confirm"),onClick:async r=>{let l=r.div.querySelector("input[trim-toggle='1']").checked,h=r.div.querySelector("input[compress-toggle='1']").checked,E=parseInt(r.div.querySelector("input[type='range']").value)/10;Ii(r.id),or("%cExporting minified soundfont...",S1.info);let F=await this.seq.getMIDI(),I0=uh(F.embeddedSoundFont||this.soundFont);$h(F,await this.synth.getSynthesizerSnapshot()),l&&RB(I0,F);let b0=I0.write({compress:h,compressionQuality:E,compressionFunction:this.compressionFunc}),B0=new Blob([b0.buffer],{type:"audio/soundfont"}),P0=I0.soundFontInfo.ifil.split(".")[0]==="3"?"sf3":"sf2";this.saveBlob(B0,`${I0.soundFontInfo.INAM||"unnamed"}.${P0}`),e4()}}],99999999,!0,this.localeManager)}async function ok(){let o="locale.exportAudio.formats.";$t(this.localeManager.getLocaleString(o+"title"),[{type:"button",translatePathTitle:o+"formats.wav.button",onClick:r=>{Ii(r.id),this._exportAudioData()}},{type:"button",translatePathTitle:o+"formats.midi.button",onClick:r=>{Ii(r.id),this.exportMidi()}},{type:"button",translatePathTitle:o+"formats.soundfont.button",onClick:r=>{Ii(r.id);try{this._exportSoundfont()}catch{$t("Warning",[{type:"text",textContent:this.localeManager.getLocaleString("locale.warnings.outOfMemory")}])}}},{type:"button",translatePathTitle:o+"formats.rmidi.button",onClick:r=>{Ii(r.id);try{this._exportRMIDI()}catch{$t("Warning",[{type:"text",textContent:this.localeManager.getLocaleString("locale.warnings.outOfMemory")}])}}}],999999,!0,this.localeManager,{display:"flex",flexWrap:"wrap",justifyContent:"center"})}async function $k(){let o=(x,j0,K0)=>this.seq.midiData.RMIDInfo?.[x]===void 0?j0:K0.decode(this.seq.midiData.RMIDInfo?.[x]).replace(/\0$/,""),r=o("IENC","ascii",new TextDecoder),l=new TextDecoder(r),h=o("IPRD","",l),E=o("IART","",l),F=o("IGNR","",l),I0=o("ICMT","Created using SpessaSynth: https://spessasus.github.io/SpessaSynth",l),b0="locale.exportAudio.formats.formats.rmidi.options.",B0="locale.exportAudio.formats.metadata.",B1=$t(this.localeManager.getLocaleString(b0+"title"),[{type:"toggle",translatePathTitle:b0+"compress",attributes:{"compress-toggle":"1",checked:"true"}},{type:"range",translatePathTitle:b0+"quality",attributes:{min:"0",max:"10",value:"5"}},{type:"input",translatePathTitle:B0+"songTitle",attributes:{name:"song_title",type:"text",value:this.seqUI.currentSongTitle}},{type:"input",translatePathTitle:B0+"album",attributes:{value:h,name:"album",type:"text"}},{type:"input",translatePathTitle:B0+"artist",attributes:{value:E,name:"artist",type:"text"}},{type:"input",translatePathTitle:B0+"genre",attributes:{value:F,name:"genre",type:"text"}},{type:"input",translatePathTitle:B0+"comment",attributes:{value:I0,name:"comment",type:"text"}},{type:"file",translatePathTitle:B0+"albumCover",attributes:{value:this.seq.midiData.RMIDInfo?.IPIC!==void 0?this.seq.midiData.RMIDInfo.IPIC:"",name:"cover",accept:"image/*"}},{type:"button",textContent:this.localeManager.getLocaleString(b0+"confirm"),onClick:async x=>{let j0=x.div.querySelector("input[compress-toggle='1']").checked,K0=parseInt(x.div.querySelector("input[type='range']").value)/10,F1=x.div.querySelector("input[name='album']").value,m2=x.div.querySelector("input[name='artist']").value,b1=x.div.querySelector("input[name='song_title']").value,_5=x.div.querySelector("input[name='comment']").value,v2=x.div.querySelector("input[name='genre']").value,Y2=x.div.querySelector("input[type='file']")?.files[0];Ii(x.id),Xt("%cExporting RMIDI...",S1.info);let J5="locale.exportAudio.formats.formats.rmidi.progress.",U5=$t(this.localeManager.getLocaleString(J5+"title"),[{type:"text",textContent:this.localeManager.getLocaleString(J5+"loading"),attributes:{class:"export_rmidi_message"}}],9999999,!1);await new Promise(L4=>setTimeout(L4,500));let a0=U5.div.getElementsByClassName("export_rmidi_message")[0],H5=await this.seq.getMIDI(),n6=uh(H5.embeddedSoundFont||this.soundFont);a0.textContent=this.localeManager.getLocaleString(J5+"modifyingMIDI"),await new Promise(L4=>setTimeout(L4,75)),$h(H5,await this.synth.getSynthesizerSnapshot()),a0.textContent=this.localeManager.getLocaleString(J5+"modifyingSoundfont"),await new Promise(L4=>setTimeout(L4,75)),RB(n6,H5);let b6=n6.write({compress:j0,compressionQuality:K0,compressionFunction:this.compressionFunc});a0.textContent=this.localeManager.getLocaleString(J5+"saving"),await new Promise(L4=>setTimeout(L4,75));let H6;Y2?.type.split("/")[0]==="image"?H6=await Y2.arrayBuffer():H5.RMIDInfo?.IPIC!==void 0&&(H6=H5.RMIDInfo.IPIC.buffer);let c6=ay(b6,H5,n6,0,this.seqUI.encoding,{name:b1,comment:_5,engineer:n6.soundFontInfo.IENG,picture:H6,album:F1.length>0?F1:void 0,artist:m2.length>0?m2:void 0,genre:v2.length>0?v2:void 0,midiEncoding:this.seqUI.encoding}),w4=new Blob([c6.buffer],{type:"audio/rmid"});this.saveBlob(w4,`${b1||"unnamed_song"}.rmi`),a0.textContent=this.localeManager.getLocaleString(J5+"done"),Ii(U5.id),e4()}}],9999999,!0,this.localeManager).div.querySelector("input[type='file']");B1.oninput=()=>{B1.files[0]&&(B1.parentElement.firstChild.textContent=B1.files[0].name)}}var TB={init:function(){var o;o||(o=(typeof o<"u"?o:null)||{});var r={};for(var l in o)o.hasOwnProperty(l)&&(r[l]=o[l]);var h=typeof window=="object",E=typeof process=="object"&&typeof oB=="function"&&!h,F=typeof importScripts=="function",I0=!h&&!E&&!F;if(E){o.print||(o.print=function(a){process.stdout.write(a+` +`+this.soundFontInfo.ISBJ,delete this.soundFontInfo.ISBJ);for(let[B0,O0]of Object.entries(this.soundFontInfo))j5(`%c"${B0}": %c"${O0}"`,S1.info,S1.recognized);let F=h.find(B0=>B0.header==="colh");if(!F)throw t4(),new Error("No colh chunk!");this.instrumentAmount=r3(F.chunkData,4),j5(`%cInstruments amount: %c${this.instrumentAmount}`,S1.info,S1.recognized);let I0=Si(h,"wvpl");this.readDLSSamples(I0);let b0=Si(h,"lins");if(!b0)throw t4(),new Error("No lins chunk!");this.readDLSInstrumentList(b0),j5(`%cParsing finished! %c"${this.soundFontInfo.INAM||"UNNAMED"}"%c has %c${this.presets.length} %cpresets, + %c${this.instruments.length}%c instruments and %c${this.samples.length}%c samples.`,S1.info,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized,S1.info),t4()}verifyHeader(r,l){if(r.header.toLowerCase()!==l.toLowerCase())throw t4(),new SyntaxError(`Invalid DLS chunk header! Expected "${l.toLowerCase()}" got "${r.header.toLowerCase()}"`)}verifyText(r,l){if(r.toLowerCase()!==l.toLowerCase())throw t4(),new SyntaxError(`Invalid DLS soundfont! Expected "${l.toLowerCase()}" got "${r.toLowerCase()}"`)}};_A.prototype.readDLSInstrumentList=Jw;_A.prototype.readDLSInstrument=Kw;_A.prototype.readRegion=Ww;_A.prototype.readLart=Zw;_A.prototype.readDLSSamples=jw;var Lo=Lo!==void 0?Lo:{},Xw=!1,ek;Lo.isInitialized=new Promise(o=>ek=o);var HD=function(o){var r,l,h,E,F,I0,b0,B0="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",O0="",B1=0;o=o.replace(/[^A-Za-z0-9\+\/\=]/g,"");do E=B0.indexOf(o.charAt(B1++)),F=B0.indexOf(o.charAt(B1++)),I0=B0.indexOf(o.charAt(B1++)),b0=B0.indexOf(o.charAt(B1++)),r=E<<2|F>>4,l=(15&F)<<4|I0>>2,h=(3&I0)<<6|b0,O0+=String.fromCharCode(r),I0!==64&&(O0+=String.fromCharCode(l)),b0!==64&&(O0+=String.fromCharCode(h));while(B11&&($0.thisProgram=process.argv[1].replace(/\\/g,"/")),$0.arguments=process.argv.slice(2),typeof module<"u",process.on("uncaughtException",function(_0){if(!(_0 instanceof Na))throw _0}),process.on("unhandledRejection",function(_0,X0){process.exit(1)}),$0.quit=function(_0){process.exit(_0)},$0.inspect=function(){return"[Emscripten Module object]"}):g6?(typeof read<"u"&&($0.read=function(X0){return read(X0)}),$0.readBinary=function(X0){var C1;return typeof readbuffer=="function"?new Uint8Array(readbuffer(X0)):(ar(typeof(C1=read(X0,"binary"))=="object"),C1)},typeof scriptArgs<"u"?$0.arguments=scriptArgs:typeof arguments<"u"&&($0.arguments=arguments),typeof quit=="function"&&($0.quit=function(_0){quit(_0)})):(n6||c6)&&(n6?document.currentScript&&(u4=document.currentScript.src):u4=self.location.href,u4=u4.indexOf("blob:")!==0?u4.split("/").slice(0,-1).join("/")+"/":"",$0.read=function(X0){var C1=new XMLHttpRequest;return C1.open("GET",X0,!1),C1.send(null),C1.responseText},c6&&($0.readBinary=function(X0){var C1=new XMLHttpRequest;return C1.open("GET",X0,!1),C1.responseType="arraybuffer",C1.send(null),new Uint8Array(C1.response)}),$0.readAsync=function(X0,C1,D2){var K3=new XMLHttpRequest;K3.open("GET",X0,!0),K3.responseType="arraybuffer",K3.onload=function(){if(K3.status==200||K3.status==0&&K3.response){C1(K3.response);return}D2()},K3.onerror=D2,K3.send(null)},$0.setWindowTitle=function(_0){document.title=_0});var _4=$0.print||(typeof console<"u"?console.log.bind(console):typeof print<"u"?print:null),F9=$0.printErr||(typeof printErr<"u"?printErr:typeof console<"u"&&console.warn.bind(console)||_4);for(o in Y5)Y5.hasOwnProperty(o)&&($0[o]=Y5[o]);function bt(_0){var X0=K0;return K0=K0+_0+15&-16,X0}function Mo(_0){var X0=B0[J2>>2],C1=X0+_0+15&-16;return B0[J2>>2]=C1,C1>=D9&&!Tr()?(B0[J2>>2]=X0,0):X0}function To(_0,X0){return X0||(X0=16),_0=Math.ceil(_0/X0)*X0}function Jm(_0){switch(_0){case"i1":case"i8":return 1;case"i16":return 2;case"i32":case"float":return 4;case"i64":case"double":return 8;default:if(_0[_0.length-1]==="*")return 4;if(_0[0]!=="i")return 0;var X0=parseInt(_0.substr(1));return ar(X0%8==0),X0/8}}function wa(_0){wa.shown||(wa.shown={}),wa.shown[_0]||(wa.shown[_0]=1,F9(_0))}Y5=void 0;var Km={"f64-rem":function(_0,X0){return _0%X0},debugger:function(){}},QC=[];function fk(_0,X0){for(var C1=0,D2=C1;D2>>0)+4294967296*+(X0>>>0):+(_0>>>0)+4294967296*+(0|X0)}function ka(_0,X0,C1){return C1&&C1.length?$0["dynCall_"+_0].apply(null,[X0].concat(C1)):$0["dynCall_"+_0].call(null,X0)}var Go=0,Ih=0;function ar(_0,X0){_0||Hi("Assertion failed: "+X0)}function No(_0){var X0=$0["_"+_0];return ar(X0,"Cannot call unknown function "+_0+", make sure it is exported"),X0}var yC={stackSave:function(){xC()},stackRestore:function(){Ga()},arrayToC:function(_0){var X0,C1,D2=Uo(_0.length);return X0=_0,C1=D2,E.set(X0,C1),D2},stringToC:function(_0){var X0=0;if(_0!=null&&_0!==0){var C1=(_0.length<<2)+1;X0=Uo(C1),kC(_0,X0,C1)}return X0}},RA={string:yC.stringToC,array:yC.arrayToC};function dh(_0,X0,C1,D2,K3){var l9=No(_0),Y9=[],h6=0;if(D2)for(var d7=0;d7>0]=X0;break;case"i16":I0[_0>>1]=X0;break;case"i32":B0[_0>>2]=X0;break;case"i64":tempI64=[X0>>>0,+Bh(tempDouble=X0)>=1?tempDouble>0?(0|ph(+mh(tempDouble/4294967296),4294967295))>>>0:~~+Ma((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0],B0[_0>>2]=tempI64[0],B0[_0+4>>2]=tempI64[1];break;case"float":B1[_0>>2]=X0;break;case"double":R[_0>>3]=X0;break;default:Hi("invalid type for setValue: "+C1)}}function d3(_0,X0,C1){switch((X0=X0||"i8").charAt(X0.length-1)==="*"&&(X0="i32"),X0){case"i1":case"i8":return E[_0>>0];case"i16":return I0[_0>>1];case"i32":case"i64":return B0[_0>>2];case"float":return B1[_0>>2];case"double":return R[_0>>3];default:Hi("invalid type for getValue: "+X0)}return null}function Vm(_0,X0,C1,D2){typeof _0=="number"?(l9=!0,Y9=_0):(l9=!1,Y9=_0.length);var K3=typeof X0=="string"?X0:null;if(h6=C1==4?D2:[typeof GA=="function"?GA:bt,Uo,bt,Mo][C1===void 0?2:C1](Math.max(Y9,K3?1:X0.length)),l9){for(D2=h6,ar((3&h6)==0),d7=h6+(-4&Y9);D2>2]=0;for(d7=h6+Y9;D2>0]=0;return h6}if(K3==="i8")return _0.subarray||_0.slice?F.set(_0,h6):F.set(new Uint8Array(_0),h6),h6;for(var l9,Y9,h6,d7,Fe,Ve,ye,c9=0;c9>0],(D2!=0||X0)&&(Y9++,!X0||Y9!=X0););X0||(X0=Y9);var h6="";if(l9<128){for(;X0>0;)K3=String.fromCharCode.apply(String,F.subarray(_0,_0+Math.min(X0,1024))),h6=h6?h6+K3:K3,_0+=1024,X0-=1024;return h6}return C1=_0,function(Fe,Ve){for(var ye=Ve;Fe[ye];)++ye;if(ye-Ve>16&&Fe.subarray&&wC)return wC.decode(Fe.subarray(Ve,ye));for(var c9,Rt,Ri,E7,xt,xi,Fi="";;){if(!(c9=Fe[Ve++]))return Fi;if(!(128&c9)){Fi+=String.fromCharCode(c9);continue}if(Rt=63&Fe[Ve++],(224&c9)==192){Fi+=String.fromCharCode((31&c9)<<6|Rt);continue}if(Ri=63&Fe[Ve++],(240&c9)==224?c9=(15&c9)<<12|Rt<<6|Ri:(E7=63&Fe[Ve++],(248&c9)==240?c9=(7&c9)<<18|Rt<<12|Ri<<6|E7:(xt=63&Fe[Ve++],c9=(252&c9)==248?(3&c9)<<24|Rt<<18|Ri<<12|E7<<6|xt:(1&c9)<<30|Rt<<24|Ri<<18|E7<<12|xt<<6|(xi=63&Fe[Ve++]))),c9<65536)Fi+=String.fromCharCode(c9);else{var bn=c9-65536;Fi+=String.fromCharCode(55296|bn>>10,56320|1023&bn)}}}(F,C1)}function zm(_0){for(var X0="";;){var C1=E[_0++>>0];if(!C1)return X0;X0+=String.fromCharCode(C1)}}function xA(_0,X0){return function(D2,K3,l9){for(var Y9=0;Y9>0]=D2.charCodeAt(Y9);l9||(E[K3>>0]=0)}(_0,X0,!1)}var wC=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function Sn(_0,X0,C1,D2){if(!(D2>0))return 0;for(var K3=C1,l9=C1+D2-1,Y9=0;Y9<_0.length;++Y9){var h6=_0.charCodeAt(Y9);if(h6>=55296&&h6<=57343&&(h6=65536+((1023&h6)<<10)|1023&_0.charCodeAt(++Y9)),h6<=127){if(C1>=l9)break;X0[C1++]=h6}else if(h6<=2047){if(C1+1>=l9)break;X0[C1++]=192|h6>>6,X0[C1++]=128|63&h6}else if(h6<=65535){if(C1+2>=l9)break;X0[C1++]=224|h6>>12,X0[C1++]=128|h6>>6&63,X0[C1++]=128|63&h6}else if(h6<=2097151){if(C1+3>=l9)break;X0[C1++]=240|h6>>18,X0[C1++]=128|h6>>12&63,X0[C1++]=128|h6>>6&63,X0[C1++]=128|63&h6}else if(h6<=67108863){if(C1+4>=l9)break;X0[C1++]=248|h6>>24,X0[C1++]=128|h6>>18&63,X0[C1++]=128|h6>>12&63,X0[C1++]=128|h6>>6&63,X0[C1++]=128|63&h6}else{if(C1+5>=l9)break;X0[C1++]=252|h6>>30,X0[C1++]=128|h6>>24&63,X0[C1++]=128|h6>>18&63,X0[C1++]=128|h6>>12&63,X0[C1++]=128|h6>>6&63,X0[C1++]=128|63&h6}}return X0[C1]=0,C1-K3}function kC(_0,X0,C1){return Sn(_0,F,X0,C1)}function FA(_0){for(var X0=0,C1=0;C1<_0.length;++C1){var D2=_0.charCodeAt(C1);D2>=55296&&D2<=57343&&(D2=65536+((1023&D2)<<10)|1023&_0.charCodeAt(++C1)),D2<=127?++X0:D2<=2047?X0+=2:D2<=65535?X0+=3:D2<=2097151?X0+=4:D2<=67108863?X0+=5:X0+=6}return X0}var vC=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function Zm(_0){for(var X0=_0,C1=X0>>1;I0[C1];)++C1;if((X0=C1<<1)-_0>32&&vC)return vC.decode(F.subarray(_0,X0));for(var D2=0,K3="";;){var l9=I0[_0+2*D2>>1];if(l9==0)return K3;++D2,K3+=String.fromCharCode(l9)}}function Wm(_0,X0,C1){if(C1===void 0&&(C1=2147483647),C1<2)return 0;for(var D2=X0,K3=(C1-=2)<2*_0.length?C1/2:_0.length,l9=0;l9>1]=Y9,X0+=2}return I0[X0>>1]=0,X0-D2}function jm(_0){return 2*_0.length}function Xm(_0){for(var X0=0,C1="";;){var D2=B0[_0+4*X0>>2];if(D2==0)return C1;if(++X0,D2>=65536){var K3=D2-65536;C1+=String.fromCharCode(55296|K3>>10,56320|1023&K3)}else C1+=String.fromCharCode(D2)}}function ep(_0,X0,C1){if(C1===void 0&&(C1=2147483647),C1<4)return 0;for(var D2=X0,K3=D2+C1-4,l9=0;l9<_0.length;++l9){var Y9=_0.charCodeAt(l9);if(Y9>=55296&&Y9<=57343&&(Y9=65536+((1023&Y9)<<10)|1023&_0.charCodeAt(++l9)),B0[X0>>2]=Y9,(X0+=4)+4>K3)break}return B0[X0>>2]=0,X0-D2}function tp(_0){for(var X0=0,C1=0;C1<_0.length;++C1){var D2=_0.charCodeAt(C1);D2>=55296&&D2<=57343&&++C1,X0+=4}return X0}function ip(_0){var X0=FA(_0)+1,C1=GA(X0);return C1&&Sn(_0,E,C1,X0),C1}function rp(_0){var X0=FA(_0)+1,C1=Uo(X0);return Sn(_0,E,C1,X0),C1}function SC(_0){return _0}function NB(){var _0,X0=function(){var D2=Error();if(!D2.stack){try{throw Error(0)}catch(K3){D2=K3}if(!D2.stack)return"(no stack trace available)"}return D2.stack.toString()}();return $0.extraStackTrace&&(X0+=` +`+$0.extraStackTrace()),(_0=X0).replace(/__Z[\w\d_]+/g,function(C1){var D2,K3=D2=C1;return C1===K3?C1:C1+" ["+K3+"]"})}function Eh(_0,X0){return _0%X0>0&&(_0+=X0-_0%X0),_0}function DC(_0){$0.buffer=h=_0}function q9(){$0.HEAP8=E=new Int8Array(h),$0.HEAP16=I0=new Int16Array(h),$0.HEAP32=B0=new Int32Array(h),$0.HEAPU8=F=new Uint8Array(h),$0.HEAPU16=b0=new Uint16Array(h),$0.HEAPU32=O0=new Uint32Array(h),$0.HEAPF32=B1=new Float32Array(h),$0.HEAPF64=R=new Float64Array(h)}function Tr(){var _0=$0.usingWasm?65536:16777216,X0=2147483648-_0;if(B0[J2>>2]>X0)return!1;var C1=D9;for(D9=Math.max(D9,16777216);D9>2];)D9=D9<=536870912?Eh(2*D9,_0):Math.min(Eh((3*D9+2147483648)/4,_0),X0);var D2=$0.reallocBuffer(D9);return D2&&D2.byteLength==D9?(DC(D2),q9(),!0):(D9=C1,!1)}j0=K0=m2=b1=_5=v2=J2=0,F1=!1,$0.reallocBuffer||($0.reallocBuffer=function(_0){try{if(ArrayBuffer.transfer)X0=ArrayBuffer.transfer(h,_0);else{var X0,C1=E;X0=new ArrayBuffer(_0),new Int8Array(X0).set(C1)}}catch{return!1}return!!PB(X0)&&X0});try{(n3=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get))(new ArrayBuffer(4))}catch{n3=function(X0){return X0.byteLength}}var Da=$0.TOTAL_STACK||5242880,D9=$0.TOTAL_MEMORY||16777216;function ba(){return D9}function LA(_0){for(;_0.length>0;){var X0=_0.shift();if(typeof X0=="function"){X0();continue}var C1=X0.func;typeof C1=="number"?X0.arg===void 0?$0.dynCall_v(C1):$0.dynCall_vi(C1,X0.arg):C1(X0.arg===void 0?null:X0.arg)}}D9=0?_0:X0<=32?2*Math.abs(1<=D2&&(X0<=32||_0>D2)&&(_0=-2*D2+_0),_0}var Bh=Math.abs,Ma=Math.ceil,mh=Math.floor,ph=Math.min,Dn=0,Qh=null,TA=null;function np(_0){return _0}$0.preloadedImages={},$0.preloadedAudios={};var RC="data:application/octet-stream;base64,";function Ta(_0){return String.prototype.startsWith?_0.startsWith(RC):_0.indexOf(RC)===0}(function(){var X0="main.wast",C1="main.wasm",D2="main.temp.asm.js";Ta(X0)||(X0=Ke(X0)),Ta(C1)||(C1=Ke(C1)),Ta(D2)||(D2=Ke(D2));var K3={global:null,env:null,asm2wasm:Km,parent:$0},l9=null;function Y9(ye){return ye}function h6(){try{if($0.wasmBinary)return new Uint8Array($0.wasmBinary);if($0.readBinary)return $0.readBinary(C1);throw"both async and sync fetching of the wasm failed"}catch(ye){Hi(ye)}}$0.asmPreload=$0.asm;var d7=$0.reallocBuffer,Fe=function(ye){ye=Eh(ye,$0.usingWasm?65536:16777216);var c9=$0.buffer.byteLength;if($0.usingWasm)try{var Rt=$0.wasmMemory.grow((ye-c9)/65536);return Rt!==-1?$0.buffer=$0.wasmMemory.buffer:null}catch{return null}};$0.reallocBuffer=function(ye){return Ve==="asmjs"?d7(ye):Fe(ye)};var Ve="";$0.asm=function(ye,c9,Rt){var Ri;if(!(c9=Ri=c9).table){var E7,xt=$0.wasmTableSize;xt===void 0&&(xt=1024);var xi=$0.wasmMaxTableSize;typeof WebAssembly=="object"&&typeof WebAssembly.Table=="function"?xi!==void 0?c9.table=new WebAssembly.Table({initial:xt,maximum:xi,element:"anyfunc"}):c9.table=new WebAssembly.Table({initial:xt,element:"anyfunc"}):c9.table=Array(xt),$0.wasmTable=c9.table}return c9.memoryBase||(c9.memoryBase=$0.STATIC_BASE),c9.tableBase||(c9.tableBase=0),E7=function(bn,lr,FC){if(typeof WebAssembly!="object")return F9("no native wasm support detected"),!1;if(!($0.wasmMemory instanceof WebAssembly.Memory))return F9("no native wasm Memory in use"),!1;function yh(cr,qi){if((l9=cr.exports).memory){var Oo,NA,UA;Oo=l9.memory,NA=$0.buffer,Oo.byteLength0?C1:FA(_0)+1,K3=Array(D2),l9=Sn(_0,K3,0,K3.length);return X0&&(K3.length=l9),K3}function OB(_0){for(var X0=[],C1=0;C1<_0.length;C1++){var D2=_0[C1];D2>255&&(D2&=255),X0.push(String.fromCharCode(D2))}return X0.join("")}K0+=16,J2=bt(4),_5=(m2=b1=To(K0))+Da,v2=To(_5),B0[J2>>2]=v2,F1=!0,$0.wasmTableSize=4,$0.wasmMaxTableSize=4,$0.asmGlobalArg={},$0.asmLibraryArg={abort:Hi,assert:ar,enlargeMemory:Tr,getTotalMemory:ba,abortOnCannotGrowMemory:function(){Hi("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+D9+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")},invoke_iii:function(X0,C1,D2){var K3=xC();try{return $0.dynCall_iii(X0,C1,D2)}catch(l9){if(Ga(K3),typeof l9!="number"&&l9!=="longjmp")throw l9;$0.setThrew(1,0)}},___assert_fail:function(X0,C1,D2,K3){Hi("Assertion failed: "+Sa(X0)+", at: "+[C1?Sa(C1):"unknown filename",D2,K3?Sa(K3):"unknown function"])},___setErrNo:function(X0){return $0.___errno_location&&(B0[$0.___errno_location()>>2]=X0),X0},_abort:function(){$0.abort()},_emscripten_memcpy_big:function(X0,C1,D2){return F.set(F.subarray(C1,C1+D2),X0),X0},_llvm_floor_f64:mh,DYNAMICTOP_PTR:J2,tempDoublePtr:_t,ABORT:Go,STACKTOP:b1,STACK_MAX:_5};var Ur=$0.asm($0.asmGlobalArg,$0.asmLibraryArg,h);$0.asm=Ur,$0.___errno_location=function(){return $0.asm.___errno_location.apply(null,arguments)};var PB=$0._emscripten_replace_memory=function(){return $0.asm._emscripten_replace_memory.apply(null,arguments)};$0._free=function(){return $0.asm._free.apply(null,arguments)};var GA=$0._malloc=function(){return $0.asm._malloc.apply(null,arguments)};$0._memcpy=function(){return $0.asm._memcpy.apply(null,arguments)},$0._memset=function(){return $0.asm._memset.apply(null,arguments)},$0._sbrk=function(){return $0.asm._sbrk.apply(null,arguments)},$0._stb_vorbis_js_channels=function(){return $0.asm._stb_vorbis_js_channels.apply(null,arguments)},$0._stb_vorbis_js_close=function(){return $0.asm._stb_vorbis_js_close.apply(null,arguments)},$0._stb_vorbis_js_decode=function(){return $0.asm._stb_vorbis_js_decode.apply(null,arguments)},$0._stb_vorbis_js_open=function(){return $0.asm._stb_vorbis_js_open.apply(null,arguments)},$0._stb_vorbis_js_sample_rate=function(){return $0.asm._stb_vorbis_js_sample_rate.apply(null,arguments)},$0.establishStackSpace=function(){return $0.asm.establishStackSpace.apply(null,arguments)},$0.getTempRet0=function(){return $0.asm.getTempRet0.apply(null,arguments)},$0.runPostSets=function(){return $0.asm.runPostSets.apply(null,arguments)},$0.setTempRet0=function(){return $0.asm.setTempRet0.apply(null,arguments)},$0.setThrew=function(){return $0.asm.setThrew.apply(null,arguments)};var Uo=$0.stackAlloc=function(){return $0.asm.stackAlloc.apply(null,arguments)},Ga=$0.stackRestore=function(){return $0.asm.stackRestore.apply(null,arguments)},xC=$0.stackSave=function(){return $0.asm.stackSave.apply(null,arguments)};function Na(_0){this.name="ExitStatus",this.message="Program terminated with exit("+_0+")",this.status=_0}function Ua(_0){_0=_0||$0.arguments,!(Dn>0)&&(function(){if($0.preRun)for(typeof $0.preRun=="function"&&($0.preRun=[$0.preRun]);$0.preRun.length;)UB($0.preRun.shift());LA(Gr)}(),!(Dn>0)&&($0.calledRun||($0.setStatus?($0.setStatus("Running..."),setTimeout(function(){setTimeout(function(){$0.setStatus("")},1),X0()},1)):X0())));function X0(){!$0.calledRun&&($0.calledRun=!0,Go||(xa||(xa=!0,LA(_a)),LA(Ch),$0.onRuntimeInitialized&&$0.onRuntimeInitialized(),function(){if($0.postRun)for(typeof $0.postRun=="function"&&($0.postRun=[$0.postRun]);$0.postRun.length;)_i($0.postRun.shift());LA(Ra)}()))}}function HB(_0,X0){(!X0||!$0.noExitRuntime||_0!==0)&&($0.noExitRuntime||(Go=!0,Ih=_0,b1=U5,LA(Ei),bi=!0,$0.onExit&&$0.onExit(_0)),$0.quit(_0,new Na(_0)))}function Hi(_0){throw $0.onAbort&&$0.onAbort(_0),_0!==void 0?(_4(_0),F9(_0),_0=JSON.stringify(_0)):_0="",Go=!0,Ih=1,"abort("+_0+"). Build with -s ASSERTIONS=1 for more info."}if($0.dynCall_iii=function(){return $0.asm.dynCall_iii.apply(null,arguments)},$0.asm=Ur,$0.ccall=dh,$0.cwrap=function(X0,C1,D2,K3){var l9=(D2=D2||[]).every(function(Y9){return Y9==="number"});return C1!=="string"&&l9&&!K3?No(X0):function(){return dh(X0,C1,D2,arguments,K3)}},Na.prototype=Error(),Na.prototype.constructor=Na,TA=function _0(){$0.calledRun||Ua(),$0.calledRun||(TA=_0)},$0.run=Ua,$0.abort=Hi,$0.preInit)for(typeof $0.preInit=="function"&&($0.preInit=[$0.preInit]);$0.preInit.length>0;)$0.preInit.pop()();$0.noExitRuntime=!0,Ua(),$0.onRuntimeInitialized=()=>{Xw=!0,ek()},Lo.decode=function(_0){return function(C1){if(!Xw)throw Error("Not initialized");var D2={};function K3(lr){return new Int32Array($0.HEAPU8.buffer,lr,1)[0]}function l9(lr,FC){var yh=new ArrayBuffer(FC*Float32Array.BYTES_PER_ELEMENT),p8=new Float32Array(yh);return p8.set(new Float32Array($0.HEAPU8.buffer,lr,FC)),p8}D2.open=$0.cwrap("stb_vorbis_js_open","number",[]),D2.close=$0.cwrap("stb_vorbis_js_close","void",["number"]),D2.channels=$0.cwrap("stb_vorbis_js_channels","number",["number"]),D2.sampleRate=$0.cwrap("stb_vorbis_js_sample_rate","number",["number"]),D2.decode=$0.cwrap("stb_vorbis_js_decode","number",["number","number","number","number","number"]);var Y9,h6,d7,Fe,Ve=D2.open(),ye=(Y9=C1,h6=C1.byteLength,d7=$0._malloc(h6),(Fe=new Uint8Array($0.HEAPU8.buffer,d7,h6)).set(new Uint8Array(Y9,0,h6)),Fe),c9=$0._malloc(4),Rt=$0._malloc(4),Ri=D2.decode(Ve,ye.byteOffset,ye.byteLength,c9,Rt);if($0._free(ye.byteOffset),Ri<0)throw D2.close(Ve),$0._free(c9),Error("stbvorbis decode failed: "+Ri);for(var E7=D2.channels(Ve),xt=Array(E7),xi=new Int32Array($0.HEAPU32.buffer,K3(c9),E7),Fi=0;Fio.chunkData.currentIndex;){let F=qD(E,o.chunkData,r,l);h.push(F),E++}return h.length>1&&h.pop(),h}function qD(o,r,l,h){let E=xe(r,20),F=r3(r,4)*2,I0=r3(r,4)*2,b0=r3(r,4)*2,B0=r3(r,4)*2,O0=r3(r,4),B1=r[r.currentIndex++];B1===255&&(B1=60);let R=sy(r[r.currentIndex++]),j0=r3(r,2),K0=r3(r,2);return new Tm(E,F,I0,b0,B0,O0,B1,R,j0,K0,l,o,h)}var Gm=class extends hh{constructor(r){super(),this.instrumentName=xe(r.chunkData,20).trim(),this.instrumentZoneIndex=r3(r.chunkData,2),this.instrumentZonesAmount=0}getInstrumentZones(r,l){this.instrumentZonesAmount=r;for(let h=this.instrumentZoneIndex;ho.chunkData.currentIndex;){let h=new Gm(o);if(l.length>0){let E=h.instrumentZoneIndex-l[l.length-1].instrumentZoneIndex;l[l.length-1].getInstrumentZones(E,r)}l.push(h)}return l.length>1&&l.pop(),l}var Nm=class extends Fo{constructor(r){super(),this.generatorZoneStartIndex=r3(r,2),this.modulatorZoneStartIndex=r3(r,2),this.modulatorZoneSize=0,this.generatorZoneSize=0,this.isGlobal=!0}setZoneSize(r,l){this.modulatorZoneSize=r,this.generatorZoneSize=l}getGenerators(r){for(let l=this.generatorZoneStartIndex;lh.generatorType===R1.sampleID);l&&(this.sample=r[l.generatorValue],this.isGlobal=!1,this.sample.useCount++)}getKeyRange(){let r=this.generators.find(l=>l.generatorType===R1.keyRange);r&&(this.keyRange.min=r.generatorValue&127,this.keyRange.max=r.generatorValue>>8&127)}getVelRange(){let r=this.generators.find(l=>l.generatorType===R1.velRange);r&&(this.velRange.min=r.generatorValue&127,this.velRange.max=r.generatorValue>>8&127)}};function rk(o,r,l,h){let E=[];for(;o.chunkData.length>o.chunkData.currentIndex;){let F=new Nm(o.chunkData);if(E.length>0){let I0=F.modulatorZoneStartIndex-E[E.length-1].modulatorZoneStartIndex,b0=F.generatorZoneStartIndex-E[E.length-1].generatorZoneStartIndex;E[E.length-1].setZoneSize(I0,b0),E[E.length-1].getGenerators(r),E[E.length-1].getModulators(l),E[E.length-1].getSample(h),E[E.length-1].getKeyRange(),E[E.length-1].getVelRange()}E.push(F)}return E.length>1&&E.pop(),E}var Um=class extends gh{constructor(r){super(),this.generatorZoneStartIndex=r3(r,2),this.modulatorZoneStartIndex=r3(r,2),this.modulatorZoneSize=0,this.generatorZoneSize=0,this.isGlobal=!0}setZoneSize(r,l){this.modulatorZoneSize=r,this.generatorZoneSize=l}getGenerators(r){for(let l=this.generatorZoneStartIndex;lh.generatorType===R1.instrument);l&&(this.instrument=r[l.generatorValue],this.instrument.addUseCount(),this.isGlobal=!1)}getKeyRange(){let r=this.generators.find(l=>l.generatorType===R1.keyRange);r&&(this.keyRange.min=r.generatorValue&127,this.keyRange.max=r.generatorValue>>8&127)}getVelRange(){let r=this.generators.find(l=>l.generatorType===R1.velRange);r&&(this.velRange.min=r.generatorValue&127,this.velRange.max=r.generatorValue>>8&127)}};function nk(o,r,l,h){let E=[];for(;o.chunkData.length>o.chunkData.currentIndex;){let F=new Um(o.chunkData);if(E.length>0){let I0=F.modulatorZoneStartIndex-E[E.length-1].modulatorZoneStartIndex,b0=F.generatorZoneStartIndex-E[E.length-1].generatorZoneStartIndex;E[E.length-1].setZoneSize(I0,b0),E[E.length-1].getGenerators(r),E[E.length-1].getModulators(l),E[E.length-1].getInstrument(h),E[E.length-1].getKeyRange(),E[E.length-1].getVelRange()}E.push(F)}return E.length>1&&E.pop(),E}var Om=class extends ch{constructor(r){super(),this.presetName=xe(r.chunkData,20).trim().replace(/\d{3}:\d{3}/,""),this.program=r3(r.chunkData,2),this.bank=r3(r.chunkData,2),this.presetZoneStartIndex=r3(r.chunkData,2),this.library=r3(r.chunkData,4),this.genre=r3(r.chunkData,4),this.morphology=r3(r.chunkData,4),this.presetZonesAmount=0}getPresetZones(r,l){this.presetZonesAmount=r;for(let h=this.presetZoneStartIndex;ho.chunkData.currentIndex;){let h=new Om(o);if(l.length>0){let E=h.presetZoneStartIndex-l[l.length-1].presetZoneStartIndex;l[l.length-1].getPresetZones(E,r)}l.push(h)}return l.length>1&&l.pop(),l}var MB=class extends Qa{constructor(r,l=!0){if(super(),l&&console.warn("Using the constructor directly is deprecated. Use loadSoundFont instead."),this.dataArray=new l6(r),or("%cParsing SoundFont...",S1.info),!this.dataArray)throw t4(),new TypeError("No data!");let h=f4(this.dataArray,!1);this.verifyHeader(h,"riff");let E=xe(this.dataArray,4).toLowerCase();if(E!=="sfbk"&&E!=="sfpk")throw t4(),new SyntaxError(`Invalid soundFont! Expected "sfbk" or "sfpk" got "${E}"`);let F=E==="sfpk",I0=f4(this.dataArray);for(this.verifyHeader(I0,"list"),xe(I0.chunkData,4);I0.chunkData.length>I0.chunkData.currentIndex;){let O6=f4(I0.chunkData),g6;switch(O6.header.toLowerCase()){case"ifil":case"iver":g6=`${r3(O6.chunkData,2)}.${r3(O6.chunkData,2)}`;break;case"icmt":g6=xe(O6.chunkData,O6.chunkData.length,void 0,!1);break;default:g6=xe(O6.chunkData,O6.chunkData.length)}j5(`%c"${O6.header}": %c"${g6}"`,S1.info,S1.recognized),this.soundFontInfo[O6.header]=g6}let b0=f4(this.dataArray,!1);this.verifyHeader(b0,"list"),this.verifyText(xe(this.dataArray,4),"sdta"),j5("%cVerifying smpl chunk...",S1.warn);let B0=f4(this.dataArray,!1);this.verifyHeader(B0,"smpl");let O0;if(F){j5("%cSF2Pack detected, attempting to decode the smpl chunk...",S1.info);try{O0=Lo.decode(this.dataArray.buffer.slice(this.dataArray.currentIndex,this.dataArray.currentIndex+b0.size-12)).data[0]}catch(O6){throw t4(),new Error(`SF2Pack Ogg Vorbis decode error: ${O6}`)}j5(`%cDecoded the smpl chunk! Length: %c${O0.length}`,S1.info,S1.value)}else O0=this.dataArray,this.sampleDataStartIndex=this.dataArray.currentIndex;j5(`%cSkipping sample chunk, length: %c${b0.size-12}`,S1.info,S1.value),this.dataArray.currentIndex+=b0.size-12,j5("%cLoading preset data chunk...",S1.warn);let B1=f4(this.dataArray);this.verifyHeader(B1,"list"),xe(B1.chunkData,4);let R=f4(B1.chunkData);this.verifyHeader(R,"phdr");let j0=f4(B1.chunkData);this.verifyHeader(j0,"pbag");let K0=f4(B1.chunkData);this.verifyHeader(K0,"pmod");let F1=f4(B1.chunkData);this.verifyHeader(F1,"pgen");let m2=f4(B1.chunkData);this.verifyHeader(m2,"inst");let b1=f4(B1.chunkData);this.verifyHeader(b1,"ibag");let _5=f4(B1.chunkData);this.verifyHeader(_5,"imod");let v2=f4(B1.chunkData);this.verifyHeader(v2,"igen");let J2=f4(B1.chunkData);this.verifyHeader(J2,"shdr"),this.dataArray.currentIndex=this.sampleDataStartIndex,this.samples.push(...tk(J2,O0,!F));let n3=vm(v2),U5=bm(_5),$0=rk(b1,n3,U5,this.samples);this.instruments=ik(m2,$0);let Y5=vm(F1),n6=bm(K0),c6=nk(j0,Y5,n6,this.instruments);this.presets.push(...Ak(R,c6)),this.presets.sort((O6,g6)=>O6.program-g6.program+(O6.bank-g6.bank)),j5(`%cParsing finished! %c"${this.soundFontInfo.INAM}"%c has %c${this.presets.length} %cpresets, + %c${this.instruments.length}%c instruments and %c${this.samples.length}%c samples.`,S1.info,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized,S1.info,S1.recognized,S1.info),t4(),F&&delete this.dataArray}verifyHeader(r,l){if(r.header.toLowerCase()!==l.toLowerCase())throw t4(),new SyntaxError(`Invalid chunk header! Expected "${l.toLowerCase()}" got "${r.header.toLowerCase()}"`)}verifyText(r,l){if(r.toLowerCase()!==l.toLowerCase())throw t4(),new SyntaxError(`Invalid soundFont! Expected "${l.toLowerCase()}" got "${r.toLowerCase()}"`)}};function uh(o){let r=o.slice(8,12),l=new l6(r);return xe(l,4,void 0,!1).toLowerCase()==="dls "?new _A(o):new MB(o,!1)}async function sk(){let o="locale.exportAudio.formats.formats.soundfont.options.";$t(this.localeManager.getLocaleString(o+"title"),[{type:"toggle",translatePathTitle:o+"trim",attributes:{"trim-toggle":"1",checked:"checked"}},{type:"toggle",translatePathTitle:o+"compress",attributes:{"compress-toggle":"1"}},{type:"range",translatePathTitle:o+"quality",attributes:{min:"0",max:"10",value:"5"}},{type:"button",textContent:this.localeManager.getLocaleString(o+"confirm"),onClick:async r=>{let l=r.div.querySelector("input[trim-toggle='1']").checked,h=r.div.querySelector("input[compress-toggle='1']").checked,E=parseInt(r.div.querySelector("input[type='range']").value)/10;Ii(r.id),or("%cExporting minified soundfont...",S1.info);let F=await this.seq.getMIDI(),I0=uh(F.embeddedSoundFont||this.soundFont);$h(F,await this.synth.getSynthesizerSnapshot()),l&&RB(I0,F);let b0=I0.write({compress:h,compressionQuality:E,compressionFunction:this.compressionFunc}),B0=new Blob([b0.buffer],{type:"audio/soundfont"}),O0=I0.soundFontInfo.ifil.split(".")[0]==="3"?"sf3":"sf2";this.saveBlob(B0,`${I0.soundFontInfo.INAM||"unnamed"}.${O0}`),t4()}}],99999999,!0,this.localeManager)}async function ok(){let o="locale.exportAudio.formats.";$t(this.localeManager.getLocaleString(o+"title"),[{type:"button",translatePathTitle:o+"formats.wav.button",onClick:r=>{Ii(r.id),this._exportAudioData()}},{type:"button",translatePathTitle:o+"formats.midi.button",onClick:r=>{Ii(r.id),this.exportMidi()}},{type:"button",translatePathTitle:o+"formats.soundfont.button",onClick:r=>{Ii(r.id);try{this._exportSoundfont()}catch{$t("Warning",[{type:"text",textContent:this.localeManager.getLocaleString("locale.warnings.outOfMemory")}])}}},{type:"button",translatePathTitle:o+"formats.rmidi.button",onClick:r=>{Ii(r.id);try{this._exportRMIDI()}catch{$t("Warning",[{type:"text",textContent:this.localeManager.getLocaleString("locale.warnings.outOfMemory")}])}}}],999999,!0,this.localeManager,{display:"flex",flexWrap:"wrap",justifyContent:"center"})}async function $k(){let o=(R,j0,K0)=>this.seq.midiData.RMIDInfo?.[R]===void 0?j0:K0.decode(this.seq.midiData.RMIDInfo?.[R]).replace(/\0$/,""),r=o("IENC","ascii",new TextDecoder),l=new TextDecoder(r),h=o("IPRD","",l),E=o("IART","",l),F=o("IGNR","",l),I0=o("ICMT","Created using SpessaSynth: https://spessasus.github.io/SpessaSynth",l),b0="locale.exportAudio.formats.formats.rmidi.options.",B0="locale.exportAudio.formats.metadata.",B1=$t(this.localeManager.getLocaleString(b0+"title"),[{type:"toggle",translatePathTitle:b0+"compress",attributes:{"compress-toggle":"1",checked:"true"}},{type:"range",translatePathTitle:b0+"quality",attributes:{min:"0",max:"10",value:"5"}},{type:"input",translatePathTitle:B0+"songTitle",attributes:{name:"song_title",type:"text",value:this.seqUI.currentSongTitle}},{type:"input",translatePathTitle:B0+"album",attributes:{value:h,name:"album",type:"text"}},{type:"input",translatePathTitle:B0+"artist",attributes:{value:E,name:"artist",type:"text"}},{type:"input",translatePathTitle:B0+"genre",attributes:{value:F,name:"genre",type:"text"}},{type:"input",translatePathTitle:B0+"comment",attributes:{value:I0,name:"comment",type:"text"}},{type:"file",translatePathTitle:B0+"albumCover",attributes:{value:this.seq.midiData.RMIDInfo?.IPIC!==void 0?this.seq.midiData.RMIDInfo.IPIC:"",name:"cover",accept:"image/*"}},{type:"input",translatePathTitle:b0+"bankOffset",attributes:{value:this.seq.midiData.bankOffset,name:"bank_offset",type:"number"}},{type:"toggle",translatePathTitle:b0+"adjust",attributes:{name:"adjust",checked:"checked"}},{type:"button",textContent:this.localeManager.getLocaleString(b0+"confirm"),onClick:async R=>{let j0=R.div.querySelector("input[compress-toggle='1']").checked,K0=parseInt(R.div.querySelector("input[type='range']").value)/10,F1=R.div.querySelector("input[name='album']").value,m2=R.div.querySelector("input[name='artist']").value,b1=R.div.querySelector("input[name='song_title']").value,_5=R.div.querySelector("input[name='comment']").value,v2=R.div.querySelector("input[name='genre']").value,J2=R.div.querySelector("input[name='bank_offset']").value,n3=R.div.querySelector("input[name='adjust']").checked,U5=R.div.querySelector("input[type='file']")?.files[0];Ii(R.id),Xt("%cExporting RMIDI...",S1.info);let $0="locale.exportAudio.formats.formats.rmidi.progress.",Y5=$t(this.localeManager.getLocaleString($0+"title"),[{type:"text",textContent:this.localeManager.getLocaleString($0+"loading"),attributes:{class:"export_rmidi_message"}}],9999999,!1);await new Promise(F9=>setTimeout(F9,500));let n6=Y5.div.getElementsByClassName("export_rmidi_message")[0],c6=await this.seq.getMIDI(),O6=uh(c6.embeddedSoundFont||this.soundFont);n6.textContent=this.localeManager.getLocaleString($0+"modifyingMIDI"),await new Promise(F9=>setTimeout(F9,75)),$h(c6,await this.synth.getSynthesizerSnapshot()),n6.textContent=this.localeManager.getLocaleString($0+"modifyingSoundfont"),await new Promise(F9=>setTimeout(F9,75)),RB(O6,c6);let g6=O6.write({compress:j0,compressionQuality:K0,compressionFunction:this.compressionFunc});n6.textContent=this.localeManager.getLocaleString($0+"saving"),await new Promise(F9=>setTimeout(F9,75));let u4;U5?.type.split("/")[0]==="image"?u4=await U5.arrayBuffer():c6.RMIDInfo?.IPIC!==void 0&&(u4=c6.RMIDInfo.IPIC.buffer);let Ke=ay(g6,c6,O6,J2,this.seqUI.encoding,{name:b1,comment:_5,engineer:O6.soundFontInfo.IENG,picture:u4,album:F1.length>0?F1:void 0,artist:m2.length>0?m2:void 0,genre:v2.length>0?v2:void 0,midiEncoding:this.seqUI.encoding},n3),_4=new Blob([Ke.buffer],{type:"audio/rmid"});this.saveBlob(_4,`${b1||"unnamed_song"}.rmi`),n6.textContent=this.localeManager.getLocaleString($0+"done"),Ii(Y5.id),t4()}}],9999999,!0,this.localeManager).div.querySelector("input[type='file']");B1.oninput=()=>{B1.files[0]&&(B1.parentElement.firstChild.textContent=B1.files[0].name)}}var TB={init:function(){var o;o||(o=(typeof o<"u"?o:null)||{});var r={};for(var l in o)o.hasOwnProperty(l)&&(r[l]=o[l]);var h=typeof window=="object",E=typeof process=="object"&&typeof oB=="function"&&!h,F=typeof importScripts=="function",I0=!h&&!E&&!F;if(E){o.print||(o.print=function(a){process.stdout.write(a+` `)}),o.printErr||(o.printErr=function(a){process.stderr.write(a+` -`)});var b0=void 0,B0=void 0;o.read=function(a,g){a=B0.normalize(a);var u=b0.readFileSync(a);return!u&&a!=B0.resolve(a)&&(a=path.join(__dirname,"..","src",a),u=b0.readFileSync(a)),u&&!g&&(u=u.toString()),u},o.readBinary=function(a){return o.read(a,!0)},o.load=function(a){B1(read(a))},o.thisProgram||(process.argv.length>1?o.thisProgram=process.argv[1].replace(/\\/g,"/"):o.thisProgram="unknown-program"),o.arguments=process.argv.slice(2),typeof module<"u"&&o!=null,process.on("uncaughtException",function(i){if(!(i instanceof Po))throw i}),o.inspect=function(){return"[Emscripten Module object]"}}else if(I0)o.print||(o.print=print),typeof printErr<"u"&&(o.printErr=printErr),typeof read<"u"?o.read=read:o.read=function(){throw"no read() available (jsc?)"},o.readBinary=function(a){if(typeof readbuffer=="function")return new Uint8Array(readbuffer(a));var g=read(a,"binary");return K4(typeof g=="object"),g},typeof scriptArgs<"u"?o.arguments=scriptArgs:typeof arguments<"u"&&(o.arguments=arguments);else if(h||F){if(o.read=function(a){var g=new XMLHttpRequest;return g.open("GET",a,!1),g.send(null),g.responseText},typeof arguments<"u"&&(o.arguments=arguments),typeof console<"u")o.print||(o.print=function(a){console.log(a)}),o.printErr||(o.printErr=function(a){console.log(a)});else{var P0=!1;o.print||(o.print=P0&&typeof dump<"u"?function(i){dump(i)}:function(i){})}F&&(o.load=importScripts),typeof o.setWindowTitle>"u"&&(o.setWindowTitle=function(i){document.title=i})}else throw"Unknown runtime environment. Where are we?";function B1(i){eval.call(null,i)}!o.load&&o.read&&(o.load=function(a){B1(o.read(a))}),o.print||(o.print=function(){}),o.printErr||(o.printErr=o.print),o.arguments||(o.arguments=[]),o.thisProgram||(o.thisProgram="./this.program"),o.print=o.print,o.printErr=o.printErr,o.preRun=[],o.postRun=[];for(var l in r)r.hasOwnProperty(l)&&(o[l]=r[l]);var x={setTempRet0:function(i){b4=i},getTempRet0:function(){return b4},stackSave:function(){return Ei},stackRestore:function(i){Ei=i},getNativeTypeSize:function(i){switch(i){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(i[i.length-1]==="*")return x.QUANTUM_SIZE;if(i[0]==="i"){var a=parseInt(i.substr(1));return K4(a%8===0),a/8}else return 0}}},getNativeFieldSize:function(i){return Math.max(x.getNativeTypeSize(i),x.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(i,a){return a==="double"||a==="i64"?i&7&&(K4((i&7)===4),i+=4):K4((i&3)===0),i},getAlignSize:function(i,a,g){return!g&&(i=="i64"||i=="double")?8:i?Math.min(a||(i?x.getNativeFieldSize(i):0),x.QUANTUM_SIZE):Math.min(a,8)},dynCall:function(i,a,g){return g&&g.length?(g.splice||(g=Array.prototype.slice.call(g)),g.splice(0,0,a),o["dynCall_"+i].apply(null,g)):o["dynCall_"+i].call(null,a)},functionPointers:[],addFunction:function(i){for(var a=0;a=MA){var g=UB();if(!g)return bi=a,0}return a},alignMemory:function(i,a){var g=i=Math.ceil(i/(a||16))*(a||16);return g},makeBigInt:function(i,a,g){var u=g?+(i>>>0)+ +(a>>>0)*4294967296:+(i>>>0)+ +(a|0)*4294967296;return u},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};o.Runtime=x;var j0=0,K0=!1,F1=0,m2=0,b1,_5,v2,Y2,J5,U5,a0,H5,n6,b6,H6,c6,w4,L4,J4,b4,bt,Mo,To,Jm,wa,Km,QC,fk,uk;function K4(i,a){i||OA("Assertion failed: "+a)}var Ik=this;function GB(i){var a=o["_"+i];if(!a)try{a=void("_"+i)}catch{}return K4(a,"Cannot call unknown function "+i+" (perhaps LLVM optimizations or closure removed it?)"),a}var ka,Go;(function(){var i={stackSave:function(){x.stackSave()},stackRestore:function(){x.stackRestore()},arrayToC:function(Z0){var t1=x.stackAlloc(Z0.length);return Uo(Z0,t1),t1},stringToC:function(Z0){var t1=0;return Z0!=null&&Z0!==0&&(t1=x.stackAlloc((Z0.length<<2)+1),GA(Z0,t1)),t1}},a={string:i.stringToC,array:i.arrayToC};Go=function(t1,b2,A,o1,B){var Q5=GB(t1),p2=[],M5=0;if(o1)for(var b9=0;b9>0]=a;break;case"i8":H9[i>>0]=a;break;case"i16":Tr[i>>1]=a;break;case"i32":D9[i>>2]=a;break;case"i64":L4=[a>>>0,(c6=a,+Ua(c6)>=1?c6>0?(Rt(+Le(c6/4294967296),4294967295)|0)>>>0:~~+d7((c6-+(~~c6>>>0))/4294967296)>>>0:0)],D9[i>>2]=L4[0],D9[i+4>>2]=L4[1];break;case"float":Pa[i>>2]=a;break;case"double":ba[i>>3]=a;break;default:OA("invalid type for setValue: "+g)}}o.setValue=Ih;function ar(i,a,g){switch(a=a||"i8",a.charAt(a.length-1)==="*"&&(a="i32"),a){case"i1":return H9[i>>0];case"i8":return H9[i>>0];case"i16":return Tr[i>>1];case"i32":return D9[i>>2];case"i64":return D9[i>>2];case"float":return Pa[i>>2];case"double":return ba[i>>3];default:OA("invalid type for setValue: "+a)}return null}o.getValue=ar;var No=0,yC=1,RA=2,dh=3,L3=4;o.ALLOC_NORMAL=No,o.ALLOC_STACK=yC,o.ALLOC_STATIC=RA,o.ALLOC_DYNAMIC=dh,o.ALLOC_NONE=L3;function d3(i,a,g,u){var O,e;typeof i=="number"?(O=!0,e=i):(O=!1,e=i.length);var Z0=typeof a=="string"?a:null,t1;if(g==L3?t1=u:t1=[wh,x.stackAlloc,x.staticAlloc,x.dynamicAlloc][g===void 0?RA:g](Math.max(e,Z0?1:a.length)),O){var u=t1,b2;for(K4((t1&3)==0),b2=t1+(e&-4);u>2]=0;for(b2=t1+e;u>0]=0;return t1}if(Z0==="i8")return i.subarray||i.slice?Ci.set(i,t1):Ci.set(new Uint8Array(i),t1),t1;for(var A=0,o1,B,Q5;A>0],g|=u,!(u==0&&!a||(O++,a&&O==a)););a||(a=O);var e="";if(g<128){for(var Z0=1024,t1;a>0;)t1=String.fromCharCode.apply(String,Ci.subarray(i,i+Math.min(a,Z0))),e=e?e+t1:t1,i+=Z0,a-=Z0;return e}return o.UTF8ToString(i)}o.Pointer_stringify=va;function Sa(i){for(var a="";;){var g=H9[i++>>0];if(!g)return a;a+=String.fromCharCode(g)}}o.AsciiToString=Sa;function zm(i,a){return Ga(i,a,!1)}o.stringToAscii=zm;function xA(i,a){for(var g,u,O,e,Z0,t1,b2="";;){if(g=i[a++],!g)return b2;if(!(g&128)){b2+=String.fromCharCode(g);continue}if(u=i[a++]&63,(g&224)==192){b2+=String.fromCharCode((g&31)<<6|u);continue}if(O=i[a++]&63,(g&240)==224?g=(g&15)<<12|u<<6|O:(e=i[a++]&63,(g&248)==240?g=(g&7)<<18|u<<12|O<<6|e:(Z0=i[a++]&63,(g&252)==248?g=(g&3)<<24|u<<18|O<<12|e<<6|Z0:(t1=i[a++]&63,g=(g&1)<<30|u<<24|O<<18|e<<12|Z0<<6|t1))),g<65536)b2+=String.fromCharCode(g);else{var A=g-65536;b2+=String.fromCharCode(55296|A>>10,56320|A&1023)}}}o.UTF8ArrayToString=xA;function wC(i){return xA(Ci,i)}o.UTF8ToString=wC;function Sn(i,a,g,u){if(!(u>0))return 0;for(var O=g,e=g+u-1,Z0=0;Z0=55296&&t1<=57343&&(t1=65536+((t1&1023)<<10)|i.charCodeAt(++Z0)&1023),t1<=127){if(g>=e)break;a[g++]=t1}else if(t1<=2047){if(g+1>=e)break;a[g++]=192|t1>>6,a[g++]=128|t1&63}else if(t1<=65535){if(g+2>=e)break;a[g++]=224|t1>>12,a[g++]=128|t1>>6&63,a[g++]=128|t1&63}else if(t1<=2097151){if(g+3>=e)break;a[g++]=240|t1>>18,a[g++]=128|t1>>12&63,a[g++]=128|t1>>6&63,a[g++]=128|t1&63}else if(t1<=67108863){if(g+4>=e)break;a[g++]=248|t1>>24,a[g++]=128|t1>>18&63,a[g++]=128|t1>>12&63,a[g++]=128|t1>>6&63,a[g++]=128|t1&63}else{if(g+5>=e)break;a[g++]=252|t1>>30,a[g++]=128|t1>>24&63,a[g++]=128|t1>>18&63,a[g++]=128|t1>>12&63,a[g++]=128|t1>>6&63,a[g++]=128|t1&63}}return a[g]=0,g-O}o.stringToUTF8Array=Sn;function kC(i,a,g){return Sn(i,Ci,a,g)}o.stringToUTF8=kC;function FA(i){for(var a=0,g=0;g=55296&&u<=57343&&(u=65536+((u&1023)<<10)|i.charCodeAt(++g)&1023),u<=127?++a:u<=2047?a+=2:u<=65535?a+=3:u<=2097151?a+=4:u<=67108863?a+=5:a+=6}return a}o.lengthBytesUTF8=FA;function vC(i){for(var a=0,g="";;){var u=Tr[i+a*2>>1];if(u==0)return g;++a,g+=String.fromCharCode(u)}}o.UTF16ToString=vC;function Zm(i,a,g){if(g===void 0&&(g=2147483647),g<2)return 0;g-=2;for(var u=a,O=g>1]=Z0,a+=2}return Tr[a>>1]=0,a-u}o.stringToUTF16=Zm;function Wm(i){return i.length*2}o.lengthBytesUTF16=Wm;function jm(i){for(var a=0,g="";;){var u=D9[i+a*4>>2];if(u==0)return g;if(++a,u>=65536){var O=u-65536;g+=String.fromCharCode(55296|O>>10,56320|O&1023)}else g+=String.fromCharCode(u)}}o.UTF32ToString=jm;function Xm(i,a,g){if(g===void 0&&(g=2147483647),g<4)return 0;for(var u=a,O=u+g-4,e=0;e=55296&&Z0<=57343){var t1=i.charCodeAt(++e);Z0=65536+((Z0&1023)<<10)|t1&1023}if(D9[a>>2]=Z0,a+=4,a+4>O)break}return D9[a>>2]=0,a-u}o.stringToUTF32=Xm;function ep(i){for(var a=0,g=0;g=55296&&u<=57343&&++g,a+=4}return a}o.lengthBytesUTF32=ep;function tp(i){var a=!!o.___cxa_demangle;if(a)try{var g=wh(i.length);GA(i.substr(1),g);var u=wh(4),O=o.___cxa_demangle(g,0,0,u);if(ar(u,"i32")===0&&O)return va(O)}catch{}finally{g&&YB(g),u&&YB(u),O&&YB(O)}var e=3,Z0={v:"void",b:"bool",c:"char",s:"short",i:"int",l:"long",f:"float",d:"double",w:"wchar_t",a:"signed char",h:"unsigned char",t:"unsigned short",j:"unsigned int",m:"unsigned long",x:"long long",y:"unsigned long long",z:"..."},t1=[],b2=!0;function A(p2){p2&&o.print(p2),o.print(i);for(var M5="",b9=0;b9"}else U9=J9;e:for(;e0;){var gr=i[e++];if(gr in Z0)f4.push(Z0[gr]);else switch(gr){case"P":f4.push(B(!0,1,!0)[0]+"*");break;case"R":f4.push(B(!0,1,!0)[0]+"&");break;case"L":{e++;var qa=i.indexOf("E",e),c8=qa-e;f4.push(i.substr(e,c8)),e+=c8+2;break}case"A":{var c8=parseInt(i.substr(e));if(e+=c8.toString().length,i[e]!=="_")throw"?";e++,f4.push(B(!0,1,!0)[0]+" ["+c8+"]");break}case"E":break e;default:U9+="?"+gr;break e}}return!b9&&f4.length===1&&f4[0]==="void"&&(f4=[]),p2?(U9&&f4.push(U9+"?"),f4):U9+Q8()}var Q5=i;try{if(i=="Object._main"||i=="_main")return"main()";if(typeof i=="number"&&(i=va(i)),i[0]!=="_"||i[1]!=="_"||i[2]!=="Z")return i;switch(i[3]){case"n":return"operator new()";case"d":return"operator delete()"}Q5=B()}catch{Q5+="?"}return Q5.indexOf("?")>=0&&!a&&x.warnOnce("warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),Q5}function ip(i){return i.replace(/__Z[\w\d_]+/g,function(a){var g=tp(a);return a===g?a:a+" ["+g+"]"})}function rp(){var i=new Error;if(!i.stack){try{throw new Error(0)}catch(a){i=a}if(!i.stack)return"(no stack trace available)"}return i.stack.toString()}function SC(){return ip(rp())}o.stackTrace=SC;var NB=4096;function Eh(i){return i%4096>0&&(i+=4096-i%4096),i}var DC,H9,Ci,Tr,Da,D9,Oa,Pa,ba,LA=0,Gr=0,_a=!1,Ch=0,Ei=0,Ra=0,xa=0,bi=0;function UB(){OA("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+MA+", (2) compile with ALLOW_MEMORY_GROWTH which adjusts the size at runtime but prevents some optimizations, or (3) set Module.TOTAL_MEMORY before the program runs.")}for(var bC=o.TOTAL_STACK||5242880,MA=o.TOTAL_MEMORY||16777216,Nr=64*1024;Nr0;){var a=i.shift();if(typeof a=="function"){a();continue}var g=a.func;typeof g=="number"?a.arg===void 0?x.dynCall("v",g):x.dynCall("vi",g,[a.arg]):g(a.arg===void 0?null:a.arg)}}var _C=[],La=[],Bh=[],Ma=[],mh=[],ph=!1,Dn=!1;function Qh(){if(o.preRun)for(typeof o.preRun=="function"&&(o.preRun=[o.preRun]);o.preRun.length;)_t(o.preRun.shift());Fa(_C)}function TA(){ph||(ph=!0,Fa(La))}function np(){Fa(Bh)}function RC(){Fa(Ma),Dn=!0}function Ta(){if(o.postRun)for(typeof o.postRun=="function"&&(o.postRun=[o.postRun]);o.postRun.length;)OB(o.postRun.shift());Fa(mh)}function _t(i){_C.unshift(i)}o.addOnPreRun=o.addOnPreRun=_t;function Ap(i){La.unshift(i)}o.addOnInit=o.addOnInit=Ap;function sp(i){Bh.unshift(i)}o.addOnPreMain=o.addOnPreMain=sp;function op(i){Ma.unshift(i)}o.addOnExit=o.addOnExit=op;function OB(i){mh.unshift(i)}o.addOnPostRun=o.addOnPostRun=OB;function Ur(i,a,g){var u=g>0?g:FA(i)+1,O=new Array(u),e=Sn(i,O,0,O.length);return a&&(O.length=e),O}o.intArrayFromString=Ur;function PB(i){for(var a=[],g=0;g255&&(u&=255),a.push(String.fromCharCode(u))}return a.join("")}o.intArrayToString=PB;function GA(i,a,g){for(var u=Ur(i,g),O=0;O>0]=e,O=O+1}}o.writeStringToMemory=GA;function Uo(i,a){for(var g=0;g>0]=i[g]}o.writeArrayToMemory=Uo;function Ga(i,a,g){for(var u=0;u>0]=i.charCodeAt(u);g||(H9[a>>0]=0)}o.writeAsciiToMemory=Ga;function xC(i,a,g){return i>=0?i:a<=32?2*Math.abs(1<=u&&(a<=32||i>u)&&(i=-2*u+i),i}(!Math.imul||Math.imul(4294967295,5)!==-5)&&(Math.imul=function(a,g){var u=a>>>16,O=a&65535,e=g>>>16,Z0=g&65535;return O*Z0+(u*Z0+O*e<<16)|0}),Math.imul=Math.imul,Math.clz32||(Math.clz32=function(i){i=i>>>0;for(var a=0;a<32;a++)if(i&1<<31-a)return a;return 32}),Math.clz32=Math.clz32;var Ua=Math.abs,HB=Math.cos,Hi=Math.sin,_0=Math.tan,X0=Math.acos,C1=Math.asin,D2=Math.atan,K3=Math.atan2,l9=Math.exp,q9=Math.log,g6=Math.sqrt,d7=Math.ceil,Le=Math.floor,Ve=Math.pow,we=Math.imul,c9=Math.fround,Rt=Math.min,Ri=Math.clz32,E7=0,xt=null,xi=null;function Fi(i){return i}function bn(i){E7++,o.monitorRunDependencies&&o.monitorRunDependencies(E7)}o.addRunDependency=bn;function lr(i){if(E7--,o.monitorRunDependencies&&o.monitorRunDependencies(E7),E7==0&&(xt!==null&&(clearInterval(xt),xt=null),xi)){var a=xi;xi=null,a()}}o.removeRunDependency=lr,o.preloadedImages={},o.preloadedAudios={};var FC=null,yh=[];LA=8,Gr=LA+553552,La.push(),d3([0,0,0,0,1,0,0,0,3,0,0,0,7,0,0,0,15,0,0,0,31,0,0,0,63,0,0,0,127,0,0,0,255,0,0,0,255,1,0,0,255,3,0,0,255,7,0,0,255,15,0,0,255,31,0,0,255,63,0,0,255,127,0,0,255,255,0,0,255,255,1,0,255,255,3,0,255,255,7,0,255,255,15,0,255,255,31,0,255,255,63,0,255,255,127,0,255,255,255,0,255,255,255,1,255,255,255,3,255,255,255,7,255,255,255,15,255,255,255,31,255,255,255,63,255,255,255,127,255,255,255,255,0,0,0,0,0,0,0,0,183,29,193,4,110,59,130,9,217,38,67,13,220,118,4,19,107,107,197,23,178,77,134,26,5,80,71,30,184,237,8,38,15,240,201,34,214,214,138,47,97,203,75,43,100,155,12,53,211,134,205,49,10,160,142,60,189,189,79,56,112,219,17,76,199,198,208,72,30,224,147,69,169,253,82,65,172,173,21,95,27,176,212,91,194,150,151,86,117,139,86,82,200,54,25,106,127,43,216,110,166,13,155,99,17,16,90,103,20,64,29,121,163,93,220,125,122,123,159,112,205,102,94,116,224,182,35,152,87,171,226,156,142,141,161,145,57,144,96,149,60,192,39,139,139,221,230,143,82,251,165,130,229,230,100,134,88,91,43,190,239,70,234,186,54,96,169,183,129,125,104,179,132,45,47,173,51,48,238,169,234,22,173,164,93,11,108,160,144,109,50,212,39,112,243,208,254,86,176,221,73,75,113,217,76,27,54,199,251,6,247,195,34,32,180,206,149,61,117,202,40,128,58,242,159,157,251,246,70,187,184,251,241,166,121,255,244,246,62,225,67,235,255,229,154,205,188,232,45,208,125,236,119,112,134,52,192,109,71,48,25,75,4,61,174,86,197,57,171,6,130,39,28,27,67,35,197,61,0,46,114,32,193,42,207,157,142,18,120,128,79,22,161,166,12,27,22,187,205,31,19,235,138,1,164,246,75,5,125,208,8,8,202,205,201,12,7,171,151,120,176,182,86,124,105,144,21,113,222,141,212,117,219,221,147,107,108,192,82,111,181,230,17,98,2,251,208,102,191,70,159,94,8,91,94,90,209,125,29,87,102,96,220,83,99,48,155,77,212,45,90,73,13,11,25,68,186,22,216,64,151,198,165,172,32,219,100,168,249,253,39,165,78,224,230,161,75,176,161,191,252,173,96,187,37,139,35,182,146,150,226,178,47,43,173,138,152,54,108,142,65,16,47,131,246,13,238,135,243,93,169,153,68,64,104,157,157,102,43,144,42,123,234,148,231,29,180,224,80,0,117,228,137,38,54,233,62,59,247,237,59,107,176,243,140,118,113,247,85,80,50,250,226,77,243,254,95,240,188,198,232,237,125,194,49,203,62,207,134,214,255,203,131,134,184,213,52,155,121,209,237,189,58,220,90,160,251,216,238,224,12,105,89,253,205,109,128,219,142,96,55,198,79,100,50,150,8,122,133,139,201,126,92,173,138,115,235,176,75,119,86,13,4,79,225,16,197,75,56,54,134,70,143,43,71,66,138,123,0,92,61,102,193,88,228,64,130,85,83,93,67,81,158,59,29,37,41,38,220,33,240,0,159,44,71,29,94,40,66,77,25,54,245,80,216,50,44,118,155,63,155,107,90,59,38,214,21,3,145,203,212,7,72,237,151,10,255,240,86,14,250,160,17,16,77,189,208,20,148,155,147,25,35,134,82,29,14,86,47,241,185,75,238,245,96,109,173,248,215,112,108,252,210,32,43,226,101,61,234,230,188,27,169,235,11,6,104,239,182,187,39,215,1,166,230,211,216,128,165,222,111,157,100,218,106,205,35,196,221,208,226,192,4,246,161,205,179,235,96,201,126,141,62,189,201,144,255,185,16,182,188,180,167,171,125,176,162,251,58,174,21,230,251,170,204,192,184,167,123,221,121,163,198,96,54,155,113,125,247,159,168,91,180,146,31,70,117,150,26,22,50,136,173,11,243,140,116,45,176,129,195,48,113,133,153,144,138,93,46,141,75,89,247,171,8,84,64,182,201,80,69,230,142,78,242,251,79,74,43,221,12,71,156,192,205,67,33,125,130,123,150,96,67,127,79,70,0,114,248,91,193,118,253,11,134,104,74,22,71,108,147,48,4,97,36,45,197,101,233,75,155,17,94,86,90,21,135,112,25,24,48,109,216,28,53,61,159,2,130,32,94,6,91,6,29,11,236,27,220,15,81,166,147,55,230,187,82,51,63,157,17,62,136,128,208,58,141,208,151,36,58,205,86,32,227,235,21,45,84,246,212,41,121,38,169,197,206,59,104,193,23,29,43,204,160,0,234,200,165,80,173,214,18,77,108,210,203,107,47,223,124,118,238,219,193,203,161,227,118,214,96,231,175,240,35,234,24,237,226,238,29,189,165,240,170,160,100,244,115,134,39,249,196,155,230,253,9,253,184,137,190,224,121,141,103,198,58,128,208,219,251,132,213,139,188,154,98,150,125,158,187,176,62,147,12,173,255,151,177,16,176,175,6,13,113,171,223,43,50,166,104,54,243,162,109,102,180,188,218,123,117,184,3,93,54,181,180,64,247,177,1,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,88,105,112,104,46,79,114,103,32,108,105,98,86,111,114,98,105,115,32,73,32,50,48,49,53,48,49,48,53,32,40,226,155,132,226,155,132,226,155,132,226,155,132,41,0,0,0,0,1,0,0,0,4,0,0,0,3,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,0,0,76,194,0,0,80,194,0,0,84,194,0,0,88,194,0,0,92,194,0,0,96,194,0,0,100,194,0,0,104,194,0,0,108,194,0,0,112,194,0,0,116,194,0,0,120,194,0,0,124,194,0,0,128,194,0,0,130,194,0,0,132,194,0,0,134,194,0,0,136,194,0,0,138,194,0,0,140,194,0,0,142,194,0,0,144,194,0,0,146,194,0,0,148,194,0,0,150,194,0,0,152,194,0,0,154,194,0,0,156,194,0,0,160,194,0,0,162,194,0,0,164,194,0,0,166,194,0,0,168,194,0,0,170,194,0,0,172,194,0,0,174,194,0,0,176,194,0,0,176,194,0,0,178,194,0,0,178,194,0,0,180,194,0,0,182,194,0,0,182,194,0,0,184,194,0,0,186,194,0,0,188,194,0,0,190,194,0,0,192,194,0,0,192,194,0,0,194,194,0,0,196,194,0,0,196,194,0,0,198,194,0,0,198,194,0,0,200,194,0,0,200,194,0,0,202,194,0,0,204,194,0,0,206,194,0,0,208,194,0,0,212,194,0,0,214,194,0,0,214,194,0,0,214,194,0,0,214,194,0,0,210,194,0,0,206,194,0,0,204,194,0,0,202,194,0,0,198,194,0,0,196,194,0,0,192,194,0,0,190,194,0,0,190,194,0,0,192,194,0,0,194,194,0,0,192,194,0,0,190,194,0,0,186,194,0,0,180,194,0,0,160,194,0,0,140,194,0,0,72,194,0,0,32,194,0,0,240,193,0,0,240,193,0,0,240,193,0,0,240,193,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,4,64,0,0,0,0,0,0,18,64,0,0,0,0,0,0,33,64,0,0,0,0,0,128,48,64,0,0,0,4,107,244,52,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,4,64,0,0,0,0,0,0,18,64,0,0,0,0,0,0,33,64,0,0,0,4,107,244,52,66,62,180,228,51,9,145,243,51,139,178,1,52,60,32,10,52,35,26,19,52,96,169,28,52,167,215,38,52,75,175,49,52,80,59,61,52,112,135,73,52,35,160,86,52,184,146,100,52,85,109,115,52,136,159,129,52,252,11,138,52,147,4,147,52,105,146,156,52,50,191,166,52,63,149,177,52,147,31,189,52,228,105,201,52,173,128,214,52,54,113,228,52,166,73,243,52,136,140,1,53,192,247,9,53,6,239,18,53,118,123,28,53,192,166,38,53,55,123,49,53,218,3,61,53,94,76,73,53,59,97,86,53,185,79,100,53,252,37,115,53,138,121,129,53,134,227,137,53,124,217,146,53,133,100,156,53,82,142,166,53,51,97,177,53,37,232,188,53,220,46,201,53,206,65,214,53,65,46,228,53,87,2,243,53,143,102,1,54,79,207,9,54,245,195,18,54,152,77,28,54,232,117,38,54,50,71,49,54,116,204,60,54,94,17,73,54,101,34,86,54,206,12,100,54,184,222,114,54,151,83,129,54,28,187,137,54,114,174,146,54,175,54,156,54,129,93,166,54,53,45,177,54,199,176,188,54,228,243,200,54,1,3,214,54,96,235,227,54,30,187,242,54,162,64,1,55,235,166,9,55,241,152,18,55,201,31,28,55,30,69,38,55,61,19,49,55,30,149,60,55,111,214,72,55,162,227,85,55,247,201,99,55,137,151,114,55,175,45,129,55,190,146,137,55,116,131,146,55,230,8,156,55,190,44,166,55,71,249,176,55,121,121,188,55,254,184,200,55,71,196,213,55,146,168,227,55,248,115,242,55,192,26,1,56,147,126,9,56,249,109,18,56,6,242,27,56,98,20,38,56,86,223,48,56,216,93,60,56,146,155,72,56,242,164,85,56,51,135,99,56,110,80,114,56,211,7,129,56,107,106,137,56,130,88,146,56,42,219,155,56,9,252,165,56,104,197,176,56,59,66,188,56,41,126,200,56,160,133,213,56,217,101,227,56,232,44,242,56,233,244,0,57,70,86,9,57,14,67,18,57,81,196,27,57,181,227,37,57,127,171,48,57,162,38,60,57,197,96,72,57,83,102,85,57,131,68,99,57,104,9,114,57,1,226,128,57,36,66,137,57,157,45,146,57,123,173,155,57,99,203,165,57,153,145,176,57,13,11,188,57,102,67,200,57,11,71,213,57,50,35,227,57,237,229,241,57,29,207,0,58,5,46,9,58,48,24,18,58,169,150,27,58,21,179,37,58,183,119,48,58,124,239,59,58,10,38,72,58,199,39,85,58,230,1,99,58,120,194,113,58,59,188,128,58,233,25,137,58,198,2,146,58,219,127,155,58,203,154,165,58,216,93,176,58,239,211,187,58,179,8,200,58,136,8,213,58,159,224,226,58,7,159,241,58,92,169,0,59,208,5,9,59,94,237,17,59,15,105,27,59,132,130,37,59,253,67,48,59,103,184,59,59,97,235,71,59,77,233,84,59,93,191,98,59,156,123,113,59,127,150,128,59,186,241,136,59,249,215,145,59,71,82,155,59,65,106,165,59,39,42,176,59,226,156,187,59,18,206,199,59,23,202,212,59,32,158,226,59,53,88,241,59,166,131,0,60,167,221,8,60,152,194,17,60,130,59,27,60,1,82,37,60,84,16,48,60,97,129,59,60,200,176,71,60,229,170,84,60,232,124,98,60,212,52,113,60,207,112,128,60,150,201,136,60,58,173,145,60,192,36,155,60,197,57,165,60,133,246,175,60,229,101,187,60,130,147,199,60,185,139,212,60,180,91,226,60,121,17,241,60,251,93,0,61,137,181,8,61,223,151,17,61,2,14,27,61,141,33,37,61,185,220,47,61,109,74,59,61,64,118,71,61,145,108,84,61,133,58,98,61,34,238,112,61,42,75,128,61,127,161,136,61,136,130,145,61,72,247,154,61,88,9,165,61,242,194,175,61,248,46,187,61,3,89,199,61,109,77,212,61,92,25,226,61,209,202,240,61,91,56,0,62,119,141,8,62,51,109,17,62,144,224,26,62,39,241,36,62,46,169,47,62,135,19,59,62,202,59,71,62,77,46,84,62,55,248,97,62,132,167,112,62,143,37,128,62,115,121,136,62,226,87,145,62,220,201,154,62,249,216,164,62,109,143,175,62,27,248,186,62,149,30,199,62,51,15,212,62,23,215,225,62,61,132,240,62,198,18,0,63,114,101,8,63,147,66,17,63,43,179,26,63,206,192,36,63,177,117,47,63,178,220,58,63,101,1,71,63,29,240,83,63,251,181,97,63,251,96,112,63,0,0,128,63,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,120,194,0,0,120,194,0,0,130,194,0,0,146,194,0,0,138,194,0,0,136,194,0,0,136,194,0,0,134,194,0,0,140,194,0,0,140,194,0,0,144,194,0,0,148,194,0,0,150,194,0,0,158,194,0,0,158,194,0,0,160,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,84,194,0,0,116,194,0,0,132,194,0,0,132,194,0,0,136,194,0,0,134,194,0,0,140,194,0,0,152,194,0,0,152,194,0,0,144,194,0,0,146,194,0,0,150,194,0,0,152,194,0,0,156,194,0,0,158,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,24,194,0,0,32,194,0,0,40,194,0,0,56,194,0,0,64,194,0,0,84,194,0,0,92,194,0,0,120,194,0,0,130,194,0,0,104,194,0,0,96,194,0,0,96,194,0,0,116,194,0,0,112,194,0,0,130,194,0,0,134,194,0,0,138,194,0,0,142,194,0,0,154,194,0,0,154,194,0,0,156,194,0,0,160,194,0,0,164,194,0,0,168,194,0,0,176,194,0,0,186,194,0,0,196,194,0,0,212,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,208,193,0,0,216,193,0,0,232,193,0,0,0,194,0,0,24,194,0,0,64,194,0,0,80,194,0,0,80,194,0,0,72,194,0,0,64,194,0,0,64,194,0,0,76,194,0,0,80,194,0,0,88,194,0,0,112,194,0,0,134,194,0,0,134,194,0,0,132,194,0,0,136,194,0,0,138,194,0,0,146,194,0,0,146,194,0,0,152,194,0,0,160,194,0,0,162,194,0,0,162,194,0,0,170,194,0,0,170,194,0,0,172,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,136,193,0,0,152,193,0,0,160,193,0,0,176,193,0,0,208,193,0,0,224,193,0,0,248,193,0,0,32,194,0,0,60,194,0,0,28,194,0,0,28,194,0,0,32,194,0,0,40,194,0,0,44,194,0,0,60,194,0,0,76,194,0,0,100,194,0,0,80,194,0,0,92,194,0,0,92,194,0,0,112,194,0,0,104,194,0,0,120,194,0,0,124,194,0,0,140,194,0,0,134,194,0,0,138,194,0,0,144,194,0,0,146,194,0,0,154,194,0,0,160,194,0,0,164,194,0,0,166,194,0,0,174,194,0,0,180,194,0,0,188,194,0,0,196,194,0,0,208,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,32,193,0,0,48,193,0,0,112,193,0,0,152,193,0,0,200,193,0,0,240,193,0,0,8,194,0,0,248,193,0,0,240,193,0,0,248,193,0,0,232,193,0,0,0,194,0,0,12,194,0,0,40,194,0,0,64,194,0,0,40,194,0,0,48,194,0,0,56,194,0,0,72,194,0,0,72,194,0,0,76,194,0,0,80,194,0,0,108,194,0,0,88,194,0,0,92,194,0,0,92,194,0,0,104,194,0,0,120,194,0,0,124,194,0,0,132,194,0,0,144,194,0,0,146,194,0,0,152,194,0,0,150,194,0,0,156,194,0,0,160,194,0,0,160,194,0,0,162,194,0,0,168,194,0,0,176,194,0,0,180,194,0,0,188,194,0,0,196,194,0,0,202,194,0,0,212,194,0,0,220,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,134,194,0,0,134,194,0,0,134,194,0,0,152,194,0,0,144,194,0,0,142,194,0,0,148,194,0,0,152,194,0,0,152,194,0,0,150,194,0,0,156,194,0,0,158,194,0,0,158,194,0,0,162,194,0,0,166,194,0,0,172,194,0,0,178,194,0,0,186,194,0,0,194,194,0,0,200,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,64,194,0,0,76,194,0,0,92,194,0,0,108,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,134,194,0,0,132,194,0,0,136,194,0,0,138,194,0,0,140,194,0,0,148,194,0,0,158,194,0,0,154,194,0,0,154,194,0,0,156,194,0,0,160,194,0,0,162,194,0,0,164,194,0,0,168,194,0,0,172,194,0,0,176,194,0,0,182,194,0,0,190,194,0,0,200,194,0,0,216,194,0,0,232,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,20,194,0,0,20,194,0,0,36,194,0,0,48,194,0,0,64,194,0,0,76,194,0,0,104,194,0,0,120,194,0,0,112,194,0,0,100,194,0,0,108,194,0,0,108,194,0,0,112,194,0,0,124,194,0,0,130,194,0,0,144,194,0,0,142,194,0,0,140,194,0,0,144,194,0,0,148,194,0,0,154,194,0,0,152,194,0,0,156,194,0,0,162,194,0,0,162,194,0,0,160,194,0,0,166,194,0,0,172,194,0,0,182,194,0,0,192,194,0,0,200,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,240,193,0,0,0,194,0,0,0,194,0,0,4,194,0,0,12,194,0,0,36,194,0,0,68,194,0,0,72,194,0,0,68,194,0,0,60,194,0,0,64,194,0,0,64,194,0,0,80,194,0,0,76,194,0,0,100,194,0,0,130,194,0,0,116,194,0,0,108,194,0,0,116,194,0,0,128,194,0,0,138,194,0,0,140,194,0,0,148,194,0,0,154,194,0,0,154,194,0,0,156,194,0,0,162,194,0,0,168,194,0,0,170,194,0,0,174,194,0,0,180,194,0,0,184,194,0,0,192,194,0,0,200,194,0,0,214,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,160,193,0,0,168,193,0,0,184,193,0,0,216,193,0,0,240,193,0,0,12,194,0,0,16,194,0,0,36,194,0,0,56,194,0,0,48,194,0,0,40,194,0,0,32,194,0,0,36,194,0,0,36,194,0,0,44,194,0,0,64,194,0,0,92,194,0,0,84,194,0,0,80,194,0,0,84,194,0,0,96,194,0,0,108,194,0,0,104,194,0,0,112,194,0,0,134,194,0,0,132,194,0,0,138,194,0,0,142,194,0,0,144,194,0,0,150,194,0,0,158,194,0,0,162,194,0,0,168,194,0,0,174,194,0,0,180,194,0,0,186,194,0,0,194,194,0,0,202,194,0,0,214,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,48,193,0,0,64,193,0,0,64,193,0,0,112,193,0,0,128,193,0,0,160,193,0,0,184,193,0,0,240,193,0,0,20,194,0,0,8,194,0,0,4,194,0,0,8,194,0,0,248,193,0,0,0,194,0,0,0,194,0,0,24,194,0,0,60,194,0,0,48,194,0,0,36,194,0,0,32,194,0,0,60,194,0,0,68,194,0,0,56,194,0,0,56,194,0,0,104,194,0,0,72,194,0,0,72,194,0,0,88,194,0,0,104,194,0,0,120,194,0,0,128,194,0,0,134,194,0,0,134,194,0,0,140,194,0,0,144,194,0,0,152,194,0,0,158,194,0,0,166,194,0,0,174,194,0,0,182,194,0,0,192,194,0,0,200,194,0,0,208,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,124,194,0,0,128,194,0,0,132,194,0,0,134,194,0,0,132,194,0,0,136,194,0,0,150,194,0,0,144,194,0,0,152,194,0,0,150,194,0,0,152,194,0,0,156,194,0,0,158,194,0,0,164,194,0,0,168,194,0,0,170,194,0,0,180,194,0,0,188,194,0,0,202,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,112,194,0,0,112,194,0,0,116,194,0,0,124,194,0,0,132,194,0,0,142,194,0,0,136,194,0,0,140,194,0,0,140,194,0,0,142,194,0,0,144,194,0,0,144,194,0,0,150,194,0,0,162,194,0,0,156,194,0,0,158,194,0,0,164,194,0,0,166,194,0,0,172,194,0,0,180,194,0,0,194,194,0,0,206,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,88,194,0,0,92,194,0,0,100,194,0,0,96,194,0,0,100,194,0,0,92,194,0,0,116,194,0,0,130,194,0,0,112,194,0,0,112,194,0,0,120,194,0,0,124,194,0,0,124,194,0,0,132,194,0,0,136,194,0,0,148,194,0,0,146,194,0,0,150,194,0,0,150,194,0,0,156,194,0,0,160,194,0,0,160,194,0,0,164,194,0,0,170,194,0,0,180,194,0,0,192,194,0,0,202,194,0,0,216,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,64,194,0,0,76,194,0,0,100,194,0,0,76,194,0,0,68,194,0,0,72,194,0,0,76,194,0,0,84,194,0,0,88,194,0,0,108,194,0,0,132,194,0,0,112,194,0,0,120,194,0,0,134,194,0,0,134,194,0,0,140,194,0,0,144,194,0,0,150,194,0,0,152,194,0,0,156,194,0,0,162,194,0,0,170,194,0,0,176,194,0,0,188,194,0,0,194,194,0,0,208,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,28,194,0,0,36,194,0,0,40,194,0,0,40,194,0,0,28,194,0,0,24,194,0,0,36,194,0,0,44,194,0,0,80,194,0,0,48,194,0,0,32,194,0,0,28,194,0,0,20,194,0,0,20,194,0,0,32,194,0,0,60,194,0,0,88,194,0,0,72,194,0,0,64,194,0,0,72,194,0,0,92,194,0,0,116,194,0,0,108,194,0,0,120,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,138,194,0,0,138,194,0,0,146,194,0,0,148,194,0,0,148,194,0,0,150,194,0,0,154,194,0,0,158,194,0,0,164,194,0,0,174,194,0,0,182,194,0,0,190,194,0,0,200,194,0,0,216,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,224,193,0,0,208,193,0,0,192,193,0,0,176,193,0,0,160,193,0,0,160,193,0,0,184,193,0,0,232,193,0,0,240,193,0,0,248,193,0,0,224,193,0,0,216,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,12,194,0,0,32,194,0,0,4,194,0,0,0,194,0,0,232,193,0,0,240,193,0,0,240,193,0,0,240,193,0,0,20,194,0,0,52,194,0,0,36,194,0,0,20,194,0,0,24,194,0,0,52,194,0,0,60,194,0,0,60,194,0,0,64,194,0,0,84,194,0,0,68,194,0,0,64,194,0,0,72,194,0,0,68,194,0,0,68,194,0,0,76,194,0,0,80,194,0,0,104,194,0,0,96,194,0,0,100,194,0,0,96,194,0,0,112,194,0,0,116,194,0,0,120,194,0,0,140,194,0,0,144,194,0,0,148,194,0,0,156,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,212,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,200,194,0,0,190,194,0,0,182,194,0,0,174,194,0,0,166,194,0,0,160,194,0,0,156,194,0,0,152,194,0,0,156,194,0,0,156,194,0,0,162,194,0,0,166,194,0,0,170,194,0,0,172,194,0,0,170,194,0,0,172,194,0,0,174,194,0,0,180,194,0,0,194,194,0,0,214,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,162,194,0,0,154,194,0,0,146,194,0,0,140,194,0,0,134,194,0,0,134,194,0,0,136,194,0,0,150,194,0,0,146,194,0,0,140,194,0,0,138,194,0,0,140,194,0,0,144,194,0,0,150,194,0,0,158,194,0,0,168,194,0,0,166,194,0,0,168,194,0,0,172,194,0,0,176,194,0,0,178,194,0,0,178,194,0,0,186,194,0,0,196,194,0,0,210,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,152,194,0,0,142,194,0,0,136,194,0,0,136,194,0,0,130,194,0,0,124,194,0,0,124,194,0,0,120,194,0,0,120,194,0,0,128,194,0,0,130,194,0,0,128,194,0,0,116,194,0,0,120,194,0,0,124,194,0,0,128,194,0,0,132,194,0,0,136,194,0,0,146,194,0,0,146,194,0,0,148,194,0,0,150,194,0,0,152,194,0,0,162,194,0,0,166,194,0,0,170,194,0,0,176,194,0,0,178,194,0,0,184,194,0,0,190,194,0,0,200,194,0,0,216,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,160,194,0,0,150,194,0,0,142,194,0,0,136,194,0,0,130,194,0,0,124,194,0,0,120,194,0,0,116,194,0,0,116,194,0,0,116,194,0,0,116,194,0,0,108,194,0,0,96,194,0,0,100,194,0,0,84,194,0,0,72,194,0,0,104,194,0,0,80,194,0,0,72,194,0,0,72,194,0,0,80,194,0,0,84,194,0,0,88,194,0,0,104,194,0,0,134,194,0,0,124,194,0,0,134,194,0,0,136,194,0,0,144,194,0,0,150,194,0,0,156,194,0,0,160,194,0,0,162,194,0,0,162,194,0,0,164,194,0,0,170,194,0,0,178,194,0,0,180,194,0,0,186,194,0,0,194,194,0,0,202,194,0,0,214,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,130,194,0,0,116,194,0,0,108,194,0,0,100,194,0,0,96,194,0,0,92,194,0,0,92,194,0,0,96,194,0,0,96,194,0,0,100,194,0,0,92,194,0,0,84,194,0,0,80,194,0,0,60,194,0,0,48,194,0,0,48,194,0,0,72,194,0,0,48,194,0,0,36,194,0,0,28,194,0,0,28,194,0,0,40,194,0,0,32,194,0,0,56,194,0,0,76,194,0,0,68,194,0,0,72,194,0,0,84,194,0,0,88,194,0,0,124,194,0,0,112,194,0,0,116,194,0,0,120,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,140,194,0,0,146,194,0,0,148,194,0,0,150,194,0,0,152,194,0,0,150,194,0,0,158,194,0,0,170,194,0,0,178,194,0,0,182,194,0,0,192,194,0,0,204,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,80,194,0,0,72,194,0,0,68,194,0,0,68,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,68,194,0,0,72,194,0,0,72,194,0,0,68,194,0,0,56,194,0,0,44,194,0,0,28,194,0,0,12,194,0,0,4,194,0,0,24,194,0,0,16,194,0,0,0,194,0,0,232,193,0,0,0,194,0,0,0,194,0,0,0,194,0,0,12,194,0,0,48,194,0,0,28,194,0,0,24,194,0,0,24,194,0,0,56,194,0,0,72,194,0,0,52,194,0,0,56,194,0,0,84,194,0,0,72,194,0,0,72,194,0,0,72,194,0,0,88,194,0,0,88,194,0,0,84,194,0,0,84,194,0,0,96,194,0,0,100,194,0,0,108,194,0,0,132,194,0,0,140,194,0,0,144,194,0,0,148,194,0,0,158,194,0,0,166,194,0,0,170,194,0,0,180,194,0,0,194,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,172,194,0,0,160,194,0,0,150,194,0,0,150,194,0,0,158,194,0,0,160,194,0,0,158,194,0,0,160,194,0,0,162,194,0,0,164,194,0,0,176,194,0,0,190,194,0,0,206,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,176,194,0,0,166,194,0,0,158,194,0,0,156,194,0,0,150,194,0,0,142,194,0,0,134,194,0,0,136,194,0,0,146,194,0,0,146,194,0,0,144,194,0,0,146,194,0,0,150,194,0,0,154,194,0,0,160,194,0,0,164,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,214,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,202,194,0,0,192,194,0,0,180,194,0,0,172,194,0,0,162,194,0,0,154,194,0,0,146,194,0,0,138,194,0,0,132,194,0,0,116,194,0,0,120,194,0,0,132,194,0,0,128,194,0,0,120,194,0,0,130,194,0,0,132,194,0,0,140,194,0,0,144,194,0,0,152,194,0,0,162,194,0,0,160,194,0,0,168,194,0,0,180,194,0,0,190,194,0,0,204,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,206,194,0,0,194,194,0,0,184,194,0,0,176,194,0,0,166,194,0,0,158,194,0,0,148,194,0,0,140,194,0,0,132,194,0,0,108,194,0,0,84,194,0,0,104,194,0,0,120,194,0,0,92,194,0,0,88,194,0,0,88,194,0,0,88,194,0,0,104,194,0,0,116,194,0,0,120,194,0,0,144,194,0,0,140,194,0,0,144,194,0,0,150,194,0,0,156,194,0,0,160,194,0,0,162,194,0,0,160,194,0,0,166,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,214,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,150,194,0,0,140,194,0,0,132,194,0,0,120,194,0,0,96,194,0,0,64,194,0,0,48,194,0,0,64,194,0,0,56,194,0,0,56,194,0,0,44,194,0,0,56,194,0,0,64,194,0,0,64,194,0,0,76,194,0,0,104,194,0,0,104,194,0,0,108,194,0,0,112,194,0,0,120,194,0,0,120,194,0,0,116,194,0,0,116,194,0,0,130,194,0,0,128,194,0,0,130,194,0,0,136,194,0,0,140,194,0,0,148,194,0,0,150,194,0,0,156,194,0,0,162,194,0,0,172,194,0,0,190,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,150,194,0,0,140,194,0,0,130,194,0,0,116,194,0,0,92,194,0,0,68,194,0,0,28,194,0,0,4,194,0,0,32,194,0,0,12,194,0,0,0,194,0,0,24,194,0,0,32,194,0,0,4,194,0,0,12,194,0,0,20,194,0,0,56,194,0,0,36,194,0,0,52,194,0,0,48,194,0,0,56,194,0,0,40,194,0,0,52,194,0,0,56,194,0,0,80,194,0,0,72,194,0,0,72,194,0,0,72,194,0,0,88,194,0,0,88,194,0,0,92,194,0,0,100,194,0,0,120,194,0,0,128,194,0,0,132,194,0,0,136,194,0,0,140,194,0,0,152,194,0,0,162,194,0,0,180,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,196,194,0,0,180,194,0,0,170,194,0,0,164,194,0,0,166,194,0,0,160,194,0,0,156,194,0,0,168,194,0,0,158,194,0,0,160,194,0,0,166,194,0,0,174,194,0,0,178,194,0,0,182,194,0,0,186,194,0,0,198,194,0,0,212,194,0,0,234,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,196,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,150,194,0,0,140,194,0,0,136,194,0,0,148,194,0,0,144,194,0,0,148,194,0,0,154,194,0,0,160,194,0,0,164,194,0,0,170,194,0,0,174,194,0,0,184,194,0,0,178,194,0,0,182,194,0,0,190,194,0,0,200,194,0,0,212,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,196,194,0,0,180,194,0,0,166,194,0,0,150,194,0,0,142,194,0,0,124,194,0,0,128,194,0,0,134,194,0,0,120,194,0,0,128,194,0,0,134,194,0,0,140,194,0,0,146,194,0,0,154,194,0,0,162,194,0,0,168,194,0,0,166,194,0,0,170,194,0,0,178,194,0,0,180,194,0,0,186,194,0,0,196,194,0,0,208,194,0,0,218,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,206,194,0,0,192,194,0,0,176,194,0,0,162,194,0,0,150,194,0,0,136,194,0,0,104,194,0,0,88,194],"i8",L3,x.GLOBAL_BASE),d3([0,0,96,194,0,0,88,194,0,0,96,194,0,0,96,194,0,0,104,194,0,0,112,194,0,0,124,194,0,0,132,194,0,0,148,194,0,0,138,194,0,0,144,194,0,0,144,194,0,0,150,194,0,0,148,194,0,0,154,194,0,0,162,194,0,0,162,194,0,0,164,194,0,0,168,194,0,0,174,194,0,0,186,194,0,0,192,194,0,0,198,194,0,0,208,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,204,194,0,0,192,194,0,0,182,194,0,0,170,194,0,0,160,194,0,0,148,194,0,0,136,194,0,0,112,194,0,0,76,194,0,0,56,194,0,0,64,194,0,0,56,194,0,0,44,194,0,0,52,194,0,0,60,194,0,0,60,194,0,0,68,194,0,0,64,194,0,0,96,194,0,0,84,194,0,0,92,194,0,0,104,194,0,0,100,194,0,0,124,194,0,0,104,194,0,0,112,194,0,0,132,194,0,0,128,194,0,0,134,194,0,0,140,194,0,0,140,194,0,0,148,194,0,0,154,194,0,0,168,194,0,0,172,194,0,0,178,194,0,0,182,194,0,0,186,194,0,0,188,194,0,0,202,194,0,0,218,194,0,0,236,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,176,194,0,0,166,194,0,0,156,194,0,0,146,194,0,0,136,194,0,0,112,194,0,0,84,194,0,0,48,194,0,0,12,194,0,0,24,194,0,0,24,194,0,0,8,194,0,0,8,194,0,0,16,194,0,0,32,194,0,0,36,194,0,0,48,194,0,0,76,194,0,0,52,194,0,0,56,194,0,0,60,194,0,0,56,194,0,0,88,194,0,0,72,194,0,0,68,194,0,0,72,194,0,0,72,194,0,0,72,194,0,0,76,194,0,0,88,194,0,0,100,194,0,0,104,194,0,0,112,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,128,194,0,0,130,194,0,0,136,194,0,0,154,194,0,0,164,194,0,0,174,194,0,0,190,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,204,194,0,0,194,194,0,0,184,194,0,0,174,194,0,0,166,194,0,0,156,194,0,0,150,194,0,0,164,194,0,0,158,194,0,0,166,194,0,0,170,194,0,0,178,194,0,0,184,194,0,0,190,194,0,0,196,194,0,0,202,194,0,0,210,194,0,0,218,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,172,194,0,0,162,194,0,0,156,194,0,0,148,194,0,0,138,194,0,0,148,194,0,0,148,194,0,0,152,194,0,0,158,194,0,0,166,194,0,0,168,194,0,0,172,194,0,0,178,194,0,0,184,194,0,0,194,194,0,0,186,194,0,0,200,194,0,0,206,194,0,0,214,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,174,194,0,0,166,194,0,0,160,194,0,0,150,194,0,0,138,194,0,0,112,194,0,0,132,194,0,0,132,194,0,0,136,194,0,0,140,194,0,0,148,194,0,0,156,194,0,0,158,194,0,0,162,194,0,0,162,194,0,0,166,194,0,0,168,194,0,0,174,194,0,0,186,194,0,0,192,194,0,0,198,194,0,0,206,194,0,0,214,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,178,194,0,0,170,194,0,0,164,194,0,0,156,194,0,0,142,194,0,0,120,194,0,0,92,194,0,0,104,194,0,0,104,194,0,0,88,194,0,0,88,194,0,0,92,194,0,0,108,194,0,0,116,194,0,0,120,194,0,0,140,194,0,0,132,194,0,0,132,194,0,0,134,194,0,0,140,194,0,0,144,194,0,0,150,194,0,0,156,194,0,0,168,194,0,0,168,194,0,0,168,194,0,0,176,194,0,0,182,194,0,0,180,194,0,0,190,194,0,0,196,194,0,0,204,194,0,0,206,194,0,0,212,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,188,194,0,0,180,194,0,0,174,194,0,0,164,194,0,0,158,194,0,0,146,194,0,0,134,194,0,0,104,194,0,0,60,194,0,0,72,194,0,0,52,194,0,0,36,194,0,0,52,194,0,0,64,194,0,0,48,194,0,0,48,194,0,0,68,194,0,0,88,194,0,0,76,194,0,0,64,194,0,0,60,194,0,0,68,194,0,0,72,194,0,0,76,194,0,0,100,194,0,0,104,194,0,0,112,194,0,0,124,194,0,0,138,194,0,0,140,194,0,0,138,194,0,0,142,194,0,0,148,194,0,0,156,194,0,0,164,194,0,0,180,194,0,0,190,194,0,0,202,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,202,194,0,0,194,194,0,0,186,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,154,194,0,0,144,194,0,0,130,194,0,0,96,194,0,0,64,194,0,0,20,194,0,0,32,194,0,0,16,194,0,0,8,194,0,0,32,194,0,0,72,194,0,0,60,194,0,0,24,194,0,0,36,194,0,0,60,194,0,0,24,194,0,0,12,194,0,0,28,194,0,0,24,194,0,0,44,194,0,0,32,194,0,0,52,194,0,0,72,194,0,0,52,194,0,0,48,194,0,0,60,194,0,0,72,194,0,0,92,194,0,0,64,194,0,0,64,194,0,0,80,194,0,0,132,194,0,0,140,194,0,0,152,194,0,0,164,194,0,0,180,194,0,0,194,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,172,194,0,0,158,194,0,0,152,194,0,0,166,194,0,0,162,194,0,0,170,194,0,0,174,194,0,0,178,194,0,0,186,194,0,0,196,194,0,0,204,194,0,0,214,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,172,194,0,0,158,194,0,0,142,194,0,0,154,194,0,0,148,194,0,0,154,194,0,0,158,194,0,0,162,194,0,0,168,194,0,0,170,194,0,0,180,194,0,0,184,194,0,0,186,194,0,0,184,194,0,0,196,194,0,0,202,194,0,0,216,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,174,194,0,0,156,194,0,0,136,194,0,0,130,194,0,0,132,194,0,0,120,194,0,0,130,194,0,0,134,194,0,0,140,194,0,0,146,194,0,0,150,194,0,0,156,194,0,0,164,194,0,0,164,194,0,0,166,194,0,0,168,194,0,0,182,194,0,0,186,194,0,0,196,194,0,0,204,194,0,0,212,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,164,194,0,0,148,194,0,0,120,194,0,0,100,194,0,0,104,194,0,0,96,194,0,0,76,194,0,0,80,194,0,0,80,194,0,0,88,194,0,0,88,194,0,0,104,194,0,0,132,194,0,0,108,194,0,0,112,194,0,0,124,194,0,0,132,194,0,0,138,194,0,0,146,194,0,0,158,194,0,0,166,194,0,0,168,194,0,0,160,194,0,0,162,194,0,0,162,194,0,0,164,194,0,0,176,194,0,0,184,194,0,0,196,194,0,0,210,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,204,194,0,0,194,194,0,0,184,194,0,0,168,194,0,0,158,194,0,0,138,194,0,0,100,194,0,0,60,194,0,0,80,194,0,0,60,194,0,0,48,194,0,0,52,194,0,0,72,194,0,0,80,194,0,0,40,194,0,0,40,194,0,0,84,194,0,0,44,194,0,0,44,194,0,0,64,194,0,0,76,194,0,0,96,194,0,0,92,194,0,0,80,194,0,0,100,194,0,0,108,194,0,0,116,194,0,0,120,194,0,0,134,194,0,0,142,194,0,0,156,194,0,0,166,194,0,0,172,194,0,0,188,194,0,0,196,194,0,0,206,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,168,194,0,0,156,194,0,0,140,194,0,0,116,194,0,0,76,194,0,0,36,194,0,0,32,194,0,0,24,194,0,0,32,194,0,0,56,194,0,0,80,194,0,0,76,194,0,0,36,194,0,0,32,194,0,0,56,194,0,0,32,194,0,0,24,194,0,0,24,194,0,0,36,194,0,0,56,194,0,0,36,194,0,0,56,194,0,0,60,194,0,0,44,194,0,0,44,194,0,0,52,194,0,0,36,194,0,0,52,194,0,0,96,194,0,0,134,194,0,0,136,194,0,0,166,194,0,0,174,194,0,0,180,194,0,0,190,194,0,0,204,194,0,0,214,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,218,194,0,0,210,194,0,0,202,194,0,0,192,194,0,0,182,194,0,0,168,194,0,0,154,194,0,0,164,194,0,0,164,194,0,0,170,194,0,0,178,194,0,0,188,194,0,0,200,194,0,0,212,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,206,194,0,0,196,194,0,0,184,194,0,0,170,194,0,0,160,194,0,0,142,194,0,0,150,194,0,0,144,194,0,0,152,194,0,0,160,194,0,0,168,194,0,0,172,194,0,0,178,194,0,0,186,194,0,0,200,194,0,0,214,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,208,194,0,0,202,194,0,0,194,194,0,0,184,194,0,0,176,194,0,0,168,194,0,0,160,194,0,0,128,194,0,0,132,194,0,0,124,194,0,0,128,194,0,0,132,194,0,0,138,194,0,0,146,194,0,0,154,194,0,0,166,194,0,0,166,194,0,0,172,194,0,0,182,194,0,0,196,194,0,0,208,194,0,0,222,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,208,194,0,0,202,194,0,0,194,194,0,0,184,194,0,0,180,194,0,0,168,194,0,0,148,194,0,0,100,194,0,0,104,194,0,0,80,194,0,0,92,194,0,0,88,194,0,0,72,194,0,0,80,194,0,0,72,194,0,0,80,194,0,0,124,194,0,0,120,194,0,0,138,194,0,0,152,194,0,0,154,194,0,0,156,194,0,0,156,194,0,0,158,194,0,0,164,194,0,0,176,194,0,0,188,194,0,0,200,194,0,0,212,194,0,0,222,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,204,194,0,0,196,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,166,194,0,0,156,194,0,0,140,194,0,0,72,194,0,0,72,194,0,0,36,194,0,0,48,194,0,0,68,194,0,0,60,194,0,0,72,194,0,0,72,194,0,0,48,194,0,0,92,194,0,0,56,194,0,0,60,194,0,0,64,194,0,0,64,194,0,0,88,194,0,0,68,194,0,0,68,194,0,0,104,194,0,0,120,194,0,0,142,194,0,0,162,194,0,0,174,194,0,0,184,194,0,0,194,194,0,0,204,194,0,0,216,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,204,194,0,0,196,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,166,194,0,0,156,194,0,0,140,194,0,0,52,194,0,0,44,194,0,0,36,194,0,0,60,194,0,0,72,194,0,0,76,194,0,0,72,194,0,0,68,194,0,0,52,194,0,0,60,194,0,0,36,194,0,0,48,194,0,0,36,194,0,0,28,194,0,0,44,194,0,0,24,194,0,0,20,194,0,0,32,194,0,0,36,194,0,0,48,194,0,0,72,194,0,0,104,194,0,0,130,194,0,0,146,194,0,0,158,194,0,0,170,194,0,0,184,194,0,0,194,194,0,0,202,194,0,0,210,194,0,0,218,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,200,194,0,0,190,194,0,0,174,194,0,0,162,194,0,0,170,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,214,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,202,194,0,0,190,194,0,0,176,194,0,0,166,194,0,0,152,194,0,0,146,194,0,0,144,194,0,0,158,194,0,0,168,194,0,0,180,194,0,0,190,194,0,0,200,194,0,0,210,194,0,0,220,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,208,194,0,0,196,194,0,0,184,194,0,0,174,194,0,0,162,194,0,0,140,194,0,0,130,194,0,0,120,194,0,0,134,194,0,0,142,194,0,0,148,194,0,0,160,194,0,0,170,194,0,0,182,194,0,0,190,194,0,0,198,194,0,0,206,194,0,0,216,194,0,0,222,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,206,194,0,0,194,194,0,0,180,194,0,0,170,194,0,0,152,194,0,0,112,194,0,0,96,194,0,0,88,194,0,0,112,194,0,0,120,194,0,0,116,194,0,0,96,194,0,0,124,194,0,0,130,194,0,0,146,194,0,0,148,194,0,0,154,194,0,0,150,194,0,0,156,194,0,0,162,194,0,0,172,194,0,0,174,194,0,0,176,194,0,0,182,194,0,0,188,194,0,0,196,194,0,0,206,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,194,194,0,0,184,194,0,0,172,194,0,0,162,194,0,0,158,194,0,0,140,194,0,0,100,194,0,0,76,194,0,0,60,194,0,0,76,194,0,0,104,194,0,0,112,194,0,0,96,194,0,0,84,194,0,0,72,194,0,0,104,194,0,0,80,194,0,0,72,194,0,0,72,194,0,0,84,194,0,0,92,194,0,0,128,194,0,0,138,194,0,0,142,194,0,0,170,194,0,0,164,194,0,0,156,194,0,0,162,194,0,0,170,194,0,0,190,194,0,0,204,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,194,194,0,0,184,194,0,0,170,194,0,0,166,194,0,0,158,194,0,0,144,194,0,0,68,194,0,0,32,194,0,0,44,194,0,0,44,194,0,0,88,194,0,0,96,194,0,0,76,194,0,0,72,194,0,0,32,194,0,0,44,194,0,0,24,194,0,0,16,194,0,0,12,194,0,0,20,194,0,0,24,194,0,0,20,194,0,0,48,194,0,0,88,194,0,0,112,194,0,0,100,194,0,0,112,194,0,0,140,194,0,0,150,194,0,0,168,194,0,0,184,194,0,0,206,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,204,194,0,0,190,194,0,0,178,194,0,0,164,194,0,0,166,194,0,0,168,194,0,0,180,194,0,0,184,194,0,0,198,194,0,0,214,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,202,194,0,0,190,194,0,0,178,194,0,0,166,194,0,0,144,194,0,0,148,194,0,0,156,194,0,0,170,194,0,0,176,194,0,0,176,194,0,0,180,194,0,0,184,194,0,0,196,194,0,0,210,194,0,0,222,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,218,194,0,0,206,194,0,0,194,194,0,0,186,194,0,0,174,194,0,0,162,194,0,0,140,194,0,0,140,194,0,0,134,194,0,0,150,194,0,0,146,194,0,0,152,194,0,0,158,194,0,0,162,194,0,0,166,194,0,0,176,194,0,0,178,194,0,0,194,194,0,0,206,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,200,194,0,0,188,194,0,0,176,194,0,0,166,194,0,0,150,194,0,0,124,194,0,0,108,194,0,0,108,194,0,0,124,194,0,0,132,194,0,0,112,194,0,0,120,194,0,0,134,194,0,0,134,194,0,0,154,194,0,0,152,194,0,0,162,194,0,0,176,194,0,0,172,194,0,0,184,194,0,0,192,194,0,0,204,194,0,0,218,194,0,0,232,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,196,194,0,0,184,194,0,0,172,194,0,0,162,194,0,0,146,194,0,0,96,194,0,0,80,194,0,0,60,194,0,0,92,194,0,0,112,194,0,0,104,194,0,0,80,194,0,0,76,194,0,0,52,194,0,0,68,194,0,0,72,194,0,0,84,194,0,0,88,194,0,0,116,194,0,0,142,194,0,0,140,194,0,0,138,194,0,0,156,194,0,0,158,194,0,0,174,194,0,0,180,194,0,0,192,194,0,0,208,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,206,194,0,0,192,194,0,0,180,194,0,0,172,194,0,0,156,194,0,0,140,194,0,0,76,194,0,0,40,194,0,0,60,194,0,0,64,194,0,0,92,194,0,0,88,194,0,0,88,194,0,0,84,194,0,0,40,194,0,0,12,194,0,0,224,193,0,0,4,194,0,0,24,194,0,0,20,194,0,0,48,194,0,0,60,194,0,0,68,194,0,0,88,194,0,0,124,194,0,0,136,194,0,0,156,194,0,0,164,194,0,0,178,194,0,0,188,194,0,0,198,194,0,0,208,194,0,0,218,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,180,194,0,0,158,194,0,0,170,194,0,0,162,194,0,0,164,194,0,0,164,194,0,0,178,194,0,0,188,194,0,0,198,194,0,0,206,194,0,0,218,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,194,194,0,0,170,194,0,0,144,194,0,0,148,194,0,0,140,194,0,0,140,194,0,0,140,194,0,0,152,194,0,0,170,194,0,0,182,194,0,0,186,194,0,0,194,194,0,0,206,194,0,0,218,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,224,194,0,0,186,194,0,0,162,194,0,0,136,194,0,0,120,194,0,0,112,194,0,0,112,194,0,0,100,194,0,0,124,194,0,0,140,194,0,0,154,194,0,0,164,194,0,0,180,194,0,0,186,194,0,0,196,194,0,0,208,194,0,0,218,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,226,194,0,0,200,194,0,0,186,194,0,0,168,194,0,0,124,194,0,0,104,194,0,0,64,194,0,0,84,194,0,0,88,194,0,0,80,194,0,0,80,194,0,0,100,194,0,0,128,194,0,0,132,194,0,0,152,194,0,0,166,194,0,0,162,194,0,0,170,194,0,0,170,194,0,0,180,194,0,0,190,194,0,0,196,194,0,0,202,194,0,0,206,194,0,0,212,194,0,0,216,194,0,0,222,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,190,194,0,0,172,194,0,0,148,194,0,0,84,194,0,0,72,194,0,0,24,194,0,0,44,194,0,0,68,194,0,0,44,194,0,0,40,194,0,0,28,194,0,0,28,194,0,0,56,194,0,0,80,194,0,0,100,194,0,0,96,194,0,0,144,194,0,0,138,194,0,0,148,194,0,0,162,194,0,0,174,194,0,0,184,194,0,0,188,194,0,0,194,194,0,0,198,194,0,0,204,194,0,0,210,194,0,0,216,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,198,194,0,0,180,194,0,0,152,194,0,0,132,194,0,0,52,194,0,0,44,194,0,0,36,194,0,0,48,194,0,0,60,194,0,0,44,194,0,0,60,194,0,0,32,194,0,0,240,193,0,0,248,193,0,0,248,193,0,0,28,194,0,0,4,194,0,0,32,194,0,0,36,194,0,0,44,194,0,0,84,194,0,0,108,194,0,0,140,194,0,0,146,194,0,0,154,194,0,0,158,194,0,0,164,194,0,0,168,194,0,0,174,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,182,194,0,0,152,194,0,0,150,194,0,0,170,194,0,0,186,194,0,0,196,194,0,0,208,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,182,194,0,0,140,194,0,0,140,194,0,0,150,194,0,0,172,194,0,0,178,194,0,0,188,194,0,0,196,194,0,0,202,194,0,0,212,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,190,194,0,0,160,194,0,0,112,194,0,0,130,194,0,0,128,194,0,0,148,194,0,0,166,194,0,0,176,194,0,0,182,194,0,0,190,194,0,0,198,194,0,0,206,194,0,0,214,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,190,194,0,0,160,194,0,0,104,194,0,0,92,194,0,0,68,194,0,0,132,194,0,0,136,194,0,0,142,194,0,0,156,194,0,0,156,194,0,0,160,194,0,0,176,194,0,0,170,194,0,0,178,194,0,0,194,194,0,0,200,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,190,194,0,0,160,194,0,0,84,194,0,0,80,194,0,0,36,194,0,0,108,194,0,0,108,194,0,0,68,194,0,0,104,194,0,0,96,194,0,0,124,194,0,0,172,194,0,0,158,194,0,0,180,194,0,0,186,194,0,0,196,194,0,0,206,194,0,0,214,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,194,194,0,0,182,194,0,0,146,194,0,0,52,194,0,0,32,194,0,0,4,194,0,0,84,194,0,0,116,194,0,0,68,194,0,0,88,194,0,0,72,194,0,0,72,194,0,0,112,194,0,0,80,194,0,0,134,194,0,0,148,194,0,0,162,194,0,0,184,194,0,0,192,194,0,0,200,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,226,194,0,0,212,194,0,0,198,194,0,0,184,194,0,0,154,194,0,0,160,194,0,0,176,194,0,0,194,194,0,0,212,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196],"i8",L3,x.GLOBAL_BASE+10240),d3([0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,232,194,0,0,218,194,0,0,204,194,0,0,190,194,0,0,178,194,0,0,148,194,0,0,144,194,0,0,176,194,0,0,174,194,0,0,190,194,0,0,204,194,0,0,218,194,0,0,232,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,232,194,0,0,218,194,0,0,204,194,0,0,190,194,0,0,178,194,0,0,150,194,0,0,132,194,0,0,148,194,0,0,154,194,0,0,156,194,0,0,172,194,0,0,174,194,0,0,180,194,0,0,192,194,0,0,210,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,230,194,0,0,216,194,0,0,202,194,0,0,188,194,0,0,176,194,0,0,132,194,0,0,96,194,0,0,116,194,0,0,140,194,0,0,130,194,0,0,156,194,0,0,144,194,0,0,166,194,0,0,168,194,0,0,186,194,0,0,196,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,190,194,0,0,178,194,0,0,164,194,0,0,100,194,0,0,80,194,0,0,80,194,0,0,108,194,0,0,96,194,0,0,108,194,0,0,104,194,0,0,138,194,0,0,134,194,0,0,176,194,0,0,164,194,0,0,164,194,0,0,178,194,0,0,188,194,0,0,200,194,0,0,216,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,202,194,0,0,192,194,0,0,180,194,0,0,166,194,0,0,154,194,0,0,88,194,0,0,44,194,0,0,24,194,0,0,72,194,0,0,64,194,0,0,80,194,0,0,64,194,0,0,40,194,0,0,40,194,0,0,76,194,0,0,80,194,0,0,84,194,0,0,108,194,0,0,130,194,0,0,142,194,0,0,156,194,0,0,170,194,0,0,190,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,240,194,0,0,210,194,0,0,172,194,0,0,136,194,0,0,156,194,0,0,158,194,0,0,180,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,240,194,0,0,210,194,0,0,172,194,0,0,132,194,0,0,146,194,0,0,154,194,0,0,176,194,0,0,192,194,0,0,210,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,240,194,0,0,210,194,0,0,184,194,0,0,160,194,0,0,116,194,0,0,128,194,0,0,136,194,0,0,160,194,0,0,174,194,0,0,184,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,240,194,0,0,208,194,0,0,182,194,0,0,158,194,0,0,80,194,0,0,112,194,0,0,88,194,0,0,128,194,0,0,138,194,0,0,154,194,0,0,160,194,0,0,164,194,0,0,168,194,0,0,170,194,0,0,174,194,0,0,176,194,0,0,180,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,236,194,0,0,200,194,0,0,174,194,0,0,154,194,0,0,68,194,0,0,72,194,0,0,48,194,0,0,104,194,0,0,116,194,0,0,116,194,0,0,134,194,0,0,130,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,130,194,0,0,136,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,230,194,0,0,196,194,0,0,168,194,0,0,120,194,0,0,68,194,0,0,48,194,0,0,24,194,0,0,56,194,0,0,68,194,0,0,68,194,0,0,56,194,0,0,28,194,0,0,20,194,0,0,28,194,0,0,32,194,0,0,40,194,0,0,44,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,176,194,0,0,148,194,0,0,154,194,0,0,164,194,0,0,164,194,0,0,170,194,0,0,180,194,0,0,188,194,0,0,198,194,0,0,208,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,176,194,0,0,132,194,0,0,140,194,0,0,162,194,0,0,160,194,0,0,162,194,0,0,168,194,0,0,176,194,0,0,182,194,0,0,186,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,176,194,0,0,116,194,0,0,124,194,0,0,140,194,0,0,142,194,0,0,148,194,0,0,154,194,0,0,160,194,0,0,166,194,0,0,170,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,172,194,0,0,120,194,0,0,124,194,0,0,120,194,0,0,120,194,0,0,104,194,0,0,80,194,0,0,72,194,0,0,72,194,0,0,80,194,0,0,88,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,236,194,0,0,216,194,0,0,168,194,0,0,84,194,0,0,72,194,0,0,72,194,0,0,72,194,0,0,92,194,0,0,60,194,0,0,52,194,0,0,32,194,0,0,32,194,0,0,32,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,236,194,0,0,200,194,0,0,146,194,0,0,44,194,0,0,20,194,0,0,40,194,0,0,44,194,0,0,84,194,0,0,24,194,0,0,20,194,0,0,12,194,0,0,12,194,0,0,24,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,182,194,0,0,168,194,0,0,148,194,0,0,160,194,0,0,160,194,0,0,160,194,0,0,160,194,0,0,160,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,182,194,0,0,168,194,0,0,148,194,0,0,136,194,0,0,136,194,0,0,136,194,0,0,136,194,0,0,136,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,172,194,0,0,156,194,0,0,140,194,0,0,112,194,0,0,52,194,0,0,240,193,0,0,168,193,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,174,194,0,0,156,194,0,0,134,194,0,0,64,194,0,0,24,194,0,0,232,193,0,0,168,193,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,172,194,0,0,138,194,0,0,96,194,0,0,52,194,0,0,12,194,0,0,4,194,0,0,232,193,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,166,194,0,0,142,194,0,0,64,194,0,0,216,193,0,0,24,194,0,0,20,194,0,0,8,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,0,0,144,4,0,0,72,100,0,0,104,100,0,0,136,100,0,0,0,0,0,0,224,4,0,0,0,0,0,0,0,0,0,0,6,0,0,0,7,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,6,0,0,0,7,0,0,0,4,0,0,0,5,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,6,0,0,0,7,0,0,0,4,0,0,0,5,0,0,0,4,0,0,0,2,0,0,0,5,0,0,0,4,0,0,0,2,0,0,0,3,0,0,0,5,0,0,0,255,255,255,255,0,0,12,195,0,0,12,195,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,194,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,128,0,0,0,63,0,0,0,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,210,66,0,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,40,103,0,0,200,103,0,0,104,104,0,0,8,105,0,0,168,105,0,0,72,106,0,0,232,106,0,0,136,107,0,0,40,108,0,0,200,108,0,0,104,109,0,0,8,110,0,0,168,110,0,0,72,111,0,0,232,111,0,0,136,112,0,0,40,113,0,0,0,0,0,0,11,0,0,0,48,240,7,0,64,164,1,0,2,0,0,0,64,156,0,0,80,195,0,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,200,160,2,0,0,0,0,0,11,0,0,0,160,87,5,0,64,164,1,0,6,0,0,0,64,156,0,0,112,17,1,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,3,0,0,0,120,217,1,0,0,88,5,0,0,0,0,0,11,0,0,0,64,87,5,0,64,164,1,0,255,255,255,255,64,156,0,0,80,195,0,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,136,217,1,0,0,0,0,0,11,0,0,0,224,86,5,0,64,164,1,0,2,0,0,0,144,101,0,0,64,156,0,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,128,86,5,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,200,160,2,0,0,0,0,0,11,0,0,0,32,86,5,0,64,164,1,0,255,255,255,255,144,101,0,0,64,156,0,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,128,86,5,0,24,120,0,0,24,217,1,0,0,0,0,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,136,217,1,0,0,0,0,0,3,0,0,0,0,86,5,0,16,172,4,0,2,0,0,0,56,74,0,0,144,101,0,0,48,172,4,0,64,172,4,0,80,172,4,0,136,114,0,0,184,114,0,0,160,172,4,0,160,172,4,0,160,172,4,0,176,173,4,0,224,173,4,0,16,177,4,0,16,177,4,0,64,180,4,0,56,118,0,0,104,118,0,0,112,183,4,0,112,183,4,0,144,183,4,0,144,183,4,0,160,183,4,0,160,183,4,0,176,183,4,0,208,183,4,0,224,183,4,0,224,85,5,0,24,120,0,0,16,184,4,0,48,184,4,0,160,132,0,0,208,132,0,0,2,0,0,0,240,187,4,0,8,240,4,0,0,0,0,0,3,0,0,0,192,85,5,0,16,172,4,0,255,255,255,255,56,74,0,0,144,101,0,0,48,172,4,0,64,172,4,0,80,172,4,0,136,114,0,0,184,114,0,0,160,172,4,0,160,172,4,0,160,172,4,0,176,173,4,0,224,173,4,0,16,177,4,0,16,177,4,0,64,180,4,0,56,118,0,0,104,118,0,0,112,183,4,0,112,183,4,0,144,183,4,0,144,183,4,0,160,183,4,0,160,183,4,0,176,183,4,0,208,183,4,0,224,183,4,0,224,85,5,0,24,120,0,0,16,184,4,0,48,184,4,0,160,132,0,0,208,132,0,0,2,0,0,0,240,187,4,0,248,187,4,0,0,0,0,0,3,0,0,0,232,239,4,0,16,172,4,0,2,0,0,0,152,58,0,0,56,74,0,0,48,172,4,0,64,172,4,0,80,172,4,0,136,114,0,0,184,114,0,0,160,172,4,0,160,172,4,0,160,172,4,0,176,173,4,0,224,173,4,0,16,177,4,0,16,177,4,0,64,180,4,0,56,118,0,0,104,118,0,0,112,183,4,0,112,183,4,0,144,183,4,0,144,183,4,0,160,183,4,0,160,183,4,0,176,183,4,0,208,183,4,0,224,183,4,0,240,183,4,0,24,120,0,0,16,184,4,0,48,184,4,0,160,132,0,0,208,132,0,0,2,0,0,0,240,187,4,0,8,240,4,0,0,0,0,0,3,0,0,0,240,171,4,0,16,172,4,0,255,255,255,255,152,58,0,0,56,74,0,0,48,172,4,0,64,172,4,0,80,172,4,0,136,114,0,0,184,114,0,0,160,172,4,0,160,172,4,0,160,172,4,0,176,173,4,0,224,173,4,0,16,177,4,0,16,177,4,0,64,180,4,0,56,118,0,0,104,118,0,0,112,183,4,0,112,183,4,0,144,183,4,0,144,183,4,0,160,183,4,0,160,183,4,0,176,183,4,0,208,183,4,0,224,183,4,0,240,183,4,0,24,120,0,0,16,184,4,0,48,184,4,0,160,132,0,0,208,132,0,0,2,0,0,0,240,187,4,0,248,187,4,0,0,0,0,0,2,0,0,0,216,171,4,0,0,168,4,0,2,0,0,0,40,35,0,0,152,58,0,0,24,168,4,0,24,168,4,0,32,168,4,0,136,114,0,0,184,114,0,0,96,168,4,0,0,0,0,0,96,168,4,0,184,115,0,0,48,169,4,0,48,169,4,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,152,171,4,0,224,119,0,0,240,119,0,0,176,171,4,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,200,171,4,0,184,47,1,0,0,0,0,0,2,0,0,0,232,167,4,0,0,168,4,0,255,255,255,255,40,35,0,0,152,58,0,0,24,168,4,0,24,168,4,0,32,168,4,0,136,114,0,0,184,114,0,0,96,168,4,0,0,0,0,0,96,168,4,0,184,115,0,0,48,169,4,0,48,169,4,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,152,171,4,0,224,119,0,0,240,119,0,0,176,171,4,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,200,171,4,0,248,180,0,0,0,0,0,0,2,0,0,0,208,167,4,0,40,114,0,0,2,0,0,0,64,31,0,0,40,35,0,0,64,114,0,0,64,114,0,0,72,114,0,0,136,114,0,0,184,114,0,0,232,114,0,0,0,0,0,0,232,114,0,0,184,115,0,0,208,115,0,0,208,115,0,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,208,119,0,0,224,119,0,0,240,119,0,0,0,120,0,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,240,180,0,0,184,47,1,0,0,0,0,0,2,0,0,0,184,167,4,0,40,114,0,0,255,255,255,255,64,31,0,0,40,35,0,0,64,114,0,0,64,114,0,0,72,114,0,0,136,114,0,0,184,114,0,0,232,114,0,0,0,0,0,0,232,114,0,0,184,115,0,0,208,115,0,0,208,115,0,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,208,119,0,0,224,119,0,0,240,119,0,0,0,120,0,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,240,180,0,0,248,180,0,0,0,0,0,0,11,0,0,0,200,113,0,0,64,164,1,0,2,0,0,0,80,195,0,0,64,13,3,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,200,160,2,0,0,0,0,0,11,0,0,0,200,113,0,0,64,164,1,0,255,255,255,255,80,195,0,0,64,13,3,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,0,0,0,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,136,217,1,0,0,0,0,0,2,0,0,0,200,113,0,0,40,114,0,0,2,0,0,0,0,0,0,0,64,31,0,0,64,114,0,0,64,114,0,0,72,114,0,0,136,114,0,0,184,114,0,0,232,114,0,0,0,0,0,0,232,114,0,0,184,115,0,0,208,115,0,0,208,115,0,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,208,119,0,0,224,119,0,0,240,119,0,0,0,120,0,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,240,180,0,0,184,47,1,0,0,0,0,0,2,0,0,0,200,113,0,0,40,114,0,0,255,255,255,255,0,0,0,0,64,31,0,0,64,114,0,0,64,114,0,0,72,114,0,0,136,114,0,0,184,114,0,0,232,114,0,0,0,0,0,0,232,114,0,0,184,115,0,0,208,115,0,0,208,115,0,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,208,119,0,0,224,119,0,0,240,119,0,0,0,120,0,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,240,180,0,0,248,180,0,0,0,0,0,0,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,154,153,153,153,153,153,185,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,2,0,0,0,2,0,0,32,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,30,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,242,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,90,0,0,0,90,0,0,0,95,0,0,0,95,0,0,0,95,0,0,0,95,0,0,0,105,0,0,0,105,0,0,0,105,0,0,0,105,0,0,0,105,0,0,0,105,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,232,255,255,255,226,255,255,255,216,255,255,255,216,255,255,255,211,255,255,255,211,255,255,255,211,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,0,0,0,0,10,0,0,0,10,0,0,0,255,255,255,255,10,0,0,0,10,0,0,0,255,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,226,255,255,255,216,255,255,255,216,255,255,255,211,255,255,255,211,255,255,255,211,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,9,0,0,0,9,0,0,0,10,0,0,0,10,0,0,0,11,0,0,0,11,0,0,0,12,0,0,0,12,0,0,0,13,0,0,0,13,0,0,0,14,0,0,0,14,0,0,0,15,0,0,0,15,0,0,0,16,0,0,0,16,0,0,0,17,0,0,0,17,0,0,0,17,0,0,0,18,0,0,0,18,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,64,0,0,0,64,0,0,0,8,0,0,0,8,0,0,0,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,156,255,255,255,156,255,255,255,151,255,255,255,0,0,0,0,126,255,255,255,126,255,255,255,116,255,255,255,0,0,0,0,0,0,0,0,0,0,8,64],"i8",L3,x.GLOBAL_BASE+20480),d3([0,0,0,0,0,0,16,64,0,0,0,0,0,0,16,64,8,0,0,0,0,0,160,65,0,0,96,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,112,194,0,0,240,193,0,0,32,194,0,0,32,194,0,0,32,194,0,0,32,194,0,0,32,194,0,0,0,64,0,0,150,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,96,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,194,0,0,240,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,0,64,0,0,160,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,64,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,160,193,0,0,160,193,0,0,112,193,0,0,112,193,0,0,112,193,0,0,112,193,0,0,112,193,0,0,0,0,0,0,160,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,32,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,160,193,0,0,112,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,0,0,0,0,160,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,32,65,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,112,193,0,0,112,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,0,0,0,0,170,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,8,64,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,3,1,0,24,3,1,0,48,3,1,0,80,3,1,0,112,3,1,0,160,3,1,0,208,3,1,0,232,3,1,0,40,4,1,0,104,4,1,0,152,4,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,128,0,0,0,33,0,0,0,8,0,0,0,16,0,0,0,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,66,0,0,0,16,0,0,0,32,0,0,0,140,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,0,1,0,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,5,0,0,0,6,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,128,0,0,0,14,0,0,0,4,0,0,0,58,0,0,0,2,0,0,0,8,0,0,0,28,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,128,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,5,0,0,0,6,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,28,0,0,0,8,0,0,0,116,0,0,0,4,0,0,0,16,0,0,0,56,0,0,0,180,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,0,1,0,0,4,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,6,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,128,0,0,0,8,0,0,0,33,0,0,0,4,0,0,0,16,0,0,0,70,0,0,0,2,0,0,0,6,0,0,0,12,0,0,0,23,0,0,0,46,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,128,0,0,0,6,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,6,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,128,0,0,0,12,0,0,0,46,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,23,0,0,0,33,0,0,0,70,0,0,0,2,0,0,0,6,0,0,0,10,0,0,0,14,0,0,0,19,0,0,0,28,0,0,0,39,0,0,0,58,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2],"i8",L3,x.GLOBAL_BASE+30720),d3([1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,66,0,0,0,16,0,0,0,32,0,0,0,140,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,0,1,0,0,8,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,3,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,12,0,0,0,13,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,4,0,0,93,0,0,0,23,0,0,0,116,1,0,0,6,0,0,0,46,0,0,0,186,0,0,0,238,2,0,0,14,0,0,0,33,0,0,0,65,0,0,0,130,0,0,0,4,1,0,0,44,2,0,0,3,0,0,0,10,0,0,0,18,0,0,0,28,0,0,0,39,0,0,0,55,0,0,0,79,0,0,0,111,0,0,0,158,0,0,0,220,0,0,0,56,1,0,0,208,1,0,0,138,2,0,0,82,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,64,64,0,0,144,65,0,4,0,0,8,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,3,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,12,0,0,0,13,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,8,0,0,186,0,0,0,46,0,0,0,232,2,0,0,12,0,0,0,92,0,0,0,116,1,0,0,220,5,0,0,28,0,0,0,66,0,0,0,130,0,0,0,4,1,0,0,8,2,0,0,88,4,0,0,6,0,0,0,20,0,0,0,36,0,0,0,56,0,0,0,78,0,0,0,110,0,0,0,158,0,0,0,222,0,0,0,60,1,0,0,184,1,0,0,112,2,0,0,160,3,0,0,20,5,0,0,164,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,64,64,0,0,144,65,0,8,0,0,6,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,6,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,2,0,0,46,0,0,0,186,0,0,0,16,0,0,0,33,0,0,0,65,0,0,0,93,0,0,0,130,0,0,0,22,1,0,0,7,0,0,0,23,0,0,0,39,0,0,0,55,0,0,0,79,0,0,0,110,0,0,0,156,0,0,0,232,0,0,0,104,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,10,0,0,0,248,2,1,0,0,0,0,0,8,181,0,0,24,206,0,0,8,181,0,0,56,206,0,0,1],"i8",L3,x.GLOBAL_BASE+41032),d3([1],"i8",L3,x.GLOBAL_BASE+49544),d3([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],"i8",L3,x.GLOBAL_BASE+50572),d3([1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,8,245,0,0,8,245,0,0,48,245,0,0,48,245,0,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,112,217,0,0,112,217,0,0,152,217,0,0,152,217,0,0,0,0,0,0,255,255,255,255,255,255,255,255,10,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+52752),d3([1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,16,0,0,0,60,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,30,0,0,0,255,255,255,255,50,0,0,0,255,255,255,255,80,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,136,233,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,168,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,219,0,0,0,0,0,0,72,219,0,0,112,219,0,0,0,0,0,0,0,0,0,0,152,219,0,0,192,219,0,0,0,0,0,0,0,0,0,0,232,219,0,0,16,220,0,0,56,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,81,0,0,0,32,233,0,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,120,233,0,0,0,0,0,0,4,0,0,0,81,0,0,0,184,232,0,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,16,233,0,0,0,0,0,0,4,0,0,0,113,2,0,0,40,230,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,232,0,0,0,0,0,0,4,0,0,0,113,2,0,0,152,227,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,230,0,0,0,0,0,0,2,0,0,0,81,0,0,0,24,227,0,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,112,227,0,0,0,0,0,0,2,0,0,0,81,0,0,0,152,226,0,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,240,226,0,0,0,0,0,0,4,0,0,0,81,0,0,0,48,226,0,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,136,226,0,0,0,0,0,0,2,0,0,0,121,0,0,0,128,225,0,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,0,226,0,0,0,0,0,0,2,0,0,0,121,0,0,0,208,224,0,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,80,225,0,0,0,0,0,0,2,0,0,0,121,0,0,0,32,224,0,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,160,224,0,0,0,0,0,0,2,0,0,0,225,0,0,0,248,222,0,0,1,0,0,0,0,228,91,225,0,224,255,96,4,0,0,0,0,0,0,0,224,223,0,0,0,0,0,0,2,0,0,0,225,0,0,0,208,221,0,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,184,222,0,0,0,0,0,0,2,0,0,0,33,1,0,0,96,220,0,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,136,221,0,0,0,0,0,0,2,5,4,6,6,8,8,8,8,8,9,9,9,9,9,9,9,5,6,6,7,7,8,8,9,8,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,8,9,9,9,9,9,9,9,9,9,7,7,7,8,8,9,9,9,9,9,9,9,9,9,10,10,9,7,7,7,8,8,9,9,9,9,9,9,9,9,9,9,10,10,8,8,8,9,9,9,9,10,10,10,9,10,10,10,10,10,10,8,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,7,7,9,9,7,7,8,8,10,10,11,11,4,7,7,9,9,10,10,8,8,10,10,10,11,10,11,4,7,7,9,9,10,10,8,8,10,9,11,11,11,11,7,9,9,12,12,11,12,10,10,11,10,12,11,11,11,7,9,9,11,11,13,12,9,9,11,10,11,11,12,11,9,10,10,12,12,14,14,10,10,11,12,12,11,11,11,9,10,11,11,13,14,13,10,11,11,11,12,11,12,12,7,8,8,10,9,11,10,11,12,12,11,12,14,12,13,7,8,8,9,10,10,11,12,12,12,11,12,12,12,13,9,9,9,11,11,13,12,12,12,12,11,12,12,13,12,8,10,10,11,10,11,12,12,12,12,12,12,14,12,12,9,11,11,11,12,12,12,12,13,13,12,12,13,13,12,10,11,11,12,11,12,12,12,11,12,13,12,12,12,13,11,11,12,12,12,13,12,12,11,12,13,13,12,12,13,12,11,12,12,13,13,12,13,12,13,13,13,13,14,13,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,4,4,11,11,11,11,11,11,11,11,11,11,11,11,3,11,8,11,11,11,11,11,11,11,11,11,11,11,11,3,9,9,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,5,5,6,6,7,7,7,7,8,8,5,6,6,7,7,7,7,8,8,8,8,5,6,6,7,7,7,7,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,7,8,8,8,8,8,8,9,8,9,9,8,8,8,8,8,8,8,9,9,9,9,8,8,8,8,8,8,8,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,10,11,11,4,6,6,7,7,9,9,11,11,13,12,4,6,6,7,7,9,9,11,11,12,12,6,7,7,9,9,11,11,12,12,13,13,6,7,7,9,9,11,11,12,12,13,13,8,9,9,11,11,12,12,13,13,14,14,8,9,9,11,11,12,12,13,13,14,14,9,11,11,12,12,13,13,14,14,15,15,9,11,11,12,12,13,13,14,14,15,14,11,12,12,13,13,14,14,15,15,16,16,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,4,5,5,7,7,8,8,9,9,9,9,4,5,5,7,7,8,8,9,9,9,9,6,7,7,8,8,8,8,9,9,9,9,6,7,7,8,8,8,8,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,9,9,8,10,10,8,10,10,5,9,9,7,10,10,8,10,10,4,10,10,9,12,12,9,11,11,7,12,11,10,11,13,10,13,13,7,12,12,10,13,12,10,13,13,4,10,10,9,12,12,9,12,12,7,12,12,10,13,13,10,12,13,7,11,12,10,13,13,10,13,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,6,6,7,7,9,9,4,4,5,6,6,7,7,9,9,4,4,4,6,6,7,7,9,9,6,6,6,7,7,8,8,9,9,6,6,6,7,7,8,8,9,9,7,7,7,8,8,8,9,10,10,7,7,7,8,8,9,8,10,10,9,9,9,9,9,10,10,10,10,9,9,9,9,9,10,10,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,5,8,7,8,8,10,10,4,6,6,8,8,8,8,10,10,7,8,8,9,9,9,9,11,11,7,8,8,9,9,9,9,11,11,8,8,8,9,9,10,10,12,11,8,8,8,9,9,10,10,11,11,9,10,10,11,11,11,11,13,12,9,10,10,11,11,12,12,12,13,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,9,9,6,7,7,9,9,6,7,7,9,9,9,9,9,11,11,9,9,9,11,11,6,7,7,9,9,7,7,8,9,10,7,7,8,9,10,9,9,10,10,11,9,9,10,10,12,6,7,7,9,9,7,8,7,10,9,7,8,7,10,9,9,10,9,12,11,10,10,9,12,10,9,10,10,12,11,9,10,10,12,11,9,10,10,12,12,11,11,12,12,13,11,11,12,12,13,9,9,10,12,11,9,10,10,12,12,10,10,10,12,12,11,12,11,13,12,11,12,11,13,12,6,7,7,9,9,7,8,8,10,10,7,8,7,10,9,10,10,10,12,12,10,10,10,12,11,7,8,7,10,10,7,7,9,10,11,8,9,9,11,10,10,10,11,10,12,10,10,11,12,12,7,8,8,10,10,7,9,8,11,10,8,8,9,11,11,10,11,10,12,11,10,11,11,12,12,9,10,10,12,12,9,10,10,12,12,10,11,11,13,12,11,10,12,10,14,12,12,12,13,14,9,10,10,12,12,9,11,10,12,12,10,11,11,12,12,11,12,11,14,12,12,12,12,14,14,5,7,7,9,9,7,7,7,9,10,7,8,8,10,10,10,10,10,11,11,10,10,10,12,12,7,8,8,10,10,8,9,8,11,10,7,8,9,10,11,10,10,10,11,12,10,10,11,11,13,6,7,8,10,10,8,9,9,10,10,7,9,7,11,10,10,11,10,12,12,10,11,10,12,10,9,10,10,12,12,10,11,11,13,12,9,10,10,12,12,12,12,12,14,13,11,11,12,11,14,9,10,10,11,12,10,11,11,12,13,9,10,10,12,12,12,12,12,14,13,11,12,10,14,11,9,9,10,11,12,9,10,10,12,12,9,10,10,12,12,12,12,12,14,14,11,12,12,13,12,9,10,9,12,12,9,10,11,12,13,10,11,10,13,11,12,12,13,13,14,12,12,12,13,13,9,10,10,12,12,10,11,10,13,12,10,10,11,12,13,12,13,12,14,13,12,12,12,13,14,11,12,11,14,13,10,10,11,13,13,12,12,12,14,13,12,10,14,10,15,13,14,14,14,14,11,11,12,13,14,10,12,11,13,13,12,12,12,13,15,12,13,11,15,12,13,13,14,14,14,9,10,9,12,12,9,10,10,12,12,10,10,10,12,12,11,11,12,12,13,12,12,12,14,14,9,10,10,12,12,10,11,10,13,12,10,10,11,12,13,12,12,12,14,13,12,12,13,13,14,9,10,10,12,13,10,10,11,11,12,9,11,10,13,12,12,12,12,13,14,12,13,12,14,13,11,12,11,13,13,12,13,12,14,13,10,11,12,13,13,13,13,13,14,15,12,11,14,12,14,11,11,12,12,13,12,12,12,13,14,10,12,10,14,13,13,13,13,14,15,12,14,11,15,10,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,7,7,6,7,7,9,9,6,7,7,9,9,8,10,9,11,11,9,9,9,11,11,6,8,8,10,10,8,10,10,11,11,8,9,10,11,11,10,11,11,12,12,10,11,11,12,13,6,8,8,10,10,8,10,9,11,11,8,10,9,11,11,10,11,11,12,12,10,11,11,12,12,9,11,11,14,13,10,12,11,14,14,10,12,11,14,13,12,13,13,15,14,12,13,13,15,14,8,11,11,13,14,10,11,12,13,15,10,11,12,14,14,12,13,13,14,15,12,13,13,14,15,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,13,11,12,12,13,14,8,10,10,12,12,9,11,12,13,14,10,12,12,13,13,12,12,13,14,14,11,13,13,15,15,7,10,10,12,12,9,12,11,14,12,10,11,12,13,14,12,13,12,14,14,12,13,13,15,16,10,12,12,15,14,11,12,13,15,15,11,13,13,15,16,14,14,15,15,16,13,14,15,17,15,9,12,12,14,15,11,13,12,15,15,11,13,13,15,15,13,14,13,15,14,13,14,14,17,0,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,14,7,10,10,12,12,10,12,12,13,13,9,11,12,12,13,11,12,13,15,15,11,12,13,14,15,8,10,10,12,12,10,12,11,13,13,10,12,11,13,13,11,13,13,15,14,12,13,12,15,13,9,12,12,14,14,11,13,13,16,15,11,12,13,16,15,13,14,15,16,16,13,13,15,15,16,10,12,12,15,14,11,13,13,14,16,11,13,13,15,16,13,15,15,16,17,13,15,14,16,15,8,11,11,14,15,10,12,12,15,15,10,12,12,15,16,14,15,15,16,17,13,14,14,16,16,9,12,12,15,15,11,13,14,15,17,11,13,13,15,16,14,15,16,19,17,13,15,15,0,17,9,12,12,15,15,11,14,13,16,15,11,13,13,15,16,15,15,15,18,17,13,15,15,17,17,11,15,14,18,16,12,14,15,17,17,12,15,15,18,18,15,15,16,15,19,14,16,16,0,0,11,14,14,16,17,12,15,14,18,17,12,15,15,18,18,15,17,15,18,16,14,16,16,18,18,7,11,11,14,14,10,12,12,15,15,10,12,13,15,15,13,14,15,16,16,14,15,15,18,18,9,12,12,15,15,11,13,13,16,15,11,12,13,16,16,14,15,15,17,16,15,16,16,17,17,9,12,12,15,15,11,13,13,15,17,11,14,13,16,15,13,15,15,17,17,15,15,15,18,17,11,14,14,17,15,12,14,15,17,18,13,13,15,17,17,14,16,16,19,18,16,15,17,17,0,11,14,14,17,17,12,15,15,18,0,12,15,14,18,16,14,17,17,19,0,16,18,15,0,16,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,5,5,6,6,5,6,6,5,7,6,6,7,8,6,7,8,5,6,6,6,8,7,6,8,7,5,6,6,7,8,8,6,7,7,6,8,7,7,7,9,8,9,9,6,7,8,7,9,7,8,9,9,5,6,6,6,7,7,7,8,8,6,8,7,8,9,9,7,7,9,6,7,8,8,9,9,7,9,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,7,9,10,7,9,9,5,8,8,7,10,9,7,9,9,5,8,8,8,10,10,8,10,10,7,10,10,9,10,12,10,12,12,7,10,10,9,12,11,10,12,12,5,8,8,8,10,10,8,10,10,7,10,10,10,12,12,9,11,12,7,10,10,10,12,12,9,12,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,13,9,15,9,16,8,10,13,7,5,8,6,9,7,10,7,10,11,11,6,7,8,8,9,9,9,12,16,8,5,8,6,8,6,9,7,10,12,11,7,7,7,6,7,7,7,11,15,7,5,8,6,7,5,7,6,9,13,13,9,9,8,6,6,5,5,9,14,8,6,8,6,6,4,5,3,5,13,9,9,11,8,10,7,8,4,5,12,11,16,17,15,17,12,13,8,8,15,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,8,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+55148),d3([1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,25,0,0,0,255,255,255,255,45,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,184,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,245,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,246,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,246,0,0,0,0,0,0,0,0,0,0,0,0,0,0,104,246,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,246,0,0,0,0,0,0,184,246,0,0,224,246,0,0,0,0,0,0,0,0,0,0,8,247,0,0,48,247,0,0,88,247,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,81,0,0,0,80,2,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,2,1,0,0,0,0,0,4,0,0,0,81,0,0,0,232,1,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,64,2,1,0,0,0,0,0,4,0,0,0,113,2,0,0,88,255,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,1,1,0,0,0,0,0,4,0,0,0,113,2,0,0,200,252,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,255,0,0,0,0,0,0,2,0,0,0,81,0,0,0,72,252,0,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,160,252,0,0,0,0,0,0,2,0,0,0,169,0,0,0,96,251,0,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,16,252,0,0,0,0,0,0,2,0,0,0,25,0,0,0,40,251,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,251,0,0,0,0,0,0,4,0,0,0,81,0,0,0,192,250,0,0,1,0,0,0,0,176,19,225,0,176,19,97,2,0,0,0,0,0,0,0,24,251,0,0,0,0,0,0,2,0,0,0,225,0,0,0,152,249,0,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,128,250,0,0,0,0,0,0,2,0,0,0,185,1,0,0,128,247,0,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,64,249,0,0,0,0,0,0,1,6,5,7,7,9,9,9,9,10,12,12,10,11,11,10,11,11,11,10,11,6,8,8,9,9,10,10,9,10,11,11,10,11,11,11,11,10,11,11,11,11,6,7,8,9,9,9,10,11,10,11,12,11,10,11,11,11,11,11,11,12,10,8,9,9,10,9,10,10,9,10,10,10,10,10,9,10,10,10,10,9,10,10,9,9,9,9,10,10,9,9,10,10,11,10,9,12,10,11,10,9,10,10,10,8,9,9,10,9,10,9,9,10,10,9,10,9,11,10,10,10,10,10,9,10,8,8,9,9,10,9,11,9,8,9,9,10,11,10,10,10,11,12,9,9,11,8,9,8,11,10,11,10,10,9,11,10,10,10,10,10,10,10,11,11,11,11,8,9,9,9,10,10,10,11,11,12,11,12,11,10,10,10,12,11,11,11,10,8,10,9,11,10,10,11,12,10,11,12,11,11,12,11,12,12,10,11,11,10,9,9,10,11,12,10,10,10,11,10,11,11,10,12,12,10,11,10,11,12,10,9,10,10,11,10,11,11,11,11,11,12,11,11,11,9,11,10,11,10,11,10,9,9,10,11,11,11,10,10,11,12,12,11,12,11,11,11,12,12,12,12,11,9,11,11,12,10,11,11,11,11,11,11,12,11,11,12,11,11,11,10,11,11,9,11,10,11,11,11,10,10,10,11,11,11,12,10,11,10,11,11,11,11,12,9,11,10,11,11,10,10,11,11,9,11,11,12,10,10,10,10,10,11,11,10,9,10,11,11,12,11,10,10,12,11,11,12,11,12,11,11,10,10,11,11,10,12,11,10,11,10,11,10,10,10,11,11,10,10,11,11,11,11,10,10,10,12,11,11,11,11,10,9,10,11,11,11,12,11,11,11,12,10,11,11,11,9,10,11,11,11,11,11,11,10,10,11,11,12,11,10,11,12,11,10,10,11,9,10,11,11,11,11,11,10,11,11,10,12,11,11,11,12,11,11,11,10,10,11,11,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,5,5,5,5,10,10,11,11,11,11,11,11,11,11,5,7,6,8,8,9,10,11,11,11,11,11,11,11,11,6,6,7,9,7,11,10,11,11,11,11,11,11,11,11,5,6,6,11,8,11,11,11,11,11,11,11,11,11,11,5,6,6,9,10,11,10,11,11,11,11,11,11,11,11,7,10,10,11,11,11,11,11,11,11,11,11,11,11,11,7,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,4,6,5,7,7,4,5,6,7,7,6,7,7,7,7,6,7,7,7,7,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,9,9,11,11,12,12,16,16,3,6,6,9,9,11,11,12,12,13,14,18,16,3,6,7,9,9,11,11,13,12,14,14,17,16,7,9,9,11,11,12,12,14,14,14,14,17,16,7,9,9,11,11,13,12,13,13,14,14,17,0,9,11,11,12,13,14,14,14,13,15,14,17,17,9,11,11,12,12,14,14,13,14,14,15,0,0,11,12,12,15,14,15,14,15,14,15,16,17,0,11,12,13,13,13,14,14,15,14,15,15,0,0,12,14,14,15,15,14,16,15,15,17,16,0,18,13,14,14,15,14,15,14,15,16,17,16,0,0,17,17,18,0,16,18,16,0,0,0,17,0,0,16,0,0,16,16,0,15,0,17,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,7,8,8,10,10,4,6,6,8,8,8,8,10,10,6,8,8,9,9,9,9,11,11,7,8,8,9,9,9,9,11,11,7,8,8,9,9,10,10,12,11,7,8,8,9,9,10,10,11,11,9,10,10,11,11,11,12,12,12,9,10,10,11,11,12,12,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,5,6,7,9,9,6,7,6,9,9,9,9,9,10,11,9,9,9,11,10,6,7,7,10,10,7,7,8,10,10,7,8,8,10,10,10,10,10,10,11,9,10,10,11,12,6,7,7,10,10,7,8,8,10,10,7,8,7,10,10,9,10,10,12,11,10,10,10,11,10,9,10,10,12,11,10,10,10,13,11,9,10,10,12,12,11,11,12,12,13,11,11,11,12,13,9,10,10,12,12,10,10,11,12,12,10,10,11,12,12,11,11,11,13,13,11,12,12,13,13,5,7,7,10,10,7,8,8,10,10,7,8,8,10,10,10,11,11,12,12,10,11,10,12,12,7,8,8,11,11,7,8,9,10,11,8,9,9,11,11,11,10,11,10,12,10,11,11,12,13,7,8,8,10,11,8,9,8,12,10,8,9,9,11,12,10,11,10,13,11,10,11,11,13,12,9,11,10,13,12,10,10,11,12,12,10,11,11,13,13,12,10,13,11,14,11,12,12,15,13,9,11,11,13,13,10,11,11,13,12,10,11,11,12,14,12,13,11,14,12,12,12,12,14,14,5,7,7,10,10,7,8,8,10,10,7,8,8,11,10,10,11,11,12,12,10,11,10,12,12,7,8,8,10,11,8,9,9,12,11,8,8,9,10,11,10,11,11,12,13,11,10,11,11,13,6,8,8,10,11,8,9,9,11,11,7,9,7,11,10,10,11,11,12,12,10,11,10,13,10,9,11,10,13,12,10,12,11,13,13,10,10,11,12,13,11,12,13,15,14,11,11,13,12,13,9,10,11,12,13,10,11,11,12,13,10,11,10,13,12,12,13,13,13,14,12,12,11,14,11,8,10,10,12,13,10,11,11,13,13,10,11,10,13,13,12,13,14,15,14,12,12,12,14,13,9,10,10,13,12,10,10,12,13,13,10,11,11,15,12,12,12,13,15,14,12,13,13,15,13,9,10,11,12,13,10,12,10,13,12,10,11,11,12,13,12,14,12,15,13,12,12,12,15,14,11,12,11,14,13,11,11,12,14,14,12,13,13,14,13,13,11,15,11,15,14,14,14,16,15,11,12,12,13,14,11,13,11,14,14,12,12,13,14,15,12,14,12,15,12,13,15,14,16,15,8,10,10,12,12,10,10,10,12,13,10,11,11,13,13,12,12,12,13,14,13,13,13,15,15,9,10,10,12,12,10,11,11,13,12,10,10,11,13,13,12,12,12,14,14,12,12,13,15,14,9,10,10,13,12,10,10,12,12,13,10,11,10,13,13,12,13,13,14,14,12,13,12,14,13,11,12,12,14,13,12,13,12,14,14,10,12,12,14,14,14,14,14,16,14,13,12,14,12,15,10,12,12,14,15,12,13,13,14,16,11,12,11,15,14,13,14,14,14,15,13,14,11,14,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,7,7,6,7,7,9,9,6,7,7,9,9,8,10,9,11,11,8,9,9,11,11,6,8,8,10,10,8,10,10,11,11,8,10,10,11,11,10,11,11,12,12,10,11,11,12,13,6,8,8,10,10,8,10,10,11,11,8,10,10,11,11,9,10,11,12,12,10,11,11,12,12,8,11,11,14,13,10,12,11,15,13,10,12,11,14,14,12,13,12,16,14,12,14,12,16,15,8,11,11,13,14,10,11,12,13,15,10,11,12,13,15,11,12,13,14,15,12,12,14,14,16,5,8,8,11,11,9,11,11,12,12,8,10,11,12,12,11,12,12,15,14,11,12,12,14,14,7,11,10,13,12,10,11,12,13,14,10,12,12,14,13,12,13,13,14,15,12,13,13,15,15,7,10,11,12,13,10,12,11,14,13,10,12,13,13,15,12,13,12,14,14,11,13,13,15,16,9,12,12,15,14,11,13,13,15,16,11,13,13,16,16,13,14,15,15,15,12,14,15,17,16,9,12,12,14,15,11,13,13,15,16,11,13,13,16,18,13,14,14,17,16,13,15,15,17,18,5,8,9,11,11,8,11,11,12,12,8,10,11,12,12,11,12,12,14,14,11,12,12,14,15,7,11,10,12,13,10,12,12,14,13,10,11,12,13,14,11,13,13,15,14,12,13,13,14,15,7,10,11,13,13,10,12,12,13,14,10,12,12,13,13,11,13,13,16,16,12,13,13,15,14,9,12,12,16,15,10,13,13,15,15,11,13,13,17,15,12,15,15,18,17,13,14,14,15,16,9,12,12,15,15,11,13,13,15,16,11,13,13,15,15,12,15,15,16,16,13,15,14,17,15,7,11,11,15,15,10,13,13,16,15,10,13,13,15,16,14,15,15,17,19,13,15,14,15,18,9,12,12,16,16,11,13,14,17,16,11,13,13,17,16,15,15,16,17,19,13,15,16,0,18,9,12,12,16,15,11,14,13,17,17,11,13,14,16,16,15,16,16,19,18,13,15,15,17,19,11,14,14,19,16,12,14,15,0,18,12,16,15,18,17,15,15,18,16,19,14,15,17,19,19,11,14,14,18,19,13,15,14,19,19,12,16,15,18,17,15,17,15,0,16,14,17,16,19,0,7,11,11,14,14,10,12,12,15,15,10,13,13,16,15,13,15,15,17,0,14,15,15,16,19,9,12,12,16,16,11,14,14,16,16,11,13,13,16,16,14,17,16,19,0,14,18,17,17,19,9,12,12,15,16,11,13,13,15,17,12,14,13,19,16,13,15,15,17,19,15,17,16,17,19,11,14,14,19,16,12,15,15,19,17,13,14,15,17,19,14,16,17,19,19,16,15,16,17,19,11,15,14,16,16,12,15,15,19,0,12,14,15,19,19,14,16,16,0,18,15,19,14,18,16,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,6,7,8,6,7,8,5,7,7,6,8,8,7,9,7,5,7,7,7,9,9,7,8,8,6,9,8,7,7,10,8,10,10,6,8,8,8,10,8,8,10,10,5,7,7,7,8,8,7,8,9,6,8,8,8,10,10,8,8,10,6,8,9,8,10,10,7,10,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,8,10,10,7,10,10,5,8,8,7,10,10,8,10,10,4,9,8,8,11,11,8,11,11,7,11,11,10,11,13,10,13,13,7,11,11,10,13,12,10,13,13,5,9,8,8,11,11,8,11,11,7,11,11,9,13,13,10,12,13,7,11,11,10,13,13,10,13,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,11,9,12,8,7,10,6,4,5,5,7,5,6,16,9,5,5,6,7,7,9,16,7,4,6,5,7,5,7,17,10,7,7,8,7,7,8,18,7,5,6,4,5,4,5,15,7,6,7,5,6,4,5,15,12,13,18,12,17,11,9,17,6,0,0,0,6,0,0,0,120,45,1,0,160,45,1,0,200,45,1,0,240,45,1,0,24,46,1,0,0,0,0,0,56,43,1,0,96,43,1,0,136,43,1,0,176,43,1,0,216,43,1,0,0,0,0,0,216,39,1,0,0,40,1,0,40,40,1,0,80,40,1,0,120,40,1,0,160,40,1,0,200,40,1,0,240,40,1,0,120,36,1,0,160,36,1,0,200,36,1,0,240,36,1,0,24,37,1,0,64,37,1,0,104,37,1,0,144,37,1,0,80,31,1,0,120,31,1,0,160,31,1,0,200,31,1,0,240,31,1,0,24,32,1,0,64,32,1,0,104,32,1,0,144,32,1,0,184,32,1,0,224,32,1,0,8,33,1,0,40,26,1,0,80,26,1,0,120,26,1,0,160,26,1,0,200,26,1,0,240,26,1,0,24,27,1,0,64,27,1,0,104,27,1,0,144,27,1,0,184,27,1,0,224,27,1,0,232,23,1,0,16,24,1,0,56,24,1,0,96,24,1,0,136,24,1,0,0,0,0,0,216,16,1,0,0,17,1,0,40,17,1,0,80,17,1,0,120,17,1,0,160,17,1,0,200,17,1,0,240,17,1,0,24,18,1,0,64,18,1,0,104,18,1,0,144,18,1,0,184,18,1,0,224,18,1,0,8,19,1,0,0,0,0,0,200,9,1,0,240,9,1,0,24,10,1,0,64,10,1,0,104,10,1,0,144,10,1,0,184,10,1,0,224,10,1,0,8,11,1,0,48,11,1,0,88,11,1,0,128,11,1,0,168,11,1,0,208,11,1,0,248,11,1,0,0,0,0,0,160,4,1,0,200,4,1,0,240,4,1,0,24,5,1,0,64,5,1,0,104,5,1,0,144,5,1,0,184,5,1,0,224,5,1,0,8,6,1,0,48,6,1,0,88,6,1,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,192,9,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,128,9,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,64,9,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,192,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,160,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,32,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,8,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,208,7,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,80,7,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,56,7,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,0,7,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,128,6,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,8,4,8,4,8,4,8,5,8,5,8,6,8,4,8,4,8,5,8,5,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,3,4,3,5,4,6,4,6,5,7,6,7,6,8,6,8,7,9,8,10,8,12,9,13,10,15,10,15,11,14,0,0,0,0,0,0,0,4,4,4,4,4,4,3,4,4,4,4,4,5,4,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,3,4,3,4,4,5,5,6,6,7,7,7,8,8,11,8,9,9,9,10,11,11,11,9,10,10,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,3,4,3,4,4,5,4,5,4,6,4,6,5,6,5,7,5,7,6,8,6,8,6,8,7,8,7,9,7,9,8,0,0,0,0,0,0,0,4,5,4,4,4,5,4,4,4,5,4,5,4,5,3,5,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,3,5,3,5,4,5,4,5,4,5,5,5,5,6,5,6,5,7,5,8,6,8,6,8,6,8,6,8,7,9,7,9,7,11,9,11,11,12,11,14,12,14,16,14,16,13,16,14,16,12,15,13,16,14,16,13,14,12,15,13,15,13,13,13,15,12,14,14,15,13,15,12,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,2,4,5,4,5,4,5,4,5,5,5,5,5,5,6,5,6,5,6,6,7,6,7,6,8,7,8,7,8,7,8,7,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,5,6,6,6,6,5,6,6,7,6,7,6,7,6,7,6,8,7,8,7,8,7,8,7,8,7,9,7,9,7,9,7,9,8,9,8,10,8,10,8,10,7,10,6,10,8,10,8,11,7,10,7,11,8,11,11,12,12,11,11,12,11,13,11,13,11,13,12,15,12,13,13,14,14,14,14,14,15,15,15,16,14,17,19,19,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,2,4,6,17,4,5,7,17,8,7,10,17,17,17,17,17,3,4,6,15,3,3,6,15,7,6,9,17,17,17,17,17,6,8,10,17,6,6,8,16,9,8,10,17,17,15,16,17,17,17,17,17,12,15,15,16,12,15,15,16,16,16,16,16,3,3,3,14,5,4,4,11,8,6,6,10,17,12,11,17,6,5,5,15,5,3,4,11,8,5,5,8,16,9,10,14,10,8,9,17,8,6,6,13,10,7,7,10,16,11,13,14,17,17,17,17,17,16,16,16,16,15,16,16,16,16,16,16,1,2,3,6,5,4,7,7,1,0,0,0,16,0,0,0,200,16,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,192,16,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,192,15,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,128,15,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,0,15,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,224,14,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,96,14,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,64,14,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,192,13,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,168,13,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,112,13,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,240,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,216,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,160,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,32,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,6,5,7,5,7,7,7,7,7,5,7,5,7,5,7,5,7,7,7,7,7,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,2,4,3,4,4,4,5,5,6,5,6,5,7,6,6,6,7,7,7,8,9,9,9,12,10,11,10,10,12,10,10,0,0,0,0,0,0,0,3,4,4,4,4,4,4,4,4,5,4,5,4,5,4,4,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,6,3,7,3,7,5,7,7,7,7,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,4,4,4,4,4,4,5,5,5,5,6,6,7,6,7,6,8,6,9,7,9,7,9,9,11,9,12,10,12,0,0,0,0,0,0,0,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,3,4,3,4,4,5,4,5,5,5,6,6,6,7,6,8,6,8,6,9,7,10,7,10,7,10,7,12,7,12,7,12,9,12,11,12,10,12,10,12,11,12,12,12,10,12,10,12,10,12,9,12,11,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,10,10,12,12,12,12,12,10,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,2,4,5,4,5,4,5,4,5,5,5,5,5,5,6,5,6,5,6,6,6,6,7,7,7,7,7,7,8,8,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,5,7,5,7,4,7,4,8,4,8,4,8,4,8,3,8,4,9,4,9,4,9,4,9,4,9,5,9,5,9,6,9,7,9,8,9,9,9,10,9,11,9,14,9,15,10,15,10,15,10,15,10,15,11,15,10,14,12,14,11,14,13,14,13,15,15,15,12,15,15,15,13,15,13,15,13,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,14,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,7,6,7,6,7,6,7,6,5,5,5,5,5,5,6,5,6,5,6,5,6,5,6,5,6,5,7,5,7,5,7,5,8,5,8,5,8,5,9,5,9,6,10,6,10,6,11,6,11,6,11,6,11,6,11,6,11,6,11,6,12,7,11,7,11,7,11,7,11,7,10,7,11,7,11,7,12,7,11,8,11,8,11,8,11,8,13,8,12,9,11,9,11,9,11,10,12,10,12,9,12,10,12,11,14,12,16,12,12,11,14,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,16,16,16,16,2,4,7,13,4,5,7,15,8,7,10,16,16,14,16,16,2,4,7,16,3,4,7,14,8,8,10,16,16,16,15,16,6,8,11,16,7,7,9,16,11,9,13,16,16,16,15,16,16,16,16,16,14,16,16,16,16,16,16,16,16,16,16,16,3,3,6,16,5,5,7,16,9,8,11,16,16,16,16,16,5,5,8,16,5,5,7,16,8,7,9,16,16,16,16,16,9,9,12,16,6,8,11,16,9,10,11,16,16,16,16,16,16,16,16,16,13,16,16,16,15,16,16,16,16,16,16,16,5,4,7,16,6,5,8,16,9,8,10,16,16,16,16,16,5,5,7,15,5,4,6,15,7,6,8,16,16,16,16,16,9,9,11,15,7,7,9,16,8,8,9,16,16,16,16,16,16,16,16,16,15,15,15,16,15,15,14,16,16,16,16,16,8,8,11,16,8,9,10,16,11,10,14,16,16,16,16,16,6,8,10,16,6,7,10,16,8,8,11,16,14,16,16,16,10,11,14,16,9,9,11,16,10,10,11,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,12,16,15,16,12,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,1,2,3,6,4,7,5,7,2,6,8,9,7,11,13,13,1,3,5,5,6,6,12,10,1,0,0,0,16,0,0,0,216,23,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,208,23,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,208,22,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,144,22,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,16,22,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,240,21,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,112,21,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,80,21,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,208,20,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,184,20,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,128,20,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,0,20,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,232,19,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,176,19,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,48,19,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,5,2,6,3,6,4,7,4,7,5,9,5,11,6,11,6,11,7,11,6,11,6,11,9,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,2,4,2,5,3,5,4,6,6,6,7,7,8,7,8,7,8,7,9,8,9,8,9,8,10,8,11,9,12,9,12,0,0,0,0,0,0,0,4,5,4,5,4,5,4,5,3,5,3,5,3,5,4,5,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,7,3,8,3,10,3,8,3,9,3,8,4,9,4,9,5,9,6,10,6,9,7,11,7,12,9,13,10,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,4,3,4,4,4,4,5,5,5,5,5,6,5,7,5,8,6,8,6,9,7,10,7,10,8,10,8,11,9,11,0,0,0,0,0,0,0,4,5,4,5,3,5,3,5,3,5,4,4,4,4,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,3,4,3,4,4,5,4,5,4,5,5,6,5,6,5,7,5,7,6,7,6,8,7,8,7,8,7,9,8,9,9,9,9,10,10,10,11,9,12,9,12,9,15,10,14,9,13,10,13,10,12,10,12,10,13,10,12,11,13,11,14,12,13,13,14,14,13,14,15,14,16,13,13,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,15,1,5,5,5,5,5,5,5,6,5,6,5,6,5,6,5,6,6,7,7,7,7,8,7,8,8,9,8,10,9,10,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,5,8,4,9,4,9,4,9,4,9,4,9,4,9,4,9,4,9,4,9,4,8,4,8,4,9,5,9,5,9,5,9,5,9,6,10,6,10,7,10,8,11,9,11,11,12,13,12,14,13,15,13,15,14,16,14,17,15,17,15,15,16,16,15,16,16,16,15,18,16,15,17,17,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,2,5,5,4,5,4,5,4,5,4,6,5,6,5,6,5,6,5,7,5,7,6,8,6,8,6,8,6,9,6,9,6,5,5,5,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,7,5,7,5,7,5,7,5,8,6,8,6,8,6,9,6,9,6,10,6,10,6,11,6,11,7,11,7,12,7,12,7,12,7,12,7,12,7,12,7,12,7,12,8,13,8,12,8,12,8,13,8,13,9,13,9,13,9,13,9,12,10,12,10,13,10,14,11,14,12,14,13,14,13,14,14,15,16,15,15,15,14,15,17,21,22,22,21,22,22,22,22,22,22,21,21,21,21,21,21,21,21,21,21,2,3,7,13,4,4,7,15,8,6,9,17,21,16,15,21,2,5,7,11,5,5,7,14,9,7,10,16,17,15,16,21,4,7,10,17,7,7,9,15,11,9,11,16,21,18,15,21,18,21,21,21,15,17,17,19,21,19,18,20,21,21,21,20,1,5,7,21,5,8,9,21,10,9,12,20,20,16,20,20,4,8,9,20,6,8,9,20,11,11,13,20,20,15,17,20,9,11,14,20,8,10,15,20,11,13,15,20,20,20,20,20,20,20,20,20,13,20,20,20,18,18,20,20,20,20,20,20,3,6,8,20,6,7,9,20,10,9,12,20,20,20,20,20,5,7,9,20,6,6,9,20,10,9,12,20,20,20,20,20,8,10,13,20,8,9,12,20,11,10,12,20,20,20,20,20,18,20,20,20,15,17,18,20,18,17,18,20,20,20,20,20,7,10,12,20,8,9,11,20,14,13,14,20,20,20,20,20,6,9,12,20,7,8,11,20,12,11,13,20,20,20,20,20,9,11,15,20,8,10,14,20,12,11,14,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,11,16,18,20,15,15,17,20,20,17,20,20,20,20,20,20,9,14,16,20,12,12,15,20,17,15,18,20,20,20,20,20,16,19,18,20,15,16,20,20,17,17,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,1,4,2,6,3,7,5,7,2,10,8,14,7,12,11,14,1,5,3,7,4,9,7,13,1,0,0,0,0,1,0,0,40,25,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,32,25,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,0,0,0,16,25,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,240,24,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,176,24,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,2,4,3,5,4,5,5,5,5,6,6,6,6,6,6,6,7,7,8,6,9,7,12,11,16,13,16,12,15,13,15,12,14,12,15,15,15,0,0,0,0,0,0,0,0,0,0,3,3,3,4,3,4,4,4,4,4,5,5,5,6,6,0,0,0,0,0,0,0,0,0,0,0,2,3,2,3,3,3,0,0,0,0,0,0,1,3,2,3,0,0,0,0,4,5,6,11,5,5,6,10,7,7,6,6,14,13,9,9,6,6,6,10,6,6,6,9,8,7,7,9,14,12,8,11,8,7,7,11,8,8,7,11,9,9,7,9,13,11,9,13,19,19,18,19,15,16,16,19,11,11,10,13,10,10,9,15,5,5,6,13,6,6,6,11,8,7,6,7,14,11,10,11,6,6,6,12,7,6,6,11,8,7,7,11,13,11,9,11,9,7,6,12,8,7,6,12,9,8,8,11,13,10,7,13,19,19,17,19,17,14,14,19,12,10,8,12,13,10,9,16,7,8,7,12,7,7,7,11,8,7,7,8,12,12,11,11,8,8,7,12,8,7,6,11,8,7,7,10,10,11,10,11,9,8,8,13,9,8,7,12,10,9,7,11,9,8,7,11,18,18,15,18,18,16,17,18,15,11,10,18,11,9,9,18,16,16,13,16,12,11,10,16,12,11,9,6,15,12,11,13,16,16,14,14,13,11,12,16,12,9,9,13,13,10,10,12,17,18,17,17,14,15,14,16,14,12,14,15,12,10,11,12,18,18,18,18,18,18,18,18,18,12,13,18,16,11,9,18,1,0,0,0,8,0,0,0,72,31,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,8,31,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,200,30,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,72,30,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,40,30,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,168,29,1],"i8",L3,x.GLOBAL_BASE+62212),d3([1,0,0,0,18,0,0,0,144,29,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,88,29,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,216,28,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,192,28,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,136,28,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,8,28,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,2,4,3,4,4,4,5,4,7,5,8,5,11,6,10,6,12,7,12,7,12,8,12,8,12,10,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,3,6,3,6,4,7,4,7,4,7,4,8,4,8,4,8,4,8,4,9,4,9,5,10,5,10,7,10,8,10,8,0,0,0,0,0,0,0,4,4,4,4,4,4,4,5,3,5,3,5,4,6,4,6,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,1,5,3,5,3,5,4,7,5,10,7,10,7,12,10,14,10,14,9,14,11,14,14,14,13,13,13,13,13,13,13,0,0,0,0,0,0,0,4,5,4,6,4,8,3,9,3,9,2,9,3,8,4,9,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,3,5,3,5,3,6,3,6,4,6,4,7,4,7,5,8,5,8,6,9,7,9,7,9,8,10,9,10,9,11,10,11,11,11,11,11,11,12,12,12,13,12,13,12,14,12,15,12,14,12,16,13,17,13,17,14,17,14,16,13,17,14,17,14,17,15,17,15,15,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,16,16,16,16,16,16,16,16,16,16,2,5,5,4,5,4,5,4,5,5,5,5,5,5,6,5,6,5,6,5,7,6,7,6,7,6,8,6,9,7,9,7,5,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,7,5,7,5,7,5,7,5,7,5,7,5,8,5,8,5,8,5,8,5,8,6,8,6,8,6,9,6,9,6,9,6,9,6,9,7,9,7,9,7,9,7,10,7,10,8,10,8,10,8,10,8,10,8,11,8,11,8,11,8,11,8,11,9,12,9,12,9,12,9,12,9,12,10,12,10,13,11,13,11,14,12,14,13,15,14,16,14,17,15,18,16,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,3,6,10,17,4,8,11,20,8,10,11,20,20,20,20,20,2,4,8,18,4,6,8,17,7,8,10,20,20,17,20,20,3,5,8,17,3,4,6,17,8,8,10,17,17,12,16,20,13,13,15,20,10,10,12,20,15,14,15,20,20,20,19,19,1,4,10,19,3,8,13,19,7,12,19,19,19,19,19,19,2,6,11,19,8,13,19,19,9,11,19,19,19,19,19,19,6,7,13,19,9,13,19,19,10,13,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,1,3,4,7,2,5,6,7,1,0,0,0,8,0,0,0,112,36,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,48,36,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,240,35,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,112,35,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,80,35,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,208,34,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,184,34,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,128,34,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,0,34,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,232,33,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,176,33,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,48,33,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,1,6,3,7,3,8,4,8,5,8,8,8,9,7,8,8,7,7,7,8,9,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,3,5,4,6,4,6,4,7,4,7,4,8,4,8,4,9,4,9,4,10,4,10,5,10,5,11,5,12,6,12,6,0,0,0,0,0,0,0,4,4,4,4,4,4,4,4,4,4,4,4,4,5,4,5,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,8,3,8,4,8,4,8,6,8,5,8,4,8,4,8,6,8,7,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,4,4,4,4,5,4,5,4,6,5,7,5,7,6,8,6,8,6,9,7,9,7,10,7,9,8,11,8,11,0,0,0,0,0,0,0,4,5,4,5,4,5,3,5,3,5,3,5,4,4,4,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,3,5,3,6,4,6,4,7,4,7,4,7,4,8,4,8,4,9,5,9,5,9,5,9,6,10,6,10,6,11,7,10,7,10,8,11,9,11,9,11,10,11,11,12,11,11,12,15,15,12,14,11,14,12,14,11,14,13,14,12,14,11,14,11,14,12,14,11,14,11,14,13,13,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,2,5,5,5,5,5,5,4,5,5,5,5,5,5,5,5,6,5,6,5,6,5,7,6,7,6,7,6,8,6,8,6,5,5,5,5,5,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,6,6,6,7,6,7,6,7,6,7,6,7,6,7,6,8,6,8,6,8,7,8,7,8,7,8,7,9,7,9,8,9,8,9,8,10,8,10,9,10,9,10,9,11,9,11,9,10,10,11,10,11,10,11,11,11,11,11,11,12,13,14,14,14,15,15,16,16,16,17,15,16,15,16,16,17,17,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,7,6,9,17,7,6,8,17,12,9,11,16,16,16,16,16,5,4,7,16,5,3,6,14,9,6,8,15,16,16,16,16,5,4,6,13,3,2,4,11,7,4,6,13,16,11,10,14,12,12,12,16,9,7,10,15,12,9,11,16,16,15,15,16,1,6,12,16,4,12,15,16,9,15,16,16,16,16,16,16,2,5,11,16,5,11,13,16,9,13,16,16,16,16,16,16,4,8,12,16,5,9,12,16,9,13,15,16,16,16,16,16,15,16,16,16,11,14,13,16,12,15,16,16,16,16,16,15,1,6,3,7,2,4,5,7,1,0,0,0,64,0,0,0,152,39,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,152,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,9,0,0,0,136,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,104,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,40,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,9,0,0,0,24,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,248,37,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,184,37,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,2,4,3,6,3,7,3,8,5,8,6,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,0,0,0,0,0,0,0,0,0,2,3,3,4,3,4,4,5,4,6,5,6,7,6,8,8,0,0,0,0,0,0,0,0,3,3,3,3,2,4,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,5,2,5,3,5,3,6,3,6,4,7,6,7,8,7,9,8,9,9,9,10,9,11,13,11,13,10,10,13,13,13,13,13,13,12,12,12,12,0,0,0,0,0,0,0,0,0,3,4,3,4,3,5,3,6,3,6,4,6,4,7,5,7,0,0,0,0,0,0,0,0,2,3,3,3,3,4,3,4,0,0,0,0,0,0,0,5,6,8,15,6,9,10,15,10,11,12,15,15,15,15,15,4,6,7,15,6,7,8,15,9,8,9,15,15,15,15,15,6,8,9,15,7,7,8,15,10,9,10,15,15,15,15,15,15,13,15,15,15,10,11,15,15,13,13,15,15,15,15,15,4,6,7,15,6,8,9,15,10,10,12,15,15,15,15,15,2,5,6,15,5,6,7,15,8,6,7,15,15,15,15,15,5,6,8,15,5,6,7,15,9,6,7,15,15,15,15,15,14,12,13,15,12,10,11,15,15,15,15,15,15,15,15,15,7,8,9,15,9,10,10,15,15,14,14,15,15,15,15,15,5,6,7,15,7,8,9,15,12,9,10,15,15,15,15,15,7,7,9,15,7,7,8,15,12,8,9,15,15,15,15,15,13,13,14,15,12,11,12,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,13,13,13,15,15,15,15,15,15,15,15,15,15,15,15,15,15,12,13,15,15,12,13,15,15,14,15,15,15,15,15,15,15,15,15,15,15,15,13,15,15,15,15,15,15,15,15,15,7,5,5,9,9,6,6,9,12,8,7,8,11,8,9,15,6,3,3,7,7,4,3,6,9,6,5,6,8,6,8,15,8,5,5,9,8,5,4,6,10,7,5,5,11,8,7,15,14,15,13,13,13,13,8,11,15,10,7,6,11,9,10,15,1,0,0,0,64,0,0,0,248,42,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,248,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,9,0,0,0,232,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,200,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,136,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,9,0,0,0,120,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,88,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,24,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,7,2,7,3,8,4,9,5,9,8,10,11,11,12,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,13,13,13,13,0,0,0,0,0,0,0,0,0,3,4,3,6,3,6,3,6,3,7,3,8,4,9,4,9,0,0,0,0,0,0,0,0,3,3,2,3,3,4,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,5,3,5,3,5,4,5,4,5,5,5,5,6,5,6,5,6,5,6,5,6,5,7,8,9,11,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,0,0,0,0,0,0,3,3,3,4,4,4,4,5,4,5,4,5,4,6,4,6,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,8,13,17,17,8,11,17,17,11,13,17,17,17,17,17,17,6,10,16,17,6,10,15,17,8,10,16,17,17,17,17,17,9,13,15,17,8,11,17,17,10,12,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,6,11,15,17,7,10,15,17,8,10,17,17,17,15,17,17,4,8,13,17,4,7,13,17,6,8,15,17,16,15,17,17,6,11,15,17,6,9,13,17,8,10,17,17,15,17,17,17,16,17,17,17,12,14,15,17,13,14,15,17,17,17,17,17,5,10,14,17,5,9,14,17,7,9,15,17,15,15,17,17,3,7,12,17,3,6,11,17,5,7,13,17,12,12,17,17,5,9,14,17,3,7,11,17,5,8,13,17,13,11,16,17,12,17,17,17,9,14,15,17,10,11,14,17,16,14,17,17,8,12,17,17,8,12,17,17,10,12,17,17,17,17,17,17,5,10,17,17,5,9,15,17,7,9,17,17,13,13,17,17,7,11,17,17,6,10,15,17,7,9,15,17,12,11,17,17,12,15,17,17,11,14,17,17,11,10,15,17,17,16,17,17,10,7,8,13,9,6,7,11,10,8,8,12,17,17,17,17,7,5,5,9,6,4,4,8,8,5,5,8,16,14,13,16,7,5,5,7,6,3,3,5,8,5,4,7,14,12,12,15,10,7,8,9,7,5,5,6,9,6,5,5,15,12,9,10,1,0,0,0,0,1,0,0,120,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,112,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,0,0,0,96,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,64,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,0,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,4,3,5,3,5,3,6,4,7,4,7,5,7,6,7,6,7,8,10,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,0,0,0,0,0,0,0,0,0,0,4,3,4,3,4,3,5,3,5,4,5,4,6,4,6,0,0,0,0,0,0,0,0,0,0,0,2,2,3,3,3,3,0,0,0,0,0,0,2,2,2,2,0,0,0,0,6,7,7,12,6,6,7,12,7,6,6,10,15,12,11,13,7,7,8,13,7,7,8,12,7,7,7,11,12,12,11,13,10,9,9,11,9,9,9,10,10,8,8,12,14,12,12,14,11,11,12,14,11,12,11,15,15,12,13,15,15,15,15,15,6,6,7,10,6,6,6,11,7,6,6,9,14,12,11,13,7,7,7,10,6,6,7,9,7,7,6,10,13,12,10,12,9,9,9,11,9,9,8,9,9,8,8,10,13,12,10,12,12,12,11,13,12,12,11,12,15,13,12,15,15,15,14,14,6,6,6,8,6,6,5,6,7,7,6,5,11,10,9,8,7,6,6,7,6,6,5,6,7,7,6,6,11,10,9,8,8,8,8,9,8,8,7,8,8,8,6,7,11,10,9,9,14,11,10,14,14,11,10,15,13,11,9,11,15,12,12,11,11,9,8,8,10,9,8,9,11,10,9,8,12,11,12,11,13,10,8,9,11,10,8,9,10,9,8,9,10,8,12,12,15,11,10,10,13,11,10,10,8,8,7,12,10,9,11,12,15,12,11,15,13,11,11,15,12,14,11,13,15,15,13,13,1,0,0,0,0,1,0,0,184,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,176,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,0,0,0,160,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,128,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,64,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,4,3,5,3,5,3,5,4,6,5,6,5,7,6,6,7,7,9,9,11,11,16,11,14,10,11,11,13,16,15,15,15,15,15,15,15,15,15,0,0,0,0,0,0,0,0,0,0,3,3,4,3,4,3,4,4,5,4,5,4,6,5,6,0,0,0,0,0,0,0,0,0,0,0,3,2,3,2,3,3,0,0,0,0,0,0,2,2,2,2,0,0,0,0,7,7,7,11,6,6,7,11,7,6,6,10,12,10,10,13,7,7,8,11,7,7,7,11,7,6,7,10,11,10,10,13,10,10,9,12,9,9,9,11,8,8,8,11,13,11,10,14,15,15,14,15,15,14,13,14,15,12,12,17,17,17,17,17,7,7,6,9,6,6,6,9,7,6,6,8,11,11,10,12,7,7,7,9,7,6,6,9,7,6,6,9,13,10,10,11,10,9,8,10,9,8,8,10,8,8,7,9,13,12,10,11,17,14,14,13,15,14,12,13,17,13,12,15,17,17,14,17,7,6,6,7,6,6,5,7,6,6,6,6,11,9,9,9,7,7,6,7,7,6,6,7,6,6,6,6,10,9,8,9,10,9,8,8,9,8,7,8,8,7,6,8,11,10,9,10,17,17,12,15,15,15,12,14,14,14,10,12,15,13,12,13,11,10,8,10,11,10,8,8,10,9,7,7,10,9,9,11,11,11,9,10,11,10,8,9,10,8,6,8,10,9,9,11,14,13,10,12,12,11,10,10,8,7,8,10,10,11,11,12,17,17,15,17,17,17,17,17,17,13,12,17,17,17,14,17,200,47,1,0,216,72,1,0,200,47,1,0,248,72,1,0,1],"i8",L3,x.GLOBAL_BASE+72464),d3([1],"i8",L3,x.GLOBAL_BASE+78916),d3([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],"i8",L3,x.GLOBAL_BASE+79944),d3([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],"i8",L3,x.GLOBAL_BASE+81996),d3([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,120,124,1,0,120,124,1,0,160,124,1,0,160,124,1,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,48,84,1,0,48,84,1,0,88,84,1,0,88,84,1,0,0,0,0,0,255,255,255,255,255,255,255,255,10,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+83152),d3([1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,231,3,0,0,0,0,0,0,231,3,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,16,124,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,85,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,85,1,0,0,0,0,0,0,0,0,0,0,0,0,0,104,85,1,0,0,0,0,0,0,0,0,0,0,0,0,0,144,85,1,0,0,0,0,0,0,0,0,0,0,0,0,0,184,85,1,0,0,0,0,0,224,85,1,0,8,86,1,0,0,0,0,0,0,0,0,0,48,86,1,0,88,86,1,0,0,0,0,0,0,0,0,0,128,86,1,0,168,86,1,0,208,86,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,88,98,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,0,124,1,0,0,0,0,0,4,0,0,0,113,2,0,0,200,95,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,98,1,0,0,0,0,0,2,0,0,0,81,0,0,0,72,95,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,160,95,1,0,0,0,0,0,2,0,0,0,81,0,0,0,200,94,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,32,95,1,0,0,0,0,0,2,0,0,0,33,1,0,0,88,93,1,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,128,94,1,0,0,0,0,0,4,0,0,0,81,0,0,0,240,92,1,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,72,93,1,0,0,0,0,0,2,0,0,0,121,0,0,0,64,92,1,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,192,92,1,0,0,0,0,0,2,0,0,0,169,0,0,0,88,91,1,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,8,92,1,0,0,0,0,0,2,0,0,0,25,0,0,0,32,91,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,91,1,0,0,0,0,0,2,0,0,0,169,0,0,0,56,90,1,0,1,0,0,0,0,136,93,225,0,176,19,97,4,0,0,0,0,0,0,0,232,90,1,0,0,0,0,0,2,0,0,0,225,0,0,0,16,89,1,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,248,89,1,0,0,0,0,0,2,0,0,0,185,1,0,0,248,86,1,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,184,88,1,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,9,8,9,9,9,9,9,9,9,9,11,11,12,7,7,7,7,8,8,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,7,7,7,7,8,8,9,8,9,9,9,9,9,9,10,10,10,10,11,11,12,8,8,8,8,8,8,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,7,7,8,8,8,8,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,12,11,9,9,8,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,8,8,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,12,11,12,11,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,12,11,12,11,11,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,12,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,12,11,11,12,11,10,10,10,10,10,10,10,10,10,10,10,10,11,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,12,11,12,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,12,11,12,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,12,11,11,12,11,11,12,10,10,11,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,12,12,11,12,11,11,12,12,12,11,11,10,10,10,10,10,10,10,10,10,11,12,12,11,12,12,11,12,11,11,11,11,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,5,5,7,7,9,9,11,11,12,12,13,13,6,5,5,6,6,9,9,10,10,12,12,12,13,15,14,6,5,5,7,7,9,9,10,10,12,12,12,13,14,13,17,7,7,8,8,10,10,11,11,12,13,13,13,13,13,17,7,7,8,8,10,10,11,11,13,13,13,13,14,14,17,11,11,9,9,11,11,12,12,12,13,13,14,15,13,17,12,12,9,9,11,11,12,12,13,13,13,13,14,16,17,17,17,11,12,12,12,13,13,13,14,15,14,15,15,17,17,17,12,12,11,11,13,13,14,14,15,14,15,15,17,17,17,15,15,13,13,14,14,15,14,15,15,16,15,17,17,17,15,15,13,13,13,14,14,15,15,15,15,16,17,17,17,17,16,14,15,14,14,15,14,14,15,15,15,17,17,17,17,17,14,14,16,14,15,15,15,15,15,15,17,17,17,17,17,17,16,16,15,17,15,15,14,17,15,17,16,17,17,17,17,16,15,14,15,15,15,15,15,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,3,10,10,10,10,10,10,10,10,10,10,5,6,6,10,10,10,10,10,10,10,10,10,10,6,7,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,8,8,9,9,10,10,7,5,5,7,7,8,8,8,8,9,10,11,11,7,5,5,7,7,8,8,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,9,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,9,10,9,10,11,11,11,0,13,12,9,8,9,9,10,10,11,11,12,11,0,0,0,9,9,9,9,10,10,11,11,12,12,0,0,0,10,10,9,9,10,10,11,11,12,12,0,0,0,13,13,10,10,11,11,12,11,13,12,0,0,0,14,14,10,10,11,10,11,11,12,12,0,0,0,0,0,12,12,11,11,12,12,13,13,0,0,0,0,0,12,12,11,10,12,11,13,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,7,7,7,7,7,7,10,10,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,6,7,6,6,4,7,7,10,9,9,10,9,9,5,7,7,10,9,9,10,9,9,6,10,10,10,10,10,11,10,10,6,9,9,10,9,10,11,10,10,6,9,9,10,9,9,11,9,10,7,10,10,11,11,11,11,10,10,6,9,9,10,10,10,11,9,9,6,9,9,10,10,10,10,9,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,5,5,8,8,8,8,9,9,10,10,11,11,11,11,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,9,9,8,8,10,10,10,10,11,11,12,12,12,12,0,0,0,9,9,8,8,10,10,10,10,11,11,12,12,12,12,0,0,0,10,10,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,10,10,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,11,11,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,11,12,12,13,13,0,0,0,0,0,10,10,11,11,11,11,12,12,13,12,13,13,0,0,0,0,0,0,0,11,10,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,13,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,4,5,6,6,8,8,0,0,0,8,8,7,7,9,9,0,0,0,8,8,7,7,9,9,0,0,0,9,10,8,8,9,9,0,0,0,10,10,8,8,9,9,0,0,0,11,10,8,8,10,10,0,0,0,11,11,8,8,10,10,0,0,0,12,12,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,2,3,7,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,8,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,8,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,8,10,8],"i8",L3,x.GLOBAL_BASE+86572),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,18,8,11,8,8,9,9,10,4,4,18,5,9,5,6,7,8,10,18,18,18,18,17,17,17,17,17,17,7,5,17,6,11,6,7,8,9,12,12,9,17,12,8,8,9,10,10,13,7,5,17,6,8,4,5,6,8,10,6,5,17,6,8,5,4,5,7,9,7,7,17,8,9,6,5,5,6,8,8,8,17,9,11,8,6,6,6,7,9,10,17,12,12,10,9,7,7,8,0,0,0,0,2,0,0,0,100,0,0,0,216,163,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,176,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,216,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,126,1,0,0,0,0,0,40,126,1,0,80,126,1,0,0,0,0,0,0,0,0,0,120,126,1,0,160,126,1,0,0,0,0,0,0,0,0,0,200,126,1,0,240,126,1,0,24,127,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,32,138,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,200,163,1,0,0,0,0,0,4,0,0,0,113,2,0,0,144,135,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,8,138,1,0,0,0,0,0,2,0,0,0,81,0,0,0,16,135,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,104,135,1,0,0,0,0,0,2,0,0,0,81,0,0,0,144,134,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,232,134,1,0,0,0,0,0,2,0,0,0,33,1,0,0,32,133,1,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,72,134,1,0,0,0,0,0,4,0,0,0,81,0,0,0,184,132,1,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,16,133,1,0,0,0,0,0,2,0,0,0,121,0,0,0,8,132,1,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,136,132,1,0,0,0,0,0,2,0,0,0,169,0,0,0,32,131,1,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,208,131,1,0,0,0,0,0,2,0,0,0,25,0,0,0,232,130,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,8,131,1,0,0,0,0,0,4,0,0,0,81,0,0,0,128,130,1,0,1,0,0,0,0,176,19,225,0,176,19,97,2,0,0,0,0,0,0,0,216,130,1,0,0,0,0,0,2,0,0,0,225,0,0,0,88,129,1,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,64,130,1,0,0,0,0,0,2,0,0,0,185,1,0,0,64,127,1,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,0,129,1,0,0,0,0,0,1,5,5,7,7,8,7,8,8,10,10,9,9,10,10,10,11,11,10,12,11,12,12,12,9,8,8,8,8,8,9,10,10,10,10,11,11,11,10,11,11,12,12,11,12,8,8,7,7,8,9,10,10,10,9,10,10,9,10,10,11,11,11,11,11,11,9,9,9,9,8,9,10,10,11,10,10,11,11,12,10,10,12,12,11,11,10,9,9,10,8,9,10,10,10,9,10,10,11,11,10,11,10,10,10,12,12,12,9,10,9,10,9,9,10,10,11,11,11,11,10,10,10,11,12,11,12,11,12,10,11,10,11,9,10,9,10,9,10,10,9,10,10,11,10,11,11,11,11,12,11,9,10,10,10,10,11,11,11,11,11,10,11,11,11,11,10,12,10,12,12,11,12,10,10,11,10,9,11,10,11,9,10,11,10,10,10,11,11,11,11,12,12,10,9,9,11,10,9,12,11,10,12,12,11,11,11,11,10,11,11,12,11,10,12,9,11,10,11,10,10,11,10,11,9,10,10,10,11,12,11,11,12,11,10,10,11,11,9,10,10,12,10,11,10,10,10,9,10,10,10,10,9,10,10,11,11,11,11,12,11,10,10,10,10,11,11,10,11,11,9,11,10,12,10,12,11,10,11,10,10,10,11,10,10,11,11,10,11,10,10,10,10,11,11,12,10,10,10,11,10,11,12,11,10,11,10,10,11,11,10,12,10,9,10,10,11,11,11,10,12,10,10,11,11,11,10,10,11,10,10,10,11,10,11,10,12,11,11,10,10,10,12,10,10,11,9,10,11,11,11,10,10,11,10,10,9,11,11,12,12,11,12,11,11,11,11,11,11,9,10,11,10,12,10,10,10,10,11,10,10,11,10,10,12,10,10,10,10,10,9,12,10,10,10,10,12,9,11,10,10,11,10,12,12,10,12,12,12,10,10,10,10,9,10,11,10,10,12,10,10,12,11,10,11,10,10,12,11,10,12,10,10,11,9,11,10,9,10,9,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,5,5,10,8,11,11,11,11,11,11,11,11,6,6,6,7,6,11,10,11,11,11,11,11,11,11,11,7,5,6,6,6,8,7,11,11,11,11,11,11,11,11,11,7,8,8,8,9,9,11,11,11,11,11,11,11,11,11,9,8,7,8,9,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,4,5,5,7,6,6,6,5,7,7,7,6,6,7,7,7,6,6,7,7,7,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,6,7,7,7,7,8,8,9,9,7,6,6,7,7,8,8,7,7,8,9,10,10,7,6,6,7,7,8,7,7,7,9,9,10,12,0,8,8,8,8,8,9,8,8,9,9,10,10,0,8,8,8,8,8,9,8,9,9,9,11,10,0,0,13,9,8,9,9,9,9,10,10,11,11,0,13,0,9,9,9,9,9,9,11,10,11,11,0,0,0,8,9,10,9,10,10,13,11,12,12,0,0,0,8,9,9,9,10,10,13,12,12,13,0,0,0,12,0,10,10,12,11,10,11,12,12,0,0,0,13,13,10,10,10,11,12,0,13,0,0,0,0,0,0,13,11,0,12,12,12,13,12,0,0,0,0,0,0,13,13,11,13,13,11,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,6,6,8,8,9,9,9,9,10,10,10,7,7,8,8,9,9,9,9,10,10,9,7,7,8,8,9,9,9,9,10,10,10,8,8,9,9,9,9,9,9,10,10,10,8,8,9,9,9,9,8,9,10,10,10,8,8,9,9,9,10,10,10,10,10,10,9,9,9,9,9,9,10,10,11,10,11,9,9,9,9,10,10,10,10,11,11,11,10,10,9,9,10,10,10,9,11,10,10,10,10,10,10,9,9,10,10,11,11,10,10,10,9,9,9,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,11,9,10,12,9,10,4,7,7,10,10,10,11,9,9,6,11,10,11,11,12,11,11,11,6,10,10,11,11,12,11,10,10,6,9,10,11,11,11,11,10,10,7,10,11,12,11,11,12,11,12,6,9,9,10,9,9,11,10,10,6,9,9,10,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,6,6,8,8,9,9,8,8,10,9,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,11,0,0,0,8,8,9,9,10,10,9,9,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,9,9,11,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,11,12,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,10,10,10,10,11,11,10,10,11,11,12,12,13,13,0,0,0,0,0,10,9,10,11,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,9,10,11,12,12,13,13,14,13,0,0,0,0,0,9,9,9,10,10,10,11,11,13,12,13,13,0,0,0,0,0,10,10,10,10,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,10,10,11,11,12,12,13,13,13,14,0,0,0,0,0,0,0,11,11,11,11,12,12,13,14,14,14,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,14,13,0,0,0,0,0,0,0,11,11,12,12,13,13,14,14,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,5,5,7,6,8,8,0,0,0,7,7,7,7,8,8,0,0,0,7,7,7,7,8,9,0,0,0,8,8,8,8,9,9,0,0,0,8,8,8,8,9,9,0,0,0,9,9,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,10,10,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,2,3,7,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,8,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,6,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,4,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,9,0,0,0,0,0,0,8,9,11,0,0,0,0,0,0,9,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,9,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,11,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,9,11,11,0,0,0,0,0,0,8,11,9],"i8",L3,x.GLOBAL_BASE+97272),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,5,18,7,10,6,7,8,9,10,5,2,18,5,7,5,6,7,8,11,17,17,17,17,17,17,17,17,17,17,7,4,17,6,9,6,8,10,12,15,11,7,17,9,6,6,7,9,11,15,6,4,17,6,6,4,5,8,11,16,6,6,17,8,6,5,6,9,13,16,8,9,17,11,9,8,8,11,13,17,9,12,17,15,14,13,12,13,14,17,12,15,17,17,17,17,17,16,17,17,0,0,0,0,154,153,153,153,153,153,185,191,0,0,0,0,0,0,0,0,154,153,153,153,153,153,185,63,154,153,153,153,153,153,201,63,51,51,51,51,51,51,211,63,154,153,153,153,153,153,217,63,0,0,0,0,0,0,224,63,51,51,51,51,51,51,227,63,102,102,102,102,102,102,230,63,154,153,153,153,153,153,233,63,205,204,204,204,204,204,236,63,0,0,0,0,0,0,240,63,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,16,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,0,0,0,35,0,0,0,21,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,30,0,0,0,20,0,0,0,8,0,0,0,0,0,0,192,0,0,160,63,25,0,0,0,12,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,9,0,0,0,253,255,255,255,0,0,0,0,0,0,0,0,20,0,0,0,9,0,0,0,252,255,255,255,0,0,0,0,0,0,0,0,20,0,0,0,9,0,0,0,252,255,255,255,0,0,0,0,0,0,0,0,20,0,0,0,6,0,0,0,250,255,255,255,0,0,0,0,0,0,0,0,20,0,0,0,3,0,0,0,246,255,255,255,0,0,0,0,0,0,0,0,18,0,0,0,1,0,0,0,242,255,255,255,0,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,240,255,255,255,0,0,0,0,0,0,0,0,18,0,0,0,254,255,255,255,240,255,255,255,0,0,0,0,0,0,0,0,12,0,0,0,254,255,255,255,236,255,255,255,0,0,0,0,0,0,0,0,253,255,255,255,248,255,255,255,243,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,247,255,255,255,247,255,255,255,247,255,255,255,247,255,255,255,247,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,252,255,255,255,246,255,255,255,242,255,255,255,240,255,255,255,242,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,245,255,255,255,245,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,250,255,255,255,244,255,255,255,242,255,255,255,240,255,255,255,241,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,254,255,255,255,254,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,244,255,255,255,243,255,255,255,242,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,251,255,255,255,254,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,243,255,255,255,245,255,255,255,246,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,243,255,255,255,245,255,255,255,246,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,248,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,253,255,255,255,248,255,255,255,243,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,255,255,255,246,255,255,255,242,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,245,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,250,255,255,255,244,255,255,255,242,255,255,255,240,255,255,255,241,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,254,255,255,255,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,244,255,255,255,243,255,255,255,242,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,250,255,255,255,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,243,255,255,255,245,255,255,255,246,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,243,255,255,255,245,255,255,255,246,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,248,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,3,0,0,0,3,0,0,0,15,0,0,0,3,0,0,0,3,0,0,0,15,0,0,0,10,0,0,0,10,0,0,0,100,0,0,0,10,0,0,0,10,0,0,0,100,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,6,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,250,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,2,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,16,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,252,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,14,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,252,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,250,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,252,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,6,0,0,0,11,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,234,255,255,255,240,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,247,255,255,255,251,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,6,0,0,0,11,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,228,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,240,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,6,0,0,0,11,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,234,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,224,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,234,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,3,0,0,0,3,0,0,0,5,0,0,0,10,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,224,255,255,255,224,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,224,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,2,0,0,0,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,224,255,255,255,224,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,224,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,244,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,221,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,6,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,2,0,0,0,3,0,0,0,6,0,0,0,6,0,0,0,8,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,2,0,0,0,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,16,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,14,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,250,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,2,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,234,255,255,255,240,255,255,255,244,255,255,255,250,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,0,0,0,0,4,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,253,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,253,255,255,255,255,255,255,255,4,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,245,255,255,255,248,255,255,255,250,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,240,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,251,255,255,255,253,255,255,255,1,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,234,255,255,255,238,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,5,0,0,0,5,0,0,0,11,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,249,255,255,255,251,255,255,255,254,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,228,255,255,255,234,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,242,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,2,0,0,0,6,0,0,0,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,224,255,255,255,224,255,255,255,232,255,255,255,240,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,224,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,238,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,221,255,255,255,226,255,255,255,231,255,255,255,231,255,255,255,231,255,255,255,231,255,255,255,231,255,255,255,231,255,255,255,241,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,6,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,250,255,255,255,252,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,1,0,0,0,4,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,255,255,255,255,0,0,0,0,3,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,249,255,255,255,252,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,8,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,0,0,0,0,2,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,252,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,255,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,255,255,255,255,1,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,252,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,255,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,234,255,255,255,240,255,255,255,244,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,253,255,255,255,255,255,255,255,0,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,247,255,255,255,251,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,255,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,251,255,255,255,254,255,255,255,0,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,234,255,255,255,237,255,255,255,237,255,255,255,237,255,255,255,237,255,255,255,238,255,255,255,239,255,255,255,240,255,255,255,244,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,255,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,240,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,234,255,255,255,236,255,255,255,241,255,255,255,246,255,255,255,248,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,7,0,0,0,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,249,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,226,255,255,255,228,255,255,255,230,255,255,255,232,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,2,0,0,0,218,255,255,255,218,255,255,255,218,255,255,255,218,255,255,255,220,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,218,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,228,255,255,255,236,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,221,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,236,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,20,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,246,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,6,0,0,0,15,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,10,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,252,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,10,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,1,0,0,0,4,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,4],"i8",L3,x.GLOBAL_BASE+107456),d3([4,0,0,0,5,0,0,0,6,0,0,0,10,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,255,255,255,255,0,0,0,0,3,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,252,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,8,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,0,0,0,0,2,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,251,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,255,255,255,255,1,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,249,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,240,255,255,255,244,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,253,255,255,255,255,255,255,255,0,0,0,0,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,247,255,255,255,248,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,251,255,255,255,254,255,255,255,0,0,0,0,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,238,255,255,255,240,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,243,255,255,255,243,255,255,255,244,255,255,255,246,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,0,0,0,0,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,237,255,255,255,237,255,255,255,237,255,255,255,237,255,255,255,238,255,255,255,239,255,255,255,240,255,255,255,244,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,7,0,0,0,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,240,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,2,0,0,0,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,234,255,255,255,238,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,249,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,236,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,17,0,0,0,17,0,0,0,18,0,0,0,18,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,12,0,0,0,13,0,0,0,13,0,0,0,13,0,0,0,14,0,0,0,14,0,0,0,14,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0,16,0,0,0,16,0,0,0,17,0,0,0,17,0,0,0,17,0,0,0,18,0,0,0,18,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,7,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,0,0,0,0,0,0,224,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,205,204,204,204,204,204,244,63,154,153,153,153,153,153,249,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,12,64,0,0,0,0,0,0,16,64,0,0,0,0,0,0,16,64,51,51,51,51,51,51,17,64,102,102,102,102,102,102,18,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,32,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,32,0,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,0,0,0,0,0,1,0,0,128,0,0,0,128,0,0,0,0,1,0,0,0,2,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,0,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,0,0,0,0,154,153,153,153,153,153,201,63,154,153,153,153,153,153,201,63,154,153,153,153,153,153,201,63,154,153,153,153,153,153,217,63,51,51,51,51,51,51,227,63,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,156,255,255,255,156,255,255,255,156,255,255,255,156,255,255,255,156,255,255,255,156,255,255,255,151,255,255,255,151,255,255,255,151,255,255,255,151,255,255,255,146,255,255,255,136,255,255,255,126,255,255,255,126,255,255,255,126,255,255,255,126,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,106,255,255,255,205,204,204,204,204,204,43,64,51,51,51,51,51,51,46,64,154,153,153,153,153,153,47,64,0,0,0,0,0,128,48,64,51,51,51,51,51,51,49,64,102,102,102,102,102,230,50,64,154,153,153,153,153,25,52,64,0,0,0,0,0,0,72,64,0,0,0,0,0,56,143,64,0,0,0,0,0,56,143,64,0,0,0,0,0,56,143,64,0,0,0,0,0,56,143,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,4,64,154,153,153,153,153,153,5,64,0,0,0,0,0,0,8,64,154,153,153,153,153,153,13,64,0,0,0,0,0,0,16,64,0,0,0,0,0,0,16,64,248,148,2,0,40,149,2,0,88,149,2,0,0,0,0,0,8,181,0,0,224,217,1,0,8,181,0,0,32,218,1,0,8,181,0,0,96,218,1,0,8,181,0,0,160,218,1,0,8,181,0,0,224,218,1,0,8,181,0,0,32,219,1,0,8,181,0,0,96,219,1,0,8,181,0,0,160,219,1,0,8,181,0,0,224,219,1,0,8,181,0,0,32,220,1,0,8,181,0,0,96,220,1,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,232,133,2,0,232,133,2,0,16,134,2,0,16,134,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,208,134,2,0,208,134,2,0,16,134,2,0,16,134,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,216,118,2,0,216,118,2,0,0,119,2,0,0,119,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,192,119,2,0,192,119,2,0,0,119,2,0,0,119,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,0,106,2,0,0,106,2,0,40,106,2,0,40,106,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,232,106,2,0,232,106,2,0,40,106,2,0,40,106,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,0,93,2,0,0,93,2,0,40,93,2,0,40,93,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,232,93,2,0,232,93,2,0,40,93,2,0,40,93,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,56,79,2,0,56,79,2,0,96,79,2,0,96,79,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,32,80,2,0,32,80,2,0,96,79,2,0,96,79,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,8,65,2,0,8,65,2,0,48,65,2,0,48,65,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,240,65,2,0,240,65,2,0,48,65,2,0,48,65,2,0,1,0,0,0,0,0,0,0,16,0,0,0,88,206,0,0,56,48,2,0,56,48,2,0,96,48,2,0,96,48,2,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,32,49,2,0,32,49,2,0,96,48,2,0,96,48,2,0,1,0,0,0,0,0,0,0,16,0,0,0,88,206,0,0,40,31,2,0,40,31,2,0,80,31,2,0,80,31,2,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,16,32,2,0,16,32,2,0,80,31,2,0,80,31,2,0,1,0,0,0,0,0,0,0,16,0,0,0,88,206,0,0,64,15,2,0,64,15,2,0,104,15,2,0,104,15,2,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,40,16,2,0,40,16,2,0,104,15,2,0,104,15,2,0,1,0,0,0,0,0,0,0,16,0,0,0,160,220,1,0,208,251,1,0,208,251,1,0,248,251,1,0,248,251,1,0,1,0,0,0,0,0,0,0,32,0,0,0,160,220,1,0,184,252,1,0,184,252,1,0,248,251,1,0,248,251,1,0,1,0,0,0,0,0,0,0,16,0,0,0,160,220,1,0,184,231,1,0,184,231,1,0,224,231,1,0,224,231,1,0,1,0,0,0,0,0,0,0,32,0,0,0,160,220,1,0,160,232,1,0,160,232,1,0,224,231,1,0,224,231,1,0,0,0,0,0,255,255,255,255,255,255,255,255,10,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+117696),d3([1,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,71,0,0,0,157,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,104,251,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,233,1,0,0,0,0,0,0,0,0,0,0,0,0,0,88,233,1,0,0,0,0,0,0,0,0,0,0,0,0,0,128,233,1,0,0,0,0,0,0,0,0,0,0,0,0,0,168,233,1,0,0,0,0,0,208,233,1,0,248,233,1,0,0,0,0,0,0,0,0,0,32,234,1,0,72,234,1,0,0,0,0,0,0,0,0,0,112,234,1,0,152,234,1,0,0,0,0,0,0,0,0,0,192,234,1,0,232,234,1,0,0,0,0,0,0,0,0,0,16,235,1,0,56,235,1,0,96,235,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,200,232,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,9,13,13,14,15,14,14,15,15,5,5,9,10,12,12,13,14,16,15,10,6,6,6,8,11,12,13,16,15,11,7,5,3,5,8,10,12,15,15,10,10,7,4,3,5,8,10,12,12,12,12,9,7,5,4,6,8,10,13,13,12,11,9,7,5,5,6,9,12,14,12,12,10,8,6,6,6,7,11,13,12,14,13,10,8,7,7,7,10,11,11,12,13,12,11,10,8,8,9,0,0,0,0,4,0,0,0,81,0,0,0,0,251,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,88,251,1,0,0,0,0,0,4,0,0,0,113,2,0,0,112,248,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,250,1,0,0,0,0,0,2,0,0,0,81,0,0,0,240,247,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,72,248,1,0,0,0,0,0,2,0,0,0,33,1,0,0,128,246,1,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,168,247,1,0,0,0,0,0,4,0,0,0,81,0,0,0,24,246,1,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,112,246,1,0,0,0,0,0,2,0,0,0,121,0,0,0,104,245,1,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,232,245,1,0,0,0,0,0,2,0,0,0,169,0,0,0,128,244,1,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,48,245,1,0,0,0,0,0,2,0,0,0,25,0,0,0,72,244,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,104,244,1,0,0,0,0,0,2,0,0,0,169,0,0,0,96,243,1,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,16,244,1,0,0,0,0,0,2,0,0,0,121,0,0,0,176,242,1,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,48,243,1,0,0,0,0,0,2,0,0,0,225,0,0,0,136,241,1,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,112,242,1,0,0,0,0,0,2,0,0,0,185,1,0,0,112,239,1,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,48,241,1,0,0,0,0,0,2,0,0,0,225,0,0,0,72,238,1,0,1,0,0,0,0,117,153,225,0,24,61,97,4,0,0,0,0,0,0,0,48,239,1,0,0,0,0,0,2,0,0,0,105,1,0,0,136,236,1,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,248,237,1,0,0,0,0,0,1,0,0,0,49,0,0,0,136,235,1,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,192,235,1,0,0,0,0,0,2,4,4,5,4,5,5,5,5,6,6,6,6,6,6,6,6,6,6,7,6,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,8,7,8,7,9,8,10,9,10,10,11,11,12,12,4,7,6,9,9,10,9,9,8,10,10,11,10,12,10,13,12,13,12,4,6,6,9,9,9,9,9,9,10,10,11,11,11,12,12,12,12,12,7,9,8,11,10,10,10,11,10,11,11,12,12,13,12,13,13,13,13,7,8,9,10,10,11,11,10,10,11,11,11,12,13,13,13,13,14,14,8,9,9,11,11,12,11,12,12,13,12,12,13,13,14,15,14,14,14,8,9,9,10,11,11,11,12,12,13,12,13,13,14,14,14,15,14,16,8,9,9,11,10,12,12,12,12,15,13,13,13,17,14,15,15,15,14,8,9,9,10,11,11,12,13,12,13,13,13,14,15,14,14,14,16,15,9,11,10,12,12,13,13,13,13,14,14,16,15,14,14,14,15,15,17,9,10,10,11,11,13,13,13,14,14,13,15,14,15,14,15,16,15,16,10,11,11,12,12,13,14,15,14,15,14,14,15,17,16,15,15,17,17,10,12,11,13,12,14,14,13,14,15,15,15,15,16,17,17,15,17,16,11,12,12,14,13,15,14,15,16,17,15,17,15,17,15,15,16,17,15,11,11,12,14,14,14,14,14,15,15,16,15,17,17,17,16,17,16,15,12,12,13,14,14,14,15,14,15,15,16,16,17,16,17,15,17,17,16,12,14,12,14,14,15,15,15,14,14,16,16,16,15,16,16,15,17,15,12,13,13,14,15,14,15,17,15,17,16,17,17,17,16,17,16,17,17,12,13,13,14,16,15,15,15,16,15,17,17,15,17,15,17,16,16,17,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,3,3,11,11,11,11,11,11,11,11,11,11,11,11,4,10,11,11,11,11,11,11,11,11,11,11,11,11,11,4,10,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,4,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,6,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,6,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,8,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,8,8,8,9,9,9,9,9,9,9,9,9,9,10,9,10,9,10,10,10,10,8,8,8,9,9,9,9,9,9,9,9,9,9,10,10,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,8,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,8,9,9,10,9,11,10,4,6,6,8,8,9,9,9,9,10,10,11,10,12,10,4,6,6,8,8,9,10,9,9,10,10,11,11,12,12,7,8,8,10,10,11,11,10,10,11,11,12,12,13,12,7,8,8,10,10,11,11,10,10,11,11,12,12,12,13,8,10,9,11,11,12,12,11,11,12,12,13,13,14,13,8,9,9,11,11,12,12,11,12,12,12,13,13,14,13,8,9,9,10,10,12,11,13,12,13,13,14,13,15,14,8,9,9,10,10,11,12,12,12,13,13,13,14,14,14,9,10,10,12,11,13,12,13,13,14,13,14,14,14,15,9,10,10,11,12,12,12,13,13,14,14,14,15,15,15,10,11,11,12,12,13,13,14,14,14,14,15,14,16,15,10,11,11,12,12,13,13,13,14,14,14,14,14,15,16,11,12,12,13,13,14,13,14,14,15,14,15,16,16,16,11,12,12,13,13,14,13,14,14,15,15,15,16,15,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,5,6,6,7,7,7,7,7,7,7,7,6,6,6,7,7,7,7,7,7,7,7,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,7,7,7,7,7,7,7,8,7,8,8,7,7,7,7,7,7,7,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,5,6,6,7,7,8,9,10,10,11,11,5,6,6,7,7,8,8,9,9,10,10,11,11,5,6,6,7,7,8,8,9,9,10,10,11,11,6,7,7,8,8,9,9,10,10,11,11,12,12,6,7,7,8,8,9,9,10,10,11,11,12,12,8,8,8,9,9,10,10,11,11,12,12,13,13,8,8,8,9,9,10,10,11,11,12,12,13,13,9,9,9,10,10,11,11,12,12,13,13,13,13,9,9,9,10,10,11,11,12,12,13,13,14,14,10,10,10,11,11,12,12,13,13,14,13,15,14,10,10,10,11,11,12,12,13,13,14,14,14,14,11,11,12,12,12,13,13,14,14,14,14,15,15,11,11,12,12,12,13,13,14,14,14,15,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,4,4,4,5,5,4,5,4,5,5,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,9,9,10,10,4,6,5,7,7,8,8,8,8,9,9,10,10,4,5,6,7,7,8,8,8,8,9,9,10,10,6,7,7,8,8,8,8,9,9,10,10,10,10,6,7,7,8,8,8,8,9,9,10,10,10,10,7,8,8,8,8,9,9,9,9,10,10,11,11,7,8,8,8,8,9,9,9,9,10,10,11,11,8,8,8,9,9,9,9,9,10,10,10,11,11,8,8,8,9,9,9,9,10,9,10,10,11,11,9,9,9,10,10,10,10,10,11,11,11,11,12,9,9,9,10,10,10,10,10,10,11,10,12,11,10,10,10,10,10,11,11,11,11,11,12,12,12,10,10,10,10,10,11,11,11,11,12,11,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,5,5,5,6,6,7,7,7,7,7,7,5,6,6,6,6,7,7,7,7,8,7,5,6,6,6,6,7,7,7,7,7,7,6,6,6,7,7,7,7,7,7,8,8,6,6,6,7,7,7,7,7,7,8,8,7,7,7,7,7,8,7,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,8,7,8,8,8,8,8,8,7,7,7,7,8,8,8,8,8,8,8,7,8,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,8,9,9,7,9,9,5,8,8,7,9,9,8,9,9,5,8,8,8,10,10,8,10,10,7,10,10,9,10,12,9,11,11,7,10,10,9,11,10,9,11,12,5,8,8,8,10,10,8,10,10,7,10,10,9,12,11,9,10,11,7,10,10,9,11,11,10,12,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,5,5,6,6,7,7,8,8,8,8,9,9,10,10,11,11,5,5,5,6,6,7,7,8,8,8,8,9,9,10,10,11,11,5,5,5,6,6,7,7,8,8,8,8,9,9,10,10,11,11,6,6,6,7,6,7,7,8,8,9,9,10,10,11,11,12,11,6,6,6,6,7,7,7,8,8,9,9,10,10,11,11,11,12,7,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,7,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,8,8,8,8,8,9,8,10,9,10,10,11,10,12,11,13,12,8,8,8,8,8,9,9,9,10,10,10,10,11,11,12,12,12,8,8,8,9,9,9,9,10,10,11,10,12,11,12,12,13,12,8,8,8,9,9,9,9,10,10,10,11,11,11,12,12,12,13,9,9,9,10,10,10,10,11,10,11,11,12,11,13,12,13,13,9,9,10,10,10,10,10,10,11,11,11,11,12,12,13,13,13,10,11,10,11,11,11,11,12,11,12,12,13,12,13,13,14,13,10,10,10,11,11,11,11,11,12,12,12,12,13,13,13,13,14,11,11,11,12,11,12,12,12,12,13,13,13,13,14,13,14,14,11,11,11,11,12,12,12,12,12,12,13,13,13,13,14,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,3,4,4,5,5,7,7,8,8,4,5,5,6,6,7,7,9,9,4,4,5,6,6,7,7,9,9,5,6,6,7,7,8,8,9,9,5,6,6,7,7,8,8,9,9,7,7,7,8,8,9,9,10,10,7,7,7,8,8,9,9,10,10,8,9,9,10,9,10,10,11,11,8,9,9,9,10,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,5,7,7,9,9,6,7,7,9,9,8,9,9,11,10,8,9,9,11,11,6,7,7,9,9,7,8,8,10,10,7,8,8,9,10,9,10,10,11,11,9,9,10,11,11,6,7,7,9,9,7,8,8,10,9,7,8,8,10,10,9,10,9,11,11,9,10,10,11,11,8,9,9,11,11,9,10,10,12,11,9,10,10,11,12,11,11,11,13,13,11,11,11,12,13,8,9,9,11,11,9,10,10,11,11,9,10,10,12,11,11,12,11,13,12,11,11,12,13,13,6,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,11,9,10,10,11,12,7,8,8,10,10,8,9,9,11,11,8,9,9,10,10,10,11,11,12,12,10,10,11,12,12,7,8,8,10,10,8,9,8,10,10,8,9,9,10,10,10,11,10,12,11,10,10,11,12,12,9,10,10,11,12,10,11,11,12,12,10,11,10,12,12,12,12,12,13,13,11,12,12,13,13,9,10,10,11,11,9,10,10,12,12,10,11,11,12,13,11,12,11,13,12,12,12,12,13,14,6,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,11,11,9,10,10,11,12,7,8,8,10,10,8,9,9,11,10,8,8,9,10,10,10,11,10,12,12,10,10,11,11,12,7,8,8,10,10,8,9,9,10,10,8,9,9,10,10,10,11,10,12,12,10,11,10,12,12,9,10,10,12,11,10,11,11,12,12,9,10,10,12,12,12,12,12,13,13,11,11,12,12,14,9,10,10,11,12,10,11,11,12,12,10,11,11,12,12,11,12,12,14,14,12,12,12,13,13,8,9,9,11,11,9,10,10,12,11,9,10,10,12,12,11,12,11,13,13,11,11,12,13,13,9,10,10,12,12,10,11,11,12,12,10,11,11,12,12,12,12,12,14,14,12,12,12,13,13,9,10,10,12,11,10,11,10,12,12,10,11,11,12,12,11,12,12,14,13,12,12,12,13,14,11,12,11,13,13,11,12,12,13,13,12,12,12,14,14,13,13,13,13,15,13,13,14,15,15,11,11,11,13,13,11,12,11,13,13,11,12,12,13,13,12,13,12,15,13,13,13,14,14,15,8,9,9,11,11,9,10,10,11,12,9,10,10,11,12,11,12,11,13,13,11,12,12,13,13,9,10,10,11,12,10,11,10,12,12,10,10,11,12,13,12,12,12,14,13,11,12,12,13,14,9,10,10,12,12,10,11,11,12,12,10,11,11,12,12,12,12,12,14,13,12,12,12,14,13,11,11,11,13,13,11,12,12,14,13,11,11,12,13,13,13,13,13,15,14,12,12,13,13,15,11,12,12,13,13,12,12,12,13,14,11,12,12,13,13,13,13,14,14,15,13,13,13,14,14,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,7,5,7,7,5,7,7,7,9,9,7,9,9,5,7,7,7,9,9,7,9,9,5,7,7,7,9,9,7,9,9,8,9,9,9,10,11,9,11,11,7,9,9,9,11,10,9,11,11,5,7,7,7,9,9,8,9,10,7,9,9,9,11,11,9,10,11,7,9,10,9,11,11,9,11,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,9,16,18,18,17,17,17,17,17,17,5,8,11,12,11,12,17,17,16,16,6,6,8,8,9,10,14,15,16,16,6,7,7,4,6,9,13,16,16,16,6,6,7,4,5,8,11,15,17,16,7,6,7,6,6,8,9,10,14,16,11,8,8,7,6,6,3,4,10,15,14,12,12,10,5,6,3,3,8,13,15,17,15,11,6,8,6,6,9,14,17,15,15,12,8,10,9,9,12,15,0,0,0,0,2,0,0,0,100,0,0,0,216,14,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,72,253,1,0,0,0,0,0,0,0,0,0,0,0,0,0,112,253,1,0,0,0,0,0,0,0,0,0,0,0,0,0,152,253,1,0,0,0,0,0,0,0,0,0,0,0,0,0,192,253,1,0,0,0,0,0,232,253,1,0,16,254,1,0,0,0,0,0,0,0,0,0,56,254,1,0,96,254,1,0,0,0,0,0,0,0,0,0,136,254,1,0,176,254,1,0,0,0,0,0,0,0,0,0,216,254,1,0,0,255,1,0,0,0,0,0,0,0,0,0,40,255,1,0,80,255,1,0,120,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,224,252,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,9,13,14,14,15,14,14,15,15,5,4,6,8,10,12,12,14,15,15,9,5,4,5,8,10,11,13,16,16,10,7,4,3,5,7,9,11,13,13,10,9,7,4,4,6,8,10,12,14,13,11,9,6,5,5,6,8,12,14,13,11,10,8,7,6,6,7,10,14,13,11,12,10,8,7,6,6,9,13,12,11,14,12,11,9,8,7,9,11,11,12,14,13,14,11,10,8,8,9,0,0,0,0,4,0,0,0,81,0,0,0,112,14,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,200,14,2,0,0,0,0,0,4,0,0,0,113,2,0,0,224,11,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,14,2,0,0,0,0,0,2,0,0,0,81,0,0,0,96,11,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,184,11,2,0,0,0,0,0,2,0,0,0,33,1,0,0,240,9,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,24,11,2,0,0,0,0,0,4,0,0,0,81,0,0,0,136,9,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,224,9,2,0,0,0,0,0,2,0,0,0,121,0,0,0,216,8,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,88,9,2,0,0,0,0,0,2,0,0,0,169,0,0,0,240,7,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,160,8,2,0,0,0,0,0,2,0,0,0,25,0,0,0,184,7,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,7,2,0,0,0,0,0,2,0,0,0,169,0,0,0,208,6,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,128,7,2,0,0,0,0,0,2,0,0,0,121,0,0,0,32,6,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,160,6,2,0,0,0,0,0,2,0,0,0,225,0,0,0,248,4,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,224,5,2,0,0,0,0,0,2,0,0,0,185,1,0,0,224,2,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,160,4,2,0,0,0,0,0,2,0,0,0,81,0,0,0,96,2,2,0,1,0,0,0,0,24,125,225,0,24,61,97,4,0,0,0,0,0,0,0,184,2,2,0,0,0,0,0,2,0,0,0,105,1,0,0,160,0,2,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,16,2,2,0,0,0,0,0,1,0,0,0,49,0,0,0,160,255,1,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,216,255,1,0,0,0,0,0,2,3,4,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,8,7,8,6,9,7,10,8,11,10,11,11,11,11,4,7,6,9,9,10,9,9,9,10,10,11,10,11,10,11,11,13,11,4,7,7,9,9,9,9,9,9,10,10,11,10,11,11,11,12,11,12,7,9,8,11,11,11,11,10,10,11,11,12,12,12,12,12,12,14,13,7,8,9,10,11,11,11,10,10,11,11,11,11,12,12,14,12,13,14,8,9,9,11,11,11,11,11,11,12,12,14,12,15,14,14,14,15,14,8,9,9,11,11,11,11,12,11,12,12,13,13,13,13,13,13,14,14,8,9,9,11,10,12,11,12,12,13,13,13,13,15,14,14,14,16,16,8,9,9,10,11,11,12,12,12,13,13,13,14,14,14,15,16,15,15,9,10,10,11,12,12,13,13,13,14,14,16,14,14,16,16,16,16,15,9,10,10,11,11,12,13,13,14,15,14,16,14,15,16,16,16,16,15,10,11,11,12,13,13,14,15,15,15,15,15,16,15,16,15,16,15,15,10,11,11,13,13,14,13,13,15,14,15,15,16,15,15,15,16,15,16,10,12,12,14,14,14,14,14,16,16,15,15,15,16,16,16,16,16,16,11,12,12,14,14,14,14,15,15,16,15,16,15,16,15,16,16,16,16,12,12,13,14,14,15,16,16,16,16,16,16,15,16,16,16,16,16,16,12,13,13,14,14,14,14,15,16,15,16,16,16,16,16,16,16,16,16,12,13,14,14,14,16,15,16,15,16,16,16,16,16,16,16,16,16,16,12,14,13,14,15,15,15,16,15,16,16,15,16,16,16,16,16,16,16,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,3,3,9,9,9,9,9,9,4,9,9,9,9,9,9,9,9,5,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,6,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,9,8,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,10,9,10,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,9,10,10,9,10,8,9,8,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,8,9,8,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,9,10,10,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,7,9,8,10,9,11,10,4,6,6,8,8,10,9,9,9,10,10,11,10,12,10,4,6,6,8,8,10,10,9,9,10,10,11,11,11,12,7,8,8,10,10,11,11,11,10,12,11,12,12,13,11,7,8,8,10,10,11,11,10,10,11,11,12,12,13,13,8,10,10,11,11,12,11,12,11,13,12,13,12,14,13,8,10,9,11,11,12,12,12,12,12,12,13,13,14,13,8,9,9,11,10,12,11,13,12,13,13,14,13,14,13,8,9,9,10,11,12,12,12,12,13,13,14,15,14,14,9,10,10,12,11,13,12,13,13,14,13,14,14,14,14,9,10,10,12,12,12,12,13,13,14,14,14,15,14,14,10,11,11,13,12,13,12,14,14,14,14,14,14,15,15,10,11,11,12,12,13,13,14,14,14,15,15,14,16,15,11,12,12,13,12,14,14,14,13,15,14,15,15,15,17,11,12,12,13,13,14,14,14,15,15,14,15,15,14,17,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,7,7,5,6,6,7,7,7,7,7,7,7,7,5,6,6,7,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,8,8,6,7,7,7,7,7,7,7,7,7,8,7,7,7,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,8,8,8,8,7,7,7,8,7,8,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,5,6,6,7,7,8,8,10,10,11,11,5,6,6,7,7,8,8,9,9,11,10,12,11,5,6,6,7,7,8,8,9,9,10,11,11,12,6,7,7,8,8,9,9,10,10,11,11,12,12,6,7,7,8,8,9,9,10,10,11,12,13,12,7,8,8,9,9,10,10,11,11,12,12,13,13,8,8,8,9,9,10,10,11,11,12,12,13,13,9,9,9,10,10,11,11,12,12,13,13,14,14,9,9,9,10,10,11,11,12,12,13,13,14,14,10,11,11,12,11,13,12,13,13,14,14,15,15,10,11,11,11,12,12,13,13,14,14,14,15,15,11,12,12,13,13,14,13,15,14,15,15,16,15,11,11,12,13,13,13,14,14,14,15,15,15,16,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,4,4,5,5,4,5,5,5,5,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,9,9,10,10,4,6,5,7,7,8,8,8,8,9,9,10,10,4,6,6,7,7,8,8,8,8,9,9,10,10,6,7,7,7,8,8,8,8,9,9,10,10,10,6,7,7,8,8,8,8,9,8,10,9,11,10,7,8,8,8,8,8,9,9,9,10,10,11,11,7,8,8,8,8,9,8,9,9,10,10,11,11,8,8,8,9,9,9,9,9,10,10,10,11,11,8,8,8,9,9,9,9,10,9,10,10,11,11,9,9,9,9,10,10,10,10,10,10,11,11,12,9,9,9,10,9,10,10,10,10,11,10,12,11,10,10,10,10,10,11,11,11,11,11,12,12,12,10,10,10,10,11,11,11,11,11,12,11,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,8,8,5,5,5,6,6,7,7,8,8,8,8,5,5,5,6,6,7,7,7,8,8,8,6,6,6,7,7,7,7,8,8,8,8,6,6,6,7,7,7,7,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,8,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,8,8,8,8,8,8,8,8,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,8,9,9,7,9,9,5,8,8,7,9,9,8,9,9,5,8,8,8,10,10,8,10,10,7,10,10,9,10,12,9,12,11,7,10,10,9,11,10,9,11,12,5,8,8,8,10,10,8,10,10,7,10,10,9,11,11,9,10,11,7,10,10,9,11,11,10,12,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,4,4,6,6,7,7,8,8,8,8,10,10,11,11,11,11,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,6,6,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,6,6,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,7,7,7,8,8,9,8,10,9,10,9,11,10,12,11,13,12,7,7,7,8,8,8,9,9,10,9,10,10,11,11,12,12,13,8,8,8,9,9,9,9,10,10,11,10,11,11,12,12,13,13,8,8,8,9,9,9,10,10,10,10,11,11,11,12,12,12,13,8,9,9,9,9,10,9,11,10,11,11,12,11,13,12,13,13,8,9,9,9,9,9,10,10,11,11,11,11,12,12,13,13,13,10,10,10,10,10,11,10,11,11,12,11,13,12,13,13,14,13,10,10,10,10,10,10,11,11,11,11,12,12,13,13,13,13,14,11,11,11,11,11,12,11,12,12,13,12,13,13,14,13,14,14,11,11,11,11,11,11,12,12,12,12,13,13,13,13,14,14,14,11,12,12,12,12,13,12,13,12,13,13,14,13,14,14,14,14,11,12,12,12,12,12,12,13,13,13,13,13,14,14,14,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,3,4,4,5,5,7,7,9,9,4,5,4,6,6,7,7,9,9,4,4,5,6,6,7,7,9,9,5,6,6,7,7,8,8,10,10,6,6,6,7,7,8,8,10,10,7,7,7,8,8,9,9,11,10,7,7,7,8,8,9,9,10,11,9,9,9,10,10,11,10,12,11,9,9,9,9,10,11,11,11,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,5,7,6,9,9,5,6,7,9,9,8,9,9,11,11,8,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,11,12,5,7,7,9,9,7,8,7,10,10,7,8,8,10,10,9,10,9,12,11,9,10,10,12,12,8,9,9,12,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,14,11,11,12,13,14,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,11,13,13,11,12,12,14,14,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,11,12,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,11,12,13,10,11,11,12,13,6,8,8,10,10,8,9,8,11,10,8,9,9,11,11,10,11,10,13,12,10,11,11,13,13,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,12,13,13,14,12,13,13,14,14,9,10,10,12,12,10,11,10,13,12,10,11,11,13,13,11,13,12,14,13,12,13,13,14,14,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,12,12,7,8,8,10,10,8,9,9,11,11,8,8,9,10,11,10,11,11,13,13,10,10,11,12,13,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,11,13,13,10,11,11,13,12,9,10,10,12,12,10,11,11,13,13,10,10,11,12,13,12,13,13,14,14,12,12,13,13,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,15,14,12,13,13,14,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,12,12,12,14,13,11,12,12,14,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,14,15,12,13,13,14,15,9,10,10,12,12,10,11,10,13,12,10,11,11,13,13,12,13,12,15,14,12,13,13,14,15,11,12,12,14,14,12,13,13,14,14,12,13,13,15,14,14,14,14,14,16,14,14,15,16,16,11],"i8",L3,x.GLOBAL_BASE+124340),d3([12,12,14,14,11,12,12,14,14,12,13,13,14,15,13,14,13,16,14,14,14,14,16,16,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,14,14,9,10,10,12,12,10,11,11,13,13,10,10,11,12,13,12,13,13,15,14,12,12,13,13,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,14,14,12,13,13,15,14,11,12,12,14,13,12,13,13,15,14,11,12,12,13,14,14,15,14,16,15,13,13,14,13,16,11,12,12,14,14,12,13,13,14,15,12,13,12,15,14,14,14,14,16,15,14,15,13,16,14,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,7,5,7,7,5,7,7,8,9,9,7,9,9,5,7,7,7,9,9,8,9,9,5,7,7,7,9,9,7,9,9,7,9,9,9,10,11,9,11,10,7,9,9,9,11,10,9,10,11,5,7,7,7,9,9,7,9,9,7,9,9,9,11,10,9,10,10,8,9,9,9,11,11,9,11,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,6,14,18,18,17,17,17,17,17,17,4,7,9,9,10,13,15,17,17,17,6,7,5,6,8,11,16,17,16,17,5,7,5,4,6,10,14,17,17,17,6,6,6,5,7,10,13,16,17,17,7,6,7,7,7,8,7,10,15,16,12,9,9,6,6,5,3,5,11,15,14,14,13,5,5,7,3,4,8,15,17,17,13,7,7,10,6,6,10,15,17,17,16,10,11,14,10,10,15,17,0,0,0,0,2,0,0,0,100,0,0,0,192,30,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,184,16,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,16,2,0,0,0,0,0,0,0,0,0,0,0,0,0,8,17,2,0,0,0,0,0,0,0,0,0,0,0,0,0,48,17,2,0,0,0,0,0,0,0,0,0,0,0,0,0,88,17,2,0,0,0,0,0,0,0,0,0,0,0,0,0,128,17,2,0,0,0,0,0,168,17,2,0,208,17,2,0,0,0,0,0,0,0,0,0,248,17,2,0,32,18,2,0,0,0,0,0,0,0,0,0,72,18,2,0,112,18,2,0,152,18,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,80,16,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,9,14,13,15,14,16,13,13,14,5,5,7,7,8,9,11,10,12,15,10,6,5,6,6,9,10,10,13,16,10,6,6,6,6,8,9,9,12,15,14,7,6,6,5,6,6,8,12,15,10,8,7,7,6,7,7,7,11,13,14,10,9,8,5,6,4,5,9,12,10,9,9,8,6,6,5,3,6,11,12,11,12,12,10,9,8,5,5,8,10,11,15,13,13,13,12,8,6,7,0,0,0,0,4,0,0,0,81,0,0,0,88,30,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,176,30,2,0,0,0,0,0,4,0,0,0,81,0,0,0,240,29,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,72,30,2,0,0,0,0,0,4,0,0,0,113,2,0,0,96,27,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,29,2,0,0,0,0,0,4,0,0,0,113,2,0,0,208,24,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,27,2,0,0,0,0,0,2,0,0,0,81,0,0,0,80,24,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,168,24,2,0,0,0,0,0,2,0,0,0,81,0,0,0,208,23,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,40,24,2,0,0,0,0,0,4,0,0,0,81,0,0,0,104,23,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,192,23,2,0,0,0,0,0,2,0,0,0,121,0,0,0,184,22,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,56,23,2,0,0,0,0,0,2,0,0,0,121,0,0,0,8,22,2,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,136,22,2,0,0,0,0,0,2,0,0,0,121,0,0,0,88,21,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,216,21,2,0,0,0,0,0,2,0,0,0,121,0,0,0,168,20,2,0,1,0,0,0,0,226,120,225,0,232,51,97,4,0,0,0,0,0,0,0,40,21,2,0,0,0,0,0,2,0,0,0,169,0,0,0,192,19,2,0,1,0,0,0,0,96,18,225,0,128,184,96,4,0,0,0,0,0,0,0,112,20,2,0,0,0,0,0,1,0,0,0,49,0,0,0,192,18,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,248,18,2,0,0,0,0,0,2,4,4,4,4,5,5,5,5,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,6,5,8,6,9,8,10,9,11,10,4,6,6,8,8,9,9,11,10,11,11,11,11,4,6,6,8,8,10,9,11,11,11,11,11,12,6,8,8,10,10,11,11,12,12,13,12,13,13,6,8,8,10,10,11,11,12,12,12,13,14,13,8,10,10,11,11,12,13,14,14,14,14,15,15,8,10,10,11,12,12,13,13,14,14,14,14,15,9,11,11,13,13,14,14,15,14,16,15,17,15,9,11,11,12,13,14,14,15,14,15,15,15,16,10,12,12,13,14,15,15,15,15,16,17,16,17,10,13,12,13,14,14,16,16,16,16,15,16,17,11,13,13,14,15,14,17,15,16,17,17,17,17,11,13,13,14,15,15,15,15,17,17,16,17,16,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,10,10,10,10,10,10,10,10,4,10,10,10,10,10,10,10,10,10,10,4,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,7,7,5,6,6,7,7,7,7,7,7,7,7,5,6,6,6,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,8,8,6,7,7,7,7,7,7,7,7,8,8,7,7,7,7,7,8,7,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,10,11,11,4,6,6,7,7,9,9,11,10,12,12,5,6,5,7,7,9,9,10,11,12,12,6,7,7,8,8,10,10,11,11,13,13,6,7,7,8,8,10,10,11,12,13,13,8,9,9,10,10,11,11,12,12,14,14,8,9,9,10,10,11,11,12,12,14,14,10,10,10,11,11,13,12,14,14,15,15,10,10,10,12,12,13,13,14,14,15,15,11,12,12,13,13,14,14,15,14,16,15,11,12,12,13,13,14,14,15,15,15,16,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,3,4,4,6,6,7,7,8,8,8,8,4,5,5,6,6,8,7,8,8,8,8,4,5,5,6,6,7,8,8,8,8,8,6,7,6,7,7,8,8,9,9,9,9,6,6,7,7,7,8,8,9,9,9,9,7,8,7,8,8,9,9,9,9,9,9,7,7,8,8,8,9,9,9,9,9,9,8,8,8,9,9,9,9,10,9,9,9,8,8,8,9,9,9,9,9,9,9,10,8,8,8,9,9,9,9,10,9,10,10,8,8,8,9,9,9,9,9,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,9,8,8,9,9,7,10,10,5,8,9,7,9,10,8,9,9,4,9,9,9,11,10,8,10,10,7,11,10,10,10,12,10,12,12,7,10,10,10,12,11,10,12,12,5,9,9,8,10,10,9,11,11,7,11,10,10,12,12,10,11,12,7,10,11,10,12,12,10,12,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,9,9,4,5,4,6,6,8,7,9,9,4,4,5,6,6,7,7,9,9,5,6,6,7,7,8,8,10,10,5,6,6,7,7,8,8,10,10,7,8,7,8,8,10,9,11,11,7,7,8,8,8,9,10,11,11,9,9,9,10,10,11,10,12,11,9,9,9,10,10,11,11,11,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,7,8,10,10,4,5,5,8,7,8,8,11,11,3,5,5,7,7,8,9,11,11,6,8,7,9,9,10,10,12,12,6,7,8,9,10,10,10,12,12,8,8,8,10,10,12,11,13,13,8,8,9,10,10,11,11,13,13,10,11,11,12,12,13,13,14,14,10,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,6,7,6,9,9,6,6,7,9,9,8,9,9,11,11,8,9,9,10,11,6,7,7,9,9,7,8,8,10,10,6,7,8,9,10,9,10,10,12,12,9,9,10,11,12,6,7,7,9,9,6,8,7,10,9,7,8,8,10,10,9,10,9,12,11,9,10,10,12,11,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,13,14,11,11,12,13,13,8,9,9,11,11,9,10,10,12,11,9,10,10,12,12,11,12,11,13,13,11,12,12,13,13,6,7,7,9,9,7,8,7,10,10,7,7,8,10,10,9,10,10,12,11,9,10,10,12,12,7,8,8,10,10,8,8,9,11,11,8,9,9,11,11,10,11,11,12,12,10,10,11,12,13,6,7,7,10,10,7,9,8,11,10,8,8,9,10,11,10,11,10,13,11,10,11,11,12,12,9,10,10,12,12,10,10,11,13,13,10,11,11,13,12,12,12,13,13,14,12,12,13,14,14,9,10,10,12,12,9,10,10,12,12,10,11,11,13,13,11,12,11,14,12,12,13,13,14,14,6,7,7,9,9,7,8,7,10,10,7,7,8,10,10,9,10,10,12,11,9,10,10,11,12,6,7,7,10,10,8,9,8,11,10,7,8,9,10,11,10,11,11,13,12,10,10,11,11,13,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,10,13,12,10,11,11,12,12,9,10,10,12,12,10,11,11,13,12,9,10,10,12,13,12,13,12,14,14,11,11,12,12,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,12,14,14,12,13,12,14,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,13,13,9,10,10,12,12,10,11,11,13,13,10,11,11,13,12,12,13,13,14,14,12,12,13,14,14,9,10,10,12,12,9,11,10,13,12,10,10,11,12,13,11,13,12,14,13,12,12,13,14,14,11,12,12,13,13,11,12,13,14,14,12,13,13,14,14,13,13,14,14,16,13,14,14,16,16,11,11,11,13,13,11,12,11,14,13,12,12,13,14,15,13,14,12,16,13,14,14,14,15,16,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,13,14,9,10,10,12,12,10,11,10,13,12,9,10,11,12,13,12,13,12,14,14,12,12,13,13,14,9,10,10,12,12,10,11,11,12,13,10,11,11,13,13,12,13,12,14,14,12,13,13,14,14,11,12,12,13,13,12,13,12,14,14,11,11,12,13,14,13,15,14,16,15,13,12,14,13,16,11,12,12,13,13,12,13,13,14,14,12,12,12,14,14,13,14,14,15,15,13,14,13,16,14,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,4,8,8,5,7,6,9,9,5,6,7,9,9,8,9,9,13,12,8,9,10,12,13,5,7,7,10,9,7,9,9,11,11,6,8,9,11,11,10,11,11,14,14,9,10,11,13,14,5,7,7,9,9,7,9,8,11,11,7,9,9,11,11,9,11,10,14,13,10,11,11,14,14,8,10,10,14,13,10,11,12,15,14,9,11,11,15,14,13,14,14,16,16,12,13,14,17,16,8,10,10,13,13,9,11,11,14,15,10,11,12,14,15,12,14,13,16,16,13,14,15,15,17,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,12,11,15,14,10,11,12,14,14,7,9,9,12,12,9,11,11,13,13,9,11,11,13,13,11,13,13,14,17,11,13,13,15,16,6,9,9,11,11,8,11,10,13,12,9,11,11,13,13,11,13,12,16,14,11,13,13,16,16,10,12,12,15,15,11,13,13,16,16,11,13,13,16,15,14,16,17,17,19,14,16,16,18,0,9,11,11,14,15,10,13,12,16,15,11,13,13,16,16,14,15,14,0,16,14,16,16,18,0,5,7,7,10,10,7,9,9,12,11,7,9,9,11,12,10,11,11,15,14,10,11,12,14,14,6,9,9,11,11,9,11,11,13,13,8,10,11,12,13,11,13,13,17,15,11,12,13,14,15,7,9,9,11,12,9,11,11,13,13,9,11,11,13,13,11,13,12,16,16,11,13,13,15,14,9,11,11,14,15,11,13,13,16,15,10,12,13,16,16,15,16,16,0,0,14,13,15,16,18,10,11,11,15,15,11,13,14,16,18,11,13,13,16,15,15,16,16,19,0,14,15,15,16,16,8,10,10,13,13,10,12,11,16,15,10,11,11,16,15,13,15,16,18,0,13,14,15,17,17,9,11,11,15,15,11,13,13,16,18,11,13,13,16,17,15,16,16,0,0,15,18,16,0,17,9,11,11,15,15,11,13,12,17,15,11,13,14,16,17,15,18,15,0,17,15,16,16,18,19,13,15,14,0,18,14,16,16,19,18,14,16,15,19,19,16,18,19,0,0,16,17,0,0,0,12,14,14,17,17,13,16,14,0,18,14,16,15,18,0,16,18,16,19,17,18,19,17,0,0,8,10,10,14,14,9,12,11,15,15,10,11,12,15,17,13,15,15,18,16,14,16,15,18,17,9,11,11,16,15,11,13,13,0,16,11,12,13,16,15,15,16,16,0,17,15,15,16,18,17,9,12,11,15,17,11,13,13,16,16,11,14,13,16,16,15,15,16,18,19,16,18,16,0,0,12,14,14,0,16,14,16,16,0,18,13,14,15,16,0,17,16,18,0,0,16,16,17,19,0,13,14,14,17,0,14,17,16,0,19,14,15,15,18,19,17,16,18,0,0,15,19,16,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,5,6,6,5,6,6,5,6,6,6,8,8,6,7,8,5,6,6,6,8,7,6,8,8,5,6,6,6,8,7,6,8,8,6,8,8,8,9,9,8,9,9,6,8,7,7,9,8,8,9,9,5,6,6,6,8,7,6,8,8,6,8,8,8,9,9,7,8,9,6,8,8,8,9,9,8,9,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,4,7,7,5,7,7,5,8,8,8,10,10,7,10,10,5,8,8,7,10,10,8,10,10,5,8,8,8,11,10,8,10,10,8,10,10,10,12,13,10,13,13,7,10,10,10,13,12,10,13,13,5,8,8,8,11,10,8,10,11,7,10,10,10,13,13,10,12,13,8,11,11,10,13,13,10,13,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,12,17,16,16,17,17,17,17,17,4,7,11,11,12,9,17,10,17,17,7,7,8,9,7,9,11,10,15,17,7,9,10,11,10,12,14,12,16,17,7,8,5,7,4,7,7,8,16,16,6,10,9,10,7,10,11,11,16,17,6,8,8,9,5,7,5,8,16,17,5,5,8,7,6,7,7,6,6,14,12,10,12,11,7,11,4,4,2,7,17,15,15,15,8,15,6,8,5,9,0,0,0,0,2,0,0,0,100,0,0,0,208,47,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,32,2,0,0,0,0,0,0,0,0,0,0,0,0,0,200,32,2,0,0,0,0,0,0,0,0,0,0,0,0,0,240,32,2,0,0,0,0,0,0,0,0,0,0,0,0,0,24,33,2,0,0,0,0,0,0,0,0,0,0,0,0,0,64,33,2,0,0,0,0,0,0,0,0,0,0,0,0,0,104,33,2,0,0,0,0,0,144,33,2,0,184,33,2,0,0,0,0,0,0,0,0,0,224,33,2,0,8,34,2,0,0,0,0,0,0,0,0,0,48,34,2,0,88,34,2,0,128,34,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,56,32,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,9,14,13,14,13,16,12,13,14,5,4,6,6,8,9,11,10,12,15,10,5,5,6,6,8,10,10,13,16,10,6,6,6,6,8,9,9,12,14,13,7,6,6,4,6,6,7,11,14,10,7,7,7,6,6,6,7,10,13,15,10,9,8,5,6,5,6,10,14,10,9,8,8,6,6,5,4,6,11,11,11,12,11,10,9,9,5,5,9,10,12,15,13,13,13,13,8,7,7,0,0,0,0,4,0,0,0,81,0,0,0,104,47,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,192,47,2,0,0,0,0,0,4,0,0,0,81,0,0,0,0,47,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,88,47,2,0,0,0,0,0,4,0,0,0,113,2,0,0,112,44,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,46,2,0,0,0,0,0,4,0,0,0,113,2,0,0,224,41,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,44,2,0,0,0,0,0,2,0,0,0,81,0,0,0,96,41,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,184,41,2,0,0,0,0,0,2,0,0,0,81,0,0,0,224,40,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,56,41,2,0,0,0,0,0,4,0,0,0,81,0,0,0,120,40,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,208,40,2,0,0,0,0,0,2,0,0,0,121,0,0,0,200,39,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,72,40,2,0,0,0,0,0,2,0,0,0,121,0,0,0,24,39,2,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,152,39,2,0,0,0,0,0,2,0,0,0,121,0,0,0,104,38,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,232,38,2,0,0,0,0,0,2,0,0,0,225,0,0,0,64,37,2,0,1,0,0,0,0,228,91,225,0,224,255,96,4,0,0,0,0,0,0,0,40,38,2,0,0,0,0,0,2,0,0,0,225,0,0,0,24,36,2,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,0,37,2,0,0,0,0,0,2,0,0,0,33,1,0,0,168,34,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,208,35,2,0,0,0,0,0,3,5,5,7,7,8,8,8,8,8,8,9,8,8,9,9,9,5,6,6,7,7,8,8,8,8,8,8,9,9,9,9,9,9,5,6,6,7,7,8,8,8,8,8,8,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,9,9,9,9,9,9,9,9,9,9,9,10,9,9,9,10,9,9,9,9,9,9,9,9,9,9,10,9,9,9,10,9,9,10,9,9,9,9,9,9,9,9,9,10,10,10,9,10,9,10,10,9,9,9,9,9,9,9,9,9,10,10,9,10,10,9,9,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,7,7,8,9,8,8,9,8,9,8,9,9,4,7,6,8,8,9,9,9,9,9,9,9,9,9,9,4,7,6,9,9,10,10,9,9,10,10,10,10,11,11,7,9,8,10,10,11,11,10,10,11,11,11,11,11,11,7,8,9,10,10,11,11,10,10,11,11,11,11,11,12,8,10,10,11,11,12,12,11,11,12,12,12,12,13,12,8,10,10,11,11,12,11,11,11,11,12,12,12,12,13,8,9,9,11,10,11,11,12,12,12,12,13,12,13,12,8,9,9,11,11,11,11,12,12,12,12,12,13,13,13,9,10,10,11,12,12,12,12,12,13,13,13,13,13,13,9,10,10,11,11,12,12,12,12,13,13,13,13,14,13,10,10,10,12,11,12,12,13,13,13,13,13,13,13,13,10,10,11,11,11,12,12,13,13,13,13,13,13,13,13,10,11,11,12,12,13,12,12,13,13,13,13,13,13,14,10,11,11,12,12,13,12,13,13,13,14,13,13,14,13,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,2,9,8,15,15,15,15,15,15,15,15,15,15,4,8,9,13,14,14,14,14,14,14,14,14,14,14,14,5,8,9,14,14,14,14,14,14,14,14,14,14,14,14,11,14,14,14,14,14,14,14,14,14,14,14,14,14,14,11,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,3,5,5,6,6,7,7,7,7,7,7,5,6,5,7,7,7,7,8,7,8,8,5,5,6,6,7,7,7,7,7,8,8,6,7,7,7,7,8,7,8,8,8,8,6,6,7,7,7,7,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,7,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,10,10,4,6,6,7,7,9,9,10,10,11,11,4,6,6,7,7,9,9,10,10,11,11,6,8,8,9,9,10,10,11,11,12,12,6,8,8,9,9,10,10,11,11,12,12,8,9,9,10,10,11,11,12,12,13,13,8,9,9,10,10,11,11,12,12,13,13,10,10,10,11,11,13,13,13,13,15,14,9,10,10,12,11,12,13,13,13,14,15,11,12,12,13,13,13,13,15,14,15,15,11,11,12,13,13,14,14,14,15,15,15,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,3,4,4,6,6,7,7,8,8,8,8,4,5,5,7,6,8,8,8,8,8,8,4,5,5,6,7,8,8,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,7,8,8,8,8,8,8,9,9,9,9,7,8,8,8,8,8,8,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,9,8,7,10,10,8,10,10,5,8,9,7,10,10,7,10,9,4,8,8,9,11,11,8,11,11,7,11,11,10,10,13,10,13,13,7,11,11,10,13,12,10,13,13,5,9,8,8,11,11,9,11,11,7,11,11,10,13,13,10,12,13,7,11,11,10,13,13,9,13,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,9,9,4,5,4,6,6,7,7,9,9,4,4,5,6,6,7,8,9,9,5,6,6,7,7,8,8,10,10,5,6,6,7,7,8,8,10,10,7,8,7,8,8,10,9,11,11,7,7,8,8,8,9,10,10,11,9,9,9,10,10,11,11,12,11,9,9,9,10,10,11,11,11,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,8,8,10,10,4,5,5,8,7,8,8,11,11,3,5,5,7,8,8,8,11,11,6,8,7,9,9,10,9,12,11,6,7,8,9,9,9,10,11,12,8,8,8,10,9,12,11,13,13,8,8,9,9,10,11,12,13,13,10,11,11,12,12,13,13,14,14,10,10,11,11,12,13,13,14,14,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,6,7,6,9,9,6,6,7,9,9,8,9,9,11,11,8,9,9,11,11,6,7,7,9,9,7,8,8,10,10,7,7,8,9,10,9,10,10,11,11,9,9,10,11,12,6,7,7,9,9,7,8,7,10,9,7,8,8,10,10,9,10,9,12,11,9,10,10,12,11,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,11,12,13,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,11,13,12,11,12,12,13,13,5,7,7,9,9,7,8,7,10,10,7,7,8,10,10,9,10,10,12,11,9,10,10,11,12,7,8,8,10,10,8,8,9,11,11,8,9,9,11,11,10,10,11,12,13,10,10,11,12,12,6,7,7,10,10,7,9,8,11,10,8,8,9,10,11,10,11,10,13,11,10,11,11,12,12,9,10,10,12,12,10,10,11,13,13,10,11,11,12,13,12,12,12,13,14,12,12,13,14,14,9,10,10,12,12,9,10,10,13,12,10,11,11,13,13,11,12,11,14,12,12,13,13,14,14,6,7,7,9,9,7,8,7,10,10,7,8,8,10,10,9,10,10,12,11,9,10,10,11,12,6,7,7,10,10,8,9,8,11,10,7,8,9,10,11,10,11,11,12,12,10,10,11,11,13,7,8,8,10,10,8,9,9,11,11,8,9,8,11,11,10,11,10,13,12,10,11,11,13,12,9,10,10,12,12,10,11,11,13,12,9,10,10,12,13,12,13,12,14,14,11,11,12,12,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,12,12,14,14,12,13,12,14,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,13,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,12,13,14,15,12,12,13,14,14,9,10,10,12,12,9,11,10,13,12,10,10,11,12,13,12,13,12,14,13,12,12,13,14,15,11,12,12,14,13,11,12,12,14,14,12,13,13,14,14,13,13,14,14,16,13,14,14,15,15,11,12,11,13,13,11,12,11,14,13,12,12,13,14,15,12,14,12,15,12,13,14,15,15,16,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,13,13,9,10,10,12,12,10,11,10,13,12,9,10,11,12,13,12,13,12,14,14,12,12,13,13,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,12,14,14,12,13,13,14,14,11,11,11,13,13,12,13,12,14,14,11,11,12,13,14,14,14,14,16,15,12,12,14,12,15,11,12,12,13,14,12,13,13,14,15,11,12,12,14,14,13,14,14,16,16,13,14,13,16,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,4,8,8,5,7,6,9,9,5,6,7,9,9,8,9,9,13,12,8,9,10,12,13,5,7,7,10,9,7,9,9,11,11,7,8,9,11,11,10,11,11,14,14,9,10,11,13,14,5,7,7,9,10,6,9,8,11,11,7,9,9,11,11,9,11,10,14,13,10,11,11,14,13,8,10,10,13,13,10,11,11,15,15,9,11,11,14,14,13,14,14,17,16,12,13,14,16,16,8,10,10,13,14,9,11,11,14,15,10,11,12,14,15,12,14,13,16,15,13,14,14,15,17,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,12,11,14,14,10,11,11,14,14,7,9,9,12,11,9,11,11,13,13,9,11,11,13,13,11,13,13,14,15,11,12,13,15,16,6,9,9,11,12,8,11,10,13,12,9,11,11,13,14,11,13,12,16,14,11,13,13,15,16,10,12,11,14,15,11,13,13,15,17,11,13,13,17,16,15,15,16,17,16,14,15,16,18,0,9,11,11,14,15,10,12,12,16,15,11,13,13,16,16,13,15,14,18,15,14,16,16,0,0,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,11,11,14,14,10,11,12,14,14,6,9,9,11,11,9,11,11,13,13,8,10,11,12,13,11,13,13,16,15,11,12,13,14,16,7,9,9,11,12,9,11,11,13,13,9,11,11,13,13,11,13,13,16,15,11,13,12,15,15,9,11,11,15,14,11,13,13,17,16,10,12,13,15,16,14,16,16,0,18,14,14,15,15,17,10,11,12,15,15,11,13,13,16,16,11,13,13,16,16,14,16,16,19,17,14,15,15,17,17,8,10,10,14,14,10,12,11,15,15,10,11,12,16,15,14,15,15,18,20,13,14,16,17,18,9,11,11,15,16,11,13,13,17,17,11,13,13,17,16,15,16,16,0,0,15,16,16,0,0,9,11,11,15,15,10,13,12,17,15,11,13,13,17,16,15,17,15,20,19,15,16,16,19,0,13,15,14,0,17,14,15,16,0,20,15,16,16,0,19,17,18,0,0,0,16,17,18,0,0,12,14,14,19,18,13,15,14,0,17,14,15,16,19,19,16,18,16,0,19,19,20,17,20,0,8,10,10,13,14,10,11,11,15,15,10,12,12,15,16,14,15,14,19,16,14,15,15,0,18,9,11,11,16,15,11,13,13,0,16,11,12,13,16,17,14,16,17,0,19,15,16,16,18,0,9,11,11,15,16,11,13,13,16,16,11,14,13,18,17,15,16,16,18,20,15,17,19,0,0,12,14,14,17,17,14,16,15,0,0,13,14,15,19,0,16,18,20,0,0,16,16,18,18,0,12,14,14,17,20,14,16,16,19,0,14,16,14,0,20,16,20,17,0,0,17,0,15,0,19,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,5,6,6,5,6,6,5,6,6,6,8,8,6,7,8,5,6,6,6,8,7,6,8,8,5,6,6,6,8,8,6,8,8,6,8,8,8,9,9,8,9,9,6,7,7,7,9,8,8,9,9,5,6,6,6,8,7,6,8,8,6,8,8,8,9,9,7,8,9,6,8,8,8,9,9,8,9,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,4,8,7,5,7,7,5,8,8,8,10,10,7,9,10,5,8,8,7,10,9,8,10,10,5,8,8,8,10,10,8,10,10,8,10,10,10,12,13,10,13,13,7,10,10,10,13,11,10,13,13,5,8,8,8,11,10,8,10,10,7,10,10,10,13,13,10,11,13,8,10,11,10,13,13,10,13,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,11,16,13,17,13,17,16,17,17,4,7,9,9,13,10,16,12,16,17,7,6,5,7,8,9,12,12,16,17,6,9,7,9,10,10,15,15,17,17,6,7,5,7,5,7,7,10,16,17,7,9,8,9,8,10,11,11,15,17,7,7,7,8,5,8,8,9,15,17,8,7,9,9,7,8,7,2,7,15,14,13,13,15,5,10,4,3,6,17,17,15,13,17,7,11,7,6,9,16,0,0,0,0,2,0,0,0,100,0,0,0,160,64,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,176,49,2,0,0,0,0,0,0,0,0,0,0,0,0,0,216,49,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,2,0,0,0,0,0,0,0,0,0,0,0,0,0,40,50,2,0,0,0,0,0,0,0,0,0,0,0,0,0,80,50,2,0,0,0,0,0,0,0,0,0,0,0,0,0,120,50,2,0,0,0,0,0,160,50,2,0,200,50,2,0,0,0,0,0,0,0,0,0,240,50,2,0,24,51,2,0,0,0,0,0,0,0,0,0,64,51,2,0,104,51,2,0,144,51,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,72,49,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,13,12,14,12,16,11,13,14,5,4,5,6,7,8,10,9,12,15,10,5,5,5,6,8,9,9,13,15,10,5,5,6,6,7,8,8,11,13,12,7,5,6,4,6,7,7,11,14,11,7,7,6,6,6,7,6,10,14,14,9,8,8,6,7,7,7,11,16,11,8,8,7,6,6,7,4,7,12,10,10,12,10,10,9,10,5,6,9,10,12,15,13,14,14,14,8,7,8,0,0,0,0,4,0,0,0,81,0,0,0,56,64,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,144,64,2,0,0,0,0,0,4,0,0,0,81,0,0,0,208,63,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,40,64,2,0,0,0,0,0,4,0,0,0,113,2,0,0,64,61,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,184,63,2,0,0,0,0,0,4,0,0,0,113,2,0,0,176,58,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,40,61,2,0,0,0,0,0,2,0,0,0,81,0,0,0,48,58,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,136,58,2,0,0,0,0,0,2,0,0,0,81,0,0,0,176,57,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,8,58,2,0,0,0,0,0,4,0,0,0,81,0,0,0,72,57,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,160,57,2,0,0,0,0,0,2,0,0,0,121,0,0,0,152,56,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,24,57,2,0,0,0,0,0,2,0,0,0,121,0,0,0,232,55,2,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,104,56,2,0,0,0,0,0,2,0,0,0,121,0,0,0,56,55,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,184,55,2,0,0,0,0,0,2,0,0,0,169,0,0,0,80,54,2,0,1,0,0,0,0,232,87,225,0,224,255,96,4,0,0,0,0,0,0,0,0,55,2,0,0,0,0,0,2,0,0,0,225,0,0,0,40,53,2,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,16,54,2,0,0,0,0,0,2,0,0,0,33,1,0,0,184,51,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,52,2,0,0,0,0,0,2,5,5,7,7,8,8,8,8,8,8,9,9,9,9,9,9,5,6,6,7,7,8,8,9,8,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,9,8,9,9,9,9,9,9,9,9,7,7,7,8,8,9,8,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,9,8,9,9,9,9,9,9,9,9,9,9,8,8,8,8,9,9,9,9,9,9,9,9,10,9,10,10,10,8,8,8,9,8,9,9,9,9,9,9,9,10,9,10,9,10,8,9,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,8,9,9,9,9,9,9,10,9,10,9,10,10,10,10,10,10,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,9,10,9,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,10,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,7,8,7,9,8,9,9,4,7,6,9,8,10,10,9,8,9,9,9,9,9,8,5,6,6,8,9,10,10,9,9,9,10,10,10,10,11,7,8,8,10,10,11,11,10,10,11,11,11,12,11,11,7,8,8,10,10,11,11,10,10,11,11,12,11,11,11,8,9,9,11,11,12,12,11,11,12,11,12,12,12,12,8,9,10,11,11,12,12,11,11,12,12,12,12,12,12,8,9,9,10,10,12,11,12,12,12,12,12,12,12,13,8,9,9,11,11,11,11,12,12,12,12,13,12,13,13,9,10,10,11,11,12,12,12,13,12,13,13,13],"i8",L3,x.GLOBAL_BASE+134580),d3([14,13,9,10,10,11,11,12,12,12,13,13,12,13,13,14,13,9,11,10,12,11,13,12,12,13,13,13,13,13,13,14,9,10,10,12,12,12,12,12,13,13,13,13,13,14,14,10,11,11,12,12,12,13,13,13,14,14,13,14,14,14,10,11,11,12,12,12,12,13,12,13,14,13,14,14,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,2,12,10,13,13,13,13,13,13,13,13,4,9,9,13,13,13,13,13,13,13,13,13,13,5,10,9,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,6,6,7,7,7,7,7,7,5,6,5,7,6,7,7,8,8,8,8,5,5,5,6,6,7,7,8,8,8,8,6,7,6,7,7,8,8,8,8,8,8,6,6,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,10,10,4,6,6,7,7,9,9,10,10,11,11,4,6,6,7,7,9,9,10,10,11,11,6,8,7,9,9,10,10,11,11,13,12,6,8,8,9,9,10,10,11,11,12,13,8,9,9,10,10,12,12,13,12,14,13,8,9,9,10,10,12,12,13,13,14,14,9,11,11,12,12,13,13,14,14,15,14,9,11,11,12,12,13,13,14,14,15,14,11,12,12,13,13,14,14,15,14,15,14,11,11,12,13,13,14,14,14,14,15,15,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,4,5,5,7,7,8,8,9,8,8,9,4,5,5,7,7,8,8,9,9,8,9,6,7,7,8,8,9,8,9,9,9,9,6,7,7,8,8,9,9,9,9,9,9,7,8,8,9,9,9,9,9,9,9,9,7,8,8,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,9,9,8,11,10,7,11,10,5,9,9,7,10,10,8,10,11,4,9,9,9,12,12,9,12,12,8,12,12,11,12,12,10,12,13,7,12,12,11,12,12,10,12,13,4,9,9,9,12,12,9,12,12,7,12,11,10,13,13,11,12,12,7,12,12,10,13,13,11,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,9,9,4,5,4,6,6,7,7,9,9,4,4,5,6,6,7,7,9,9,5,6,6,7,7,8,8,10,10,6,6,6,7,7,8,8,10,10,7,7,7,8,8,9,9,11,10,7,7,7,8,8,9,9,10,11,9,9,9,10,10,11,10,11,11,9,9,9,10,10,11,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,8,8,10,10,4,5,5,8,7,8,8,11,10,3,5,5,7,8,8,8,10,11,6,8,7,10,9,10,10,11,11,6,7,8,9,9,9,10,11,12,8,8,8,10,10,11,11,13,12,8,8,9,9,10,11,11,12,13,10,11,10,12,11,13,12,14,14,10,10,11,11,12,12,13,14,14,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,6,7,6,9,9,6,6,7,9,9,8,9,9,11,11,8,9,9,11,11,6,7,7,9,9,7,8,8,10,10,6,7,8,9,10,9,10,10,11,12,9,9,10,11,12,6,7,7,9,9,6,8,7,10,9,7,8,8,10,10,9,10,9,12,11,9,10,10,12,11,8,9,9,12,11,9,10,10,12,12,9,10,10,12,12,11,12,12,13,14,11,11,12,13,14,8,9,9,11,12,9,10,10,12,12,9,10,10,12,12,11,12,11,14,13,11,12,12,13,13,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,12,12,7,8,8,10,10,8,8,9,10,11,8,9,9,11,11,10,10,11,11,13,10,11,11,12,13,6,7,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,13,11,10,11,11,12,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,11,13,12,15,12,13,13,14,15,9,10,10,12,12,9,11,10,13,12,10,11,11,13,13,11,13,11,14,12,12,13,13,14,15,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,12,12,6,8,7,10,10,8,9,9,11,11,7,8,9,10,11,10,11,11,12,12,10,10,11,11,13,7,8,8,10,10,8,9,9,11,11,8,9,8,11,10,10,11,11,13,12,10,11,10,13,11,9,10,10,12,12,10,11,11,13,12,9,10,10,12,13,12,13,13,14,15,11,11,13,12,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,13,13,14,14,12,13,11,14,12,8,9,9,12,12,9,10,10,12,12,9,10,10,12,12,12,12,12,14,14,11,12,12,14,13,9,10,10,12,12,10,11,11,13,13,10,11,11,13,12,12,12,13,14,15,12,13,13,15,14,9,10,10,12,12,10,11,10,13,12,10,11,11,12,13,12,13,12,15,13,12,13,13,14,15,11,12,12,14,13,11,12,12,14,15,12,13,13,15,14,13,12,14,12,16,13,14,14,15,15,11,11,12,14,14,11,12,11,14,13,12,13,13,14,15,13,14,12,16,12,14,14,15,16,16,8,9,9,11,12,9,10,10,12,12,9,10,10,12,13,11,12,12,13,13,12,12,13,14,14,9,10,10,12,12,10,11,10,13,12,10,10,11,12,13,12,13,13,15,14,12,12,13,13,15,9,10,10,12,13,10,11,11,12,13,10,11,11,13,13,12,13,13,14,15,12,13,12,15,14,11,12,11,14,13,12,13,13,15,14,11,11,12,13,14,14,15,14,16,15,13,12,14,13,16,11,12,12,13,14,12,13,13,14,15,11,12,11,14,14,14,14,14,15,16,13,15,12,16,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,5,8,8,5,7,6,9,9,5,6,7,9,9,8,10,9,13,12,8,9,10,12,12,5,7,7,10,10,7,9,9,11,11,6,8,9,11,11,10,11,11,14,14,9,10,11,13,14,5,7,7,9,10,7,9,8,11,11,7,9,9,11,11,9,11,10,14,13,10,11,11,14,14,8,10,10,13,13,10,11,11,15,14,9,11,11,14,14,13,14,14,17,16,12,13,13,15,16,8,10,10,13,13,9,11,11,14,15,10,11,11,14,15,12,14,13,16,16,13,15,14,15,17,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,11,11,14,14,10,11,12,14,14,7,9,9,12,11,9,11,11,13,13,9,11,11,13,13,12,13,13,15,16,11,12,13,15,16,6,9,9,11,11,8,11,10,13,12,9,11,11,13,14,11,13,12,16,14,11,13,13,16,17,10,12,11,15,15,11,13,13,16,16,11,13,13,17,16,14,15,15,17,17,14,16,16,17,18,9,11,11,14,15,10,12,12,15,15,11,13,13,16,17,13,15,13,17,15,14,15,16,18,0,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,11,11,14,14,10,11,12,14,15,6,9,9,12,11,9,11,11,13,13,8,10,11,12,13,11,13,13,16,15,11,12,13,14,15,7,9,9,11,12,9,11,11,13,13,9,11,11,13,13,11,13,13,15,16,11,13,13,15,14,9,11,11,15,14,11,13,13,17,15,10,12,12,15,15,14,16,16,17,17,13,13,15,15,17,10,11,12,15,15,11,13,13,16,16,11,13,13,15,15,14,15,15,18,18,14,15,15,17,17,8,10,10,13,13,10,12,11,15,15,10,11,12,15,15,14,15,15,18,18,13,14,14,18,18,9,11,11,15,16,11,13,13,17,17,11,13,13,16,16,15,15,16,17,0,14,15,17,0,0,9,11,11,15,15,10,13,12,18,16,11,13,13,15,16,14,16,15,20,20,14,15,16,17,0,13,14,14,20,16,14,15,16,19,18,14,15,15,19,0,18,16,0,20,20,16,18,18,0,0,12,14,14,18,18,13,15,14,18,16,14,15,16,18,20,16,19,16,0,17,17,18,18,19,0,8,10,10,14,14,10,11,11,14,15,10,11,12,15,15,13,15,14,19,17,13,15,15,17,0,9,11,11,16,15,11,13,13,16,16,10,12,13,15,17,14,16,16,18,18,14,15,15,18,0,9,11,11,15,15,11,13,13,16,17,11,13,13,18,17,14,18,16,18,18,15,17,17,18,0,12,14,14,18,18,14,15,15,20,0,13,14,15,17,0,16,18,17,0,0,16,16,0,17,20,12,14,14,18,18,14,16,15,0,18,14,16,15,18,0,16,19,17,0,0,17,18,16,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,5,6,6,5,6,6,5,6,6,6,8,8,6,7,8,5,6,6,6,8,7,6,8,8,5,6,6,6,8,8,6,8,8,6,8,8,8,9,9,8,9,9,6,8,7,7,9,8,8,9,9,5,6,6,6,8,7,6,8,8,6,8,7,8,9,9,7,8,9,6,8,8,8,9,9,8,9,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,7,5,8,8,8,10,10,7,9,10,5,8,8,7,10,9,8,10,10,5,8,8,8,10,10,8,10,10,8,10,10,10,12,13,10,13,13,7,10,10,10,13,11,10,13,13,4,8,8,8,11,10,8,10,10,7,10,10,10,13,13,10,11,13,8,10,11,10,13,13,10,13,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,10,17,13,17,13,17,17,17,17,3,6,8,9,11,9,15,12,16,17,6,5,5,7,7,8,10,11,17,17,7,8,7,9,9,10,13,13,17,17,8,6,5,7,4,7,5,8,14,17,9,9,8,9,7,9,8,10,16,17,12,10,7,8,4,7,4,7,16,17,12,11,9,10,6,9,5,7,14,17,14,13,10,15,4,8,3,5,14,17,17,14,11,15,6,10,6,8,15,17,0,0,0,0,2,0,0,0,64,0,0,0,248,78,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,128,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,168,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,208,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,248,66,2,0,0,0,0,0,32,67,2,0,72,67,2,0,0,0,0,0,0,0,0,0,112,67,2,0,152,67,2,0,192,67,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,24,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,12,12,13,12,11,13,5,4,6,7,8,8,9,13,9,5,4,5,5,7,9,13,9,6,5,6,6,7,8,12,12,7,5,6,4,5,8,13,11,7,6,6,5,5,6,12,10,8,8,7,7,5,3,8,10,12,13,12,12,9,6,7,4,0,0,0,81,0,0,0,144,78,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,232,78,2,0,0,0,0,0,4,0,0,0,81,0,0,0,40,78,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,128,78,2,0,0,0,0,0,4,0,0,0,113,2,0,0,152,75,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,78,2,0,0,0,0,0,4,0,0,0,113,2,0,0,8,73,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,128,75,2,0,0,0,0,0,2,0,0,0,81,0,0,0,136,72,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,224,72,2,0,0,0,0,0,2,0,0,0,169,0,0,0,160,71,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,80,72,2,0,0,0,0,0,2,0,0,0,25,0,0,0,104,71,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,71,2,0,0,0,0,0,2,0,0,0,169,0,0,0,128,70,2,0,1,0,0,0,0,232,87,225,0,224,255,96,4,0,0,0,0,0,0,0,48,71,2,0,0,0,0,0,2,0,0,0,225,0,0,0,88,69,2,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,64,70,2,0,0,0,0,0,2,0,0,0,33,1,0,0,232,67,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,16,69,2,0,0,0,0,0,2,5,5,7,7,7,7,8,8,8,8,9,9,9,9,9,9,5,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,7,7,7,8,8,8,8,9,9,9,9,10,9,10,9,10,10,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,8,9,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,8,8,8,9,9,9,9,9,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,10,10,10,10,10,10,10,10,11,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,10,10,10,10,10,10,10,10,10,10,11,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,9,8,10,8,10,9,11,11,4,7,6,8,7,9,9,10,10,11,10,11,10,12,10,4,6,7,8,8,9,9,10,10,11,11,11,11,12,12,6,8,8,10,9,11,10,12,11,12,12,12,12,13,13,6,8,8,10,10,10,11,11,11,12,12,13,12,13,13,8,9,9,11,11,12,11,12,12,13,13,13,13,13,13,8,9,9,11,11,11,12,12,12,13,13,13,13,13,13,9,10,10,12,11,13,13,13,13,14,13,13,14,14,14,9,10,11,11,12,12,13,13,13,13,13,14,15,14,14,10,11,11,12,12,13,13,14,14,14,14,14,15,16,16,10,11,11,12,13,13,13,13,15,14,14,15,16,15,16,10,12,12,13,13,14,14,14,15,15,15,15,15,15,16,11,12,12,13,13,14,14,14,15,15,15,16,15,17,16,11,12,12,13,13,13,15,15,14,16,16,16,16,16,17,11,12,12,13,13,14,14,15,14,15,15,17,17,16,16,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,3,12,12,12,12,12,12,12,12,12,12,3,12,11,12,12,12,12,12,12,12,12,12,12,4,11,10,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,6,5,4,5,5,5,6,5,6,5,6,6,5,5,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,11,10,13,13,4,6,5,8,8,9,9,10,10,11,11,14,14,4,6,6,8,8,9,9,10,10,11,11,14,14,6,8,8,9,9,10,10,11,11,12,12,15,15,6,8,8,9,9,10,11,11,11,12,12,15,15,8,9,9,11,10,11,11,12,12,13,13,16,16,8,9,9,10,10,11,11,12,12,13,13,16,16,10,10,10,12,11,12,12,13,13,14,14,16,16,10,10,10,11,12,12,12,13,13,13,14,16,17,11,12,11,12,12,13,13,14,14,15,14,18,17,11,11,12,12,12,13,13,14,14,14,15,19,18,14,15,14,15,15,17,16,17,17,17,17,21,0,14,15,15,16,16,16,16,17,17,18,17,20,21,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,7,7,9,9,4,5,5,7,7,8,8,10,9,4,5,5,7,7,8,8,10,10,6,7,7,8,8,9,9,11,10,6,7,7,8,8,9,9,10,11,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,10,10,11,10,11,11,12,12,9,10,10,10,11,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,5,7,6,9,9,5,6,7,9,9,9,9,9,11,11,8,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,7,8,10,10,9,10,10,11,12,9,10,10,11,12,5,7,7,9,9,7,8,7,10,10,7,8,8,10,10,9,10,10,12,11,9,10,10,12,11,9,10,9,12,12,9,10,10,13,12,9,10,10,12,12,12,12,12,14,14,11,12,12,13,14,9,9,10,12,12,9,10,10,13,13,9,10,10,12,13,11,12,12,14,13,11,12,12,14,14,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,9,10,10,12,12,7,8,8,11,10,8,8,9,11,11,8,9,9,11,11,11,11,11,12,13,10,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,13,11,10,11,11,13,13,9,11,10,13,12,10,11,11,13,14,10,11,11,14,13,12,12,13,12,15,12,13,13,15,15,9,10,10,12,13,10,11,10,13,12,10,11,11,13,14,12,13,11,15,13,13,13,13,15,15,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,10,10,11,12,13,6,8,8,10,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,7,8,8,10,11,8,9,9,11,11,8,9,8,11,11,10,11,11,13,13,11,12,11,13,12,9,10,10,13,12,10,11,11,14,13,10,10,11,12,13,12,13,13,15,15,12,11,13,13,14,9,10,11,12,13,10,11,11,13,14,10,11,11,13,13,12,13,13,15,15,12,13,12,15,12,8,9,9,12,12,9,11,10,13,13,9,10,10,13,13,12,13,13,15,15,12,12,12,14,14,9,10,10,13,13,10,11,11,13,14,10,11,11,14,13,13,13,14,14,16,13,13,13,15,15,9,10,10,13,13,10,11,10,14,13,10,11,11,13,14,12,14,13,16,14,12,13,13,14,15,11,12,12,15,14,11,12,13,14,15,12,13,13,16,15,14,12,15,12,16,14,15,15,16,16,11,12,12,14,14,11,13,12,15,14,12,13,13,15,16,13,15,13,17,13,14,15,15,16,17,8,9,9,12,12,9,10,10,12,13,9,10,10,13,13,12,12,12,14,14,12,13,13,15,15,9,10,10,13,12,10,11,11,14,13,10,10,11,13,14,13,13,13,15,15,12,13,14,14,16,9,10,10,13,13,10,11,11,13,14,10,11,11,14,14,13,13,13,15,15,13,14,13,16,14,11,12,12,15,14,12,13,13,16,15,11,12,13,14,15,14,15,15,17,16,13,13,15,13,16,11,12,13,14,15,13,13,13,15,16,11,13,12,15,14,14,15,15,16,16,14,15,12,17,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,8,8,5,7,7,9,9,5,7,7,9,9,8,10,9,12,12,8,9,10,12,12,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,12,11,14,14,9,10,11,13,14,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,9,11,10,14,13,10,11,11,14,14,8,10,10,14,13,10,12,12,15,14,9,11,11,15,14,13,14,14,17,17,12,14,14,16,16,8,10,10,14,14,9,11,11,14,15,10,12,12,14,15,12,14,13,16,16,13,14,15,15,18,4,7,7,10,10,7,9,9,12,11,7,9,9,11,12,10,12,11,15,14,10,11,12,14,15,7,9,9,12,12,9,11,12,13,13,9,11,12,13,13,12,13,13,15,16,11,13,13,15,16,7,9,9,12,12,9,11,10,13,12,9,11,12,13,14,11,13,12,16,14,12,13,13,15,16,10,12,12,16,15,11,13,13,17,16,11,13,13,17,16,14,15,15,17,17,14,16,16,18,20,9,11,11,15,16,11,13,12,16,16,11,13,13,16,17,14,15,14,18,16,14,16,16,17,20,5,7,7,10,10,7,9,9,12,11,7,9,10,11,12,10,12,11,15,15,10,12,12,14,14,7,9,9,12,12,9,12,11,14,13,9,10,11,12,13,12,13,14,16,16,11,12,13,14,16,7,9,9,12,12,9,12,11,13,13,9,12,11,13,13,11,13,13,16,16,12,13,13,16,15,9,11,11,16,14,11,13,13,16,16,11,12,13,16,16,14,16,16,17,17,13,14,15,16,17,10,12,12,15,15,11,13,13,16,17,11,13,13,16,16,14,16,15,19,19,14,15,15,17,18,8,10,10,14,14,10,12,12,15,15,10,12,12,16,16,14,16,15,20,19,13,15,15,17,16,9,12,12,16,16,11,13,13,16,18,11,14,13,16,17,16,17,16,20,0,15,16,18,18,20,9,11,11,15,15,11,14,12,17,16,11,13,13,17,17,15,17,15,20,20,14,16,16,17,0,13,15,14,18,16,14,15,16,0,18,14,16,16,0,0,18,16,0,0,20,16,18,18,0,0,12,14,14,17,18,13,15,14,20,18,14,16,15,19,19,16,20,16,0,18,16,19,17,19,0,8,10,10,14,14,10,12,12,16,15,10,12,12,16,16,13,15,15,18,17,14,16,16,19,0,9,11,11,16,15,11,14,13,18,17,11,12,13,17,18,14,17,16,18,18,15,16,17,18,18,9,12,12,16,16,11,13,13,16,18,11,14,13,17,17,15,16,16,18,20,16,17,17,20,20,12,14,14,18,17,14,16,16,0,19,13,14,15,18,0,16,0,0,0,0,16,16,0,19,20,13,15,14,0,0,14,16,16,18,19,14,16,15,0,20,16,20,18,0,20,17,20,17,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,6,6,5,6,6,5,6,6,7,8,8,6,8,8,5,6,6,6,8,8,7,8,8,5,7,6,6,8,8,6,8,8,6,8,8,8,9,10,8,10,10,6,8,8,8,10,8,8,10,10,5,6,6,6,8,8,6,8,8,6,8,8,8,10,10,8,8,10,6,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,10,11,8,10,11,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,11,11,11,13,14,11,15,14,8,11,11,10,13,12,11,14,14,4,8,8,8,11,11,8,11,11,7,11,11,11,15,14,10,12,14,8,11,11,11,14,14,11,14,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,14,17,15,17,16,14,13,16,10,7,7,10,13,10,15,16,9,4,4,6,5,7,9,16,12,8,7,8,8,8,11,16,14,7,4,6,3,5,8,15,13,8,5,7,4,5,7,16,12,9,6,8,3,3,5,16,14,13,7,10,5,5,7,15,2,0,0,0,64,0,0,0,192,92,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,80,2,0,0,0,0,0,0,0,0,0,0,0,0,0,176,80,2,0,0,0,0,0,0,0,0,0,0,0,0,0,216,80,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,81,2,0,0,0,0,0,0,0,0,0,0,0,0,0,40,81,2,0,0,0,0,0,80,81,2,0,120,81,2,0,0,0,0,0,0,0,0,0,160,81,2,0,200,81,2,0,240,81,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,72,80,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,9,13,12,14,11,10,13,8,4,5,7,8,7,8,12,11,4,3,5,5,7,9,14,11,6,5,6,6,6,7,13,13,7,5,6,4,5,7,14,11,7,6,6,5,5,6,13,9,7,8,6,7,5,3,9,9,12,13,12,14,10,6,7,4,0,0,0,81,0,0,0,88,92,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,176,92,2,0,0,0,0,0,4,0,0,0,81,0,0,0,240,91,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,72,92,2,0,0,0,0,0,4,0,0,0,113,2,0,0,96,89,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,91,2,0,0,0,0,0,4,0,0,0,113,2,0,0,208,86,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,89,2,0,0,0,0,0,2,0,0,0,81,0,0,0,80,86,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,168,86,2,0,0,0,0,0,2,0,0,0,169,0,0,0,104,85,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,24,86,2,0,0,0,0,0,2,0,0,0,25,0,0,0,48,85,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,80,85,2,0,0,0,0,0,2,0,0,0,81,0,0,0,176,84,2,0,1,0,0,0,0,224,63,225,0,224,255,96,4,0,0,0,0,0,0,0,8,85,2,0,0,0,0,0,2,0,0,0,225,0,0,0,136,83,2,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,112,84,2,0,0,0,0,0,2,0,0,0,33,1,0,0,24,82,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,64,83,2,0,0,0,0,0,2,5,5,7,6,7,7,8,8,8,8,9,9,9,9,9,9,5,6,6,7,7,8,8,8,8,9,9,9,9,9,9,10,10,5,6,6,7,7,8,8,8,8,9,8,9,9,9,9,10,9,7,7,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,7,7,7,8,8,8,8,9,9,9,9,10,9,10,10,10,10,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,7,8,8,9,8,9,9,9,9,10,9,10,10,10,10,10,10,8,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,8,9,8,9,9,9,9,10,9,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,11,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,11,11,11,10,11,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,6,8,7,9,8,10,9,11,11,4,7,7,8,7,9,9,10,10,11,11,11,11,12,12,4,7,7,7,7,9,9,10,10,11,11,12,12,12,11,6,8,8,9,9,10,10,11,11,12,12,13,12,13,13,6,8,8,9,9,10,11,11,11,12,12,13,14,13,13,8,9,9,11,11,12,12,12,13,14,13,14,14,14,15,8,9,9,11,11,11,12,13,14,13,14,15,17,14,15,9,10,10,12,12,13,13,13,14,15,15,15,16,16,16,9,11,11,12,12,13,13,14,14,14,15,16,16,16,16,10,12,12,13,13,14,14,15,15,15,16,17,17,17,17,10,12,11,13,13,15,14,15,14,16,17,16,16,16,16,11,13,12,14,14,14,14,15,16,17,16,17,17,17,17,11,13,12,14,14,14,15,17,16,17,17,17,17,17,17,12,13,13,15,16,15,16,17,17,16,16,17,17,17,17,12,13,13,15,15,15,16,17,17,17,16,17,16,17,17,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,3,10,10,10,10,10,10,4,10,10,10,10,10,10,10,10,4,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,6,5,4,5,5,5,6,5,6,5,6,6,5,5,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,10,11,13,14,4,6,5,8,8,9,9,10,10,11,11,14,14,4,6,6,8,8,9,9,10,10,11,11,14,14,6,8,8,9,9,10,10,11,11,12,12,15,15,6,8,8,9,9,10,11,11,11,12,12,15,15,8,9,9,11,10,11,11,12,12,13,13,15,16,8,9,9,10,11,11,11,12,12,13,13,16,16,10,10,11,11,11,12,12,13,13,13,14,17,16,9,10,11,12,11,12,12,13,13,13,13,16,18,11,12,11,12,12,13,13,13,14,15,14,17,17,11,11,12,12,12,13,13,13,14,14,15,18,17,14,15,15,15,15,16,16,17,17,19,18,0,20,14,15,14,15,15,16,16,16,17,18,16,20,18,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,7,7,9,9,4,5,5,7,7,8,8,10,10,4,5,5,7,7,8,8,10,10,6,7,7,8,8,9,9,11,10,6,7,7,8,8,9,9,10,10,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,10,10,11,10,11,11,12,12,9,10,10,10,10,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,5,7,6,9,9,5,6,7,9,9,9,9,9,11,11,9,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,7,8,10,10,9,10,10,11,12,9,10,10,11,12,5,7,7,9,9,7,8,7,10,10,7,8,8,10,10,9,10,9,12,11,9,10,10,12,11,9,10,9,12,12,9,10,10,13,12,9,10,10,12,13,12,12,12,14,14,11,12,12,13,14,9,9,10,12,12,9,10,10,12,12,9,10,10,12,13,11,12,11,14,13,12,12,12,14,13,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,9,10,10,12,12,7,8,8,11,10,8,8,9,11,11,8,9,9,11,11,11,11,11,12,13,10,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,13,11,10,11,11,13,13,9,11,10,13,12,10,11,11,13,13,10,11,11,13,13,12,12,13,12,15,12,13,13,15,15,9,10,10,12,13,10,11,10,13,12,10,11,11,13,14,12,13,11,15,13,12,13,13,15,15,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,10,10,11,12,12,6,8,8,10,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,11,13,13,11,11,11,13,12,9,10,10,13,12,10,11,11,14,13,10,10,11,12,13,12,13,13,15,15,12,11,13,13,14,9,10,11,12,13,10,11,11,13,13,10,11,11,13,13,12,13,13,15,15,12,13,12,15,12,8,9,9,12,12,9,11,10,13,13,9,10,10,13,13,12,13,13,15,14,12,12,12,14,13,9,10,10,13,12,10,11,11,13,13,10,11,11,14,12,13,13,14,14,16,12,13,13,15,15,9,10,10,13,13,10,11,10,14,13,10,11,11,13,14,12,14,13,15,14,13,13,13,15,15,11,13,12,15,14,11,12,13,14,15,12,13,13,16,14,14,12,15,12,16,14,15,15,17,15,11,12,12,14,14,11,13,11,15,14,12,13,13,15,15,13,15,12,17,13,14,15,15,16,16,8,9,9,12,12,9,10,10,12,13,9,10,10,13,13,12,12,12,14,14,12,13,13,15,15,9,10,10,13,12,10,11,11,14,13,10,10,11,13,14,12,13,13,15,15,12,12,13,14,16,9,10,10,13,13,10,11,11,13,14,10,11,11,14,13,12,13,13,14,15,13,14,13,16,14,11,12,12,14,14,12,13,13,15,14,11,12,13,14,15,14,15,15,16,16,13,13,15,13,16,11,12,12,14,15,12,13,13,14,15,11,13,12,15,14,14,15,15,16,16,14,15,12,16,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,7,7,5,7,7,9,9,5,7,7,9,9,8,9,9,12,12,8,9,9,11,12,5,7,7,10,10,7,9,9,11,11,7,9,9,10,11,10,11,11,13,13,9,10,11,13,13,5,7,7,10,10,7,9,9,11,10,7,9,9,11,11,9,11,10,13,13,10,11,11,14,13,8,10,10,14,13,10,11,11,15,14,9,11,11,14,14,13,14,13,16,16,12,13,13,15,15,8,10,10,13,14,9,11,11,14,14,10,11,11,14,15,12,13,13,15,15,13,14,14,15,16,5,7,7,10,10,7,9,9,11,11,7,9,9,11,12,10,11,11,14,14,10,11,11,14,14,7,9,9,12,12,9,11,11,13,13,9,11,11,13,13,12,12,13,15,15,11,12,13,15,16,7,9,9,11,11,8,11,10,13,12,9,11,11,13,13,11,13,12,15,13,11,13,13,15,16,9,12,11,15,14,11,12,13,16,15,11,13,13,15,16,14,14,15,17,16,13,15,16,0,17,9,11,11,15,15,10,13,12,15,15,11,13,13,15,16,13,15,13,16,15,14,16,15,0,19,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,12,11,14,14,10,11,12,14,14,7,9,9,12,12,9,11,11,14,13,9,10,11,12,13,11,13,13,16,16,11,12,13,13,16,7,9,9,12,12,9,11,11,13,13,9,11,11,13,13,11,13,13,15,15,12,13,12,15,14,9,11,11,15,14,11,13,12,16,16,10,12,12,15,15,13,15,15,17,19,13,14,15,16,17,10,12,12,15,15,11,13,13,16,16,11,13,13,15,16,13,15,15,0,0,14,15,15,16,16,8,10,10,14,14,10,12,12,15,15,10,12,11,15,16,14,15,15,19,20,13,14,14,18,16,9,11,11,15,15,11,13,13,17,16,11,13,13,16,16,15,17,17,20,20,14,15,16,17,20,9,11,11,15,15,10,13,12,16,15,11,13,13,15,17,14,16,15,18,0,14,16,15,18,20,12,14,14,0,0,14,14,16,0,0,13,16,15,0,0,17,17,18,0,0,16,17,19,19,0,12,14,14,18,0,12,16,14,0,17,13,15,15,18,0,16,18,17,0,17,16,18,17,0,0,7,10,10,14,14,10,12,11,15,15,10,12,12,16,15,13,15,15,18,0,14,15,15,17,0,9,11,11,15,15,11,13,13,16,16,11,12,13,16,16,14,15,16,17,17,14,16,16,16,18,9,11,12,16,16,11,13,13,17,17,11,14,13,20,17,15,16,16,19,0,15,16,17,0,19,11,13,14,17,16,14,15,15,20,18,13,14,15,17,19,16,18,18,0,20,16,16,19,17,0,12,15,14,17,0,14,15,15,18,19,13,16,15,19,20,15,18,18,0,20,17,0,16,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,4,5,6,6,5,6,6,5,6,6,7,8,8,6,8,8,5,6,6,6,8,8,7,8,8,5,7,6,7,8,8,6,8,8,7,8,8,8,9,10,8,10,10,6,8,8,8,10,8,8,10,10,5,6,6,6,8,8,7,8,8,6,8,8,8,10,10,8,8,10,7,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,10,11,8,10,11,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,11,11,11,13,14,11,14,14,8,11,11,10,14,12,11,14,14,4,8,8,8,11,11,8,11,11,7,11,11,11,14,14,10,12,14,8,11,11,11,14,14,11,14,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,14,14,14,15,13,15,12,16,10,8,7,9,9,8,12,16,10,5,4,6,5,6,9,16,14,8,6,8,7,8,10,16,14,7,4,6,3,5,8,16,15,9,5,7,4,4,7,16,13,10,6,7,4,3,4,13,13,12,7,9,5,5,6,12,2,0,0,0,64,0,0,0,192,105,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,120,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,160,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,200,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,240,94,2,0,0,0,0,0,24,95,2,0,64,95,2,0,0,0,0,0,0,0,0,0,104,95,2,0,144,95,2,0,184,95,2],"i8",L3,x.GLOBAL_BASE+144820),d3([2,0,0,0,64,0,0,0,16,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,9,14,12,15,13,10,13,7,4,5,6,8,7,8,12,13,4,3,5,5,6,9,15,12,6,5,6,6,6,7,14,14,7,4,6,4,6,8,15,12,6,6,5,5,5,6,14,9,7,8,6,7,5,4,10,10,13,14,14,15,10,6,8,4,0,0,0,81,0,0,0,88,105,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,176,105,2,0,0,0,0,0,4,0,0,0,81,0,0,0,240,104,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,72,105,2,0,0,0,0,0,4,0,0,0,113,2,0,0,96,102,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,104,2,0,0,0,0,0,4,0,0,0,113,2,0,0,208,99,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,102,2,0,0,0,0,0,2,0,0,0,81,0,0,0,80,99,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,168,99,2,0,0,0,0,0,2,0,0,0,169,0,0,0,104,98,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,24,99,2,0,0,0,0,0,2,0,0,0,25,0,0,0,48,98,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,80,98,2,0,0,0,0,0,2,0,0,0,81,0,0,0,176,97,2,0,1,0,0,0,0,32,53,225,0,32,245,96,4,0,0,0,0,0,0,0,8,98,2,0,0,0,0,0,2,0,0,0,169,0,0,0,200,96,2,0,1,0,0,0,0,128,211,224,0,0,122,96,4,0,0,0,0,0,0,0,120,97,2,0,0,0,0,0,2,0,0,0,169,0,0,0,224,95,2,0,1,0,0,0,0,0,88,224,0,0,16,96,4,0,0,0,0,0,0,0,144,96,2,0,0,0,0,0,2,5,5,6,6,7,7,8,7,8,8,8,8,5,6,6,7,7,8,8,8,8,8,8,8,8,5,6,6,7,7,8,7,8,8,8,8,8,8,6,7,7,7,8,8,8,8,8,9,9,9,9,6,7,7,8,7,8,8,9,9,9,9,9,9,7,8,8,8,8,8,8,9,9,9,9,9,9,7,8,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,9,9,9,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,9,9,9,9,8,8,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,6,7,6,8,7,9,7,9,8,4,7,6,8,8,9,8,10,9,10,10,11,11,4,7,7,8,8,8,8,9,10,11,11,11,11,6,8,8,10,10,10,10,11,11,12,12,12,12,7,8,8,10,10,10,10,11,11,12,12,13,13,7,9,9,11,10,12,12,13,13,14,13,14,14,7,9,9,10,11,11,12,13,13,13,13,16,14,9,10,10,12,12,13,13,14,14,15,16,15,16,9,10,10,12,12,12,13,14,14,14,15,16,15,10,12,12,13,13,15,13,16,16,15,17,17,17,10,11,11,12,14,14,14,15,15,17,17,15,17,11,12,12,14,14,14,15,15,15,17,16,17,17,10,12,12,13,14,14,14,17,15,17,17,17,17,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,12,12,12,12,12,12,4,12,12,12,12,12,12,12,12,5,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,6,5,4,5,5,5,6,5,6,5,6,6,5,5,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,10,11,11,14,13,4,6,5,8,8,9,9,11,10,12,11,15,14,4,5,6,8,8,9,9,11,11,11,11,14,14,6,8,8,10,9,11,11,11,11,12,12,15,15,6,8,8,9,9,11,11,11,12,12,12,15,15,8,10,10,11,11,11,11,12,12,13,13,15,16,8,10,10,11,11,11,11,12,12,13,13,16,16,10,11,11,12,12,12,12,13,13,13,13,17,16,10,11,11,12,12,12,12,13,13,13,14,16,17,11,12,12,13,13,13,13,14,14,15,14,18,17,11,12,12,13,13,13,13,14,14,14,15,19,18,14,15,15,15,15,16,16,18,19,18,18,0,0,14,15,15,16,15,17,17,16,18,17,18,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,8,8,9,9,4,6,5,8,8,8,8,10,10,4,5,6,8,8,8,8,10,10,7,8,8,9,9,9,9,11,11,7,8,8,9,9,9,9,11,11,8,8,8,9,9,10,11,12,12,8,8,8,9,9,10,10,12,12,10,10,10,11,11,12,12,13,13,10,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,5,7,6,9,9,5,6,7,9,9,9,9,9,11,11,9,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,7,8,10,10,10,10,10,11,12,9,10,10,11,12,5,7,7,9,9,6,8,7,10,10,7,8,8,10,10,9,10,10,12,11,9,10,10,12,11,9,10,10,12,12,10,10,10,13,12,9,10,10,12,13,12,12,12,14,14,11,12,12,13,14,9,10,10,12,12,9,10,10,12,13,10,10,10,12,13,11,12,12,14,13,12,12,12,14,13,5,7,7,10,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,10,10,10,12,12,7,8,8,11,10,8,8,9,11,11,8,9,9,11,11,10,11,11,12,13,10,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,13,11,10,11,11,13,13,9,10,10,13,13,10,11,11,13,13,10,11,11,14,13,12,11,13,12,15,12,13,13,15,15,9,10,10,12,13,10,11,10,13,13,10,11,11,13,13,12,13,11,15,13,12,13,13,15,15,5,7,7,9,10,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,10,10,11,12,12,6,8,8,10,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,7,8,8,10,11,8,9,9,11,11,8,9,8,11,11,10,11,11,13,13,10,11,11,13,12,9,10,10,13,12,10,11,11,14,13,10,10,11,13,13,12,13,13,15,15,12,11,13,12,14,9,10,10,12,13,10,11,11,13,14,10,11,11,13,13,12,13,13,15,15,12,13,12,15,12,8,9,9,12,12,9,11,10,13,13,9,10,10,13,13,12,13,13,15,15,12,12,12,14,14,9,10,10,13,13,10,11,11,13,14,10,11,11,14,12,13,13,14,14,16,12,13,13,15,14,9,10,10,13,13,10,11,10,14,13,10,11,11,13,14,12,14,13,16,14,13,13,13,14,15,11,13,12,15,14,11,12,13,14,15,12,13,13,16,15,14,12,15,12,16,14,15,15,17,16,11,12,12,14,15,11,13,11,15,14,12,13,13,15,16,13,15,12,17,13,14,15,15,16,16,8,9,9,12,12,9,10,10,13,13,9,10,10,13,13,12,13,12,14,14,12,13,13,15,15,9,10,10,13,13,10,11,11,14,13,10,10,11,13,14,12,13,13,15,14,12,12,14,14,16,9,10,10,13,13,10,11,11,13,14,10,11,11,14,13,13,13,13,15,15,13,14,13,16,14,11,12,12,14,14,12,13,13,16,15,11,12,13,14,15,14,15,15,16,16,14,13,15,13,17,11,12,12,14,15,12,13,13,15,16,11,13,12,15,15,14,15,14,16,16,14,15,12,17,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,7,8,5,7,7,9,9,5,7,7,9,9,8,9,9,12,11,8,9,9,11,12,5,7,7,10,10,7,9,9,11,11,7,9,9,10,11,10,11,11,13,13,9,10,11,12,13,5,7,7,10,10,7,9,9,11,10,7,9,9,11,11,9,11,10,13,13,10,11,11,13,13,8,10,10,14,13,10,11,11,15,14,9,11,11,15,14,13,14,13,16,14,12,13,13,15,16,8,10,10,13,14,9,11,11,14,15,10,11,11,14,15,12,13,13,15,15,12,13,14,15,16,5,7,7,10,10,7,9,9,11,11,7,9,9,11,12,10,11,11,14,13,10,11,11,14,14,7,9,9,12,12,9,11,11,13,13,9,11,11,13,13,12,13,12,14,14,11,12,13,15,15,7,9,9,12,12,8,11,10,13,12,9,11,11,13,13,11,13,12,15,13,11,13,13,15,16,9,12,11,15,15,11,12,12,16,15,11,12,13,16,16,13,14,15,16,15,13,15,15,17,17,9,11,11,14,15,10,12,12,15,15,11,13,12,15,16,13,15,14,16,16,13,15,15,17,19,5,7,7,10,10,7,9,9,12,11,7,9,9,11,11,10,11,11,14,14,10,11,11,13,14,7,9,9,12,12,9,11,11,13,13,9,10,11,12,13,11,13,12,16,15,11,12,12,14,15,7,9,9,12,12,9,11,11,13,13,9,11,11,13,12,11,13,12,15,16,12,13,13,15,14,9,11,11,15,14,11,13,12,16,15,10,11,12,15,15,13,14,14,18,17,13,14,14,15,17,10,11,11,14,15,11,13,12,15,17,11,13,12,15,16,13,15,14,18,17,14,15,15,16,18,7,10,10,14,14,10,12,12,15,15,10,12,12,15,15,14,15,15,18,17,13,15,15,16,16,9,11,11,16,15,11,13,13,16,18,11,13,13,16,16,15,16,16,0,0,14,15,16,18,17,9,11,11,15,15,10,13,12,17,16,11,12,13,16,17,14,15,16,19,19,14,15,15,0,20,12,14,14,0,0,13,14,16,19,18,13,15,16,20,17,16,18,0,0,0,15,16,17,18,19,11,14,14,0,19,12,15,14,17,17,13,15,15,0,0,16,17,15,20,19,15,17,16,19,0,8,10,10,14,15,10,12,11,15,15,10,11,12,16,15,13,14,14,19,17,14,15,15,0,0,9,11,11,16,15,11,13,13,17,16,10,12,13,16,17,14,15,15,18,18,14,15,16,20,19,9,12,12,0,15,11,13,13,16,17,11,13,13,19,17,14,16,16,18,17,15,16,16,17,19,11,14,14,18,18,13,14,15,0,0,12,14,15,19,18,15,16,19,0,19,15,16,19,19,17,12,14,14,16,19,13,15,15,0,17,13,15,14,18,18,15,16,15,0,18,16,17,17,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,6,6,5,6,6,5,6,6,7,8,8,6,8,8,5,6,6,6,8,7,7,8,8,5,6,6,7,8,8,6,8,8,6,8,8,8,9,10,8,10,10,6,8,8,7,10,8,8,10,10,5,6,6,6,8,8,7,8,8,6,8,8,8,10,10,8,8,10,6,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,11,11,8,10,11,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,11,11,11,13,14,11,13,13,7,11,11,10,13,12,11,14,14,4,8,8,8,11,11,8,11,11,8,11,11,11,14,13,10,12,13,8,11,11,11,13,13,11,13,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,13,15,17,17,15,15,12,17,11,9,7,10,10,9,12,17,10,6,3,6,5,7,10,17,15,10,6,9,8,9,11,17,15,8,4,7,3,5,9,16,16,10,5,8,4,5,8,16,13,11,5,8,3,3,5,14,13,12,7,10,5,5,7,14,2,0,0,0,64,0,0,0,152,118,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,120,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,160,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,200,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,240,107,2,0,0,0,0,0,24,108,2,0,64,108,2,0,0,0,0,0,0,0,0,0,104,108,2,0,144,108,2,0,184,108,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,16,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,13,10,17,11,11,15,7,2,4,5,8,7,9,16,13,4,3,5,6,8,11,20,10,4,5,5,7,6,8,18,15,7,6,7,8,10,14,20,10,6,7,6,9,7,8,17,9,8,10,8,10,5,4,11,12,17,19,14,16,10,7,12,4,0,0,0,81,0,0,0,48,118,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,136,118,2,0,0,0,0,0,4,0,0,0,81,0,0,0,200,117,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,32,118,2,0,0,0,0,0,4,0,0,0,113,2,0,0,56,115,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,176,117,2,0,0,0,0,0,4,0,0,0,113,2,0,0,168,112,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,32,115,2,0,0,0,0,0,2,0,0,0,81,0,0,0,40,112,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,112,2,0,0,0,0,0,2,0,0,0,169,0,0,0,64,111,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,240,111,2,0,0,0,0,0,2,0,0,0,25,0,0,0,8,111,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,40,111,2,0,0,0,0,0,2,0,0,0,49,0,0,0,176,110,2,0,1,0,0,0,0,176,31,225,0,32,245,96,3,0,0,0,0,0,0,0,232,110,2,0,0,0,0,0,2,0,0,0,169,0,0,0,200,109,2,0,1,0,0,0,0,128,211,224,0,0,122,96,4,0,0,0,0,0,0,0,120,110,2,0,0,0,0,0,2,0,0,0,169,0,0,0,224,108,2,0,1,0,0,0,0,0,88,224,0,0,16,96,4,0,0,0,0,0,0,0,144,109,2,0,0,0,0,0,2,5,4,6,6,7,7,8,8,8,8,9,8,5,5,6,7,7,8,8,8,8,9,9,9,9,5,6,5,7,7,8,8,8,8,9,9,9,9,6,7,7,8,8,8,8,9,8,9,9,9,9,6,7,7,8,7,8,8,9,9,9,9,9,9,7,8,8,8,8,9,9,9,9,9,9,9,9,7,8,8,9,8,9,8,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,9,9,10,10,8,8,9,9,9,9,9,9,9,9,10,9,10,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,10,9,9,10,10,9,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,6,6,6,6,7,7,8,8,9,9,5,7,7,8,7,7,7,9,8,10,9,10,11,5,7,7,8,8,7,7,8,9,10,10,11,11,6,8,8,9,9,9,9,11,10,12,12,15,12,6,8,8,9,9,9,9,11,11,12,11,14,12,7,8,8,10,10,12,12,13,13,13,15,13,13,7,8,8,10,10,11,11,13,12,14,15,15,15,9,10,10,11,12,13,13,14,15,14,15,14,15,8,10,10,12,12,14,14,15,14,14,15,15,14,10,12,12,14,14,15,14,15,15,15,14,15,15,10,12,12,13,14,15,14,15,15,14,15,15,15,12,15,13,15,14,15,15,15,15,15,15,15,15,13,13,15,15,15,15,15,15,15,15,15,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,5,5,4,5,5,5,5,5,6,6,6,6,5,6,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,9,11,10,14,13,4,6,5,8,8,9,9,11,10,11,11,14,14,4,5,6,8,8,9,9,10,10,11,11,14,14,6,8,8,9,9,10,10,11,11,12,12,16,15,7,8,8,9,9,10,10,11,11,12,12,15,15,9,10,10,10,10,11,11,12,12,12,12,15,15,9,10,9,10,11,11,11,12,12,12,13,15,15,10,10,11,11,11,12,12,13,12,13,13,16,15,10,11,11,11,11,12,12,13,12,13,13,16,17,11,11,12,12,12,13,13,13,14,14,15,17,17,11,11,12,12,12,13,13,13,14,14,14,16,18,14,15,15,15,15,16,16,16,16,17,18,0,0,14,15,15,15,15,17,16,17,18,17,17,18,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,8,8,8,9,9,4,6,6,8,8,8,8,9,9,7,8,8,9,9,9,9,11,10,7,8,8,9,9,9,9,10,10,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,9,9,10,10,11,11,12,12,9,9,9,10,11,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,9,9,5,6,6,9,9,5,6,6,9,9,9,10,9,12,12,9,9,10,12,12,5,7,7,10,10,7,7,8,10,10,6,7,8,10,10,10,10,10,11,13,10,9,10,12,13,5,7,7,10,10,6,8,7,10,10,7,8,7,10,10,9,10,10,12,12,10,10,10,13,11,9,10,10,13,13,10,11,10,13,13,10,10,10,13,13,12,12,13,14,14,12,12,13,14,14,9,10,10,13,13,10,10,10,13,13,10,10,10,13,13,12,13,12,15,14,12,13,12,15,15,5,7,6,10,10,7,8,8,10,10,7,8,8,10,10,10,11,10,13,13,10,10,10,12,12,7,8,8,11,10,8,8,9,10,11,8,9,9,11,11,11,10,11,11,14,11,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,14,11,10,11,11,13,13,10,11,11,14,13,10,10,11,14,13,10,11,11,14,14,12,11,13,12,16,13,14,14,15,15,10,10,11,13,14,10,11,10,14,13,10,11,11,14,14,12,13,12,15,13,13,13,14,15,16,5,7,7,10,10,7,8,8,10,10,7,8,8,10,10,10,10,10,13,13,10,10,11,12,13,6,8,8,11,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,6,8,8,10,11,8,9,9,11,11,8,9,8,12,10,10,11,11,13,13,10,11,10,14,11,10,10,10,14,13,10,11,11,14,13,10,10,11,13,13,12,14,14,16,16,12,12,13,13,15,10,11,11,13,14,10,11,11,14,15,10,11,10,13,13,13,14,13,16,16,12,13,11,15,12,9,10,10,13,13,10,11,11,14,13,10,10,11,13,14,13,14,13,16,16,13,13,13,15,16,9,10,10,13,13,10,10,11,13,14,10,11,11,15,13,13,13,14,14,18,13,13,14,16,15,9,10,10,13,14,10,11,10,14,13,10,11,11,13,14,13,14,13,16,15,13,13,14,15,16,12,13,12,16,14,11,11,13,15,15,13,14,13,16,15,15,12,16,12,17,14,15,15,17,17,12,13,13,14,16,11,13,11,16,15,12,13,14,15,16,14,15,13,0,14,14,16,16,0,0,9,10,10,13,13,10,11,10,14,14,10,11,11,13,13,12,13,13,14,16,13,14,14,16,16,9,10,10,14,14,11,11,11,14,13,10,10,11,14,14,13,13,13,16,16,13,13,14,14,17,9,10,10,13,14,10,11,11,13,15,10,11,10,14,14,13,13,13,14,17,13,14,13,17,14,12,13,13,16,14,13,14,13,16,15,12,12,13,15,16,15,15,16,18,16,15,13,15,14,0,12,12,13,14,16,13,13,14,15,16,11,12,11,16,14,15,16,16,17,17,14,15,12,17,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,8,8,5,8,7,9,9,5,7,8,9,9,9,10,9,12,12,9,9,10,12,12,6,8,8,11,10,8,10,10,11,11,8,9,10,11,11,10,11,11,14,13,10,11,11,13,13,5,8,8,10,10,8,10,10,11,11,8,10,10,11,11,10,11,11,13,13,10,11,11,13,13,9,11,11,15,14,10,12,12,15,14,10,12,11,15,14,13,14,14,16,16,12,14,13,17,15,9,11,11,14,15,10,11,12,14,16,10,11,12,14,16,12,13,14,16,16,13,13,15,15,18,5,8,8,11,11,8,10,10,12,12,8,10,10,12,13,11,12,12,14,14,11,12,12,15,15,8,10,10,13,13,10,12,12,13,13,10,12,12,14,14,12,13,13,15,15,12,13,13,16,16,7,10,10,12,12,10,12,11,13,13,10,12,12,13,14,12,13,12,15,14,12,13,13,16,16,10,12,12,17,16,12,13,13,16,15,11,13,13,17,17,15,15,15,16,17,14,15,15,19,19,10,12,12,15,16,11,13,12,15,18,11,13,13,16,16,14,15,15,17,17,14,15,15,17,19,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,16,15,11,12,12,14,15,7,10,10,13,13,10,12,12,14,13,10,11,12,13,13,12,13,13,16,16,12,12,13,15,15,8,10,10,13,13,10,12,12,14,14,10,12,12,13,13,12,13,13,16,16,12,13,13,15,15,10,12,12,16,15,11,13,13,17,16,11,12,13,16,15,13,15,15,19,17,14,15,14,17,16,10,12,12,16,16,11,13,13,16,17,12,13,13,15,17,14,15,15,17,19,14,15,15,17,17,8,11,11,16,16,10,13,12,17,17,10,12,13,16,16,15,17,16,20,19,14,15,17,18,19,9,12,12,16,17,11,13,14,17,18,11,13,13,19,18,16,17,18,19,19,15,16,16,19,19,9,12,12,16,17,11,14,13,18,17,11,13,13,17,17,16,17,16,20,19,14,16,16,18,18,12,15,15,19,17,14,15,16,0,20,13,15,16,20,17,18,16,20,0,0,15,16,19,20,0,12,15,14,18,19,13,16,15,20,19,13,16,15,20,18,17,18,17,0,20,16,17,16,0,0,8,11,11,16,15,10,12,12,17,17,10,13,13,17,16,14,16,15,18,20,15,16,16,19,19,9,12,12,16,16,11,13,13,17,16,11,13,14,17,18,15,15,16,20,20,16,16,17,19,19,9,13,12,16,17,11,14,13,17,17,11,14,14,18,17,14,16,15,18,19,16,17,18,18,19,12,14,15,19,18,13,15,16,18,0,13,14,15,0,0,16,16,17,20,0,17,17,20,20,0,12,15,15,19,20,13,15,15,0,0,14,16,15,0,0,15,18,16,0,0,17,18,16,0,19,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,7,8,8,6,8,8,5,7,7,6,8,8,7,8,8,4,7,7,7,8,8,7,8,8,7,8,8,8,9,10,8,10,10,6,8,8,8,10,8,8,10,10,5,7,7,7,8,8,7,8,8,6,8,8,8,10,10,8,8,10,6,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,11,11,8,10,10,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,12,11,11,13,13,11,13,14,7,11,11,10,13,12,11,13,14,4,8,8,8,11,11,8,11,12,8,11,11,11,13,13,10,12,13,8,11,11,11,14,13,11,14,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,12,13,14,13,17,12,15,17,5,5,6,10,10,11,15,16,4,3,3,7,5,7,10,16,7,7,7,10,9,11,12,16,6,5,5,9,5,6,10,16,8,7,7,9,6,7,9,16,11,7,3,6,4,5,8,16,12,9,4,8,5,7,9,16,2,0,0,0,64,0,0,0,168,133,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,120,2,0,0,0,0,0,0,0,0,0,0,0,0,0,80,120,2,0,0,0,0,0,0,0,0,0,0,0,0,0,120,120,2,0,0,0,0,0,0,0,0,0,0,0,0,0,160,120,2,0,0,0,0,0,0,0,0,0,0,0,0,0,200,120,2,0,0,0,0,0,240,120,2,0,24,121,2,0,0,0,0,0,0,0,0,0,64,121,2,0,104,121,2,0,144,121,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,232,119,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,13,10,17,11,11,15,7,2,4,5,8,7,9,16,13,4,3,5,6,8,11,20,10,4,5,5,7,6,8,18,15,7,6,7,8,10,14,20,10,6,7,6,9,7,8,17,9,8,10,8,10,5,4,11,12,17,19,14,16,10,7,12,4,0,0,0,81,0,0,0,64,133,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,152,133,2,0,0,0,0,0,4,0,0,0,81,0,0,0,216,132,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,48,133,2,0,0,0,0,0,4,0,0,0,113,2,0,0,72,130,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,132,2,0,0,0,0,0,4,0,0,0,113,2,0,0,184,127,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,48,130,2,0,0,0,0,0,2,0,0,0,81,0,0,0,56,127,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,144,127,2,0,0,0,0,0,2,0,0,0,169,0,0,0,80,126,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,0,127,2,0,0,0,0,0,2,0,0,0,25,0,0,0,24,126,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,126,2,0,0,0,0,0,4,0,0,0,113,2,0,0,136,123,2,0,1,0,0,0,0,32,21,225,0,32,245,96,3,0,0,0,0,0,0,0,0,126,2,0,0,0,0,0,2,0,0,0,169,0,0,0,160,122,2,0,1,0,0,0,0,128,211,224,0,0,122,96,4,0,0,0,0,0,0,0,80,123,2,0,0,0,0,0,2,0,0,0,169,0,0,0,184,121,2,0,1,0,0,0,0,0,88,224,0,0,16,96,4,0,0,0,0,0,0,0,104,122,2,0,0,0,0,0,2,5,4,6,6,7,7,8,8,8,8,9,8,5,5,6,7,7,8,8,8,8,9,9,9,9,5,6,5,7,7,8,8,8,8,9,9,9,9,6,7,7,8,8,8,8,9,8,9,9,9,9,6,7,7,8,7,8,8,9,9,9,9,9,9,7,8,8,8,8,9,9,9,9,9,9,9,9,7,8,8,9,8,9,8,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,9,9,10,10,8,8,9,9,9,9,9,9,9,9,10,9,10,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,10,9,9,10,10,9,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,6,6,6,6,7,7,8,8,9,9,5,7,7,8,7,7,7,9,8,10,9,10,11,5,7,7,8,8,7,7,8,9,10,10,11,11,6,8,8,9,9,9,9,11,10,12,12,15,12,6,8,8,9,9,9,9,11,11,12,11,14,12,7,8,8,10,10,12,12,13,13,13,15,13,13,7,8,8,10,10,11,11,13,12,14,15,15,15,9,10,10,11,12,13,13,14,15,14,15,14,15,8,10,10,12,12,14,14,15,14,14,15,15,14,10,12,12,14,14,15,14,15,15,15,14,15,15,10,12,12,13,14,15,14,15,15,14,15,15,15,12,15,13,15,14,15,15,15,15,15,15,15,15,13,13,15,15,15,15,15,15,15,15,15,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,11,11,9,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,9,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,5,5,4,5,5,5,5,5,6,6,6,6,5,6,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,9,11,10,14,13,4,6,5,8,8,9,9,11,10,11,11,14,14,4,5,6,8,8,9,9,10,10,11,11,14,14,6,8,8,9,9,10,10,11,11,12,12,16,15,7,8,8,9,9,10,10,11,11,12,12,15,15,9,10,10,10,10,11,11,12,12,12,12,15,15,9,10,9,10,11,11,11,12,12,12,13,15,15,10,10,11,11,11,12,12,13,12,13,13,16,15,10,11,11,11,11,12,12,13,12,13,13,16,17,11,11,12,12,12,13,13,13,14,14,15,17,17,11,11,12,12,12,13,13,13,14,14,14,16,18,14,15,15,15,15,16,16,16,16,17,18,0,0,14,15,15,15,15,17,16,17,18,17,17,18,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,8,8,8,9,9,4,6,6,8,8,8,8,9,9,7,8,8,9,9,9,9,11,10,7,8,8,9,9,9,9,10,10,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,9,9,10,10,11,11,12,12,9,9,9,10,11,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,9,9,5,6,6,9,9,5,6,6,9,9,9,10,9,12,12,9,9,10,12,12,5,7,7,10,10,7,7,8,10,10,6,7,8,10,10,10,10,10,11,13,10,9,10,12,13,5,7,7,10,10,6,8,7,10,10,7,8,7,10,10,9,10,10,12,12,10,10,10,13,11,9,10,10,13,13,10,11,10,13,13,10,10,10,13,13,12,12,13,14,14,12,12,13,14,14,9,10,10,13,13,10,10,10,13,13,10,10,10,13,13,12,13,12,15,14,12,13,12,15,15,5,7,6,10,10,7,8,8,10,10,7,8,8,10,10,10,11,10,13,13,10,10,10,12,12,7,8,8,11,10,8,8,9,10,11,8,9,9,11,11,11,10,11,11,14,11,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,14,11,10,11,11,13,13,10,11,11,14,13,10,10,11,14,13,10,11,11,14,14,12,11,13,12,16,13,14,14,15,15,10,10,11,13,14,10,11,10,14,13,10,11,11,14,14,12,13,12,15,13,13,13,14,15,16,5,7,7,10,10,7,8,8,10,10,7,8,8,10,10,10,10,10,13,13,10,10,11,12,13,6,8,8,11,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,6,8,8,10,11,8,9,9,11,11,8,9,8,12,10,10,11,11,13,13,10,11,10,14,11,10,10,10,14,13,10,11,11,14,13,10,10,11,13,13,12,14,14,16,16,12,12,13,13,15,10,11,11,13,14,10,11,11,14,15,10,11,10,13,13,13,14,13,16,16,12,13,11,15,12,9,10,10,13,13,10,11,11,14,13,10,10,11,13,14,13,14,13,16,16,13,13,13,15,16,9,10,10,13,13,10,10,11,13,14,10,11,11,15,13,13,13,14,14,18,13,13,14,16,15,9,10,10,13,14,10,11,10,14,13,10,11,11,13,14,13,14,13,16,15,13,13,14,15,16,12,13,12,16,14,11,11,13,15,15,13,14,13,16,15,15,12,16,12,17,14,15,15,17,17,12,13,13,14,16,11,13,11,16,15,12,13,14,15,16,14,15,13,0,14,14,16,16,0,0,9,10,10,13,13,10,11,10,14,14,10,11,11,13,13,12,13,13,14,16,13,14,14,16,16,9,10,10,14,14,11,11,11,14,13,10,10,11,14,14,13,13,13,16,16,13,13,14,14,17,9,10,10,13,14,10,11,11,13,15,10,11,10,14,14,13,13,13,14,17,13,14,13,17,14,12,13,13,16,14,13,14,13,16,15,12,12,13,15,16,15,15,16,18,16,15,13,15,14,0,12,12,13,14,16,13,13,14,15,16,11,12,11,16,14,15,16,16,17,17,14,15,12,17,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,8,8,5,8,7,9,9,5,7,8,9,9,9,10,9,12,12,9,9,10,12,12,6,8,8,11,10,8,10,10,11,11,8,9,10,11,11,10,11,11,14,13,10,11,11,13,13,5,8,8,10,10,8,10,10,11,11,8,10,10,11,11,10,11,11,13,13,10,11,11,13,13,9,11,11,15,14,10,12,12,15,14,10,12,11,15,14,13,14,14,16,16,12,14,13,17,15,9,11,11,14,15,10,11,12,14,16,10,11,12,14,16,12,13,14,16,16,13,13,15,15,18,5,8,8,11,11,8,10,10,12,12,8,10,10,12,13,11,12,12,14,14,11,12,12,15,15,8,10,10,13,13,10,12,12,13,13,10,12,12,14,14,12,13,13,15,15,12,13,13,16,16,7,10,10,12,12,10,12,11,13,13,10,12,12,13,14,12,13,12,15,14,12,13,13,16,16,10,12,12,17,16,12,13,13,16,15,11,13,13,17,17,15,15,15,16,17,14,15,15,19,19,10,12,12,15,16,11,13,12,15,18,11,13,13,16,16,14,15,15,17,17,14,15,15,17,19,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,16,15,11,12,12,14,15,7,10,10,13,13,10,12,12,14,13,10,11,12,13,13,12,13,13,16,16,12,12,13,15,15,8,10,10,13,13,10,12,12,14,14,10,12,12,13,13,12,13,13,16,16,12,13,13,15,15,10,12,12,16,15,11,13,13,17,16,11,12,13,16,15,13,15,15,19,17,14,15,14,17,16,10,12,12,16,16,11,13,13,16,17,12,13,13,15,17,14,15,15,17,19,14,15,15,17,17,8,11,11,16,16,10,13,12,17,17,10,12,13,16,16,15,17,16,20,19,14,15,17,18,19,9,12,12,16,17,11,13,14,17,18,11,13,13,19,18,16,17,18,19,19,15,16,16,19,19,9,12,12,16,17,11,14,13,18,17,11,13,13,17,17,16,17,16,20,19,14,16,16,18,18,12,15,15,19,17,14,15,16,0,20,13,15,16,20,17,18,16,20,0,0,15,16,19,20,0,12,15,14,18,19,13,16,15,20,19,13,16,15,20,18,17,18,17,0,20,16,17,16,0,0,8,11,11,16,15,10,12,12,17,17,10,13,13,17,16,14,16,15,18,20,15,16,16,19,19,9,12,12,16,16,11,13,13,17,16,11,13,14,17,18,15,15,16,20,20,16,16,17,19,19,9,13,12,16,17,11,14,13,17,17,11,14,14,18,17,14,16,15,18,19,16,17,18,18,19,12,14,15,19,18,13,15,16,18,0,13,14,15,0,0,16,16,17,20,0,17,17,20,20,0,12,15,15,19,20,13,15,15,0,0,14,16,15,0,0,15,18,16,0,0,17,18,16,0,19,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,7,8,8,6,8,8,5,7,7,6,8,8,7,8,8,4,7,7,7,8,8,7,8,8,7,8,8,8,9,10,8,10,10,6,8,8,8,10,8,8,10,10,5,7,7,7,8,8,7,8,8,6,8,8,8,10,10,8,8,10,6,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,11,11,8,10,10,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,12,11,11,13,13,11,13,14,7,11,11,10,13,12,11,13,14,4,8,8,8,11,11,8,11,12,8,11,11,11,13,13,10,12,13,8,11,11,11,14,13,11,14,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,12,13,14,13,17,12,15,17,5,5,6,10,10,11,15,16,4,3,3,7,5,7,10,16,7,7,7,10,9,11,12,16,6,5,5,9,5,6,10,16,8,7,7,9,6,7,9,16,11,7,3,6,4,5,8,16,12,9,4,8,5,7,9,16],"i8",L3,x.GLOBAL_BASE+155104),d3([2,0,0,0,64,0,0,0,184,148,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,135,2,0,0,0,0,0,0,0,0,0,0,0,0,0,96,135,2,0,0,0,0,0,0,0,0,0,0,0,0,0,136,135,2,0,0,0,0,0,0,0,0,0,0,0,0,0,176,135,2,0,0,0,0,0,0,0,0,0,0,0,0,0,216,135,2,0,0,0,0,0,0,136,2,0,40,136,2,0,0,0,0,0,0,0,0,0,80,136,2,0,120,136,2,0,160,136,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,248,134,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,12,9,14,9,9,19,6,1,5,5,8,7,9,19,12,4,4,7,7,9,11,18,9,5,6,6,8,7,8,17,14,8,7,8,8,10,12,18,9,6,8,6,8,6,8,18,9,8,11,8,11,7,5,15,16,18,18,18,17,15,11,18,4,0,0,0,81,0,0,0,80,148,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,148,2,0,0,0,0,0,4,0,0,0,81,0,0,0,232,147,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,64,148,2,0,0,0,0,0,4,0,0,0,113,2,0,0,88,145,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,147,2,0,0,0,0,0,4,0,0,0,113,2,0,0,200,142,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,145,2,0,0,0,0,0,2,0,0,0,81,0,0,0,72,142,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,160,142,2,0,0,0,0,0,2,0,0,0,169,0,0,0,96,141,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,16,142,2,0,0,0,0,0,2,0,0,0,25,0,0,0,40,141,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,141,2,0,0,0,0,0,4,0,0,0,113,2,0,0,152,138,2,0,1,0,0,0,0,32,21,225,0,32,245,96,3,0,0,0,0,0,0,0,16,141,2,0,0,0,0,0,2,0,0,0,169,0,0,0,176,137,2,0,1,0,0,0,0,128,211,224,0,0,122,96,4,0,0,0,0,0,0,0,96,138,2,0,0,0,0,0,2,0,0,0,169,0,0,0,200,136,2,0,1,0,0,0,0,0,88,224,0,0,16,96,4,0,0,0,0,0,0,0,120,137,2,0,0,0,0,0,3,4,4,6,6,7,7,8,8,9,9,9,8,4,5,5,6,6,8,8,9,8,9,9,9,9,4,5,5,7,6,8,8,8,8,9,8,9,8,6,7,7,7,8,8,8,9,9,9,9,9,9,6,7,7,7,7,8,8,9,9,9,9,9,9,7,8,8,8,8,9,8,9,9,10,9,9,10,7,8,8,8,8,9,9,9,9,9,9,10,10,8,9,9,9,9,9,9,9,9,10,10,9,10,8,9,9,9,9,9,9,9,9,9,9,10,10,9,9,9,10,9,9,10,9,9,10,10,10,10,9,9,9,9,9,9,9,10,9,10,10,10,10,9,9,9,10,9,9,10,10,9,10,10,10,10,9,9,9,10,9,9,9,10,10,10,10,10,10,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,6,6,6,6,9,8,9,8,8,8,5,7,7,7,7,8,8,8,10,8,10,8,9,5,7,7,8,7,7,8,10,10,11,10,12,11,7,8,8,9,9,9,10,11,11,11,11,11,11,7,8,8,8,9,9,9,10,10,10,11,11,12,7,8,8,9,9,10,11,11,12,11,12,11,11,7,8,8,9,9,10,10,11,11,11,12,12,11,8,10,10,10,10,11,11,14,11,12,12,12,13,9,10,10,10,10,12,11,14,11,14,11,12,13,10,11,11,11,11,13,11,14,14,13,13,13,14,11,11,11,12,11,12,12,12,13,14,14,13,14,12,11,12,12,12,12,13,13,13,14,13,14,14,11,12,12,14,12,13,13,12,13,13,14,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,5,3,11,11,11,11,11,11,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,5,5,4,5,5,6,5,5,6,5,6,6,5,6,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,10,11,11,15,15,4,5,5,8,8,9,9,11,11,12,12,16,16,4,5,6,8,8,9,9,11,11,12,12,14,14,7,8,8,9,9,10,10,11,12,13,13,16,17,7,8,8,9,9,10,10,12,12,12,13,15,15,9,10,10,10,10,11,11,12,12,13,13,15,16,9,9,9,10,10,11,11,13,12,13,13,17,17,10,11,11,11,12,12,12,13,13,14,15,0,18,10,11,11,12,12,12,13,14,13,14,14,17,16,11,12,12,13,13,14,14,14,14,15,16,17,16,11,12,12,13,13,14,14,14,14,15,15,17,17,14,15,15,16,16,16,17,17,16,0,17,0,18,14,15,15,16,16,0,15,18,18,0,16,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,8,8,9,9,4,6,5,8,7,8,8,10,9,4,6,6,8,8,8,8,10,10,7,8,7,9,9,9,9,11,10,7,8,8,9,9,9,9,10,11,8,8,8,9,9,10,10,11,11,8,8,8,9,9,10,10,11,11,9,10,10,11,10,11,11,12,12,9,10,10,10,11,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,9,9,5,6,6,10,9,5,6,6,9,10,10,10,10,12,11,9,10,10,12,12,5,7,7,10,10,7,7,8,10,11,7,7,8,10,11,10,10,11,11,13,10,10,11,11,13,6,7,7,10,10,7,8,7,11,10,7,8,7,10,10,10,11,9,13,11,10,11,10,13,11,10,10,10,14,13,10,11,11,14,13,10,10,11,13,14,12,12,13,15,15,12,12,13,13,14,10,10,10,12,13,10,11,10,13,13,10,11,11,13,13,12,13,12,14,13,12,13,13,14,13,5,7,7,10,10,7,8,8,11,10,7,8,8,10,10,11,11,11,13,13,10,11,11,12,12,7,8,8,11,11,7,8,9,10,12,8,9,9,11,11,11,10,12,11,14,11,11,12,13,13,6,8,8,10,11,7,9,7,12,10,8,9,10,11,12,10,12,10,14,11,11,12,11,13,13,10,11,11,14,14,10,10,11,13,14,11,12,12,15,13,12,11,14,12,16,12,13,14,15,16,10,10,11,13,14,10,11,10,14,12,11,12,12,13,14,12,13,11,15,12,14,14,14,15,15,5,7,7,10,10,7,8,8,10,10,7,8,8,10,11,10,11,10,12,12,10,11,11,12,13,6,8,8,11,11,8,9,9,12,11,7,7,9,10,12,11,11,11,12,13,11,10,12,11,15,7,8,8,11,11,8,9,9,11,11,7,9,8,12,10,11,12,11,13,12,11,12,10,15,11,10,11,10,14,12,11,12,11,14,13,10,10,11,13,14,13,13,13,17,15,12,11,14,12,15,10,10,11,13,14,11,12,12,14,14,10,11,10,14,13,13,14,13,16,17,12,14,11,16,12,9,10,10,14,13,10,11,10,14,14,10,11,11,13,13,13,14,14,16,15,12,13,13,14,14,9,11,10,14,13,10,10,12,13,14,11,12,11,14,13,13,14,14,14,15,13,14,14,15,15,9,10,11,13,14,10,11,10,15,13,11,11,12,12,15,13,14,12,15,14,13,13,14,14,15,12,13,12,16,14,11,11,12,15,14,13,15,13,16,14,13,12,15,12,17,15,16,15,16,16,12,12,13,13,15,11,13,11,15,14,13,13,14,15,17,13,14,12,0,13,14,15,14,15,0,9,10,10,13,13,10,11,11,13,13,10,11,11,13,13,12,13,12,14,14,13,14,14,15,17,9,10,10,13,13,11,12,11,15,12,10,10,11,13,16,13,14,13,15,14,13,13,14,15,16,10,10,11,13,14,11,11,12,13,14,10,12,11,14,14,13,13,13,14,15,13,15,13,16,15,12,13,12,15,13,12,15,13,15,15,11,11,13,14,15,15,15,15,15,17,13,12,14,13,17,12,12,14,14,15,13,13,14,14,16,11,13,11,16,15,14,16,16,17,0,14,13,11,16,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,8,8,5,8,7,9,9,5,7,8,9,9,9,10,9,12,12,9,9,10,11,12,6,8,8,10,10,8,10,10,11,11,8,9,10,11,11,10,11,11,13,13,10,11,11,12,13,6,8,8,10,10,8,10,9,11,11,8,10,10,11,11,10,11,11,13,12,10,11,11,13,12,9,11,11,15,13,10,12,11,15,13,10,11,11,15,14,12,14,13,16,15,12,13,13,17,16,9,11,11,13,15,10,11,12,14,15,10,11,12,14,15,12,13,13,15,16,12,13,13,16,16,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,14,8,11,10,13,12,10,11,12,12,13,10,12,12,13,13,12,12,13,13,15,11,12,13,15,14,7,10,10,12,12,9,12,11,13,12,10,12,12,13,14,12,13,12,15,13,11,13,12,14,15,10,12,12,16,14,11,12,12,16,15,11,13,12,17,16,13,13,15,15,17,13,15,15,20,17,10,12,12,14,16,11,12,12,15,15,11,13,13,15,18,13,14,13,15,15,13,15,14,16,16,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,15,7,10,10,13,12,10,12,12,14,13,9,10,12,12,13,11,13,13,15,15,11,12,13,13,15,8,10,10,12,13,10,12,12,13,13,10,12,11,13,13,11,13,12,15,15,12,13,12,15,13,10,12,12,16,14,11,12,12,16,15,10,12,12,16,14,14,15,14,18,16,13,13,14,15,16,10,12,12,14,16,11,13,13,16,16,11,13,12,14,16,13,15,15,18,18,13,15,13,16,14,8,11,11,16,16,10,13,13,17,16,10,12,12,16,15,14,16,15,20,17,13,14,14,17,17,9,12,12,16,16,11,13,14,16,17,11,13,13,16,16,15,15,19,18,0,14,15,15,18,18,9,12,12,17,16,11,13,12,17,16,11,12,13,15,17,15,16,15,0,19,14,15,14,19,18,12,14,14,0,16,13,14,14,19,18,13,15,16,17,16,15,15,17,18,0,14,16,16,19,0,12,14,14,16,18,13,15,13,17,18,13,15,14,17,18,15,18,14,18,18,16,17,16,0,17,8,11,11,15,15,10,12,12,16,16,10,13,13,16,16,13,15,14,17,17,14,15,17,17,18,9,12,12,16,15,11,13,13,16,16,11,12,13,17,17,14,14,15,17,17,14,15,16,0,18,9,12,12,16,17,11,13,13,16,17,11,14,13,18,17,14,16,14,17,17,15,17,17,18,18,12,14,14,0,16,13,15,15,19,0,12,13,15,0,0,14,17,16,19,0,16,15,18,18,0,12,14,14,17,0,13,14,14,17,0,13,15,14,0,18,15,16,16,0,18,15,18,15,0,17,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,7,8,8,6,7,9,5,7,7,6,8,7,7,9,8,4,7,7,7,9,8,7,8,8,7,9,8,8,8,10,9,10,10,6,8,8,7,10,8,9,10,10,5,7,7,7,8,8,7,8,9,6,8,8,9,10,10,7,8,10,6,8,9,9,10,10,8,10,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,10,11,8,10,11,5,8,8,8,11,10,8,11,10,4,9,9,8,11,11,8,11,11,8,12,11,10,12,14,11,13,13,7,11,11,10,13,11,11,13,14,4,8,9,8,11,11,8,11,12,7,11,11,11,14,13,10,11,13,8,11,12,11,13,13,10,14,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,12,12,14,12,14,14,14,14,12,6,6,8,9,9,11,14,12,4,2,6,6,7,11,14,13,6,5,7,8,9,11,14,13,8,5,8,6,8,12,14,12,7,7,8,8,8,10,14,12,6,3,4,4,4,7,14,11,7,4,6,6,6,8,14,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,0,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,5,0,0,0,4,0,0,0,3,0,0,0,0,0,128,63,0,0,0,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,160,64,0,0,192,64,0,0,224,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,64,65,0,0,72,65,0,0,80,65,0,0,88,65,0,0,96,65,0,0,104,65,0,0,112,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,4,0,0,0,3,0,0,0,0,0,128,63,0,0,0,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,160,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,64,65,0,0,72,65,0,0,80,65,0,0,88,65,0,0,96,65,0,0,104,65,0,0,112,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,4,0,0,0,3,0,0,0,0,0,128,63,0,0,0,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,160,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,64,64,0,0,128,64,0,0,128,64,0,0,160,64,0,0,160,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,128,64,0,0,128,64,0,0,160,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,2,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,2,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,64,0,0,224,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,32,65,0,0,32,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,200,47,1,0,32,161,2,0,200,47,1,0,96,161,2,0,200,47,1,0,160,161,2,0,200,47,1,0,224,161,2,0,200,47,1,0,32,162,2,0,200,47,1,0,96,162,2,0,200,47,1,0,160,162,2,0,200,47,1,0,224,162,2,0,200,47,1,0,32,163,2,0,200,47,1,0,96,163,2,0,200,47,1,0,160,163,2,0,2,0,0,0,0,0,0,0,32,0,0,0,64,171,3,0,216,86,4,0,0,87,4,0,40,87,4,0,232,87,4,0,2,0,0,0,0,0,0,0,32,0,0,0,64,171,3,0,168,88,4,0,208,88,4,0,40,87,4,0,232,87,4,0,2,0,0,0,0,0,0,0,16,0,0,0,64,171,3,0,248,5,4,0,32,6,4,0,72,6,4,0,8,7,4,0,2,0,0,0,0,0,0,0,32,0,0,0,64,171,3,0,200,7,4,0,240,7,4,0,72,6,4,0,8,7,4,0,2,0,0,0,0,0,0,0,16,0,0,0,64,171,3,0,88,182,3,0,128,182,3,0,168,182,3,0,104,183,3,0,2,0,0,0,0,0,0,0,32,0,0,0,64,171,3,0,40,184,3,0,80,184,3,0,168,182,3,0,104,183,3,0,2,0,0,0,0,0,0,0,16,0,0,0,24,73,1,0,152,128,3,0,152,128,3,0,192,128,3,0,192,128,3,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,128,129,3,0,128,129,3,0,192,128,3,0,192,128,3,0,2,0,0,0,0,0,0,0,16,0,0,0,24,73,1,0,176,85,3,0,176,85,3,0,216,85,3,0,216,85,3,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,152,86,3,0,152,86,3,0,216,85,3,0,216,85,3,0,2,0,0,0,0,0,0,0,16,0,0,0,24,73,1,0,32,42,3,0,32,42,3,0,72,42,3,0,72,42,3,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,8,43,3,0,8,43,3,0,72,42,3,0,72,42,3,0,2,0,0,0,0,0,0,0,16,0,0,0,24,73,1,0,8,254,2,0,8,254,2,0,48,254,2,0,48,254,2,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,240,254,2,0,240,254,2,0,48,254,2,0,48,254,2,0,2,0,0,0,0,0,0,0,16,0,0,0,224,163,2,0,8,235,2,0,8,235,2,0,48,235,2,0,48,235,2,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,240,235,2,0,240,235,2,0,48,235,2,0,48,235,2,0,2,0,0,0,0,0,0,0,16,0,0,0,224,163,2,0,8,216,2,0,8,216,2,0,48,216,2,0,48,216,2,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,240,216,2,0,240,216,2,0,48,216,2,0,48,216,2,0,2,0,0,0,0,0,0,0,16,0,0,0,224,163,2,0,168,195,2,0,168,195,2,0,208,195,2,0,208,195,2,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,144,196,2,0,144,196,2,0,208,195,2,0,208,195,2,0,2,0,0,0,0,0,0,0,16,0,0,0,224,163,2,0,248,174,2,0,248,174,2,0,32,175,2,0,32,175,2,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,224,175,2,0,224,175,2,0,32,175,2,0,32,175,2,0,0,0,0,0,255,255,255,255,255,255,255,255,10,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+165344),d3([1,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,71,0,0,0,157,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,71,0,0,0,157,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,64,195,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,176,2,0,0,0,0,0,0,0,0,0,0,0,0,0,152,176,2,0,0,0,0,0,0,0,0,0,0,0,0,0,192,176,2,0,0,0,0,0,0,0,0,0,0,0,0,0,232,176,2,0,0,0,0,0,16,177,2,0,56,177,2,0,0,0,0,0,0,0,0,0,96,177,2,0,136,177,2,0,0,0,0,0,0,0,0,0,176,177,2,0,216,177,2,0,0,0,0,0,0,0,0,0,0,178,2,0,40,178,2,0,0,0,0,0,0,0,0,0,80,178,2,0,120,178,2,0,160,178,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,8,176,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,12,14,15,15,15,13,15,15,6,5,8,10,12,12,13,12,14,13,10,6,5,6,8,9,11,11,13,13,13,8,5,4,5,6,8,10,11,13,14,10,7,5,4,5,7,9,11,12,13,11,8,6,5,4,5,7,9,11,12,11,10,8,7,5,4,5,9,10,13,13,11,10,8,6,5,4,7,9,15,14,13,12,10,9,8,7,8,9,12,12,14,13,12,11,10,9,8,9,0,0,0,0,4,0,0,0,81,0,0,0,216,194,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,48,195,2,0,0,0,0,0,4,0,0,0,113,2,0,0,72,192,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,194,2,0,0,0,0,0,2,0,0,0,81,0,0,0,200,191,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,32,192,2,0,0,0,0,0,2,0,0,0,33,1,0,0,88,190,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,128,191,2,0,0,0,0,0,4,0,0,0,81,0,0,0,240,189,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,72,190,2,0,0,0,0,0,2,0,0,0,121,0,0,0,64,189,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,192,189,2,0,0,0,0,0,2,0,0,0,169,0,0,0,88,188,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,8,189,2,0,0,0,0,0,2,0,0,0,25,0,0,0,32,188,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,188,2,0,0,0,0,0,2,0,0,0,169,0,0,0,56,187,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,232,187,2,0,0,0,0,0,2,0,0,0,121,0,0,0,136,186,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,8,187,2,0,0,0,0,0,2,0,0,0,225,0,0,0,96,185,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,72,186,2,0,0,0,0,0,2,0,0,0,185,1,0,0,72,183,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,8,185,2,0,0,0,0,0,2,0,0,0,105,1,0,0,136,181,2,0,1,0,0,0,128,93,176,225,0,24,61,97,5,0,0,0,0,0,0,0,248,182,2,0,0,0,0,0,2,0,0,0,105,1,0,0,200,179,2,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,56,181,2,0,0,0,0,0,1,0,0,0,49,0,0,0,200,178,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,0,179,2,0,0,0,0,0,2,4,4,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,8,7,9,8,9,9,10,10,11,11,11,11,6,5,5,8,8,9,9,9,8,10,9,11,10,12,12,13,12,13,13,5,5,5,8,8,9,9,9,9,10,10,11,11,12,12,13,12,13,13,17,8,8,9,9,9,9,9,9,10,10,12,11,13,12,13,13,13,13,18,8,8,9,9,9,9,9,9,11,11,12,12,13,13,13,13,13,13,17,13,12,9,9,10,10,10,10,11,11,12,12,12,13,13,13,14,14,18,13,12,9,9,10,10,10,10,11,11,12,12,13,13,13,14,14,14,17,18,18,10,10,10,10,11,11,11,12,12,12,14,13,14,13,13,14,18,18,18,10,9,10,9,11,11,12,12,12,12,13,13,15,14,14,14,18,18,16,13,14,10,11,11,11,12,13,13,13,13,14,13,13,14,14,18,18,18,14,12,11,9,11,10,13,12,13,13,13,14,14,14,13,14,18,18,17,18,18,11,12,12,12,13,13,14,13,14,14,13,14,14,14,18,18,18,18,17,12,10,12,9,13,11,13,14,14,14,14,14,15,14,18,18,17,17,18,14,15,12,13,13,13,14,13,14,14,15,14,15,14,18,17,18,18,18,15,15,12,10,14,10,14,14,13,13,14,14,14,14,18,16,18,18,18,18,17,14,14,13,14,14,13,13,14,14,14,15,15,18,18,18,18,17,17,17,14,14,14,12,14,13,14,14,15,14,15,14,18,18,18,18,18,18,18,17,16,13,13,13,14,14,14,14,15,16,15,18,18,18,18,18,18,18,17,17,13,13,13,13,14,13,14,15,15,15,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,4,3,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,4,5,6,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,4,6,6,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,4,6,6,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,7,7,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,10,9,9,9,10,10,10,10,10,10,10,9,9,9,9,9,9,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,9,9,10,9,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,9,9,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,10,10,9,9,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,9,9,9,9,9,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,6,8,8,8,8,9,9,10,10,11,10,6,5,5,7,7,9,9,8,9,10,10,11,11,12,12,6,5,5,7,7,9,9,9,9,10,10,11,11,12,12,21,7,8,8,8,9,9,9,9,10,10,11,11,12,12,21,8,8,8,8,9,9,9,9,10,10,11,11,12,12,21,11,12,9,9,10,10,10,10,10,11,11,12,12,12,21,12,12,9,8,10,10,10,10,11,11,12,12,13,13,21,21,21,9,9,9,9,11,11,11,11,12,12,12,13,21,20,20,9,9,9,9,10,11,11,11,12,12,13,13,20,20,20,13,13,10,10,11,11,12,12,13,13,13,13,20,20,20,13,13,10,10,11,11,12,12,13,13,13,13,20,20,20,20,20,12,12,12,12,12,12,13,13,14,14,20,20,20,20,20,12,12,12,11,13,12,13,13,14,14,20,20,20,20,20,15,16,13,12,13,13,14,13,14,14,20,20,20,20,20,16,15,12,12,13,12,14,13,14,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,5,6,6,6,6,7,7,7,7,7,7,7,6,6,6,6,7,7,7,7,7,7,7,6,6,6,6,7,7,7,7,7,7,8,6,6,6,6,7,7,7,7,7,7,8,8,8,6,6,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,10,10,11,11,6,4,4,6,6,8,8,9,9,10,10,12,12,6,4,5,6,6,8,8,9,9,10,10,12,12,20,6,6,6,6,8,8,9,10,11,11,12,12,20,6,6,6,6,8,8,10,10,11,11,12,12,20,10,10,7,7,9,9,10,10,11,11,12,12,20,11,11,7,7,9,9,10,10,11,11,12,12,20,20,20,9,9,9,9,11,11,12,12,13,13,20,20,20,9,9,9,9,11,11,12,12,13,13,20,20,20,13,13,10,10,11,11,12,13,13,13,20,20,20,13,13,10,10,11,11,12,13,13,13,20,20,20,20,19,12,12,12,12,13,13,14,15,19,19,19,19,19,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,4,4,4,5,5,5,4,4,5,5,5,4,4,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,9,9,5,4,4,6,6,8,8,9,9,9,9,10,10,6,4,4,6,6,8,8,9,9,9,9,10,10,0,6,6,7,7,8,8,9,9,10,10,11,11,0,6,6,7,7,8,8,9,9,10,10,11,11,0,10,10,8,8,9,9,10,10,11,11,12,12,0,11,11,8,8,9,9,10,10,11,11,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,7,7,11,5,5,6,6,7,7,7,7,8,8,11,5,5,6,6,7,7,7,7,8,8,11,5,5,6,6,7,7,8,8,8,8,11,11,11,6,6,7,7,7,8,8,8,11,11,11,6,6,7,7,7,8,8,8,11,11,11,6,6,7,7,7,7,8,8,11,11,11,7,7,7,7,7,7,8,8,11,11,11,10,10,7,7,7,7,8,8,11,11,11,11,11,7,7,7,7,7,7,11,11,11,11,11,7,7,7,7,7,7,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,7,6,9,10,10,10,10,9,4,6,7,9,10,10,10,9,10,5,9,9,9,11,11,10,11,11,7,10,9,11,12,11,12,12,12,7,9,10,11,11,12,12,12,12,6,10,10,10,12,12,10,12,11,7,10,10,11,12,12,11,12,12,7,10,10,11,12,12,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,10,10,0,5,4,5,5,7,7,8,8,8,8,9,9,10,10,11,11,0,5,5,6,6,7,7,8,8,8,8,9,9,10,10,11,11,0,6,5,6,6,7,7,8,8,9,9,10,10,11,11,11,12,0,0,0,6,6,7,7,8,8,9,9,10,10,11,11,12,12,0,0,0,7,7,7,7,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,7,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,3,4,4,5,5,6,6,8,8,0,4,4,5,5,6,7,8,8,0,4,4,5,5,7,7,8,8,0,5,5,6,6,7,7,9,9,0,0,0,6,6,7,7,9,9,0,0,0,7,7,8,8,9,9,0,0,0,7,7,8,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,0,5,5,8,8,0,5,5,8,8,0,7,7,9,9,0,0,0,9,9,6,7,7,9,8,0,8,8,9,9,0,8,7,9,9,0,9,10,10,10,0,0,0,11,10,6,7,7,8,9,0,8,8,9,9,0,7,8,9,9,0,10,9,11,10,0,0,0,10,10,8,9,8,10,10,0,10,10,12,11,0,10,10,11,11,0,12,13,13,13,0,0,0,13,12,8,8,9,10,10,0,10,10,11,12,0,10,10,11,11,0,13,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,7,10,10,0,7,7,10,9,0,7,7,10,10,0,9,9,10,10,0,0,0,10,10,6,7,8,10,10,0,7,7,9,10,0,7,7,10,10,0,9,9,10,10,0,0,0,10,10,8,9,9,11,11,0,10,10,11,11,0,10,10,11,11,0,12,12,12,12,0,0,0,12,12,8,9,10,11,11,0,9,10,11,11,0,10,10,11,11,0,12,12,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,10,10,0,7,7,10,10,0,7,7,10,9,0,9,9,10,10,0,0,0,10,10,6,7,8,10,10,0,7,7,10,10,0,7,7,9,10,0,9,9,10,10,0,0,0,10,10,8,10,9,12,11,0,10,10,12,11,0,10,9,11,11,0,11,12,12,12,0,0,0,12,12,8,9,10,11,12,0,10,10,11,11,0,9,10,11,11,0,12,11,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,9,12,12,0,9,9,12,11,0,9,9,11,11,0,10,10,12,11,0,0,0,11,12,7,9,10,12,12,0,9,9,11,12,0,9,9,11,11,0,10,10,11,12,0,0,0,11,11,9,11,10,13,12,0,10,10,12,12,0,10,10,12,12,0,11,11,12,12,0,0,0,13,12,9,10,11,12,13,0,10,10,12,12,0,10,10,12,12,0,11,12,12,12,0,0,0,12,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,11,10,13,13,0,10,10,12,12,0,10,10,12,12,0,11,12,12,12,0,0,0,12,12,9,10,11,13,13,0,10,10,12,12,0,10,10,12,12,0,12,11,13,12,0,0,0,12,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,5,5,0,5,5,6,8,8,0,9,8,0,9,8,6,8,8,0,8,9,0,8,9,0,0,0,0,0,0,0,0,0,5,8,8,0,7,7,0,8,8,5,8,8,0,7,8,0,8,8,0,0,0,0,0,0,0,0,0,5,9,8,0,8,8,0,7,7,5,8,9,0,8,8,0,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,13,18,16,17,17,19,18,19,19,5,7,10,11,12,12,13,16,17,18,6,6,7,7,9,9,10,14,17,19,8,7,6,5,6,7,9,12,19,17,8,7,7,6,5,6,8,11,15,19,9,8,7,6,5,5,6,8,13,15,11,10,8,8,7,5,4,4,10,14,12,13,11,9,7,6,4,2,6,12,18,16,16,13,8,7,7,5,8,13,16,17,18,15,11,9,9,8,10,13,0,0,0,0,2,0,0,0,100,0,0,0,160,215,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,197,2,0,0,0,0,0,0,0,0,0,0,0,0,0,72,197,2,0,0,0,0,0,0,0,0,0,0,0,0,0,112,197,2,0,0,0,0,0,0,0,0,0,0,0,0,0,152,197,2,0,0,0,0,0,192,197,2,0,232,197,2,0,0,0,0,0,0,0,0,0,16,198,2,0,56,198,2,0,0,0,0,0,0,0,0,0,96,198,2,0,136,198,2,0,0,0,0,0,0,0,0,0,176,198,2,0,216,198,2,0,0,0,0,0,0,0,0,0,0,199,2,0,40,199,2,0,80,199,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,184,196,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,12,13,14,14,14,13,14,14,6,4,5,8,10,10,11,11,14,13,9,5,4,5,7,8,9,10,13,13,12,7,5,4,5,6,8,9,12,13,13,9,6,5,5,5,7,9,11,14,12,10,7,6,5,4,6,7,10,11,12,11,9,8,7,5,5,6,10,10,13,12,10,9,8,6,6,5,8,10,14,13,12,12,11,10,9,7,8,10,12,13,14,14,13,12,11,9,9,10,0,0,0,0,4,0,0,0,81,0,0,0,56,215,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,144,215,2,0,0,0,0,0,4,0,0,0,113,2,0,0,168,212,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,32,215,2,0,0,0,0,0,2,0,0,0,81,0,0,0,40,212,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,212,2,0,0,0,0,0,2,0,0,0,33,1,0,0,184,210,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,211,2,0,0,0,0,0,4,0,0,0,81,0,0,0,80,210,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,168,210,2,0,0,0,0,0,2,0,0,0,121,0,0,0,160,209,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,32,210,2,0,0,0,0,0,2,0,0,0,169,0,0,0,184,208,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,104,209,2,0,0,0,0,0,2,0,0,0,25,0,0,0,128,208,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,208,2,0,0,0,0,0,2,0,0,0,169,0,0,0,152,207,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,72,208,2,0,0,0,0,0,2,0,0,0,121,0,0,0,232,206,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,104,207,2,0,0,0,0,0,2,0,0,0,225,0,0,0,192,205,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,168,206,2,0,0,0,0,0,2,0,0,0,185,1,0,0,168,203,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,104,205,2,0,0,0,0,0,2,0,0,0,33,1,0,0,56,202,2,0,1,0,0,0,0,24,157,225,0,24,61,97,5,0,0,0,0,0,0,0,96,203,2,0,0,0,0,0,2,0,0,0,105,1,0,0,120,200,2,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,232,201,2,0,0,0,0,0,1,0,0,0,49,0,0,0,120,199,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,176,199,2,0,0,0,0,0,2,4,4,4,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,6,7,7,7,7,8,8,9,9,10,10,10,10,11,11,6,6,6,8,8,9,8,8,7,10,8,11,10,12,11,12,12,13,13,5,5,6,8,8,9,9,8,8,10,9,11,11,12,12,13,13,13,13,17,8,8,9,9,9,9,9,9,10,9,12,10,12,12,13,12,13,13,17,9,8,9,9,9,9,9,9,10,10,12,12,12,12,13,13,13,13,17,13,13,9,9,10,10,10,10,11,11,12,11,13,12,13,13,14,15,17,13,13,9,8,10,9,10,10,11,11,12,12,14,13,15,13,14,15,17,17,17,9,10,9,10,11,11,12,12,12,12,13,13,14,14,15,15,17,17,17,9,8,9,8,11,11,12,12,12,12,14,13,14,14,14,15,17,17,17,12,14,9,10,11,11,12,12,14,13,13,14,15,13,15,15,17,17,17,13,11,10,8,11,9,13,12,13,13,13,13,13,14,14,14,17,17,17,17,17,11,12,11,11,13,13,14,13,15,14,13,15,16,15,17,17,17,17,17,11,11,12,8,13,12,14,13,17,14,15,14,15,14,17,17,17,17,17,15,15,12,12,12,12,13,14,14,14,15,14,17,14,17,17,17,17,17,16,17,12,12,13,12,13,13,14,14,14,14,14,14,17,17,17,17,17,17,17,14,14,13,12,13,13,15,15,14,13,15,17,17,17,17,17,17,17,17,13,14,13,13,13,13,14,15,15,15,14,15,17,17,17,17,17,17,17,16,15,13,14,13,13,14,14,15,14,14,16,17,17,17,17,17,17,17,16,16,13,14,13,13,14,14,15,14,15,14,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,4,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,4,7,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,4,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,4,5,5,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,10,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,9,10,10,9,10,10,10,10,9,10,9,10,10,9,10,10,10,10,10,10,10,9,10,10,10,10,10,10,9,9,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,9,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,10,9,10,9,9,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,6,8,8,8,7,9,8,10,10,11,10,6,5,5,7,7,9,9,8,8,10,10,11,11,12,11,6,5,5,7,7,9,9,9,9,10,10,11,11,12,12,20,8,8,8,8,9,9,9,9,10,10,11,11,12,12,20,8,8,8,8,10,9,9,9,10,10,11,11,12,12,20,12,12,9,9,10,10,10,10,10,11,12,12,12,12,20,12,12,9,9,10,10,10,10,11,11,12,12,13,13,20,20,20,9,9,9,9,11,10,11,11,12,12,12,13,20,19,19,9,9,9,9,11,11,11,12,12,12,13,13,19,19,19,13,13,10,10,11,11,12,12,13,13,13,13,19,19,19,14,13,11,10,11,11,12,12,12,13,13,13,19,19,19,19,19,12,12,12,12,13,13,13,13,14,13,19,19,19,19,19,12,12,12,11,12,12,13,14,14,14,19,19,19,19,19,16,15,13,12,13,13,13,14,14,14,19,19,19,19,19,17,17,13,12,13,11,14,13,15,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,4,5,6,6,6,7,7,7,7,7,7,8,6,6,6,7,7,7,7,7,7,7,8,6,6,6,6,7,7,7,7,7,7,8,6,6,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,7,9,9,10,10,12,12,6,5,5,7,7,8,8,10,10,11,11,12,12,7,5,5,7,7,8,8,10,10,11,11,12,12,21,7,7,7,7,8,9,10,10,11,11,12,12,21,7,7,7,7,9,9,10,10,12,12,13,13,21,11,11,8,8,9,9,11,11,12,12,13,13,21,11,11,8,8,9,9,11,11,12,12,13,13,21,21,21,10,10,10,10,11,11,12,13,13,13,21,21,21,10,10,10,10,11,11,13,13,14,13,21,21,21,13,13,11,11,12,12,13,13,14,14,21,21,21,14,14,11,11,12,12,13,13,14,14,21,21,21,21,20,13,13,13,12,14,14,16,15,20,20,20,20,20,13,13,13,13,14,13,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,4,4,5,5,5,4,4,5,5,5,4,4,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,9,9,10,10,11,11,6,5,5,7,7,8,8,9,9,10,10,11,11,0,7,7,7,7,9,9,10,10,10,10,11,11,0,7,7,7,7,9,9,10,10,10,10,11,11,0,11,11,9,9,10,10,11,11,11,11,12,12,0,12,12,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,6,6,7,7,8,8,8,8,11,4,5,6,6,7,7,8,8,8,8,11,5,5,6,6,7,7,8,8,8,9,12,5,5,6,6,7,7,8,8,9,9,12,12,12,6,6,7,7,8,8,9,9,11,11,11,6,6,7,7,8,8,8,8,11,11,11,6,6,7,7,8,8,8,8,11,11,11,7,7,7,8,8,8,8,8,11,11,11,11,11,7,7,8,8,8,8,11,11,11,11,11,7,7,7,7,8,8,11,11,11,11,11,7,7,7,7,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,7,6,10,10,10,10,10,10,4,6,6,10,10,10,10,9,10,5,10,10,9,11,11,10,11,11,7,10,10,11,12,12,12,12,12,7,10,10,11,12,12,12,12,12,6,10,10,10,12,12,10,12,12,7,10,10,11,12,12,12,12,12,7,10,10,11,12,12,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,8,8,8,8,9,9,10,10,11,11,0,4,4,6,6,7,7,8,8,9,8,10,10,11,11,11,11,0,4,4,6,6,7,7,8,8,9,9,10,10,11,11,11,11,0,6,5,6,6,7,7,9,9,9,9,10,10,11,11,12,12,0,0,0,6,6,7,7,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,11,12,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,11,12,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,4,5,5,7,7,9,9,0,4,4,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,5,5,6,6,8,8,10,10,0,0,0,6,6,8,8,10,10,0,0,0,7,7,9,9,10,10,0,0,0,7,7,8,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,0,5,5,8,8,0,5,5,8,8,0,7,7,9,9,0,0,0,9,9,5,7,7,9,9,0,8,7,10,9,0,8,7,10,9,0,10,10,11,11,0,0,0,11,11,5,7,7,9,9,0,7,8,9,10,0,7,8,9,10,0,10,10,11,11,0,0,0,11,11,8,9,9,11,10,0,11,10,12],"i8",L3,x.GLOBAL_BASE+175348),d3([11,0,11,10,12,12,0,13,13,14,14,0,0,0,14,13,8,9,9,10,11,0,10,11,12,12,0,10,11,12,12,0,13,13,14,14,0,0,0,13,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,11,10,0,7,7,10,10,0,7,7,10,10,0,9,9,10,10,0,0,0,11,10,5,7,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,10,0,0,0,10,10,8,10,9,12,12,0,10,10,12,11,0,10,10,12,12,0,12,12,13,12,0,0,0,13,12,8,9,10,12,12,0,10,10,11,12,0,10,10,11,12,0,12,12,13,13,0,0,0,12,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,7,11,10,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,10,10,6,7,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,10,0,0,0,10,10,9,10,9,12,12,0,10,10,12,12,0,10,10,12,11,0,12,12,13,13,0,0,0,13,12,8,9,10,12,12,0,10,10,12,12,0,10,10,11,12,0,12,12,13,13,0,0,0,12,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,13,13,0,9,9,12,12,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,7,10,10,13,13,0,9,9,12,12,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,9,11,11,14,13,0,10,10,13,12,0,11,10,13,12,0,12,12,13,12,0,0,0,13,13,9,11,11,13,14,0,10,11,12,13,0,10,11,13,13,0,12,12,12,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,11,11,14,14,0,10,11,13,13,0,11,10,13,13,0,11,12,13,13,0,0,0,13,12,9,11,11,14,14,0,11,10,13,13,0,10,11,13,13,0,12,12,13,13,0,0,0,12,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,5,5,0,5,5,5,7,7,0,9,8,0,9,8,6,7,7,0,8,9,0,8,9,0,0,0,0,0,0,0,0,0,5,9,8,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,0,0,5,9,8,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,11,13,14,15,15,18,17,19,17,5,6,8,9,10,10,12,15,19,19,6,6,6,6,8,8,11,14,18,19,8,6,5,4,6,7,10,13,16,17,9,7,6,5,6,7,9,12,15,19,10,8,7,6,6,6,7,9,13,15,12,10,9,8,7,6,4,5,10,15,13,13,11,8,6,6,4,2,7,12,17,15,16,10,8,8,7,6,9,12,19,18,17,13,11,10,10,9,11,14,0,0,0,0,2,0,0,0,100,0,0,0,160,234,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,217,2,0,0,0,0,0,0,0,0,0,0,0,0,0,168,217,2,0,0,0,0,0,0,0,0,0,0,0,0,0,208,217,2,0,0,0,0,0,0,0,0,0,0,0,0,0,248,217,2,0,0,0,0,0,32,218,2,0,72,218,2,0,0,0,0,0,0,0,0,0,112,218,2,0,152,218,2,0,0,0,0,0,0,0,0,0,192,218,2,0,232,218,2,0,0,0,0,0,0,0,0,0,16,219,2,0,56,219,2,0,0,0,0,0,0,0,0,0,96,219,2,0,136,219,2,0,176,219,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,24,217,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,11,13,15,14,14,13,15,14,6,4,5,7,9,10,11,11,14,13,10,4,3,5,7,8,9,10,13,13,12,7,4,4,5,6,8,9,12,14,13,9,6,5,5,6,8,9,12,14,12,9,7,6,5,5,6,8,11,11,12,11,9,8,7,6,6,7,10,11,13,11,10,9,8,7,6,6,9,11,13,13,12,12,12,10,9,8,9,11,12,14,15,15,14,12,11,10,10,12,0,0,0,0,4,0,0,0,81,0,0,0,56,234,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,144,234,2,0,0,0,0,0,4,0,0,0,113,2,0,0,168,231,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,32,234,2,0,0,0,0,0,2,0,0,0,81,0,0,0,40,231,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,231,2,0,0,0,0,0,2,0,0,0,33,1,0,0,184,229,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,230,2,0,0,0,0,0,4,0,0,0,81,0,0,0,80,229,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,168,229,2,0,0,0,0,0,2,0,0,0,121,0,0,0,160,228,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,32,229,2,0,0,0,0,0,2,0,0,0,169,0,0,0,184,227,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,104,228,2,0,0,0,0,0,2,0,0,0,25,0,0,0,128,227,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,227,2,0,0,0,0,0,2,0,0,0,169,0,0,0,152,226,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,72,227,2,0,0,0,0,0,2,0,0,0,121,0,0,0,232,225,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,104,226,2,0,0,0,0,0,2,0,0,0,225,0,0,0,192,224,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,168,225,2,0,0,0,0,0,2,0,0,0,185,1,0,0,168,222,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,104,224,2,0,0,0,0,0,2,0,0,0,169,0,0,0,192,221,2,0,1,0,0,0,0,220,125,225,0,232,51,97,4,0,0,0,0,0,0,0,112,222,2,0,0,0,0,0,2,0,0,0,169,0,0,0,216,220,2,0,1,0,0,0,0,96,18,225,0,128,184,96,4,0,0,0,0,0,0,0,136,221,2,0,0,0,0,0,1,0,0,0,49,0,0,0,216,219,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,16,220,2,0,0,0,0,0,2,4,3,4,5,5,5,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,6,8,8,8,8,6,6,6,8,8,9,8,8,7,9,8,11,10,5,6,6,8,8,9,8,8,8,10,9,11,11,16,8,8,9,8,9,9,9,8,10,9,11,10,16,8,8,9,9,10,10,9,9,10,10,11,11,16,13,13,9,9,10,10,9,10,11,11,12,11,16,13,13,9,8,10,9,10,10,10,10,11,11,16,14,16,8,9,9,9,11,10,11,11,12,11,16,16,16,9,7,10,7,11,10,11,11,12,11,16,16,16,12,12,9,10,11,11,12,11,12,12,16,16,16,12,10,10,7,11,8,12,11,12,12,16,16,15,16,16,11,12,10,10,12,11,12,12,16,16,16,15,15,11,11,10,10,12,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,11,11,11,11,11,11,11,11,11,11,4,6,6,11,11,11,11,11,11,11,11,11,11,4,7,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,7,6,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,11,10,10,10,9,9,9,9,9,9,9,9,9,9,10,9,9,10,9,9,10,11,10,11,10,9,9,9,9,9,9,9,10,10,10,9,10,9,9,9,9,11,10,11,10,10,9,9,9,9,9,9,10,9,9,10,9,9,10,9,9,10,11,10,10,11,10,9,9,9,9,9,10,10,9,10,10,10,10,9,10,10,10,10,10,10,11,11,11,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,9,10,11,11,10,11,10,11,10,9,10,10,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,10,11,11,10,10,10,10,10,10,9,10,9,10,10,9,10,9,10,10,10,11,10,11,10,11,11,10,10,10,10,10,10,9,10,10,10,10,10,10,10,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,10,11,11,10,10,10,10,9,9,10,10,9,9,10,9,10,10,10,10,11,11,10,10,10,10,10,10,10,9,9,10,10,10,9,9,10,10,10,10,10,11,10,11,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,7,9,8,9,9,10,10,6,5,5,7,7,9,9,8,8,10,9,11,10,12,11,6,5,5,8,7,9,9,8,8,10,10,11,11,12,11,19,8,8,8,8,10,10,9,9,10,10,11,11,12,11,19,8,8,8,8,10,10,9,9,10,10,11,11,12,12,19,12,12,9,9,10,10,9,10,10,10,11,11,12,12,19,12,12,9,9,10,10,10,10,10,10,12,12,12,12,19,19,19,9,9,9,9,11,10,11,11,12,11,13,13,19,19,19,9,9,9,9,11,10,11,11,11,12,13,13,19,19,19,13,13,10,10,11,11,12,12,12,12,13,12,19,19,19,14,13,10,10,11,11,12,12,12,13,13,13,19,19,19,19,19,12,12,12,11,12,13,14,13,13,13,19,19,19,19,19,12,12,12,11,12,12,13,14,13,14,19,19,19,19,19,16,16,12,13,12,13,13,14,15,14,19,18,18,18,18,16,15,12,11,12,11,14,12,14,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,7,7,8,6,6,7,7,7,7,7,7,7,7,8,6,6,6,7,7,7,7,7,7,7,8,6,6,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,7,8,9,9,10,10,12,11,6,5,5,7,7,8,8,9,10,11,11,12,12,7,5,5,7,7,8,8,10,10,11,11,12,12,20,7,7,7,7,8,9,10,10,11,11,12,13,20,7,7,7,7,9,9,10,10,11,12,13,13,20,11,11,8,8,9,9,11,11,12,12,13,13,20,11,11,8,8,9,9,11,11,12,12,13,13,20,20,20,10,10,10,10,12,12,13,13,13,13,20,20,20,10,10,10,10,12,12,13,13,13,14,20,20,20,14,14,11,11,12,12,13,13,14,14,20,20,20,14,14,11,11,12,12,13,13,14,14,20,20,20,20,19,13,13,13,13,14,14,15,14,19,19,19,19,19,13,13,13,13,14,14,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,4,4,5,5,5,4,4,5,5,5,4,4,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,7,9,8,10,10,6,5,5,7,7,8,8,9,9,9,10,11,11,7,5,5,7,7,8,8,9,9,10,10,11,11,0,7,7,7,7,9,8,9,9,10,10,11,11,0,8,8,7,7,8,9,9,9,10,10,11,11,0,11,11,9,9,10,10,11,10,11,11,12,12,0,12,12,9,9,10,10,11,11,11,11,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,6,6,7,7,8,8,8,8,11,4,4,6,6,7,7,8,8,9,9,11,4,4,6,6,7,7,8,8,9,9,12,5,5,6,6,7,7,9,9,9,9,12,12,12,6,6,7,7,9,9,9,9,11,11,11,7,7,7,7,8,8,9,9,11,11,11,7,7,7,7,8,8,9,9,11,11,11,7,7,8,8,8,8,9,9,11,11,11,11,11,8,8,8,8,8,9,11,11,11,11,11,8,8,8,8,8,8,11,11,11,11,11,7,7,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,6,7,10,10,10,10,10,9,4,6,6,10,10,10,10,9,10,5,10,10,9,11,12,10,11,12,7,10,10,11,12,12,12,12,12,7,10,10,11,12,12,12,12,12,6,10,10,10,12,12,11,12,12,7,10,10,12,12,12,12,11,12,7,10,10,11,12,12,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,8,8,8,8,9,9,10,10,11,11,0,4,4,6,6,7,7,8,8,9,9,10,10,11,11,12,12,0,4,4,6,6,7,7,8,8,9,9,10,10,11,11,12,12,0,5,5,6,6,8,8,9,9,9,9,10,10,11,12,12,12,0,0,0,6,6,8,7,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,13,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,12,13,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,4,5,5,7,7,9,9,0,4,4,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,5,5,6,6,8,8,10,10,0,0,0,6,6,8,8,10,10,0,0,0,7,7,9,9,10,10,0,0,0,7,7,8,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,0,5,5,8,8,0,5,5,8,8,0,7,7,9,9,0,0,0,9,9,5,7,7,9,9,0,8,8,10,10,0,8,7,10,9,0,10,10,11,11,0,0,0,11,11,5,7,7,9,9,0,8,8,10,10,0,7,8,9,10,0,10,10,11,11,0,0,0,11,11,8,9,9,11,10,0,11,11,12,12,0,11,10,12,12,0,13,14,14,14,0,0,0,14,13,8,9,9,10,11,0,11,11,12,12,0,10,11,12,12,0,13,13,14,14,0,0,0,13,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,11,10,0,7,7,10,10,0,7,7,10,10,0,9,9,11,10,0,0,0,11,11,5,7,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,11,11,8,10,9,12,12,0,10,10,12,12,0,10,10,12,12,0,12,12,13,13,0,0,0,13,13,8,9,10,12,12,0,10,10,12,12,0,10,10,11,12,0,12,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,11,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,11,10,5,8,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,11,10,0,0,0,10,11,9,10,10,12,12,0,10,10,12,12,0,10,10,12,12,0,12,13,13,13,0,0,0,13,12,9,10,10,12,12,0,10,10,12,12,0,10,10,12,12,0,13,12,13,13,0,0,0,12,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,14,13,0,9,9,12,12,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,7,10,10,13,14,0,9,9,12,13,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,9,11,11,14,13,0,11,10,13,12,0,11,11,13,13,0,12,12,13,13,0,0,0,13,13,9,11,11,13,14,0,10,11,12,13,0,11,11,13,13,0,12,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,11,11,14,14,0,10,11,13,13,0,11,10,13,13,0,12,12,13,13,0,0,0,13,12,9,11,11,14,14,0,11,10,13,13,0,10,11,13,13,0,12,12,14,13,0,0,0,13,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,5,5,0,5,5,5,8,7,0,9,9,0,9,8,5,7,8,0,9,9,0,8,9,0,0,0,0,0,0,0,0,0,5,9,9,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,0,0,5,9,9,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,11,12,14,15,15,17,17,18,18,5,6,6,8,9,10,13,17,18,19,7,5,4,6,8,9,11,15,19,19,8,6,5,5,6,7,11,14,16,17,9,7,7,6,7,7,10,13,15,19,10,8,7,6,7,6,7,9,14,16,12,10,9,7,7,6,4,5,10,15,14,13,11,7,6,6,4,2,7,13,16,16,15,9,8,8,8,6,9,13,19,19,17,12,11,10,10,9,11,14,0,0,0,0,2,0,0,0,100,0,0,0,160,253,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,236,2,0,0,0,0,0,0,0,0,0,0,0,0,0,168,236,2,0,0,0,0,0,0,0,0,0,0,0,0,0,208,236,2,0,0,0,0,0,0,0,0,0,0,0,0,0,248,236,2,0,0,0,0,0,32,237,2,0,72,237,2,0,0,0,0,0,0,0,0,0,112,237,2,0,152,237,2,0,0,0,0,0,0,0,0,0,192,237,2,0,232,237,2,0,0,0,0,0,0,0,0,0,16,238,2,0,56,238,2,0,0,0,0,0,0,0,0,0,96,238,2,0,136,238,2,0,176,238,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,24,236,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,11,13,14,14,13,13,16,14,6,3,4,7,9,9,10,11,14,13,10,4,3,5,7,7,9,10,13,15,12,7,4,4,6,6,8,10,13,15,12,8,6,6,6,6,8,10,13,14,11,9,7,6,6,6,7,8,12,11,13,10,9,8,7,6,6,7,11,11,13,11,10,9,9,7,7,6,10,11,13,13,13,13,13,11,9,8,10,12,12,15,15,16,15,12,11,10,10,12,0,0,0,0,4,0,0,0,81,0,0,0,56,253,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,144,253,2,0,0,0,0,0,4,0,0,0,113,2,0,0,168,250,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,32,253,2,0,0,0,0,0,2,0,0,0,81,0,0,0,40,250,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,250,2,0,0,0,0,0,2,0,0,0,33,1,0,0,184,248,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,249,2,0,0,0,0,0,4,0,0,0,81,0,0,0,80,248,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,168,248,2,0,0,0,0,0,2,0,0,0,121,0,0,0,160,247,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,32,248,2,0,0,0,0,0,2,0,0,0,169,0,0,0,184,246,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,104,247,2,0,0,0,0,0,2,0,0,0,25,0,0,0,128,246,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,246,2,0,0,0,0,0,2,0,0,0,169,0,0,0,152,245,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,72,246,2,0,0,0,0,0,2,0,0,0,121,0,0,0,232,244,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,104,245,2,0,0,0,0,0,2,0,0,0,225,0,0,0,192,243,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,168,244,2,0,0,0,0,0,2,0,0,0,185,1,0,0,168,241,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,104,243,2,0,0,0,0,0,2,0,0,0,169,0,0,0,192,240,2,0,1,0,0,0,0,220,125,225,0,232,51,97,4,0,0,0,0,0,0,0,112,241,2,0,0,0,0,0,2,0,0,0,169,0,0,0,216,239,2,0,1,0,0,0,0,96,18,225,0,128,184,96,4,0,0,0,0,0,0,0,136,240,2,0,0,0,0,0,1,0,0,0,49,0,0,0,216,238,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,16,239,2,0,0,0,0,0,2,4,3,4,5,5,5,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,6,8,8,8,8,6,6,6,8,8,8,8,8,7,9,8,10,10,5,6,6,8,8,9,9,8,8,10,10,10,10,16,9,9,9,9,9,9,9,8,10,9,11,11,16,8,9,9,9,9,9,9,9,10,10,11,11,16,13,13,9,9,10,9,9,10,11,11,11,12,16,13,14,9,8,10,8,9,9,10,10,12,11,16,14,16,9,9,9,9,11,11,12,11,12,11,16,16,16,9,7,9,6,11,11,11,10,11,11,16,16,16,11,12,9,10,11,11,12,11,13,13,16,16,16,12,11,10,7,12,10,12,12,12,12,16,16,15,16,16,10,11,10,11,13,13,14,12,16,16,16,15,15,12,10,11,11,13,11,12,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,11,11,11,11,11,11,11,11,11,11,4,7,7,11,11,11,11,11,11,11,11,11,11,5,8,9,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,6,6,7,7,7,7,8,7,8,8,8,8,8,8,8,8,8,8,10,6,6,7,7,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,8,8,9,8,9,9,9,9,9,9,9,9,10,7,7,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,10,11,11,8,7,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,9,11,11,11,11,11,9,9,9,9,9,9,10,9,9,10,9,10,9,9,10,9,11,11,11,11,11,9,9,9,9,9,9,9,10,10,10,10,9,10,10,9,10,11,11,11,11,11,9,9,9,9,10,10,10,9,10,10,10,10,9,10,10,9,11,11,11,11,11,11,11,9,9,9,9,10,10,10,10,9,10,10,10,10,10,11,11,11,11,11,11,11,10,9,10,10,10,10,10,10,10,9,10,9,10,10,11,11,11,11,11,11,11,10,9,10,9,10,10,9,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,9,10,10,10,10,10,9,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,9,10,10,11,11,11,11,11,11,11,11,11,10,10,10,9,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,10,11,9,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,7,7,8,7,9,8,10,9,6,5,5,8,8,9,9,8,8,9,9,11,10,11,10,6,5,5,8,8,9,9,8,8,9,9,10,10,11,11,18,8,8,9,8,10,10,9,9,10,10,10,10,11,10,18,8,8,9,9,10,10,9,9,10,10,11,11,12,12,18,12,13,9,10,10,10,9,10,10,10,11,11,12,11,18,13,13,9,9,10,10,10,10,10,10,11,11,12,12,18,18,18,10,10,9,9,11,11,11,11,11,12,12,12,18,18,18,10,9,10,9,11,10,11,11,11,11,13,12,18,18,18,14,13,10,10,11,11,12,12,12,12,12,12,18,18,18,14,13,10,10,11,10,12,12,12,12,12,12,18,18,18,18,18,12,12,11,11,12,12,13,13,13,14,18,18,18,18,18,12,12,11,11,12,11,13,13,14,13,18,18,18,18,18,16,16,11,12,12,13,13,13,14,13,18,18,18,18,18,16,15,12,11,12,11,13,11,15,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,3,5,5,6,6,7,7,7,7,7,7,9,5,5,6,6,7,7,7,7,8,7,8,5,5,6,6,7,7,7,7,7,7,9,6,6,7,7,7,7,8,7,7,8,9,9,9,7,7,7,7,7,7,7,8,9,9,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,7,7,8,8,9,9,9,8,8,8,8,7,7,8,8,9,9,9,9,8,8,8,7,7,8,8,9,9,9,8,8,8,8,7,7,8,8,9,9,9,8,8,7,7,7,7,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,8,8,10,10,11,10,6,5,5,7,7,8,8,9,9,10,10,12,11,6,5,5,7,7,8,8,9,9,10,10,12,11,21,7,7,7,7,9,9,10,10,11,11,12,12,21,7,7,7,7,9,9,10,10,11,11,12,12,21,12,12,9,9,10,10,11,11,11,11,12,12,21,12,12,9,9,10,10,11,11,12,12,12,12,21,21,21,11,11,10,10,11,12,12,12,13,13,21,21,21,11,11,10,10,12,12,12,12,13,13,21,21,21,15,15,11,11,12,12,13,13,13,13,21,21,21,15,16,11,11,12,12,13,13,14,14,21,21,21,21,20,13,13,13,13,13,13,14,14,20,20,20,20,20,13,13,13,13,13,13,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,4,4,5,5,5,4,4,5,5,5,4,4,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,8,8,10,9,10,10,6,5,5,7,7,9,9,9,9,10,10,11,11,6,5,5,7,7,9,9,10,9,11,10,11,11,0,6,6,7,7,9,9,10,10,11,11,12,12,0,7,7,7,7,9,9,10,10,11,11,12,12,0,11,11,8,8,10,10,11,11,12,12,12,12,0,11,12,9,8,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,4,6,6,7,7,8,8,8,8,11,4,4,6,6,7,7,8,8,8,8,11,4,4,6,6,7,7,8,8,8,8,11,6,6,6,6,8,8,8,8,9,9,11,11,11,6,6,7,8,8,8,8,9,11,11,11,7,7,8,8,8,8,8,8,11,11,11,7,7,8,8,8,8,8,8,11,11,11,8,8,8,8,8,8,8,8,11,11,11,10,10,8,8,8,8,8,8,11,11,11,10,10,8,8,8,8,8,8,11,11,11,10,10,7,7,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,6,6,9,9,10,10,10,9,4,6,6,9,10,9,10,9,10,6,9,9,10,12,11,10,11,11,7,10,9,11,12,12,12,12,12,7,10,10,11,12,12,12,12,12,6,10,10,10,12,12,11,12,12,7,9,10,11,12,12,12,12,12,7,10,9,12,12,12,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,9,9,9,10,10,10,0,4,4,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,4,4,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,7,7,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,3,4,6,6,7,7,9,9,0,4,4,6,6,7,7,9,10,0,4,4,6,6,7,7,10,9,0,5,5,7,7,8,8,10,10,0,0,0,7,6,8,8,10,10,0,0,0,7,7,9,9,11,11,0,0,0,7,7,9,9,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,0,5,5,8,8,0,5,5,8,8,0,7,7,9,9,0,0,0,9,9,5,7,7,9,9,0,8,8,10,10,0,8,7,10,9,0,10,10,11,11,0,0,0,11,11,5,7,7,9,9,0,8,8,10,10,0,7,8,9,10,0,10,10,11,11,0,0,0,11,11,8,9,9,11,11,0,11,11,12,12,0,11,10,12,12,0,13,14,14,14,0,0,0,14,13,8,9,9,11,11,0,11,11,12,12,0,10,11,12,12,0,14,13,14,14,0,0,0,13,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,11,10,0,7,7,10,10,0,7,7,10,10,0,9,9,11,10,0,0,0,11,11,5,7,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,11,11,8,10,9,12,12,0,10,10,12,12,0,10,10,12,12,0,12,12,13,13,0,0,0,13,13,8,9,10,12,12,0,10,10,11,12,0,10,10,12,12,0,12,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,11,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,11,10,5,8,8,11,11,0,7,7,10,10,0,7,7,10,10,0,9,9,11,11,0,0,0,10,11,8,10,10,12,12,0,10,10,12,12,0,10,10,12,12,0,12,13,13,13,0,0,0,14,13,8,10,10,12,12,0,10,10,12,12,0,10,10,12,12,0,13,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,14,13,0,9,9,13,12,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,7,10,10,13,14,0,9,9,12,13,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,9,11,11,14,13,0,11,10,14,13,0,11,11,13,13,0,12,12,13,13,0,0,0,13,13,9,11,11,13,14,0,10,11,13,14,0,11,11,13,13,0,12,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,11,11,14,14,0,11,11,13,13,0,11,10,13,13,0,12,12,13,13],"i8",L3,x.GLOBAL_BASE+185588),d3([13,13,9,11,11,14,14,0,11,11,13,13,0,10,11,13,13,0,12,12,14,13,0,0,0,13,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,5,5,0,5,5,5,8,7,0,9,9,0,9,8,5,7,8,0,9,9,0,8,9,0,0,0,0,0,0,0,0,0,5,9,8,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,0,0,5,9,9,0,8,8,0,8,8,5,9,9,0,8,8,0,8,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,9,11,11,13,14,19,17,17,19,5,4,5,8,10,10,13,16,18,19,7,4,4,5,8,9,12,14,17,19,8,6,5,5,7,7,10,13,16,18,10,8,7,6,5,5,8,11,17,19,11,9,7,7,5,4,5,8,17,19,13,11,8,7,7,5,5,7,16,18,14,13,8,6,6,5,5,7,16,18,18,16,10,8,8,7,7,9,16,18,18,18,12,10,10,9,9,10,17,18,0,0,0,0,2,0,0,0,100,0,0,0,184,41,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,168,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,208,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,248,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,72,0,3,0,0,0,0,0,112,0,3,0,152,0,3,0,0,0,0,0,0,0,0,0,192,0,3,0,232,0,3,0,0,0,0,0,0,0,0,0,16,1,3,0,56,1,3,0,96,1,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,24,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,9,13,10,12,12,12,12,12,6,4,6,8,6,8,10,10,11,12,8,5,4,10,4,7,8,9,10,11,13,8,10,8,9,9,11,12,13,14,10,6,4,9,3,5,6,8,10,11,11,8,6,9,5,5,6,7,9,11,12,9,7,11,6,6,6,7,8,10,12,11,9,12,7,7,6,6,7,9,13,12,10,13,9,8,7,7,7,8,11,15,11,15,11,10,9,8,7,7,0,0,0,0,8,0,0,0,161,25,0,0,0,16,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,41,3,0,0,0,0,0,4,0,0,0,113,2,0,0,112,13,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,15,3,0,0,0,0,0,4,0,0,0,113,2,0,0,224,10,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,13,3,0,0,0,0,0,2,0,0,0,81,0,0,0,96,10,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,184,10,3,0,0,0,0,0,2,0,0,0,81,0,0,0,224,9,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,56,10,3,0,0,0,0,0,2,0,0,0,33,1,0,0,112,8,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,152,9,3,0,0,0,0,0,4,0,0,0,81,0,0,0,8,8,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,96,8,3,0,0,0,0,0,2,0,0,0,121,0,0,0,88,7,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,216,7,3,0,0,0,0,0,2,0,0,0,169,0,0,0,112,6,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,32,7,3,0,0,0,0,0,2,0,0,0,25,0,0,0,56,6,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,6,3,0,0,0,0,0,2,0,0,0,225,0,0,0,16,5,3,0,1,0,0,0,0,134,115,225,0,80,22,97,4,0,0,0,0,0,0,0,248,5,3,0,0,0,0,0,2,0,0,0,33,1,0,0,160,3,3,0,1,0,0,0,0,0,245,224,0,0,149,96,5,0,0,0,0,0,0,0,200,4,3,0,0,0,0,0,2,0,0,0,185,1,0,0,136,1,3,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,72,3,3,0,0,0,0,0,3,5,5,6,6,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,9,11,5,6,7,7,8,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,11,5,5,7,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,11,7,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,10,9,10,11,11,11,7,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,5,5,7,7,9,8,10,9,10,10,11,10,11,11,6,5,5,7,7,8,9,10,10,11,10,12,11,12,11,13,12,6,5,5,7,7,9,9,10,10,11,11,12,12,13,12,13,13,18,8,8,8,8,9,9,10,11,11,11,12,11,13,11,13,12,18,8,8,8,8,10,10,11,11,12,12,13,13,13,13,13,14,18,12,12,9,9,11,11,11,11,12,12,13,12,13,12,13,13,20,13,12,9,9,11,11,11,11,12,12,13,13,13,14,14,13,20,18,19,11,12,11,11,12,12,13,13,13,13,13,13,14,13,18,19,19,12,11,11,11,12,12,13,12,13,13,13,14,14,13,18,17,19,14,15,12,12,12,13,13,13,14,14,14,14,14,14,19,19,19,16,15,12,11,13,12,14,14,14,13,13,14,14,14,19,18,19,18,19,13,13,13,13,14,14,14,13,14,14,14,14,18,17,19,19,19,13,13,13,11,13,11,13,14,14,14,14,14,19,17,17,18,18,16,16,13,13,13,13,14,13,15,15,14,14,19,19,17,17,18,16,16,13,11,14,10,13,12,14,14,14,14,19,19,19,19,19,18,17,13,14,13,11,14,13,14,14,15,15,19,19,19,17,19,18,18,14,13,12,11,14,11,15,15,15,15,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,13,13,13,13,13,13,13,13,13,13,13,13,4,7,7,13,13,13,13,13,13,13,13,13,13,13,13,3,8,6,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,4,4,5,5,6,5,5,5,5,6,4,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,8,9,10,10,10,10,7,5,5,7,7,8,8,9,9,10,10,10,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,10,10,10,10,10,11,11,0,13,13,9,9,9,9,10,10,11,11,11,11,0,0,0,10,10,10,10,10,10,11,11,11,11,0,0,0,10,10,10,10,10,10,11,11,12,12,0,0,0,14,14,11,11,11,11,12,12,12,12,0,0,0,14,14,11,11,11,11,12,12,12,12,0,0,0,0,0,12,12,12,12,12,12,13,13,0,0,0,0,0,12,12,12,12,12,12,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,6,6,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,9,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,11,11,10,11,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,7,11,11,12,11,11,12,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,4,4,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,4,4,6,6,8,8,9,9,9,9,10,10,11,11,12,12,0,4,4,6,6,8,8,9,9,9,9,10,10,11,11,12,12,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,7,7,8,9,10,10,10,10,11,11,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,9,10,10,10,11,11,12,12,12,12,0,0,0,0,0,10,10,10,10,11,11,11,12,12,12,13,13,0,0,0,0,0,0,0,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,13,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,12,12,12,12,13,12,13,13,13,13,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,3,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,6,6,7,7,7,7,9,9,0,0,0,7,6,7,7,9,9,0,0,0,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,9,9,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,5,5,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,7,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,3,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,5,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,5,5,0,0,0,5,5,0,0,0,8,7,0,0,0,0,0,0,0,4,6,6,0,0,0,8,8,0,0,0,8,7,0,0,0,10,10,0,0,0,0,0,0,0,4,6,6,0,0,0,8,8,0,0,0,7,8,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,5,7,8,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,5,8,8,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,10,10,0,0,0,10,10,0,0,0,9,10,0,0,0,11,10,0,0,0,0,0,0,0,8,10,10,0,0,0,10,10,0,0,0,10,10,0,0,0,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,4,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,11,10],"i8",L3,x.GLOBAL_BASE+195830),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,8,10,14,11,11,12,16,15,17,5,5,7,9,7,8,10,13,17,17,7,5,5,10,5,7,8,11,13,15,10,8,10,8,8,8,11,15,18,18,8,5,5,8,3,4,6,10,14,16,9,7,6,7,4,3,5,9,14,18,10,9,8,10,6,5,6,9,14,18,12,12,11,12,8,7,8,11,14,18,14,13,12,10,7,5,6,9,14,18,14,14,13,10,6,5,6,8,11,16,0,0,0,0,2,0,0,0,100,0,0,0,72,85,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,43,3,0,0,0,0,0,0,0,0,0,0,0,0,0,192,43,3,0,0,0,0,0,0,0,0,0,0,0,0,0,232,43,3,0,0,0,0,0,0,0,0,0,0,0,0,0,16,44,3,0,0,0,0,0,0,0,0,0,0,0,0,0,56,44,3,0,0,0,0,0,0,0,0,0,0,0,0,0,96,44,3,0,0,0,0,0,136,44,3,0,176,44,3,0,0,0,0,0,0,0,0,0,216,44,3,0,0,45,3,0,0,0,0,0,0,0,0,0,40,45,3,0,80,45,3,0,120,45,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,48,43,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,11,11,11,11,10,11,12,11,5,2,11,5,6,6,7,9,11,12,11,9,6,10,6,7,8,9,10,11,11,5,11,7,8,8,9,11,13,14,11,6,5,8,4,5,7,8,10,11,10,6,7,7,5,5,6,8,9,11,10,7,8,9,6,6,6,7,8,9,11,9,9,11,7,7,6,6,7,9,12,12,10,13,9,8,7,7,7,8,11,13,11,14,11,10,9,8,7,7,0,0,0,0,8,0,0,0,161,25,0,0,144,59,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,56,85,3,0,0,0,0,0,4,0,0,0,113,2,0,0,0,57,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,59,3,0,0,0,0,0,4,0,0,0,113,2,0,0,112,54,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,56,3,0,0,0,0,0,2,0,0,0,81,0,0,0,240,53,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,72,54,3,0,0,0,0,0,2,0,0,0,81,0,0,0,112,53,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,200,53,3,0,0,0,0,0,2,0,0,0,33,1,0,0,0,52,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,40,53,3,0,0,0,0,0,4,0,0,0,81,0,0,0,152,51,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,240,51,3,0,0,0,0,0,2,0,0,0,121,0,0,0,232,50,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,104,51,3,0,0,0,0,0,2,0,0,0,169,0,0,0,0,50,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,176,50,3,0,0,0,0,0,2,0,0,0,25,0,0,0,200,49,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,49,3,0,0,0,0,0,2,0,0,0,169,0,0,0,224,48,3,0,1,0,0,0,0,136,93,225,0,176,19,97,4,0,0,0,0,0,0,0,144,49,3,0,0,0,0,0,2,0,0,0,225,0,0,0,184,47,3,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,160,48,3,0,0,0,0,0,2,0,0,0,185,1,0,0,160,45,3,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,96,47,3,0,0,0,0,0,2,5,5,6,6,7,7,7,7,8,8,8,8,8,8,8,8,9,9,9,9,11,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,10,11,6,6,7,7,8,8,8,8,9,9,9,9,9,9,10,9,10,10,10,10,11,7,7,7,7,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,12,11,11,7,7,8,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,12,11,12,8,8,8,8,9,9,9,9,9,10,10,10,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,12,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,12,11,11,11,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,12,12,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,12,11,12,11,11,11,9,10,10,10,10,10,10,10,10,10,10,10,10,10,11,12,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,12,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,12,11,11,12,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,12,12,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,12,12,12,11,11,11,12,11,11,11,10,10,10,10,10,10,10,10,10,10,10,12,11,12,12,12,12,12,11,12,11,11,10,10,10,10,10,10,10,10,10,10,12,12,12,12,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,5,5,7,7,9,8,10,9,10,10,10,10,6,5,5,7,7,9,8,10,9,11,10,12,12,13,13,6,5,5,7,7,9,9,10,10,11,11,12,12,12,13,19,8,8,8,8,9,9,10,10,12,11,12,12,13,13,19,8,8,8,8,9,9,11,11,12,12,13,13,13,13,19,12,12,9,9,11,11,11,11,12,11,13,12,13,13,18,12,12,9,9,11,10,11,11,12,12,12,13,13,14,19,18,18,11,11,11,11,12,12,13,12,13,13,14,14,16,18,18,11,11,11,10,12,11,13,13,13,13,13,14,17,18,18,14,15,11,12,12,13,13,13,13,14,14,14,18,18,18,15,15,12,10,13,10,13,13,13,13,13,14,18,17,18,17,18,12,13,12,13,13,13,14,14,16,14,18,17,18,18,17,13,12,13,10,12,12,14,14,14,14,17,18,18,18,18,14,15,12,12,13,12,14,14,15,15,18,18,18,17,18,15,14,12,11,12,12,14,14,14,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,3,12,12,12,12,12,12,12,12,12,12,4,7,7,12,12,12,12,12,12,12,12,12,12,3,8,8,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,5,6,5,5,5,5,6,5,4,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,8,8,9,10,11,11,7,5,5,7,7,8,8,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,9,10,10,10,10,11,11,0,13,13,9,9,10,9,10,10,11,11,11,12,0,0,0,10,10,10,10,10,10,11,11,12,12,0,0,0,10,10,10,10,10,10,11,11,12,12,0,0,0,14,14,11,11,11,11,12,12,12,12,0,0,0,14,14,11,11,11,11,12,12,12,13,0,0,0,0,0,12,12,12,12,12,12,13,13,0,0,0,0,0,13,12,12,12,12,12,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,6,6,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,9,8,10,10,10,10,10,8,8,8,8,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,11,11,10,11,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,7,11,11,12,11,11,12,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,4,4,6,6,8,8,9,9,8,8,9,9,10,10,11,11,0,4,4,6,6,8,8,9,9,9,9,10,10,11,11,11,11,0,4,4,7,6,8,8,9,9,9,9,10,10,11,11,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,9,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,9,9,10,10,11,11,11,12,12,12,0,0,0,0,0,10,10,10,10,11,11,11,11,12,12,13,12,0,0,0,0,0,0,0,10,10,11,11,11,11,12,12,12,12,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,12,12,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,0,0,12,12,12,12,12,13,13,13,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,3,3,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,4,5,6,6,7,7,9,9,0,6,6,7,7,8,8,10,10,0,0,0,7,7,8,8,10,9,0,0,0,9,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,10,10,9,9,11,11,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,5,5,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,8,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,0,0,0,5,5,0,0,0,5,5,0,0,0,7,7,0,0,0,0,0,0,0,5,6,6,0,0,0,7,7,0,0,0,7,7,0,0,0,10,10,0,0,0,0,0,0,0,5,6,6,0,0,0,7,7,0,0,0,7,7,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,5,7,8,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,9,9,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,8,10,10,0,0,0,9,9,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,5,6,6,0,0,0,0,0,0,5,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,6,8,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9],"i8",L3,x.GLOBAL_BASE+207264),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,14,10,15,10,12,15,16,15,4,2,11,5,10,6,8,11,14,14,14,10,7,11,6,8,10,11,13,15,9,4,11,5,9,6,9,12,14,15,14,9,6,9,4,5,7,10,12,13,9,5,7,6,5,5,7,10,13,13,10,8,9,8,7,6,8,10,14,14,13,11,10,10,7,7,8,11,14,15,13,12,9,9,6,5,7,10,14,17,15,13,11,10,6,6,7,9,12,17,0,0,0,0,2,0,0,0,100,0,0,0,48,128,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,80,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,120,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,160,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,200,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,240,87,3,0,0,0,0,0,24,88,3,0,64,88,3,0,0,0,0,0,0,0,0,0,104,88,3,0,144,88,3,0,0,0,0,0,0,0,0,0,184,88,3,0,224,88,3,0,8,89,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,192,86,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,11,11,11,11,10,10,12,11,5,2,11,5,6,6,7,9,11,13,13,10,7,11,6,7,8,9,10,12,11,5,11,6,8,7,9,11,14,15,11,6,6,8,4,5,7,8,10,13,10,5,7,7,5,5,6,8,10,11,10,7,7,8,6,5,5,7,9,9,11,8,8,11,8,7,6,6,7,9,12,11,10,13,9,9,7,7,7,9,11,13,12,15,12,11,9,8,8,8,0,0,0,0,8,0,0,0,161,25,0,0,120,102,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,32,128,3,0,0,0,0,0,4,0,0,0,113,2,0,0,232,99,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,96,102,3,0,0,0,0,0,4,0,0,0,113,2,0,0,88,97,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,99,3,0,0,0,0,0,2,0,0,0,81,0,0,0,216,96,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,48,97,3,0,0,0,0,0,2,0,0,0,81,0,0,0,88,96,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,176,96,3,0,0,0,0,0,2,0,0,0,33,1,0,0,232,94,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,16,96,3,0,0,0,0,0,4,0,0,0,81,0,0,0,128,94,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,216,94,3,0,0,0,0,0,2,0,0,0,121,0,0,0,208,93,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,80,94,3,0,0,0,0,0,2,0,0,0,169,0,0,0,232,92,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,152,93,3,0,0,0,0,0,2,0,0,0,25,0,0,0,176,92,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,92,3,0,0,0,0,0,2,0,0,0,169,0,0,0,200,91,3,0,1,0,0,0,0,232,87,225,0,224,255,96,4,0,0,0,0,0,0,0,120,92,3,0,0,0,0,0,2,0,0,0,225,0,0,0,160,90,3,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,136,91,3,0,0,0,0,0,2,0,0,0,33,1,0,0,48,89,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,88,90,3,0,0,0,0,0,2,5,5,6,6,7,7,7,7,7,7,8,8,8,8,8,8,10,6,6,7,7,8,7,8,8,8,8,8,9,9,9,9,9,10,6,6,7,7,7,7,8,8,8,8,9,9,9,9,9,9,10,7,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,8,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,8,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,10,11,11,11,9,9,9,9,9,9,10,10,9,9,10,9,11,10,11,11,11,9,9,9,9,9,9,9,9,10,10,10,9,11,11,11,11,11,9,9,9,9,10,10,9,9,9,9,10,9,11,11,11,11,11,11,11,9,9,9,9,9,9,10,10,10,10,11,11,11,11,11,11,11,10,9,10,10,9,10,9,9,10,9,11,10,10,11,11,11,11,9,10,9,9,9,9,10,10,10,10,11,11,11,11,11,11,10,10,10,9,9,10,9,10,9,10,10,10,10,11,11,11,11,11,11,11,9,9,9,9,9,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,7,9,9,10,10,10,10,6,5,5,7,7,8,8,10,8,11,10,12,12,13,13,6,5,5,7,7,8,8,10,9,11,11,12,12,13,12,18,8,8,8,8,9,9,10,9,11,10,12,12,13,13,18,8,8,8,8,9,9,10,10,11,11,13,12,14,13,18,11,11,9,9,10,10,11,11,11,12,13,12,13,14,18,11,11,9,8,11,10,11,11,11,11,12,12,14,13,18,18,18,10,11,10,11,12,12,12,12,13,12,14,13,18,18,18,10,11,11,9,12,11,12,12,12,13,13,13,18,18,17,14,14,11,11,12,12,13,12,14,12,14,13,18,18,18,14,14,11,10,12,9,12,13,13,13,13,13,18,18,17,16,18,13,13,12,12,13,11,14,12,14,14,17,18,18,17,18,13,12,13,10,12,11,14,14,14,14,17,18,18,18,18,15,16,12,12,13,10,14,12,14,15,18,18,18,16,17,16,14,12,11,13,10,13,13,14,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,4,4,12,12,12,12,12,12,12,12,12,12,4,9,8,12,12,12,12,12,12,12,12,12,12,2,9,7,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,5,6,5,5,5,5,6,4,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,8,8,9,9,10,10,7,5,5,7,7,8,8,8,8,9,9,11,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,12,0,13,13,9,9,10,10,10,10,11,11,12,12,0,0,0,10,10,10,10,11,11,12,12,12,12,0,0,0,10,10,10,10,11,11,12,12,12,12,0,0,0,14,14,11,11,11,11,12,12,13,13,0,0,0,14,14,11,11,11,11,12,12,13,13,0,0,0,0,0,12,12,12,12,13,13,14,13,0,0,0,0,0,13,13,12,12,13,12,14,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,6,6,7,7,8,8,8,8,8,8,10,10,10,7,7,8,7,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,7,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,9,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,11,11,10,12,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,7,11,11,11,11,11,12,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,6,6,7,7,8,8,8,8,9,9,10,10,11,10,0,5,5,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,5,5,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,10,11,11,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,8,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,8,8,9,9,10,10,11,11,12,11,12,12,0,0,0,0,0,9,10,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,0,0,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,4,6,6,7,7,9,9,0,5,5,7,7,7,8,9,9,0,5,5,7,7,8,8,9,9,0,7,7,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,9,9,9,9,10,10,0,0,0,9,9,9,9,10,10,0,0,0,10,10,10,10,11,11,0,0,0,0,0,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,5,5,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,8,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,3,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,0,0,0,5,5,0,0,0,5,5,0,0,0,7,8,0,0,0,0,0,0,0,5,6,6,0,0,0,7,7,0,0,0,7,7,0,0,0,10,10,0,0,0,0,0,0,0,5,6,6,0,0,0,7,7,0,0,0,7,7,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,10,10,0,0,0,9,9,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,8,10,10,0,0,0,9,9,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,5,6,6,0,0,0,0,0,0,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,6,7,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,6,8,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,8,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,8],"i8",L3,x.GLOBAL_BASE+218416),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,10,9,13,11,14,10,12,13,13,14,7,2,12,5,10,5,7,10,12,14,12,6,9,8,7,7,9,11,13,16,10,4,12,5,10,6,8,12,14,16,12,6,8,7,6,5,7,11,12,16,10,4,8,5,6,4,6,9,13,16,10,6,10,7,7,6,7,9,13,15,12,9,11,9,8,6,7,10,12,14,14,11,10,9,6,5,6,9,11,13,15,13,11,10,6,5,6,8,9,11,0,0,0,0,2,0,0,0,100,0,0,0,216,170,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,56,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,96,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,136,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,176,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,216,130,3,0,0,0,0,0,0,131,3,0,40,131,3,0,0,0,0,0,0,0,0,0,80,131,3,0,120,131,3,0,0,0,0,0,0,0,0,0,160,131,3,0,200,131,3,0,240,131,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,168,129,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,12,10,10,10,9,10,12,12,6,1,10,5,6,6,7,9,11,14,12,9,8,11,7,8,9,11,13,15,10,5,12,7,8,7,9,12,14,15,10,6,7,8,5,6,7,9,12,14,9,6,8,7,6,6,7,9,12,12,9,7,9,9,7,6,6,7,10,10,10,9,10,11,8,7,6,6,8,10,12,11,13,13,11,10,8,8,8,10,11,13,15,15,14,13,10,8,8,9,0,0,0,0,8,0,0,0,161,25,0,0,32,145,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,200,170,3,0,0,0,0,0,4,0,0,0,113,2,0,0,144,142,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,8,145,3,0,0,0,0,0,4,0,0,0,113,2,0,0,0,140,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,142,3,0,0,0,0,0,2,0,0,0,81,0,0,0,128,139,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,216,139,3,0,0,0,0,0,2,0,0,0,81,0,0,0,0,139,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,88,139,3,0,0,0,0,0,2,0,0,0,33,1,0,0,144,137,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,184,138,3,0,0,0,0,0,4,0,0,0,81,0,0,0,40,137,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,128,137,3,0,0,0,0,0,2,0,0,0,121,0,0,0,120,136,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,248,136,3,0,0,0,0,0,2,0,0,0,169,0,0,0,144,135,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,64,136,3,0,0,0,0,0,2,0,0,0,25,0,0,0,88,135,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,135,3,0,0,0,0,0,2,0,0,0,169,0,0,0,112,134,3,0,1,0,0,0,0,184,84,225,0,160,251,96,4,0,0,0,0,0,0,0,32,135,3,0,0,0,0,0,2,0,0,0,169,0,0,0,136,133,3,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,56,134,3,0,0,0,0,0,2,0,0,0,33,1,0,0,24,132,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,64,133,3,0,0,0,0,0,2,4,4,6,6,7,7,7,7,7,7,8,8,8,8,8,8,10,7,7,7,7,7,7,8,8,8,8,9,9,9,9,9,9,10,7,7,7,7,8,8,8,8,8,8,9,9,9,9,9,9,10,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,8,7,8,8,8,8,9,9,9,9,9,9,9,9,10,11,11,8,8,8,8,9,9,9,9,9,9,10,9,9,9,10,11,10,8,8,8,8,9,9,9,9,9,9,9,10,10,10,10,11,10,8,8,9,9,9,9,9,9,10,9,9,10,9,10,11,10,11,11,11,8,8,9,9,9,9,9,9,9,9,10,10,11,11,11,11,11,9,9,9,9,9,9,10,9,9,9,10,10,11,11,11,11,11,9,9,9,9,9,9,9,9,9,10,9,10,11,11,11,11,11,9,9,9,9,10,10,9,9,9,10,10,10,11,11,11,11,11,11,11,9,9,9,10,9,9,10,10,10,10,11,11,10,11,11,11,11,10,9,10,10,9,9,9,9,10,10,11,10,11,11,11,11,11,9,9,9,9,10,9,10,10,10,10,11,10,11,11,11,11,11,10,10,9,9,10,9,10,10,10,10,10,10,10,11,11,11,11,11,11,9,9,10,9,10,9,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,6,8,8,10,9,10,10,6,5,5,7,7,8,7,10,9,11,11,12,13,6,5,5,7,7,8,8,10,10,11,11,13,13,18,8,8,8,8,9,9,10,10,12,12,12,13,18,8,8,8,8,9,9,10,10,12,12,13,13,18,11,11,8,8,10,10,11,11,12,11,13,12,18,11,11,9,7,10,10,11,11,11,12,12,13,17,17,17,10,10,11,11,12,12,12,10,12,12,17,17,17,11,10,11,10,13,12,11,12,12,12,17,17,17,15,14,11,11,12,11,13,10,13,12,17,17,17,14,14,12,10,11,11,13,13,13,13,17,17,16,17,16,13,13,12,10,13,10,14,13,17,16,17,16,17,13,12,12,10,13,11,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,5,4,12,12,12,12,12,12,12,12,12,12,4,9,8,11,11,11,11,11,11,11,11,11,11,2,8,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,4,6,5,5,5,5,6,5,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,6,5,5,7,7,8,8,8,8,9,9,10,10,7,6,5,7,7,8,8,8,8,9,9,10,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,11,0,13,13,9,9,10,10,10,10,11,11,12,12,0,0,0,10,10,10,10,11,11,12,12,12,13,0,0,0,10,10,10,10,11,11,12,12,12,12,0,0,0,14,14,10,11,11,11,12,12,13,13,0,0,0,14,14,11,10,11,11,13,12,13,13,0,0,0,0,0,12,12,11,12,13,12,14,14,0,0,0,0,0,12,12,12,12,13,12,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,4,6,6,7,7,7,7,7,7,9,7,7,6,6,7,7,8,8,8,8,9,6,6,6,6,7,7,8,8,8,8,10,7,7,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,10,9,9,7,10,10,11,10,11,11,10,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,10,11,11,11,12,11,11,6,9,9,11,10,10,11,11,10,6,9,9,11,10,10,12,10,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,6,6,8,8,9,9,9,9,9,9,10,10,11,11,0,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,11,0,7,7,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,8,8,7,7,9,9,10,10,9,9,10,10,11,11,12,12,0,0,0,7,7,9,9,10,10,10,9,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,10,10,10,10,11,11,12,12,13,12,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,7,7,9,9,0,7,7,7,7,7,7,9,9,0,7,7,7,7,7,7,9,9,0,8,8,7,7,8,8,10,10,0,0,0,7,7,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,10,10,9,9,11,11,0,0,0,0,0,9,9,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,3,6,6,0,0,0,0,0,6,6,6,6,0,0,0,0,0,6,6,6,6,0,0,0,0,0,7,7,6,6,0,0,0,0,0,0,0,6,7,0,0,0,0,0,0,0,7,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,3,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,0,0,0,7,7,0,0,0,7,7,0,0,0,8,8,0,0,0,0,0,0,0,4,6,6,0,0,0,8,8,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,4,6,6,0,0,0,8,8,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,11,11,0,0,0,11,11,0,0,0,12,11,0,0,0,0,0,0,0,7,8,8,0,0,0,10,11,0,0,0,11,11,0,0,0,11,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,11,11,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,6,8,8,0,0,0,10,11,0,0,0,10,11,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,9,0,0,0,11,12,0,0,0,11,12,0,0,0,12,11,0,0,0,0,0,0,0,8,10,9,0,0,0,12,11,0,0,0,12,11,0,0,0,11,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,5,6,6,0,0,0,0,0,0,5,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,6,8,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9],"i8",L3,x.GLOBAL_BASE+229400),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,11,9,13,12,12,11,12,12,13,15,8,2,11,4,8,5,7,10,12,15,13,7,10,9,8,8,10,13,17,17,11,4,12,5,9,5,8,11,14,16,12,6,8,7,6,6,8,11,13,16,11,4,9,5,6,4,6,10,13,16,11,6,11,7,7,6,7,10,13,15,13,9,12,9,8,6,8,10,12,14,14,10,10,8,6,5,6,9,11,13,15,11,11,9,6,5,6,8,9,12,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,9,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+240320),d3([1,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,231,3,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,160,5,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,72,5,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,223,3,0,0,0,0,0,0,0,0,0,0,0,0,0,96,223,3,0,0,0,0,0,0,0,0,0,0,0,0,0,136,223,3,0,0,0,0,0,0,0,0,0,0,0,0,0,176,223,3,0,0,0,0,0,0,0,0,0,0,0,0,0,216,223,3,0,0,0,0,0,0,224,3,0,40,224,3,0,0,0,0,0,0,0,0,0,80,224,3,0,120,224,3,0,0,0,0,0,0,0,0,0,160,224,3,0,200,224,3,0,240,224,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,80,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,120,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,160,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,200,185,3,0,0,0,0,0,240,185,3,0,24,186,3,0,0,0,0,0,0,0,0,0,64,186,3,0,104,186,3,0,0,0,0,0,0,0,0,0,144,186,3,0,184,186,3,0,224,186,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,208,184,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,120,184,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,4,8,10,9,9,10,11,12,4,2,5,6,6,8,10,11,13,8,4,6,8,7,9,12,12,14,10,6,8,4,5,6,9,11,12,9,5,6,5,5,6,9,11,11,9,7,9,6,5,5,7,10,10,10,9,11,8,7,6,7,9,11,11,12,13,10,10,9,8,9,11,11,15,15,12,13,11,9,10,11,0,0,0,0,0,0,0,5,5,9,10,9,9,10,11,12,5,1,5,6,6,7,10,12,14,9,5,6,8,8,10,12,14,14,10,5,8,5,6,8,11,13,14,9,5,7,6,6,8,10,12,11,9,7,9,7,6,6,7,10,10,10,9,12,9,8,7,7,10,12,11,11,13,12,10,9,8,9,11,11,14,15,15,13,11,9,9,11,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,128,197,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,40,223,3,0,0,0,0,0,4,0,0,0,113,2,0,0,240,194,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,104,197,3,0,0,0,0,0,2,0,0,0,81,0,0,0,112,194,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,200,194,3,0,0,0,0,0,2,0,0,0,81,0,0,0,240,193,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,72,194,3,0,0,0,0,0,2,0,0,0,33,1,0,0,128,192,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,168,193,3,0,0,0,0,0,4,0,0,0,81,0,0,0,24,192,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,112,192,3,0,0,0,0,0,2,0,0,0,121,0,0,0,104,191,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,232,191,3,0,0,0,0,0,2,0,0,0,169,0,0,0,128,190,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,48,191,3,0,0,0,0,0,2,0,0,0,25,0,0,0,72,190,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,104,190,3,0,0,0,0,0,2,0,0,0,169,0,0,0,96,189,3,0,1,0,0,0,0,184,84,225,0,160,251,96,4,0,0,0,0,0,0,0,16,190,3,0,0,0,0,0,2,0,0,0,169,0,0,0,120,188,3,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,40,189,3,0,0,0,0,0,2,0,0,0,33,1,0,0,8,187,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,48,188,3,0,0,0,0,0,2,5,5,6,6,7,6,7,7,8,8,8,8,8,8,8,8,10,6,6,7,7,7,7,8,8,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,7,7,7,7,8,8,8,9,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,9,9,9,9,9,9,9,9,9,9,10,11,11,8,8,8,8,9,9,9,9,9,9,10,10,9,10,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,10,10,11,10,10,8,8,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,11,11,8,8,9,9,9,9,9,9,9,9,9,9,11,11,11,11,11,9,9,9,9,9,9,9,9,10,9,10,9,11,11,11,11,11,9,8,9,9,9,9,9,9,9,10,10,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,10,10,9,11,11,11,11,11,11,11,9,9,10,9,9,9,9,10,9,10,10,11,10,11,11,11,11,9,10,10,10,9,9,9,9,9,9,10,11,11,11,11,11,11,9,9,9,9,9,9,9,9,10,9,11,11,10,11,11,11,11,10,10,9,9,9,9,9,9,10,9,10,11,10,11,11,11,11,11,11,9,9,10,9,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,9,9,10,11,12,12,6,5,5,7,7,8,7,10,10,11,11,12,12,6,5,5,7,7,8,8,10,10,11,11,12,12,16,7,7,8,8,9,9,11,11,12,12,13,13,17,7,7,8,7,9,9,11,10,12,12,13,13,19,11,10,8,8,10,10,11,11,12,12,13,13,19,11,11,9,7,11,10,11,11,12,12,13,12,19,19,19,10,10,10,10,11,12,12,12,13,14,18,19,19,11,9,11,9,13,12,12,12,13,13,19,20,19,13,15,11,11,12,12,13,13,14,13,18,19,20,15,13,12,10,13,10,13,13,13,14,20,20,20,20,20,13,14,12,12,13,12,13,13,20,20,20,20,20,13,12,12,12,14,12,14,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,13,13,13,13,13,13,13,13,13,13,3,6,6,13,13,13,13,13,13,13,13,13,13,4,8,7,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,4,5,6,5,5,5,5,6,5,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,7,5,5,7,7,8,8,8,8,9,9,10,10,7,5,6,7,7,8,8,8,8,9,9,11,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,11,0,13,13,9,9,9,9,10,10,11,11,12,12,0,0,0,9,10,9,10,11,11,12,11,13,12,0,0,0,10,10,9,9,11,11,12,12,13,12,0,0,0,13,13,10,10,11,11,12,12,13,13,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,11,12,11,11,12,13,14,13,0,0,0,0,0,12,12,11,11,13,12,14,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,7,7,7,7,8,8,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,9,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,10,11,11,11,10,10,6,9,9,11,11,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,11,11,11,11,11,11,11,6,9,9,11,10,10,11,11,10,6,9,9,10,10,10,11,10,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,6,6,7,7,8,8,8,8,9,9,10,10,11,11,0,5,5,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,5,5,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,10,10,10,11,11,11,12,12,0,0,0,8,8,8,8,9,9,10,10,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,7,7,9,9,0,6,6,7,7,8,8,9,9,0,6,6,7,7,8,8,9,9,0,7,7,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,8,8,9,9,11,11,0,0,0,9,9,9,9,11,11,0,0,0,10,10,10,10,11,11,0,0,0,0,0,9,9,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,3,7,7,0,0,0,0,0,5,5,6,6,0,0,0,0,0,5,5,7,7,0,0,0,0,0,7,7,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,9,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,9,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,10,9],"i8",L3,x.GLOBAL_BASE+242772),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,144,235,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,56,5,4,0,0,0,0,0,4,0,0,0,113,2,0,0,0,233,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,235,3,0,0,0,0,0,2,0,0,0,81,0,0,0,128,232,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,216,232,3,0,0,0,0,0,2,0,0,0,81,0,0,0,0,232,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,88,232,3,0,0,0,0,0,2,0,0,0,33,1,0,0,144,230,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,184,231,3,0,0,0,0,0,4,0,0,0,81,0,0,0,40,230,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,128,230,3,0,0,0,0,0,2,0,0,0,121,0,0,0,120,229,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,248,229,3,0,0,0,0,0,2,0,0,0,169,0,0,0,144,228,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,64,229,3,0,0,0,0,0,2,0,0,0,25,0,0,0,88,228,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,228,3,0,0,0,0,0,2,0,0,0,169,0,0,0,112,227,3,0,1,0,0,0,0,184,84,225,0,160,251,96,4,0,0,0,0,0,0,0,32,228,3,0,0,0,0,0,2,0,0,0,169,0,0,0,136,226,3,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,56,227,3,0,0,0,0,0,2,0,0,0,33,1,0,0,24,225,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,64,226,3,0,0,0,0,0,2,4,4,6,6,6,6,7,7,8,8,8,8,8,8,8,8,10,10,10,7,7,7,7,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,7,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,8,9,9,9,9,9,9,10,9,9,10,10,10,7,7,8,8,9,8,9,9,9,9,10,9,9,10,10,11,11,8,8,8,8,9,9,9,9,9,9,10,9,9,10,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,10,10,11,11,11,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,10,11,11,11,8,8,9,9,9,9,10,9,9,9,9,9,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,10,10,11,11,9,9,9,9,9,9,9,9,9,10,10,10,10,11,10,11,11,9,9,9,9,9,9,9,9,9,10,10,9,10,10,11,11,11,11,11,9,9,9,10,9,9,9,9,9,9,10,11,11,11,11,11,11,10,10,10,10,9,9,9,9,9,9,10,11,11,11,11,11,11,9,10,9,9,9,9,10,9,9,9,11,11,11,11,11,11,11,10,10,9,9,9,9,9,9,10,9,11,11,10,11,11,11,11,10,11,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,5,7,7,9,9,10,10,12,12,6,5,5,7,7,8,8,10,10,12,11,12,12,6,5,5,7,7,8,8,10,10,11,11,12,12,15,7,7,8,8,9,9,11,11,12,12,13,12,15,8,8,8,7,9,9,10,10,12,12,13,13,16,11,10,8,8,10,10,11,11,12,12,13,13,16,11,11,9,8,11,10,11,11,12,12,13,12,16,16,16,10,11,10,11,12,12,12,12,13,13,16,16,16,11,9,11,9,14,12,12,12,13,13,16,16,16,12,14,11,12,12,12,13,13,14,13,16,16,16,15,13,12,10,13,10,13,14,13,13,16,16,16,16,16,13,14,12,13,13,12,13,13,16,16,16,16,16,13,12,12,11,14,12,15,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,3,10,10,10,10,10,10,10,10,10,10,4,8,6,10,10,10,10,10,10,10,10,10,10,4,8,7,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,10,9,7,5,6,7,7,8,8,8,8,9,9,10,10,7,5,5,7,7,8,8,8,8,9,9,10,10,0,8,8,8,8,9,9,9,9,10,10,11,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,10,10,10,11,11,11,11,0,13,13,9,9,9,9,10,10,11,11,11,11,0,0,0,10,10,10,10,11,11,12,11,12,12,0,0,0,10,10,10,9,11,11,12,11,13,12,0,0,0,13,13,10,10,11,11,12,12,13,13,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,11,12,11,11,12,12,14,13,0,0,0,0,0,12,11,11,11,13,10,14,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,7,7,7,7,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,6,10,10,11,11,11,11,10,10,6,9,9,11,10,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,10,11,11,11,12,11,11,7,9,9,11,10,10,11,11,10,6,9,9,10,10,10,12,10,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,6,6,7,7,8,8,8,8,9,9,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,11,0,0,0,8,8,9,9,9,10,10,10,10,10,11,11,12,12,0,0,0,8,8,9,9,10,9,10,10,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,11,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,10,10,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,12,12,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,5,6,6,8,8,0,0,0,7,7,7,7,9,9,0,0,0,7,7,7,7,9,9,0,0,0,7,7,8,8,10,10,0,0,0,7,7,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,10,10,9,9,11,11,0,0,0,0,0,9,9,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,2,7,7,0,0,0,0,0,13,13,6,6,0,0,0,0,0,12,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,9,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,11,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,4,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,5,7,6,0,0,0,0,0,0,5,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,8,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9],"i8",L3,x.GLOBAL_BASE+253728),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,13,14,14,15,16,18,18,4,2,5,8,7,9,12,15,15,10,4,5,10,6,8,11,15,17,12,5,7,5,6,8,11,14,17,11,5,6,6,5,6,9,13,17,12,6,7,6,5,6,8,12,14,14,7,8,6,6,7,9,11,14,14,8,9,6,5,6,9,11,13,16,10,10,7,6,7,8,10,11,0,0,0,0,0,0,0,6,8,13,12,13,14,15,16,16,4,2,4,7,6,8,11,13,15,10,4,4,8,6,8,11,14,17,11,5,6,5,6,8,12,14,17,11,5,5,6,5,7,10,13,16,12,6,7,8,7,8,10,13,15,13,8,8,7,7,8,10,12,15,15,7,7,5,5,7,9,12,14,15,8,8,6,6,7,8,10,11,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,128,86,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,40,86,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,46,4,0,0,0,0,0,0,0,0,0,0,0,0,0,152,46,4,0,0,0,0,0,0,0,0,0,0,0,0,0,192,46,4,0,0,0,0,0,0,0,0,0,0,0,0,0,232,46,4,0,0,0,0,0,0,0,0,0,0,0,0,0,16,47,4,0,0,0,0,0,56,47,4,0,96,47,4,0,0,0,0,0,0,0,0,0,136,47,4,0,176,47,4,0,0,0,0,0,0,0,0,0,216,47,4,0,0,48,4,0,40,48,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,8,4,0,0,0,0,0,0,0,0,0,0,0,0,0,240,8,4,0,0,0,0,0,0,0,0,0,0,0,0,0,24,9,4,0,0,0,0,0,0,0,0,0,0,0,0,0,64,9,4,0,0,0,0,0,0,0,0,0,0,0,0,0,104,9,4,0,0,0,0,0,144,9,4,0,184,9,4,0,0,0,0,0,0,0,0,0,224,9,4,0,8,10,4,0,0,0,0,0,0,0,0,0,48,10,4,0,88,10,4,0,128,10,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,112,8,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,24,8,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,4,9,10,9,10,11,12,13,4,1,5,7,7,9,11,12,14,8,5,7,9,8,10,13,13,13,10,7,9,4,6,7,10,12,14,9,6,7,6,6,7,10,12,12,9,8,9,7,6,7,8,11,12,11,11,11,9,8,7,8,10,12,12,13,14,12,11,9,9,9,12,12,17,17,15,16,12,10,11,13,0,0,0,0,0,0,0,5,4,8,9,8,9,10,12,15,4,1,5,5,6,8,11,12,12,8,5,8,9,9,11,13,12,12,9,5,8,5,7,9,12,13,13,8,6,8,7,7,9,11,11,11,9,7,9,7,7,7,7,10,12,10,10,11,9,8,7,7,9,11,11,12,13,12,11,9,8,9,11,13,16,16,15,15,12,10,11,12,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,184,20,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,96,46,4,0,0,0,0,0,4,0,0,0,113,2,0,0,40,18,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,20,4,0,0,0,0,0,2,0,0,0,81,0,0,0,168,17,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,0,18,4,0,0,0,0,0,2,0,0,0,81,0,0,0,40,17,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,17,4,0,0,0,0,0,2,0,0,0,33,1,0,0,184,15,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,16,4,0,0,0,0,0,4,0,0,0,81,0,0,0,80,15,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,168,15,4,0,0,0,0,0,2,0,0,0,121,0,0,0,160,14,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,32,15,4,0,0,0,0,0,2,0,0,0,169,0,0,0,184,13,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,104,14,4,0,0,0,0,0,2,0,0,0,25,0,0,0,128,13,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,13,4,0,0,0,0,0,2,0,0,0,81,0,0,0,0,13,4,0,1,0,0,0,0,160,59,225,0,160,251,96,4,0,0,0,0,0,0,0,88,13,4,0,0,0,0,0,2,0,0,0,169,0,0,0,24,12,4,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,200,12,4,0,0,0,0,0,2,0,0,0,33,1,0,0,168,10,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,208,11,4,0,0,0,0,0,2,5,5,6,6,7,7,7,7,8,8,8,8,8,8,8,8,10,6,6,7,7,7,7,8,8,9,9,9,9,9,9,9,9,10,6,6,7,7,8,7,8,8,9,9,9,9,9,9,9,9,10,7,7,7,7,8,8,8,9,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,9,8,9,9,9,9,10,9,9,10,10,10,11,8,8,8,8,9,9,9,9,9,9,9,10,9,10,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,10,10,11,10,10,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,11,11,8,8,9,9,9,9,9,9,9,9,9,10,11,11,11,11,11,9,9,9,9,9,9,9,9,10,9,10,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,9,10,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,9,10,9,11,10,11,11,11,11,11,9,9,10,9,9,9,9,9,9,9,10,11,10,11,11,11,11,10,10,10,10,9,9,9,9,9,9,10,11,11,11,11,11,11,9,10,9,9,9,9,9,9,9,9,11,11,10,11,11,11,10,10,10,9,9,9,9,9,9,9,9,10,11,10,11,11,11,11,11,11,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,9,9,10,11,12,12,6,5,5,7,7,8,8,10,10,12,11,12,12,6,5,5,7,7,8,8,10,10,12,11,12,12,17,7,7,8,8,9,9,10,10,12,12,13,13,18,7,7,8,7,9,9,10,10,12,12,12,13,19,10,10,8,8,10,10,11,11,12,12,13,14,19,11,10,8,7,10,10,11,11,12,12,13,12,19,19,19,10,10,10,10,11,11,12,12,13,13,19,19,19,11,9,11,9,14,12,13,12,13,13,19,20,18,13,14,11,11,12,12,13,13,14,13,20,20,20,15,13,11,10,13,11,13,13,14,13,20,20,20,20,20,13,14,12,12,13,13,13,13,20,20,20,20,20,13,13,12,12,16,13,15,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,11,11,11,11,11,11,3,7,6,11,11,11,11,11,11,4,8,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,4,4,6,5,5,5,5,6,5,5,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,7,5,5,7,7,8,8,8,8,9,9,10,10,7,6,5,7,7,8,8,8,8,9,9,10,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,11,0,13,13,9,9,9,9,10,10,11,11,11,12,0,0,0,9,10,10,10,11,11,12,11,12,12,0,0,0,10,10,9,9,11,11,12,12,12,12,0,0,0,13,13,10,10,11,11,12,12,13,13,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,11,12,11,11,13,12,13,13,0,0,0,0,0,12,12,11,11,13,12,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,7,8,9,5,5,6,6,7,7,8,8,8,8,9,5,5,6,6,7,7,8,8,8,8,10,7,7,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,10,11,11,11,10,10,6,9,9,11,11,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,10,11,11,11,11,11,11,6,9,9,11,10,10,11,11,10,6,9,9,11,10,10,11,10,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,8,8,8,8,8,8,9,9,10,10,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,10,11,11,11,0,5,6,7,7,8,8,9,9,9,9,10,10,10,11,11,11,0,7,7,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,12,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,10,11,11,12,12,13,13,0,0,0,0,0,10,10,10,10,11,11,12,12,12,13,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,12,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,12,11,12,12,13,13,13,13,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,3,6,6,7,7,9,9,0,5,5,7,7,8,7,9,9,0,5,5,7,7,8,8,9,9,0,7,7,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,9,9,9,9,11,11,0,0,0,9,9,9,9,11,11,0,0,0,10,10,10,10,11,11,0,0,0,0,0,9,9,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,3,7,7,0,0,0,0,0,5,4,7,7,0,0,0,0,0,5,5,7,7,0,0,0,0,0,6,7,8,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,10,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,10,10],"i8",L3,x.GLOBAL_BASE+263472),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,112,60,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,24,86,4,0,0,0,0,0,4,0,0,0,113,2,0,0,224,57,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,60,4,0,0,0,0,0,2,0,0,0,81,0,0,0,96,57,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,184,57,4,0,0,0,0,0,2,0,0,0,81,0,0,0,224,56,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,56,57,4,0,0,0,0,0,2,0,0,0,33,1,0,0,112,55,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,152,56,4,0,0,0,0,0,4,0,0,0,81,0,0,0,8,55,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,96,55,4,0,0,0,0,0,2,0,0,0,121,0,0,0,88,54,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,216,54,4,0,0,0,0,0,2,0,0,0,169,0,0,0,112,53,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,32,54,4,0,0,0,0,0,2,0,0,0,25,0,0,0,56,53,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,53,4,0,0,0,0,0,4,0,0,0,113,2,0,0,168,50,4,0,1,0,0,0,0,160,27,225,0,160,251,96,3,0,0,0,0,0,0,0,32,53,4,0,0,0,0,0,2,0,0,0,169,0,0,0,192,49,4,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,112,50,4,0,0,0,0,0,2,0,0,0,33,1,0,0,80,48,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,120,49,4,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,8,8,8,8,8,8,10,10,10,7,7,7,8,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,7,7,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,8,8,9,9,9,9,9,10,9,9,10,10,10,7,7,8,8,9,8,9,9,9,9,10,9,9,10,10,10,10,8,8,8,8,9,8,9,9,9,9,9,10,9,10,10,10,10,7,7,8,8,9,9,9,9,9,9,10,9,10,10,10,10,10,8,8,8,9,9,9,9,9,9,9,10,10,10,9,11,10,10,10,10,8,8,9,9,9,9,9,10,9,9,9,10,10,10,10,11,11,9,9,9,9,9,9,9,9,10,9,9,10,11,10,10,11,11,9,9,9,9,9,9,9,9,9,9,10,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,9,10,9,11,10,10,11,11,11,11,9,9,9,9,9,9,9,9,9,9,10,10,10,11,11,11,11,9,10,9,10,9,9,9,9,10,9,10,11,10,11,10,10,10,10,10,9,9,9,10,9,9,9,10,11,11,10,11,11,10,11,10,10,10,9,9,9,9,10,9,9,10,11,10,11,11,11,11,10,11,10,10,9,10,9,9,9,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,9,9,11,12,13,12,6,5,5,7,7,8,8,10,9,12,12,12,12,6,5,5,7,7,8,8,10,9,12,11,11,13,16,7,7,8,8,9,9,10,10,12,12,13,12,16,7,7,8,7,9,9,10,10,11,12,12,13,16,10,10,8,8,10,10,11,12,12,12,13,13,16,11,10,8,7,11,10,11,11,12,11,13,13,16,16,16,10,10,10,10,11,11,13,12,13,13,16,16,16,11,9,11,9,15,13,12,13,13,13,16,16,16,15,13,11,11,12,13,12,12,14,13,16,16,16,14,13,11,11,13,12,14,13,13,13,16,16,16,16,16,13,13,13,12,14,13,14,14,16,16,16,16,16,13,13,12,12,14,14,15,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,5,5,10,10,6,9,8,10,10,6,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,7,5,5,7,7,8,8,8,8,9,9,10,10,7,5,6,7,7,8,8,8,8,9,9,10,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,11,0,13,13,9,9,9,9,10,10,11,11,11,12,0,0,0,10,10,10,10,11,11,11,11,12,12,0,0,0,10,10,9,9,11,11,11,12,12,12,0,0,0,13,13,10,10,11,11,12,12,13,13,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,11,11,11,11,13,12,13,13,0,0,0,0,0,12,12,11,11,12,12,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,7,7,7,7,7,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,8,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,10,9,9,4,6,7,10,9,9,11,9,9,7,10,10,11,11,11,12,10,11,6,9,9,11,10,11,11,10,10,6,9,9,11,10,11,11,10,10,7,11,10,12,11,11,11,11,11,7,9,9,10,10,10,11,11,10,6,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,6,6,8,7,8,8,8,8,9,9,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,9,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,8,8,9,9,9,9,10,10,10,10,11,11,12,12,0,0,0,8,8,9,9,9,9,10,10,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,11,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,10,10,11,11,11,11,11,12,12,12,13,13,0,0,0,0,0,0,0,11,10,11,11,11,11,12,12,13,13,0,0,0,0,0,0,0,11,11,12,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,11,12,12,12,12,13,13,13,0,0,0,0,0,0,0,12,12,12,12,12,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,6,6,8,8,0,0,0,7,7,7,7,9,9,0,0,0,7,7,7,7,9,9,0,0,0,7,7,7,8,9,9,0,0,0,7,7,7,7,9,9,0,0,0,9,9,8,8,10,10,0,0,0,8,9,8,8,10,10,0,0,0,10,10,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,2,8,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,6,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,9,9,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,9,11,10],"i8",L3,x.GLOBAL_BASE+274008),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,6,6,12,13,13,14,16,17,17,4,2,5,8,7,9,12,15,15,9,4,5,9,7,9,12,16,18,11,6,7,4,6,8,11,14,18,10,5,6,5,5,7,10,14,17,10,5,7,7,6,7,10,13,16,11,5,7,7,7,8,10,12,15,13,6,7,5,5,7,9,12,13,16,8,9,6,6,7,9,10,12,0,0,0,0,0,0,0,9,8,12,11,12,13,14,14,16,6,1,5,6,6,9,12,14,17,9,4,5,9,7,9,13,15,16,8,5,8,6,8,10,13,17,17,9,6,7,7,8,9,13,15,17,11,8,9,9,9,10,12,16,16,13,7,8,7,7,9,12,14,15,13,6,7,5,5,7,10,13,13,14,7,8,5,6,7,9,10,12,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,96,167,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,8,167,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,127,4,0,0,0,0,0,0,0,0,0,0,0,0,0,120,127,4,0,0,0,0,0,0,0,0,0,0,0,0,0,160,127,4,0,0,0,0,0,0,0,0,0,0,0,0,0,200,127,4,0,0,0,0,0,0,0,0,0,0,0,0,0,240,127,4,0,0,0,0,0,24,128,4,0,64,128,4,0,0,0,0,0,0,0,0,0,104,128,4,0,144,128,4,0,0,0,0,0,0,0,0,0,184,128,4,0,224,128,4,0,8,129,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,168,89,4,0,0,0,0,0,0,0,0,0,0,0,0,0,208,89,4,0,0,0,0,0,0,0,0,0,0,0,0,0,248,89,4,0,0,0,0,0,0,0,0,0,0,0,0,0,32,90,4,0,0,0,0,0,0,0,0,0,0,0,0,0,72,90,4,0,0,0,0,0,112,90,4,0,152,90,4,0,0,0,0,0,0,0,0,0,192,90,4,0,232,90,4,0,0,0,0,0,0,0,0,0,16,91,4,0,56,91,4,0,96,91,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,80,89,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,248,88,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,8,8,8,8,10,12,14,3,2,6,7,7,8,10,12,16,7,6,7,9,8,10,12,14,16,8,6,8,4,5,7,9,11,13,7,6,8,5,6,7,9,11,14,8,8,10,7,7,6,8,10,13,9,11,12,9,9,7,8,10,12,10,13,15,11,11,10,9,10,13,13,16,17,14,15,14,13,14,17,0,0,0,0,0,0,0,4,4,7,8,7,8,10,12,17,3,1,6,6,7,8,10,12,15,7,6,9,9,9,11,12,14,17,8,6,9,6,7,9,11,13,17,7,6,9,7,7,8,9,12,15,8,8,10,8,7,7,7,10,14,9,10,12,10,8,8,8,10,14,11,13,15,13,12,11,11,12,16,17,18,18,19,20,18,16,16,20,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,152,101,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,64,127,4,0,0,0,0,0,4,0,0,0,113,2,0,0,8,99,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,128,101,4,0,0,0,0,0,2,0,0,0,81,0,0,0,136,98,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,224,98,4,0,0,0,0,0,2,0,0,0,81,0,0,0,8,98,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,96,98,4,0,0,0,0,0,2,0,0,0,33,1,0,0,152,96,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,192,97,4,0,0,0,0,0,4,0,0,0,81,0,0,0,48,96,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,136,96,4,0,0,0,0,0,2,0,0,0,121,0,0,0,128,95,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,0,96,4,0,0,0,0,0,2,0,0,0,169,0,0,0,152,94,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,72,95,4,0,0,0,0,0,2,0,0,0,25,0,0,0,96,94,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,128,94,4,0,0,0,0,0,2,0,0,0,81,0,0,0,224,93,4,0,1,0,0,0,0,160,59,225,0,160,251,96,4,0,0,0,0,0,0,0,56,94,4,0,0,0,0,0,2,0,0,0,169,0,0,0,248,92,4,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,168,93,4,0,0,0,0,0,2,0,0,0,33,1,0,0,136,91,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,176,92,4,0,0,0,0,0,3,4,4,6,6,7,7,8,8,8,8,9,9,9,9,9,9,10,6,6,6,6,7,7,8,8,8,9,9,9,9,9,9,9,10,6,6,6,6,7,7,8,8,8,8,9,9,9,9,9,9,10,7,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,7,8,8,8,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,8,8,9,9,9,9,9,9,9,9,11,10,11,8,8,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,11,11,8,8,8,8,9,9,9,9,9,9,9,9,11,10,11,11,11,9,9,9,9,9,9,9,9,9,9,9,9,10,11,10,11,11,9,9,9,9,9,9,9,9,9,9,9,10,11,11,10,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,10,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,10,11,11,11,11,11,11,9,10,10,10,9,9,9,9,9,9,11,10,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,11,11,11,11,11,11,11,10,10,9,9,9,9,9,9,9,9,10,11,11,11,11,11,11,11,11,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,10,11,11,11,6,5,5,7,7,8,8,10,10,10,11,11,11,6,5,5,7,7,8,8,10,10,11,12,12,12,14,7,7,7,8,9,9,11,11,11,12,11,12,17,7,7,8,7,9,9,11,11,12,12,12,12,14,11,11,8,8,10,10,11,12,12,13,11,12,14,11,11,8,8,10,10,11,12,12,13,13,12,14,15,14,10,10,10,10,11,12,12,12,12,11,14,13,16,10,10,10,9,12,11,12,12,13,14,14,15,14,14,13,10,10,11,11,12,11,13,11,14,12,15,13,14,11,10,12,10,12,12,13,13,13,13,14,15,15,12,12,11,11,12,11,13,12,14,14,14,14,17,12,12,11,10,13,11,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,12,11,13,13,14,14,4,7,7,11,13,14,14,14,14,3,8,3,14,14,14,14,14,14,14,10,12,14,14,14,14,14,14,14,14,5,14,8,14,14,14,14,14,12,14,13,14,14,14,14,14,14,14,13,14,10,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,4,5,6,5,5,5,5,6,5,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,9,9,10,10,7,5,5,7,7,8,8,8,8,10,9,11,10,7,5,5,7,7,8,8,8,8,9,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,10,10,10,11,11,12,12,0,13,13,9,9,9,9,10,10,11,11,12,12,0,0,0,10,10,10,10,11,11,12,12,12,13,0,0,0,10,10,10,10,11,11,12,12,12,12,0,0,0,14,14,11,11,11,11,12,13,13,13,0,0,0,14,14,11,10,11,11,12,12,13,13,0,0,0,0,0,12,12,12,12,13,13,13,14,0,0,0,0,0,13,12,12,12,13,13,13,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,5,7,7,7,7,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,7,7,7,7,8,8,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,9,9,10,10,10,10,10,8,8,8,8,9,9,10,10,10,10,10,9,9,9,9,8,9,10,10,10,10,10,8,9,8,8,9,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,6,10,9,9,11,9,9,4,6,7,10,9,9,11,9,9,7,10,10,10,11,11,11,11,10,6,9,9,11,10,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,11,11,11,11,12,11,11,7,9,9,11,10,10,12,10,10,7,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,8,8,9,9,10,10,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,6,5,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,13,13,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,13,13,13,0,0,0,0,0,10,10,11,11,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,12,12,12,13,13,13,14,14,14,14,0,0,0,0,0,0,0,0,0,12,12,13,13,14,14,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,3,6,6,7,7,9,9,0,5,5,7,7,8,7,9,9,0,5,5,7,7,8,8,9,9,0,7,7,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,9,9,9,9,10,10,0,0,0,9,9,9,9,10,10,0,0,0,10,10,10,10,11,11,0,0,0,0,0,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,4,7,7,0,0,0,0,0,4,4,7,7,0,0,0,0,0,4,5,7,7,0,0,0,0,0,6,7,8,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,10,9,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,9,0,0,0,0,0,0,9,9,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,10,9],"i8",L3,x.GLOBAL_BASE+284176),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,80,141,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,248,166,4,0,0,0,0,0,4,0,0,0,113,2,0,0,192,138,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,141,4,0,0,0,0,0,2,0,0,0,81,0,0,0,64,138,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,152,138,4,0,0,0,0,0,2,0,0,0,81,0,0,0,192,137,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,24,138,4,0,0,0,0,0,2,0,0,0,33,1,0,0,80,136,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,120,137,4,0,0,0,0,0,4,0,0,0,81,0,0,0,232,135,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,64,136,4,0,0,0,0,0,2,0,0,0,121,0,0,0,56,135,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,184,135,4,0,0,0,0,0,2,0,0,0,169,0,0,0,80,134,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,0,135,4,0,0,0,0,0,2,0,0,0,25,0,0,0,24,134,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,134,4,0,0,0,0,0,4,0,0,0,113,2,0,0,136,131,4,0,1,0,0,0,0,160,27,225,0,160,251,96,3,0,0,0,0,0,0,0,0,134,4,0,0,0,0,0,2,0,0,0,169,0,0,0,160,130,4,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,80,131,4,0,0,0,0,0,2,0,0,0,33,1,0,0,48,129,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,88,130,4,0,0,0,0,0,3,4,3,6,6,7,7,8,8,9,9,9,9,9,9,9,9,10,11,11,6,6,7,7,8,8,9,9,9,9,9,9,9,9,10,10,10,6,6,7,7,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,7,8,8,8,9,9,9,9,9,9,10,9,10,11,10,7,6,7,7,8,8,9,9,9,9,9,9,9,10,10,10,11,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,8,8,9,9,9,9,9,9,9,10,11,11,11,8,8,8,8,8,8,9,9,9,9,9,9,9,9,11,10,10,11,11,8,8,8,9,9,9,9,9,9,10,9,10,10,10,10,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,10,10,10,10,11,10,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,10,10,11,11,11,11,9,9,9,9,9,9,9,9,10,10,10,11,11,10,11,11,11,9,10,10,9,9,9,9,9,9,9,10,11,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,11,11,11,11,11,11,11,10,10,9,9,9,9,9,9,9,9,11,11,11,10,11,11,11,11,11,9,9,9,10,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,10,10,11,11,11,6,5,5,7,7,8,8,9,10,9,11,11,12,5,5,5,7,7,8,9,10,10,12,12,14,13,15,7,7,8,8,9,10,11,11,10,12,10,11,15,7,8,8,8,9,9,11,11,13,12,12,13,15,10,10,8,8,10,10,12,12,11,14,10,10,15,11,11,8,8,10,10,12,13,13,14,15,13,15,15,15,10,10,10,10,12,12,13,12,13,10,15,15,15,10,10,11,10,13,11,13,13,15,13,15,15,15,13,13,10,11,11,11,12,10,14,11,15,15,14,14,13,10,10,12,11,13,13,14,14,15,15,15,15,15,11,11,11,11,12,11,15,12,15,15,15,15,15,12,12,11,11,14,12,13,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,7,7,11,11,8,11,11,11,11,4,11,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,8,8,9,9,11,11,7,5,5,7,7,8,8,8,8,9,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,10,10,10,11,11,11,12,0,13,13,9,9,9,9,10,10,11,11,11,12,0,0,0,10,10,10,10,11,11,12,12,12,13,0,0,0,10,10,10,10,11,11,12,12,13,12,0,0,0,14,14,11,10,11,12,12,13,13,14,0,0,0,15,15,11,11,12,11,12,12,14,13,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,13,13,12,12,13,13,13,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,8,8,10,10,10,7,6,8,8,8,8,8,8,10,10,10,7,6,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,6,6,10,9,9,11,9,9,4,6,6,10,9,9,10,9,9,7,10,10,11,11,11,12,11,11,7,9,9,11,11,10,11,10,10,7,9,9,11,10,11,11,10,10,7,10,10,11,11,11,12,11,11,7,9,9,11,10,10,11,10,10,7,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,6,6,7,7,8,8,8,8,9,9,10,10,10,10,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,8,8,9,9,9,9,10,10,10,10,11,11,12,12,0,0,0,8,8,9,9,9,9,10,10,10,11,11,11,12,12,0,0,0,9,9,10,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,11,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,10,10,11,10,11,11,11,12,13,12,13,13,0,0,0,0,0,0,0,11,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,12,12,12,13,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,13,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,6,6,8,8,0,0,0,6,6,7,7,9,9,0,0,0,6,6,7,7,9,9,0,0,0,7,7,8,8,10,10,0,0,0,7,7,8,8,10,10,0,0,0,9,9,9,9,10,10,0,0,0,9,9,9,9,10,10,0,0,0,10,10,10,10,11,11,0,0,0,0,0,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,2,3,7,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,9,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,7,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,10,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,9,9,11,0,0,0,0,0,0,10,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,9,11,9,0,0,0,0,0,0,10,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,10,11,11,0,0,0,0,0,0,9,9,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,10,11,11,0,0,0,0,0,0,9,11,9],"i8",L3,x.GLOBAL_BASE+294712),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,6,12,14,12,14,16,17,18,4,2,5,11,7,10,12,14,15,9,4,5,11,7,10,13,15,18,15,6,7,5,6,8,11,13,16,11,5,6,5,5,6,9,13,15,12,5,7,6,5,6,9,12,14,12,6,7,8,6,7,9,12,13,14,8,8,7,5,5,8,10,12,16,9,9,8,6,6,7,9,9,0,0,0,0,0,0,0,10,9,12,15,12,13,16,14,16,7,1,5,14,7,10,13,16,16,9,4,6,16,8,11,16,16,16,14,4,7,16,9,12,14,16,16,10,5,7,14,9,12,14,15,15,13,8,9,14,10,12,13,14,15,13,9,9,7,6,8,11,12,12,14,8,8,5,4,5,8,11,12,16,10,10,6,5,6,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,64,191,64,0,0,0,0,0,88,203,64,0,0,0,0,0,130,228,64,0,0,0,0,0,112,183,64,0,0,0,0,0,148,193,64,0,0,0,0,0,64,223,64,0,0,0,0,0,112,199,64,0,0,0,0,0,136,211,64,0,0,0,0,0,106,232,64,154,153,153,153,153,153,185,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,2,0,0,0,2,0,0,30,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,30,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,242,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,2,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,0,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,12,0,0,0,12,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,10,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,12,0,0,0,12,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,0,0,0,0,51,51,51,51,51,51,211,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,18,64,0,0,0,0,0,0,22,64,0,0,0,0,0,0,62,64,208,171,4,0,0,0,0,0,6,0,0,0,6,0,0,0,0,0,0,0,0,64,191,64,0,0,0,0,0,100,201,64,0,0,0,0,0,124,229,64,0,0,0,0,0,64,207,64,0,0,0,0,0,88,219,64,0,0,0,0,0,64,239,64,0,0,0,0,0,106,248,64,154,153,153,153,153,153,185,191,154,153,153,153,153,153,169,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,240,63,0,4,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,30,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,22,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,242,255,255,255,0,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,246,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,10,0,0,0,255,255,255,255,10,0,0,0,10,0,0,0,255,255,255,255,20,0,0,0,20,0,0,0,255,255,255,255,20,0,0,0,20,0,0,0,255,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,4,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,15,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,10,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,244,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,249,255,255,255,251,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,238,255,255,255,238,255,255,255,238,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,4,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,4,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,20,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,4,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,12,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,244,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,5,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,14,0,0,0,20,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,20,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,12,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,244,255,255,255,236,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,5,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,0,0,0,0,0,0,0,0,154,153,153,153,153,153,233,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,1,0,0,0,1,0,0,15,39,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,51,51,51,51,51,51,211,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,156,255,255,255,156,255,255,255,156,255,255,255,151,255,255,255,126,255,255,255,126,255,255,255,126,255,255,255,116,255,255,255,0,0,0,0,0,0,26,64,0,0,0,0,0,0,32,64,0,0,0,0,0,0,62,64,0,0,0,0,0,192,88,64,0,0,0,0,0,0,240,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,8,64,0,0,0,0,0,0,16,64,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,64,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,200,239,4,0,216,239,4,0,8,181,0,0,16,188,4,0,8,181,0,0,48,188,4,0,8,181,0,0,112,188,4,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,216,225,4,0,216,225,4,0,0,226,4,0,0,226,4,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,200,208,4,0,200,208,4,0,240,208,4,0,240,208,4,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,176,209,4,0,176,209,4,0,240,208,4,0,240,208,4,0,1,0,0,0,0,0,0,0,32,0,0,0,160,220,1,0,176,188,4,0,176,188,4,0,216,188,4,0,216,188,4,0,1,0,0,0,0,0,0,0,32,0,0,0,160,220,1,0,152,189,4,0,152,189,4,0,216,188,4,0,216,188,4,0,2,0,0,0,100,0,0,0,96,208,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,190,4,0,0,0,0,0,0,0,0,0,0,0,0,0,80,190,4,0,0,0,0,0,0,0,0,0,0,0,0,0,120,190,4,0,0,0,0,0,0,0,0,0,0,0,0,0,160,190,4,0,0,0,0,0,200,190,4,0,240,190,4,0,0,0,0,0,0,0,0,0,24,191,4,0,64,191,4,0,0,0,0,0,0,0,0,0,104,191,4,0,144,191,4,0,0,0,0,0,0,0,0,0,184,191,4,0,224,191,4,0,0,0,0,0,0,0,0,0,8,192,4,0,48,192,4,0,88,192,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,192,189,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,10,10,10,11,11,12,14,18,7,5,5,6,8,9,10,12,14,17,9,5,4,5,6,8,10,11,13,19,9,5,4,4,5,6,9,10,12,17,8,6,5,4,4,5,7,10,11,15,8,7,7,6,5,5,6,9,11,14,8,9,8,7,6,5,6,7,11,14,9,11,11,9,7,6,6,6,9,14,11,14,15,13,9,8,7,7,9,14,13,15,19,17,12,11,10,9,10,14,0,0,0,0,4,0,0,0,81,0,0,0,248,207,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,80,208,4,0,0,0,0,0,4,0,0,0,113,2,0,0,104,205,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,224,207,4,0,0,0,0,0,2,0,0,0,81,0,0,0,232,204,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,64,205,4,0,0,0,0,0,2,0,0,0,33,1,0,0,120,203,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,160,204,4,0,0,0,0,0,4,0,0,0,81,0,0,0,16,203,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,104,203,4,0,0,0,0,0,2,0,0,0,121,0,0,0,96,202,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,224,202,4,0,0,0,0,0,2,0,0,0,169,0,0,0,120,201,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,40,202,4,0,0,0,0,0,2,0,0,0,25,0,0,0,64,201,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,96,201,4,0,0,0,0,0,2,0,0,0,169,0,0,0,88,200,4,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,8,201,4,0,0,0,0,0,2,0,0,0,121,0,0,0,168,199,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,40,200,4,0,0,0,0,0,2,0,0,0,225,0,0,0,128,198,4,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,104,199,4,0,0,0,0,0,2,0,0,0,185,1,0,0,104,196,4,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,40,198,4,0,0,0,0,0,2,0,0,0,225,0,0,0,64,195,4,0,1,0,0,0,0,117,153,225,0,24,61,97,4,0,0,0,0,0,0,0,40,196,4,0,0,0,0,0,2,0,0,0,105,1,0,0,128,193,4,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,240,194,4,0,0,0,0,0,1,0,0,0,49,0,0,0,128,192,4,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,184,192,4,0,0,0,0,0,2,3,4,4,4,5,5,6,5,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,7,8,8,8,8,8,8,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,6,9,7,10,8,12,12,13,13,14,14,4,7,7,9,9,9,8,9,8,10,9,11,9,14,9,14,10,13,11,4,7,7,9,9,9,9,8,9,10,10,11,11,12,13,12,13,14,15,7,9,9,10,11,10,10,10,10,11,12,13,13,13,14,17,14,15,16,7,9,9,10,10,10,10,10,10,11,12,13,13,14,14,15,15,18,18,8,9,9,11,10,11,11,11,12,13,12,14,14,16,15,15,17,18,15,8,9,9,10,10,11,11,11,11,13,13,14,14,15,15,15,16,16,18,7,9,8,10,10,11,11,12,12,14,14,15,15,16,16,15,17,16,18,8,9,9,10,10,11,12,12,12,13,13,16,15,17,16,17,18,17,18,9,10,10,12,11,13,13,14,13,14,14,15,17,16,18,17,18,17,18,9,10,10,12,11,12,13,13,14,15,16,14,15,16,18,18,18,18,17,11,11,11,13,13,14,14,16,15,15,15,16,15,15,18,18,18,17,16,11,11,12,13,13,15,14,15,16,16,16,17,16,15,18,17,18,16,18,12,13,13,15,15,15,16,18,16,17,16,17,16,17,17,17,18,18,17,13,13,13,15,13,16,15,17,16,16,16,18,18,18,18,16,17,17,18,13,15,14,15,15,18,17,18,18,18,16,18,17,18,17,18,16,17,17,14,14,14,15,16,17,16,18,18,18,17,18,17,18,18,18,16,16,16,14,17,16,17,15,16,18,18,17,18,17,18,17,18,18,18,17,18,17,15,16,15,18,15,18,17,16,18,18,18,18,18,18,17,18,16,18,17,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,5,3,9,8,9,9,9,9,9,9,9,9,9,9,5,7,8,9,9,9,9,9,9,9,9,9,9,9,9,5,7,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,3,5,5,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,10,5,6,6,7,7,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,9,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,7,7,7,8,8,9,9,9,9,9,9,9,9,10,9,10,10,10,9,10,9,8,8,8,9,8,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,8,8,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,8,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,7,7,9,8,10,9,11,11,4,7,6,9,8,9,9,9,9,10,9,11,9,12,9,4,6,7,8,8,9,9,9,9,10,10,10,11,11,12,7,9,8,10,10,11,11,10,10,11,11,12,12,13,12,7,8,8,10,10,10,11,10,10,11,11,11,12,12,13,8,9,9,11,11,11,11,11,11,12,12,13,13,13,13,8,9,9,11,11,11,11,11,11,12,12,13,13,13,14,8,9,9,10,10,11,11,12,11,13,13,14,13,14,14,8,9,9,10,10,11,11,12,12,12,12,13,13,14,14,9,10,10,11,11,12,12,13,12,13,13,14,14,15,15,9,10,10,11,11,12,12,12,13,13,13,14,14,14,15,10,11,11,12,12,13,13,14,13,14,14,15,14,15,15,10,11,11,12,12,13,12,13,14,14,14,14,14,15,15,11,12,12,13,13,13,13,14,14,15,14,15,15,16,16,11,12,12,13,13,13,13,14,14,14,15,15,15,16,16,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,5,5,7,7,7,7,7,7,8,8,5,6,6,7,7,7,7,8,8,8,8,5,6,6,7,7,7,7,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,8,9,9,10,10,4,6,6,8,8,9,9,9,9,10,10,11,10,4,6,6,8,8,9,9,9,9,10,10,11,11,7,8,8,10,9,10,10,10,10,11,11,12,12,7,8,8,10,10,10,10,10,10,11,11,12,12,8,9,9,10,10,11,11,11,11,12,12,13,13,8,9,9,10,10,11,11,11,11,12,12,13,13,8,9,9,11,10,11,11,12,12,13,13,14,13,8,9,9,10,10,11,11,12,12,13,13,13,13,9,10,10,11,11,12,12,13,13,13,13,14,14,9,10,10,11,11,12,12,13,13,13,13,14,14,10,11,11,12,12,13,13,14,13,14,14,15,14,10,11,11,12,12,13,13,14,13,14,14,15,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,4,7,7,8,8,8,8,10,10,11,11,4,6,6,7,7,9,9,9,9,10,10,11,11,4,6,6,7,7,9,9,9,9,10,10,11,11,7,8,8,9,9,9,9,10,10,11,11,12,12,7,7,7,9,8,10,9,10,10,11,11,12,12,8,9,9,9,10,10,10,11,11,12,12,13,13,8,9,9,10,9,10,10,11,11,12,12,13,13,8,9,9,10,10,11,11,11,11,12,12,13,13,8,9,9,10,10,11,11,12,11,12,12,13,13,10,10,10,11,11,12,12,12,12,13,13,14,14,10,10,10,11,11,12,12,12,12,13,13,14,14,11,11,11,12,12,13,13,13,13,14,14,14,14,11,11,11,12,12,13,13,13,13,14,14,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,5,5,6,6,7,7,8,8,8,8,5,6,6,7,7,7,7,8,8,8,8,5,6,6,6,7,7,7,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,8,8,8,8,8,8,8,8,9,9,8,8,8,8,8,8,8,9,9,9,9,8,8,8,8,8,8,8,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,7,9,9,7,9,10,5,8,8,7,10,9,7,10,9,5,8,8,8,11,10,8,10,10,7,10,10,9,9,12,10,12,12,7,10,10,9,12,10,10,11,12,5,8,8,8,10,10,8,11,11,7,11,10,10,12,11,9,10,12,7,10,11,10,12,12,9,12,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,5,6,6,7,7,8,8,9,9,10,10,11,11,11,11,5,5,5,7,6,8,7,9,9,9,9,10,10,11,11,12,12,5,5,5,6,6,7,8,8,9,9,9,10,10,11,11,12,12,6,7,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,6,6,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,7,8,8,8,8,9,9,9,9,10,10,11,11,11,11,12,12,7,7,8,8,8,9,9,9,9,10,10,11,11,11,11,12,12,8,9,9,9,9,9,9,10,10,10,10,11,11,12,12,12,12,8,9,9,9,9,9,9,10,10,10,10,11,11,12,12,12,12,9,9,9,9,9,10,10,10,10,10,11,11,11,12,12,13,13,9,9,9,9,9,10,10,10,10,11,10,11,11,12,12,13,13,10,10,10,10,10,11,11,11,11,11,11,11,12,12,12,13,13,10,10,10,10,10,11,11,11,11,11,11,12,11,12,12,13,13,11,11,11,11,11,11,11,12,12,12,12,12,12,13,13,13,13,11,11,11,11,11,11,11,12,12,12,12,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,13,13,13,13,13,14,14,11,12,12,12,12,12,12,12,13,13,13,13,13,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,4,6,6,7,7,9,9,4,5,5,6,6,8,7,9,9,4,5,5,6,6,7,8,9,9,6,6,6,7,7,8,8,10,10,6,6,6,7,7,8,8,10,10,7,8,7,8,8,9,9,11,10,7,7,8,8,8,9,9,10,11,9,9,9,10,10,11,10,11,11,9,9,9,10,10,10,11,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,5,7,7,9,9,5,7,7,9,9,9,10,9,11,11,9,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,9,10,10,11,12,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,11,10,10,10,12,12,9,10,10,12,12,10,10,10,12,12,9,10,10,12,12,12,12,12,14,14,11,12,12,13,14,9,10,10,12,12,9,10,10,12,12,10,10,10,12,12,11,12,12,14,13,12,12,12,14,13,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,10,10,10,12,12,7,8,8,11,10,8,9,9,11,11,8,9,9,11,11,10,11,11,12,13,10,11,11,12,13,7,8,8,10,10,8,9,8,11,10,8,9,9,11,11,10,11,10,13,12,10,11,11,13,13,10,11,10,13,12,10,11,11,13,13,10,11,11,13,13,12,12,13,13,14,12,13,13,14,14,9,10,10,12,12,10,11,10,13,12,10,11,11,13,13,12,13,12,14,13,12,13,13,14,15,5,7,7,9,10,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,10,10,11,12,12,7,8,8,10,10,8,9,9,11,11,8,8,9,10,11,10,11,11,13,13,10,10,11,12,13,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,11,13,12,10,11,11,13,12,9,10,10,12,12,10,11,11,13,13,10,10,11,12,13,12,13,13,15,14,12,12,13,12,14,9,10,11,12,13,10,11,11,13,13,10,11,11,13,13,12,13,13,14,14,12,13,12,14,13,8,10,10,12,12,9,11,10,13,12,9,10,10,12,13,12,13,13,14,14,12,12,12,14,14],"i8",L3,x.GLOBAL_BASE+304880),d3([9,10,10,13,13,10,11,11,13,13,10,11,11,13,13,13,13,13,14,15,12,13,13,14,15,9,10,10,12,13,10,11,10,13,13,10,11,11,12,13,12,13,12,15,14,12,13,13,14,15,11,12,12,15,14,12,12,13,14,15,12,13,13,15,14,13,13,15,14,16,14,14,14,16,15,11,12,12,14,14,11,12,12,14,14,12,13,13,14,15,13,14,13,15,13,14,14,14,15,16,8,9,10,12,12,9,10,10,13,12,9,10,11,12,13,12,12,12,14,14,12,13,13,14,14,9,10,10,13,12,10,11,11,13,13,10,10,11,13,13,12,13,13,15,14,12,12,13,14,15,9,10,10,13,13,10,11,11,13,13,10,11,11,13,13,12,13,13,14,14,13,13,13,15,15,11,12,12,14,13,12,13,13,15,14,11,12,12,14,14,14,14,14,16,15,13,13,14,13,16,11,12,12,14,14,12,13,13,14,15,12,13,12,14,14,14,14,14,16,16,14,15,13,16,14,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,7,5,7,7,5,7,7,7,9,9,7,9,9,5,7,7,7,9,9,8,9,9,5,7,7,8,9,9,7,9,9,7,9,9,9,10,11,9,10,10,7,9,9,9,10,9,9,10,11,5,8,7,7,9,9,8,9,9,7,9,9,9,11,10,9,9,10,7,9,9,9,10,10,9,11,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,8,11,13,13,15,16,19,19,19,19,11,8,8,9,9,11,13,15,19,20,14,8,7,7,8,9,12,13,15,20,15,9,6,5,5,7,10,12,14,18,14,9,7,5,3,4,7,10,12,16,13,10,8,6,3,3,5,8,11,14,11,10,9,7,5,4,4,6,11,14,10,10,10,8,6,5,5,6,10,14,10,10,10,9,8,7,7,7,10,14,11,12,12,12,11,10,10,10,12,16,0,0,0,0,2,0,0,0,100,0,0,0,112,225,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,104,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,144,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,184,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,8,211,4,0,0,0,0,0,48,211,4,0,88,211,4,0,0,0,0,0,0,0,0,0,128,211,4,0,168,211,4,0,0,0,0,0,0,0,0,0,208,211,4,0,248,211,4,0,32,212,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,216,209,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,6,10,8,12,8,14,8,14,19,5,3,5,5,7,6,11,7,16,19,7,5,6,7,7,9,11,12,19,19,6,4,7,5,7,6,10,7,18,18,8,6,7,7,7,7,8,9,18,18,7,5,8,5,7,5,8,6,18,18,12,9,10,9,9,9,8,9,18,18,8,7,10,6,8,5,6,4,11,18,11,15,16,12,11,8,8,6,9,18,14,18,18,18,16,16,16,13,16,18,0,0,0,0,4,0,0,0,81,0,0,0,8,225,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,96,225,4,0,0,0,0,0,4,0,0,0,81,0,0,0,160,224,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,248,224,4,0,0,0,0,0,4,0,0,0,113,2,0,0,16,222,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,224,4,0,0,0,0,0,4,0,0,0,113,2,0,0,128,219,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,248,221,4,0,0,0,0,0,2,0,0,0,81,0,0,0,0,219,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,88,219,4,0,0,0,0,0,2,0,0,0,81,0,0,0,128,218,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,216,218,4,0,0,0,0,0,4,0,0,0,81,0,0,0,24,218,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,112,218,4,0,0,0,0,0,2,0,0,0,121,0,0,0,104,217,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,232,217,4,0,0,0,0,0,2,0,0,0,121,0,0,0,184,216,4,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,56,217,4,0,0,0,0,0,2,0,0,0,121,0,0,0,8,216,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,136,216,4,0,0,0,0,0,2,0,0,0,225,0,0,0,224,214,4,0,1,0,0,0,0,228,91,225,0,224,255,96,4,0,0,0,0,0,0,0,200,215,4,0,0,0,0,0,2,0,0,0,225,0,0,0,184,213,4,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,160,214,4,0,0,0,0,0,2,0,0,0,33,1,0,0,72,212,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,112,213,4,0,0,0,0,0,1,6,6,7,8,8,11,10,9,9,11,9,10,9,11,11,9,6,7,6,11,8,11,9,10,10,11,9,11,10,10,10,11,9,5,7,7,8,8,10,11,8,8,11,9,9,10,11,9,10,11,8,9,6,8,8,9,9,10,10,11,11,11,9,11,10,9,11,8,8,8,9,8,9,10,11,9,9,11,11,10,9,9,11,10,8,11,8,9,8,11,9,10,9,10,11,11,10,10,9,10,10,8,8,9,10,10,10,9,11,9,10,11,11,11,11,10,9,11,9,9,11,11,10,8,11,11,11,9,10,10,11,10,11,11,9,11,10,9,11,10,10,10,10,9,11,10,11,10,9,9,10,11,9,8,10,11,11,10,10,11,9,11,10,11,11,10,11,9,9,8,10,8,9,11,9,8,10,10,9,11,10,11,10,11,9,11,8,10,11,11,11,11,10,10,11,11,11,11,10,11,11,10,9,8,10,10,9,11,10,11,11,11,9,9,9,11,11,11,10,10,9,9,10,9,11,11,11,11,8,10,11,10,11,11,10,11,11,9,9,9,10,9,11,9,11,11,11,11,11,10,11,11,10,11,10,11,11,9,11,10,11,10,9,10,9,10,10,11,11,11,11,9,10,9,10,11,11,10,11,11,11,11,11,11,10,11,11,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,6,5,9,9,10,10,6,7,9,9,10,10,10,10,5,10,8,10,8,10,10,8,8,10,9,10,10,10,10,5,8,9,10,10,10,10,8,10,10,10,10,10,10,10,9,10,10,10,10,10,10,9,9,10,10,10,10,10,10,9,9,8,9,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,8,10,10,10,10,10,10,10,10,10,10,10,10,10,6,8,8,10,10,10,8,10,10,10,10,10,10,10,10,5,8,8,10,10,10,9,9,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,5,5,6,6,7,7,8,8,8,8,4,6,6,7,7,8,7,8,8,8,8,4,6,6,7,7,7,7,8,8,8,8,6,7,7,7,7,8,8,8,8,8,9,6,7,7,7,7,8,8,8,8,9,9,7,7,7,8,8,8,8,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,5,8,8,10,10,12,12,4,7,7,8,8,9,9,12,11,14,13,4,7,7,7,8,9,10,11,11,13,12,5,8,8,9,9,11,11,12,13,15,14,5,7,8,9,9,11,11,13,13,17,15,8,9,10,11,11,12,13,17,14,17,16,8,10,9,11,11,12,12,13,15,15,17,10,11,11,12,13,14,15,15,16,16,17,9,11,11,12,12,14,15,17,15,15,16,11,14,12,14,15,16,15,16,16,16,15,11,13,13,14,14,15,15,16,16,15,16,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,4,6,5,7,7,8,8,8,8,8,8,4,5,6,7,7,8,8,8,8,8,8,6,7,7,8,8,8,8,9,9,9,9,6,7,7,8,8,8,8,9,9,9,9,7,8,8,8,8,9,9,9,10,9,10,7,8,8,8,8,9,9,9,9,10,9,8,8,8,9,9,10,10,10,10,10,10,8,8,8,9,9,9,9,10,10,10,10,8,8,8,9,9,9,10,10,10,10,10,8,8,8,9,9,10,10,10,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,4,8,8,4,8,8,5,11,9,8,12,11,8,12,11,5,10,11,8,11,12,8,11,12,4,11,11,11,14,13,10,13,13,8,14,13,12,14,16,12,16,15,8,14,14,13,16,14,12,15,16,4,11,11,10,14,13,11,14,14,8,15,14,12,15,15,12,14,16,8,14,14,11,16,15,12,15,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,6,6,7,7,9,9,4,4,4,6,6,8,8,9,9,4,4,4,6,6,7,7,9,9,6,6,6,7,7,8,8,10,9,6,6,6,7,7,8,8,9,10,7,8,7,8,8,9,9,10,10,7,8,8,8,8,9,9,10,10,9,9,9,10,10,10,10,11,11,9,9,9,10,10,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,8,8,8,10,10,4,5,6,8,8,8,8,10,10,7,8,8,9,9,9,9,11,11,7,8,8,9,9,9,9,11,11,7,8,8,10,9,11,11,12,11,7,8,8,9,9,11,11,12,12,9,10,10,11,11,12,12,13,12,9,10,10,11,11,12,12,12,13,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,6,6,7,9,9,6,6,6,9,9,9,10,9,11,11,9,9,10,11,11,6,7,7,10,9,7,7,8,9,10,7,7,8,10,10,10,10,10,10,12,9,9,10,11,12,6,7,7,9,9,7,8,7,10,10,7,8,7,10,10,9,10,9,12,11,10,10,9,12,10,9,10,10,12,11,10,10,10,12,12,9,10,10,12,12,12,11,12,13,13,11,11,12,12,13,9,10,10,11,12,9,10,10,12,12,10,10,10,12,12,11,12,11,14,13,11,12,12,14,13,5,7,7,10,10,7,8,8,10,10,7,8,7,10,10,10,10,10,12,12,10,10,10,12,12,6,8,7,10,10,7,7,9,10,11,8,9,9,11,10,10,10,11,11,13,10,10,11,12,13,6,8,8,10,10,7,9,8,11,10,8,9,9,10,11,10,11,10,13,11,10,11,10,12,12,10,11,10,12,11,10,10,10,12,13,10,11,11,13,12,11,11,13,11,14,12,12,13,14,14,9,10,10,12,13,10,11,10,13,12,10,11,11,12,13,11,12,11,14,12,12,13,13,15,14,5,7,7,10,10,7,7,8,10,10,7,8,8,10,10,10,10,10,11,12,10,10,10,12,12,7,8,8,10,10,8,9,8,11,10,7,8,9,10,11,10,11,11,12,12,10,10,11,11,13,7,7,8,10,10,8,8,9,10,11,7,9,7,11,10,10,11,11,13,12,11,11,10,13,11,9,10,10,12,12,10,11,11,13,12,10,10,11,12,12,12,13,13,14,14,11,11,12,12,14,10,10,11,12,12,10,11,11,12,13,10,10,10,13,12,12,13,13,15,14,12,13,10,14,11,8,10,10,12,12,10,11,10,13,13,9,10,10,12,12,12,13,13,15,14,11,12,12,13,13,9,10,10,13,12,10,10,11,13,13,10,11,10,13,12,12,12,13,14,15,12,13,12,15,13,9,10,10,12,13,10,11,10,13,12,10,10,11,12,13,12,14,12,15,13,12,12,13,14,15,11,12,11,14,13,11,11,12,14,15,12,13,12,15,14,13,11,15,11,16,13,14,14,16,15,11,12,12,14,14,11,12,11,14,13,12,12,13,14,15,13,14,12,16,12,14,14,14,15,15,8,10,10,12,12,9,10,10,12,12,10,10,11,13,13,11,12,12,13,13,12,13,13,14,15,9,10,10,13,12,10,11,11,13,12,10,10,11,13,13,12,13,12,15,14,12,12,13,13,16,9,9,10,12,13,10,10,11,12,13,10,11,10,13,13,12,12,13,13,15,13,13,12,15,13,11,12,12,14,14,12,13,12,15,14,11,11,12,13,14,14,14,14,16,15,13,12,15,12,16,11,11,12,13,14,12,13,13,14,15,10,12,11,14,13,14,15,14,16,16,13,14,11,15,11,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,8,8,6,7,7,9,9,5,7,7,9,9,9,10,9,11,11,9,9,10,11,11,6,8,8,10,10,8,9,10,11,11,8,9,10,11,11,10,11,11,12,13,10,11,11,13,13,6,8,8,10,10,8,10,9,11,11,8,10,9,11,11,10,11,11,13,13,10,11,11,13,12,9,11,11,14,13,10,12,12,15,14,10,12,11,14,13,12,13,13,15,15,12,13,13,16,14,9,11,11,13,14,10,11,12,14,14,10,12,12,14,15,12,13,13,14,15,12,13,14,15,16,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,14,8,10,10,12,12,9,11,12,12,13,10,12,12,13,13,12,12,13,14,15,11,13,13,15,15,7,10,10,12,12,9,12,11,13,12,10,11,12,13,13,12,13,12,15,14,11,12,13,15,15,10,12,12,15,14,11,13,13,16,15,11,13,13,16,15,14,13,14,15,16,13,15,15,17,17,10,12,12,14,15,11,12,12,15,15,11,13,13,15,16,13,15,13,16,15,13,15,15,16,17,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,14,7,10,10,12,12,10,12,12,14,13,9,11,12,12,13,12,13,13,15,15,12,12,13,13,15,7,10,10,12,13,10,11,12,13,13,10,12,11,13,13,11,13,13,15,15,12,13,12,15,14,9,12,12,15,14,11,13,13,15,15,11,12,13,15,15,13,14,14,17,19,13,13,14,16,16,10,12,12,14,15,11,13,13,15,16,11,13,12,16,15,13,15,15,17,18,14,15,13,16,15,8,11,11,15,14,10,12,12,16,15,10,12,12,16,16,14,15,15,18,17,13,14,15,16,18,9,12,12,15,15,11,12,14,16,17,11,13,13,16,15,15,15,15,17,18,14,15,16,17,17,9,12,12,15,15,11,14,13,16,16,11,13,13,16,16,15,16,15,17,18,14,16,15,17,16,12,14,14,17,16,12,14,15,18,17,13,15,15,17,17,15,15,18,16,20,15,16,17,18,18,11,14,14,16,17,13,15,14,18,17,13,15,15,17,17,15,17,15,18,17,15,17,16,19,18,8,11,11,14,15,10,12,12,15,15,10,12,12,16,16,13,14,14,17,16,14,15,15,17,17,9,12,12,15,16,11,13,13,16,16,11,12,13,16,16,14,16,15,20,17,14,16,16,17,17,9,12,12,15,16,11,13,13,16,17,11,13,13,17,16,14,15,15,17,18,15,15,15,18,18,11,14,14,17,16,13,15,15,17,17,13,14,14,18,17,15,16,16,18,19,15,15,17,17,19,11,14,14,16,17,13,15,14,17,19,13,15,14,18,17,15,17,16,18,18,15,17,15,18,16,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,5,6,6,5,6,6,5,6,6,6,7,8,6,7,8,5,6,6,6,8,7,6,8,7,5,6,6,6,8,8,6,8,8,6,8,8,7,7,10,8,9,9,6,8,8,7,9,8,8,9,10,5,6,6,6,8,8,7,8,8,6,8,8,8,10,9,7,8,9,6,8,8,8,9,9,7,10,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,7,7,10,10,7,9,10,5,7,8,7,10,9,7,10,10,5,8,8,8,10,10,8,10,10,7,10,10,10,11,12,10,12,13,7,10,10,9,13,11,10,12,13,5,8,8,8,10,10,8,10,10,7,10,10,10,12,12,9,11,12,7,10,11,10,12,12,10,13,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,7,10,9,11,10,15,11,13,16,6,4,6,6,7,7,10,9,12,16,10,6,5,6,6,7,10,11,16,16,9,6,7,6,7,7,10,8,14,16,11,6,5,4,5,6,8,9,15,16,9,6,6,5,6,6,9,8,14,16,12,7,6,6,5,6,6,7,13,16,8,6,7,6,5,5,4,4,11,16,9,8,9,9,7,7,6,5,13,16,14,14,16,15,16,15,16,16,16,16,0,0,0,0,2,0,0,0,64,0,0,0,136,239,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,226,4,0,0,0,0,0,0,0,0,0,0,0,0,0,232,226,4,0,0,0,0,0,0,0,0,0,0,0,0,0,16,227,4,0,0,0,0,0,0,0,0,0,0,0,0,0,56,227,4,0,0,0,0,0,0,0,0,0,0,0,0,0,96,227,4,0,0,0,0,0,136,227,4,0,176,227,4,0,0,0,0,0,0,0,0,0,216,227,4,0,0,228,4,0,40,228,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,81,0,0,0,32,239,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,120,239,4,0,0,0,0,0,4,0,0,0,81,0,0,0,184,238,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,16,239,4,0,0,0,0,0,4,0,0,0,113,2,0,0,40,236,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,238,4,0,0,0,0,0,4,0,0,0,113,2,0,0,152,233,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,236,4,0,0,0,0,0,2,0,0,0,81,0,0,0,24,233,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,112,233,4,0,0,0,0,0,2,0,0,0,169,0,0,0,48,232,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,224,232,4,0,0,0,0,0,2,0,0,0,25,0,0,0,248,231,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,24,232,4,0,0,0,0,0,4,0,0,0,81,0,0,0,144,231,4,0,1,0,0,0,0,176,19,225,0,176,19,97,2,0,0,0,0,0,0,0,232,231,4,0,0,0,0,0,2,0,0,0,225,0,0,0,104,230,4,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,80,231,4,0,0,0,0,0,2,0,0,0,185,1,0,0,80,228,4,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,16,230,4,0,0,0,0,0,1,6,6,7,8,7,7,10,9,10,9,11,10,9,11,10,9,9,9,9,10,6,8,7,9,9,8,8,10,10,9,11,11,12,12,10,9,11,9,12,10,9,6,9,8,9,12,8,8,11,9,11,11,12,11,12,12,10,11,11,10,10,11,7,10,9,9,9,9,9,10,9,10,9,10,10,12,10,10,10,11,12,10,10,7,9,9,9,10,9,9,10,10,9,9,9,11,11,10,10,10,10,9,9,12,7,9,10,9,11,9,10,9,10,11,11,11,10,11,12,9,12,11,10,10,10,7,9,9,9,9,10,12,10,9,11,12,10,11,12,12,11,9,10,11,10,11,7,9,10,10,11,10,9,10,11,11,11,10,12,12,12,11,11,10,11,11,12,8,9,10,12,11,10,10,12,12,12,12,12,10,11,11,9,11,10,12,11,11,8,9,10,10,11,12,11,11,10,10,10,12,12,12,9,10,12,12,12,12,12,8,10,11,10,10,12,9,11,12,12,11,12,12,12,12,10,12,10,10,10,10,8,12,11,11,11,10,10,11,12,12,12,12,11,12,12,12,11,11,11,12,10,9,10,10,12,10,12,10,12,12,10,10,10,11,12,12,12,11,12,12,12,11,10,11,12,12,12,11,12,12,11,12,12,11,12,12,12,12,11,12,12,10,10,10,10,11,11,12,11,12,12,12,12,12,12,12,11,12,11,10,11,11,12,11,11,9,10,10,10,12,10,10,11,9,11,12,11,12,11,12,12,10,11,10,12,9,9,9,12,11,10,11,10,12,10,12,10,12,12,12,11,11,11,11,11,10,9,10,10,11,10,11,11,12,11,10,11,12,12,12,11,11,9,12,10,12,9,10,12,10,10,11,10,11,11,12,11,10,11,10,11,11,11,11,12,11,11,10,9,10,10,10,9,11,11,10,9,12,10,11,12,11,12,12,11,12,11,12,11,10,11,10,12,11,12,11,12,11,12,10,11,10,10,12,11,10,11,11,11,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,5,5,6,5,9,10,11,11,10,10,10,10,10,10,5,8,8,8,10,10,10,10,10,10,10,10,10,10,10,5,8,9,9,9,10,10,10,10,10,10,10,10,10,10,5,10,8,10,10,10,10,10,10,10,10,10,10,10,10,4,8,9,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,5,6,6,4,6,6,6,6,4,6,6,6,6,6,6,6,7,7,6,6,6,7,7,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,10,10,12,12,13,13,18,17,3,6,6,9,9,11,11,13,13,14,14,18,17,3,6,6,9,9,11,11,13,13,14,14,17,18,7,9,9,11,11,13,13,14,14,15,15,0,0,7,9,9,11,11,13,13,14,14,15,16,19,18,10,11,11,13,13,14,14,16,15,17,18,0,0,10,11,11,13,13,14,14,15,15,16,18,0,0,11,13,13,14,14,15,15,17,17,0,19,0,0,11,13,13,14,14,14,15,16,18,0,19,0,0,13,14,14,15,15,18,17,18,18,0,19,0,0,13,14,14,15,16,16,16,18,18,19,0,0,0,16,17,17,0,17,19,19,0,19,0,0,0,0,16,19,16,17,18,0,19,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,8,8,8,9,9,4,6,6,8,8,8,8,9,9,7,8,8,9,9,9,9,11,10,7,8,8,9,9,9,9,10,11,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,9,9,10,10,11,11,12,12,9,9,9,10,10,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,6,6,6,9,9,6,6,6,9,9,9,10,9,11,11,9,9,9,11,11,6,7,7,10,10,7,7,8,10,10,7,7,8,10,10,10,10,10,11,12,9,10,10,11,12,6,7,7,10,10,7,8,7,10,10,7,8,7,10,10,10,11,10,12,11,10,10,10,13,10,9,10,10,12,12,10,11,10,14,12,9,11,11,13,13,11,12,13,13,13,11,12,12,15,13,9,10,10,12,13,9,11,10,12,13,10,10,11,12,13,11,12,12,12,13,11,12,12,13,13,5,7,7,10,10,7,8,8,10,10,7,8,8,10,10,10,11,10,12,13,10,10,11,12,12,6,8,8,11,10,7,8,9,10,12,8,9,9,11,11,11,10,11,11,12,10,11,11,13,12,7,8,8,10,11,8,9,8,11,10,8,9,9,11,11,10,12,10,13,11,10,11,11,13,13,10,11,10,14,13,10,10,11,13,13,10,12,11,14,13,12,11,13,12,13,13,12,13,14,14,10,11,11,13,13,10,11,10,12,13,10,12,12,12,14,12,12,12,14,12,12,13,12,17,15,5,7,7,10,10,7,8,8,10,10,7,8,8,11,10,10,10,11,12,12,10,11,11,12,13,6,8,8,11,10,8,9,9,11,11,7,8,9,10,11,11,11,11,12,12,10,10,11,12,13,6,8,8,10,11,8,9,9,11,11,7,9,7,11,10,10,12,12,13,13,11,11,10,13,11,9,11,10,14,13,11,11,11,15,13,10,10,11,13,13,12,13,13,14,14,12,11,12,12,13,10,11,11,12,13,10,11,12,13,13,10,11,10,13,12,12,12,13,14,0,12,13,11,13,11,8,10,10,13,13,10,11,11,14,13,10,11,11,13,12,13,14,14,14,15,12,12,12,15,14,9,11,10,13,12,10,10,11,13,14,11,11,11,15,12,13,12,14,15,16,13,13,13,14,13,9,11,11,12,12,10,12,11,13,13,10,11,11,13,14,13,13,13,15,15,13,13,14,17,15,11,12,12,14,14,10,11,12,13,15,12,13,13,0,15,13,11,14,12,16,14,16,14,0,15,11,12,12,14,16,11,13,12,16,15,12,13,13,14,15,12,14,12,15,13,15,14,14,16,16,8,10,10,13,13,10,11,10,13,14,10,11,11,13,13,13,13,12,14,14,14,13,13,16,17,9,10,10,12,14,10,12,11,14,13,10,11,12,13,14,12,12,12,15,15,13,13,13,14,14,9,10,10,13,13,10,11,12,12,14,10,11,10,13,13,13,13,13,14,16,13,13,13,14,14,11,12,13,15,13,12,14,13,14,16,12,12,13,13,14,13,14,14,17,15,13,12,17,13,16,11,12,13,14,15,12,13,14,14,17,11,12,11,14,14,13,16,14,16,0,14,15,11,15,11,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,7,7,6,7,7,8,8,6,7,8,8,8,8,9,9,11,11,8,9,9,11,11,6,9,8,10,10,8,10,10,11,11,8,10,10,11,11,10,11,10,13,12,9,11,10,13,13,6,8,9,10,10,8,10,10,11,11,8,10,10,11,11,9,10,11,13,12,10,10,11,12,12,8,11,11,14,13,10,12,11,15,13,9,12,11,15,14,12,14,13,16,14,12,13,13,17,14,8,11,11,13,14,9,11,12,14,15,10,11,12,13,15,11,13,13,14,16,12,13,14,14,16,5,9,9,11,11,9,11,11,12,12,8,11,11,12,12,11,12,12,15,14,10,12,12,15,15,8,11,11,13,12,10,12,12,13,13,10,12,12,14,13,12,12,13,14,15,11,13,13,17,16,7,11,11,13,13,10,12,12,14,13,10,12,12,13,14,12,13,12,15,14,11,13,13,15,14,9,12,12,16,15,11,13,13,17,16,10,13,13,16,16,13,14,15,15,16,13,15,14,19,17,9,12,12,14,16,11,13,13,15,16,10,13,13,17,16,13,14,13,17,15,12,15,15,16,17,5,9,9,11,11,8,11,11,13,12,9,11,11,12,12,10,12,12,14,15,11,12,12,14,14,7,11,10,13,12,10,12,12,14,13,10,11,12,13,13,11,13,13,15,16,12,12,13,15,15,7,11,11,13,13,10,13,13,14,14,10,12,12,13,13,11,13,13,16,15,12,13,13,15,14,9,12,12,15,15,10,13,13,17,16,11,12,13,15,15,12,15,14,18,18,13,14,14,16,17,9,12,12,15,16,10,13,13,15,16,11,13,13,15,16,13,15,15,17,17,13,15,14,16,15,7,11,11,15,16,10,13,12,16,17,10,12,13,15,17,15,16,16,18,17,13,15,15,17,18,8,12,12,16,16,11,13,14,17,18,11,13,13,18,16,15,17,16,17,19,14,15,15,17,16,8,12,12,16,15,11,14,13,18,17,11,13,14,18,17,15,16,16,18,17,13,16,16,18,18,11,15,14,18,17,13,14,15,18,0,12,15,15,0,17,17,16,17,17,18,14,16,18,18,0,11,14,14,17,0,12,15,14,17,19,12,15,14,18,0,15,18,16,0,17,14,18,16,18,0,7,11,11,16,15,10,12,12,18,16,10,13,13,16,15,13,15,14,17,17,14,16,16,19,18,8,12,12,16,16,11,13,13,18,16,11,13,14,17,16,14,15,15,19,18,15,16,16,0,19,8,12,12,16,17,11,13,13,17,17,11,14,13,17,17,13,15,15,17,19,15,17,17,19,0,11,14,15,19,17,12,15,16,18,18,12,14,15,19,17,14,16,17,0,18,16,16,19,17,0,11,14,14,18,19,12,15,14,17,17,13,16,14,17,16,14,17,16,18,18,15,18,15,0,18,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,7,8,9,7,8,9,5,7,7,7,9,8,7,9,7,4,7,7,7,9,9,7,8,8,6,9,8,7,8,11,9,11,10,6,8,9,8,11,8,9,10,11,4,7,7,7,8,8,7,9,9,6,9,8,9,11,10,8,8,11,6,8,9,9,10,11,8,11,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,8,5,8,8,8,10,10,8,10,11,5,8,8,8,10,10,8,10,10,4,9,9,9,12,11,8,11,11,8,12,11,10,12,14,10,13,13,7,11,11,10,14,12,11,14,14,4,9,9,8,11,11,9,11,12,7,11,11,10,13,14,10,12,14,8,11,12,10,14,14,10,13,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,5,8,7,14,8,9,19,5,2,5,5,9,6,9,19,8,4,5,7,8,9,13,19,7,4,6,5,9,6,9,19,12,8,7,9,10,11,13,19,8,5,8,6,9,6,7,19,8,8,10,7,7,4,5,19,12,17,19,15,18,13,11,18,9,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,9,0,0,0,9,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,112,199,64,0,0,0,0,0,136,211,64,0,0,0,0,0,124,229,64,0,0,0,0,0,255,244,64,200,47,1,0,32,240,4,0,200,47,1,0,64,240,4,0,200,47,1,0,128,240,4,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,248,45,5,0,248,45,5,0,32,46,5,0,32,46,5,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,32,5,5,0,32,5,5,0,72,5,5,0,72,5,5,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,8,6,5,0,8,6,5,0,72,5,5,0,72,5,5,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,192,240,4,0,192,240,4,0,232,240,4,0,232,240,4,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,168,241,4,0,168,241,4,0,232,240,4,0,232,240,4,0,2,0,0,0,100,0,0,0,184,4,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,242,4,0,0,0,0,0,0,0,0,0,0,0,0,0,96,242,4,0,0,0,0,0,0,0,0,0,0,0,0,0,136,242,4,0,0,0,0,0,0,0,0,0,0,0,0,0,176,242,4,0,0,0,0,0,216,242,4,0,0,243,4,0,0,0,0,0,0,0,0,0,40,243,4,0,80,243,4,0,0,0,0,0,0,0,0,0,120,243,4,0,160,243,4,0,0,0,0,0,0,0,0,0,200,243,4,0,240,243,4,0,0,0,0,0,0,0,0,0,24,244,4,0,64,244,4,0,104,244,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,208,241,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,9,9,9,8,9,10,13,16,5,4,5,6,7,7,8,9,12,16,6,5,5,5,7,7,9,10,12,15,7,6,5,4,5,6,8,9,10,13,8,7,7,5,5,5,7,9,10,12,7,7,7,6,5,5,6,7,10,12,8,8,8,7,7,5,5,6,9,11,8,9,9,8,8,6,6,5,8,11,10,11,12,12,11,9,9,8,9,12,13,14,15,15,14,12,12,11,11,13,0,0,0,0,4,0,0,0,81,0,0,0,80,4,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,4,5,0,0,0,0,0,4,0,0,0,113,2,0,0,192,1,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,4,5,0,0,0,0,0,2,0,0,0,81,0,0,0,64,1,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,152,1,5,0,0,0,0,0,2,0,0,0,33,1,0,0,208,255,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,248,0,5,0,0,0,0,0,4,0,0,0,81,0,0,0,104,255,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,192,255,4,0,0,0,0,0,2,0,0,0,121,0,0,0,184,254,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,56,255,4,0,0,0,0,0,2,0,0,0,169,0,0,0,208,253,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,128,254,4,0,0,0,0,0,2,0,0,0,25,0,0,0,152,253,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,184,253,4,0,0,0,0,0,2,0,0,0,169,0,0,0,176,252,4,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,96,253,4,0,0,0,0,0,2,0,0,0,121,0,0,0,0,252,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,128,252,4,0,0,0,0,0,2,0,0,0,225,0,0,0,216,250,4,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,192,251,4,0,0,0,0,0,2,0,0,0,185,1,0,0,192,248,4,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,128,250,4,0,0,0,0,0,2,0,0,0,33,1,0,0,80,247,4,0,1,0,0,0,0,24,157,225,0,24,61,97,5,0,0,0,0,0,0,0,120,248,4,0,0,0,0,0,2,0,0,0,105,1,0,0,144,245,4,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,0,247,4,0,0,0,0,0,1,0,0,0,49,0,0,0,144,244,4,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,200,244,4,0,0,0,0,0,2,4,4,4,4,5,5,5,5,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,7,8,8,10,9,11,10,13,11,14,13,6,6,6,8,8,8,8,8,7,9,8,11,9,13,11,14,12,14,13,5,6,6,8,8,8,8,8,8,9,9,11,11,13,11,14,13,15,15,17,8,8,8,8,9,9,9,8,11,9,12,10,13,11,14,12,14,13,17,8,8,8,8,9,9,9,9,10,10,11,11,13,13,13,14,16,15,17,12,12,8,8,9,9,10,10,11,11,12,11,13,12,13,12,14,13,16,12,12,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,17,17,17,9,9,9,9,11,11,12,12,12,13,13,13,16,14,14,14,17,17,17,9,8,9,8,11,10,12,12,13,13,14,14,15,15,16,16,17,17,17,12,12,10,10,11,12,12,13,13,14,13,15,15,14,16,15,17,17,17,12,12,10,8,12,9,13,12,14,14,15,14,15,16,16,16,17,17,17,17,17,11,11,12,12,14,14,14,16,15,16,15,16,15,17,17,17,17,17,17,11,9,12,10,13,11,15,14,16,16,17,16,16,15,17,17,17,17,17,15,15,12,12,14,14,15,16,16,15,16,16,17,17,17,17,17,17,17,14,14,12,10,14,11,15,12,17,16,15,16,17,16,17,17,17,17,17,17,17,13,13,14,14,14,16,17,17,16,17,17,17,17,17,17,17,17,17,17,13,9,13,12,15,13,16,16,17,17,17,17,17,17,17,17,17,17,17,15,17,14,14,15,16,16,17,16,17,16,17,17,17,17,17,17,17,17,17,17,14,13,15,16,16,17,16,17,17],"i8",L3,x.GLOBAL_BASE+315120),d3([17,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,4,3,10,8,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,11,11,11,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,11,10,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,10,9,10,10,10,10,11,11,11,8,8,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,11,11,11,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,10,10,6,6,6,8,8,9,9,8,8,9,9,10,10,11,11,6,5,5,8,7,9,9,8,8,9,9,10,10,11,11,20,8,8,8,8,9,9,9,9,10,10,11,10,12,11,20,8,8,8,8,9,9,9,9,10,10,11,11,12,12,20,12,12,9,9,10,10,10,10,11,11,12,12,13,12,20,13,13,9,9,10,10,10,10,11,11,12,12,13,13,20,20,20,9,9,9,9,10,10,11,11,12,12,13,12,20,20,20,9,9,9,8,10,10,12,11,12,12,13,13,20,20,20,13,13,10,10,11,11,12,12,13,13,13,13,20,20,20,13,13,10,10,11,10,12,11,13,13,14,14,20,20,20,20,20,11,11,11,11,12,12,13,13,14,14,20,20,20,20,20,11,10,11,11,13,11,13,13,14,14,20,20,21,21,21,14,14,11,12,13,13,13,13,14,14,21,21,21,21,21,15,15,12,11,13,12,14,13,15,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,7,7,9,9,9,6,7,7,7,7,7,8,8,9,9,9,6,6,7,7,7,7,8,8,9,9,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,7,7,8,8,9,9,9,7,7,8,8,7,7,8,8,9,9,9,9,9,8,8,7,7,8,8,9,9,9,9,9,8,8,7,7,8,8,9,9,9,9,9,7,7,7,7,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,8,10,9,10,10,5,5,5,7,7,9,9,10,10,11,10,12,11,6,5,5,7,7,9,9,10,10,11,11,12,12,20,7,7,7,7,9,9,10,10,11,11,12,12,20,7,7,7,7,9,9,11,10,12,11,12,12,20,11,11,8,8,10,10,11,11,12,12,13,13,20,12,12,8,8,9,9,11,11,12,12,13,13,20,20,21,10,10,10,10,11,11,12,12,13,13,21,21,21,10,10,10,10,11,11,12,12,13,13,21,21,21,14,14,11,11,12,12,13,13,13,14,21,21,21,16,15,11,11,12,11,13,13,14,14,21,21,21,21,21,13,13,12,12,13,13,14,14,21,21,21,21,21,13,13,12,12,13,13,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,7,8,8,9,9,10,10,5,5,5,7,7,9,9,9,9,11,11,12,12,6,5,5,7,7,9,9,10,9,11,11,12,12,0,7,7,7,7,9,9,10,10,11,11,12,12,0,7,7,7,7,9,9,10,10,11,11,12,12,0,11,11,8,8,10,10,11,11,12,12,13,13,0,12,12,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,6,6,7,7,7,7,11,10,10,6,6,7,7,8,8,8,8,10,10,10,6,6,7,7,8,8,8,8,11,11,11,7,7,8,8,8,8,9,9,11,11,11,6,7,8,8,8,8,9,9,11,11,11,7,7,8,8,8,8,8,8,11,11,11,7,7,8,8,8,8,9,9,11,11,11,8,8,8,8,8,8,8,8,11,11,11,11,11,8,8,8,8,8,8,12,11,11,11,11,8,8,8,8,8,8,12,11,11,11,11,7,7,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,6,6,10,11,10,10,10,11,4,6,6,10,10,11,10,11,10,5,10,10,9,12,11,10,12,12,7,10,10,12,12,12,12,13,13,7,11,10,11,12,12,12,13,13,6,11,10,10,12,12,11,12,12,7,11,10,12,13,13,12,12,12,7,10,11,12,13,13,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,6,7,7,8,8,8,8,9,9,0,0,0,6,6,7,7,8,8,8,8,9,9,10,10,11,10,0,0,0,6,6,7,7,8,8,8,8,9,9,10,10,10,10,0,0,0,6,6,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,6,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,10,10,11,11,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,11,11,12,12,0,0,0,7,8,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,5,5,7,7,8,8,0,0,0,6,6,8,8,9,9,0,0,0,6,6,8,8,9,9,0,0,0,7,7,8,9,10,10,0,0,0,7,7,9,9,10,10,0,0,0,8,8,9,9,11,11,0,0,0,7,7,9,9,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,7,7,0,0,0,8,8,0,0,0,8,8,0,0,0,8,8,0,0,0,8,8,4,4,4,8,7,0,0,0,8,8,0,0,0,8,8,0,0,0,9,9,0,0,0,9,9,4,4,4,7,8,0,0,0,8,8,0,0,0,8,8,0,0,0,9,9,0,0,0,9,9,7,8,8,10,9,0,0,0,12,11,0,0,0,11,12,0,0,0,14,13,0,0,0,14,14,7,8,8,9,10,0,0,0,11,12,0,0,0,11,11,0,0,0,14,14,0,0,0,14,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,8,11,11,0,0,0,12,11,0,0,0,12,12,0,0,0,13,12,0,0,0,13,13,8,8,8,11,11,0,0,0,11,11,0,0,0,12,12,0,0,0,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,8,12,11,0,0,0,12,12,0,0,0,12,11,0,0,0,13,13,0,0,0,13,13,8,8,8,11,12,0,0,0,11,12,0,0,0,11,12,0,0,0,13,14,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,9,14,14,0,0,0,13,13,0,0,0,13,13,0,0,0,13,12,0,0,0,13,13,8,9,9,14,14,0,0,0,13,13,0,0,0,13,13,0,0,0,12,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,9,14,14,0,0,0,13,13,0,0,0,13,13,0,0,0,13,13,0,0,0,13,12,8,9,9,14,14,0,0,0,13,13,0,0,0,13,13,0,0,0,13,13,0,0,0,12,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,3,3,0,0,0,0,0,0,4,5,5,0,0,0,0,0,0,4,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,7,10,12,11,12,13,15,16,18,15,10,8,8,8,9,10,12,13,14,17,10,7,7,7,7,8,10,12,15,18,10,7,7,5,5,6,8,10,13,15,10,7,6,5,4,4,6,9,12,15,11,7,7,5,4,3,4,7,11,13,12,9,8,7,5,4,4,5,10,13,11,11,11,9,7,5,5,5,9,12,13,12,13,12,10,8,8,7,9,13,14,14,14,14,13,11,11,10,10,13,0,0,0,0,2,0,0,0,100,0,0,0,144,45,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,232,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,16,7,5,0,0,0,0,0,0,0,0,0,0,0,0,0,56,7,5,0,0,0,0,0,96,7,5,0,136,7,5,0,0,0,0,0,0,0,0,0,176,7,5,0,216,7,5,0,0,0,0,0,0,0,0,0,0,8,5,0,40,8,5,0,80,8,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,48,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,5,20,7,10,7,8,10,11,11,4,2,20,5,8,6,7,9,10,10,20,20,20,20,19,19,19,19,19,19,7,5,19,6,10,7,9,11,13,17,11,8,19,10,7,7,8,10,11,15,7,5,19,7,7,5,6,9,11,16,7,6,19,8,7,6,6,7,9,13,9,9,19,11,9,8,6,7,8,13,12,14,19,16,13,10,9,8,9,13,14,17,19,18,18,17,12,11,11,13,0,0,0,0,8,0,0,0,161,25,0,0,216,19,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,128,45,5,0,0,0,0,0,4,0,0,0,113,2,0,0,72,17,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,19,5,0,0,0,0,0,2,0,0,0,81,0,0,0,200,16,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,32,17,5,0,0,0,0,0,2,0,0,0,81,0,0,0,72,16,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,160,16,5,0,0,0,0,0,2,0,0,0,33,1,0,0,216,14,5,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,0,16,5,0,0,0,0,0,4,0,0,0,81,0,0,0,112,14,5,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,200,14,5,0,0,0,0,0,2,0,0,0,121,0,0,0,192,13,5,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,64,14,5,0,0,0,0,0,2,0,0,0,169,0,0,0,216,12,5,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,136,13,5,0,0,0,0,0,2,0,0,0,25,0,0,0,160,12,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,12,5,0,0,0,0,0,2,0,0,0,169,0,0,0,184,11,5,0,1,0,0,0,0,136,93,225,0,176,19,97,4,0,0,0,0,0,0,0,104,12,5,0,0,0,0,0,2,0,0,0,225,0,0,0,144,10,5,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,120,11,5,0,0,0,0,0,2,0,0,0,185,1,0,0,120,8,5,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,56,10,5,0,0,0,0,0,1,4,4,6,6,7,7,8,7,8,8,9,9,9,9,10,10,10,9,10,10,11,12,12,8,8,8,8,9,9,9,9,10,10,10,10,10,11,11,10,12,11,11,13,11,7,7,8,8,8,8,9,9,9,10,10,10,10,9,10,10,11,11,12,11,11,8,8,8,8,9,9,10,10,10,10,11,11,11,11,11,11,11,12,11,12,12,8,8,9,9,9,9,9,10,10,10,10,10,10,11,11,11,11,11,11,12,11,9,9,9,9,10,10,10,10,11,10,11,11,11,11,11,11,12,12,12,12,11,9,9,9,9,10,10,10,10,11,11,11,11,11,11,11,11,11,12,12,12,13,9,10,10,9,11,10,10,10,10,11,11,11,11,11,10,11,12,11,12,12,11,12,11,10,9,10,10,11,10,11,11,11,11,11,11,11,11,11,12,12,11,12,12,12,10,10,10,11,10,11,11,11,11,11,11,11,11,11,11,11,12,13,12,12,11,9,10,10,11,11,10,11,11,11,12,11,11,11,11,11,12,12,13,13,12,13,10,10,12,10,11,11,11,11,11,11,11,11,11,12,12,11,13,12,12,12,12,13,12,11,11,11,11,11,11,12,11,12,11,11,11,11,12,12,13,12,11,12,12,11,11,11,11,11,12,11,11,11,11,12,11,11,12,11,12,13,13,12,12,12,12,11,11,11,11,11,12,11,11,12,11,12,11,11,11,11,13,12,12,12,12,13,11,11,11,12,12,11,11,11,12,11,12,12,12,11,12,13,12,11,11,12,12,11,12,11,11,11,12,12,11,12,11,11,11,12,12,12,12,13,12,13,12,12,12,12,11,11,12,11,11,11,11,11,11,12,12,12,13,12,11,13,13,12,12,11,12,10,11,11,11,11,12,11,12,12,11,12,12,13,12,12,13,12,12,12,12,12,11,12,12,12,11,12,11,11,11,12,13,12,13,13,13,13,13,12,13,13,12,12,13,11,11,11,11,11,12,11,11,12,11,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,4,4,8,8,12,13,14,14,14,14,14,14,6,6,6,6,6,10,9,14,14,14,14,14,14,14,14,7,6,5,6,6,10,9,12,13,13,13,13,13,13,13,13,7,7,9,9,11,11,12,13,13,13,13,13,13,13,13,7,7,8,8,11,12,13,13,13,13,13,13,13,13,13,12,12,10,10,13,12,13,13,13,13,13,13,13,13,13,12,12,10,10,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,6,5,5,7,8,8,9,8,8,9,9,10,11,6,5,5,8,8,9,9,8,8,9,10,10,11,0,8,8,8,9,9,9,9,9,10,10,11,11,0,9,9,9,8,9,9,9,9,10,10,11,11,0,13,13,9,9,10,10,10,10,11,11,12,12,0,14,13,9,9,10,10,10,10,11,11,12,12,0,0,0,10,10,9,9,11,11,12,12,13,12,0,0,0,10,10,9,9,10,10,12,12,13,13,0,0,0,13,14,11,10,11,11,12,12,13,14,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,12,12,12,12,13,13,14,15,0,0,0,0,0,12,12,12,12,13,13,14,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,6,7,7,7,7,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,9,9,10,10,10,10,10,8,8,8,8,9,9,10,10,10,10,10,9,9,8,8,9,9,10,10,10,10,10,8,8,8,8,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,6,7,6,6,4,7,7,10,9,10,10,10,9,4,7,7,10,10,10,11,10,10,6,10,10,11,11,11,11,10,10,6,10,9,11,11,11,11,10,10,6,10,10,11,11,11,11,10,10,7,11,11,11,11,11,12,12,11,6,10,10,11,10,10,11,11,11,6,10,10,10,11,10,11,11,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,6,6,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,9,10,9,10,10,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,11,12,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,10,10,11,10,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,5,5,6,6,8,8,0,0,0,7,7,7,7,9,9,0,0,0,7,7,7,7,9,9,0,0,0,8,8,8,8,9,9,0,0,0,8,8,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,10,10,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,2,3,7,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,8,9,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,9,11,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,11,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,8,9,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,9,11,9],"i8",L3,x.GLOBAL_BASE+325360),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,6,17,8,12,9,10,10,12,13,5,2,17,4,9,5,7,8,11,13,16,16,16,16,16,16,16,16,16,16,6,4,16,5,10,5,7,10,14,16,13,9,16,11,8,7,8,9,13,16,7,4,16,5,7,4,6,8,11,13,8,6,16,7,8,5,5,7,9,13,9,8,16,9,8,6,6,7,9,13,11,11,16,10,10,7,7,7,9,13,13,13,16,13,13,9,9,9,10,13,0,0,0,0,2,0,0,0,100,0,0,0,88,85,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,46,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,47,5,0,0,0,0,0,0,0,0,0,0,0,0,0,48,47,5,0,0,0,0,0,0,0,0,0,0,0,0,0,88,47,5,0,0,0,0,0,0,0,0,0,0,0,0,0,128,47,5,0,0,0,0,0,168,47,5,0,208,47,5,0,0,0,0,0,0,0,0,0,248,47,5,0,32,48,5,0,0,0,0,0,0,0,0,0,72,48,5,0,112,48,5,0,152,48,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,160,59,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,72,85,5,0,0,0,0,0,4,0,0,0,113,2,0,0,16,57,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,59,5,0,0,0,0,0,2,0,0,0,81,0,0,0,144,56,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,232,56,5,0,0,0,0,0,2,0,0,0,81,0,0,0,16,56,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,104,56,5,0,0,0,0,0,2,0,0,0,33,1,0,0,160,54,5,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,200,55,5,0,0,0,0,0,4,0,0,0,81,0,0,0,56,54,5,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,144,54,5,0,0,0,0,0,2,0,0,0,121,0,0,0,136,53,5,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,8,54,5,0,0,0,0,0,2,0,0,0,169,0,0,0,160,52,5,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,80,53,5,0,0,0,0,0,2,0,0,0,25,0,0,0,104,52,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,52,5,0,0,0,0,0,4,0,0,0,81,0,0,0,0,52,5,0,1,0,0,0,0,176,19,225,0,176,19,97,2,0,0,0,0,0,0,0,88,52,5,0,0,0,0,0,2,0,0,0,225,0,0,0,216,50,5,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,192,51,5,0,0,0,0,0,2,0,0,0,185,1,0,0,192,48,5,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,128,50,5,0,0,0,0,0,1,5,5,7,8,8,7,9,9,9,12,12,11,12,12,10,10,11,12,12,12,11,12,12,8,9,8,7,9,10,10,11,11,10,11,12,10,12,10,12,12,12,11,12,11,9,8,8,9,10,9,8,9,10,12,12,11,11,12,11,10,11,12,11,12,12,8,9,9,9,10,11,12,11,12,11,11,11,11,12,12,11,11,12,12,11,11,9,9,8,9,9,11,9,9,10,9,11,11,11,11,12,11,11,10,12,12,12,9,12,11,10,11,11,11,11,12,12,12,11,11,11,12,10,12,12,12,10,10,9,10,9,10,10,9,9,9,10,10,12,10,11,11,9,11,11,10,11,11,11,10,10,10,9,9,10,10,9,9,10,11,11,10,11,10,11,10,11,11,10,11,11,11,10,9,10,10,9,10,9,9,11,9,9,11,10,10,11,11,10,10,11,10,11,8,9,11,11,10,9,10,11,11,10,11,11,10,10,10,11,10,9,10,10,11,9,10,10,9,11,10,10,10,10,11,10,11,11,9,11,10,11,10,10,11,11,10,10,10,9,10,10,11,11,11,9,10,10,10,10,10,11,10,10,10,9,10,10,11,10,10,10,10,10,9,10,11,10,10,10,10,11,11,11,10,10,10,10,10,11,10,11,10,11,10,10,10,9,11,11,10,10,10,11,11,10,10,10,10,10,10,10,10,11,11,9,10,10,10,11,10,11,10,10,10,11,9,10,11,10,11,10,10,9,10,10,10,11,10,11,10,10,10,10,10,11,11,10,11,11,10,10,11,11,10,9,9,10,10,10,10,10,9,11,9,10,10,10,11,11,10,10,10,10,11,11,11,10,9,9,10,10,11,10,10,10,10,10,11,11,11,10,10,10,11,11,11,9,10,10,10,10,9,10,9,10,11,10,11,10,10,11,11,10,11,11,11,11,11,10,11,10,10,10,9,11,11,10,11,11,11,11,11,11,11,11,11,10,11,10,10,10,10,11,10,10,11,9,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,5,5,5,5,9,11,11,10,10,10,10,10,10,10,7,6,6,6,6,10,10,10,10,10,10,10,10,10,10,7,6,6,6,6,10,9,10,10,10,10,10,10,10,10,10,7,7,8,9,10,10,10,10,10,10,10,10,10,10,10,8,7,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,5,5,7,7,7,6,6,7,7,7,5,5,7,7,7,6,6,7,7,7,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,6,8,8,10,10,6,5,6,8,8,8,8,8,8,8,9,10,10,7,6,6,8,8,8,8,8,8,8,8,10,10,0,8,8,8,8,9,8,9,9,9,10,10,10,0,9,8,8,8,9,9,8,8,9,9,10,10,0,12,11,8,8,9,9,9,9,10,10,11,10,0,12,13,8,8,9,10,9,9,11,11,11,12,0,0,0,8,8,8,8,10,9,12,13,12,14,0,0,0,8,8,8,9,10,10,12,12,13,14,0,0,0,13,13,9,9,11,11,0,0,14,0,0,0,0,14,14,10,10,12,11,12,14,14,14,0,0,0,0,0,11,11,13,13,14,13,14,14,0,0,0,0,0,12,13,13,12,13,14,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,4,6,6,7,7,8,8,8,8,10,10,10,7,7,8,8,8,9,9,9,10,10,10,6,7,8,8,8,8,9,8,10,10,10,7,7,8,8,9,9,9,9,10,10,10,7,7,8,8,9,9,8,9,10,10,10,8,8,9,9,9,9,9,9,11,11,11,8,8,9,9,9,9,9,10,10,11,11,9,9,9,9,9,9,9,10,11,11,11,10,11,9,9,9,9,10,9,11,11,11,10,11,10,10,9,9,10,10,11,11,11,11,11,9,9,9,9,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,6,7,6,6,4,7,7,11,10,10,11,11,10,4,7,7,10,10,10,11,10,10,6,10,10,11,11,11,11,11,10,6,9,9,11,12,12,11,9,9,6,9,10,11,12,12,11,9,10,7,11,11,11,11,11,12,13,12,6,9,10,11,10,10,12,13,13,6,10,9,11,10,10,11,12,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,4,6,6,7,7,8,8,8,8,9,9,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,11,11,11,0,0,0,6,6,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,13,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,10,10,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,13,13,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,13,13,13,14,0,0,0,0,0,10,10,10,11,11,11,12,12,13,13,13,14,0,0,0,0,0,0,0,10,10,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,12,13,13,14,15,14,0,0,0,0,0,0,0,12,12,12,12,13,13,13,14,14,15,0,0,0,0,0,0,0,0,0,12,12,13,13,14,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,6,6,8,8,0,0,0,7,7,7,7,8,8,0,0,0,7,7,7,7,8,8,0,0,0,7,7,8,8,9,9,0,0,0,7,7,8,8,9,9,0,0,0,8,9,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,10,10,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,2,7,8,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,6,6,7,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,6,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,9,9,12,0,0,0,0,0,0,10,12,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,9,12,10,0,0,0,0,0,0,10,11,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,10,12,11,0,0,0,0,0,0,9,10,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,10,11,12,0,0,0,0,0,0,9,12,9],"i8",L3,x.GLOBAL_BASE+339320),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,19,7,9,7,8,11,9,12,4,1,19,6,7,7,8,10,11,13,18,18,18,18,18,18,18,18,18,18,8,6,18,8,9,9,11,12,14,18,9,6,18,9,7,8,9,11,12,18,7,6,18,8,7,7,7,9,11,17,8,8,18,9,7,6,6,8,11,17,10,10,18,12,9,8,7,9,12,18,13,15,18,15,13,11,10,11,15,18,14,18,18,18,18,18,16,16,18,18,0,0,0,0,0,0,0,0,0,64,207,64,0,0,0,0,0,88,219,64,0,0,0,0,0,106,232,64,0,0,0,0,0,249,245,64,0,0,0,0,0,0,35,64,0,0,0,0,0,0,38,64,0,0,0,0,0,0,62,64,0,0,0,0,0,192,88,64,0,0,0,0,0,76,205,64,0,0,0,0,0,136,211,64,0,0,0,0,0,124,229,64,0,0,0,0,0,255,244,64,0,0,0,0,0,76,221,64,0,0,0,0,0,130,228,64,0,0,0,0,0,100,233,64,0,0,0,0,0,64,239,64,0,0,0,0,0,148,241,64,0,0,0,0,0,11,243,64,0,0,0,0,0,255,244,64,0,0,0,0,0,118,246,64,0,0,0,0,0,219,250,64,0,0,0,0,0,76,253,64,0,0,0,0,0,23,1,65,0,0,0,0,128,49,7,65,154,153,153,153,153,153,40,64,0,0,0,0,0,0,42,64,0,0,0,0,0,0,42,64,0,0,0,0,0,0,44,64,0,0,0,0,0,0,46,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,148,209,64,0,0,0,0,0,88,219,64,0,0,0,0,0,23,225,64,0,0,0,0,0,249,229,64,0,0,0,0,0,88,235,64,0,0,0,0,0,76,237,64,0,0,0,0,128,79,242,64,0,0,0,0,0,249,245,64,0,0,0,0,0,106,248,64,0,0,0,0,128,19,252,64,0,0,0,0,128,79,2,65,0,0,0,0,128,49,7,65,0,0,0,0,0,64,223,64,0,0,0,0,0,112,231,64,0,0,0,0,0,76,237,64,0,0,0,0,0,23,241,64,0,0,0,0,0,136,243,64,0,0,0,0,0,255,244,64,0,0,0,0,0,112,247,64,0,0,0,0,0,219,250,64,0,0,0,0,0,76,253,64,0,0,0,0,0,23,1,65,0,0,0,0,0,136,3,65,0,0,0,0,8,76,13,65,0,0,0,0,0,88,203,64,0,0,0,0,0,136,211,64,0,0,0,0,0,88,219,64,0,0,0,0,0,142,226,64,0,0,0,0,0,118,230,64,0,0,0,0,0,94,234,64,0,0,0,0,128,79,242,64,0,0,0,0,0,112,247,64,0,0,0,0,0,76,253,64,0,0,0,0,0,23,1,65,0,0,0,0,0,249,5,65,0,0,0,0,8,76,13,65,88,88,5,0,104,113,5,0,88,88,5,0,200,113,5,0,88,88,5,0,40,114,5,0,88,88,5,0,136,114,5,0,88,88,5,0,232,114,5,0,88,88,5,0,72,115,5,0,168,115,5,0,184,140,5,0,168,115,5,0,24,141,5,0,168,115,5,0,120,141,5,0,168,115,5,0,216,141,5,0,168,115,5,0,56,142,5,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,30,0,0,0,208,111,7,0,24,201,7,0,24,201,7,0,64,201,7,0,64,201,7,0,2,0,0,0,0,0,0,0,30,0,0,0,208,111,7,0,0,202,7,0,0,202,7,0,64,201,7,0,64,201,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,40,202,7,0,40,202,7,0,80,202,7,0,80,202,7,0,2,0,0,0,0,0,0,0,15,0,0,0,208,111,7,0,0,162,7,0,0,162,7,0,40,162,7,0,40,162,7,0,2,0,0,0,0,0,0,0,30,0,0,0,208,111,7,0,232,162,7,0,232,162,7,0,40,162,7,0,40,162,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,16,163,7,0,16,163,7,0,56,163,7,0,56,163,7,0,2,0,0,0,0,0,0,0,15,0,0,0,208,111,7,0,232,122,7,0,232,122,7,0,16,123,7,0,16,123,7,0,2,0,0,0,0,0,0,0,30,0,0,0,208,111,7,0,208,123,7,0,208,123,7,0,16,123,7,0,16,123,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,248,123,7,0,248,123,7,0,32,124,7,0,32,124,7,0,2,0,0,0,0,0,0,0,15,0,0,0,72,198,6,0,0,59,7,0,0,59,7,0,40,59,7,0,40,59,7,0,2,0,0,0,0,0,0,0,30,0,0,0,72,198,6,0,232,59,7,0,232,59,7,0,40,59,7,0,40,59,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,16,60,7,0,16,60,7,0,56,60,7,0,56,60,7,0,2,0,0,0,0,0,0,0,15,0,0,0,72,198,6,0,48,6,7,0,48,6,7,0,88,6,7,0,88,6,7,0,2,0,0,0,0,0,0,0,30,0,0,0,72,198,6,0,24,7,7,0,24,7,7,0,88,6,7,0,88,6,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,64,7,7,0,64,7,7,0,104,7,7,0,104,7,7,0,2,0,0,0,0,0,0,0,15,0,0,0,72,198,6,0,96,209,6,0,96,209,6,0,136,209,6,0,136,209,6,0,2,0,0,0,0,0,0,0,30,0,0,0,72,198,6,0,72,210,6,0,72,210,6,0,136,209,6,0,136,209,6,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,112,210,6,0,112,210,6,0,152,210,6,0,152,210,6,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2],"i8",L3,x.GLOBAL_BASE+349504),d3([2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2],"i8",L3,x.GLOBAL_BASE+360488),d3([2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,120,145,6,0,120,145,6,0,160,145,6,0,160,145,6,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,96,146,6,0,96,146,6,0,160,145,6,0,160,145,6,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,136,146,6,0,136,146,6,0,176,146,6,0,176,146,6,0,2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,176,96,6,0,176,96,6,0,216,96,6,0,216,96,6,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,152,97,6,0,152,97,6,0,216,96,6,0,216,96,6,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,216,165,5,0,216,165,5,0,0,166,5,0,0,166,5,0,2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,136,46,6,0,136,46,6,0,176,46,6,0,176,46,6,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,112,47,6,0,112,47,6,0,176,46,6,0,176,46,6,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,216,165,5,0,216,165,5,0,0,166,5,0,0,166,5,0,2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,24,241,5,0,24,241,5,0,64,241,5,0,64,241,5,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,0,242,5,0,0,242,5,0,64,241,5,0,64,241,5,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,216,165,5,0,216,165,5,0,0,166,5,0,0,166,5,0,2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,176,153,5,0,176,153,5,0,216,153,5,0,216,153,5,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,152,154,5,0,152,154,5,0,216,153,5,0,216,153,5,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,216,165,5,0,216,165,5,0,0,166,5,0,0,166,5,0,0,0,0,0,255,255,255,255,255,255,255,255,8,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+363696),d3([1,0,0,0,2,0,0,0,4,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,16,241,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,232,169,5,0,0,0,0,0,0,0,0,0,16,170,5,0,0,0,0,0,0,0,0,0,56,170,5,0,96,170,5,0,0,0,0,0,0,0,0,0,136,170,5,0,176,170,5,0,0,0,0,0,0,0,0,0,216,170,5,0,0,171,5,0,0,0,0,0,0,0,0,0,40,171,5,0,80,171,5,0,0,171,5,0,0,0,0,0,120,171,5,0,160,171,5,0,200,171,5,0,240,171,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,224,169,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,2,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+366508),d3([32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,216,169,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,166,5,0,232,166,5,0,0,0,0,0,0,0,0,0,16,167,5,0,56,167,5,0,96,167,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,240,168,5,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,160,169,5,0,0,0,0,0,2,0,0,0,25,0,0,0,184,168,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,168,5,0,0,0,0,0,2,0,0,0,9,0,0,0,152,168,5,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,168,168,5,0,0,0,0,0,1,0,0,0,25,0,0,0,16,168,5,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,48,168,5,0,0,0,0,0,1,0,0,0,25,0,0,0,136,167,5,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,168,167,5,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,2,3,4,5,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,5,6,6,6,6,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,4,4,5,5,4,5,5,5,5,4,5,5,5,5,5,5,5,4,5,5,5,5,5,4,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,10,10,12,12,12,12,13,12,5,5,5,8,6,11,9,12,12,13,12,12,12,4,5,5,6,8,9,11,12,12,13,12,12,12,7,7,8,9,9,11,8,12,9,12,12,12,12,7,8,8,9,9,8,11,9,12,12,12,11,12,10,10,10,11,11,11,11,11,10,11,11,12,11,10,10,10,11,11,11,11,10,11,11,11,11,12,11,11,11,12,11,12,11,12,11,13,11,13,11,11,11,11,11,12,11,12,10,13,11,12,11,13,12,12,12,13,12,13,13,13,12,14,12,14,13,12,12,12,12,13,13,13,12,14,12,14,13,14,13,14,14,14,14,14,14,14,14,15,14,15,14,13,14,13,14,14,14,14,14,15,14,14,14,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,1,3,0,0,0,0,3,3,3,3,3,3,3,3,5,0,0,0,243,0,0,0,8,240,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,0,241,5,0,0,0,0,0,5,0,0,0,53,12,0,0,184,227,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,240,239,5,0,0,0,0,0,5,0,0,0,243,0,0,0,176,226,5,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,168,227,5,0,0,0,0,0,5,0,0,0,243,0,0,0,168,225,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,160,226,5,0,0,0,0,0,5,0,0,0,243,0,0,0,160,224,5,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,152,225,5,0,0,0,0,0,5,0,0,0,53,12,0,0,80,212,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,224,5,0,0,0,0,0,5,0,0,0,53,12,0,0,0,200,5,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,56,212,5,0,0,0,0,0,1,0,0,0,7,0,0,0,216,199,5,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,224,199,5,0,0,0,0,0,5,0,0,0,243,0,0,0,208,198,5,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,200,199,5,0,0,0,0,0,5,0,0,0,243,0,0,0,200,197,5,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,192,198,5,0,0,0,0,0,5,0,0,0,53,12,0,0,120,185,5,0,1,0,0,0,0,106,152,225,0,106,120,97,3,0,0,0,0,0,0,0,176,197,5,0,0,0,0,0,5,0,0,0,53,12,0,0,40,173,5,0,1,0,0,0,0,136,83,225,0,136,51,97,3,0,0,0,0,0,0,0,96,185,5,0,0,0,0,0,1,0,0,0,25,0,0,0,160,172,5,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,192,172,5,0,0,0,0,0,1,0,0,0,25,0,0,0,24,172,5,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,56,172,5,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,10,10,10,11,11,11,12,12,12,13,13,13,13,13,13,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,16,16,4,9,11,15,16,4,12,8,16,16,12,16,16,16,16,13,16,16,16,16,5,8,10,16,16,9,9,14,15,16,12,14,14,16,16,16,16,16,16,16,16,16,16,16,16,5,11,8,16,15,12,14,16,16,16,9,15,9,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,6,11,11,16,16,12,13,16,16,16,12,16,14,16,16,16,16,16,16,16,16,16,16,16,16,11,15,15,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,12,15,16,16,16,16,16,16,16,16,14,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,5,11,11,16,16,12,15,16,16,16,12,16,14,16,16,16,16,16,16,16,16,16,16,16,16,12,15,15,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,11,15,15,16,16,16,16,16,16,16,15,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,6,11,12,16,16,11,15,16,16,16,13,16,14,16,16,16,16,16,16,16,16,16,16,16,16,11,16,14,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,12,14,14,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,8,13,15,16,16,15,15,16,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,7,12,12,16,16,13,12,16,16,16,14,16,14,16,16,16,16,16,16,16,16,16,16,16,16,13,16,16,16,16,14,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,12,14,16,16,16,16,16,16,16,16,14,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,6,11,11,16,16,13,15,16,16,16,11,15,14,16,16,16,16,16,16,16,14,16,16,16,16,11,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,11,16,14,16,16,14,16,16,16,16,13,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,7,11,11,16,16,13,13,16,16,16,13,16,13,16,16,16,16,16,16,16,16,16,16,16,16,12,16,15,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,12,14,16,16,16,16,16,16,16,16,14,16,13,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,8,13,14,16,16,15,16,16,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,15,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,6,7,7,7,7,7,7,7,7,7,7,8,7,8,8,7,8,8,7,8,7,7,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,8,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,5,5,7,7,5,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,5,7,8,8,9,10,8,9,10,8,9,10,10,10,12,10,11,11,8,10,10,10,11,12,10,11,10,5,8,7,8,10,10,8,10,9,8,10,10,10,10,11,10,12,11,8,10,9,10,11,11,10,12,10,5,8,8,7,9,10,8,10,9,7,9,10,9,10,11,9,11,11,8,10,9,10,11,11,9,11,10,7,9,9,9,10,11,9,11,11,9,9,11,10,10,13,11,12,12,9,11,11,11,12,13,11,13,11,7,9,9,9,10,11,9,11,10,9,11,10,10,10,12,11,13,12,9,11,11,11,12,12,10,12,10,5,8,8,8,9,10,7,10,9,8,9,10,9,10,11,10,11,11,7,10,9,9,11,11,9,11,10,7,9,9,9,10,11,9,11,10,9,11,11,10,10,12,11,12,12,9,10,11,11,12,13,10,12,10,7,9,9,9,11,11,9,11,10,9,11,11,11,11,13,11,13,12,9,11,9,11,12,12,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,4,6,6,9,9,6,7,8,10,11,6,8,7,10,10,8,10,10,12,12,8,10,10,12,12,6,7,8,10,10,7,8,9,10,11,8,9,9,11,11,10,10,11,12,13,10,11,11,13,13,6,8,7,10,10,8,9,9,11,11,7,9,8,11,10,10,11,11,13,13,10,11,10,13,12,9,10,10,11,12,10,10,11,12,13,10,11,11,12,13,12,12,13,12,14,12,13,13,14,14,9,10,10,12,11,10,11,11,13,12,10,11,10,13,12,12,13,13,14,14,12,13,12,14,12,7,8,8,10,11,8,9,10,11,12,8,9,9,11,12,10,11,12,13,14,10,11,11,13,13,8,9,10,11,12,9,10,11,12,13,10,10,11,12,12,11,12,12,13,14,11,12,12,14,14,8,9,9,11,12,10,10,11,12,13,9,10,10,12,12,11,12,12,14,14,11,12,12,14,13,11,11,12,12,13,11,12,12,13,14,12,12,13,14,14,13,13,14,14,16,13,14,14,15,15,11,12,11,13,13,12,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,15,14,7,8,8,11,10,8,10,9,12,11,8,10,9,12,11,10,11,11,13,13,10,12,11,14,13,8,9,9,12,11,9,10,10,12,12,10,11,10,13,12,11,12,12,13,14,11,12,12,14,14,8,10,9,12,11,10,11,10,12,12,9,11,10,13,11,11,12,12,14,14,11,12,12,14,13,11,11,12,13,13,11,12,12,13,14,12,12,12,14,14,13,13,14,14,15,13,14,14,15,15,11,12,11,13,12,12,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,15,14,10,11,11,12,13,11,12,12,13,14,11,12,12,13,14,13,13,14,14,16,13,14,14,15,15,11,12,12,12,14,12,12,13,13,15,12,13,13,13,15,14,14,15,15,16,14,14,15,15,16,11,12,12,13,14,12,13,13,14,15,12,13,13,14,14,14,14,15,15,16,14,14,14,15,15,13,14,14,14,15,14,14,15,15,16,14,15,15,15,16,15,15,16,16,18,16,16,16,17,17,13,14,14,15,15,14,14,15,16,16,14,14,14,16,15,16,16,16,17,17,15,16,16,17,16,10,11,11,13,12,11,12,12,14,13,11,12,12,14,13,13,14,14,15,15,13,14,13,16,14,11,12,12,14,13,12,13,13,14,14,12,13,13,15,14,14,14,14,15,15,14,15,14,16,15,11,12,12,14,12,12,13,13,15,14,12,13,12,15,13,14,15,14,16,15,14,15,14,16,15,13,14,14,15,15,14,14,14,15,16,14,15,14,16,16,15,16,16,16,17,16,16,16,17,17,13,14,14,15,14,14,15,15,16,15,14,15,14,16,15,16,16,16,17,17,15,16,15,18,16,6,8,8,11,11,8,9,10,11,12,8,10,9,12,12,10,11,11,13,13,10,12,11,14,13,8,9,9,11,12,9,10,10,12,12,9,10,10,12,12,11,11,12,13,14,11,12,12,14,14,8,10,9,12,11,10,11,11,12,12,9,11,10,13,12,11,12,12,14,14,11,12,12,14,13,10,11,11,13,13,11,12,12,13,14,11,12,12,14,14,13,13,14,13,15,13,14,14,15,15,11,12,11,13,13,12,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,15,14,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,13,14,11,12,12,14,14,9,9,10,11,12,10,10,11,12,13,10,10,11,12,13,12,12,13,13,15,12,12,13,14,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,14,15,12,13,12,14,14,11,11,12,12,14,12,12,13,13,14,12,12,13,13,14,13,13,14,14,16,14,14,14,15,15,11,12,12,14,13,12,13,13,14,14,12,13,13,15,14,14,14,14,16,16,13,14,14,16,14,7,9,9,12,11,9,10,10,12,12,9,11,10,13,12,11,12,12,13,14,11,13,12,14,13,9,10,10,12,12,10,10,11,12,13,10,12,11,13,13,12,12,13,13,14,12,13,13,15,14,9,10,10,12,12,11,11,11,13,13,10,12,10,13,12,12,13,13,14,15,12,13,12,15,13,11,12,12,14,13,12,12,13,13,14,12,13,13,15,14,13,13,14,13,16,14,15,14,16,15,12,12,12,14,14,13,13,13,14],"i8",L3,x.GLOBAL_BASE+369616),d3([14,12,13,12,14,13,14,15,15,16,16,13,14,13,16,13,10,11,12,13,14,11,12,13,13,15,12,12,13,14,14,13,14,14,15,16,13,14,14,16,15,12,12,13,12,14,12,12,13,13,15,13,13,13,13,15,14,14,15,14,16,14,15,15,15,16,12,13,12,14,14,13,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,15,16,16,13,14,14,13,16,14,14,15,14,16,14,14,15,14,16,15,15,16,15,18,16,16,16,16,17,14,14,14,16,15,14,15,15,16,16,14,15,15,16,16,16,16,16,17,17,15,16,16,17,16,10,12,11,14,13,12,13,13,14,14,12,13,12,15,14,14,14,14,15,15,14,15,14,16,15,12,13,12,14,13,12,13,13,15,14,13,14,13,15,14,14,15,15,16,16,14,15,15,17,15,12,13,12,14,14,13,14,14,15,15,13,14,13,15,14,15,15,15,16,16,14,15,15,17,15,14,14,14,16,15,14,15,15,16,16,14,15,15,16,15,16,16,16,16,17,16,17,16,18,17,14,14,14,16,15,15,15,15,16,16,14,15,14,16,15,16,16,17,17,17,15,16,15,17,16,6,8,8,11,11,8,9,10,12,12,8,10,9,12,11,10,11,12,13,13,10,11,11,13,13,8,9,10,11,12,9,10,11,12,13,10,11,11,12,12,11,12,12,13,14,11,12,12,14,14,8,9,9,12,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,14,11,12,11,14,13,11,11,12,13,13,11,12,12,13,14,12,12,12,14,14,13,13,14,14,15,13,14,14,15,15,10,11,11,13,13,11,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,15,13,7,9,9,11,12,9,10,11,12,13,9,10,10,12,12,11,12,13,13,14,11,12,12,14,14,9,10,10,12,12,10,10,11,12,13,11,12,11,13,13,12,12,13,13,15,12,13,13,15,14,9,10,10,12,12,10,11,12,13,13,10,11,10,13,12,12,13,13,14,15,12,13,12,14,13,12,12,12,14,14,12,12,13,13,14,13,13,13,15,14,14,13,14,13,16,14,15,15,16,16,11,12,12,13,14,12,13,13,14,15,12,13,12,14,13,14,14,15,15,16,13,14,13,15,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,14,11,12,11,14,13,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,12,13,14,15,12,13,13,15,14,9,10,9,12,11,10,11,10,13,12,10,11,10,13,12,12,13,12,14,14,12,13,12,15,13,11,12,12,13,14,12,13,13,14,14,12,13,13,14,14,14,14,14,14,16,14,14,14,16,15,11,12,11,14,12,12,13,12,15,13,12,13,12,15,13,14,14,14,16,15,13,14,13,16,14,10,11,12,13,14,12,12,13,13,15,12,13,13,14,14,14,14,15,15,16,14,14,14,15,16,12,12,13,14,14,12,13,14,14,15,13,14,14,15,15,14,15,15,15,17,15,15,15,16,16,12,12,13,13,14,13,13,14,14,15,12,13,13,14,15,15,15,15,15,17,14,15,15,15,15,14,14,14,16,16,14,15,15,15,16,15,15,15,16,16,16,15,16,16,18,16,16,17,17,17,14,14,14,15,16,15,15,15,16,17,14,15,14,16,16,16,16,17,17,18,16,16,15,17,16,10,12,11,14,13,12,12,12,14,14,11,13,12,14,13,13,14,14,15,15,13,14,13,16,15,12,12,13,14,14,12,13,13,15,15,13,13,13,15,15,14,15,15,16,16,14,15,15,17,16,12,13,12,14,12,13,13,13,15,13,12,13,12,15,13,14,15,15,16,15,14,15,14,16,14,14,14,14,16,16,14,15,15,16,16,14,15,15,16,16,15,16,16,16,17,16,17,16,18,17,13,14,14,16,13,14,15,15,16,14,14,15,14,16,14,16,16,16,17,16,15,16,15,18,15,9,11,11,13,13,11,12,12,14,14,11,12,12,14,14,13,14,14,15,15,13,14,14,15,15,11,12,12,14,14,11,12,13,14,15,12,13,13,15,14,13,14,14,15,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,14,14,14,14,16,16,14,15,14,16,15,12,13,13,14,15,12,13,14,15,16,13,14,14,16,16,14,14,15,16,17,15,15,15,17,17,13,14,14,15,15,14,15,14,16,16,14,15,14,16,15,15,16,16,17,17,15,16,15,17,16,10,12,12,13,14,11,12,13,14,14,12,13,12,14,14,13,14,14,15,16,13,14,14,16,15,11,12,12,14,14,12,12,13,14,15,12,13,13,15,15,13,13,15,15,17,14,14,15,16,16,12,13,12,14,14,12,13,13,15,15,12,13,13,15,14,14,15,15,16,16,14,15,14,16,16,13,12,14,13,16,13,13,15,14,16,14,13,15,15,16,14,14,16,15,17,15,15,16,16,17,13,14,14,16,15,14,15,15,16,16,14,15,14,16,15,16,16,16,17,17,15,16,16,18,16,10,12,12,14,14,12,12,13,14,14,12,13,12,15,14,13,14,14,15,16,14,15,14,16,15,11,12,12,14,14,12,13,13,14,15,13,14,13,15,15,14,14,15,15,16,14,15,15,17,16,12,13,13,14,14,13,13,14,15,15,12,14,13,15,15,14,15,15,16,16,14,15,15,17,15,13,14,13,15,15,13,14,14,15,16,14,15,14,17,16,15,15,15,15,17,16,16,16,18,17,14,14,14,16,16,15,15,15,16,16,14,15,14,16,16,16,16,17,17,17,16,16,16,17,16,11,12,13,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,15,17,16,12,13,13,14,15,13,13,14,14,16,13,14,14,15,16,15,14,16,15,17,15,15,16,16,17,12,13,13,15,15,13,14,14,16,16,13,14,14,16,15,15,15,16,17,17,15,16,15,17,16,14,14,15,13,16,15,14,16,14,17,15,15,16,14,17,16,15,17,15,18,16,16,17,16,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,16,17,17,18,18,16,17,15,18,16,11,12,12,14,14,13,13,14,14,15,13,14,13,16,14,15,15,15,16,16,15,16,15,17,16,12,13,13,15,14,13,13,14,15,15,14,15,14,16,15,15,15,16,15,16,16,16,16,18,16,12,13,13,15,15,14,14,15,15,16,13,14,13,16,15,16,16,16,17,17,15,16,15,17,15,14,15,14,16,15,14,15,15,16,16,15,16,15,17,16,16,15,16,15,17,17,18,17,18,17,15,15,15,16,16,16,16,16,17,17,14,15,15,17,16,17,17,18,18,18,16,17,15,18,15,9,11,11,13,13,11,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,15,15,11,12,12,14,14,12,13,13,14,15,12,13,13,14,14,14,14,15,15,16,14,14,14,16,16,11,12,12,14,14,12,13,13,14,15,11,13,12,14,14,13,14,14,16,16,13,14,14,16,15,13,14,14,15,15,14,14,15,15,16,14,15,14,16,16,15,15,16,16,17,15,16,16,17,17,12,13,13,15,15,13,14,14,16,15,12,14,13,16,15,15,16,15,17,17,14,15,15,17,15,10,12,12,14,14,12,12,13,14,15,12,13,12,14,14,14,14,15,15,16,13,14,14,16,16,12,13,13,14,14,13,13,14,14,15,13,14,13,15,15,14,15,15,15,17,14,15,15,16,16,11,12,12,14,14,13,13,14,15,15,12,13,13,15,14,14,15,15,16,17,14,15,14,16,15,14,14,14,16,16,14,15,15,16,16,15,15,15,16,16,15,16,16,16,18,16,17,16,18,17,13,13,14,15,15,14,14,15,16,16,13,14,14,16,15,16,16,17,17,17,15,15,15,17,15,10,12,12,14,13,12,12,13,14,14,11,13,12,14,14,13,14,14,16,16,13,14,14,16,15,12,12,13,14,14,12,13,13,14,15,13,13,13,15,15,14,14,15,16,16,14,15,15,16,16,11,12,12,14,14,12,13,13,15,15,12,13,12,15,14,14,15,14,16,16,13,15,13,16,15,13,14,14,15,16,14,15,15,15,17,14,15,15,16,16,16,15,16,16,17,16,16,16,17,17,13,14,12,16,13,14,15,13,16,15,13,15,13,16,14,15,16,15,17,16,15,16,14,17,15,11,12,12,14,15,13,13,14,14,16,13,14,13,15,14,15,15,16,16,17,15,15,15,16,16,12,13,13,15,15,13,13,14,15,16,14,15,14,16,15,15,15,16,15,17,16,16,16,17,17,12,13,13,14,15,14,14,15,15,16,13,14,13,15,15,16,16,16,17,17,15,16,15,16,15,15,15,15,16,16,14,15,15,16,17,16,16,16,17,17,16,15,17,15,18,17,18,17,18,18,14,14,15,15,17,15,15,16,16,17,14,15,15,16,16,17,17,17,17,18,16,16,15,17,15,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,14,17,16,13,13,13,15,15,13,14,14,15,16,13,14,14,16,16,15,15,16,16,17,15,16,16,17,17,12,13,13,15,14,13,14,14,16,15,13,14,13,16,14,15,16,16,17,16,15,16,14,17,15,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,15,17,16,18,16,17,17,18,18,14,15,14,16,13,15,16,15,17,14,15,16,14,17,14,16,17,16,18,16,16,17,15,18,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,6,8,8,10,9,8,9,9,10,10,8,9,9,10,10,8,10,10,10,10,8,10,10,10,10,9,9,9,10,10,9,10,10,10,11,9,10,10,11,11,10,10,10,11,11,10,10,10,11,11,9,9,9,10,10,9,10,10,11,11,9,10,10,11,10,10,10,10,11,11,10,10,10,11,11,10,10,10,10,11,10,10,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,11,10,10,11,11,11,11,10,11,10,11,11,11,11,11,11,11,10,11,11,11,11,9,10,10,10,11,10,10,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,10,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,12,12,11,11,11,12,12,10,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,9,10,10,11,10,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,12,12,12,11,11,11,12,12,10,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,11,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,7,10,10,11,11,10,10,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,10,10,11,11,10,11,11,11,11,11,11,11,11,12,11,11,11,12,12,11,11,11,12,12,10,11,11,11,11,11,11,11,12,11,11,11,11,12,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,11,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,12,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,10,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,11,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,7,10,10,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,12,12,11,11,11,12,12,10,10,10,11,11,11,11,11,12,11,10,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,11,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,10,10,10,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,11,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,13,12,13,12,12,13,13,13,13,12,13,13,13,13,8,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,8,11,11,11,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,13,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,13,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,4,7,7,4,7,6,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,6,7,8,8,9,10,8,10,10,8,9,10,10,11,12,10,11,12,8,10,10,10,11,12,10,12,11,6,8,7,8,10,10,8,10,9,8,10,10,10,11,12,10,12,12,8,10,9,10,12,11,10,12,11,5,8,8,8,10,10,8,10,10,7,9,10,9,10,11,10,11,11,8,10,10,10,12,12,10,12,11,7,9,9,9,11,11,9,11,11,9,10,11,11,11,12,11,12,12,9,11,11,11,12,12,11,12,12,7,9,9,10,11,12,10,12,11,9,11,10,11,11,12,12,13,13,9,11,11,12,13,13,11,13,11,5,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,12,7,9,9,9,11,11,9,11,10,7,9,9,10,11,12,10,12,11,9,11,11,11,11,13,12,13,13,9,10,11,12,13,13,11,12,11,7,9,9,9,11,11,9,11,11,9,11,11,11,12,12,11,12,12,9,11,10,11,12,12,10,12,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,6,7,7,6,7,7,6,7,7,7,7,8,7,7,8,6,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,5,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,8,8,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,7,8,8,8,9,9,8,9,9,8,9,8,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,6,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,7,8,8,8,9,9,8,9,9,8,8,9,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,8,8,8,8,9,9,8,9,9,8,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,4,4,7,7,4,7,6,5,6,7,7,8,9,7,9,9,5,7,6,7,9,9,7,9,8,6,8,8,8,10,10,8,10,10,8,9,10,10,11,12,10,12,12,8,10,10,10,12,12,10,12,11,6,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,12,8,10,9,10,12,11,10,12,11,5,8,8,8,10,10,8,10,10,8,9,10,10,11,11,10,11,11,8,10,10,10,11,12,10,12,11,8,10,10,10,11,11,10,11,11,10,11,11,11,12,13,11,12,13,10,11,11,11,13,13,11,13,13,7,9,9,10,11,12,10,12,11,9,11,11,11,12,13,12,14,13,9,11,11,12,13,14,11,13,12,5,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,12,8,10,9,10,12,11,9,11,11,7,9,9,10,11,12,10,12,11,9,11,11,11,12,13,12,14,13,9,11,11,12,13,14,11,13,12,8,10,10,10,11,11,10,11,11,10,11,11,11,13,13,11,13,13,10,11,10,11,13,12,11,13,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,8,8,5,7,7,9,9,5,7,7,9,9,6,8,8,11,11,6,8,8,11,11,6,7,7,9,9,7,8,9,10,11,7,9,9,11,10,8,9,10,12,12,8,10,10,12,12,6,7,7,9,9,7,9,9,10,10,7,9,8,11,10,8,10,10,12,12,8,10,9,12,12,8,9,9,11,11,9,10,10,12,12,9,11,11,12,13,11,12,12,13,14,11,12,12,14,14,8,9,9,11,11,9,11,10,13,12,9,10,10,13,12,11,12,12,14,14,11,12,12,14,13,7,8,9,10,10,8,10,10,11,11,8,10,10,11,11,10,11,11,13,13,10,11,11,13,13,8,9,10,10,11,10,11,11,12,13,10,11,11,12,12,11,11,12,13,14,11,12,12,14,14,8,10,10,11,11,10,11,11,12,13,10,11,11,12,12,11,12,12,14,14,11,12,12,14,14,10,11,11,12,13,11,12,12,13,14,12,13,13,14,14,13,13,14,14,16,13,14,14,15,16,10,11,11,13,13,12,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,16,15,7,8,8,10,10,8,10,10,11,11,8,10,10,12,11,10,11,11,13,13,10,11,11,13,13,8,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,14,14,11,12,12,14,14,8,10,9,11,10,10,11,11,13,12,10,11,10,13,12,11,12,12,14,14,11,12,11,14,13,10,11,11,13,13,11,12,12,14,14,12,12,12,14,14,13,14,14,15,16,13,14,14,15,15,10,11,11,13,12,12,12,12,14,14,11,12,12,14,13,13,14,14,16,15,13,14,13,16,14,10,11,11,13,13,12,12,13,14,15,12,13,13,14,15,13,14,15,15,16,13,14,14,16,16,11,12,13,14,14,13,13,14,15,16,13,14,14,15,16,14,15,15,16,17,14,15,16,17,17,11,12,12,14,14,13,14,14,15,16,13,14,14,15,15,14,15,15,16,18,14,15,15,17,16,13,14,15,15,16,15,15,16,16,18,15,15,15,17,17,16,16,17,17,18,16,16,16,18,18,14,14,14,16,16,15,15,15,16,17,15,15,15,16,17,16,17,17,18,18,16,16,17,18,17,10,11,11,14,13,12,13,13,15,14,11,13,13,15,14,13,15,15,16,16,13,14,14,16,16,11,12,12,14,14,13,13,13,15,15,13,14,13,15,15,15,15,15,17,16,14,15,15,17,16,11,13,12,14,14,13,14,13,15,15,13,14,13,15,15,14,15,15,17,17,14,15,15,17,16,14,14,14,16,16,14,15,15,17,17,15,15,16,17,16,17,16,17,18,18,16,17,17,18,18,13,14,14,16,15,15,15,15,17,17,14,16,15,16,16,17,17,17,18,18,16,17,16,20,19,6,8,8,10,10,8,10,10,11,11,8,10,10,12,11,10,11,11,13,13,10,11,11,13,13,8,9,10,11,11,10,11,11,12,12,10,11,11,13,12,11,12,12,14,14,11,12,12,14,14,9,10,10,11,11,10,11,11,12,12,10,11,11,13,12,11,12,12,14,14,11,12,12,14,14,10,10,11,12,13,11,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,15,16,10,11,11,13,13,12,12,12,14,14,12,13,12,14,14,13,14,14,16,16,13,14,14,15,15,9,10,10,11,12,10,11,11,12,13,10,11,11,13,12,11,12,12,14,14,11,12,12,14,14,10,10,11,12,13,11,12,12,13,14,11,12,12,13,14,12,13,14,14,15,12,13,13,15,15,10,11,11,13,13,11,12,12,13,14,11,12,12,14,13,12,13,13,15,15,12,13,13,15,15,12,11,13,12,14,13,13,14,14,15,13,13,14,14,15,14,15,15,16,17,14,15,15,16,17,12,13,12,14,14,13,14,14,15,15,13,14,14,15,15,14,15,15,16,17,14,15,15,16,17,8,9,9,11,11,10,11,11,12,13,10,11,11,13,12,12,13,13,14,15,11,13,12,15,14,9,11,10,12,12,11,12,12,13,14,11,12,12,14,13,13,13,14,15,15,13,14,13,15,15,9,11,11,12,12,11,12,12,14,14,11,12,12,14,13,13,14,14,15,16,13,14,13,15,14,11,12,12,14,13,12,13,13,14,15,13,14,14,16,15,15,15,15,15,16,15,16,15,17,17,11,12,12,14,14,13,14,14,15,15,12,13,13,15,14,15,15,15,17,17,14,15,15,17,15,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,16,16,12,13,13,14,15,13,14,14,16,16,14,14,14,15,16,15,16,16,17,17,15,16,16,17,17,12,13,13,15,15,14,14,14,16,16,14,14,15,16,16,15,16,16,17,17,15,16,16,17,17,14,15,15,15,16,15,15,16,16,18,15,16,16,17,17,17,17,17,18,18,16,17,17,19,18,14,15,15,16,17,15,16,16,17,17,15,16,16,18,17,16,17,17,19,18,17,17,17,19,18,10,12,12,14,14,13,13,14,15,15,12,14,13,16,15,15,15,15,17,17,14,15,15,17,16,12,13,13,15,14,13,14,14,16,16,14,14,15,17,16,15,16,16,17,17,15,16,16,18,17,12,13,13,15,14,14,15,15,16,16,13,15,14,16,15,16,17,16,19,17,15,16,16,17,17,14,15,15,17,15,15,16,15,17,17,16,17,16,18,17,17,17,18,18,18,17,17,18,19,18,14,15,15,16,16,15,16,16,17,18,15,16,16,18,16,17,18,18,19,19,17,18,17,18,19,6,8,8,10,10,8,10,10,11,11,8,10,10,12,11,10,11,11,13,13,9,11,11,13,13,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,14,14,11,12,12,14,14,8,10,9,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,14,14,11,12,12,14,14,10,11,11,13,13,11,12,13,14,14,12,12,12,14,14,13,14,14,15,16,13,14,14,16,16,10,11,10,13,12,11,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,16,15,8,9,9,11,11,10,11,11,12,13,10,11,11,13,12,12,13,13,14,15,12,13,13,15,14,10,11,11,12,12,11,11,12,13,14,11,12,12,14,14,13,13,14,15,16,13,14,14,15,15,9,10,11,12,12,11,12,12,13,14,11,12,12,14,13,13,14,14,15,16,12,14,13,15,15,11,12,12,14,14,12,13,13,14,15,13,14,14,16,15,14,15,15,15,17,15,15,16,16,17,11,12,12,13,14,13,14,14,15,15,12,13,13,15,14,15,16,15,16,17,14,16,15,17,15,9,10,10,12,11,10,11,11,13,13,10,11,11,13,12,11,12,12,14,14,11,12,12,14,14,10,11,11,12,13,11,12,12,13,14,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,10,11,10,13,12,11,12,12,13,13,11,12,12,14,13,12,13,13,15,15,12,13,13,15,14,12,13,12,14,14,13,14,14,15,15,13,14,14,15,15,14,15,15,16,16,14,15,15,16,16,11,13,11,14,12,13,13,13,15,14,12,14,13,15,14,15,15,15,17,16,14,15,14,17,15,10,12,12,14,14,13,13,14,15,16,12,14,13,15,15,14,15,16,17,17,14,15,16,17,17,12,13,13,14,15,13,14,14,16,16,14,14,15,16,16,16,16,16,17,17,16,16,16,18,18,12,13,13,14,15,14,14,15,16,16,13,14,14,16,15,16,16,16,17,18,15,16,16,17,17,14,15,15,16,16,15,15,16,17,17,15,16,16,17,18,17,18,18,18,19,17,18,18,19,19,14,15,15,16,16,15,16,16,17,17,15,16,16,17,17,17,17,18,20,18,17,18,17,18,18,11,12,12,14,14,12,13,14,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,17,12,13,13,15,15,14,14,14,16,16,14,14,14,16,16,15,16,16,17,17,15,16,16,17,17,12,13,13,15,14,13,14,14,16,15,14,15,14,16,15,15,16,16,17,17,15,16,16,17,16,14,15,15,16,16,15,16,16,17,17,16,16,16,17,17,17,17,17,19,18,17,17,17,18,19,14,15,14,17,15,15,16,16,17,17,15,16,15,17,17,16,17,17,18,18,16,17,17,18,17,6,11,11,13,13,11,12,12,14,14,11,12,12,14,14,13,14,14,16,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,17,18,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,16,16,13,14,14,15,16,14,15,15,16,17,14,15,15,17,16,15,16,17,18,17,16,16,16,18,17,14,14,15,16,16,14,15,15,18,16,14,15,15,17,16,16,17,17,18,18,16,17,16,18,17,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,16,16,12,13,13,15,15,13,14,14,15,16,13,14,14,16,16,15,16,16,17,17,15,15,16,17,17,12,13,13,15,15,14,14,14,16,16,13,14,14,16,16,15,16,16,17,17,15,16,16,17,17,14,14,15,15,16,15,15,16,16,17,15,15,16,16,17,16,17,17,17,18,16,17,17,18,18,14,15,15,16,16,15,16,16,17,17,15,16,16,17,17,17,17,17,18,19,17,17,17,18,18,10,12,12,14,14,12,13,14,15,16,13,14,13,15,15,14,15,15,17,17,14,15,16,17,17,12,13,13,15,15,13,14,14,15,15,14,15,14,16,16,15,16,16,17,18,15,17,16,18,17,12,13,13,15,15,14,14,14,16,16,13,14,14,16,15,15,16,16,17,18,15,16,16,17,17,14,14,14,16,16,15,15,16,17,17,15,16,16,17,17,17,17,17,18,20,17,17,17,19,19,14,15,15,16,16,15,17,16,18,18,15,16,15,17,16,17,18,19,19,19,17,17,17,18,17,13,14,14,16,16,14,15,15,17,17,14,15,15,16,17,15,17,17,18,18,16,16,17,18,17,14,15,15,16,17,15,16,16,17,17,15,16,16,17,17,16,17,17,18,18,17,17,17,18,19,14,15,15,16,17,15,16,16,17,17,15,16,16,17,17,16,17,17,18,18,17,17,17,19,19,16,16,16,16,18,16,17,17,17,18,17,17,17,17,19,18,18,18,19,19,18,18,18,19,20,16,16,17,18,18,16,18,17,18,18,17,17,17,20,19,18,18,19,21,20,18,20,18,18,19,10,12,12,14,14,14,14,15,15,17,14,15,14,17,15,16,16,17,18,18,16,18,17,19,18,12,14,13,16,15,14,14,15,15,17,15,16,16,18,17,16,17,18,17,19,17,19,18,20,19,12,13,13,15,15,15,16,17,17,18,14,16,14,17,16,17,18,18,19,19,17,17,17,18,18,15,15,15,17,16,15,16,16,17,17,17,19,17,18,18,18,18,18,18,21,19,20,19,20,19,15,15,16,16,17,17,17,18,20,20,15,16,16,18,17,18,19,19,19,20,18,19,18,19,17,6,11,11,13,13,11,12,12,14,14,11,12,12,14,14,13,14,14,16,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,17,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,15,16,16,13,14,14,16,16,15,15,15,16,16,14,15,15,17,16,16,17,17,19,18,16,17,17,18,18,13,14,14,15,15,14,15,15,17,16,14,15,15,17,16,16,17,16,17,18,15,16,16,18,18,10,12,12,14,14,12,13,14,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,17,16,12,13,13,15,15,14,14,14,15,16,14,15,15,16,16,15,16,16,17,18,16,16,16,18,18,12,13,13,14,14,14,14,15,16,16,13,14,14,16,16,15,16,16,18,18,15,16,16,19,17,14,15,15,16,17,15,15,16,17,17,16,17,16,17,18,17,17,18,17,19,17,17,18,18,19,14,14,14,16,16,15,16,16,17,17,15,16,15,17,17,17,17,17,19,20,16,17,17,18,18,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,14,16,16,12,13,13,15,15,14,14,14,16,16,13,14,14,16,16,15,16,16,18,17,15,16,16,17,17,12,13,13,15,15,13,14,14,16,16,13,14,14,16,16,15,16,15,18,18,15,16,15,17,16,14,15,15,16,16,15,16,16,17,17,15,16,16,18,17,16,17,17,18,18,16,17,17,18,18,14,15,14,16,15,15,16,15,17,17,15,16,15,17,16,16,17,17,18,18,17,17,16,19,17,10,12,12,14,15,14,14,15,15,17,14,15,14,17,15,16,17,17,17,18,16,17,17,18,18,12,14,13,16,15,14,14,16,15,17,15,17,16,18,17,17,17,18,17,19,18,18,18,19,18,12,13,14,15,15,15,16,16,16,17,14,15,14,18,16,18,17,18,19,19,17,18,17,20,18,15,15,15,17,17,15,16,16,17,18,18,18,18,19,18,18,18,19,18,20,18,19,19,21,21,15,15,16,16,17,17,18,18,18,18,15,16,16,17,17,17,19,20,19,20,17,18,18,19,17,13,14,14,16,16,14,15,15,16,17,14,15,15,17,17,16,16,17,17,18,15,17,16,17,17,14,15,15,16,16,15,16,16,17,17,16,16,16,17,17,17,17,18,17,18,17,17,17,18,20,14,15,15,17,16,15,16,16,17,17,15,16,16,17,17,17,17,17,18,18,16,17,17,19,18,16,16,17,17,17,17,18,17,19,18,17,17,17,18,19,17,20,18,19,21,17,19,18,19,20,15,17,15,17,16,16,17,17,18,18,17,17,17,18,17,18,19,18,19,21,18,18,17,19,19,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,4,8,8,4,8,8,5,7,8,8,9,10,8,10,10,5,8,7,8,10,10,8,10,9,7,9,9,9,11,11,9,11,11,9,11,11,11,12,13,11,13,13,9,11,11,11,13,13,11,13,13,7,9,9,9,11,11,9,11,11,9,11,11,11,13,13,11,13,13,9,11,11,11,13,13,11,13,12,5,9,9,9,11,11,9,11,11,9,11,11,11,12,13,11,13,13,9,11,11,11,13,13,11,13,13,9,11,12,11,13,13,12,13,13,11,12,13,13,14,15,13,14,14,12,13,13,13,15,15,13,15,14,8,10,10,11,13,13,12,14,13,11,12,12,13,14,15,13,15,15,11,12,12,13,15,15,13,15,14,5,9,9,9,11,11,9,11,11,9,11,11,11,13,13,11,13,13,9,11,10,11,13,13,11,13,12,8,10,10,11,13,13,12,13,13,11,12,12,13,14,15,14,15,15,10,12,12,13,14,15,13,15,14,9,12,11,12,13,13,11,13,13,12,13,13,13,15,15,13,14,15,11,13,12,13,15,14,13,15,14,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,2,0,0,0,64,0,0,0,72,46,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,104,242,5,0,0,0,0,0,0,0,0,0,144,242,5,0,0,0,0,0,0,0,0,0,184,242,5,0,224,242,5,0,0,0,0,0,0,0,0,0,8,243,5,0,48,243,5,0,0,0,0,0,0,0,0,0,88,243,5,0,128,243,5,0,0,0,0,0,0,0,0,0,168,243,5,0,208,243,5,0,128,243,5,0,0,0,0,0,248,243,5,0,32,244,5,0,72,244,5,0,112,244,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,40,242,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,7,14,16,17,18,20,21,7,4,6,8,11,12,14,16,13,5,4,4,8,9,11,13,15,8,4,3,5,7,9,10,17,11,8,4,4,6,9,9,17,11,9,7,6,5,7,8,19,13,11,9,9,7,8,8,21,15,13,11,10,8,8,7,5,0,0,0,243,0,0,0,64,45,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,56,46,6,0,0,0,0,0,5,0,0,0,53,12,0,0,240,32,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,40,45,6,0,0,0,0,0,5,0,0,0,243,0,0,0,232,31,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,224,32,6,0,0,0,0,0,5,0,0,0,243,0,0,0,224,30,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,216,31,6,0,0,0,0,0,5,0,0,0,243,0,0,0,216,29,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,208,30,6,0,0,0,0,0,5,0,0,0,53,12,0,0,136,17,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,29,6,0,0,0,0,0,5,0,0,0,53,12,0,0,56,5,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,112,17,6,0,0,0,0,0,1,0,0,0,7,0,0,0,16,5,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,24,5,6,0,0,0,0,0,5,0,0,0,243,0,0,0,8,4,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,0,5,6,0,0,0,0,0,5,0,0,0,243],"i8",L3,x.GLOBAL_BASE+379856),d3([3,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,248,3,6,0,0,0,0,0,5,0,0,0,243,0,0,0,248,1,6,0,1,0,0,0,0,106,120,225,0,106,120,97,2,0,0,0,0,0,0,0,240,2,6,0,0,0,0,0,5,0,0,0,53,12,0,0,168,245,5,0,1,0,0,0,0,136,83,225,0,136,51,97,3,0,0,0,0,0,0,0,224,1,6,0,0,0,0,0,1,0,0,0,25,0,0,0,32,245,5,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,64,245,5,0,0,0,0,0,1,0,0,0,25,0,0,0,152,244,5,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,184,244,5,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,4,5,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,7,7,12,12,5,11,12,12,12,5,12,11,12,12,12,12,12,12,12,12,13,13,13,13,7,11,11,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,7,13,10,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,7,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,11,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,11,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,7,7,7,8,7,8,7,7,7,8,7,8,8,8,8,8,7,8,7,8,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,9,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,9,9,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,8,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,8,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,5,7,7,5,7,7,5,7,7,7,7,9,7,9,9,6,7,7,8,9,9,7,9,7,6,8,8,8,9,10,8,9,9,8,9,10,9,9,10,10,10,10,8,9,9,10,10,11,9,10,10,6,8,8,8,9,9,8,10,9,8,9,9,9,10,10,10,11,10,8,10,9,10,11,10,9,11,9,6,8,8,7,9,9,7,9,9,7,9,9,8,9,10,9,10,10,8,9,9,9,10,10,9,10,9,7,9,9,9,9,10,9,10,10,9,9,10,10,9,11,10,11,11,9,10,10,10,11,11,10,11,10,6,9,8,9,9,10,9,10,9,8,10,10,9,9,10,10,11,11,9,10,10,10,11,11,9,11,9,6,8,8,7,9,9,7,9,9,8,9,9,9,9,10,9,10,10,7,9,9,9,10,10,8,10,9,6,8,9,9,9,10,9,10,9,9,10,10,9,9,11,10,11,11,8,9,10,10,11,11,9,10,9,7,9,9,9,10,10,9,10,9,9,10,10,10,10,11,10,11,11,9,10,9,10,11,11,10,11,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,9,9,5,7,8,10,11,5,8,7,11,10,8,10,11,12,13,8,11,10,13,12,6,7,8,10,11,7,8,10,10,12,8,9,9,12,12,10,10,12,12,14,10,12,12,14,13,6,8,7,11,10,8,9,9,12,12,7,10,8,12,11,10,12,12,13,14,10,12,10,14,12,9,10,11,11,13,10,10,11,11,13,11,12,12,13,14,12,12,13,11,15,13,14,14,15,14,9,11,10,13,11,11,12,12,13,13,10,11,10,13,11,13,14,14,15,15,12,13,12,15,11,6,8,9,11,12,8,9,11,12,13,8,10,10,13,13,11,12,13,14,15,11,12,13,14,14,9,9,10,12,13,10,10,12,12,14,10,11,11,13,14,12,12,14,14,15,13,13,14,15,15,9,10,10,13,13,10,11,11,13,14,10,11,10,14,13,13,13,14,15,15,12,14,13,15,14,12,12,13,13,14,12,13,14,13,15,13,14,14,15,15,14,14,15,14,16,15,15,15,16,16,12,13,13,14,14,13,14,14,15,15,12,14,13,15,14,14,15,15,16,16,14,15,14,16,14,6,9,8,12,11,8,10,10,13,13,8,11,9,13,12,11,12,12,14,14,11,13,12,15,14,9,10,10,13,13,10,10,11,13,14,10,12,11,14,13,12,13,14,14,15,13,13,13,15,14,9,10,9,13,12,10,11,11,14,13,10,12,10,14,12,13,14,13,15,15,12,14,12,15,14,12,13,13,14,14,13,13,13,14,15,13,14,14,15,15,14,14,15,14,16,14,15,15,16,16,12,13,12,14,13,13,14,14,15,15,12,14,13,15,13,15,15,15,16,16,14,15,14,16,14,11,12,12,13,14,12,13,14,14,16,12,13,13,15,15,14,14,16,15,17,14,15,15,16,16,12,13,14,14,15,13,13,15,15,16,14,14,14,15,16,15,15,16,16,17,15,15,16,16,17,13,13,13,15,15,14,14,15,15,16,13,14,14,15,16,15,15,16,16,17,15,16,15,17,16,14,15,15,16,16,15,15,16,16,17,15,16,16,17,17,16,16,17,16,18,16,17,17,17,17,15,15,15,16,16,15,16,16,17,17,15,16,16,17,16,16,17,17,18,18,16,17,16,17,16,11,12,12,15,13,13,13,13,15,15,12,14,13,16,14,14,15,15,16,16,14,15,14,17,15,13,13,13,15,14,13,14,14,16,15,14,14,14,16,15,15,15,16,16,17,15,16,15,17,16,12,14,13,15,14,14,14,14,16,15,13,14,13,16,15,15,16,16,17,16,15,16,15,17,16,15,15,15,16,16,15,15,16,16,17,15,16,16,17,17,16,16,17,17,17,17,17,17,18,17,14,15,15,16,16,15,16,16,17,16,15,16,15,17,16,17,17,17,18,17,16,17,16,18,16,6,9,9,12,12,8,10,10,12,13,8,10,10,13,12,10,12,12,14,15,11,13,12,15,14,8,9,10,12,13,9,10,11,13,14,10,11,11,14,13,12,12,13,14,15,12,13,13,15,15,8,10,10,13,13,10,11,11,13,14,10,12,10,14,13,12,13,13,15,15,12,14,13,15,14,11,12,12,13,14,12,12,13,13,15,12,13,13,15,15,14,13,15,14,16,14,15,15,16,16,12,13,13,14,14,13,13,14,15,14,12,14,13,15,14,14,15,15,16,15,14,15,14,16,14,7,9,10,12,12,9,10,11,13,14,9,11,10,13,13,11,12,13,14,15,12,13,13,15,14,9,10,11,12,13,10,10,12,13,14,11,11,12,14,14,12,12,14,14,15,13,13,14,15,15,9,11,11,13,13,11,12,12,14,14,10,12,10,14,13,13,14,14,15,15,13,14,13,16,14,12,12,13,14,15,13,13,14,14,16,13,14,14,15,15,14,14,15,14,17,14,15,15,16,16,12,13,13,15,14,13,14,14,15,15,13,14,13,16,14,15,15,15,16,16,14,15,14,16,14,7,10,9,13,12,10,11,12,12,14,10,12,11,14,12,12,13,13,14,15,12,14,13,15,14,9,11,10,13,13,10,11,12,13,14,12,13,12,15,13,13,13,14,13,15,13,14,14,16,15,10,11,11,13,13,12,12,13,14,14,11,12,11,14,13,14,14,14,15,16,13,14,13,16,13,12,13,13,14,14,12,13,13,14,15,14,14,14,15,15,14,13,15,13,16,15,15,15,17,16,13,13,13,14,14,14,14,14,15,15,12,13,13,15,14,15,16,16,16,16,14,15,14,16,13,11,12,13,14,15,12,13,14,15,16,13,14,14,15,15,14,14,15,15,17,14,15,15,16,16,13,13,14,14,15,13,13,15,14,16,14,14,15,15,16,15,14,16,15,17,15,16,16,16,17,13,14,14,15,15,14,14,15,16,16,13,15,14,16,16,15,16,16,17,17,15,16,15,17,16,14,15,15,15,17,15,15,16,15,17,15,16,16,16,17,16,16,17,16,18,17,17,17,17,18,15,15,15,17,16,15,16,16,17,17,15,16,16,17,16,16,17,17,18,18,16,17,16,18,17,11,13,12,15,14,13,13,14,15,15,13,14,13,16,14,15,15,15,16,16,15,16,15,17,16,13,14,13,15,14,13,13,14,15,15,14,15,14,16,15,15,15,16,16,16,15,16,15,18,16,13,14,14,15,15,14,15,15,15,16,13,15,13,16,15,15,16,16,17,17,15,16,15,17,16,15,15,15,16,16,15,15,15,16,17,16,16,16,17,16,16,16,17,16,17,17,17,17,18,17,15,15,15,16,16,16,16,16,17,17,15,16,15,17,16,17,17,17,18,18,16,17,16,17,15,6,9,9,12,12,8,10,10,12,13,8,10,10,13,12,11,12,13,14,15,10,12,12,14,14,9,10,10,13,13,10,10,12,13,14,10,11,11,14,13,12,13,14,14,15,12,13,13,15,15,8,10,9,13,12,10,11,11,13,14,9,11,10,14,13,12,13,13,15,15,12,13,12,15,14,12,13,13,14,14,12,13,13,14,15,13,14,14,14,15,14,14,15,14,16,14,15,15,16,16,11,12,12,14,13,13,13,13,15,15,12,13,12,15,13,14,15,15,16,16,14,15,14,16,14,7,9,10,12,13,10,10,12,12,14,10,12,11,14,13,12,13,14,14,15,12,13,13,15,14,10,11,11,13,13,11,11,12,13,14,12,13,12,14,14,13,13,14,13,16,14,14,14,15,15,9,10,11,13,14,12,12,13,13,15,10,12,10,14,13,13,14,14,15,16,13,14,13,15,13,13,14,13,14,15,12,13,13,14,15,14,14,14,15,15,14,13,15,13,16,15,16,16,16,16,12,13,13,14,14,14,14,14,15,15,12,13,13,15,14,15,15,16,16,16,14,15,13,16,13,7,10,9,12,12,9,10,11,13,13,9,11,10,14,13,12,13,13,14,15,11,13,12,15,14,9,11,11,13,13,10,10,12,13,14,11,12,12,14,14,13,13,14,14,16,13,14,14,16,15,9,11,10,13,12,11,12,11,14,14,10,12,10,14,13,13,14,13,15,15,12,14,12,16,14,12,13,13,14,15,13,13,14,14,16,13,14,14,15,15,14,14,15,14,16,15,15,15,16,16,12,13,12,15,14,13,14,14,15,15,12,14,13,16,14,14,15,15,16,16,14,15,14,17,14,11,12,13,14,15,13,13,14,14,16,13,14,13,15,15,15,15,16,16,17,15,15,15,16,16,13,14,13,15,15,13,13,15,15,16,14,15,15,16,16,15,15,16,15,17,16,16,16,17,17,13,13,14,14,15,14,14,15,15,16,13,14,13,15,15,15,16,16,16,17,15,16,15,16,16,15,15,15,16,16,15,15,16,16,17,16,16,16,17,17,16,16,17,16,18,17,17,17,18,18,15,15,15,16,16,16,16,16,17,17,15,15,15,16,16,17,17,17,17,18,16,16,16,17,15,11,13,12,15,14,13,13,14,15,15,12,14,13,16,14,14,15,15,16,16,14,15,14,16,15,13,14,14,15,15,13,14,14,16,16,14,15,14,16,16,15,15,16,17,17,15,16,16,17,17,13,14,13,15,14,14,14,14,16,15,13,15,13,16,14,15,16,15,17,16,15,16,14,17,15,14,16,15,16,17,15,16,16,16,17,15,16,16,17,17,16,16,17,17,18,16,17,17,18,17,14,15,15,17,15,15,16,16,17,16,15,16,15,17,15,16,17,17,18,17,16,17,16,18,15,10,12,12,14,14,12,13,13,15,15,12,13,13,15,15,13,14,14,15,16,14,15,14,16,16,12,13,13,15,15,12,13,14,15,15,13,14,14,15,15,14,14,15,16,17,14,15,15,17,16,12,13,13,15,15,13,14,14,15,16,13,14,14,16,15,14,15,15,16,17,14,15,15,17,16,13,14,14,15,16,14,14,15,15,16,14,15,15,16,16,15,15,16,16,17,15,16,16,17,17,14,15,15,16,16,15,15,15,16,16,15,15,15,16,16,16,17,16,17,17,16,16,16,18,16,11,12,12,14,14,12,13,14,15,15,12,13,13,15,15,13,14,15,16,16,14,15,15,16,16,12,13,13,15,15,13,13,14,15,16,13,14,14,15,16,14,14,15,16,17,15,15,15,16,17,12,13,13,15,15,13,14,14,15,16,13,14,14,16,15,15,15,15,16,17,15,16,15,17,16,14,14,15,15,16,14,14,15,15,17,15,15,16,16,17,15,15,16,15,18,16,16,16,17,17,14,15,15,16,16,15,16,16,17,17,15,15,15,17,16,16,17,16,17,17,16,16,16,18,16,11,12,12,14,14,13,13,14,15,15,13,14,13,15,15,14,15,15,16,16,14,15,15,16,16,12,13,13,15,15,13,13,14,15,15,14,14,14,16,15,15,15,15,15,16,15,16,15,17,16,12,13,13,15,15,14,14,15,15,16,13,14,13,16,15,15,15,16,16,17,15,16,15,17,15,14,15,14,16,16,14,15,15,16,16,15,16,15,17,16,15,15,16,15,17,16,17,16,17,17,14,15,15,16,16,15,16,16,16,17,14,15,15,16,16,16,17,17,17,18,16,16,16,17,16,12,13,13,15,15,13,13,14,15,16,13,14,14,16,15,14,15,15,16,17,14,15,15,17,16,13,14,14,15,16,14,14,15,15,17,14,15,15,16,16,15,14,16,15,17,15,16,16,17,17,13,14,14,16,16,14,15,15,16,16,14,15,14,16,16,15,16,16,17,17,15,16,15,17,16,15,15,16,15,17,15,15,16,15,17,15,16,16,16,17,16,15,17,15,18,17,17,17,17,17,15,15,15,17,17,16,16,16,17,17,15,16,15,17,17,16,17,17,18,18,16,17,15,18,15,11,12,12,15,15,13,13,15,14,16,13,14,13,16,14,15,15,16,16,17,15,16,15,17,15,12,14,13,16,14,13,13,14,14,16,14,15,14,16,15,15,15,16,15,17,16,16,16,17,16,12,13,14,15,16,15,15,15,15,16,13,15,13,16,14,16,16,16,17,17,15,16,15,17,15,15,16,15,16,15,14,14,15,16,16,16,16,16,17,16,15,15,16,15,17,17,17,17,18,17,15,15,15,16,16,16,16,16,16,17,14,15,15,17,16,17,17,17,17,18,15,16,15,18,14,10,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,14,15,15,16,13,15,14,16,16,12,13,13,15,15,13,14,14,15,16,13,14,14,15,15,14,15,15,16,17,14,15,15,17,16,12,13,13,15,15,13,14,14,15,15,12,14,13,15,15,14,15,15,16,17,14,15,14,17,15,14,15,15,16,16,14,15,15,16,17,15,15,15,17,16,16,16,16,16,17,16,16,16,17,17,13,14,14,16,15,14,15,15,16,16,14,15,14,16,16,15,16,16,17,17,15,16,15,17,16,11,12,12,14,15,13,13,14,14,15,13,14,13,15,15,14,15,15,16,16,14,15,15,16,16,12,14,13,15,15,13,13,14,15,16,14,15,14,16,15,15,15,16,15,17,15,16,16,17,16,12,13,13,15,15,14,14,15,15,16,13,14,13,16,15,15,15,16,16,17,15,15,15,16,16,14,15,15,16,16,14,15,15,16,16,15,16,16,17,17,16,16,16,16,17,16,17,17,18,17,14,14,15,15,16,15,15,16,16,17,14,15,15,16,16,16,16,16,17,17,15,16,15,17,15,11,12,12,14,14,12,13,14,15,15,12,13,13,15,15,14,15,15,16,16,13,15,14,16,16,12,13,13,15,15,13,14,14,15,16,13,14,14,16,16,15,15,15,16,17,15,15,15,17,16,12,13,13,15,15,13,14,14,16,15,13,14,13,16,15,15,16,15,17,17,14,15,14,17,16,14,15,15,16,16,15,15,16,16,17,15,16,16,17,17,16,16,16,16,18,16,17,16,18,17,14,15,14,16,15,15,15,15,17,16,14,15,14,17,15,16,17,16,17,17,15,16,15,17,15,11,12,12,15,15,13,13,15,14,16,13,15,13,16,14,15,15,16,15,17,15,16,15,17,16,12,14,13,15,15,13,13,15,15,16,15,15,15,16,15,15,15,16,15,17,16,16,16,17,16,12,13,14,15,16,14,14,15,15,16,13,14,13,16,14,16,16,16,16,17,15,16,15,17,15,15,16,15,16,16,14,15,15,16,16,16,16,16,17,16,15,15,16,15,17,17,17,17,18,17,15,15,15,15,16,16,16,16,16,17,14,15,14,16,15,17,17,17,17,18,15,16,15,17,15,12,13,13,15,15,13,14,14,15,16,13,14,14,16,15,14,15,15,16,17,14,15,15,17,16,13,14,14,16,15,13,14,15,16,16,14,15,15,16,16,15,15,16,16,17,15,16,16,17,17,13,14,13,16,15,14,15,15,16,16,13,15,14,16,15,15,16,16,17,17,15,16,14,17,15,15,15,16,17,17,15,15,16,16,17,16,16,16,17,17,16,15,17,16,18,17,17,17,18,18,15,15,15,17,14,16,16,16,17,16,15,16,15,17,15,16,17,17,18,17,16,17,15,18,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,7,9,9,10,10,9,10,10,10,11,9,10,10,11,10,9,10,10,11,11,9,10,10,11,11,9,10,10,11,11,10,10,10,11,11,10,10,10,11,11,10,11,11,11,11,10,11,11,11,11,9,10,10,11,11,10,10,10,11,11,9,10,10,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,10,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,9,10,10,11,11,10,10,11,11,11,10,10,11,11,11,10,11,11,11,12,10,11,11,12,12,10,10,11,11,11,10,11,11,11,12,11,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,11,11,11,11,11,11,11,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,10,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,11,10,11,11,11,11,10,11,11,11,12,11,11,11,12,12,11,11,12,12,12,11,11,11,12,12,10,11,10,11,11,11,11,11,12,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,10,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,13,12,13,12,9,10,10,11,11,10,10,11,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,11,11,11,10,11,11,11,12,10,11,11,12,12,11,11,12,12,12,11,11,11,12,12,10,11,10,11,11,11,11,11,12,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,10,11,11,11,10,11,11,12,12,10,11,11,12,12,11,11,11,12,12,11,11,12,12,12,10,11,11,11,12,11,11,12,12,12,11,11,12,12,12,11,11,12,12,12,11,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,11,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,10,11,11,12,11,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,9,10,10,11,11,10,10,11,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,10,11,11,11,11,10,11,11,12,12,11,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,11,10,11,11,10,11,11,12,12,10,11,11,12,11,11,12,11,12,12,11,11,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,11,12,10,11,11,12,11,11,11,12,12,12,11,11,12,12,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,12,12,12,12,12,12,12,13,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,12,10,11,11,12,12,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,12,13,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,13,12,13,12,12,12,12,13,12,12,13,12,13,12,13,13,12,13,12,12,12,12,12,12,13,13,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,13,13,13,12,12,12,12,12,12,12,13,12,13,12,12,12,12,13,12,12,13,13,13,12,12,13,12,13,12,10,11,11,12,12,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,11],"i8",L3,x.GLOBAL_BASE+390097),d3([12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,12,13,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,13,13,13,12,12,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,13,12,13,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,13,12,13,12,12,12,12,12,12,12,12,12,12,13,12,13,12,13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,13,12,13,12,12,13,12,13,12,12,13,12,13,12,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,4,7,8,4,8,7,5,7,8,7,7,10,8,9,9,5,7,7,8,9,9,7,10,7,5,7,8,8,9,11,8,10,10,8,9,10,10,10,12,11,12,12,8,10,10,10,12,12,10,12,11,5,8,7,8,10,10,8,11,9,8,10,10,10,11,12,10,12,12,8,10,9,11,12,12,10,12,10,5,8,8,7,10,10,8,11,10,7,9,10,9,10,12,10,12,12,8,10,10,10,12,12,10,12,11,7,9,10,9,11,12,10,12,11,9,9,12,10,10,13,12,12,13,10,12,11,12,13,13,11,13,11,7,10,9,10,11,12,10,13,11,9,11,11,11,11,13,12,14,13,10,11,11,12,14,14,11,14,11,5,8,8,8,10,11,7,10,10,8,10,10,10,11,12,10,12,12,7,10,9,10,12,12,9,12,10,7,9,10,10,11,13,10,12,11,10,11,11,11,11,14,12,14,14,9,11,11,12,13,14,11,13,11,7,10,9,10,11,12,9,12,10,10,11,12,11,11,13,12,13,13,9,12,9,12,13,12,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,6,7,7,7,7,8,7,8,7,7,7,8,7,8,8,8,8,8,7,8,7,7,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,8,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,5,5,7,7,5,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,5,7,8,7,9,10,8,9,9,8,9,10,9,10,12,10,11,11,8,10,9,10,11,12,9,11,10,5,8,7,8,10,9,7,10,9,8,9,10,9,10,11,10,12,11,8,10,9,10,11,11,9,12,10,5,8,8,7,9,10,8,10,9,7,9,10,9,10,11,9,11,11,8,10,9,10,11,11,10,12,10,7,9,10,9,10,12,9,11,11,9,9,12,11,10,13,11,11,13,10,12,11,11,13,13,11,13,12,7,9,9,9,11,11,9,12,11,9,11,10,10,11,12,11,13,12,9,11,11,12,13,13,11,13,11,5,8,8,8,9,10,7,10,9,8,9,10,10,10,12,10,11,11,7,10,9,9,11,11,9,11,10,7,9,9,9,11,12,9,11,11,9,11,11,11,11,13,12,13,13,9,10,11,11,12,13,10,12,11,7,10,9,9,11,11,9,12,10,10,11,12,11,12,13,12,13,13,9,12,9,11,13,11,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,9,9,6,8,8,10,10,6,8,8,10,10,8,9,10,12,12,8,10,9,12,12,6,8,8,10,10,8,8,9,10,11,8,9,9,11,11,9,10,11,12,13,10,11,11,13,13,6,8,8,10,10,8,9,9,11,11,8,9,8,11,10,10,11,11,13,13,9,11,10,13,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,12,13,13,15,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,13,13,14,15,12,13,12,15,12,7,8,8,10,11,8,9,10,11,12,8,9,9,11,11,10,11,11,13,14,10,11,11,13,13,8,9,9,11,12,9,10,11,11,13,9,10,10,12,12,11,11,12,13,15,11,12,12,14,14,8,9,9,11,11,9,10,11,12,13,9,10,10,12,12,11,12,12,14,15,11,12,12,14,14,10,11,12,13,13,11,12,12,13,14,12,12,12,14,14,13,13,14,14,16,14,14,14,16,15,10,11,11,13,13,12,12,12,14,14,11,12,12,14,13,14,14,14,15,16,13,14,13,16,14,7,8,8,11,10,8,9,9,11,11,8,10,9,12,11,10,11,11,13,13,10,11,11,14,13,8,9,9,12,11,9,10,10,12,12,9,11,10,13,12,11,12,12,13,14,11,12,12,15,14,8,9,9,12,11,9,10,10,12,12,9,11,10,13,11,11,12,12,14,14,11,12,12,14,13,10,11,11,13,13,11,12,12,13,14,12,13,12,14,14,13,13,14,14,16,13,14,14,16,15,10,11,11,13,13,12,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,16,14,9,10,11,12,13,11,11,12,12,14,11,11,12,13,14,13,13,14,14,16,13,13,14,15,15,11,11,12,12,14,12,12,13,13,15,12,12,13,13,15,14,14,15,15,16,14,14,14,15,16,11,12,12,13,14,12,12,13,14,15,12,13,12,14,14,14,14,15,15,16,14,14,14,16,16,13,13,14,15,16,14,14,15,15,16,14,15,15,16,16,15,15,16,16,18,16,16,16,17,17,13,14,14,15,15,14,14,15,16,16,14,15,14,16,16,16,16,16,17,18,15,16,16,17,16,9,11,10,13,12,11,12,11,14,13,11,12,11,14,12,13,14,13,15,14,13,14,13,16,14,11,12,12,14,13,12,12,13,14,14,12,13,12,15,14,14,14,14,16,16,14,15,14,17,15,11,12,11,14,12,12,13,12,15,13,12,13,12,15,13,14,14,14,16,15,14,15,14,16,15,13,14,14,15,15,14,14,15,16,16,14,15,14,16,16,15,15,16,16,17,16,16,16,17,17,13,14,14,16,15,14,15,15,16,16,14,15,14,17,15,16,16,16,17,17,15,16,15,18,16,7,8,8,10,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,11,11,14,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,13,14,11,12,12,14,14,8,9,9,12,11,9,10,11,12,13,9,11,10,13,12,11,12,12,14,14,11,12,12,14,13,10,11,11,13,13,11,12,12,13,14,11,12,12,14,14,13,13,14,14,16,13,14,14,16,15,10,12,11,13,13,12,12,12,14,14,11,12,12,14,13,14,14,14,15,16,13,14,14,16,14,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,11,12,13,14,11,12,12,14,14,9,9,10,11,12,10,10,11,12,13,10,10,11,12,13,12,12,13,14,15,12,12,13,14,15,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,15,15,12,13,13,15,14,11,11,12,13,14,12,12,13,13,15,12,12,13,14,15,14,14,15,14,16,14,14,15,15,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,14,14,15,15,16,16,14,15,14,17,15,8,9,9,11,11,9,10,10,12,12,9,11,10,13,12,11,12,12,14,14,11,13,12,15,13,9,10,10,12,12,10,10,11,12,13,10,12,11,13,13,12,12,13,13,15,12,13,13,15,14,9,10,10,12,12,11,11,12,13,13,10,12,10,13,12,12,13,13,15,15,12,13,13,15,13,11,12,12,14,14,12,12,13,14,14,12,13,13,15,14,13,13,14,13,16,14,15,14,16,16,11,12,12,14,14,13,13,13,15,15,12,13,12,15,14,14,15,15,16,17,14,15,13,16,13,10,11,11,13,14,11,12,12,13,15,11,12,12,14,14,13,14,14,15,16,13,14,14,16,16,11,11,12,12,14,12,12,13,13,15,12,13,13,13,15,14,14,15,14,17,14,14,15,15,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,16,13,14,14,14,16,14,14,15,14,17,14,15,15,14,17,16,16,17,15,18,16,16,17,16,18,13,14,14,16,16,14,15,15,17,16,14,15,15,17,16,16,17,17,18,18,16,17,16,18,17,10,11,11,14,13,11,12,12,14,14,11,13,12,15,14,14,14,14,16,15,14,15,14,16,15,11,12,12,14,13,12,13,13,15,14,13,14,13,15,14,14,15,15,16,16,14,15,15,17,15,11,12,12,14,14,13,13,13,15,15,12,13,13,15,14,15,15,15,17,17,14,15,15,17,15,13,14,14,16,15,14,15,15,16,16,15,15,15,17,16,16,16,16,16,17,16,17,16,18,17,14,14,14,16,16,15,15,15,16,16,14,15,14,17,16,16,17,17,17,18,16,17,16,18,16,7,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,11,10,13,12,11,12,12,13,14,11,12,12,14,14,8,9,9,11,11,9,10,10,12,12,9,10,10,13,12,11,12,12,14,14,11,12,11,14,13,10,11,12,13,13,11,12,12,13,14,12,13,12,14,14,13,13,14,14,16,13,14,14,16,15,10,11,11,13,13,11,12,12,14,14,11,12,12,14,13,13,14,14,15,16,13,14,13,16,14,8,9,9,11,11,9,10,11,12,13,9,10,10,12,12,11,12,13,13,14,11,12,12,14,14,9,10,10,12,12,10,10,11,12,13,11,12,11,13,13,12,12,13,13,15,12,13,13,15,15,9,10,10,12,12,10,11,12,13,14,10,11,10,13,12,12,13,13,14,15,12,13,12,15,13,12,12,12,14,14,12,12,13,14,15,13,13,13,15,15,14,14,15,13,16,14,15,15,16,16,11,12,12,14,14,12,13,13,14,15,12,13,12,14,14,14,14,15,16,16,13,14,13,16,14,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,14,11,12,11,14,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,14,15,12,13,13,15,14,9,10,9,12,11,10,11,10,13,12,10,11,10,13,12,12,13,12,15,14,12,13,12,15,14,11,12,12,14,14,12,13,13,14,15,12,13,13,15,15,14,14,15,15,17,14,15,15,16,16,11,12,11,14,13,12,13,12,15,14,12,13,12,15,13,14,15,14,16,15,13,15,14,17,14,10,11,11,13,14,11,12,13,13,15,11,12,12,14,14,14,14,15,15,17,13,14,14,15,16,11,12,12,14,14,12,12,13,14,15,13,13,13,15,15,14,15,15,15,17,15,15,15,16,16,11,12,12,13,14,13,13,14,14,15,12,13,13,14,15,14,15,15,16,17,14,15,15,16,16,14,14,14,16,16,14,14,15,15,17,15,15,15,17,16,16,16,17,16,18,16,17,17,18,17,13,14,14,15,16,14,15,15,16,17,14,15,15,16,16,16,17,17,17,18,16,16,16,17,16,10,11,11,14,13,11,12,12,14,14,11,12,12,15,13,13,14,14,16,15,13,14,14,16,15,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,17,16,11,12,11,14,12,12,13,13,15,13,12,13,12,15,13,14,15,15,16,15,14,15,14,17,14,13,14,14,16,16,14,15,15,16,17,14,15,15,16,17,16,16,17,17,18,16,17,17,18,18,13,14,14,16,13,14,15,15,17,14,14,15,14,17,14,16,17,16,17,16,16,17,16,18,15,8,11,11,13,13,10,12,12,14,14,11,12,12,14,14,13,13,14,15,16,13,14,14,16,15,10,11,11,14,14,11,12,12,14,15,11,12,12,15,14,13,14,14,15,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,12,15,14,14,14,15,16,16,14,15,14,16,16,12,13,13,15,15,12,13,14,15,16,13,14,14,16,16,14,15,15,16,17,15,15,16,17,17,13,14,14,16,15,14,15,15,16,16,14,15,14,16,16,16,16,16,17,17,15,16,16,18,16,10,11,11,13,14,11,12,12,14,15,11,12,12,15,14,13,14,14,16,16,13,14,14,16,16,11,11,12,14,14,12,12,13,14,15,12,13,13,15,15,14,14,15,15,17,14,14,15,16,16,11,12,12,15,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,17,16,13,12,14,14,16,13,13,15,14,17,14,13,15,15,17,15,14,16,15,18,16,15,16,16,18,13,14,14,16,16,14,15,15,17,17,14,15,15,17,16,16,17,17,18,18,16,17,16,18,17,10,11,11,14,13,11,12,12,14,14,11,13,12,15,14,13,14,14,15,16,13,14,14,16,16,11,12,12,14,14,12,13,13,14,15,12,13,13,15,15,14,14,15,15,16,14,15,15,17,16,11,12,12,14,14,13,13,13,15,15,12,13,13,15,14,14,15,15,16,17,14,15,14,17,15,13,14,13,16,15,14,14,14,15,16,14,15,14,16,16,15,15,16,16,17,16,16,16,18,17,14,14,14,16,16,15,15,15,17,16,14,15,14,17,16,16,16,17,17,18,16,17,16,18,16,11,13,13,15,15,12,13,14,15,16,12,14,14,15,15,14,15,15,16,17,14,15,15,17,17,12,13,14,14,16,13,14,14,14,16,14,14,14,15,16,15,15,16,15,18,15,16,16,17,17,13,14,14,16,16,14,14,15,16,16,14,15,14,16,16,15,16,16,17,18,15,16,16,18,17,14,14,16,13,17,15,15,16,14,18,15,15,16,14,18,16,16,18,15,19,17,17,18,16,18,15,16,15,17,17,15,16,17,18,18,16,16,16,18,17,17,18,18,19,19,17,18,17,19,18,11,12,12,15,14,13,13,14,15,16,13,14,13,16,14,15,15,15,16,17,15,16,15,17,16,12,13,13,15,14,13,13,14,15,15,14,15,14,16,15,15,15,16,16,17,16,16,16,18,17,12,13,13,15,15,14,14,15,16,16,13,14,13,16,15,16,16,16,17,18,15,16,15,17,16,14,15,14,17,15,14,15,15,16,16,15,16,15,17,16,16,15,16,15,17,17,18,17,18,17,15,15,15,16,17,16,16,16,17,17,15,16,15,17,16,17,18,18,18,18,16,17,16,18,15,8,11,11,13,13,11,12,12,14,14,10,12,12,14,14,13,14,14,15,16,13,14,13,16,15,11,12,12,14,14,12,12,13,14,15,12,13,13,15,15,14,14,15,15,16,14,14,14,16,16,10,11,11,14,14,11,12,12,14,15,11,12,12,15,14,13,14,14,16,16,13,14,14,16,15,13,14,14,15,16,14,14,15,16,16,14,15,15,16,16,15,16,16,16,18,16,16,16,17,17,12,13,13,15,15,13,14,14,16,16,12,14,13,16,15,15,16,15,17,17,14,16,15,17,16,10,11,11,13,14,11,12,13,14,15,11,13,12,14,14,14,14,15,16,16,13,14,14,16,16,11,12,12,14,14,12,13,13,14,15,13,14,13,15,15,14,15,15,16,17,14,15,15,17,16,11,12,12,14,14,12,13,13,15,15,12,13,12,15,14,14,15,15,16,17,14,15,15,16,16,14,14,14,16,16,14,14,15,16,16,15,15,15,16,16,16,16,17,16,18,16,17,17,18,18,13,13,14,15,16,14,14,15,16,17,13,14,14,16,16,16,16,17,17,18,15,16,15,17,16,10,11,11,14,13,11,12,12,14,14,11,12,12,15,14,13,14,14,16,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,17,16,11,12,11,14,14,12,13,13,15,15,12,13,12,15,14,14,15,14,16,16,14,15,14,17,16,14,14,14,16,16,14,15,15,16,17,14,15,15,17,17,16,16,17,17,18,16,17,17,18,18,13,14,12,16,14,14,15,13,17,15,13,15,13,17,14,16,16,15,18,16,15,17,14,18,15,11,12,12,14,15,13,13,14,14,16,13,14,13,15,14,15,15,16,16,17,15,16,15,17,16,12,13,13,15,15,13,13,14,15,16,14,15,14,16,16,15,15,16,15,18,16,16,16,18,17,12,13,13,15,15,14,14,15,15,16,13,14,13,15,15,16,16,16,16,18,15,16,15,17,16,15,15,15,17,16,15,15,16,16,17,16,16,16,18,17,16,16,17,15,18,17,18,17,19,18,14,14,15,15,17,15,15,16,16,17,14,15,15,16,16,17,17,18,17,19,16,17,15,17,15,11,13,12,15,15,12,14,14,15,15,12,14,13,16,15,15,15,15,17,17,14,15,15,17,16,12,14,14,16,16,14,14,15,16,16,14,14,14,16,16,15,16,17,17,18,15,16,16,18,17,12,14,13,16,14,13,14,14,16,15,13,15,14,16,14,15,16,16,17,17,15,16,15,18,15,15,15,16,17,17,15,16,16,17,18,16,16,16,18,18,17,17,18,18,19,17,17,18,19,19,14,15,14,17,13,15,16,15,18,14,15,16,15,18,14,17,18,17,18,16,16,18,16,19,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,4,7,7,4,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,6,7,8,8,9,10,8,9,10,8,9,10,10,10,12,10,11,12,8,10,10,10,11,12,10,11,11,6,8,7,8,10,9,8,10,9,8,10,10,10,11,11,10,12,11,8,10,9,10,12,11,10,12,10,5,8,8,8,10,10,8,10,10,7,9,10,9,10,11,9,11,11,8,10,10,10,12,12,10,12,11,7,9,9,9,10,11,9,11,11,9,9,11,10,11,12,10,11,12,9,11,11,11,12,12,11,12,12,7,9,9,10,11,11,10,12,11,9,11,10,11,11,12,11,13,12,10,11,11,12,13,13,11,13,11,5,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,11,7,10,9,9,11,11,9,11,10,7,9,9,10,11,12,10,11,11,10,11,11,11,11,13,12,13,13,9,10,11,12,12,13,11,12,11,7,9,9,9,11,11,9,11,10,9,11,11,11,12,12,11,12,12,9,11,9,10,12,11,10,12,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,9,15,17,20,21,22,23,5,5,7,9,11,13,17,20,9,5,5,6,8,10,15,18,11,7,5,4,6,9,13,17,14,9,7,5,6,7,10,14,17,10,8,6,6,4,5,8,20,14,13,10,8,4,3,4,23,17,16,14,12,6,4,4,2,0,0,0,64,0,0,0,112,96,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,216,47,6,0,0,0,0,0,0,0,0,0,0,48,6,0,0,0,0,0,0,0,0,0,40,48,6,0,80,48,6,0,0,0,0,0,0,0,0,0,120,48,6,0,160,48,6,0,0,0,0,0,0,0,0,0,200,48,6,0,240,48,6,0,0,0,0,0,0,0,0,0,24,49,6,0,64,49,6,0,240,48,6,0,0,0,0,0,104,49,6,0,144,49,6,0,184,49,6,0,224,49,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,152,47,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,7,14,16,17,17,18,20,6,3,5,8,10,11,13,15,13,5,3,5,8,9,11,12,15,7,4,3,5,7,9,11,16,10,7,5,6,7,9,10,17,11,8,7,7,6,8,8,19,13,11,9,9,8,8,9,20,14,13,11,10,8,9,9,5,0,0,0,243,0,0,0,104,95,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,96,96,6,0,0,0,0,0,5,0,0,0,53,12,0,0,24,83,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,80,95,6,0,0,0,0,0,5,0,0,0,243,0,0,0,16,82,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,8,83,6,0,0,0,0,0,5,0,0,0,243,0,0,0,8,81,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,0,82,6,0,0,0,0,0,5,0,0,0,243,0,0,0,0,80,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,248,80,6,0,0,0,0,0,5,0,0,0,53,12,0,0,176,67,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,79,6,0,0,0,0,0,5,0,0,0,53,12,0,0,96,55,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,152,67,6,0,0,0,0,0,1,0,0,0,7,0,0,0,56,55,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,64,55,6,0,0,0,0,0,5,0,0,0,243,0,0,0,48,54,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,40,55,6,0,0,0,0,0,5,0,0,0,243,0,0,0,40,53,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,32,54,6,0,0,0,0,0,5,0,0,0,243,0,0,0,32,52,6,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,24,53,6,0,0,0,0,0,5,0,0,0,243,0,0,0,24,51,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,16,52,6,0,0,0,0,0,1,0,0,0,25,0,0,0,144,50,6,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,176,50,6,0,0,0,0,0,1,0,0,0,25,0,0,0,8,50,6,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,40,50,6,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,4,5,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,5,5,4,10,10,5,10,10,5,10,10,10,10,10,10,10,10,5,10,10,10,10,10,9,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,7,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,7,6,7,8,6,8,7,7,7,8,7,7,8,8,8,8,7,7,7,8,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,9,8,9,8,8,8,8,8,8,9,8,9,9,8,8,8,9,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,9,9,9,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,6,5,7,8,5,8,7,5,7,7,7,7,9,8,9,9,5,7,7,8,9,9,7,9,7,6,8,8,8,9,10,8,9,9,8,9,10,9,9,11,10,10,11,8,10,9,10,10,11,9,10,10,6,8,8,8,9,9,8,10,9,8,9,10,9,10,10,10,11,10,8,10,9,10,11,10,9,11,9,6,8,8,7,9,9,8,9,9,7,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,10,9,7,9,9,9,10,10,9,10,10,9,9,10,10,9,11,10,11,11,9,10,10,10,11,11,10,11,10,6,9,8,9,10,10,9,10,9,8,10,10,9,9,10,10,11,11,9,10,10,10,11,11,9,11,9,6,8,8,8,9,9,7,9,9,8,9,9,9,9,10,9,10,10,7,9,9,9,10,10,9,10,9,6,8,9,9,9,10,9,10,10,9,10,10,9,9,11,10,11,11,8,10,10,10,11,11,9,10,9,7,9,9,9,10,10,9,10,10,9,10,10,10,10,11,10,11,11,9,10,9,10,11,11,10,11,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,9,9,5,7,8,10,11,5,8,7,11,10,8,10,11,12,13,8,11,10,13,12,6,7,8,10,11,7,8,10,10,12,8,9,9,12,11,10,10,12,11,14,10,11,12,14,13,6,8,7,11,10,8,9,9,11,12,7,10,8,12,10,10,12,12,13,14,10,12,10,14,11,9,10,11,11,12,10,10,11,11,13,11,12,12,13,13,12,11,13,11,15,13,14,13,14,14,9,11,10,12,11,11,12,12,13,13,10,11,10,13,11,13,13,14,14,14,12,13,11,14,11,7,8,9,11,12,9,9,11,12,13,9,10,10,13,12,11,12,13,13,15,11,12,12,14,14,9,10,10,12,13,10,10,12,12,14,11,11,11,13,13,12,12,13,13,15,12,13,13,15,14,9,10,10,12,13,10,11,11,13,14,10,12,11,14,13,12,13,13,14,15,12,13,13,15,14,12,12,13,13,14,12,13,13,13,15,13,14,14,14,15,14,14,15,14,16,14,15,15,16,16,12,13,13,14,14,13,13,14,15,14,12,13,13,15,14,14,15,15,15,16,14,15,14,16,14,7,9,8,12,11,9,10,10,12,13,9,11,9,13,12,11,12,12,14,14,11,13,12,15,13,9,10,10,13,12,10,11,12,13,14,10,12,11,14,13,12,13,13,14,15,13,13,13,15,14,9,10,10,13,12,11,11,11,13,13,10,12,10,14,12,13,13,13,14,15,12,13,12,15,13,12,13,13,14,14,12,13,13,14,15,13,14,13,15,15,14,14,15,14,16,14,15,15,16,15,12,13,12,14,13,13,13,13,15,14,12,13,13,15,13,14,15,15,16,15,14,15,14,16,14,11,12,12,13,14,12,13,14,14,15,12,13,13,14,15,14,14,15,15,16,14,15,15,16,16,12,13,13,14,15,13,13,14,14,16,13,14,14,15,15,15,15,16,15,17,15,15,15,16,16,12,13,13,14,15,13,14,14,15,16,13,14,14,15,15,15,15,16,16,17,15,15,15,17,16,14,15,15,16,16,15,15,16,15,16,15,16,16,16,17,16,16,17,16,18,16,16,17,18,17,14,15,15,16,16,15,16,16,16,17,15,16,15,17,16,16,17,17,17,18,16,16,16,17,16,11,12,12,14,13,12,13,13,15,14,12,14,13,15,14,14,15,15,16,16,14,15,14,16,15,12,13,13,15,14,13,14,14,15,15,13,14,14,16,15,15,15,15,16,16,15,16,15,17,16,12,13,13,15,14,13,14,14,15,15,13,14,13,16,14,15,15,15,16,16,15,15,15,17,15,14,15,15,16,16,15,15,15,16,16,15,16,16,17,17,16,16,17,17,17,16,17,17,18,17,14,15,15,16,15,15,15,16,16,16,15,15,15,17,15,17,17,17,18,17,16,17,16,18,16,6,9,9,12,12,8,10,10,12,13,9,11,10,13,12,10,12,12,14,14,11,13,12,14,14,8,10,10,12,12,9,10,11,12,14,10,11,11,13,13,12,12,13,13,15,12,13,13,15,14,9,10,10,13,13,10,11,11,13,13,10,12,10,14,13,12,13,13,14,15,12,13,13,15,14,11,12,12,13,14,12,12,13,13,15,12,13,13,14,14,13,13,14,13,16,14,15,15,16,15,11,12,12,14,14,13,13,13,15,14,12,13,13,15,14,14,15,15,16,15,14,14,14,16,14,7,9,10,12,12,9,10,11,13,13,9,11,10,13,13,11,12,13,14,15,12,13,13,15,14,9,10,11,12,13,10,10,12,13,14,11,11,12,14,14,12,12,14,14,15,13,13,13,15,15,9,11,11,13,13,11,12,12,14,14,10,12,10,14,13,13,14,13,15,15,12,14,13,15,14,12,12,13,13,15,12,12,14,13,15,13,14,14,15,15,14,14,15,14,17,14,15,15,16,16,12,13,13,15,14,13,14,14,15,15,12,14,13,15,14,14,15,15,16,16,14,15,14,16,14,7,10,10,12,12,10,11,11,12,13,10,12,10,14,12,12,13,13,14,15,12,13,13,15,14,9,11,10,13,12,10,10,12,12,14,11,13,12,14,13,13,13,14,13,15,13,14,14,15,14,10,11,11,13,13,12,12,12,13,14,10,12,10,14,12,13,14,14,15,15,13,14,13,15,13,12,13,13,14,14,12,12,13,14,15,13,14,14,15,15,13,13,14,13,15,14,15,15,16,16,12,13,13,14,14,13,14,14,15,15,12,13,13,15,13,15,15,15,16,16,13,14,13,16,13,11,12,13,14,14,12,13,14,14,15,12,13,13,15,15,14,14,15,15,17,14,15,15,16,16,12,13,14,14,15,13,13,14,14,16,13,14,14,15,16,14,14,16,15,17,15,15,16,16,16,12,13,13,15,15,13,14,14,15,16,13,14,14,15,16,15,15,16,17,17,15,16,15,17,16,14,15,15,15,16,15,15,16,15,17,15,15,16,16,17,16,16,16,16,18,16,16,17,17,17,14,15,15,16,16,15,16,16,16,17,15,16,15,17,16,16,17,17,17,17,16,17,16,18,17,11,12,12,14,14,13,13,14,14,15,13,14,13,15,14,14,15,15,15,16,14,15,15,17,15,12,13,13,15,14,13,13,14,15,15,14,15,14,16,15,15,15,15,15,16,15,16,15,17,16,12,13,13,15,15,14,14,14,15,16,13,14,13,16,15,15,15,16,16,17,15,16,15,17,15,14,15,15,16,16,14,15,15,16,16,15,16,16,17,16,15,15,16,15,17,16,17,17,18,17,14,15,15,16,16,15,16,16,16,17,14,15,15,17,16,17,17,17,17,18,15,16,16,18,15,6,9,9,12,12,9,10,11,12,13,8,10,10,13,12,11,12,13,14,14,10,12,12,14,13,9,10,10,12,13,10,10,12,13,14,10,11,11,13,13,12,13,13,14,15,12,13,13,15,14,8,10,10,12,12,10,11,11,13,13,9,11,10,13,13,12,13,13,14,15,12,13,12,15,13,11,12,12,14,14,12,13,13,13,15,13,13,13,14,15,14,14,15,14,16,14,15,15,15,15,11,12,12,14,13,12,13,13,15,14,12,13,12,15,13,14,14,15,16,16,13,14,13,16,13,7,10,10,12,12,10,10,12,12,14,10,11,11,13,12,12,13,13,13,15,12,13,13,15,14,10,11,11,13,13,10,10,12,12,14,12,12,12,14,13,13,13,14,13,15,13,14,14,15,14,9,10,11,13,13,11,12,12,13,14,10,12,10,14,12,13,13,14,14,15,13,13,12,15,13,12,13,13,14,14,12,13,13,14,15,13,14,14,15,15,13,13,15,13,16,15,15,15,16,16,12,13,13,14,14,13,14,14,15,15,12,13,12,15,14,15,15,15,16,16,13,14,13,15,13,7,10,9,12,12,9,10,11,13,13,9,11,10,13,13,11,13,13,14,15,11,13,12,15,14,9,11,11,13,13,10,10,12,13,14,11,12,12,14,14,12,13,14,14,15,13,13,13,15,15,9,11,10,13,12,11,12,11,14,14,10,12,10,14,13,13,14,13,15,15,12,14,12,15,14,12,13,13,14,15,13,13,14,14,15,13,14,14,15,15,14,14,15,14,17,14,15,15,16,16,12,13,12,15,13,13,14,14,15,15,12,14,13,15,13,14,15,15,16,16,14,15,14,16,14,11,12,12,14,14,13,13,14,14,15,13,14,13,15,15,14,15,15,16,17,14,15,15,16,15,12,13,13,15,15,13,13,14,15,16,14,14,14,16,15,15,15,16,15,17,15,16,15,17,16,12,13,13,14,15,14,14,15,15,16,13,14,13,15,15,15,15,16,16,17,15,15,15,16,15,14,15,15,16,16,14,15,15,16,17,15,16,16,17,17,16,15,16,15,17,16,17,17,17,17,14,15,15,15,16,15,15,16,16,17,14,15,15,16,16,16,16,17,17,18,15,16,15,17,15,11,13,12,14,14,12,13,13,15,15,12,14,13,15,14,14,15,15,16,16,14,15,14,16,15,12,13,13,15,15,13,14,14,15,16,13,14,14,16,16,15,15,16,16,17,15,16,15,17,16,12,13,13,15,14,13,14,14,16,15,13,14,13,16,14,15,16,15,17,16,15,15,14,18,15,14,15,15,16,16,15,15,16,16,17,15,16,15,17,16,16,16,17,17,18,16,17,17,18,17,14,15,15,16,15,15,16,15,17,16,15,15,15,17,15,16,17,17,18,17,16,17,16,18,15,10,12,12,14,14,12,13,13,14,14,12,13,13,14,14,13,14,14,15,15,13,14,14,16,15,11,12,13,14,14,12,13,13,15,15,12,13,13,15,15,13,14,15,15,16,14,15,15,16,16,12,13,13,14,14,13,13,14,15,15,13,14,13,15,15,14,15,15,16,16,14,15,14,16,15,13,14,14,15,15,13,14,14,15,16,14,14,15,16,16,14,15,15,15,17,15,16,16,17,17,13,14,14,15,15,14,15,15,16,16,14,15,15,16,16,15,16,16,16,17,15,16,15,17,16,11,12,12,14,14,12,13,13,14,15,12,13,13,15,14,13,14,14,15,16,13,14,14,16,15,12,13,13,14,15,13,13,14,15,15,13,14,14,15,15,14,14,15,15,17,14,15,15,16,16,12,13,13,15,15,13,14,14,15,15,13,14,13,15,15,14,15,15,16,17,14,15,15,16,16,13,13,14,15,16,14,14,15,15,16,14,15,15,16,16,15,15,16,15,18,15,16,16,17,17,14,15,15,16,16,15,15,15,16,16,14,15,15,17,16,16,16,16,17,17,15,16,16,17,16,10,12,12,14,14,12,13,13,14,15,12,13,13,15,14,14,14,15,15,16,14,15,14,16,15,12,13,13,15,14,13,13,14,15,15,13,14,14,15,15,14,14,15,15,16,14,15,15,16,16,12,13,13,15,15,13,14,14,15,16,13,14,13,15,14,15,15,15,16,16,14,15,15,16,15,13,14,14,16,15,14,14,14,15,16,14,15,15,16,16,15,15,16,15,17,16,17,16,17,17,14,14,15,15,16,15,15,16,16,16,14,15,14,16,15,16,16,16,17,17,15,16,15,17,15,11,13,13,14,15,13,13,14,15,15,13,14,13,15,15,14,15,15,15,16,14,15,15,17,15,13,13,14,15,15,13,14,15,15,16,14,14,14,16,16,15,14,16,15,17,15,16,16,17,16,13,14,14,15,15,14,14,14,16,16,13,15,14,16,15,15,15,16,17,17,15,16,15,17,16,14,15,15,15,16,15,15,16,15,17,15,16,16,16,17,16,16,17,15,18,16,17,17,17,17,14,15,15,16,16,15,16,16,17,17,15,16,15,17,16,16,17,17,18,18,16,17,15,18,16,10,12,12,14,14,13,13,14,14,15,13,14,13,15,14,14,15,15,15,16,15,15,15,16,15,12,13,13,15,14,12,12,14,14,15,14,15,14,16,15,15,14,15,14,17,15,16,16,17,16,12,13,13,14,15,14,14,15,15,16,13,14,12,16,14,15,16,16,16,17,15,16,14,17,15,14,15,14,16,15,14,14,15,15,15,15,16,15,17,16,15,14,16,14,16,16,17,17,18,17,14,14,15,15,16,15,16,16,16,17,14,15,14,16,15,16,16,17,17,17,15,16,14,17,14,10,12,12,14,13,12,13,13,14,14,11,13,12,14,14,13,14,14,15,16,13,14,14,16,15,12,13,13,14,14,13,13,14,15,15,13,14,13,15,15,14,14,15,15,16,14,15,15,16,16,11,13,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,13,14,14,16,15,13,14,14,15,15,14,15,15,15,16,14,15,15,16,16,15,16,16,16,17,16,16,16,17,17,13,14,14,15,15,14,15,15,16,16,13,14,14,16,15,15,16,16,17,17,15,15,15,17,15,11,12,12,14,14,12,13,13,14,15,12,13,13,15,14,14,14,15,15,16,14,14,14,16,15,12,13,13,15,14,13,13,14,15,15,13,14,14,16,15,14,15,15,15,16,15,15,15,16,16,12,13,13,14,15,13,13,14,15,15,13,14,13,15,15,15,15,15,16,16,14,15,14,16,15,14,14,15,16,16,14,15,15,15,16,15,16,15,16,16,15,15,16,15,17,16,16,16,17,17,13,14,14,15,16,14,15,15,16,16,14,14,14,16,16,16,16,16,17,17,15,15,15,17,15,11,12,12,14,14,12,13,13,14,15,12,13,13,15,14,14,14,14,15,16,13,14,14,16,15,12,13,13,15,15,13,13,14,15,16,13,14,14,15,15,14,15,15,16,17,14,15,15,17,16,12,13,13,15,14,13,14,14,15,15,13,14,13,15,15,14,15,15,16,16,14,15,14,17,15,14,15,15,16,16,14,15,15,16,17,15,15,15,17,17,15,16,16,16,17,16,17,16,17,17,13,15,14,16,15,14,15,15,16,16,14,15,14,16,15,16,16,16,17,17,15,16,15,17,15,10,12,12,14,14,13,13,14,14,15,13,14,13,15,14,14,15,15,15,17,14,15,15,16,15,12,13,13,15,14,12,12,14,14,15,14,15,14,16,15,15,14,16,15,17,15,16,16,17,16,12,13,13,14,15,14,14,15,15,16,12,14,12,15,14,15,16,16,16,17,15,16,14,17,14,14,15,14,16,16,14,14,15,15,16,15,16,16,17,16,15,14,16,14,17,16,17,17,18,17,14,14,15,15,16,15,15,16,16,17,14,15,14,16,15,16,17,17,17,18,15,16,14,17,14,11,13,13,15,14,13,13,14,15,15,12,14,13,15,15,14,15,15,15,17,14,15,14,16,15,13,14,14,15,15,13,14,15,15,16,14,15,14,16,16,15,15,16,16,17,15,16,16,17,17,13,14,13,15,15,14,14,14,16,16,13,15,14,16,15,15,16,16,17,17,15,16,14,17,15,15,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,15,17,16,17,17,17,17,18,18,14,15,15,17,15,15,16,16,17,16,15,16,15,17,15,16,17,17,17,17,16,17,15,18,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,7,8,8,10,10,8,9,9,10,11,8,9,9,10,10,9,10,10,11,11,9,10,10,11,11,8,9,9,10,10,9,9,10,11,11,9,10,10,11,11,10],"i8",L3,x.GLOBAL_BASE+400337),d3([10,11,11,11,10,11,11,11,11,8,9,9,10,10,9,10,10,11,11,9,10,9,11,11,10,11,11,11,11,10,11,10,11,11,10,10,10,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,11,12,11,11,11,11,12,10,10,10,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,12,11,11,11,11,12,11,8,9,10,11,11,9,10,11,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,10,11,11,10,10,11,11,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,10,10,11,11,10,11,11,12,12,10,11,11,12,11,11,12,12,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,8,10,9,11,11,9,10,10,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,10,10,11,11,10,11,11,12,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,11,12,11,11,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,13,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,10,11,11,12,11,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,12,12,13,13,13,13,13,13,13,13,13,8,10,10,11,11,9,10,10,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,11,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,10,10,11,11,10,11,11,12,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,11,12,10,11,11,12,12,11,11,11,12,12,11,11,11,12,12,10,10,11,11,12,11,11,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,10,11,11,12,12,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,13,12,12,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,11,12,12,12,12,12,12,12,13,12,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,11,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,10,10,11,11,9,10,10,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,10,11,11,10,11,11,11,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,11,12,12,11,12,11,12,12,10,11,11,12,12,11,11,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,10,12,11,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,11,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,11,11,12,12,11,12,12,12,12,11,12,11,13,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,12,13,13,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,11,12,12,12,11,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,12,13,12,13,12,12,13,13,13,12,12,13,13,13,12,13,13,13,13,12,12,12,12,13,12,12,13,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,11,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,13,13,13,13,12,13,13,12,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,13,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,11,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,12,13,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,11,12,12,12,12,12,13,13,11,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,13,13,13,13,13,12,13,12,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,13,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,13,13,13,13,13,13,13,13,13,12,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,8,5,8,7,5,7,8,7,8,10,8,10,10,5,8,7,8,10,10,7,10,8,6,8,9,9,10,12,9,11,11,9,10,11,11,11,13,11,13,13,9,11,11,11,12,13,11,13,11,6,9,8,9,11,11,9,12,10,9,11,11,11,11,13,11,13,13,9,11,10,11,13,13,11,13,11,6,9,9,8,10,11,9,12,11,8,10,11,10,11,13,11,13,13,9,11,11,11,13,12,11,13,11,8,10,10,9,11,12,10,12,12,10,10,12,11,11,14,12,13,14,10,12,12,12,13,13,11,14,11,8,11,10,11,12,13,11,14,12,10,12,11,11,12,14,13,15,14,10,12,12,13,14,15,12,14,12,5,9,9,9,11,12,8,11,10,9,11,11,11,11,13,11,12,13,8,11,10,11,13,13,10,13,11,8,10,11,11,12,14,11,13,12,10,12,12,12,12,14,14,15,14,10,11,12,13,14,15,11,14,12,8,10,10,10,12,12,9,12,11,10,12,12,11,11,14,12,13,13,10,12,10,12,14,13,11,13,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,6,7,7,7,7,7,7,7,7,7,7,8,7,8,8,7,8,8,7,8,7,7,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,8,8,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,8,8,8,8,8,9,8,8,9,8,7,8,8,7,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,7,8,8,8,8,9,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,9,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,7,8,8,7,8,8,8,8,8,8,8,9,8,8,9,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,9,8,8,8,8,8,9,9,9,9,9,8,8,8,8,9,9,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,5,4,7,7,4,7,7,5,7,8,7,8,10,8,9,9,5,7,7,8,9,9,7,10,8,5,7,8,8,9,10,8,10,10,8,9,10,10,10,12,10,12,12,8,10,10,10,12,12,10,12,11,5,8,7,8,10,10,8,10,9,8,10,10,10,11,12,10,12,12,8,10,9,10,12,12,10,12,10,5,8,8,7,10,10,8,10,10,7,9,10,9,10,12,10,12,12,8,10,10,10,12,12,10,12,11,7,9,10,9,11,12,10,12,11,9,9,12,11,10,14,12,12,13,10,12,11,12,13,13,11,14,12,7,10,9,10,11,11,10,12,11,9,11,11,11,11,13,12,14,13,10,12,12,12,14,14,11,14,12,5,8,8,8,10,10,7,10,10,8,10,10,10,11,12,10,12,12,7,10,9,10,12,12,9,12,10,7,9,10,10,11,12,10,11,11,10,12,12,11,12,14,12,14,14,9,11,11,12,13,14,11,13,11,7,10,9,10,11,12,9,12,11,10,11,12,11,12,14,12,13,13,9,12,9,12,13,12,11,14,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,9,9,6,8,8,10,10,6,8,8,10,10,8,10,10,12,13,8,10,10,13,12,6,8,8,10,10,8,8,9,10,11,8,9,9,11,11,10,10,11,12,13,10,11,11,13,13,6,8,8,10,10,8,9,9,11,11,8,9,8,11,10,10,11,11,13,13,10,11,10,13,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,13,13,13,15,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,13,13,14,15,12,13,12,15,12,6,8,8,10,11,8,9,10,11,12,8,9,9,11,11,10,11,12,13,14,10,11,11,13,13,8,9,9,11,12,9,10,11,12,13,9,10,10,12,13,11,12,13,13,15,11,12,12,14,14,8,9,9,11,12,9,10,11,12,13,9,10,10,13,12,11,12,13,14,15,11,12,12,14,13,10,11,12,13,14,11,12,13,13,15,12,13,13,14,14,13,13,14,14,16,14,15,14,16,15,10,12,11,14,13,12,12,13,14,14,11,12,12,14,14,14,14,15,15,16,13,14,14,16,14,6,8,8,11,10,8,9,9,11,11,8,10,9,12,11,10,11,11,13,13,10,12,11,14,13,8,9,9,12,11,9,10,10,12,13,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,8,9,9,12,11,9,10,10,13,12,9,11,10,13,12,11,12,12,14,14,11,13,12,15,13,10,11,12,13,14,11,12,13,13,14,12,13,12,14,14,13,13,14,14,16,14,15,14,16,16,10,12,11,14,13,12,13,13,14,14,11,13,12,15,13,14,14,15,16,16,13,14,13,16,14,9,10,11,12,13,11,11,12,13,14,11,11,12,13,14,13,13,14,14,16,13,14,14,15,15,11,11,12,13,14,12,12,13,13,15,12,13,13,14,15,14,14,15,15,17,14,14,15,16,16,11,12,12,13,14,12,12,13,14,15,12,13,12,14,15,14,14,15,15,17,14,15,14,16,16,13,14,14,15,16,14,14,15,15,17,14,15,15,16,16,15,16,17,16,18,16,17,16,17,17,13,14,14,16,15,14,15,15,16,16,14,15,14,16,15,16,16,17,17,18,16,16,16,17,16,9,11,10,13,12,11,12,11,14,13,11,12,11,14,13,13,14,14,16,15,13,14,13,16,14,11,12,12,14,13,12,12,13,14,14,12,13,13,15,14,14,14,15,16,16,14,15,14,17,15,11,12,11,14,13,12,13,13,15,14,12,13,12,15,13,14,15,14,16,16,14,15,14,17,15,13,14,14,15,16,14,14,15,16,16,14,15,15,16,16,15,16,16,16,17,16,16,16,17,17,13,14,14,16,15,14,15,15,17,16,14,15,14,17,15,16,17,17,17,17,16,16,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,11,11,14,13,8,9,9,11,12,9,10,10,12,13,9,10,10,13,12,11,11,12,13,15,11,12,12,15,14,8,9,9,12,11,9,10,11,12,13,9,11,10,13,12,11,12,12,14,15,11,13,12,15,14,10,11,11,13,14,11,12,12,13,14,11,12,12,14,14,13,13,14,14,16,13,14,14,16,15,11,12,11,14,13,12,13,13,14,14,11,13,12,14,13,14,14,15,16,16,13,14,14,16,14,8,9,9,11,12,9,10,10,12,13,9,10,10,13,12,11,12,12,14,15,11,12,12,14,14,9,9,10,11,13,10,10,12,12,14,10,10,11,13,13,12,12,13,14,16,12,12,13,15,15,9,10,10,13,12,10,11,11,13,14,10,12,11,14,13,12,13,13,15,15,12,13,13,15,15,11,11,12,13,15,12,12,13,13,15,12,13,13,14,15,14,14,15,15,17,14,15,15,16,16,11,13,12,15,14,13,13,13,15,15,12,14,13,15,14,15,15,15,16,16,14,15,15,17,15,7,9,9,12,11,9,10,10,12,12,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,9,10,10,12,12,10,10,11,12,13,10,11,11,14,13,12,12,13,14,15,12,13,13,15,14,9,10,10,12,12,10,11,11,13,13,10,11,10,14,12,12,13,13,15,15,12,13,12,15,13,11,12,12,14,14,12,12,13,14,15,12,13,13,15,15,14,13,14,13,16,14,15,15,16,16,11,12,12,14,14,13,13,14,15,15,12,13,12,15,14,15,15,15,16,16,14,15,14,17,14,10,11,12,13,14,11,12,13,14,15,11,12,12,14,15,13,14,15,15,17,14,14,14,16,16,11,12,13,12,15,12,12,14,13,16,13,13,14,13,16,14,14,15,14,17,15,15,15,15,17,11,13,12,15,15,13,13,14,15,16,12,14,13,16,15,15,15,15,17,17,15,15,15,17,16,14,14,15,14,16,14,14,16,14,17,15,15,15,14,17,16,16,17,15,18,17,17,17,16,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,17,17,17,18,18,16,17,16,18,17,10,11,11,14,13,11,12,12,14,14,11,13,12,15,14,14,14,14,16,16,14,15,14,16,15,11,12,12,15,13,12,13,13,15,14,13,14,13,16,14,14,15,15,16,16,15,16,15,17,16,11,13,12,15,14,13,13,14,15,15,12,14,13,16,14,15,15,15,17,17,14,16,15,17,16,14,14,14,16,15,14,15,15,16,16,15,16,15,17,16,16,16,16,16,17,16,17,17,18,17,14,15,15,16,16,15,15,16,17,16,14,15,15,17,16,17,17,17,18,18,16,17,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,12,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,11,10,13,12,11,12,13,14,15,11,12,12,15,14,8,9,9,12,11,9,10,10,12,13,9,10,10,13,12,11,12,12,14,15,11,12,12,14,13,11,11,12,13,14,11,12,13,13,15,12,13,13,14,14,13,14,14,14,16,14,15,14,16,16,10,11,11,14,13,11,12,12,14,14,11,12,12,14,13,13,14,14,15,16,13,14,13,16,14,7,9,9,11,11,9,10,11,12,13,9,10,10,12,12,11,12,13,14,15,11,12,12,14,14,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,13,15,12,13,13,15,15,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,13,13,14,15,12,13,12,15,13,11,12,12,14,14,12,12,13,14,15,13,14,13,15,15,14,13,15,13,16,15,15,15,16,16,11,12,12,14,14,12,13,13,14,15,12,13,12,15,14,14,15,15,16,17,13,14,13,16,13,8,9,9,12,11,9,10,10,12,13,9,10,10,13,12,11,12,12,14,15,11,12,12,15,14,9,10,10,12,13,10,11,12,13,14,10,11,11,14,13,12,13,13,15,15,12,13,13,15,15,9,10,9,13,11,10,11,10,13,13,10,12,10,14,12,12,13,12,15,15,12,13,12,15,14,11,12,13,14,15,12,13,14,14,15,13,13,13,15,15,14,15,15,15,17,15,15,15,16,16,11,12,11,15,13,12,13,13,15,14,12,13,12,16,13,14,15,15,16,16,14,15,14,17,14,10,11,11,13,14,11,12,13,14,15,11,12,12,14,14,14,14,15,15,17,14,14,14,15,16,11,12,13,14,15,12,13,14,14,16,13,14,13,15,15,14,15,16,15,17,15,15,15,17,17,11,12,12,13,15,13,13,14,14,16,12,13,13,14,15,15,15,15,16,17,14,15,15,16,16,14,15,15,16,16,14,15,15,16,17,15,15,16,16,17,16,16,17,16,18,17,17,17,18,18,14,14,15,15,16,15,15,15,16,17,14,15,15,16,16,16,17,17,17,18,16,16,16,17,16,10,11,11,14,13,11,13,12,15,14,11,13,12,15,14,14,15,14,16,16,13,15,14,17,15,11,12,13,15,15,12,13,14,15,16,13,14,13,16,15,15,15,15,16,17,15,15,15,17,16,11,13,11,15,12,13,14,13,16,13,12,14,12,16,13,15,15,15,17,15,14,16,14,17,14,14,15,15,16,17,15,15,16,16,17,15,16,15,17,17,16,16,17,17,18,16,17,17,18,18,14,15,14,17,13,15,16,15,17,15,15,16,15,17,14,16,17,16,18,16,16,17,16,18,15,9,11,11,13,13,10,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,16,16,10,11,12,14,14,11,12,13,14,15,11,13,13,15,15,13,14,14,15,16,14,15,15,16,16,11,12,12,14,14,12,13,13,15,15,12,13,12,15,14,14,15,15,16,16,14,15,14,17,16,12,13,13,15,16,13,13,14,15,16,13,14,14,16,16,14,15,16,16,17,15,16,16,17,17,13,14,14,16,15,14,15,15,17,16,14,15,14,17,15,16,16,17,17,17,16,16,16,18,16,10,11,12,14,14,11,12,13,14,15,11,13,12,15,15,13,14,15,16,16,14,15,15,17,16,11,11,13,14,15,12,12,14,14,16,12,13,14,15,15,14,14,15,16,17,15,15,15,17,17,12,13,12,15,15,13,14,14,16,15,13,14,13,16,15,15,16,15,17,17,15,16,15,17,16,13,12,15,14,16,14,13,15,14,17,14,13,15,15,17,15,14,17,15,18,16,15,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,16,17,17,18,18,16,17,16,18,17,10,11,11,14,14,11,12,12,14,15,11,13,12,15,14,13,14,14,16,16,14,15,14,16,16,11,12,12,14,14,12,12,13,15,15,12,13,13,15,15,14,14,15,16,16,14,15,15,17,16,11,12,12,15,15,13,13,13,15,15,12,13,13,15,15,15,15,15,17,17,14,15,15,17,16,13,14,13,16,15,14,14,14,16,16,14,15,14,17,16,15,15,16,16,17,16,17,16,18,17,14,15,15,16,16,15,15,15,17,17,14,15,15,17,16,16,17,17,18,18,16,17,16,18,16,12,13,13,15,15,13,14,14,16,16,13,14,14,16,16,14,15,16,16,18,15,16,16,17,17,13,13,14,14,16,14,14,15,15,17,14,14,15,15,17,15,15,17,15,18,16,16,17,17,18,13,14,14,16,16,14,15,15,16,17,14,15,15,17,16,16,17,16,17,18,16,17,16,18,17,15,14,16,13,18,16,15,17,14,18,16,15,17,14,18,17,16,18,15,19,17,17,18,16,19,15,16,16,17,17,16,17,17,18,18,16,17,16,18,17,18,18,18,19,18,17,18,17,19,17,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,15,15,16,17,15,16,15,17,16,12,13,13,15,15,13,13,14,15,16,14,15,14,16,15,15,15,16,16,17,16,16,16,18,17,12,13,13,15,15,14,14,15,16,16,13,14,13,16,15,16,16,16,17,17,15,16,15,18,16,15,15,15,17,15,14,15,15,16,16,16,17,16,17,16,16,16,17,16,17,17,18,17,19,18,15,15,16,17,17,16,16,16,17,17,15,16,15,17,16,17,18,18,18,18,16,17,16,18,16,9,11,11,13,13,11,12,12,14,14,10,12,12,14,14,13,14,14,15,16,13,14,14,16,15,11,12,12,14,14,12,12,13,14,15,12,13,13,15,15,14,14,15,16,17,14,15,15,16,16,10,12,11,14,14,11,13,13,15,15,11,13,12,15,14,14,14,15,16,16,13,14,14,16,15,13,14,14,15,16,14,14,15,15,17,14,15,15,16,17,16,16,16,16,18,16,16,17,17,17,12,13,13,16,15,13,14,14,16,16,12,14,13,16,15,15,16,16,17,17,14,16,15,17,16,10,11,11,14,14,11,12,13,14,15,11,12,12,15,14,14,14,15,16,16,13,14,14,16,16,11,12,12,14,15,12,13,14,15,15,13,13,13,15,15,14,15,15,16,17,15,15,15,16,17,11,12,12,14,14,12,13,13,15,15,12,13,12,15,15,14,15,15,16,17,14,15,14,16,16,14,14,15,16,16,14,15,15,16,17,15,16,15,17,17,16,16,17,16,18,16,17,17,18,18,13,13,14,15,16,14,14,15,16,17,14,14,14,16,15,16,16,17,17,18,15,16,15,17,16,10,12,11,14,14,11,13,13,15,15,11,13,12,15,15,14,15,15,16,16,13,15,14,16,16,12,12,13,15,15,13,13,14,15,16,13,14,14,16,15,15,15,16,16,17,15,15,15,17,17,11,13,11,15,14,12,14,13,16,15,12,14,12,16,14,15,15,15,17,17,14,15,14,17,15,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,17,18,16,17,17,18,18,13,14,12,16,14,14,15,13,17,15,14,15,13,17,14,16,17,15,18,17,15,17,14,18,15,11,12,12,14,15,13,13,14,15,16,13,14,13,16,15,15,15,16,16,17,15,15,15,16,16,12,13,13,15,15,13,13,14,15,16,14,15,14,16,16,15,15,16,16,18,16,16,16,18,17,12,13,13,15,15,14,14,15,15,16,13,14,13,15,15,16,16,16,17,18,15,16,15,17,16,15,16,15,17,16,15,15,16,16,17,16,17,16,17,17,16,16,17,16,18,17,18,18,18,18,14,15,15,15,17,16,15,17,16,17,14,15,15,16,16,17,17,18,18,19,16,16,16,17,16,12,13,13,15,15,13,14,14,16,16,13,14,14,16,16,15,16,16,17,17,15,16,15,18,16,13,14,14,16,16,14,15,15,16,17,14,15,15,17,16,16,16,17,17,18,16,17,16,18,18,13,14,13,16,14,14,15,14,17,15,14,15,14,17,14,16,17,16,18,17,15,17,15,18,15,15,16,16,17,18,16,16,17,17,18,16,17,17,17,18,17,17,18,18,19,17,18,18,19,18,15,16,14,17,13,16,17,15,18,14,16,17,15,18,14,18,18,17,19,16,17,18,16,19,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,4,7,7,4,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,6,7,8,8,9,10,8,9,10,8,9,10,10,10,12,10,11,11,8,10,10,10,11,12,10,11,11,6,8,7,8,10,9,8,10,9,8,10,10,10,11,11,10,12,11,8,10,9,10,11,11,10,12,10,5,8,8,8,10,10,8,10,10,7,9,10,9,10,11,9,11,11,8,10,10,10,11,12,10,12,11,7,9,9,9,10,11,9,11,11,9,9,11,10,11,12,11,11,12,9,11,11,11,12,12,11,12,12,7,9,9,10,11,11,10,12,11,9,11,10,11,11,12,11,13,12,10,11,11,12,13,13,11,13,11,5,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,11,7,10,9,9,11,11,9,11,10,7,9,9,10,11,12,10,11,11,10,11,11,11,11,13,12,13,13,9,10,11,11,12,13,11,12,11,7,9,9,9,11,11,9,11,10,9,11,11,11,12,12,11,12,12,9,11,9,11,12,11,10,12,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,9,14,16,17,19,22,22,5,4,6,9,11,13,17,20,9,5,5,6,9,11,15,19,11,7,5,5,7,9,13,17,14,9,7,6,6,7,11,14,16,11,9,7,6,4,4,8,19,15,13,11,9,4,3,4,21,16,16,15,12,6,4,4,2,0,0,0,64,0,0,0,56,145,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,98,6,0,0,0,0,0,0,0,0,0,40,98,6,0,0,0,0,0,0,0,0,0,80,98,6,0,120,98,6,0,0,0,0,0,0,0,0,0,160,98,6,0,200,98,6,0,0,0,0,0,0,0,0,0,240,98,6,0,24,99,6,0,0,0,0,0,0,0,0,0,64,99,6,0,104,99,6,0,24,99,6,0,0,0,0,0,144,99,6,0,184,99,6,0,56,167,5,0,96,167,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,192,97,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,7,13,15,16,17,19,20,6,3,4,7,9,10,12,15,13,4,3,4,7,8,11,13,14,7,4,4,6,7,10,11,16,9,7,6,7,8,9,10,16,9,8,7,7,6,8,8,18,12,10,10,9,8,8,9,20,14,13,12,11,8,9,9,5,0,0,0,243,0,0,0,48,144,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,40,145,6,0,0,0,0,0,5,0,0,0,53,12,0,0,224,131,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,24,144,6,0,0,0,0,0,5,0,0,0,243,0,0,0,216,130,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,208,131,6,0,0,0,0,0,5,0,0,0,243,0,0,0,208,129,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,200,130,6,0,0,0,0,0,5,0,0,0,243,0,0,0,200,128,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,192,129,6,0,0,0,0,0,5,0,0,0,53,12,0,0,120,116,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,176,128,6,0,0,0,0,0,5,0,0,0,53,12,0,0,40,104,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,96,116,6,0,0,0,0,0,1,0,0,0,7,0,0,0,0,104,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,8,104,6,0,0,0,0,0,5,0,0,0,243,0,0,0,248,102,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,240,103,6,0,0,0,0,0,5,0,0,0,243,0,0,0,240,101,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,232,102,6,0,0,0,0,0,5,0,0,0,243,0,0,0,232,100,6,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,224,101,6,0,0,0,0,0,5,0,0,0,243,0,0,0,224,99,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,216,100,6,0,0,0,0,0,1,4,5,5,10,10,5,10,10,5,10,10,10,10,10,10,10,10,5,10,10,10,10,10,10,10,10,7,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,6,7,8,6,8,7,6,7,7,7,7,8,7,8,8,6,7,7,7,8,8,7,8,7,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,10,9,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,9,9,10,9,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,9,10,8,9,9,9,10,9,9,10,9,7,8,8,8,9,9,8,9,9,8,8,9,9,9,9,9,9,9,8,9,9,9,10,9,9,9,9,7,9,9,9,9,10,9,10,9,9,9,9,9,9,10,10,10,10,9,9,9,10,10,10,9,10,9,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,9,9,10,9,7,9,9,9,9,10,9,10,9,9,9,9,9,9,10,10,10,10,9,9,9,10,10,10,9,10,9,7,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,9,10,8,9,8,9,9,9,9,10,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,5,7,9,5,9,7,5,7,8,7,7,10,9,10,10,5,8,7,9,10,10,7,10,7,6,9,9,9,10,12,9,11,11,9,10,11,11,11,13,12,13,13,9,11,11,12,13,13,11,13,11,6,9,9,9,11,11,9,12,10,9,11,11,11,11,13,12,13,13,9,11,10,12,13,13,11,13,11,6,9,9,9,11,12,9,12,11,9,10,11,10,10,13,12,13,13,9,11,11,12,13,12,11,13,11,7,9,10,9,10,12,10,12,11,10,10,12,10,10,12,12,12,13,10,11,11,12,12,13,10,12,10,7,10,10,11,11,14,11,14,11,10,12,11,11,11,14,14,14,14,10,11,12,14,14,14,11,14,11,6,9,9,9,11,12,9,12,11,9,11,11,11,11,13,12,12,13,9,11,10,12,13,13,10,13,10,7,10,10,11,11,14,11,14,11,10,12,11,11,11,14,14,15,14,10,11,12,13,14,15,11,14,11,7,10,9,10,11,12,9,12,10,10,11,11,10,10,12,12,13,12,9,12,10,12,13,12,10,12,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,10,10,5,7,8,11,12,5,8,7,12,11,9,11,11,13,15,9,11,11,15,13,6,7,8,11,11,7,7,9,11,13,8,9,9,13,12,11,11,12,12,15,11,12,12,15,14,6,8,7,11,11,8,9,9,12,13,7,9,7,13,11,11,12,12,14,15,11,12,11,15,12,10,11,11,12,14,10,11,12,12,15,12,13,13,14,15,13,12,14,12,16,15,15,15,16,16,10,11,11,14,12,12,13,13,15,14,10,12,11,15,12,15,15,15,16,17,13,14,12,17,12,6,8,8,12,12,8,9,10,13,13,8,9,9,13,13,12,12,13,15,16,12,13,13,16,15,8,9,10,12,13,9,9,11,13,14,10,11,11,14,14,13,13,14,15,16,13,14,14,16,16,8,10,9,13,13,10,11,11,14,14,9,10,10,14,13,13,14,14,16,17,13,13,13,16,15,12,13,13,14,16,13,13,14,14,16,14,14,14,16,16,15,15,16,15,18,16,17,17,18,18,12,13,13,15,15,14,14,14,16,16,13,14,13,16,15,16,16,17,18,18,15,16,15,18,15,6,8,8,12,12,8,9,9,13,13,8,10,9,13,13,12,13,13,15,16,12,13,12,16,15,8,9,10,13,13,9,10,10,13,14,10,11,11,14,14,13,13,13,15,16,13,14,14,17,16,8,10,9,13,13,10,11,11,14,14,9,11,9,14,13,13,14,14,16,16,13,14,13,16,14,12,13,13,15,16,13,13,14,15,16,14,14,14,16,16,15,15,16,15,18,17,17,17,18,18,12,13,13,16,14,14,14,14,16,16,13,14,13,16,14,16,17,17,18,18,15,16,15,18,15,11,12,13,14,16,13,13,14,15,17,13,14,14,16,17,16,16,17,17,19,16,17,17,18,19,13,13,14,16,16,14,14,15,16,17,14,15,15,17,17,17,16,17,17,19,17,17,18,19,19,13,14,14,16,16,14,14,15,17,18,14,15,14,17,17,17,17,18,18,19,17,17,17,18,19,16,16,16,17,18,17,17,17,18,19,17,17,17,18,19,18,18,19,18,20,19,20,19,21,20,16,17,17,18,18,17,17,18,19,19,17,17,17,19,18,19,19,19,19,20,19,19,19,20,19,11,13,12,16,14,13,14,14,17,16,13,14,13,17,15,16,17,17,18,18,16,17,16,19,17,13,14,14,16,16,14,14,14,17,17,14,15,15,17,16,17,17,17,19,19,17,18,17,19,18,13,14,13,17,16,14,15,15,17,17,14,15,14,18,16,17,17,17,19,19,17,17,16,19,17,16,17,17,18,19,17,17,17,18,18,17,18,17,19,18,18,19,18,19,19,19,20,19,20,20,16,17,16,18,17,17,17,17,18,18,17,18,17,19,17,19,19,19,19,20,18,19,19,20,18,6,8,8,12,12,8,9,9,13,13,8,10,9,13,13,11,13,13,15,16,12,13,13,16,15,8,9,9,13,13,9,9,10,13,14,10,11,11,14,14,12,12,13,14,16,13,14,14,17,16,8,10,9,13,13,10,11,11,14,14,9,11,10,14,13,13,14,14,16,16,13,14,13,16,15,12,13,13,14,16,12,13,14,14,16,13,14,14,16,16,15,14,16,15,18,16,17,17,18,17,12,13,13,16,15,14,14,14,16,16,13,14,13,16,15,16,16,17,17,17,15,16,15,18,15,7,9,9,13,13,9,9,11,13,14,9,10,10,14,13,12,13,14,15,16,12,14,13,17,15,9,9,10,13,14,10,9,11,13,15,11,11,11,14,14,13,12,14,14,17,14,14,14,17,16,9,10,10,14,13,11,11,11,14,14,10,11,10,15,13,14,14,14,16,17,13,14,13,17,14,13,13,14,14,16,13,13,14,14,17,14,14,14,16,16,15,14,16,15,18,17,17,17,18,18,13,14,13,16,15,14,14,15,17,16,13,14,13,17,15,17,16,17,17,17,15,16,14,18,14,7,9,9,13,13,9,10,10,13,14,9,11,10,14,13,13,14,14,16,16,13,14,14,17,15,9,10,10,14,13,9,10,11,13,14,11,12,11,15,14,13,13,14,14,16,14,15,15,17,17,9,10,10,14,14,11,12,12,14,15,10,11,10,15,13,14,15,15,17,17],"i8",L3,x.GLOBAL_BASE+410577),d3([14,15,13,17,14,13,14,13,16,16,13,13,14,15,16,14,15,15,17,17,15,14,16,15,18,17,18,17,20,18,13,14,14,16,16,15,15,15,17,17,13,14,13,17,15,17,17,18,18,18,15,16,14,19,14,12,13,13,15,16,13,13,15,16,17,13,14,14,16,16,15,15,17,17,19,16,17,17,19,18,13,13,14,15,17,14,13,15,15,17,14,15,15,16,17,16,15,18,16,19,17,17,17,18,19,13,14,14,17,16,14,15,15,17,17,14,15,14,17,16,17,17,17,18,19,16,17,16,19,17,16,16,17,16,18,16,16,17,16,19,17,17,18,18,19,18,17,18,17,21,19,19,19,20,19,16,17,17,18,18,17,17,18,18,19,16,17,16,18,18,19,19,19,19,20,18,18,17,20,18,11,13,13,16,15,13,14,14,16,17,13,15,14,17,16,16,17,17,18,18,17,17,17,19,18,13,14,13,17,16,14,13,14,16,17,15,16,15,18,16,17,16,17,17,19,18,18,18,20,18,13,14,14,16,17,15,15,15,17,18,14,15,14,18,16,18,18,18,19,20,17,18,16,20,17,16,17,16,18,18,16,16,17,18,18,17,18,18,19,18,18,17,19,17,20,19,20,19,22,20,16,16,17,18,18,18,17,17,19,19,16,17,16,18,17,19,20,19,22,21,18,19,18,21,17,6,8,8,12,12,8,9,10,13,13,8,9,9,13,13,12,13,13,15,16,11,13,13,16,15,8,9,10,13,13,9,10,11,13,14,10,11,11,14,14,13,13,14,15,16,13,14,14,16,16,8,9,9,13,13,10,11,11,14,14,9,10,9,14,13,13,14,14,16,17,12,14,12,16,14,12,13,13,15,16,13,13,14,15,16,13,14,14,15,17,15,15,16,15,18,16,16,17,17,17,12,13,13,16,14,13,14,14,16,16,12,14,13,16,14,16,17,17,18,18,15,15,14,18,14,7,9,9,13,13,9,10,11,13,14,9,10,10,14,13,13,14,14,15,17,13,14,14,16,15,9,10,10,14,14,10,10,11,13,15,11,12,12,15,14,14,13,15,14,17,14,15,15,17,17,9,10,10,13,14,11,11,12,14,15,9,11,10,14,13,14,15,15,16,18,13,14,13,16,14,13,14,14,16,16,13,13,14,15,17,15,15,15,16,17,15,14,16,15,18,17,17,18,19,18,13,14,14,16,16,14,15,15,17,17,13,14,13,16,15,17,17,18,18,18,15,16,14,18,15,7,9,9,13,13,9,10,10,13,14,9,11,10,14,13,12,13,14,15,16,12,14,13,16,15,9,10,10,13,14,10,10,11,13,14,11,11,11,15,14,13,13,14,14,16,14,14,14,17,16,9,10,9,14,13,11,11,11,14,14,10,11,9,15,13,14,14,14,16,16,13,14,12,17,14,13,13,14,15,16,13,13,14,15,16,14,15,14,16,17,15,14,16,14,18,16,17,17,18,18,13,14,13,16,14,14,14,14,16,16,13,14,13,17,14,17,17,17,18,18,15,16,14,18,15,11,13,13,16,16,13,14,15,16,17,13,14,14,17,16,16,17,17,18,19,17,17,17,19,18,13,14,14,17,17,13,13,15,16,18,15,15,15,17,17,17,16,18,17,20,18,17,18,19,19,13,14,14,16,17,15,15,16,16,18,14,15,14,16,16,17,17,18,18,20,17,18,16,18,17,16,17,16,19,18,16,16,17,18,19,18,18,18,19,19,18,17,18,17,21,20,19,19,21,21,16,16,17,18,18,17,17,18,19,19,16,17,16,19,18,20,20,20,19,21,18,18,17,20,18,12,13,13,16,15,13,14,14,16,16,13,14,13,17,16,16,17,17,18,18,15,17,15,19,17,13,14,14,16,17,14,14,15,16,17,14,15,15,17,17,16,16,17,17,18,17,17,17,19,19,13,14,13,17,15,14,15,15,17,16,14,15,13,17,15,17,18,17,19,18,16,17,15,20,16,16,17,17,18,18,16,16,17,18,18,17,18,17,19,18,17,17,18,18,20,19,20,19,20,19,16,16,16,19,16,17,17,17,19,18,16,17,16,19,16,19,19,19,19,19,18,19,17,19,17,11,13,13,16,16,13,14,14,17,17,13,14,14,17,17,15,17,17,19,19,16,18,17,20,19,12,14,14,17,17,13,14,15,17,18,14,15,15,17,18,16,16,17,18,20,17,18,18,20,18,13,14,14,17,17,14,15,15,17,18,14,15,15,17,17,17,18,17,19,19,17,18,17,19,19,15,16,16,18,18,15,16,17,18,19,16,17,17,19,19,17,17,18,18,21,18,19,19,21,19,16,17,17,18,18,17,17,18,19,19,17,18,17,19,19,19,19,19,20,20,18,19,18,21,19,12,13,13,16,16,13,14,14,16,17,13,15,14,17,16,15,16,17,17,19,16,17,17,19,18,13,13,14,16,17,14,13,15,16,17,14,15,15,17,17,15,15,17,17,20,17,17,18,19,18,13,14,14,17,16,15,15,15,17,18,14,15,14,17,16,17,17,17,18,18,16,17,16,19,17,16,15,17,17,19,16,15,17,16,19,17,16,17,18,19,17,16,19,16,20,19,18,19,19,19,16,17,17,18,18,17,17,17,18,19,16,17,16,19,18,20,19,19,20,19,18,18,17,20,17,11,13,13,16,16,13,14,15,16,17,14,15,14,18,16,17,17,17,18,21,17,18,17,20,19,13,14,14,17,16,13,14,15,16,18,15,16,15,18,17,17,16,17,17,19,17,18,18,20,19,13,14,14,16,17,15,15,16,17,18,14,15,14,18,17,17,18,18,19,20,17,18,16,19,17,16,17,15,19,18,16,16,16,18,18,17,18,17,20,19,18,17,18,17,20,20,20,19,22,20,16,17,17,18,19,18,18,18,19,20,16,17,16,19,18,20,19,19,20,20,18,19,17,20,17,13,14,14,16,17,14,14,16,16,18,14,16,15,17,16,16,16,17,17,18,17,17,16,19,18,14,14,15,16,17,14,14,16,16,18,16,16,16,17,17,16,15,17,16,19,18,18,18,19,19,14,15,15,17,17,15,16,16,17,18,14,16,14,18,16,17,17,18,18,19,16,17,16,19,17,16,16,17,16,18,16,16,17,16,19,18,18,18,17,18,17,16,18,16,20,19,19,19,19,19,16,17,17,18,18,17,17,18,19,19,16,17,16,19,17,18,19,19,19,20,17,18,16,20,16,11,14,13,17,17,14,14,16,16,18,14,16,14,19,16,18,18,19,18,19,18,19,18,21,18,13,15,14,18,16,14,14,16,16,18,16,17,16,19,17,18,16,19,17,20,19,19,19,21,19,13,14,15,17,18,17,16,17,17,19,14,16,14,18,16,20,19,19,20,21,18,19,16,21,17,17,18,16,19,17,16,16,17,18,18,19,19,18,21,18,17,17,18,17,20,20,20,20,22,20,17,17,18,18,20,19,19,19,18,20,16,17,17,19,19,21,21,21,20,21,17,19,17,23,17,11,13,13,16,16,13,14,14,17,17,13,14,14,17,17,16,17,17,19,20,15,16,16,19,19,13,14,14,16,17,14,15,15,17,18,14,15,15,17,17,17,17,18,19,19,17,17,18,19,19,13,14,14,17,16,14,15,15,17,17,13,15,14,18,17,17,18,18,19,20,16,17,16,19,18,16,16,17,18,18,17,17,17,18,19,17,18,17,19,19,19,19,19,19,20,19,20,19,20,20,15,16,16,18,17,16,17,17,20,18,15,16,16,19,17,19,19,19,20,20,17,18,17,21,17,11,13,13,16,16,13,14,15,16,17,13,15,14,17,16,17,17,18,18,20,17,17,17,19,19,13,14,14,17,17,14,14,15,17,18,15,15,15,18,17,17,17,18,17,20,18,18,17,20,18,13,14,14,16,17,15,15,16,17,18,14,15,13,17,17,17,18,18,19,20,17,17,16,19,17,16,17,17,18,18,16,16,17,18,18,18,18,18,19,19,18,17,19,18,21,19,20,20,20,20,16,15,17,18,18,17,17,18,18,20,16,16,16,18,17,20,19,20,21,22,17,18,17,20,17,12,13,13,16,16,13,14,15,16,17,13,14,14,17,16,16,17,18,18,19,15,16,16,19,18,13,14,14,16,17,14,14,15,16,17,14,15,15,17,17,16,16,17,17,19,17,17,17,19,18,13,14,13,17,16,14,15,15,17,17,13,15,13,17,16,17,17,17,19,19,15,17,15,19,17,16,17,17,18,18,16,16,17,17,19,17,18,17,19,19,18,17,19,17,19,19,19,19,20,19,15,17,15,19,16,17,17,16,19,18,16,17,15,18,16,19,19,19,20,19,17,19,16,19,16,11,14,14,17,17,15,14,16,16,18,15,16,14,18,16,18,18,19,18,21,18,19,18,20,18,13,15,14,18,17,14,14,16,16,18,16,17,16,19,17,17,17,19,17,22,19,19,19,21,19,13,14,15,17,18,17,16,17,17,19,14,16,14,18,16,19,19,19,20,21,18,18,16,20,17,17,18,16,19,18,15,17,17,19,19,19,19,18,21,19,18,17,20,17,21,22,21,20,21,21,17,16,19,18,20,19,18,19,18,20,16,17,16,19,18,21,20,21,19,23,18,19,16,20,17,13,14,14,17,16,14,14,15,16,18,14,16,14,17,16,16,16,17,17,19,16,17,16,19,17,14,15,15,17,17,14,14,16,16,17,15,16,16,18,17,16,16,17,17,19,17,18,17,19,18,14,15,14,17,16,16,16,16,17,17,14,16,14,17,16,18,18,18,18,19,16,17,15,19,16,17,17,17,18,18,16,15,17,17,18,18,18,18,19,19,17,16,18,16,19,19,19,19,19,19,16,17,16,19,16,18,18,17,19,18,16,17,16,19,16,19,19,20,19,19,17,18,16,20,16,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,6,8,8,10,10,8,9,9,10,11,8,10,9,11,10,9,10,10,11,11,9,10,10,11,11,8,9,9,10,10,9,9,10,11,11,10,10,10,11,11,10,11,11,11,11,10,11,11,11,11,8,9,9,11,10,10,10,10,11,11,9,10,9,11,11,10,11,11,11,11,10,11,10,11,11,10,10,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,10,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,8,9,10,11,11,10,10,11,11,11,10,10,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,11,11,11,10,10,11,11,12,11,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,10,10,11,11,11,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,8,10,9,11,11,10,10,10,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,10,11,11,10,11,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,10,11,11,11,11,11,12,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,11,12,11,11,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,12,12,12,13,12,10,11,11,12,11,11,11,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,13,12,8,10,10,11,11,10,10,11,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,11,11,11,10,10,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,10,11,11,11,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,11,11,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,11,11,12,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,12,13,13,12,13,13,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,13,12,13,12,12,13,13,13,13,12,13,13,13,13,8,10,10,11,11,10,10,11,11,11,9,11,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,11,11,11,10,11,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,9,11,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,12,13,12,12,13,12,13,12,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,12,13,13,13,12,12,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,12,13,12,13,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,12,13,12,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,13,13,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,12,13,12,13,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,12,12,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,13,12,13,12,12,13,13,13,13,12,13,12,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,7,8,5,8,7,5,7,7,7,7,9,7,9,9,5,7,7,8,9,9,7,9,7,6,8,8,8,9,10,8,9,9,8,9,10,9,9,11,10,11,11,8,9,9,10,11,11,9,11,10,6,8,8,8,9,9,8,10,9,8,9,9,9,10,11,10,11,10,8,10,9,10,11,11,9,11,9,6,8,8,7,9,9,8,10,9,7,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,11,10,7,9,9,8,10,10,9,10,10,9,9,10,10,10,11,10,11,11,9,10,10,10,11,11,10,11,10,7,9,9,9,9,10,9,10,9,8,10,9,9,9,11,10,11,11,9,10,10,10,11,11,9,11,9,6,8,8,8,9,10,7,9,9,8,9,9,9,10,10,9,10,10,7,9,9,9,10,10,9,10,9,7,9,9,9,9,10,9,10,9,9,10,10,9,9,11,10,11,11,8,9,10,10,11,11,9,11,9,7,9,9,9,10,10,8,10,10,9,10,10,10,10,11,10,11,11,9,10,9,10,11,11,10,11,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,7,7,6,7,7,6,7,7,6,7,7,7,8,8,7,8,8,6,7,7,7,8,8,7,8,8,7,7,8,7,8,8,7,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,7,7,8,8,7,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,6,8,8,7,8,8,7,8,8,7,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,9,8,9,9,8,8,9,8,9,9,9,9,9,8,9,9,9,9,9,9,9,9,7,8,8,8,9,9,8,9,8,8,8,8,8,9,9,9,9,9,8,9,8,9,9,9,9,9,9,6,8,8,7,8,8,7,8,8,8,8,8,8,8,9,8,9,9,7,8,8,8,9,9,8,9,8,7,8,8,8,8,9,8,9,8,8,8,9,9,9,9,9,9,9,8,8,8,9,9,9,8,9,9,7,8,8,8,9,9,8,9,8,8,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,5,7,8,5,8,7,5,7,8,8,8,10,8,10,10,5,8,7,8,10,10,8,10,8,6,8,9,8,10,12,9,11,11,9,10,11,11,11,13,12,13,13,9,11,11,11,13,13,11,13,12,6,9,8,9,11,11,8,12,10,9,11,11,11,12,13,11,13,13,9,11,10,11,13,13,11,13,11,5,9,9,8,11,11,9,12,11,8,10,11,10,11,13,11,13,13,9,11,11,11,13,13,11,13,12,8,10,11,10,12,13,10,13,12,10,10,13,11,11,14,12,13,14,11,13,12,13,14,14,12,14,12,8,11,10,11,12,13,11,14,12,10,13,12,12,12,13,13,15,14,11,12,13,13,14,15,12,14,12,5,9,9,9,11,12,8,11,11,9,11,11,11,12,13,11,13,13,8,11,10,11,13,13,10,13,11,8,10,11,11,12,14,11,13,12,11,13,12,12,12,14,13,15,14,10,12,13,13,14,15,12,13,12,8,11,10,10,12,13,10,13,12,11,12,13,12,12,14,13,14,14,10,13,10,12,14,13,11,14,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,9,9,6,7,8,10,10,6,8,7,10,10,8,10,10,12,13,8,10,10,13,12,6,8,8,10,10,7,8,9,10,11,8,9,9,11,11,10,10,11,12,13,10,11,11,14,13,6,8,8,10,10,8,9,9,11,11,7,9,8,11,10,10,11,11,13,14,10,11,10,13,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,13,14,13,15,14,9,10,10,13,12,10,11,11,13,13,10,11,10,13,12,13,13,14,14,15,12,13,12,15,12,6,8,8,10,11,8,9,10,11,12,8,9,9,11,11,10,11,12,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,10,11,12,13,11,11,13,13,15,11,12,12,14,14,8,9,9,12,12,9,10,11,12,13,9,10,10,13,12,11,12,13,14,15,11,12,12,14,14,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,13,13,14,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,14,14,11,13,12,14,13,14,15,15,16,16,13,14,14,16,14,6,8,8,11,10,8,9,9,12,11,8,10,9,12,11,10,11,11,13,13,10,12,11,14,13,8,9,9,12,12,9,10,10,12,13,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,8,9,9,12,11,9,10,10,13,12,9,11,10,13,12,12,12,12,14,14,11,13,12,15,13,11,11,12,13,14,11,12,13,13,14,12,13,13,14,15,13,13,14,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,15,13,14,15,15,16,16,13,15,13,16,14,9,10,11,12,13,11,11,12,13,14,11,12,12,13,14,13,13,14,14,16,13,14,14,15,16,11,11,12,13,14,12,12,13,14,15,12,13,13,14,15,14,14,15,15,17,14,15,15,16,17,11,12,12,14,14,12,13,13,14,15,12,13,12,15,15,14,15,15,16,17,14,15,15,16,16,13,14,14,15,16,14,14,15,15,17,15,15,15,16,17,16,16,17,16,18,16,17,17,18,18,13,14,14,16,15,14,15,15,17,16,14,15,15,16,16,16,17,17,18,18,16,16,16,17,16,9,11,10,13,12,11,12,12,14,13,11,12,11,15,13,13,14,14,16,15,13,14,13,17,14,11,12,12,14,14,12,12,13,15,15,12,13,13,15,14,14,14,15,16,16,14,15,15,17,16,11,12,11,14,13,12,13,13,15,14,12,13,12,15,13,14,15,15,16,16,14,15,14,17,15,13,14,14,15,16,14,15,15,16,17,14,15,15,16,17,16,16,16,17,17,16,17,17,18,18,13,15,14,16,15,15,15,15,17,16,14,15,14,17,15,16,17,17,18,18,16,17,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,12,11,14,13,7,9,9,11,12,9,10,10,12,13,9,10,10,13,12,11,11,12,13,15,11,12,12,15,14,8,9,9,12,11,9,10,10,13,13,9,11,10,13,12,12,12,12,14,15,11,13,12,15,13,10,11,11,13,14,11,12,12,13,15,11,12,12,14,14,13,13,14,14,16,14,15,14,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,15,13,14,15,15,16,16,13,14,14,16,14,8,9,9,11,12,9,10,11,12,13,9,10,10,13,12,11,12,13,14,15,11,12,12,15,14,9,9,11,11,13,10,10,12,12,14,10,10,11,13,14,12,12,13,14,16,12,13,13,15,15,9,11,10,13,12,10,11,11,13,14,10,12,11,14,13,12,13,13,15,16,12,13,13,15,15,11,11,13,13,15,12,12,14,13,15,13,13,14,14,15,14,14,15,14,17,15,15,15,16,16,12,13,12,15,14,13,14,14,15,15,12,14,13,15,14,15,15,15,17,17,14,15,14,17,15,7,9,9,12,11,9,10,10,12,12,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,9,10,10,12,12,10,10,11,12,13,10,11,11,14,13,12,12,13,14,15,12,13,13,16,15,9,10,10,13,12,10,11,11,13,13,10,11,10,14,12,13,13,13,15,15,12,13,12,15,14,11,12,12,14,14,12,12,13,14,15,13,14,13,15,15,14,13,15,14,16,15,16,15,17,16,12,12,12,14,14,13,13,14,15,15,12,13,12,15,14,15,15,16,16,17,14,15,14,17,14,10,11,12,13,14,11,12,13,14,15,11,12,13,14,15,13,14,15,15,17,14,15,15,16,16,11,12,13,12,15,12,12,14,13,16,13,13,14,13,16,14,14,16,14,18,15,15,16,16,17,12,13,12,15,15,13,14,14,15,16,13,14,13,16,15,15,15,16,17,18,15,15,15,17,16,14,14,15,14,17,15,14,16,14,17,15,15,16,15,18,16,16,17,16,19,17,17,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,18,16,17,17,18,18,18,16,17,16,18,17,10,11,11,14,13,11,12,12,15,14,11,13,12,15,14,14,15,15,16,16,14,15,15,17,16,11,12,12,15,14,12,13,13,15,14,13,14,13,16,14,14,15,15,16,16,15,16,15,18,16,11,13,12,15,15,13,14,14,15,15,12,14,13,16,15,15,16,16,17,17,15,16,15,17,16,14,15,14,16,16,14,15,15,16,16,15,16,15,17,16,16,16,17,16,17,17,18,17,19,18,14,15,15,17,16,15,16,16,17,17,15,15,15,18,16,17,18,18,18,18,16,17,16,19,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,12,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,10,10,13,13,11,12,13,13,15,11,12,12,15,14,7,9,9,12,11,9,10,10,12,13,9,10,10,13,12,11,12,12,14,15,11,12,11,14,13,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,13,14,14,14,16,14,15,15,16,16,10,11,11,14,13,11,12,12,14,14,11,12,12,15,13,14,14,14,16,16,13,14,13,16,14,7,9,9,11,12,9,10,10,12,13,9,10,10,12,12,11,12,13,14,15,11,12,12,14,14,9,10,10,12,13,10,10,11,12,14,10,11,11,13,13,12,12,13,14,15,13,13,13,15,15,9,10,10,12,12,10,11,11,13,14,10,11,10,13,12,12,13,13,15,16,12,13,12,15,14,11,12,13,14,14,12,12,13,14,15,13,14,13,15,15,14,14,15,14,17,15,16,15,17,16,11,12,12,14,14,13,13,13,15,15,12,13,12,15,14,15,15,15,16,17,14,15,14,16,14,8,9,9,12,11,9,10,10,12,13,9,11,10,13,12,11,12,12,14,15,11,12,12,15,14,9,10,11,13,13,10,11,12,13,14,10,11,11,14,13,12,13,13,15,15,12,13,13,16,15,9,11,9,13,11,10,11,10,14,13,10,12,10,14,12,12,13,13,15,15,12,13,12,16,14,12,12,13,14,15,12,13,14,14,16,13,14,14,15,15,14,14,15,15,17,15,16,15,17,16,11,13,11,15,13,13,14,13,15,14,12,14,12,16,13,15,15,15,16,16,14,15,14,17,14,10,11,11,13,14,11,12,13,14,15,11,12,12,14,15,14,14,15,16,17,14,15,15,16,16,11,12,13,14,15,12,13,14,15,16,13,14,14,15,16,15,15,16,16,18,15,16,16,17,17,11,12,12,14,15,13,13,14,14,16,12,13,13,15,15,15,15,16,16,18,14,15,15,16,16,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,16,19,17,18,17,18,18,14,14,15,16,16,15,15,16,16,17,14,15,15,16,16,17,17,18,18,19,16,17,16,17,16,10,12,11,14,13,11,13,12,15,14,11,13,12,15,14,14,15,15,16,16,13,15,14,17,15,12,13,13,15,15,13,13,14,15,16,13,14,14,16,16,14,15,15,17,17,15,16,16,17,17,11,13,12,15,12,13,14,13,16,13,12,14,12,16,13,15,16,15,17,16,14,16,14,18,14,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,17,18,17,18,17,18,18,14,15,14,17,14,15,16,15,18,15,15,16,15,18,14,17,17,17,18,17,16,17,16,19,16,9,11,11,13,13,10,12,12,14,14,11,12,12,15,14,13,14,14,16,16,13,14,14,16,16,10,11,12,14,14,11,12,13,14,15,12,13,13,15,15,13,14,15,16,16,14,15,15,17,16,11,12,12,15,14,12,13,13,15,15,12,13,12,15,15,14,15,15,16,17,14,15,14,17,16,12,13,14,15,16,13,13,14,15,16,13,14,15,16,16,14,15,16,16,18,15,16,16,18,18,13,14,14,16,15,14,15,15,17,16,14,15,15,17,16,16,17,17,18,18,16,17,16,18,17,10,12,12,14,14,11,12,13,15,15,12,13,13,15,15,13,14,15,16,17,14,15,15,17,16,11,11,13,14,15,12,12,14,15,16,13,13,14,15,16,14,14,15,16,17,15,15,16,17,17,12,13,12,15,15,13,14,14,16,16,13,14,13,16,15,15,16,15,17,17,15,16,15,18,16,13,12,15,14,17,14,13,16,14,17,14,14,16,15,18,15,14,17,16,18,16,16,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,18,16,17,17,17,18,18,16,17,16,19,17,10,11,11,14,14,11,12,12,15,15,11,13,12,15,15,14,15,14,16,16,14,15,15,17,16,11,12,12,15,14,12,12,13,15,15,13,14,13,16,15,14,15,15,16,16,15,16,15,18,17,11,13,12,15,15,13,14,13,15,15,12,14,13,16,15,15,16,15,17,17,15,16,15,18,16,13,14,13,16,16,14,15,14,16,16,14,15,15,17,16,16,16,16,16,18,16,18,17,19,18,14,15,15,17,16,15,16,16,17,17,15,15,15,17,16,17,17,18,18,19,16,17,16,18,16,12,13,13,15,16,13,14,14,16,17,13,14,14,16,16,15,15,16,17,18,15,16,16,18,17,13,13,14,14,17,14,14,15,15,17,14,14,15,16,17,15,15,17,16,18,16,17,17,18,18,13,14,14,17,16,14,15,15,17,17,14,15,14,17,16,16,17,17,18,18,16,17,16,18,17,15,14,16,13,18,16,15,17,14,19,16,16,17,15,18,17,16,18,15,19,18,18,18,17,19,15,16,16,18,17,16,17,17,18,18,16,17,16,19,17,18,19,18,19,19,17,18,17,20,18,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,16,16,17,17,15,16,16,18,17,12,14,13,16,15,13,13,14,15,16,14,15,14,17,16,16,16,16,16,17,16,17,17,19,17,12,13,14,16,16,14,15,15,16,17,13,15,13,17,15,16,17,17,18,18,16,17,16,18,16,15,16,15,17,16,15,15,15,17,17,16,17,16,18,17,17,16,17,16,18,18,19,18,20,18,15,16,16,17,17,16,17,17,18,18,15,16,15,18,17,18,18,19,19,19,17,18,16,19,16,9,11,11,13,13,11,12,12,14,15,10,12,12,14,14,13,14,14,16,16,13,14,14,16,16,11,12,12,14,14,12,12,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,16,10,12,11,14,14,12,13,13,15,15,11,13,12,15,14,14,15,15,16,17,13,15,14,17,16,13,14,14,15,16,14,15,15,16,17,14,15,15,16,17,16,16,17,17,18,16,17,17,18,18,12,14,13,16,15,13,15,14,17,16,13,14,13,17,15,15,16,16,18,18,15,16,15,18,16,10,11,11,14,14,11,12,13,14,15,11,12,12,15,15,14,15,15,16,17,14,15,15,16,16,11,12,13,15,15,12,13,14,15,16,13,14,14,15,16,15,15,16,16,18,15,15,16,17,17,11,12,12,14,15,13,13,14,15,16,12,13,13,15,15,15,15,16,17,18,14,15,15,17,16,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,16,19,17,17,18,19,18,13,13,14,16,16,14,15,16,17,17,14,14,15,16,16,16,16,17,18,18,16,16,16,18,16,10,12,12,14,14,12,13,13,15,15,11,13,12,15,15,14,15,15,16,17,13,15,14,17,16,12,13,13,15,15,13,13,14,15,16,13,14,14,16,16,15,15,16,17,18,15,15,16,17,17,11,13,12,15,14,13,14,13,16,15,12,14,12,16,14,15,16,15,17,17,14,16,14,17,16,14,15,15,16,17,15,15,16,16,18,15,16,16,17,17,16,17,17,17,19,17,17,17,18,18,13,15,12,17,14,14,16,14,17,15,14,15,13,17,14,16,17,16,18,17,15,17,14,19,15,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,16,16,17,18,15,16,16,17,17,12,14,13,16,16,13,13,15,15,17,14,15,15,17,16,16,16,17,16,19,16,17,17,18,18,12,13,14,15,16,14,14,15,16,17,13,14,13,16,15,16,17,17,18,19,15,16,16,17,16,15,16,16,18,17,15,15,16,17,18,16,17,17,18,18,16,16,18,16,19,18,19,19,20,19,15,15,16,16,17,16,16,17,17,18,15,15,15,17,16,18,18,19,18,20,17,17,16,18,16,12,13,13,16,15,13,14,14,16,16,13,14,14,16,16,15,16,16,17,18,15,16,15,18,17,13,14,14,16,16,14,15,15,16,17,14,15,15,17,17,16,17,17,18,18,16,17,17,18,18,13,14,13,17,14,14,15,14,17,16,14,15,14,17,15,16,17,17,18,18,15,17,15,19,15,16,16,16,17,18,16,16,17,17,19,16,17,17,18,19,17,17,18,18,20,18,18,18,19,19,15,16,14,18,13,16,17,16,19,15,16,17,15,19,14,18,18,18,19,17,17,18,16,20,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,7,7,5,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,5,7,8,8,9,10,8,9,9,8,9,10,9,10,12,10,11,11,8,9,10,10,11,11,9,11,11,5,8,7,8,9,9,8,10,9,8,10,9,9,11,11,10,11,11,8,10,9,10,11,11,9,12,10,5,8,8,7,9,10,8,10,9,7,9,9,9,10,11,9,11,11,8,10,10,10,11,11,10,12,11,7,9,9,9,10,11,9,11,11,9,9,11,10,10,13,11,11,12,9,11,11,11,12,13,11,13,12,7,9,9,9,11,11,9,12,10,9,11,10,10,11,12,11,13,12,9,11,11,11,13,13,11,13,11,5,8,8,8,9,10,7,10,9,8,10,10,10,11,11,10,11,11,7,9,9,9,11,11,9,11,10,7,9,9,9,10,12,9,11,11,9,11,11,11,11,13,11,13,13,9,10,11,11,12,13,10,12,11,7,9,9,9,11,11,9,11,10,9,11,11,11,12,13,11,13,12,9,11,9,11,12,11,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,8,13,15,16,18,21,22,5,4,6,8,10,12,17,21,9,5,5,6,8,11,15,19,11,6,5,5,6,7,12,14,14,8,7,5,4,4,9,11,16,11,9,7,4,3,7,10,22,15,14,12,8,7,9,11,21,16,15,12,9,5,6,8,2,0,0,0,64,0,0,0,8,198,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,150,6,0,0,0,0,0,0,0,0,0,248,150,6,0,0,0,0,0,0,0,0,0,32,151,6,0,72,151,6,0,0,0,0,0,0,0,0,0,112,151,6,0,152,151,6,0,0,0,0,0,0,0,0,0,192,151,6,0,232,151,6,0,0,0,0,0,0,0,0,0,16,152,6,0,56,152,6,0,232,151,6,0,0,0,0,0,96,152,6,0,136,152,6,0,232,147,6,0,16,148,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,144,150,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,136,150,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,147,6,0,152,147,6,0,0,0,0,0,0,0,0,0,192,147,6,0,232,147,6,0,16,148,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,160,149,6,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,80,150,6,0,0,0,0,0,2,0,0,0,25,0,0,0,104,149,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,149,6,0,0,0,0,0,2,0,0,0,9,0,0,0,72,149,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2],"i8",L3,x.GLOBAL_BASE+420817),d3([0,0,0,0,0,0,0,88,149,6,0,0,0,0,0,1,0,0,0,25,0,0,0,192,148,6,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,224,148,6,0,0,0,0,0,1,0,0,0,25,0,0,0,56,148,6,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,88,148,6,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,2,3,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,14,14,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,4,4,5,5,4,5,5,5,5,4,5,4,4,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,8,8,10,10,10,10,9,8,11,11,4,6,5,8,6,10,10,10,10,10,9,10,9,4,5,6,6,9,10,10,10,10,9,10,9,10,8,9,8,9,8,9,9,10,9,11,10,12,10,8,8,9,8,9,9,9,9,10,10,11,10,12,9,10,10,11,10,11,10,12,11,12,11,13,11,9,10,10,10,11,10,11,11,12,11,12,11,12,11,12,12,12,12,13,12,13,12,13,12,13,13,11,12,12,12,12,12,12,12,13,13,13,13,13,12,12,12,13,13,13,13,13,13,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,12,13,13,13,14,14,13,13,13,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,7,12,14,14,16,18,19,6,2,4,6,8,9,12,14,12,3,3,5,7,8,11,13,13,6,4,5,7,8,10,11,14,8,7,7,7,7,9,10,15,9,8,7,7,6,8,9,17,11,11,10,9,8,9,9,19,14,13,11,10,9,9,9,5,0,0,0,243,0,0,0,0,197,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,248,197,6,0,0,0,0,0,5,0,0,0,53,12,0,0,176,184,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,196,6,0,0,0,0,0,5,0,0,0,243,0,0,0,168,183,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,160,184,6,0,0,0,0,0,5,0,0,0,243,0,0,0,160,182,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,152,183,6,0,0,0,0,0,5,0,0,0,243,0,0,0,152,181,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,144,182,6,0,0,0,0,0,5,0,0,0,53,12,0,0,72,169,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,128,181,6,0,0,0,0,0,5,0,0,0,53,12,0,0,248,156,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,48,169,6,0,0,0,0,0,1,0,0,0,7,0,0,0,208,156,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,216,156,6,0,0,0,0,0,5,0,0,0,243,0,0,0,200,155,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,192,156,6,0,0,0,0,0,5,0,0,0,243,0,0,0,192,154,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,184,155,6,0,0,0,0,0,5,0,0,0,243,0,0,0,184,153,6,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,176,154,6,0,0,0,0,0,5,0,0,0,243,0,0,0,176,152,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,168,153,6,0,0,0,0,0,1,7,7,6,9,9,7,9,9,6,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,5,7,8,5,8,7,6,7,7,7,7,8,8,8,8,6,7,7,7,8,8,7,8,7,6,8,8,8,9,10,8,9,9,8,9,9,9,9,10,10,10,10,8,9,9,10,10,10,9,10,10,6,8,8,8,9,9,8,10,9,9,9,9,9,9,10,10,10,10,8,9,9,10,10,10,9,10,9,6,8,9,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,10,9,7,8,9,8,9,9,9,9,9,8,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,7,9,9,9,10,10,9,10,10,9,10,9,9,9,10,10,10,10,9,10,9,10,10,10,9,10,9,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,10,9,7,9,9,9,10,10,9,10,9,9,9,10,10,9,10,10,10,10,9,9,9,10,10,10,9,10,9,7,9,8,8,9,9,8,9,9,9,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,5,7,9,5,9,7,5,7,8,7,7,10,9,9,10,5,8,7,9,10,9,7,10,7,6,9,9,9,10,12,10,12,11,9,10,11,11,10,13,12,12,13,10,11,11,12,13,13,11,13,11,6,9,9,10,11,12,9,12,11,10,11,11,11,11,13,12,13,13,9,11,10,12,13,13,11,13,10,6,9,10,9,11,12,10,12,11,9,10,11,10,10,13,11,13,13,10,11,11,12,13,12,11,13,11,7,9,10,9,10,12,10,11,11,10,10,11,10,10,12,12,11,12,10,11,10,12,12,12,10,12,10,7,10,10,11,11,13,11,13,11,10,12,11,11,10,13,13,14,13,10,11,12,13,13,14,11,13,10,6,10,9,10,11,12,9,12,11,9,11,11,11,11,13,12,12,13,9,11,10,12,13,13,10,13,10,7,10,10,11,11,14,11,13,11,10,12,11,11,10,14,13,14,13,10,11,12,13,13,14,11,13,10,7,10,9,10,10,12,9,12,10,10,11,11,10,10,12,12,12,12,9,11,10,11,12,12,10,12,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,1,6,6,10,10,6,7,9,11,13,5,9,7,13,11,8,11,12,13,15,8,12,11,15,13,6,7,8,11,11,7,8,10,11,13,9,10,10,13,13,11,11,13,12,16,12,13,13,16,15,6,8,7,11,11,9,10,10,13,13,7,10,7,13,11,12,13,13,15,16,11,13,11,16,12,10,11,11,11,13,11,11,13,12,15,13,13,13,14,15,13,12,15,12,17,15,16,16,16,16,10,11,11,14,11,13,13,13,15,14,11,13,11,15,12,15,15,16,16,16,13,15,12,17,12,6,8,9,12,12,9,10,12,13,15,9,11,11,15,14,12,13,15,16,18,13,14,14,17,16,9,10,11,13,14,11,10,13,14,16,11,12,12,15,15,14,13,16,15,18,14,15,15,17,17,9,11,11,14,14,11,12,13,15,16,11,13,11,15,14,15,15,15,17,18,14,15,14,17,15,13,14,14,15,16,14,14,15,15,17,15,16,15,17,17,16,16,17,15,19,17,18,18,19,18,13,14,14,16,15,15,15,16,17,17,14,15,14,18,15,17,17,17,19,19,16,17,15,19,16,6,9,8,13,12,9,11,11,14,15,9,12,10,15,13,13,14,14,16,17,12,15,13,18,16,9,11,11,14,14,11,11,13,14,15,11,13,12,16,15,14,14,15,15,18,14,15,15,18,17,9,11,10,14,13,11,12,12,15,15,11,13,10,16,14,14,15,15,16,18,14,16,13,18,15,13,14,14,16,16,14,14,15,15,17,15,16,15,17,17,16,16,17,16,19,17,18,17,18,19,13,14,14,16,15,15,15,15,17,17,14,15,14,17,15,17,17,17,18,19,16,17,15,19,15,11,13,13,15,16,13,14,15,16,18,14,15,15,17,17,16,16,18,18,20,17,18,17,19,20,13,14,14,16,17,15,15,16,17,18,15,16,16,17,17,18,17,19,18,19,18,18,18,19,21,14,14,15,16,17,15,15,16,18,18,15,16,16,17,18,18,18,19,19,21,18,19,19,22,20,16,16,17,17,19,17,17,17,18,20,17,18,18,20,19,19,19,20,19,0,19,19,20,20,21,17,17,17,19,18,18,18,20,19,19,18,18,18,20,20,19,19,20,20,20,20,21,20,21,19,11,13,13,16,15,14,15,15,17,17,14,15,14,18,16,16,18,18,20,19,16,19,17,21,18,13,14,15,16,17,15,15,16,18,18,15,16,15,19,18,18,18,18,19,19,18,18,18,22,20,13,14,14,16,16,15,16,16,18,17,15,16,15,18,17,18,18,18,19,19,17,18,17,21,18,16,17,17,18,18,17,18,19,19,19,18,20,18,19,19,19,20,21,19,21,20,20,20,0,21,16,17,17,19,19,18,18,18,19,21,17,18,18,19,18,20,19,21,20,21,19,20,20,22,19,7,9,9,13,13,8,10,11,14,15,9,12,11,15,14,11,13,14,16,17,13,15,14,17,16,8,10,11,14,14,10,10,12,14,16,11,12,12,16,15,13,12,15,15,18,14,15,15,19,17,9,11,11,14,14,11,12,12,15,15,11,13,11,16,14,14,15,14,17,17,14,16,14,18,15,12,13,14,15,16,13,13,15,14,17,15,15,15,17,17,15,14,17,14,19,17,18,18,19,18,13,14,14,16,16,15,15,15,17,17,14,15,14,18,15,17,18,17,18,17,16,18,16,19,15,7,10,10,13,13,9,10,12,14,15,10,12,11,15,14,12,13,14,16,17,13,15,14,18,16,10,10,12,13,14,10,10,13,13,16,12,12,13,15,15,13,12,15,15,18,15,15,16,18,17,10,11,11,14,14,12,13,13,15,16,10,13,10,16,14,14,15,15,17,17,14,15,13,17,15,13,13,14,15,16,14,13,15,14,18,15,15,16,16,17,16,15,18,15,18,17,18,18,18,18,13,15,14,17,16,15,16,16,17,17,14,15,13,17,15,17,17,18,18,18,16,17,14,20,14,8,10,10,14,14,11,11,13,14,16,11,13,11,16,14,14,15,16,16,18,14,16,15,18,16,10,12,11,15,14,11,11,13,14,16,13,14,13,16,15,15,14,16,15,19,16,17,16,20,18,10,11,12,14,15,13,13,14,16,16,11,14,11,16,14,16,16,17,18,19,15,17,14,20,15,14,15,14,17,16,13,14,15,15,18,16,17,16,19,18,16,15,18,15,19,18,19,18,21,21,14,14,15,16,17,16,16,17,18,18,13,15,14,17,15,18,18,19,18,22,16,18,15,21,15,12,13,14,16,16,14,14,16,16,18,14,15,15,17,18,16,16,18,18,20,18,18,17,20,20,13,14,15,15,17,15,14,16,16,18,16,16,16,17,19,17,15,18,17,21,18,18,18,19,19,14,15,15,18,17,15,16,16,18,19,15,16,15,18,18,17,18,18,20,21,17,19,17,20,19,16,16,17,16,19,17,17,18,17,20,18,18,18,18,19,19,18,20,17,22,20,20,19,20,20,17,17,18,18,19,18,18,20,21,20,17,18,17,20,20,21,21,21,21,21,19,21,18,22,20,11,13,13,17,16,14,14,16,16,18,14,16,14,18,16,17,18,19,19,20,18,19,18,21,19,14,15,14,17,16,14,14,16,18,18,16,17,16,18,17,18,17,19,18,20,19,19,18,20,20,13,14,15,16,17,16,16,17,18,19,14,16,14,19,17,18,19,18,20,20,18,20,17,21,18,17,17,17,19,18,16,17,18,18,19,18,19,18,21,21,18,18,20,17,21,19,20,20,22,21,16,17,18,18,19,18,18,19,21,20,16,17,17,20,18,21,21,22,21,22,18,21,18,0,18,7,9,9,13,13,9,11,12,14,15,8,11,10,15,14,13,14,15,16,18,11,14,13,17,15,9,11,11,14,14,11,11,13,14,16,11,12,12,15,15,14,14,16,15,18,14,14,15,17,17,8,11,10,14,14,11,12,12,15,15,10,12,10,16,14,14,15,15,17,18,13,15,12,18,15,13,14,14,16,16,14,14,15,15,17,15,15,15,16,17,16,15,17,15,19,17,17,17,18,18,12,14,13,16,15,15,15,15,17,17,13,15,13,17,14,17,18,18,18,19,15,17,14,19,14,8,10,10,14,14,11,11,13,14,16,11,13,11,16,14,14,15,16,17,19,14,16,15,18,17,10,12,11,15,14,11,11,14,14,17,13,14,13,17,15,15,14,17,15,19,16,17,16,19,17,10,11,12,14,15,13,13,14,15,17,11,13,11,17,14,16,16,17,18,19,15,16,14,18,15,14,15,14,16,16,13,14,15,15,18,16,16,16,18,18,16,15,18,15,20,18,19,18,21,18,14,14,15,16,17,16,16,17,17,18,13,15,14,17,16,19,19,19,19,19,15,18,15,20,15,7,10,10,13,13,10,11,12,14,15,9,12,10,15,14,13,14,15,16,17,12,15,13,17,16,10,11,11,14,14,10,10,13,14,16,12,13,13,16,15,14,13,16,15,18,15,15,16,17,17,10,12,10,14,13,12,13,12,15,15,10,13,10,16,13,15,16,15,17,18,13,16,12,18,15,13,14,14,16,17,14,13,15,15,18,15,16,15,17,17,16,14,17,15,19,17,18,18,19,19,13,15,13,17,14,15,15,15,18,17,14,15,13,17,14,18,17,18,18,19,15,17,15,19,15,11,13,13,16,17,14,14,16,16,18,14,16,15,18,17,17,18,19,18,21,18,18,17,20,18,13,15,14,17,16,14,14,16,17,18,16,17,16,19,17,18,17,19,18,22,18,19,19,21,21,13,14,15,16,18,16,16,17,17,20,14,16,14,18,17,18,18,19,19,21,17,18,17,21,18,17,18,17,19,18,16,17,17,18,19,18,18,18,22,22,18,17,19,17,0,20,21,19,21,20,17,17,18,18,21,18,18,18,19,21,17,17,17,19,19,20,20,22,21,21,19,20,18,20,17,12,14,13,17,16,14,15,15,17,18,14,16,14,18,16,17,18,18,21,20,16,18,16,21,18,14,15,15,17,17,15,15,16,18,18,15,17,16,18,18,17,17,19,19,20,18,19,18,20,19,14,15,14,17,15,15,16,16,18,17,15,16,14,19,15,18,18,18,19,20,17,20,15,21,17,16,17,18,18,19,17,17,18,18,20,18,19,18,19,21,19,18,19,19,21,20,0,19,21,20,16,17,16,19,16,18,18,18,19,19,17,18,17,20,17,19,20,20,22,0,19,20,17,21,17,11,13,14,16,17,14,15,15,17,18,14,15,15,18,18,16,17,17,19,20,16,18,17,19,21,13,14,15,17,17,14,15,16,17,19,15,16,16,18,19,16,17,18,19,21,17,18,20,21,21,13,15,15,17,17,15,16,16,18,19,15,16,16,18,19,17,17,18,19,22,17,19,18,22,19,15,16,17,19,19,16,17,18,18,20,17,18,18,19,20,19,18,20,18,22,20,19,19,22,21,16,17,17,18,19,18,18,18,19,20,17,18,18,20,19,20,19,20,22,20,19,20,21,21,20,12,14,14,16,16,13,14,16,17,18,14,16,15,18,18,15,17,17,19,19,17,18,18,19,19,13,14,15,16,17,14,14,16,16,20,15,16,16,17,19,16,15,18,17,20,18,17,19,19,19,14,15,15,17,17,16,16,16,18,18,15,16,15,19,18,17,18,18,20,21,17,18,17,21,18,16,15,17,17,19,17,15,18,17,20,19,17,18,19,20,18,16,19,17,22,20,19,20,19,20,17,17,18,19,19,18,18,19,20,20,17,18,17,18,18,21,21,20,20,21,18,20,17,21,19,11,14,14,16,17,15,14,16,17,19,14,16,14,18,17,18,18,19,19,21,17,19,18,20,20,13,15,14,17,17,14,14,16,17,18,16,17,16,19,18,18,17,19,18,20,18,21,18,20,20,13,15,15,16,17,16,16,17,18,19,14,16,15,19,18,19,19,19,21,20,18,19,17,20,18,16,17,16,19,18,16,17,17,19,20,17,19,18,20,19,18,17,21,18,0,21,20,20,0,20,17,17,18,18,19,18,19,19,20,22,16,17,17,20,18,21,22,20,20,22,18,22,18,22,18,12,14,14,17,17,14,15,16,17,19,14,16,15,17,17,17,17,18,18,21,17,19,17,20,19,14,15,15,16,18,15,14,16,16,19,16,17,16,19,18,17,16,20,17,20,18,20,19,19,20,14,15,15,18,17,16,16,17,18,19,14,16,15,19,17,18,21,18,19,21,17,18,17,19,18,17,17,18,17,20,17,16,18,17,21,18,19,19,19,19,18,17,19,17,20,20,21,20,21,20,17,17,17,19,19,19,18,18,20,21,16,18,16,19,18,20,20,21,21,20,18,19,16,0,17,12,14,14,17,17,15,15,18,17,19,15,18,15,20,16,20,19,21,18,22,20,20,20,22,19,14,16,14,20,17,14,15,17,17,20,18,18,17,20,18,18,17,19,17,21,20,21,20,0,21,14,15,16,17,19,18,17,19,18,21,14,18,15,21,17,21,20,21,20,0,18,21,17,21,17,18,19,17,20,18,16,17,17,19,19,19,21,20,0,20,18,17,21,17,0,22,0,21,0,22,17,17,19,18,20,20,20,21,19,22,16,17,18,20,18,22,22,0,22,0,17,21,17,22,17,11,14,13,16,16,14,15,15,17,18,14,15,14,18,17,17,18,18,19,20,16,17,17,21,19,13,14,15,17,17,15,16,16,18,18,15,16,16,19,18,18,18,18,19,20,17,18,18,20,19,13,15,14,17,17,15,16,16,17,18,14,16,15,19,17,17,18,19,21,21,17,18,17,20,18,16,17,17,19,19,17,18,19,19,20,18,19,18,21,21,21,20,19,21,22,20,20,19,21,20,15,17,16,19,19,17,18,18,20,21,16,18,17,20,18,19,19,21,21,21,19,19,19,20,18,11,14,13,17,16,14,14,16,16,19,14,16,15,19,16,18,18,18,19,22,17,18,17,20,19,13,15,14,17,17,15,15,16,17,19,16,17,16,20,18,18,17,19,18,21,19,19,18,22,0,13,14,15,17,18,16,16,17,17,19,14,16,15,19,18,18,19,19,20,21,18,18,17,20,18,17,18,17,20,18,16,17,17,18,20,18,19,18,20,20,18,18,21,17,21,20,21,21,0,19,16,16,18,18,19,19,18,20,19,20,16,17,17,20,18,21,20,21,22,22,18,20,17,21,17,12,14,14,17,16,14,15,16,18,18,13,15,14,18,17,17,18,18,19,19,15,17,16,19,19,14,15,15,17,17,15,15,16,18,19,15,16,16,19,18,17,17,18,18,20,18,18,18,21,20,13,15,14,17,16,15,16,15,18,18,14,16,14,18,17,18,18,18,19,21,16,18,16,20,17,17,18,17,18,19,17,17,18,18,19,18,19,19,21,19,19,18,20,18,21,21,20,20,21,20,16,17,15,20,17,17,19,17,19,19,17,18,15,20,17,19,20,19,21,22,17,20,16,0,17,12,14,14,17,18,16,15,18,16,20,16,18,15,21,17,20,18,21,19,22,19,21,19,0,19,14,16,15,19,17,14,15,17,16,21,18,19,18,21,17,19,17,21,17,22,20,21,21,0,21,14,15,16,17,19,18,17,19,18,21,14,17,15,20,17,21,22,21,20,22,18,21,17,21,17,17,19,17,21,18,16,17,17,19,20,19,21,20,21,20,17,18,20,17,21,0,22,20,21,22,17,17,20,18,21,21,20,22,20,21,16,17,17,21,19,0,22,0,21,21,18,22,17,21,17,12,14,14,17,16,14,15,16,17,18,14,16,15,18,17,17,17,20,19,20,16,18,17,21,18,14,15,15,17,17,14,15,16,17,19,16,17,16,18,18,17,16,19,18,19,18,19,18,21,20,14,15,15,18,17,16,16,16,19,18,15,16,14,20,16,18,18,19,19,20,16,19,16,21,17,17,17,18,19,19,16,16,18,18,19,19,19,18,20,20,18,16,19,18,20,22,21,20,19,20,16,18,17,20,16,18,19,18,19,18,16,18,16,20,17,21,20,21,20,20,18,19,17,21,16,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,5,7,7,10,10,7,8,9,10,11,7,9,8,11,10,9,10,10,11,11,9,10,10,11,11,7,9,9,10,10,8,9,10,10,11,9,10,10,11,11,10,10,11,11,11,10,11,11,12,12,7,9,9,10,10,9,10,10,11,11,8,10,9,11,10,10,11,11,11,11,10,11,10,11,11,10,10,10,11,11,10,10,11,11,11,11,11,11,11,11,11,11,12,11,12,11,12,11,12,12,10,10,10,11,11,10,11,11,11,11,10,11,10,11,11,11,12,11,12,12,11,12,11,12,11,8,9,9,11,11,9,10,10,11,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,11,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,8,9,9,11,11,9,10,10,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,11,11,12,12,12,12,11,12,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,13,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,13,12,12,12,12,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,9,9,11,11,9,10,10,11,11,9,10,10,12,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,11,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,10,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,10,11,11,12,11,11,12,12,12,11,11,12,12,12,11,11,12,12,13,12,12,12,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,8,10,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,12,12,12,10,11,10,12,12,10,10,11,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,10,11,11,12,12,11,12,12,12,12,10,12,11,12,12,12,12,12,13,13,12,13,12,13,12,11,12,12,12,12,11,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,13,11,12,12,12,12,12,12,12,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,13,13,13,12,12,13,13,13,13,13,13,13,13,11,12,12,12,12,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,12,12,13,12,12,13,12,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,9,9,11,11,9,10,10,11,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,8,10,10,11,11,10,10,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,12,10,11,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,10,10,11,12,12,11,12,12,12,12,10,11,10,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,11,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,11,12,12,13,12,12,13,13,13,13,12,13,12,13,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,12,12,12,12,13,12,12,12,13,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,12,12,12,12,12,12,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,13,13,13,13,11,12,11,12,12,12,12,12,13,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,12,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,12,13,13,13,12,13,13,13,13,11,12,12,12,13,12,12,13,13,13,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,11,12,12,12,12,12,12,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,13,13,13,12,13,12,13,13,11,12,12,12,12,12,12,13,13,13,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,13,12,13,13,12,12,12,13,12,13,13,13,13,13,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,11,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,13,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,13,13,13,13,12,13,12,13,13,11,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,11,12,12,13,12,12,13,12,13,13,12,13,12,13,13,13,13,13,13,13,12,13,13,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,13,13,13,13,12,13,13,12,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,12,13,13,13,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,13,12,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,13,13,13,13,13,11,12,12,12,12,12,13,12,13,13,12,13,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,11,12,12,12,12,12,13,13,11,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,12,13,13,13,12,13,13,13,13,11,12,12,13,13,12,12,13,13,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,11,12,12,13,12,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,12,11,12,12,11,12,12,12,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,13,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,13,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,13,12,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,12,13,13,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,13,13,13,12,13,13,13,13,12,12,13,13,13,13,13,13,13,13,11,12,12,12,12,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,13,13,13,13,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,13,13,13,12,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,13,13,13,13,13,13,13,13,13,12,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,9,5,9,7,5,7,8,7,7,10,9,10,10,5,8,7,9,10,10,7,10,7,6,8,9,9,10,12,9,11,11,9,10,11,11,11,13,12,13,13,9,11,11,11,12,13,11,13,11,6,9,8,9,11,11,9,12,10,9,11,11,11,11,13,11,13,12,9,11,10,12,13,13,11,13,11,6,9,9,8,10,11,9,12,11,9,10,11,10,10,12,11,13,13,9,11,11,11,13,12,11,13,11,8,10,10,9,10,12,10,12,11,10,10,12,10,10,13,12,13,13,10,12,11,12,13,13,10,13,10,7,10,10,11,11,13,11,14,11,10,12,11,11,11,13,13,14,13,10,12,12,14,14,14,11,14,11,6,9,9,9,11,12,8,11,10,9,11,11,11,11,13,11,12,13,8,11,10,11,13,13,10,12,10,7,10,10,11,11,14,11,13,11,10,12,12,11,11,14,14,14,14,10,11,12,13,13,14,11,13,11,8,10,10,10,11,12,9,12,10,10,11,12,11,10,13,12,13,13,10,12,10,12,13,13,11,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,6,6,6,7,7,6,7,7,6,7,7,7,7,8,7,8,8,6,7,7,7,8,8,7,8,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,9,7,8,7,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,8,6,8,8,7,8,8,7,8,8,7,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,9,9,8,9,9,8,8,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,7,8,8,8,8,9,8,9,8,8,8,8,8,9,9,9,9,9,8,9,8,9,9,9,8,9,9,6,8,8,7,8,8,7,8,8,8,8,8,8,8,9,8,9,9,7,8,8,8,9,9,8,9,8,7,8,8,8,8,9,8,9,8,8,8,9,8,9,9,9,9,9,8,8,8,9,9,9,8,9,9,7,8,8,8,9,9,8,9,9,8,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,6,5,7,8,5,8,7,5,7,8,7,8,10,8,10,10,5,8,7,8,10,10,7,10,8,6,8,9,8,10,11,9,10,10,9,10,11,10,11,12,11,12,12,9,11,10,11,12,12,10,12,11,6,9,8,9,10,10,8,11,10,9,10,11,10,11,12,11,12,12,9,11,10,11,12,12,10,12,11,6,9,9,8,10,11,9,11,10,8,10,10,10,10,12,11,12,12,9,11,10,11,12,12,10,12,11,8,10,10,10,11,12,10,12,11,10,10,12,11,11,13,12,13,13,10,12,11,12,13,13,11,13,11,7,10,10,10,11,12,10,12,11,10,12,11,11,11,12,12,14,13,10,12,12,12,14,14,11,13,11,6,9,9,9,10,11,8,11,10,9,10,11,10,11,12,11,12,12,8,11,10,11,12,12,10,12,10,7,10,10,10,11,12,10,12,11,10,12,12,11,11,13,12,13,13,10,11,12,12,13,14,11,12,11,8,10,10,10,11,12,10,12,11,10,11,12,11,11,13,12,13,13,10,12,10,12,13,13,11,13,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,9,9,6,7,8,10,10,6,8,7,10,10,8,10,10,12,13,8,10,10,13,12,6,7,8,10,10,7,8,9,10,11,8,9,9,11,11,10,10,11,12,14,10,11,11,14,13,6,8,7,10,10,8,9,9,11,11,7,9,8,11,10,10,11,11,13,14,10,11,10,14,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,13,14,13,15,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,13,13,14,14,15,12,13,12,15,12,6,7,8,10,11,8,9,10,11,12,8,9,9,11,12,10,11,12,13,14,10,11,11,14,13,8,9,10,11,12,9,10,11,12,13,9,10,11,12,13,11,12,13,13,15,12,12,13,15,14,8,9,9,12,12,9,10,11,12,13,9,10,10,13,12,12,12,13,14,15,11,12,12,14,14,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,14,13,15,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,14,13,14,15,15,15,16,13,14,14,16,14,6,8,7,11,10,8,9,9,11,12,8,10,9,12,11,10,11,11,13,14,10,12,11,14,13,8,9,9,12,12,9,10,10,12,13,9,11,10,13,12,11,12,12,13,14,12,13,12,15,14,8,10,9,12,11,9,11,10,13,12,9,11,10,13,12,12,13,12,14,15,11,13,12,15,13,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,13,14,14,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,15,13,14,15,15,16,16,13,15,13,16,14,9,10,11,12,14,11,11,12,13,15,11,12,12,13,14,13,14,15,15,17,13,14,14,15,16,11,11,12,13,15,12,12,13,14,16,12,13,13,14,15,14,14,16,15,17,15,15,15,16,17,11,12,12,14,14,12,13,13,15,16,12,13,13,15,15,15,15,15,16,17,14,15,15,16,16,14,14,15,15,17,14,15,15,15,17,15,15,16,16,17,16,16,17,16,18,17,17,17,18,18,14,15,14,16,16,15,15,16,17,17,14,15,15,17,16,17,17,17,18,18,16,16,16,17,17,9,11,10,14,12,11,12,12,14,13,11,12,11,15,13,13,14,14,16,15,13,15,14,17,15,11,12,12,15,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,15,15,15,17,16,11,12,11,15,13,12,13,13,15,14,12,13,12,16,14,15,15,15,17,16,14,15,14,17,15,14,14,15,16,16,14,15,15,16,16,15,16,15,17,17,16,16,16,17,17,17,17,17,18,17,14,15,14,16,15,15,15,15,17,16,15,15,15,17,15,17,17,17,18,18,16,17,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,12,11,14,13,7,9,9,11,12,9,10,10,12,13,9,10,10,13,13,11,11,12,13,15,11,12,12,15,14,8,9,9,12,11,9,11,10,13,13,9,11,10,13,12,12,13,12,14,15,11,13,12,15,13,10,11,12,13,14,11,12,12,13,15,12,12,13,14,15,13,13,14,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,15,13,14,15,15,15,16,13,14,14,16,14,7,9,9,11,12,9,10,11,12,13,9,10,10,13,12,11,12,12,14,15,11,12,12,15,14,9,9,11,11,13,10,10,12,12,14,10,11,12,13,14,12,12,13,14,16,12,13,13,15,15,9,11,10,13,13,10,12,12,13],"i8",L3,x.GLOBAL_BASE+431057),d3([14,10,12,11,14,13,12,13,13,15,16,12,13,13,15,14,11,11,13,13,15,12,12,14,13,16,13,13,13,14,15,14,14,15,14,17,15,15,15,16,16,12,13,12,15,14,13,14,14,15,15,12,14,13,16,14,15,15,16,16,17,14,15,14,17,15,7,9,9,12,11,9,10,10,12,13,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,9,10,10,13,12,10,10,11,12,13,10,12,11,14,13,12,12,13,13,15,12,14,13,16,15,9,10,10,13,12,11,11,12,13,13,10,12,10,14,12,13,13,13,15,15,12,13,12,15,13,11,12,12,14,14,12,12,13,14,15,13,14,13,15,15,14,13,15,13,16,15,16,15,17,16,12,13,12,14,14,13,14,14,15,15,12,13,12,15,14,15,15,16,16,17,14,15,13,16,13,10,11,12,13,14,11,12,13,14,15,12,13,13,15,15,14,14,15,15,17,14,15,15,16,16,12,12,13,12,15,12,12,14,13,16,13,13,14,14,16,14,14,16,15,17,15,15,16,16,17,12,13,13,15,15,13,14,14,16,16,13,14,13,16,15,15,16,16,17,17,14,15,15,17,16,14,14,15,14,17,15,15,16,15,17,15,15,16,15,17,16,16,17,16,18,17,17,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,17,17,17,18,18,16,17,16,18,17,10,12,11,14,14,12,13,13,15,15,12,13,12,15,14,14,15,15,16,16,14,15,15,17,16,11,13,12,15,14,12,13,13,15,15,13,14,13,16,14,15,15,15,16,16,15,16,15,17,16,12,13,13,15,15,13,14,14,16,16,12,14,13,16,15,15,16,16,17,17,15,16,15,17,16,14,15,15,16,16,14,15,15,16,16,15,16,16,17,16,16,16,16,16,17,17,18,17,18,17,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,17,17,18,18,18,16,17,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,12,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,10,11,13,13,11,12,13,13,15,12,12,12,15,14,7,9,9,12,11,9,10,10,13,13,9,10,10,13,12,11,12,12,14,15,11,12,11,15,13,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,13,14,14,14,16,14,15,15,16,16,10,12,11,14,13,12,13,12,14,14,11,12,12,15,13,14,15,15,16,16,13,14,13,16,14,7,9,9,11,12,9,10,11,12,13,9,10,10,13,12,11,12,13,14,15,11,12,12,14,14,9,10,10,12,13,10,10,12,12,14,11,12,11,13,13,12,12,14,13,15,13,13,13,15,15,9,10,10,12,13,10,11,12,13,14,10,11,10,13,12,13,13,14,15,16,12,13,12,15,13,12,13,13,14,14,12,12,13,14,15,13,14,14,15,15,14,13,15,13,16,15,16,15,17,16,11,12,12,14,14,13,13,14,15,15,12,13,12,15,14,15,15,16,16,17,14,14,13,16,13,7,9,9,12,11,9,10,10,12,13,9,11,10,13,12,11,12,12,14,15,11,12,12,15,14,9,10,11,13,13,10,11,12,13,14,10,12,12,14,13,12,13,13,14,16,12,13,13,16,15,9,11,9,13,11,10,12,11,13,13,10,12,10,14,12,12,13,13,15,15,12,13,12,16,14,12,12,13,14,15,12,13,14,14,15,13,14,14,15,15,14,14,15,15,17,15,16,15,17,16,11,13,11,15,13,13,14,13,15,14,12,14,12,16,13,15,15,15,16,16,14,15,14,17,14,10,11,12,14,14,12,12,13,14,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,16,12,12,13,15,15,13,13,14,15,16,13,14,14,16,16,15,15,16,16,17,15,16,16,17,17,11,12,13,14,15,13,13,14,15,16,12,13,13,15,15,15,15,16,16,17,15,15,15,16,16,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,16,18,17,17,17,18,18,14,15,15,16,16,15,16,16,16,17,15,15,15,16,16,17,17,17,18,18,16,16,16,17,16,10,12,11,14,13,12,13,13,15,15,11,13,12,15,14,14,15,15,16,16,14,15,14,17,15,12,13,13,15,15,13,13,14,16,16,13,14,14,16,16,15,15,15,16,17,15,16,16,17,17,12,13,12,15,12,13,14,13,16,14,12,14,12,16,13,15,16,15,17,16,14,16,14,17,15,14,15,15,16,17,15,15,16,17,17,15,16,16,17,17,16,16,17,17,18,17,18,17,18,18,14,15,14,17,14,15,16,15,17,15,15,16,15,17,15,17,17,17,18,17,16,17,16,18,16,9,11,11,14,14,11,12,12,14,14,11,12,12,15,14,13,14,14,16,16,13,15,14,16,16,10,11,12,14,14,11,12,13,15,15,12,13,13,15,15,13,14,15,16,17,14,15,15,17,16,11,12,12,15,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,15,17,16,12,13,14,15,16,13,14,14,15,16,13,14,15,16,16,15,15,16,16,18,16,16,16,18,17,14,14,14,16,15,15,15,15,17,16,14,15,15,17,16,16,17,17,18,17,16,16,16,18,16,10,12,12,14,14,11,12,13,15,15,12,13,13,15,15,13,14,15,16,17,14,15,15,17,16,11,12,13,14,15,12,12,14,15,16,13,13,14,15,16,14,14,15,16,17,15,15,16,17,17,12,13,13,15,15,13,14,14,16,16,13,14,13,16,15,15,16,15,17,17,15,16,15,17,16,13,13,15,14,17,14,13,16,15,17,15,14,16,15,17,15,15,17,16,18,16,16,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,17,17,17,18,18,16,17,16,18,17,10,12,11,14,14,11,12,13,15,15,12,13,12,15,15,14,15,15,16,16,14,15,15,17,16,11,12,12,15,15,12,13,13,15,15,13,14,13,16,15,14,15,15,16,16,15,16,15,17,16,11,13,13,15,15,13,14,14,15,15,12,14,13,16,15,15,16,15,17,17,15,16,15,17,16,13,15,14,16,16,14,15,14,16,16,15,16,15,17,16,15,16,16,16,17,16,17,16,18,17,14,15,15,16,16,15,16,16,17,17,15,15,15,17,16,17,17,17,18,18,16,16,16,18,16,12,13,13,15,16,13,14,14,15,16,13,14,14,16,16,15,15,16,16,18,15,16,16,17,17,13,13,14,15,16,14,14,15,15,17,14,15,15,16,17,15,15,17,16,18,16,16,17,17,17,13,14,14,16,16,14,15,15,17,17,14,15,14,17,16,16,17,16,17,18,16,17,16,18,17,15,15,16,14,17,16,15,17,14,18,16,16,16,15,18,16,16,18,15,19,18,18,18,17,19,15,16,16,18,17,16,17,17,18,17,16,17,16,18,17,18,18,18,19,19,17,18,16,18,17,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,16,16,16,17,15,16,16,17,16,12,14,13,16,15,13,13,14,15,16,14,15,14,17,15,15,15,16,16,17,16,17,16,18,17,12,13,14,15,16,14,15,15,16,16,13,14,13,16,15,16,16,16,17,17,15,16,15,17,15,15,16,15,17,16,15,15,15,16,16,16,17,16,18,16,16,15,16,15,17,17,18,17,18,17,15,15,16,17,17,16,16,17,17,17,15,16,15,17,16,18,18,18,18,18,16,17,16,18,15,9,11,11,14,14,11,12,12,14,15,10,12,12,15,14,13,14,15,16,16,13,14,14,16,16,11,12,12,14,15,12,12,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,16,10,12,12,14,14,12,13,13,15,15,11,13,12,15,15,14,15,15,16,17,13,15,14,16,16,14,14,14,15,16,14,15,15,16,17,14,15,15,16,17,16,16,17,16,18,16,17,17,17,17,12,14,13,16,15,13,15,14,16,16,13,14,14,16,15,16,16,16,17,17,15,16,15,17,16,10,11,11,14,14,12,12,13,14,15,11,13,12,15,14,14,15,15,16,17,14,15,15,16,16,12,13,13,15,15,12,13,14,15,16,13,14,14,15,15,15,15,16,16,17,15,15,16,17,17,11,12,12,15,15,13,13,14,15,16,12,13,13,15,15,15,15,16,16,17,14,15,15,16,16,14,15,15,16,16,15,15,15,16,17,15,16,16,17,17,16,16,17,16,18,17,17,17,17,18,13,14,15,16,16,15,15,16,16,17,14,14,14,16,16,16,16,17,17,18,16,16,16,17,16,10,12,12,14,14,12,13,13,15,15,11,13,12,15,15,14,15,15,16,17,13,15,14,17,16,12,13,13,15,15,13,13,14,15,16,13,14,14,16,16,15,15,16,16,17,15,15,16,17,17,11,13,12,15,14,13,14,13,16,15,12,14,12,16,15,15,16,15,17,17,14,15,14,17,16,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,17,18,17,17,17,18,18,13,15,13,17,14,14,16,14,17,16,14,15,13,17,15,16,17,16,18,17,15,17,15,18,16,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,16,16,16,17,15,16,16,17,16,12,14,13,16,15,13,13,14,15,16,14,15,15,16,16,16,15,16,16,17,16,16,16,17,17,12,13,14,15,16,14,14,15,15,17,13,14,13,16,15,16,16,17,17,18,15,16,15,17,15,15,16,15,17,17,15,15,16,16,17,16,17,16,17,17,16,15,17,15,18,17,18,17,18,18,15,15,16,16,17,16,16,17,16,18,15,15,15,16,16,17,17,18,17,18,16,16,15,17,15,12,13,13,15,15,13,14,14,16,16,13,14,14,16,16,15,16,16,17,18,15,16,15,18,16,13,14,14,16,16,14,14,15,16,17,14,15,15,17,17,16,16,17,17,18,16,16,17,18,17,13,14,13,16,14,14,15,15,17,16,14,15,14,17,15,16,17,17,18,17,15,17,15,18,16,15,16,16,17,17,16,16,17,17,18,16,17,17,18,18,17,16,18,17,19,18,18,18,18,18,15,16,15,17,14,16,16,16,18,15,16,17,15,18,14,18,18,18,18,17,17,18,16,19,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,7,7,5,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,5,7,8,8,9,10,8,9,10,8,9,10,9,10,12,10,11,11,8,10,10,10,11,11,9,11,11,5,8,7,8,9,9,8,10,9,8,10,10,9,11,11,10,11,11,8,10,9,10,11,11,9,12,10,5,8,8,7,9,10,8,10,9,7,9,9,9,10,11,9,11,11,8,10,9,10,11,11,10,11,11,7,9,9,9,10,11,9,11,11,9,9,11,10,10,13,11,11,12,9,11,11,11,12,13,11,13,12,7,9,9,9,11,11,9,11,10,9,11,10,10,11,12,11,13,12,9,11,11,11,12,13,11,13,11,5,8,8,8,9,10,7,10,9,8,9,10,10,11,11,10,11,11,7,9,9,9,11,11,9,11,10,7,9,9,9,10,11,9,11,11,9,11,11,11,11,13,11,13,12,9,10,11,11,12,13,10,12,11,7,9,9,9,11,11,9,11,10,9,11,11,11,12,13,11,13,12,9,11,9,11,12,11,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,12,14,15,18,20,20,5,3,4,6,9,11,15,19,9,4,3,4,7,9,13,18,11,6,3,3,5,8,13,19,14,9,6,5,7,10,16,20,16,11,9,8,10,10,14,16,21,14,13,11,8,7,11,14,21,14,13,9,6,5,10,12,0,0,0,0,255,255,255,255,255,255,255,255,8,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+441297),d3([1,0,0,0,1,0,0,0,2,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,240,5,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,184,214,6,0,0,0,0,0,0,0,0,0,224,214,6,0,0,0,0,0,0,0,0,0,8,215,6,0,48,215,6,0,0,0,0,0,0,0,0,0,88,215,6,0,128,215,6,0,0,0,0,0,0,0,0,0,168,215,6,0,208,215,6,0,0,0,0,0,0,0,0,0,248,215,6,0,32,216,6,0,208,215,6,0,0,0,0,0,72,216,6,0,112,216,6,0,208,211,6,0,248,211,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,120,214,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,112,214,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,211,6,0,128,211,6,0,0,0,0,0,0,0,0,0,168,211,6,0,208,211,6,0,248,211,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,136,213,6,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,56,214,6,0,0,0,0,0,2,0,0,0,25,0,0,0,80,213,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,112,213,6,0,0,0,0,0,2,0,0,0,9,0,0,0,48,213,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,64,213,6,0,0,0,0,0,1,0,0,0,25,0,0,0,168,212,6,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,200,212,6,0,0,0,0,0,1,0,0,0,25,0,0,0,32,212,6,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,64,212,6,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,4,4,5,5,5,4,5,4,5,5,5,5,6,5,6,5,6,5,6,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,8,8,9,8,9,9,10,10,10,10,4,6,5,8,7,9,9,9,9,10,9,10,10,4,5,6,7,8,9,9,9,9,9,10,9,10,8,9,8,9,8,10,9,11,9,12,10,11,10,8,8,9,8,9,9,10,9,11,10,11,10,12,9,10,10,11,10,11,11,12,11,12,12,12,12,9,10,10,11,11,11,11,11,12,12,12,12,12,10,11,11,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,13,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,11,13,12,12,12,13,12,12,12,12,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,5,13,9,9,12,16,18,4,2,20,6,7,10,15,20,10,7,5,5,6,8,10,13,8,5,5,3,5,7,10,11,9,7,6,5,5,7,9,9,11,10,8,7,6,6,8,8,15,15,10,10,9,7,8,9,17,19,13,12,10,8,9,9,5,0,0,0,243,0,0,0,232,4,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,224,5,7,0,0,0,0,0,5,0,0,0,53,12,0,0,152,248,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,4,7,0,0,0,0,0,5,0,0,0,243,0,0,0,144,247,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,136,248,6,0,0,0,0,0,5,0,0,0,243,0,0,0,136,246,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,128,247,6,0,0,0,0,0,5,0,0,0,243,0,0,0,128,245,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,120,246,6,0,0,0,0,0,5,0,0,0,53,12,0,0,48,233,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,104,245,6,0,0,0,0,0,5,0,0,0,53,12,0,0,224,220,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,24,233,6,0,0,0,0,0,1,0,0,0,7,0,0,0,184,220,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,192,220,6,0,0,0,0,0,5,0,0,0,243,0,0,0,176,219,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,168,220,6,0,0,0,0,0,5,0,0,0,243,0,0,0,168,218,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,160,219,6,0,0,0,0,0,5,0,0,0,243,0,0,0,160,217,6,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,152,218,6,0,0,0,0,0,5,0,0,0,243,0,0,0,152,216,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,144,217,6,0,0,0,0,0,1,9,9,7,9,9,8,8,9,9,9,9,9,9,9,8,9,9,7,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,6,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,5,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,5,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,6,7,7,7,7,7,7,8,8,9,9,9,9,7,7,8,8,8,9,9,9,9,8,8,6,7,7,8,8,8,8,8,8,9,8,8,9,8,9,9,8,8,10,8,8,10,9,9,10,8,8,6,6,6,8,6,6,8,7,7,8,7,7,10,8,8,9,7,7,9,7,7,10,8,8,9,7,7,7,7,7,10,8,8,11,9,9,10,9,9,11,9,9,11,8,8,11,9,9,12,9,9,12,8,8,7,7,7,10,9,9,10,9,9,10,9,9,11,10,10,10,9,9,11,9,10,11,10,11,10,9,9,9,8,8,10,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,9,9,11,10,10,11,9,9,8,8,8,11,9,9,11,9,9,11,9,9,12,9,9,12,8,8,11,9,9,12,9,9,12,8,8,8,7,7,10,9,9,10,9,9,10,9,9,11,11,11,11,9,9,11,10,10,11,11,11,11,9,9,10,9,9,11,9,9,11,9,10,11,10,10,11,10,10,11,9,9,11,10,10,11,10,10,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,7,7,7,8,8,7,8,8,7,9,9,11,11,11,9,8,8,8,9,9,12,11,12,9,8,8,6,7,7,10,11,11,10,10,10,11,11,11,14,14,14,12,11,12,11,11,11,15,15,14,13,12,12,5,6,6,8,5,5,8,7,7,8,7,7,12,10,10,10,7,6,9,8,8,12,10,10,10,6,6,7,8,8,12,10,10,12,10,10,11,10,10,16,14,14,13,10,10,12,10,10,15,14,14,14,10,10,7,7,7,13,11,11,13,11,11,12,11,11,16,14,14,14,12,12,12,11,11,18,15,15,14,12,12,10,9,10,14,11,11,13,11,11,12,11,11,17,14,14,14,11,11,13,11,11,16,15,15,14,11,11,7,8,8,13,11,11,12,10,10,12,10,10,16,14,13,13,10,10,12,10,10,17,14,14,14,10,10,8,7,7,12,11,11,13,11,11,12,11,11,16,15,14,14,12,12,12,11,11,16,15,15,14,12,12,11,10,10,14,11,11,13,11,11,13,11,11,17,14,14,14,11,11,13,11,11,18,14,15,15,11,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,1,7,6,15,15,7,8,8,15,15,8,8,8,15,15,0,13,13,16,16,0,14,14,16,16,7,9,9,16,16,10,11,11,17,17,10,8,8,15,16,0,14,14,18,18,0,14,14,16,16,9,9,9,16,16,12,11,11,17,17,10,9,9,15,15,0,14,14,19,19,0,14,14,16,16,0,15,15,18,17,0,0,0,20,20,0,13,13,16,16,0,17,17,22,20,0,15,15,17,17,0,15,15,18,18,0,22,21,20,21,0,13,13,16,16,0,18,18,0,22,0,15,15,17,17,6,7,7,13,13,9,10,10,15,15,11,10,10,15,15,0,21,22,18,18,0,0,0,18,18,10,10,10,15,15,12,13,13,17,17,12,11,11,15,15,0,22,22,18,18,0,0,21,18,18,12,11,11,15,15,15,14,14,18,18,13,11,11,15,15,0,0,21,18,19,0,21,22,18,19,0,22,0,18,19,0,0,0,0,0,0,21,21,18,18,0,22,0,0,21,0,0,0,19,18,0,0,0,18,19,0,0,0,0,0,0,20,20,18,17,0,0,22,0,21,0,0,0,19,19,6,6,6,13,13,8,6,6,11,11,9,7,7,13,13,0,10,10,11,11,0,12,12,14,14,9,8,8,14,14,12,10,10,13,13,10,7,7,13,13,0,11,11,15,15,0,11,11,13,13,9,8,8,14,14,13,10,10,13,14,11,7,7,13,13,0,11,11,15,15,0,11,11,13,13,0,12,12,15,15,0,21,21,17,17,0,10,10,13,13,0,14,14,20,20,0,12,12,13,13,0,12,12,15,15,0,21,22,17,18,0,10,10,13,13,0,16,16,20,21,0,12,12,13,13,0,11,11,13,13,0,12,12,16,16,0,12,12,16,16,0,16,16,0,21,0,17,18,0,0,0,12,12,15,15,0,15,15,18,18,0,12,12,16,16,0,16,16,21,22,0,17,17,22,21,0,12,12,16,16,0,15,15,19,19,0,12,12,16,16,0,16,16,22,22,0,17,16,22,0,0,17,18,0,0,0,0,0,0,0,0,15,15,21,20,0,19,20,0,22,0,18,18,0,0,0,18,17,0,0,0,0,0,0,0,0,16,16,22,21,0,20,20,0,22,0,20,19,0,0,0,11,11,12,12,0,10,10,11,11,0,11,11,12,12,0,12,12,10,10,0,13,13,12,12,0,11,11,13,13,0,13,13,12,12,0,10,10,12,12,0,13,13,14,13,0,12,12,12,12,0,12,12,13,13,0,14,14,13,13,0,10,10,12,12,0,13,13,14,14,0,13,12,12,12,0,14,14,14,14,0,21,21,16,16,0,12,12,12,12,0,16,16,20,21,0,13,13,11,11,0,14,14,14,14,0,20,20,16,15,0,12,12,12,12,0,17,17,20,20,0,13,13,11,11,7,8,8,16,16,11,10,10,15,15,12,10,10,17,17,0,14,14,16,15,0,15,15,17,17,11,9,9,16,16,14,12,12,17,17,13,9,9,16,15,0,14,14,19,18,0,14,14,16,16,12,10,10,17,18,16,13,13,17,18,14,10,10,16,16,0,14,14,19,19,0,14,15,17,17,0,15,15,18,19,0,0,0,20,20,0,13,13,17,17,0,17,18,0,22,0,15,15,16,17,0,15,15,18,18,0,0,0,20,21,0,14,14,17,17,0,19,18,0,0,0,16,16,17,17,8,7,7,14,14,12,11,11,15,15,13,11,11,15,15,0,0,0,18,19,0,21,20,18,18,12,10,11,15,16,14,13,13,18,18,14,11,11,15,15,0,20,20,19,18,0,20,0,18,18,13,11,11,16,16,17,15,15,19,19,14,12,12,15,15,0,21,0,18,20,0,22,22,18,19,0,22,22,19,19,0,0,0,0,0,0,21,22,19,18,0,0,0,0,21,0,0,0,19,19,0,0,22,20,20,0,0,0,0,0,0,22,0,18,18,0,0,0,0,22,0,0,0,19,20,11,10,10,14,14,14,11,11,13,13,14,11,11,15,15,0,14,13,12,12,0,15,15,16,16,13,11,11,15,15,16,13,13,15,15,15,10,10,14,15,0,14,14,16,16,0,14,14,15,15,13,11,11,15,15,18,14,14,15,15,15,10,10,15,14,0,14,14,16,16,0,14,14,15,15,0,15,15,17,16,0,21,22,18,18,0,13,13,14,14,0,18,17,20,21,0,15,15,14,14,0,15,16,16,17,0,0,0,19,18,0,13,13,15,14,0,19,19,0,0,0,15,15,14,14,0,12,12,14,13,0,13,13,16,16,0,12,12,16,16,0,16,16,22,0,0,17,18,0,22,0,13,13,16,16,0,15,15,18,18,0,12,12,16,16,0,16,16,22,22,0,17,17,0,0,0,13,13,17,17,0,16,16,19,20,0,12,12,17,17,0,17,17,22,0,0,17,17,22,21,0,18,18,0,0,0,0,0,0,0,0,16,16,21,21,0,19,19,0,0,0,18,18,0,22,0,18,18,0,22,0,0,0,0,0,0,16,16,22,0,0,20,20,0,0,0,19,18,0,0,0,12,12,15,15,0,12,12,15,14,0,13,13,15,15,0,14,14,14,14,0,15,15,16,16,0,13,13,15,16,0,15,15,16,16,0,12,12,15,15,0,14,14,16,16,0,14,14,15,15,0,13,13,15,16,0,15,15,16,16,0,12,12,15,15,0,15,15,17,17,0,14,14,15,15,0,15,15,17,17,0,21,21,19,19,0,13,13,14,14,0,17,17,22,0,0,14,14,15,15,0,15,15,17,17,0,22,0,18,20,0,13,13,15,15,0,18,18,0,22,0,15,15,14,15,8,8,8,17,16,12,10,10,16,16,13,10,10,17,16,0,15,15,17,17,0,15,15,17,17,12,11,11,18,18,15,12,12,18,18,15,10,10,16,17,0,14,14,18,18,0,14,14,17,17,13,10,10,16,16,17,14,14,17,17,15,10,10,16,15,0,15,15,19,20,0,14,14,15,16,0,16,16,19,19,0,0,0,21,22,0,13,13,17,17,0,18,17,0,21,0,15,15,17,17,0,15,15,18,19,0,0,22,0,21,0,13,13,16,17,0,19,19,0,22,0,16,15,16,16,9,8,8,14,14,12,11,11,15,15,13,11,11,15,15,0,21,20,19,18,0,0,0,19,18,12,11,11,16,15,15,13,13,17,18,14,11,11,15,15,0,22,22,19,18,0,22,21,18,18,14,11,11,15,15,17,14,14,18,18,15,12,12,15,15,0,22,22,20,19,0,0,21,18,18,0,0,22,20,20,0,0,0,0,0,0,20,21,18,18,0,0,0,21,21,0,0,0,20,19,0,22,21,19,19,0,0,0,0,0,0,0,22,17,18,0,0,22,0,22,0,22,0,19,19,0,11,11,15,15,0,11,11,14,14,0,12,12,15,15,0,15,15,14,14,0,16,16,16,16,0,12,12,16,16,0,14,14,16,16,0,11,11,15,15,0,15,15,17,17,0,15,15,15,15,0,12,12,16,16,0,14,14,15,15,0,11,11,15,15,0,15,15,17,17,0,15,15,14,15,0,16,16,17,17,0,0,0,19,19,0,14,14,15,15,0,18,18,21,0,0,15,15,14,15,0,16,16,17,17,0,21,0,19,19,0,14,14,15,15,0,20,20,22,0,0,16,15,14,14,0,12,12,13,13,0,12,12,16,16,0,12,12,16,16,0,16,16,22,21,0,18,17,21,0,0,13,13,16,16,0,15,15,18,19,0,12,12,16,16,0,16,17,22,0,0,17,17,0,22,0,13,13,17,16,0,15,15,19,19,0,12,12,16,16,0,16,16,21,20,0,17,16,22,0,0,18,18,22,21,0,0,0,0,0,0,15,16,21,21,0,19,19,0,0,0,18,17,0,0,0,18,18,21,0,0,0,0,0,0,0,16,16,22,22,0,20,21,0,0,0,18,19,0,22,0,13,13,16,16,0,12,12,15,15,0,13,13,16,16,0,14,14,15,15,0,15,15,17,17,0,13,13,17,16,0,15,15,17,17,0,12,12,16,16,0,15,15,17,17,0,14,14,16,16,0,13,13,16,17,0,15,15,17,17,0,12,12,16,16,0,14,14,17,17,0,14,14,16,16,0,16,16,17,17,0,21,0,21,19,0,13,13,16,16,0,17,17,0,0,0,15,15,16,16,0,16,15,18,18,0,22,0,20,20,0,13,13,15,15,0,18,18,0,0,0,15,15,15,15,0,12,12,17,17,0,14,14,17,17,0,14,14,17,17,0,17,17,18,17,0,17,17,19,18,0,13,13,17,17,0,16,16,18,18,0,13,13,16,16,0,17,17,19,19,0,16,16,17,17,0,13,13,18,18,0,17,17,18,18,0,13,13,17,17,0,17,17,19,19,0,16,17,17,17,0,17,17,19,19,0,21,0,21,19,0,14,14,16,16,0,20,19,0,21,0,16,16,16,16,0,17,18,19,19,0,0,0,0,21,0,15,15,16,17,0,21,20,0,0,0,17,18,16,17,0,9,9,14,14,0,14,14,15,16,0,14,14,15,15,0,0,0,18,18,0,21,0,18,19,0,12,12,15,15,0,16,16,17,17,0,14,14,14,14,0,22,0,19,18,0,22,0,17,18,0,14,14,16,15,0,18,18,19,18,0,14,15,15,15,0,0,21,20,20,0,0,0,18,18,0,21,21,19,19,0,0,0,0,0,0,21,21,18,18,0,22,0,20,20,0,22,0,19,19,0,22,0,19,20,0,0,0,0,0,0,0,21,17,18,0,0,0,22,22,0,0,0,19,18,0,18,20,16,16,0,21,20,17,17,0,0,21,18,18,0,22,21,18,18,0,0,22,19,19,0,20,20,17,17,0,0,0,18,18,0,19,20,17,17,0,22,0,19,21,0,22,21,18,18,0,20,19,17,18,0,0,0,19,19,0,20,20,17,17,0,22,22,21,21,0,20,0,18,18,0,22,22,18,18,0,0,0,20,22,0,20,20,16,16,0,0,0,21,0,0,21,20,16,17,0,22,0,19,20,0,0,0,21,20,0,19,21,17,17,0,0,0,0,0,0,21,21,17,17,0,12,12,13,13,0,14,14,16,16,0,14,14,16,16,0,18,18,0,0,0,19,18,22,0,0,13,13,16,16,0,16,16,18,18,0,13,13,16,16,0,17,18,21,0,0,18,18,21,0,0,13,13,16,16,0,17,17,19,20,0,13,13,16,17,0,18,18,21,0,0,18,18,21,0,0,18,19,0,21,0,0,0,0,0,0,16,16,21,20,0,20,20,0,0,0,18,19,0,0,0,18,18,0,0,0,0,0,0,0,0,16,16,0,21,0,22,22,0,0,0,19,19,0,0,0,16,16,19,20,0,17,16,22,21,0,17,17,21,20,0,19,18,0,22,0,19,19,22,22,0,16,15,22,22,0,19,19,0,21,0,15,15,20,20,0,18,19,0,21,0,18,18,22,22,0,16,16,21,20,0,20,19,21,22,0,16,15,20,20,0,19,19,0,22,0,18,18,21,0,0,19,18,21,22,0,0,0,0,0,0,16,16,19,21,0,20,22,0,22,0,18,18,20,21,0,19,18,0,22,0,0,0,22,0,0,16,16,20,20,0,21,21,0,0,0,18,18,21,0,0,12,12,17,17,0,15,14,17,17,0,14,14,18,18,0,17,17,17,18,0,18,18,18,18,0,13,13,18,18,0,16,17,19,18,0,13,13,16,17,0,17,17,18,19,0,17,17,17,17,0,13,13,17,17,0,17,18,18,18,0,13,13,16,16,0,18,18,19,20,0,16,17,17,16,0,17,18,19,18,0,0,0,22,21,0,15,15,16,16,0,20,20,21,22,0,17,17,16,16,0,16,17,18,18,0,0,0,21,21,0,15,15,16,16,0,21,20,0,0,0,17,17,16,16,0,10,10,14,14,0,14,14,15,15,0,14,14,15,15,0,22,0,18,18,0,0,0,19,19,0,13,13,15,16,0,17,16,18,18,0,14,14,15,15,0,21,21,19,18,0,22,21,18,17,0,14,14,15,15,0,18,18,19,18,0,15,15,14,14,0,22,21,19,19,0,22,21,17,18,0,0,0,19,19,0,0,0,0,0,0,20,22,17,17,0,0,22,22,20,0,0,0,19,18,0,21,22,19,18,0,0,0,0,0,0,22,22,17,18,0,0,0,21,22,0,0,0,19,18,0,20,20,17,17,0,21,21,17,18,0,21,22,18,18,0,21,0,18,18,0,22,0,19,19,0,19,21,18,18,0,0,22,18,18,0,22,21,17,17,0,22,0,20,20,0,0,0,18,18,0,22,21,18,18,0,21,0,19,19,0,20,21,17,17,0,0,22,22,20,0,21,22,17,17,0,0,21,19,18,0,0,0,21,21,0,21,20,16,17,0,0,0,0,0,0,21,0,17,17,0,21,0,19,20,0,0,0,20,22,0,20,20,17,17,0,0,0,0,0,0,21,21,17,17,0,12,12,13,13,0,14,14,16,16,0,14,14,16,16,0,18,18,21,0,0,19,19,22,0,0,13,13,16,16,0,16,16,18,18,0,13,13,16,16,0,18,18,21,22,0,18,18,0,22,0,13,13,16,16,0,17,17,20,18,0,13,13,16,16,0,19,18,0,22,0,18,18,22,21,0,18,19,0,0,0,0,0,0,0,0,16,16,21,21,0,21,21,0,0,0,18,19,0,0,0,19,19,21,0,0,0,0,0,0,0,16,16,0,21,0,20,20,0,0,0,20,20,0,0,0,16,16,21,20,0,18,17,21,22,0,17,18,0,21,0,18,19,22,22,0,19,19,0,22,0,16,17,21,22,0,20,19,0,0,0,16,16,20,21,0,19,19,0,0,0,19,19,0,22,0,17,17,21,21,0,19,20,0,0,0,16,16,0,20,0,19,20,0,21,0,18,18,0,22,0,19,20,22,22,0,0,0,0,22,0,17,17,0,21,0,21,21,0,0,0,18,19,23,21,0,20,19,0,0,0,0,0,0,0,0,17,17,0,20,0,0,0,0,0,0,19,19,23,22,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,4,5,5,9,9,12,9,9,12,12,12,10,10,13,13,13,11,11,12,12,13,13,13,12,12,13,10,10,13,13,13,13,13,13,13,13,10,10,13,12,13,11,11,13,13,13,14,14,13,12,13,10,10,13,13,12,13,13,13,13,13,10,10,12,12,13,11,11,13,13,13,14,14,12,12,13,12,12,13,13,13,13,13,13,13,13,11,11,12,12,13,11,11,13,13,13,14,14,12,12,13,14,14,13,13,14,13,13,14,14,14,14,14,12,12,13,14,14,13,13,14,14,14,12,12,12,8,8,12,12,13,12,12,11,11,13,11,11,11,11,14,12,12,11,11,14,12,12,10,11,14,12,12,12,12,14,12,12,12,12,13,13,13,11,11,14,12,12,11,11,14,12,12,12,12,14,12,12,12,12,14,12,12,12,12,14,13,13,11,11,14,12,12,11,11,14,12,12,12,12,14,13,13,12,12,14,12,12,12,12,14,13,13,11,11,14,12,12,11,11,14,13,13,11,11,15,13,13,12,12,14,12,12,12,12,15,13,13,12,12,14,12,12,11,11,15,13,13,11,11,12,9,9,11,11,13,7,7,11,11,13,8,8,12,12,14,10,10,10,10,14,14,14,11,11,14,8,8,12,12,14,14,14,12,12,14,7,7,11,11,14,9,9,12,12,14,14,14,11,11,14,8,8,12,12,14,14,14,12,12,14,7,7,11,11,14,9,9,12,12,14,14,14,11,11,14,10,10,12,12,14,14,14,13,13,14,9,9,11,11,14,10,10,12,11,15,14,14,11,11,14,15,15,12,12,15,14,14,14,14,15,14,14,11,11,15,14,14,12,12,15,14,14,11,11,14,11,11,10,10,15,10,10,10,10,15,10,10,10,10,15,11,11,9,9,15,12,13,9,9,15,11,11,11,11,15,13,13,11,11,15,10,10,10,10,15,11,11,10,10,15,13,13,11,11,15,11,11,11,11,15,13,13,11,11,15,10,10,10,10,15,11,11,10,10,15,13,13,10,11,15,12,12,11,11,15,13,13,11,10,15,11,11,10,10,15,11,12,10,9,15,13,13,10,10,15,14,14,11,11,15,13,13,11,11,15,14,14,10,10,15,13,13,10,10,15,14,14,10,10,14,13,13,10,10,15,13,13,10,10,15,13,13,10,10,14,14,14,8,9,15,14,14,9,9,15,14,14,11,11,15,14,14,10,10,15,14,14,10,10,15,14,14,11,11,15,14,14,10,10,15,14,14,11,11,15,14,14,10,10,15,14,14,10,10,15,14,14,10,10,15,14,14,9,9,15,14,14,11,11,15,14,14,11,11,15,14,14,10,10,15,14,14,10,10,14,14,14,9,9,15,15,15,11,11,15,14,14,12,12,15,15,15,10,10,15,14,15,10,10,15,15,15,9,9,15,10,10,13,13,17,8,8,12,12,17,10,9,13,13,18,11,11,12,12,18,14,14,12,12,17,9,9,13,13,17,13,13,12,12,18,8,8,12,12,18,10,10,12,12,18,14,14,12,12,18,10,10,13,13,18,13,13,13,13,18,9,9,12,12,18,10,10,13,13,18,14,14,12,12,18,11,11,13,13,18,14,14,13,13,18,10,10,12,12,17,11,11,12,12,18,14,14,12,12,18,14,14,13,13,18,14,14,13,13,19,14,15,12,12,18,14,14,12,12,18,15,15,12,12,13,7,7,11,11,14,15,15,11,11,14,16,15,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,11,12,14,15,15,12,12,13,15,15,11,11,14,15,15,11,11,15,15,15,12,12,14,15,15,12,12,14,16,16,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,15,15,15,12,12,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,14,15,12,12,15,15,15,12,12,15,16,16,12,12,15,15,15,12,12,14,15,15,12,12,15,15,15,12,12,13,13,13,11,11,14,14,15,11,11,14,14,14,12,12,14,15,15,10,10,15,15,15,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,15,15,12,12,15,15,15,11,11,14,15,15,12,12,14,14,15,11,11,14,15,15,11,11,14,15,15,12,12,15,15,15,11,11,15,15,15,12,12,14,15,15,12,12,14,15,15,10,10,14,15,15,11,11,15,15,15,10,10,15,15,15,12,12,15,15,15,14,14,15,15,15,11,11,15,15,15,11,11,15,15,15,11,11,14,10,10,10,10,15,9,9,12,11,15,10,10,12,12,15,11,11,11,11,15,13,13,12,12,16,10,10,12,12,15,13,13,12,12,15,9,9,11,11,15,10,10,13,12,15,13,13,11,11,15,10,10,12,12,15,13,13,12,12,15,9,9,11,11,15,10,10,12,12,15,13,13,11,11,15,11,11,12,12,15,13,13,13,13,15,10,10,11,11,15,11,11,12,12,15,13,14,11,11,15,14,14,13,13,16,14,14,20,19,15,14,14,11,11,15,13,14,12,12,15,14,14,11,11,14,13,13,10,10,14,14,13,11,11,15,13,14,12,12,15,14,14,12,12,15,14,14,11,11,15,14,14,12,12,15,15,14,13,13,15,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,13,13,15,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,15,14,14,11,11,15,15,15,12,12,15,15,15,13,13,16,14,14,12,12,15,15,15,13,13,15,15,15,12,12,15,15,15,12,12,14,10,10,13,13,17,9,9,12,12,17,9,9,13,13,17,11,11,12,12,18,14,14,12,12,18,10,10,13,13,18,14,13,12,12,18,9,9,12,12,18,10,10,12,13,18,14,14,12,12,17,9,9,12,12,17,13,14,12,12,17,9,9,12,12,17,10,10,12,12,17,14,14,11,11,18,11,11,12,12,18,14,14,12,13,18,10,10,12,12,18,11,11,12,12,18,14,14,11,11,18,15,15,12,12,18,14,14,13,13,18,14,15,12,12,17,14,14,12,12,17,15,15,12,12,13,7,7,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,14,15,15,11,11,14,15,15,12,12,14,15,15,11,11,15,15,15,11,11,15,15,15,12,12,14,15,15,12,12,14,15,16,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,15,15,15,12,12,15,16,16,12,12,15,15,15,12,12,15,15,15,12,12,15,15,15,12,12,13,13,13,12,12,14,14,14,11,11,14,14,14,12,12,14,14,14,10,10,15,15,15,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,14,14,12,12,15,15,14,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,14,14,11,11,15,14,14,10,10,14,15,15,12,12,14,14,14,12,12,14,15,15,10,10,14,15,15,11,11,15,15,15,10,10,15,15,15,12,12,15,14,14,13,13,15,15,15,10,10,15,14,14,11,11,15,15,15,10,10,14,10,10,10,10,14,9,9,12,12,15,10,10,12,12,14,11,11,11,11,15,13,14,12,12,15,10,10,13,13,15,13,13,12,12,15,9,9,12,12,15,10,10,13,13,15,13,14,11,11,15,10,10,12,12,15,13,13,12,12,15,9,9,11,11,15,10,10,12,12,15,13,13,11,11,15,11,11,12,12,15,13,13,13,13,15,10,10,11,11,15,11,11,12,12,15,14,14,11,11,15,14,14,13,13,15,14,14,20,19,15,14,14,11,11,15,14,14,12,12,15,14,14,11,11,14,13,13,11,11,15,13,13,11,11,15,14,13,12,12,15,14,14,11,12,15,14,14,11,11,15,14,14,12,12,14,14,14,13,13,15,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,13,13,14,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,15,14,14,11,11,14,14,14,12,12,15,15,15,13,13,16,14,14,12,12,15,15,15,13,13,15,14,14,12,12,15,15,15,12,12,15,11,11,13,13,18,10,10,12,12,17,11,11,12,12,18,12,12,11,11,18,14,14,12,12,18,10,10,13,13,18,14,14,12,12,18,10,10,12,12,18,11,11,12,12,18,14,14,12,12,18,11,11,12,13,18,14,14,12,12,18,10,10,12,12,18,11,11,12,12,18,14,14,11,11,18,11,11,12,12,18,14,14,12,12,17,10,10,11,11,17,12,12,11,11,17,14,14,11,11,18,15,15,12,12,18,14,14,13,13,18,15,15,11,11,18,15,14,12,12,18,15,15,11,11,14,8,8,11,11,14,15,15,10,10,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,15,15,15,11,11,15,15,15,12,12,14,15,15,10,10,15,15,15,11,11,15,15,15,12,12,15,15,15,11,11,15,15,15,13,13,14,15,15,10,10,15,15,15,11,11,15,15,15,12,12,15,15,15,12,12,15,16,16,12,12,15,14,14,11,11,15,15,15,11,11,15,15,15,12,12,16,15,15,13,13,15,16,16,13,13,16,15,15,12,12,15,15,15,12,12,15,15,15,12,12,14,13,13,11,11,14,14,14,11,11,14,14,14,12,12,15,14,14,11,11,15,15,14,11,11,15,14,14,12,12,15,14,14,12,12,14,15,15,11,11,15,14,14,12,12,15,14,14,11,11,15,14,15,12,12,15,14,14,12,12,14,15,15,11,11,15,14,14,11,11,15,14,14,11,11,15,15,14,12,12,15,14,14,12,12,15,15,15,10,11,15,14,14,11,11,15,15,15,10,10,15,15,15,12,12,16,14,14,13,13,15,15,15,11,11,15,14,14,11,11,15,15,15,11,11,14,11,11,9,9,14,10,10,12,12,15,11,11,12,12,15,12,12,12,12,15,14,14,13,13,15,11,11,12,12,15,14,14,13,13,14,10,10,12,12,15,11,11,13,13,15,14,14,12,12,15,10,10,12,12,14,14,14,13,13,14,10,10,11,11,15,11,11,12,12,15,14,14,12,12,15,12,12,13,13,15,14,14,14,14,15,11,11,11,11,15,12,11,12,12,15,14,14,11,11,15,15,15,13,14,15,14,14,20,19,15,14,14,12,12,15,14,14,13,13,15,14,14,12,12,14,13,13,10,10,14,13,13,11,11,14,13,13,11,11,15,14,14,12,12,15,14,14,12,12,15,14,14,12,11,14,14,14,13,13,15,14,14,11,11,15,14,14,11,11,15,14,14,14,14,15,14,14,11,12,15,14,14,13,13,14,14,14,11,11,15,14,14,11,11,15,14,14,14,14,15,14,14,12,12,15,14,14,13,13,15,14,14,11,11,14,14,14,12,12,15,14,14,13,13,15,15,15,13,13,15,14,14,13,13,15,15,15,13,13,15,14,14,13,13,15,15,15,13,13,15,14,14,13,13,18,15,15,12,12,18,15,15,12,12,18,16,16,11,11,18,17,17,12,12,18,15,15,13,13,18,17,17,12,12,18,15,15,12,12,18,15,16,12,12,18,17,17,12,12,18,15,15,13,12,17,16,17,12,12,17,15,15,11,12,18,15,15,12,12,18,17,17,11,11,18,16,16,12,12,18,17,16,12,12,18,15,15,11,11,18,15,15,12,12,18,17,17,11,11,18,17,17,12,12,18,16,16,13,13,18,17,17,11,11,17,16,16,11,11,18,17,17,11,11,15,15,15,11,11,16,15,15,11,11,16,15,15,11,11,16,15,15,12,12,17,15,15,14,14,16,15,15,11,11,17,15,15,14,14,16,15,15,11,11,16,15,15,12,12,18,15,15,13,13,16,15,15,11,11,17,15,15,14,14,16,15,15,11,11,16,15,15,12,12,17,15,15,13,13,16,15,15,12,12,17,16,15,14,14,16,15,15,11,11,16,15,15,12,12,18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,18,14,15,13,13,18,15,15,14,14,18,15,15,13,13,15,13,13,12,12,15,14,14,12,12,16,14,14,12,12,16,14,14,12,12,17,14,15,12,12,16,14,14,12,12,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,17,14,14,12,12,16,14,14,12,12,17,14,14,13,13,15,15,15,11,11,16,14,14,12,12,17,14,14,12,12,16,15,15,12,12,17,14,14,13,12,16,15,15,11,11,16,14,14,12,12,17,15,15,11,11,17,15,15,13,13,17,14,14,13,13,18,15,15,12,12,17,14,14,12,12,17,15,15,12,12,14,15,15,9,9,14,15,15,12,12,15,16,15,13,13,15,15,15,14,14,15,15,15,21,19,15,15,15,13,13,15,15,15,19,19,15,15,15,12,12,15,16,16,14,14,15,15,15,19,19,15,16,15,13,13,15,16,16,19,20,15,15,15,12,13,15,16,16,14,14,15,15,15,20,19,15,15,15,14,14,15,16,16,19,19,15,15,15,14,13,15,15,15,14,14,15,15,15,19,19,15,16,16,20,19,15,17,16,21,20,15,15,15,20,19,15,16,16,20,20,15,15,15,19,20,14,13,13,10,10,14,14,14,11,11,14,14,14,12,12,15,14,14,13,13,15,15,14,20,20,15,14,14,12,12,14,14,14,19,19,15,14,14,11,11,15,14,14,12,12,15,14,14,20,19,15,14,14,12,12,14,14,14,20,20,14,14,14,11,11,15,14,14,12,12,15,14,14,20,21,15,14,14,13,13,15,14,14,20,20,15,14,14,12,12,15,14,14,13,13,14,15,15,20,20,15,15,15,20,19,15,14,14,20,19,15,15,15,20,20,15,14,14,21,20,15,15,15,20,20,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,6,7,7,7,8,8,7,8,8,10,11,11,9,8,8,8,8,8,11,11,12,9,8,8,5,7,7,9,11,11,10,11,11,10,11,11,12,14,14,11,12,12,10,12,12,13,14,14,12,12,12,5,6,6,7,6,6,8,7,7,8,7,7,11,10,10,10,7,7,9,8,8,12,11,11,10,7,7,7,7,7,11,10,10,12,10,10,11,10,10,15,13,13,13,10,10,12,11,11,15,13,13,14,11,11,7,7,7,11,11,11,12,11,11,12,11,11,14,14,14,13,12,12,12,12,12,16,15,15,14,12,12,0,10,10,0,11,11,0,12,12,0,11,11,0,14,14,0,11,11,0,12,12,0,15,15,0,11,11,7,8,8,12,11,10,12,10,10,12,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,12,11,11,12,11,11,15,14,14,14,12,12,13,12,12,15,14,14,15,13,13,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,13,13,0,15,14,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,5,5,0,8,8,0,8,8,0,9,9,0,10,10,0,8,8,0,8,8,0,10,10,0,8,8,0,7,7,0,8,8,0,7,7,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,7,7,0,6,6,0,7,7,0,7,7,0,10,10,0,6,6,0,7,7,0,10,10,0,5,5,0,8,8,0,7,7,0,8,8,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,7,7,0,6,6,0,9,10,0,10,10,0,10,10,0,11,11,0,9,9,0,10,10,0,11,11,0,9,9,0,8,8,0,8,8,0,8,8,0,9,9,0,9,9,0,7,7,0,8,8,0,9,9,0,7,7,0,8,8,0,7,7,0,7,7,0,8,8,0,9,9,0,7,7,0,7,7,0,8,8,0,6,6,0,6,6,0,10,10,0,10,10,0,10,10,0,12,12,0,9,9,0,10,10,0,12,12,0,9,9,0,8,8],"i8",L3,x.GLOBAL_BASE+446300),d3([7,7,0,7,7,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,6,6,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,6,6,5,7,8,0,8,8,6,9,9,7,10,10,0,8,8,0,9,9,0,12,12,0,8,8,4,7,7,6,10,10,0,12,12,7,11,11,8,12,12,0,12,12,0,13,12,0,15,15,0,12,12,0,7,7,0,7,7,0,7,7,0,8,8,0,10,10,0,7,7,0,8,8,0,11,11,0,7,7,5,7,7,8,9,9,0,10,10,8,9,9,11,11,11,0,10,9,0,11,11,0,13,13,0,10,10,6,7,7,8,10,10,0,12,12,9,10,10,10,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,10,10,0,11,11,0,11,11,0,11,11,0,13,13,0,11,11,0,11,11,0,15,15,0,10,10,0,8,8,0,10,10,0,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,11,11,0,7,7,0,10,10,0,12,12,0,10,10,0,12,12,0,12,12,0,13,13,0,14,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,9,9,0,0,0,8,8,0,0,0,9,9,0,0,0,12,12,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,5,5,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,5,5,0,0,0,7,7,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,5,5,0,0,0,7,7,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,11,0,0,0,9,9,0,0,0,10,10,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,7,7,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,8,8,0,0,0,10,11,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,7,7,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,7,8,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,9,9,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,9,9,0,0,0,10,10,0,0,0,12,12,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,5,16,9,9,13,18,21,4,2,21,6,6,10,15,21,16,19,6,5,7,10,13,16,8,6,5,4,4,8,13,16,8,5,6,4,4,7,12,15,13,10,9,7,7,9,13,16,18,15,13,12,9,7,10,14,21,18,13,13,7,5,8,12,2,0,0,0,64,0,0,0,192,58,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,11,7,0,0,0,0,0,0,0,0,0,176,11,7,0,0,0,0,0,0,0,0,0,216,11,7,0,0,12,7,0,0,0,0,0,0,0,0,0,40,12,7,0,80,12,7,0,0,0,0,0,0,0,0,0,120,12,7,0,160,12,7,0,0,0,0,0,0,0,0,0,200,12,7,0,240,12,7,0,160,12,7,0,0,0,0,0,24,13,7,0,64,13,7,0,160,8,7,0,200,8,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,72,11,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,64,11,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,8,7,0,80,8,7,0,0,0,0,0,0,0,0,0,120,8,7,0,160,8,7,0,200,8,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,88,10,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,8,11,7,0,0,0,0,0,2,0,0,0,25,0,0,0,32,10,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,10,7,0,0,0,0,0,2,0,0,0,9,0,0,0,0,10,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,16,10,7,0,0,0,0,0,1,0,0,0,25,0,0,0,120,9,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,152,9,7,0,0,0,0,0,1,0,0,0,25,0,0,0,240,8,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,16,9,7,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,4,4,5,5,5,4,5,4,5,5,5,5,6,5,6,5,6,5,6,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,8,8,8,8,9,9,10,10,10,10,4,6,5,8,7,9,9,9,9,10,9,11,9,4,5,6,7,8,9,9,9,9,9,10,9,10,8,9,8,9,8,10,9,11,9,12,10,12,10,8,8,9,8,9,9,10,9,11,10,12,10,12,9,10,10,11,10,12,11,12,11,12,12,12,12,9,10,10,11,11,11,11,11,12,12,12,12,12,10,11,11,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,13,12,13,12,13,12,12,11,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,12,13,12,12,12,13,12,13,12,13,12,13,12,13,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,4,13,9,9,12,15,17,4,2,18,5,7,10,14,18,11,8,6,5,6,8,11,14,8,5,5,3,5,8,11,13,9,6,7,5,5,7,9,10,11,10,9,8,6,6,8,10,14,14,11,11,9,8,9,10,17,17,14,13,10,9,10,10,5,0,0,0,243,0,0,0,184,57,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,176,58,7,0,0,0,0,0,5,0,0,0,53,12,0,0,104,45,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,57,7,0,0,0,0,0,5,0,0,0,243,0,0,0,96,44,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,88,45,7,0,0,0,0,0,5,0,0,0,243,0,0,0,88,43,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,80,44,7,0,0,0,0,0,5,0,0,0,243,0,0,0,80,42,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,72,43,7,0,0,0,0,0,5,0,0,0,53,12,0,0,0,30,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,42,7,0,0,0,0,0,5,0,0,0,53,12,0,0,176,17,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,232,29,7,0,0,0,0,0,1,0,0,0,7,0,0,0,136,17,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,144,17,7,0,0,0,0,0,5,0,0,0,243,0,0,0,128,16,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,120,17,7,0,0,0,0,0,5,0,0,0,243,0,0,0,120,15,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,112,16,7,0,0,0,0,0,5,0,0,0,243,0,0,0,112,14,7,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,104,15,7,0,0,0,0,0,5,0,0,0,243,0,0,0,104,13,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,96,14,7,0,0,0,0,0,1,9,9,6,9,9,5,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,7,7,7,7,7,7,7,8,8,9,9,9,9,7,7,8,8,8,9,9,9,9,7,8,6,7,7,8,8,8,8,8,8,9,8,8,10,9,9,10,8,8,10,8,8,10,9,9,10,8,8,6,6,6,8,6,6,8,7,7,8,7,7,10,8,8,9,7,7,9,7,7,10,8,9,9,7,7,7,7,7,10,8,8,11,8,8,10,8,8,12,9,9,12,8,8,11,9,9,12,9,9,11,8,8,7,7,7,10,9,9,10,9,9,10,9,9,11,10,10,10,9,9,11,9,9,11,10,10,11,9,9,9,8,8,10,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,9,9,11,10,10,11,9,9,8,8,8,11,9,9,11,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,9,9,12,8,8,8,7,7,10,9,9,10,9,9,11,9,9,11,11,11,11,9,9,11,10,10,11,11,11,11,9,9,10,9,9,11,9,9,11,9,10,11,10,9,11,10,10,11,9,9,11,9,10,11,10,10,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,6,6,7,7,7,7,8,8,7,9,9,11,11,11,9,8,8,8,9,9,12,11,11,9,8,8,6,7,7,10,11,10,10,10,10,11,11,10,14,13,14,12,11,11,11,11,11,15,14,14,13,12,12,5,6,6,8,5,5,8,7,7,8,8,8,12,10,10,9,7,7,9,7,8,12,10,10,10,7,7,7,8,8,12,10,10,12,10,10,11,10,10,15,13,13,13,10,10,11,10,10,16,13,14,14,10,10,7,7,7,12,11,11,12,11,11,11,11,11,16,15,15,14,12,12,12,11,11,16,15,16,14,12,12,10,9,9,14,11,11,13,11,11,12,11,11,16,14,14,14,11,11,12,11,11,17,15,15,14,11,11,7,8,8,12,11,11,12,10,10,12,10,10,16,14,13,14,10,10,12,10,10,17,14,14,14,10,10,8,7,7,13,11,11,12,11,11,12,11,11,16,15,14,14,12,12,12,11,11,16,15,14,15,12,12,11,10,10,13,11,11,13,12,11,13,11,11,17,14,14,14,11,11,13,11,11,17,14,15,14,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,14,14,6,7,7,14,14,7,7,7,15,15,0,12,12,15,15,0,13,13,15,15,7,8,8,15,15,10,10,10,16,16,9,8,8,15,15,0,13,13,18,17,0,13,13,16,16,8,8,8,15,15,12,11,11,16,16,9,8,8,15,15,0,13,13,18,18,0,13,13,16,16,0,14,14,17,17,0,20,0,19,20,0,12,12,16,16,0,16,16,20,22,0,14,14,16,16,0,14,14,17,17,0,20,22,20,19,0,13,13,15,16,0,17,18,0,21,0,15,15,16,16,5,7,7,13,13,8,9,9,14,14,10,10,10,14,14,0,20,22,18,18,0,22,21,18,17,9,10,10,14,14,12,12,12,17,17,12,10,10,14,14,0,0,20,17,17,0,22,21,17,18,11,10,10,14,14,14,13,13,18,18,12,11,11,14,14,0,22,21,18,19,0,20,0,17,17,0,22,0,18,18,0,0,0,0,0,0,20,20,17,17,0,22,0,22,21,0,21,0,19,18,0,22,22,18,18,0,0,0,0,0,0,21,0,17,17,0,22,0,20,20,0,0,0,19,18,6,6,6,12,12,8,6,6,10,10,8,6,6,13,12,0,10,10,11,11,0,11,11,13,13,8,7,7,13,13,11,9,9,13,13,10,6,6,12,12,0,10,10,14,14,0,10,10,13,13,9,7,7,13,13,12,10,10,13,13,10,6,6,12,12,0,11,11,15,15,0,10,10,13,13,0,12,12,15,14,0,19,20,16,17,0,9,9,13,13,0,14,14,20,21,0,12,11,13,12,0,12,12,15,14,0,20,19,17,17,0,10,10,12,13,0,15,15,22,21,0,12,12,12,13,0,10,10,12,12,0,11,11,15,15,0,11,11,15,15,0,15,15,22,22,0,16,17,0,0,0,11,11,15,15,0,14,14,18,18,0,11,11,16,16,0,16,15,0,21,0,16,16,0,0,0,12,12,15,15,0,14,14,19,19,0,11,11,15,15,0,15,15,22,0,0,16,16,22,0,0,16,16,0,21,0,0,0,0,0,0,15,15,19,20,0,18,18,0,0,0,17,17,0,0,0,17,17,0,0,0,0,0,0,0,0,16,15,22,21,0,20,20,0,0,0,18,18,0,0,0,10,10,12,12,0,10,10,11,11,0,11,11,12,12,0,11,11,9,9,0,13,12,12,12,0,11,11,13,13,0,13,13,12,12,0,10,10,12,12,0,13,12,13,13,0,12,12,12,12,0,11,11,13,13,0,13,13,12,12,0,10,10,12,12,0,13,13,14,13,0,12,12,12,12,0,14,13,13,14,0,20,21,15,15,0,11,11,12,12,0,15,16,20,20,0,12,13,10,10,0,13,13,14,13,0,20,20,15,15,0,11,11,12,12,0,16,17,21,21,0,13,13,11,11,6,7,7,16,15,11,9,9,14,15,12,9,9,16,16,0,13,13,15,15,0,14,14,17,17,10,9,9,16,16,14,12,12,16,16,12,9,9,15,15,0,13,13,17,18,0,13,13,15,15,12,10,10,17,17,15,12,12,17,17,13,9,9,16,16,0,13,13,18,19,0,14,14,16,16,0,15,15,18,18,0,0,0,20,19,0,12,12,17,16,0,16,17,0,21,0,14,15,16,16,0,15,15,18,18,0,0,22,19,21,0,13,13,16,16,0,18,17,22,22,0,15,15,16,16,7,7,7,13,13,11,10,10,15,15,12,10,10,14,14,0,21,0,18,17,0,21,22,18,18,11,10,10,15,15,14,12,12,17,17,14,11,11,14,14,0,21,20,18,18,0,22,21,18,17,12,11,10,16,16,16,14,14,17,19,14,11,11,15,15,0,0,22,19,19,0,21,22,18,18,0,21,0,18,19,0,0,0,22,0,0,22,21,17,17,0,0,0,20,22,0,0,21,18,18,0,0,0,19,20,0,0,0,0,0,0,0,21,17,17,0,0,0,22,21,0,0,0,19,19,10,9,9,14,13,13,10,10,12,12,13,10,10,14,14,0,13,13,12,12,0,15,14,16,15,13,10,10,14,14,15,12,12,14,14,15,10,10,14,14,0,14,14,15,15,0,14,13,14,14,13,10,10,15,15,17,13,13,15,15,14,10,10,14,14,0,14,14,15,16,0,14,14,15,15,0,15,15,16,16,0,21,22,17,18,0,12,12,14,14,0,17,17,20,21,0,14,14,14,14,0,15,15,16,16,0,21,22,18,18,0,13,13,14,14,0,18,18,22,0,0,15,15,14,14,0,11,11,13,13,0,12,12,16,15,0,12,12,16,16,0,16,16,0,0,0,16,17,0,22,0,12,12,16,16,0,14,14,17,18,0,11,11,16,16,0,15,15,0,21,0,16,16,21,22,0,12,12,16,16,0,15,15,19,19,0,12,12,17,16,0,16,16,21,22,0,16,16,0,0,0,17,17,0,22,0,0,0,0,0,0,15,15,19,20,0,17,19,0,0,0,17,17,22,0,0,17,17,0,22,0,0,0,0,0,0,15,15,21,0,0,19,20,0,0,0,19,18,22,0,0,11,12,14,14,0,11,11,14,14,0,12,12,15,15,0,13,13,13,13,0,14,14,16,16,0,12,12,15,15,0,14,14,16,15,0,11,11,15,15,0,13,13,16,16,0,13,13,15,15,0,12,12,15,15,0,15,14,16,16,0,11,11,15,15,0,14,14,17,17,0,13,13,15,15,0,15,15,16,16,0,0,0,18,18,0,12,12,14,14,0,16,16,22,0,0,14,14,15,15,0,15,15,16,17,0,21,22,18,18,0,13,13,15,14,0,18,17,22,0,0,14,14,15,15,8,8,8,16,15,12,10,10,16,15,12,10,10,16,16,0,14,14,16,17,0,14,14,17,16,12,10,10,17,18,14,12,12,18,18,14,10,10,16,16,0,14,14,18,18,0,14,14,16,16,12,9,9,16,16,17,13,13,16,17,14,9,9,15,15,0,14,14,18,19,0,13,13,15,15,0,15,15,18,19,0,0,0,22,21,0,13,13,16,16,0,16,16,22,0,0,15,15,16,16,0,14,14,18,17,0,0,0,20,0,0,13,13,16,16,0,18,18,0,0,0,15,15,16,16,8,7,7,13,13,12,10,10,15,15,12,10,10,14,14,0,22,22,19,18,0,0,0,18,18,12,10,10,15,15,14,13,13,17,17,14,11,11,15,15,0,19,20,18,18,0,22,21,17,18,13,11,11,15,15,16,13,13,18,18,14,11,11,14,15,0,22,21,20,19,0,22,21,17,17,0,0,22,19,18,0,0,0,0,0,0,22,20,17,17,0,0,0,21,20,0,0,0,19,17,0,0,22,19,19,0,0,0,0,0,0,22,20,18,17,0,0,0,0,0,0,0,0,18,18,0,10,10,14,14,0,11,11,14,14,0,11,11,15,15,0,14,14,14,14,0,15,15,16,16,0,11,11,16,16,0,13,13,16,16,0,11,11,15,15,0,14,14,16,16,0,14,14,15,15,0,11,11,15,15,0,13,13,15,15,0,10,10,15,15,0,15,15,17,17,0,14,14,14,14,0,16,16,16,16,0,0,22,19,19,0,13,13,14,14,0,17,17,0,0,0,15,15,14,14,0,16,16,17,17,0,0,22,18,18,0,13,13,14,14,0,21,18,0,0,0,15,15,14,14,0,11,11,13,13,0,12,12,15,15,0,12,12,16,15,0,16,16,0,0,0,17,17,22,22,0,12,12,16,16,0,14,14,18,18,0,11,12,16,16,0,15,16,0,21,0,16,16,22,21,0,12,12,16,16,0,15,15,19,20,0,11,12,16,16,0,15,15,20,22,0,16,16,0,22,0,17,17,22,0,0,0,0,0,0,0,15,15,21,22,0,19,18,0,0,0,17,17,0,0,0,17,17,0,22,0,0,0,0,0,0,16,15,22,0,0,19,19,0,0,0,17,18,0,0,0,12,12,15,15,0,12,12,15,15,0,12,12,15,15,0,13,13,14,14,0,15,15,16,17,0,12,12,16,16,0,14,14,16,16,0,12,11,15,16,0,14,14,16,17,0,14,14,16,16,0,13,12,16,16,0,15,15,16,16,0,11,11,15,15,0,14,14,16,16,0,14,14,15,15,0,15,15,18,17,0,0,22,0,20,0,13,13,15,15,0,16,17,22,22,0,14,14,15,15,0,15,15,17,18,0,20,0,19,19,0,13,13,15,15,0,18,18,22,0,0,14,14,15,15,0,11,11,16,16,0,14,14,17,16,0,13,13,17,17,0,16,16,17,17,0,17,17,18,19,0,12,12,16,17,0,15,15,18,18,0,12,12,16,16,0,16,16,19,18,0,16,16,17,16,0,12,13,17,17,0,17,16,18,17,0,13,12,16,16,0,16,16,18,19,0,16,16,16,17,0,16,16,18,18,0,22,0,22,22,0,13,13,16,16,0,19,18,22,20,0,16,15,16,16,0,16,17,18,18,0,0,0,22,20,0,14,14,16,16,0,19,19,0,0,0,16,16,16,16,0,9,9,13,13,0,13,13,15,15,0,14,14,15,15,0,0,22,17,18,0,22,0,18,19,0,12,12,15,15,0,15,16,17,17,0,14,14,14,14,0,22,0,18,18,0,21,22,17,17,0,13,13,15,15,0,17,17,17,18,0,14,14,15,15,0,22,21,21,19,0,20,21,17,17,0,21,21,19,18,0,0,0,0,0,0,21,21,17,17,0,0,0,22,22,0,0,22,19,18,0,0,21,19,18,0,0,0,0,22,0,19,20,17,17,0,0,0,0,22,0,0,0,19,18,0,19,19,15,16,0,21,19,16,17,0,0,21,17,17,0,0,22,17,17,0,22,22,18,19,0,20,20,16,16,0,0,22,18,18,0,20,19,16,17,0,22,21,20,19,0,0,21,17,17,0,21,20,17,17,0,0,0,18,18,0,19,19,17,16,0,22,0,19,19,0,21,22,17,18,0,0,22,19,18,0,0,0,19,20,0,19,19,16,16,0,22,22,22,0,0,20,22,16,16,0,22,20,18,19,0,0,0,20,19,0,20,20,16,16,0,0,0,0,0,0,22,20,17,16,0,11,11,13,13,0,14,13,15,15,0,13,13,16,15,0,18,17,21,0,0,18,18,21,0,0,12,12,15,15,0,15,16,17,18,0,12,12,15,15,0,17,17,22,20,0,17,18,22,0,0,12,12,17,16,0,16,17,19,19,0,13,13,16,16,0,17,17,0,22,0,17,17,0,21,0,18,18,20,22,0,0,0,0,0,0,15,15,21,20,0,20,19,0,0,0,18,18,22,0,0,17,17,22,0,0,0,0,0,0,0,15,16,20,22,0,20,21,0,0,0,19,18,0,0,0,15,15,19,19,0,17,16,20,20,0,16,17,20,21,0,18,17,0,0,0,19,19,0,0,0,15,15,21,19,0,19,19,0,0,0,15,15,22,22,0,18,18,0,22,0,17,18,22,21,0,15,15,20,19,0,19,19,0,0,0,15,15,20,22,0,18,19,20,0,0,18,17,21,21,0,18,18,19,22,0,0,0,0,0,0,15,15,20,19,0,19,19,0,0,0,18,18,21,22,0,18,18,22,0,0,0,0,0,0,0,15,15,19,20,0,21,21,0,0,0,17,17,20,20,0,12,12,17,17,0,14,14,16,17,0,13,14,17,17,0,16,16,17,17,0,17,17,17,19,0,13,13,17,17,0,16,16,18,18,0,13,13,16,16,0,16,16,18,18,0,16,16,17,17,0,13,13,17,17,0,17,17,18,17,0,12,12,15,16,0,17,18,19,20,0,16,16,16,16,0,17,16,18,19,0,0,22,21,22,0,14,14,16,16,0,19,19,0,0,0,16,16,16,16,0,16,16,18,17,0,0,22,21,21,0,14,14,16,16,0,22,20,22,0,0,16,16,15,15,0,9,9,13,13,0,14,14,15,15,0,14,14,14,14,0,22,22,18,18,0,0,22,18,18,0,12,12,15,15,0,16,16,18,17,0,14,14,14,14,0,20,21,18,18,0,22,21,17,17,0,13,13,15,15,0,17,17,18,18,0,14,14,14,14,0,0,21,18,19,0,0,22,17,17,0,22,22,19,18,0,0,0,0,0,0,19,21,17,17,0,0,0,22,20,0,0,21,18,19,0,0,22,18,18,0,0,0,0,22,0,20,22,17,17,0,0,0,20,22,0,0,0,18,18,0,19,21,16,16,0,20,22,16,17,0,20,0,17,17,0,22,0,18,17,0,21,0,18,19,0,20,20,17,17,0,22,0,18,18,0,21,20,17,17,0,0,20,20,19,0,0,21,18,17,0,21,21,17,17,0,22,0,18,17,0,19,19,17,17,0,0,22,20,21,0,0,21,17,17,0,22,0,18,18,0,0,0,20,22,0,20,19,16,16,0,0,0,0,0,0,22,22,17,17,0,22,0,18,19,0,0,0,21,20,0,19,21,16,17,0,0,0,0,0,0,22,22,17,16,0,11,11,13,13,0,13,13,15,15,0,13,13,15,15,0,17,17,22,21,0,18,18,22,0,0,12,13,16,15,0,15,16,18,18,0,13,13,16,16,0,17,17,0,22,0,17,17,22,22,0,13,13,16,16,0,16,16,19,18,0,13,13,16,16,0,18,17,0,20,0,18,17,20,0,0,17,17,21,0,0,0,0,0,0,0,15,15,21,22,0,19,20,0,0,0,18,18,0,0,0,18,17,0,0,0,0,0,0,0,0,16,16,22,22,0,20,20,0,0,0,21,19,0,0,0,15,15,20,19,0,16,16,22,20,0,17,17,0,22,0,18,18,0,22,0,19,17,0,0,0,15,16,22,20,0,18,19,0,0,0,16,16,22,20,0,18,18,0,22,0,18,18,22,0,0,16,16,21,20,0,19,20,0,22,0,16,16,0,22,0,18,18,0,22,0,18,18,0,21,0,19,18,0,22,0,0,0,0,0,0,16,16,21,20,0,20,0,0,0,0,18,18,21,0,0,18,18,0,0,0,0,0,0,0,0,16,16,21,19,0,0,0,0,0,0,18,18,0,21,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,5,8,8,12,10,10,12,12,12,10,10,12,12,13,11,11,12,12,13,12,12,12,12,13,10,10,13,13,13,13,13,13,13,13,10,10,13,13,13,11,11,13,13,14,13,13,12,12,13,10,10,13,13,13,13,13,13,13,13,10,10,12,12,13,11,11,13,13,13,13,13,12,12,13,12,12,13,13,13,13,13,13,13,14,11,11,12,12,14,12,12,13,12,14,14,14,12,12,13,14,14,13,13,14,13,13,13,13,14,14,14,12,12,14,13,13,13,13,14,14,14,12,12,12,8,8,11,11,12,12,12,11,11,12,11,11,10,10,13,12,12,10,10,13,12,12,10,10,13,12,12,12,12,14,12,12,12,12,13,13,13,11,11,14,12,12,11,11,14,12,12,12,12,14,12,12,12,12,13,12,12,12,12,13,13,13,11,11,14,12,12,11,11,14,12,12,12,12,14,13,13,12,12,14,12,12,12,11,14,13,13,11,11,14,13,12,11,11,14,13,13,11,11,14,13,13,12,12,14,12,12,12,12,15,13,13,12,12,14,12,12,11,11,14,13,13,11,11,12,9,9,10,10,12,7,7,11,11,12,9,9,12,12,13,10,10,10,10,14,14,14,11,11,13,9,9,12,12,14,14,14,12,12,13,8,8,11,11,14,9,9,12,12,14,14,14,11,11,13,9,9,12,12,14,14,14,12,12,14,8,8,11,11,14,9,9,12,12,14,14,14,11,11,14,10,10,12,12,14,14,14,13,13,14,9,9,11,11,14,10,10,12,12,14,14,14,11,11,14,14,15,12,12,15],"i8",L3,x.GLOBAL_BASE+456540),d3([14,14,14,14,15,14,14,11,11,14,14,14,12,12,14,14,14,11,11,14,11,11,10,10,14,10,10,10,10,14,10,10,10,10,15,11,11,9,9,14,12,12,9,9,15,11,11,11,11,15,13,13,11,11,15,10,10,10,10,15,11,11,10,10,15,13,13,11,11,15,11,11,11,11,15,13,13,11,11,15,10,10,10,10,15,11,11,10,10,15,13,13,11,11,15,12,12,11,11,15,13,13,11,11,15,11,11,10,10,15,12,12,10,10,15,13,13,10,10,15,14,14,11,11,15,13,13,11,11,15,14,14,10,11,15,13,13,10,10,15,13,14,10,10,14,13,13,10,10,14,13,13,10,10,14,13,13,10,10,14,13,13,9,9,14,14,14,9,9,15,14,14,11,11,15,14,14,10,10,15,14,14,10,10,15,14,14,11,11,15,14,14,10,10,15,14,14,11,11,15,14,14,10,10,14,14,14,10,10,15,14,14,10,10,14,14,14,10,10,15,14,14,11,11,15,14,14,11,11,14,14,14,10,10,15,14,14,10,10,14,14,14,9,9,15,15,15,11,11,15,14,14,12,12,15,15,14,10,10,15,14,14,10,10,14,15,15,9,9,14,10,10,12,12,17,9,9,12,12,17,10,10,13,13,17,11,11,12,12,18,14,14,12,12,17,10,10,13,13,17,14,14,12,12,17,9,9,12,12,17,11,11,12,12,17,14,14,12,12,18,10,10,13,13,18,14,14,13,13,18,9,9,12,12,18,10,10,13,13,18,14,14,12,12,18,11,11,13,13,18,14,14,13,13,18,10,10,12,12,17,11,11,12,12,17,14,14,12,12,18,15,15,13,13,18,14,14,14,14,18,15,15,12,12,18,14,14,12,12,18,15,15,12,12,13,7,7,11,11,14,15,15,11,11,14,15,15,12,12,14,15,15,11,11,15,15,15,11,11,14,15,15,12,12,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,14,15,15,12,12,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,15,15,15,12,12,14,15,15,12,12,14,15,14,12,12,14,15,15,11,11,15,14,14,12,12,15,15,15,12,12,15,16,16,12,12,15,15,15,12,12,15,15,15,12,12,15,15,15,12,12,13,13,13,11,10,14,14,15,11,11,14,14,14,12,12,15,14,14,10,10,15,15,15,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,15,15,12,12,15,15,15,11,11,14,15,15,12,12,14,14,14,12,12,14,15,15,11,11,14,15,15,12,12,15,15,15,11,11,15,15,15,12,12,15,14,14,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,10,10,15,15,16,12,12,15,15,15,14,14,15,15,15,11,11,15,15,15,12,12,15,15,15,11,11,14,11,11,10,10,15,9,9,12,12,15,10,10,12,12,15,11,11,11,11,15,14,14,12,12,15,10,10,13,13,15,14,14,12,12,15,9,9,12,12,15,10,10,13,13,15,13,13,12,11,15,10,10,12,12,15,14,14,12,12,15,9,9,11,11,15,11,11,12,12,15,13,13,11,11,15,11,11,13,13,15,13,14,13,14,15,11,11,11,11,15,11,11,12,12,15,14,14,11,11,15,14,14,13,13,15,14,14,20,20,15,14,14,12,12,15,14,14,12,12,15,14,14,11,11,14,13,13,10,10,14,13,13,12,12,14,14,13,12,12,15,14,14,12,12,15,14,14,11,11,15,14,14,12,12,15,14,14,13,13,15,14,14,12,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,13,13,15,14,14,12,11,15,14,14,12,12,15,14,14,13,13,15,14,14,13,13,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,15,15,15,13,13,15,15,15,13,13,15,14,14,13,13,15,15,15,13,13,15,14,15,12,12,15,15,15,13,13,14,10,10,12,13,17,9,9,12,12,17,10,10,13,13,17,11,11,12,12,18,14,14,12,12,18,10,10,13,13,18,14,14,12,12,17,9,9,12,12,18,10,11,13,13,18,14,14,12,12,17,10,10,12,12,17,14,14,12,12,17,9,9,12,12,17,11,11,12,12,17,14,14,12,12,18,11,11,12,12,18,14,14,13,13,18,11,11,12,12,18,11,11,12,12,18,14,14,12,12,18,15,15,12,12,18,14,14,13,13,18,15,15,12,12,17,14,14,12,12,17,15,15,12,12,13,7,7,11,11,14,15,15,11,11,14,15,15,11,11,14,15,14,12,12,15,15,15,12,11,14,15,15,12,12,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,13,13,14,15,15,11,11,14,15,15,13,12,14,15,15,11,11,14,15,15,11,11,15,15,15,13,13,14,15,15,12,12,15,15,15,12,12,15,15,15,11,11,15,15,15,11,11,15,15,15,12,12,15,15,15,13,13,15,16,16,12,12,15,15,15,12,13,15,15,15,12,12,15,15,15,12,12,13,13,13,11,11,14,14,14,11,11,14,14,14,12,12,14,14,14,10,10,15,14,14,11,11,14,15,15,12,12,14,14,14,12,12,14,15,15,11,11,14,15,14,12,12,15,14,14,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,14,14,12,12,15,15,14,11,11,15,15,15,12,12,15,14,14,12,12,14,15,15,11,11,14,15,14,11,11,15,15,15,10,10,15,15,15,12,12,15,14,14,14,13,15,15,15,11,11,15,15,15,11,11,15,15,15,10,10,14,11,11,10,10,15,9,9,12,12,15,10,10,12,12,15,11,11,11,11,15,14,14,12,12,15,10,10,13,13,15,13,13,12,12,15,9,9,12,12,15,11,11,13,13,15,14,14,12,12,15,10,10,13,13,15,13,14,12,12,15,9,9,12,12,15,10,10,13,13,15,13,13,11,11,15,11,11,13,13,15,14,14,13,13,15,10,10,11,11,15,11,11,12,12,15,14,14,11,11,15,14,14,13,13,15,14,14,21,20,15,14,14,11,11,15,14,14,12,12,15,14,14,11,11,14,13,13,10,10,14,13,13,11,11,15,14,14,12,12,15,14,14,12,12,14,14,14,12,12,15,14,14,12,12,15,14,14,13,13,14,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,13,13,14,14,14,11,11,15,14,14,11,11,14,14,14,13,13,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,14,14,14,13,13,15,15,15,13,13,16,14,14,12,13,15,15,15,13,13,15,14,14,12,12,15,15,15,13,13,15,11,11,13,12,18,10,10,12,12,17,11,11,12,12,18,12,12,11,11,18,14,14,12,12,18,11,11,13,13,17,14,14,12,12,18,10,10,12,12,18,12,12,12,12,18,14,15,12,12,18,11,11,13,13,18,14,14,12,12,17,10,10,12,12,18,11,11,12,12,18,15,14,12,12,17,12,12,12,12,17,14,14,12,12,17,11,11,11,11,17,12,12,12,11,17,15,15,11,11,18,15,15,12,12,18,14,15,13,13,18,15,15,11,11,17,15,15,12,12,18,15,15,11,11,14,9,9,11,11,14,15,15,11,11,15,15,15,11,11,15,15,15,12,11,15,15,15,12,12,15,15,15,11,11,15,15,15,13,13,14,15,15,11,11,15,15,15,11,11,15,15,15,13,13,15,15,15,11,11,15,15,15,13,13,15,15,15,11,11,15,15,15,11,11,15,15,15,13,13,15,15,15,12,12,15,15,15,13,13,15,15,14,11,11,15,15,15,12,12,15,15,15,12,12,16,15,15,13,13,15,16,16,13,13,16,15,15,12,12,15,15,15,13,12,15,15,15,12,12,13,12,12,11,11,14,14,14,11,11,14,14,14,12,12,15,14,14,11,11,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,14,15,15,11,11,15,14,14,12,12,15,14,14,11,11,15,14,14,12,12,15,14,14,12,12,14,15,15,11,11,15,14,14,12,12,15,14,14,11,11,15,15,15,12,12,15,14,14,12,12,15,15,15,11,11,15,14,14,11,11,15,14,15,11,11,15,15,15,12,12,15,14,14,13,13,16,15,15,11,11,15,14,14,12,12,15,15,15,11,11,14,11,11,9,9,15,10,10,12,12,14,11,11,12,12,15,12,12,12,12,15,14,14,13,13,15,11,11,13,13,15,14,14,13,13,15,10,10,12,12,15,12,12,13,13,15,14,14,13,13,15,11,11,12,12,15,14,14,13,13,14,10,10,12,12,15,12,12,13,13,15,14,14,12,12,15,12,12,13,13,15,14,14,15,15,15,11,11,12,12,15,12,12,12,13,15,14,14,12,12,15,15,15,14,14,15,14,14,20,20,15,14,14,12,12,15,14,14,13,13,15,14,14,12,12,14,13,13,10,10,14,13,13,11,11,14,13,13,12,12,14,14,14,12,12,15,14,14,13,13,15,14,14,12,12,14,14,14,14,14,14,14,14,11,11,15,14,14,12,12,15,14,14,14,14,15,14,14,12,12,14,14,14,14,14,14,14,14,11,11,15,14,14,12,12,14,14,14,14,14,15,14,14,12,12,15,14,14,13,13,15,14,14,12,12,15,14,14,12,12,14,14,14,14,13,15,15,15,14,14,15,14,14,13,13,15,15,15,14,14,15,14,14,13,13,15,15,15,13,13,14,13,13,13,13,18,15,15,12,12,18,15,15,13,12,18,15,16,11,11,18,16,17,12,12,18,15,15,13,13,18,17,17,12,12,18,15,15,12,12,17,15,15,12,12,18,17,17,12,12,18,15,15,13,13,18,16,17,12,12,17,15,15,12,12,18,15,15,12,12,18,16,17,11,12,18,16,16,12,12,17,16,17,12,12,18,15,15,11,11,18,15,15,12,12,18,17,17,11,11,17,17,17,12,12,18,16,16,13,13,18,17,17,11,11,18,16,16,12,12,18,17,17,11,11,15,14,14,11,11,16,15,15,11,11,16,15,15,12,12,16,15,15,12,12,17,15,15,14,13,16,15,15,12,12,17,15,15,14,14,16,15,15,11,11,16,15,15,12,12,18,15,15,13,13,16,15,15,11,11,17,15,15,14,14,16,15,15,11,11,16,15,15,12,12,17,15,15,13,13,16,15,15,12,12,17,16,15,14,14,16,14,15,12,12,16,15,15,12,12,18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,15,12,13,11,11,15,14,14,12,12,16,14,14,12,12,16,14,14,12,12,16,14,14,12,12,16,14,14,13,12,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,17,14,14,12,12,16,14,14,12,12,17,14,14,13,13,15,15,15,12,12,16,14,14,12,12,17,14,14,12,12,17,15,15,12,12,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,17,15,15,12,12,18,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,17,15,15,12,12,14,15,15,9,9,15,15,15,12,12,15,15,15,13,13,15,15,15,14,14,15,15,15,19,19,15,15,16,13,13,15,15,16,19,20,15,15,15,13,12,15,16,16,14,14,15,15,15,19,19,15,15,15,13,13,15,16,15,20,19,14,15,15,13,13,15,15,15,14,14,15,15,15,19,19,15,15,15,14,14,15,16,16,19,20,15,15,15,14,14,15,15,15,14,14,15,15,15,19,19,15,15,15,20,19,15,16,16,20,19,15,15,15,19,19,15,16,16,20,20,15,15,15,19,20,14,13,13,10,10,14,14,14,11,11,14,14,14,12,12,15,14,14,13,13,15,14,14,19,20,15,14,14,12,12,14,14,14,20,19,14,14,14,11,11,15,14,14,12,12,15,14,14,20,20,15,14,14,12,12,14,14,14,20,19,14,14,14,11,11,15,14,14,12,12,15,14,14,19,20,15,14,14,13,13,15,14,14,22,19,15,15,14,12,12,15,14,14,13,13,14,15,15,22,20,15,15,15,20,20,15,14,14,21,20,15,15,15,20,21,15,14,14,20,20,14,15,15,20,20,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,7,7,7,7,7,7,7,8,8,10,11,11,9,8,8,8,8,8,11,11,11,10,8,8,5,7,7,9,11,11,10,11,11,10,11,11,12,13,14,11,12,12,10,11,11,13,14,14,12,12,12,5,6,6,8,6,6,8,7,7,8,7,7,11,10,10,10,7,7,9,7,7,12,11,11,11,7,7,7,7,7,11,10,10,12,10,10,11,10,10,15,13,13,13,10,10,12,11,11,15,13,13,14,11,11,7,7,7,11,11,11,12,11,11,12,11,11,14,14,14,14,12,12,12,12,12,16,15,15,14,12,12,0,10,10,0,11,11,0,11,12,0,11,11,0,14,14,0,11,11,0,12,12,0,15,15,0,11,11,8,8,8,12,10,10,12,10,10,13,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,13,11,11,12,11,11,15,14,14,14,12,12,13,12,12,15,14,14,15,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,13,13,0,14,15,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,0,8,8,0,8,8,0,9,9,0,10,10,0,8,8,0,9,9,0,10,10,0,8,8,0,7,7,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,7,7,0,6,6,0,7,7,0,7,7,0,10,10,0,6,6,0,7,7,0,10,10,0,6,5,0,8,8,0,7,7,0,8,8,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,7,7,0,6,6,0,9,10,0,10,10,0,10,10,0,11,11,0,9,9,0,10,10,0,11,11,0,9,9,0,8,8,0,8,8,0,8,8,0,9,9,0,9,9,0,8,8,0,8,8,0,9,9,0,7,7,0,8,8,0,7,7,0,7,7,0,8,8,0,9,9,0,7,7,0,7,7,0,9,9,0,6,6,0,6,6,0,10,10,0,10,10,0,10,10,0,12,12,0,9,9,0,10,10,0,12,12,0,9,9,0,8,8,0,7,7,0,8,8,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,7,7,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,5,8,8,0,8,8,6,9,9,8,10,10,0,8,8,0,9,9,0,12,12,0,8,8,4,7,7,6,10,10,0,12,12,7,11,11,9,12,12,0,12,12,0,13,13,0,15,15,0,12,12,0,7,7,0,7,7,0,8,8,0,8,8,0,10,10,0,7,7,0,8,8,0,11,11,0,7,7,5,7,7,9,9,9,0,11,10,9,9,9,11,12,12,0,10,10,0,11,11,0,13,13,0,11,11,6,7,7,9,10,10,0,12,12,10,11,11,11,12,12,0,12,12,0,13,13,0,15,15,0,12,12,0,10,10,0,11,11,0,11,11,0,12,12,0,13,13,0,11,11,0,12,12,0,15,15,0,11,11,0,8,8,0,10,10,0,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,11,11,0,7,7,0,10,10,0,12,12,0,10,10,0,12,13,0,12,12,0,13,13,0,14,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,7,7,0,0,0,8,8,0,0,0,8,8,0,0,0,11,11,0,0,0,0,0,0,0,0,10,9,0,0,0,0,0,0,0,0,9,9,0,0,0,10,11,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,5,5,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,5,5,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,5,6,0,0,0,7,7,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,11,0,0,0,9,9,0,0,0,10,10,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,11,12,0,0,0,0,0,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,7,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,9,9,0,0,0,10,10,0,0,0,11,12,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,8,8,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,9,9,0,0,0,10,10,0,0,0,12,12,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,5,16,9,9,12,17,18,4,2,18,6,5,9,13,15,10,7,7,6,7,9,13,13,8,5,6,5,5,7,11,12,8,4,7,4,3,6,10,12,11,8,9,7,6,8,11,12,15,13,13,11,9,7,10,12,16,12,16,12,6,5,8,11,2,0,0,0,64,0,0,0,144,111,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,64,7,0,0,0,0,0,0,0,0,0,128,64,7,0,0,0,0,0,0,0,0,0,168,64,7,0,208,64,7,0,0,0,0,0,0,0,0,0,248,64,7,0,32,65,7,0,0,0,0,0,0,0,0,0,72,65,7,0,112,65,7,0,0,0,0,0,0,0,0,0,152,65,7,0,192,65,7,0,112,65,7,0,0,0,0,0,232,65,7,0,16,66,7,0,112,61,7,0,152,61,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,24,64,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,16,64,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,60,7,0,32,61,7,0,0,0,0,0,0,0,0,0,72,61,7,0,112,61,7,0,152,61,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,40,63,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,216,63,7,0,0,0,0,0,2,0,0,0,25,0,0,0,240,62,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,63,7,0,0,0,0,0,2,0,0,0,9,0,0,0,208,62,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,224,62,7,0,0,0,0,0,1,0,0,0,25,0,0,0,72,62,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,104,62,7,0,0,0,0,0,1,0,0,0,25,0,0,0,192,61,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,224,61,7,0,0,0,0,0,3,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,6,5,4,5,5,5,6,5,5,6,6,6,5,6,5,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,8,8,9,9,10,10,11,11,4,6,5,8,7,9,8,10,9,11,10,11,11,4,5,6,7,8,8,9,9,10,10,10,10,11,8,9,8,10,8,10,9,11,10,11,11,11,11,8,8,9,8,10,9,10,10,11,11,11,11,11,9,10,10,11,11,11,11,11,11,12,11,12,11,9,10,10,10,11,11,11,11,11,11,12,11,12,10,11,11,12,11,12,12,12,12,12,12,12,12,10,11,11,11,11,12,12,12,13,12,12,12,12,11,12,12,12,12,13,13,12,12,12,12,12,12,11,12,12,12,12,13,13,12,13,12,12,12,12,12,13,13,13,13,13,13,12,13,12,13,12,12,12,13,13,13,13,13,13,13,12,13,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,4,9,8,8,10,13,16,4,2,9,5,7,10,14,18,9,7,6,5,7,9,12,16,7,5,5,3,5,8,11,13,8,7,7,5,5,7,9,11,10,10,9,8,6,6,8,10,13,14,13,11,9,8,9,10,17,18,16,14,11,10,10,10,5,0,0,0,243,0,0,0,136,110,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,128,111,7,0,0,0,0,0,5,0,0,0,53,12,0,0,56,98,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,112,110,7,0,0,0,0,0,5,0,0,0,243,0,0,0,48,97,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,40,98,7,0,0,0,0,0,5,0,0,0,243,0,0,0,40,96,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,32,97,7,0,0,0,0,0,5,0,0,0,243,0,0,0,32,95,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,24,96,7,0,0,0,0,0,5,0,0,0,53,12,0,0,208,82,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,8,95,7,0,0,0,0,0,5,0,0,0,53,12,0,0,128,70,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,184,82,7,0,0,0,0,0,1,0,0,0,7,0,0,0,88,70,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,96,70,7,0,0,0,0,0,5,0,0,0,243,0,0,0,80,69,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,72,70,7,0,0,0,0,0,5,0,0,0,243,0,0,0,72,68,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,64,69,7,0,0,0,0,0,5,0,0,0,243,0,0,0,64,67,7,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,56,68,7,0,0,0,0,0,5,0,0,0,243,0,0,0,56,66,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,48,67,7,0,0,0,0,0,1,9,9,6,9,9,5,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,7,7,7,7,7,7,7,8,8,9,9,9,8,7,7,8,8,8,9,9,9,9,8,8,6,7,7,9,8,8,9,7,7,9,8,8,10,8,8,10,8,8,10,8,8,10,8,9,10,8,8,7,6,6,8,6,6,9,6,6,9,7,7,10,8,8,9,6,6,9,7,7,10,9,8,9,7,7,7,7,7,11,8,8,11,9,9,10,9,9,12,9,9,12,8,8,11,9,9,12,9,9,12,8,8,8,7,7,10,9,9,10,9,9,10,9,9,11,10,11,11,9,9,11,9,9,11,11,11,11,9,9,10,8,8,11,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,9,9,12,10,10,11,9,9,8,8,8,11,9,9,12,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,9,10,12,8,8,9,7,7,11,9,9,11,10,10,11,9,9,11,11,11,11,9,9,11,10,10,12,11,11,11,9,10,10,9,9,11,9,9,11,10,10,11,10,10,11,11,11,11,9,9,11,9,10,11,11,11,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,7,7,7,8,8,7,8,8,7,9,9,10,11,11,9,8,8,7,8,9,11,11,11,9,8,8,6,7,7,10,10,10,10,10,10,10,10,10,14,14,14,12,11,11,10,11,11,15,14,14,13,11,11,6,6,6,8,5,5,8,7,7,8,7,7,11,10,10,9,7,7,9,7,7,12,10,10,10,7,7,6,8,7,12,10,10,12,10,10,11,10,10,15,14,13,13,10,10,11,10,10,16,14,14,14,10,10,7,7,7,12,11,11,12,11,11,11,11,11,16,14,14,13,12,12,11,11,11,17,15,15,14,12,12,10,9,9,13,11,11,13,11,11,12,11,11,16,14,13,14,11,11,12,11,11,17,15,14,14,11,11,7,8,8,12,11,11,12,10,10,12,10,10,16,13,14,13,10,10,11,10,10,17,14,14,14,10,10,7,7,7,12,11,11,12,11,11,12,11,11,15,14,15,14,12,12,12,11,11,17,15,15,14,12,12,10,10,9,13,11,11,13,11,11,13,11,11,16,14,14,14,11,11,13,11,11,16,15,15,15,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,14,14,6,7,7,14,14,7,7,7,15,15,0,13,13,16,16,0,13,13,15,15,7,8,8,15,15,9,10,10,17,16,9,8,8,15,15,0,13,13,18,17,0,13,13,16,16,8,8,8,15,15,12,11,11,16,17,9,8,8,14,14,0,13,13,18,17,0,13,13,16,15,0,14,14,18,17,0,20,22,18,20,0,12,12,16,16,0,16,16,22,20,0,14,14,16,16,0,14,14,17,17,0,22,22,22,19,0,12,13,16,16,0,17,17,0,0,0,15,15,16,16,5,7,7,13,13,9,9,9,15,14,10,10,10,14,14,0,21,21,18,17,0,21,22,18,17,9,10,10,14,14,12,12,12,17,17,12,10,10,14,14,0,19,21,18,17,0,20,22,18,18,11,10,10,14,14,14,13,13,18,17,12,11,11,14,14,0,22,19,17,18,0,20,0,18,17,0,22,21,17,17,0,0,0,0,0,0,20,22,17,17,0,22,0,21,19,0,22,0,18,18,0,0,22],"i8",L3,x.GLOBAL_BASE+466780),d3([18,19,0,0,0,0,0,0,19,21,17,17,0,0,0,20,20,0,0,0,18,18,6,6,6,13,12,8,6,6,11,11,8,6,6,13,13,0,9,9,11,11,0,11,11,14,14,9,7,7,13,13,11,9,9,13,13,10,6,6,13,13,0,10,10,14,14,0,10,10,13,13,9,7,7,13,14,13,9,9,13,13,10,6,6,13,12,0,11,11,15,15,0,10,10,13,13,0,12,12,15,15,0,19,0,17,17,0,9,9,13,13,0,13,14,19,20,0,11,11,13,13,0,11,11,14,14,0,19,20,17,18,0,10,10,13,13,0,15,15,21,19,0,12,12,13,13,0,10,10,12,13,0,11,11,15,15,0,11,11,15,15,0,15,15,22,0,0,16,17,22,0,0,11,11,15,15,0,14,14,18,17,0,11,11,15,16,0,15,15,22,21,0,16,16,0,20,0,12,12,16,15,0,15,14,19,19,0,11,11,16,16,0,15,15,21,0,0,16,15,0,0,0,16,16,22,21,0,0,0,0,0,0,15,15,20,20,0,18,18,0,0,0,16,17,0,0,0,17,17,0,22,0,0,0,0,0,0,15,15,21,22,0,20,18,0,0,0,18,17,22,0,0,10,10,12,11,0,10,10,10,10,0,11,11,12,12,0,11,11,9,9,0,13,13,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,13,12,13,13,0,12,12,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,13,13,13,14,0,12,12,12,12,0,13,14,14,14,0,20,21,15,15,0,12,11,12,12,0,15,16,20,22,0,13,12,11,11,0,13,13,14,13,0,20,0,16,15,0,12,12,12,12,0,16,16,22,21,0,13,13,12,12,6,7,7,16,16,11,9,9,15,15,12,9,9,16,16,0,13,13,14,14,0,14,14,16,17,10,9,9,16,16,14,12,12,16,16,12,9,9,15,15,0,13,13,18,18,0,13,13,15,16,12,10,10,17,18,15,12,12,17,17,13,9,9,16,16,0,13,13,17,18,0,14,14,16,16,0,15,15,18,18,0,22,0,20,20,0,12,12,16,16,0,16,16,20,22,0,14,14,16,16,0,15,14,18,18,0,0,22,19,21,0,13,13,16,17,0,17,17,22,22,0,15,15,16,16,7,7,7,14,14,11,10,10,15,15,12,10,10,15,14,0,22,0,18,18,0,0,21,17,18,11,10,10,15,15,14,12,12,17,17,14,11,11,15,15,0,22,20,18,18,0,0,20,18,17,12,10,10,16,16,17,14,14,19,18,14,11,11,15,15,0,21,22,19,19,0,21,22,18,18,0,22,0,19,21,0,0,0,0,0,0,22,22,18,17,0,0,0,21,20,0,22,22,20,19,0,0,22,20,20,0,0,0,0,0,0,20,21,17,17,0,0,22,21,21,0,0,0,18,18,10,9,9,14,14,13,10,10,13,13,13,10,11,14,14,0,13,13,12,12,0,15,15,16,16,13,10,10,15,15,15,12,12,14,14,15,10,10,14,15,0,14,14,16,15,0,14,14,15,15,13,10,10,15,15,18,13,13,15,15,15,10,10,14,15,0,14,14,16,16,0,14,14,15,15,0,15,15,16,16,0,22,0,18,18,0,12,13,14,14,0,17,17,22,0,0,14,14,14,14,0,15,15,16,16,0,22,0,18,17,0,13,13,14,14,0,19,18,21,22,0,15,15,14,14,0,11,11,13,13,0,12,12,16,16,0,12,12,16,16,0,15,16,21,0,0,16,17,0,22,0,12,12,16,16,0,14,14,17,18,0,11,11,16,16,0,15,15,21,22,0,16,16,0,0,0,12,12,16,16,0,15,15,0,19,0,12,12,16,17,0,16,16,22,0,0,16,16,0,22,0,17,17,0,22,0,0,0,0,0,0,15,15,20,19,0,18,18,0,0,0,17,18,0,0,0,17,17,0,0,0,0,0,0,0,0,15,15,0,22,0,20,18,0,0,0,18,18,22,22,0,11,11,14,14,0,12,12,14,14,0,12,12,15,15,0,13,13,14,14,0,14,14,17,16,0,12,12,16,16,0,14,14,16,16,0,11,11,15,15,0,13,13,16,16,0,13,13,15,15,0,12,12,15,15,0,15,14,16,16,0,11,11,15,15,0,14,14,17,17,0,13,13,15,15,0,15,15,17,17,0,0,0,19,18,0,13,12,15,15,0,16,16,0,0,0,14,14,15,15,0,14,14,16,17,0,22,0,18,18,0,13,13,15,15,0,17,17,0,0,0,14,14,15,15,8,8,8,16,16,12,10,10,16,16,13,9,9,16,16,0,14,14,17,17,0,14,14,17,16,12,10,10,18,17,14,11,11,18,18,14,9,10,16,16,0,13,13,18,19,0,14,13,16,16,12,9,9,16,16,17,13,13,17,17,14,9,9,15,15,0,14,14,19,20,0,13,13,15,15,0,15,15,18,19,0,0,22,22,22,0,13,13,17,17,0,16,16,19,21,0,14,14,16,16,0,14,14,18,18,0,0,0,0,0,0,13,13,16,16,0,18,18,0,0,0,15,15,16,16,8,7,7,14,14,12,10,10,15,15,13,10,10,15,14,0,22,0,18,18,0,22,0,18,18,12,10,10,16,15,15,12,12,17,17,14,11,11,15,15,0,20,21,19,18,0,0,0,17,18,13,11,11,15,15,16,13,13,18,18,15,11,11,14,14,0,22,21,19,19,0,21,22,18,18,0,22,22,20,18,0,0,0,0,0,0,22,19,17,17,0,0,0,22,21,0,0,22,19,17,0,0,22,19,19,0,0,0,0,0,0,22,21,18,17,0,0,0,22,0,0,0,0,19,19,0,10,10,14,14,0,11,11,15,14,0,11,11,15,15,0,14,14,15,14,0,15,15,16,16,0,11,11,16,16,0,13,13,16,16,0,11,11,15,15,0,14,14,17,16,0,14,14,15,15,0,11,11,16,16,0,14,13,15,15,0,11,11,15,15,0,15,15,17,17,0,14,14,15,14,0,16,16,17,17,0,0,22,18,18,0,13,13,15,15,0,17,17,22,0,0,15,15,15,14,0,15,16,16,17,0,0,22,18,19,0,13,13,15,15,0,20,18,21,0,0,15,15,14,14,0,11,11,13,13,0,12,12,16,16,0,12,12,16,15,0,15,16,22,22,0,17,17,0,0,0,12,12,16,16,0,14,14,18,18,0,11,11,16,16,0,15,16,22,20,0,16,16,0,22,0,12,12,16,16,0,15,15,18,20,0,11,11,16,16,0,15,15,0,0,0,16,16,0,0,0,17,17,22,0,0,0,0,0,0,0,15,15,0,21,0,18,18,0,0,0,17,16,0,0,0,17,17,22,22,0,0,0,0,0,0,15,15,21,0,0,20,22,0,0,0,18,18,0,0,0,12,12,15,15,0,12,12,15,15,0,12,12,16,16,0,13,13,15,15,0,15,15,17,17,0,13,12,16,16,0,14,14,16,16,0,12,11,16,16,0,14,14,17,17,0,14,14,16,16,0,12,12,16,16,0,15,15,17,16,0,11,11,15,16,0,14,14,17,17,0,14,14,16,16,0,15,15,18,18,0,0,0,22,19,0,13,13,15,16,0,16,17,0,0,0,14,14,16,16,0,15,15,18,17,0,0,0,20,20,0,13,13,16,15,0,17,17,22,22,0,14,14,15,15,0,11,11,16,16,0,13,13,16,17,0,13,13,17,18,0,16,16,17,17,0,17,17,18,18,0,12,12,17,17,0,16,15,18,18,0,12,12,16,16,0,16,16,18,18,0,15,15,17,17,0,12,12,17,17,0,16,16,19,18,0,12,12,16,17,0,16,16,19,19,0,15,16,16,17,0,16,16,19,17,0,0,0,20,22,0,13,13,16,16,0,19,18,21,0,0,15,15,16,16,0,16,16,18,18,0,0,0,22,21,0,14,14,16,16,0,21,19,21,22,0,16,16,16,16,0,9,9,14,14,0,13,13,15,15,0,14,14,15,15,0,0,20,18,19,0,0,22,18,18,0,12,12,15,15,0,15,15,17,18,0,14,13,14,14,0,20,0,18,18,0,21,0,18,17,0,13,13,15,16,0,17,17,18,18,0,14,14,15,15,0,22,22,20,19,0,20,21,18,18,0,20,22,19,19,0,0,0,0,0,0,20,20,17,17,0,0,22,22,21,0,22,0,18,18,0,20,22,19,19,0,0,0,0,0,0,21,21,17,18,0,0,0,21,20,0,0,22,19,18,0,18,18,15,15,0,22,21,17,16,0,0,22,17,17,0,20,22,18,18,0,0,22,20,20,0,21,19,16,16,0,21,21,18,18,0,19,19,17,17,0,0,22,19,19,0,22,20,17,17,0,21,19,16,16,0,22,22,19,18,0,19,20,16,16,0,22,21,19,21,0,21,22,17,18,0,21,20,18,18,0,0,0,19,20,0,20,19,16,16,0,22,22,0,0,0,21,21,17,16,0,22,20,19,18,0,0,0,20,20,0,20,19,16,16,0,0,0,0,0,0,21,22,17,17,0,11,11,13,13,0,13,13,15,16,0,13,13,16,16,0,17,18,21,0,0,17,18,0,0,0,12,12,15,16,0,15,15,19,18,0,12,12,16,16,0,17,17,22,0,0,17,17,0,22,0,12,12,17,16,0,16,16,19,20,0,12,12,16,16,0,17,17,0,0,0,17,17,0,21,0,17,16,22,0,0,0,0,0,0,0,15,15,20,22,0,20,18,0,0,0,18,18,0,0,0,17,17,21,0,0,0,0,0,0,0,15,15,21,22,0,19,20,22,0,0,19,18,0,0,0,14,14,18,18,0,16,16,22,20,0,16,16,22,19,0,17,17,20,22,0,19,19,0,0,0,15,15,20,0,0,18,21,0,20,0,15,15,21,20,0,18,17,0,0,0,17,17,0,22,0,15,15,19,19,0,19,18,0,0,0,15,15,20,0,0,18,18,22,22,0,17,17,0,20,0,18,18,0,0,0,0,22,0,0,0,15,15,19,20,0,20,19,0,0,0,17,17,20,21,0,17,18,20,22,0,0,0,0,22,0,15,15,20,20,0,22,20,0,0,0,17,18,20,0,0,12,12,17,16,0,14,14,17,17,0,13,13,17,17,0,16,16,18,18,0,17,16,17,17,0,13,13,17,17,0,15,16,18,18,0,13,13,16,16,0,16,16,18,18,0,16,16,17,16,0,13,13,16,16,0,17,17,18,17,0,12,12,15,16,0,17,17,19,19,0,16,16,16,16,0,16,17,19,18,0,0,0,21,22,0,14,14,16,16,0,18,18,0,22,0,16,16,16,16,0,16,16,18,17,0,0,0,21,20,0,14,14,16,16,0,21,22,22,0,0,16,16,16,16,0,9,9,14,13,0,13,14,15,16,0,14,13,15,14,0,22,0,18,18,0,21,0,17,18,0,13,13,15,15,0,15,16,18,17,0,14,14,15,14,0,20,22,18,18,0,22,21,17,17,0,13,13,15,15,0,17,17,19,19,0,14,14,14,14,0,0,22,18,18,0,0,22,17,17,0,0,22,19,20,0,0,0,0,0,0,21,20,17,16,0,0,0,21,22,0,0,0,18,19,0,0,0,18,18,0,0,0,0,0,0,22,0,17,17,0,0,0,20,22,0,0,0,18,19,0,18,19,16,16,0,22,20,17,17,0,22,22,17,18,0,22,22,18,17,0,0,22,18,19,0,20,20,17,18,0,0,22,19,18,0,22,22,17,17,0,22,0,19,19,0,0,22,18,18,0,20,22,17,17,0,0,22,18,18,0,19,20,17,17,0,22,0,20,19,0,22,21,17,17,0,0,0,18,18,0,0,0,22,19,0,20,0,17,17,0,22,0,0,22,0,0,20,17,18,0,22,0,19,19,0,0,0,0,19,0,19,21,17,17,0,0,0,0,0,0,20,21,17,16,0,11,11,13,13,0,13,13,16,16,0,13,13,15,16,0,17,17,21,22,0,17,18,0,0,0,12,12,16,16,0,15,15,18,18,0,13,13,16,16,0,17,16,21,21,0,17,17,0,0,0,13,13,16,16,0,16,16,19,18,0,13,13,16,16,0,17,17,0,22,0,17,18,20,22,0,17,18,0,0,0,0,0,0,0,0,15,15,20,0,0,18,19,0,0,0,17,17,0,0,0,18,17,22,0,0,0,0,0,0,0,15,16,21,20,0,20,20,0,0,0,18,19,0,0,0,15,15,22,22,0,17,16,20,22,0,17,17,20,22,0,18,18,0,21,0,19,18,0,0,0,16,16,20,20,0,19,19,22,0,0,15,16,21,22,0,18,19,22,0,0,17,18,0,0,0,16,16,22,0,0,19,19,0,21,0,15,16,20,0,0,18,18,0,22,0,18,17,0,0,0,18,18,0,0,0,0,0,0,0,0,16,16,22,21,0,20,21,0,0,0,17,18,22,0,0,18,18,0,0,0,0,0,0,0,0,16,16,20,19,0,22,21,0,0,0,18,18,22,22,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,8,8,11,9,9,12,12,11,10,10,12,12,12,10,10,11,11,12,12,12,12,12,12,11,11,13,13,12,12,12,13,13,12,10,10,12,12,12,11,11,13,13,12,13,13,13,13,12,11,11,13,13,12,12,12,13,13,12,10,10,12,12,12,11,11,13,13,12,13,13,12,12,12,11,11,13,13,12,13,13,13,13,12,11,11,12,12,12,11,11,12,12,12,13,13,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,12,12,12,13,13,13,13,12,13,13,12,12,11,8,8,10,10,12,11,11,11,11,12,10,10,10,10,13,11,11,10,10,13,11,11,10,10,13,12,12,12,12,13,11,11,11,11,13,12,12,11,11,13,12,12,11,11,13,12,12,12,11,13,12,12,12,12,13,11,11,11,11,13,12,12,11,11,13,11,12,11,11,13,12,12,11,11,14,12,12,11,11,13,11,11,11,11,14,12,12,11,11,13,11,12,10,10,14,12,12,11,11,14,12,12,11,11,14,11,11,11,11,14,12,12,11,11,13,12,12,11,11,14,12,12,11,11,11,8,8,10,10,12,7,7,10,10,12,9,9,11,11,13,9,9,9,9,13,13,13,10,10,13,9,9,12,12,13,13,13,12,12,13,9,8,11,11,13,10,10,12,12,14,13,13,11,11,13,9,9,11,11,13,13,13,12,12,13,9,9,10,10,13,10,10,11,11,13,13,13,10,10,14,10,10,11,11,14,14,14,12,12,13,9,9,10,10,13,10,10,11,11,14,13,14,10,10,14,14,14,11,12,14,14,14,14,14,14,13,13,10,10,13,14,14,11,11,14,14,14,10,10,14,9,9,9,9,14,9,9,9,9,14,10,10,9,9,14,10,10,8,8,14,11,11,8,8,15,11,11,10,10,15,12,12,10,10,15,10,10,10,10,15,11,11,10,10,15,13,13,10,10,15,11,11,10,10,15,12,12,10,10,15,10,10,10,10,15,11,11,10,10,15,13,13,10,10,15,11,11,10,10,15,12,12,10,10,15,11,11,9,9,15,11,11,9,9,15,13,13,9,9,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,13,12,9,9,15,13,13,9,9,14,12,12,9,9,14,13,13,9,9,14,13,13,9,9,14,13,13,7,7,14,13,13,8,8,15,14,14,10,10,15,14,14,10,10,15,14,14,10,10,15,14,14,10,10,15,14,14,9,9,15,14,14,10,10,15,14,14,10,10,14,14,14,9,9,15,14,14,10,10,14,14,14,9,9,15,14,14,10,10,15,14,14,10,10,14,14,14,9,9,14,14,14,9,9,14,14,14,8,8,15,14,14,10,10,15,14,14,11,11,15,14,14,9,9,15,14,14,9,9,14,14,14,8,8,13,9,9,12,12,17,11,11,12,12,17,12,12,12,12,17,12,12,11,11,18,15,15,12,12,17,12,12,12,12,17,14,15,13,13,17,12,12,12,12,17,13,13,12,13,17,15,15,12,12,18,13,13,13,13,18,15,15,13,13,18,12,12,12,12,18,13,13,13,13,18,15,15,12,12,18,13,13,12,12,18,15,15,13,13,18,13,13,12,12,17,13,13,12,12,17,15,15,12,12,18,15,15,13,13,18,15,15,13,14,18,15,16,12,12,18,15,15,12,12,18,16,16,12,12,13,8,8,10,10,14,15,14,11,11,14,15,15,12,12,15,14,14,12,11,15,15,15,12,12,15,15,15,12,12,15,15,15,13,13,15,15,15,12,12,15,15,15,13,13,15,15,15,13,13,15,15,15,13,13,15,15,16,13,13,15,15,15,12,12,15,15,15,13,13,15,15,15,13,13,15,15,15,13,13,15,15,15,13,13,15,15,14,12,12,15,15,15,12,12,16,15,14,12,12,16,15,15,13,13,16,16,16,13,13,16,15,15,12,12,15,15,15,13,13,15,15,15,12,12,13,12,12,10,10,14,14,14,11,11,15,14,14,12,12,15,14,14,11,11,15,14,14,11,11,15,15,15,13,13,15,14,14,13,13,15,15,15,12,12,15,14,15,13,13,16,15,15,12,12,15,15,15,13,13,16,14,14,13,13,15,15,15,12,12,15,15,15,13,13,16,15,15,12,12,16,15,15,12,12,16,14,14,13,13,15,15,15,11,11,15,15,15,12,12,16,15,15,11,11,16,15,15,13,13,16,14,15,14,14,16,15,15,12,12,16,15,14,12,12,16,15,15,12,12,14,10,10,9,9,14,11,11,12,12,14,12,12,13,13,14,12,12,12,12,15,14,14,13,13,15,13,13,14,14,15,14,14,15,15,15,12,12,13,13,15,13,13,14,14,15,14,14,13,13,15,13,13,13,14,15,14,14,15,15,15,12,12,13,13,15,13,13,14,14,15,14,14,13,13,15,13,13,14,14,15,14,14,15,15,15,13,13,12,12,15,13,13,13,13,15,14,14,13,12,15,15,15,14,15,15,15,14,20,20,15,14,14,13,13,15,14,14,13,13,15,14,14,13,13,14,12,12,9,9,14,14,14,12,12,14,13,13,12,13,14,14,14,12,12,15,14,14,12,12,15,14,14,14,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,15,15,15,14,14,15,14,14,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,15,15,15,15,14,15,15,15,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,14,15,15,14,14,15,15,15,14,14,15,14,14,14,14,15,15,15,14,14,15,14,14,13,14,15,15,15,14,14,13,10,10,12,12,17,11,11,12,12,17,12,12,12,12,17,12,12,11,11,17,15,15,12,11,18,13,13,13,13,18,15,15,13,13,17,12,12,12,12,18,13,13,13,13,17,15,15,12,12,17,12,12,12,12,17,15,15,13,13,17,12,12,12,12,17,13,13,12,12,17,15,15,12,12,18,14,13,12,12,18,15,15,13,13,18,13,13,12,12,18,13,13,12,12,18,16,16,12,12,18,16,16,12,12,18,15,15,13,13,18,16,16,12,12,17,15,15,12,12,17,16,16,12,12,13,8,8,10,10,14,14,15,12,12,14,15,15,12,12,15,14,14,12,12,15,15,14,12,12,15,15,15,13,13,15,15,15,13,13,15,15,15,12,12,16,15,15,13,13,16,15,15,13,13,15,15,15,12,12,15,15,15,14,14,15,15,15,12,12,15,15,15,13,13,16,15,15,13,13,15,15,15,13,13,16,15,15,13,13,15,15,14,12,12,15,15,15,12,12,16,14,15,13,13,16,15,15,13,13,15,16,15,13,13,16,15,14,13,13,16,15,15,13,13,16,15,15,13,13,13,12,12,11,11,14,14,14,11,11,14,14,14,12,12,15,14,14,11,11,16,14,14,11,11,15,15,15,12,13,16,14,14,13,13,15,15,15,12,12,15,14,14,13,13,16,15,15,12,12,15,15,15,12,12,15,14,14,13,13,15,15,15,12,12,15,14,14,12,12,16,15,15,12,12,16,15,15,12,12,16,14,14,13,13,15,15,15,11,11,15,15,14,12,12,16,15,15,11,11,16,15,15,12,12,16,14,14,13,13,16,15,15,11,11,16,14,14,12,12,16,15,15,11,11,14,10,10,9,9,14,11,11,12,12,14,12,12,13,14,14,12,12,12,12,14,14,14,13,13,15,13,13,14,14,15,14,14,15,15,15,12,12,13,13,15,13,13,14,14,15,15,15,14,14,15,13,13,14,14,15,15,15,15,15,15,12,12,13,13,15,13,13,14,14,15,14,14,13,13,15,13,13,14,14,15,14,14,15,15,15,12,12,13,13,15,13,13,13,13,14,14,14,13,13,15,15,15,14,15,15,15,15,21,19,15,14,14,13,13,15,14,14,14,14,14,14,14,13,13,14,12,12,9,9,14,14,14,12,12,14,14,13,13,13,14,14,14,12,12,14,14,14,12,12,15,14,14,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,15,15,15,15,15,15,14,14,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,14,15,15,15,15,15,14,15,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,14,15,15,14,14,15,15,15,14,14,15,14,14,14,14,15,15,15,15,15,15,14,14,14,13,14,15,15,14,14,13,10,10,12,12,18,12,12,12,12,17,12,12,12,12,18,13,13,11,11,18,15,14,11,11,17,13,13,13,13,18,15,15,12,12,18,12,12,12,12,17,13,13,12,12,18,15,15,12,12,18,13,13,13,12,18,15,15,13,13,18,13,13,12,12,18,13,13,12,12,18,15,15,12,12,17,13,13,12,12,17,15,15,12,12,17,12,12,11,11,17,13,13,11,11,17,15,15,11,11,18,16,16,12,12,18,15,15,13,13,18,15,15,11,11,17,15,15,12,12,18,15,15,11,11,13,8,8,10,10,14,14,14,11,11,15,15,15,12,12,15,14,14,11,11,16,14,14,12,12,15,15,15,12,12,15,15,15,13,13,15,15,15,12,12,15,15,15,12,12,16,15,15,13,13,15,15,15,12,12,15,15,15,13,13,16,15,15,12,12,15,15,15,12,12,16,15,15,13,13,16,15,15,12,12,15,15,15,13,13,15,14,14,12,12,15,15,15,12,12,16,15,14,12,12,16,15,15,13,13,16,16,16,13,13,16,14,15,13,13,15,15,15,13,13,16,15,15,12,12,13,12,12,10,10,14,14,14,11,11,15,14,14,12,12,15,14,14,11,11,16,14,14,11,11,15,14,15,12,12,15,14,14,13,13,15,15,15,12,12,15,14,14,12,12,15,14,15,12,12,15,15,15,12,12,16,14,14,13,13,15,15,15,11,12,16,14,14,12,12,16,15,15,12,12,15,15,15,12,12,16,14,14,12,12,15,15,15,11,11,15,14,14,11,12,15,15,14,11,11,16,15,15,12,12,16,14,14,13,13,16,15,15,11,11,16,14,14,12,12,16,15,15,11,11,13,10,10,8,8,14,12,12,12,12,14,12,12,13,13,14,12,12,12,12,14,14,14,13,13,15,13,13,14,14,15,15,14,15,15,15,13,13,13,13,15,13,13,14,14,15,14,15,14,14,15,13,13,13,13,15,15,15,15,15,15,12,12,13,12,15,13,13,14,14,15,14,14,13,13,15,13,13,14,13,15,15,15,16,16,15,13,13,12,12,15,13,13,13,13,14,14,14,12,12,15,15,15,14,14,15,15,15,20,20,15,14,14,13,13,15,15,14,14,14,15,14,14,13,13,13,12,12,9,9,14,13,13,12,12,14,13,13,12,12,14,14,14,12,12,14,14,14,13,13,15,14,14,13,13,15,14,14,14,14,15,15,14,12,12,15,14,14,13,13,15,14,15,14,15,15,14,14,13,13,15,14,14,14,14,15,14,14,12,12,15,14,14,13,13,14,15,14,15,14,15,14,14,13,13,15,14,14,14,14,15,14,14,12,12,15,14,14,13,13,15,15,15,14,14,15,15,15,14,14,16,14,14,14,14,15,15,15,14,14,15,14,14,14,14,14,15,15,14,14,13,13,13,12,13,17,15,15,12,12,17,15,15,12,12,18,15,15,11,11,17,16,16,11,11,18,16,16,13,13,18,17,16,13,13,18,16,16,12,12,18,16,16,12,12,18,17,17,12,12,17,16,16,12,13,17,16,16,12,13,17,16,16,12,12,17,16,16,12,12,18,17,16,12,12,18,16,16,12,12,17,16,17,12,12,18,15,15,11,11,18,15,15,12,12,17,17,17,11,11,17,17,17,12,12,17,16,16,13,13,18,16,16,11,11,18,16,16,12,12,18,17,16,11,11,14,14,14,10,10,16,15,14,11,11,16,15,15,12,12,16,14,14,12,12,17,14,14,13,13,17,15,15,13,13,17,15,15,14,14,16,15,15,12,12,16,15,15,13,13,18,15,15,14,14,16,15,15,12,12,16,15,15,14,14,16,15,15,12,12,16,15,15,13,13,17,15,15,13,13,17,15,15,13,13,17,15,15,14,14,16,14,14,12,12,17,15,15,12,12,18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,17,15,14,13,13,17,15,15,14,14,17,15,15,13,13,14,12,12,11,11,15,14,14,12,12,16,14,14,12,12,16,14,14,11,11,17,14,14,12,12,16,15,14,13,13,16,14,14,13,13,16,15,15,12,12,16,14,14,13,13,17,15,15,13,13,16,15,15,13,13,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,16,15,15,12,12,17,15,15,12,12,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,16,15,15,12,12,17,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,17,15,15,12,12,14,14,14,8,8,14,14,14,13,13,14,15,15,14,14,14,14,14,14,14,15,15,15,19,19,15,15,15,14,14,15,15,16,20,19,15,15,15,14,14,15,16,16,15,15,15,15,15,19,19,15,15,15,14,14,15,16,16,19,20,15,15,15,14,14,15,15,15,15,15,15,15,15,19,19,15,15,15,15,15,15,15,16,19,20,15,14,15,14,14,15,15,15,15,15,15,15,15,20,19,15,15,15,21,19,15,16,16,20,20,15,15,14,19,19,15,15,16,20,21,15,15,15,20,19,13,12,12,9,9,14,14,14,12,12,14,13,13,13,13,14,14,14,13,13,15,14,14,20,19,15,14,14,14,13,15,14,14,19,19,15,15,14,13,13,15,14,14,14,14,15,15,15,19,20,15,14,14,13,13,15,14,14,20,19,14,15,14,13,13,15,14,14,14,13,15,15,15,19,20,15,15,14,14,14,15,14,14,21,19,15,15,15,13,13,15,14,14,14,14,14,15,15,20,20,15,15,15,21,20,15,14,14,19,20,15,15,15,20,20,15,14,14,19,20,15,15,15,21,19,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,6,7,7,7,8,8,7,8,8,10,11,11,9,8,8,7,8,8,11,11,11,9,8,8,6,7,7,9,11,11,9,11,11,10,11,11,12,13,13,11,12,12,10,11,11,13,14,14,12,12,12,6,6,6,8,6,6,8,7,7,9,7,7,11,10,10,10,6,6,9,7,7,12,10,10,11,6,7,7,7,7,11,10,10,12,10,10,11,10,10,14,13,13,13,10,10,12,11,11,15,13,13,14,10,10,8,7,7,12,11,11,12,11,11,11,11,11,14,14,14,13,12,12,12,11,11,15,15,15,13,12,12,0,10,10,0,11,11,0,11,11,0,11,11,0,14,14,0,11,11,0,11,11,0,15,15,0,11,11,7,8,8,12,10,10,12,10,10,12,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,12,11,11,12,11,11,16,14,14,14,12,12,13,12,12,15,14,14,15,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,12,12,0,14,14,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,0,8,8,0,8,8,0,9,9,0,9,9,0,9,9,0,9,9,0,9,9,0,8,8,0,6,6,0,7,7,0,7,7,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,6,6,0,6,6,0,6,6,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,6,6,0,8,8,0,9,9,0,9,9,0,10,10,0,10,10,0,10,10,0,10,10,0,11,11,0,9,9,0,7,7,0,10,10,0,10,10,0,12,11,0,12,12,0,11,11,0,11,11,0,12,12,0,10,10,0,7,7,0,10,10,0,10,10,0,12,12,0,11,12,0,11,11,0,11,11,0,11,11,0,10,10,0,8,8,0,9,9,0,9,9,0,10,10,0,10,10,0,10,9,0,10,10,0,10,10,0,9,9,0,6,6,0,10,10,0,10,10,0,11,11,0,12,12,0,11,11,0,11,11,0,12,12,0,11,11,0,7,7,0,9,9,0,9,9,0,11,11,0,11,11,0,10,10,0,10,10,0,11,11,0,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,6,7,7,0,8,8,6,9,9,8,11,11,0,8,8,0,9,9,0,12,12,0,8,8,5,7,7,7,10,10,0,12,12,8,11,11,9,12,12,0,11,12,0,12,12,0,15,15,0,12,12,0,6,6,0,6,6,0,7,7,0,7,7,0,10,10,0,7,7,0,8,8,0,11,11,0,7,7,6,7,7,10,9,9,0,11,10,10,9,9,12,12,12,0,10,10,0,11,11,0,13,13,0,11,11,7,6,6,10,10,10,0,11,11,11,11,11,12,12,12,0,11,11,0,12,12,0,15,15,0,11,11,0,11,11,0,11,11,0,12,12,0,12,12,0,14,14,0,12,12,0,12,12,0,15,15,0,11,11,0,8,8,0,10,10,0,11,11,0,11,11,0,12,12,0,12,12,0,11,11,0,15,15,0,11,11,0,6,6,0,10,10,0,12,12,0,10,10,0,13,13,0,12,12,0,13,13,0,14,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,0,0,0,8,8,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,6,6,0,0,0,7,7,0,0,0,8,8,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,10,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,0,0,10,10,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,11,0,0,0,12,12,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,0,0,10,10,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,13,13,0,0,0,0,0,0,0,0,14,13,0,0,0,0,0,0,0,0,13,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,14,14,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,12,13,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,14,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,12,12,0,0,0,14,14,0,0,0,0,0,0,0,0,14,14,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,2,2],"i8",L3,x.GLOBAL_BASE+477020),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,4,12,9,8,12,15,17,4,2,11,6,5,9,13,15,11,7,8,7,7,10,14,13,8,5,7,5,5,8,12,12,8,4,7,4,3,6,11,12,11,8,9,7,6,8,11,12,15,13,14,12,9,7,10,13,16,12,17,12,7,5,8,11,0,0,0,0,255,255,255,255,255,255,255,255,7,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,x.GLOBAL_BASE+487288),d3([1,0,0,0,2,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,200,161,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,128,7,0,0,0,0,0,0,0,0,0,96,128,7,0,136,128,7,0,0,0,0,0,0,0,0,0,176,128,7,0,216,128,7,0,0,0,0,0,0,0,0,0,0,129,7,0,40,129,7,0,0,0,0,0,0,0,0,0,80,129,7,0,120,129,7,0,40,129,7,0,0,0,0,0,160,129,7,0,88,125,7,0,128,125,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,0,128,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,248,127,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,124,7,0,8,125,7,0,0,0,0,0,0,0,0,0,48,125,7,0,88,125,7,0,128,125,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,16,127,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,192,127,7,0,0,0,0,0,2,0,0,0,25,0,0,0,216,126,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,248,126,7,0,0,0,0,0,2,0,0,0,9,0,0,0,184,126,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,200,126,7,0,0,0,0,0,1,0,0,0,25,0,0,0,48,126,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,80,126,7,0,0,0,0,0,1,0,0,0,25,0,0,0,168,125,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,200,125,7,0,0,0,0,0,3,4,4,5,4,5,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,13,14,16,16,16,16,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,5,5,5,6,6,5,6,5,6,6,6,6,7,7,7,6,7,6,7,7,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,8,8,9,9,10,10,11,11,4,6,5,8,6,9,8,10,9,10,10,11,10,5,5,6,6,8,8,9,9,10,10,10,10,11,7,8,8,9,8,10,9,10,9,11,10,11,10,7,8,8,8,10,9,10,10,10,10,11,10,11,9,10,10,11,11,11,11,12,11,12,11,12,11,9,10,10,11,11,11,11,11,11,11,12,11,12,11,11,11,12,12,12,12,12,12,12,12,12,11,11,12,11,12,12,12,12,12,12,12,12,11,12,12,12,12,12,13,12,13,12,12,12,12,12,12,12,12,12,13,13,13,13,12,13,12,12,12,12,12,13,13,12,13,12,13,12,13,12,12,12,12,13,13,13,13,13,13,12,12,12,12,12,11,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,3,7,7,9,13,16,3,2,4,6,10,13,17,7,4,4,6,9,12,14,7,6,6,5,7,9,12,10,10,9,6,6,9,12,14,14,13,9,8,10,11,18,18,15,13,11,10,11,0,0,0,0,0,0,0,5,0,0,0,243,0,0,0,192,160,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,184,161,7,0,0,0,0,0,5,0,0,0,243,0,0,0,184,159,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,176,160,7,0,0,0,0,0,5,0,0,0,243,0,0,0,176,158,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,159,7,0,0,0,0,0,5,0,0,0,243,0,0,0,168,157,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,160,158,7,0,0,0,0,0,5,0,0,0,53,12,0,0,88,145,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,144,157,7,0,0,0,0,0,5,0,0,0,53,12,0,0,8,133,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,64,145,7,0,0,0,0,0,1,0,0,0,7,0,0,0,224,132,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,232,132,7,0,0,0,0,0,5,0,0,0,243,0,0,0,216,131,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,208,132,7,0,0,0,0,0,5,0,0,0,243,0,0,0,208,130,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,200,131,7,0,0,0,0,0,5,0,0,0,243,0,0,0,200,129,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,192,130,7,0,0,0,0,0,1,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,7,7,7,7,7,7,7,7,7,8,8,9,8,8,8,7,7,8,8,8,9,8,8,9,7,7,6,6,6,9,8,7,9,7,7,9,8,8,10,8,8,10,8,8,10,8,8,10,8,8,10,8,8,7,6,6,9,6,6,9,7,7,9,7,7,10,8,8,9,6,6,9,7,7,10,8,8,9,7,7,7,8,8,11,9,9,11,9,9,11,8,9,12,9,9,12,8,8,11,9,9,12,9,9,12,8,8,8,7,7,10,9,9,10,10,9,10,9,9,11,10,10,11,9,9,11,9,9,11,10,11,11,9,9,10,8,8,11,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,9,9,11,10,10,11,9,9,9,8,8,11,9,9,12,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,9,9,12,8,8,9,7,7,11,9,9,11,10,10,11,9,9,11,11,11,11,9,9,11,10,10,11,11,11,11,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,10,10,11,9,9,11,9,10,11,10,10,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,6,6,7,8,8,7,8,8,7,9,8,10,11,11,9,8,8,7,8,8,11,11,11,9,8,8,6,7,7,10,10,10,10,10,10,10,10,10,14,13,13,12,11,11,10,10,10,14,14,13,12,11,11,6,6,6,8,5,5,8,7,7,9,7,7,11,10,10,9,7,7,9,7,7,12,10,10,10,7,7,7,8,8,12,11,10,12,10,10,11,10,10,15,13,13,13,10,10,11,10,10,17,14,13,13,10,10,7,7,7,12,11,12,12,11,11,12,11,11,16,14,14,13,12,12,12,11,11,17,15,14,14,12,12,10,9,9,13,11,11,13,11,11,13,11,11,17,14,13,14,11,11,12,11,11,16,15,14,14,11,11,7,8,8,12,11,11,12,10,10,12,10,10,15,13,13,14,11,10,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,12,11,11,12,11,11,17,14,14,14,12,12,12,11,11,16,15,15,14,12,12,10,10,10,13,11,11,13,11,11,13,11,12,16,14,14,14,11,11,13,12,11,16,15,15,14,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,14,14,6,7,7,14,14,7,7,7,14,14,0,13,13,16,16,0,13,13,15,14,7,8,8,15,15,9,10,10,16,16,9,8,8,15,15,0,13,13,17,16,0,13,13,15,16,8,8,8,15,15,12,11,11,16,16,9,8,8,14,14,0,13,13,17,18,0,13,13,15,15,0,14,14,16,16,0,0,0,19,18,0,12,12,16,15,0,15,16,0,20,0,14,14,16,16,0,14,14,17,17,0,0,0,19,18,0,12,12,15,15,0,17,17,0,20,0,14,14,16,16,5,6,7,12,12,9,9,9,14,14,10,10,10,14,14,0,21,21,18,17,0,20,20,18,17,9,10,10,14,14,12,12,12,16,16,12,10,10,14,14,0,20,19,18,17,0,0,20,17,18,11,10,10,14,14,14,13,13,18,18,13,11,11,14,14,0,20,20,17,18,0,21,21,17,17,0,21,0,18,18,0,0,0,0,0,0,20,19,16,17,0,0,0,19,19,0,0,0,18,18,0,21,21,18,18,0,0,0,0,0,0,20,20,16,17,0,0,0,21,21,0,0,0,18,19,6,6,6,13,12,8,6,6,11,11,8,6,6,13,13,0,9,9,11,11,0,11,10,14,14,9,7,7,13,13,11,9,9,13,13,10,6,6,13,13,0,10,10,14,15,0,10,10,13,13,9,7,7,13,13,13,10,9,13,13,10,6,6,13,13,0,10,10,15,14,0,10,10,13,13,0,11,11,15,15,0,19,20,17,17,0,9,9,13,13,0,13,13,20,20,0,11,11,13,13,0,11,11,15,15,0,19,19,17,17,0,10,10,13,13,0,15,15,20,20,0,12,12,13,13,0,10,10,12,12,0,11,11,15,15,0,11,11,15,15,0,15,15,20,0,0,16,16,0,21,0,11,11,15,15,0,14,14,18,17,0,11,11,15,15,0,15,16,19,20,0,16,16,21,21,0,12,12,15,15,0,15,14,18,18,0,11,11,16,16,0,15,15,21,21,0,16,15,0,0,0,16,16,21,0,0,0,0,0,0,0,14,14,20,20,0,18,18,0,0,0,16,17,21,0,0,16,16,21,21,0,0,0,0,0,0,15,15,21,21,0,20,19,0,21,0,17,17,0,0,0,10,10,12,11,0,10,10,10,11,0,11,11,12,12,0,11,11,9,9,0,13,13,11,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,12,12,13,13,0,12,12,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,13,13,14,14,0,12,12,12,12,0,14,14,14,13,0,19,20,15,15,0,12,11,12,12,0,15,15,21,20,0,13,13,11,11,0,13,13,13,13,0,19,0,15,15,0,12,12,12,12,0,17,16,19,0,0,13,13,12,12,7,7,7,16,16,11,9,9,15,15,12,9,9,16,16,0,13,13,15,14,0,14,14,17,16,10,9,9,16,16,14,11,11,17,16,12,9,8,15,15,0,13,13,18,18,0,13,13,15,15,12,10,10,18,17,15,12,12,17,17,14,9,9,16,16,0,13,13,18,19,0,14,13,17,16,0,14,14,18,18,0,0,0,20,21,0,12,12,16,16,0,16,16,20,21,0,14,14,17,16,0,14,14,18,19,0,0,0,19,21,0,13,13,17,17,0,17,17,0,21,0,15,15,16,16,8,7,7,14,14,11,10,10,15,15,12,10,10,15,15,0,20,20,18,18,0,0,0,17,17,11,10,10,16,16,14,12,12,18,17,14,11,11,15,15,0,20,21,18,18,0,0,19,18,17,12,10,10,16,16,17,14,14,19,19,14,11,11,15,15,0,21,21,19,19,0,21,20,19,18,0,21,0,18,19,0,0,0,0,0,0,20,20,18,17,0,21,0,0,0,0,0,0,19,18,0,0,0,18,19,0,0,0,0,0,0,0,21,17,18,0,0,0,0,21,0,0,21,18,19,11,9,9,14,14,13,10,10,13,13,13,11,11,15,15,0,13,13,12,12,0,15,15,16,16,13,10,10,15,15,16,12,12,15,15,15,10,10,15,15,0,14,13,16,15,0,14,13,15,15,13,10,10,15,15,18,14,14,15,15,15,10,10,14,15,0,14,14,16,16,0,14,14,16,15,0,15,15,17,16,0,21,0,18,18,0,12,13,15,15,0,16,16,0,0,0,14,14,15,15,0,15,15,16,16,0,21,20,18,18,0,13,13,15,15,0,19,18,0,0,0,15,15,15,15,0,11,11,13,13,0,12,12,16,16,0,12,12,16,16,0,15,16,20,0,0,16,17,0,0,0,12,12,16,16,0,14,14,18,18,0,11,11,16,17,0,15,15,20,0,0,16,16,0,0,0,12,12,16,16,0,15,15,19,19,0,11,11,17,17,0,16,16,21,0,0,16,16,0,0,0,17,17,20,20,0,0,0,0,0,0,15,15,20,0,0,17,18,0,0,0,17,17,0,0,0,16,16,0,21,0,0,0,0,0,0,15,15,21,0,0,19,18,0,0,0,18,17,0,0,0,11,11,14,14,0,11,11,15,15,0,12,12,16,16,0,13,13,14,14,0,14,14,17,17,0,12,12,16,16,0,14,14,16,16,0,11,11,16,15,0,13,13,16,17,0,13,13,16,16,0,12,12,15,16,0,15,14,16,16,0,11,11,15,15,0,14,14,17,17,0,13,13,16,16,0,15,14,18,18,0,21,0,19,19,0,13,13,15,15,0,16,16,20,20,0,14,14,16,15,0,14,14,17,17,0,21,0,20,18,0,13,13,15,15,0,17,17,0,0,0,14,14,16,15,8,8,8,16,16,12,9,9,16,16,13,9,9,16,16,0,14,14,18,17,0,14,14,16,17,12,10,10,18,17,14,11,11,18,18,14,9,9,16,16,0,13,13,18,18,0,13,13,17,16,12,9,9,16,17,17,13,13,16,16,14,9,9,15,15,0,14,14,20,20,0,13,13,15,15,0,15,14,18,18,0,0,0,20,21,0,12,13,16,17,0,16,16,20,21,0,14,14,16,17,0,14,14,18,17,0,0,0,20,21,0,13,13,16,16,0,19,17,0,21,0,14,15,16,16,8,7,7,14,13,12,10,10,15,15,13,10,10,15,15,0,21,21,18,19,0,20,21,18,18,12,10,10,16,15,15,12,12,17,17,14,11,11,15,15,0,21,21,19,18,0,0,21,17,18,13,11,11,15,15,16,13,13,18,19,15,11,11,15,14,0,21,0,19,19,0,0,21,18,18,0,0,21,19,19,0,0,0,0,0,0,20,19,17,17,0,0,0,21,0,0,21,0,18,19,0,0,20,20,19,0,0,0,0,0,0,21,20,18,17,0,0,0,0,20,0,0,0,18,19,0,10,10,15,14,0,11,11,14,14,0,11,11,15,16,0,14,14,15,15,0,15,15,16,16,0,11,11,16,16,0,14,13,16,16,0,11,11,15,15,0,14,14,16,16,0,14,14,15,15,0,11,11,15,15,0,13,13,15,15,0,11,11,15,15,0,15,15,18,17,0,14,14,15,15,0,15,16,18,18,0,0,0,20,20,0,14,13,16,15,0,17,17,21,0,0,15,15,15,15,0,16,15,17,17,0,0,0,19,19,0,13,13,15,15,0,20,19,0,0,0,15,15,15,15,0,11,11,13,13,0,12,12,16,16,0,12,12,16,16,0,15,15,21,21,0,17,16,0,0,0,12,12,16,16,0,14,14,17,17,0,11,11,16,16,0,15,15,0,0,0,16,16,21,0,0,12,12,17,16,0,14,15,20,20,0,11,11,16,16,0,15,15,0,20,0,16,16,0,21,0,16,17,21,0,0,0,0,0,0,0,15,15,0,21,0,18,18,0,0,0,17,16,0,0,0,17,17,21,0,0,0,0,0,0,0,15,15,0,20,0,19,20,21,0,0,17,18,0,0,0,12,12,15,15,0,12,12,15,15,0,12,12,16,16,0,13,13,15,15,0,15,15,17,17,0,13,12,17,16,0,14,14,17,16,0,11,11,16,16,0,14,14,17,17,0,14,14,17,17,0,12,12,16,16,0,15,15,17,17,0,11,11,16,16,0,14,14,17,17,0,14,14,16,16,0,15,15,18,17,0,0,0,19,0,0,13,13,16,16,0,16,16,0,21,0,14,14,16,16,0,15,15,18,17,0,0,0,19,19,0,13,13,16,16,0,18,17,0,21,0,14,15,16,16,0,11,11,16,16,0,13,13,17,17,0,13,13,17,17,0,16,16,16,17,0,16,16,18,18,0,12,12,17,17,0,16,15,18,17,0,12,12,16,16,0,16,15,19,19,0,16,15,17,17,0,12,12,17,18,0,16,16,18,18,0,12,12,16,16,0,16,16,19,19,0,15,16,17,17,0,15,16,18,18,0,0,0,20,20,0,13,13,16,16,0,18,18,21,20,0,15,15,16,16,0,16,16,19,18,0,0,0,19,20,0,14,14,17,17,0,19,19,0,21,0,15,16,16,16,0,9,9,14,14,0,13,13,15,15,0,14,14,15,15,0,0,21,19,19,0,0,21,18,18,0,12,12,15,15,0,15,15,18,18,0,14,13,15,15,0,21,21,18,19,0,21,20,18,18,0,13,13,16,16,0,17,17,18,19,0,14,14,15,15,0,0,21,19,19,0,21,20,18,19,0,20,20,19,19,0,0,0,0,0,0,19,20,17,17,0,0,0,21,21,0,21,0,18,20,0,21,0,18,21,0,0,0,0,0,0,21,21,19,18,0,0,0,0,0,0,0,0,19,19,0,18,18,15,15,0,18,20,17,16,0,20,0,17,17,0,21,0,17,17,0,21,20,19,20,0,19,19,16,16,0,21,21,17,18,0,19,19,17,17,0,20,21,21,21,0,20,20,18,18,0,19,19,16,16,0,0,21,18,19,0,18,19,16,17,0,21,21,19,20,0,21,19,18,18,0,21,20,19,21,0,0,0,20,21,0,19,19,17,16,0,0,0,0,0,0,21,20,17,17,0,20,21,19,18,0,0,0,0,21,0,19,18,16,17,0,0,0,0,0,0,20,20,17,17,0,11,11,14,14,0,13,13,16,16,0,13,13,16,16,0,17,17,21,0,0,17,18,0,0,0,12,12,16,16,0,15,15,17,18,0,12,12,16,16,0,16,16,0,20,0,17,17,0,21,0,12,12,17,17,0,16,16,19,20,0,12,12,17,17,0,17,17,0,20,0,17,17,0,0,0,17,17,21,0,0,0,0,0,0,0,15,15,0,20,0,19,19,0,0,0,18,18,0,0,0,17,17,0,0,0,0,0,0,0,0,15,15,0,0,0,20,19,0,0,0,19,18,0,0,0,14,14,21,19,0,16,16,20,21,0,16,16,20,20,0,17,17,20,0,0,17,17,20,20,0,15,15,20,20,0,19,18,20,0,0,15,15,20,20,0,17,18,21,20,0,17,17,20,21,0,15,15,19,19,0,19,18,21,21,0,15,15,19,20,0,17,18,0,0,0,17,17,20,20,0,17,18,20,21,0,0,0,0,0,0,15,15,20,20,0,19,19,0,0,0,17,17,19,21,0,17,17,0,21,0,0,0,0,21,0,15,15,20,19,0,0,20,0,0,0,17,17,21,20,0,12,12,16,16,0,14,14,17,17,0,13,13,17,17,0,16,16,17,18,0,17,16,18,18,0,13,13,18,17,0,15,16,19,18,0,13,13,16,16,0,16,16,19,19,0,16,16,17,17,0,13,12,17,17,0,16,16,18,17,0,12,12,16,16,0,17,17,19,18,0,16,15,16,16,0,16,17,18,19,0,0,0,20,20,0,14,14,17,16,0,18,18,21,0,0,16,16,16,16,0,16,16,18,17,0,0,21,21,21,0,14,14,16,16,0,21,20,21,0,0,16,16,16,16,0,10,10,14,14,0,14,14,15,16,0,14,14,15,15,0,0,21,18,18,0,0,21,18,19,0,13,13,16,16,0,16,16,18,17,0,14,14,15,15,0,20,0,18,18,0,21,0,18,17,0,13,13,16,15,0,17,17,19,19,0,14,14,15,15,0,20,20,18,19,0,0,0,18,17,0,0,21,18,18,0,0,0,0,0,0,20,21,18,17,0,0,0,0,0,0,0,0,19,19,0,0,21,18,18,0,0,0,0,0,0,21,0,18,17,0,0,0,0,21,0,0,0,19,20,0,19,19,16,16,0,0,21,18,17,0,21,0,18,18,0,20,0,19,18,0,21,20,19,19,0,21,19,17,18,0,0,21,19,19,0,21,19,18,18,0,21,0,20,18,0,0,21,18,18,0,20,21,17,17,0,21,0,18,18,0,21,19,17,17,0,21,0,0,20,0,0,20,17,18,0,0,0,19,20,0,0,0,20,19,0,19,21,17,18,0,21,0,0,0,0,21,21,18,17,0,0,21,18,18,0,0,0,0,21,0,20,19,16,17,0,0,0,0,0,0,21,20,17,17,0,11,11,13,13,0,13,13,16,16,0,13,13,16,16,0,17,17,0,21,0,18,19,21,0,0,12,12,16,16,0,15,15,19,18,0,13,13,16,16,0,16,17,21,19,0,17,17,21,21,0,13,13,16,16,0,16,16,20,18,0,13,13,16,16,0,17,17,0,0,0,18,18,0,0,0,18,17,0,20,0,0,0,0,0,0,15,15,21,21,0,19,18,0,0,0,17,17,21,21,0,17,17,0,0,0,0,0,0,0,0,15,15,20,21,0,20,20,0,0,0,19,19,0,0,0,14,15,21,19,0,16,16,0,21,0,17,16,21,21,0,17,18,21,20,0,18,18,0,21,0,16,16,0,20,0,19,19,0,0,0,16,15,0,20,0,18,18,0,0,0,17,17,0,21,0,16,16,20,20,0,20,19,0,0,0,15,16,21,22,0,18,18,0,0,0,18,17,0,0,0,18,18,0,0,0,0,0,0,0,0,16,16,21,20,0,19,20,0,0,0,18,17,21,0,0,17,18,0,0,0,0,0,0,0,0,16,16,0,20,0,0,20,0,0,0,18,18,22,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,3,4,7,7,10,12,12,12,12,10,11,11,13,13,11,12,12,11,11,12,12,12,12,12,11,13,13,13,13,12,12,12,13,14,12,13,13,13,13,12,13,13,13,13,12,13,13,13,13,11,13,13,13,13,12,12,12,14,14,12,13,13,12,12,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,14,14,12,13,13,12,12,12,13,13,13,13,12,13,13,12,12,12,13,13,13,13,12,12,12,14,14,12,13,13,12,12,12,13,13,13,13,12,13,13,12,12,10,10,11,10,10,11,11,11,11,11,11,9,9,10,10,12,11,11,10,10,12,10,10,10,10,13,12,12,12,12,13,11,11,11,11,13,12,12,12,12,13,11,11,11,11,13,12,12,12,12,13,12,12,12,12,13,11,11,11,11,13,12,12,12,12,13,11,11,11,11,13,12,12,11,11,13,12,12,11,11,13,11,11,11,11,13,12,12,11,11,13,11,11,11,11,13,12,12,11,11,13,12,12,11,11,13,11,11,11,11,13,12,12,11,11,13,11,11,11,11,13,12,12,11,11,11,11,11,10,10,11,11,11,9,9,11,12,12,11,11,12,12,12,9,9,13,13,13,10,10,13,13,13,11,11,13,13,13,14,14,13,13,13,11,10,13,13,14,12,12,13,13,13,11,11,13,13,13,11,11,13,13,13,14,14,13,13,13,10,10,13,13,13,11,11,13,13,13,10,10,13,14,13,11,11,13,14,14,14,14,13,13,13,10,10,13,14,14,11,11,13,13,13,10,10,13,14,14,11,11,13,13,13,14,14,14,13,13,10,10,13,14,14,11,11,13,13,13,10,10,14,12,12,9,9,14,12,12,9,9,14,11,11,9,9,14,12,12,8,8,14,11,11,7,7,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,9,9,15,12,12,9,9,14,13,13,9,9,15,13,13,10,10,15,12,12,10,10,15,13,13,9,9,15,12,12,9,9,15,13,13,9,9,13,12,12,9,9,13,13,13,8,8,13,13,13,9,9,13,13,13,7,7,14,13,13,8,8,14,14,14,10,10,15,14,14,11,11,14,14,14,9,9,15,14,14,10,10,15,14,14,9,9,14,14,14,10,10,15,14,14,11,11,15,14,14,9,9,14,14,14,10,10,14,14,14,9,9,15,14,15,10,10,15,14,14,11,11,14,14,14,9,9,14,14,14,9,9,14,14,14,8,8,15,14,14,10,10,15,14,14,11,11,14,14,14,9,9,15,14,14,9,9,14,14,14,8,8,12,12,12,13,13,16,16,16,11,11,17,16,16,12,12,17,16,16,11,11,17,16,16,11,11,17,17,16,13,13,17,16,16,13,13,18,17,16,12,12,17,16,16,13,13,17,16,17,12,12,18,17,17,13,13,17,16,16,14,14,18,17,17,12,12,18,16,16,13,13,17,17,17,13,12,17,17,17,13,13,17,16,16,13,13,18,17,17,12,12,17,16,16,13,12,17,17,17,12,12,18,17,17,13,13,18,16,16,14,14,18,17,17,12,12,17,17,17,13,13,18,17,18,12,12,13,14,14,10,10,16,14,14,13,13,17,15,15,14,14,17,14,14,12,13,16,14,14,13,13,17,15,15,14,14,16,16,16,15,15,17,15,15,14,14,17,16,16,14,15,17,15,15,14,14,17,15,16,14,14,17,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,14,17,15,15,14,14,16,16,16,15,15,17,15,15,13,13,17,15,15,14,14,17,15,15,13,13,17,15,15,14,14,16,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,13,11,11,10,10,16,14,14,13,12,16,14,14,13,13,16,15,14,12,12,16,14,14,12,12,16,15,15,14,14,16,14,14,14,14,17,15,15,13,13,16,15,15,14,14,17,15,15,13,14,17,15,15,14,14,17,15,14,14,14,17,15,15,13,13,17,15,15,14,14,17,15,15,13,13,17,15,15,14,14,17,14,14,14,14,17,15,15,13,13,17,15,15,13,13,17,15,15,13,13,17,15,15,14,14,17,15,15,14,14,17,15,15,13,13,17,15,15,13,13,17,15,15,13,13,14,14,15,8,8,14,14,14,19,19,14,15,15,18,19,14,14,14,19,18,14,14,14,19,19,15,15,15,19,18,15,16,16,19,19,15,15,15,19,19,15,16,16,20,19,15,15,15,19,19,15,15,15,19,19,16,16,16,20,19,15,15,15,19,18,15,16,16,20,19,15,15,15,18,18,15,15,15,19,20,15,16,16,19,19,15,15,15,20,19,15,15,15,20,19,15,15,15,19,18,15,15,15,19,19,15,16,16,19,20,15,15,15,19,19,15,15,15,19,20,15,15,15,19,19,14,12,12,9,9,14,14,14,19,19,14,14,14,19,19,14,14,15,20,19,15,14,14,18,19,15,15,15,19,19,15,15,14,20,19,15,15,15,20,19,15,15,14,20,19,15,15,15,20,19,15,15,15,19,20,15,14,14,19,20,15,15,15,20,20,15,14,14,20,19,15,15,15,19,19,15,15,15,19,19,15,14,14,19,19,15,15,15,19,20,15,15,15,20,20,15,15,15,19,19,15,15,15,20,19,16,14,14,19,19,15,15,15,20,19,15,14,15,20,19,14,15,15,20,19,12,12,12,13,13,16,16,16,11,11,16,16,16,12,12,17,16,16,11,11,17,15,16,11,11,17,17,17,13,13,18,16,17,13,13,18,17,17,13,12,17,16,17,13,13,17,17,17,13,13,16,16,16,12,12,17,16,16,13,13,17,16,16,12,12,17,16,16,12,13,17,17,17,12,12,17,17,17,13,13,18,16,16,13,13,18,17,17,12,12,18,17,17,12,12,17,17,17,12,12,17,17,17,12,12,17,16,16,13,13,17,17,17,12,12,17,16,16,12,12,17,17,17,12,12,13,14,14,9,9,16,14,14,13,13,16,15,15,14,14,17,14,14,13,13,16,14,14,13,13,17,15,15,15,15,16,16,16,15,15,17,15,15,14,14,17,15,15,15,15,17,15,15,14,14,17,15,15,14,14,16,16,16,15,15,17,15,15,14,14,17,15,15,14,14,17,15,15,14,14,17,15,15,14,14,16,16,16,15,15,18,15,15,14,13,17,15,15,14,14,17,15,15,13,13,17,15,15,14,14,16,16,16,15,15,17,15,15,14,13,17,15,15,14,14,17,15,15,13,13,13,11,11,11,11,16,14,14,12,12,16,14,14,13,13,16,15,14,12,12,17,14,14,12,12,17,15,15,13,13,17,14,14,14,14,17,15,15,13,13,17,14,15,14,13,17,15,15,13,13,16,15,15,13,13,16,14,14,14,14,17,15,15,13,13,16,14,14,13,13,16,15,15,13,13,17,15,15,13,13,17,14,14,14,14,17,15,15,12,12,17,15,15,13,13,17,15,15,12,12,16,15,15,13,13,17,14,14,13,14,17,15,15,12,12,17,14,14,13,13,17,15,15,12,12,14,14,14,8,8,14,14,14,18,18,14,15,15,19,19,14,14,14,19,19,14,15,14,18,19,15,15,15,18,19,15,16,16,20,20,15,15,15,19,20,15,16,16,19,20,15,15,15,19,20,15,15,16,19,19,15,16,16,20,20,15,15,15,20,19,15,16,16,20,19,15,15,15,19,20,15,15,15,19,19,15,16,16,20,19,15,15,15,19,19,15,16,15,20,19,15,15,15,19,19,15,15,15,19,20,15,16,16,20,20,15,15,15,19,19,15,15,15,20,20,15,15,15,19,19,14,12,12,9,9,14,14,14,18,18,14,14,14,19,20,14,14,14,18,18,14,14,14,18,19,15,15,15,19,20,15,14,14,19,19,15,15,15,19,19,15,14,15,19,19,15,15,15,18,20,15,15,15,19,19,15,14,14,19,19,15,15,15,20,19,15,15,14,20,20,15,15,15,19,19,15,15,15,19,19,15,14,14,19,19,15,15,15,19,19,15,14,14,19,20,14,15,15,19,19,15,15,15,19,19,15,14,14,20,19,15,15,15,19,19,15,14,14,20,19,15,15,15,19,19,13,12,12,13,13,17,17,16,11,11,16,16,16,12,12,17,17,16,11,11,17,16,16,11,11,17,17,17,13,13,17,16,16,13,13,18,17,17,12,12,17,16,16,13,13,18,17,17,12,12,18,17,17,13,13,18,16,17,13,13,17,17,17,12,12,18,17,17,13,13,18,17,17,12,12,17,16,17,12,12,17,16,16,13,13,17,16,16,11,11,17,16,16,12,12,17,17,17,11,11,17,17,17,12,12,18,16,16,13,13,18,17,17,12,11,17,16,16,12,12,18,17,17,11,11,13,14,14,9,9,16,14,14,13,13,16,15,15,14,14,17,14,14,12,12,16,14,14,13,13,17,15,15,14,14,17,16,16,15,16,18,15,15,14,14,17,15,15,14,14,17,15,15,14,14,18,15,15,14,14,16,16,16,15,16,18,15,15,14,14,17,16,15,14,14,18,15,15,14,14,17,15,15,14,14,17,16,16,15,15,18,14,15,13,13,17,15,15,14,14,18,15,15,13,13,17,15,15,14,14,17,16,15,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,13,11,11,10,10,16,14,14,12,12,16,14,14,12,12,17,14,15,11,11,17,14,14,11,11,17,15,15,13,13,17,14,14,14,13,17,15,15,13,13,16,15,15,13,13,17,15,15,13,13,17,15,15,13,13,17,14,14,14,14,17,15,15,13,13,17,14,15,13,13,16,15,15,13,13,17,15,15,13,13,17,14,14,13,13,17,15,15,12,12,16,14,14,12,12,17,15,15,12,12,17,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,17,15,15,12,12,13,15,14,8,8,14,14,14,19,19,14,15,15,18,19,14,14,14,18,19,14,15,14,19,19,15,16,15,19,19,15,16,16,19,20,15,15,15,19,19,15,16,16,19,19,15,16,16,19,19,15,15,15,19,19,15,16,16,20,20,15,15,15,19,19,15,15,15,19,19,15,15,15,19,19,15,15,15,19,19,15,16,16,20,19,15,15,15,19,19,15,15,15,19,19,15,15,15,19,19,15,16,15,19,19,15,16,16,21,19,15,15,15,20,20,15,15,15,20,21,15,15,15,19,20,14,12,12,8,8,14,14,14,19,19,14,13,13,19,19,14,14,14,19,19,14,13,14,19,19,15,15,15,20,20,15,14,14,20,19,15,15,15,19,20,15,14,14,19,20,15,15,15,20,19,15,15,15,19,20,15,14,14,20,20,15,15,15,20,19,15,14,14,19,19,15,15,15,19,19,15,15,15,20,19,15,14,14,21,19,15,15,15,20,21,15,14,14,21,19,15,15,15,19,19,15,15,15,20,20,15,14,14,19,21,15,15,15,19,19,15,14,14,19,20,15,15,15,19,19,13,12,12,13,13,17,16,16,11,11,17,16,15,12,12,18,16,16,11,11,17,16,16,11,11,18,17,17,13,13,18,16,16,13,13,17,17,17,12,13,18,17,16,13,13,18,17,17,13,13,17,17,17,13,13,17,16,16,13,13,18,16,17,12,12,17,16,16,13,12,17,17,17,12,12,18,17,17,13,12,18,16,16,13,13,18,17,17,12,12,17,16,16,12,12,17,17,17,11,11,17,16,16,12,12,17,16,16,13,13,17,16,16,11,11,17,16,16,12,12,17,17,17,11,11,13,14,14,9,9,16,14,14,13,13,16,15,15,14,14,17,14,14,12,12,16,14,14,13,13,17,15,15,14,14,17,15,16,15,15,17,15,15,14,14,17,15,16,14,15,18,15,15,14,14,17,15,15,14,14,16,16,16,15,15,18,15,15,13,14,17,15,15,14,14,18,15,15,14,14,17,15,15,14,14,17,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,13,11,11,10,10,16,14,14,12,12,16,14,14,13,13,17,14,14,11,11,17,14,14,12,12,17,15,15,14,14,17,14,14,14,14,17,15,15,13,13,17,15,14,13,13,16,15,15,13,13,16,15,15,13,13,17,14,14,14,14,17,15,15,13,13,17,14,14,13,13,16,15,15,13,13,16,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,16,15,15,12,12,17,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,16,15,15,12,12,14,14,14,8,8,14,14,14,18,18,14,15,15,19,18,14,14,14,18,18,14,14,14,18,19,15,16,15,19,19,15,17,16,20,20,15,15,15,19,19,15,16,16,19,19,15,15,15,19,19,15,16,15,18,19,15,16,16,20,20,15,15,15,19,19,15,16,16,19,20,15,15,15,19,19,15,15,16,19,19,15,16,16,20,20,15,15,15,19,19,15,15,15,19,20,15,15,15,19,19,15,15,15,19,19,15,16,16,20,20,15,15,15,19,20,15,16,16,20,20,15,15,15,19,19,13,12,12,8,8,14,14,14,19,20,14,14,14,19,19,14,14,14,18,19,14,14,14,19,20,15,15,15,19,20,15,14,14,21,20,15,15,15,20,20,15,15,14,19,19,15,15,15,19,19,15,15,15,19,19,15,14,14,19,20,15,15,15,19,20,15,14,14,19,19,15,15,15,19,19,15,15,15,19,19,16,14,14,19,19,15,15,15,20,20,15,14,14,21,19,15,15,15,19,19,15,15,15,19,20,16,14,14,19,20,15,15,15,19,19,15,14,14,19,19,15,15,15,20,19,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,6,7,7,7,8,8,7,8,8,10,11,11,9,8,8,7,9,9,11,12,12,9,8,8,6,7,7,9,11,11,10,11,11,10,11,11,13,13,13,11,12,12,10,11,11,13,14,14,12,12,12,6,6,6,8,6,6,8,6,6,9,7,7,12,10,10,10,6,6,9,7,7,12,10,10,11,7,6,7,8,8,12,10,10,12,10,10,11,10,10,15,13,13,13,10,10,12,11,11,15,13,13,14,11,11,8,7,7,12,11,11,12,11,11,11,11,11,14,14,14,13,12,12,12,11,11,16,15,15,14,12,12,0,10,10,0,11,11,0,12,12,0,11,11,0,14,14,0,11,11,0,11,11,0,15,15,0,11,11,7,8,8,13,10,10,12,10,10,12,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,13,11,11,12,11,11,15,14,14,14,12,12,13,12,12,15,14,14,15,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,12,12,0,15,14,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,0,8,8,0,8,8,0,10,10,0,9,9,0,10,10,0,10,10,0,9,9,0,10,10,0,7,7,0,7,7,0,7,7,0,8,8,0,8,8,0,8,8,0,9,9,0,8,8,0,8,8,0,7,7,0,8,8,0,8,8,0,10,10,0,9,9,0,9,9,0,10,10,0,9,9,0,10,10,0,8,8,0,11,11,0,11,11,0,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,12,12,0,8,8,0,11,11,0,11,11,0,13,12,0,12,12,0,13,12,0,13,13,0,12,12,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,11,11,0,11,11,0,13,12,0,12,12,0,12,12,0,12,12,0,11,11,0,12,12,0,8,8,0,12,12,0,12,12,0,13,13,0,12,12,0,13,13,0,13,13,0,12,13,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,0,7,7,0,8,8,0,9,9,0,12,12,0,8,8,0,9,9,0,12,12,0,8,8,0,6,6,0,11,11,0,11,11,0,12,12,0,14,14,0,11,11,0,12,12,0,14,14,0,11,11,0,6,6,0,6,5,0,7,6,0,7,7,0,10,10,0,6,6,0,7,7,0,10,10,0,7,7,0,7,7,0,10,10,0,11,11,0,11,11,0,14,14,0,10,10,0,12,12,0,14,14,0,12,12,0,6,6,0,11,11,0,11,11,0,12,12,0,14,14,0,11,11,0,12,12,0,15,15,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,11,11,0,11,11,0,12,12,0,15,15,0,12,12,0,11,11,0,15,15,0,11,11,0,6,6,0,11,11,0,12,12,0,12,12,0,15,15,0,11,11,0,12,12,0,14,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,2,2],"i8",L3,x.GLOBAL_BASE+489700),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,5,7,8,10,13,14,4,2,4,6,8,11,12,7,4,3,5,8,12,14,8,5,4,4,8,12,12,9,7,7,7,9,10,11,13,11,11,9,7,8,10,13,11,10,6,5,7,9,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,224,200,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,167,7,0,0,0,0,0,0,0,0,0,120,167,7,0,160,167,7,0,0,0,0,0,0,0,0,0,200,167,7,0,240,167,7,0,0,0,0,0,0,0,0,0,24,168,7,0,64,168,7,0,0,0,0,0,0,0,0,0,104,168,7,0,144,168,7,0,64,168,7,0,0,0,0,0,184,168,7,0,112,164,7,0,152,164,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,24,167,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,16,167,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,163,7,0,32,164,7,0,0,0,0,0,0,0,0,0,72,164,7,0,112,164,7,0,152,164,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,40,166,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,216,166,7,0,0,0,0,0,2,0,0,0,25,0,0,0,240,165,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,166,7,0,0,0,0,0,2,0,0,0,9,0,0,0,208,165,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,224,165,7,0,0,0,0,0,1,0,0,0,25,0,0,0,72,165,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,104,165,7,0,0,0,0,0,1,0,0,0,25,0,0,0,192,164,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,224,164,7,0,0,0,0,0,3,4,4,5,4,5,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,12,14,14,14,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,5,5,5,7,5,5,5,5,6,7,7,6,7,7,7,6,7,7,7,7,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,3,4,7,7,8,8,9,9,9,10,10,10,5,6,5,8,7,9,8,9,9,10,9,11,10,5,5,7,7,8,8,9,9,9,9,10,10,11,8,9,8,10,9,10,9,10,9,11,10,11,10,8,8,9,9,10,9,10,9,11,10,11,10,11,10,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,12,11,11,11,11,11,11,10,12,12,12,12,12,12,12,11,12,12,12,11,11,11,12,12,12,12,12,12,12,11,12,11,12,11,11,13,12,12,12,13,12,12,12,12,11,12,11,11,13,13,13,12,12,12,12,12,12,11,11,11,10,13,13,13,12,13,12,13,11,13,10,12,11,11,13,13,12,13,12,12,12,12,11,12,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,2,3,6,7,10,14,16,3,2,5,7,11,14,17,6,5,5,7,10,12,14,7,7,6,6,7,9,13,10,11,9,6,6,9,11,15,15,13,10,9,10,12,18,18,16,14,12,13,16,0,0,0,0,0,0,0,5,0,0,0,243,0,0,0,216,199,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,208,200,7,0,0,0,0,0,5,0,0,0,243,0,0,0,208,198,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,200,199,7,0,0,0,0,0,5,0,0,0,243,0,0,0,200,197,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,192,198,7,0,0,0,0,0,5,0,0,0,243,0,0,0,192,196,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,184,197,7,0,0,0,0,0,5,0,0,0,53,12,0,0,112,184,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,168,196,7,0,0,0,0,0,5,0,0,0,53,12,0,0,32,172,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,88,184,7,0,0,0,0,0,1,0,0,0,7,0,0,0,248,171,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,0,172,7,0,0,0,0,0,5,0,0,0,243,0,0,0,240,170,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,232,171,7,0,0,0,0,0,5,0,0,0,243,0,0,0,232,169,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,224,170,7,0,0,0,0,0,5,0,0,0,243,0,0,0,224,168,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,216,169,7,0,0,0,0,0,1,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,7,7,7,8,8,7,7,7,7,8,8,8,8,9,8,7,7,8,8,8,9,9,9,9,7,7,6,6,6,9,7,7,9,7,7,9,8,8,10,8,8,10,8,8,10,8,8,10,8,8,10,8,8,7,6,6,9,6,6,9,6,6,9,7,7,10,8,8,9,6,6,9,7,7,10,8,8,9,7,7,7,8,8,11,9,9,11,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,10,9,12,8,8,8,7,7,10,9,9,11,9,9,11,9,9,11,11,10,11,9,9,11,10,9,11,10,11,11,9,9,10,8,8,11,9,9,11,9,9,11,9,9,11,10,10,11,9,9,11,9,9,11,10,10,11,9,9,9,8,8,12,9,9,12,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,9,9,12,8,8,9,7,7,11,9,10,11,10,9,11,9,9,11,11,11,11,9,9,11,10,10,11,11,11,11,9,9,10,9,9,11,9,9,11,10,10,11,10,9,11,10,10,11,9,9,11,10,10,11,10,11,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,6,6,6,8,8,7,8,8,7,9,8,10,11,11,9,8,8,7,8,8,11,11,11,9,8,8,6,7,7,10,10,10,10,10,10,10,10,10,14,13,13,12,11,11,10,10,10,14,14,13,13,11,11,6,6,6,8,5,5,8,7,7,8,7,7,11,9,9,9,7,7,8,7,7,12,10,10,10,7,7,7,8,8,12,11,11,12,10,10,11,10,10,14,13,13,13,10,10,11,10,11,16,14,14,13,10,10,7,8,7,12,12,12,12,11,11,12,11,11,16,14,15,13,12,12,11,11,11,17,15,14,14,13,13,10,9,9,13,11,11,13,11,11,12,11,11,16,14,13,14,11,11,12,11,11,16,15,14,14,11,11,7,8,8,12,11,11,12,10,10,12,10,10,16,14,13,13,11,11,12,10,10,16,14,14,13,10,10,8,8,8,12,12,12,12,11,11,12,11,11,16,14,15,14,12,12,12,11,11,16,15,15,14,12,12,10,10,10,13,11,11,13,11,11,12,12,12,16,14,14,14,11,11,12,11,11,17,14,15,14,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,14,14,6,8,8,14,14,7,7,7,14,14,0,13,13,15,16,0,13,13,15,15,7,8,8,15,15,9,10,10,16,16,9,8,8,14,15,0,13,13,17,17,0,13,13,16,16,8,8,8,15,15,12,11,11,16,16,9,8,8,14,14,0,13,13,17,17,0,13,13,15,15,0,14,14,16,16,0,0,0,18,19,0,12,12,16,15,0,16,16,0,20,0,14,14,16,16,0,14,14,17,17,0,0,0,19,19,0,12,12,15,15,0,18,17,21,21,0,14,14,16,16,5,7,7,12,13,9,10,9,14,14,11,10,10,14,14,0,0,0,18,17,0,20,21,18,18,9,10,10,14,14,12,12,12,17,16,12,10,10,14,14,0,20,20,18,17,0,21,21,17,17,11,10,10,14,14,15,13,13,18,18,13,11,11,14,14,0,20,0,18,18,0,20,21,18,17,0,21,0,18,19,0,0,0,0,21,0,21,20,16,17,0,0,0,21,21,0,0,0,20,18,0,20,0,17,18,0,0,0,0,0,0,0,20,16,17,0,0,0,20,0,0,0,0,18,18,6,6,6,13,13,8,5,5,11,11,9,6,6,13,13,0,9,9,12,12,0,10,10,14,14,9,7,7,13,13,12,9,9,13,13,10,6,6,13,13,0,10,10,14,14,0,10,10,13,13,9,7,7,13,13,13,10,10,13,13,11,6,6,13,13,0,10,10,15,15,0,10,10,13,13,0,12,11,15,15,0,20,19,17,16,0,9,9,13,13,0,13,13,20,19,0,11,11,13,13,0,11,11,15,15,0,20,19,17,17,0,10,10,13,13,0,14,15,0,21,0,12,12,13,13,0,10,10,12,12,0,11,11,15,15,0,11,11,15,15,0,15,15,20,20,0,16,16,0,0,0,11,11,15,15,0,14,14,17,17,0,11,11,15,15,0,15,15,20,21,0,16,16,21,21,0,12,12,15,15,0,15,15,18,20,0,11,11,16,15,0,15,15,21,21,0,16,16,0,21,0,16,16,0,0,0,0,0,0,0,0,14,14,21,21,0,17,18,0,0,0,16,17,20,0,0,16,16,0,0,0,0,0,0,0,0,15,15,20,20,0,19,18,0,21,0,18,17,0,0,0,10,10,11,11,0,10,10,10,10,0,11,11,12,12,0,11,11,9,9,0,13,13,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,12,12,13,13,0,12,12,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,13,13,13,13,0,12,12,12,12,0,14,13,13,13,0,19,21,15,15,0,12,11,12,12,0,16,15,19,19,0,13,13,11,11,0,13,13,13,13,0,0,21,15,16,0,12,12,12,12,0,16,16,19,21,0,13,13,12,12,7,7,7,16,16,11,9,9,16,16,12,9,9,16,16,0,13,13,16,16,0,14,14,17,16,11,9,9,16,16,14,12,11,17,17,13,8,9,15,15,0,13,13,19,19,0,13,13,16,15,12,10,10,17,17,15,12,12,19,18,14,9,9,17,16,0,14,14,18,0,0,14,13,16,16,0,14,15,18,17,0,21,0,19,21,0,12,12,16,16,0,16,16,0,0,0,14,14,16,16,0,14,14,18,18,0,0,21,20,0,0,13,13,16,17,0,18,18,0,0,0,15,14,17,16,8,7,7,14,14,11,10,10,15,15,13,10,10,15,15,0,21,20,19,19,0,21,0,17,18,11,10,10,15,16,14,12,12,18,18,14,11,11,15,14,0,21,20,18,19,0,0,21,18,18,12,11,11,16,16,16,14,14,18,20,14,11,11,16,15,0,20,20,19,19,0,0,20,18,18,0,21,0,18,19,0,0,0,0,0,0,20,20,17,18,0,0,0,20,20,0,0,0,19,19,0,0,0,20,18,0,0,0,0,0,0,0,21,18,18,0,21,21,0,21,0,0,0,19,20,11,9,9,14,14,13,10,10,14,14,13,11,11,15,15,0,13,13,13,13,0,14,14,16,16,13,11,11,15,15,16,12,12,15,15,14,10,10,14,14,0,14,14,16,16,0,14,14,15,15,13,10,10,15,15,17,13,14,15,16,15,10,10,15,15,0,14,14,17,16,0,14,14,15,15,0,15,15,17,17,0,0,21,18,18,0,13,13,15,15,0,16,16,21,20,0,14,14,15,14,0,15,14,16,17,0,0,20,20,19,0,13,13,15,15,0,19,18,0,0,0,15,15,15,15,0,11,11,14,14,0,12,12,16,16,0,12,12,16,16,0,15,16,21,21,0,16,17,21,0,0,12,12,17,16,0,14,14,18,19,0,11,11,16,16,0,15,15,20,21,0,16,16,21,0,0,12,12,17,16,0,15,15,19,19,0,12,12,16,17,0,16,15,0,0,0,16,16,0,0,0,17,17,0,21,0,0,0,0,0,0,14,15,20,0,0,17,17,0,0,0,17,17,0,0,0,17,16,0,0,0,0,0,0,0,0,15,15,0,0,0,18,18,0,0,0,18,17,0,0,0,11,11,14,14,0,12,12,15,15,0,12,12,15,15,0,13,13,14,14,0,14,14,17,17,0,12,12,16,16,0,14,14,16,16,0,11,11,15,15,0,13,13,16,17,0,13,13,16,16,0,12,12,15,15,0,14,14,17,16,0,11,11,15,15,0,14,14,17,17,0,13,13,16,16,0,15,15,17,18,0,21,20,20,21,0,12,12,15,15,0,16,16,20,21,0,14,14,15,15,0,14,14,17,17,0,0,0,18,19,0,12,13,15,15,0,18,17,21,0,0,14,15,15,15,8,8,8,16,16,12,10,10,16,16,13,9,9,16,16,0,14,14,18,17,0,14,14,16,17,12,10,10,18,17,14,12,11,18,18,14,9,9,16,16,0,13,13,18,18,0,13,13,17,16,12,9,9,16,17,17,13,13,17,17,14,9,9,15,15,0,14,14,20,19,0,13,13,16,16,0,15,15,19,18,0,0,0,20,19,0,12,13,17,17,0,16,16,20,0,0,14,14,16,17,0,14,14,19,18,0,0,0,20,20,0,13,13,16,16,0,18,17,0,0,0,15,15,16,16,9,7,7,14,14,12,10,10,15,15,13,10,10,15,15,0,21,0,18,19,0,20,21,19,18,12,10,10,16,15,15,13,13,18,18,14,11,11,15,15,0,0,0,19,18,0,0,21,18,18,13,11,11,15,15,16,14,14,17,19,15,11,11,15,15,0,21,21,20,18,0,0,21,18,18,0,0,21,21,19,0,0,0,0,0,0,19,20,18,17,0,0,0,21,21,0,21,0,20,18,0,0,21,19,19,0,0,0,0,0,0,20,21,17,17,0,0,0,0,0,0,21,0,18,20,0,10,10,14,14,0,11,11,15,15,0,11,11,15,15,0,14,14,15,15,0,15,15,16,16,0,11,12,16,16,0,13,13,16,16,0,11,11,15,15,0,14,14,17,17,0,14,14,15,15,0,11,11,16,15,0,14,14,15,15,0,11,11,15,15,0,15,15,17,17,0,14,14,15,15,0,16,16,18,18,0,0,0,20,19,0,14,13,16,15,0,17,17,21,0,0,15,15,15,15,0,16,15,17,16,0,20,0,20,18,0,13,14,15,15,0,19,18,0,21,0,15,15,15,15,0,11,11,14,14,0,12,12,16,16,0,12,12,16,16,0,16,15,20,21,0,17,16,0,0,0,12,12,16,16,0,14,14,18,18,0,11,11,16,16,0,15,15,21,20,0,16,16,0,0,0,12,12,16,17,0,15,14,19,19,0,11,12,16,16,0,15,15,21,0,0,16,16,0,0,0,16,17,0,0,0,0,0,0,0,0,15,15,21,0,0,17,17,0,0,0,17,17,0,0,0,17,16,0,0,0,0,0,0,0,0,15,15,0,20,0,19,20,0,0,0,17,17,0,0,0,12,12,15,15,0,12,12,15,15,0,12,12,16,16,0,13,13,15,15,0,15,15,17,17,0,13,13,17,16,0,14,14,17,17,0,11,11,16,16,0,14,14,17,17,0,13,13,16,16,0,12,12,16,16,0,15,15,16,17,0,11,11,15,16,0,14,14,17,17,0,13,14,16,16,0,15,15,18,18,0,21,20,20,19,0,13,13,16,17,0,16,16,0,0,0,14,14,16,16,0,15,15,18,18,0,0,0,20,19,0,13,13,16,16,0,17,17,0,0,0,14,14,16,16,0,11,11,16,16,0,13,13,18,17,0,13,13,17,17,0,16,16,17,17,0,16,16,17,18,0,12,12,17,17,0,15,15,18,18,0,12,12,16,16,0,16,16,19,19,0,15,15,16,17,0,12,12,17,17,0,17,17,18,18,0,12,12,17,17,0,16,16,19,19,0,15,16,17,17,0,16,16,18,17,0,0,0,21,21,0,13,13,16,16,0,17,17,0,20,0,15,15,16,17,0,16,16,19,18,0,0,21,20,21,0,14,14,17,16,0,20,0,0,0,0,15,16,16,17,0,9,9,14,14,0,13,13,16,16,0,14,14,15,15,0,0,20,19,19,0,0,0,19,19,0,12,12,15,15,0,15,16,19,18,0,14,14,15,15,0,21,0,18,18,0,20,0,17,18,0,13,13,16,16,0,17,17,17,19,0,14,14,16,15,0,21,20,20,19,0,0,0,19,19,0,0,0,19,18,0,0,0,0,0,0,20,20,17,18,0,0,0,21,21,0,0,0,18,18,0,21,0,18,19,0,0,0,0,0,0,20,21,18,18,0,0,0,20,21,0,0,0,19,19,0,18,18,15,15,0,20,21,17,17,0,19,21,17,17,0,0,0,17,18,0,0,0,20,19,0,19,19,17,17,0,0,0,18,18,0,19,20,16,17,0,0,21,20,20,0,19,20,19,18,0,19,20,16,16,0,0,0,18,19,0,19,20,17,17,0,0,21,0,20,0,21,21,17,19,0,20,0,19,20,0,0,0,20,0,0,19,18,17,16,0,0,0,0,0,0,0,20,17,17,0,20,21,18,20,0,0,0,0,21,0,19,20,17,17,0,0,0,0,0,0,20,21,17,17,0,11,11,14,14,0,13,13,16,17,0,13,13,16,16,0,17,17,0,21,0,18,17,21,0,0,13,13,16,16,0,15,15,18,18,0,12,12,16,16,0,17,16,21,0,0,17,17,0,0,0,12,12,17,17,0,17,17,19,21,0,13,12,16,16,0,17,17,0,0,0,17,17,0,0,0,18,17,0,21,0,0,0,0,0,0,15,15,20,0,0,20,18,0,0,0,17,18,0,0,0,16,17,0,0,0,0,0,0,0,0,15,15,0,0,0,19,19,0,0,0,18,18,0,0,0,14,14,18,18,0,16,16,0,21,0,16,16,21,21,0,17,17,0,20,0,17,17,20,0,0,16,15,0,0,0,20,20,0,0,0,15,15,20,20,0,17,17,21,0,0,17,18,20,20,0,15,15,20,20,0,18,18,0,0,0,15,15,19,20,0,17,18,0,0,0,17,17,20,20,0,18,17,21,0,0,0,0,0,21,0,15,15,20,20,0,19,19,0,0,0,17,17,21,0,0,17,17,0,0,0,0,0,21,0,0,15,15,19,19,0,20,21,0,0,0,18,17,21,21,0,12,12,16,16,0,14,14,17,17,0,13,13,17,18,0,16,16,18,17,0,16,16,18,18,0,13,13,18,18,0,15,16,19,18,0,13,13,16,16,0,16,16,20,18,0,16,16,17,17,0,12,13,17,17,0,17,16,18,18,0,12,12,16,16,0,17,16,20,19,0,16,16,16,16,0,16,17,18,20,0,0,0,21,20,0,14,14,17,16,0,19,18,0,20,0,16,16,17,16,0,16,16,17,18,0,0,21,21,21,0,14,14,16,16,0,20,20,21,0,0,16,16,16,16,0,10,10,14,14,0,14,14,15,16,0,14,14,15,15,0,0,21,18,18,0,0,21,18,19,0,13,13,16,16,0,16,16,18,18,0,14,14,15,15,0,21,0,18,18,0,21,0,18,18,0,13,13,16,16,0,17,17,19,20,0,14,14,15,15,0,0,0,18,20,0,0,21,18,18,0,0,21,19,18,0,0,0,0,0,0,20,21,18,17,0,0,0,21,21,0,0,0,19,19,0,21,0,18,19,0,0,0,0,0,0,21,20,17,17,0,0,21,20,0,0,0,0,19,19,0,19,20,15,16,0,0,20,18,17,0,20,21,17,18,0,21,0,18,18,0,0,0,19,19,0,20,20,17,18,0,0,0,18,19,0,20,20,18,17,0,0,0,0,20,0,0,21,17,18,0,20,21,17,17,0,0,0,18,18,0,19,19,17,17,0,0,0,21,21,0,20,20,17,17,0,0,0,21,19,0,0,0,20,19,0,21,20,17,18,0,0,0,0,0,0,0,20,18,17,0,21,20,18,18,0,0,0,20,21,0,20,20,17,17,0,0,0,0,0,0,20,0,17,17,0,11,11,13,14,0,13,13,16,16,0,13,13,16,16,0,17,17,0,0,0,17,18,0,0,0,13,13,16,16,0,15,16,18,18,0,13,13,16,17,0,16,17,20,0,0,17,18,20,0,0,13,13,17,17,0,16,16,20,21,0,13,13,16,16,0,17,17,21,0,0,17,18,0,0,0,17,18,0,21,0,0,0,0,0,0,15,15,20,0,0,19,19,0,0,0,17,17,0,0,0,18,17,21,20,0,0,0,0,0,0,16,16,20,21,0,21,20,0,21,0,19,21,0,0,0,15,15,0,0,0,16,17,0,19,0,16,16,0,0,0,17,17,0,0,0,19,18,0,0,0,16,16,20,20,0,20,18,21,0,0,15,15,21,21,0,18,18,0,0,0,18,19,0,0,0,16,15,0,21,0,20,19,0,0,0,16,16,0,0,0,20,18,0,21,0,17,18,21,0,0,18,19,0,0,0,0,0,0,0,0,16,16,20,20,0,19,20,0,0,0,17,17,0,0,0,18,17,20,21,0,0,0,0,0,0,16,16,0,20,0,20,22,0,0,0,18,18,0,22,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,8,8,10,12,12,11,11,9,11,11,12,13,11,12,12,11,11,11,12,12,12,12,10,13,12,13,13,11,12,12,13,13,11,12,12,13,13,11,12,13,13,13,11,13,13,13,13,10,13,13,12,13,11,12,12,14,14,11,13,12,12,12,11,12,12,13,13,11,13,13,12,12,11,13,13,13,13,11,12,12,13,13,11,13,13,12,12,11,12,12,13,13,11,13,13,12,12,11,13,13,13,13,11,12,12,14,14,11,13,13,12,12,11,12,12,13,13,11,13,13,12,12,11,10,10,10,10,12,10,10,11,11,11,8,8,11,11,13,10,10,10,10,12,10,10,10,10,13,11,11,11,11,13,10,10,11,11,13,11,11,12,12,13,11,11,11,11,13,11,11,12,12,13,11,11,12,12,13,10,10,11,11,13,11,11,11,11,13,11,10,11,11,13,11,11,11,11,13,11,11,11,11,13,10,10,11,11,13,11,11,11,11,12,10,11,11,11,13,11,11,11,11,13,11,11,11,11,13,10,10,11,11,13,11,11,11,11,13,11,11,11,11,13,11,11,11,11,11,10,10,10,10,12,10,10,9,9,12,12,12,11,11,13,12,12,9,9,13,12,12,10,10,12,12,12,12,12,13,13,13,14,14,13,12,12,11,11,13,13,13,12,12,13,12,12,11,11,13,12,13,11,11,13,13,13,14,14,13,12,12,10,10,13,13,13,11,11,13,12,12,10,10,13,13,13,11,11,13,13,13,14,14,13,12,12,10,10,13,13,13,11,11,13,12,13,10,10,13,13,13,11,11,13,13,13,14,14,13,12,12,10,10,13,13,13,11,11,13,13,12,10,10,14,12,12,8,8,14,12,12,9,9,14,11,11,9,9,14,12,12,8,8,14,11,11,7,7,14,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,12,12,9,9,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,14,12,12,9,9,14,13,13,9,9,14,13,13,9,9,15,12,12,9,9,15,13,13,9,9,14,12,12,9,9,14,13,13,9,9,14,13,13,9,9,15,12,12,9,9,14,13,13,9,9,14,12,12,9,9,14,13,13,9,9,13,12,12,8,8,13,13,13,8,8,14,13,13,9,9,13,13,13,7,7,14,13,13,8,8,14,14,14,10,10,14,14,14,11,11,14,14,14,9,9,14,14,14,10,10,14,14,14,9,9,14,14,14,10,9,15,14,14,11,11,14,14,14,9,9,14,14,14,10,10,14,14,14,9,9,14,14,14,9,9,15,14,14,11,11,14,14,14,8,8,14,14,14,9,9,14,14,14,8,8,14,14,14,9,9,15,14,14,11,11,14,14,14,8,8,14,14,14,9,9,14,14,14,8,8,12,12,12,13,13,16,15,15,11,11,16,15,16,12,12,17,16,16,11,11,17,15,15,12,11,16,16,16,12,13,16,15,15,13,13,16,16,16,12,12,16,16,15,13,13,16,16,16,12,12,16,16,16,13,13,17,16,16,14,14,17,17,16,12,12,17,16,16,13,13,17,17,16,12,13,16,16,17,13,12,17,16,16,14,13,17,16,16,12,12,17,16,16,12,12,17,16,17,12,12,17,17,17,13,13,16,16,16,13,14,17,17,16,12,12,16,16,16,13,13,17,17,17,12,12,13,14,14,10,10,16,14,14,12,12,16,15,15,14,14,16,14,14,12,12,15,14,14,13,13,17,15,15,14,13,16,16,15,15,15,16,15,15,14,14,16,15,15,14,14,17,15,15,14,14,16,15,15,14,14,16,16,15,15,15,17,15,15,13,13,16,15,15,14,14,17,15,15,13,13,17,15,15,14,14,16,15,15,15,15,16,14,14,13,13,16,15,15,14,14,16,14,14,13,13,17,15,15,14,14,16,16,15,15,15,17,14,14,13,13,16,15,15,14,14,17,14,14,13,13,13,11,11,10,10,16,14,14,13,13,15,14,14,13,13,16,14,14,12,12,16,14,14,12,12,15,15,15,14,14,16,14,14,14,14,16,15,14,14,14,16,14,14,14,14,16,15,15,14,13,16,15,15,14,14,16,14,14,14,14,17,15,15,14,14,16,14,14,14,14,16,15,15,13,14,16,15,15,14,14,16,14,14,14,14,16,15,15,13,13,16,14,14,13,13,16,15,15,13,13,16,15,15,14,14,16,14,14,14,14,17,15,15,13,13,16,15,14,13,13,17,15,15,13,13,14,14,14,9,9,14,14,14,17,17,14,15,15,18,18,14,14,14,18,19,14,14,14,18,18,15,15,15,19,18,15,16,15,18,20,15,15,15,18,19,15,15,15,19,19,15,15,15,18,20,15,15,15,18,19,15,15,16,20,18,15,15,15,18,18,15,15,15,19,19,15,15,15,18,19,15,15,15,18,19,15,15,15,19,19,14,15,14,19,19,15,15,15,20,19,15,14,14,19,18,14,15,15,18,19,15,15,16,20,20,14,14,14,18,19,15,15,15,19,18,14,14,14,18,18,14,12,12,9,9,13,14,14,18,18,14,13,13,18,19,14,14,14,18,18,14,14,14,18,18,15,15,15,19,19,15,14,14,19,18,14,15,15,19,18,15,14,14,18,18,15,15,15,19,18,14,15,15,19,19,15,14,14,19,18,14,15,15,19,18,15,14,14,19,18,14,15,15,19,18,15,15,15,21,18,15,14,14,19,18,14,15,15,18,19,14,15,14,20,19,14,15,15,18,19,14,15,15,19,19,15,14,14,19,20,14,15,15,18,18,14,14,14,19,19,14,15,15,19,18,12,12,12,13,13,16,15,15,11,11,16,15,15,12,12,16,16,16,11,11,16,15,15,11,11,16,16,16,13,13,17,16,16,13,13,17,17,17,12,12,16,16,16,13,13,17,16,17,13,12,15,16,16,12,12,16,15,15,13,13,17,16,16,12,12,16,16,15,12,12,16,16,16,12,12,17,17,16,13,12,16,16,16,13,13,17,16,16,12,12,17,16,16,12,12,17,17,16,12,12,16,17,16,12,12,17,15,15,13,13,17,16,16,12,12,16,16,16,12,12,16,16,16,12,12,13,13,13,9,9,15,14,14,13,13,16,15,14,14,14,16,14,14,13,13,15,14,14,13,13,17,15,15,14,14,16,15,15,15,15,16,15,15,14,14,16,15,15,15,15,17,15,15,14,14,16,15,15,14,14,16,15,15,15,15,17,14,15,14,14,16,15,15,14,14,17,15,15,13,14,17,15,15,14,14,16,15,15,15,15,17,14,14,13,13,16,15,15,14,14,17,14,14,13,13,17,15,15,14,14,16,15,16,15,15,17,14,14,13,13,16,15,15,14,14,18,14,14,13,13,13,11,11,11,11,15,14,14,12,12,15,14,14,13,13,16,14,14,12,12,16,13,14,12,12,16,15,15,13,13,16,14,14,14,14,16,15,15,13,13,16,14,14,13,13,16,14,15,13,13,15,15,15,13,13,16,14,14,14,13,16,14,14,13,13,16,14,14,13,13,16,15,15,13,13,16,15,15,13,13,16,14,14,14,14,16,15,15,12,12,16,14,14,13,13,16,15,15,12,12,16,15,15,13,13,16,14,14,14,14,17,15,14,12,12,16,14,14,13,13,16,15,15,12,12,14,14,14,8,8,14,14,14,17,18,14,15,15,17,18,14,14,14,17,18,14,14,14,18,18,14,15,15,18,18,14,16,15,19,19,15,15,15,18,19,15,16,15,20,19,15,15,15,18,18,14,15,15,18,19,15,16,16,20,19,15,15,15,19,17,14,15,15,20,18,14,15,15,18,18,14,15,15,18,19,14,15,15,19,20,14,14,14,18,18,14,15,15,18,19,14,14,14,18,19,14,15,15,19,18,15,16,16,20,21,14,14,15,19,19,14,15,15,19,19,14,14,14,19,18,13,12,12,9,9,13,14,14,18,19,14,14,14,18,19,14,14,14,18,18,14,14,14,18,18,14,15,15,19,19,15,14,14,19,18,15,15,15,19,19,15,14,14,19,20,14,15,15,18,19,14,15,15,20,18,15,14,14,18,18,14,15,15,18,18,14,14,14,19,19,14,15,15,18,18,14,15,15,19,18,15,14,14,19,19,14,15,15,19,18,15,14,14,19,18,14,14,15,18,19,14,15,15,19,18,15,14,14,18,19,14,15,14,19,20,14,14,14,19,19,14,15,15,19,19,12,12,12,13,13,16,16,16,11,11,16,16,16,12,12,17,16,16,11,11,17,15,15,11,11,16,16,16,13,13,17,15,16,13,13,16,16,16,12,12,17,16,16,13,13,17,17,16,12,12,17,17,16,13,13,17,16,16,13,13,17,17,17,12,12,17,16,16,13,13,17,17,17,12,12,16,16,16,12,12,17,15,15,13,13,17,16,16,11,11,17,16,16,12,12,16,16,16,11,11,16,17,16,12,12,17,16,16,13,13,17,17,16,12,12,17,17,16,12,12,17,16,16,11,11,13,14,14,9,9,16,14,14,13,13,16,14,15,14,14,16,14,14,12,12,16,14,14,13,13,17,15,15,14,14,16,15,15,15,15,17,15,15,14,14,16,15,15,14,14,17,15,15,14,14,16,15,15,14,14,16,15,15,15,16,17,14,15,14,14,16,15,15,14,14,17,15,15,14,14,16,15,15,14,14,16,15,15,15,15,17,14,14,13,13,16,15,15,14,14,16,14,14,13,13,17,15,15,14,14,16,16,15,15,15,17,14,14,13,13,16,15,15,14,14,17,14,14,13,13,13,11,11,10,10,16,14,14,12,12,15,13,13,13,12,16,14,14,11,11,16,14,14,11,11,16,14,15,13,14,16,14,14,13,13,16,15,15,13,13,16,14,14,13,13,16,15,15,13,13,16,15,15,13,13,17,14,14,14,14,17,15,15,13,13,16,14,15,13,13,16,15,15,13,13,16,15,15,13,13,16,14,14,13,13,17,15,15,12,12,16,14,14,12,12,16,15,15,12,12,16,15,15,13,13,16,14,14,13,13,17,15,15,12,12,17,14,14,12,12,16,15,15,12,12,13,14,14,8,8,13,14,14,18,18,13,15,15,17,18,14,14,14,18,19,14,14,14,19,18,14,15,15,19,18,15,15,16,21,18,15,15,15,19,19,14,16,16,19,19,14,15,15,18,19,14,15,15,19,20,14,16,16,19,18,15,15,15,18,19,14,15,15,19,18,15,15,15,18,18,15,15,15,20,18,15,16,16,20,19,14,15,14,18,19,14,15,16,19,20,14,15,15,19,18,15,15,15,19,18,15,16,16,20,19,15,14,14,18,18,14,15,15,19,19,14,15,15,18,18,13,12,12,8,8,13,14,14,19,18,14,13,13,20,18,14,14,14,19,18,14,13,13,18,19,14,15,15,20,19,15,14,14,19,19,14,15,15,19,18,15,14,14,20,20,15,15,15,19,18,14,15,15,19,18,15,14,14,19,18,14,15,15,20,19,14,14,14,20,19,14,15,15,19,18,15,15,15,18,18,15,14,14,18,18,14,15,15,19,19,14,14,14,19,19,14,15,15,19,19,15,15,15,19,18,15,14,14,20,19,15,15,15,19,19,14,14,14,20,19,14,15,15,20,20,12,12,12,13,13,17,16,16,11,11,16,16,15,12,12,17,16,16,11,11,17,15,15,11,11,17,17,17,13,13,17,16,16,13,13,17,17,17,12,12,17,16,16,13,13,17,17,16,12,13,16,17,16,13,13,17,16,15,13,13,17,16,16,12,12,17,16,16,12,13,17,16,17,12,12,17,17,17,12,12,17,16,15,13,13,17,16,16,12,12,17,16,16,12,12,17,16,16,11,11,16,16,16,12,12,17,15,15,13,13,17,16,15,11,11,16,16,16,12,12,17,16,16,11,11,13,14,14,9,9,16,14,14,13,13,16,14,15,14,14,16,14,14,12,12,16,14,14,13,13,17,15,15,14,15,16,15,15,15,15,17,15,15,14,14,16,15,15,15,14,16,15,15,14,14,16,15,15,14,14,16,15,16,15,15,17,15,14,14,14,16,15,15,14,14,17,15,15,13,13,16,15,15,14,14,16,16,16,15,15,17,14,14,13,13,16,15,15,14,14,18,14,15,13,13,16,15,15,14,14,16,16,15,15,15,16,14,14,13,13,16,15,15,14,14,17,14,15,13,13,13,11,11,10,10,15,14,14,12,12,15,14,14,13,13,16,14,14,12,12,16,13,14,12,12,16,14,15,14,13,16,14,14,14,14,16,15,15,13,13,16,14,14,13,13,16,15,15,13,13,15,15,15,13,13,16,14,14,14,14,17,15,15,13,13,16,14,14,13,13,16,15,15,13,13,16,15,15,13,13,16,14,14,13,13,17,15,15,12,12,16,14,14,12,12,16,14,15,12,12,16,15,15,13,13,16,14,14,13,13,17,15,15,12,12,16,14,14,12,12,16,15,15,12,12,14,14,14,8,8,14,14,14,17,17,14,15,15,18,18,14,14,14,18,17,14,14,14,18,18,14,15,15,18,20,15,16,15,19,18,15,15,15,19,18,15,15,16,19,18,15,15,15,18,18,14,15,15,18,18,15,16,16,18,19,15,15,15,18,18,15,15,15,19,20,15,15,15,18,18,15,15,15,18,18,15,16,16,19,19,15,14,15,19,19,15,15,15,19,20,14,14,15,18,18,15,15,15,19,19,15,16,16,19,19,15,15,14,18,19,15,15,15,20,20,15,15,14,18,18,13,12,12,8,8,13,14,14,18,18,14,14,14,18,18,14,14,14,18,20,14,14,14,18,18,14,15,15,19,18,15,14,14,18,19,15,15,15,18,19,15,14,14,18,19,15,15,15,18,18,14,15,14,18,19,15,14,14,21,19,15,15,15,19,18,14,14,14,19,18,14,15,15,19,18,15,15,15,20,19,15,14,14,20,18,14,15,15,18,19,14,14,14,19,18,14,15,15,18,19,15,15,15,18,19,15,14,14,19,19,15,15,15,19,19,14,14,14,19,20,14,15,15,18,19,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,7,8,8,7,8,8,7,9,9,10,12,11,9,8,8,7,9,9,11,12,12,9,9,9,6,7,7,10,11,11,10,11,11,10,11,11,13,13,14,12,12,12,11,11,11,14,14,14,12,12,12,6,5,5,9,6,5,9,6,6,9,7,7,12,10,10,11,6,6,10,7,7,13,10,10,12,7,7,7,8,8,12,10,10,12,10,10,11,10,10,15,13,13,13,9,9,12,11,11,16,13,13,15,11,11,8,7,7,12,12,12,12,11,11,12,11,11,14,14,14,14,12,12,12,12,12,16,15,15,14,12,12,0,10,10,0,12,12,0,12,12,0,11,11,0,14,14,0,11,11,0,12,12,0,15,15,0,11,11,8,8,8,13,11,11,13,10,10,13,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,9,7,7,13,11,11,13,11,11,12,11,11,16,14,14,14,12,12,13,12,12,15,14,14,15,13,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,13,12,0,14,15,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,0,9,9,0,9,9,0,10,10,0,9,9,0,10,10,0,10,10,0,9,9,0,10,10,0,7,7,0,7,7,0,6,6,0,8,8,0,7,7,0,8,8,0,8,9,0,8,8,0,8,8,0,7,7,0,9,9,0,8,8,0,10,10,0,9,9,0,10,10,0,10,10,0,9,9,0,10,10,0,9,9,0,11,11,0,11,11,0,12,12,0,11,11,0,12,12,0,13,13,0,12,12,0,13,12,0,8,8,0,12,12,0,12,12,0,13,13,0,12,12,0,13,13,0,13,13,0,13,13,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,11,11,0,12,12,0,13,13,0,12,12,0,13,13,0,13,13,0,12,12,0,12,12,0,8,8,0,12,12,0,12,12,0,13,13,0,13,13,0,13,14,0,14,13,0,13,13,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,0,7,7,0,8,8,0,9,9,0,12,12,0,8,8,0,9,9,0,12,12,0,8,8,0,6,6,0,11,11,0,12,12,0,12,12,0,15,15,0,11,11,0,12,12,0,15,15,0,12,12,0,5,5,0,5,5,0,6,6,0,7,7,0,11,11,0,6,6,0,7,7,0,10,11,0,6,6,0,7,7,0,11,11,0,12,12,0,11,11,0,15,15,0,10,10,0,12,12,0,15,15,0,12,12,0,6,6,0,12,12,0,12,12,0,12,12,0,15,15,0,11,11,0,12,12,0,15,15,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,11,12,0,15,16,0,11,11,0,6,6,0,11,12,0,12,12,0,12,12,0,16,15,0,12,12,0,13,12,0,15,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,3,7,8,10,13,16,3,2,5,7,9,13,16,6,4,4,6,10,14,15,7,5,5,7,10,13,14,9,8,9,9,9,11,13,12,11,12,9,7,8,11,14,12,10,6,5,7,10,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,248,239,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,104,206,7,0,0,0,0,0,0,0,0,0,144,206,7,0,184,206,7,0,0,0,0,0,0,0,0,0,224,206,7,0,8,207,7,0,0,0,0,0,0,0,0,0,48,207,7,0,88,207,7,0,0,0,0,0,0,0,0,0,128,207,7,0,168,207,7,0,88,207,7,0,0,0,0,0,208,207,7,0,136,203,7,0,176,203,7],"i8",L3,x.GLOBAL_BASE+500144),d3([2,0,0,0,49,0,0,0,48,206,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,40,206,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,203,7,0,56,203,7,0,0,0,0,0,0,0,0,0,96,203,7,0,136,203,7,0,176,203,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,64,205,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,240,205,7,0,0,0,0,0,2,0,0,0,25,0,0,0,8,205,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,40,205,7,0,0,0,0,0,2,0,0,0,9,0,0,0,232,204,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,248,204,7,0,0,0,0,0,1,0,0,0,25,0,0,0,96,204,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,128,204,7,0,0,0,0,0,1,0,0,0,25,0,0,0,216,203,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,248,203,7,0,0,0,0,0,3,5,4,5,4,5,4,5,5,5,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,7,7,4,5,6,7,7,4,6,5,7,7,7,6,7,6,7,7,7,6,7,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,3,3,8,8,10,10,10,10,10,10,10,10,5,7,5,9,8,10,10,10,10,11,10,11,10,5,5,7,8,9,10,10,11,10,10,11,10,11,10,10,10,11,11,11,11,11,11,11,10,11,11,10,10,10,10,11,11,11,11,11,10,11,11,11,11,11,11,11,11,12,11,10,11,11,11,11,11,11,11,11,11,11,11,11,10,10,11,11,12,11,11,11,11,11,11,12,11,11,11,10,11,11,11,11,11,11,11,11,10,11,11,10,11,10,11,11,11,11,11,11,11,11,11,11,12,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,10,11,11,11,11,11,11,11,12,11,13,11,11,11,11,11,11,11,11,11,11,11,12,11,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,2,3,6,7,9,13,17,3,2,5,7,9,13,17,6,5,5,6,9,12,16,7,7,6,6,7,10,13,10,10,9,7,6,10,13,13,13,12,10,10,11,15,17,17,17,14,14,15,17,0,0,0,0,0,0,0,5,0,0,0,243,0,0,0,240,238,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,232,239,7,0,0,0,0,0,5,0,0,0,243,0,0,0,232,237,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,224,238,7,0,0,0,0,0,5,0,0,0,243,0,0,0,224,236,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,216,237,7,0,0,0,0,0,5,0,0,0,243,0,0,0,216,235,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,208,236,7,0,0,0,0,0,5,0,0,0,53,12,0,0,136,223,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,235,7,0,0,0,0,0,5,0,0,0,53,12,0,0,56,211,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,112,223,7,0,0,0,0,0,1,0,0,0,7,0,0,0,16,211,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,24,211,7,0,0,0,0,0,5,0,0,0,243,0,0,0,8,210,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,0,211,7,0,0,0,0,0,5,0,0,0,243,0,0,0,0,209,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,248,209,7,0,0,0,0,0,5,0,0,0,243,0,0,0,248,207,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,240,208,7,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,7,6,8,8,7,7,8,7,8,8,9,9,9,8,7,7,8,8,8,9,9,9,9,8,8,6,6,6,9,7,7,9,7,7,9,8,8,10,8,8,10,8,8,10,8,8,10,9,8,10,8,8,7,6,6,9,6,6,9,6,6,9,7,7,10,8,8,10,6,6,9,7,7,10,8,8,10,6,6,7,7,7,11,9,9,11,9,9,10,9,9,12,10,10,12,8,8,11,9,9,13,9,10,12,8,8,8,7,7,11,9,10,11,10,10,10,9,9,11,11,11,11,9,9,11,10,9,12,11,11,11,9,10,10,8,8,11,9,10,11,9,9,11,9,9,12,10,10,11,9,9,11,9,9,12,10,11,11,9,9,8,8,8,12,9,9,12,9,9,11,9,9,13,9,9,13,8,8,12,9,9,13,10,10,12,8,8,9,7,7,11,10,10,11,10,10,11,10,10,12,11,11,11,10,9,11,10,10,11,11,11,11,9,9,11,9,9,12,10,10,11,10,10,12,10,10,11,11,11,11,9,9,11,10,10,12,11,11,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,7,7,6,8,8,7,8,8,7,9,9,11,11,11,9,8,8,7,9,9,11,12,11,9,9,9,6,7,7,10,11,11,10,10,10,10,11,11,15,14,14,12,12,12,11,11,11,14,14,14,12,12,12,5,6,6,8,5,5,8,7,7,8,8,8,12,10,10,10,7,7,8,7,7,12,10,10,10,7,7,6,7,7,12,11,11,12,10,10,11,10,10,14,14,13,13,10,10,11,10,10,16,14,14,14,11,10,7,7,7,13,12,12,12,12,11,11,11,11,15,14,17,13,12,12,12,11,11,15,15,15,14,13,13,10,9,9,14,12,11,13,11,11,12,11,11,16,15,14,14,11,11,12,11,11,17,14,14,15,11,11,7,8,8,12,11,11,13,10,10,11,10,10,17,14,13,14,10,10,12,10,10,18,15,15,14,10,10,8,7,7,13,12,12,13,11,11,12,11,11,16,14,15,14,12,12,12,11,11,18,16,16,14,12,12,11,10,10,13,12,11,13,11,11,13,12,12,0,15,14,14,11,11,13,11,11,16,15,15,15,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,1,7,7,14,14,6,8,8,15,16,7,8,8,16,15,0,14,14,17,17,0,14,14,16,16,7,9,9,16,16,10,11,11,17,18,9,8,8,16,16,0,14,14,19,19,0,14,14,17,16,8,9,9,16,16,12,12,12,17,17,10,9,9,16,16,0,15,14,18,20,0,14,14,17,17,0,15,15,18,17,0,21,0,0,21,0,13,13,17,17,0,17,17,0,0,0,15,15,17,17,0,15,15,17,18,0,0,0,0,21,0,13,13,17,17,0,18,18,0,21,0,16,15,17,18,6,7,7,14,14,9,10,10,16,16,11,10,10,15,15,0,21,0,20,21,0,0,0,18,20,10,10,10,15,16,12,13,13,18,18,12,11,11,15,15,0,0,0,20,20,0,0,21,19,19,12,11,11,15,15,15,14,14,18,18,13,11,11,15,16,0,0,0,20,19,0,0,0,20,21,0,0,20,19,19,0,0,0,0,0,0,20,0,17,18,0,0,21,0,0,0,0,0,21,0,0,21,0,20,19,0,0,0,0,0,0,21,0,18,18,0,0,0,21,0,0,0,0,0,20,7,6,6,13,13,9,6,6,12,12,9,7,7,14,14,0,10,10,12,12,0,11,11,15,15,9,7,7,14,14,12,9,9,14,14,10,7,7,14,13,0,11,11,16,15,0,11,11,14,14,9,7,7,14,14,13,10,10,14,14,11,7,7,14,13,0,11,11,16,16,0,11,11,14,14,0,12,12,16,16,0,19,0,17,18,0,10,10,14,14,0,15,14,0,0,0,12,12,14,14,0,12,12,15,15,0,20,0,18,19,0,10,10,14,14,0,16,15,0,20,0,13,13,14,14,0,11,11,13,13,0,12,13,16,16,0,12,12,16,16,0,16,16,0,21,0,17,18,0,0,0,12,12,16,16,0,15,15,18,0,0,12,12,16,16,0,17,16,21,21,0,16,17,0,0,0,13,13,17,16,0,16,16,20,21,0,12,12,17,16,0,17,17,0,21,0,17,17,21,21,0,17,18,0,0,0,0,0,0,0,0,15,15,0,0,0,18,21,0,0,0,18,19,0,0,0,18,17,21,21,0,0,0,0,0,0,16,16,0,0,0,0,0,0,0,0,19,19,0,0,0,11,11,12,12,0,11,11,10,10,0,12,12,13,13,0,12,12,9,9,0,14,14,13,13,0,12,12,13,13,0,14,14,12,13,0,11,11,12,12,0,13,13,13,13,0,13,13,13,13,0,12,12,13,13,0,14,14,12,12,0,11,11,12,12,0,14,13,14,14,0,13,13,13,13,0,15,15,14,15,0,0,0,16,16,0,12,12,13,13,0,16,17,20,21,0,14,13,12,12,0,14,14,14,14,0,21,0,16,16,0,12,12,13,13,0,18,17,21,0,0,14,14,13,13,7,8,8,17,17,11,10,10,18,18,12,10,10,17,17,0,15,15,20,18,0,15,15,17,17,11,9,9,17,17,14,12,12,19,19,13,9,9,16,16,0,15,14,0,19,0,14,14,16,16,12,10,10,20,18,16,13,13,21,20,14,10,10,17,17,0,15,15,21,20,0,15,14,17,17,0,15,15,21,21,0,0,21,0,0,0,13,13,18,18,0,19,16,0,0,0,15,15,17,16,0,16,16,0,21,0,0,0,0,21,0,13,14,18,17,0,20,19,0,0,0,15,15,18,18,8,7,7,15,15,12,11,11,17,16,13,11,11,16,16,0,0,0,21,20,0,0,0,0,20,11,10,10,17,17,14,13,13,19,18,14,11,11,16,16,0,20,0,21,19,0,0,21,0,20,12,11,11,17,17,16,15,15,0,19,14,11,11,17,16,0,21,0,0,19,0,0,0,21,20,0,0,21,20,0,0,0,0,0,0,0,0,0,19,21,0,0,0,0,0,0,0,0,19,20,0,0,0,20,21,0,0,0,0,0,0,20,0,19,21,0,0,0,0,0,0,0,0,21,20,11,10,9,15,15,14,11,11,15,15,14,11,11,16,16,0,14,14,14,14,0,16,15,17,16,13,11,11,16,16,16,13,13,16,16,15,10,10,15,15,0,14,15,17,17,0,14,14,16,15,13,11,11,16,16,17,15,14,16,16,15,10,10,15,15,0,15,15,17,18,0,15,15,16,16,0,16,16,17,17,0,21,0,21,20,0,13,13,15,15,0,18,18,0,21,0,15,15,15,15,0,16,16,17,17,0,0,0,0,18,0,13,13,15,15,0,19,18,0,0,0,15,15,16,16,0,12,12,15,15,0,13,13,17,17,0,13,13,17,18,0,16,17,21,0,0,20,18,0,0,0,13,13,17,17,0,15,15,0,18,0,12,12,17,18,0,16,16,0,0,0,17,17,21,0,0,13,13,18,18,0,16,16,21,21,0,12,12,17,18,0,16,17,21,0,0,17,17,0,21,0,17,18,0,0,0,0,0,0,0,0,16,15,0,21,0,21,19,0,0,0,18,18,0,0,0,18,19,0,0,0,0,0,0,0,0,16,16,21,21,0,20,19,0,0,0,19,21,0,21,0,12,12,15,15,0,12,12,15,16,0,13,13,16,16,0,14,14,15,15,0,16,15,17,17,0,13,13,17,17,0,15,15,16,18,0,12,12,16,16,0,14,14,17,17,0,15,14,16,16,0,13,13,16,16,0,16,15,17,17,0,12,12,16,16,0,15,15,18,18,0,14,14,17,16,0,16,16,17,18,0,0,0,20,21,0,13,13,16,17,0,17,17,0,0,0,15,15,16,16,0,15,16,17,17,0,0,0,19,0,0,13,13,15,16,0,19,18,0,0,0,16,15,16,17,8,8,8,17,17,13,11,10,17,18,13,10,10,17,17,0,15,15,20,19,0,15,15,17,17,12,10,10,19,18,15,12,12,20,18,14,10,10,17,16,0,15,15,20,20,0,14,15,16,16,13,10,10,17,17,17,14,14,0,18,15,10,10,17,17,0,16,15,20,20,0,14,14,17,17,0,15,16,20,20,0,0,21,0,0,0,13,13,17,17,0,18,17,0,0,0,15,16,17,18,0,15,15,18,21,0,0,0,21,0,0,13,13,18,18,0,19,19,0,0,0,16,16,18,17,9,8,8,15,15,12,11,11,16,16,13,11,11,16,15,0,0,0,0,21,0,21,0,19,19,12,11,11,17,18,15,13,13,18,19,14,11,11,16,16,0,0,21,21,19,0,0,0,21,20,13,11,11,18,17,17,14,15,20,21,15,11,12,16,16,0,0,0,20,0,0,0,21,0,19,0,0,0,0,19,0,0,0,0,0,0,21,21,19,19,0,0,0,21,0,0,0,0,19,21,0,0,0,19,20,0,0,0,21,0,0,0,21,19,19,0,0,0,0,0,0,0,0,21,20,0,11,11,15,15,0,12,12,15,16,0,12,12,16,16,0,15,15,16,15,0,16,16,17,17,0,12,12,17,17,0,14,14,17,17,0,11,11,16,16,0,15,15,19,18,0,15,15,16,16,0,12,12,17,16,0,14,15,16,16,0,11,11,15,15,0,16,16,18,19,0,15,15,15,16,0,17,17,18,20,0,21,0,21,19,0,14,14,16,16,0,18,18,0,0,0,16,16,15,15,0,16,16,18,17,0,0,0,19,20,0,14,14,16,16,0,19,19,0,0,0,16,17,15,15,0,12,12,14,15,0,13,13,16,17,0,12,12,17,17,0,17,16,0,0,0,18,17,21,0,0,13,13,19,17,0,15,15,20,21,0,12,12,17,17,0,17,17,0,0,0,17,17,0,0,0,13,13,17,18,0,16,16,21,0,0,12,12,17,17,0,17,17,0,0,0,17,17,0,0,0,18,21,0,0,0,0,0,0,0,0,15,15,21,0,0,20,21,0,0,0,18,19,0,0,0,18,17,0,0,0,0,0,0,0,0,16,16,21,0,0,21,21,0,0,0,18,19,0,0,0,12,12,16,16,0,13,13,16,17,0,13,13,17,16,0,14,14,16,16,0,16,15,19,18,0,13,13,17,17,0,15,15,18,18,0,12,12,16,16,0,15,15,18,19,0,15,15,17,16,0,13,13,17,17,0,16,16,18,17,0,12,12,17,16,0,15,15,18,18,0,15,15,17,17,0,16,16,0,19,0,0,0,0,0,0,14,14,16,17,0,18,18,0,0,0,15,15,17,17,0,16,16,21,19,0,21,0,21,21,0,13,14,16,16,0,19,19,0,0,0,15,16,16,16,0,11,11,17,16,0,15,14,19,18,0,14,14,19,19,0,18,17,18,20,0,17,17,18,19,0,13,13,17,17,0,16,17,21,18,0,13,13,17,16,0,18,17,19,0,0,16,17,18,18,0,12,12,19,18,0,18,18,20,20,0,13,13,17,17,0,17,17,21,0,0,16,17,17,18,0,18,17,19,18,0,0,0,0,0,0,14,14,17,17,0,19,19,21,0,0,16,16,16,17,0,17,17,19,20,0,0,0,0,21,0,15,15,17,18,0,21,21,0,0,0,17,17,17,18,0,10,10,15,15,0,15,14,17,18,0,14,14,16,16,0,0,0,18,0,0,21,0,19,0,0,13,13,17,16,0,17,17,18,0,0,14,14,16,15,0,0,0,21,0,0,21,0,19,18,0,13,13,17,17,0,18,18,20,20,0,15,15,16,16,0,0,0,21,21,0,0,0,20,20,0,0,0,19,0,0,0,0,0,0,0,21,20,18,18,0,0,0,0,0,0,0,0,0,20,0,0,0,0,20,0,0,0,0,0,0,0,0,19,18,0,0,0,0,21,0,0,0,18,20,0,18,19,16,17,0,21,19,17,17,0,0,21,18,18,0,0,21,20,19,0,0,0,20,20,0,0,21,17,17,0,0,0,19,19,0,20,20,17,17,0,0,0,0,20,0,0,20,18,18,0,21,20,17,17,0,0,0,20,21,0,19,0,17,17,0,0,21,0,0,0,20,0,18,19,0,0,0,21,21,0,0,0,0,21,0,20,20,17,17,0,0,0,0,0,0,21,0,18,17,0,0,0,20,19,0,0,0,0,21,0,20,20,17,17,0,0,0,0,0,0,21,21,18,18,0,12,12,15,14,0,14,14,17,17,0,14,14,17,16,0,18,18,21,0,0,19,20,0,0,0,13,13,18,17,0,16,16,19,18,0,13,13,17,17,0,17,17,0,0,0,17,17,21,0,0,13,13,17,17,0,17,17,21,20,0,13,13,18,17,0,18,19,21,21,0,19,18,0,0,0,18,17,0,0,0,0,0,0,0,0,15,16,0,0,0,21,21,0,0,0,20,18,21,0,0,17,18,0,0,0,0,0,0,0,0,15,16,0,0,0,0,20,0,0,0,0,19,0,0,0,15,15,18,19,0,18,17,21,0,0,16,18,0,20,0,17,18,21,0,0,18,20,0,0,0,16,16,21,21,0,19,20,21,0,0,16,15,0,21,0,18,20,0,0,0,18,19,0,0,0,16,15,21,21,0,21,0,0,0,0,16,15,21,0,0,20,19,0,0,0,18,21,21,0,0,20,18,0,0,0,0,0,0,0,0,16,16,0,20,0,21,0,0,0,0,17,18,20,21,0,18,18,21,21,0,0,0,0,0,0,16,16,20,0,0,0,21,0,0,0,21,18,0,0,0,12,12,20,17,0,15,15,19,18,0,14,14,19,18,0,18,17,21,19,0,17,17,21,17,0,13,13,21,19,0,16,17,20,19,0,13,13,16,16,0,17,17,20,21,0,16,16,19,17,0,13,13,18,18,0,17,19,19,19,0,13,13,17,17,0,18,18,0,19,0,16,17,18,18,0,16,17,19,21,0,0,0,0,0,0,15,15,16,17,0,20,19,21,0,0,17,17,17,17,0,17,17,21,19,0,0,0,0,0,0,15,15,17,17,0,21,0,0,0,0,18,18,17,17,0,10,10,15,15,0,15,15,17,17,0,15,14,16,16,0,0,0,21,19,0,21,21,19,21,0,13,13,17,16,0,17,17,18,19,0,14,15,16,15,0,0,0,21,19,0,21,21,18,19,0,14,14,16,17,0,18,18,18,19,0,15,15,15,16,0,0,21,0,21,0,0,0,19,20,0,0,0,21,19,0,0,0,0,0,0,21,21,19,17,0,0,0,0,0,0,0,0,21,21,0,21,0,0,21,0,0,0,0,0,0,21,21,19,18,0,0,0,0,0,0,0,0,0,19,0,21,18,18,17,0,21,0,20,20,0,0,0,18,20,0,0,21,18,21,0,0,0,21,18,0,0,0,0,19,0,0,0,21,21,0,20,21,17,19,0,21,0,21,0,0,21,0,18,18,0,20,21,17,18,0,0,0,21,19,0,20,21,17,18,0,0,0,21,21,0,0,0,20,19,0,0,0,21,21,0,0,0,0,0,0,21,21,19,18,0,0,0,0,0,0,0,21,19,18,0,21,21,19,0,0,0,0,21,0,0,21,21,18,17,0,0,0,0,0,0,21,0,21,18,0,12,12,14,14,0,15,14,17,17,0,14,14,17,16,0,19,17,0,0,0,19,19,0,0,0,13,13,17,17,0,17,17,20,20,0,13,13,18,18,0,18,17,0,0,0,18,21,0,0,0,13,13,17,17,0,18,18,21,20,0,14,14,18,19,0,19,18,21,0,0,19,19,0,0,0,20,18,20,0,0,0,0,0,0,0,15,16,0,0,0,21,21,0,0,0,19,19,0,0,0,18,18,0,0,0,0,0,0,0,0,16,16,0,21,0,0,0,0,0,0,19,20,0,0,0,15,15,20,21,0,17,17,21,21,0,17,17,0,0,0,19,18,0,0,0,18,19,0,0,0,17,16,0,21,0,0,20,0,0,0,16,16,0,20,0,19,19,0,21,0,19,18,0,21,0,16,16,0,0,0,21,21,0,0,0,16,16,0,0,0,21,21,0,0,0,19,19,0,0,0,20,0,0,0,0,0,0,0,0,0,17,17,0,21,0,0,20,0,0,0,20,18,21,21,0,19,18,0,20,0,0,0,0,0,0,16,17,21,0,0,0,21,0,0,0,19,20,21,20,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,3,4,9,9,10,12,12,12,11,10,12,12,13,12,11,13,12,11,11,11,12,12,12,11,11,13,13,13,13,11,12,12,14,14,12,13,13,13,13,11,13,13,13,13,11,13,13,13,13,11,13,13,13,13,11,12,12,14,14,12,13,13,12,12,11,13,13,13,13,11,13,13,12,12,11,13,13,13,13,12,12,13,14,14,12,13,13,12,12,11,13,13,13,13,11,13,13,12,12,11,13,13,13,13,12,13,13,14,14,12,13,13,12,12,11,13,13,13,13,11,13,13,12,12,11,10,10,10,10,12,10,10,11,11,12,9,9,11,11,13,11,11,10,10,13,10,10,10,10,13,11,11,12,12,13,10,10,12,12,14,12,11,12,12,13,11,11,11,12,13,12,12,12,12,13,11,11,12,12,13,10,10,12,12,14,11,11,12,12,13,11,11,12,12,13,11,11,12,12,14,12,12,12,12,14,10,10,11,11,14,12,11,11,11,13,11,11,11,11,13,12,12,11,11,14,12,12,12,11,14,10,10,11,11,14,12,11,11,11,13,11,11,11,11,13,12,12,11,11,11,11,11,10,10,12,10,11,9,9,12,12,12,11,11,13,12,12,9,9,13,13,13,10,10,13,13,13,12,12,13,13,13,14,14,13,12,12,11,11,14,13,13,12,12,14,13,13,11,11,13,13,13,12,11,13,13,13,14,14,13,12,12,10,10,14,13,13,11,11,13,13,13,10,10,13,13,13,11,11,14,13,13,14,14,14,12,12,10,10,13,13,13,11,11,13,13,13,10,10,13,13,13,11,11,14,13,13,14,14,14,13,13,10,10,13,13,13,11,11,13,13,13,10,10,14,12,12,8,8,14,12,12,9,9,14,11,11,9,9,14,12,12,8,8,14,12,12,7,7,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,12,13,9,9,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,13,13,9,9,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,9,9,14,13,12,9,9,14,13,13,9,9,15,13,13,10,10,15,12,12,10,10,15,13,13,9,9,15,13,13,9,9,14,13,13,9,9,14,12,12,8,8,13,13,13,8,8,14,14,13,9,9,14,14,13,7,7,14,14,14,8,8,14,14,14,10,10,15,14,14,12,12,14,14,14,9,9,15,14,14,10,10,14,14,14,9,9,14,14,14,10,9,15,14,14,12,12,14,14,14,9,9,15,14,14,10,10,14,14,14,9,9,15,14,15,9,9,15,14,14,11,11,14,14,14,8,8,14,14,14,9,9,14,14,14,8,8,14,15,14,10,10,15,14,14,11,11,14,14,14,8,8,15,14,14,9,9,14,14,14,8,8,12,12,12,13,13,16,16,15,12,12,17,16,16,13,13,17,16,16,11,11,17,16,16,12,12,17,16,17,13,13,17,16,16,14,14,17,17,16,12,12,18,16,16,13,13,17,16,17,12,12,17,17,17,13,13,18,16,16,14,14,18,17,17,12,12,17,17,17,13,13,18,17,17,13,13,17,17,17,13,13,17,16,16,14,14,17,17,17,12,12,16,16,17,13,13,17,17,16,12,12,18,17,17,13,13,18,16,16,14,14,18,17,17,12,12,19,16,17,13,13,17,16,17,12,12,13,14,14,10,10,16,14,14,13,13,17,15,15,14,14,17,14,14,13,13,16,14,14,13,13,17,16,15,14,14,16,16,16,15,15,17,15,15,14,14,17,15,15,14,14,17,15,15,14,14,17,16,15,14,14,16,16,16,15,15,18,15,15,13,13,16,16,15,14,14,17,15,15,14,13,17,15,15,14,14,16,16,16,15,15,18,15,14,13,13,17,15,15,14,14,18,14,15,13,13,18,15,15,14,14,16,16,16,15,15,17,15,15,13,13,17,15,15,14,14,17,15,15,13,13,13,11,11,10,10,16,14,14,13,13,17,14,15,14,14,17,15,15,12,12,17,14,14,12,12,16,15,15,14,14,16,14,14,14,14,16,15,15,14,14,16,15,15,14,14,16,15,15,14,14,16,15,15,14,14,16,15,14,15,15,17,15,15,14,14,17,15,15,14,14,17,15,15,14,14,17,15,16,14,14,16,14,14,14,14,17,15,15,13,13,17,15,15,13,13,16,15,15,13,13,17,16,16,14,14,17,15,14,15,14,17,15,15,13,13,17,15,15,13,13,17,15,15,13,13,14,14,14,9,9,14,14,14,18,19,14,15,15,19,18,14,14,14,19,19,15,14,14,19,19,15,16,16,19,19,15,16,16,19,19,15,15,15,19,19,15,16,16,19,20,15,15,15,19,19,15,15,15,19,19,15,16,16,20,20,15,15,15,18,19,15,15,16,19,20,15,15,15,19,18,15,15,15,18,18,15,16,16,21,20,15,15,15,19,19,15,15,15,19,19,15,15,14,19,20,15,15,15,20,19,15,16,16,19,20,15,15,15,19,19,15,15,15,20,21,15,14,15,19,19,14,12,12,9,9,14,14,15,21,19,14,14,14,18,19,14,15,15,19,20,14,14,14,19,19,15,15,15,19,20,15,15,14,21,19,15,15,15,20,19,15,14,15,20,21,15,15,15,18,18,15,15,15,20,21,16,14,14,18,19,15,15,15,20,19,15,15,15,18,21,15,15,15,19,19,15,15,15,19,20,16,15,14,20,19,15,16,15,19,19,15,15,15,19,0,14,15,15,19,19,15,15,15,19,19,15,15,14,20,19,15,15,15,20,19,15,15,15,19,19,15,15,15,20,19,12,12,12,13,13,16,15,16,11,11,16,16,16,12,12,17,16,16,11,11,17,16,16,12,11,17,17,17,13,13,18,16,16,14,14,18,18,17,13,13,17,16,16,13,13,17,17,17,13,13,17,16,17,12,12,17,15,16,13,13,17,16,17,12,12,17,16,16,13,12,17,16,16,12,12,18,17,17,13,13,18,16,16,13,14,18,17,17,12,12,17,16,16,12,12,17,17,17,12,12,18,17,17,13,13,17,16,16,14,14,17,17,17,12,12,17,16,16,12,12,18,17,17,12,12,13,14,14,9,9,16,14,14,13,13,16,15,15,14,14,16,14,14,13,13,16,14,14,13,13,17,16,15,15,15,16,15,16,16,15,17,15,15,14,14,17,15,15,15,15,17,15,15,14,14,17,15,15,14,14,16,15,16,16,16,17,15,15,14,14,16,15,15,14,15,16,15,15,14,14,17,15,15,15,15,16,16,16,15,16,18,15,14,13,14,17,15,15,14,14,17,14,14,13,13,17,15,15,14,14,16,15,15,15,15,17,15,14,14,14,17,15,15,14,14,17,14,14,13,13,13,11,11,11,11,16,14,14,12,12,16,14,14,13,13,16,14,14,12,12,16,14,14,12,12,16,15,15,13,13,17,14,14,14,14,17,15,15,13,13,16,15,15,14,13,16,15,15,13,13,16,15,15,13,13,16,14,14,14,14,16,15,15,13,13,16,14,15,13,13,17,15,15,13,13,17,15,15,13,13,16,14,14,14,14,17,15,15,12,12,17,14,15,13,13,17,15,15,12,12,16,15,15,13,13,17,14,14,14,14,17,15,15,12,12,17,15,15,13,13,16,15,15,12,12,14,15,15,8,8,14,14,14,19,18,14,15,15,19,20,14,14,14,19,19,14,14,15,19,20,15,16,15,19,21,15,16,16,21,19,15,15,15,20,19,15,16,16,19,20,15,15,15,19,18,15,16,15,20,19,15,16,16,19,20,15,15,15,19,19,15,16,15,20,20,14,15,15,19,19,15,15,15,21,19,15,17,16,19,20,15,14,15,0,21,15,15,15,19,20,14,14,14,19,19,15,15,15,20,19,15,16,16,19,19,15,15,15,19,18,15,15,15,20,19,14,14,15,18,18,14,12,12,9,9,14,14,14,18,18,14,14,14,18,18,14,15,14,19,18,14,14,14,19,18,15,15,15,19,20,15,14,14,18,18,15,15,15,20,19,15,15,15,18,20,15,15,15,19,18,15,15,15,19,19,15,14,14,19,21,15,15,15,20,20,15,15,15,18,19,14,15,15,19,20,15,15,15,20,19,15,14,14,19,21,15,15,15,18,19,15,14,15,20,19,14,15,15,21,21,14,15,15,19,20,15,14,14,19,20,15,15,15,19,20,15,15,14,20,20,14,15,15,20,19,13,12,12,13,13,17,16,16,11,11,17,16,16,12,12,18,17,16,11,11,18,16,16,11,11,17,17,17,13,13,18,16,16,13,13,18,17,17,12,12,18,16,16,13,13,18,17,17,12,12,18,17,17,13,13,18,16,16,14,14,18,16,17,12,12,18,17,17,13,13,17,17,17,12,12,17,17,17,12,12,17,16,15,13,13,18,16,16,11,11,17,16,16,12,12,17,16,17,11,11,18,17,17,13,12,17,16,16,13,13,17,17,17,12,12,17,16,17,12,12,18,17,17,11,11,14,14,14,9,9,16,14,14,13,13,17,15,15,14,14,17,14,14,13,13,16,14,14,13,13,17,15,15,14,14,16,16,16,16,15,18,15,15,14,14,17,16,15,15,15,17,15,15,14,14,17,15,15,14,15,16,16,16,15,16,18,15,15,14,14,17,15,15,14,15,17,15,15,14,14,17,15,15,14,14,16,16,16,15,16,17,14,14,13,13,17,15,15,14,14,18,15,15,13,13,17,15,15,14,14,16,16,16,15,15,17,14,14,13,13,17,15,15,14,14,17,14,14,13,13,13,11,11,11,11,16,14,14,12,12,16,14,14,12,13,17,15,14,11,11,17,14,14,11,11,17,15,15,13,14,17,14,14,14,14,17,15,15,13,13,17,14,14,13,13,17,15,15,13,13,17,15,15,13,13,17,14,14,14,14,17,15,15,13,13,18,14,15,13,13,17,15,15,13,13,16,15,15,13,13,17,14,14,13,13,17,15,15,12,12,16,14,14,12,12,16,15,15,12,12,17,16,15,13,13,17,14,14,13,13,17,15,15,12,12,16,15,15,12,12,16,15,15,12,12,13,15,15,8,8,14,14,14,18,19,14,15,15,19,20,14,14,14,18,18,14,15,15,18,18,15,16,16,19,19,15,16,17,20,20,15,15,15,19,19,15,16,16,18,20,15,15,15,19,19,15,15,16,18,18,15,17,16,19,19,15,15,15,18,21,15,16,16,21,20,15,15,15,19,21,15,16,15,20,19,15,16,17,20,20,15,15,15,19,19,15,16,16,21,20,15,15,15,19,20,15,15,15,19,19,15,16,16,20,19,15,15,15,19,19,15,16,15,20,21,15,15,15,21,19,14,12,12,8,8,14,14,14,20,18,14,13,13,19,19,14,14,14,19,18,15,14,14,19,20,14,15,15,20,20,15,14,14,21,20,15,15,15,20,20,15,15,14,21,19,15,15,15,19,19,15,15,15,19,20,15,14,14,20,20,15,15,15,19,20,15,14,14,19,20,15,15,15,20,20,15,15,15,20,19,15,14,14,20,21,15,15,15,20,21,15,14,14,20,0,15,16,15,20,21,15,15,15,19,20,15,14,14,19,19,15,15,15,19,20,15,15,15,19,19,15,15,15,18,20,13,12,12,13,13,18,16,17,12,12,17,16,16,12,12,17,17,16,11,11,18,16,16,11,11,17,17,18,13,13,18,16,16,14,14,18,17,17,13,13,18,16,16,13,13,18,17,17,12,12,17,17,16,13,13,17,16,16,13,14,18,17,17,12,12,18,16,16,12,13,17,16,17,12,12,17,18,17,13,13,18,16,16,13,13,18,17,17,12,12,17,16,16,12,12,17,17,17,11,11,17,16,17,12,12,17,16,16,13,13,17,16,16,11,11,17,16,16,12,12,18,16,17,11,11,14,14,14,9,9,16,14,15,13,13,17,15,15,14,14,17,14,14,12,12,16,14,14,13,13,18,15,15,15,15,17,15,16,15,16,18,15,15,14,14,17,15,16,15,15,17,15,15,14,14,18,15,15,14,14,16,16,16,16,15,17,15,15,14,14,16,15,15,14,14,17,15,15,14,14,17,15,15,14,14,17,16,16,15,15,17,15,14,13,13,17,15,15,14,14,17,15,15,13,13,17,15,15,14,14,16,16,16,15,15,18,15,14,14,14,17,15,15,14,14,18,15,15,13,13,13,12,12,11,11,16,14,14,12,12,16,14,14,13,13,17,15,15,12,12,17,14,14,12,12,17,15,15,14,14,17,14,14,14,14,17,15,15,13,13,17,15,14,13,13,17,15,15,13,13,17,15,15,13,13,16,14,14,14,14,17,15,15,13,13,16,14,14,13,13,16,15,15,13,13,17,15,16,13,13,17,14,14,14,13,17,15,15,12,12,16,15,14,12,12,17,15,15,12,12,16,15,16,13,13,16,14,14,14,13,17,15,15,12,12,16,14,14,12,12,17,15,15,12,12,14,15,15,8,8,14,14,14,18,18,14,15,15,19,18,14,14,14,18,18,14,15,15,19,20,15,16,15,21,18,15,16,16,18,0,15,15,15,19,20,15,16,16,20,0,15,16,15,19,18,15,15,15,19,19,15,16,16,21,19,15,15,15,19,19,15,16,16,20,20,15,15,15,19,19,15,15,15,19,18,15,16,16,20,20,15,14,15,20,19,15,15,15,19,20,15,15,15,19,19,15,16,15,19,20,15,16,16,19,20,15,15,15,19,19,15,16,15,20,20,15,15,15,20,18,13,12,12,8,8,14,14,14,19,20,14,14,14,19,19,14,15,15,20,20,14,14,14,18,19,15,15,15,20,0,15,14,14,18,20,15,15,15,19,19,15,15,15,21,19,15,15,15,19,20,15,15,15,20,21,15,14,14,20,19,15,15,15,20,19,15,15,14,21,19,15,15,15,19,18,15,15,15,20,19,15,14,14,19,19,15,15,16,20,19,15,15,15,20,0,15,15,15,19,21,15,15,15,22,20,15,14,14,22,19,15,15,15,19,20,15,14,14,20,19,14,15,15,19,21,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,6,8,8,6,8,8,7,9,9,10,11,11,8,8,8,7,9,9,11,12,12,9,9,9,6,7,7,10,11,11,10,11,11,10,11,11,13,13,13,12,12,12,10,12,11,14,14,14,12,12,12,6,5,5,9,6,6,9,6,6,9,7,7,12,10,10,11,7,6,9,7,7,13,11,11,12,7,7,7,8,8,12,10,10,12,10,10,11,10,10,15,13,13,13,9,9,12,11,11,15,14,14,15,11,11,8,7,7,12,11,11,12,11,11,11,11,11,14,13,14,14,12,12,12,11,11,16,15,15,14,12,12,0,10,10,0,12,12,0,12,12,0,11,11,0,14,14,0,11,11,0,11,11,0,15,15,0,11,11,7,8,8,13,11,11,12,10,10,12,11,11,15,13,13,14,11,11,12,10,10,16,14,14,15,10,10,9,7,7,13,11,12,13,12,11,12,11,11,15,14,14,14,12,12,13,12,12,16,15,15,15,12,12,0,11,11,0,12,12,0,12,13,0,12,12,0,15,15,0,12,12,0,12,12,0,16,15,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,0,9,9,0,9,9,0,10,10,0,9,9,0,10,10,0,10,10,0,10,10,0,10,10,0,7,7,0,7,7,0,6,6,0,8,8,0,7,7,0,8,8,0,8,8,0,7,7,0,8,8,0,7,7,0,9,9,0,8,9,0,10,10,0,9,9,0,10,10,0,10,11,0,9,9,0,10,10,0,9,9,0,11,11,0,12,12,0,12,12,0,11,11,0,12,12,0,13,13,0,12,12,0,13,13,0,8,8,0,12,12,0,12,12,0,13,13,0,13,13,0,13,13,0,13,13,0,13,13,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,11,11,0,12,12,0,13,13,0,12,12,0,13,13,0,13,13,0,12,12,0,12,12,0,9,9,0,12,12,0,13,13,0,14,14,0,13,13,0,14,14,0,14,14,0,13,13,0,14,14,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,0,7,7,0,8,8,0,9,9,0,12,12,0,8,8,0,9,9,0,13,13,0,8,8,0,6,6,0,11,11,0,12,12,0,12,12,0,14,14,0,11,12,0,12,12,0,15,15,0,12,12,0,5,5,0,5,5,0,6,6,0,7,7,0,10,10,0,6,6,0,7,7,0,11,11,0,6,6,0,7,7,0,11,11,0,12,11,0,11,11,0,14,14,0,10,10,0,12,12,0,15,15,0,12,12,0,6,6,0,12,12,0,12,12,0,12,12,0,14,14,0,11,11,0,12,12,0,16,16,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,11,11,0,16,16,0,11,11,0,6,6,0,12,12,0,12,12,0,13,13,0,15,15,0,12,12,0,13,13,0,15,15,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,3,7,9,12,16,16,3,2,5,7,11,14,15,7,4,5,6,9,12,15,8,5,5,5,8,10,14,9,7,6,6,8,10,12,12,10,10,7,6,8,10,15,12,10,6,4,7,9,0,0,0,0,0,0,0,0,0,0,0,0,249,213,64,0,0,0,0,0,64,223,64,0,0,0,0,0,136,227,64,0,0,0,0,0,112,231,64,0,0,0,0,0,88,235,64,0,0,0,0,0,64,239,64,0,0,0,0,0,136,243,64,0,0,0,0,0,112,247,64,0,0,0,0,0,88,251,64,0,0,0,0,0,64,255,64,0,0,0,0,0,136,3,65,0,0,0,0,136,132,14,65,176,240,7,0,48,241,7,0,48,242,7,0,48,244,7,0,48,248,7,0,48,0,8,0,48,16,8,0,48,48,8,0,24,0,120,58,76,70,11,60,242,204,192,60,116,252,59,61,86,73,154,61,241,93,228,61,248,163,29,62,180,231,78,62,54,157,130,62,78,220,159,62,193,174,190,62,65,132,222,62,173,194,254,62,186,101,15,63,248,0,31,63,29,233,45,63,249,219,59,63,45,162,72,63,160,17,84,63,38,15,94,63,46,143,102,63,112,149,109,63,174,51,115,63,159,135,119,63,66,184,122,63,196,242,124,63,75,103,126,63,196,69,127,63,241,186,127,63,217,237,127,63,162,253,127,63,248,255,127,63,168,9,120,57,17,119,11,59,135,139,193,59,74,113,61,60,148,82,156,60,94,8,233,60,42,83,34,61,74,118,87,61,138,227,137,61,7,140,171,61,34,154,208,61,108,239,248,61,164,52,18,62,100,112,41,62,65,21,66,62,67,11,92,62,47,56,119,62,197,191,137,62,92,97,152,62,135,112,167,62,4,220,182,62,188,145,198,62,231,126,214,62,48,144,230,62,227,177,246,62,13,104,3,63,121,107,11,63,98,89,19,63,42,40,27,63,137,206,34,63,166,67,42,63,49,127,49,63,126,121,56,63,153,43,63,63,92,143,69,63,127,159,75,63,165,87,81,63,104,180,86,63,89,179,91,63,8,83,96,63,252,146,100,63,177,115,104,63,138,246,107,63,198,29,111,63,109,236,113,63,62,102,116,63,154,143,118,63,104,109,120,63,3,5,122,63,26,92,123,63,153,120,124,63,143,96,125,63],"i8",L3,x.GLOBAL_BASE+510456),d3([17,26,126,63,39,171,126,63,176,25,127,63,74,107,127,63,68,165,127,63,132,204,127,63,123,229,127,63,17,244,127,63,158,251,127,63,219,254,127,63,218,255,127,63,0,0,128,63,5,12,120,56,50,131,11,58,118,186,193,58,226,203,61,59,38,207,156,59,139,32,234,59,245,102,35,60,63,100,89,60,184,127,139,60,59,23,174,60,239,114,212,60,96,140,254,60,45,46,22,61,114,237,46,61,155,127,73,61,220,223,101,61,123,4,130,61,159,250,145,61,71,207,162,61,38,127,180,61,173,6,199,61,16,98,218,61,63,141,238,61,244,193,1,62,185,160,12,62,128,224,23,62,182,126,35,62,166,120,47,62,116,203,59,62,34,116,72,62,141,111,85,62,107,186,98,62,83,81,112,62,180,48,126,62,110,42,134,62,252,92,141,62,9,174,148,62,138,27,156,62,100,163,163,62,112,67,171,62,119,249,178,62,54,195,186,62,93,158,194,62,147,136,202,62,118,127,210,62,154,128,218,62,142,137,226,62,217,151,234,62,2,169,242,62,139,186,250,62,251,100,1,63,99,106,5,63,65,108,9,63,89,105,13,63,116,96,17,63,94,80,21,63,231,55,25,63,231,21,29,63,58,233,32,63,197,176,36,63,116,107,40,63,62,24,44,63,35,182,47,63,43,68,51,63,109,193,54,63,10,45,58,63,48,134,61,63,26,204,64,63,17,254,67,63,107,27,71,63,142,35,74,63,238,21,77,63,15,242,79,63,132,183,82,63,239,101,85,63,3,253,87,63,129,124,90,63,60,228,92,63,21,52,95,63,254,107,97,63,246,139,99,63,14,148,101,63,98,132,103,63,33,93,105,63,133,30,107,63,213,200,108,63,103,92,110,63,155,217,111,63,224,64,113,63,172,146,114,63,131,207,115,63,241,247,116,63,139,12,118,63,239,13,119,63,193,252,119,63,172,217,120,63,99,165,121,63,155,96,122,63,15,12,123,63,124,168,123,63,163,54,124,63,71,183,124,63,41,43,125,63,13,147,125,63,183,239,125,63,229,65,126,63,89,138,126,63,205,201,126,63,251,0,127,63,150,48,127,63,78,89,127,63,205,123,127,63,182,152,127,63,167,176,127,63,53,196,127,63,239,211,127,63,91,224,127,63,245,233,127,63,51,241,127,63,127,246,127,63,59,250,127,63,190,252,127,63,84,254,127,63,64,255,127,63,186,255,127,63,238,255,127,63,254,255,127,63,0,0,128,63,169,12,120,55,54,134,11,57,38,198,193,57,94,226,61,58,234,237,156,58,85,101,234,58,56,170,35,59,207,219,89,59,169,226,139,59,42,178,174,59,13,91,213,59,204,219,255,59,91,25,23,60,250,46,48,60,194,45,75,60,156,20,104,60,46,113,131,60,225,202,147,60,185,22,165,60,1,84,183,60,245,129,202,60,198,159,222,60,155,172,243,60,199,211,4,61,213,71,16,61,250,49,28,61,174,145,40,61,101,102,53,61,141,175,66,61,140,108,80,61,193,156,94,61,133,63,109,61,41,84,124,61,252,236,133,61,26,232,141,61,13,27,150,61,110,133,158,61,212,38,167,61,210,254,175,61,245,12,185,61,200,80,194,61,209,201,203,61,146,119,213,61,139,89,223,61,51,111,233,61,2,184,243,61,105,51,254,61,106,112,4,62,214,223,9,62,171,103,15,62,153,7,21,62,77,191,26,62,116,142,32,62,181,116,38,62,184,113,44,62,34,133,50,62,149,174,56,62,178,237,62,62,21,66,69,62,92,171,75,62,30,41,82,62,243,186,88,62,112,96,95,62,40,25,102,62,170,228,108,62,132,194,115,62,68,178,122,62,185,217,128,62,203,98,132,62,26,244,135,62,105,141,139,62,120,46,143,62,6,215,146,62,211,134,150,62,156,61,154,62,29,251,157,62,19,191,161,62,57,137,165,62,71,89,169,62,249,46,173,62,5,10,177,62,36,234,180,62,13,207,184,62,117,184,188,62,18,166,192,62,153,151,196,62,190,140,200,62,52,133,204,62,175,128,208,62,225,126,212,62,125,127,216,62,52,130,220,62,184,134,224,62,185,140,228,62,233,147,232,62,248,155,236,62,150,164,240,62,117,173,244,62,67,182,248,62,178,190,252,62,57,99,0,63,153,102,2,63,82,105,4,63,60,107,6,63,48,108,8,63,6,108,10,63,151,106,12,63,188,103,14,63,78,99,16,63,39,93,18,63,33,85,20,63,21,75,22,63,222,62,24,63,87,48,26,63,92,31,28,63,199,11,30,63,117,245,31,63,66,220,33,63,12,192,35,63,176,160,37,63,12,126,39,63,254,87,41,63,104,46,43,63,39,1,45,63,29,208,46,63,43,155,48,63,51,98,50,63,23,37,52,63,188,227,53,63,4,158,55,63,214,83,57,63,23,5,59,63,173,177,60,63,128,89,62,63,120,252,63,63,126,154,65,63,124,51,67,63,93,199,68,63,12,86,70,63,119,223,71,63,138,99,73,63,54,226,74,63,104,91,76,63,17,207,77,63,35,61,79,63,145,165,80,63,76,8,82,63,75,101,83,63,130,188,84,63,231,13,86,63,114,89,87,63,26,159,88,63,218,222,89,63,172,24,91,63,138,76,92,63,113,122,93,63,93,162,94,63,78,196,95,63,67,224,96,63,58,246,97,63,54,6,99,63,56,16,100,63,67,20,101,63,92,18,102,63,133,10,103,63,198,252,103,63,37,233,104,63,168,207,105,63,89,176,106,63,64,139,107,63,102,96,108,63,216,47,109,63,159,249,109,63,201,189,110,63,97,124,111,63,118,53,112,63,23,233,112,63,81,151,113,63,53,64,114,63,212,227,114,63,61,130,115,63,131,27,116,63,184,175,116,63,238,62,117,63,56,201,117,63,171,78,118,63,90,207,118,63,90,75,119,63,192,194,119,63,162,53,120,63,21,164,120,63,48,14,121,63,8,116,121,63,182,213,121,63,79,51,122,63,235,140,122,63,162,226,122,63,139,52,123,63,191,130,123,63,85,205,123,63,102,20,124,63,9,88,124,63,88,152,124,63,106,213,124,63,88,15,125,63,58,70,125,63,41,122,125,63,62,171,125,63,143,217,125,63,54,5,126,63,75,46,126,63,228,84,126,63,27,121,126,63,7,155,126,63,190,186,126,63,88,216,126,63,236,243,126,63,144,13,127,63,91,37,127,63,99,59,127,63,188,79,127,63,125,98,127,63,185,115,127,63,135,131,127,63,249,145,127,63,36,159,127,63,26,171,127,63,238,181,127,63,179,191,127,63,122,200,127,63,85,208,127,63,84,215,127,63,136,221,127,63,0,227,127,63,204,231,127,63,249,235,127,63,150,239,127,63,177,242,127,63,85,245,127,63,144,247,127,63,109,249,127,63,246,250,127,63,54,252,127,63,55,253,127,63,1,254,127,63,156,254,127,63,18,255,127,63,103,255,127,63,163,255,127,63,204,255,127,63,229,255,127,63,244,255,127,63,252,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,60,12,120,54,253,134,11,56,19,201,193,56,248,231,61,57,148,245,156,57,115,118,234,57,238,186,35,58,113,249,89,58,32,251,139,58,96,216,174,58,34,148,213,58,3,23,0,59,209,82,23,59,65,125,48,59,21,150,75,59,8,157,104,59,233,200,131,59,20,58,148,59,218,161,165,59,16,0,184,59,136,84,203,59,16,159,223,59,118,223,244,59,194,138,5,60,128,32,17,60,217,48,29,60,172,187,41,60,219,192,54,60,67,64,68,60,194,57,82,60,52,173,96,60,115,154,111,60,88,1,127,60,222,112,135,60,186,157,143,60,42,7,152,60,25,173,160,60,112,143,169,60,23,174,178,60,246,8,188,60,243,159,197,60,245,114,207,60,225,129,217,60,156,204,227,60,10,83,238,60,14,21,249,60,70,9,2,61,177,165,7,61,187,95,13,61,81,55,19,61,102,44,25,61,230,62,31,61,195,110,37,61,233,187,43,61,71,38,50,61,202,173,56,61,97,82,63,61,247,19,70,61,121,242,76,61,210,237,83,61,240,5,91,61,187,58,98,61,32,140,105,61,8,250,112,61,93,132,120,61,132,21,128,61,249,246,131,61,130,230,135,61,19,228,139,61,159,239,143,61,26,9,148,61,119,48,152,61,169,101,156,61,163,168,160,61,88,249,164,61,186,87,169,61,186,195,173,61,76,61,178,61,95,196,182,61,230,88,187,61,209,250,191,61,18,170,196,61,152,102,201,61,85,48,206,61,56,7,211,61,48,235,215,61,47,220,220,61,34,218,225,61,248,228,230,61,161,252,235,61,11,33,241,61,35,82,246,61,217,143,251,61,13,109,0,62,105,24,3,62,247,201,5,62,174,129,8,62,133,63,11,62,113,3,14,62,104,205,16,62,96,157,19,62,79,115,22,62,42,79,25,62,232,48,28,62,124,24,31,62,221,5,34,62,255,248,36,62,215,241,39,62,90,240,42,62,125,244,45,62,51,254,48,62,114,13,52,62,45,34,55,62,88,60,58,62,232,91,61,62,208,128,64,62,3,171,67,62,118,218,70,62,26,15,74,62,229,72,77,62,199,135,80,62,181,203,83,62,162,20,87,62,127,98,90,62,63,181,93,62,213,12,97,62,50,105,100,62,73,202,103,62,12,48,107,62,108,154,110,62,92,9,114,62,203,124,117,62,173,244,120,62,241,112,124,62,138,241,127,62,52,187,129,62,190,127,131,62,91,70,133,62,4,15,135,62,176,217,136,62,89,166,138,62,245,116,140,62,126,69,142,62,234,23,144,62,50,236,145,62,78,194,147,62,54,154,149,62,224,115,151,62,70,79,153,62,93,44,155,62,31,11,157,62,130,235,158,62,127,205,160,62,11,177,162,62,31,150,164,62,177,124,166,62,186,100,168,62,47,78,170,62,9,57,172,62,62,37,174,62,198,18,176,62,150,1,178,62,167,241,179,62,238,226,181,62,100,213,183,62,254,200,185,62,179,189,187,62,122,179,189,62,74,170,191,62,25,162,193,62,221,154,195,62,142,148,197,62,34,143,199,62,142,138,201,62,203,134,203,62,205,131,205,62,140,129,207,62,253,127,209,62,24,127,211,62,210,126,213,62,33,127,215,62,252,127,217,62,88,129,219,62,45,131,221,62,112,133,223,62,23,136,225,62,25,139,227,62,108,142,229,62,5,146,231,62,219,149,233,62,228,153,235,62,21,158,237,62,102,162,239,62,203,166,241,62,59,171,243,62,173,175,245,62,21,180,247,62,107,184,249,62,164,188,251,62,181,192,253,62,150,196,255,62,30,228,0,63,207,229,1,63,88,231,2,63,182,232,3,63,226,233,4,63,215,234,5,63,146,235,6,63,12,236,7,63,66,236,8,63,45,236,9,63,202,235,10,63,19,235,11,63,4,234,12,63,151,232,13,63,200,230,14,63,145,228,15,63,239,225,16,63,220,222,17,63,84,219,18,63,81,215,19,63,208,210,20,63,202,205,21,63,61,200,22,63,34,194,23,63,117,187,24,63,50,180,25,63,85,172,26,63,215,163,27,63,182,154,28,63,236,144,29,63,117,134,30,63,77,123,31,63,110,111,32,63,214,98,33,63,126,85,34,63,100,71,35,63,130,56,36,63,212,40,37,63,87,24,38,63,5,7,39,63,219,244,39,63,213,225,40,63,239,205,41,63,36,185,42,63,113,163,43,63,209,140,44,63,64,117,45,63,188,92,46,63,63,67,47,63,199,40,48,63,78,13,49,63,211,240,49,63,80,211,50,63,195,180,51,63,39,149,52,63,122,116,53,63,184,82,54,63,220,47,55,63,229,11,56,63,206,230,56,63,149,192,57,63,54,153,58,63,174,112,59,63,249,70,60,63,21,28,61,63,255,239,61,63,179,194,62,63,48,148,63,63,113,100,64,63,116,51,65,63,55,1,66,63,182,205,66,63,239,152,67,63,224,98,68,63,134,43,69,63,222,242,69,63,230,184,70,63,156,125,71,63,253,64,72,63,7,3,73,63,184,195,73,63,14,131,74,63,6,65,75,63,159,253,75,63,215,184,76,63,172,114,77,63,28,43,78,63,38,226,78,63,199,151,79,63,253,75,80,63,201,254,80,63,39,176,81,63,22,96,82,63,150,14,83,63,164,187,83,63,63,103,84,63,103,17,85,63,26,186,85,63,86,97,86,63,28,7,87,63,105,171,87,63,62,78,88,63,152,239,88,63,120,143,89,63,221,45,90,63,198,202,90,63,50,102,91,63,33,0,92,63,147,152,92,63,134,47,93,63,251,196,93,63,242,88,94,63,105,235,94,63,98,124,95,63,219,11,96,63,213,153,96,63,80,38,97,63,76,177,97,63,201,58,98,63,199,194,98,63,70,73,99,63,71,206,99,63,202,81,100,63,208,211,100,63,88,84,101,63,100,211,101,63,244,80,102,63,9,205,102,63,163,71,103,63,195,192,103,63,107,56,104,63,154,174,104,63,82,35,105,63,147,150,105,63,96,8,106,63,184,120,106,63,157,231,106,63,16,85,107,63,19,193,107,63,166,43,108,63,203,148,108,63,132,252,108,63,209,98,109,63,180,199,109,63,48,43,110,63,68,141,110,63,244,237,110,63,64,77,111,63,42,171,111,63,181,7,112,63,225,98,112,63,177,188,112,63,38,21,113,63,67,108,113,63,10,194,113,63,123,22,114,63,155,105,114,63,106,187,114,63,234,11,115,63,31,91,115,63,9,169,115,63,172,245,115,63,9,65,116,63,35,139,116,63,252,211,116,63,151,27,117,63,245,97,117,63,26,167,117,63,8,235,117,63,193,45,118,63,72,111,118,63,159,175,118,63,202,238,118,63,201,44,119,63,161,105,119,63,84,165,119,63,228,223,119,63,85,25,120,63,168,81,120,63,226,136,120,63,3,191,120,63,16,244,120,63,11,40,121,63,247,90,121,63,215,140,121,63,173,189,121,63,125,237,121,63,73,28,122,63,20,74,122,63,226,118,122,63,181,162,122,63,144,205,122,63,118,247,122,63,107,32,123,63,112,72,123,63,138,111,123,63,186,149,123,63,5,187,123,63,109,223,123,63,245,2,124,63,160,37,124,63,113,71,124,63,108,104,124,63,147,136,124,63,233,167,124,63,114,198,124,63,48,228,124,63,38,1,125,63,89,29,125,63,201,56,125,63,124,83,125,63,115,109,125,63,178,134,125,63,60,159,125,63,19,183,125,63,60,206,125,63,184,228,125,63,139,250,125,63,184,15,126,63,66,36,126,63,44,56,126,63,120,75,126,63,43,94,126,63,70,112,126,63,204,129,126,63,194,146,126,63,41,163,126,63,4,179,126,63,86,194,126,63,35,209,126,63,109,223,126,63,55,237,126,63,131,250,126,63,85,7,127,63,175,19,127,63,148,31,127,63,7,43,127,63,10,54,127,63,160,64,127,63,205,74,127,63,146,84,127,63,242,93,127,63,239,102,127,63,141,111,127,63,206,119,127,63,181,127,127,63,67,135,127,63,124,142,127,63,98,149,127,63,247,155,127,63,61,162,127,63,56,168,127,63,233,173,127,63,83,179,127,63,120,184,127,63,90,189,127,63,252,193,127,63,95,198,127,63,134,202,127,63,116,206,127,63,41,210,127,63,168,213,127,63,244,216,127,63,13,220,127,63,247,222,127,63,179,225,127,63,67,228,127,63,168,230,127,63,229,232,127,63,252,234,127,63,237,236,127,63,188,238,127,63,105,240,127,63,246,241,127,63,101,243,127,63,183,244,127,63,238,245,127,63,11,247,127,63,16,248,127,63,254,248,127,63,214,249,127,63,155,250,127,63,76,251,127,63,236,251,127,63,124,252,127,63,252,252,127,63,110,253,127,63,211,253,127,63,44,254,127,63,121,254,127,63,189,254,127,63,247,254,127,63,42,255,127,63,84,255,127,63,120,255,127,63,150,255,127,63,175,255,127,63,195,255,127,63,211,255,127,63,224,255,127,63,234,255,127,63,241,255,127,63,246,255,127,63,250,255,127,63,253,255,127,63,254,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,171,15,120,53,24,135,11,55,225,201,193,55,107,233,61,56,128,247,156,56,187,122,234,56,24,191,35,57,213,0,90,57,56,1,140,57,229,225,174,57,88,162,213,57,60,33,0,58,24,97,23,58,175,144,48,58,243,175,75,58,212,190,104,58,159,222,131,58,143,85,148,58,48,196,165,58,119,42,184,58,90,136,203,58,204,221,223,58,191,42,245,58,148,183,5,59,124,85,17,59,16,111,29,59,73,4,42,59,31,21,55,59,138,161,68,59,129,169,82,59,252,44,97,59,241,43,112,59,88,166,127,59,19,206,135,59,169,6,144,59,233,124,152,59,204,48,161,59,79,34,170,59,106,81,179,59,26,190,188,59,86,104,198,59,26,80,208,59,95,117,218,59,31,216,228,59,83,120,239,59,244,85,250,59,126,184,2,60,177,100,8,60,145,47,14,60,25,25,20,60,70,33,26,60,19,72,32,60,126,141,38,60,129,241,44,60,25,116,51,60,65,21,58,60,246,212,64,60,50,179,71,60,243,175,78,60,50,203,85,60,235,4,93,60,26,93,100,60,186,211,107,60,198,104,115,60,58,28,123,60,7,119,129,60,33,111,133,60,102,118,137,60,212,140,141,60,105,178,145,60,33,231,149,60,251,42,154,60,243,125,158,60,6,224,162,60,50,81,167,60,115,209,171,60,199,96,176,60,43,255,180,60,154,172,185,60,19,105,190,60,146,52,195,60,20,15,200,60,149,248,204,60,19,241,209,60,137,248,214,60,245,14,220,60,83,52,225,60,160,104,230,60,215,171,235,60,246,253,240,60,249,94,246,60,220,206,251,60,205,166,0,61,153,109,3,61,207,59,6,61,109,17,9,61,114,238,11,61,220,210,14,61,167,190,17,61,211,177,20,61,94,172,23,61,68,174,26,61,133,183,29,61,30,200,32,61,12,224,35,61,78,255,38,61,225,37,42,61,196,83,45,61,243,136,48,61,109,197,51,61,47,9,55,61,55,84,58,61,130,166,61,61,15,0,65,61,218,96,68,61,226,200,71,61,35,56,75,61,156,174,78,61,73,44,82,61,40,177,85,61,55,61,89,61,115,208,92,61,217,106,96,61,103,12,100,61,25,181,103,61,238,100,107,61,227,27,111,61,244,217,114,61,30,159,118,61,96,107,122,61,182,62,126,61,143,12,129,61,73,253,130,61,138,241,132,61,79,233,134,61,150,228,136,61,94,227,138,61,167,229,140,61,109,235,142,61,175,244,144,61,109,1,147,61,164,17,149,61,83,37,151,61,120,60,153,61,17,87,155,61,30,117,157,61,155,150,159,61,136,187,161,61,226,227,163,61,169,15,166,61,218,62,168,61,116,113,170,61,116,167,172,61,218,224,174,61,162,29,177,61,205,93,179,61,87,161,181,61,62,232,183,61,130,50,186,61,32,128,188,61,22,209,190,61,98,37,193,61,2,125,195,61,245,215,197,61,57,54,200,61,203,151,202,61,169,252,204,61,211,100,207,61,68,208,209,61,252,62,212,61,249,176,214,61,56,38,217,61,184,158,219,61,117,26,222,61,111,153,224,61,163,27,227,61,14,161,229,61,175,41,232,61,132,181,234,61,138,68,237,61,191,214,239,61,33,108,242,61,174,4,245,61,99,160,247,61,62,63,250,61,61,225,252,61,93,134,255,61,78,23,1,62,252,108,2,62,56,196,3,62,255,28,5,62,81,119,6,62,45,211,7,62,145,48,9,62,125,143,10,62,238,239,11,62,228,81,13,62,94,181,14,62,89,26,16,62,214,128,17,62,210,232,18,62,77,82,20,62,69,189,21,62,184,41,23,62,166,151,24,62,13,7,26,62,236,119,27,62,65,234,28,62,11,94,30,62,73,211,31,62,250,73,33,62,28,194,34,62,173,59,36,62,172,182,37,62,24,51,39,62,240,176,40,62,50,48,42,62,220,176,43,62,238,50,45,62,101,182,46,62,64,59,48,62,126,193,49,62,30,73,51,62,29,210,52,62,123,92,54,62,54,232,55,62,76,117,57,62,187,3,59,62,131,147,60,62,162,36,62,62,22,183,63,62,222,74,65,62,248,223,66,62,98,118,68,62,28,14,70,62,35,167,71,62,117,65,73,62,18,221,74,62,247,121,76,62,35,24,78,62,149,183,79,62,74,88,81,62,66,250,82,62,121,157,84,62,240,65,86,62,163,231,87,62,146,142,89,62,186,54,91,62,26,224,92,62,177,138,94,62,124,54,96,62,122,227,97,62,169,145,99,62,7,65,101,62,147,241,102,62,75,163,104,62,44,86,106,62,54,10,108,62,102,191,109,62,187,117,111,62,51,45,113,62,204,229,114,62,132,159,116,62,90,90,118,62,75,22,120,62,85,211,121,62,120,145,123,62,176,80,125,62,253,16,127,62,46,105,128,62,101,74,129,62,36,44,130,62,105,14,131,62,52,241,131,62,130,212,132,62,84,184,133,62,169,156,134,62,127,129,135,62,213,102,136,62,171,76,137,62,255,50,138,62,209,25,139,62,32,1,140,62,233,232,140,62,46,209,141,62,236,185,142,62,34,163,143,62,208,140,144,62,244,118,145,62,142,97,146,62,156,76,147,62,29,56,148,62,17,36,149,62,118,16,150,62,76,253,150,62,144,234,151,62,67,216,152,62,99,198,153,62,239,180,154,62,230,163,155,62,71,147,156,62,17,131,157,62,67,115,158,62,219,99,159,62,218,84,160,62,60,70,161,62,3,56,162,62,43,42,163,62,181,28,164,62,160,15,165,62,233,2,166,62,145,246,166,62,149,234,167,62,245,222,168,62,176,211,169,62,197,200,170,62,50,190,171,62,246,179,172,62,17,170,173,62,129,160,174,62,69,151,175,62,91,142,176,62,196,133,177,62,125,125,178,62,133,117,179,62,220,109,180,62,128,102,181,62,112,95,182,62,171,88,183,62,47,82,184,62,252,75,185,62,17,70,186,62,108,64,187,62,11,59,188,62,239,53,189,62,22,49,190,62,126,44,191,62,38,40,192,62,13,36,193,62,51,32,194,62,150,28,195,62,52,25,196,62,12,22,197,62,30,19,198,62,104,16,199,62,233,13,200,62,159,11,201,62,138,9,202,62,169,7,203,62,249,5,204,62,123,4,205,62,44,3,206,62,11,2,207,62,24,1,208,62,81,0,209,62,181,255,209,62,66,255,210,62,248,254,211,62,213,254,212,62,216,254,213,62,255,254,214,62,75,255,215,62,184,255,216,62,71,0,218,62,245,0,219,62,195,1,220,62,173,2,221,62,180,3,222,62,214,4,223,62,17,6,224,62,101,7,225,62,208,8,226,62,81,10,227,62,231,11,228,62,144,13,229,62,76,15,230,62,25,17,231,62,245,18,232,62,224,20,233,62,217,22,234,62,221,24,235,62,236,26,236,62,5,29,237,62,39,31,238,62,79,33,239,62,125,35,240,62,176,37,241,62,230,39,242,62,31,42,243,62,88,44,244,62,145,46,245,62,200,48,246,62,253,50,247,62,45,53,248,62,88,55,249,62,124,57,250,62,153,59,251,62,172,61,252,62,181,63,253,62,179,65,254,62,163,67,255,62,195,34,0,63,173,163,0,63,142,36,1,63,102,165,1,63,53,38,2,63,250,166,2,63,180,39,3,63,99,168,3,63,5,41,4,63,155,169,4,63,36,42,5,63,159,170,5,63,12,43,6,63,105,171,6,63,183,43,7,63,244,171,7,63,32,44,8,63,59,172,8,63,68,44,9,63,58,172,9,63,28,44,10,63,235,171,10,63,164,43,11,63,73,171,11,63,216,42,12,63,80,170,12,63,177,41,13,63,251,168,13,63,44,40,14,63,69,167,14,63,68,38,15,63,41,165,15,63,243,35,16,63,162,162,16,63,53,33,17,63,172,159,17,63,5,30,18,63,65,156,18,63,95,26,19,63,94,152,19,63,61,22,20,63,252,147,20,63,155,17,21,63,24,143,21,63,116,12,22,63,173,137,22,63,195,6,23,63,182,131,23,63,133,0,24,63,46,125,24,63,179,249,24,63,18,118,25,63,74,242,25,63,91,110,26,63,69,234,26,63,6,102,27,63,159,225,27,63,14,93,28,63,84,216,28,63,111,83,29,63,95,206,29,63,36,73,30,63,188,195,30,63,40,62,31,63,102,184,31,63,119,50,32,63,90,172,32,63,14,38,33,63,146,159,33,63,230,24,34,63,10,146,34,63,253,10,35,63,190,131,35,63,77,252,35,63,169,116,36,63,211,236,36,63,200,100,37,63,138,220,37,63,22,84,38,63,110,203,38,63,143,66,39,63,122,185,39,63,47,48,40,63,172,166,40,63,241,28,41,63,254,146,41,63,210,8,42,63,108,126,42,63,205,243,42,63,243,104,43,63,223,221,43,63,143,82,44,63,3,199,44,63,59,59,45,63,54,175,45,63,244,34,46,63,116,150,46,63,182,9,47,63,185,124,47,63,125,239,47,63,1,98,48,63,69,212,48,63,72,70,49,63,10,184,49,63,139,41,50,63,202,154,50,63,198,11,51,63,127,124,51,63,246,236,51,63,40,93,52,63,22,205,52,63,191,60,53,63,36,172,53,63,66,27,54,63,27,138,54,63,174,248,54,63,249,102,55,63,254,212,55,63,187,66,56,63,47,176,56,63,91,29,57,63,63,138,57,63,217,246,57,63,41,99,58,63,48,207,58,63,236,58,59,63,93,166,59,63,130,17,60,63,93,124,60,63,235,230,60,63,44,81,61,63,33,187,61,63,201,36,62,63,35,142,62,63,48,247,62,63,238,95,63,63,94,200,63,63,126,48,64,63,80,152,64,63,209,255,64,63,3,103,65,63,228,205,65,63,117,52,66,63,181,154,66,63,163,0,67,63,64,102,67,63,139,203,67,63,131,48,68,63,41,149,68,63,124,249,68,63,123,93,69,63,39,193,69,63,127,36,70,63,132,135,70,63,51,234,70,63,142,76,71,63,148,174,71,63,68,16,72,63,159,113,72,63,164,210,72,63,83,51,73,63,172,147,73,63,174,243,73,63,89,83,74,63,173,178,74,63,169,17,75,63,77,112,75,63,154,206,75,63,143,44,76,63,43,138,76,63,110,231,76,63,89,68,77,63,234,160,77,63,34,253,77,63,0,89,78,63,133,180,78,63,176,15,79,63,128,106,79,63,246,196,79,63,18,31,80,63,210,120,80,63,56,210,80,63,66,43,81,63,242,131,81,63,69,220,81,63,61,52,82,63,217,139,82,63,24,227,82,63,252,57,83,63,131,144,83,63,174,230,83,63,123,60,84,63,236,145,84,63,0,231,84,63,183,59,85,63,16,144,85,63,12,228,85,63,170,55,86,63,235,138,86,63,206,221,86,63,83,48,87,63,121,130,87,63,66,212,87,63,172,37,88,63,184,118,88,63,101,199,88,63,180,23,89,63,164,103,89,63,53,183,89,63,104,6,90,63,59,85,90,63,175,163,90,63,197,241,90,63,123,63,91,63,210,140,91,63,201,217,91,63,97,38,92,63,154,114,92,63,115,190,92,63,237,9,93,63,7,85,93,63,194,159,93,63,29,234,93,63,24,52,94,63,179,125,94,63,239,198,94,63,203,15,95,63,72,88,95,63,100,160,95,63,33,232,95,63,126,47,96,63,123,118,96,63,24,189,96,63,85,3,97,63,51,73,97,63,177,142,97,63,207,211,97,63,141,24,98,63,236,92,98,63,235,160,98,63,138,228,98,63,202,39,99,63,170,106,99,63,42,173,99,63,75,239,99,63,13,49,100,63,111,114,100,63,114,179,100,63,21,244,100,63,90,52,101,63,63,116,101,63,197,179,101,63,236,242,101,63,180,49,102,63,29,112,102,63,39,174,102,63,211,235,102,63,32,41,103,63,15,102,103,63,159,162,103,63,209,222,103,63,164,26,104,63,26,86,104,63,49,145,104,63,235,203,104,63,71,6,105,63,69,64,105,63,230,121,105,63,42,179,105,63,16,236,105,63,153,36,106,63,197,92,106,63,148,148,106,63,7,204,106,63,29,3,107,63,214,57,107,63,52,112,107,63,53,166,107,63,218,219,107,63,36,17,108,63,18,70,108,63,164,122,108,63,220,174,108,63,184,226,108,63,57,22,109,63,96,73,109,63,44,124,109,63,157,174,109,63,181,224,109,63,115,18,110,63,214,67,110,63,225,116,110,63,146,165,110,63,233,213,110,63,232,5,111,63,142,53,111,63,219,100,111,63,209,147,111,63,110,194,111,63,179,240,111,63,160,30,112,63,54,76,112,63,117,121,112,63,93,166,112,63,239,210,112,63,41,255,112,63,14,43,113,63,156,86,113,63,213,129,113,63,184,172,113,63,70,215,113,63,127,1,114,63,99,43,114,63,243,84,114,63,46,126,114,63,21,167,114,63,169,207,114,63,233,247,114,63,214,31,115,63,113,71,115,63,184,110,115,63,173,149,115,63,80,188,115,63,162,226,115,63,161,8,116,63,80,46,116,63,174,83,116,63,187,120,116,63,119,157,116,63,228,193,116,63,1,230,116,63,206,9,117,63,76,45,117,63,123,80,117,63,92,115,117,63,238,149,117,63,51,184,117,63,42,218,117,63,211,251,117,63,48,29,118,63,64,62,118,63,3,95,118,63,122,127,118,63,166,159,118,63,134,191,118,63,27,223,118,63,101,254,118,63,101,29,119,63,27,60,119,63,135,90,119,63,169,120,119,63,131,150,119,63,19,180,119,63,91,209,119,63,91,238,119,63,20,11,120,63,132,39,120,63,174,67,120,63,145,95,120,63,46,123,120,63,132,150,120,63,149,177,120,63,96,204,120,63,231,230,120,63,41,1,121,63,38,27,121,63,223,52,121,63,85,78,121,63,136,103,121,63,120,128,121,63,37,153,121,63,144,177,121,63,185,201,121,63,161,225,121,63,72,249,121,63,174,16,122,63,212,39,122,63,185,62,122,63,96,85,122,63,198,107,122,63,238,129,122,63,216,151,122,63,131,173,122,63,241,194,122,63,33,216,122,63,20,237,122,63,202,1,123,63,68,22,123,63,130,42,123,63,133,62,123,63,77,82,123,63,217,101,123,63,43,121,123,63,68,140,123,63,34,159,123,63,200,177,123,63,52,196,123,63,104,214,123,63,99,232,123,63,39,250,123,63,180,11,124,63,9,29,124,63,40,46,124,63,17,63,124,63,196,79,124,63,65,96,124,63,137,112,124,63,156,128,124,63,124,144,124,63,39,160,124,63,158,175,124,63,226,190,124,63,244,205,124,63,211,220,124,63,128,235,124,63,251,249,124,63,69,8,125,63,94,22,125,63,71,36,125,63,255,49,125,63,136,63,125,63,225,76,125,63,11,90,125,63,7,103,125,63,212,115,125,63,115,128,125,63,229,140,125,63,42,153,125,63,66,165,125,63,46,177,125,63,238,188,125,63,130,200,125,63,235,211,125,63,41,223,125,63,61,234,125,63,38,245,125,63,230,255,125,63,124,10,126,63,234,20,126,63,47,31,126,63,75,41,126,63,64,51,126,63,13,61,126,63,180,70,126,63,51,80,126,63,140,89,126,63,191,98,126,63,205,107,126,63,181,116,126,63,120,125,126,63,23,134,126,63,146,142,126,63,233,150,126,63,28,159,126,63,44,167,126,63,26,175,126,63,229,182,126,63,142,190,126,63,22,198,126,63,124,205,126,63,194,212,126,63,231,219,126,63,235,226,126,63,208,233,126,63,149,240,126,63,59,247,126,63,195,253,126,63,44,4,127,63,118,10,127,63,163,16,127,63,179,22,127,63,165,28,127,63,123,34,127,63,52,40,127,63,210,45,127,63,83,51,127,63,186,56,127,63,5,62,127,63,53,67,127,63,75,72,127,63,72,77,127,63,42,82,127,63,243,86,127,63,163,91,127,63,58,96,127,63,185,100,127,63,32,105,127,63,111,109,127,63,166,113,127,63,199,117,127,63,208,121,127,63,196,125,127,63,161,129,127,63,104,133,127,63,25,137,127,63,182,140,127,63,61,144,127,63,176,147,127,63,14,151,127,63,89,154,127,63,143,157,127,63,179,160,127,63,195,163,127,63,192,166,127,63,171,169,127,63,132,172,127,63,74,175,127,63,255,177,127,63,163,180,127,63,53,183,127,63,183,185,127,63,40,188,127,63,137,190,127,63,217,192,127,63,26,195,127,63,76,197,127,63,111,199,127,63,130,201,127,63,135,203,127,63,126,205,127,63,102,207,127,63,65,209,127,63,14,211,127,63,205,212,127,63,128,214,127,63,38,216,127,63,191,217,127,63,76,219,127,63,204,220,127,63,65,222,127,63,170,223,127,63,8,225,127,63,91,226,127,63,163,227,127,63,224,228,127,63,19,230,127,63,59,231,127,63,90,232,127,63,110,233,127,63,122,234,127,63,124,235,127,63,116,236,127,63,100,237,127,63,75,238,127,63,42,239,127,63,1,240,127,63,207,240,127,63,149,241,127,63,84,242,127,63,12,243,127,63,188,243,127,63,101,244,127,63,7,245,127,63,162,245,127,63,55,246,127,63,198,246,127,63,78,247,127,63,209,247,127,63,77,248,127,63,196,248,127,63,54,249,127,63,162,249,127,63,9,250,127,63,108,250,127,63,201,250,127,63,34,251,127,63,118,251,127,63,198,251,127,63,18,252,127,63,89,252,127,63,157,252,127,63,221,252,127,63,26,253,127,63,83,253,127,63,136,253,127,63,187,253,127,63,234,253,127,63,22,254,127,63,64,254,127,63,103,254,127,63,139,254,127,63,173,254,127,63,204,254,127,63,234,254,127,63,5,255,127,63,30,255,127,63,53,255,127,63,74,255,127,63,94,255,127,63,112,255,127,63,128,255,127,63,143,255,127,63,157,255,127,63,169,255,127,63,180,255,127,63,191,255,127,63,200,255,127,63,208,255,127,63,215,255,127,63,221,255,127,63,227,255,127,63,232,255,127,63,236,255,127,63,239,255,127,63,243,255,127,63,245,255,127,63,248,255,127,63,249,255,127,63,251,255,127,63,252,255,127,63,253,255,127,63,254,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,204,8,120,52,171,134,11,54,79,202,193,54,190,233,61,55,238,247,156,55,192,123,234,55,43,192,35,56,161,2,90,56,189,2,140,56,76,228,174,56,227,165,213,56,199,35,0,57,168,100,23,57,134,149,48,57,104,182,75,57,64,199,104,57,7,228,131,57,105,92,148,57,191,204,165,57,6,53,184,57,65,149,203,57,105,237,223,57,120,61,245,57,184,194,5,58,166,98,17,58,134,126,29,58,81,22,42,58,9,42,55,58,172,185,68,58,54,197,82,58,165,76,97,58,250,79,112,58,47,207,127,58,34,229,135,58,154,32,144,58,255,153,152,58,80,81,161,58,139,70,170,58,174,121,179,58,186,234,188,58,171,153,198,58,129,134,208,58,58,177,218,58,212,25,229,58,79,192,239,58,167,164,250,58,109,227,2,59,117,147,8,59,105,98,14,59,73,80,20,59,19,93,26,59,199,136,32,59,100,211,38,59,232,60,45,59,83,197,51,59,164,108,58,59,218,50,65,59,243,23,72,59,239,27,79,59,204,62,86,59,138,128,93,59,38,225,100,59,161,96,108,59,249,254,115,59,45,188,123,59,29,204,129,59,145,201,133,59,113,214,137,59,188,242,141,59,113,30,146,59,145,89,150,59,26,164,154,59,12,254,158,59,102,103,163,59,40,224,167,59,80,104,172,59,222,255,176,59,209,166,181,59,40,93,186,59,228,34,191,59,2,248,195,59,131,220,200,59,101,208,205,59,168,211,210,59,74,230,215,59,76,8,221,59,172,57,226,59,105,122,231,59,131,202,236,59,249,41,242,59,202,152,247,59,245,22,253,59,60,82,1,60,170,32,4,60,196,246,6,60,137,212,9,60,249,185,12,60,19,167,15,60,216,155,18,60,69,152,21,60,92,156,24,60,26,168,27,60,129,187,30,60,143,214,33,60,69,249,36,60,160,35,40,60,162,85,43,60,73,143,46,60,149,208,49,60,133,25,53,60,26,106,56,60,81,194,59,60,44,34,63,60,168,137,66,60,199,248,69,60,134,111,73,60,230,237,76,60,231,115,80,60,134,1,84,60,197,150,87,60,162,51,91,60,28,216,94,60,52,132,98,60,232,55,102,60,56,243,105,60,35,182,109,60,170,128,113,60,202,82,117,60,131,44,121,60,214,13,125,60,96,123,128,60,161,115,130,60,174,111,132,60,134,111,134,60,40,115,136,60,149,122,138,60,205,133,140,60,206,148,142,60,152,167,144,60,44,190,146,60,136,216,148,60,173,246,150,60,154,24,153,60,78,62,155,60,202,103,157,60,13,149,159,60,23,198,161,60,231,250,163,60,125,51,166,60,217,111,168,60,249,175,170,60,223,243,172,60,137,59,175,60,247,134,177,60,40,214,179,60,29,41,182,60,213,127,184,60,80,218,186,60,140,56,189,60,138,154,191,60,74,0,194,60,202,105,196,60,11,215,198,60,12,72,201,60,205,188,203,60,77,53,206,60,140,177,208,60,137,49,211,60,69,181,213,60,189,60,216,60,243,199,218,60,230,86,221,60,149,233,223,60,0,128,226,60,39,26,229,60,8,184,231,60,164,89,234,60,250,254,236,60,9,168,239,60,210,84,242,60,83,5,245,60,141,185,247,60,126,113,250,60,39,45,253,60,134,236,255,60,206,87,1,61,52,187,2,61,117,32,4,61,144,135,5,61,133,240,6,61,84,91,8,61,253,199,9,61,128,54,11,61,219,166,12,61,16,25,14,61,29,141,15,61,3,3,17,61,193,122,18,61,87,244,19,61,197,111,21,61,10,237,22,61,39,108,24,61,26,237,25,61,228,111,27,61,132,244,28,61,251,122,30,61,71,3,32,61,105,141,33,61,96,25,35,61,45,167,36,61,206,54,38,61,67,200,39,61,141,91,41,61,171,240,42,61,156,135,44,61,96,32,46,61,248,186,47,61,99,87,49,61,160,245,50,61,175,149,52,61,144,55,54,61,67,219,55,61,199,128,57,61,28,40,59,61,65,209,60,61,56,124,62,61,254,40,64,61,148,215,65,61,250,135,67,61,47,58,69,61,51,238,70,61,5,164,72,61,166,91,74,61,20,21,76,61,80,208,77,61,90,141,79,61,49,76,81,61,212,12,83,61,68,207,84,61,128,147,86,61,135,89,88,61,90,33,90,61,248,234,91,61,97,182,93,61,148,131,95,61,145,82,97,61,88,35,99,61,232,245,100,61,65,202,102,61,100,160,104,61,78,120,106,61,1,82,108,61,123,45,110,61,188,10,112,61,197,233,113,61,148,202,115,61,41,173,117,61,133,145,119,61,166,119,121,61,140,95,123,61,55,73,125,61,166,52,127,61,237,144,128,61,105,136,129,61,198,128,130,61,5,122,131,61,37,116,132,61,39,111,133,61,9,107,134,61,204,103,135,61,112,101,136,61,244,99,137,61,88,99,138,61,157,99,139,61,193,100,140,61,196,102,141,61,167,105,142,61,106,109,143,61,11,114,144,61,139,119,145,61,234,125,146,61,40,133,147,61,67,141,148,61,61,150,149,61,20,160,150,61,201,170,151,61,92,182,152,61,203,194,153,61,24,208,154,61,66,222,155,61,72,237,156,61,42,253,157,61,233,13,159,61,132,31,160,61,250,49,161,61,76,69,162,61,122,89,163,61,130,110,164,61,101,132,165,61,35,155,166,61,188,178,167,61,47,203,168,61,124,228,169,61,162,254,170,61,163,25,172,61,124,53,173,61,47,82,174,61,187,111,175,61,31,142,176,61,92,173,177,61,113,205,178,61,94,238,179,61,35,16,181,61,192,50,182,61,52,86,183,61,127,122,184,61,160,159,185,61,153,197,186,61,104,236,187,61,13,20,189,61,136,60,190,61,217,101,191,61,255,143,192,61,250,186,193,61,202,230,194,61,111,19,196,61,233,64,197,61,55,111,198,61,89,158,199,61,78,206,200,61,23,255,201,61,179,48,203,61,35,99,204,61,101,150,205,61,121,202,206,61,96,255,207,61,25,53,209,61,164,107,210,61,0,163,211,61,45,219,212,61,44,20,214,61,251,77,215,61,154,136,216,61,10,196,217,61,74,0,219,61,89,61,220,61,56,123,221,61,230,185,222,61,99,249,223,61,174,57,225,61,200,122,226,61,176,188,227,61,102,255,228,61,233,66,230,61,58,135,231,61,88,204,232,61,66,18,234,61,249,88,235,61,124,160,236,61,203,232,237,61,230,49,239,61,204,123,240,61,125,198,241,61,249,17,243,61,63,94,244,61,79,171,245,61,42,249,246,61,206,71,248,61,60,151,249,61,114,231,250,61,114,56,252,61,58,138,253,61,202,220,254,61,17,24,0,62,33,194,0,62,149,108,1,62,108,23,2,62,166,194,2,62,68,110,3,62,69,26,4,62,168,198,4,62,111,115,5,62,152,32,6,62,35,206,6,62,17,124,7,62,98,42,8,62,20,217,8,62,40,136,9,62,157,55,10,62,117,231,10,62,173,151,11,62,71,72,12,62,66,249,12,62,158,170,13,62,91,92,14,62,120,14,15,62,246,192,15,62,213,115,16,62,19,39,17,62,177,218,17,62,175,142,18,62,13,67,19,62,202,247,19,62,231,172,20,62,99,98,21,62,62,24,22,62,120,206,22,62,16,133,23,62,7,60,24,62,92,243,24,62,16,171,25,62,33,99,26,62,145,27,27,62,94,212,27,62,137,141,28,62,17,71,29,62,246,0,30,62,56,187,30,62,215,117,31,62,211,48,32,62,43,236,32,62,224,167,33,62,241,99,34,62,93,32,35,62,38,221,35,62,74,154,36,62,202,87,37,62,165,21,38,62,219,211,38,62,108,146,39,62,88,81,40,62,159,16,41,62,64,208,41,62,59,144,42,62,144,80,43,62,63,17,44,62,72,210,44,62,170,147,45,62,102,85,46,62,122,23,47,62,232,217,47,62,175,156,48,62,206,95,49,62,69,35,50,62,21,231,50,62,61,171,51,62,189,111,52,62,148,52,53,62,195,249,53,62,73,191,54,62,38,133,55,62,91,75,56,62,230,17,57,62,199,216,57,62,255,159,58,62,141,103,59,62,113,47,60,62,171,247,60,62,59,192,61,62,31,137,62,62,89,82,63,62,232,27,64,62,204,229,64,62,5,176,65,62,146,122,66,62,115,69,67,62,168,16,68,62,49,220,68,62,14,168,69,62,62,116,70,62,194,64,71,62,152,13,72,62,193,218,72,62,61,168,73,62,12,118,74,62,44,68,75,62,159,18,76,62,100,225,76,62,122,176,77,62,225,127,78,62,154,79,79,62,164,31,80,62,255,239,80,62,170,192,81,62,166,145,82,62,242,98,83,62,141,52,84,62,121,6,85,62,180,216,85,62,63,171,86,62,25,126,87,62,65,81,88,62,185,36,89,62,126,248,89,62,147,204,90,62,245,160,91,62,165,117,92,62,163,74,93,62,238,31,94,62,135,245,94,62,109,203,95,62,159,161,96,62,30,120,97,62,233,78,98,62,1,38,99,62,100,253,99,62,19,213,100,62,14,173,101,62,84,133,102,62,229,93,103,62,193,54,104,62,231,15,105,62,88,233,105,62,19,195,106,62,24,157,107,62,103,119,108,62,255,81,109,62,224,44,110,62,11,8,111,62,126,227,111,62,58,191,112,62,62,155,113,62,139,119,114,62,31,84,115,62,251,48,116,62,31,14,117,62,138,235,117,62,59,201,118,62,52,167,119,62,115,133,120,62,248,99,121,62,196,66,122,62,213,33,123,62,44,1,124,62,200,224,124,62,170,192,125,62,208,160,126,62,59,129,127,62,245,48,128,62,111,161,128,62,11,18,129,62,201,130,129,62,168,243,129,62,169,100,130,62,204,213,130,62,15,71,131,62,117,184,131,62,251,41,132,62,162,155,132,62,107,13,133,62,84,127,133,62,93,241,133,62,136,99,134,62,210,213,134,62,61,72,135,62,200,186,135,62,116,45,136,62,63,160,136,62,42,19,137,62,52,134,137,62,94,249,137,62,168,108,138,62,17,224,138,62,153,83,139,62,64,199,139,62,6,59,140,62,235,174,140,62,239,34,141,62,17,151,141,62,82,11,142,62,177,127,142,62,46,244,142,62,201,104,143,62,130,221,143,62,89,82,144,62,78,199,144,62,96,60,145,62,143,177,145,62,220,38,146,62,70,156,146,62,205,17,147,62,113,135,147,62,50,253,147,62,16,115,148,62,9,233,148,62,32,95,149,62,82,213,149,62,161,75,150,62,12,194,150,62,146,56,151,62,53,175,151,62,243,37,152,62,204,156,152,62,193,19,153,62,209,138,153,62,252,1,154,62,66,121,154,62,163,240,154,62,31,104,155,62,181,223,155,62,101,87,156,62,48,207,156,62,21,71,157,62,20,191,157,62,45,55,158,62,96,175,158,62,172,39,159,62,18,160,159,62,145,24,160,62,41,145,160,62,218,9,161,62,165,130,161,62,136,251,161,62,132,116,162,62,152,237,162,62,197,102,163,62,10,224,163,62,103,89,164,62,220,210,164,62,105,76,165,62,14,198,165,62,202,63,166,62,158,185,166,62,137,51,167,62,139,173,167,62,164,39,168,62,213,161,168,62,27,28,169,62],"i8",L3,x.GLOBAL_BASE+520696),d3([121,150,169,62,237,16,170,62,119,139,170,62,24,6,171,62,206,128,171,62,155,251,171,62,125,118,172,62,117,241,172,62,130,108,173,62,165,231,173,62,221,98,174,62,42,222,174,62,140,89,175,62,2,213,175,62,142,80,176,62,46,204,176,62,226,71,177,62,170,195,177,62,135,63,178,62,119,187,178,62,124,55,179,62,148,179,179,62,191,47,180,62,254,171,180,62,80,40,181,62,181,164,181,62,45,33,182,62,184,157,182,62,85,26,183,62,5,151,183,62,199,19,184,62,156,144,184,62,130,13,185,62,123,138,185,62,133,7,186,62,161,132,186,62,206,1,187,62,13,127,187,62,93,252,187,62,190,121,188,62,48,247,188,62,178,116,189,62,70,242,189,62,233,111,190,62,157,237,190,62,98,107,191,62,54,233,191,62,26,103,192,62,14,229,192,62,17,99,193,62,36,225,193,62,70,95,194,62,119,221,194,62,184,91,195,62,7,218,195,62,100,88,196,62,209,214,196,62,75,85,197,62,212,211,197,62,107,82,198,62,16,209,198,62,195,79,199,62,132,206,199,62,82,77,200,62,45,204,200,62,21,75,201,62,11,202,201,62,13,73,202,62,29,200,202,62,56,71,203,62,97,198,203,62,149,69,204,62,214,196,204,62,34,68,205,62,123,195,205,62,223,66,206,62,79,194,206,62,202,65,207,62,81,193,207,62,226,64,208,62,127,192,208,62,38,64,209,62,216,191,209,62,148,63,210,62,91,191,210,62,44,63,211,62,7,191,211,62,235,62,212,62,218,190,212,62,210,62,213,62,211,190,213,62,222,62,214,62,242,190,214,62,15,63,215,62,53,191,215,62,99,63,216,62,154,191,216,62,217,63,217,62,32,192,217,62,112,64,218,62,199,192,218,62,38,65,219,62,140,193,219,62,250,65,220,62,112,194,220,62,236,66,221,62,112,195,221,62,250,67,222,62,139,196,222,62,34,69,223,62,192,197,223,62,100,70,224,62,14,199,224,62,189,71,225,62,115,200,225,62,46,73,226,62,239,201,226,62,181,74,227,62,127,203,227,62,79,76,228,62,36,205,228,62,253,77,229,62,219,206,229,62,190,79,230,62,164,208,230,62,142,81,231,62,125,210,231,62,111,83,232,62,100,212,232,62,93,85,233,62,89,214,233,62,89,87,234,62,91,216,234,62,96,89,235,62,104,218,235,62,114,91,236,62,126,220,236,62,141,93,237,62,158,222,237,62,176,95,238,62,196,224,238,62,218,97,239,62,241,226,239,62,10,100,240,62,35,229,240,62,62,102,241,62,89,231,241,62,116,104,242,62,145,233,242,62,173,106,243,62,202,235,243,62,230,108,244,62,3,238,244,62,31,111,245,62,59,240,245,62,86,113,246,62,112,242,246,62,137,115,247,62,161,244,247,62,184,117,248,62,206,246,248,62,226,119,249,62,244,248,249,62,4,122,250,62,18,251,250,62,30,124,251,62,40,253,251,62,47,126,252,62,52,255,252,62,54,128,253,62,52,1,254,62,48,130,254,62,40,3,255,62,29,132,255,62,135,2,0,63,254,66,0,63,115,131,0,63,230,195,0,63,86,4,1,63,197,68,1,63,49,133,1,63,155,197,1,63,3,6,2,63,103,70,2,63,202,134,2,63,42,199,2,63,135,7,3,63,225,71,3,63,56,136,3,63,141,200,3,63,222,8,4,63,44,73,4,63,119,137,4,63,191,201,4,63,3,10,5,63,68,74,5,63,130,138,5,63,188,202,5,63,242,10,6,63,36,75,6,63,83,139,6,63,126,203,6,63,165,11,7,63,199,75,7,63,230,139,7,63,1,204,7,63,23,12,8,63,41,76,8,63,54,140,8,63,63,204,8,63,67,12,9,63,67,76,9,63,62,140,9,63,52,204,9,63,37,12,10,63,18,76,10,63,249,139,10,63,219,203,10,63,184,11,11,63,144,75,11,63,98,139,11,63,47,203,11,63,246,10,12,63,184,74,12,63,116,138,12,63,43,202,12,63,219,9,13,63,134,73,13,63,43,137,13,63,202,200,13,63,98,8,14,63,245,71,14,63,129,135,14,63,7,199,14,63,135,6,15,63,0,70,15,63,114,133,15,63,222,196,15,63,67,4,16,63,161,67,16,63,249,130,16,63,73,194,16,63,147,1,17,63,213,64,17,63,17,128,17,63,69,191,17,63,114,254,17,63,151,61,18,63,181,124,18,63,203,187,18,63,218,250,18,63,225,57,19,63,225,120,19,63,216,183,19,63,200,246,19,63,176,53,20,63,143,116,20,63,103,179,20,63,54,242,20,63,253,48,21,63,188,111,21,63,114,174,21,63,32,237,21,63,197,43,22,63,98,106,22,63,246,168,22,63,129,231,22,63,3,38,23,63,125,100,23,63,237,162,23,63,84,225,23,63,178,31,24,63,7,94,24,63,83,156,24,63,149,218,24,63,206,24,25,63,253,86,25,63,35,149,25,63,63,211,25,63,82,17,26,63,90,79,26,63,89,141,26,63,78,203,26,63,57,9,27,63,25,71,27,63,240,132,27,63,188,194,27,63,126,0,28,63,54,62,28,63,227,123,28,63,134,185,28,63,30,247,28,63,172,52,29,63,47,114,29,63,167,175,29,63,20,237,29,63,118,42,30,63,206,103,30,63,26,165,30,63,91,226,30,63,145,31,31,63,188,92,31,63,219,153,31,63,239,214,31,63,247,19,32,63,244,80,32,63,230,141,32,63,203,202,32,63,165,7,33,63,115,68,33,63,53,129,33,63,235,189,33,63,150,250,33,63,52,55,34,63,198,115,34,63,75,176,34,63,197,236,34,63,50,41,35,63,146,101,35,63,230,161,35,63,46,222,35,63,105,26,36,63,151,86,36,63,185,146,36,63,205,206,36,63,213,10,37,63,208,70,37,63,190,130,37,63,158,190,37,63,114,250,37,63,56,54,38,63,241,113,38,63,157,173,38,63,59,233,38,63,204,36,39,63,79,96,39,63,197,155,39,63,45,215,39,63,135,18,40,63,211,77,40,63,18,137,40,63,66,196,40,63,101,255,40,63,121,58,41,63,128,117,41,63,120,176,41,63,98,235,41,63,62,38,42,63,11,97,42,63,202,155,42,63,122,214,42,63,28,17,43,63,175,75,43,63,52,134,43,63,170,192,43,63,16,251,43,63,105,53,44,63,178,111,44,63,236,169,44,63,23,228,44,63,51,30,45,63,64,88,45,63,61,146,45,63,43,204,45,63,10,6,46,63,218,63,46,63,154,121,46,63,74,179,46,63,235,236,46,63,124,38,47,63,254,95,47,63,112,153,47,63,210,210,47,63,36,12,48,63,102,69,48,63,152,126,48,63,186,183,48,63,204,240,48,63,205,41,49,63,191,98,49,63,160,155,49,63,113,212,49,63,49,13,50,63,225,69,50,63,128,126,50,63,15,183,50,63,141,239,50,63,251,39,51,63,87,96,51,63,163,152,51,63,222,208,51,63,8,9,52,63,34,65,52,63,42,121,52,63,33,177,52,63,7,233,52,63,219,32,53,63,159,88,53,63,81,144,53,63,242,199,53,63,129,255,53,63,255,54,54,63,108,110,54,63,198,165,54,63,16,221,54,63,71,20,55,63,109,75,55,63,129,130,55,63,131,185,55,63,116,240,55,63,82,39,56,63,30,94,56,63,217,148,56,63,129,203,56,63,23,2,57,63,155,56,57,63,13,111,57,63,108,165,57,63,185,219,57,63,244,17,58,63,28,72,58,63,50,126,58,63,53,180,58,63,38,234,58,63,4,32,59,63,207,85,59,63,135,139,59,63,45,193,59,63,192,246,59,63,64,44,60,63,173,97,60,63,7,151,60,63,78,204,60,63,130,1,61,63,163,54,61,63,177,107,61,63,171,160,61,63,146,213,61,63,102,10,62,63,39,63,62,63,212,115,62,63,110,168,62,63,244,220,62,63,103,17,63,63,198,69,63,63,17,122,63,63,73,174,63,63,109,226,63,63,126,22,64,63,122,74,64,63,99,126,64,63,56,178,64,63,248,229,64,63,165,25,65,63,62,77,65,63,195,128,65,63,52,180,65,63,144,231,65,63,216,26,66,63,13,78,66,63,44,129,66,63,56,180,66,63,47,231,66,63,18,26,67,63,224,76,67,63,154,127,67,63,64,178,67,63,208,228,67,63,77,23,68,63,180,73,68,63,7,124,68,63,69,174,68,63,111,224,68,63,131,18,69,63,131,68,69,63,110,118,69,63,68,168,69,63,5,218,69,63,177,11,70,63,72,61,70,63,202,110,70,63,55,160,70,63,143,209,70,63,210,2,71,63,255,51,71,63,23,101,71,63,26,150,71,63,8,199,71,63,224,247,71,63,163,40,72,63,81,89,72,63,233,137,72,63,107,186,72,63,216,234,72,63,48,27,73,63,114,75,73,63,158,123,73,63,181,171,73,63,181,219,73,63,161,11,74,63,118,59,74,63,54,107,74,63,224,154,74,63,116,202,74,63,242,249,74,63,90,41,75,63,173,88,75,63,233,135,75,63,15,183,75,63,32,230,75,63,26,21,76,63,254,67,76,63,204,114,76,63,132,161,76,63,38,208,76,63,177,254,76,63,38,45,77,63,133,91,77,63,206,137,77,63,0,184,77,63,28,230,77,63,34,20,78,63,17,66,78,63,234,111,78,63,172,157,78,63,88,203,78,63,238,248,78,63,108,38,79,63,213,83,79,63,38,129,79,63,97,174,79,63,134,219,79,63,147,8,80,63,138,53,80,63,107,98,80,63,52,143,80,63,231,187,80,63,131,232,80,63,8,21,81,63,119,65,81,63,206,109,81,63,15,154,81,63,57,198,81,63,76,242,81,63,71,30,82,63,44,74,82,63,250,117,82,63,177,161,82,63,81,205,82,63,218,248,82,63,76,36,83,63,166,79,83,63,234,122,83,63,22,166,83,63,44,209,83,63,42,252,83,63,17,39,84,63,224,81,84,63,153,124,84,63,58,167,84,63,196,209,84,63,54,252,84,63,146,38,85,63,214,80,85,63,2,123,85,63,24,165,85,63,22,207,85,63,252,248,85,63,204,34,86,63,131,76,86,63,36,118,86,63,172,159,86,63,30,201,86,63,120,242,86,63,186,27,87,63,229,68,87,63,248,109,87,63,244,150,87,63,216,191,87,63,165,232,87,63,90,17,88,63,248,57,88,63,126,98,88,63,236,138,88,63,67,179,88,63,130,219,88,63,169,3,89,63,185,43,89,63,177,83,89,63,145,123,89,63,90,163,89,63,11,203,89,63,164,242,89,63,37,26,90,63,143,65,90,63,225,104,90,63,27,144,90,63,62,183,90,63,72,222,90,63,59,5,91,63,22,44,91,63,217,82,91,63,133,121,91,63,24,160,91,63,148,198,91,63,248,236,91,63,68,19,92,63,120,57,92,63,149,95,92,63,153,133,92,63,134,171,92,63,91,209,92,63,24,247,92,63,189,28,93,63,74,66,93,63,191,103,93,63,28,141,93,63,98,178,93,63,143,215,93,63,165,252,93,63,162,33,94,63,136,70,94,63,86,107,94,63,11,144,94,63,169,180,94,63,47,217,94,63,157,253,94,63,243,33,95,63,49,70,95,63,88,106,95,63,102,142,95,63,92,178,95,63,59,214,95,63,1,250,95,63,175,29,96,63,70,65,96,63,196,100,96,63,43,136,96,63,122,171,96,63,176,206,96,63,207,241,96,63,214,20,97,63,197,55,97,63,155,90,97,63,90,125,97,63,1,160,97,63,144,194,97,63,8,229,97,63,103,7,98,63,174,41,98,63,221,75,98,63,245,109,98,63,244,143,98,63,220,177,98,63,171,211,98,63,99,245,98,63,3,23,99,63,139,56,99,63,251,89,99,63,83,123,99,63,147,156,99,63,188,189,99,63,204,222,99,63,197,255,99,63,166,32,100,63,110,65,100,63,32,98,100,63,185,130,100,63,58,163,100,63,164,195,100,63,245,227,100,63,47,4,101,63,82,36,101,63,92,68,101,63,78,100,101,63,41,132,101,63,236,163,101,63,151,195,101,63,43,227,101,63,167,2,102,63,11,34,102,63,87,65,102,63,139,96,102,63,168,127,102,63,174,158,102,63,155,189,102,63,113,220,102,63,47,251,102,63,214,25,103,63,101,56,103,63,220,86,103,63,59,117,103,63,132,147,103,63,180,177,103,63,205,207,103,63,206,237,103,63,184,11,104,63,138,41,104,63,69,71,104,63,233,100,104,63,116,130,104,63,233,159,104,63,69,189,104,63,139,218,104,63,185,247,104,63,207,20,105,63,207,49,105,63,182,78,105,63,135,107,105,63,64,136,105,63,225,164,105,63,108,193,105,63,223,221,105,63,59,250,105,63,127,22,106,63,172,50,106,63,195,78,106,63,193,106,106,63,169,134,106,63,121,162,106,63,51,190,106,63,213,217,106,63,96,245,106,63,212,16,107,63,48,44,107,63,118,71,107,63,165,98,107,63,188,125,107,63,189,152,107,63,167,179,107,63,121,206,107,63,53,233,107,63,218,3,108,63,104,30,108,63,223,56,108,63,63,83,108,63,136,109,108,63,187,135,108,63,214,161,108,63,219,187,108,63,201,213,108,63,161,239,108,63,97,9,109,63,11,35,109,63,159,60,109,63,27,86,109,63,129,111,109,63,209,136,109,63,9,162,109,63,44,187,109,63,56,212,109,63,45,237,109,63,12,6,110,63,212,30,110,63,134,55,110,63,33,80,110,63,166,104,110,63,21,129,110,63,110,153,110,63,176,177,110,63,220,201,110,63,241,225,110,63,241,249,110,63,218,17,111,63,173,41,111,63,106,65,111,63,16,89,111,63,161,112,111,63,28,136,111,63,128,159,111,63,207,182,111,63,7,206,111,63,42,229,111,63,54,252,111,63,45,19,112,63,14,42,112,63,217,64,112,63,142,87,112,63,46,110,112,63,184,132,112,63,43,155,112,63,138,177,112,63,210,199,112,63,5,222,112,63,35,244,112,63,42,10,113,63,29,32,113,63,249,53,113,63,193,75,113,63,114,97,113,63,15,119,113,63,150,140,113,63,7,162,113,63,99,183,113,63,170,204,113,63,220,225,113,63,249,246,113,63,0,12,114,63,242,32,114,63,207,53,114,63,151,74,114,63,73,95,114,63,231,115,114,63,112,136,114,63,227,156,114,63,66,177,114,63,140,197,114,63,193,217,114,63,225,237,114,63,236,1,115,63,227,21,115,63,197,41,115,63,146,61,115,63,74,81,115,63,238,100,115,63,125,120,115,63,248,139,115,63,94,159,115,63,175,178,115,63,236,197,115,63,21,217,115,63,41,236,115,63,41,255,115,63,21,18,116,63,236,36,116,63,175,55,116,63,94,74,116,63,248,92,116,63,127,111,116,63,241,129,116,63,80,148,116,63,154,166,116,63,208,184,116,63,242,202,116,63,1,221,116,63,251,238,116,63,226,0,117,63,181,18,117,63,116,36,117,63,31,54,117,63,183,71,117,63,59,89,117,63,171,106,117,63,8,124,117,63,81,141,117,63,135,158,117,63,169,175,117,63,184,192,117,63,179,209,117,63,155,226,117,63,112,243,117,63,50,4,118,63,224,20,118,63,123,37,118,63,3,54,118,63,120,70,118,63,217,86,118,63,40,103,118,63,100,119,118,63,140,135,118,63,162,151,118,63,165,167,118,63,149,183,118,63,114,199,118,63,61,215,118,63,245,230,118,63,154,246,118,63,44,6,119,63,172,21,119,63,26,37,119,63,117,52,119,63,189,67,119,63,243,82,119,63,22,98,119,63,40,113,119,63,39,128,119,63,19,143,119,63,238,157,119,63,182,172,119,63,108,187,119,63,16,202,119,63,162,216,119,63,34,231,119,63,144,245,119,63,236,3,120,63,55,18,120,63,111,32,120,63,150,46,120,63,170,60,120,63,174,74,120,63,159,88,120,63,127,102,120,63,77,116,120,63,10,130,120,63,181,143,120,63,79,157,120,63,215,170,120,63,78,184,120,63,180,197,120,63,8,211,120,63,76,224,120,63,126,237,120,63,158,250,120,63,174,7,121,63,173,20,121,63,155,33,121,63,119,46,121,63,67,59,121,63,254,71,121,63,168,84,121,63,66,97,121,63,202,109,121,63,66,122,121,63,169,134,121,63,0,147,121,63,70,159,121,63,124,171,121,63,161,183,121,63,181,195,121,63,186,207,121,63,173,219,121,63,145,231,121,63,100,243,121,63,40,255,121,63,219,10,122,63,126,22,122,63,16,34,122,63,147,45,122,63,6,57,122,63,105,68,122,63,188,79,122,63,255,90,122,63,51,102,122,63,86,113,122,63,106,124,122,63,111,135,122,63,99,146,122,63,72,157,122,63,30,168,122,63,228,178,122,63,155,189,122,63,66,200,122,63,218,210,122,63,99,221,122,63,221,231,122,63,71,242,122,63,162,252,122,63,238,6,123,63,43,17,123,63,89,27,123,63,120,37,123,63,137,47,123,63,138,57,123,63,124,67,123,63,96,77,123,63,53,87,123,63,252,96,123,63,179,106,123,63,92,116,123,63,247,125,123,63,131,135,123,63,1,145,123,63,112,154,123,63,209,163,123,63,36,173,123,63,104,182,123,63,158,191,123,63,198,200,123,63,224,209,123,63,236,218,123,63,234,227,123,63,218,236,123,63,188,245,123,63,144,254,123,63,86,7,124,63,14,16,124,63,185,24,124,63,86,33,124,63,230,41,124,63,104,50,124,63,220,58,124,63,67,67,124,63,156,75,124,63,232,83,124,63,39,92,124,63,88,100,124,63,124,108,124,63,147,116,124,63,157,124,124,63,153,132,124,63,137,140,124,63,107,148,124,63,65,156,124,63,9,164,124,63,197,171,124,63,116,179,124,63,22,187,124,63,172,194,124,63,52,202,124,63,176,209,124,63,32,217,124,63,131,224,124,63,217,231,124,63,35,239,124,63,97,246,124,63,146,253,124,63,183,4,125,63,208,11,125,63,221,18,125,63,221,25,125,63,209,32,125,63,185,39,125,63,150,46,125,63,102,53,125,63,42,60,125,63,227,66,125,63,143,73,125,63,48,80,125,63,197,86,125,63,78,93,125,63,204,99,125,63,62,106,125,63,165,112,125,63,0,119,125,63,80,125,125,63,148,131,125,63,205,137,125,63,251,143,125,63,29,150,125,63,52,156,125,63,64,162,125,63,65,168,125,63,55,174,125,63,34,180,125,63,2,186,125,63,215,191,125,63,161,197,125,63,96,203,125,63,21,209,125,63,190,214,125,63,93,220,125,63,242,225,125,63,124,231,125,63,251,236,125,63,112,242,125,63,218,247,125,63,58,253,125,63,143,2,126,63,219,7,126,63,28,13,126,63,82,18,126,63,127,23,126,63,161,28,126,63,186,33,126,63,200,38,126,63,204,43,126,63,199,48,126,63,183,53,126,63,158,58,126,63,123,63,126,63,78,68,126,63,23,73,126,63,215,77,126,63,141,82,126,63,58,87,126,63,221,91,126,63,118,96,126,63,6,101,126,63,141,105,126,63,10,110,126,63,126,114,126,63,233,118,126,63,75,123,126,63,164,127,126,63,243,131,126,63,57,136,126,63,119,140,126,63,171,144,126,63,214,148,126,63,249,152,126,63,18,157,126,63,35,161,126,63,44,165,126,63,43,169,126,63,34,173,126,63,16,177,126,63,246,180,126,63,211,184,126,63,167,188,126,63,115,192,126,63,55,196,126,63,243,199,126,63,166,203,126,63,81,207,126,63,243,210,126,63,142,214,126,63,32,218,126,63,171,221,126,63,45,225,126,63,167,228,126,63,26,232,126,63,132,235,126,63,231,238,126,63,66,242,126,63,149,245,126,63,224,248,126,63,36,252,126,63,96,255,126,63,148,2,127,63,193,5,127,63,230,8,127,63,4,12,127,63,27,15,127,63,42,18,127,63,50,21,127,63,50,24,127,63,43,27,127,63,29,30,127,63,8,33,127,63,236,35,127,63,201,38,127,63,158,41,127,63,109,44,127,63,53,47,127,63,246,49,127,63,175,52,127,63,99,55,127,63,15,58,127,63,181,60,127,63,83,63,127,63,236,65,127,63,125,68,127,63,8,71,127,63,141,73,127,63,11,76,127,63,131,78,127,63,244,80,127,63,95,83,127,63,195,85,127,63,33,88,127,63,121,90,127,63,203,92,127,63,23,95,127,63,92,97,127,63,155,99,127,63,213,101,127,63,8,104,127,63,54,106,127,63,93,108,127,63,127,110,127,63,155,112,127,63,177,114,127,63,193,116,127,63,203,118,127,63,208,120,127,63,207,122,127,63,201,124,127,63,189,126,127,63,171,128,127,63,148,130,127,63,120,132,127,63,86,134,127,63,47,136,127,63,2,138,127,63,209,139,127,63,153,141,127,63,93,143,127,63,28,145,127,63,213,146,127,63,137,148,127,63,57,150,127,63,227,151,127,63,136,153,127,63,40,155,127,63,196,156,127,63,90,158,127,63,236,159,127,63,121,161,127,63,1,163,127,63,132,164,127,63,3,166,127,63,125,167,127,63,242,168,127,63,99,170,127,63,207,171,127,63,55,173,127,63,154,174,127,63,249,175,127,63,84,177,127,63,170,178,127,63,251,179,127,63,73,181,127,63,146,182,127,63,215,183,127,63,24,185,127,63,85,186,127,63,141,187,127,63,193,188,127,63,242,189,127,63,30,191,127,63,71,192,127,63,107,193,127,63,140,194,127,63,168,195,127,63,193,196,127,63,214,197,127,63,231,198,127,63,245,199,127,63,255,200,127,63,5,202,127,63,7,203,127,63,6,204,127,63,1,205,127,63,249,205,127,63,237,206,127,63,222,207,127,63,203,208,127,63,181,209,127,63,156,210,127,63,127,211,127,63,95,212,127,63,59,213,127,63,20,214,127,63,234,214,127,63,189,215,127,63,141,216,127,63,90,217,127,63,35,218,127,63,233,218,127,63,173,219,127,63,109,220,127,63,43,221,127,63,229,221,127,63,156,222,127,63,81,223,127,63,3,224,127,63,178,224,127,63,94,225,127,63,7,226,127,63,174,226,127,63,82,227,127,63,243,227,127,63,146,228,127,63,46,229,127,63,199,229,127,63,94,230,127,63,242,230,127,63,132,231,127,63,19,232,127,63,160,232,127,63,42,233,127,63,178,233,127,63,56,234,127,63,187,234,127,63,60,235,127,63,187,235,127,63,55,236,127,63,177,236,127,63,41,237,127,63,159,237,127,63,18,238,127,63,132,238,127,63,243,238,127,63,96,239,127,63,204,239,127,63,53,240,127,63,156,240,127,63,1,241,127,63,101,241,127,63,198,241,127,63,37,242,127,63,131,242,127,63,222,242,127,63,56,243,127,63,144,243,127,63,231,243,127,63,59,244,127,63,142,244,127,63,223,244,127,63,46,245,127,63,124,245,127,63,200,245,127,63,19,246,127,63,91,246,127,63,163,246,127,63,233,246,127,63,45,247,127,63,111,247,127,63,177,247,127,63,240,247,127,63,47,248,127,63,108,248,127,63,167,248,127,63,225,248,127,63,26,249,127,63,82,249,127,63,136,249,127,63,188,249,127,63,240,249,127,63,34,250,127,63,83,250,127,63,131,250,127,63,178,250,127,63,224,250,127,63,12,251,127,63,55,251,127,63,97,251,127,63,138,251,127,63,178,251,127,63,217,251,127,63,255,251,127,63,36,252,127,63,72,252,127,63,107,252,127,63,141,252,127,63,173,252,127,63,205,252,127,63,237,252,127,63,11,253,127,63,40,253,127,63,69,253,127,63,96,253,127,63,123,253,127,63,149,253,127,63,174,253,127,63,199,253,127,63,222,253,127,63,245,253,127,63,12,254,127,63,33,254,127,63,54,254,127,63,74,254,127,63,93,254,127,63,112,254,127,63,130,254,127,63,148,254,127,63,165,254,127,63,181,254,127,63,197,254,127,63,212,254,127,63,227,254,127,63,241,254,127,63,254,254,127,63,11,255,127,63,24,255,127,63,36,255,127,63,47,255,127,63,59,255,127,63,69,255,127,63,79,255,127,63,89,255,127,63,99,255,127,63,108,255,127,63,116,255,127,63,124,255,127,63,132,255,127,63,140,255,127,63,147,255,127,63,154,255,127,63,160,255,127,63,166,255,127,63,172,255,127,63,178,255,127,63,183,255,127,63,188,255,127,63,193,255,127,63,197,255,127,63,202,255,127,63,206,255,127,63,209,255,127,63,213,255,127,63,216,255,127,63,220,255,127,63,223,255,127,63,225,255,127,63,228,255,127,63,230,255,127,63,233,255,127,63,235,255,127,63,237,255,127,63,239,255,127,63,240,255,127,63,242,255,127,63,243,255,127,63,245,255,127,63,246,255,127,63,247,255,127,63,248,255,127,63,249,255,127,63,250,255,127,63,251,255,127,63,251,255,127,63,252,255,127,63,252,255,127,63,253,255,127,63,253,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,198,63,120,51,98,136,11,53,151,200,193,53,80,233,61,54,183,247,156,54,46,124,234,54,153,192,35,55,244,2,90,55,56,3,140,55,227,228,174,55,177,166,213,55,108,36,0,56,146,101,23,56,201,150,48,56,18,184,75,56,81,201,104,56,94,229,131,56,29,94,148,56,229,206,165,56,167,55,184,56,128,152,203,56,85,241,223,56,36,66,245,56,126,197,5,57,238,101,17,57,99,130,29,57,207,26,42,57,63,47,55,57,179,191,68,57,30,204,82,57,141,84,97,57,243,88,112,57,94,217,127,57,227,234,135,57,18,39,144,57,64,161,152,57,105,89,161,57,146,79,170,57,181,131,179,57,215,245,188,57,245,165,198,57,14,148,208,57,34,192,218,57,46,42,229,57,57,210,239,57,60,184,250,57,27,238,2,58,22,159,8,58,13,111,14,58,0,94,20,58,239,107,26,58,218,152,32,58,192,228,38,58,161,79,45,58,124,217,51,58,83,130,58,58,37,74,65,58,240,48,72,58,182,54,79,58,116,91,86,58,45,159,93,58,222,1,101,58,136,131,108,58,42,36,116,58,196,227,123,58,44,225,129,58,241,223,133,58,49,238,137,58,238,11,142,58,37,57,146,58,215,117,150,58,5,194,154,58,174,29,159,58,209,136,163,58,110,3,168,58,134,141,172,58,24,39,177,58,36,208,181,58,169,136,186,58,169,80,191,58,33,40,196,58,19,15,201,58,126,5,206,58,98,11,211,58,191,32,216,58,148,69,221,58,225,121,226,58,166,189,231,58,227,16,237,58,152,115,242,58,196,229,247,58,103,103,253,58,65,124,1,59,137,76,4,59,141,36,7,59,76,4,10,59,198,235,12,59,251,218,15,59,235,209,18,59,149,208,21,59,251,214,24,59,26,229,27,59,244,250,30,59,136,24,34,59,215,61,37,59,223,106,40,59,161,159,43,59,29,220,46,59,83,32,50,59,66,108,53,59,234,191,56,59,76,27,60,59,103,126,63,59,59,233,66,59,199,91,70,59,12,214,73,59,10,88,77,59,193,225,80,59,48,115,84,59,86,12,88,59,53,173,91,59,204,85,95,59,26,6,99,59,32,190,102,59,222,125,106,59,82,69,110,59,127,20,114,59,97,235,117,59,251,201,121,59,76,176,125,59,41,207,128,59,8,202,130,59,194,200,132,59,87,203,134,59,198,209,136,59,17,220,138,59,55,234,140,59,55,252,142,59,18,18,145,59,199,43,147,59,87,73,149,59,194,106,151,59,6,144,153,59,37,185,155,59,30,230,157,59,241,22,160,59,158,75,162,59,37,132,164,59,134,192,166,59,192,0,169,59,212,68,171,59,193,140,173,59,137,216,175,59,41,40,178,59,163,123,180,59,245,210,182,59,33,46,185,59,38,141,187,59,4,240,189,59,186,86,192,59,73,193,194,59,177,47,197,59,242,161,199,59,10,24,202,59,251,145,204,59,196,15,207,59,102,145,209,59,223,22,212,59,49,160,214,59,90,45,217,59,91,190,219,59,51,83,222,59,227,235,224,59,107,136,227,59,201,40,230,59,255,204,232,59,12,117,235,59,240,32,238,59,171,208,240,59,61,132,243,59,165,59,246,59,228,246,248,59,250,181,251,59,229,120,254,59,212,159,0,60,32,5,2,60,87,108,3,60,121,213,4,60,134,64,6,60,126,173,7,60,96,28,9,60,45,141,10,60,229,255,11,60,136,116,13,60,21,235,14,60,141,99,16,60,239,221,17,60,59,90,19,60,114,216,20,60,147,88,22,60,158,218,23,60,147,94,25,60,115,228,26,60,60,108,28,60,240,245,29,60,141,129,31,60,20,15,33,60,133,158,34,60,224,47,36,60,36,195,37,60,82,88,39,60,105,239,40,60,106,136,42,60,84,35,44,60,40,192,45,60,229,94,47,60,139,255,48,60,26,162,50,60,146,70,52,60,243,236,53,60,61,149,55,60,112,63,57,60,140,235,58,60,145,153,60,60,126,73,62,60,84,251,63,60,18,175,65,60,185,100,67,60,72,28,69,60,192,213,70,60,31,145,72,60,103,78,74,60,151,13,76,60,175,206,77,60,176,145,79,60,152,86,81,60,103,29,83,60,31,230,84,60,190,176,86,60,69,125,88,60,179,75,90,60,9,28,92,60,71,238,93,60,107,194,95,60,119,152,97,60,106,112,99,60,68,74,101,60,5,38,103,60,173,3,105,60,60,227,106,60,178,196,108,60,14,168,110,60,81,141,112,60,123,116,114,60,139,93,116,60,130,72,118,60,95,53,120,60,34,36,122,60,203,20,124,60,90,7,126,60,208,251,127,60,22,249,128,60,54,245,129,60,74,242,130,60,80,240,131,60,73,239,132,60,53,239,133,60,19,240,134,60,229,241,135,60,169,244,136,60,95,248,137,60,8,253,138,60,164,2,140,60,50,9,141,60,178,16,142,60,37,25,143,60,139,34,144,60,226,44,145,60,44,56,146,60,104,68,147,60,150,81,148,60,182,95,149,60,201,110,150,60,205,126,151,60,196,143,152,60,172,161,153,60,135,180,154,60,83,200,155,60,17,221,156,60,193,242,157,60,98,9,159,60,245,32,160,60,122,57,161,60,241,82,162,60,89,109,163,60,178,136,164,60,253,164,165,60,57,194,166,60,103,224,167,60,134,255,168,60,151,31,170,60,152,64,171,60,139,98,172,60,111,133,173,60,68,169,174,60,10,206,175,60,193,243,176,60,105,26,178,60,2,66,179,60,139,106,180,60,6,148,181,60,113,190,182,60,205,233,183,60,26,22,185,60,87,67,186,60,133,113,187,60,163,160,188,60,177,208,189,60,177,1,191,60,160,51,192,60,128,102,193,60,80,154,194,60,16,207,195,60,193,4,197,60,97,59,198,60,242,114,199,60,114,171,200,60,227,228,201,60,67,31,203,60,147,90,204,60,211,150,205,60,3,212,206,60,34,18,208,60,49,81,209,60,48,145,210,60,30,210,211,60,252,19,213,60,201,86,214,60,133,154,215,60,49,223,216,60,204,36,218,60,86,107,219,60,208,178,220,60,56,251,221,60,144,68,223,60,214,142,224,60,12,218,225,60,48,38,227,60,67,115,228,60,69,193,229,60,54,16,231,60,21,96,232,60,227,176,233,60,160,2,235,60,75,85,236,60,228,168,237,60,108,253,238,60,226,82,240,60,70,169,241,60,153,0,243,60,218,88,244,60,8,178,245,60,37,12,247,60,48,103,248,60,41,195,249,60,15,32,251,60,228,125,252,60,166,220,253,60,85,60,255,60,121,78,0,61,63,255,0,61,123,176,1,61,46,98,2,61,88,20,3,61,248,198,3,61,15,122,4,61,156,45,5,61,161,225,5,61,27,150,6,61,12,75,7,61,116,0,8,61,82,182,8,61,167,108,9,61,113,35,10,61,179,218,10,61,106,146,11,61,152,74,12,61,60,3,13,61,87,188,13,61,231,117,14,61,238,47,15,61,107,234,15,61,94,165,16,61,199,96,17,61,166,28,18,61,251,216,18,61,198,149,19,61,7,83,20,61,190,16,21,61,234,206,21,61,141,141,22,61,165,76,23,61,52,12,24,61,56,204,24,61,177,140,25,61,161,77,26,61,6,15,27,61,224,208,27,61,48,147,28,61,246,85,29,61,49,25,30,61,226,220,30,61,8,161,31,61,164,101,32,61,181,42,33,61,59,240,33,61,55,182,34,61,168,124,35,61,142,67,36,61,233,10,37,61,186,210,37,61,255,154,38,61,186,99,39,61,234,44,40,61,143,246,40,61,168,192,41,61,55,139,42,61,59,86,43,61,180,33,44,61,161,237,44,61,4,186,45,61,219,134,46,61,38,84,47,61,231,33,48,61,28,240,48,61,198,190,49,61,229,141,50,61,120,93,51,61,127,45,52,61,251,253,52,61,236,206,53,61,81,160,54,61,42,114,55,61,120,68,56,61,58,23,57,61,112,234,57,61,27,190,58,61,58,146,59,61,204,102,60,61,211,59,61,61,79,17,62,61,62,231,62,61,161,189,63,61,120,148,64,61,195,107,65,61,130,67,66,61,181,27,67,61,92,244,67,61,118,205,68,61,4,167,69,61,6,129,70,61,124,91,71,61,101,54,72,61,194,17,73,61,146,237,73,61,214,201,74,61,141,166,75,61,184,131,76,61,86,97,77,61,104,63,78,61,236,29,79,61,229,252,79,61,80,220,80,61,46,188,81,61,128,156,82,61,69,125,83,61,125,94,84,61,40,64,85,61,69,34,86,61,214,4,87,61,218,231,87,61,81,203,88,61,58,175,89,61,150,147,90,61,101,120,91,61,167,93,92,61,91,67,93,61,130,41,94,61,28,16,95,61,40,247,95,61,167,222,96,61,152,198,97,61,251,174,98,61,209,151,99,61,25,129,100,61,212,106,101,61,0,85,102,61,159,63,103,61,176,42,104,61,51,22,105,61,41,2,106,61,144,238,106,61,105,219,107,61,180,200,108,61,113,182,109,61,160,164,110,61,65,147,111,61,84,130,112,61,216,113,113,61,206,97,114,61,54,82,115,61,15,67,116,61,89,52,117,61,22,38,118,61,67,24,119,61,226,10,120,61,243,253,120,61,117,241,121,61,104,229,122,61,204,217,123,61,162,206,124,61,232,195,125,61,160,185,126,61,201,175,127,61,49,83,128,61,183,206,128,61,117,74,129,61,107,198,129,61,154,66,130,61,1,191,130,61,160,59,131,61,120,184,131,61,136,53,132,61,209,178,132,61,81,48,133,61,10,174,133,61,251,43,134,61,37,170,134,61,134,40,135,61,32,167,135,61,242,37,136,61,252,164,136,61,62,36,137,61,184,163,137,61,106,35,138,61,84,163,138,61,118,35,139,61,209,163,139,61,99,36,140,61,45,165,140,61,46,38,141,61,104,167,141,61,218,40,142,61,131,170,142,61,100,44,143,61,125,174,143,61,206,48,144,61,86,179,144,61,23,54,145,61,14,185,145,61,62,60,146,61,165,191,146,61,67,67,147,61,26,199,147,61,39,75,148,61,109,207,148,61,234,83,149,61,158,216,149,61,138,93,150,61,173,226,150,61,7,104,151,61,153,237,151,61,98,115,152,61,99,249,152,61,155,127,153,61,10,6,154,61,176,140,154,61,142,19,155,61,163,154,155,61,239,33,156,61,114,169,156,61,44,49,157,61,29,185,157,61,69,65,158,61,165,201,158,61,59,82,159,61,8,219,159,61,13,100,160,61,72,237,160,61,186,118,161,61,99,0,162,61,67,138,162,61,90,20,163,61,167,158,163,61,43,41,164,61,230,179,164,61,216,62,165,61,0,202,165,61,95,85,166,61,245,224,166,61,193,108,167,61,196,248,167,61,254,132,168,61,110,17,169,61,20,158,169,61,241,42,170,61,4,184,170,61,78,69,171,61,206,210,171,61,133,96,172,61,113,238,172,61,149,124,173,61,238,10,174,61,126,153,174,61,67,40,175,61,63,183,175,61,114,70,176,61,218,213,176,61,120,101,177,61,77,245,177,61,88,133,178,61,152,21,179,61,15,166,179,61,187,54,180,61,158,199,180,61,182,88,181,61,4,234,181,61,137,123,182,61,67,13,183,61,50,159,183,61,88,49,184,61,179,195,184,61,68,86,185,61,11,233,185,61,7,124,186,61,57,15,187,61,160,162,187,61,61,54,188,61,16,202,188,61,24,94,189,61,85,242,189,61,200,134,190,61,112,27,191,61,78,176,191,61,97,69,192,61,170,218,192,61,39,112,193,61,218,5,194,61,194,155,194,61,224,49,195,61,50,200,195,61,186,94,196,61,119,245,196,61,104,140,197,61,143,35,198,61,235,186,198,61,124,82,199,61,66,234,199,61,61,130,200,61,108,26,201,61,209,178,201,61,106,75,202,61,57,228,202,61,59,125,203,61,115,22,204,61,224,175,204,61,129,73,205,61,86,227,205,61,97,125,206,61,159,23,207,61,19,178,207,61,187,76,208,61,151,231,208,61,168,130,209,61,237,29,210,61,103,185,210,61,21,85,211,61,248,240,211,61,14,141,212,61,89,41,213,61,216,197,213,61,140,98,214,61,115,255,214,61,143,156,215,61,223,57,216,61,99,215,216,61,27,117,217,61,7,19,218,61,38,177,218,61,122,79,219,61,2,238,219,61,189,140,220,61,173,43,221,61,208,202,221,61,39,106,222,61,178,9,223,61,112,169,223,61,98,73,224,61,136,233,224,61,226,137,225,61,111,42,226,61,47,203,226,61,35,108,227,61,74,13,228,61,165,174,228,61,52,80,229,61,245,241,229,61,234,147,230,61,19,54,231,61,110,216,231,61,253,122,232,61,191,29,233,61,180,192,233,61,221,99,234,61,56,7,235,61,199,170,235,61,136,78,236,61,125,242,236,61,164,150,237,61,255,58,238,61,140,223,238,61,76,132,239,61,63,41,240,61,101,206,240,61,189,115,241,61,73,25,242,61,7,191,242,61,247,100,243,61,26,11,244,61,112,177,244,61,248,87,245,61,179,254,245,61,160,165,246,61,192,76,247,61,18,244,247,61,151,155,248,61,77,67,249,61,55,235,249,61,82,147,250,61,159,59,251,61,31,228,251,61,209,140,252,61,181,53,253,61,203,222,253,61,19,136,254,61,141,49,255,61,57,219,255,61,140,66,0,62,148,151,0,62,181,236,0,62,238,65,1,62,65,151,1,62,173,236,1,62,49,66,2,62,206,151,2,62,132,237,2,62,83,67,3,62,59,153,3,62,59,239,3,62,84,69,4,62,134,155,4,62,209,241,4,62,52,72,5,62,176,158,5,62,68,245,5,62,242,75,6,62,183,162,6,62,150,249,6,62,141,80,7,62,156,167,7,62,196,254,7,62,5,86,8,62,94,173,8,62,207,4,9,62,89,92,9,62,252,179,9,62,183,11,10,62,138,99,10,62,118,187,10,62,122,19,11,62,150,107,11,62,203,195,11,62,24,28,12,62,125,116,12,62,250,204,12,62,144,37,13,62,62,126,13,62,4,215,13,62,227,47,14,62,217,136,14,62,232,225,14,62,15,59,15,62,78,148,15,62,165,237,15,62,20,71,16,62,155,160,16,62,58,250,16,62,241,83,17,62,193,173,17,62,168,7,18,62,167,97,18,62,190,187,18,62,237,21,19,62,51,112,19,62,146,202,19,62,9,37,20,62,151,127,20,62,61,218,20,62,251,52,21,62,209,143,21,62,190,234,21,62,195,69,22,62,224,160,22,62,21,252,22,62,97,87,23,62,197,178,23,62,64,14,24,62,211,105,24,62,126,197,24,62,64,33,25,62,26,125,25,62,11,217,25,62,20,53,26,62,52,145,26,62,108,237,26,62,187,73,27,62,34,166,27,62,160,2,28,62,53,95,28,62,226,187,28,62,166,24,29,62,129,117,29,62,116,210,29,62,126,47,30,62,159,140,30,62,215,233,30,62,39,71,31,62,141,164,31,62,11,2,32,62,160,95,32,62,76,189,32,62,16,27,33,62,234,120,33,62,219,214,33,62,228,52,34,62,3,147,34,62,58,241,34,62,135,79,35,62,235,173,35,62,103,12,36,62,249,106,36,62,162,201,36,62,98,40,37,62,56,135,37,62,38,230,37,62,42,69,38,62,69,164,38,62,119,3,39,62,192,98,39,62,31,194,39,62,149,33,40,62,33,129,40,62,197,224,40,62,126,64,41,62,79,160,41,62,54,0,42,62,51,96,42,62,72,192,42,62,114,32,43,62,179,128,43,62,11,225,43,62,121,65,44,62,253,161,44,62,152,2,45,62,73,99,45,62,16,196,45,62,238,36,46,62,226,133,46,62,237,230,46,62,13,72,47,62,68,169,47,62,145,10,48,62,245,107,48,62,110,205,48,62,254,46,49,62,163,144,49,62,95,242,49,62,49,84,50,62,25,182,50,62,23,24,51,62,43,122,51,62,85,220,51,62,148,62,52,62,234,160,52,62,86,3,53,62,216,101,53,62,111,200,53,62,28,43,54,62,223,141,54,62,184,240,54,62,167,83,55,62,171,182,55,62,197,25,56,62,245,124,56,62,59,224,56,62,150,67,57,62,7,167,57,62,141,10,58,62,41,110,58,62,219,209,58,62,162,53,59,62,126,153,59,62,112,253,59,62,120,97,60,62,149,197,60,62,199,41,61,62,15,142,61,62,108,242,61,62,222,86,62,62,102,187,62,62,3,32,63,62,181,132,63,62,125,233,63,62,90,78,64,62,75,179,64,62,83,24,65,62,111,125,65,62,160,226,65,62,231,71,66,62,66,173,66,62,179,18,67,62,57,120,67,62,211,221,67,62,131,67,68,62,71,169,68,62,33,15,69,62,15,117,69,62,18,219,69,62,42,65,70,62,87,167,70,62,153,13,71,62,240,115,71,62,91,218,71,62,219,64,72,62,111,167,72,62,25,14,73,62,215,116,73,62,169,219,73,62,144,66,74,62,140,169,74,62,157,16,75,62,193,119,75,62,251,222,75,62,73,70,76,62,171,173,76,62,34,21,77,62,173,124,77,62,76,228,77,62,0,76,78,62,200,179,78,62,164,27,79,62,149,131,79,62,154,235,79,62,179,83,80,62,225,187,80,62,34,36,81,62,120,140,81,62,225,244,81,62,95,93,82,62,241,197,82,62,151,46,83,62,81,151,83,62,31,0,84,62,1,105,84,62,247,209,84,62,0,59,85,62,30,164,85,62,79,13,86,62,149,118,86,62,238,223,86,62,91,73,87,62,219,178,87,62,112,28,88,62,24,134,88,62,211,239,88,62,163,89,89,62,134,195,89,62,124,45,90,62,134,151,90,62,164,1,91,62,213,107,91,62,26,214,91,62,114,64,92,62,221,170,92,62,92,21,93,62,239,127,93,62,148,234,93,62,77,85,94,62,26,192,94,62,249,42,95,62,236,149,95,62,242,0,96,62,11,108,96,62,55,215,96,62,119,66,97,62,202,173,97,62,47,25,98,62,168,132,98,62,52,240,98,62,210,91,99,62,132,199,99,62,73,51,100,62,32,159,100,62,11,11,101,62,8,119,101,62,24,227,101,62,59,79,102,62,113,187,102,62,186,39,103,62,21,148,103,62,131,0,104,62,3,109,104,62,151,217,104,62,60,70,105,62,245,178,105,62,192,31,106,62,157,140,106,62,141,249,106,62,144,102,107,62,165,211,107,62,204,64,108,62,6,174,108,62,82,27,109,62,176,136,109,62,33,246,109,62,164,99,110,62,57,209,110,62,225,62,111,62,154,172,111,62,102,26,112,62,68,136,112,62,52,246,112,62,55,100,113,62,75,210,113,62,113,64,114,62,169,174,114,62,243,28,115,62,80,139,115,62,190,249,115,62,61,104,116,62,207,214,116,62,115,69,117,62,40,180,117,62,239,34,118,62,200,145,118,62,179,0,119,62,175,111,119,62,189,222,119,62,221,77,120,62,14,189,120,62,80,44,121,62,165,155,121,62,10,11,122,62,130,122,122,62,10,234,122,62,164,89,123,62,80,201,123,62,13,57,124,62,219,168,124,62,186,24,125,62,171,136,125,62,173,248,125,62,192,104,126,62,228,216,126,62,26,73,127,62,96,185,127,62,220,20,128,62,16,77,128,62,77,133,128,62,147,189,128,62,225,245,128,62,55,46,129,62,150,102,129,62,253,158,129,62,109,215,129,62,229,15,130,62,102,72,130,62,238,128,130,62,128,185,130,62,25,242,130,62,187,42,131,62,102,99,131,62,24,156,131,62,211,212,131,62,150,13,132,62,98,70,132,62,53,127,132,62,17,184,132,62,245,240,132,62,226,41,133,62,214,98,133,62,211,155,133,62,216,212,133,62,229,13,134,62,250,70,134,62,23,128,134,62,61,185,134,62,106,242,134,62,160,43,135,62,221,100,135,62,35,158,135,62,112,215,135,62,198,16,136,62,35,74,136,62,137,131,136,62,247,188,136,62,108,246,136,62,233,47,137,62,111,105,137,62,252,162,137,62,145,220,137,62,46,22,138,62,211,79,138,62,127,137,138,62,52,195,138,62,240,252,138,62,180,54,139,62,128,112,139,62,84,170,139,62,47,228,139,62,18,30,140,62,253,87,140,62,239,145,140,62,233,203,140,62,235,5,141,62,245,63,141,62,6,122,141,62,31,180,141,62,63,238,141,62,103,40,142,62],"i8",L3,x.GLOBAL_BASE+530936),d3([150,98,142,62,205,156,142,62,12,215,142,62,82,17,143,62,159,75,143,62,245,133,143,62,81,192,143,62,181,250,143,62,33,53,144,62,147,111,144,62,14,170,144,62,143,228,144,62,25,31,145,62,169,89,145,62,65,148,145,62,224,206,145,62,134,9,146,62,52,68,146,62,233,126,146,62,165,185,146,62,105,244,146,62,52,47,147,62,6,106,147,62,223,164,147,62,191,223,147,62,167,26,148,62,150,85,148,62,139,144,148,62,136,203,148,62,140,6,149,62,152,65,149,62,170,124,149,62,195,183,149,62,227,242,149,62,11,46,150,62,57,105,150,62,111,164,150,62,171,223,150,62,238,26,151,62,56,86,151,62,138,145,151,62,226,204,151,62,65,8,152,62,167,67,152,62,19,127,152,62,135,186,152,62,1,246,152,62,130,49,153,62,10,109,153,62,153,168,153,62,47,228,153,62,203,31,154,62,110,91,154,62,24,151,154,62,200,210,154,62,127,14,155,62,61,74,155,62,2,134,155,62,205,193,155,62,158,253,155,62,119,57,156,62,85,117,156,62,59,177,156,62,39,237,156,62,25,41,157,62,18,101,157,62,18,161,157,62,24,221,157,62,36,25,158,62,55,85,158,62,80,145,158,62,112,205,158,62,150,9,159,62,195,69,159,62,246,129,159,62,47,190,159,62,111,250,159,62,180,54,160,62,1,115,160,62,83,175,160,62,172,235,160,62,11,40,161,62,112,100,161,62,219,160,161,62,77,221,161,62,196,25,162,62,66,86,162,62,198,146,162,62,81,207,162,62,225,11,163,62,119,72,163,62,20,133,163,62,182,193,163,62,95,254,163,62,13,59,164,62,194,119,164,62,125,180,164,62,61,241,164,62,4,46,165,62,208,106,165,62,162,167,165,62,123,228,165,62,89,33,166,62,61,94,166,62,39,155,166,62,23,216,166,62,12,21,167,62,7,82,167,62,8,143,167,62,15,204,167,62,28,9,168,62,46,70,168,62,70,131,168,62,100,192,168,62,136,253,168,62,177,58,169,62,223,119,169,62,20,181,169,62,78,242,169,62,141,47,170,62,211,108,170,62,29,170,170,62,109,231,170,62,195,36,171,62,31,98,171,62,127,159,171,62,230,220,171,62,81,26,172,62,194,87,172,62,57,149,172,62,181,210,172,62,54,16,173,62,189,77,173,62,73,139,173,62,218,200,173,62,113,6,174,62,13,68,174,62,174,129,174,62,85,191,174,62,0,253,174,62,177,58,175,62,103,120,175,62,35,182,175,62,227,243,175,62,169,49,176,62,116,111,176,62,68,173,176,62,25,235,176,62,243,40,177,62,210,102,177,62,182,164,177,62,160,226,177,62,142,32,178,62,129,94,178,62,121,156,178,62,119,218,178,62,121,24,179,62,128,86,179,62,140,148,179,62,157,210,179,62,178,16,180,62,205,78,180,62,236,140,180,62,16,203,180,62,57,9,181,62,103,71,181,62,154,133,181,62,209,195,181,62,13,2,182,62,78,64,182,62,147,126,182,62,221,188,182,62,44,251,182,62,127,57,183,62,215,119,183,62,52,182,183,62,149,244,183,62,251,50,184,62,101,113,184,62,212,175,184,62,71,238,184,62,191,44,185,62,59,107,185,62,188,169,185,62,65,232,185,62,202,38,186,62,88,101,186,62,235,163,186,62,129,226,186,62,28,33,187,62,188,95,187,62,95,158,187,62,7,221,187,62,180,27,188,62,100,90,188,62,25,153,188,62,210,215,188,62,143,22,189,62,80,85,189,62,22,148,189,62,223,210,189,62,173,17,190,62,127,80,190,62,85,143,190,62,47,206,190,62,13,13,191,62,239,75,191,62,213,138,191,62,191,201,191,62,173,8,192,62,159,71,192,62,149,134,192,62,143,197,192,62,141,4,193,62,143,67,193,62,148,130,193,62,158,193,193,62,171,0,194,62,188,63,194,62,209,126,194,62,234,189,194,62,6,253,194,62,38,60,195,62,74,123,195,62,113,186,195,62,157,249,195,62,204,56,196,62,254,119,196,62,52,183,196,62,110,246,196,62,171,53,197,62,236,116,197,62,49,180,197,62,121,243,197,62,196,50,198,62,19,114,198,62,102,177,198,62,188,240,198,62,21,48,199,62,114,111,199,62,210,174,199,62,54,238,199,62,157,45,200,62,7,109,200,62,117,172,200,62,230,235,200,62,90,43,201,62,209,106,201,62,76,170,201,62,202,233,201,62,75,41,202,62,208,104,202,62,88,168,202,62,226,231,202,62,112,39,203,62,1,103,203,62,149,166,203,62,45,230,203,62,199,37,204,62,100,101,204,62,4,165,204,62,168,228,204,62,78,36,205,62,248,99,205,62,164,163,205,62,83,227,205,62,5,35,206,62,186,98,206,62,114,162,206,62,45,226,206,62,234,33,207,62,171,97,207,62,110,161,207,62,52,225,207,62,253,32,208,62,200,96,208,62,150,160,208,62,103,224,208,62,59,32,209,62,17,96,209,62,234,159,209,62,198,223,209,62,164,31,210,62,133,95,210,62,104,159,210,62,78,223,210,62,55,31,211,62,33,95,211,62,15,159,211,62,255,222,211,62,241,30,212,62,230,94,212,62,221,158,212,62,215,222,212,62,211,30,213,62,209,94,213,62,210,158,213,62,213,222,213,62,219,30,214,62,226,94,214,62,236,158,214,62,248,222,214,62,7,31,215,62,24,95,215,62,42,159,215,62,63,223,215,62,87,31,216,62,112,95,216,62,139,159,216,62,169,223,216,62,200,31,217,62,234,95,217,62,14,160,217,62,51,224,217,62,91,32,218,62,133,96,218,62,176,160,218,62,222,224,218,62,13,33,219,62,63,97,219,62,114,161,219,62,167,225,219,62,222,33,220,62,23,98,220,62,82,162,220,62,142,226,220,62,204,34,221,62,12,99,221,62,78,163,221,62,146,227,221,62,215,35,222,62,29,100,222,62,102,164,222,62,176,228,222,62,252,36,223,62,73,101,223,62,152,165,223,62,232,229,223,62,58,38,224,62,142,102,224,62,227,166,224,62,57,231,224,62,145,39,225,62,234,103,225,62,69,168,225,62,161,232,225,62,255,40,226,62,94,105,226,62,190,169,226,62,32,234,226,62,131,42,227,62,231,106,227,62,76,171,227,62,179,235,227,62,27,44,228,62,132,108,228,62,238,172,228,62,90,237,228,62,199,45,229,62,52,110,229,62,163,174,229,62,19,239,229,62,133,47,230,62,247,111,230,62,106,176,230,62,222,240,230,62,83,49,231,62,202,113,231,62,65,178,231,62,185,242,231,62,50,51,232,62,172,115,232,62,38,180,232,62,162,244,232,62,31,53,233,62,156,117,233,62,26,182,233,62,153,246,233,62,25,55,234,62,153,119,234,62,26,184,234,62,156,248,234,62,31,57,235,62,162,121,235,62,38,186,235,62,170,250,235,62,47,59,236,62,181,123,236,62,59,188,236,62,194,252,236,62,73,61,237,62,209,125,237,62,89,190,237,62,226,254,237,62,107,63,238,62,245,127,238,62,127,192,238,62,10,1,239,62,149,65,239,62,32,130,239,62,171,194,239,62,55,3,240,62,196,67,240,62,80,132,240,62,221,196,240,62,106,5,241,62,247,69,241,62,132,134,241,62,18,199,241,62,160,7,242,62,45,72,242,62,187,136,242,62,74,201,242,62,216,9,243,62,102,74,243,62,244,138,243,62,131,203,243,62,17,12,244,62,159,76,244,62,46,141,244,62,188,205,244,62,74,14,245,62,216,78,245,62,102,143,245,62,244,207,245,62,129,16,246,62,15,81,246,62,156,145,246,62,41,210,246,62,182,18,247,62,67,83,247,62,207,147,247,62,91,212,247,62,231,20,248,62,115,85,248,62,254,149,248,62,136,214,248,62,19,23,249,62,157,87,249,62,38,152,249,62,175,216,249,62,56,25,250,62,192,89,250,62,72,154,250,62,207,218,250,62,86,27,251,62,220,91,251,62,97,156,251,62,230,220,251,62,106,29,252,62,238,93,252,62,113,158,252,62,243,222,252,62,117,31,253,62,245,95,253,62,118,160,253,62,245,224,253,62,116,33,254,62,241,97,254,62,110,162,254,62,235,226,254,62,102,35,255,62,224,99,255,62,90,164,255,62,211,228,255,62,165,18,0,63,225,50,0,63,27,83,0,63,86,115,0,63,144,147,0,63,201,179,0,63,2,212,0,63,58,244,0,63,114,20,1,63,169,52,1,63,224,84,1,63,22,117,1,63,76,149,1,63,129,181,1,63,181,213,1,63,233,245,1,63,28,22,2,63,78,54,2,63,128,86,2,63,178,118,2,63,226,150,2,63,18,183,2,63,65,215,2,63,112,247,2,63,157,23,3,63,203,55,3,63,247,87,3,63,35,120,3,63,78,152,3,63,120,184,3,63,161,216,3,63,202,248,3,63,242,24,4,63,25,57,4,63,63,89,4,63,101,121,4,63,137,153,4,63,173,185,4,63,208,217,4,63,243,249,4,63,20,26,5,63,52,58,5,63,84,90,5,63,115,122,5,63,145,154,5,63,173,186,5,63,202,218,5,63,229,250,5,63,255,26,6,63,24,59,6,63,48,91,6,63,72,123,6,63,94,155,6,63,116,187,6,63,136,219,6,63,155,251,6,63,174,27,7,63,191,59,7,63,208,91,7,63,223,123,7,63,237,155,7,63,250,187,7,63,7,220,7,63,18,252,7,63,28,28,8,63,37,60,8,63,44,92,8,63,51,124,8,63,57,156,8,63,61,188,8,63,64,220,8,63,67,252,8,63,68,28,9,63,68,60,9,63,66,92,9,63,64,124,9,63,60,156,9,63,55,188,9,63,49,220,9,63,41,252,9,63,33,28,10,63,23,60,10,63,12,92,10,63,255,123,10,63,242,155,10,63,227,187,10,63,211,219,10,63,193,251,10,63,174,27,11,63,154,59,11,63,133,91,11,63,110,123,11,63,86,155,11,63,60,187,11,63,33,219,11,63,5,251,11,63,231,26,12,63,200,58,12,63,168,90,12,63,134,122,12,63,98,154,12,63,62,186,12,63,23,218,12,63,240,249,12,63,199,25,13,63,156,57,13,63,112,89,13,63,66,121,13,63,19,153,13,63,227,184,13,63,176,216,13,63,125,248,13,63,72,24,14,63,17,56,14,63,216,87,14,63,159,119,14,63,99,151,14,63,38,183,14,63,232,214,14,63,167,246,14,63,101,22,15,63,34,54,15,63,221,85,15,63,150,117,15,63,78,149,15,63,4,181,15,63,184,212,15,63,106,244,15,63,27,20,16,63,202,51,16,63,120,83,16,63,36,115,16,63,206,146,16,63,118,178,16,63,28,210,16,63,193,241,16,63,100,17,17,63,6,49,17,63,165,80,17,63,67,112,17,63,223,143,17,63,121,175,17,63,17,207,17,63,167,238,17,63,60,14,18,63,206,45,18,63,95,77,18,63,238,108,18,63,123,140,18,63,7,172,18,63,144,203,18,63,23,235,18,63,157,10,19,63,32,42,19,63,162,73,19,63,34,105,19,63,159,136,19,63,27,168,19,63,149,199,19,63,13,231,19,63,131,6,20,63,247,37,20,63,104,69,20,63,216,100,20,63,70,132,20,63,178,163,20,63,27,195,20,63,131,226,20,63,233,1,21,63,76,33,21,63,174,64,21,63,13,96,21,63,106,127,21,63,197,158,21,63,31,190,21,63,117,221,21,63,202,252,21,63,29,28,22,63,109,59,22,63,188,90,22,63,8,122,22,63,82,153,22,63,153,184,22,63,223,215,22,63,34,247,22,63,100,22,23,63,162,53,23,63,223,84,23,63,26,116,23,63,82,147,23,63,136,178,23,63,187,209,23,63,237,240,23,63,28,16,24,63,73,47,24,63,115,78,24,63,155,109,24,63,193,140,24,63,228,171,24,63,6,203,24,63,36,234,24,63,65,9,25,63,91,40,25,63,115,71,25,63,136,102,25,63,155,133,25,63,171,164,25,63,185,195,25,63,197,226,25,63,206,1,26,63,213,32,26,63,217,63,26,63,219,94,26,63,218,125,26,63,215,156,26,63,210,187,26,63,202,218,26,63,191,249,26,63,178,24,27,63,162,55,27,63,144,86,27,63,123,117,27,63,100,148,27,63,74,179,27,63,46,210,27,63,15,241,27,63,237,15,28,63,201,46,28,63,162,77,28,63,121,108,28,63,77,139,28,63,31,170,28,63,237,200,28,63,185,231,28,63,131,6,29,63,74,37,29,63,14,68,29,63,207,98,29,63,142,129,29,63,74,160,29,63,3,191,29,63,186,221,29,63,110,252,29,63,31,27,30,63,205,57,30,63,121,88,30,63,34,119,30,63,200,149,30,63,107,180,30,63,12,211,30,63,170,241,30,63,69,16,31,63,221,46,31,63,114,77,31,63,5,108,31,63,148,138,31,63,33,169,31,63,171,199,31,63,50,230,31,63,182,4,32,63,56,35,32,63,182,65,32,63,50,96,32,63,170,126,32,63,32,157,32,63,147,187,32,63,3,218,32,63,112,248,32,63,218,22,33,63,65,53,33,63,165,83,33,63,6,114,33,63,100,144,33,63,191,174,33,63,23,205,33,63,108,235,33,63,190,9,34,63,13,40,34,63,89,70,34,63,162,100,34,63,232,130,34,63,43,161,34,63,107,191,34,63,167,221,34,63,225,251,34,63,24,26,35,63,75,56,35,63,123,86,35,63,168,116,35,63,211,146,35,63,249,176,35,63,29,207,35,63,62,237,35,63,91,11,36,63,118,41,36,63,141,71,36,63,161,101,36,63,177,131,36,63,191,161,36,63,201,191,36,63,208,221,36,63,212,251,36,63,213,25,37,63,210,55,37,63,204,85,37,63,195,115,37,63,183,145,37,63,167,175,37,63,148,205,37,63,126,235,37,63,101,9,38,63,72,39,38,63,40,69,38,63,4,99,38,63,221,128,38,63,179,158,38,63,134,188,38,63,85,218,38,63,33,248,38,63,233,21,39,63,174,51,39,63,112,81,39,63,46,111,39,63,233,140,39,63,160,170,39,63,84,200,39,63,4,230,39,63,178,3,40,63,91,33,40,63,1,63,40,63,164,92,40,63,67,122,40,63,223,151,40,63,120,181,40,63,12,211,40,63,158,240,40,63,43,14,41,63,182,43,41,63,60,73,41,63,192,102,41,63,63,132,41,63,187,161,41,63,52,191,41,63,169,220,41,63,26,250,41,63,136,23,42,63,242,52,42,63,89,82,42,63,188,111,42,63,28,141,42,63,119,170,42,63,208,199,42,63,36,229,42,63,117,2,43,63,194,31,43,63,12,61,43,63,82,90,43,63,148,119,43,63,211,148,43,63,14,178,43,63,69,207,43,63,120,236,43,63,168,9,44,63,212,38,44,63,252,67,44,63,33,97,44,63,66,126,44,63,95,155,44,63,120,184,44,63,142,213,44,63,159,242,44,63,173,15,45,63,184,44,45,63,190,73,45,63,193,102,45,63,191,131,45,63,186,160,45,63,177,189,45,63,165,218,45,63,148,247,45,63,128,20,46,63,103,49,46,63,75,78,46,63,43,107,46,63,7,136,46,63,224,164,46,63,180,193,46,63,132,222,46,63,81,251,46,63,26,24,47,63,222,52,47,63,159,81,47,63,92,110,47,63,21,139,47,63,202,167,47,63,123,196,47,63,40,225,47,63,209,253,47,63,118,26,48,63,23,55,48,63,180,83,48,63,77,112,48,63,226,140,48,63,115,169,48,63,0,198,48,63,137,226,48,63,14,255,48,63,142,27,49,63,11,56,49,63,132,84,49,63,248,112,49,63,105,141,49,63,214,169,49,63,62,198,49,63,162,226,49,63,2,255,49,63,95,27,50,63,182,55,50,63,10,84,50,63,90,112,50,63,166,140,50,63,237,168,50,63,48,197,50,63,111,225,50,63,170,253,50,63,225,25,51,63,19,54,51,63,66,82,51,63,108,110,51,63,146,138,51,63,180,166,51,63,209,194,51,63,234,222,51,63,0,251,51,63,16,23,52,63,29,51,52,63,37,79,52,63,41,107,52,63,41,135,52,63,37,163,52,63,28,191,52,63,15,219,52,63,253,246,52,63,232,18,53,63,206,46,53,63,176,74,53,63,141,102,53,63,102,130,53,63,59,158,53,63,11,186,53,63,215,213,53,63,159,241,53,63,98,13,54,63,33,41,54,63,220,68,54,63,146,96,54,63,68,124,54,63,241,151,54,63,154,179,54,63,63,207,54,63,223,234,54,63,123,6,55,63,18,34,55,63,165,61,55,63,52,89,55,63,190,116,55,63,67,144,55,63,196,171,55,63,65,199,55,63,185,226,55,63,45,254,55,63,156,25,56,63,7,53,56,63,109,80,56,63,207,107,56,63,44,135,56,63,133,162,56,63,217,189,56,63,40,217,56,63,115,244,56,63,186,15,57,63,252,42,57,63,57,70,57,63,114,97,57,63,166,124,57,63,214,151,57,63,1,179,57,63,40,206,57,63,74,233,57,63,103,4,58,63,128,31,58,63,148,58,58,63,163,85,58,63,174,112,58,63,180,139,58,63,182,166,58,63,179,193,58,63,171,220,58,63,159,247,58,63,142,18,59,63,120,45,59,63,94,72,59,63,63,99,59,63,27,126,59,63,243,152,59,63,197,179,59,63,148,206,59,63,93,233,59,63,34,4,60,63,226,30,60,63,157,57,60,63,84,84,60,63,5,111,60,63,178,137,60,63,91,164,60,63,254,190,60,63,157,217,60,63,55,244,60,63,204,14,61,63,93,41,61,63,232,67,61,63,111,94,61,63,241,120,61,63,110,147,61,63,231,173,61,63,91,200,61,63,201,226,61,63,51,253,61,63,152,23,62,63,249,49,62,63,84,76,62,63,171,102,62,63,252,128,62,63,73,155,62,63,145,181,62,63,212,207,62,63,19,234,62,63,76,4,63,63,128,30,63,63,176,56,63,63,219,82,63,63,0,109,63,63,33,135,63,63,61,161,63,63,84,187,63,63,102,213,63,63,115,239,63,63,123,9,64,63,127,35,64,63,125,61,64,63,118,87,64,63,106,113,64,63,90,139,64,63,68,165,64,63,42,191,64,63,10,217,64,63,229,242,64,63,188,12,65,63,141,38,65,63,90,64,65,63,33,90,65,63,228,115,65,63,161,141,65,63,89,167,65,63,13,193,65,63,187,218,65,63,100,244,65,63,8,14,66,63,167,39,66,63,65,65,66,63,214,90,66,63,102,116,66,63,241,141,66,63,119,167,66,63,248,192,66,63,115,218,66,63,234,243,66,63,91,13,67,63,199,38,67,63,47,64,67,63,145,89,67,63,238,114,67,63,69,140,67,63,152,165,67,63,230,190,67,63,46,216,67,63,113,241,67,63,175,10,68,63,232,35,68,63,28,61,68,63,75,86,68,63,116,111,68,63,153,136,68,63,184,161,68,63,210,186,68,63,230,211,68,63,246,236,68,63,0,6,69,63,5,31,69,63,5,56,69,63,0,81,69,63,245,105,69,63,230,130,69,63,209,155,69,63,182,180,69,63,151,205,69,63,114,230,69,63,72,255,69,63,25,24,70,63,229,48,70,63,171,73,70,63,108,98,70,63,40,123,70,63,222,147,70,63,143,172,70,63,59,197,70,63,226,221,70,63,131,246,70,63,31,15,71,63,182,39,71,63,71,64,71,63,211,88,71,63,90,113,71,63,220,137,71,63,88,162,71,63,207,186,71,63,64,211,71,63,172,235,71,63,19,4,72,63,116,28,72,63,209,52,72,63,39,77,72,63,121,101,72,63,197,125,72,63,11,150,72,63,77,174,72,63,137,198,72,63,191,222,72,63,240,246,72,63,28,15,73,63,66,39,73,63,99,63,73,63,127,87,73,63,149,111,73,63,166,135,73,63,177,159,73,63,183,183,73,63,183,207,73,63,178,231,73,63,168,255,73,63,152,23,74,63,131,47,74,63,104,71,74,63,72,95,74,63,34,119,74,63,247,142,74,63,199,166,74,63,145,190,74,63,85,214,74,63,20,238,74,63,206,5,75,63,130,29,75,63,49,53,75,63,218,76,75,63,126,100,75,63,28,124,75,63,181,147,75,63,72,171,75,63,213,194,75,63,93,218,75,63,224,241,75,63,93,9,76,63,213,32,76,63,71,56,76,63,179,79,76,63,26,103,76,63,124,126,76,63,216,149,76,63,46,173,76,63,127,196,76,63,202,219,76,63,16,243,76,63,80,10,77,63,139,33,77,63,192,56,77,63,240,79,77,63,26,103,77,63,62,126,77,63,93,149,77,63,118,172,77,63,137,195,77,63,151,218,77,63,160,241,77,63,163,8,78,63,160,31,78,63,151,54,78,63,137,77,78,63,118,100,78,63,93,123,78,63,62,146,78,63,25,169,78,63,239,191,78,63,192,214,78,63,138,237,78,63,79,4,79,63,15,27,79,63,201,49,79,63,125,72,79,63,43,95,79,63,212,117,79,63,119,140,79,63,21,163,79,63,172,185,79,63,63,208,79,63,203,230,79,63,82,253,79,63,211,19,80,63,79,42,80,63,197,64,80,63,53,87,80,63,159,109,80,63,4,132,80,63,99,154,80,63,189,176,80,63,16,199,80,63,94,221,80,63,167,243,80,63,233,9,81,63,38,32,81,63,93,54,81,63,143,76,81,63,187,98,81,63,225,120,81,63,1,143,81,63,28,165,81,63,48,187,81,63,64,209,81,63,73,231,81,63,77,253,81,63,75,19,82,63,67,41,82,63,53,63,82,63,34,85,82,63,9,107,82,63,234,128,82,63,198,150,82,63,155,172,82,63,107,194,82,63,53,216,82,63,250,237,82,63,185,3,83,63,113,25,83,63,37,47,83,63,210,68,83,63,121,90,83,63,27,112,83,63,183,133,83,63,77,155,83,63,222,176,83,63,104,198,83,63,237,219,83,63,108,241,83,63,230,6,84,63,89,28,84,63,199,49,84,63,46,71,84,63,145,92,84,63,237,113,84,63,67,135,84,63,148,156,84,63,223,177,84,63,35,199,84,63,99,220,84,63,156,241,84,63,207,6,85,63,253,27,85,63,37,49,85,63,71,70,85,63,99,91,85,63,121,112,85,63,138,133,85,63,149,154,85,63,153,175,85,63,152,196,85,63,146,217,85,63,133,238,85,63,114,3,86,63,90,24,86,63,60,45,86,63,24,66,86,63,238,86,86,63,190,107,86,63,136,128,86,63,76,149,86,63,11,170,86,63,196,190,86,63,118,211,86,63,35,232,86,63,203,252,86,63,108,17,87,63,7,38,87,63,156,58,87,63,44,79,87,63,182,99,87,63,58,120,87,63,183,140,87,63,47,161,87,63,162,181,87,63,14,202,87,63,116,222,87,63,213,242,87,63,47,7,88,63,132,27,88,63,211,47,88,63,28,68,88,63,95,88,88,63,156,108,88,63,211,128,88,63,4,149,88,63,47,169,88,63,85,189,88,63,116,209,88,63,142,229,88,63,162,249,88,63,175,13,89,63,183,33,89,63,185,53,89,63,181,73,89,63,171,93,89,63,155,113,89,63,134,133,89,63,106,153,89,63,72,173,89,63,33,193,89,63,243,212,89,63,192,232,89,63,135,252,89,63,71,16,90,63,2,36,90,63,183,55,90,63,102,75,90,63,15,95,90,63,178,114,90,63,79,134,90,63,230,153,90,63,119,173,90,63,3,193,90,63,136,212,90,63,7,232,90,63,129,251,90,63,244,14,91,63,98,34,91,63,201,53,91,63,43,73,91,63,135,92,91,63,220,111,91,63,44,131,91,63,118,150,91,63,186,169,91,63,248,188,91,63,47,208,91,63,97,227,91,63,141,246,91,63,179,9,92,63,212,28,92,63,238,47,92,63,2,67,92,63,16,86,92,63,24,105,92,63,26,124,92,63,23,143,92,63,13,162,92,63,253,180,92,63,232,199,92,63,204,218,92,63,171,237,92,63,131,0,93,63,86,19,93,63,34,38,93,63,233,56,93,63,169,75,93,63,100,94,93,63,24,113,93,63,199,131,93,63,112,150,93,63,18,169,93,63,175,187,93,63,70,206,93,63,215,224,93,63,97,243,93,63,230,5,94,63,101,24,94,63,222,42,94,63,81,61,94,63,190,79,94,63,36,98,94,63,133,116,94,63,224,134,94,63,53,153,94,63,132,171,94,63,205,189,94,63,16,208,94,63,77,226,94,63,132,244,94,63,181,6,95,63,224,24,95,63,5,43,95,63,36,61,95,63,61,79,95,63,80,97,95,63,93,115,95,63,101,133,95,63,102,151,95,63,97,169,95,63,86,187,95,63,69,205,95,63,46,223,95,63,18,241,95,63,239,2,96,63,198,20,96,63,151,38,96,63,98,56,96,63,40,74,96,63,231,91,96,63,160,109,96,63,84,127,96,63,1,145,96,63,168,162,96,63,73,180,96,63,229,197,96,63,122,215,96,63,10,233,96,63,147,250,96,63,22,12,97,63,148,29,97,63,11,47,97,63,125,64,97,63,232,81,97,63,77,99,97,63,173,116,97,63,6,134,97,63,90,151,97,63,167,168,97,63,239,185,97,63,48,203,97,63,108,220,97,63,162,237,97,63,209,254,97,63,251,15,98,63,30,33,98,63,60,50,98,63,84,67,98,63,101,84,98,63,113,101,98,63,119,118,98,63,119,135,98,63,112,152,98,63,100,169,98,63,82,186,98,63,58,203,98,63,28,220,98,63,247,236,98,63,205,253,98,63,157,14,99,63,103,31,99,63,43,48,99,63,233,64,99,63,161,81,99,63,83,98,99,63,255,114,99,63,165,131,99,63,69,148,99,63,224,164,99,63,116,181,99,63,2,198,99,63,138,214,99,63,13,231,99,63,137,247,99,63,255,7,100,63,112,24,100,63,218,40,100,63,62,57,100,63,157,73,100,63,246,89,100,63,72,106,100,63,149,122,100,63,219,138,100,63,28,155,100,63,87,171,100,63,140,187,100,63,186,203,100,63,227,219,100,63,6,236,100,63,35,252,100,63,58,12,101,63,75,28,101,63,86,44,101,63,91,60,101,63,91,76,101,63,84,92,101,63,71,108,101,63,53,124,101,63,28,140,101,63,254,155,101,63,217,171,101,63,175,187,101,63,126,203,101,63,72,219,101,63,12,235,101,63,202,250,101,63,130,10,102,63,52,26,102,63,224,41,102,63,134,57,102,63,38,73,102,63,193,88,102,63,85,104,102,63,227,119,102,63,108,135,102,63,238,150,102,63,107,166,102,63,226,181,102,63,83,197,102,63,190,212,102,63,35,228,102,63,130,243,102,63,219,2,103,63,46,18,103,63,124,33,103,63,195,48,103,63,5,64,103,63,64,79,103,63,118,94,103,63,166,109,103,63,208,124,103,63,244,139,103,63,18,155,103,63,42,170,103,63,61,185,103,63,73,200,103,63,80,215,103,63,80,230,103,63,75,245,103,63,64,4,104,63,47,19,104,63,24,34,104,63,251,48,104,63,217,63,104,63,176,78,104,63,130,93,104,63,78,108,104,63,20,123,104,63,212,137,104,63,142,152,104,63,66,167,104,63,240,181,104,63,153,196,104,63,60,211,104,63,217,225,104,63,112,240,104,63,1,255,104,63,140,13,105,63,17,28,105,63,145,42,105,63,11,57,105,63,127,71,105,63,237,85,105,63,85,100,105,63,183,114,105,63,20,129,105,63,106,143,105,63,187,157,105,63,6,172,105,63,75,186,105,63,139,200,105,63,196,214,105,63,248,228,105,63,38,243,105,63,78,1,106,63,112,15,106,63,141,29,106,63,163,43,106,63,180,57,106,63,191,71,106,63,196,85,106,63,196,99,106,63,189,113,106,63,177,127,106,63,159,141,106,63,135,155,106,63,106,169,106,63,70,183,106,63,29,197,106,63,238,210,106,63,186,224,106,63,127,238,106,63,63,252,106,63,249,9,107,63,173,23,107,63,91,37,107,63,4,51,107,63,167,64,107,63,68,78,107,63,219,91,107,63,109,105,107,63,249,118,107,63,127,132,107,63,255,145,107,63,122,159,107,63,238,172,107,63,94,186,107,63,199,199,107,63,42,213,107,63,136,226,107,63,224,239,107,63,51,253,107,63,128,10,108,63,198,23,108,63,8,37,108,63,67,50,108,63,121,63,108,63,169,76,108,63,211,89,108,63,248,102,108,63,23,116,108,63,48,129,108,63,68,142,108,63,82,155,108,63,90,168,108,63,92,181,108,63,89,194,108,63,80,207,108,63,65,220,108,63,45,233,108,63,19,246,108,63,243,2,109,63,206,15,109,63,163,28,109,63,114,41,109,63,60,54,109,63,0,67,109,63,190,79,109,63,119,92,109,63,42,105,109,63,215,117,109,63,127,130,109,63,33,143,109,63,189,155,109,63,84,168,109,63,229,180,109,63,113,193,109,63,247,205,109,63,119,218,109,63,242,230,109,63,103,243,109,63,214,255,109,63,64,12,110,63,164,24,110,63,3,37,110,63,91,49,110,63,175,61,110,63,253,73,110,63,69,86,110,63,135,98,110,63,196,110,110,63,252,122,110,63,45,135,110,63,90,147,110,63,128,159,110,63,161,171,110,63,189,183,110,63,211,195,110,63,227,207,110,63,238,219,110,63,243,231,110,63,243,243,110,63,237,255,110,63,226,11,111,63,209,23,111,63,186,35,111,63,158,47,111,63,125,59,111,63,85,71,111,63,41,83,111,63,247,94,111,63,191,106,111,63,130,118,111,63,63,130,111,63,247,141,111,63,169,153,111,63,86,165,111,63,253,176,111,63,159,188,111,63,59,200,111,63,210,211,111,63,99,223,111,63,239,234,111,63,117,246,111,63,246,1,112,63,114,13,112,63,231,24,112,63,88,36,112,63,195,47,112,63,40,59,112,63,137,70,112,63,227,81,112,63,56,93,112,63,136,104,112,63,210,115,112,63,23,127,112,63,87,138,112,63,145,149,112,63,197,160,112,63,244,171,112,63,30,183,112,63,66,194,112,63,97,205,112,63,123,216,112,63,143,227,112,63,157,238,112,63,167,249,112,63,171,4,113,63,169,15,113,63,162,26,113,63,150,37,113,63,132,48,113,63,109,59,113,63,81,70,113,63,47,81,113,63,8,92,113,63,219,102,113,63,170,113,113,63,114,124,113,63,54,135,113,63,244,145,113,63,173,156,113,63,96,167,113,63,14,178,113,63,183,188,113,63,91,199,113,63,249,209,113,63,146,220,113,63,37,231,113,63,179,241,113,63,60,252,113,63,192,6,114,63,62,17,114,63,183,27,114,63,43,38,114,63,154,48,114,63,3,59,114,63,103,69,114,63,197,79,114,63,31,90,114,63,115,100,114,63,194,110,114,63,11,121,114,63,79,131,114,63,143,141,114,63,200,151,114,63,253,161,114,63,44,172,114,63,87,182,114,63,123,192,114,63,155,202,114,63,182,212,114,63,203,222,114,63,219,232,114,63,230,242,114,63,235,252,114,63,236,6,115,63,231,16,115,63,221,26,115,63,206,36,115,63,186,46,115,63,160,56,115,63,130,66,115,63,94,76,115,63,53,86,115,63,7,96,115,63,212,105,115,63,155,115,115,63,94,125,115,63,27,135,115,63,211,144,115,63,134,154,115,63,52,164,115,63,221,173,115,63,128,183,115,63,31,193,115,63,184,202,115,63,77,212,115,63,220,221,115,63,102,231,115,63,235,240,115,63,107,250,115,63,230,3,116,63,92,13,116,63,204,22,116,63,56,32,116,63,159,41,116,63,0,51,116,63,93,60,116,63,180,69,116,63,6,79,116,63,84,88,116,63,156,97,116,63,223,106,116,63,29,116,116,63,87,125,116,63,139,134,116,63,186,143,116,63,228,152,116,63,9,162,116,63,41,171,116,63,68,180,116,63,91,189,116,63,108,198,116,63,120,207,116,63,127,216,116,63,129,225,116,63,127,234,116,63,119,243,116,63,106,252,116,63,89,5,117,63,66,14,117,63,38,23,117,63,6,32,117,63,225,40,117,63,182,49,117,63,135,58,117,63,83,67,117,63,26,76,117,63,220,84,117,63,153,93,117,63,81,102,117,63,4,111,117,63,179,119,117,63,92,128,117,63,1,137,117,63,160,145,117,63,59,154,117,63,209,162,117,63,98,171,117,63,239,179,117,63,118,188,117,63,249,196,117,63,118,205,117,63,239,213,117,63,99,222,117,63,210,230,117,63,61,239,117,63,162,247,117,63,3,0,118,63,95,8,118,63,182,16,118,63,8,25,118,63,86,33,118,63,159,41,118,63,227,49,118,63,34,58,118,63,92,66,118,63,146,74,118,63,195,82,118,63,239,90,118,63,22,99,118,63,57,107,118,63,86,115,118,63,112,123,118,63,132,131,118,63,148,139,118,63,158,147,118,63,165,155,118,63,166,163,118,63,163,171,118,63,155,179,118,63,142,187,118,63,125,195,118,63,103,203,118,63,76,211,118,63,45,219,118,63,9,227,118,63,224,234,118,63,178,242,118,63,128,250,118,63,74,2,119,63,14,10,119,63,206,17,119,63,137,25,119,63,64,33,119,63,242,40,119,63,160,48,119,63,72,56,119,63,237,63,119,63,140,71,119,63,39,79,119,63,190,86,119,63,79,94,119,63,220,101,119,63,101,109,119,63,233,116,119,63,105,124,119,63,228,131,119,63,90,139,119,63,204,146,119,63,57,154,119,63,162,161,119,63,6,169,119,63,101,176,119,63,192,183,119,63,23,191,119,63,105,198,119,63,182,205,119,63,255,212,119,63,68,220,119,63,132,227,119,63,191,234,119,63,246,241,119,63,41,249,119,63,87,0,120,63,129,7,120,63,166,14,120,63,198,21,120,63,227,28,120,63,250,35,120,63,14,43,120,63,28,50,120,63,39,57,120,63,45,64,120,63,46,71,120,63,44,78,120,63,36,85,120,63,25,92,120,63,9,99,120,63,244,105,120,63,219,112,120,63,190,119,120,63,156,126,120,63,118,133,120,63,76,140,120,63,29,147,120,63,234,153,120,63,179,160,120,63,119,167,120,63,55,174,120,63,242,180,120,63,169,187,120,63,92,194,120,63,11,201,120,63,181,207,120,63,91,214,120,63,252,220,120,63,154,227,120,63,51,234,120,63,199,240,120,63,88,247,120,63,228,253,120,63,108,4,121,63,240,10,121,63,111,17,121,63,234,23,121,63,97,30,121,63,211,36,121,63,66,43,121,63,172,49,121,63,18,56,121,63,116,62,121,63,209,68,121,63,42,75,121,63,127,81,121,63,208,87,121,63,29,94,121,63,101,100,121,63,170,106,121,63,234,112,121,63,38,119,121,63,93,125,121,63,145,131,121,63,193,137,121,63,236,143,121,63,19,150,121,63,54,156,121,63,85,162,121,63,112,168,121,63,134,174,121,63,153,180,121,63,167,186,121,63,178,192,121,63,184,198,121,63,186,204,121,63,184,210,121,63,178,216,121,63,168,222,121,63,154,228,121,63,135,234,121,63,113,240,121,63,87,246,121,63,56,252,121,63,22,2,122,63,239,7,122,63,197,13,122,63,150,19,122,63,100,25,122,63,45,31,122,63,243,36,122,63,180,42,122,63,113,48,122,63,43,54,122,63,224,59,122,63,146,65,122,63,63,71,122,63,233,76,122,63,142,82,122,63,48,88,122,63,206,93,122,63,103,99,122,63,253,104,122,63,143,110,122,63,29,116,122,63,167,121,122,63,45,127,122,63,175,132,122,63,45,138,122,63,168,143,122,63,30,149,122,63,145,154,122,63,255,159,122,63,106,165,122,63,209,170,122,63,52,176,122,63,147,181,122,63,239,186,122,63,70,192,122,63,154,197,122,63,234,202,122,63,54,208,122,63,126,213,122,63,194,218,122,63,3,224,122,63,64,229,122,63,121,234,122,63,174,239,122,63,223,244,122,63,13,250,122,63,55,255,122,63,93,4,123,63,127,9,123,63,157,14,123,63,184,19,123,63,207,24,123,63,227,29,123,63,242,34,123,63,254,39,123,63,6,45,123,63,10,50,123,63,11,55,123,63,8,60,123,63,1,65,123,63,247,69,123,63,233,74,123,63,215,79,123,63,193,84,123,63,168,89,123,63,139,94,123,63,107,99,123,63,71,104,123,63,31,109,123,63,243,113,123,63,196,118,123,63,146,123,123,63,91,128,123,63,33,133,123,63,228,137,123,63,163,142,123,63,94,147,123,63,22,152,123,63,202,156,123,63,122,161,123,63,39,166,123,63,208,170,123,63,118,175,123,63,24,180,123,63,183,184,123,63,82,189,123,63,233,193,123,63,125,198,123,63,14,203,123,63,155,207,123,63,36,212,123,63,170,216,123,63,45,221,123,63,172,225,123,63,39,230,123,63,159,234,123,63,19,239,123,63,132,243,123,63,242,247,123,63,92,252,123,63,195,0,124,63,38,5,124,63,133,9,124,63,226,13,124,63,58,18,124,63,144,22,124,63,226,26,124,63,48,31,124,63,123,35,124,63,195,39,124,63,7,44,124,63,72,48,124,63,134,52,124,63,192,56,124,63,247,60,124,63,42,65,124,63,90,69,124,63,135,73,124,63,176,77,124,63,214,81,124,63,249,85,124,63,24,90,124,63,52,94,124,63,77,98,124,63,98,102,124,63,116,106,124,63,131,110,124,63,142,114,124,63,150,118,124,63,155,122,124,63,157,126,124,63,155,130,124,63,150,134,124,63,142,138,124,63,130,142,124,63,116,146,124,63,98,150,124,63,77,154,124,63,52,158,124,63,24,162,124,63,249,165,124,63,215,169,124,63,178,173,124,63,137,177,124,63,94,181,124,63,47,185,124,63,253,188,124,63,199,192,124,63,143,196,124,63,83,200,124,63,20,204,124,63,211,207,124,63,141,211,124,63,69,215,124,63,250,218,124,63,171,222,124,63,90,226,124,63,5,230,124,63,173,233,124,63,82,237,124,63,244,240,124,63,147,244,124,63,46,248,124,63,199,251,124,63,93,255,124,63,239,2,125,63,127,6,125,63,11,10,125,63,148,13,125,63,27,17,125,63,158,20,125,63,30,24,125,63,155,27,125,63,21,31,125,63,140,34,125,63,0,38,125,63,114,41,125,63,224,44,125,63,75,48,125,63,179,51,125,63,24,55,125,63,122,58,125,63,217,61,125,63,54,65,125,63,143,68,125,63,229,71,125,63,56,75,125,63,137,78,125,63,214,81,125,63,33,85,125,63,104,88,125,63,173,91,125,63,239,94,125,63,46,98,125,63,106,101,125,63,163,104,125,63,217,107,125,63,12,111,125,63,61,114,125,63,106,117,125,63,149,120,125,63,189,123,125,63,226,126,125,63,4,130,125,63,36,133,125,63,64,136,125,63,90,139,125,63,112,142,125,63,133,145,125,63,150,148,125,63,164,151,125,63,176,154,125,63,185,157,125,63,191,160,125,63,194,163,125,63,194,166,125,63,192,169,125,63,187,172,125,63,179,175,125,63,168,178,125,63,155,181,125,63,139,184,125,63,120,187,125,63,99,190,125,63,74,193,125,63,48,196,125,63,18,199,125,63,241,201,125,63,206,204,125,63,169,207,125,63,128,210,125,63,85,213,125,63,39,216,125,63,247,218,125,63,196,221,125,63,142,224,125,63,85,227,125,63,26,230,125,63,220,232,125,63,156,235,125,63,89,238,125,63,19,241,125,63,203,243,125,63,128,246,125,63,51,249,125,63,227,251,125,63,144,254,125,63,59,1,126,63,227,3,126,63,137,6,126,63,44,9,126,63,204,11,126,63,106,14,126,63,6,17,126,63,158,19,126,63,53,22,126,63,200,24,126,63,90,27,126,63,232,29,126,63,116,32,126,63,254,34,126,63,133,37,126,63,10,40,126,63,140,42,126,63,12,45,126,63,137,47,126,63,4,50,126,63,124,52,126,63,242,54,126,63,101,57,126,63,214,59,126,63,68,62,126,63,176,64,126,63,26,67,126,63,129,69,126,63,230,71,126,63,72,74,126,63,168,76,126,63,5,79,126,63,96,81,126,63,185,83,126,63,15,86,126,63,99,88,126,63,181,90,126,63,4,93,126,63,81,95,126,63,155,97,126,63,227,99,126,63,41,102,126,63,108,104,126,63,173,106,126,63,236,108,126,63,40,111,126,63,98,113,126,63,154,115,126,63,208,117,126,63,3,120,126,63,51,122,126,63,98,124,126,63,142,126,126,63,184,128,126,63,224,130,126,63,5,133,126,63,40,135,126,63,73,137,126,63,104,139,126,63,132,141,126,63,159,143,126,63,183,145,126,63,204,147,126,63,224,149,126,63,241,151,126,63,0,154,126,63,13,156,126,63,24,158,126,63,32,160,126,63,38,162,126,63,42,164,126,63,44,166,126,63,44,168,126,63,41,170,126,63,37,172,126,63,30,174,126,63,21,176,126,63,10,178,126,63,253,179,126,63,238,181,126,63,220,183,126,63,201,185,126,63,179,187,126,63,155,189,126,63,129,191,126,63,101,193,126,63,71,195,126,63,39,197,126,63,5,199,126,63,224,200,126,63,186,202,126,63,145,204,126,63,103,206,126,63,58,208,126,63,12,210,126,63,219,211,126,63,168,213,126,63,115,215,126,63,61,217,126,63,4,219,126,63,201,220,126,63,140,222,126,63,77,224,126,63,12,226,126,63,202,227,126,63,133,229,126,63,62,231,126,63,245,232,126,63,170,234,126,63,94,236,126,63,15,238,126,63,190,239,126,63,108,241,126,63,23,243,126,63,193,244,126,63,104,246,126,63,14,248,126,63,178,249,126,63,84,251,126,63,243,252,126,63,145,254,126,63,46,0,127,63,200,1,127,63,96,3,127,63,247,4,127,63,139,6,127,63,30,8,127,63,175,9,127,63,62,11,127,63,203,12,127,63,86,14,127,63,223,15,127,63,103,17,127,63,237,18,127,63,112,20,127,63,242,21,127,63,115,23,127,63,241,24,127,63,110,26,127,63,233,27,127,63,98,29,127,63,217,30,127,63,78,32,127,63,194,33,127,63,52,35,127,63,164,36,127,63,18,38,127,63,127,39,127,63,234,40,127,63,83,42,127,63,186,43,127,63,32,45,127,63,131,46,127,63,230,47,127,63,70,49,127,63,165,50,127,63,2,52,127,63,93,53,127,63,182,54,127,63,14,56,127,63,100,57,127,63,185,58,127,63,12,60,127,63,93,61,127,63,172,62,127,63,250,63,127,63,70,65,127,63,145,66,127,63,217,67,127,63,33,69,127,63,102,70,127,63,170,71,127,63,236,72,127,63,45,74,127,63,108,75,127,63,169,76,127,63,229,77,127,63,31,79,127,63,88,80,127,63,143,81,127,63,196,82,127,63,248,83,127,63,42,85,127,63,91,86,127,63,138,87,127,63,184,88,127,63,228,89,127,63,14,91,127,63,55,92,127,63,94,93,127,63,132,94,127,63,169,95,127,63,203,96,127,63,237,97,127,63,12,99,127,63,42,100,127,63,71,101,127,63,98,102,127,63,124,103,127,63,148,104,127,63,171,105,127,63,192,106,127,63,212,107,127,63,230,108,127,63,247,109,127,63,6,111,127,63,20,112,127,63,33,113,127,63,44,114,127,63,53,115,127,63,61,116,127,63,68,117,127,63,73,118,127,63,77,119,127,63,79,120,127,63,80,121,127,63,80,122,127,63,78,123,127,63,75,124,127,63,70,125,127,63,64,126,127,63,57,127,127,63,48,128,127,63,38,129,127,63,27,130,127,63,14,131,127,63,0,132,127,63,240,132,127,63,223,133,127,63,205,134,127,63,185,135,127,63,164,136,127,63,142,137,127,63,118,138,127,63,93,139,127,63,67,140,127,63,40,141,127,63,11,142,127,63,237,142,127,63,205,143,127,63,173,144,127,63,139,145,127,63,103,146,127,63,67,147,127,63,29,148,127,63,246,148,127,63,205,149,127,63,164,150,127,63,121,151,127,63,77,152,127,63,31,153,127,63,241,153,127,63,193,154,127,63,144,155,127,63,93,156,127,63,42,157,127,63,245,157,127,63,191,158,127,63,136,159,127,63,79,160,127,63,22,161,127,63,219,161,127,63,159,162,127,63,98,163,127,63,36,164,127,63,228,164,127,63,163,165,127,63,98,166,127,63,31,167,127,63,219,167,127,63,149,168,127,63,79,169,127,63,7,170,127,63,190,170,127,63,117,171,127,63,42,172,127,63,221,172,127,63,144,173,127,63,66,174,127,63,242,174,127,63,162,175,127,63,80,176,127,63,253,176,127,63,169,177,127,63,85,178,127,63,254,178,127,63,167,179,127,63,79,180,127,63,246,180,127,63,156,181,127,63,64,182,127,63,228,182,127,63,134,183,127,63,40,184,127,63,200,184,127,63,103,185,127,63,6,186,127,63,163,186,127,63,63,187,127,63,219,187,127,63,117,188,127,63,14,189,127,63,166,189,127,63,61,190,127,63,212,190,127,63,105,191,127,63,253,191,127,63,144,192,127,63,34,193,127,63,180,193,127,63,68,194,127,63,211,194,127,63,98,195,127,63,239,195,127,63,123,196,127,63,7,197,127,63,145,197,127,63,27,198,127,63,163,198,127,63,43,199,127,63,178,199,127,63,56,200,127,63,189,200,127,63,65,201,127,63,196,201,127,63,70,202,127,63,199,202,127,63,71,203,127,63,199,203,127,63,69,204,127,63,195,204,127,63,64,205,127,63,187,205,127,63,54,206,127,63,177,206,127,63,42,207,127,63,162,207,127,63,26,208,127,63,144,208,127,63,6,209,127,63,123,209,127,63,239,209,127,63,98,210,127,63,213,210,127,63,70,211,127,63,183,211,127,63,39,212,127,63,150,212,127,63,4,213,127,63,114,213,127,63],"i8",L3,x.GLOBAL_BASE+541176),d3([222,213,127,63,74,214,127,63,181,214,127,63,32,215,127,63,137,215,127,63,242,215,127,63,89,216,127,63,192,216,127,63,39,217,127,63,140,217,127,63,241,217,127,63,85,218,127,63,184,218,127,63,27,219,127,63,124,219,127,63,221,219,127,63,61,220,127,63,157,220,127,63,251,220,127,63,89,221,127,63,183,221,127,63,19,222,127,63,111,222,127,63,202,222,127,63,36,223,127,63,126,223,127,63,215,223,127,63,47,224,127,63,134,224,127,63,221,224,127,63,51,225,127,63,137,225,127,63,221,225,127,63,49,226,127,63,133,226,127,63,215,226,127,63,41,227,127,63,122,227,127,63,203,227,127,63,27,228,127,63,106,228,127,63,185,228,127,63,7,229,127,63,84,229,127,63,161,229,127,63,237,229,127,63,56,230,127,63,131,230,127,63,205,230,127,63,23,231,127,63,96,231,127,63,168,231,127,63,239,231,127,63,54,232,127,63,125,232,127,63,195,232,127,63,8,233,127,63,76,233,127,63,144,233,127,63,212,233,127,63,23,234,127,63,89,234,127,63,154,234,127,63,219,234,127,63,28,235,127,63,92,235,127,63,155,235,127,63,218,235,127,63,24,236,127,63,86,236,127,63,147,236,127,63,207,236,127,63,11,237,127,63,71,237,127,63,130,237,127,63,188,237,127,63,246,237,127,63,47,238,127,63,104,238,127,63,160,238,127,63,216,238,127,63,15,239,127,63,69,239,127,63,123,239,127,63,177,239,127,63,230,239,127,63,27,240,127,63,79,240,127,63,130,240,127,63,182,240,127,63,232,240,127,63,26,241,127,63,76,241,127,63,125,241,127,63,174,241,127,63,222,241,127,63,14,242,127,63,61,242,127,63,108,242,127,63,154,242,127,63,200,242,127,63,245,242,127,63,34,243,127,63,79,243,127,63,123,243,127,63,166,243,127,63,209,243,127,63,252,243,127,63,38,244,127,63,80,244,127,63,121,244,127,63,162,244,127,63,203,244,127,63,243,244,127,63,27,245,127,63,66,245,127,63,105,245,127,63,143,245,127,63,181,245,127,63,219,245,127,63,0,246,127,63,37,246,127,63,73,246,127,63,109,246,127,63,145,246,127,63,180,246,127,63,215,246,127,63,250,246,127,63,28,247,127,63,62,247,127,63,95,247,127,63,128,247,127,63,160,247,127,63,193,247,127,63,225,247,127,63,0,248,127,63,31,248,127,63,62,248,127,63,93,248,127,63,123,248,127,63,152,248,127,63,182,248,127,63,211,248,127,63,240,248,127,63,12,249,127,63,40,249,127,63,68,249,127,63,95,249,127,63,122,249,127,63,149,249,127,63,175,249,127,63,202,249,127,63,227,249,127,63,253,249,127,63,22,250,127,63,47,250,127,63,71,250,127,63,96,250,127,63,120,250,127,63,143,250,127,63,166,250,127,63,190,250,127,63,212,250,127,63,235,250,127,63,1,251,127,63,23,251,127,63,44,251,127,63,66,251,127,63,87,251,127,63,108,251,127,63,128,251,127,63,148,251,127,63,168,251,127,63,188,251,127,63,208,251,127,63,227,251,127,63,246,251,127,63,8,252,127,63,27,252,127,63,45,252,127,63,63,252,127,63,81,252,127,63,98,252,127,63,115,252,127,63,132,252,127,63,149,252,127,63,165,252,127,63,182,252,127,63,198,252,127,63,213,252,127,63,229,252,127,63,244,252,127,63,3,253,127,63,18,253,127,63,33,253,127,63,47,253,127,63,62,253,127,63,76,253,127,63,89,253,127,63,103,253,127,63,116,253,127,63,130,253,127,63,143,253,127,63,155,253,127,63,168,253,127,63,181,253,127,63,193,253,127,63,205,253,127,63,217,253,127,63,228,253,127,63,240,253,127,63,251,253,127,63,6,254,127,63,17,254,127,63,28,254,127,63,38,254,127,63,49,254,127,63,59,254,127,63,69,254,127,63,79,254,127,63,89,254,127,63,98,254,127,63,108,254,127,63,117,254,127,63,126,254,127,63,135,254,127,63,144,254,127,63,152,254,127,63,161,254,127,63,169,254,127,63,177,254,127,63,185,254,127,63,193,254,127,63,201,254,127,63,208,254,127,63,216,254,127,63,223,254,127,63,230,254,127,63,237,254,127,63,244,254,127,63,251,254,127,63,2,255,127,63,8,255,127,63,14,255,127,63,21,255,127,63,27,255,127,63,33,255,127,63,39,255,127,63,45,255,127,63,50,255,127,63,56,255,127,63,61,255,127,63,67,255,127,63,72,255,127,63,77,255,127,63,82,255,127,63,87,255,127,63,92,255,127,63,96,255,127,63,101,255,127,63,105,255,127,63,110,255,127,63,114,255,127,63,118,255,127,63,122,255,127,63,126,255,127,63,130,255,127,63,134,255,127,63,138,255,127,63,142,255,127,63,145,255,127,63,149,255,127,63,152,255,127,63,155,255,127,63,159,255,127,63,162,255,127,63,165,255,127,63,168,255,127,63,171,255,127,63,174,255,127,63,176,255,127,63,179,255,127,63,182,255,127,63,184,255,127,63,187,255,127,63,189,255,127,63,192,255,127,63,194,255,127,63,196,255,127,63,198,255,127,63,201,255,127,63,203,255,127,63,205,255,127,63,207,255,127,63,209,255,127,63,210,255,127,63,212,255,127,63,214,255,127,63,216,255,127,63,217,255,127,63,219,255,127,63,220,255,127,63,222,255,127,63,223,255,127,63,225,255,127,63,226,255,127,63,227,255,127,63,229,255,127,63,230,255,127,63,231,255,127,63,232,255,127,63,233,255,127,63,234,255,127,63,235,255,127,63,236,255,127,63,237,255,127,63,238,255,127,63,239,255,127,63,240,255,127,63,241,255,127,63,241,255,127,63,242,255,127,63,243,255,127,63,244,255,127,63,244,255,127,63,245,255,127,63,246,255,127,63,246,255,127,63,247,255,127,63,247,255,127,63,248,255,127,63,248,255,127,63,249,255,127,63,249,255,127,63,250,255,127,63,250,255,127,63,250,255,127,63,251,255,127,63,251,255,127,63,251,255,127,63,252,255,127,63,252,255,127,63,252,255,127,63,253,255,127,63,253,255,127,63,253,255,127,63,253,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,69,78,67,79,68,69,82,0,79,103,103,86,111,114,98,105,115,69,110,99,111,100,101,114,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"i8",L3,x.GLOBAL_BASE+551416);var p8=x.alignMemory(d3(12,"i8",RA),8);K4(p8%8==0);function qB(i){H9[p8]=H9[i],H9[p8+1]=H9[i+1],H9[p8+2]=H9[i+2],H9[p8+3]=H9[i+3]}function cr(i){H9[p8]=H9[i],H9[p8+1]=H9[i+1],H9[p8+2]=H9[i+2],H9[p8+3]=H9[i+3],H9[p8+4]=H9[i+4],H9[p8+5]=H9[i+5],H9[p8+6]=H9[i+6],H9[p8+7]=H9[i+7]}var qi=HB,Oo=Ua,NA=0;function UA(i){return D9[NA>>2]=i,i}var L2={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function $p(i){switch(i){case 30:return NB;case 85:return Nr/NB;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return typeof navigator=="object"&&navigator.hardwareConcurrency||1}return UA(L2.EINVAL),-1}o._memset=Wk;var ap=!0;o._strlen=Kk,o._strcat=Vk,o._bitshift64Shl=tv;function dk(){o.abort()}o._i64Add=zk;var Ek=Le,Ck={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"},_n={ttys:[],init:function(){},shutdown:function(){},register:function(i,a){_n.ttys[i]={input:[],output:[],ops:a},k.registerDevice(i,_n.stream_ops)},stream_ops:{open:function(i){var a=_n.ttys[i.node.rdev];if(!a)throw new k.ErrnoError(L2.ENODEV);i.tty=a,i.seekable=!1},close:function(i){i.tty.ops.flush(i.tty)},flush:function(i){i.tty.ops.flush(i.tty)},read:function(i,a,g,u,O){if(!i.tty||!i.tty.ops.get_char)throw new k.ErrnoError(L2.ENXIO);for(var e=0,Z0=0;Z00?a=u.slice(0,O).toString("utf-8"):a=null}else typeof window<"u"&&typeof window.prompt=="function"?(a=window.prompt("Input: "),a!==null&&(a+=` +`)});var b0=void 0,B0=void 0;o.read=function(a,g){a=B0.normalize(a);var u=b0.readFileSync(a);return!u&&a!=B0.resolve(a)&&(a=path.join(__dirname,"..","src",a),u=b0.readFileSync(a)),u&&!g&&(u=u.toString()),u},o.readBinary=function(a){return o.read(a,!0)},o.load=function(a){B1(read(a))},o.thisProgram||(process.argv.length>1?o.thisProgram=process.argv[1].replace(/\\/g,"/"):o.thisProgram="unknown-program"),o.arguments=process.argv.slice(2),typeof module<"u"&&o!=null,process.on("uncaughtException",function(i){if(!(i instanceof Po))throw i}),o.inspect=function(){return"[Emscripten Module object]"}}else if(I0)o.print||(o.print=print),typeof printErr<"u"&&(o.printErr=printErr),typeof read<"u"?o.read=read:o.read=function(){throw"no read() available (jsc?)"},o.readBinary=function(a){if(typeof readbuffer=="function")return new Uint8Array(readbuffer(a));var g=read(a,"binary");return J4(typeof g=="object"),g},typeof scriptArgs<"u"?o.arguments=scriptArgs:typeof arguments<"u"&&(o.arguments=arguments);else if(h||F){if(o.read=function(a){var g=new XMLHttpRequest;return g.open("GET",a,!1),g.send(null),g.responseText},typeof arguments<"u"&&(o.arguments=arguments),typeof console<"u")o.print||(o.print=function(a){console.log(a)}),o.printErr||(o.printErr=function(a){console.log(a)});else{var O0=!1;o.print||(o.print=O0&&typeof dump<"u"?function(i){dump(i)}:function(i){})}F&&(o.load=importScripts),typeof o.setWindowTitle>"u"&&(o.setWindowTitle=function(i){document.title=i})}else throw"Unknown runtime environment. Where are we?";function B1(i){eval.call(null,i)}!o.load&&o.read&&(o.load=function(a){B1(o.read(a))}),o.print||(o.print=function(){}),o.printErr||(o.printErr=o.print),o.arguments||(o.arguments=[]),o.thisProgram||(o.thisProgram="./this.program"),o.print=o.print,o.printErr=o.printErr,o.preRun=[],o.postRun=[];for(var l in r)r.hasOwnProperty(l)&&(o[l]=r[l]);var R={setTempRet0:function(i){F9=i},getTempRet0:function(){return F9},stackSave:function(){return Ei},stackRestore:function(i){Ei=i},getNativeTypeSize:function(i){switch(i){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(i[i.length-1]==="*")return R.QUANTUM_SIZE;if(i[0]==="i"){var a=parseInt(i.substr(1));return J4(a%8===0),a/8}else return 0}}},getNativeFieldSize:function(i){return Math.max(R.getNativeTypeSize(i),R.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(i,a){return a==="double"||a==="i64"?i&7&&(J4((i&7)===4),i+=4):J4((i&3)===0),i},getAlignSize:function(i,a,g){return!g&&(i=="i64"||i=="double")?8:i?Math.min(a||(i?R.getNativeFieldSize(i):0),R.QUANTUM_SIZE):Math.min(a,8)},dynCall:function(i,a,g){return g&&g.length?(g.splice||(g=Array.prototype.slice.call(g)),g.splice(0,0,a),o["dynCall_"+i].apply(null,g)):o["dynCall_"+i].call(null,a)},functionPointers:[],addFunction:function(i){for(var a=0;a=MA){var g=UB();if(!g)return bi=a,0}return a},alignMemory:function(i,a){var g=i=Math.ceil(i/(a||16))*(a||16);return g},makeBigInt:function(i,a,g){var u=g?+(i>>>0)+ +(a>>>0)*4294967296:+(i>>>0)+ +(a|0)*4294967296;return u},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};o.Runtime=R;var j0=0,K0=!1,F1=0,m2=0,b1,_5,v2,J2,n3,U5,$0,Y5,n6,c6,O6,g6,u4,Ke,_4,F9,bt,Mo,To,Jm,wa,Km,QC,fk,uk;function J4(i,a){i||OA("Assertion failed: "+a)}var Ik=this;function GB(i){var a=o["_"+i];if(!a)try{a=void("_"+i)}catch{}return J4(a,"Cannot call unknown function "+i+" (perhaps LLVM optimizations or closure removed it?)"),a}var ka,Go;(function(){var i={stackSave:function(){R.stackSave()},stackRestore:function(){R.stackRestore()},arrayToC:function(Z0){var t1=R.stackAlloc(Z0.length);return Uo(Z0,t1),t1},stringToC:function(Z0){var t1=0;return Z0!=null&&Z0!==0&&(t1=R.stackAlloc((Z0.length<<2)+1),GA(Z0,t1)),t1}},a={string:i.stringToC,array:i.arrayToC};Go=function(t1,b2,A,o1,B){var Q5=GB(t1),p2=[],M5=0;if(o1)for(var b9=0;b9>0]=a;break;case"i8":q9[i>>0]=a;break;case"i16":Tr[i>>1]=a;break;case"i32":D9[i>>2]=a;break;case"i64":Ke=[a>>>0,(g6=a,+Ua(g6)>=1?g6>0?(Rt(+Fe(g6/4294967296),4294967295)|0)>>>0:~~+d7((g6-+(~~g6>>>0))/4294967296)>>>0:0)],D9[i>>2]=Ke[0],D9[i+4>>2]=Ke[1];break;case"float":Pa[i>>2]=a;break;case"double":ba[i>>3]=a;break;default:OA("invalid type for setValue: "+g)}}o.setValue=Ih;function ar(i,a,g){switch(a=a||"i8",a.charAt(a.length-1)==="*"&&(a="i32"),a){case"i1":return q9[i>>0];case"i8":return q9[i>>0];case"i16":return Tr[i>>1];case"i32":return D9[i>>2];case"i64":return D9[i>>2];case"float":return Pa[i>>2];case"double":return ba[i>>3];default:OA("invalid type for setValue: "+a)}return null}o.getValue=ar;var No=0,yC=1,RA=2,dh=3,L3=4;o.ALLOC_NORMAL=No,o.ALLOC_STACK=yC,o.ALLOC_STATIC=RA,o.ALLOC_DYNAMIC=dh,o.ALLOC_NONE=L3;function d3(i,a,g,u){var O,e;typeof i=="number"?(O=!0,e=i):(O=!1,e=i.length);var Z0=typeof a=="string"?a:null,t1;if(g==L3?t1=u:t1=[wh,R.stackAlloc,R.staticAlloc,R.dynamicAlloc][g===void 0?RA:g](Math.max(e,Z0?1:a.length)),O){var u=t1,b2;for(J4((t1&3)==0),b2=t1+(e&-4);u>2]=0;for(b2=t1+e;u>0]=0;return t1}if(Z0==="i8")return i.subarray||i.slice?Ci.set(i,t1):Ci.set(new Uint8Array(i),t1),t1;for(var A=0,o1,B,Q5;A>0],g|=u,!(u==0&&!a||(O++,a&&O==a)););a||(a=O);var e="";if(g<128){for(var Z0=1024,t1;a>0;)t1=String.fromCharCode.apply(String,Ci.subarray(i,i+Math.min(a,Z0))),e=e?e+t1:t1,i+=Z0,a-=Z0;return e}return o.UTF8ToString(i)}o.Pointer_stringify=va;function Sa(i){for(var a="";;){var g=q9[i++>>0];if(!g)return a;a+=String.fromCharCode(g)}}o.AsciiToString=Sa;function zm(i,a){return Ga(i,a,!1)}o.stringToAscii=zm;function xA(i,a){for(var g,u,O,e,Z0,t1,b2="";;){if(g=i[a++],!g)return b2;if(!(g&128)){b2+=String.fromCharCode(g);continue}if(u=i[a++]&63,(g&224)==192){b2+=String.fromCharCode((g&31)<<6|u);continue}if(O=i[a++]&63,(g&240)==224?g=(g&15)<<12|u<<6|O:(e=i[a++]&63,(g&248)==240?g=(g&7)<<18|u<<12|O<<6|e:(Z0=i[a++]&63,(g&252)==248?g=(g&3)<<24|u<<18|O<<12|e<<6|Z0:(t1=i[a++]&63,g=(g&1)<<30|u<<24|O<<18|e<<12|Z0<<6|t1))),g<65536)b2+=String.fromCharCode(g);else{var A=g-65536;b2+=String.fromCharCode(55296|A>>10,56320|A&1023)}}}o.UTF8ArrayToString=xA;function wC(i){return xA(Ci,i)}o.UTF8ToString=wC;function Sn(i,a,g,u){if(!(u>0))return 0;for(var O=g,e=g+u-1,Z0=0;Z0=55296&&t1<=57343&&(t1=65536+((t1&1023)<<10)|i.charCodeAt(++Z0)&1023),t1<=127){if(g>=e)break;a[g++]=t1}else if(t1<=2047){if(g+1>=e)break;a[g++]=192|t1>>6,a[g++]=128|t1&63}else if(t1<=65535){if(g+2>=e)break;a[g++]=224|t1>>12,a[g++]=128|t1>>6&63,a[g++]=128|t1&63}else if(t1<=2097151){if(g+3>=e)break;a[g++]=240|t1>>18,a[g++]=128|t1>>12&63,a[g++]=128|t1>>6&63,a[g++]=128|t1&63}else if(t1<=67108863){if(g+4>=e)break;a[g++]=248|t1>>24,a[g++]=128|t1>>18&63,a[g++]=128|t1>>12&63,a[g++]=128|t1>>6&63,a[g++]=128|t1&63}else{if(g+5>=e)break;a[g++]=252|t1>>30,a[g++]=128|t1>>24&63,a[g++]=128|t1>>18&63,a[g++]=128|t1>>12&63,a[g++]=128|t1>>6&63,a[g++]=128|t1&63}}return a[g]=0,g-O}o.stringToUTF8Array=Sn;function kC(i,a,g){return Sn(i,Ci,a,g)}o.stringToUTF8=kC;function FA(i){for(var a=0,g=0;g=55296&&u<=57343&&(u=65536+((u&1023)<<10)|i.charCodeAt(++g)&1023),u<=127?++a:u<=2047?a+=2:u<=65535?a+=3:u<=2097151?a+=4:u<=67108863?a+=5:a+=6}return a}o.lengthBytesUTF8=FA;function vC(i){for(var a=0,g="";;){var u=Tr[i+a*2>>1];if(u==0)return g;++a,g+=String.fromCharCode(u)}}o.UTF16ToString=vC;function Zm(i,a,g){if(g===void 0&&(g=2147483647),g<2)return 0;g-=2;for(var u=a,O=g>1]=Z0,a+=2}return Tr[a>>1]=0,a-u}o.stringToUTF16=Zm;function Wm(i){return i.length*2}o.lengthBytesUTF16=Wm;function jm(i){for(var a=0,g="";;){var u=D9[i+a*4>>2];if(u==0)return g;if(++a,u>=65536){var O=u-65536;g+=String.fromCharCode(55296|O>>10,56320|O&1023)}else g+=String.fromCharCode(u)}}o.UTF32ToString=jm;function Xm(i,a,g){if(g===void 0&&(g=2147483647),g<4)return 0;for(var u=a,O=u+g-4,e=0;e=55296&&Z0<=57343){var t1=i.charCodeAt(++e);Z0=65536+((Z0&1023)<<10)|t1&1023}if(D9[a>>2]=Z0,a+=4,a+4>O)break}return D9[a>>2]=0,a-u}o.stringToUTF32=Xm;function ep(i){for(var a=0,g=0;g=55296&&u<=57343&&++g,a+=4}return a}o.lengthBytesUTF32=ep;function tp(i){var a=!!o.___cxa_demangle;if(a)try{var g=wh(i.length);GA(i.substr(1),g);var u=wh(4),O=o.___cxa_demangle(g,0,0,u);if(ar(u,"i32")===0&&O)return va(O)}catch{}finally{g&&YB(g),u&&YB(u),O&&YB(O)}var e=3,Z0={v:"void",b:"bool",c:"char",s:"short",i:"int",l:"long",f:"float",d:"double",w:"wchar_t",a:"signed char",h:"unsigned char",t:"unsigned short",j:"unsigned int",m:"unsigned long",x:"long long",y:"unsigned long long",z:"..."},t1=[],b2=!0;function A(p2){p2&&o.print(p2),o.print(i);for(var M5="",b9=0;b9"}else O9=K9;e:for(;e0;){var gr=i[e++];if(gr in Z0)I4.push(Z0[gr]);else switch(gr){case"P":I4.push(B(!0,1,!0)[0]+"*");break;case"R":I4.push(B(!0,1,!0)[0]+"&");break;case"L":{e++;var qa=i.indexOf("E",e),c8=qa-e;I4.push(i.substr(e,c8)),e+=c8+2;break}case"A":{var c8=parseInt(i.substr(e));if(e+=c8.toString().length,i[e]!=="_")throw"?";e++,I4.push(B(!0,1,!0)[0]+" ["+c8+"]");break}case"E":break e;default:O9+="?"+gr;break e}}return!b9&&I4.length===1&&I4[0]==="void"&&(I4=[]),p2?(O9&&I4.push(O9+"?"),I4):O9+Q8()}var Q5=i;try{if(i=="Object._main"||i=="_main")return"main()";if(typeof i=="number"&&(i=va(i)),i[0]!=="_"||i[1]!=="_"||i[2]!=="Z")return i;switch(i[3]){case"n":return"operator new()";case"d":return"operator delete()"}Q5=B()}catch{Q5+="?"}return Q5.indexOf("?")>=0&&!a&&R.warnOnce("warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),Q5}function ip(i){return i.replace(/__Z[\w\d_]+/g,function(a){var g=tp(a);return a===g?a:a+" ["+g+"]"})}function rp(){var i=new Error;if(!i.stack){try{throw new Error(0)}catch(a){i=a}if(!i.stack)return"(no stack trace available)"}return i.stack.toString()}function SC(){return ip(rp())}o.stackTrace=SC;var NB=4096;function Eh(i){return i%4096>0&&(i+=4096-i%4096),i}var DC,q9,Ci,Tr,Da,D9,Oa,Pa,ba,LA=0,Gr=0,_a=!1,Ch=0,Ei=0,Ra=0,xa=0,bi=0;function UB(){OA("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+MA+", (2) compile with ALLOW_MEMORY_GROWTH which adjusts the size at runtime but prevents some optimizations, or (3) set Module.TOTAL_MEMORY before the program runs.")}for(var bC=o.TOTAL_STACK||5242880,MA=o.TOTAL_MEMORY||16777216,Nr=64*1024;Nr0;){var a=i.shift();if(typeof a=="function"){a();continue}var g=a.func;typeof g=="number"?a.arg===void 0?R.dynCall("v",g):R.dynCall("vi",g,[a.arg]):g(a.arg===void 0?null:a.arg)}}var _C=[],La=[],Bh=[],Ma=[],mh=[],ph=!1,Dn=!1;function Qh(){if(o.preRun)for(typeof o.preRun=="function"&&(o.preRun=[o.preRun]);o.preRun.length;)_t(o.preRun.shift());Fa(_C)}function TA(){ph||(ph=!0,Fa(La))}function np(){Fa(Bh)}function RC(){Fa(Ma),Dn=!0}function Ta(){if(o.postRun)for(typeof o.postRun=="function"&&(o.postRun=[o.postRun]);o.postRun.length;)OB(o.postRun.shift());Fa(mh)}function _t(i){_C.unshift(i)}o.addOnPreRun=o.addOnPreRun=_t;function Ap(i){La.unshift(i)}o.addOnInit=o.addOnInit=Ap;function sp(i){Bh.unshift(i)}o.addOnPreMain=o.addOnPreMain=sp;function op(i){Ma.unshift(i)}o.addOnExit=o.addOnExit=op;function OB(i){mh.unshift(i)}o.addOnPostRun=o.addOnPostRun=OB;function Ur(i,a,g){var u=g>0?g:FA(i)+1,O=new Array(u),e=Sn(i,O,0,O.length);return a&&(O.length=e),O}o.intArrayFromString=Ur;function PB(i){for(var a=[],g=0;g255&&(u&=255),a.push(String.fromCharCode(u))}return a.join("")}o.intArrayToString=PB;function GA(i,a,g){for(var u=Ur(i,g),O=0;O>0]=e,O=O+1}}o.writeStringToMemory=GA;function Uo(i,a){for(var g=0;g>0]=i[g]}o.writeArrayToMemory=Uo;function Ga(i,a,g){for(var u=0;u>0]=i.charCodeAt(u);g||(q9[a>>0]=0)}o.writeAsciiToMemory=Ga;function xC(i,a,g){return i>=0?i:a<=32?2*Math.abs(1<=u&&(a<=32||i>u)&&(i=-2*u+i),i}(!Math.imul||Math.imul(4294967295,5)!==-5)&&(Math.imul=function(a,g){var u=a>>>16,O=a&65535,e=g>>>16,Z0=g&65535;return O*Z0+(u*Z0+O*e<<16)|0}),Math.imul=Math.imul,Math.clz32||(Math.clz32=function(i){i=i>>>0;for(var a=0;a<32;a++)if(i&1<<31-a)return a;return 32}),Math.clz32=Math.clz32;var Ua=Math.abs,HB=Math.cos,Hi=Math.sin,_0=Math.tan,X0=Math.acos,C1=Math.asin,D2=Math.atan,K3=Math.atan2,l9=Math.exp,Y9=Math.log,h6=Math.sqrt,d7=Math.ceil,Fe=Math.floor,Ve=Math.pow,ye=Math.imul,c9=Math.fround,Rt=Math.min,Ri=Math.clz32,E7=0,xt=null,xi=null;function Fi(i){return i}function bn(i){E7++,o.monitorRunDependencies&&o.monitorRunDependencies(E7)}o.addRunDependency=bn;function lr(i){if(E7--,o.monitorRunDependencies&&o.monitorRunDependencies(E7),E7==0&&(xt!==null&&(clearInterval(xt),xt=null),xi)){var a=xi;xi=null,a()}}o.removeRunDependency=lr,o.preloadedImages={},o.preloadedAudios={};var FC=null,yh=[];LA=8,Gr=LA+553552,La.push(),d3([0,0,0,0,1,0,0,0,3,0,0,0,7,0,0,0,15,0,0,0,31,0,0,0,63,0,0,0,127,0,0,0,255,0,0,0,255,1,0,0,255,3,0,0,255,7,0,0,255,15,0,0,255,31,0,0,255,63,0,0,255,127,0,0,255,255,0,0,255,255,1,0,255,255,3,0,255,255,7,0,255,255,15,0,255,255,31,0,255,255,63,0,255,255,127,0,255,255,255,0,255,255,255,1,255,255,255,3,255,255,255,7,255,255,255,15,255,255,255,31,255,255,255,63,255,255,255,127,255,255,255,255,0,0,0,0,0,0,0,0,183,29,193,4,110,59,130,9,217,38,67,13,220,118,4,19,107,107,197,23,178,77,134,26,5,80,71,30,184,237,8,38,15,240,201,34,214,214,138,47,97,203,75,43,100,155,12,53,211,134,205,49,10,160,142,60,189,189,79,56,112,219,17,76,199,198,208,72,30,224,147,69,169,253,82,65,172,173,21,95,27,176,212,91,194,150,151,86,117,139,86,82,200,54,25,106,127,43,216,110,166,13,155,99,17,16,90,103,20,64,29,121,163,93,220,125,122,123,159,112,205,102,94,116,224,182,35,152,87,171,226,156,142,141,161,145,57,144,96,149,60,192,39,139,139,221,230,143,82,251,165,130,229,230,100,134,88,91,43,190,239,70,234,186,54,96,169,183,129,125,104,179,132,45,47,173,51,48,238,169,234,22,173,164,93,11,108,160,144,109,50,212,39,112,243,208,254,86,176,221,73,75,113,217,76,27,54,199,251,6,247,195,34,32,180,206,149,61,117,202,40,128,58,242,159,157,251,246,70,187,184,251,241,166,121,255,244,246,62,225,67,235,255,229,154,205,188,232,45,208,125,236,119,112,134,52,192,109,71,48,25,75,4,61,174,86,197,57,171,6,130,39,28,27,67,35,197,61,0,46,114,32,193,42,207,157,142,18,120,128,79,22,161,166,12,27,22,187,205,31,19,235,138,1,164,246,75,5,125,208,8,8,202,205,201,12,7,171,151,120,176,182,86,124,105,144,21,113,222,141,212,117,219,221,147,107,108,192,82,111,181,230,17,98,2,251,208,102,191,70,159,94,8,91,94,90,209,125,29,87,102,96,220,83,99,48,155,77,212,45,90,73,13,11,25,68,186,22,216,64,151,198,165,172,32,219,100,168,249,253,39,165,78,224,230,161,75,176,161,191,252,173,96,187,37,139,35,182,146,150,226,178,47,43,173,138,152,54,108,142,65,16,47,131,246,13,238,135,243,93,169,153,68,64,104,157,157,102,43,144,42,123,234,148,231,29,180,224,80,0,117,228,137,38,54,233,62,59,247,237,59,107,176,243,140,118,113,247,85,80,50,250,226,77,243,254,95,240,188,198,232,237,125,194,49,203,62,207,134,214,255,203,131,134,184,213,52,155,121,209,237,189,58,220,90,160,251,216,238,224,12,105,89,253,205,109,128,219,142,96,55,198,79,100,50,150,8,122,133,139,201,126,92,173,138,115,235,176,75,119,86,13,4,79,225,16,197,75,56,54,134,70,143,43,71,66,138,123,0,92,61,102,193,88,228,64,130,85,83,93,67,81,158,59,29,37,41,38,220,33,240,0,159,44,71,29,94,40,66,77,25,54,245,80,216,50,44,118,155,63,155,107,90,59,38,214,21,3,145,203,212,7,72,237,151,10,255,240,86,14,250,160,17,16,77,189,208,20,148,155,147,25,35,134,82,29,14,86,47,241,185,75,238,245,96,109,173,248,215,112,108,252,210,32,43,226,101,61,234,230,188,27,169,235,11,6,104,239,182,187,39,215,1,166,230,211,216,128,165,222,111,157,100,218,106,205,35,196,221,208,226,192,4,246,161,205,179,235,96,201,126,141,62,189,201,144,255,185,16,182,188,180,167,171,125,176,162,251,58,174,21,230,251,170,204,192,184,167,123,221,121,163,198,96,54,155,113,125,247,159,168,91,180,146,31,70,117,150,26,22,50,136,173,11,243,140,116,45,176,129,195,48,113,133,153,144,138,93,46,141,75,89,247,171,8,84,64,182,201,80,69,230,142,78,242,251,79,74,43,221,12,71,156,192,205,67,33,125,130,123,150,96,67,127,79,70,0,114,248,91,193,118,253,11,134,104,74,22,71,108,147,48,4,97,36,45,197,101,233,75,155,17,94,86,90,21,135,112,25,24,48,109,216,28,53,61,159,2,130,32,94,6,91,6,29,11,236,27,220,15,81,166,147,55,230,187,82,51,63,157,17,62,136,128,208,58,141,208,151,36,58,205,86,32,227,235,21,45,84,246,212,41,121,38,169,197,206,59,104,193,23,29,43,204,160,0,234,200,165,80,173,214,18,77,108,210,203,107,47,223,124,118,238,219,193,203,161,227,118,214,96,231,175,240,35,234,24,237,226,238,29,189,165,240,170,160,100,244,115,134,39,249,196,155,230,253,9,253,184,137,190,224,121,141,103,198,58,128,208,219,251,132,213,139,188,154,98,150,125,158,187,176,62,147,12,173,255,151,177,16,176,175,6,13,113,171,223,43,50,166,104,54,243,162,109,102,180,188,218,123,117,184,3,93,54,181,180,64,247,177,1,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,88,105,112,104,46,79,114,103,32,108,105,98,86,111,114,98,105,115,32,73,32,50,48,49,53,48,49,48,53,32,40,226,155,132,226,155,132,226,155,132,226,155,132,41,0,0,0,0,1,0,0,0,4,0,0,0,3,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,0,0,76,194,0,0,80,194,0,0,84,194,0,0,88,194,0,0,92,194,0,0,96,194,0,0,100,194,0,0,104,194,0,0,108,194,0,0,112,194,0,0,116,194,0,0,120,194,0,0,124,194,0,0,128,194,0,0,130,194,0,0,132,194,0,0,134,194,0,0,136,194,0,0,138,194,0,0,140,194,0,0,142,194,0,0,144,194,0,0,146,194,0,0,148,194,0,0,150,194,0,0,152,194,0,0,154,194,0,0,156,194,0,0,160,194,0,0,162,194,0,0,164,194,0,0,166,194,0,0,168,194,0,0,170,194,0,0,172,194,0,0,174,194,0,0,176,194,0,0,176,194,0,0,178,194,0,0,178,194,0,0,180,194,0,0,182,194,0,0,182,194,0,0,184,194,0,0,186,194,0,0,188,194,0,0,190,194,0,0,192,194,0,0,192,194,0,0,194,194,0,0,196,194,0,0,196,194,0,0,198,194,0,0,198,194,0,0,200,194,0,0,200,194,0,0,202,194,0,0,204,194,0,0,206,194,0,0,208,194,0,0,212,194,0,0,214,194,0,0,214,194,0,0,214,194,0,0,214,194,0,0,210,194,0,0,206,194,0,0,204,194,0,0,202,194,0,0,198,194,0,0,196,194,0,0,192,194,0,0,190,194,0,0,190,194,0,0,192,194,0,0,194,194,0,0,192,194,0,0,190,194,0,0,186,194,0,0,180,194,0,0,160,194,0,0,140,194,0,0,72,194,0,0,32,194,0,0,240,193,0,0,240,193,0,0,240,193,0,0,240,193,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,4,64,0,0,0,0,0,0,18,64,0,0,0,0,0,0,33,64,0,0,0,0,0,128,48,64,0,0,0,4,107,244,52,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,4,64,0,0,0,0,0,0,18,64,0,0,0,0,0,0,33,64,0,0,0,4,107,244,52,66,62,180,228,51,9,145,243,51,139,178,1,52,60,32,10,52,35,26,19,52,96,169,28,52,167,215,38,52,75,175,49,52,80,59,61,52,112,135,73,52,35,160,86,52,184,146,100,52,85,109,115,52,136,159,129,52,252,11,138,52,147,4,147,52,105,146,156,52,50,191,166,52,63,149,177,52,147,31,189,52,228,105,201,52,173,128,214,52,54,113,228,52,166,73,243,52,136,140,1,53,192,247,9,53,6,239,18,53,118,123,28,53,192,166,38,53,55,123,49,53,218,3,61,53,94,76,73,53,59,97,86,53,185,79,100,53,252,37,115,53,138,121,129,53,134,227,137,53,124,217,146,53,133,100,156,53,82,142,166,53,51,97,177,53,37,232,188,53,220,46,201,53,206,65,214,53,65,46,228,53,87,2,243,53,143,102,1,54,79,207,9,54,245,195,18,54,152,77,28,54,232,117,38,54,50,71,49,54,116,204,60,54,94,17,73,54,101,34,86,54,206,12,100,54,184,222,114,54,151,83,129,54,28,187,137,54,114,174,146,54,175,54,156,54,129,93,166,54,53,45,177,54,199,176,188,54,228,243,200,54,1,3,214,54,96,235,227,54,30,187,242,54,162,64,1,55,235,166,9,55,241,152,18,55,201,31,28,55,30,69,38,55,61,19,49,55,30,149,60,55,111,214,72,55,162,227,85,55,247,201,99,55,137,151,114,55,175,45,129,55,190,146,137,55,116,131,146,55,230,8,156,55,190,44,166,55,71,249,176,55,121,121,188,55,254,184,200,55,71,196,213,55,146,168,227,55,248,115,242,55,192,26,1,56,147,126,9,56,249,109,18,56,6,242,27,56,98,20,38,56,86,223,48,56,216,93,60,56,146,155,72,56,242,164,85,56,51,135,99,56,110,80,114,56,211,7,129,56,107,106,137,56,130,88,146,56,42,219,155,56,9,252,165,56,104,197,176,56,59,66,188,56,41,126,200,56,160,133,213,56,217,101,227,56,232,44,242,56,233,244,0,57,70,86,9,57,14,67,18,57,81,196,27,57,181,227,37,57,127,171,48,57,162,38,60,57,197,96,72,57,83,102,85,57,131,68,99,57,104,9,114,57,1,226,128,57,36,66,137,57,157,45,146,57,123,173,155,57,99,203,165,57,153,145,176,57,13,11,188,57,102,67,200,57,11,71,213,57,50,35,227,57,237,229,241,57,29,207,0,58,5,46,9,58,48,24,18,58,169,150,27,58,21,179,37,58,183,119,48,58,124,239,59,58,10,38,72,58,199,39,85,58,230,1,99,58,120,194,113,58,59,188,128,58,233,25,137,58,198,2,146,58,219,127,155,58,203,154,165,58,216,93,176,58,239,211,187,58,179,8,200,58,136,8,213,58,159,224,226,58,7,159,241,58,92,169,0,59,208,5,9,59,94,237,17,59,15,105,27,59,132,130,37,59,253,67,48,59,103,184,59,59,97,235,71,59,77,233,84,59,93,191,98,59,156,123,113,59,127,150,128,59,186,241,136,59,249,215,145,59,71,82,155,59,65,106,165,59,39,42,176,59,226,156,187,59,18,206,199,59,23,202,212,59,32,158,226,59,53,88,241,59,166,131,0,60,167,221,8,60,152,194,17,60,130,59,27,60,1,82,37,60,84,16,48,60,97,129,59,60,200,176,71,60,229,170,84,60,232,124,98,60,212,52,113,60,207,112,128,60,150,201,136,60,58,173,145,60,192,36,155,60,197,57,165,60,133,246,175,60,229,101,187,60,130,147,199,60,185,139,212,60,180,91,226,60,121,17,241,60,251,93,0,61,137,181,8,61,223,151,17,61,2,14,27,61,141,33,37,61,185,220,47,61,109,74,59,61,64,118,71,61,145,108,84,61,133,58,98,61,34,238,112,61,42,75,128,61,127,161,136,61,136,130,145,61,72,247,154,61,88,9,165,61,242,194,175,61,248,46,187,61,3,89,199,61,109,77,212,61,92,25,226,61,209,202,240,61,91,56,0,62,119,141,8,62,51,109,17,62,144,224,26,62,39,241,36,62,46,169,47,62,135,19,59,62,202,59,71,62,77,46,84,62,55,248,97,62,132,167,112,62,143,37,128,62,115,121,136,62,226,87,145,62,220,201,154,62,249,216,164,62,109,143,175,62,27,248,186,62,149,30,199,62,51,15,212,62,23,215,225,62,61,132,240,62,198,18,0,63,114,101,8,63,147,66,17,63,43,179,26,63,206,192,36,63,177,117,47,63,178,220,58,63,101,1,71,63,29,240,83,63,251,181,97,63,251,96,112,63,0,0,128,63,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,112,194,0,0,120,194,0,0,120,194,0,0,130,194,0,0,146,194,0,0,138,194,0,0,136,194,0,0,136,194,0,0,134,194,0,0,140,194,0,0,140,194,0,0,144,194,0,0,148,194,0,0,150,194,0,0,158,194,0,0,158,194,0,0,160,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,84,194,0,0,116,194,0,0,132,194,0,0,132,194,0,0,136,194,0,0,134,194,0,0,140,194,0,0,152,194,0,0,152,194,0,0,144,194,0,0,146,194,0,0,150,194,0,0,152,194,0,0,156,194,0,0,158,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,20,194,0,0,24,194,0,0,32,194,0,0,40,194,0,0,56,194,0,0,64,194,0,0,84,194,0,0,92,194,0,0,120,194,0,0,130,194,0,0,104,194,0,0,96,194,0,0,96,194,0,0,116,194,0,0,112,194,0,0,130,194,0,0,134,194,0,0,138,194,0,0,142,194,0,0,154,194,0,0,154,194,0,0,156,194,0,0,160,194,0,0,164,194,0,0,168,194,0,0,176,194,0,0,186,194,0,0,196,194,0,0,212,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,208,193,0,0,216,193,0,0,232,193,0,0,0,194,0,0,24,194,0,0,64,194,0,0,80,194,0,0,80,194,0,0,72,194,0,0,64,194,0,0,64,194,0,0,76,194,0,0,80,194,0,0,88,194,0,0,112,194,0,0,134,194,0,0,134,194,0,0,132,194,0,0,136,194,0,0,138,194,0,0,146,194,0,0,146,194,0,0,152,194,0,0,160,194,0,0,162,194,0,0,162,194,0,0,170,194,0,0,170,194,0,0,172,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,128,193,0,0,136,193,0,0,152,193,0,0,160,193,0,0,176,193,0,0,208,193,0,0,224,193,0,0,248,193,0,0,32,194,0,0,60,194,0,0,28,194,0,0,28,194,0,0,32,194,0,0,40,194,0,0,44,194,0,0,60,194,0,0,76,194,0,0,100,194,0,0,80,194,0,0,92,194,0,0,92,194,0,0,112,194,0,0,104,194,0,0,120,194,0,0,124,194,0,0,140,194,0,0,134,194,0,0,138,194,0,0,144,194,0,0,146,194,0,0,154,194,0,0,160,194,0,0,164,194,0,0,166,194,0,0,174,194,0,0,180,194,0,0,188,194,0,0,196,194,0,0,208,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,0,193,0,0,32,193,0,0,48,193,0,0,112,193,0,0,152,193,0,0,200,193,0,0,240,193,0,0,8,194,0,0,248,193,0,0,240,193,0,0,248,193,0,0,232,193,0,0,0,194,0,0,12,194,0,0,40,194,0,0,64,194,0,0,40,194,0,0,48,194,0,0,56,194,0,0,72,194,0,0,72,194,0,0,76,194,0,0,80,194,0,0,108,194,0,0,88,194,0,0,92,194,0,0,92,194,0,0,104,194,0,0,120,194,0,0,124,194,0,0,132,194,0,0,144,194,0,0,146,194,0,0,152,194,0,0,150,194,0,0,156,194,0,0,160,194,0,0,160,194,0,0,162,194,0,0,168,194,0,0,176,194,0,0,180,194,0,0,188,194,0,0,196,194,0,0,202,194,0,0,212,194,0,0,220,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,134,194,0,0,134,194,0,0,134,194,0,0,152,194,0,0,144,194,0,0,142,194,0,0,148,194,0,0,152,194,0,0,152,194,0,0,150,194,0,0,156,194,0,0,158,194,0,0,158,194,0,0,162,194,0,0,166,194,0,0,172,194,0,0,178,194,0,0,186,194,0,0,194,194,0,0,200,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,64,194,0,0,76,194,0,0,92,194,0,0,108,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,134,194,0,0,132,194,0,0,136,194,0,0,138,194,0,0,140,194,0,0,148,194,0,0,158,194,0,0,154,194,0,0,154,194,0,0,156,194,0,0,160,194,0,0,162,194,0,0,164,194,0,0,168,194,0,0,172,194,0,0,176,194,0,0,182,194,0,0,190,194,0,0,200,194,0,0,216,194,0,0,232,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,20,194,0,0,20,194,0,0,36,194,0,0,48,194,0,0,64,194,0,0,76,194,0,0,104,194,0,0,120,194,0,0,112,194,0,0,100,194,0,0,108,194,0,0,108,194,0,0,112,194,0,0,124,194,0,0,130,194,0,0,144,194,0,0,142,194,0,0,140,194,0,0,144,194,0,0,148,194,0,0,154,194,0,0,152,194,0,0,156,194,0,0,162,194,0,0,162,194,0,0,160,194,0,0,166,194,0,0,172,194,0,0,182,194,0,0,192,194,0,0,200,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,240,193,0,0,0,194,0,0,0,194,0,0,4,194,0,0,12,194,0,0,36,194,0,0,68,194,0,0,72,194,0,0,68,194,0,0,60,194,0,0,64,194,0,0,64,194,0,0,80,194,0,0,76,194,0,0,100,194,0,0,130,194,0,0,116,194,0,0,108,194,0,0,116,194,0,0,128,194,0,0,138,194,0,0,140,194,0,0,148,194,0,0,154,194,0,0,154,194,0,0,156,194,0,0,162,194,0,0,168,194,0,0,170,194,0,0,174,194,0,0,180,194,0,0,184,194,0,0,192,194,0,0,200,194,0,0,214,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,152,193,0,0,160,193,0,0,168,193,0,0,184,193,0,0,216,193,0,0,240,193,0,0,12,194,0,0,16,194,0,0,36,194,0,0,56,194,0,0,48,194,0,0,40,194,0,0,32,194,0,0,36,194,0,0,36,194,0,0,44,194,0,0,64,194,0,0,92,194,0,0,84,194,0,0,80,194,0,0,84,194,0,0,96,194,0,0,108,194,0,0,104,194,0,0,112,194,0,0,134,194,0,0,132,194,0,0,138,194,0,0,142,194,0,0,144,194,0,0,150,194,0,0,158,194,0,0,162,194,0,0,168,194,0,0,174,194,0,0,180,194,0,0,186,194,0,0,194,194,0,0,202,194,0,0,214,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,16,193,0,0,48,193,0,0,64,193,0,0,64,193,0,0,112,193,0,0,128,193,0,0,160,193,0,0,184,193,0,0,240,193,0,0,20,194,0,0,8,194,0,0,4,194,0,0,8,194,0,0,248,193,0,0,0,194,0,0,0,194,0,0,24,194,0,0,60,194,0,0,48,194,0,0,36,194,0,0,32,194,0,0,60,194,0,0,68,194,0,0,56,194,0,0,56,194,0,0,104,194,0,0,72,194,0,0,72,194,0,0,88,194,0,0,104,194,0,0,120,194,0,0,128,194,0,0,134,194,0,0,134,194,0,0,140,194,0,0,144,194,0,0,152,194,0,0,158,194,0,0,166,194,0,0,174,194,0,0,182,194,0,0,192,194,0,0,200,194,0,0,208,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,124,194,0,0,128,194,0,0,132,194,0,0,134,194,0,0,132,194,0,0,136,194,0,0,150,194,0,0,144,194,0,0,152,194,0,0,150,194,0,0,152,194,0,0,156,194,0,0,158,194,0,0,164,194,0,0,168,194,0,0,170,194,0,0,180,194,0,0,188,194,0,0,202,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,108,194,0,0,112,194,0,0,112,194,0,0,116,194,0,0,124,194,0,0,132,194,0,0,142,194,0,0,136,194,0,0,140,194,0,0,140,194,0,0,142,194,0,0,144,194,0,0,144,194,0,0,150,194,0,0,162,194,0,0,156,194,0,0,158,194,0,0,164,194,0,0,166,194,0,0,172,194,0,0,180,194,0,0,194,194,0,0,206,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,84,194,0,0,88,194,0,0,92,194,0,0,100,194,0,0,96,194,0,0,100,194,0,0,92,194,0,0,116,194,0,0,130,194,0,0,112,194,0,0,112,194,0,0,120,194,0,0,124,194,0,0,124,194,0,0,132,194,0,0,136,194,0,0,148,194,0,0,146,194,0,0,150,194,0,0,150,194,0,0,156,194,0,0,160,194,0,0,160,194,0,0,164,194,0,0,170,194,0,0,180,194,0,0,192,194,0,0,202,194,0,0,216,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,56,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,60,194,0,0,64,194,0,0,76,194,0,0,100,194,0,0,76,194,0,0,68,194,0,0,72,194,0,0,76,194,0,0,84,194,0,0,88,194,0,0,108,194,0,0,132,194,0,0,112,194,0,0,120,194,0,0,134,194,0,0,134,194,0,0,140,194,0,0,144,194,0,0,150,194,0,0,152,194,0,0,156,194,0,0,162,194,0,0,170,194,0,0,176,194,0,0,188,194,0,0,194,194,0,0,208,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,16,194,0,0,28,194,0,0,36,194,0,0,40,194,0,0,40,194,0,0,28,194,0,0,24,194,0,0,36,194,0,0,44,194,0,0,80,194,0,0,48,194,0,0,32,194,0,0,28,194,0,0,20,194,0,0,20,194,0,0,32,194,0,0,60,194,0,0,88,194,0,0,72,194,0,0,64,194,0,0,72,194,0,0,92,194,0,0,116,194,0,0,108,194,0,0,120,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,138,194,0,0,138,194,0,0,146,194,0,0,148,194,0,0,148,194,0,0,150,194,0,0,154,194,0,0,158,194,0,0,164,194,0,0,174,194,0,0,182,194,0,0,190,194,0,0,200,194,0,0,216,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,224,193,0,0,208,193,0,0,192,193,0,0,176,193,0,0,160,193,0,0,160,193,0,0,184,193,0,0,232,193,0,0,240,193,0,0,248,193,0,0,224,193,0,0,216,193,0,0,224,193,0,0,224,193,0,0,224,193,0,0,12,194,0,0,32,194,0,0,4,194,0,0,0,194,0,0,232,193,0,0,240,193,0,0,240,193,0,0,240,193,0,0,20,194,0,0,52,194,0,0,36,194,0,0,20,194,0,0,24,194,0,0,52,194,0,0,60,194,0,0,60,194,0,0,64,194,0,0,84,194,0,0,68,194,0,0,64,194,0,0,72,194,0,0,68,194,0,0,68,194,0,0,76,194,0,0,80,194,0,0,104,194,0,0,96,194,0,0,100,194,0,0,96,194,0,0,112,194,0,0,116,194,0,0,120,194,0,0,140,194,0,0,144,194,0,0,148,194,0,0,156,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,212,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,200,194,0,0,190,194,0,0,182,194,0,0,174,194,0,0,166,194,0,0,160,194,0,0,156,194,0,0,152,194,0,0,156,194,0,0,156,194,0,0,162,194,0,0,166,194,0,0,170,194,0,0,172,194,0,0,170,194,0,0,172,194,0,0,174,194,0,0,180,194,0,0,194,194,0,0,214,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,162,194,0,0,154,194,0,0,146,194,0,0,140,194,0,0,134,194,0,0,134,194,0,0,136,194,0,0,150,194,0,0,146,194,0,0,140,194,0,0,138,194,0,0,140,194,0,0,144,194,0,0,150,194,0,0,158,194,0,0,168,194,0,0,166,194,0,0,168,194,0,0,172,194,0,0,176,194,0,0,178,194,0,0,178,194,0,0,186,194,0,0,196,194,0,0,210,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,152,194,0,0,142,194,0,0,136,194,0,0,136,194,0,0,130,194,0,0,124,194,0,0,124,194,0,0,120,194,0,0,120,194,0,0,128,194,0,0,130,194,0,0,128,194,0,0,116,194,0,0,120,194,0,0,124,194,0,0,128,194,0,0,132,194,0,0,136,194,0,0,146,194,0,0,146,194,0,0,148,194,0,0,150,194,0,0,152,194,0,0,162,194,0,0,166,194,0,0,170,194,0,0,176,194,0,0,178,194,0,0,184,194,0,0,190,194,0,0,200,194,0,0,216,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,160,194,0,0,150,194,0,0,142,194,0,0,136,194,0,0,130,194,0,0,124,194,0,0,120,194,0,0,116,194,0,0,116,194,0,0,116,194,0,0,116,194,0,0,108,194,0,0,96,194,0,0,100,194,0,0,84,194,0,0,72,194,0,0,104,194,0,0,80,194,0,0,72,194,0,0,72,194,0,0,80,194,0,0,84,194,0,0,88,194,0,0,104,194,0,0,134,194,0,0,124,194,0,0,134,194,0,0,136,194,0,0,144,194,0,0,150,194,0,0,156,194,0,0,160,194,0,0,162,194,0,0,162,194,0,0,164,194,0,0,170,194,0,0,178,194,0,0,180,194,0,0,186,194,0,0,194,194,0,0,202,194,0,0,214,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,130,194,0,0,116,194,0,0,108,194,0,0,100,194,0,0,96,194,0,0,92,194,0,0,92,194,0,0,96,194,0,0,96,194,0,0,100,194,0,0,92,194,0,0,84,194,0,0,80,194,0,0,60,194,0,0,48,194,0,0,48,194,0,0,72,194,0,0,48,194,0,0,36,194,0,0,28,194,0,0,28,194,0,0,40,194,0,0,32,194,0,0,56,194,0,0,76,194,0,0,68,194,0,0,72,194,0,0,84,194,0,0,88,194,0,0,124,194,0,0,112,194,0,0,116,194,0,0,120,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,140,194,0,0,146,194,0,0,148,194,0,0,150,194,0,0,152,194,0,0,150,194,0,0,158,194,0,0,170,194,0,0,178,194,0,0,182,194,0,0,192,194,0,0,204,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,80,194,0,0,72,194,0,0,68,194,0,0,68,194,0,0,64,194,0,0,64,194,0,0,64,194,0,0,68,194,0,0,72,194,0,0,72,194,0,0,68,194,0,0,56,194,0,0,44,194,0,0,28,194,0,0,12,194,0,0,4,194,0,0,24,194,0,0,16,194,0,0,0,194,0,0,232,193,0,0,0,194,0,0,0,194,0,0,0,194,0,0,12,194,0,0,48,194,0,0,28,194,0,0,24,194,0,0,24,194,0,0,56,194,0,0,72,194,0,0,52,194,0,0,56,194,0,0,84,194,0,0,72,194,0,0,72,194,0,0,72,194,0,0,88,194,0,0,88,194,0,0,84,194,0,0,84,194,0,0,96,194,0,0,100,194,0,0,108,194,0,0,132,194,0,0,140,194,0,0,144,194,0,0,148,194,0,0,158,194,0,0,166,194,0,0,170,194,0,0,180,194,0,0,194,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,172,194,0,0,160,194,0,0,150,194,0,0,150,194,0,0,158,194,0,0,160,194,0,0,158,194,0,0,160,194,0,0,162,194,0,0,164,194,0,0,176,194,0,0,190,194,0,0,206,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,176,194,0,0,166,194,0,0,158,194,0,0,156,194,0,0,150,194,0,0,142,194,0,0,134,194,0,0,136,194,0,0,146,194,0,0,146,194,0,0,144,194,0,0,146,194,0,0,150,194,0,0,154,194,0,0,160,194,0,0,164,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,214,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,202,194,0,0,192,194,0,0,180,194,0,0,172,194,0,0,162,194,0,0,154,194,0,0,146,194,0,0,138,194,0,0,132,194,0,0,116,194,0,0,120,194,0,0,132,194,0,0,128,194,0,0,120,194,0,0,130,194,0,0,132,194,0,0,140,194,0,0,144,194,0,0,152,194,0,0,162,194,0,0,160,194,0,0,168,194,0,0,180,194,0,0,190,194,0,0,204,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,206,194,0,0,194,194,0,0,184,194,0,0,176,194,0,0,166,194,0,0,158,194,0,0,148,194,0,0,140,194,0,0,132,194,0,0,108,194,0,0,84,194,0,0,104,194,0,0,120,194,0,0,92,194,0,0,88,194,0,0,88,194,0,0,88,194,0,0,104,194,0,0,116,194,0,0,120,194,0,0,144,194,0,0,140,194,0,0,144,194,0,0,150,194,0,0,156,194,0,0,160,194,0,0,162,194,0,0,160,194,0,0,166,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,214,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,150,194,0,0,140,194,0,0,132,194,0,0,120,194,0,0,96,194,0,0,64,194,0,0,48,194,0,0,64,194,0,0,56,194,0,0,56,194,0,0,44,194,0,0,56,194,0,0,64,194,0,0,64,194,0,0,76,194,0,0,104,194,0,0,104,194,0,0,108,194,0,0,112,194,0,0,120,194,0,0,120,194,0,0,116,194,0,0,116,194,0,0,130,194,0,0,128,194,0,0,130,194,0,0,136,194,0,0,140,194,0,0,148,194,0,0,150,194,0,0,156,194,0,0,162,194,0,0,172,194,0,0,190,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,150,194,0,0,140,194,0,0,130,194,0,0,116,194,0,0,92,194,0,0,68,194,0,0,28,194,0,0,4,194,0,0,32,194,0,0,12,194,0,0,0,194,0,0,24,194,0,0,32,194,0,0,4,194,0,0,12,194,0,0,20,194,0,0,56,194,0,0,36,194,0,0,52,194,0,0,48,194,0,0,56,194,0,0,40,194,0,0,52,194,0,0,56,194,0,0,80,194,0,0,72,194,0,0,72,194,0,0,72,194,0,0,88,194,0,0,88,194,0,0,92,194,0,0,100,194,0,0,120,194,0,0,128,194,0,0,132,194,0,0,136,194,0,0,140,194,0,0,152,194,0,0,162,194,0,0,180,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,196,194,0,0,180,194,0,0,170,194,0,0,164,194,0,0,166,194,0,0,160,194,0,0,156,194,0,0,168,194,0,0,158,194,0,0,160,194,0,0,166,194,0,0,174,194,0,0,178,194,0,0,182,194,0,0,186,194,0,0,198,194,0,0,212,194,0,0,234,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,196,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,150,194,0,0,140,194,0,0,136,194,0,0,148,194,0,0,144,194,0,0,148,194,0,0,154,194,0,0,160,194,0,0,164,194,0,0,170,194,0,0,174,194,0,0,184,194,0,0,178,194,0,0,182,194,0,0,190,194,0,0,200,194,0,0,212,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,196,194,0,0,180,194,0,0,166,194,0,0,150,194,0,0,142,194,0,0,124,194,0,0,128,194,0,0,134,194,0,0,120,194,0,0,128,194,0,0,134,194,0,0,140,194,0,0,146,194,0,0,154,194,0,0,162,194,0,0,168,194,0,0,166,194,0,0,170,194,0,0,178,194,0,0,180,194,0,0,186,194,0,0,196,194,0,0,208,194,0,0,218,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,206,194,0,0,192,194,0,0,176,194,0,0,162,194,0,0,150,194,0,0,136,194,0,0,104,194,0,0,88,194],"i8",L3,R.GLOBAL_BASE),d3([0,0,96,194,0,0,88,194,0,0,96,194,0,0,96,194,0,0,104,194,0,0,112,194,0,0,124,194,0,0,132,194,0,0,148,194,0,0,138,194,0,0,144,194,0,0,144,194,0,0,150,194,0,0,148,194,0,0,154,194,0,0,162,194,0,0,162,194,0,0,164,194,0,0,168,194,0,0,174,194,0,0,186,194,0,0,192,194,0,0,198,194,0,0,208,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,204,194,0,0,192,194,0,0,182,194,0,0,170,194,0,0,160,194,0,0,148,194,0,0,136,194,0,0,112,194,0,0,76,194,0,0,56,194,0,0,64,194,0,0,56,194,0,0,44,194,0,0,52,194,0,0,60,194,0,0,60,194,0,0,68,194,0,0,64,194,0,0,96,194,0,0,84,194,0,0,92,194,0,0,104,194,0,0,100,194,0,0,124,194,0,0,104,194,0,0,112,194,0,0,132,194,0,0,128,194,0,0,134,194,0,0,140,194,0,0,140,194,0,0,148,194,0,0,154,194,0,0,168,194,0,0,172,194,0,0,178,194,0,0,182,194,0,0,186,194,0,0,188,194,0,0,202,194,0,0,218,194,0,0,236,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,176,194,0,0,166,194,0,0,156,194,0,0,146,194,0,0,136,194,0,0,112,194,0,0,84,194,0,0,48,194,0,0,12,194,0,0,24,194,0,0,24,194,0,0,8,194,0,0,8,194,0,0,16,194,0,0,32,194,0,0,36,194,0,0,48,194,0,0,76,194,0,0,52,194,0,0,56,194,0,0,60,194,0,0,56,194,0,0,88,194,0,0,72,194,0,0,68,194,0,0,72,194,0,0,72,194,0,0,72,194,0,0,76,194,0,0,88,194,0,0,100,194,0,0,104,194,0,0,112,194,0,0,132,194,0,0,132,194,0,0,132,194,0,0,128,194,0,0,130,194,0,0,136,194,0,0,154,194,0,0,164,194,0,0,174,194,0,0,190,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,204,194,0,0,194,194,0,0,184,194,0,0,174,194,0,0,166,194,0,0,156,194,0,0,150,194,0,0,164,194,0,0,158,194,0,0,166,194,0,0,170,194,0,0,178,194,0,0,184,194,0,0,190,194,0,0,196,194,0,0,202,194,0,0,210,194,0,0,218,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,172,194,0,0,162,194,0,0,156,194,0,0,148,194,0,0,138,194,0,0,148,194,0,0,148,194,0,0,152,194,0,0,158,194,0,0,166,194,0,0,168,194,0,0,172,194,0,0,178,194,0,0,184,194,0,0,194,194,0,0,186,194,0,0,200,194,0,0,206,194,0,0,214,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,174,194,0,0,166,194,0,0,160,194,0,0,150,194,0,0,138,194,0,0,112,194,0,0,132,194,0,0,132,194,0,0,136,194,0,0,140,194,0,0,148,194,0,0,156,194,0,0,158,194,0,0,162,194,0,0,162,194,0,0,166,194,0,0,168,194,0,0,174,194,0,0,186,194,0,0,192,194,0,0,198,194,0,0,206,194,0,0,214,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,178,194,0,0,170,194,0,0,164,194,0,0,156,194,0,0,142,194,0,0,120,194,0,0,92,194,0,0,104,194,0,0,104,194,0,0,88,194,0,0,88,194,0,0,92,194,0,0,108,194,0,0,116,194,0,0,120,194,0,0,140,194,0,0,132,194,0,0,132,194,0,0,134,194,0,0,140,194,0,0,144,194,0,0,150,194,0,0,156,194,0,0,168,194,0,0,168,194,0,0,168,194,0,0,176,194,0,0,182,194,0,0,180,194,0,0,190,194,0,0,196,194,0,0,204,194,0,0,206,194,0,0,212,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,188,194,0,0,180,194,0,0,174,194,0,0,164,194,0,0,158,194,0,0,146,194,0,0,134,194,0,0,104,194,0,0,60,194,0,0,72,194,0,0,52,194,0,0,36,194,0,0,52,194,0,0,64,194,0,0,48,194,0,0,48,194,0,0,68,194,0,0,88,194,0,0,76,194,0,0,64,194,0,0,60,194,0,0,68,194,0,0,72,194,0,0,76,194,0,0,100,194,0,0,104,194,0,0,112,194,0,0,124,194,0,0,138,194,0,0,140,194,0,0,138,194,0,0,142,194,0,0,148,194,0,0,156,194,0,0,164,194,0,0,180,194,0,0,190,194,0,0,202,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,202,194,0,0,194,194,0,0,186,194,0,0,180,194,0,0,170,194,0,0,160,194,0,0,154,194,0,0,144,194,0,0,130,194,0,0,96,194,0,0,64,194,0,0,20,194,0,0,32,194,0,0,16,194,0,0,8,194,0,0,32,194,0,0,72,194,0,0,60,194,0,0,24,194,0,0,36,194,0,0,60,194,0,0,24,194,0,0,12,194,0,0,28,194,0,0,24,194,0,0,44,194,0,0,32,194,0,0,52,194,0,0,72,194,0,0,52,194,0,0,48,194,0,0,60,194,0,0,72,194,0,0,92,194,0,0,64,194,0,0,64,194,0,0,80,194,0,0,132,194,0,0,140,194,0,0,152,194,0,0,164,194,0,0,180,194,0,0,194,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,172,194,0,0,158,194,0,0,152,194,0,0,166,194,0,0,162,194,0,0,170,194,0,0,174,194,0,0,178,194,0,0,186,194,0,0,196,194,0,0,204,194,0,0,214,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,172,194,0,0,158,194,0,0,142,194,0,0,154,194,0,0,148,194,0,0,154,194,0,0,158,194,0,0,162,194,0,0,168,194,0,0,170,194,0,0,180,194,0,0,184,194,0,0,186,194,0,0,184,194,0,0,196,194,0,0,202,194,0,0,216,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,206,194,0,0,196,194,0,0,186,194,0,0,174,194,0,0,156,194,0,0,136,194,0,0,130,194,0,0,132,194,0,0,120,194,0,0,130,194,0,0,134,194,0,0,140,194,0,0,146,194,0,0,150,194,0,0,156,194,0,0,164,194,0,0,164,194,0,0,166,194,0,0,168,194,0,0,182,194,0,0,186,194,0,0,196,194,0,0,204,194,0,0,212,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,164,194,0,0,148,194,0,0,120,194,0,0,100,194,0,0,104,194,0,0,96,194,0,0,76,194,0,0,80,194,0,0,80,194,0,0,88,194,0,0,88,194,0,0,104,194,0,0,132,194,0,0,108,194,0,0,112,194,0,0,124,194,0,0,132,194,0,0,138,194,0,0,146,194,0,0,158,194,0,0,166,194,0,0,168,194,0,0,160,194,0,0,162,194,0,0,162,194,0,0,164,194,0,0,176,194,0,0,184,194,0,0,196,194,0,0,210,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,204,194,0,0,194,194,0,0,184,194,0,0,168,194,0,0,158,194,0,0,138,194,0,0,100,194,0,0,60,194,0,0,80,194,0,0,60,194,0,0,48,194,0,0,52,194,0,0,72,194,0,0,80,194,0,0,40,194,0,0,40,194,0,0,84,194,0,0,44,194,0,0,44,194,0,0,64,194,0,0,76,194,0,0,96,194,0,0,92,194,0,0,80,194,0,0,100,194,0,0,108,194,0,0,116,194,0,0,120,194,0,0,134,194,0,0,142,194,0,0,156,194,0,0,166,194,0,0,172,194,0,0,188,194,0,0,196,194,0,0,206,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,190,194,0,0,180,194,0,0,168,194,0,0,156,194,0,0,140,194,0,0,116,194,0,0,76,194,0,0,36,194,0,0,32,194,0,0,24,194,0,0,32,194,0,0,56,194,0,0,80,194,0,0,76,194,0,0,36,194,0,0,32,194,0,0,56,194,0,0,32,194,0,0,24,194,0,0,24,194,0,0,36,194,0,0,56,194,0,0,36,194,0,0,56,194,0,0,60,194,0,0,44,194,0,0,44,194,0,0,52,194,0,0,36,194,0,0,52,194,0,0,96,194,0,0,134,194,0,0,136,194,0,0,166,194,0,0,174,194,0,0,180,194,0,0,190,194,0,0,204,194,0,0,214,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,218,194,0,0,210,194,0,0,202,194,0,0,192,194,0,0,182,194,0,0,168,194,0,0,154,194,0,0,164,194,0,0,164,194,0,0,170,194,0,0,178,194,0,0,188,194,0,0,200,194,0,0,212,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,206,194,0,0,196,194,0,0,184,194,0,0,170,194,0,0,160,194,0,0,142,194,0,0,150,194,0,0,144,194,0,0,152,194,0,0,160,194,0,0,168,194,0,0,172,194,0,0,178,194,0,0,186,194,0,0,200,194,0,0,214,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,208,194,0,0,202,194,0,0,194,194,0,0,184,194,0,0,176,194,0,0,168,194,0,0,160,194,0,0,128,194,0,0,132,194,0,0,124,194,0,0,128,194,0,0,132,194,0,0,138,194,0,0,146,194,0,0,154,194,0,0,166,194,0,0,166,194,0,0,172,194,0,0,182,194,0,0,196,194,0,0,208,194,0,0,222,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,208,194,0,0,202,194,0,0,194,194,0,0,184,194,0,0,180,194,0,0,168,194,0,0,148,194,0,0,100,194,0,0,104,194,0,0,80,194,0,0,92,194,0,0,88,194,0,0,72,194,0,0,80,194,0,0,72,194,0,0,80,194,0,0,124,194,0,0,120,194,0,0,138,194,0,0,152,194,0,0,154,194,0,0,156,194,0,0,156,194,0,0,158,194,0,0,164,194,0,0,176,194,0,0,188,194,0,0,200,194,0,0,212,194,0,0,222,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,204,194,0,0,196,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,166,194,0,0,156,194,0,0,140,194,0,0,72,194,0,0,72,194,0,0,36,194,0,0,48,194,0,0,68,194,0,0,60,194,0,0,72,194,0,0,72,194,0,0,48,194,0,0,92,194,0,0,56,194,0,0,60,194,0,0,64,194,0,0,64,194,0,0,88,194,0,0,68,194,0,0,68,194,0,0,104,194,0,0,120,194,0,0,142,194,0,0,162,194,0,0,174,194,0,0,184,194,0,0,194,194,0,0,204,194,0,0,216,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,212,194,0,0,204,194,0,0,196,194,0,0,190,194,0,0,180,194,0,0,170,194,0,0,166,194,0,0,156,194,0,0,140,194,0,0,52,194,0,0,44,194,0,0,36,194,0,0,60,194,0,0,72,194,0,0,76,194,0,0,72,194,0,0,68,194,0,0,52,194,0,0,60,194,0,0,36,194,0,0,48,194,0,0,36,194,0,0,28,194,0,0,44,194,0,0,24,194,0,0,20,194,0,0,32,194,0,0,36,194,0,0,48,194,0,0,72,194,0,0,104,194,0,0,130,194,0,0,146,194,0,0,158,194,0,0,170,194,0,0,184,194,0,0,194,194,0,0,202,194,0,0,210,194,0,0,218,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,200,194,0,0,190,194,0,0,174,194,0,0,162,194,0,0,170,194,0,0,166,194,0,0,176,194,0,0,186,194,0,0,200,194,0,0,214,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,202,194,0,0,190,194,0,0,176,194,0,0,166,194,0,0,152,194,0,0,146,194,0,0,144,194,0,0,158,194,0,0,168,194,0,0,180,194,0,0,190,194,0,0,200,194,0,0,210,194,0,0,220,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,208,194,0,0,196,194,0,0,184,194,0,0,174,194,0,0,162,194,0,0,140,194,0,0,130,194,0,0,120,194,0,0,134,194,0,0,142,194,0,0,148,194,0,0,160,194,0,0,170,194,0,0,182,194,0,0,190,194,0,0,198,194,0,0,206,194,0,0,216,194,0,0,222,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,206,194,0,0,194,194,0,0,180,194,0,0,170,194,0,0,152,194,0,0,112,194,0,0,96,194,0,0,88,194,0,0,112,194,0,0,120,194,0,0,116,194,0,0,96,194,0,0,124,194,0,0,130,194,0,0,146,194,0,0,148,194,0,0,154,194,0,0,150,194,0,0,156,194,0,0,162,194,0,0,172,194,0,0,174,194,0,0,176,194,0,0,182,194,0,0,188,194,0,0,196,194,0,0,206,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,194,194,0,0,184,194,0,0,172,194,0,0,162,194,0,0,158,194,0,0,140,194,0,0,100,194,0,0,76,194,0,0,60,194,0,0,76,194,0,0,104,194,0,0,112,194,0,0,96,194,0,0,84,194,0,0,72,194,0,0,104,194,0,0,80,194,0,0,72,194,0,0,72,194,0,0,84,194,0,0,92,194,0,0,128,194,0,0,138,194,0,0,142,194,0,0,170,194,0,0,164,194,0,0,156,194,0,0,162,194,0,0,170,194,0,0,190,194,0,0,204,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,200,194,0,0,194,194,0,0,184,194,0,0,170,194,0,0,166,194,0,0,158,194,0,0,144,194,0,0,68,194,0,0,32,194,0,0,44,194,0,0,44,194,0,0,88,194,0,0,96,194,0,0,76,194,0,0,72,194,0,0,32,194,0,0,44,194,0,0,24,194,0,0,16,194,0,0,12,194,0,0,20,194,0,0,24,194,0,0,20,194,0,0,48,194,0,0,88,194,0,0,112,194,0,0,100,194,0,0,112,194,0,0,140,194,0,0,150,194,0,0,168,194,0,0,184,194,0,0,206,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,204,194,0,0,190,194,0,0,178,194,0,0,164,194,0,0,166,194,0,0,168,194,0,0,180,194,0,0,184,194,0,0,198,194,0,0,214,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,202,194,0,0,190,194,0,0,178,194,0,0,166,194,0,0,144,194,0,0,148,194,0,0,156,194,0,0,170,194,0,0,176,194,0,0,176,194,0,0,180,194,0,0,184,194,0,0,196,194,0,0,210,194,0,0,222,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,218,194,0,0,206,194,0,0,194,194,0,0,186,194,0,0,174,194,0,0,162,194,0,0,140,194,0,0,140,194,0,0,134,194,0,0,150,194,0,0,146,194,0,0,152,194,0,0,158,194,0,0,162,194,0,0,166,194,0,0,176,194,0,0,178,194,0,0,194,194,0,0,206,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,214,194,0,0,200,194,0,0,188,194,0,0,176,194,0,0,166,194,0,0,150,194,0,0,124,194,0,0,108,194,0,0,108,194,0,0,124,194,0,0,132,194,0,0,112,194,0,0,120,194,0,0,134,194,0,0,134,194,0,0,154,194,0,0,152,194,0,0,162,194,0,0,176,194,0,0,172,194,0,0,184,194,0,0,192,194,0,0,204,194,0,0,218,194,0,0,232,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,196,194,0,0,184,194,0,0,172,194,0,0,162,194,0,0,146,194,0,0,96,194,0,0,80,194,0,0,60,194,0,0,92,194,0,0,112,194,0,0,104,194,0,0,80,194,0,0,76,194,0,0,52,194,0,0,68,194,0,0,72,194,0,0,84,194,0,0,88,194,0,0,116,194,0,0,142,194,0,0,140,194,0,0,138,194,0,0,156,194,0,0,158,194,0,0,174,194,0,0,180,194,0,0,192,194,0,0,208,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,206,194,0,0,192,194,0,0,180,194,0,0,172,194,0,0,156,194,0,0,140,194,0,0,76,194,0,0,40,194,0,0,60,194,0,0,64,194,0,0,92,194,0,0,88,194,0,0,88,194,0,0,84,194,0,0,40,194,0,0,12,194,0,0,224,193,0,0,4,194,0,0,24,194,0,0,20,194,0,0,48,194,0,0,60,194,0,0,68,194,0,0,88,194,0,0,124,194,0,0,136,194,0,0,156,194,0,0,164,194,0,0,178,194,0,0,188,194,0,0,198,194,0,0,208,194,0,0,218,194,0,0,228,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,180,194,0,0,158,194,0,0,170,194,0,0,162,194,0,0,164,194,0,0,164,194,0,0,178,194,0,0,188,194,0,0,198,194,0,0,206,194,0,0,218,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,194,194,0,0,170,194,0,0,144,194,0,0,148,194,0,0,140,194,0,0,140,194,0,0,140,194,0,0,152,194,0,0,170,194,0,0,182,194,0,0,186,194,0,0,194,194,0,0,206,194,0,0,218,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,224,194,0,0,186,194,0,0,162,194,0,0,136,194,0,0,120,194,0,0,112,194,0,0,112,194,0,0,100,194,0,0,124,194,0,0,140,194,0,0,154,194,0,0,164,194,0,0,180,194,0,0,186,194,0,0,196,194,0,0,208,194,0,0,218,194,0,0,226,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,226,194,0,0,200,194,0,0,186,194,0,0,168,194,0,0,124,194,0,0,104,194,0,0,64,194,0,0,84,194,0,0,88,194,0,0,80,194,0,0,80,194,0,0,100,194,0,0,128,194,0,0,132,194,0,0,152,194,0,0,166,194,0,0,162,194,0,0,170,194,0,0,170,194,0,0,180,194,0,0,190,194,0,0,196,194,0,0,202,194,0,0,206,194,0,0,212,194,0,0,216,194,0,0,222,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,210,194,0,0,190,194,0,0,172,194,0,0,148,194,0,0,84,194,0,0,72,194,0,0,24,194,0,0,44,194,0,0,68,194,0,0,44,194,0,0,40,194,0,0,28,194,0,0,28,194,0,0,56,194,0,0,80,194,0,0,100,194,0,0,96,194,0,0,144,194,0,0,138,194,0,0,148,194,0,0,162,194,0,0,174,194,0,0,184,194,0,0,188,194,0,0,194,194,0,0,198,194,0,0,204,194,0,0,210,194,0,0,216,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,216,194,0,0,198,194,0,0,180,194,0,0,152,194,0,0,132,194,0,0,52,194,0,0,44,194,0,0,36,194,0,0,48,194,0,0,60,194,0,0,44,194,0,0,60,194,0,0,32,194,0,0,240,193,0,0,248,193,0,0,248,193,0,0,28,194,0,0,4,194,0,0,32,194,0,0,36,194,0,0,44,194,0,0,84,194,0,0,108,194,0,0,140,194,0,0,146,194,0,0,154,194,0,0,158,194,0,0,164,194,0,0,168,194,0,0,174,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,182,194,0,0,152,194,0,0,150,194,0,0,170,194,0,0,186,194,0,0,196,194,0,0,208,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,182,194,0,0,140,194,0,0,140,194,0,0,150,194,0,0,172,194,0,0,178,194,0,0,188,194,0,0,196,194,0,0,202,194,0,0,212,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,190,194,0,0,160,194,0,0,112,194,0,0,130,194,0,0,128,194,0,0,148,194,0,0,166,194,0,0,176,194,0,0,182,194,0,0,190,194,0,0,198,194,0,0,206,194,0,0,214,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,190,194,0,0,160,194,0,0,104,194,0,0,92,194,0,0,68,194,0,0,132,194,0,0,136,194,0,0,142,194,0,0,156,194,0,0,156,194,0,0,160,194,0,0,176,194,0,0,170,194,0,0,178,194,0,0,194,194,0,0,200,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,190,194,0,0,160,194,0,0,84,194,0,0,80,194,0,0,36,194,0,0,108,194,0,0,108,194,0,0,68,194,0,0,104,194,0,0,96,194,0,0,124,194,0,0,172,194,0,0,158,194,0,0,180,194,0,0,186,194,0,0,196,194,0,0,206,194,0,0,214,194,0,0,224,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,194,194,0,0,182,194,0,0,146,194,0,0,52,194,0,0,32,194,0,0,4,194,0,0,84,194,0,0,116,194,0,0,68,194,0,0,88,194,0,0,72,194,0,0,72,194,0,0,112,194,0,0,80,194,0,0,134,194,0,0,148,194,0,0,162,194,0,0,184,194,0,0,192,194,0,0,200,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,226,194,0,0,212,194,0,0,198,194,0,0,184,194,0,0,154,194,0,0,160,194,0,0,176,194,0,0,194,194,0,0,212,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196],"i8",L3,R.GLOBAL_BASE+10240),d3([0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,232,194,0,0,218,194,0,0,204,194,0,0,190,194,0,0,178,194,0,0,148,194,0,0,144,194,0,0,176,194,0,0,174,194,0,0,190,194,0,0,204,194,0,0,218,194,0,0,232,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,232,194,0,0,218,194,0,0,204,194,0,0,190,194,0,0,178,194,0,0,150,194,0,0,132,194,0,0,148,194,0,0,154,194,0,0,156,194,0,0,172,194,0,0,174,194,0,0,180,194,0,0,192,194,0,0,210,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,230,194,0,0,216,194,0,0,202,194,0,0,188,194,0,0,176,194,0,0,132,194,0,0,96,194,0,0,116,194,0,0,140,194,0,0,130,194,0,0,156,194,0,0,144,194,0,0,166,194,0,0,168,194,0,0,186,194,0,0,196,194,0,0,210,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,210,194,0,0,190,194,0,0,178,194,0,0,164,194,0,0,100,194,0,0,80,194,0,0,80,194,0,0,108,194,0,0,96,194,0,0,108,194,0,0,104,194,0,0,138,194,0,0,134,194,0,0,176,194,0,0,164,194,0,0,164,194,0,0,178,194,0,0,188,194,0,0,200,194,0,0,216,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,202,194,0,0,192,194,0,0,180,194,0,0,166,194,0,0,154,194,0,0,88,194,0,0,44,194,0,0,24,194,0,0,72,194,0,0,64,194,0,0,80,194,0,0,64,194,0,0,40,194,0,0,40,194,0,0,76,194,0,0,80,194,0,0,84,194,0,0,108,194,0,0,130,194,0,0,142,194,0,0,156,194,0,0,170,194,0,0,190,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,240,194,0,0,210,194,0,0,172,194,0,0,136,194,0,0,156,194,0,0,158,194,0,0,180,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,240,194,0,0,210,194,0,0,172,194,0,0,132,194,0,0,146,194,0,0,154,194,0,0,176,194,0,0,192,194,0,0,210,194,0,0,230,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,240,194,0,0,210,194,0,0,184,194,0,0,160,194,0,0,116,194,0,0,128,194,0,0,136,194,0,0,160,194,0,0,174,194,0,0,184,194,0,0,200,194,0,0,220,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,240,194,0,0,208,194,0,0,182,194,0,0,158,194,0,0,80,194,0,0,112,194,0,0,88,194,0,0,128,194,0,0,138,194,0,0,154,194,0,0,160,194,0,0,164,194,0,0,168,194,0,0,170,194,0,0,174,194,0,0,176,194,0,0,180,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,236,194,0,0,200,194,0,0,174,194,0,0,154,194,0,0,68,194,0,0,72,194,0,0,48,194,0,0,104,194,0,0,116,194,0,0,116,194,0,0,134,194,0,0,130,194,0,0,120,194,0,0,120,194,0,0,120,194,0,0,130,194,0,0,136,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,230,194,0,0,196,194,0,0,168,194,0,0,120,194,0,0,68,194,0,0,48,194,0,0,24,194,0,0,56,194,0,0,68,194,0,0,68,194,0,0,56,194,0,0,28,194,0,0,20,194,0,0,28,194,0,0,32,194,0,0,40,194,0,0,44,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,176,194,0,0,148,194,0,0,154,194,0,0,164,194,0,0,164,194,0,0,170,194,0,0,180,194,0,0,188,194,0,0,198,194,0,0,208,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,176,194,0,0,132,194,0,0,140,194,0,0,162,194,0,0,160,194,0,0,162,194,0,0,168,194,0,0,176,194,0,0,182,194,0,0,186,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,176,194,0,0,116,194,0,0,124,194,0,0,140,194,0,0,142,194,0,0,148,194,0,0,154,194,0,0,160,194,0,0,166,194,0,0,170,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,172,194,0,0,120,194,0,0,124,194,0,0,120,194,0,0,120,194,0,0,104,194,0,0,80,194,0,0,72,194,0,0,72,194,0,0,80,194,0,0,88,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,236,194,0,0,216,194,0,0,168,194,0,0,84,194,0,0,72,194,0,0,72,194,0,0,72,194,0,0,92,194,0,0,60,194,0,0,52,194,0,0,32,194,0,0,32,194,0,0,32,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,236,194,0,0,200,194,0,0,146,194,0,0,44,194,0,0,20,194,0,0,40,194,0,0,44,194,0,0,84,194,0,0,24,194,0,0,20,194,0,0,12,194,0,0,12,194,0,0,24,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,182,194,0,0,168,194,0,0,148,194,0,0,160,194,0,0,160,194,0,0,160,194,0,0,160,194,0,0,160,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,182,194,0,0,168,194,0,0,148,194,0,0,136,194,0,0,136,194,0,0,136,194,0,0,136,194,0,0,136,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,172,194,0,0,156,194,0,0,140,194,0,0,112,194,0,0,52,194,0,0,240,193,0,0,168,193,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,174,194,0,0,156,194,0,0,134,194,0,0,64,194,0,0,24,194,0,0,232,193,0,0,168,193,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,172,194,0,0,138,194,0,0,96,194,0,0,52,194,0,0,12,194,0,0,4,194,0,0,232,193,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,220,194,0,0,200,194,0,0,166,194,0,0,142,194,0,0,64,194,0,0,216,193,0,0,24,194,0,0,20,194,0,0,8,194,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,192,121,196,0,0,0,0,144,4,0,0,72,100,0,0,104,100,0,0,136,100,0,0,0,0,0,0,224,4,0,0,0,0,0,0,0,0,0,0,6,0,0,0,7,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,6,0,0,0,7,0,0,0,4,0,0,0,5,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,6,0,0,0,7,0,0,0,4,0,0,0,5,0,0,0,4,0,0,0,2,0,0,0,5,0,0,0,4,0,0,0,2,0,0,0,3,0,0,0,5,0,0,0,255,255,255,255,0,0,12,195,0,0,12,195,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,194,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,128,0,0,0,63,0,0,0,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,210,66,0,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,40,103,0,0,200,103,0,0,104,104,0,0,8,105,0,0,168,105,0,0,72,106,0,0,232,106,0,0,136,107,0,0,40,108,0,0,200,108,0,0,104,109,0,0,8,110,0,0,168,110,0,0,72,111,0,0,232,111,0,0,136,112,0,0,40,113,0,0,0,0,0,0,11,0,0,0,48,240,7,0,64,164,1,0,2,0,0,0,64,156,0,0,80,195,0,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,200,160,2,0,0,0,0,0,11,0,0,0,160,87,5,0,64,164,1,0,6,0,0,0,64,156,0,0,112,17,1,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,3,0,0,0,120,217,1,0,0,88,5,0,0,0,0,0,11,0,0,0,64,87,5,0,64,164,1,0,255,255,255,255,64,156,0,0,80,195,0,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,136,217,1,0,0,0,0,0,11,0,0,0,224,86,5,0,64,164,1,0,2,0,0,0,144,101,0,0,64,156,0,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,128,86,5,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,200,160,2,0,0,0,0,0,11,0,0,0,32,86,5,0,64,164,1,0,255,255,255,255,144,101,0,0,64,156,0,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,128,86,5,0,24,120,0,0,24,217,1,0,0,0,0,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,136,217,1,0,0,0,0,0,3,0,0,0,0,86,5,0,16,172,4,0,2,0,0,0,56,74,0,0,144,101,0,0,48,172,4,0,64,172,4,0,80,172,4,0,136,114,0,0,184,114,0,0,160,172,4,0,160,172,4,0,160,172,4,0,176,173,4,0,224,173,4,0,16,177,4,0,16,177,4,0,64,180,4,0,56,118,0,0,104,118,0,0,112,183,4,0,112,183,4,0,144,183,4,0,144,183,4,0,160,183,4,0,160,183,4,0,176,183,4,0,208,183,4,0,224,183,4,0,224,85,5,0,24,120,0,0,16,184,4,0,48,184,4,0,160,132,0,0,208,132,0,0,2,0,0,0,240,187,4,0,8,240,4,0,0,0,0,0,3,0,0,0,192,85,5,0,16,172,4,0,255,255,255,255,56,74,0,0,144,101,0,0,48,172,4,0,64,172,4,0,80,172,4,0,136,114,0,0,184,114,0,0,160,172,4,0,160,172,4,0,160,172,4,0,176,173,4,0,224,173,4,0,16,177,4,0,16,177,4,0,64,180,4,0,56,118,0,0,104,118,0,0,112,183,4,0,112,183,4,0,144,183,4,0,144,183,4,0,160,183,4,0,160,183,4,0,176,183,4,0,208,183,4,0,224,183,4,0,224,85,5,0,24,120,0,0,16,184,4,0,48,184,4,0,160,132,0,0,208,132,0,0,2,0,0,0,240,187,4,0,248,187,4,0,0,0,0,0,3,0,0,0,232,239,4,0,16,172,4,0,2,0,0,0,152,58,0,0,56,74,0,0,48,172,4,0,64,172,4,0,80,172,4,0,136,114,0,0,184,114,0,0,160,172,4,0,160,172,4,0,160,172,4,0,176,173,4,0,224,173,4,0,16,177,4,0,16,177,4,0,64,180,4,0,56,118,0,0,104,118,0,0,112,183,4,0,112,183,4,0,144,183,4,0,144,183,4,0,160,183,4,0,160,183,4,0,176,183,4,0,208,183,4,0,224,183,4,0,240,183,4,0,24,120,0,0,16,184,4,0,48,184,4,0,160,132,0,0,208,132,0,0,2,0,0,0,240,187,4,0,8,240,4,0,0,0,0,0,3,0,0,0,240,171,4,0,16,172,4,0,255,255,255,255,152,58,0,0,56,74,0,0,48,172,4,0,64,172,4,0,80,172,4,0,136,114,0,0,184,114,0,0,160,172,4,0,160,172,4,0,160,172,4,0,176,173,4,0,224,173,4,0,16,177,4,0,16,177,4,0,64,180,4,0,56,118,0,0,104,118,0,0,112,183,4,0,112,183,4,0,144,183,4,0,144,183,4,0,160,183,4,0,160,183,4,0,176,183,4,0,208,183,4,0,224,183,4,0,240,183,4,0,24,120,0,0,16,184,4,0,48,184,4,0,160,132,0,0,208,132,0,0,2,0,0,0,240,187,4,0,248,187,4,0,0,0,0,0,2,0,0,0,216,171,4,0,0,168,4,0,2,0,0,0,40,35,0,0,152,58,0,0,24,168,4,0,24,168,4,0,32,168,4,0,136,114,0,0,184,114,0,0,96,168,4,0,0,0,0,0,96,168,4,0,184,115,0,0,48,169,4,0,48,169,4,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,152,171,4,0,224,119,0,0,240,119,0,0,176,171,4,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,200,171,4,0,184,47,1,0,0,0,0,0,2,0,0,0,232,167,4,0,0,168,4,0,255,255,255,255,40,35,0,0,152,58,0,0,24,168,4,0,24,168,4,0,32,168,4,0,136,114,0,0,184,114,0,0,96,168,4,0,0,0,0,0,96,168,4,0,184,115,0,0,48,169,4,0,48,169,4,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,152,171,4,0,224,119,0,0,240,119,0,0,176,171,4,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,200,171,4,0,248,180,0,0,0,0,0,0,2,0,0,0,208,167,4,0,40,114,0,0,2,0,0,0,64,31,0,0,40,35,0,0,64,114,0,0,64,114,0,0,72,114,0,0,136,114,0,0,184,114,0,0,232,114,0,0,0,0,0,0,232,114,0,0,184,115,0,0,208,115,0,0,208,115,0,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,208,119,0,0,224,119,0,0,240,119,0,0,0,120,0,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,240,180,0,0,184,47,1,0,0,0,0,0,2,0,0,0,184,167,4,0,40,114,0,0,255,255,255,255,64,31,0,0,40,35,0,0,64,114,0,0,64,114,0,0,72,114,0,0,136,114,0,0,184,114,0,0,232,114,0,0,0,0,0,0,232,114,0,0,184,115,0,0,208,115,0,0,208,115,0,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,208,119,0,0,224,119,0,0,240,119,0,0,0,120,0,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,240,180,0,0,248,180,0,0,0,0,0,0,11,0,0,0,200,113,0,0,64,164,1,0,2,0,0,0,80,195,0,0,64,13,3,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,136,149,2,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,200,160,2,0,0,0,0,0,11,0,0,0,200,113,0,0,64,164,1,0,255,255,255,255,80,195,0,0,64,13,3,0,160,164,1,0,208,164,1,0,0,165,1,0,136,114,0,0,184,114,0,0,240,165,1,0,32,169,1,0,240,165,1,0,80,172,1,0,128,172,1,0,16,182,1,0,160,191,1,0,48,201,1,0,56,118,0,0,192,210,1,0,128,214,1,0,224,214,1,0,64,215,1,0,112,215,1,0,160,215,1,0,208,215,1,0,0,216,1,0,88,216,1,0,136,216,1,0,184,216,1,0,24,120,0,0,24,217,1,0,0,0,0,0,160,132,0,0,208,132,0,0,2,0,0,0,120,217,1,0,136,217,1,0,0,0,0,0,2,0,0,0,200,113,0,0,40,114,0,0,2,0,0,0,0,0,0,0,64,31,0,0,64,114,0,0,64,114,0,0,72,114,0,0,136,114,0,0,184,114,0,0,232,114,0,0,0,0,0,0,232,114,0,0,184,115,0,0,208,115,0,0,208,115,0,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,208,119,0,0,224,119,0,0,240,119,0,0,0,120,0,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,240,180,0,0,184,47,1,0,0,0,0,0,2,0,0,0,200,113,0,0,40,114,0,0,255,255,255,255,0,0,0,0,64,31,0,0,64,114,0,0,64,114,0,0,72,114,0,0,136,114,0,0,184,114,0,0,232,114,0,0,0,0,0,0,232,114,0,0,184,115,0,0,208,115,0,0,208,115,0,0,0,0,0,0,0,0,0,0,56,118,0,0,104,118,0,0,168,119,0,0,0,0,0,0,192,119,0,0,192,119,0,0,200,119,0,0,200,119,0,0,208,119,0,0,224,119,0,0,240,119,0,0,0,120,0,0,24,120,0,0,184,129,0,0,208,129,0,0,160,132,0,0,208,132,0,0,1,0,0,0,240,180,0,0,248,180,0,0,0,0,0,0,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,191,154,153,153,153,153,153,185,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,2,0,0,0,2,0,0,32,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,30,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,242,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,90,0,0,0,90,0,0,0,95,0,0,0,95,0,0,0,95,0,0,0,95,0,0,0,105,0,0,0,105,0,0,0,105,0,0,0,105,0,0,0,105,0,0,0,105,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,232,255,255,255,226,255,255,255,216,255,255,255,216,255,255,255,211,255,255,255,211,255,255,255,211,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,0,0,0,0,10,0,0,0,10,0,0,0,255,255,255,255,10,0,0,0,10,0,0,0,255,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,226,255,255,255,216,255,255,255,216,255,255,255,211,255,255,255,211,255,255,255,211,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,9,0,0,0,9,0,0,0,10,0,0,0,10,0,0,0,11,0,0,0,11,0,0,0,12,0,0,0,12,0,0,0,13,0,0,0,13,0,0,0,14,0,0,0,14,0,0,0,15,0,0,0,15,0,0,0,16,0,0,0,16,0,0,0,17,0,0,0,17,0,0,0,17,0,0,0,18,0,0,0,18,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,64,0,0,0,64,0,0,0,8,0,0,0,8,0,0,0,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,156,255,255,255,156,255,255,255,151,255,255,255,0,0,0,0,126,255,255,255,126,255,255,255,116,255,255,255,0,0,0,0,0,0,0,0,0,0,8,64],"i8",L3,R.GLOBAL_BASE+20480),d3([0,0,0,0,0,0,16,64,0,0,0,0,0,0,16,64,8,0,0,0,0,0,160,65,0,0,96,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,112,194,0,0,240,193,0,0,32,194,0,0,32,194,0,0,32,194,0,0,32,194,0,0,32,194,0,0,0,64,0,0,150,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,96,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,194,0,0,240,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,200,193,0,0,0,64,0,0,160,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,64,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,160,193,0,0,160,193,0,0,112,193,0,0,112,193,0,0,112,193,0,0,112,193,0,0,112,193,0,0,0,0,0,0,160,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,32,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,160,193,0,0,112,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,0,0,0,0,160,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,32,65,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,112,193,0,0,112,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,64,193,0,0,0,0,0,0,170,194,0,0,192,192,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,8,64,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,3,1,0,24,3,1,0,48,3,1,0,80,3,1,0,112,3,1,0,160,3,1,0,208,3,1,0,232,3,1,0,40,4,1,0,104,4,1,0,152,4,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,128,0,0,0,33,0,0,0,8,0,0,0,16,0,0,0,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,66,0,0,0,16,0,0,0,32,0,0,0,140,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,0,1,0,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,5,0,0,0,6,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,128,0,0,0,14,0,0,0,4,0,0,0,58,0,0,0,2,0,0,0,8,0,0,0,28,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,128,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,5,0,0,0,6,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,28,0,0,0,8,0,0,0,116,0,0,0,4,0,0,0,16,0,0,0,56,0,0,0,180,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,0,1,0,0,4,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,6,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,128,0,0,0,8,0,0,0,33,0,0,0,4,0,0,0,16,0,0,0,70,0,0,0,2,0,0,0,6,0,0,0,12,0,0,0,23,0,0,0,46,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,128,0,0,0,6,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,6,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,128,0,0,0,12,0,0,0,46,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,23,0,0,0,33,0,0,0,70,0,0,0,2,0,0,0,6,0,0,0,10,0,0,0,14,0,0,0,19,0,0,0,28,0,0,0,39,0,0,0,58,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2],"i8",L3,R.GLOBAL_BASE+30720),d3([1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,66,0,0,0,16,0,0,0,32,0,0,0,140,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,0,1,0,0,8,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,3,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,12,0,0,0,13,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,4,0,0,93,0,0,0,23,0,0,0,116,1,0,0,6,0,0,0,46,0,0,0,186,0,0,0,238,2,0,0,14,0,0,0,33,0,0,0,65,0,0,0,130,0,0,0,4,1,0,0,44,2,0,0,3,0,0,0,10,0,0,0,18,0,0,0,28,0,0,0,39,0,0,0,55,0,0,0,79,0,0,0,111,0,0,0,158,0,0,0,220,0,0,0,56,1,0,0,208,1,0,0,138,2,0,0,82,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,64,64,0,0,144,65,0,4,0,0,8,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,4,0,0,0,3,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,12,0,0,0,13,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,8,0,0,186,0,0,0,46,0,0,0,232,2,0,0,12,0,0,0,92,0,0,0,116,1,0,0,220,5,0,0,28,0,0,0,66,0,0,0,130,0,0,0,4,1,0,0,8,2,0,0,88,4,0,0,6,0,0,0,20,0,0,0,36,0,0,0,56,0,0,0,78,0,0,0,110,0,0,0,158,0,0,0,222,0,0,0,60,1,0,0,184,1,0,0,112,2,0,0,160,3,0,0,20,5,0,0,164,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,64,64,0,0,144,65,0,8,0,0,6,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,6,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,2,0,0,46,0,0,0,186,0,0,0,16,0,0,0,33,0,0,0,65,0,0,0,93,0,0,0,130,0,0,0,22,1,0,0,7,0,0,0,23,0,0,0,39,0,0,0,55,0,0,0,79,0,0,0,110,0,0,0,156,0,0,0,232,0,0,0,104,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,240,65,0,0,250,67,0,0,128,63,0,0,144,65,10,0,0,0,248,2,1,0,0,0,0,0,8,181,0,0,24,206,0,0,8,181,0,0,56,206,0,0,1],"i8",L3,R.GLOBAL_BASE+41032),d3([1],"i8",L3,R.GLOBAL_BASE+49544),d3([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],"i8",L3,R.GLOBAL_BASE+50572),d3([1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,8,245,0,0,8,245,0,0,48,245,0,0,48,245,0,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,112,217,0,0,112,217,0,0,152,217,0,0,152,217,0,0,0,0,0,0,255,255,255,255,255,255,255,255,10,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,R.GLOBAL_BASE+52752),d3([1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,16,0,0,0,60,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,30,0,0,0,255,255,255,255,50,0,0,0,255,255,255,255,80,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,136,233,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,168,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,219,0,0,0,0,0,0,72,219,0,0,112,219,0,0,0,0,0,0,0,0,0,0,152,219,0,0,192,219,0,0,0,0,0,0,0,0,0,0,232,219,0,0,16,220,0,0,56,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,81,0,0,0,32,233,0,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,120,233,0,0,0,0,0,0,4,0,0,0,81,0,0,0,184,232,0,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,16,233,0,0,0,0,0,0,4,0,0,0,113,2,0,0,40,230,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,232,0,0,0,0,0,0,4,0,0,0,113,2,0,0,152,227,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,230,0,0,0,0,0,0,2,0,0,0,81,0,0,0,24,227,0,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,112,227,0,0,0,0,0,0,2,0,0,0,81,0,0,0,152,226,0,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,240,226,0,0,0,0,0,0,4,0,0,0,81,0,0,0,48,226,0,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,136,226,0,0,0,0,0,0,2,0,0,0,121,0,0,0,128,225,0,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,0,226,0,0,0,0,0,0,2,0,0,0,121,0,0,0,208,224,0,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,80,225,0,0,0,0,0,0,2,0,0,0,121,0,0,0,32,224,0,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,160,224,0,0,0,0,0,0,2,0,0,0,225,0,0,0,248,222,0,0,1,0,0,0,0,228,91,225,0,224,255,96,4,0,0,0,0,0,0,0,224,223,0,0,0,0,0,0,2,0,0,0,225,0,0,0,208,221,0,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,184,222,0,0,0,0,0,0,2,0,0,0,33,1,0,0,96,220,0,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,136,221,0,0,0,0,0,0,2,5,4,6,6,8,8,8,8,8,9,9,9,9,9,9,9,5,6,6,7,7,8,8,9,8,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,8,9,9,9,9,9,9,9,9,9,7,7,7,8,8,9,9,9,9,9,9,9,9,9,10,10,9,7,7,7,8,8,9,9,9,9,9,9,9,9,9,9,10,10,8,8,8,9,9,9,9,10,10,10,9,10,10,10,10,10,10,8,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,7,7,9,9,7,7,8,8,10,10,11,11,4,7,7,9,9,10,10,8,8,10,10,10,11,10,11,4,7,7,9,9,10,10,8,8,10,9,11,11,11,11,7,9,9,12,12,11,12,10,10,11,10,12,11,11,11,7,9,9,11,11,13,12,9,9,11,10,11,11,12,11,9,10,10,12,12,14,14,10,10,11,12,12,11,11,11,9,10,11,11,13,14,13,10,11,11,11,12,11,12,12,7,8,8,10,9,11,10,11,12,12,11,12,14,12,13,7,8,8,9,10,10,11,12,12,12,11,12,12,12,13,9,9,9,11,11,13,12,12,12,12,11,12,12,13,12,8,10,10,11,10,11,12,12,12,12,12,12,14,12,12,9,11,11,11,12,12,12,12,13,13,12,12,13,13,12,10,11,11,12,11,12,12,12,11,12,13,12,12,12,13,11,11,12,12,12,13,12,12,11,12,13,13,12,12,13,12,11,12,12,13,13,12,13,12,13,13,13,13,14,13,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,4,4,11,11,11,11,11,11,11,11,11,11,11,11,3,11,8,11,11,11,11,11,11,11,11,11,11,11,11,3,9,9,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,5,5,6,6,7,7,7,7,8,8,5,6,6,7,7,7,7,8,8,8,8,5,6,6,7,7,7,7,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,7,8,8,8,8,8,8,9,8,9,9,8,8,8,8,8,8,8,9,9,9,9,8,8,8,8,8,8,8,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,10,11,11,4,6,6,7,7,9,9,11,11,13,12,4,6,6,7,7,9,9,11,11,12,12,6,7,7,9,9,11,11,12,12,13,13,6,7,7,9,9,11,11,12,12,13,13,8,9,9,11,11,12,12,13,13,14,14,8,9,9,11,11,12,12,13,13,14,14,9,11,11,12,12,13,13,14,14,15,15,9,11,11,12,12,13,13,14,14,15,14,11,12,12,13,13,14,14,15,15,16,16,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,4,5,5,7,7,8,8,9,9,9,9,4,5,5,7,7,8,8,9,9,9,9,6,7,7,8,8,8,8,9,9,9,9,6,7,7,8,8,8,8,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,9,9,8,10,10,8,10,10,5,9,9,7,10,10,8,10,10,4,10,10,9,12,12,9,11,11,7,12,11,10,11,13,10,13,13,7,12,12,10,13,12,10,13,13,4,10,10,9,12,12,9,12,12,7,12,12,10,13,13,10,12,13,7,11,12,10,13,13,10,13,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,6,6,7,7,9,9,4,4,5,6,6,7,7,9,9,4,4,4,6,6,7,7,9,9,6,6,6,7,7,8,8,9,9,6,6,6,7,7,8,8,9,9,7,7,7,8,8,8,9,10,10,7,7,7,8,8,9,8,10,10,9,9,9,9,9,10,10,10,10,9,9,9,9,9,10,10,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,5,8,7,8,8,10,10,4,6,6,8,8,8,8,10,10,7,8,8,9,9,9,9,11,11,7,8,8,9,9,9,9,11,11,8,8,8,9,9,10,10,12,11,8,8,8,9,9,10,10,11,11,9,10,10,11,11,11,11,13,12,9,10,10,11,11,12,12,12,13,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,9,9,6,7,7,9,9,6,7,7,9,9,9,9,9,11,11,9,9,9,11,11,6,7,7,9,9,7,7,8,9,10,7,7,8,9,10,9,9,10,10,11,9,9,10,10,12,6,7,7,9,9,7,8,7,10,9,7,8,7,10,9,9,10,9,12,11,10,10,9,12,10,9,10,10,12,11,9,10,10,12,11,9,10,10,12,12,11,11,12,12,13,11,11,12,12,13,9,9,10,12,11,9,10,10,12,12,10,10,10,12,12,11,12,11,13,12,11,12,11,13,12,6,7,7,9,9,7,8,8,10,10,7,8,7,10,9,10,10,10,12,12,10,10,10,12,11,7,8,7,10,10,7,7,9,10,11,8,9,9,11,10,10,10,11,10,12,10,10,11,12,12,7,8,8,10,10,7,9,8,11,10,8,8,9,11,11,10,11,10,12,11,10,11,11,12,12,9,10,10,12,12,9,10,10,12,12,10,11,11,13,12,11,10,12,10,14,12,12,12,13,14,9,10,10,12,12,9,11,10,12,12,10,11,11,12,12,11,12,11,14,12,12,12,12,14,14,5,7,7,9,9,7,7,7,9,10,7,8,8,10,10,10,10,10,11,11,10,10,10,12,12,7,8,8,10,10,8,9,8,11,10,7,8,9,10,11,10,10,10,11,12,10,10,11,11,13,6,7,8,10,10,8,9,9,10,10,7,9,7,11,10,10,11,10,12,12,10,11,10,12,10,9,10,10,12,12,10,11,11,13,12,9,10,10,12,12,12,12,12,14,13,11,11,12,11,14,9,10,10,11,12,10,11,11,12,13,9,10,10,12,12,12,12,12,14,13,11,12,10,14,11,9,9,10,11,12,9,10,10,12,12,9,10,10,12,12,12,12,12,14,14,11,12,12,13,12,9,10,9,12,12,9,10,11,12,13,10,11,10,13,11,12,12,13,13,14,12,12,12,13,13,9,10,10,12,12,10,11,10,13,12,10,10,11,12,13,12,13,12,14,13,12,12,12,13,14,11,12,11,14,13,10,10,11,13,13,12,12,12,14,13,12,10,14,10,15,13,14,14,14,14,11,11,12,13,14,10,12,11,13,13,12,12,12,13,15,12,13,11,15,12,13,13,14,14,14,9,10,9,12,12,9,10,10,12,12,10,10,10,12,12,11,11,12,12,13,12,12,12,14,14,9,10,10,12,12,10,11,10,13,12,10,10,11,12,13,12,12,12,14,13,12,12,13,13,14,9,10,10,12,13,10,10,11,11,12,9,11,10,13,12,12,12,12,13,14,12,13,12,14,13,11,12,11,13,13,12,13,12,14,13,10,11,12,13,13,13,13,13,14,15,12,11,14,12,14,11,11,12,12,13,12,12,12,13,14,10,12,10,14,13,13,13,13,14,15,12,14,11,15,10,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,7,7,6,7,7,9,9,6,7,7,9,9,8,10,9,11,11,9,9,9,11,11,6,8,8,10,10,8,10,10,11,11,8,9,10,11,11,10,11,11,12,12,10,11,11,12,13,6,8,8,10,10,8,10,9,11,11,8,10,9,11,11,10,11,11,12,12,10,11,11,12,12,9,11,11,14,13,10,12,11,14,14,10,12,11,14,13,12,13,13,15,14,12,13,13,15,14,8,11,11,13,14,10,11,12,13,15,10,11,12,14,14,12,13,13,14,15,12,13,13,14,15,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,13,11,12,12,13,14,8,10,10,12,12,9,11,12,13,14,10,12,12,13,13,12,12,13,14,14,11,13,13,15,15,7,10,10,12,12,9,12,11,14,12,10,11,12,13,14,12,13,12,14,14,12,13,13,15,16,10,12,12,15,14,11,12,13,15,15,11,13,13,15,16,14,14,15,15,16,13,14,15,17,15,9,12,12,14,15,11,13,12,15,15,11,13,13,15,15,13,14,13,15,14,13,14,14,17,0,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,14,7,10,10,12,12,10,12,12,13,13,9,11,12,12,13,11,12,13,15,15,11,12,13,14,15,8,10,10,12,12,10,12,11,13,13,10,12,11,13,13,11,13,13,15,14,12,13,12,15,13,9,12,12,14,14,11,13,13,16,15,11,12,13,16,15,13,14,15,16,16,13,13,15,15,16,10,12,12,15,14,11,13,13,14,16,11,13,13,15,16,13,15,15,16,17,13,15,14,16,15,8,11,11,14,15,10,12,12,15,15,10,12,12,15,16,14,15,15,16,17,13,14,14,16,16,9,12,12,15,15,11,13,14,15,17,11,13,13,15,16,14,15,16,19,17,13,15,15,0,17,9,12,12,15,15,11,14,13,16,15,11,13,13,15,16,15,15,15,18,17,13,15,15,17,17,11,15,14,18,16,12,14,15,17,17,12,15,15,18,18,15,15,16,15,19,14,16,16,0,0,11,14,14,16,17,12,15,14,18,17,12,15,15,18,18,15,17,15,18,16,14,16,16,18,18,7,11,11,14,14,10,12,12,15,15,10,12,13,15,15,13,14,15,16,16,14,15,15,18,18,9,12,12,15,15,11,13,13,16,15,11,12,13,16,16,14,15,15,17,16,15,16,16,17,17,9,12,12,15,15,11,13,13,15,17,11,14,13,16,15,13,15,15,17,17,15,15,15,18,17,11,14,14,17,15,12,14,15,17,18,13,13,15,17,17,14,16,16,19,18,16,15,17,17,0,11,14,14,17,17,12,15,15,18,0,12,15,14,18,16,14,17,17,19,0,16,18,15,0,16,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,5,5,6,6,5,6,6,5,7,6,6,7,8,6,7,8,5,6,6,6,8,7,6,8,7,5,6,6,7,8,8,6,7,7,6,8,7,7,7,9,8,9,9,6,7,8,7,9,7,8,9,9,5,6,6,6,7,7,7,8,8,6,8,7,8,9,9,7,7,9,6,7,8,8,9,9,7,9,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,7,9,10,7,9,9,5,8,8,7,10,9,7,9,9,5,8,8,8,10,10,8,10,10,7,10,10,9,10,12,10,12,12,7,10,10,9,12,11,10,12,12,5,8,8,8,10,10,8,10,10,7,10,10,10,12,12,9,11,12,7,10,10,10,12,12,9,12,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,13,9,15,9,16,8,10,13,7,5,8,6,9,7,10,7,10,11,11,6,7,8,8,9,9,9,12,16,8,5,8,6,8,6,9,7,10,12,11,7,7,7,6,7,7,7,11,15,7,5,8,6,7,5,7,6,9,13,13,9,9,8,6,6,5,5,9,14,8,6,8,6,6,4,5,3,5,13,9,9,11,8,10,7,8,4,5,12,11,16,17,15,17,12,13,8,8,15,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,8,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,R.GLOBAL_BASE+55148),d3([1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,25,0,0,0,255,255,255,255,45,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,184,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,245,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,246,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,246,0,0,0,0,0,0,0,0,0,0,0,0,0,0,104,246,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,246,0,0,0,0,0,0,184,246,0,0,224,246,0,0,0,0,0,0,0,0,0,0,8,247,0,0,48,247,0,0,88,247,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,81,0,0,0,80,2,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,2,1,0,0,0,0,0,4,0,0,0,81,0,0,0,232,1,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,64,2,1,0,0,0,0,0,4,0,0,0,113,2,0,0,88,255,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,1,1,0,0,0,0,0,4,0,0,0,113,2,0,0,200,252,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,255,0,0,0,0,0,0,2,0,0,0,81,0,0,0,72,252,0,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,160,252,0,0,0,0,0,0,2,0,0,0,169,0,0,0,96,251,0,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,16,252,0,0,0,0,0,0,2,0,0,0,25,0,0,0,40,251,0,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,251,0,0,0,0,0,0,4,0,0,0,81,0,0,0,192,250,0,0,1,0,0,0,0,176,19,225,0,176,19,97,2,0,0,0,0,0,0,0,24,251,0,0,0,0,0,0,2,0,0,0,225,0,0,0,152,249,0,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,128,250,0,0,0,0,0,0,2,0,0,0,185,1,0,0,128,247,0,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,64,249,0,0,0,0,0,0,1,6,5,7,7,9,9,9,9,10,12,12,10,11,11,10,11,11,11,10,11,6,8,8,9,9,10,10,9,10,11,11,10,11,11,11,11,10,11,11,11,11,6,7,8,9,9,9,10,11,10,11,12,11,10,11,11,11,11,11,11,12,10,8,9,9,10,9,10,10,9,10,10,10,10,10,9,10,10,10,10,9,10,10,9,9,9,9,10,10,9,9,10,10,11,10,9,12,10,11,10,9,10,10,10,8,9,9,10,9,10,9,9,10,10,9,10,9,11,10,10,10,10,10,9,10,8,8,9,9,10,9,11,9,8,9,9,10,11,10,10,10,11,12,9,9,11,8,9,8,11,10,11,10,10,9,11,10,10,10,10,10,10,10,11,11,11,11,8,9,9,9,10,10,10,11,11,12,11,12,11,10,10,10,12,11,11,11,10,8,10,9,11,10,10,11,12,10,11,12,11,11,12,11,12,12,10,11,11,10,9,9,10,11,12,10,10,10,11,10,11,11,10,12,12,10,11,10,11,12,10,9,10,10,11,10,11,11,11,11,11,12,11,11,11,9,11,10,11,10,11,10,9,9,10,11,11,11,10,10,11,12,12,11,12,11,11,11,12,12,12,12,11,9,11,11,12,10,11,11,11,11,11,11,12,11,11,12,11,11,11,10,11,11,9,11,10,11,11,11,10,10,10,11,11,11,12,10,11,10,11,11,11,11,12,9,11,10,11,11,10,10,11,11,9,11,11,12,10,10,10,10,10,11,11,10,9,10,11,11,12,11,10,10,12,11,11,12,11,12,11,11,10,10,11,11,10,12,11,10,11,10,11,10,10,10,11,11,10,10,11,11,11,11,10,10,10,12,11,11,11,11,10,9,10,11,11,11,12,11,11,11,12,10,11,11,11,9,10,11,11,11,11,11,11,10,10,11,11,12,11,10,11,12,11,10,10,11,9,10,11,11,11,11,11,10,11,11,10,12,11,11,11,12,11,11,11,10,10,11,11,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,5,5,5,5,10,10,11,11,11,11,11,11,11,11,5,7,6,8,8,9,10,11,11,11,11,11,11,11,11,6,6,7,9,7,11,10,11,11,11,11,11,11,11,11,5,6,6,11,8,11,11,11,11,11,11,11,11,11,11,5,6,6,9,10,11,10,11,11,11,11,11,11,11,11,7,10,10,11,11,11,11,11,11,11,11,11,11,11,11,7,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,4,6,5,7,7,4,5,6,7,7,6,7,7,7,7,6,7,7,7,7,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,9,9,11,11,12,12,16,16,3,6,6,9,9,11,11,12,12,13,14,18,16,3,6,7,9,9,11,11,13,12,14,14,17,16,7,9,9,11,11,12,12,14,14,14,14,17,16,7,9,9,11,11,13,12,13,13,14,14,17,0,9,11,11,12,13,14,14,14,13,15,14,17,17,9,11,11,12,12,14,14,13,14,14,15,0,0,11,12,12,15,14,15,14,15,14,15,16,17,0,11,12,13,13,13,14,14,15,14,15,15,0,0,12,14,14,15,15,14,16,15,15,17,16,0,18,13,14,14,15,14,15,14,15,16,17,16,0,0,17,17,18,0,16,18,16,0,0,0,17,0,0,16,0,0,16,16,0,15,0,17,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,7,8,8,10,10,4,6,6,8,8,8,8,10,10,6,8,8,9,9,9,9,11,11,7,8,8,9,9,9,9,11,11,7,8,8,9,9,10,10,12,11,7,8,8,9,9,10,10,11,11,9,10,10,11,11,11,12,12,12,9,10,10,11,11,12,12,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,5,6,7,9,9,6,7,6,9,9,9,9,9,10,11,9,9,9,11,10,6,7,7,10,10,7,7,8,10,10,7,8,8,10,10,10,10,10,10,11,9,10,10,11,12,6,7,7,10,10,7,8,8,10,10,7,8,7,10,10,9,10,10,12,11,10,10,10,11,10,9,10,10,12,11,10,10,10,13,11,9,10,10,12,12,11,11,12,12,13,11,11,11,12,13,9,10,10,12,12,10,10,11,12,12,10,10,11,12,12,11,11,11,13,13,11,12,12,13,13,5,7,7,10,10,7,8,8,10,10,7,8,8,10,10,10,11,11,12,12,10,11,10,12,12,7,8,8,11,11,7,8,9,10,11,8,9,9,11,11,11,10,11,10,12,10,11,11,12,13,7,8,8,10,11,8,9,8,12,10,8,9,9,11,12,10,11,10,13,11,10,11,11,13,12,9,11,10,13,12,10,10,11,12,12,10,11,11,13,13,12,10,13,11,14,11,12,12,15,13,9,11,11,13,13,10,11,11,13,12,10,11,11,12,14,12,13,11,14,12,12,12,12,14,14,5,7,7,10,10,7,8,8,10,10,7,8,8,11,10,10,11,11,12,12,10,11,10,12,12,7,8,8,10,11,8,9,9,12,11,8,8,9,10,11,10,11,11,12,13,11,10,11,11,13,6,8,8,10,11,8,9,9,11,11,7,9,7,11,10,10,11,11,12,12,10,11,10,13,10,9,11,10,13,12,10,12,11,13,13,10,10,11,12,13,11,12,13,15,14,11,11,13,12,13,9,10,11,12,13,10,11,11,12,13,10,11,10,13,12,12,13,13,13,14,12,12,11,14,11,8,10,10,12,13,10,11,11,13,13,10,11,10,13,13,12,13,14,15,14,12,12,12,14,13,9,10,10,13,12,10,10,12,13,13,10,11,11,15,12,12,12,13,15,14,12,13,13,15,13,9,10,11,12,13,10,12,10,13,12,10,11,11,12,13,12,14,12,15,13,12,12,12,15,14,11,12,11,14,13,11,11,12,14,14,12,13,13,14,13,13,11,15,11,15,14,14,14,16,15,11,12,12,13,14,11,13,11,14,14,12,12,13,14,15,12,14,12,15,12,13,15,14,16,15,8,10,10,12,12,10,10,10,12,13,10,11,11,13,13,12,12,12,13,14,13,13,13,15,15,9,10,10,12,12,10,11,11,13,12,10,10,11,13,13,12,12,12,14,14,12,12,13,15,14,9,10,10,13,12,10,10,12,12,13,10,11,10,13,13,12,13,13,14,14,12,13,12,14,13,11,12,12,14,13,12,13,12,14,14,10,12,12,14,14,14,14,14,16,14,13,12,14,12,15,10,12,12,14,15,12,13,13,14,16,11,12,11,15,14,13,14,14,14,15,13,14,11,14,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,7,7,6,7,7,9,9,6,7,7,9,9,8,10,9,11,11,8,9,9,11,11,6,8,8,10,10,8,10,10,11,11,8,10,10,11,11,10,11,11,12,12,10,11,11,12,13,6,8,8,10,10,8,10,10,11,11,8,10,10,11,11,9,10,11,12,12,10,11,11,12,12,8,11,11,14,13,10,12,11,15,13,10,12,11,14,14,12,13,12,16,14,12,14,12,16,15,8,11,11,13,14,10,11,12,13,15,10,11,12,13,15,11,12,13,14,15,12,12,14,14,16,5,8,8,11,11,9,11,11,12,12,8,10,11,12,12,11,12,12,15,14,11,12,12,14,14,7,11,10,13,12,10,11,12,13,14,10,12,12,14,13,12,13,13,14,15,12,13,13,15,15,7,10,11,12,13,10,12,11,14,13,10,12,13,13,15,12,13,12,14,14,11,13,13,15,16,9,12,12,15,14,11,13,13,15,16,11,13,13,16,16,13,14,15,15,15,12,14,15,17,16,9,12,12,14,15,11,13,13,15,16,11,13,13,16,18,13,14,14,17,16,13,15,15,17,18,5,8,9,11,11,8,11,11,12,12,8,10,11,12,12,11,12,12,14,14,11,12,12,14,15,7,11,10,12,13,10,12,12,14,13,10,11,12,13,14,11,13,13,15,14,12,13,13,14,15,7,10,11,13,13,10,12,12,13,14,10,12,12,13,13,11,13,13,16,16,12,13,13,15,14,9,12,12,16,15,10,13,13,15,15,11,13,13,17,15,12,15,15,18,17,13,14,14,15,16,9,12,12,15,15,11,13,13,15,16,11,13,13,15,15,12,15,15,16,16,13,15,14,17,15,7,11,11,15,15,10,13,13,16,15,10,13,13,15,16,14,15,15,17,19,13,15,14,15,18,9,12,12,16,16,11,13,14,17,16,11,13,13,17,16,15,15,16,17,19,13,15,16,0,18,9,12,12,16,15,11,14,13,17,17,11,13,14,16,16,15,16,16,19,18,13,15,15,17,19,11,14,14,19,16,12,14,15,0,18,12,16,15,18,17,15,15,18,16,19,14,15,17,19,19,11,14,14,18,19,13,15,14,19,19,12,16,15,18,17,15,17,15,0,16,14,17,16,19,0,7,11,11,14,14,10,12,12,15,15,10,13,13,16,15,13,15,15,17,0,14,15,15,16,19,9,12,12,16,16,11,14,14,16,16,11,13,13,16,16,14,17,16,19,0,14,18,17,17,19,9,12,12,15,16,11,13,13,15,17,12,14,13,19,16,13,15,15,17,19,15,17,16,17,19,11,14,14,19,16,12,15,15,19,17,13,14,15,17,19,14,16,17,19,19,16,15,16,17,19,11,15,14,16,16,12,15,15,19,0,12,14,15,19,19,14,16,16,0,18,15,19,14,18,16,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,6,7,8,6,7,8,5,7,7,6,8,8,7,9,7,5,7,7,7,9,9,7,8,8,6,9,8,7,7,10,8,10,10,6,8,8,8,10,8,8,10,10,5,7,7,7,8,8,7,8,9,6,8,8,8,10,10,8,8,10,6,8,9,8,10,10,7,10,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,8,10,10,7,10,10,5,8,8,7,10,10,8,10,10,4,9,8,8,11,11,8,11,11,7,11,11,10,11,13,10,13,13,7,11,11,10,13,12,10,13,13,5,9,8,8,11,11,8,11,11,7,11,11,9,13,13,10,12,13,7,11,11,10,13,13,10,13,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,11,9,12,8,7,10,6,4,5,5,7,5,6,16,9,5,5,6,7,7,9,16,7,4,6,5,7,5,7,17,10,7,7,8,7,7,8,18,7,5,6,4,5,4,5,15,7,6,7,5,6,4,5,15,12,13,18,12,17,11,9,17,6,0,0,0,6,0,0,0,120,45,1,0,160,45,1,0,200,45,1,0,240,45,1,0,24,46,1,0,0,0,0,0,56,43,1,0,96,43,1,0,136,43,1,0,176,43,1,0,216,43,1,0,0,0,0,0,216,39,1,0,0,40,1,0,40,40,1,0,80,40,1,0,120,40,1,0,160,40,1,0,200,40,1,0,240,40,1,0,120,36,1,0,160,36,1,0,200,36,1,0,240,36,1,0,24,37,1,0,64,37,1,0,104,37,1,0,144,37,1,0,80,31,1,0,120,31,1,0,160,31,1,0,200,31,1,0,240,31,1,0,24,32,1,0,64,32,1,0,104,32,1,0,144,32,1,0,184,32,1,0,224,32,1,0,8,33,1,0,40,26,1,0,80,26,1,0,120,26,1,0,160,26,1,0,200,26,1,0,240,26,1,0,24,27,1,0,64,27,1,0,104,27,1,0,144,27,1,0,184,27,1,0,224,27,1,0,232,23,1,0,16,24,1,0,56,24,1,0,96,24,1,0,136,24,1,0,0,0,0,0,216,16,1,0,0,17,1,0,40,17,1,0,80,17,1,0,120,17,1,0,160,17,1,0,200,17,1,0,240,17,1,0,24,18,1,0,64,18,1,0,104,18,1,0,144,18,1,0,184,18,1,0,224,18,1,0,8,19,1,0,0,0,0,0,200,9,1,0,240,9,1,0,24,10,1,0,64,10,1,0,104,10,1,0,144,10,1,0,184,10,1,0,224,10,1,0,8,11,1,0,48,11,1,0,88,11,1,0,128,11,1,0,168,11,1,0,208,11,1,0,248,11,1,0,0,0,0,0,160,4,1,0,200,4,1,0,240,4,1,0,24,5,1,0,64,5,1,0,104,5,1,0,144,5,1,0,184,5,1,0,224,5,1,0,8,6,1,0,48,6,1,0,88,6,1,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,192,9,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,128,9,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,64,9,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,192,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,160,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,32,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,8,8,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,208,7,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,80,7,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,56,7,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,0,7,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,128,6,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,8,4,8,4,8,4,8,5,8,5,8,6,8,4,8,4,8,5,8,5,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,3,4,3,5,4,6,4,6,5,7,6,7,6,8,6,8,7,9,8,10,8,12,9,13,10,15,10,15,11,14,0,0,0,0,0,0,0,4,4,4,4,4,4,3,4,4,4,4,4,5,4,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,3,4,3,4,4,5,5,6,6,7,7,7,8,8,11,8,9,9,9,10,11,11,11,9,10,10,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,3,4,3,4,4,5,4,5,4,6,4,6,5,6,5,7,5,7,6,8,6,8,6,8,7,8,7,9,7,9,8,0,0,0,0,0,0,0,4,5,4,4,4,5,4,4,4,5,4,5,4,5,3,5,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,3,5,3,5,4,5,4,5,4,5,5,5,5,6,5,6,5,7,5,8,6,8,6,8,6,8,6,8,7,9,7,9,7,11,9,11,11,12,11,14,12,14,16,14,16,13,16,14,16,12,15,13,16,14,16,13,14,12,15,13,15,13,13,13,15,12,14,14,15,13,15,12,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,2,4,5,4,5,4,5,4,5,5,5,5,5,5,6,5,6,5,6,6,7,6,7,6,8,7,8,7,8,7,8,7,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,5,6,6,6,6,5,6,6,7,6,7,6,7,6,7,6,8,7,8,7,8,7,8,7,8,7,9,7,9,7,9,7,9,8,9,8,10,8,10,8,10,7,10,6,10,8,10,8,11,7,10,7,11,8,11,11,12,12,11,11,12,11,13,11,13,11,13,12,15,12,13,13,14,14,14,14,14,15,15,15,16,14,17,19,19,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,2,4,6,17,4,5,7,17,8,7,10,17,17,17,17,17,3,4,6,15,3,3,6,15,7,6,9,17,17,17,17,17,6,8,10,17,6,6,8,16,9,8,10,17,17,15,16,17,17,17,17,17,12,15,15,16,12,15,15,16,16,16,16,16,3,3,3,14,5,4,4,11,8,6,6,10,17,12,11,17,6,5,5,15,5,3,4,11,8,5,5,8,16,9,10,14,10,8,9,17,8,6,6,13,10,7,7,10,16,11,13,14,17,17,17,17,17,16,16,16,16,15,16,16,16,16,16,16,1,2,3,6,5,4,7,7,1,0,0,0,16,0,0,0,200,16,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,192,16,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,192,15,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,128,15,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,0,15,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,224,14,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,96,14,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,64,14,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,192,13,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,168,13,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,112,13,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,240,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,216,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,160,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,32,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,6,5,7,5,7,7,7,7,7,5,7,5,7,5,7,5,7,7,7,7,7,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,2,4,3,4,4,4,5,5,6,5,6,5,7,6,6,6,7,7,7,8,9,9,9,12,10,11,10,10,12,10,10,0,0,0,0,0,0,0,3,4,4,4,4,4,4,4,4,5,4,5,4,5,4,4,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,6,3,7,3,7,5,7,7,7,7,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,4,4,4,4,4,4,5,5,5,5,6,6,7,6,7,6,8,6,9,7,9,7,9,9,11,9,12,10,12,0,0,0,0,0,0,0,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,3,4,3,4,4,5,4,5,5,5,6,6,6,7,6,8,6,8,6,9,7,10,7,10,7,10,7,12,7,12,7,12,9,12,11,12,10,12,10,12,11,12,12,12,10,12,10,12,10,12,9,12,11,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,10,10,12,12,12,12,12,10,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,2,4,5,4,5,4,5,4,5,5,5,5,5,5,6,5,6,5,6,6,6,6,7,7,7,7,7,7,8,8,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,5,7,5,7,4,7,4,8,4,8,4,8,4,8,3,8,4,9,4,9,4,9,4,9,4,9,5,9,5,9,6,9,7,9,8,9,9,9,10,9,11,9,14,9,15,10,15,10,15,10,15,10,15,11,15,10,14,12,14,11,14,13,14,13,15,15,15,12,15,15,15,13,15,13,15,13,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,14,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,7,6,7,6,7,6,7,6,5,5,5,5,5,5,6,5,6,5,6,5,6,5,6,5,6,5,7,5,7,5,7,5,8,5,8,5,8,5,9,5,9,6,10,6,10,6,11,6,11,6,11,6,11,6,11,6,11,6,11,6,12,7,11,7,11,7,11,7,11,7,10,7,11,7,11,7,12,7,11,8,11,8,11,8,11,8,13,8,12,9,11,9,11,9,11,10,12,10,12,9,12,10,12,11,14,12,16,12,12,11,14,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,16,16,16,16,2,4,7,13,4,5,7,15,8,7,10,16,16,14,16,16,2,4,7,16,3,4,7,14,8,8,10,16,16,16,15,16,6,8,11,16,7,7,9,16,11,9,13,16,16,16,15,16,16,16,16,16,14,16,16,16,16,16,16,16,16,16,16,16,3,3,6,16,5,5,7,16,9,8,11,16,16,16,16,16,5,5,8,16,5,5,7,16,8,7,9,16,16,16,16,16,9,9,12,16,6,8,11,16,9,10,11,16,16,16,16,16,16,16,16,16,13,16,16,16,15,16,16,16,16,16,16,16,5,4,7,16,6,5,8,16,9,8,10,16,16,16,16,16,5,5,7,15,5,4,6,15,7,6,8,16,16,16,16,16,9,9,11,15,7,7,9,16,8,8,9,16,16,16,16,16,16,16,16,16,15,15,15,16,15,15,14,16,16,16,16,16,8,8,11,16,8,9,10,16,11,10,14,16,16,16,16,16,6,8,10,16,6,7,10,16,8,8,11,16,14,16,16,16,10,11,14,16,9,9,11,16,10,10,11,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,12,16,15,16,12,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,1,2,3,6,4,7,5,7,2,6,8,9,7,11,13,13,1,3,5,5,6,6,12,10,1,0,0,0,16,0,0,0,216,23,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,208,23,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,208,22,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,144,22,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,16,22,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,240,21,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,112,21,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,80,21,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,208,20,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,184,20,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,128,20,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,0,20,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,232,19,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,176,19,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,48,19,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,5,2,6,3,6,4,7,4,7,5,9,5,11,6,11,6,11,7,11,6,11,6,11,9,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,2,4,2,5,3,5,4,6,6,6,7,7,8,7,8,7,8,7,9,8,9,8,9,8,10,8,11,9,12,9,12,0,0,0,0,0,0,0,4,5,4,5,4,5,4,5,3,5,3,5,3,5,4,5,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,7,3,8,3,10,3,8,3,9,3,8,4,9,4,9,5,9,6,10,6,9,7,11,7,12,9,13,10,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,4,3,4,4,4,4,5,5,5,5,5,6,5,7,5,8,6,8,6,9,7,10,7,10,8,10,8,11,9,11,0,0,0,0,0,0,0,4,5,4,5,3,5,3,5,3,5,4,4,4,4,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,3,4,3,4,4,5,4,5,4,5,5,6,5,6,5,7,5,7,6,7,6,8,7,8,7,8,7,9,8,9,9,9,9,10,10,10,11,9,12,9,12,9,15,10,14,9,13,10,13,10,12,10,12,10,13,10,12,11,13,11,14,12,13,13,14,14,13,14,15,14,16,13,13,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,15,1,5,5,5,5,5,5,5,6,5,6,5,6,5,6,5,6,6,7,7,7,7,8,7,8,8,9,8,10,9,10,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,5,8,4,9,4,9,4,9,4,9,4,9,4,9,4,9,4,9,4,9,4,8,4,8,4,9,5,9,5,9,5,9,5,9,6,10,6,10,7,10,8,11,9,11,11,12,13,12,14,13,15,13,15,14,16,14,17,15,17,15,15,16,16,15,16,16,16,15,18,16,15,17,17,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,2,5,5,4,5,4,5,4,5,4,6,5,6,5,6,5,6,5,7,5,7,6,8,6,8,6,8,6,9,6,9,6,5,5,5,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,7,5,7,5,7,5,7,5,8,6,8,6,8,6,9,6,9,6,10,6,10,6,11,6,11,7,11,7,12,7,12,7,12,7,12,7,12,7,12,7,12,7,12,8,13,8,12,8,12,8,13,8,13,9,13,9,13,9,13,9,12,10,12,10,13,10,14,11,14,12,14,13,14,13,14,14,15,16,15,15,15,14,15,17,21,22,22,21,22,22,22,22,22,22,21,21,21,21,21,21,21,21,21,21,2,3,7,13,4,4,7,15,8,6,9,17,21,16,15,21,2,5,7,11,5,5,7,14,9,7,10,16,17,15,16,21,4,7,10,17,7,7,9,15,11,9,11,16,21,18,15,21,18,21,21,21,15,17,17,19,21,19,18,20,21,21,21,20,1,5,7,21,5,8,9,21,10,9,12,20,20,16,20,20,4,8,9,20,6,8,9,20,11,11,13,20,20,15,17,20,9,11,14,20,8,10,15,20,11,13,15,20,20,20,20,20,20,20,20,20,13,20,20,20,18,18,20,20,20,20,20,20,3,6,8,20,6,7,9,20,10,9,12,20,20,20,20,20,5,7,9,20,6,6,9,20,10,9,12,20,20,20,20,20,8,10,13,20,8,9,12,20,11,10,12,20,20,20,20,20,18,20,20,20,15,17,18,20,18,17,18,20,20,20,20,20,7,10,12,20,8,9,11,20,14,13,14,20,20,20,20,20,6,9,12,20,7,8,11,20,12,11,13,20,20,20,20,20,9,11,15,20,8,10,14,20,12,11,14,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,11,16,18,20,15,15,17,20,20,17,20,20,20,20,20,20,9,14,16,20,12,12,15,20,17,15,18,20,20,20,20,20,16,19,18,20,15,16,20,20,17,17,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,1,4,2,6,3,7,5,7,2,10,8,14,7,12,11,14,1,5,3,7,4,9,7,13,1,0,0,0,0,1,0,0,40,25,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,32,25,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,0,0,0,16,25,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,240,24,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,176,24,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,2,4,3,5,4,5,5,5,5,6,6,6,6,6,6,6,7,7,8,6,9,7,12,11,16,13,16,12,15,13,15,12,14,12,15,15,15,0,0,0,0,0,0,0,0,0,0,3,3,3,4,3,4,4,4,4,4,5,5,5,6,6,0,0,0,0,0,0,0,0,0,0,0,2,3,2,3,3,3,0,0,0,0,0,0,1,3,2,3,0,0,0,0,4,5,6,11,5,5,6,10,7,7,6,6,14,13,9,9,6,6,6,10,6,6,6,9,8,7,7,9,14,12,8,11,8,7,7,11,8,8,7,11,9,9,7,9,13,11,9,13,19,19,18,19,15,16,16,19,11,11,10,13,10,10,9,15,5,5,6,13,6,6,6,11,8,7,6,7,14,11,10,11,6,6,6,12,7,6,6,11,8,7,7,11,13,11,9,11,9,7,6,12,8,7,6,12,9,8,8,11,13,10,7,13,19,19,17,19,17,14,14,19,12,10,8,12,13,10,9,16,7,8,7,12,7,7,7,11,8,7,7,8,12,12,11,11,8,8,7,12,8,7,6,11,8,7,7,10,10,11,10,11,9,8,8,13,9,8,7,12,10,9,7,11,9,8,7,11,18,18,15,18,18,16,17,18,15,11,10,18,11,9,9,18,16,16,13,16,12,11,10,16,12,11,9,6,15,12,11,13,16,16,14,14,13,11,12,16,12,9,9,13,13,10,10,12,17,18,17,17,14,15,14,16,14,12,14,15,12,10,11,12,18,18,18,18,18,18,18,18,18,12,13,18,16,11,9,18,1,0,0,0,8,0,0,0,72,31,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,8,31,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,200,30,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,72,30,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,40,30,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,168,29,1],"i8",L3,R.GLOBAL_BASE+62212),d3([1,0,0,0,18,0,0,0,144,29,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,88,29,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,216,28,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,192,28,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,136,28,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,8,28,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,2,4,3,4,4,4,5,4,7,5,8,5,11,6,10,6,12,7,12,7,12,8,12,8,12,10,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,3,6,3,6,4,7,4,7,4,7,4,8,4,8,4,8,4,8,4,9,4,9,5,10,5,10,7,10,8,10,8,0,0,0,0,0,0,0,4,4,4,4,4,4,4,5,3,5,3,5,4,6,4,6,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,1,5,3,5,3,5,4,7,5,10,7,10,7,12,10,14,10,14,9,14,11,14,14,14,13,13,13,13,13,13,13,0,0,0,0,0,0,0,4,5,4,6,4,8,3,9,3,9,2,9,3,8,4,9,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,3,5,3,5,3,6,3,6,4,6,4,7,4,7,5,8,5,8,6,9,7,9,7,9,8,10,9,10,9,11,10,11,11,11,11,11,11,12,12,12,13,12,13,12,14,12,15,12,14,12,16,13,17,13,17,14,17,14,16,13,17,14,17,14,17,15,17,15,15,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,16,16,16,16,16,16,16,16,16,16,2,5,5,4,5,4,5,4,5,5,5,5,5,5,6,5,6,5,6,5,7,6,7,6,7,6,8,6,9,7,9,7,5,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,7,5,7,5,7,5,7,5,7,5,7,5,8,5,8,5,8,5,8,5,8,6,8,6,8,6,9,6,9,6,9,6,9,6,9,7,9,7,9,7,9,7,10,7,10,8,10,8,10,8,10,8,10,8,11,8,11,8,11,8,11,8,11,9,12,9,12,9,12,9,12,9,12,10,12,10,13,11,13,11,14,12,14,13,15,14,16,14,17,15,18,16,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,3,6,10,17,4,8,11,20,8,10,11,20,20,20,20,20,2,4,8,18,4,6,8,17,7,8,10,20,20,17,20,20,3,5,8,17,3,4,6,17,8,8,10,17,17,12,16,20,13,13,15,20,10,10,12,20,15,14,15,20,20,20,19,19,1,4,10,19,3,8,13,19,7,12,19,19,19,19,19,19,2,6,11,19,8,13,19,19,9,11,19,19,19,19,19,19,6,7,13,19,9,13,19,19,10,13,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,1,3,4,7,2,5,6,7,1,0,0,0,8,0,0,0,112,36,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,48,36,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,240,35,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,112,35,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,0,0,0,80,35,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,208,34,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,184,34,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,128,34,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,0,34,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,18,0,0,0,232,33,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,50,0,0,0,176,33,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,128,0,0,0,48,33,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,1,6,3,7,3,8,4,8,5,8,8,8,9,7,8,8,7,7,7,8,9,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,3,5,4,6,4,6,4,7,4,7,4,8,4,8,4,9,4,9,4,10,4,10,5,10,5,11,5,12,6,12,6,0,0,0,0,0,0,0,4,4,4,4,4,4,4,4,4,4,4,4,4,5,4,5,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,8,3,8,4,8,4,8,6,8,5,8,4,8,4,8,6,8,7,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,4,4,4,4,5,4,5,4,6,5,7,5,7,6,8,6,8,6,9,7,9,7,10,7,9,8,11,8,11,0,0,0,0,0,0,0,4,5,4,5,4,5,3,5,3,5,3,5,4,4,4,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,3,5,3,6,4,6,4,7,4,7,4,7,4,8,4,8,4,9,5,9,5,9,5,9,6,10,6,10,6,11,7,10,7,10,8,11,9,11,9,11,10,11,11,12,11,11,12,15,15,12,14,11,14,12,14,11,14,13,14,12,14,11,14,11,14,12,14,11,14,11,14,13,13,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,2,5,5,5,5,5,5,4,5,5,5,5,5,5,5,5,6,5,6,5,6,5,7,6,7,6,7,6,8,6,8,6,5,5,5,5,5,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,5,6,6,6,6,7,6,7,6,7,6,7,6,7,6,7,6,8,6,8,6,8,7,8,7,8,7,8,7,9,7,9,8,9,8,9,8,10,8,10,9,10,9,10,9,11,9,11,9,10,10,11,10,11,10,11,11,11,11,11,11,12,13,14,14,14,15,15,16,16,16,17,15,16,15,16,16,17,17,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,7,6,9,17,7,6,8,17,12,9,11,16,16,16,16,16,5,4,7,16,5,3,6,14,9,6,8,15,16,16,16,16,5,4,6,13,3,2,4,11,7,4,6,13,16,11,10,14,12,12,12,16,9,7,10,15,12,9,11,16,16,15,15,16,1,6,12,16,4,12,15,16,9,15,16,16,16,16,16,16,2,5,11,16,5,11,13,16,9,13,16,16,16,16,16,16,4,8,12,16,5,9,12,16,9,13,15,16,16,16,16,16,15,16,16,16,11,14,13,16,12,15,16,16,16,16,16,15,1,6,3,7,2,4,5,7,1,0,0,0,64,0,0,0,152,39,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,152,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,9,0,0,0,136,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,104,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,40,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,9,0,0,0,24,38,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,248,37,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,184,37,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,2,4,3,6,3,7,3,8,5,8,6,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,0,0,0,0,0,0,0,0,0,2,3,3,4,3,4,4,5,4,6,5,6,7,6,8,8,0,0,0,0,0,0,0,0,3,3,3,3,2,4,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,5,2,5,3,5,3,6,3,6,4,7,6,7,8,7,9,8,9,9,9,10,9,11,13,11,13,10,10,13,13,13,13,13,13,12,12,12,12,0,0,0,0,0,0,0,0,0,3,4,3,4,3,5,3,6,3,6,4,6,4,7,5,7,0,0,0,0,0,0,0,0,2,3,3,3,3,4,3,4,0,0,0,0,0,0,0,5,6,8,15,6,9,10,15,10,11,12,15,15,15,15,15,4,6,7,15,6,7,8,15,9,8,9,15,15,15,15,15,6,8,9,15,7,7,8,15,10,9,10,15,15,15,15,15,15,13,15,15,15,10,11,15,15,13,13,15,15,15,15,15,4,6,7,15,6,8,9,15,10,10,12,15,15,15,15,15,2,5,6,15,5,6,7,15,8,6,7,15,15,15,15,15,5,6,8,15,5,6,7,15,9,6,7,15,15,15,15,15,14,12,13,15,12,10,11,15,15,15,15,15,15,15,15,15,7,8,9,15,9,10,10,15,15,14,14,15,15,15,15,15,5,6,7,15,7,8,9,15,12,9,10,15,15,15,15,15,7,7,9,15,7,7,8,15,12,8,9,15,15,15,15,15,13,13,14,15,12,11,12,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,13,13,13,15,15,15,15,15,15,15,15,15,15,15,15,15,15,12,13,15,15,12,13,15,15,14,15,15,15,15,15,15,15,15,15,15,15,15,13,15,15,15,15,15,15,15,15,15,7,5,5,9,9,6,6,9,12,8,7,8,11,8,9,15,6,3,3,7,7,4,3,6,9,6,5,6,8,6,8,15,8,5,5,9,8,5,4,6,10,7,5,5,11,8,7,15,14,15,13,13,13,13,8,11,15,10,7,6,11,9,10,15,1,0,0,0,64,0,0,0,248,42,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,248,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,9,0,0,0,232,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,200,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,136,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,9,0,0,0,120,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,88,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,24,41,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,7,2,7,3,8,4,9,5,9,8,10,11,11,12,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,13,13,13,13,0,0,0,0,0,0,0,0,0,3,4,3,6,3,6,3,6,3,7,3,8,4,9,4,9,0,0,0,0,0,0,0,0,3,3,2,3,3,4,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,5,3,5,3,5,4,5,4,5,5,5,5,6,5,6,5,6,5,6,5,6,5,7,8,9,11,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,0,0,0,0,0,0,3,3,3,4,4,4,4,5,4,5,4,5,4,6,4,6,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,8,13,17,17,8,11,17,17,11,13,17,17,17,17,17,17,6,10,16,17,6,10,15,17,8,10,16,17,17,17,17,17,9,13,15,17,8,11,17,17,10,12,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,6,11,15,17,7,10,15,17,8,10,17,17,17,15,17,17,4,8,13,17,4,7,13,17,6,8,15,17,16,15,17,17,6,11,15,17,6,9,13,17,8,10,17,17,15,17,17,17,16,17,17,17,12,14,15,17,13,14,15,17,17,17,17,17,5,10,14,17,5,9,14,17,7,9,15,17,15,15,17,17,3,7,12,17,3,6,11,17,5,7,13,17,12,12,17,17,5,9,14,17,3,7,11,17,5,8,13,17,13,11,16,17,12,17,17,17,9,14,15,17,10,11,14,17,16,14,17,17,8,12,17,17,8,12,17,17,10,12,17,17,17,17,17,17,5,10,17,17,5,9,15,17,7,9,17,17,13,13,17,17,7,11,17,17,6,10,15,17,7,9,15,17,12,11,17,17,12,15,17,17,11,14,17,17,11,10,15,17,17,16,17,17,10,7,8,13,9,6,7,11,10,8,8,12,17,17,17,17,7,5,5,9,6,4,4,8,8,5,5,8,16,14,13,16,7,5,5,7,6,3,3,5,8,5,4,7,14,12,12,15,10,7,8,9,7,5,5,6,9,6,5,5,15,12,9,10,1,0,0,0,0,1,0,0,120,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,112,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,0,0,0,96,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,64,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,0,44,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,4,3,5,3,5,3,6,4,7,4,7,5,7,6,7,6,7,8,10,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,0,0,0,0,0,0,0,0,0,0,4,3,4,3,4,3,5,3,5,4,5,4,6,4,6,0,0,0,0,0,0,0,0,0,0,0,2,2,3,3,3,3,0,0,0,0,0,0,2,2,2,2,0,0,0,0,6,7,7,12,6,6,7,12,7,6,6,10,15,12,11,13,7,7,8,13,7,7,8,12,7,7,7,11,12,12,11,13,10,9,9,11,9,9,9,10,10,8,8,12,14,12,12,14,11,11,12,14,11,12,11,15,15,12,13,15,15,15,15,15,6,6,7,10,6,6,6,11,7,6,6,9,14,12,11,13,7,7,7,10,6,6,7,9,7,7,6,10,13,12,10,12,9,9,9,11,9,9,8,9,9,8,8,10,13,12,10,12,12,12,11,13,12,12,11,12,15,13,12,15,15,15,14,14,6,6,6,8,6,6,5,6,7,7,6,5,11,10,9,8,7,6,6,7,6,6,5,6,7,7,6,6,11,10,9,8,8,8,8,9,8,8,7,8,8,8,6,7,11,10,9,9,14,11,10,14,14,11,10,15,13,11,9,11,15,12,12,11,11,9,8,8,10,9,8,9,11,10,9,8,12,11,12,11,13,10,8,9,11,10,8,9,10,9,8,9,10,8,12,12,15,11,10,10,13,11,10,10,8,8,7,12,10,9,11,12,15,12,11,15,13,11,11,15,12,14,11,13,15,15,13,13,1,0,0,0,0,1,0,0,184,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,176,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,0,0,0,160,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,25,0,0,0,128,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,0,0,0,64,46,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,4,3,5,3,5,3,5,4,6,5,6,5,7,6,6,7,7,9,9,11,11,16,11,14,10,11,11,13,16,15,15,15,15,15,15,15,15,15,0,0,0,0,0,0,0,0,0,0,3,3,4,3,4,3,4,4,5,4,5,4,6,5,6,0,0,0,0,0,0,0,0,0,0,0,3,2,3,2,3,3,0,0,0,0,0,0,2,2,2,2,0,0,0,0,7,7,7,11,6,6,7,11,7,6,6,10,12,10,10,13,7,7,8,11,7,7,7,11,7,6,7,10,11,10,10,13,10,10,9,12,9,9,9,11,8,8,8,11,13,11,10,14,15,15,14,15,15,14,13,14,15,12,12,17,17,17,17,17,7,7,6,9,6,6,6,9,7,6,6,8,11,11,10,12,7,7,7,9,7,6,6,9,7,6,6,9,13,10,10,11,10,9,8,10,9,8,8,10,8,8,7,9,13,12,10,11,17,14,14,13,15,14,12,13,17,13,12,15,17,17,14,17,7,6,6,7,6,6,5,7,6,6,6,6,11,9,9,9,7,7,6,7,7,6,6,7,6,6,6,6,10,9,8,9,10,9,8,8,9,8,7,8,8,7,6,8,11,10,9,10,17,17,12,15,15,15,12,14,14,14,10,12,15,13,12,13,11,10,8,10,11,10,8,8,10,9,7,7,10,9,9,11,11,11,9,10,11,10,8,9,10,8,6,8,10,9,9,11,14,13,10,12,12,11,10,10,8,7,8,10,10,11,11,12,17,17,15,17,17,17,17,17,17,13,12,17,17,17,14,17,200,47,1,0,216,72,1,0,200,47,1,0,248,72,1,0,1],"i8",L3,R.GLOBAL_BASE+72464),d3([1],"i8",L3,R.GLOBAL_BASE+78916),d3([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],"i8",L3,R.GLOBAL_BASE+79944),d3([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],"i8",L3,R.GLOBAL_BASE+81996),d3([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,120,124,1,0,120,124,1,0,160,124,1,0,160,124,1,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,48,84,1,0,48,84,1,0,88,84,1,0,88,84,1,0,0,0,0,0,255,255,255,255,255,255,255,255,10,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,R.GLOBAL_BASE+83152),d3([1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,231,3,0,0,0,0,0,0,231,3,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,16,124,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,85,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,85,1,0,0,0,0,0,0,0,0,0,0,0,0,0,104,85,1,0,0,0,0,0,0,0,0,0,0,0,0,0,144,85,1,0,0,0,0,0,0,0,0,0,0,0,0,0,184,85,1,0,0,0,0,0,224,85,1,0,8,86,1,0,0,0,0,0,0,0,0,0,48,86,1,0,88,86,1,0,0,0,0,0,0,0,0,0,128,86,1,0,168,86,1,0,208,86,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,88,98,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,0,124,1,0,0,0,0,0,4,0,0,0,113,2,0,0,200,95,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,98,1,0,0,0,0,0,2,0,0,0,81,0,0,0,72,95,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,160,95,1,0,0,0,0,0,2,0,0,0,81,0,0,0,200,94,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,32,95,1,0,0,0,0,0,2,0,0,0,33,1,0,0,88,93,1,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,128,94,1,0,0,0,0,0,4,0,0,0,81,0,0,0,240,92,1,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,72,93,1,0,0,0,0,0,2,0,0,0,121,0,0,0,64,92,1,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,192,92,1,0,0,0,0,0,2,0,0,0,169,0,0,0,88,91,1,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,8,92,1,0,0,0,0,0,2,0,0,0,25,0,0,0,32,91,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,91,1,0,0,0,0,0,2,0,0,0,169,0,0,0,56,90,1,0,1,0,0,0,0,136,93,225,0,176,19,97,4,0,0,0,0,0,0,0,232,90,1,0,0,0,0,0,2,0,0,0,225,0,0,0,16,89,1,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,248,89,1,0,0,0,0,0,2,0,0,0,185,1,0,0,248,86,1,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,184,88,1,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,9,8,9,9,9,9,9,9,9,9,11,11,12,7,7,7,7,8,8,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,7,7,7,7,8,8,9,8,9,9,9,9,9,9,10,10,10,10,11,11,12,8,8,8,8,8,8,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,7,7,8,8,8,8,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,12,11,9,9,8,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,8,8,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,12,11,12,11,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,12,11,12,11,11,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,12,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,12,11,11,12,11,10,10,10,10,10,10,10,10,10,10,10,10,11,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,12,11,12,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,12,11,12,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,12,11,11,12,11,11,12,10,10,11,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,12,12,11,12,11,11,12,12,12,11,11,10,10,10,10,10,10,10,10,10,11,12,12,11,12,12,11,12,11,11,11,11,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,5,5,7,7,9,9,11,11,12,12,13,13,6,5,5,6,6,9,9,10,10,12,12,12,13,15,14,6,5,5,7,7,9,9,10,10,12,12,12,13,14,13,17,7,7,8,8,10,10,11,11,12,13,13,13,13,13,17,7,7,8,8,10,10,11,11,13,13,13,13,14,14,17,11,11,9,9,11,11,12,12,12,13,13,14,15,13,17,12,12,9,9,11,11,12,12,13,13,13,13,14,16,17,17,17,11,12,12,12,13,13,13,14,15,14,15,15,17,17,17,12,12,11,11,13,13,14,14,15,14,15,15,17,17,17,15,15,13,13,14,14,15,14,15,15,16,15,17,17,17,15,15,13,13,13,14,14,15,15,15,15,16,17,17,17,17,16,14,15,14,14,15,14,14,15,15,15,17,17,17,17,17,14,14,16,14,15,15,15,15,15,15,17,17,17,17,17,17,16,16,15,17,15,15,14,17,15,17,16,17,17,17,17,16,15,14,15,15,15,15,15,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,3,10,10,10,10,10,10,10,10,10,10,5,6,6,10,10,10,10,10,10,10,10,10,10,6,7,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,8,8,9,9,10,10,7,5,5,7,7,8,8,8,8,9,10,11,11,7,5,5,7,7,8,8,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,9,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,9,10,9,10,11,11,11,0,13,12,9,8,9,9,10,10,11,11,12,11,0,0,0,9,9,9,9,10,10,11,11,12,12,0,0,0,10,10,9,9,10,10,11,11,12,12,0,0,0,13,13,10,10,11,11,12,11,13,12,0,0,0,14,14,10,10,11,10,11,11,12,12,0,0,0,0,0,12,12,11,11,12,12,13,13,0,0,0,0,0,12,12,11,10,12,11,13,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,7,7,7,7,7,7,10,10,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,6,7,6,6,4,7,7,10,9,9,10,9,9,5,7,7,10,9,9,10,9,9,6,10,10,10,10,10,11,10,10,6,9,9,10,9,10,11,10,10,6,9,9,10,9,9,11,9,10,7,10,10,11,11,11,11,10,10,6,9,9,10,10,10,11,9,9,6,9,9,10,10,10,10,9,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,5,5,8,8,8,8,9,9,10,10,11,11,11,11,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,9,9,8,8,10,10,10,10,11,11,12,12,12,12,0,0,0,9,9,8,8,10,10,10,10,11,11,12,12,12,12,0,0,0,10,10,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,10,10,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,11,11,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,11,12,12,13,13,0,0,0,0,0,10,10,11,11,11,11,12,12,13,12,13,13,0,0,0,0,0,0,0,11,10,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,13,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,4,5,6,6,8,8,0,0,0,8,8,7,7,9,9,0,0,0,8,8,7,7,9,9,0,0,0,9,10,8,8,9,9,0,0,0,10,10,8,8,9,9,0,0,0,11,10,8,8,10,10,0,0,0,11,11,8,8,10,10,0,0,0,12,12,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,2,3,7,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,8,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,8,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,8,10,8],"i8",L3,R.GLOBAL_BASE+86572),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,18,8,11,8,8,9,9,10,4,4,18,5,9,5,6,7,8,10,18,18,18,18,17,17,17,17,17,17,7,5,17,6,11,6,7,8,9,12,12,9,17,12,8,8,9,10,10,13,7,5,17,6,8,4,5,6,8,10,6,5,17,6,8,5,4,5,7,9,7,7,17,8,9,6,5,5,6,8,8,8,17,9,11,8,6,6,6,7,9,10,17,12,12,10,9,7,7,8,0,0,0,0,2,0,0,0,100,0,0,0,216,163,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,176,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,216,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,126,1,0,0,0,0,0,40,126,1,0,80,126,1,0,0,0,0,0,0,0,0,0,120,126,1,0,160,126,1,0,0,0,0,0,0,0,0,0,200,126,1,0,240,126,1,0,24,127,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,32,138,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,200,163,1,0,0,0,0,0,4,0,0,0,113,2,0,0,144,135,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,8,138,1,0,0,0,0,0,2,0,0,0,81,0,0,0,16,135,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,104,135,1,0,0,0,0,0,2,0,0,0,81,0,0,0,144,134,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,232,134,1,0,0,0,0,0,2,0,0,0,33,1,0,0,32,133,1,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,72,134,1,0,0,0,0,0,4,0,0,0,81,0,0,0,184,132,1,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,16,133,1,0,0,0,0,0,2,0,0,0,121,0,0,0,8,132,1,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,136,132,1,0,0,0,0,0,2,0,0,0,169,0,0,0,32,131,1,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,208,131,1,0,0,0,0,0,2,0,0,0,25,0,0,0,232,130,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,8,131,1,0,0,0,0,0,4,0,0,0,81,0,0,0,128,130,1,0,1,0,0,0,0,176,19,225,0,176,19,97,2,0,0,0,0,0,0,0,216,130,1,0,0,0,0,0,2,0,0,0,225,0,0,0,88,129,1,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,64,130,1,0,0,0,0,0,2,0,0,0,185,1,0,0,64,127,1,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,0,129,1,0,0,0,0,0,1,5,5,7,7,8,7,8,8,10,10,9,9,10,10,10,11,11,10,12,11,12,12,12,9,8,8,8,8,8,9,10,10,10,10,11,11,11,10,11,11,12,12,11,12,8,8,7,7,8,9,10,10,10,9,10,10,9,10,10,11,11,11,11,11,11,9,9,9,9,8,9,10,10,11,10,10,11,11,12,10,10,12,12,11,11,10,9,9,10,8,9,10,10,10,9,10,10,11,11,10,11,10,10,10,12,12,12,9,10,9,10,9,9,10,10,11,11,11,11,10,10,10,11,12,11,12,11,12,10,11,10,11,9,10,9,10,9,10,10,9,10,10,11,10,11,11,11,11,12,11,9,10,10,10,10,11,11,11,11,11,10,11,11,11,11,10,12,10,12,12,11,12,10,10,11,10,9,11,10,11,9,10,11,10,10,10,11,11,11,11,12,12,10,9,9,11,10,9,12,11,10,12,12,11,11,11,11,10,11,11,12,11,10,12,9,11,10,11,10,10,11,10,11,9,10,10,10,11,12,11,11,12,11,10,10,11,11,9,10,10,12,10,11,10,10,10,9,10,10,10,10,9,10,10,11,11,11,11,12,11,10,10,10,10,11,11,10,11,11,9,11,10,12,10,12,11,10,11,10,10,10,11,10,10,11,11,10,11,10,10,10,10,11,11,12,10,10,10,11,10,11,12,11,10,11,10,10,11,11,10,12,10,9,10,10,11,11,11,10,12,10,10,11,11,11,10,10,11,10,10,10,11,10,11,10,12,11,11,10,10,10,12,10,10,11,9,10,11,11,11,10,10,11,10,10,9,11,11,12,12,11,12,11,11,11,11,11,11,9,10,11,10,12,10,10,10,10,11,10,10,11,10,10,12,10,10,10,10,10,9,12,10,10,10,10,12,9,11,10,10,11,10,12,12,10,12,12,12,10,10,10,10,9,10,11,10,10,12,10,10,12,11,10,11,10,10,12,11,10,12,10,10,11,9,11,10,9,10,9,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,5,5,10,8,11,11,11,11,11,11,11,11,6,6,6,7,6,11,10,11,11,11,11,11,11,11,11,7,5,6,6,6,8,7,11,11,11,11,11,11,11,11,11,7,8,8,8,9,9,11,11,11,11,11,11,11,11,11,9,8,7,8,9,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,4,5,5,7,6,6,6,5,7,7,7,6,6,7,7,7,6,6,7,7,7,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,6,7,7,7,7,8,8,9,9,7,6,6,7,7,8,8,7,7,8,9,10,10,7,6,6,7,7,8,7,7,7,9,9,10,12,0,8,8,8,8,8,9,8,8,9,9,10,10,0,8,8,8,8,8,9,8,9,9,9,11,10,0,0,13,9,8,9,9,9,9,10,10,11,11,0,13,0,9,9,9,9,9,9,11,10,11,11,0,0,0,8,9,10,9,10,10,13,11,12,12,0,0,0,8,9,9,9,10,10,13,12,12,13,0,0,0,12,0,10,10,12,11,10,11,12,12,0,0,0,13,13,10,10,10,11,12,0,13,0,0,0,0,0,0,13,11,0,12,12,12,13,12,0,0,0,0,0,0,13,13,11,13,13,11,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,6,6,8,8,9,9,9,9,10,10,10,7,7,8,8,9,9,9,9,10,10,9,7,7,8,8,9,9,9,9,10,10,10,8,8,9,9,9,9,9,9,10,10,10,8,8,9,9,9,9,8,9,10,10,10,8,8,9,9,9,10,10,10,10,10,10,9,9,9,9,9,9,10,10,11,10,11,9,9,9,9,10,10,10,10,11,11,11,10,10,9,9,10,10,10,9,11,10,10,10,10,10,10,9,9,10,10,11,11,10,10,10,9,9,9,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,11,9,10,12,9,10,4,7,7,10,10,10,11,9,9,6,11,10,11,11,12,11,11,11,6,10,10,11,11,12,11,10,10,6,9,10,11,11,11,11,10,10,7,10,11,12,11,11,12,11,12,6,9,9,10,9,9,11,10,10,6,9,9,10,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,6,6,8,8,9,9,8,8,10,9,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,11,0,0,0,8,8,9,9,10,10,9,9,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,9,9,11,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,11,12,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,10,10,10,10,11,11,10,10,11,11,12,12,13,13,0,0,0,0,0,10,9,10,11,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,9,10,11,12,12,13,13,14,13,0,0,0,0,0,9,9,9,10,10,10,11,11,13,12,13,13,0,0,0,0,0,10,10,10,10,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,10,10,11,11,12,12,13,13,13,14,0,0,0,0,0,0,0,11,11,11,11,12,12,13,14,14,14,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,14,13,0,0,0,0,0,0,0,11,11,12,12,13,13,14,14,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,5,5,7,6,8,8,0,0,0,7,7,7,7,8,8,0,0,0,7,7,7,7,8,9,0,0,0,8,8,8,8,9,9,0,0,0,8,8,8,8,9,9,0,0,0,9,9,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,10,10,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,2,3,7,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,8,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,6,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,4,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,9,0,0,0,0,0,0,8,9,11,0,0,0,0,0,0,9,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,9,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,11,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,9,11,11,0,0,0,0,0,0,8,11,9],"i8",L3,R.GLOBAL_BASE+97272),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,5,18,7,10,6,7,8,9,10,5,2,18,5,7,5,6,7,8,11,17,17,17,17,17,17,17,17,17,17,7,4,17,6,9,6,8,10,12,15,11,7,17,9,6,6,7,9,11,15,6,4,17,6,6,4,5,8,11,16,6,6,17,8,6,5,6,9,13,16,8,9,17,11,9,8,8,11,13,17,9,12,17,15,14,13,12,13,14,17,12,15,17,17,17,17,17,16,17,17,0,0,0,0,154,153,153,153,153,153,185,191,0,0,0,0,0,0,0,0,154,153,153,153,153,153,185,63,154,153,153,153,153,153,201,63,51,51,51,51,51,51,211,63,154,153,153,153,153,153,217,63,0,0,0,0,0,0,224,63,51,51,51,51,51,51,227,63,102,102,102,102,102,102,230,63,154,153,153,153,153,153,233,63,205,204,204,204,204,204,236,63,0,0,0,0,0,0,240,63,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,16,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,0,0,0,35,0,0,0,21,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,30,0,0,0,20,0,0,0,8,0,0,0,0,0,0,192,0,0,160,63,25,0,0,0,12,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,9,0,0,0,253,255,255,255,0,0,0,0,0,0,0,0,20,0,0,0,9,0,0,0,252,255,255,255,0,0,0,0,0,0,0,0,20,0,0,0,9,0,0,0,252,255,255,255,0,0,0,0,0,0,0,0,20,0,0,0,6,0,0,0,250,255,255,255,0,0,0,0,0,0,0,0,20,0,0,0,3,0,0,0,246,255,255,255,0,0,0,0,0,0,0,0,18,0,0,0,1,0,0,0,242,255,255,255,0,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,240,255,255,255,0,0,0,0,0,0,0,0,18,0,0,0,254,255,255,255,240,255,255,255,0,0,0,0,0,0,0,0,12,0,0,0,254,255,255,255,236,255,255,255,0,0,0,0,0,0,0,0,253,255,255,255,248,255,255,255,243,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,247,255,255,255,247,255,255,255,247,255,255,255,247,255,255,255,247,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,252,255,255,255,246,255,255,255,242,255,255,255,240,255,255,255,242,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,245,255,255,255,245,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,250,255,255,255,244,255,255,255,242,255,255,255,240,255,255,255,241,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,254,255,255,255,254,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,244,255,255,255,243,255,255,255,242,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,251,255,255,255,254,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,243,255,255,255,245,255,255,255,246,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,243,255,255,255,245,255,255,255,246,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,248,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,253,255,255,255,248,255,255,255,243,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,255,255,255,246,255,255,255,242,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,245,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,250,255,255,255,244,255,255,255,242,255,255,255,240,255,255,255,241,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,254,255,255,255,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,244,255,255,255,243,255,255,255,242,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,243,255,255,255,244,255,255,255,244,255,255,255,250,255,255,255,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,243,255,255,255,245,255,255,255,246,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,243,255,255,255,245,255,255,255,246,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,248,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,241,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,247,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,3,0,0,0,3,0,0,0,15,0,0,0,3,0,0,0,3,0,0,0,15,0,0,0,10,0,0,0,10,0,0,0,100,0,0,0,10,0,0,0,10,0,0,0,100,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,6,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,250,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,2,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,16,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,252,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,14,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,252,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,250,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,252,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,6,0,0,0,11,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,234,255,255,255,240,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,247,255,255,255,251,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,6,0,0,0,11,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,228,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,240,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,6,0,0,0,11,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,234,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,224,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,234,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,3,0,0,0,3,0,0,0,5,0,0,0,10,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,224,255,255,255,224,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,224,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,2,0,0,0,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,224,255,255,255,224,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,224,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,244,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,221,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,6,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,2,0,0,0,3,0,0,0,6,0,0,0,6,0,0,0,8,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,2,0,0,0,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,0,0,0,0,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,16,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,14,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,250,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,2,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,234,255,255,255,240,255,255,255,244,255,255,255,250,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,0,0,0,0,4,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,253,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,253,255,255,255,255,255,255,255,4,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,243,255,255,255,245,255,255,255,248,255,255,255,250,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,12,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,240,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,251,255,255,255,253,255,255,255,1,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,234,255,255,255,238,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,5,0,0,0,5,0,0,0,11,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,249,255,255,255,251,255,255,255,254,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,228,255,255,255,234,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,242,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,2,0,0,0,6,0,0,0,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,224,255,255,255,224,255,255,255,232,255,255,255,240,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,224,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,238,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,221,255,255,255,226,255,255,255,231,255,255,255,231,255,255,255,231,255,255,255,231,255,255,255,231,255,255,255,231,255,255,255,241,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,254,255,255,255,2,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,6,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,254,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,250,255,255,255,252,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,1,0,0,0,4,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,255,255,255,255,0,0,0,0,3,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,249,255,255,255,252,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,8,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,0,0,0,0,2,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,252,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,255,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,255,255,255,255,1,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,252,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,255,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,234,255,255,255,240,255,255,255,244,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,253,255,255,255,255,255,255,255,0,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,247,255,255,255,251,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,255,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,251,255,255,255,254,255,255,255,0,0,0,0,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,234,255,255,255,237,255,255,255,237,255,255,255,237,255,255,255,237,255,255,255,238,255,255,255,239,255,255,255,240,255,255,255,244,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,255,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,228,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,240,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,234,255,255,255,236,255,255,255,241,255,255,255,246,255,255,255,248,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,7,0,0,0,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,249,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,222,255,255,255,226,255,255,255,228,255,255,255,230,255,255,255,232,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,2,0,0,0,218,255,255,255,218,255,255,255,218,255,255,255,218,255,255,255,220,255,255,255,222,255,255,255,222,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,238,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,218,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,221,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,228,255,255,255,236,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,221,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,236,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,20,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,246,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,6,0,0,0,15,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,246,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,2,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,10,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,250,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,6,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,252,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,10,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,1,0,0,0,4,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,252,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,4],"i8",L3,R.GLOBAL_BASE+107456),d3([4,0,0,0,5,0,0,0,6,0,0,0,10,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,255,255,255,255,0,0,0,0,3,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,252,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,8,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,0,0,0,0,2,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,251,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,252,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,253,255,255,255,254,255,255,255,255,255,255,255,1,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,249,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,240,255,255,255,244,255,255,255,250,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,253,255,255,255,255,255,255,255,0,0,0,0,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,247,255,255,255,248,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,251,255,255,255,254,255,255,255,0,0,0,0,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,238,255,255,255,240,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,243,255,255,255,243,255,255,255,244,255,255,255,246,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,246,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,252,255,255,255,0,0,0,0,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,237,255,255,255,237,255,255,255,237,255,255,255,237,255,255,255,238,255,255,255,239,255,255,255,240,255,255,255,244,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,252,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,7,0,0,0,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,236,255,255,255,240,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,250,255,255,255,254,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,228,255,255,255,230,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,236,255,255,255,240,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,234,255,255,255,238,255,255,255,242,255,255,255,248,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,255,255,255,254,255,255,255,2,0,0,0,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,234,255,255,255,238,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,249,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,232,255,255,255,238,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,242,255,255,255,244,255,255,255,246,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,236,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,216,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,17,0,0,0,17,0,0,0,18,0,0,0,18,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,12,0,0,0,13,0,0,0,13,0,0,0,13,0,0,0,14,0,0,0,14,0,0,0,14,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0,16,0,0,0,16,0,0,0,17,0,0,0,17,0,0,0,17,0,0,0,18,0,0,0,18,0,0,0,19,0,0,0,19,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,7,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,0,0,0,0,0,0,224,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,205,204,204,204,204,204,244,63,154,153,153,153,153,153,249,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,12,64,0,0,0,0,0,0,16,64,0,0,0,0,0,0,16,64,51,51,51,51,51,51,17,64,102,102,102,102,102,102,18,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,0,0,0,0,0,0,20,64,32,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,32,0,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,0,0,0,0,0,1,0,0,128,0,0,0,128,0,0,0,0,1,0,0,0,2,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,15,39,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,0,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,32,0,0,0,0,0,0,0,154,153,153,153,153,153,201,63,154,153,153,153,153,153,201,63,154,153,153,153,153,153,201,63,154,153,153,153,153,153,217,63,51,51,51,51,51,51,227,63,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,0,0,0,0,128,135,195,64,156,255,255,255,156,255,255,255,156,255,255,255,156,255,255,255,156,255,255,255,156,255,255,255,151,255,255,255,151,255,255,255,151,255,255,255,151,255,255,255,146,255,255,255,136,255,255,255,126,255,255,255,126,255,255,255,126,255,255,255,126,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,116,255,255,255,106,255,255,255,205,204,204,204,204,204,43,64,51,51,51,51,51,51,46,64,154,153,153,153,153,153,47,64,0,0,0,0,0,128,48,64,51,51,51,51,51,51,49,64,102,102,102,102,102,230,50,64,154,153,153,153,153,25,52,64,0,0,0,0,0,0,72,64,0,0,0,0,0,56,143,64,0,0,0,0,0,56,143,64,0,0,0,0,0,56,143,64,0,0,0,0,0,56,143,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,64,0,0,0,0,0,0,4,64,154,153,153,153,153,153,5,64,0,0,0,0,0,0,8,64,154,153,153,153,153,153,13,64,0,0,0,0,0,0,16,64,0,0,0,0,0,0,16,64,248,148,2,0,40,149,2,0,88,149,2,0,0,0,0,0,8,181,0,0,224,217,1,0,8,181,0,0,32,218,1,0,8,181,0,0,96,218,1,0,8,181,0,0,160,218,1,0,8,181,0,0,224,218,1,0,8,181,0,0,32,219,1,0,8,181,0,0,96,219,1,0,8,181,0,0,160,219,1,0,8,181,0,0,224,219,1,0,8,181,0,0,32,220,1,0,8,181,0,0,96,220,1,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,232,133,2,0,232,133,2,0,16,134,2,0,16,134,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,208,134,2,0,208,134,2,0,16,134,2,0,16,134,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,216,118,2,0,216,118,2,0,0,119,2,0,0,119,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,192,119,2,0,192,119,2,0,0,119,2,0,0,119,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,0,106,2,0,0,106,2,0,40,106,2,0,40,106,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,232,106,2,0,232,106,2,0,40,106,2,0,40,106,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,0,93,2,0,0,93,2,0,40,93,2,0,40,93,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,232,93,2,0,232,93,2,0,40,93,2,0,40,93,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,56,79,2,0,56,79,2,0,96,79,2,0,96,79,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,32,80,2,0,32,80,2,0,96,79,2,0,96,79,2,0,1,0,0,0,0,0,0,0,16,0,0,0,240,233,0,0,8,65,2,0,8,65,2,0,48,65,2,0,48,65,2,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,240,65,2,0,240,65,2,0,48,65,2,0,48,65,2,0,1,0,0,0,0,0,0,0,16,0,0,0,88,206,0,0,56,48,2,0,56,48,2,0,96,48,2,0,96,48,2,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,32,49,2,0,32,49,2,0,96,48,2,0,96,48,2,0,1,0,0,0,0,0,0,0,16,0,0,0,88,206,0,0,40,31,2,0,40,31,2,0,80,31,2,0,80,31,2,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,16,32,2,0,16,32,2,0,80,31,2,0,80,31,2,0,1,0,0,0,0,0,0,0,16,0,0,0,88,206,0,0,64,15,2,0,64,15,2,0,104,15,2,0,104,15,2,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,40,16,2,0,40,16,2,0,104,15,2,0,104,15,2,0,1,0,0,0,0,0,0,0,16,0,0,0,160,220,1,0,208,251,1,0,208,251,1,0,248,251,1,0,248,251,1,0,1,0,0,0,0,0,0,0,32,0,0,0,160,220,1,0,184,252,1,0,184,252,1,0,248,251,1,0,248,251,1,0,1,0,0,0,0,0,0,0,16,0,0,0,160,220,1,0,184,231,1,0,184,231,1,0,224,231,1,0,224,231,1,0,1,0,0,0,0,0,0,0,32,0,0,0,160,220,1,0,160,232,1,0,160,232,1,0,224,231,1,0,224,231,1,0,0,0,0,0,255,255,255,255,255,255,255,255,10,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,R.GLOBAL_BASE+117696),d3([1,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,71,0,0,0,157,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,104,251,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,233,1,0,0,0,0,0,0,0,0,0,0,0,0,0,88,233,1,0,0,0,0,0,0,0,0,0,0,0,0,0,128,233,1,0,0,0,0,0,0,0,0,0,0,0,0,0,168,233,1,0,0,0,0,0,208,233,1,0,248,233,1,0,0,0,0,0,0,0,0,0,32,234,1,0,72,234,1,0,0,0,0,0,0,0,0,0,112,234,1,0,152,234,1,0,0,0,0,0,0,0,0,0,192,234,1,0,232,234,1,0,0,0,0,0,0,0,0,0,16,235,1,0,56,235,1,0,96,235,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,200,232,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,9,13,13,14,15,14,14,15,15,5,5,9,10,12,12,13,14,16,15,10,6,6,6,8,11,12,13,16,15,11,7,5,3,5,8,10,12,15,15,10,10,7,4,3,5,8,10,12,12,12,12,9,7,5,4,6,8,10,13,13,12,11,9,7,5,5,6,9,12,14,12,12,10,8,6,6,6,7,11,13,12,14,13,10,8,7,7,7,10,11,11,12,13,12,11,10,8,8,9,0,0,0,0,4,0,0,0,81,0,0,0,0,251,1,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,88,251,1,0,0,0,0,0,4,0,0,0,113,2,0,0,112,248,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,250,1,0,0,0,0,0,2,0,0,0,81,0,0,0,240,247,1,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,72,248,1,0,0,0,0,0,2,0,0,0,33,1,0,0,128,246,1,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,168,247,1,0,0,0,0,0,4,0,0,0,81,0,0,0,24,246,1,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,112,246,1,0,0,0,0,0,2,0,0,0,121,0,0,0,104,245,1,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,232,245,1,0,0,0,0,0,2,0,0,0,169,0,0,0,128,244,1,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,48,245,1,0,0,0,0,0,2,0,0,0,25,0,0,0,72,244,1,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,104,244,1,0,0,0,0,0,2,0,0,0,169,0,0,0,96,243,1,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,16,244,1,0,0,0,0,0,2,0,0,0,121,0,0,0,176,242,1,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,48,243,1,0,0,0,0,0,2,0,0,0,225,0,0,0,136,241,1,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,112,242,1,0,0,0,0,0,2,0,0,0,185,1,0,0,112,239,1,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,48,241,1,0,0,0,0,0,2,0,0,0,225,0,0,0,72,238,1,0,1,0,0,0,0,117,153,225,0,24,61,97,4,0,0,0,0,0,0,0,48,239,1,0,0,0,0,0,2,0,0,0,105,1,0,0,136,236,1,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,248,237,1,0,0,0,0,0,1,0,0,0,49,0,0,0,136,235,1,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,192,235,1,0,0,0,0,0,2,4,4,5,4,5,5,5,5,6,6,6,6,6,6,6,6,6,6,7,6,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,8,7,8,7,9,8,10,9,10,10,11,11,12,12,4,7,6,9,9,10,9,9,8,10,10,11,10,12,10,13,12,13,12,4,6,6,9,9,9,9,9,9,10,10,11,11,11,12,12,12,12,12,7,9,8,11,10,10,10,11,10,11,11,12,12,13,12,13,13,13,13,7,8,9,10,10,11,11,10,10,11,11,11,12,13,13,13,13,14,14,8,9,9,11,11,12,11,12,12,13,12,12,13,13,14,15,14,14,14,8,9,9,10,11,11,11,12,12,13,12,13,13,14,14,14,15,14,16,8,9,9,11,10,12,12,12,12,15,13,13,13,17,14,15,15,15,14,8,9,9,10,11,11,12,13,12,13,13,13,14,15,14,14,14,16,15,9,11,10,12,12,13,13,13,13,14,14,16,15,14,14,14,15,15,17,9,10,10,11,11,13,13,13,14,14,13,15,14,15,14,15,16,15,16,10,11,11,12,12,13,14,15,14,15,14,14,15,17,16,15,15,17,17,10,12,11,13,12,14,14,13,14,15,15,15,15,16,17,17,15,17,16,11,12,12,14,13,15,14,15,16,17,15,17,15,17,15,15,16,17,15,11,11,12,14,14,14,14,14,15,15,16,15,17,17,17,16,17,16,15,12,12,13,14,14,14,15,14,15,15,16,16,17,16,17,15,17,17,16,12,14,12,14,14,15,15,15,14,14,16,16,16,15,16,16,15,17,15,12,13,13,14,15,14,15,17,15,17,16,17,17,17,16,17,16,17,17,12,13,13,14,16,15,15,15,16,15,17,17,15,17,15,17,16,16,17,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,3,3,11,11,11,11,11,11,11,11,11,11,11,11,4,10,11,11,11,11,11,11,11,11,11,11,11,11,11,4,10,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,4,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,6,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,6,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,8,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,8,8,8,9,9,9,9,9,9,9,9,9,9,10,9,10,9,10,10,10,10,8,8,8,9,9,9,9,9,9,9,9,9,9,10,10,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,8,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,8,9,9,10,9,11,10,4,6,6,8,8,9,9,9,9,10,10,11,10,12,10,4,6,6,8,8,9,10,9,9,10,10,11,11,12,12,7,8,8,10,10,11,11,10,10,11,11,12,12,13,12,7,8,8,10,10,11,11,10,10,11,11,12,12,12,13,8,10,9,11,11,12,12,11,11,12,12,13,13,14,13,8,9,9,11,11,12,12,11,12,12,12,13,13,14,13,8,9,9,10,10,12,11,13,12,13,13,14,13,15,14,8,9,9,10,10,11,12,12,12,13,13,13,14,14,14,9,10,10,12,11,13,12,13,13,14,13,14,14,14,15,9,10,10,11,12,12,12,13,13,14,14,14,15,15,15,10,11,11,12,12,13,13,14,14,14,14,15,14,16,15,10,11,11,12,12,13,13,13,14,14,14,14,14,15,16,11,12,12,13,13,14,13,14,14,15,14,15,16,16,16,11,12,12,13,13,14,13,14,14,15,15,15,16,15,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,5,6,6,7,7,7,7,7,7,7,7,6,6,6,7,7,7,7,7,7,7,7,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,7,7,7,7,7,7,7,8,7,8,8,7,7,7,7,7,7,7,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,5,6,6,7,7,8,9,10,10,11,11,5,6,6,7,7,8,8,9,9,10,10,11,11,5,6,6,7,7,8,8,9,9,10,10,11,11,6,7,7,8,8,9,9,10,10,11,11,12,12,6,7,7,8,8,9,9,10,10,11,11,12,12,8,8,8,9,9,10,10,11,11,12,12,13,13,8,8,8,9,9,10,10,11,11,12,12,13,13,9,9,9,10,10,11,11,12,12,13,13,13,13,9,9,9,10,10,11,11,12,12,13,13,14,14,10,10,10,11,11,12,12,13,13,14,13,15,14,10,10,10,11,11,12,12,13,13,14,14,14,14,11,11,12,12,12,13,13,14,14,14,14,15,15,11,11,12,12,12,13,13,14,14,14,15,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,4,4,4,5,5,4,5,4,5,5,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,9,9,10,10,4,6,5,7,7,8,8,8,8,9,9,10,10,4,5,6,7,7,8,8,8,8,9,9,10,10,6,7,7,8,8,8,8,9,9,10,10,10,10,6,7,7,8,8,8,8,9,9,10,10,10,10,7,8,8,8,8,9,9,9,9,10,10,11,11,7,8,8,8,8,9,9,9,9,10,10,11,11,8,8,8,9,9,9,9,9,10,10,10,11,11,8,8,8,9,9,9,9,10,9,10,10,11,11,9,9,9,10,10,10,10,10,11,11,11,11,12,9,9,9,10,10,10,10,10,10,11,10,12,11,10,10,10,10,10,11,11,11,11,11,12,12,12,10,10,10,10,10,11,11,11,11,12,11,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,5,5,5,6,6,7,7,7,7,7,7,5,6,6,6,6,7,7,7,7,8,7,5,6,6,6,6,7,7,7,7,7,7,6,6,6,7,7,7,7,7,7,8,8,6,6,6,7,7,7,7,7,7,8,8,7,7,7,7,7,8,7,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,8,7,8,8,8,8,8,8,7,7,7,7,8,8,8,8,8,8,8,7,8,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,8,9,9,7,9,9,5,8,8,7,9,9,8,9,9,5,8,8,8,10,10,8,10,10,7,10,10,9,10,12,9,11,11,7,10,10,9,11,10,9,11,12,5,8,8,8,10,10,8,10,10,7,10,10,9,12,11,9,10,11,7,10,10,9,11,11,10,12,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,5,5,6,6,7,7,8,8,8,8,9,9,10,10,11,11,5,5,5,6,6,7,7,8,8,8,8,9,9,10,10,11,11,5,5,5,6,6,7,7,8,8,8,8,9,9,10,10,11,11,6,6,6,7,6,7,7,8,8,9,9,10,10,11,11,12,11,6,6,6,6,7,7,7,8,8,9,9,10,10,11,11,11,12,7,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,7,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,8,8,8,8,8,9,8,10,9,10,10,11,10,12,11,13,12,8,8,8,8,8,9,9,9,10,10,10,10,11,11,12,12,12,8,8,8,9,9,9,9,10,10,11,10,12,11,12,12,13,12,8,8,8,9,9,9,9,10,10,10,11,11,11,12,12,12,13,9,9,9,10,10,10,10,11,10,11,11,12,11,13,12,13,13,9,9,10,10,10,10,10,10,11,11,11,11,12,12,13,13,13,10,11,10,11,11,11,11,12,11,12,12,13,12,13,13,14,13,10,10,10,11,11,11,11,11,12,12,12,12,13,13,13,13,14,11,11,11,12,11,12,12,12,12,13,13,13,13,14,13,14,14,11,11,11,11,12,12,12,12,12,12,13,13,13,13,14,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,3,4,4,5,5,7,7,8,8,4,5,5,6,6,7,7,9,9,4,4,5,6,6,7,7,9,9,5,6,6,7,7,8,8,9,9,5,6,6,7,7,8,8,9,9,7,7,7,8,8,9,9,10,10,7,7,7,8,8,9,9,10,10,8,9,9,10,9,10,10,11,11,8,9,9,9,10,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,5,7,7,9,9,6,7,7,9,9,8,9,9,11,10,8,9,9,11,11,6,7,7,9,9,7,8,8,10,10,7,8,8,9,10,9,10,10,11,11,9,9,10,11,11,6,7,7,9,9,7,8,8,10,9,7,8,8,10,10,9,10,9,11,11,9,10,10,11,11,8,9,9,11,11,9,10,10,12,11,9,10,10,11,12,11,11,11,13,13,11,11,11,12,13,8,9,9,11,11,9,10,10,11,11,9,10,10,12,11,11,12,11,13,12,11,11,12,13,13,6,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,11,9,10,10,11,12,7,8,8,10,10,8,9,9,11,11,8,9,9,10,10,10,11,11,12,12,10,10,11,12,12,7,8,8,10,10,8,9,8,10,10,8,9,9,10,10,10,11,10,12,11,10,10,11,12,12,9,10,10,11,12,10,11,11,12,12,10,11,10,12,12,12,12,12,13,13,11,12,12,13,13,9,10,10,11,11,9,10,10,12,12,10,11,11,12,13,11,12,11,13,12,12,12,12,13,14,6,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,11,11,9,10,10,11,12,7,8,8,10,10,8,9,9,11,10,8,8,9,10,10,10,11,10,12,12,10,10,11,11,12,7,8,8,10,10,8,9,9,10,10,8,9,9,10,10,10,11,10,12,12,10,11,10,12,12,9,10,10,12,11,10,11,11,12,12,9,10,10,12,12,12,12,12,13,13,11,11,12,12,14,9,10,10,11,12,10,11,11,12,12,10,11,11,12,12,11,12,12,14,14,12,12,12,13,13,8,9,9,11,11,9,10,10,12,11,9,10,10,12,12,11,12,11,13,13,11,11,12,13,13,9,10,10,12,12,10,11,11,12,12,10,11,11,12,12,12,12,12,14,14,12,12,12,13,13,9,10,10,12,11,10,11,10,12,12,10,11,11,12,12,11,12,12,14,13,12,12,12,13,14,11,12,11,13,13,11,12,12,13,13,12,12,12,14,14,13,13,13,13,15,13,13,14,15,15,11,11,11,13,13,11,12,11,13,13,11,12,12,13,13,12,13,12,15,13,13,13,14,14,15,8,9,9,11,11,9,10,10,11,12,9,10,10,11,12,11,12,11,13,13,11,12,12,13,13,9,10,10,11,12,10,11,10,12,12,10,10,11,12,13,12,12,12,14,13,11,12,12,13,14,9,10,10,12,12,10,11,11,12,12,10,11,11,12,12,12,12,12,14,13,12,12,12,14,13,11,11,11,13,13,11,12,12,14,13,11,11,12,13,13,13,13,13,15,14,12,12,13,13,15,11,12,12,13,13,12,12,12,13,14,11,12,12,13,13,13,13,14,14,15,13,13,13,14,14,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,7,5,7,7,5,7,7,7,9,9,7,9,9,5,7,7,7,9,9,7,9,9,5,7,7,7,9,9,7,9,9,8,9,9,9,10,11,9,11,11,7,9,9,9,11,10,9,11,11,5,7,7,7,9,9,8,9,10,7,9,9,9,11,11,9,10,11,7,9,10,9,11,11,9,11,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,9,16,18,18,17,17,17,17,17,17,5,8,11,12,11,12,17,17,16,16,6,6,8,8,9,10,14,15,16,16,6,7,7,4,6,9,13,16,16,16,6,6,7,4,5,8,11,15,17,16,7,6,7,6,6,8,9,10,14,16,11,8,8,7,6,6,3,4,10,15,14,12,12,10,5,6,3,3,8,13,15,17,15,11,6,8,6,6,9,14,17,15,15,12,8,10,9,9,12,15,0,0,0,0,2,0,0,0,100,0,0,0,216,14,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,72,253,1,0,0,0,0,0,0,0,0,0,0,0,0,0,112,253,1,0,0,0,0,0,0,0,0,0,0,0,0,0,152,253,1,0,0,0,0,0,0,0,0,0,0,0,0,0,192,253,1,0,0,0,0,0,232,253,1,0,16,254,1,0,0,0,0,0,0,0,0,0,56,254,1,0,96,254,1,0,0,0,0,0,0,0,0,0,136,254,1,0,176,254,1,0,0,0,0,0,0,0,0,0,216,254,1,0,0,255,1,0,0,0,0,0,0,0,0,0,40,255,1,0,80,255,1,0,120,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,224,252,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,9,13,14,14,15,14,14,15,15,5,4,6,8,10,12,12,14,15,15,9,5,4,5,8,10,11,13,16,16,10,7,4,3,5,7,9,11,13,13,10,9,7,4,4,6,8,10,12,14,13,11,9,6,5,5,6,8,12,14,13,11,10,8,7,6,6,7,10,14,13,11,12,10,8,7,6,6,9,13,12,11,14,12,11,9,8,7,9,11,11,12,14,13,14,11,10,8,8,9,0,0,0,0,4,0,0,0,81,0,0,0,112,14,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,200,14,2,0,0,0,0,0,4,0,0,0,113,2,0,0,224,11,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,14,2,0,0,0,0,0,2,0,0,0,81,0,0,0,96,11,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,184,11,2,0,0,0,0,0,2,0,0,0,33,1,0,0,240,9,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,24,11,2,0,0,0,0,0,4,0,0,0,81,0,0,0,136,9,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,224,9,2,0,0,0,0,0,2,0,0,0,121,0,0,0,216,8,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,88,9,2,0,0,0,0,0,2,0,0,0,169,0,0,0,240,7,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,160,8,2,0,0,0,0,0,2,0,0,0,25,0,0,0,184,7,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,7,2,0,0,0,0,0,2,0,0,0,169,0,0,0,208,6,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,128,7,2,0,0,0,0,0,2,0,0,0,121,0,0,0,32,6,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,160,6,2,0,0,0,0,0,2,0,0,0,225,0,0,0,248,4,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,224,5,2,0,0,0,0,0,2,0,0,0,185,1,0,0,224,2,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,160,4,2,0,0,0,0,0,2,0,0,0,81,0,0,0,96,2,2,0,1,0,0,0,0,24,125,225,0,24,61,97,4,0,0,0,0,0,0,0,184,2,2,0,0,0,0,0,2,0,0,0,105,1,0,0,160,0,2,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,16,2,2,0,0,0,0,0,1,0,0,0,49,0,0,0,160,255,1,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,216,255,1,0,0,0,0,0,2,3,4,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,8,7,8,6,9,7,10,8,11,10,11,11,11,11,4,7,6,9,9,10,9,9,9,10,10,11,10,11,10,11,11,13,11,4,7,7,9,9,9,9,9,9,10,10,11,10,11,11,11,12,11,12,7,9,8,11,11,11,11,10,10,11,11,12,12,12,12,12,12,14,13,7,8,9,10,11,11,11,10,10,11,11,11,11,12,12,14,12,13,14,8,9,9,11,11,11,11,11,11,12,12,14,12,15,14,14,14,15,14,8,9,9,11,11,11,11,12,11,12,12,13,13,13,13,13,13,14,14,8,9,9,11,10,12,11,12,12,13,13,13,13,15,14,14,14,16,16,8,9,9,10,11,11,12,12,12,13,13,13,14,14,14,15,16,15,15,9,10,10,11,12,12,13,13,13,14,14,16,14,14,16,16,16,16,15,9,10,10,11,11,12,13,13,14,15,14,16,14,15,16,16,16,16,15,10,11,11,12,13,13,14,15,15,15,15,15,16,15,16,15,16,15,15,10,11,11,13,13,14,13,13,15,14,15,15,16,15,15,15,16,15,16,10,12,12,14,14,14,14,14,16,16,15,15,15,16,16,16,16,16,16,11,12,12,14,14,14,14,15,15,16,15,16,15,16,15,16,16,16,16,12,12,13,14,14,15,16,16,16,16,16,16,15,16,16,16,16,16,16,12,13,13,14,14,14,14,15,16,15,16,16,16,16,16,16,16,16,16,12,13,14,14,14,16,15,16,15,16,16,16,16,16,16,16,16,16,16,12,14,13,14,15,15,15,16,15,16,16,15,16,16,16,16,16,16,16,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,3,3,9,9,9,9,9,9,4,9,9,9,9,9,9,9,9,5,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,6,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,9,8,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,10,9,10,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,9,10,10,9,10,8,9,8,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,8,9,8,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,9,10,10,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,7,9,8,10,9,11,10,4,6,6,8,8,10,9,9,9,10,10,11,10,12,10,4,6,6,8,8,10,10,9,9,10,10,11,11,11,12,7,8,8,10,10,11,11,11,10,12,11,12,12,13,11,7,8,8,10,10,11,11,10,10,11,11,12,12,13,13,8,10,10,11,11,12,11,12,11,13,12,13,12,14,13,8,10,9,11,11,12,12,12,12,12,12,13,13,14,13,8,9,9,11,10,12,11,13,12,13,13,14,13,14,13,8,9,9,10,11,12,12,12,12,13,13,14,15,14,14,9,10,10,12,11,13,12,13,13,14,13,14,14,14,14,9,10,10,12,12,12,12,13,13,14,14,14,15,14,14,10,11,11,13,12,13,12,14,14,14,14,14,14,15,15,10,11,11,12,12,13,13,14,14,14,15,15,14,16,15,11,12,12,13,12,14,14,14,13,15,14,15,15,15,17,11,12,12,13,13,14,14,14,15,15,14,15,15,14,17,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,7,7,5,6,6,7,7,7,7,7,7,7,7,5,6,6,7,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,8,8,6,7,7,7,7,7,7,7,7,7,8,7,7,7,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,8,8,8,8,7,7,7,8,7,8,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,5,6,6,7,7,8,8,10,10,11,11,5,6,6,7,7,8,8,9,9,11,10,12,11,5,6,6,7,7,8,8,9,9,10,11,11,12,6,7,7,8,8,9,9,10,10,11,11,12,12,6,7,7,8,8,9,9,10,10,11,12,13,12,7,8,8,9,9,10,10,11,11,12,12,13,13,8,8,8,9,9,10,10,11,11,12,12,13,13,9,9,9,10,10,11,11,12,12,13,13,14,14,9,9,9,10,10,11,11,12,12,13,13,14,14,10,11,11,12,11,13,12,13,13,14,14,15,15,10,11,11,11,12,12,13,13,14,14,14,15,15,11,12,12,13,13,14,13,15,14,15,15,16,15,11,11,12,13,13,13,14,14,14,15,15,15,16,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,4,4,5,5,4,5,5,5,5,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,9,9,10,10,4,6,5,7,7,8,8,8,8,9,9,10,10,4,6,6,7,7,8,8,8,8,9,9,10,10,6,7,7,7,8,8,8,8,9,9,10,10,10,6,7,7,8,8,8,8,9,8,10,9,11,10,7,8,8,8,8,8,9,9,9,10,10,11,11,7,8,8,8,8,9,8,9,9,10,10,11,11,8,8,8,9,9,9,9,9,10,10,10,11,11,8,8,8,9,9,9,9,10,9,10,10,11,11,9,9,9,9,10,10,10,10,10,10,11,11,12,9,9,9,10,9,10,10,10,10,11,10,12,11,10,10,10,10,10,11,11,11,11,11,12,12,12,10,10,10,10,11,11,11,11,11,12,11,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,8,8,5,5,5,6,6,7,7,8,8,8,8,5,5,5,6,6,7,7,7,8,8,8,6,6,6,7,7,7,7,8,8,8,8,6,6,6,7,7,7,7,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,8,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,8,8,8,8,8,8,8,8,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,8,9,9,7,9,9,5,8,8,7,9,9,8,9,9,5,8,8,8,10,10,8,10,10,7,10,10,9,10,12,9,12,11,7,10,10,9,11,10,9,11,12,5,8,8,8,10,10,8,10,10,7,10,10,9,11,11,9,10,11,7,10,10,9,11,11,10,12,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,4,4,6,6,7,7,8,8,8,8,10,10,11,11,11,11,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,6,6,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,6,6,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,7,7,7,8,8,9,8,10,9,10,9,11,10,12,11,13,12,7,7,7,8,8,8,9,9,10,9,10,10,11,11,12,12,13,8,8,8,9,9,9,9,10,10,11,10,11,11,12,12,13,13,8,8,8,9,9,9,10,10,10,10,11,11,11,12,12,12,13,8,9,9,9,9,10,9,11,10,11,11,12,11,13,12,13,13,8,9,9,9,9,9,10,10,11,11,11,11,12,12,13,13,13,10,10,10,10,10,11,10,11,11,12,11,13,12,13,13,14,13,10,10,10,10,10,10,11,11,11,11,12,12,13,13,13,13,14,11,11,11,11,11,12,11,12,12,13,12,13,13,14,13,14,14,11,11,11,11,11,11,12,12,12,12,13,13,13,13,14,14,14,11,12,12,12,12,13,12,13,12,13,13,14,13,14,14,14,14,11,12,12,12,12,12,12,13,13,13,13,13,14,14,14,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,3,4,4,5,5,7,7,9,9,4,5,4,6,6,7,7,9,9,4,4,5,6,6,7,7,9,9,5,6,6,7,7,8,8,10,10,6,6,6,7,7,8,8,10,10,7,7,7,8,8,9,9,11,10,7,7,7,8,8,9,9,10,11,9,9,9,10,10,11,10,12,11,9,9,9,9,10,11,11,11,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,5,7,6,9,9,5,6,7,9,9,8,9,9,11,11,8,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,11,12,5,7,7,9,9,7,8,7,10,10,7,8,8,10,10,9,10,9,12,11,9,10,10,12,12,8,9,9,12,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,14,11,11,12,13,14,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,11,13,13,11,12,12,14,14,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,11,12,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,11,12,13,10,11,11,12,13,6,8,8,10,10,8,9,8,11,10,8,9,9,11,11,10,11,10,13,12,10,11,11,13,13,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,12,13,13,14,12,13,13,14,14,9,10,10,12,12,10,11,10,13,12,10,11,11,13,13,11,13,12,14,13,12,13,13,14,14,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,12,12,7,8,8,10,10,8,9,9,11,11,8,8,9,10,11,10,11,11,13,13,10,10,11,12,13,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,11,13,13,10,11,11,13,12,9,10,10,12,12,10,11,11,13,13,10,10,11,12,13,12,13,13,14,14,12,12,13,13,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,15,14,12,13,13,14,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,12,12,12,14,13,11,12,12,14,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,14,15,12,13,13,14,15,9,10,10,12,12,10,11,10,13,12,10,11,11,13,13,12,13,12,15,14,12,13,13,14,15,11,12,12,14,14,12,13,13,14,14,12,13,13,15,14,14,14,14,14,16,14,14,15,16,16,11],"i8",L3,R.GLOBAL_BASE+124340),d3([12,12,14,14,11,12,12,14,14,12,13,13,14,15,13,14,13,16,14,14,14,14,16,16,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,14,14,9,10,10,12,12,10,11,11,13,13,10,10,11,12,13,12,13,13,15,14,12,12,13,13,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,14,14,12,13,13,15,14,11,12,12,14,13,12,13,13,15,14,11,12,12,13,14,14,15,14,16,15,13,13,14,13,16,11,12,12,14,14,12,13,13,14,15,12,13,12,15,14,14,14,14,16,15,14,15,13,16,14,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,7,5,7,7,5,7,7,8,9,9,7,9,9,5,7,7,7,9,9,8,9,9,5,7,7,7,9,9,7,9,9,7,9,9,9,10,11,9,11,10,7,9,9,9,11,10,9,10,11,5,7,7,7,9,9,7,9,9,7,9,9,9,11,10,9,10,10,8,9,9,9,11,11,9,11,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,6,14,18,18,17,17,17,17,17,17,4,7,9,9,10,13,15,17,17,17,6,7,5,6,8,11,16,17,16,17,5,7,5,4,6,10,14,17,17,17,6,6,6,5,7,10,13,16,17,17,7,6,7,7,7,8,7,10,15,16,12,9,9,6,6,5,3,5,11,15,14,14,13,5,5,7,3,4,8,15,17,17,13,7,7,10,6,6,10,15,17,17,16,10,11,14,10,10,15,17,0,0,0,0,2,0,0,0,100,0,0,0,192,30,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,184,16,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,16,2,0,0,0,0,0,0,0,0,0,0,0,0,0,8,17,2,0,0,0,0,0,0,0,0,0,0,0,0,0,48,17,2,0,0,0,0,0,0,0,0,0,0,0,0,0,88,17,2,0,0,0,0,0,0,0,0,0,0,0,0,0,128,17,2,0,0,0,0,0,168,17,2,0,208,17,2,0,0,0,0,0,0,0,0,0,248,17,2,0,32,18,2,0,0,0,0,0,0,0,0,0,72,18,2,0,112,18,2,0,152,18,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,80,16,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,9,14,13,15,14,16,13,13,14,5,5,7,7,8,9,11,10,12,15,10,6,5,6,6,9,10,10,13,16,10,6,6,6,6,8,9,9,12,15,14,7,6,6,5,6,6,8,12,15,10,8,7,7,6,7,7,7,11,13,14,10,9,8,5,6,4,5,9,12,10,9,9,8,6,6,5,3,6,11,12,11,12,12,10,9,8,5,5,8,10,11,15,13,13,13,12,8,6,7,0,0,0,0,4,0,0,0,81,0,0,0,88,30,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,176,30,2,0,0,0,0,0,4,0,0,0,81,0,0,0,240,29,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,72,30,2,0,0,0,0,0,4,0,0,0,113,2,0,0,96,27,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,29,2,0,0,0,0,0,4,0,0,0,113,2,0,0,208,24,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,27,2,0,0,0,0,0,2,0,0,0,81,0,0,0,80,24,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,168,24,2,0,0,0,0,0,2,0,0,0,81,0,0,0,208,23,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,40,24,2,0,0,0,0,0,4,0,0,0,81,0,0,0,104,23,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,192,23,2,0,0,0,0,0,2,0,0,0,121,0,0,0,184,22,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,56,23,2,0,0,0,0,0,2,0,0,0,121,0,0,0,8,22,2,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,136,22,2,0,0,0,0,0,2,0,0,0,121,0,0,0,88,21,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,216,21,2,0,0,0,0,0,2,0,0,0,121,0,0,0,168,20,2,0,1,0,0,0,0,226,120,225,0,232,51,97,4,0,0,0,0,0,0,0,40,21,2,0,0,0,0,0,2,0,0,0,169,0,0,0,192,19,2,0,1,0,0,0,0,96,18,225,0,128,184,96,4,0,0,0,0,0,0,0,112,20,2,0,0,0,0,0,1,0,0,0,49,0,0,0,192,18,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,248,18,2,0,0,0,0,0,2,4,4,4,4,5,5,5,5,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,6,5,8,6,9,8,10,9,11,10,4,6,6,8,8,9,9,11,10,11,11,11,11,4,6,6,8,8,10,9,11,11,11,11,11,12,6,8,8,10,10,11,11,12,12,13,12,13,13,6,8,8,10,10,11,11,12,12,12,13,14,13,8,10,10,11,11,12,13,14,14,14,14,15,15,8,10,10,11,12,12,13,13,14,14,14,14,15,9,11,11,13,13,14,14,15,14,16,15,17,15,9,11,11,12,13,14,14,15,14,15,15,15,16,10,12,12,13,14,15,15,15,15,16,17,16,17,10,13,12,13,14,14,16,16,16,16,15,16,17,11,13,13,14,15,14,17,15,16,17,17,17,17,11,13,13,14,15,15,15,15,17,17,16,17,16,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,10,10,10,10,10,10,10,10,4,10,10,10,10,10,10,10,10,10,10,4,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,7,7,5,6,6,7,7,7,7,7,7,7,7,5,6,6,6,7,7,7,7,7,7,7,6,7,7,7,7,7,7,7,7,8,8,6,7,7,7,7,7,7,7,7,8,8,7,7,7,7,7,8,7,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,10,11,11,4,6,6,7,7,9,9,11,10,12,12,5,6,5,7,7,9,9,10,11,12,12,6,7,7,8,8,10,10,11,11,13,13,6,7,7,8,8,10,10,11,12,13,13,8,9,9,10,10,11,11,12,12,14,14,8,9,9,10,10,11,11,12,12,14,14,10,10,10,11,11,13,12,14,14,15,15,10,10,10,12,12,13,13,14,14,15,15,11,12,12,13,13,14,14,15,14,16,15,11,12,12,13,13,14,14,15,15,15,16,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,3,4,4,6,6,7,7,8,8,8,8,4,5,5,6,6,8,7,8,8,8,8,4,5,5,6,6,7,8,8,8,8,8,6,7,6,7,7,8,8,9,9,9,9,6,6,7,7,7,8,8,9,9,9,9,7,8,7,8,8,9,9,9,9,9,9,7,7,8,8,8,9,9,9,9,9,9,8,8,8,9,9,9,9,10,9,9,9,8,8,8,9,9,9,9,9,9,9,10,8,8,8,9,9,9,9,10,9,10,10,8,8,8,9,9,9,9,9,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,9,8,8,9,9,7,10,10,5,8,9,7,9,10,8,9,9,4,9,9,9,11,10,8,10,10,7,11,10,10,10,12,10,12,12,7,10,10,10,12,11,10,12,12,5,9,9,8,10,10,9,11,11,7,11,10,10,12,12,10,11,12,7,10,11,10,12,12,10,12,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,9,9,4,5,4,6,6,8,7,9,9,4,4,5,6,6,7,7,9,9,5,6,6,7,7,8,8,10,10,5,6,6,7,7,8,8,10,10,7,8,7,8,8,10,9,11,11,7,7,8,8,8,9,10,11,11,9,9,9,10,10,11,10,12,11,9,9,9,10,10,11,11,11,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,7,8,10,10,4,5,5,8,7,8,8,11,11,3,5,5,7,7,8,9,11,11,6,8,7,9,9,10,10,12,12,6,7,8,9,10,10,10,12,12,8,8,8,10,10,12,11,13,13,8,8,9,10,10,11,11,13,13,10,11,11,12,12,13,13,14,14,10,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,6,7,6,9,9,6,6,7,9,9,8,9,9,11,11,8,9,9,10,11,6,7,7,9,9,7,8,8,10,10,6,7,8,9,10,9,10,10,12,12,9,9,10,11,12,6,7,7,9,9,6,8,7,10,9,7,8,8,10,10,9,10,9,12,11,9,10,10,12,11,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,13,14,11,11,12,13,13,8,9,9,11,11,9,10,10,12,11,9,10,10,12,12,11,12,11,13,13,11,12,12,13,13,6,7,7,9,9,7,8,7,10,10,7,7,8,10,10,9,10,10,12,11,9,10,10,12,12,7,8,8,10,10,8,8,9,11,11,8,9,9,11,11,10,11,11,12,12,10,10,11,12,13,6,7,7,10,10,7,9,8,11,10,8,8,9,10,11,10,11,10,13,11,10,11,11,12,12,9,10,10,12,12,10,10,11,13,13,10,11,11,13,12,12,12,13,13,14,12,12,13,14,14,9,10,10,12,12,9,10,10,12,12,10,11,11,13,13,11,12,11,14,12,12,13,13,14,14,6,7,7,9,9,7,8,7,10,10,7,7,8,10,10,9,10,10,12,11,9,10,10,11,12,6,7,7,10,10,8,9,8,11,10,7,8,9,10,11,10,11,11,13,12,10,10,11,11,13,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,10,13,12,10,11,11,12,12,9,10,10,12,12,10,11,11,13,12,9,10,10,12,13,12,13,12,14,14,11,11,12,12,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,12,14,14,12,13,12,14,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,13,13,9,10,10,12,12,10,11,11,13,13,10,11,11,13,12,12,13,13,14,14,12,12,13,14,14,9,10,10,12,12,9,11,10,13,12,10,10,11,12,13,11,13,12,14,13,12,12,13,14,14,11,12,12,13,13,11,12,13,14,14,12,13,13,14,14,13,13,14,14,16,13,14,14,16,16,11,11,11,13,13,11,12,11,14,13,12,12,13,14,15,13,14,12,16,13,14,14,14,15,16,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,13,14,9,10,10,12,12,10,11,10,13,12,9,10,11,12,13,12,13,12,14,14,12,12,13,13,14,9,10,10,12,12,10,11,11,12,13,10,11,11,13,13,12,13,12,14,14,12,13,13,14,14,11,12,12,13,13,12,13,12,14,14,11,11,12,13,14,13,15,14,16,15,13,12,14,13,16,11,12,12,13,13,12,13,13,14,14,12,12,12,14,14,13,14,14,15,15,13,14,13,16,14,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,4,8,8,5,7,6,9,9,5,6,7,9,9,8,9,9,13,12,8,9,10,12,13,5,7,7,10,9,7,9,9,11,11,6,8,9,11,11,10,11,11,14,14,9,10,11,13,14,5,7,7,9,9,7,9,8,11,11,7,9,9,11,11,9,11,10,14,13,10,11,11,14,14,8,10,10,14,13,10,11,12,15,14,9,11,11,15,14,13,14,14,16,16,12,13,14,17,16,8,10,10,13,13,9,11,11,14,15,10,11,12,14,15,12,14,13,16,16,13,14,15,15,17,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,12,11,15,14,10,11,12,14,14,7,9,9,12,12,9,11,11,13,13,9,11,11,13,13,11,13,13,14,17,11,13,13,15,16,6,9,9,11,11,8,11,10,13,12,9,11,11,13,13,11,13,12,16,14,11,13,13,16,16,10,12,12,15,15,11,13,13,16,16,11,13,13,16,15,14,16,17,17,19,14,16,16,18,0,9,11,11,14,15,10,13,12,16,15,11,13,13,16,16,14,15,14,0,16,14,16,16,18,0,5,7,7,10,10,7,9,9,12,11,7,9,9,11,12,10,11,11,15,14,10,11,12,14,14,6,9,9,11,11,9,11,11,13,13,8,10,11,12,13,11,13,13,17,15,11,12,13,14,15,7,9,9,11,12,9,11,11,13,13,9,11,11,13,13,11,13,12,16,16,11,13,13,15,14,9,11,11,14,15,11,13,13,16,15,10,12,13,16,16,15,16,16,0,0,14,13,15,16,18,10,11,11,15,15,11,13,14,16,18,11,13,13,16,15,15,16,16,19,0,14,15,15,16,16,8,10,10,13,13,10,12,11,16,15,10,11,11,16,15,13,15,16,18,0,13,14,15,17,17,9,11,11,15,15,11,13,13,16,18,11,13,13,16,17,15,16,16,0,0,15,18,16,0,17,9,11,11,15,15,11,13,12,17,15,11,13,14,16,17,15,18,15,0,17,15,16,16,18,19,13,15,14,0,18,14,16,16,19,18,14,16,15,19,19,16,18,19,0,0,16,17,0,0,0,12,14,14,17,17,13,16,14,0,18,14,16,15,18,0,16,18,16,19,17,18,19,17,0,0,8,10,10,14,14,9,12,11,15,15,10,11,12,15,17,13,15,15,18,16,14,16,15,18,17,9,11,11,16,15,11,13,13,0,16,11,12,13,16,15,15,16,16,0,17,15,15,16,18,17,9,12,11,15,17,11,13,13,16,16,11,14,13,16,16,15,15,16,18,19,16,18,16,0,0,12,14,14,0,16,14,16,16,0,18,13,14,15,16,0,17,16,18,0,0,16,16,17,19,0,13,14,14,17,0,14,17,16,0,19,14,15,15,18,19,17,16,18,0,0,15,19,16,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,5,6,6,5,6,6,5,6,6,6,8,8,6,7,8,5,6,6,6,8,7,6,8,8,5,6,6,6,8,7,6,8,8,6,8,8,8,9,9,8,9,9,6,8,7,7,9,8,8,9,9,5,6,6,6,8,7,6,8,8,6,8,8,8,9,9,7,8,9,6,8,8,8,9,9,8,9,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,4,7,7,5,7,7,5,8,8,8,10,10,7,10,10,5,8,8,7,10,10,8,10,10,5,8,8,8,11,10,8,10,10,8,10,10,10,12,13,10,13,13,7,10,10,10,13,12,10,13,13,5,8,8,8,11,10,8,10,11,7,10,10,10,13,13,10,12,13,8,11,11,10,13,13,10,13,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,12,17,16,16,17,17,17,17,17,4,7,11,11,12,9,17,10,17,17,7,7,8,9,7,9,11,10,15,17,7,9,10,11,10,12,14,12,16,17,7,8,5,7,4,7,7,8,16,16,6,10,9,10,7,10,11,11,16,17,6,8,8,9,5,7,5,8,16,17,5,5,8,7,6,7,7,6,6,14,12,10,12,11,7,11,4,4,2,7,17,15,15,15,8,15,6,8,5,9,0,0,0,0,2,0,0,0,100,0,0,0,208,47,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,32,2,0,0,0,0,0,0,0,0,0,0,0,0,0,200,32,2,0,0,0,0,0,0,0,0,0,0,0,0,0,240,32,2,0,0,0,0,0,0,0,0,0,0,0,0,0,24,33,2,0,0,0,0,0,0,0,0,0,0,0,0,0,64,33,2,0,0,0,0,0,0,0,0,0,0,0,0,0,104,33,2,0,0,0,0,0,144,33,2,0,184,33,2,0,0,0,0,0,0,0,0,0,224,33,2,0,8,34,2,0,0,0,0,0,0,0,0,0,48,34,2,0,88,34,2,0,128,34,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,56,32,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,9,14,13,14,13,16,12,13,14,5,4,6,6,8,9,11,10,12,15,10,5,5,6,6,8,10,10,13,16,10,6,6,6,6,8,9,9,12,14,13,7,6,6,4,6,6,7,11,14,10,7,7,7,6,6,6,7,10,13,15,10,9,8,5,6,5,6,10,14,10,9,8,8,6,6,5,4,6,11,11,11,12,11,10,9,9,5,5,9,10,12,15,13,13,13,13,8,7,7,0,0,0,0,4,0,0,0,81,0,0,0,104,47,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,192,47,2,0,0,0,0,0,4,0,0,0,81,0,0,0,0,47,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,88,47,2,0,0,0,0,0,4,0,0,0,113,2,0,0,112,44,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,46,2,0,0,0,0,0,4,0,0,0,113,2,0,0,224,41,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,44,2,0,0,0,0,0,2,0,0,0,81,0,0,0,96,41,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,184,41,2,0,0,0,0,0,2,0,0,0,81,0,0,0,224,40,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,56,41,2,0,0,0,0,0,4,0,0,0,81,0,0,0,120,40,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,208,40,2,0,0,0,0,0,2,0,0,0,121,0,0,0,200,39,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,72,40,2,0,0,0,0,0,2,0,0,0,121,0,0,0,24,39,2,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,152,39,2,0,0,0,0,0,2,0,0,0,121,0,0,0,104,38,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,232,38,2,0,0,0,0,0,2,0,0,0,225,0,0,0,64,37,2,0,1,0,0,0,0,228,91,225,0,224,255,96,4,0,0,0,0,0,0,0,40,38,2,0,0,0,0,0,2,0,0,0,225,0,0,0,24,36,2,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,0,37,2,0,0,0,0,0,2,0,0,0,33,1,0,0,168,34,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,208,35,2,0,0,0,0,0,3,5,5,7,7,8,8,8,8,8,8,9,8,8,9,9,9,5,6,6,7,7,8,8,8,8,8,8,9,9,9,9,9,9,5,6,6,7,7,8,8,8,8,8,8,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,9,9,9,9,9,9,9,9,9,9,9,10,9,9,9,10,9,9,9,9,9,9,9,9,9,9,10,9,9,9,10,9,9,10,9,9,9,9,9,9,9,9,9,10,10,10,9,10,9,10,10,9,9,9,9,9,9,9,9,9,10,10,9,10,10,9,9,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,7,7,8,9,8,8,9,8,9,8,9,9,4,7,6,8,8,9,9,9,9,9,9,9,9,9,9,4,7,6,9,9,10,10,9,9,10,10,10,10,11,11,7,9,8,10,10,11,11,10,10,11,11,11,11,11,11,7,8,9,10,10,11,11,10,10,11,11,11,11,11,12,8,10,10,11,11,12,12,11,11,12,12,12,12,13,12,8,10,10,11,11,12,11,11,11,11,12,12,12,12,13,8,9,9,11,10,11,11,12,12,12,12,13,12,13,12,8,9,9,11,11,11,11,12,12,12,12,12,13,13,13,9,10,10,11,12,12,12,12,12,13,13,13,13,13,13,9,10,10,11,11,12,12,12,12,13,13,13,13,14,13,10,10,10,12,11,12,12,13,13,13,13,13,13,13,13,10,10,11,11,11,12,12,13,13,13,13,13,13,13,13,10,11,11,12,12,13,12,12,13,13,13,13,13,13,14,10,11,11,12,12,13,12,13,13,13,14,13,13,14,13,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,2,9,8,15,15,15,15,15,15,15,15,15,15,4,8,9,13,14,14,14,14,14,14,14,14,14,14,14,5,8,9,14,14,14,14,14,14,14,14,14,14,14,14,11,14,14,14,14,14,14,14,14,14,14,14,14,14,14,11,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,3,5,5,6,6,7,7,7,7,7,7,5,6,5,7,7,7,7,8,7,8,8,5,5,6,6,7,7,7,7,7,8,8,6,7,7,7,7,8,7,8,8,8,8,6,6,7,7,7,7,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,7,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,10,10,4,6,6,7,7,9,9,10,10,11,11,4,6,6,7,7,9,9,10,10,11,11,6,8,8,9,9,10,10,11,11,12,12,6,8,8,9,9,10,10,11,11,12,12,8,9,9,10,10,11,11,12,12,13,13,8,9,9,10,10,11,11,12,12,13,13,10,10,10,11,11,13,13,13,13,15,14,9,10,10,12,11,12,13,13,13,14,15,11,12,12,13,13,13,13,15,14,15,15,11,11,12,13,13,14,14,14,15,15,15,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,3,4,4,6,6,7,7,8,8,8,8,4,5,5,7,6,8,8,8,8,8,8,4,5,5,6,7,8,8,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,7,8,8,8,8,8,8,9,9,9,9,7,8,8,8,8,8,8,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,9,8,7,10,10,8,10,10,5,8,9,7,10,10,7,10,9,4,8,8,9,11,11,8,11,11,7,11,11,10,10,13,10,13,13,7,11,11,10,13,12,10,13,13,5,9,8,8,11,11,9,11,11,7,11,11,10,13,13,10,12,13,7,11,11,10,13,13,9,13,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,9,9,4,5,4,6,6,7,7,9,9,4,4,5,6,6,7,8,9,9,5,6,6,7,7,8,8,10,10,5,6,6,7,7,8,8,10,10,7,8,7,8,8,10,9,11,11,7,7,8,8,8,9,10,10,11,9,9,9,10,10,11,11,12,11,9,9,9,10,10,11,11,11,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,8,8,10,10,4,5,5,8,7,8,8,11,11,3,5,5,7,8,8,8,11,11,6,8,7,9,9,10,9,12,11,6,7,8,9,9,9,10,11,12,8,8,8,10,9,12,11,13,13,8,8,9,9,10,11,12,13,13,10,11,11,12,12,13,13,14,14,10,10,11,11,12,13,13,14,14,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,6,7,6,9,9,6,6,7,9,9,8,9,9,11,11,8,9,9,11,11,6,7,7,9,9,7,8,8,10,10,7,7,8,9,10,9,10,10,11,11,9,9,10,11,12,6,7,7,9,9,7,8,7,10,9,7,8,8,10,10,9,10,9,12,11,9,10,10,12,11,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,11,12,13,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,11,13,12,11,12,12,13,13,5,7,7,9,9,7,8,7,10,10,7,7,8,10,10,9,10,10,12,11,9,10,10,11,12,7,8,8,10,10,8,8,9,11,11,8,9,9,11,11,10,10,11,12,13,10,10,11,12,12,6,7,7,10,10,7,9,8,11,10,8,8,9,10,11,10,11,10,13,11,10,11,11,12,12,9,10,10,12,12,10,10,11,13,13,10,11,11,12,13,12,12,12,13,14,12,12,13,14,14,9,10,10,12,12,9,10,10,13,12,10,11,11,13,13,11,12,11,14,12,12,13,13,14,14,6,7,7,9,9,7,8,7,10,10,7,8,8,10,10,9,10,10,12,11,9,10,10,11,12,6,7,7,10,10,8,9,8,11,10,7,8,9,10,11,10,11,11,12,12,10,10,11,11,13,7,8,8,10,10,8,9,9,11,11,8,9,8,11,11,10,11,10,13,12,10,11,11,13,12,9,10,10,12,12,10,11,11,13,12,9,10,10,12,13,12,13,12,14,14,11,11,12,12,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,12,12,14,14,12,13,12,14,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,13,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,12,13,14,15,12,12,13,14,14,9,10,10,12,12,9,11,10,13,12,10,10,11,12,13,12,13,12,14,13,12,12,13,14,15,11,12,12,14,13,11,12,12,14,14,12,13,13,14,14,13,13,14,14,16,13,14,14,15,15,11,12,11,13,13,11,12,11,14,13,12,12,13,14,15,12,14,12,15,12,13,14,15,15,16,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,13,11,12,12,13,13,9,10,10,12,12,10,11,10,13,12,9,10,11,12,13,12,13,12,14,14,12,12,13,13,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,12,14,14,12,13,13,14,14,11,11,11,13,13,12,13,12,14,14,11,11,12,13,14,14,14,14,16,15,12,12,14,12,15,11,12,12,13,14,12,13,13,14,15,11,12,12,14,14,13,14,14,16,16,13,14,13,16,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,4,8,8,5,7,6,9,9,5,6,7,9,9,8,9,9,13,12,8,9,10,12,13,5,7,7,10,9,7,9,9,11,11,7,8,9,11,11,10,11,11,14,14,9,10,11,13,14,5,7,7,9,10,6,9,8,11,11,7,9,9,11,11,9,11,10,14,13,10,11,11,14,13,8,10,10,13,13,10,11,11,15,15,9,11,11,14,14,13,14,14,17,16,12,13,14,16,16,8,10,10,13,14,9,11,11,14,15,10,11,12,14,15,12,14,13,16,15,13,14,14,15,17,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,12,11,14,14,10,11,11,14,14,7,9,9,12,11,9,11,11,13,13,9,11,11,13,13,11,13,13,14,15,11,12,13,15,16,6,9,9,11,12,8,11,10,13,12,9,11,11,13,14,11,13,12,16,14,11,13,13,15,16,10,12,11,14,15,11,13,13,15,17,11,13,13,17,16,15,15,16,17,16,14,15,16,18,0,9,11,11,14,15,10,12,12,16,15,11,13,13,16,16,13,15,14,18,15,14,16,16,0,0,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,11,11,14,14,10,11,12,14,14,6,9,9,11,11,9,11,11,13,13,8,10,11,12,13,11,13,13,16,15,11,12,13,14,16,7,9,9,11,12,9,11,11,13,13,9,11,11,13,13,11,13,13,16,15,11,13,12,15,15,9,11,11,15,14,11,13,13,17,16,10,12,13,15,16,14,16,16,0,18,14,14,15,15,17,10,11,12,15,15,11,13,13,16,16,11,13,13,16,16,14,16,16,19,17,14,15,15,17,17,8,10,10,14,14,10,12,11,15,15,10,11,12,16,15,14,15,15,18,20,13,14,16,17,18,9,11,11,15,16,11,13,13,17,17,11,13,13,17,16,15,16,16,0,0,15,16,16,0,0,9,11,11,15,15,10,13,12,17,15,11,13,13,17,16,15,17,15,20,19,15,16,16,19,0,13,15,14,0,17,14,15,16,0,20,15,16,16,0,19,17,18,0,0,0,16,17,18,0,0,12,14,14,19,18,13,15,14,0,17,14,15,16,19,19,16,18,16,0,19,19,20,17,20,0,8,10,10,13,14,10,11,11,15,15,10,12,12,15,16,14,15,14,19,16,14,15,15,0,18,9,11,11,16,15,11,13,13,0,16,11,12,13,16,17,14,16,17,0,19,15,16,16,18,0,9,11,11,15,16,11,13,13,16,16,11,14,13,18,17,15,16,16,18,20,15,17,19,0,0,12,14,14,17,17,14,16,15,0,0,13,14,15,19,0,16,18,20,0,0,16,16,18,18,0,12,14,14,17,20,14,16,16,19,0,14,16,14,0,20,16,20,17,0,0,17,0,15,0,19,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,5,6,6,5,6,6,5,6,6,6,8,8,6,7,8,5,6,6,6,8,7,6,8,8,5,6,6,6,8,8,6,8,8,6,8,8,8,9,9,8,9,9,6,7,7,7,9,8,8,9,9,5,6,6,6,8,7,6,8,8,6,8,8,8,9,9,7,8,9,6,8,8,8,9,9,8,9,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,4,8,7,5,7,7,5,8,8,8,10,10,7,9,10,5,8,8,7,10,9,8,10,10,5,8,8,8,10,10,8,10,10,8,10,10,10,12,13,10,13,13,7,10,10,10,13,11,10,13,13,5,8,8,8,11,10,8,10,10,7,10,10,10,13,13,10,11,13,8,10,11,10,13,13,10,13,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,11,16,13,17,13,17,16,17,17,4,7,9,9,13,10,16,12,16,17,7,6,5,7,8,9,12,12,16,17,6,9,7,9,10,10,15,15,17,17,6,7,5,7,5,7,7,10,16,17,7,9,8,9,8,10,11,11,15,17,7,7,7,8,5,8,8,9,15,17,8,7,9,9,7,8,7,2,7,15,14,13,13,15,5,10,4,3,6,17,17,15,13,17,7,11,7,6,9,16,0,0,0,0,2,0,0,0,100,0,0,0,160,64,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,176,49,2,0,0,0,0,0,0,0,0,0,0,0,0,0,216,49,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,2,0,0,0,0,0,0,0,0,0,0,0,0,0,40,50,2,0,0,0,0,0,0,0,0,0,0,0,0,0,80,50,2,0,0,0,0,0,0,0,0,0,0,0,0,0,120,50,2,0,0,0,0,0,160,50,2,0,200,50,2,0,0,0,0,0,0,0,0,0,240,50,2,0,24,51,2,0,0,0,0,0,0,0,0,0,64,51,2,0,104,51,2,0,144,51,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,72,49,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,13,12,14,12,16,11,13,14,5,4,5,6,7,8,10,9,12,15,10,5,5,5,6,8,9,9,13,15,10,5,5,6,6,7,8,8,11,13,12,7,5,6,4,6,7,7,11,14,11,7,7,6,6,6,7,6,10,14,14,9,8,8,6,7,7,7,11,16,11,8,8,7,6,6,7,4,7,12,10,10,12,10,10,9,10,5,6,9,10,12,15,13,14,14,14,8,7,8,0,0,0,0,4,0,0,0,81,0,0,0,56,64,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,144,64,2,0,0,0,0,0,4,0,0,0,81,0,0,0,208,63,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,40,64,2,0,0,0,0,0,4,0,0,0,113,2,0,0,64,61,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,184,63,2,0,0,0,0,0,4,0,0,0,113,2,0,0,176,58,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,40,61,2,0,0,0,0,0,2,0,0,0,81,0,0,0,48,58,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,136,58,2,0,0,0,0,0,2,0,0,0,81,0,0,0,176,57,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,8,58,2,0,0,0,0,0,4,0,0,0,81,0,0,0,72,57,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,160,57,2,0,0,0,0,0,2,0,0,0,121,0,0,0,152,56,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,24,57,2,0,0,0,0,0,2,0,0,0,121,0,0,0,232,55,2,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,104,56,2,0,0,0,0,0,2,0,0,0,121,0,0,0,56,55,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,184,55,2,0,0,0,0,0,2,0,0,0,169,0,0,0,80,54,2,0,1,0,0,0,0,232,87,225,0,224,255,96,4,0,0,0,0,0,0,0,0,55,2,0,0,0,0,0,2,0,0,0,225,0,0,0,40,53,2,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,16,54,2,0,0,0,0,0,2,0,0,0,33,1,0,0,184,51,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,52,2,0,0,0,0,0,2,5,5,7,7,8,8,8,8,8,8,9,9,9,9,9,9,5,6,6,7,7,8,8,9,8,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,9,8,9,9,9,9,9,9,9,9,7,7,7,8,8,9,8,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,9,8,9,9,9,9,9,9,9,9,9,9,8,8,8,8,9,9,9,9,9,9,9,9,10,9,10,10,10,8,8,8,9,8,9,9,9,9,9,9,9,10,9,10,9,10,8,9,9,9,9,9,9,9,9,9,10,9,10,10,10,10,10,8,9,9,9,9,9,9,10,9,10,9,10,10,10,10,10,10,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,9,10,9,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,10,9,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,7,8,7,9,8,9,9,4,7,6,9,8,10,10,9,8,9,9,9,9,9,8,5,6,6,8,9,10,10,9,9,9,10,10,10,10,11,7,8,8,10,10,11,11,10,10,11,11,11,12,11,11,7,8,8,10,10,11,11,10,10,11,11,12,11,11,11,8,9,9,11,11,12,12,11,11,12,11,12,12,12,12,8,9,10,11,11,12,12,11,11,12,12,12,12,12,12,8,9,9,10,10,12,11,12,12,12,12,12,12,12,13,8,9,9,11,11,11,11,12,12,12,12,13,12,13,13,9,10,10,11,11,12,12,12,13,12,13,13,13],"i8",L3,R.GLOBAL_BASE+134580),d3([14,13,9,10,10,11,11,12,12,12,13,13,12,13,13,14,13,9,11,10,12,11,13,12,12,13,13,13,13,13,13,14,9,10,10,12,12,12,12,12,13,13,13,13,13,14,14,10,11,11,12,12,12,13,13,13,14,14,13,14,14,14,10,11,11,12,12,12,12,13,12,13,14,13,14,14,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,2,12,10,13,13,13,13,13,13,13,13,4,9,9,13,13,13,13,13,13,13,13,13,13,5,10,9,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,6,6,7,7,7,7,7,7,5,6,5,7,6,7,7,8,8,8,8,5,5,5,6,6,7,7,8,8,8,8,6,7,6,7,7,8,8,8,8,8,8,6,6,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,10,10,4,6,6,7,7,9,9,10,10,11,11,4,6,6,7,7,9,9,10,10,11,11,6,8,7,9,9,10,10,11,11,13,12,6,8,8,9,9,10,10,11,11,12,13,8,9,9,10,10,12,12,13,12,14,13,8,9,9,10,10,12,12,13,13,14,14,9,11,11,12,12,13,13,14,14,15,14,9,11,11,12,12,13,13,14,14,15,14,11,12,12,13,13,14,14,15,14,15,14,11,11,12,13,13,14,14,14,14,15,15,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,4,5,5,7,7,8,8,9,8,8,9,4,5,5,7,7,8,8,9,9,8,9,6,7,7,8,8,9,8,9,9,9,9,6,7,7,8,8,9,9,9,9,9,9,7,8,8,9,9,9,9,9,9,9,9,7,8,8,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,8,9,9,9,9,9,9,10,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,9,9,8,11,10,7,11,10,5,9,9,7,10,10,8,10,11,4,9,9,9,12,12,9,12,12,8,12,12,11,12,12,10,12,13,7,12,12,11,12,12,10,12,13,4,9,9,9,12,12,9,12,12,7,12,11,10,13,13,11,12,12,7,12,12,10,13,13,11,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,9,9,4,5,4,6,6,7,7,9,9,4,4,5,6,6,7,7,9,9,5,6,6,7,7,8,8,10,10,6,6,6,7,7,8,8,10,10,7,7,7,8,8,9,9,11,10,7,7,7,8,8,9,9,10,11,9,9,9,10,10,11,10,11,11,9,9,9,10,10,11,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,8,8,10,10,4,5,5,8,7,8,8,11,10,3,5,5,7,8,8,8,10,11,6,8,7,10,9,10,10,11,11,6,7,8,9,9,9,10,11,12,8,8,8,10,10,11,11,13,12,8,8,9,9,10,11,11,12,13,10,11,10,12,11,13,12,14,14,10,10,11,11,12,12,13,14,14,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,6,7,6,9,9,6,6,7,9,9,8,9,9,11,11,8,9,9,11,11,6,7,7,9,9,7,8,8,10,10,6,7,8,9,10,9,10,10,11,12,9,9,10,11,12,6,7,7,9,9,6,8,7,10,9,7,8,8,10,10,9,10,9,12,11,9,10,10,12,11,8,9,9,12,11,9,10,10,12,12,9,10,10,12,12,11,12,12,13,14,11,11,12,13,14,8,9,9,11,12,9,10,10,12,12,9,10,10,12,12,11,12,11,14,13,11,12,12,13,13,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,12,12,7,8,8,10,10,8,8,9,10,11,8,9,9,11,11,10,10,11,11,13,10,11,11,12,13,6,7,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,13,11,10,11,11,12,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,11,13,12,15,12,13,13,14,15,9,10,10,12,12,9,11,10,13,12,10,11,11,13,13,11,13,11,14,12,12,13,13,14,15,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,9,10,10,12,12,6,8,7,10,10,8,9,9,11,11,7,8,9,10,11,10,11,11,12,12,10,10,11,11,13,7,8,8,10,10,8,9,9,11,11,8,9,8,11,10,10,11,11,13,12,10,11,10,13,11,9,10,10,12,12,10,11,11,13,12,9,10,10,12,13,12,13,13,14,15,11,11,13,12,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,13,13,14,14,12,13,11,14,12,8,9,9,12,12,9,10,10,12,12,9,10,10,12,12,12,12,12,14,14,11,12,12,14,13,9,10,10,12,12,10,11,11,13,13,10,11,11,13,12,12,12,13,14,15,12,13,13,15,14,9,10,10,12,12,10,11,10,13,12,10,11,11,12,13,12,13,12,15,13,12,13,13,14,15,11,12,12,14,13,11,12,12,14,15,12,13,13,15,14,13,12,14,12,16,13,14,14,15,15,11,11,12,14,14,11,12,11,14,13,12,13,13,14,15,13,14,12,16,12,14,14,15,16,16,8,9,9,11,12,9,10,10,12,12,9,10,10,12,13,11,12,12,13,13,12,12,13,14,14,9,10,10,12,12,10,11,10,13,12,10,10,11,12,13,12,13,13,15,14,12,12,13,13,15,9,10,10,12,13,10,11,11,12,13,10,11,11,13,13,12,13,13,14,15,12,13,12,15,14,11,12,11,14,13,12,13,13,15,14,11,11,12,13,14,14,15,14,16,15,13,12,14,13,16,11,12,12,13,14,12,13,13,14,15,11,12,11,14,14,14,14,14,15,16,13,15,12,16,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,5,8,8,5,7,6,9,9,5,6,7,9,9,8,10,9,13,12,8,9,10,12,12,5,7,7,10,10,7,9,9,11,11,6,8,9,11,11,10,11,11,14,14,9,10,11,13,14,5,7,7,9,10,7,9,8,11,11,7,9,9,11,11,9,11,10,14,13,10,11,11,14,14,8,10,10,13,13,10,11,11,15,14,9,11,11,14,14,13,14,14,17,16,12,13,13,15,16,8,10,10,13,13,9,11,11,14,15,10,11,11,14,15,12,14,13,16,16,13,15,14,15,17,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,11,11,14,14,10,11,12,14,14,7,9,9,12,11,9,11,11,13,13,9,11,11,13,13,12,13,13,15,16,11,12,13,15,16,6,9,9,11,11,8,11,10,13,12,9,11,11,13,14,11,13,12,16,14,11,13,13,16,17,10,12,11,15,15,11,13,13,16,16,11,13,13,17,16,14,15,15,17,17,14,16,16,17,18,9,11,11,14,15,10,12,12,15,15,11,13,13,16,17,13,15,13,17,15,14,15,16,18,0,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,11,11,14,14,10,11,12,14,15,6,9,9,12,11,9,11,11,13,13,8,10,11,12,13,11,13,13,16,15,11,12,13,14,15,7,9,9,11,12,9,11,11,13,13,9,11,11,13,13,11,13,13,15,16,11,13,13,15,14,9,11,11,15,14,11,13,13,17,15,10,12,12,15,15,14,16,16,17,17,13,13,15,15,17,10,11,12,15,15,11,13,13,16,16,11,13,13,15,15,14,15,15,18,18,14,15,15,17,17,8,10,10,13,13,10,12,11,15,15,10,11,12,15,15,14,15,15,18,18,13,14,14,18,18,9,11,11,15,16,11,13,13,17,17,11,13,13,16,16,15,15,16,17,0,14,15,17,0,0,9,11,11,15,15,10,13,12,18,16,11,13,13,15,16,14,16,15,20,20,14,15,16,17,0,13,14,14,20,16,14,15,16,19,18,14,15,15,19,0,18,16,0,20,20,16,18,18,0,0,12,14,14,18,18,13,15,14,18,16,14,15,16,18,20,16,19,16,0,17,17,18,18,19,0,8,10,10,14,14,10,11,11,14,15,10,11,12,15,15,13,15,14,19,17,13,15,15,17,0,9,11,11,16,15,11,13,13,16,16,10,12,13,15,17,14,16,16,18,18,14,15,15,18,0,9,11,11,15,15,11,13,13,16,17,11,13,13,18,17,14,18,16,18,18,15,17,17,18,0,12,14,14,18,18,14,15,15,20,0,13,14,15,17,0,16,18,17,0,0,16,16,0,17,20,12,14,14,18,18,14,16,15,0,18,14,16,15,18,0,16,19,17,0,0,17,18,16,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,5,6,6,5,6,6,5,6,6,6,8,8,6,7,8,5,6,6,6,8,7,6,8,8,5,6,6,6,8,8,6,8,8,6,8,8,8,9,9,8,9,9,6,8,7,7,9,8,8,9,9,5,6,6,6,8,7,6,8,8,6,8,7,8,9,9,7,8,9,6,8,8,8,9,9,8,9,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,7,5,8,8,8,10,10,7,9,10,5,8,8,7,10,9,8,10,10,5,8,8,8,10,10,8,10,10,8,10,10,10,12,13,10,13,13,7,10,10,10,13,11,10,13,13,4,8,8,8,11,10,8,10,10,7,10,10,10,13,13,10,11,13,8,10,11,10,13,13,10,13,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,10,17,13,17,13,17,17,17,17,3,6,8,9,11,9,15,12,16,17,6,5,5,7,7,8,10,11,17,17,7,8,7,9,9,10,13,13,17,17,8,6,5,7,4,7,5,8,14,17,9,9,8,9,7,9,8,10,16,17,12,10,7,8,4,7,4,7,16,17,12,11,9,10,6,9,5,7,14,17,14,13,10,15,4,8,3,5,14,17,17,14,11,15,6,10,6,8,15,17,0,0,0,0,2,0,0,0,64,0,0,0,248,78,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,128,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,168,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,208,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,248,66,2,0,0,0,0,0,32,67,2,0,72,67,2,0,0,0,0,0,0,0,0,0,112,67,2,0,152,67,2,0,192,67,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,24,66,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,12,12,13,12,11,13,5,4,6,7,8,8,9,13,9,5,4,5,5,7,9,13,9,6,5,6,6,7,8,12,12,7,5,6,4,5,8,13,11,7,6,6,5,5,6,12,10,8,8,7,7,5,3,8,10,12,13,12,12,9,6,7,4,0,0,0,81,0,0,0,144,78,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,232,78,2,0,0,0,0,0,4,0,0,0,81,0,0,0,40,78,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,128,78,2,0,0,0,0,0,4,0,0,0,113,2,0,0,152,75,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,78,2,0,0,0,0,0,4,0,0,0,113,2,0,0,8,73,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,128,75,2,0,0,0,0,0,2,0,0,0,81,0,0,0,136,72,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,224,72,2,0,0,0,0,0,2,0,0,0,169,0,0,0,160,71,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,80,72,2,0,0,0,0,0,2,0,0,0,25,0,0,0,104,71,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,71,2,0,0,0,0,0,2,0,0,0,169,0,0,0,128,70,2,0,1,0,0,0,0,232,87,225,0,224,255,96,4,0,0,0,0,0,0,0,48,71,2,0,0,0,0,0,2,0,0,0,225,0,0,0,88,69,2,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,64,70,2,0,0,0,0,0,2,0,0,0,33,1,0,0,232,67,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,16,69,2,0,0,0,0,0,2,5,5,7,7,7,7,8,8,8,8,9,9,9,9,9,9,5,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,7,7,7,8,8,8,8,9,9,9,9,10,9,10,9,10,10,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,8,9,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,8,8,8,9,9,9,9,9,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,10,10,10,10,10,10,10,10,11,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,10,10,10,10,10,10,10,10,10,10,11,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,9,8,10,8,10,9,11,11,4,7,6,8,7,9,9,10,10,11,10,11,10,12,10,4,6,7,8,8,9,9,10,10,11,11,11,11,12,12,6,8,8,10,9,11,10,12,11,12,12,12,12,13,13,6,8,8,10,10,10,11,11,11,12,12,13,12,13,13,8,9,9,11,11,12,11,12,12,13,13,13,13,13,13,8,9,9,11,11,11,12,12,12,13,13,13,13,13,13,9,10,10,12,11,13,13,13,13,14,13,13,14,14,14,9,10,11,11,12,12,13,13,13,13,13,14,15,14,14,10,11,11,12,12,13,13,14,14,14,14,14,15,16,16,10,11,11,12,13,13,13,13,15,14,14,15,16,15,16,10,12,12,13,13,14,14,14,15,15,15,15,15,15,16,11,12,12,13,13,14,14,14,15,15,15,16,15,17,16,11,12,12,13,13,13,15,15,14,16,16,16,16,16,17,11,12,12,13,13,14,14,15,14,15,15,17,17,16,16,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,3,12,12,12,12,12,12,12,12,12,12,3,12,11,12,12,12,12,12,12,12,12,12,12,4,11,10,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,6,5,4,5,5,5,6,5,6,5,6,6,5,5,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,11,10,13,13,4,6,5,8,8,9,9,10,10,11,11,14,14,4,6,6,8,8,9,9,10,10,11,11,14,14,6,8,8,9,9,10,10,11,11,12,12,15,15,6,8,8,9,9,10,11,11,11,12,12,15,15,8,9,9,11,10,11,11,12,12,13,13,16,16,8,9,9,10,10,11,11,12,12,13,13,16,16,10,10,10,12,11,12,12,13,13,14,14,16,16,10,10,10,11,12,12,12,13,13,13,14,16,17,11,12,11,12,12,13,13,14,14,15,14,18,17,11,11,12,12,12,13,13,14,14,14,15,19,18,14,15,14,15,15,17,16,17,17,17,17,21,0,14,15,15,16,16,16,16,17,17,18,17,20,21,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,7,7,9,9,4,5,5,7,7,8,8,10,9,4,5,5,7,7,8,8,10,10,6,7,7,8,8,9,9,11,10,6,7,7,8,8,9,9,10,11,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,10,10,11,10,11,11,12,12,9,10,10,10,11,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,5,7,6,9,9,5,6,7,9,9,9,9,9,11,11,8,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,7,8,10,10,9,10,10,11,12,9,10,10,11,12,5,7,7,9,9,7,8,7,10,10,7,8,8,10,10,9,10,10,12,11,9,10,10,12,11,9,10,9,12,12,9,10,10,13,12,9,10,10,12,12,12,12,12,14,14,11,12,12,13,14,9,9,10,12,12,9,10,10,13,13,9,10,10,12,13,11,12,12,14,13,11,12,12,14,14,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,9,10,10,12,12,7,8,8,11,10,8,8,9,11,11,8,9,9,11,11,11,11,11,12,13,10,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,13,11,10,11,11,13,13,9,11,10,13,12,10,11,11,13,14,10,11,11,14,13,12,12,13,12,15,12,13,13,15,15,9,10,10,12,13,10,11,10,13,12,10,11,11,13,14,12,13,11,15,13,13,13,13,15,15,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,10,10,11,12,13,6,8,8,10,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,7,8,8,10,11,8,9,9,11,11,8,9,8,11,11,10,11,11,13,13,11,12,11,13,12,9,10,10,13,12,10,11,11,14,13,10,10,11,12,13,12,13,13,15,15,12,11,13,13,14,9,10,11,12,13,10,11,11,13,14,10,11,11,13,13,12,13,13,15,15,12,13,12,15,12,8,9,9,12,12,9,11,10,13,13,9,10,10,13,13,12,13,13,15,15,12,12,12,14,14,9,10,10,13,13,10,11,11,13,14,10,11,11,14,13,13,13,14,14,16,13,13,13,15,15,9,10,10,13,13,10,11,10,14,13,10,11,11,13,14,12,14,13,16,14,12,13,13,14,15,11,12,12,15,14,11,12,13,14,15,12,13,13,16,15,14,12,15,12,16,14,15,15,16,16,11,12,12,14,14,11,13,12,15,14,12,13,13,15,16,13,15,13,17,13,14,15,15,16,17,8,9,9,12,12,9,10,10,12,13,9,10,10,13,13,12,12,12,14,14,12,13,13,15,15,9,10,10,13,12,10,11,11,14,13,10,10,11,13,14,13,13,13,15,15,12,13,14,14,16,9,10,10,13,13,10,11,11,13,14,10,11,11,14,14,13,13,13,15,15,13,14,13,16,14,11,12,12,15,14,12,13,13,16,15,11,12,13,14,15,14,15,15,17,16,13,13,15,13,16,11,12,13,14,15,13,13,13,15,16,11,13,12,15,14,14,15,15,16,16,14,15,12,17,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,8,8,5,7,7,9,9,5,7,7,9,9,8,10,9,12,12,8,9,10,12,12,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,12,11,14,14,9,10,11,13,14,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,9,11,10,14,13,10,11,11,14,14,8,10,10,14,13,10,12,12,15,14,9,11,11,15,14,13,14,14,17,17,12,14,14,16,16,8,10,10,14,14,9,11,11,14,15,10,12,12,14,15,12,14,13,16,16,13,14,15,15,18,4,7,7,10,10,7,9,9,12,11,7,9,9,11,12,10,12,11,15,14,10,11,12,14,15,7,9,9,12,12,9,11,12,13,13,9,11,12,13,13,12,13,13,15,16,11,13,13,15,16,7,9,9,12,12,9,11,10,13,12,9,11,12,13,14,11,13,12,16,14,12,13,13,15,16,10,12,12,16,15,11,13,13,17,16,11,13,13,17,16,14,15,15,17,17,14,16,16,18,20,9,11,11,15,16,11,13,12,16,16,11,13,13,16,17,14,15,14,18,16,14,16,16,17,20,5,7,7,10,10,7,9,9,12,11,7,9,10,11,12,10,12,11,15,15,10,12,12,14,14,7,9,9,12,12,9,12,11,14,13,9,10,11,12,13,12,13,14,16,16,11,12,13,14,16,7,9,9,12,12,9,12,11,13,13,9,12,11,13,13,11,13,13,16,16,12,13,13,16,15,9,11,11,16,14,11,13,13,16,16,11,12,13,16,16,14,16,16,17,17,13,14,15,16,17,10,12,12,15,15,11,13,13,16,17,11,13,13,16,16,14,16,15,19,19,14,15,15,17,18,8,10,10,14,14,10,12,12,15,15,10,12,12,16,16,14,16,15,20,19,13,15,15,17,16,9,12,12,16,16,11,13,13,16,18,11,14,13,16,17,16,17,16,20,0,15,16,18,18,20,9,11,11,15,15,11,14,12,17,16,11,13,13,17,17,15,17,15,20,20,14,16,16,17,0,13,15,14,18,16,14,15,16,0,18,14,16,16,0,0,18,16,0,0,20,16,18,18,0,0,12,14,14,17,18,13,15,14,20,18,14,16,15,19,19,16,20,16,0,18,16,19,17,19,0,8,10,10,14,14,10,12,12,16,15,10,12,12,16,16,13,15,15,18,17,14,16,16,19,0,9,11,11,16,15,11,14,13,18,17,11,12,13,17,18,14,17,16,18,18,15,16,17,18,18,9,12,12,16,16,11,13,13,16,18,11,14,13,17,17,15,16,16,18,20,16,17,17,20,20,12,14,14,18,17,14,16,16,0,19,13,14,15,18,0,16,0,0,0,0,16,16,0,19,20,13,15,14,0,0,14,16,16,18,19,14,16,15,0,20,16,20,18,0,20,17,20,17,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,6,6,5,6,6,5,6,6,7,8,8,6,8,8,5,6,6,6,8,8,7,8,8,5,7,6,6,8,8,6,8,8,6,8,8,8,9,10,8,10,10,6,8,8,8,10,8,8,10,10,5,6,6,6,8,8,6,8,8,6,8,8,8,10,10,8,8,10,6,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,10,11,8,10,11,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,11,11,11,13,14,11,15,14,8,11,11,10,13,12,11,14,14,4,8,8,8,11,11,8,11,11,7,11,11,11,15,14,10,12,14,8,11,11,11,14,14,11,14,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,14,17,15,17,16,14,13,16,10,7,7,10,13,10,15,16,9,4,4,6,5,7,9,16,12,8,7,8,8,8,11,16,14,7,4,6,3,5,8,15,13,8,5,7,4,5,7,16,12,9,6,8,3,3,5,16,14,13,7,10,5,5,7,15,2,0,0,0,64,0,0,0,192,92,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,80,2,0,0,0,0,0,0,0,0,0,0,0,0,0,176,80,2,0,0,0,0,0,0,0,0,0,0,0,0,0,216,80,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,81,2,0,0,0,0,0,0,0,0,0,0,0,0,0,40,81,2,0,0,0,0,0,80,81,2,0,120,81,2,0,0,0,0,0,0,0,0,0,160,81,2,0,200,81,2,0,240,81,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,72,80,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,9,13,12,14,11,10,13,8,4,5,7,8,7,8,12,11,4,3,5,5,7,9,14,11,6,5,6,6,6,7,13,13,7,5,6,4,5,7,14,11,7,6,6,5,5,6,13,9,7,8,6,7,5,3,9,9,12,13,12,14,10,6,7,4,0,0,0,81,0,0,0,88,92,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,176,92,2,0,0,0,0,0,4,0,0,0,81,0,0,0,240,91,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,72,92,2,0,0,0,0,0,4,0,0,0,113,2,0,0,96,89,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,91,2,0,0,0,0,0,4,0,0,0,113,2,0,0,208,86,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,89,2,0,0,0,0,0,2,0,0,0,81,0,0,0,80,86,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,168,86,2,0,0,0,0,0,2,0,0,0,169,0,0,0,104,85,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,24,86,2,0,0,0,0,0,2,0,0,0,25,0,0,0,48,85,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,80,85,2,0,0,0,0,0,2,0,0,0,81,0,0,0,176,84,2,0,1,0,0,0,0,224,63,225,0,224,255,96,4,0,0,0,0,0,0,0,8,85,2,0,0,0,0,0,2,0,0,0,225,0,0,0,136,83,2,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,112,84,2,0,0,0,0,0,2,0,0,0,33,1,0,0,24,82,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,64,83,2,0,0,0,0,0,2,5,5,7,6,7,7,8,8,8,8,9,9,9,9,9,9,5,6,6,7,7,8,8,8,8,9,9,9,9,9,9,10,10,5,6,6,7,7,8,8,8,8,9,8,9,9,9,9,10,9,7,7,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,7,7,7,8,8,8,8,9,9,9,9,10,9,10,10,10,10,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,7,8,8,9,8,9,9,9,9,10,9,10,10,10,10,10,10,8,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,8,9,8,9,9,9,9,10,9,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,11,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,11,11,11,10,11,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,6,8,7,9,8,10,9,11,11,4,7,7,8,7,9,9,10,10,11,11,11,11,12,12,4,7,7,7,7,9,9,10,10,11,11,12,12,12,11,6,8,8,9,9,10,10,11,11,12,12,13,12,13,13,6,8,8,9,9,10,11,11,11,12,12,13,14,13,13,8,9,9,11,11,12,12,12,13,14,13,14,14,14,15,8,9,9,11,11,11,12,13,14,13,14,15,17,14,15,9,10,10,12,12,13,13,13,14,15,15,15,16,16,16,9,11,11,12,12,13,13,14,14,14,15,16,16,16,16,10,12,12,13,13,14,14,15,15,15,16,17,17,17,17,10,12,11,13,13,15,14,15,14,16,17,16,16,16,16,11,13,12,14,14,14,14,15,16,17,16,17,17,17,17,11,13,12,14,14,14,15,17,16,17,17,17,17,17,17,12,13,13,15,16,15,16,17,17,16,16,17,17,17,17,12,13,13,15,15,15,16,17,17,17,16,17,16,17,17,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,3,10,10,10,10,10,10,4,10,10,10,10,10,10,10,10,4,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,6,5,4,5,5,5,6,5,6,5,6,6,5,5,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,10,11,13,14,4,6,5,8,8,9,9,10,10,11,11,14,14,4,6,6,8,8,9,9,10,10,11,11,14,14,6,8,8,9,9,10,10,11,11,12,12,15,15,6,8,8,9,9,10,11,11,11,12,12,15,15,8,9,9,11,10,11,11,12,12,13,13,15,16,8,9,9,10,11,11,11,12,12,13,13,16,16,10,10,11,11,11,12,12,13,13,13,14,17,16,9,10,11,12,11,12,12,13,13,13,13,16,18,11,12,11,12,12,13,13,13,14,15,14,17,17,11,11,12,12,12,13,13,13,14,14,15,18,17,14,15,15,15,15,16,16,17,17,19,18,0,20,14,15,14,15,15,16,16,16,17,18,16,20,18,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,7,7,9,9,4,5,5,7,7,8,8,10,10,4,5,5,7,7,8,8,10,10,6,7,7,8,8,9,9,11,10,6,7,7,8,8,9,9,10,10,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,10,10,11,10,11,11,12,12,9,10,10,10,10,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,5,7,6,9,9,5,6,7,9,9,9,9,9,11,11,9,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,7,8,10,10,9,10,10,11,12,9,10,10,11,12,5,7,7,9,9,7,8,7,10,10,7,8,8,10,10,9,10,9,12,11,9,10,10,12,11,9,10,9,12,12,9,10,10,13,12,9,10,10,12,13,12,12,12,14,14,11,12,12,13,14,9,9,10,12,12,9,10,10,12,12,9,10,10,12,13,11,12,11,14,13,12,12,12,14,13,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,9,10,10,12,12,7,8,8,11,10,8,8,9,11,11,8,9,9,11,11,11,11,11,12,13,10,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,13,11,10,11,11,13,13,9,11,10,13,12,10,11,11,13,13,10,11,11,13,13,12,12,13,12,15,12,13,13,15,15,9,10,10,12,13,10,11,10,13,12,10,11,11,13,14,12,13,11,15,13,12,13,13,15,15,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,12,10,10,11,12,12,6,8,8,10,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,11,13,13,11,11,11,13,12,9,10,10,13,12,10,11,11,14,13,10,10,11,12,13,12,13,13,15,15,12,11,13,13,14,9,10,11,12,13,10,11,11,13,13,10,11,11,13,13,12,13,13,15,15,12,13,12,15,12,8,9,9,12,12,9,11,10,13,13,9,10,10,13,13,12,13,13,15,14,12,12,12,14,13,9,10,10,13,12,10,11,11,13,13,10,11,11,14,12,13,13,14,14,16,12,13,13,15,15,9,10,10,13,13,10,11,10,14,13,10,11,11,13,14,12,14,13,15,14,13,13,13,15,15,11,13,12,15,14,11,12,13,14,15,12,13,13,16,14,14,12,15,12,16,14,15,15,17,15,11,12,12,14,14,11,13,11,15,14,12,13,13,15,15,13,15,12,17,13,14,15,15,16,16,8,9,9,12,12,9,10,10,12,13,9,10,10,13,13,12,12,12,14,14,12,13,13,15,15,9,10,10,13,12,10,11,11,14,13,10,10,11,13,14,12,13,13,15,15,12,12,13,14,16,9,10,10,13,13,10,11,11,13,14,10,11,11,14,13,12,13,13,14,15,13,14,13,16,14,11,12,12,14,14,12,13,13,15,14,11,12,13,14,15,14,15,15,16,16,13,13,15,13,16,11,12,12,14,15,12,13,13,14,15,11,13,12,15,14,14,15,15,16,16,14,15,12,16,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,7,7,5,7,7,9,9,5,7,7,9,9,8,9,9,12,12,8,9,9,11,12,5,7,7,10,10,7,9,9,11,11,7,9,9,10,11,10,11,11,13,13,9,10,11,13,13,5,7,7,10,10,7,9,9,11,10,7,9,9,11,11,9,11,10,13,13,10,11,11,14,13,8,10,10,14,13,10,11,11,15,14,9,11,11,14,14,13,14,13,16,16,12,13,13,15,15,8,10,10,13,14,9,11,11,14,14,10,11,11,14,15,12,13,13,15,15,13,14,14,15,16,5,7,7,10,10,7,9,9,11,11,7,9,9,11,12,10,11,11,14,14,10,11,11,14,14,7,9,9,12,12,9,11,11,13,13,9,11,11,13,13,12,12,13,15,15,11,12,13,15,16,7,9,9,11,11,8,11,10,13,12,9,11,11,13,13,11,13,12,15,13,11,13,13,15,16,9,12,11,15,14,11,12,13,16,15,11,13,13,15,16,14,14,15,17,16,13,15,16,0,17,9,11,11,15,15,10,13,12,15,15,11,13,13,15,16,13,15,13,16,15,14,16,15,0,19,5,7,7,10,10,7,9,9,11,11,7,9,9,11,11,10,12,11,14,14,10,11,12,14,14,7,9,9,12,12,9,11,11,14,13,9,10,11,12,13,11,13,13,16,16,11,12,13,13,16,7,9,9,12,12,9,11,11,13,13,9,11,11,13,13,11,13,13,15,15,12,13,12,15,14,9,11,11,15,14,11,13,12,16,16,10,12,12,15,15,13,15,15,17,19,13,14,15,16,17,10,12,12,15,15,11,13,13,16,16,11,13,13,15,16,13,15,15,0,0,14,15,15,16,16,8,10,10,14,14,10,12,12,15,15,10,12,11,15,16,14,15,15,19,20,13,14,14,18,16,9,11,11,15,15,11,13,13,17,16,11,13,13,16,16,15,17,17,20,20,14,15,16,17,20,9,11,11,15,15,10,13,12,16,15,11,13,13,15,17,14,16,15,18,0,14,16,15,18,20,12,14,14,0,0,14,14,16,0,0,13,16,15,0,0,17,17,18,0,0,16,17,19,19,0,12,14,14,18,0,12,16,14,0,17,13,15,15,18,0,16,18,17,0,17,16,18,17,0,0,7,10,10,14,14,10,12,11,15,15,10,12,12,16,15,13,15,15,18,0,14,15,15,17,0,9,11,11,15,15,11,13,13,16,16,11,12,13,16,16,14,15,16,17,17,14,16,16,16,18,9,11,12,16,16,11,13,13,17,17,11,14,13,20,17,15,16,16,19,0,15,16,17,0,19,11,13,14,17,16,14,15,15,20,18,13,14,15,17,19,16,18,18,0,20,16,16,19,17,0,12,15,14,17,0,14,15,15,18,19,13,16,15,19,20,15,18,18,0,20,17,0,16,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,4,5,6,6,5,6,6,5,6,6,7,8,8,6,8,8,5,6,6,6,8,8,7,8,8,5,7,6,7,8,8,6,8,8,7,8,8,8,9,10,8,10,10,6,8,8,8,10,8,8,10,10,5,6,6,6,8,8,7,8,8,6,8,8,8,10,10,8,8,10,7,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,10,11,8,10,11,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,11,11,11,13,14,11,14,14,8,11,11,10,14,12,11,14,14,4,8,8,8,11,11,8,11,11,7,11,11,11,14,14,10,12,14,8,11,11,11,14,14,11,14,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,14,14,14,15,13,15,12,16,10,8,7,9,9,8,12,16,10,5,4,6,5,6,9,16,14,8,6,8,7,8,10,16,14,7,4,6,3,5,8,16,15,9,5,7,4,4,7,16,13,10,6,7,4,3,4,13,13,12,7,9,5,5,6,12,2,0,0,0,64,0,0,0,192,105,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,120,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,160,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,200,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,240,94,2,0,0,0,0,0,24,95,2,0,64,95,2,0,0,0,0,0,0,0,0,0,104,95,2,0,144,95,2,0,184,95,2],"i8",L3,R.GLOBAL_BASE+144820),d3([2,0,0,0,64,0,0,0,16,94,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,9,14,12,15,13,10,13,7,4,5,6,8,7,8,12,13,4,3,5,5,6,9,15,12,6,5,6,6,6,7,14,14,7,4,6,4,6,8,15,12,6,6,5,5,5,6,14,9,7,8,6,7,5,4,10,10,13,14,14,15,10,6,8,4,0,0,0,81,0,0,0,88,105,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,176,105,2,0,0,0,0,0,4,0,0,0,81,0,0,0,240,104,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,72,105,2,0,0,0,0,0,4,0,0,0,113,2,0,0,96,102,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,104,2,0,0,0,0,0,4,0,0,0,113,2,0,0,208,99,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,102,2,0,0,0,0,0,2,0,0,0,81,0,0,0,80,99,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,168,99,2,0,0,0,0,0,2,0,0,0,169,0,0,0,104,98,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,24,99,2,0,0,0,0,0,2,0,0,0,25,0,0,0,48,98,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,80,98,2,0,0,0,0,0,2,0,0,0,81,0,0,0,176,97,2,0,1,0,0,0,0,32,53,225,0,32,245,96,4,0,0,0,0,0,0,0,8,98,2,0,0,0,0,0,2,0,0,0,169,0,0,0,200,96,2,0,1,0,0,0,0,128,211,224,0,0,122,96,4,0,0,0,0,0,0,0,120,97,2,0,0,0,0,0,2,0,0,0,169,0,0,0,224,95,2,0,1,0,0,0,0,0,88,224,0,0,16,96,4,0,0,0,0,0,0,0,144,96,2,0,0,0,0,0,2,5,5,6,6,7,7,8,7,8,8,8,8,5,6,6,7,7,8,8,8,8,8,8,8,8,5,6,6,7,7,8,7,8,8,8,8,8,8,6,7,7,7,8,8,8,8,8,9,9,9,9,6,7,7,8,7,8,8,9,9,9,9,9,9,7,8,8,8,8,8,8,9,9,9,9,9,9,7,8,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,9,9,9,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,9,9,9,9,8,8,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,6,7,6,8,7,9,7,9,8,4,7,6,8,8,9,8,10,9,10,10,11,11,4,7,7,8,8,8,8,9,10,11,11,11,11,6,8,8,10,10,10,10,11,11,12,12,12,12,7,8,8,10,10,10,10,11,11,12,12,13,13,7,9,9,11,10,12,12,13,13,14,13,14,14,7,9,9,10,11,11,12,13,13,13,13,16,14,9,10,10,12,12,13,13,14,14,15,16,15,16,9,10,10,12,12,12,13,14,14,14,15,16,15,10,12,12,13,13,15,13,16,16,15,17,17,17,10,11,11,12,14,14,14,15,15,17,17,15,17,11,12,12,14,14,14,15,15,15,17,16,17,17,10,12,12,13,14,14,14,17,15,17,17,17,17,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,12,12,12,12,12,12,4,12,12,12,12,12,12,12,12,5,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,6,5,4,5,5,5,6,5,6,5,6,6,5,5,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,10,11,11,14,13,4,6,5,8,8,9,9,11,10,12,11,15,14,4,5,6,8,8,9,9,11,11,11,11,14,14,6,8,8,10,9,11,11,11,11,12,12,15,15,6,8,8,9,9,11,11,11,12,12,12,15,15,8,10,10,11,11,11,11,12,12,13,13,15,16,8,10,10,11,11,11,11,12,12,13,13,16,16,10,11,11,12,12,12,12,13,13,13,13,17,16,10,11,11,12,12,12,12,13,13,13,14,16,17,11,12,12,13,13,13,13,14,14,15,14,18,17,11,12,12,13,13,13,13,14,14,14,15,19,18,14,15,15,15,15,16,16,18,19,18,18,0,0,14,15,15,16,15,17,17,16,18,17,18,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,8,8,9,9,4,6,5,8,8,8,8,10,10,4,5,6,8,8,8,8,10,10,7,8,8,9,9,9,9,11,11,7,8,8,9,9,9,9,11,11,8,8,8,9,9,10,11,12,12,8,8,8,9,9,10,10,12,12,10,10,10,11,11,12,12,13,13,10,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,5,7,6,9,9,5,6,7,9,9,9,9,9,11,11,9,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,7,8,10,10,10,10,10,11,12,9,10,10,11,12,5,7,7,9,9,6,8,7,10,10,7,8,8,10,10,9,10,10,12,11,9,10,10,12,11,9,10,10,12,12,10,10,10,13,12,9,10,10,12,13,12,12,12,14,14,11,12,12,13,14,9,10,10,12,12,9,10,10,12,13,10,10,10,12,13,11,12,12,14,13,12,12,12,14,13,5,7,7,10,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,10,10,10,12,12,7,8,8,11,10,8,8,9,11,11,8,9,9,11,11,10,11,11,12,13,10,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,13,11,10,11,11,13,13,9,10,10,13,13,10,11,11,13,13,10,11,11,14,13,12,11,13,12,15,12,13,13,15,15,9,10,10,12,13,10,11,10,13,13,10,11,11,13,13,12,13,11,15,13,12,13,13,15,15,5,7,7,9,10,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,10,10,11,12,12,6,8,8,10,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,7,8,8,10,11,8,9,9,11,11,8,9,8,11,11,10,11,11,13,13,10,11,11,13,12,9,10,10,13,12,10,11,11,14,13,10,10,11,13,13,12,13,13,15,15,12,11,13,12,14,9,10,10,12,13,10,11,11,13,14,10,11,11,13,13,12,13,13,15,15,12,13,12,15,12,8,9,9,12,12,9,11,10,13,13,9,10,10,13,13,12,13,13,15,15,12,12,12,14,14,9,10,10,13,13,10,11,11,13,14,10,11,11,14,12,13,13,14,14,16,12,13,13,15,14,9,10,10,13,13,10,11,10,14,13,10,11,11,13,14,12,14,13,16,14,13,13,13,14,15,11,13,12,15,14,11,12,13,14,15,12,13,13,16,15,14,12,15,12,16,14,15,15,17,16,11,12,12,14,15,11,13,11,15,14,12,13,13,15,16,13,15,12,17,13,14,15,15,16,16,8,9,9,12,12,9,10,10,13,13,9,10,10,13,13,12,13,12,14,14,12,13,13,15,15,9,10,10,13,13,10,11,11,14,13,10,10,11,13,14,12,13,13,15,14,12,12,14,14,16,9,10,10,13,13,10,11,11,13,14,10,11,11,14,13,13,13,13,15,15,13,14,13,16,14,11,12,12,14,14,12,13,13,16,15,11,12,13,14,15,14,15,15,16,16,14,13,15,13,17,11,12,12,14,15,12,13,13,15,16,11,13,12,15,15,14,15,14,16,16,14,15,12,17,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,7,8,5,7,7,9,9,5,7,7,9,9,8,9,9,12,11,8,9,9,11,12,5,7,7,10,10,7,9,9,11,11,7,9,9,10,11,10,11,11,13,13,9,10,11,12,13,5,7,7,10,10,7,9,9,11,10,7,9,9,11,11,9,11,10,13,13,10,11,11,13,13,8,10,10,14,13,10,11,11,15,14,9,11,11,15,14,13,14,13,16,14,12,13,13,15,16,8,10,10,13,14,9,11,11,14,15,10,11,11,14,15,12,13,13,15,15,12,13,14,15,16,5,7,7,10,10,7,9,9,11,11,7,9,9,11,12,10,11,11,14,13,10,11,11,14,14,7,9,9,12,12,9,11,11,13,13,9,11,11,13,13,12,13,12,14,14,11,12,13,15,15,7,9,9,12,12,8,11,10,13,12,9,11,11,13,13,11,13,12,15,13,11,13,13,15,16,9,12,11,15,15,11,12,12,16,15,11,12,13,16,16,13,14,15,16,15,13,15,15,17,17,9,11,11,14,15,10,12,12,15,15,11,13,12,15,16,13,15,14,16,16,13,15,15,17,19,5,7,7,10,10,7,9,9,12,11,7,9,9,11,11,10,11,11,14,14,10,11,11,13,14,7,9,9,12,12,9,11,11,13,13,9,10,11,12,13,11,13,12,16,15,11,12,12,14,15,7,9,9,12,12,9,11,11,13,13,9,11,11,13,12,11,13,12,15,16,12,13,13,15,14,9,11,11,15,14,11,13,12,16,15,10,11,12,15,15,13,14,14,18,17,13,14,14,15,17,10,11,11,14,15,11,13,12,15,17,11,13,12,15,16,13,15,14,18,17,14,15,15,16,18,7,10,10,14,14,10,12,12,15,15,10,12,12,15,15,14,15,15,18,17,13,15,15,16,16,9,11,11,16,15,11,13,13,16,18,11,13,13,16,16,15,16,16,0,0,14,15,16,18,17,9,11,11,15,15,10,13,12,17,16,11,12,13,16,17,14,15,16,19,19,14,15,15,0,20,12,14,14,0,0,13,14,16,19,18,13,15,16,20,17,16,18,0,0,0,15,16,17,18,19,11,14,14,0,19,12,15,14,17,17,13,15,15,0,0,16,17,15,20,19,15,17,16,19,0,8,10,10,14,15,10,12,11,15,15,10,11,12,16,15,13,14,14,19,17,14,15,15,0,0,9,11,11,16,15,11,13,13,17,16,10,12,13,16,17,14,15,15,18,18,14,15,16,20,19,9,12,12,0,15,11,13,13,16,17,11,13,13,19,17,14,16,16,18,17,15,16,16,17,19,11,14,14,18,18,13,14,15,0,0,12,14,15,19,18,15,16,19,0,19,15,16,19,19,17,12,14,14,16,19,13,15,15,0,17,13,15,14,18,18,15,16,15,0,18,16,17,17,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,6,6,5,6,6,5,6,6,7,8,8,6,8,8,5,6,6,6,8,7,7,8,8,5,6,6,7,8,8,6,8,8,6,8,8,8,9,10,8,10,10,6,8,8,7,10,8,8,10,10,5,6,6,6,8,8,7,8,8,6,8,8,8,10,10,8,8,10,6,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,11,11,8,10,11,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,11,11,11,13,14,11,13,13,7,11,11,10,13,12,11,14,14,4,8,8,8,11,11,8,11,11,8,11,11,11,14,13,10,12,13,8,11,11,11,13,13,11,13,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,13,15,17,17,15,15,12,17,11,9,7,10,10,9,12,17,10,6,3,6,5,7,10,17,15,10,6,9,8,9,11,17,15,8,4,7,3,5,9,16,16,10,5,8,4,5,8,16,13,11,5,8,3,3,5,14,13,12,7,10,5,5,7,14,2,0,0,0,64,0,0,0,152,118,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,120,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,160,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,200,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,240,107,2,0,0,0,0,0,24,108,2,0,64,108,2,0,0,0,0,0,0,0,0,0,104,108,2,0,144,108,2,0,184,108,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,16,107,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,13,10,17,11,11,15,7,2,4,5,8,7,9,16,13,4,3,5,6,8,11,20,10,4,5,5,7,6,8,18,15,7,6,7,8,10,14,20,10,6,7,6,9,7,8,17,9,8,10,8,10,5,4,11,12,17,19,14,16,10,7,12,4,0,0,0,81,0,0,0,48,118,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,136,118,2,0,0,0,0,0,4,0,0,0,81,0,0,0,200,117,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,32,118,2,0,0,0,0,0,4,0,0,0,113,2,0,0,56,115,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,176,117,2,0,0,0,0,0,4,0,0,0,113,2,0,0,168,112,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,32,115,2,0,0,0,0,0,2,0,0,0,81,0,0,0,40,112,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,112,2,0,0,0,0,0,2,0,0,0,169,0,0,0,64,111,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,240,111,2,0,0,0,0,0,2,0,0,0,25,0,0,0,8,111,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,40,111,2,0,0,0,0,0,2,0,0,0,49,0,0,0,176,110,2,0,1,0,0,0,0,176,31,225,0,32,245,96,3,0,0,0,0,0,0,0,232,110,2,0,0,0,0,0,2,0,0,0,169,0,0,0,200,109,2,0,1,0,0,0,0,128,211,224,0,0,122,96,4,0,0,0,0,0,0,0,120,110,2,0,0,0,0,0,2,0,0,0,169,0,0,0,224,108,2,0,1,0,0,0,0,0,88,224,0,0,16,96,4,0,0,0,0,0,0,0,144,109,2,0,0,0,0,0,2,5,4,6,6,7,7,8,8,8,8,9,8,5,5,6,7,7,8,8,8,8,9,9,9,9,5,6,5,7,7,8,8,8,8,9,9,9,9,6,7,7,8,8,8,8,9,8,9,9,9,9,6,7,7,8,7,8,8,9,9,9,9,9,9,7,8,8,8,8,9,9,9,9,9,9,9,9,7,8,8,9,8,9,8,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,9,9,10,10,8,8,9,9,9,9,9,9,9,9,10,9,10,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,10,9,9,10,10,9,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,6,6,6,6,7,7,8,8,9,9,5,7,7,8,7,7,7,9,8,10,9,10,11,5,7,7,8,8,7,7,8,9,10,10,11,11,6,8,8,9,9,9,9,11,10,12,12,15,12,6,8,8,9,9,9,9,11,11,12,11,14,12,7,8,8,10,10,12,12,13,13,13,15,13,13,7,8,8,10,10,11,11,13,12,14,15,15,15,9,10,10,11,12,13,13,14,15,14,15,14,15,8,10,10,12,12,14,14,15,14,14,15,15,14,10,12,12,14,14,15,14,15,15,15,14,15,15,10,12,12,13,14,15,14,15,15,14,15,15,15,12,15,13,15,14,15,15,15,15,15,15,15,15,13,13,15,15,15,15,15,15,15,15,15,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,5,5,4,5,5,5,5,5,6,6,6,6,5,6,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,9,11,10,14,13,4,6,5,8,8,9,9,11,10,11,11,14,14,4,5,6,8,8,9,9,10,10,11,11,14,14,6,8,8,9,9,10,10,11,11,12,12,16,15,7,8,8,9,9,10,10,11,11,12,12,15,15,9,10,10,10,10,11,11,12,12,12,12,15,15,9,10,9,10,11,11,11,12,12,12,13,15,15,10,10,11,11,11,12,12,13,12,13,13,16,15,10,11,11,11,11,12,12,13,12,13,13,16,17,11,11,12,12,12,13,13,13,14,14,15,17,17,11,11,12,12,12,13,13,13,14,14,14,16,18,14,15,15,15,15,16,16,16,16,17,18,0,0,14,15,15,15,15,17,16,17,18,17,17,18,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,8,8,8,9,9,4,6,6,8,8,8,8,9,9,7,8,8,9,9,9,9,11,10,7,8,8,9,9,9,9,10,10,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,9,9,10,10,11,11,12,12,9,9,9,10,11,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,9,9,5,6,6,9,9,5,6,6,9,9,9,10,9,12,12,9,9,10,12,12,5,7,7,10,10,7,7,8,10,10,6,7,8,10,10,10,10,10,11,13,10,9,10,12,13,5,7,7,10,10,6,8,7,10,10,7,8,7,10,10,9,10,10,12,12,10,10,10,13,11,9,10,10,13,13,10,11,10,13,13,10,10,10,13,13,12,12,13,14,14,12,12,13,14,14,9,10,10,13,13,10,10,10,13,13,10,10,10,13,13,12,13,12,15,14,12,13,12,15,15,5,7,6,10,10,7,8,8,10,10,7,8,8,10,10,10,11,10,13,13,10,10,10,12,12,7,8,8,11,10,8,8,9,10,11,8,9,9,11,11,11,10,11,11,14,11,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,14,11,10,11,11,13,13,10,11,11,14,13,10,10,11,14,13,10,11,11,14,14,12,11,13,12,16,13,14,14,15,15,10,10,11,13,14,10,11,10,14,13,10,11,11,14,14,12,13,12,15,13,13,13,14,15,16,5,7,7,10,10,7,8,8,10,10,7,8,8,10,10,10,10,10,13,13,10,10,11,12,13,6,8,8,11,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,6,8,8,10,11,8,9,9,11,11,8,9,8,12,10,10,11,11,13,13,10,11,10,14,11,10,10,10,14,13,10,11,11,14,13,10,10,11,13,13,12,14,14,16,16,12,12,13,13,15,10,11,11,13,14,10,11,11,14,15,10,11,10,13,13,13,14,13,16,16,12,13,11,15,12,9,10,10,13,13,10,11,11,14,13,10,10,11,13,14,13,14,13,16,16,13,13,13,15,16,9,10,10,13,13,10,10,11,13,14,10,11,11,15,13,13,13,14,14,18,13,13,14,16,15,9,10,10,13,14,10,11,10,14,13,10,11,11,13,14,13,14,13,16,15,13,13,14,15,16,12,13,12,16,14,11,11,13,15,15,13,14,13,16,15,15,12,16,12,17,14,15,15,17,17,12,13,13,14,16,11,13,11,16,15,12,13,14,15,16,14,15,13,0,14,14,16,16,0,0,9,10,10,13,13,10,11,10,14,14,10,11,11,13,13,12,13,13,14,16,13,14,14,16,16,9,10,10,14,14,11,11,11,14,13,10,10,11,14,14,13,13,13,16,16,13,13,14,14,17,9,10,10,13,14,10,11,11,13,15,10,11,10,14,14,13,13,13,14,17,13,14,13,17,14,12,13,13,16,14,13,14,13,16,15,12,12,13,15,16,15,15,16,18,16,15,13,15,14,0,12,12,13,14,16,13,13,14,15,16,11,12,11,16,14,15,16,16,17,17,14,15,12,17,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,8,8,5,8,7,9,9,5,7,8,9,9,9,10,9,12,12,9,9,10,12,12,6,8,8,11,10,8,10,10,11,11,8,9,10,11,11,10,11,11,14,13,10,11,11,13,13,5,8,8,10,10,8,10,10,11,11,8,10,10,11,11,10,11,11,13,13,10,11,11,13,13,9,11,11,15,14,10,12,12,15,14,10,12,11,15,14,13,14,14,16,16,12,14,13,17,15,9,11,11,14,15,10,11,12,14,16,10,11,12,14,16,12,13,14,16,16,13,13,15,15,18,5,8,8,11,11,8,10,10,12,12,8,10,10,12,13,11,12,12,14,14,11,12,12,15,15,8,10,10,13,13,10,12,12,13,13,10,12,12,14,14,12,13,13,15,15,12,13,13,16,16,7,10,10,12,12,10,12,11,13,13,10,12,12,13,14,12,13,12,15,14,12,13,13,16,16,10,12,12,17,16,12,13,13,16,15,11,13,13,17,17,15,15,15,16,17,14,15,15,19,19,10,12,12,15,16,11,13,12,15,18,11,13,13,16,16,14,15,15,17,17,14,15,15,17,19,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,16,15,11,12,12,14,15,7,10,10,13,13,10,12,12,14,13,10,11,12,13,13,12,13,13,16,16,12,12,13,15,15,8,10,10,13,13,10,12,12,14,14,10,12,12,13,13,12,13,13,16,16,12,13,13,15,15,10,12,12,16,15,11,13,13,17,16,11,12,13,16,15,13,15,15,19,17,14,15,14,17,16,10,12,12,16,16,11,13,13,16,17,12,13,13,15,17,14,15,15,17,19,14,15,15,17,17,8,11,11,16,16,10,13,12,17,17,10,12,13,16,16,15,17,16,20,19,14,15,17,18,19,9,12,12,16,17,11,13,14,17,18,11,13,13,19,18,16,17,18,19,19,15,16,16,19,19,9,12,12,16,17,11,14,13,18,17,11,13,13,17,17,16,17,16,20,19,14,16,16,18,18,12,15,15,19,17,14,15,16,0,20,13,15,16,20,17,18,16,20,0,0,15,16,19,20,0,12,15,14,18,19,13,16,15,20,19,13,16,15,20,18,17,18,17,0,20,16,17,16,0,0,8,11,11,16,15,10,12,12,17,17,10,13,13,17,16,14,16,15,18,20,15,16,16,19,19,9,12,12,16,16,11,13,13,17,16,11,13,14,17,18,15,15,16,20,20,16,16,17,19,19,9,13,12,16,17,11,14,13,17,17,11,14,14,18,17,14,16,15,18,19,16,17,18,18,19,12,14,15,19,18,13,15,16,18,0,13,14,15,0,0,16,16,17,20,0,17,17,20,20,0,12,15,15,19,20,13,15,15,0,0,14,16,15,0,0,15,18,16,0,0,17,18,16,0,19,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,7,8,8,6,8,8,5,7,7,6,8,8,7,8,8,4,7,7,7,8,8,7,8,8,7,8,8,8,9,10,8,10,10,6,8,8,8,10,8,8,10,10,5,7,7,7,8,8,7,8,8,6,8,8,8,10,10,8,8,10,6,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,11,11,8,10,10,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,12,11,11,13,13,11,13,14,7,11,11,10,13,12,11,13,14,4,8,8,8,11,11,8,11,12,8,11,11,11,13,13,10,12,13,8,11,11,11,14,13,11,14,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,12,13,14,13,17,12,15,17,5,5,6,10,10,11,15,16,4,3,3,7,5,7,10,16,7,7,7,10,9,11,12,16,6,5,5,9,5,6,10,16,8,7,7,9,6,7,9,16,11,7,3,6,4,5,8,16,12,9,4,8,5,7,9,16,2,0,0,0,64,0,0,0,168,133,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,120,2,0,0,0,0,0,0,0,0,0,0,0,0,0,80,120,2,0,0,0,0,0,0,0,0,0,0,0,0,0,120,120,2,0,0,0,0,0,0,0,0,0,0,0,0,0,160,120,2,0,0,0,0,0,0,0,0,0,0,0,0,0,200,120,2,0,0,0,0,0,240,120,2,0,24,121,2,0,0,0,0,0,0,0,0,0,64,121,2,0,104,121,2,0,144,121,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,232,119,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,13,10,17,11,11,15,7,2,4,5,8,7,9,16,13,4,3,5,6,8,11,20,10,4,5,5,7,6,8,18,15,7,6,7,8,10,14,20,10,6,7,6,9,7,8,17,9,8,10,8,10,5,4,11,12,17,19,14,16,10,7,12,4,0,0,0,81,0,0,0,64,133,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,152,133,2,0,0,0,0,0,4,0,0,0,81,0,0,0,216,132,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,48,133,2,0,0,0,0,0,4,0,0,0,113,2,0,0,72,130,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,132,2,0,0,0,0,0,4,0,0,0,113,2,0,0,184,127,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,48,130,2,0,0,0,0,0,2,0,0,0,81,0,0,0,56,127,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,144,127,2,0,0,0,0,0,2,0,0,0,169,0,0,0,80,126,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,0,127,2,0,0,0,0,0,2,0,0,0,25,0,0,0,24,126,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,126,2,0,0,0,0,0,4,0,0,0,113,2,0,0,136,123,2,0,1,0,0,0,0,32,21,225,0,32,245,96,3,0,0,0,0,0,0,0,0,126,2,0,0,0,0,0,2,0,0,0,169,0,0,0,160,122,2,0,1,0,0,0,0,128,211,224,0,0,122,96,4,0,0,0,0,0,0,0,80,123,2,0,0,0,0,0,2,0,0,0,169,0,0,0,184,121,2,0,1,0,0,0,0,0,88,224,0,0,16,96,4,0,0,0,0,0,0,0,104,122,2,0,0,0,0,0,2,5,4,6,6,7,7,8,8,8,8,9,8,5,5,6,7,7,8,8,8,8,9,9,9,9,5,6,5,7,7,8,8,8,8,9,9,9,9,6,7,7,8,8,8,8,9,8,9,9,9,9,6,7,7,8,7,8,8,9,9,9,9,9,9,7,8,8,8,8,9,9,9,9,9,9,9,9,7,8,8,9,8,9,8,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,9,9,10,10,8,8,9,9,9,9,9,9,9,9,10,9,10,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,10,9,9,10,10,9,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,6,6,6,6,7,7,8,8,9,9,5,7,7,8,7,7,7,9,8,10,9,10,11,5,7,7,8,8,7,7,8,9,10,10,11,11,6,8,8,9,9,9,9,11,10,12,12,15,12,6,8,8,9,9,9,9,11,11,12,11,14,12,7,8,8,10,10,12,12,13,13,13,15,13,13,7,8,8,10,10,11,11,13,12,14,15,15,15,9,10,10,11,12,13,13,14,15,14,15,14,15,8,10,10,12,12,14,14,15,14,14,15,15,14,10,12,12,14,14,15,14,15,15,15,14,15,15,10,12,12,13,14,15,14,15,15,14,15,15,15,12,15,13,15,14,15,15,15,15,15,15,15,15,13,13,15,15,15,15,15,15,15,15,15,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,11,11,9,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,9,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,5,5,4,5,5,5,5,5,6,6,6,6,5,6,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,9,11,10,14,13,4,6,5,8,8,9,9,11,10,11,11,14,14,4,5,6,8,8,9,9,10,10,11,11,14,14,6,8,8,9,9,10,10,11,11,12,12,16,15,7,8,8,9,9,10,10,11,11,12,12,15,15,9,10,10,10,10,11,11,12,12,12,12,15,15,9,10,9,10,11,11,11,12,12,12,13,15,15,10,10,11,11,11,12,12,13,12,13,13,16,15,10,11,11,11,11,12,12,13,12,13,13,16,17,11,11,12,12,12,13,13,13,14,14,15,17,17,11,11,12,12,12,13,13,13,14,14,14,16,18,14,15,15,15,15,16,16,16,16,17,18,0,0,14,15,15,15,15,17,16,17,18,17,17,18,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,8,8,8,9,9,4,6,6,8,8,8,8,9,9,7,8,8,9,9,9,9,11,10,7,8,8,9,9,9,9,10,10,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,9,9,10,10,11,11,12,12,9,9,9,10,11,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,9,9,5,6,6,9,9,5,6,6,9,9,9,10,9,12,12,9,9,10,12,12,5,7,7,10,10,7,7,8,10,10,6,7,8,10,10,10,10,10,11,13,10,9,10,12,13,5,7,7,10,10,6,8,7,10,10,7,8,7,10,10,9,10,10,12,12,10,10,10,13,11,9,10,10,13,13,10,11,10,13,13,10,10,10,13,13,12,12,13,14,14,12,12,13,14,14,9,10,10,13,13,10,10,10,13,13,10,10,10,13,13,12,13,12,15,14,12,13,12,15,15,5,7,6,10,10,7,8,8,10,10,7,8,8,10,10,10,11,10,13,13,10,10,10,12,12,7,8,8,11,10,8,8,9,10,11,8,9,9,11,11,11,10,11,11,14,11,11,11,13,13,6,8,8,10,10,7,9,8,11,10,8,9,9,11,11,10,11,10,14,11,10,11,11,13,13,10,11,11,14,13,10,10,11,14,13,10,11,11,14,14,12,11,13,12,16,13,14,14,15,15,10,10,11,13,14,10,11,10,14,13,10,11,11,14,14,12,13,12,15,13,13,13,14,15,16,5,7,7,10,10,7,8,8,10,10,7,8,8,10,10,10,10,10,13,13,10,10,11,12,13,6,8,8,11,10,8,9,9,11,11,7,8,9,10,11,10,11,11,13,13,10,10,11,11,13,6,8,8,10,11,8,9,9,11,11,8,9,8,12,10,10,11,11,13,13,10,11,10,14,11,10,10,10,14,13,10,11,11,14,13,10,10,11,13,13,12,14,14,16,16,12,12,13,13,15,10,11,11,13,14,10,11,11,14,15,10,11,10,13,13,13,14,13,16,16,12,13,11,15,12,9,10,10,13,13,10,11,11,14,13,10,10,11,13,14,13,14,13,16,16,13,13,13,15,16,9,10,10,13,13,10,10,11,13,14,10,11,11,15,13,13,13,14,14,18,13,13,14,16,15,9,10,10,13,14,10,11,10,14,13,10,11,11,13,14,13,14,13,16,15,13,13,14,15,16,12,13,12,16,14,11,11,13,15,15,13,14,13,16,15,15,12,16,12,17,14,15,15,17,17,12,13,13,14,16,11,13,11,16,15,12,13,14,15,16,14,15,13,0,14,14,16,16,0,0,9,10,10,13,13,10,11,10,14,14,10,11,11,13,13,12,13,13,14,16,13,14,14,16,16,9,10,10,14,14,11,11,11,14,13,10,10,11,14,14,13,13,13,16,16,13,13,14,14,17,9,10,10,13,14,10,11,11,13,15,10,11,10,14,14,13,13,13,14,17,13,14,13,17,14,12,13,13,16,14,13,14,13,16,15,12,12,13,15,16,15,15,16,18,16,15,13,15,14,0,12,12,13,14,16,13,13,14,15,16,11,12,11,16,14,15,16,16,17,17,14,15,12,17,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,8,8,5,8,7,9,9,5,7,8,9,9,9,10,9,12,12,9,9,10,12,12,6,8,8,11,10,8,10,10,11,11,8,9,10,11,11,10,11,11,14,13,10,11,11,13,13,5,8,8,10,10,8,10,10,11,11,8,10,10,11,11,10,11,11,13,13,10,11,11,13,13,9,11,11,15,14,10,12,12,15,14,10,12,11,15,14,13,14,14,16,16,12,14,13,17,15,9,11,11,14,15,10,11,12,14,16,10,11,12,14,16,12,13,14,16,16,13,13,15,15,18,5,8,8,11,11,8,10,10,12,12,8,10,10,12,13,11,12,12,14,14,11,12,12,15,15,8,10,10,13,13,10,12,12,13,13,10,12,12,14,14,12,13,13,15,15,12,13,13,16,16,7,10,10,12,12,10,12,11,13,13,10,12,12,13,14,12,13,12,15,14,12,13,13,16,16,10,12,12,17,16,12,13,13,16,15,11,13,13,17,17,15,15,15,16,17,14,15,15,19,19,10,12,12,15,16,11,13,12,15,18,11,13,13,16,16,14,15,15,17,17,14,15,15,17,19,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,16,15,11,12,12,14,15,7,10,10,13,13,10,12,12,14,13,10,11,12,13,13,12,13,13,16,16,12,12,13,15,15,8,10,10,13,13,10,12,12,14,14,10,12,12,13,13,12,13,13,16,16,12,13,13,15,15,10,12,12,16,15,11,13,13,17,16,11,12,13,16,15,13,15,15,19,17,14,15,14,17,16,10,12,12,16,16,11,13,13,16,17,12,13,13,15,17,14,15,15,17,19,14,15,15,17,17,8,11,11,16,16,10,13,12,17,17,10,12,13,16,16,15,17,16,20,19,14,15,17,18,19,9,12,12,16,17,11,13,14,17,18,11,13,13,19,18,16,17,18,19,19,15,16,16,19,19,9,12,12,16,17,11,14,13,18,17,11,13,13,17,17,16,17,16,20,19,14,16,16,18,18,12,15,15,19,17,14,15,16,0,20,13,15,16,20,17,18,16,20,0,0,15,16,19,20,0,12,15,14,18,19,13,16,15,20,19,13,16,15,20,18,17,18,17,0,20,16,17,16,0,0,8,11,11,16,15,10,12,12,17,17,10,13,13,17,16,14,16,15,18,20,15,16,16,19,19,9,12,12,16,16,11,13,13,17,16,11,13,14,17,18,15,15,16,20,20,16,16,17,19,19,9,13,12,16,17,11,14,13,17,17,11,14,14,18,17,14,16,15,18,19,16,17,18,18,19,12,14,15,19,18,13,15,16,18,0,13,14,15,0,0,16,16,17,20,0,17,17,20,20,0,12,15,15,19,20,13,15,15,0,0,14,16,15,0,0,15,18,16,0,0,17,18,16,0,19,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,7,8,8,6,8,8,5,7,7,6,8,8,7,8,8,4,7,7,7,8,8,7,8,8,7,8,8,8,9,10,8,10,10,6,8,8,8,10,8,8,10,10,5,7,7,7,8,8,7,8,8,6,8,8,8,10,10,8,8,10,6,8,8,8,10,10,8,10,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,11,11,8,10,10,5,8,8,8,11,10,8,11,11,4,8,8,8,11,11,8,11,11,8,12,11,11,13,13,11,13,14,7,11,11,10,13,12,11,13,14,4,8,8,8,11,11,8,11,12,8,11,11,11,13,13,10,12,13,8,11,11,11,14,13,11,14,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,12,13,14,13,17,12,15,17,5,5,6,10,10,11,15,16,4,3,3,7,5,7,10,16,7,7,7,10,9,11,12,16,6,5,5,9,5,6,10,16,8,7,7,9,6,7,9,16,11,7,3,6,4,5,8,16,12,9,4,8,5,7,9,16],"i8",L3,R.GLOBAL_BASE+155104),d3([2,0,0,0,64,0,0,0,184,148,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,135,2,0,0,0,0,0,0,0,0,0,0,0,0,0,96,135,2,0,0,0,0,0,0,0,0,0,0,0,0,0,136,135,2,0,0,0,0,0,0,0,0,0,0,0,0,0,176,135,2,0,0,0,0,0,0,0,0,0,0,0,0,0,216,135,2,0,0,0,0,0,0,136,2,0,40,136,2,0,0,0,0,0,0,0,0,0,80,136,2,0,120,136,2,0,160,136,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,248,134,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,12,9,14,9,9,19,6,1,5,5,8,7,9,19,12,4,4,7,7,9,11,18,9,5,6,6,8,7,8,17,14,8,7,8,8,10,12,18,9,6,8,6,8,6,8,18,9,8,11,8,11,7,5,15,16,18,18,18,17,15,11,18,4,0,0,0,81,0,0,0,80,148,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,148,2,0,0,0,0,0,4,0,0,0,81,0,0,0,232,147,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,64,148,2,0,0,0,0,0,4,0,0,0,113,2,0,0,88,145,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,147,2,0,0,0,0,0,4,0,0,0,113,2,0,0,200,142,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,145,2,0,0,0,0,0,2,0,0,0,81,0,0,0,72,142,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,160,142,2,0,0,0,0,0,2,0,0,0,169,0,0,0,96,141,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,16,142,2,0,0,0,0,0,2,0,0,0,25,0,0,0,40,141,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,72,141,2,0,0,0,0,0,4,0,0,0,113,2,0,0,152,138,2,0,1,0,0,0,0,32,21,225,0,32,245,96,3,0,0,0,0,0,0,0,16,141,2,0,0,0,0,0,2,0,0,0,169,0,0,0,176,137,2,0,1,0,0,0,0,128,211,224,0,0,122,96,4,0,0,0,0,0,0,0,96,138,2,0,0,0,0,0,2,0,0,0,169,0,0,0,200,136,2,0,1,0,0,0,0,0,88,224,0,0,16,96,4,0,0,0,0,0,0,0,120,137,2,0,0,0,0,0,3,4,4,6,6,7,7,8,8,9,9,9,8,4,5,5,6,6,8,8,9,8,9,9,9,9,4,5,5,7,6,8,8,8,8,9,8,9,8,6,7,7,7,8,8,8,9,9,9,9,9,9,6,7,7,7,7,8,8,9,9,9,9,9,9,7,8,8,8,8,9,8,9,9,10,9,9,10,7,8,8,8,8,9,9,9,9,9,9,10,10,8,9,9,9,9,9,9,9,9,10,10,9,10,8,9,9,9,9,9,9,9,9,9,9,10,10,9,9,9,10,9,9,10,9,9,10,10,10,10,9,9,9,9,9,9,9,10,9,10,10,10,10,9,9,9,10,9,9,10,10,9,10,10,10,10,9,9,9,10,9,9,9,10,10,10,10,10,10,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,6,6,6,6,9,8,9,8,8,8,5,7,7,7,7,8,8,8,10,8,10,8,9,5,7,7,8,7,7,8,10,10,11,10,12,11,7,8,8,9,9,9,10,11,11,11,11,11,11,7,8,8,8,9,9,9,10,10,10,11,11,12,7,8,8,9,9,10,11,11,12,11,12,11,11,7,8,8,9,9,10,10,11,11,11,12,12,11,8,10,10,10,10,11,11,14,11,12,12,12,13,9,10,10,10,10,12,11,14,11,14,11,12,13,10,11,11,11,11,13,11,14,14,13,13,13,14,11,11,11,12,11,12,12,12,13,14,14,13,14,12,11,12,12,12,12,13,13,13,14,13,14,14,11,12,12,14,12,13,13,12,13,13,14,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,5,3,11,11,11,11,11,11,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,5,5,4,5,5,6,5,5,6,5,6,6,5,6,6,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,10,10,11,11,15,15,4,5,5,8,8,9,9,11,11,12,12,16,16,4,5,6,8,8,9,9,11,11,12,12,14,14,7,8,8,9,9,10,10,11,12,13,13,16,17,7,8,8,9,9,10,10,12,12,12,13,15,15,9,10,10,10,10,11,11,12,12,13,13,15,16,9,9,9,10,10,11,11,13,12,13,13,17,17,10,11,11,11,12,12,12,13,13,14,15,0,18,10,11,11,12,12,12,13,14,13,14,14,17,16,11,12,12,13,13,14,14,14,14,15,16,17,16,11,12,12,13,13,14,14,14,14,15,15,17,17,14,15,15,16,16,16,17,17,16,0,17,0,18,14,15,15,16,16,0,15,18,18,0,16,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,8,8,9,9,4,6,5,8,7,8,8,10,9,4,6,6,8,8,8,8,10,10,7,8,7,9,9,9,9,11,10,7,8,8,9,9,9,9,10,11,8,8,8,9,9,10,10,11,11,8,8,8,9,9,10,10,11,11,9,10,10,11,10,11,11,12,12,9,10,10,10,11,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,9,9,5,6,6,10,9,5,6,6,9,10,10,10,10,12,11,9,10,10,12,12,5,7,7,10,10,7,7,8,10,11,7,7,8,10,11,10,10,11,11,13,10,10,11,11,13,6,7,7,10,10,7,8,7,11,10,7,8,7,10,10,10,11,9,13,11,10,11,10,13,11,10,10,10,14,13,10,11,11,14,13,10,10,11,13,14,12,12,13,15,15,12,12,13,13,14,10,10,10,12,13,10,11,10,13,13,10,11,11,13,13,12,13,12,14,13,12,13,13,14,13,5,7,7,10,10,7,8,8,11,10,7,8,8,10,10,11,11,11,13,13,10,11,11,12,12,7,8,8,11,11,7,8,9,10,12,8,9,9,11,11,11,10,12,11,14,11,11,12,13,13,6,8,8,10,11,7,9,7,12,10,8,9,10,11,12,10,12,10,14,11,11,12,11,13,13,10,11,11,14,14,10,10,11,13,14,11,12,12,15,13,12,11,14,12,16,12,13,14,15,16,10,10,11,13,14,10,11,10,14,12,11,12,12,13,14,12,13,11,15,12,14,14,14,15,15,5,7,7,10,10,7,8,8,10,10,7,8,8,10,11,10,11,10,12,12,10,11,11,12,13,6,8,8,11,11,8,9,9,12,11,7,7,9,10,12,11,11,11,12,13,11,10,12,11,15,7,8,8,11,11,8,9,9,11,11,7,9,8,12,10,11,12,11,13,12,11,12,10,15,11,10,11,10,14,12,11,12,11,14,13,10,10,11,13,14,13,13,13,17,15,12,11,14,12,15,10,10,11,13,14,11,12,12,14,14,10,11,10,14,13,13,14,13,16,17,12,14,11,16,12,9,10,10,14,13,10,11,10,14,14,10,11,11,13,13,13,14,14,16,15,12,13,13,14,14,9,11,10,14,13,10,10,12,13,14,11,12,11,14,13,13,14,14,14,15,13,14,14,15,15,9,10,11,13,14,10,11,10,15,13,11,11,12,12,15,13,14,12,15,14,13,13,14,14,15,12,13,12,16,14,11,11,12,15,14,13,15,13,16,14,13,12,15,12,17,15,16,15,16,16,12,12,13,13,15,11,13,11,15,14,13,13,14,15,17,13,14,12,0,13,14,15,14,15,0,9,10,10,13,13,10,11,11,13,13,10,11,11,13,13,12,13,12,14,14,13,14,14,15,17,9,10,10,13,13,11,12,11,15,12,10,10,11,13,16,13,14,13,15,14,13,13,14,15,16,10,10,11,13,14,11,11,12,13,14,10,12,11,14,14,13,13,13,14,15,13,15,13,16,15,12,13,12,15,13,12,15,13,15,15,11,11,13,14,15,15,15,15,15,17,13,12,14,13,17,12,12,14,14,15,13,13,14,14,16,11,13,11,16,15,14,16,16,17,0,14,13,11,16,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,8,8,5,8,7,9,9,5,7,8,9,9,9,10,9,12,12,9,9,10,11,12,6,8,8,10,10,8,10,10,11,11,8,9,10,11,11,10,11,11,13,13,10,11,11,12,13,6,8,8,10,10,8,10,9,11,11,8,10,10,11,11,10,11,11,13,12,10,11,11,13,12,9,11,11,15,13,10,12,11,15,13,10,11,11,15,14,12,14,13,16,15,12,13,13,17,16,9,11,11,13,15,10,11,12,14,15,10,11,12,14,15,12,13,13,15,16,12,13,13,16,16,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,14,8,11,10,13,12,10,11,12,12,13,10,12,12,13,13,12,12,13,13,15,11,12,13,15,14,7,10,10,12,12,9,12,11,13,12,10,12,12,13,14,12,13,12,15,13,11,13,12,14,15,10,12,12,16,14,11,12,12,16,15,11,13,12,17,16,13,13,15,15,17,13,15,15,20,17,10,12,12,14,16,11,12,12,15,15,11,13,13,15,18,13,14,13,15,15,13,15,14,16,16,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,15,7,10,10,13,12,10,12,12,14,13,9,10,12,12,13,11,13,13,15,15,11,12,13,13,15,8,10,10,12,13,10,12,12,13,13,10,12,11,13,13,11,13,12,15,15,12,13,12,15,13,10,12,12,16,14,11,12,12,16,15,10,12,12,16,14,14,15,14,18,16,13,13,14,15,16,10,12,12,14,16,11,13,13,16,16,11,13,12,14,16,13,15,15,18,18,13,15,13,16,14,8,11,11,16,16,10,13,13,17,16,10,12,12,16,15,14,16,15,20,17,13,14,14,17,17,9,12,12,16,16,11,13,14,16,17,11,13,13,16,16,15,15,19,18,0,14,15,15,18,18,9,12,12,17,16,11,13,12,17,16,11,12,13,15,17,15,16,15,0,19,14,15,14,19,18,12,14,14,0,16,13,14,14,19,18,13,15,16,17,16,15,15,17,18,0,14,16,16,19,0,12,14,14,16,18,13,15,13,17,18,13,15,14,17,18,15,18,14,18,18,16,17,16,0,17,8,11,11,15,15,10,12,12,16,16,10,13,13,16,16,13,15,14,17,17,14,15,17,17,18,9,12,12,16,15,11,13,13,16,16,11,12,13,17,17,14,14,15,17,17,14,15,16,0,18,9,12,12,16,17,11,13,13,16,17,11,14,13,18,17,14,16,14,17,17,15,17,17,18,18,12,14,14,0,16,13,15,15,19,0,12,13,15,0,0,14,17,16,19,0,16,15,18,18,0,12,14,14,17,0,13,14,14,17,0,13,15,14,0,18,15,16,16,0,18,15,18,15,0,17,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,7,8,8,6,7,9,5,7,7,6,8,7,7,9,8,4,7,7,7,9,8,7,8,8,7,9,8,8,8,10,9,10,10,6,8,8,7,10,8,9,10,10,5,7,7,7,8,8,7,8,9,6,8,8,9,10,10,7,8,10,6,8,9,9,10,10,8,10,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,8,7,5,7,8,5,8,8,8,10,11,8,10,11,5,8,8,8,11,10,8,11,10,4,9,9,8,11,11,8,11,11,8,12,11,10,12,14,11,13,13,7,11,11,10,13,11,11,13,14,4,8,9,8,11,11,8,11,12,7,11,11,11,14,13,10,11,13,8,11,12,11,13,13,10,14,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,12,12,14,12,14,14,14,14,12,6,6,8,9,9,11,14,12,4,2,6,6,7,11,14,13,6,5,7,8,9,11,14,13,8,5,8,6,8,12,14,12,7,7,8,8,8,10,14,12,6,3,4,4,4,7,14,11,7,4,6,6,6,8,14,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,0,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,5,0,0,0,4,0,0,0,3,0,0,0,0,0,128,63,0,0,0,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,160,64,0,0,192,64,0,0,224,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,64,65,0,0,72,65,0,0,80,65,0,0,88,65,0,0,96,65,0,0,104,65,0,0,112,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,4,0,0,0,3,0,0,0,0,0,128,63,0,0,0,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,160,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,64,65,0,0,72,65,0,0,80,65,0,0,88,65,0,0,96,65,0,0,104,65,0,0,112,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,4,0,0,0,3,0,0,0,0,0,128,63,0,0,0,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,160,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,6,0,0,0,6,0,0,0,5,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,64,64,0,0,128,64,0,0,128,64,0,0,160,64,0,0,160,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,128,64,0,0,128,64,0,0,160,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,2,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,192,64,0,0,192,64,0,0,192,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,32,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,2,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,64,0,0,224,64,0,0,0,65,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,65,0,0,32,65,0,0,32,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,32,65,0,0,32,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,64,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,200,47,1,0,32,161,2,0,200,47,1,0,96,161,2,0,200,47,1,0,160,161,2,0,200,47,1,0,224,161,2,0,200,47,1,0,32,162,2,0,200,47,1,0,96,162,2,0,200,47,1,0,160,162,2,0,200,47,1,0,224,162,2,0,200,47,1,0,32,163,2,0,200,47,1,0,96,163,2,0,200,47,1,0,160,163,2,0,2,0,0,0,0,0,0,0,32,0,0,0,64,171,3,0,216,86,4,0,0,87,4,0,40,87,4,0,232,87,4,0,2,0,0,0,0,0,0,0,32,0,0,0,64,171,3,0,168,88,4,0,208,88,4,0,40,87,4,0,232,87,4,0,2,0,0,0,0,0,0,0,16,0,0,0,64,171,3,0,248,5,4,0,32,6,4,0,72,6,4,0,8,7,4,0,2,0,0,0,0,0,0,0,32,0,0,0,64,171,3,0,200,7,4,0,240,7,4,0,72,6,4,0,8,7,4,0,2,0,0,0,0,0,0,0,16,0,0,0,64,171,3,0,88,182,3,0,128,182,3,0,168,182,3,0,104,183,3,0,2,0,0,0,0,0,0,0,32,0,0,0,64,171,3,0,40,184,3,0,80,184,3,0,168,182,3,0,104,183,3,0,2,0,0,0,0,0,0,0,16,0,0,0,24,73,1,0,152,128,3,0,152,128,3,0,192,128,3,0,192,128,3,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,128,129,3,0,128,129,3,0,192,128,3,0,192,128,3,0,2,0,0,0,0,0,0,0,16,0,0,0,24,73,1,0,176,85,3,0,176,85,3,0,216,85,3,0,216,85,3,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,152,86,3,0,152,86,3,0,216,85,3,0,216,85,3,0,2,0,0,0,0,0,0,0,16,0,0,0,24,73,1,0,32,42,3,0,32,42,3,0,72,42,3,0,72,42,3,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,8,43,3,0,8,43,3,0,72,42,3,0,72,42,3,0,2,0,0,0,0,0,0,0,16,0,0,0,24,73,1,0,8,254,2,0,8,254,2,0,48,254,2,0,48,254,2,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,240,254,2,0,240,254,2,0,48,254,2,0,48,254,2,0,2,0,0,0,0,0,0,0,16,0,0,0,224,163,2,0,8,235,2,0,8,235,2,0,48,235,2,0,48,235,2,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,240,235,2,0,240,235,2,0,48,235,2,0,48,235,2,0,2,0,0,0,0,0,0,0,16,0,0,0,224,163,2,0,8,216,2,0,8,216,2,0,48,216,2,0,48,216,2,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,240,216,2,0,240,216,2,0,48,216,2,0,48,216,2,0,2,0,0,0,0,0,0,0,16,0,0,0,224,163,2,0,168,195,2,0,168,195,2,0,208,195,2,0,208,195,2,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,144,196,2,0,144,196,2,0,208,195,2,0,208,195,2,0,2,0,0,0,0,0,0,0,16,0,0,0,224,163,2,0,248,174,2,0,248,174,2,0,32,175,2,0,32,175,2,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,224,175,2,0,224,175,2,0,32,175,2,0,32,175,2,0,0,0,0,0,255,255,255,255,255,255,255,255,10,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,R.GLOBAL_BASE+165344),d3([1,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,71,0,0,0,157,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,71,0,0,0,157,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,64,195,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,176,2,0,0,0,0,0,0,0,0,0,0,0,0,0,152,176,2,0,0,0,0,0,0,0,0,0,0,0,0,0,192,176,2,0,0,0,0,0,0,0,0,0,0,0,0,0,232,176,2,0,0,0,0,0,16,177,2,0,56,177,2,0,0,0,0,0,0,0,0,0,96,177,2,0,136,177,2,0,0,0,0,0,0,0,0,0,176,177,2,0,216,177,2,0,0,0,0,0,0,0,0,0,0,178,2,0,40,178,2,0,0,0,0,0,0,0,0,0,80,178,2,0,120,178,2,0,160,178,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,8,176,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,12,14,15,15,15,13,15,15,6,5,8,10,12,12,13,12,14,13,10,6,5,6,8,9,11,11,13,13,13,8,5,4,5,6,8,10,11,13,14,10,7,5,4,5,7,9,11,12,13,11,8,6,5,4,5,7,9,11,12,11,10,8,7,5,4,5,9,10,13,13,11,10,8,6,5,4,7,9,15,14,13,12,10,9,8,7,8,9,12,12,14,13,12,11,10,9,8,9,0,0,0,0,4,0,0,0,81,0,0,0,216,194,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,48,195,2,0,0,0,0,0,4,0,0,0,113,2,0,0,72,192,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,194,2,0,0,0,0,0,2,0,0,0,81,0,0,0,200,191,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,32,192,2,0,0,0,0,0,2,0,0,0,33,1,0,0,88,190,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,128,191,2,0,0,0,0,0,4,0,0,0,81,0,0,0,240,189,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,72,190,2,0,0,0,0,0,2,0,0,0,121,0,0,0,64,189,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,192,189,2,0,0,0,0,0,2,0,0,0,169,0,0,0,88,188,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,8,189,2,0,0,0,0,0,2,0,0,0,25,0,0,0,32,188,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,188,2,0,0,0,0,0,2,0,0,0,169,0,0,0,56,187,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,232,187,2,0,0,0,0,0,2,0,0,0,121,0,0,0,136,186,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,8,187,2,0,0,0,0,0,2,0,0,0,225,0,0,0,96,185,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,72,186,2,0,0,0,0,0,2,0,0,0,185,1,0,0,72,183,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,8,185,2,0,0,0,0,0,2,0,0,0,105,1,0,0,136,181,2,0,1,0,0,0,128,93,176,225,0,24,61,97,5,0,0,0,0,0,0,0,248,182,2,0,0,0,0,0,2,0,0,0,105,1,0,0,200,179,2,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,56,181,2,0,0,0,0,0,1,0,0,0,49,0,0,0,200,178,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,0,179,2,0,0,0,0,0,2,4,4,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,8,7,9,8,9,9,10,10,11,11,11,11,6,5,5,8,8,9,9,9,8,10,9,11,10,12,12,13,12,13,13,5,5,5,8,8,9,9,9,9,10,10,11,11,12,12,13,12,13,13,17,8,8,9,9,9,9,9,9,10,10,12,11,13,12,13,13,13,13,18,8,8,9,9,9,9,9,9,11,11,12,12,13,13,13,13,13,13,17,13,12,9,9,10,10,10,10,11,11,12,12,12,13,13,13,14,14,18,13,12,9,9,10,10,10,10,11,11,12,12,13,13,13,14,14,14,17,18,18,10,10,10,10,11,11,11,12,12,12,14,13,14,13,13,14,18,18,18,10,9,10,9,11,11,12,12,12,12,13,13,15,14,14,14,18,18,16,13,14,10,11,11,11,12,13,13,13,13,14,13,13,14,14,18,18,18,14,12,11,9,11,10,13,12,13,13,13,14,14,14,13,14,18,18,17,18,18,11,12,12,12,13,13,14,13,14,14,13,14,14,14,18,18,18,18,17,12,10,12,9,13,11,13,14,14,14,14,14,15,14,18,18,17,17,18,14,15,12,13,13,13,14,13,14,14,15,14,15,14,18,17,18,18,18,15,15,12,10,14,10,14,14,13,13,14,14,14,14,18,16,18,18,18,18,17,14,14,13,14,14,13,13,14,14,14,15,15,18,18,18,18,17,17,17,14,14,14,12,14,13,14,14,15,14,15,14,18,18,18,18,18,18,18,17,16,13,13,13,14,14,14,14,15,16,15,18,18,18,18,18,18,18,17,17,13,13,13,13,14,13,14,15,15,15,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,4,3,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,4,5,6,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,4,6,6,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,4,6,6,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,7,7,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,10,9,9,9,10,10,10,10,10,10,10,9,9,9,9,9,9,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,9,9,10,9,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,9,9,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,10,10,9,9,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,10,9,9,9,9,9,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,6,8,8,8,8,9,9,10,10,11,10,6,5,5,7,7,9,9,8,9,10,10,11,11,12,12,6,5,5,7,7,9,9,9,9,10,10,11,11,12,12,21,7,8,8,8,9,9,9,9,10,10,11,11,12,12,21,8,8,8,8,9,9,9,9,10,10,11,11,12,12,21,11,12,9,9,10,10,10,10,10,11,11,12,12,12,21,12,12,9,8,10,10,10,10,11,11,12,12,13,13,21,21,21,9,9,9,9,11,11,11,11,12,12,12,13,21,20,20,9,9,9,9,10,11,11,11,12,12,13,13,20,20,20,13,13,10,10,11,11,12,12,13,13,13,13,20,20,20,13,13,10,10,11,11,12,12,13,13,13,13,20,20,20,20,20,12,12,12,12,12,12,13,13,14,14,20,20,20,20,20,12,12,12,11,13,12,13,13,14,14,20,20,20,20,20,15,16,13,12,13,13,14,13,14,14,20,20,20,20,20,16,15,12,12,13,12,14,13,14,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,5,6,6,6,6,7,7,7,7,7,7,7,6,6,6,6,7,7,7,7,7,7,7,6,6,6,6,7,7,7,7,7,7,8,6,6,6,6,7,7,7,7,7,7,8,8,8,6,6,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,10,10,11,11,6,4,4,6,6,8,8,9,9,10,10,12,12,6,4,5,6,6,8,8,9,9,10,10,12,12,20,6,6,6,6,8,8,9,10,11,11,12,12,20,6,6,6,6,8,8,10,10,11,11,12,12,20,10,10,7,7,9,9,10,10,11,11,12,12,20,11,11,7,7,9,9,10,10,11,11,12,12,20,20,20,9,9,9,9,11,11,12,12,13,13,20,20,20,9,9,9,9,11,11,12,12,13,13,20,20,20,13,13,10,10,11,11,12,13,13,13,20,20,20,13,13,10,10,11,11,12,13,13,13,20,20,20,20,19,12,12,12,12,13,13,14,15,19,19,19,19,19,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,4,4,4,5,5,5,4,4,5,5,5,4,4,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,9,9,5,4,4,6,6,8,8,9,9,9,9,10,10,6,4,4,6,6,8,8,9,9,9,9,10,10,0,6,6,7,7,8,8,9,9,10,10,11,11,0,6,6,7,7,8,8,9,9,10,10,11,11,0,10,10,8,8,9,9,10,10,11,11,12,12,0,11,11,8,8,9,9,10,10,11,11,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,7,7,11,5,5,6,6,7,7,7,7,8,8,11,5,5,6,6,7,7,7,7,8,8,11,5,5,6,6,7,7,8,8,8,8,11,11,11,6,6,7,7,7,8,8,8,11,11,11,6,6,7,7,7,8,8,8,11,11,11,6,6,7,7,7,7,8,8,11,11,11,7,7,7,7,7,7,8,8,11,11,11,10,10,7,7,7,7,8,8,11,11,11,11,11,7,7,7,7,7,7,11,11,11,11,11,7,7,7,7,7,7,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,7,6,9,10,10,10,10,9,4,6,7,9,10,10,10,9,10,5,9,9,9,11,11,10,11,11,7,10,9,11,12,11,12,12,12,7,9,10,11,11,12,12,12,12,6,10,10,10,12,12,10,12,11,7,10,10,11,12,12,11,12,12,7,10,10,11,12,12,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,10,10,0,5,4,5,5,7,7,8,8,8,8,9,9,10,10,11,11,0,5,5,6,6,7,7,8,8,8,8,9,9,10,10,11,11,0,6,5,6,6,7,7,8,8,9,9,10,10,11,11,11,12,0,0,0,6,6,7,7,8,8,9,9,10,10,11,11,12,12,0,0,0,7,7,7,7,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,7,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,3,4,4,5,5,6,6,8,8,0,4,4,5,5,6,7,8,8,0,4,4,5,5,7,7,8,8,0,5,5,6,6,7,7,9,9,0,0,0,6,6,7,7,9,9,0,0,0,7,7,8,8,9,9,0,0,0,7,7,8,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,0,5,5,8,8,0,5,5,8,8,0,7,7,9,9,0,0,0,9,9,6,7,7,9,8,0,8,8,9,9,0,8,7,9,9,0,9,10,10,10,0,0,0,11,10,6,7,7,8,9,0,8,8,9,9,0,7,8,9,9,0,10,9,11,10,0,0,0,10,10,8,9,8,10,10,0,10,10,12,11,0,10,10,11,11,0,12,13,13,13,0,0,0,13,12,8,8,9,10,10,0,10,10,11,12,0,10,10,11,11,0,13,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,7,10,10,0,7,7,10,9,0,7,7,10,10,0,9,9,10,10,0,0,0,10,10,6,7,8,10,10,0,7,7,9,10,0,7,7,10,10,0,9,9,10,10,0,0,0,10,10,8,9,9,11,11,0,10,10,11,11,0,10,10,11,11,0,12,12,12,12,0,0,0,12,12,8,9,10,11,11,0,9,10,11,11,0,10,10,11,11,0,12,12,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,10,10,0,7,7,10,10,0,7,7,10,9,0,9,9,10,10,0,0,0,10,10,6,7,8,10,10,0,7,7,10,10,0,7,7,9,10,0,9,9,10,10,0,0,0,10,10,8,10,9,12,11,0,10,10,12,11,0,10,9,11,11,0,11,12,12,12,0,0,0,12,12,8,9,10,11,12,0,10,10,11,11,0,9,10,11,11,0,12,11,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,9,12,12,0,9,9,12,11,0,9,9,11,11,0,10,10,12,11,0,0,0,11,12,7,9,10,12,12,0,9,9,11,12,0,9,9,11,11,0,10,10,11,12,0,0,0,11,11,9,11,10,13,12,0,10,10,12,12,0,10,10,12,12,0,11,11,12,12,0,0,0,13,12,9,10,11,12,13,0,10,10,12,12,0,10,10,12,12,0,11,12,12,12,0,0,0,12,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,11,10,13,13,0,10,10,12,12,0,10,10,12,12,0,11,12,12,12,0,0,0,12,12,9,10,11,13,13,0,10,10,12,12,0,10,10,12,12,0,12,11,13,12,0,0,0,12,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,5,5,0,5,5,6,8,8,0,9,8,0,9,8,6,8,8,0,8,9,0,8,9,0,0,0,0,0,0,0,0,0,5,8,8,0,7,7,0,8,8,5,8,8,0,7,8,0,8,8,0,0,0,0,0,0,0,0,0,5,9,8,0,8,8,0,7,7,5,8,9,0,8,8,0,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,13,18,16,17,17,19,18,19,19,5,7,10,11,12,12,13,16,17,18,6,6,7,7,9,9,10,14,17,19,8,7,6,5,6,7,9,12,19,17,8,7,7,6,5,6,8,11,15,19,9,8,7,6,5,5,6,8,13,15,11,10,8,8,7,5,4,4,10,14,12,13,11,9,7,6,4,2,6,12,18,16,16,13,8,7,7,5,8,13,16,17,18,15,11,9,9,8,10,13,0,0,0,0,2,0,0,0,100,0,0,0,160,215,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,197,2,0,0,0,0,0,0,0,0,0,0,0,0,0,72,197,2,0,0,0,0,0,0,0,0,0,0,0,0,0,112,197,2,0,0,0,0,0,0,0,0,0,0,0,0,0,152,197,2,0,0,0,0,0,192,197,2,0,232,197,2,0,0,0,0,0,0,0,0,0,16,198,2,0,56,198,2,0,0,0,0,0,0,0,0,0,96,198,2,0,136,198,2,0,0,0,0,0,0,0,0,0,176,198,2,0,216,198,2,0,0,0,0,0,0,0,0,0,0,199,2,0,40,199,2,0,80,199,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,184,196,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,12,13,14,14,14,13,14,14,6,4,5,8,10,10,11,11,14,13,9,5,4,5,7,8,9,10,13,13,12,7,5,4,5,6,8,9,12,13,13,9,6,5,5,5,7,9,11,14,12,10,7,6,5,4,6,7,10,11,12,11,9,8,7,5,5,6,10,10,13,12,10,9,8,6,6,5,8,10,14,13,12,12,11,10,9,7,8,10,12,13,14,14,13,12,11,9,9,10,0,0,0,0,4,0,0,0,81,0,0,0,56,215,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,144,215,2,0,0,0,0,0,4,0,0,0,113,2,0,0,168,212,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,32,215,2,0,0,0,0,0,2,0,0,0,81,0,0,0,40,212,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,212,2,0,0,0,0,0,2,0,0,0,33,1,0,0,184,210,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,211,2,0,0,0,0,0,4,0,0,0,81,0,0,0,80,210,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,168,210,2,0,0,0,0,0,2,0,0,0,121,0,0,0,160,209,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,32,210,2,0,0,0,0,0,2,0,0,0,169,0,0,0,184,208,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,104,209,2,0,0,0,0,0,2,0,0,0,25,0,0,0,128,208,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,208,2,0,0,0,0,0,2,0,0,0,169,0,0,0,152,207,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,72,208,2,0,0,0,0,0,2,0,0,0,121,0,0,0,232,206,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,104,207,2,0,0,0,0,0,2,0,0,0,225,0,0,0,192,205,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,168,206,2,0,0,0,0,0,2,0,0,0,185,1,0,0,168,203,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,104,205,2,0,0,0,0,0,2,0,0,0,33,1,0,0,56,202,2,0,1,0,0,0,0,24,157,225,0,24,61,97,5,0,0,0,0,0,0,0,96,203,2,0,0,0,0,0,2,0,0,0,105,1,0,0,120,200,2,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,232,201,2,0,0,0,0,0,1,0,0,0,49,0,0,0,120,199,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,176,199,2,0,0,0,0,0,2,4,4,4,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,6,7,7,7,7,8,8,9,9,10,10,10,10,11,11,6,6,6,8,8,9,8,8,7,10,8,11,10,12,11,12,12,13,13,5,5,6,8,8,9,9,8,8,10,9,11,11,12,12,13,13,13,13,17,8,8,9,9,9,9,9,9,10,9,12,10,12,12,13,12,13,13,17,9,8,9,9,9,9,9,9,10,10,12,12,12,12,13,13,13,13,17,13,13,9,9,10,10,10,10,11,11,12,11,13,12,13,13,14,15,17,13,13,9,8,10,9,10,10,11,11,12,12,14,13,15,13,14,15,17,17,17,9,10,9,10,11,11,12,12,12,12,13,13,14,14,15,15,17,17,17,9,8,9,8,11,11,12,12,12,12,14,13,14,14,14,15,17,17,17,12,14,9,10,11,11,12,12,14,13,13,14,15,13,15,15,17,17,17,13,11,10,8,11,9,13,12,13,13,13,13,13,14,14,14,17,17,17,17,17,11,12,11,11,13,13,14,13,15,14,13,15,16,15,17,17,17,17,17,11,11,12,8,13,12,14,13,17,14,15,14,15,14,17,17,17,17,17,15,15,12,12,12,12,13,14,14,14,15,14,17,14,17,17,17,17,17,16,17,12,12,13,12,13,13,14,14,14,14,14,14,17,17,17,17,17,17,17,14,14,13,12,13,13,15,15,14,13,15,17,17,17,17,17,17,17,17,13,14,13,13,13,13,14,15,15,15,14,15,17,17,17,17,17,17,17,16,15,13,14,13,13,14,14,15,14,14,16,17,17,17,17,17,17,17,16,16,13,14,13,13,14,14,15,14,15,14,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,4,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,4,7,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,4,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,4,5,5,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,10,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,9,9,9,9,9,9,10,10,10,10,10,10,10,9,10,10,9,10,10,10,10,9,10,9,10,10,9,10,10,10,10,10,10,10,9,10,10,10,10,10,10,9,9,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,9,9,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,10,9,10,9,9,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,6,8,8,8,7,9,8,10,10,11,10,6,5,5,7,7,9,9,8,8,10,10,11,11,12,11,6,5,5,7,7,9,9,9,9,10,10,11,11,12,12,20,8,8,8,8,9,9,9,9,10,10,11,11,12,12,20,8,8,8,8,10,9,9,9,10,10,11,11,12,12,20,12,12,9,9,10,10,10,10,10,11,12,12,12,12,20,12,12,9,9,10,10,10,10,11,11,12,12,13,13,20,20,20,9,9,9,9,11,10,11,11,12,12,12,13,20,19,19,9,9,9,9,11,11,11,12,12,12,13,13,19,19,19,13,13,10,10,11,11,12,12,13,13,13,13,19,19,19,14,13,11,10,11,11,12,12,12,13,13,13,19,19,19,19,19,12,12,12,12,13,13,13,13,14,13,19,19,19,19,19,12,12,12,11,12,12,13,14,14,14,19,19,19,19,19,16,15,13,12,13,13,13,14,14,14,19,19,19,19,19,17,17,13,12,13,11,14,13,15,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,4,5,6,6,6,7,7,7,7,7,7,8,6,6,6,7,7,7,7,7,7,7,8,6,6,6,6,7,7,7,7,7,7,8,6,6,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,7,9,9,10,10,12,12,6,5,5,7,7,8,8,10,10,11,11,12,12,7,5,5,7,7,8,8,10,10,11,11,12,12,21,7,7,7,7,8,9,10,10,11,11,12,12,21,7,7,7,7,9,9,10,10,12,12,13,13,21,11,11,8,8,9,9,11,11,12,12,13,13,21,11,11,8,8,9,9,11,11,12,12,13,13,21,21,21,10,10,10,10,11,11,12,13,13,13,21,21,21,10,10,10,10,11,11,13,13,14,13,21,21,21,13,13,11,11,12,12,13,13,14,14,21,21,21,14,14,11,11,12,12,13,13,14,14,21,21,21,21,20,13,13,13,12,14,14,16,15,20,20,20,20,20,13,13,13,13,14,13,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,4,4,5,5,5,4,4,5,5,5,4,4,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,9,9,10,10,11,11,6,5,5,7,7,8,8,9,9,10,10,11,11,0,7,7,7,7,9,9,10,10,10,10,11,11,0,7,7,7,7,9,9,10,10,10,10,11,11,0,11,11,9,9,10,10,11,11,11,11,12,12,0,12,12,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,6,6,7,7,8,8,8,8,11,4,5,6,6,7,7,8,8,8,8,11,5,5,6,6,7,7,8,8,8,9,12,5,5,6,6,7,7,8,8,9,9,12,12,12,6,6,7,7,8,8,9,9,11,11,11,6,6,7,7,8,8,8,8,11,11,11,6,6,7,7,8,8,8,8,11,11,11,7,7,7,8,8,8,8,8,11,11,11,11,11,7,7,8,8,8,8,11,11,11,11,11,7,7,7,7,8,8,11,11,11,11,11,7,7,7,7,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,7,6,10,10,10,10,10,10,4,6,6,10,10,10,10,9,10,5,10,10,9,11,11,10,11,11,7,10,10,11,12,12,12,12,12,7,10,10,11,12,12,12,12,12,6,10,10,10,12,12,10,12,12,7,10,10,11,12,12,12,12,12,7,10,10,11,12,12,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,8,8,8,8,9,9,10,10,11,11,0,4,4,6,6,7,7,8,8,9,8,10,10,11,11,11,11,0,4,4,6,6,7,7,8,8,9,9,10,10,11,11,11,11,0,6,5,6,6,7,7,9,9,9,9,10,10,11,11,12,12,0,0,0,6,6,7,7,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,11,12,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,11,12,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,4,5,5,7,7,9,9,0,4,4,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,5,5,6,6,8,8,10,10,0,0,0,6,6,8,8,10,10,0,0,0,7,7,9,9,10,10,0,0,0,7,7,8,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,0,5,5,8,8,0,5,5,8,8,0,7,7,9,9,0,0,0,9,9,5,7,7,9,9,0,8,7,10,9,0,8,7,10,9,0,10,10,11,11,0,0,0,11,11,5,7,7,9,9,0,7,8,9,10,0,7,8,9,10,0,10,10,11,11,0,0,0,11,11,8,9,9,11,10,0,11,10,12],"i8",L3,R.GLOBAL_BASE+175348),d3([11,0,11,10,12,12,0,13,13,14,14,0,0,0,14,13,8,9,9,10,11,0,10,11,12,12,0,10,11,12,12,0,13,13,14,14,0,0,0,13,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,11,10,0,7,7,10,10,0,7,7,10,10,0,9,9,10,10,0,0,0,11,10,5,7,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,10,0,0,0,10,10,8,10,9,12,12,0,10,10,12,11,0,10,10,12,12,0,12,12,13,12,0,0,0,13,12,8,9,10,12,12,0,10,10,11,12,0,10,10,11,12,0,12,12,13,13,0,0,0,12,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,7,11,10,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,10,10,6,7,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,10,0,0,0,10,10,9,10,9,12,12,0,10,10,12,12,0,10,10,12,11,0,12,12,13,13,0,0,0,13,12,8,9,10,12,12,0,10,10,12,12,0,10,10,11,12,0,12,12,13,13,0,0,0,12,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,13,13,0,9,9,12,12,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,7,10,10,13,13,0,9,9,12,12,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,9,11,11,14,13,0,10,10,13,12,0,11,10,13,12,0,12,12,13,12,0,0,0,13,13,9,11,11,13,14,0,10,11,12,13,0,10,11,13,13,0,12,12,12,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,11,11,14,14,0,10,11,13,13,0,11,10,13,13,0,11,12,13,13,0,0,0,13,12,9,11,11,14,14,0,11,10,13,13,0,10,11,13,13,0,12,12,13,13,0,0,0,12,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,5,5,0,5,5,5,7,7,0,9,8,0,9,8,6,7,7,0,8,9,0,8,9,0,0,0,0,0,0,0,0,0,5,9,8,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,0,0,5,9,8,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,11,13,14,15,15,18,17,19,17,5,6,8,9,10,10,12,15,19,19,6,6,6,6,8,8,11,14,18,19,8,6,5,4,6,7,10,13,16,17,9,7,6,5,6,7,9,12,15,19,10,8,7,6,6,6,7,9,13,15,12,10,9,8,7,6,4,5,10,15,13,13,11,8,6,6,4,2,7,12,17,15,16,10,8,8,7,6,9,12,19,18,17,13,11,10,10,9,11,14,0,0,0,0,2,0,0,0,100,0,0,0,160,234,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,217,2,0,0,0,0,0,0,0,0,0,0,0,0,0,168,217,2,0,0,0,0,0,0,0,0,0,0,0,0,0,208,217,2,0,0,0,0,0,0,0,0,0,0,0,0,0,248,217,2,0,0,0,0,0,32,218,2,0,72,218,2,0,0,0,0,0,0,0,0,0,112,218,2,0,152,218,2,0,0,0,0,0,0,0,0,0,192,218,2,0,232,218,2,0,0,0,0,0,0,0,0,0,16,219,2,0,56,219,2,0,0,0,0,0,0,0,0,0,96,219,2,0,136,219,2,0,176,219,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,24,217,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,11,13,15,14,14,13,15,14,6,4,5,7,9,10,11,11,14,13,10,4,3,5,7,8,9,10,13,13,12,7,4,4,5,6,8,9,12,14,13,9,6,5,5,6,8,9,12,14,12,9,7,6,5,5,6,8,11,11,12,11,9,8,7,6,6,7,10,11,13,11,10,9,8,7,6,6,9,11,13,13,12,12,12,10,9,8,9,11,12,14,15,15,14,12,11,10,10,12,0,0,0,0,4,0,0,0,81,0,0,0,56,234,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,144,234,2,0,0,0,0,0,4,0,0,0,113,2,0,0,168,231,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,32,234,2,0,0,0,0,0,2,0,0,0,81,0,0,0,40,231,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,231,2,0,0,0,0,0,2,0,0,0,33,1,0,0,184,229,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,230,2,0,0,0,0,0,4,0,0,0,81,0,0,0,80,229,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,168,229,2,0,0,0,0,0,2,0,0,0,121,0,0,0,160,228,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,32,229,2,0,0,0,0,0,2,0,0,0,169,0,0,0,184,227,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,104,228,2,0,0,0,0,0,2,0,0,0,25,0,0,0,128,227,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,227,2,0,0,0,0,0,2,0,0,0,169,0,0,0,152,226,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,72,227,2,0,0,0,0,0,2,0,0,0,121,0,0,0,232,225,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,104,226,2,0,0,0,0,0,2,0,0,0,225,0,0,0,192,224,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,168,225,2,0,0,0,0,0,2,0,0,0,185,1,0,0,168,222,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,104,224,2,0,0,0,0,0,2,0,0,0,169,0,0,0,192,221,2,0,1,0,0,0,0,220,125,225,0,232,51,97,4,0,0,0,0,0,0,0,112,222,2,0,0,0,0,0,2,0,0,0,169,0,0,0,216,220,2,0,1,0,0,0,0,96,18,225,0,128,184,96,4,0,0,0,0,0,0,0,136,221,2,0,0,0,0,0,1,0,0,0,49,0,0,0,216,219,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,16,220,2,0,0,0,0,0,2,4,3,4,5,5,5,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,6,8,8,8,8,6,6,6,8,8,9,8,8,7,9,8,11,10,5,6,6,8,8,9,8,8,8,10,9,11,11,16,8,8,9,8,9,9,9,8,10,9,11,10,16,8,8,9,9,10,10,9,9,10,10,11,11,16,13,13,9,9,10,10,9,10,11,11,12,11,16,13,13,9,8,10,9,10,10,10,10,11,11,16,14,16,8,9,9,9,11,10,11,11,12,11,16,16,16,9,7,10,7,11,10,11,11,12,11,16,16,16,12,12,9,10,11,11,12,11,12,12,16,16,16,12,10,10,7,11,8,12,11,12,12,16,16,15,16,16,11,12,10,10,12,11,12,12,16,16,16,15,15,11,11,10,10,12,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,11,11,11,11,11,11,11,11,11,11,4,6,6,11,11,11,11,11,11,11,11,11,11,4,7,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,7,6,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,11,10,10,10,9,9,9,9,9,9,9,9,9,9,10,9,9,10,9,9,10,11,10,11,10,9,9,9,9,9,9,9,10,10,10,9,10,9,9,9,9,11,10,11,10,10,9,9,9,9,9,9,10,9,9,10,9,9,10,9,9,10,11,10,10,11,10,9,9,9,9,9,10,10,9,10,10,10,10,9,10,10,10,10,10,10,11,11,11,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,9,10,11,11,10,11,10,11,10,9,10,10,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,10,11,11,10,10,10,10,10,10,9,10,9,10,10,9,10,9,10,10,10,11,10,11,10,11,11,10,10,10,10,10,10,9,10,10,10,10,10,10,10,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,10,11,11,10,10,10,10,9,9,10,10,9,9,10,9,10,10,10,10,11,11,10,10,10,10,10,10,10,9,9,10,10,10,9,9,10,10,10,10,10,11,10,11,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,7,9,8,9,9,10,10,6,5,5,7,7,9,9,8,8,10,9,11,10,12,11,6,5,5,8,7,9,9,8,8,10,10,11,11,12,11,19,8,8,8,8,10,10,9,9,10,10,11,11,12,11,19,8,8,8,8,10,10,9,9,10,10,11,11,12,12,19,12,12,9,9,10,10,9,10,10,10,11,11,12,12,19,12,12,9,9,10,10,10,10,10,10,12,12,12,12,19,19,19,9,9,9,9,11,10,11,11,12,11,13,13,19,19,19,9,9,9,9,11,10,11,11,11,12,13,13,19,19,19,13,13,10,10,11,11,12,12,12,12,13,12,19,19,19,14,13,10,10,11,11,12,12,12,13,13,13,19,19,19,19,19,12,12,12,11,12,13,14,13,13,13,19,19,19,19,19,12,12,12,11,12,12,13,14,13,14,19,19,19,19,19,16,16,12,13,12,13,13,14,15,14,19,18,18,18,18,16,15,12,11,12,11,14,12,14,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,4,5,5,6,6,7,7,7,7,7,7,8,6,6,7,7,7,7,7,7,7,7,8,6,6,6,7,7,7,7,7,7,7,8,6,6,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,7,7,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,8,8,8,8,8,7,7,7,7,7,7,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,7,8,9,9,10,10,12,11,6,5,5,7,7,8,8,9,10,11,11,12,12,7,5,5,7,7,8,8,10,10,11,11,12,12,20,7,7,7,7,8,9,10,10,11,11,12,13,20,7,7,7,7,9,9,10,10,11,12,13,13,20,11,11,8,8,9,9,11,11,12,12,13,13,20,11,11,8,8,9,9,11,11,12,12,13,13,20,20,20,10,10,10,10,12,12,13,13,13,13,20,20,20,10,10,10,10,12,12,13,13,13,14,20,20,20,14,14,11,11,12,12,13,13,14,14,20,20,20,14,14,11,11,12,12,13,13,14,14,20,20,20,20,19,13,13,13,13,14,14,15,14,19,19,19,19,19,13,13,13,13,14,14,15,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,4,4,5,5,5,4,4,5,5,5,4,4,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,7,9,8,10,10,6,5,5,7,7,8,8,9,9,9,10,11,11,7,5,5,7,7,8,8,9,9,10,10,11,11,0,7,7,7,7,9,8,9,9,10,10,11,11,0,8,8,7,7,8,9,9,9,10,10,11,11,0,11,11,9,9,10,10,11,10,11,11,12,12,0,12,12,9,9,10,10,11,11,11,11,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,6,6,7,7,8,8,8,8,11,4,4,6,6,7,7,8,8,9,9,11,4,4,6,6,7,7,8,8,9,9,12,5,5,6,6,7,7,9,9,9,9,12,12,12,6,6,7,7,9,9,9,9,11,11,11,7,7,7,7,8,8,9,9,11,11,11,7,7,7,7,8,8,9,9,11,11,11,7,7,8,8,8,8,9,9,11,11,11,11,11,8,8,8,8,8,9,11,11,11,11,11,8,8,8,8,8,8,11,11,11,11,11,7,7,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,6,7,10,10,10,10,10,9,4,6,6,10,10,10,10,9,10,5,10,10,9,11,12,10,11,12,7,10,10,11,12,12,12,12,12,7,10,10,11,12,12,12,12,12,6,10,10,10,12,12,11,12,12,7,10,10,12,12,12,12,11,12,7,10,10,11,12,12,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,7,7,8,8,8,8,9,9,10,10,11,11,0,4,4,6,6,7,7,8,8,9,9,10,10,11,11,12,12,0,4,4,6,6,7,7,8,8,9,9,10,10,11,11,12,12,0,5,5,6,6,8,8,9,9,9,9,10,10,11,12,12,12,0,0,0,6,6,8,7,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,13,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,12,13,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,4,5,5,7,7,9,9,0,4,4,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,5,5,6,6,8,8,10,10,0,0,0,6,6,8,8,10,10,0,0,0,7,7,9,9,10,10,0,0,0,7,7,8,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,0,5,5,8,8,0,5,5,8,8,0,7,7,9,9,0,0,0,9,9,5,7,7,9,9,0,8,8,10,10,0,8,7,10,9,0,10,10,11,11,0,0,0,11,11,5,7,7,9,9,0,8,8,10,10,0,7,8,9,10,0,10,10,11,11,0,0,0,11,11,8,9,9,11,10,0,11,11,12,12,0,11,10,12,12,0,13,14,14,14,0,0,0,14,13,8,9,9,10,11,0,11,11,12,12,0,10,11,12,12,0,13,13,14,14,0,0,0,13,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,11,10,0,7,7,10,10,0,7,7,10,10,0,9,9,11,10,0,0,0,11,11,5,7,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,11,11,8,10,9,12,12,0,10,10,12,12,0,10,10,12,12,0,12,12,13,13,0,0,0,13,13,8,9,10,12,12,0,10,10,12,12,0,10,10,11,12,0,12,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,11,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,11,10,5,8,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,11,10,0,0,0,10,11,9,10,10,12,12,0,10,10,12,12,0,10,10,12,12,0,12,13,13,13,0,0,0,13,12,9,10,10,12,12,0,10,10,12,12,0,10,10,12,12,0,13,12,13,13,0,0,0,12,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,14,13,0,9,9,12,12,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,7,10,10,13,14,0,9,9,12,13,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,9,11,11,14,13,0,11,10,13,12,0,11,11,13,13,0,12,12,13,13,0,0,0,13,13,9,11,11,13,14,0,10,11,12,13,0,11,11,13,13,0,12,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,11,11,14,14,0,10,11,13,13,0,11,10,13,13,0,12,12,13,13,0,0,0,13,12,9,11,11,14,14,0,11,10,13,13,0,10,11,13,13,0,12,12,14,13,0,0,0,13,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,5,5,0,5,5,5,8,7,0,9,9,0,9,8,5,7,8,0,9,9,0,8,9,0,0,0,0,0,0,0,0,0,5,9,9,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,0,0,5,9,9,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,11,12,14,15,15,17,17,18,18,5,6,6,8,9,10,13,17,18,19,7,5,4,6,8,9,11,15,19,19,8,6,5,5,6,7,11,14,16,17,9,7,7,6,7,7,10,13,15,19,10,8,7,6,7,6,7,9,14,16,12,10,9,7,7,6,4,5,10,15,14,13,11,7,6,6,4,2,7,13,16,16,15,9,8,8,8,6,9,13,19,19,17,12,11,10,10,9,11,14,0,0,0,0,2,0,0,0,100,0,0,0,160,253,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,236,2,0,0,0,0,0,0,0,0,0,0,0,0,0,168,236,2,0,0,0,0,0,0,0,0,0,0,0,0,0,208,236,2,0,0,0,0,0,0,0,0,0,0,0,0,0,248,236,2,0,0,0,0,0,32,237,2,0,72,237,2,0,0,0,0,0,0,0,0,0,112,237,2,0,152,237,2,0,0,0,0,0,0,0,0,0,192,237,2,0,232,237,2,0,0,0,0,0,0,0,0,0,16,238,2,0,56,238,2,0,0,0,0,0,0,0,0,0,96,238,2,0,136,238,2,0,176,238,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,24,236,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,11,13,14,14,13,13,16,14,6,3,4,7,9,9,10,11,14,13,10,4,3,5,7,7,9,10,13,15,12,7,4,4,6,6,8,10,13,15,12,8,6,6,6,6,8,10,13,14,11,9,7,6,6,6,7,8,12,11,13,10,9,8,7,6,6,7,11,11,13,11,10,9,9,7,7,6,10,11,13,13,13,13,13,11,9,8,10,12,12,15,15,16,15,12,11,10,10,12,0,0,0,0,4,0,0,0,81,0,0,0,56,253,2,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,144,253,2,0,0,0,0,0,4,0,0,0,113,2,0,0,168,250,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,32,253,2,0,0,0,0,0,2,0,0,0,81,0,0,0,40,250,2,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,250,2,0,0,0,0,0,2,0,0,0,33,1,0,0,184,248,2,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,249,2,0,0,0,0,0,4,0,0,0,81,0,0,0,80,248,2,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,168,248,2,0,0,0,0,0,2,0,0,0,121,0,0,0,160,247,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,32,248,2,0,0,0,0,0,2,0,0,0,169,0,0,0,184,246,2,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,104,247,2,0,0,0,0,0,2,0,0,0,25,0,0,0,128,246,2,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,246,2,0,0,0,0,0,2,0,0,0,169,0,0,0,152,245,2,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,72,246,2,0,0,0,0,0,2,0,0,0,121,0,0,0,232,244,2,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,104,245,2,0,0,0,0,0,2,0,0,0,225,0,0,0,192,243,2,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,168,244,2,0,0,0,0,0,2,0,0,0,185,1,0,0,168,241,2,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,104,243,2,0,0,0,0,0,2,0,0,0,169,0,0,0,192,240,2,0,1,0,0,0,0,220,125,225,0,232,51,97,4,0,0,0,0,0,0,0,112,241,2,0,0,0,0,0,2,0,0,0,169,0,0,0,216,239,2,0,1,0,0,0,0,96,18,225,0,128,184,96,4,0,0,0,0,0,0,0,136,240,2,0,0,0,0,0,1,0,0,0,49,0,0,0,216,238,2,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,16,239,2,0,0,0,0,0,2,4,3,4,5,5,5,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,6,8,8,8,8,6,6,6,8,8,8,8,8,7,9,8,10,10,5,6,6,8,8,9,9,8,8,10,10,10,10,16,9,9,9,9,9,9,9,8,10,9,11,11,16,8,9,9,9,9,9,9,9,10,10,11,11,16,13,13,9,9,10,9,9,10,11,11,11,12,16,13,14,9,8,10,8,9,9,10,10,12,11,16,14,16,9,9,9,9,11,11,12,11,12,11,16,16,16,9,7,9,6,11,11,11,10,11,11,16,16,16,11,12,9,10,11,11,12,11,13,13,16,16,16,12,11,10,7,12,10,12,12,12,12,16,16,15,16,16,10,11,10,11,13,13,14,12,16,16,16,15,15,12,10,11,11,13,11,12,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,11,11,11,11,11,11,11,11,11,11,4,7,7,11,11,11,11,11,11,11,11,11,11,5,8,9,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,5,6,6,7,7,7,7,8,7,8,8,8,8,8,8,8,8,8,8,10,6,6,7,7,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,8,8,9,8,9,9,9,9,9,9,9,9,10,7,7,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,10,11,11,8,7,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,9,11,11,11,11,11,9,9,9,9,9,9,10,9,9,10,9,10,9,9,10,9,11,11,11,11,11,9,9,9,9,9,9,9,10,10,10,10,9,10,10,9,10,11,11,11,11,11,9,9,9,9,10,10,10,9,10,10,10,10,9,10,10,9,11,11,11,11,11,11,11,9,9,9,9,10,10,10,10,9,10,10,10,10,10,11,11,11,11,11,11,11,10,9,10,10,10,10,10,10,10,9,10,9,10,10,11,11,11,11,11,11,11,10,9,10,9,10,10,9,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,9,10,10,10,10,10,9,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,9,10,10,11,11,11,11,11,11,11,11,11,10,10,10,9,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,10,11,9,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,7,7,8,7,9,8,10,9,6,5,5,8,8,9,9,8,8,9,9,11,10,11,10,6,5,5,8,8,9,9,8,8,9,9,10,10,11,11,18,8,8,9,8,10,10,9,9,10,10,10,10,11,10,18,8,8,9,9,10,10,9,9,10,10,11,11,12,12,18,12,13,9,10,10,10,9,10,10,10,11,11,12,11,18,13,13,9,9,10,10,10,10,10,10,11,11,12,12,18,18,18,10,10,9,9,11,11,11,11,11,12,12,12,18,18,18,10,9,10,9,11,10,11,11,11,11,13,12,18,18,18,14,13,10,10,11,11,12,12,12,12,12,12,18,18,18,14,13,10,10,11,10,12,12,12,12,12,12,18,18,18,18,18,12,12,11,11,12,12,13,13,13,14,18,18,18,18,18,12,12,11,11,12,11,13,13,14,13,18,18,18,18,18,16,16,11,12,12,13,13,13,14,13,18,18,18,18,18,16,15,12,11,12,11,13,11,15,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,3,5,5,6,6,7,7,7,7,7,7,9,5,5,6,6,7,7,7,7,8,7,8,5,5,6,6,7,7,7,7,7,7,9,6,6,7,7,7,7,8,7,7,8,9,9,9,7,7,7,7,7,7,7,8,9,9,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,7,7,8,8,9,9,9,8,8,8,8,7,7,8,8,9,9,9,9,8,8,8,7,7,8,8,9,9,9,8,8,8,8,7,7,8,8,9,9,9,8,8,7,7,7,7,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,8,8,8,8,10,10,11,10,6,5,5,7,7,8,8,9,9,10,10,12,11,6,5,5,7,7,8,8,9,9,10,10,12,11,21,7,7,7,7,9,9,10,10,11,11,12,12,21,7,7,7,7,9,9,10,10,11,11,12,12,21,12,12,9,9,10,10,11,11,11,11,12,12,21,12,12,9,9,10,10,11,11,12,12,12,12,21,21,21,11,11,10,10,11,12,12,12,13,13,21,21,21,11,11,10,10,12,12,12,12,13,13,21,21,21,15,15,11,11,12,12,13,13,13,13,21,21,21,15,16,11,11,12,12,13,13,14,14,21,21,21,21,20,13,13,13,13,13,13,14,14,20,20,20,20,20,13,13,13,13,13,13,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,4,4,5,5,5,4,4,5,5,5,4,4,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,8,8,8,10,9,10,10,6,5,5,7,7,9,9,9,9,10,10,11,11,6,5,5,7,7,9,9,10,9,11,10,11,11,0,6,6,7,7,9,9,10,10,11,11,12,12,0,7,7,7,7,9,9,10,10,11,11,12,12,0,11,11,8,8,10,10,11,11,12,12,12,12,0,11,12,9,8,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,3,5,4,6,6,7,7,8,8,8,8,11,4,4,6,6,7,7,8,8,8,8,11,4,4,6,6,7,7,8,8,8,8,11,6,6,6,6,8,8,8,8,9,9,11,11,11,6,6,7,8,8,8,8,9,11,11,11,7,7,8,8,8,8,8,8,11,11,11,7,7,8,8,8,8,8,8,11,11,11,8,8,8,8,8,8,8,8,11,11,11,10,10,8,8,8,8,8,8,11,11,11,10,10,8,8,8,8,8,8,11,11,11,10,10,7,7,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,6,6,9,9,10,10,10,9,4,6,6,9,10,9,10,9,10,6,9,9,10,12,11,10,11,11,7,10,9,11,12,12,12,12,12,7,10,10,11,12,12,12,12,12,6,10,10,10,12,12,11,12,12,7,9,10,11,12,12,12,12,12,7,10,9,12,12,12,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,9,9,9,10,10,10,0,4,4,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,4,4,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,7,7,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,3,4,6,6,7,7,9,9,0,4,4,6,6,7,7,9,10,0,4,4,6,6,7,7,10,9,0,5,5,7,7,8,8,10,10,0,0,0,7,6,8,8,10,10,0,0,0,7,7,9,9,11,11,0,0,0,7,7,9,9,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,0,5,5,8,8,0,5,5,8,8,0,7,7,9,9,0,0,0,9,9,5,7,7,9,9,0,8,8,10,10,0,8,7,10,9,0,10,10,11,11,0,0,0,11,11,5,7,7,9,9,0,8,8,10,10,0,7,8,9,10,0,10,10,11,11,0,0,0,11,11,8,9,9,11,11,0,11,11,12,12,0,11,10,12,12,0,13,14,14,14,0,0,0,14,13,8,9,9,11,11,0,11,11,12,12,0,10,11,12,12,0,14,13,14,14,0,0,0,13,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,11,10,0,7,7,10,10,0,7,7,10,10,0,9,9,11,10,0,0,0,11,11,5,7,8,10,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,11,11,8,10,9,12,12,0,10,10,12,12,0,10,10,12,12,0,12,12,13,13,0,0,0,13,13,8,9,10,12,12,0,10,10,11,12,0,10,10,12,12,0,12,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,11,11,0,7,7,10,10,0,7,7,10,10,0,9,9,10,11,0,0,0,11,10,5,8,8,11,11,0,7,7,10,10,0,7,7,10,10,0,9,9,11,11,0,0,0,10,11,8,10,10,12,12,0,10,10,12,12,0,10,10,12,12,0,12,13,13,13,0,0,0,14,13,8,10,10,12,12,0,10,10,12,12,0,10,10,12,12,0,13,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,14,13,0,9,9,13,12,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,7,10,10,13,14,0,9,9,12,13,0,9,9,12,12,0,10,10,12,12,0,0,0,12,12,9,11,11,14,13,0,11,10,14,13,0,11,11,13,13,0,12,12,13,13,0,0,0,13,13,9,11,11,13,14,0,10,11,13,14,0,11,11,13,13,0,12,12,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,11,11,14,14,0,11,11,13,13,0,11,10,13,13,0,12,12,13,13],"i8",L3,R.GLOBAL_BASE+185588),d3([13,13,9,11,11,14,14,0,11,11,13,13,0,10,11,13,13,0,12,12,14,13,0,0,0,13,13,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,5,5,0,5,5,5,8,7,0,9,9,0,9,8,5,7,8,0,9,9,0,8,9,0,0,0,0,0,0,0,0,0,5,9,8,0,8,8,0,8,8,5,8,9,0,8,8,0,8,8,0,0,0,0,0,0,0,0,0,5,9,9,0,8,8,0,8,8,5,9,9,0,8,8,0,8,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,9,11,11,13,14,19,17,17,19,5,4,5,8,10,10,13,16,18,19,7,4,4,5,8,9,12,14,17,19,8,6,5,5,7,7,10,13,16,18,10,8,7,6,5,5,8,11,17,19,11,9,7,7,5,4,5,8,17,19,13,11,8,7,7,5,5,7,16,18,14,13,8,6,6,5,5,7,16,18,18,16,10,8,8,7,7,9,16,18,18,18,12,10,10,9,9,10,17,18,0,0,0,0,2,0,0,0,100,0,0,0,184,41,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,168,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,208,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,248,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,72,0,3,0,0,0,0,0,112,0,3,0,152,0,3,0,0,0,0,0,0,0,0,0,192,0,3,0,232,0,3,0,0,0,0,0,0,0,0,0,16,1,3,0,56,1,3,0,96,1,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,24,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,9,13,10,12,12,12,12,12,6,4,6,8,6,8,10,10,11,12,8,5,4,10,4,7,8,9,10,11,13,8,10,8,9,9,11,12,13,14,10,6,4,9,3,5,6,8,10,11,11,8,6,9,5,5,6,7,9,11,12,9,7,11,6,6,6,7,8,10,12,11,9,12,7,7,6,6,7,9,13,12,10,13,9,8,7,7,7,8,11,15,11,15,11,10,9,8,7,7,0,0,0,0,8,0,0,0,161,25,0,0,0,16,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,41,3,0,0,0,0,0,4,0,0,0,113,2,0,0,112,13,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,15,3,0,0,0,0,0,4,0,0,0,113,2,0,0,224,10,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,13,3,0,0,0,0,0,2,0,0,0,81,0,0,0,96,10,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,184,10,3,0,0,0,0,0,2,0,0,0,81,0,0,0,224,9,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,56,10,3,0,0,0,0,0,2,0,0,0,33,1,0,0,112,8,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,152,9,3,0,0,0,0,0,4,0,0,0,81,0,0,0,8,8,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,96,8,3,0,0,0,0,0,2,0,0,0,121,0,0,0,88,7,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,216,7,3,0,0,0,0,0,2,0,0,0,169,0,0,0,112,6,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,32,7,3,0,0,0,0,0,2,0,0,0,25,0,0,0,56,6,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,6,3,0,0,0,0,0,2,0,0,0,225,0,0,0,16,5,3,0,1,0,0,0,0,134,115,225,0,80,22,97,4,0,0,0,0,0,0,0,248,5,3,0,0,0,0,0,2,0,0,0,33,1,0,0,160,3,3,0,1,0,0,0,0,0,245,224,0,0,149,96,5,0,0,0,0,0,0,0,200,4,3,0,0,0,0,0,2,0,0,0,185,1,0,0,136,1,3,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,72,3,3,0,0,0,0,0,3,5,5,6,6,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,9,11,5,6,7,7,8,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,11,5,5,7,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,11,7,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,10,9,10,11,11,11,7,7,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,10,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,5,5,7,7,9,8,10,9,10,10,11,10,11,11,6,5,5,7,7,8,9,10,10,11,10,12,11,12,11,13,12,6,5,5,7,7,9,9,10,10,11,11,12,12,13,12,13,13,18,8,8,8,8,9,9,10,11,11,11,12,11,13,11,13,12,18,8,8,8,8,10,10,11,11,12,12,13,13,13,13,13,14,18,12,12,9,9,11,11,11,11,12,12,13,12,13,12,13,13,20,13,12,9,9,11,11,11,11,12,12,13,13,13,14,14,13,20,18,19,11,12,11,11,12,12,13,13,13,13,13,13,14,13,18,19,19,12,11,11,11,12,12,13,12,13,13,13,14,14,13,18,17,19,14,15,12,12,12,13,13,13,14,14,14,14,14,14,19,19,19,16,15,12,11,13,12,14,14,14,13,13,14,14,14,19,18,19,18,19,13,13,13,13,14,14,14,13,14,14,14,14,18,17,19,19,19,13,13,13,11,13,11,13,14,14,14,14,14,19,17,17,18,18,16,16,13,13,13,13,14,13,15,15,14,14,19,19,17,17,18,16,16,13,11,14,10,13,12,14,14,14,14,19,19,19,19,19,18,17,13,14,13,11,14,13,14,14,15,15,19,19,19,17,19,18,18,14,13,12,11,14,11,15,15,15,15,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,13,13,13,13,13,13,13,13,13,13,13,13,4,7,7,13,13,13,13,13,13,13,13,13,13,13,13,3,8,6,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,4,4,5,5,6,5,5,5,5,6,4,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,8,9,10,10,10,10,7,5,5,7,7,8,8,9,9,10,10,10,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,10,10,10,10,10,11,11,0,13,13,9,9,9,9,10,10,11,11,11,11,0,0,0,10,10,10,10,10,10,11,11,11,11,0,0,0,10,10,10,10,10,10,11,11,12,12,0,0,0,14,14,11,11,11,11,12,12,12,12,0,0,0,14,14,11,11,11,11,12,12,12,12,0,0,0,0,0,12,12,12,12,12,12,13,13,0,0,0,0,0,12,12,12,12,12,12,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,6,6,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,9,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,11,11,10,11,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,7,11,11,12,11,11,12,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,4,4,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,4,4,6,6,8,8,9,9,9,9,10,10,11,11,12,12,0,4,4,6,6,8,8,9,9,9,9,10,10,11,11,12,12,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,7,7,8,9,10,10,10,10,11,11,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,9,10,10,10,11,11,12,12,12,12,0,0,0,0,0,10,10,10,10,11,11,11,12,12,12,13,13,0,0,0,0,0,0,0,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,13,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,12,12,12,12,13,12,13,13,13,13,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,3,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,6,6,7,7,7,7,9,9,0,0,0,7,6,7,7,9,9,0,0,0,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,9,9,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,5,5,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,7,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,3,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,5,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,5,5,0,0,0,5,5,0,0,0,8,7,0,0,0,0,0,0,0,4,6,6,0,0,0,8,8,0,0,0,8,7,0,0,0,10,10,0,0,0,0,0,0,0,4,6,6,0,0,0,8,8,0,0,0,7,8,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,5,7,8,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,5,8,8,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,10,10,0,0,0,10,10,0,0,0,9,10,0,0,0,11,10,0,0,0,0,0,0,0,8,10,10,0,0,0,10,10,0,0,0,10,10,0,0,0,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,4,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,11,10],"i8",L3,R.GLOBAL_BASE+195830),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,8,10,14,11,11,12,16,15,17,5,5,7,9,7,8,10,13,17,17,7,5,5,10,5,7,8,11,13,15,10,8,10,8,8,8,11,15,18,18,8,5,5,8,3,4,6,10,14,16,9,7,6,7,4,3,5,9,14,18,10,9,8,10,6,5,6,9,14,18,12,12,11,12,8,7,8,11,14,18,14,13,12,10,7,5,6,9,14,18,14,14,13,10,6,5,6,8,11,16,0,0,0,0,2,0,0,0,100,0,0,0,72,85,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,43,3,0,0,0,0,0,0,0,0,0,0,0,0,0,192,43,3,0,0,0,0,0,0,0,0,0,0,0,0,0,232,43,3,0,0,0,0,0,0,0,0,0,0,0,0,0,16,44,3,0,0,0,0,0,0,0,0,0,0,0,0,0,56,44,3,0,0,0,0,0,0,0,0,0,0,0,0,0,96,44,3,0,0,0,0,0,136,44,3,0,176,44,3,0,0,0,0,0,0,0,0,0,216,44,3,0,0,45,3,0,0,0,0,0,0,0,0,0,40,45,3,0,80,45,3,0,120,45,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,48,43,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,11,11,11,11,10,11,12,11,5,2,11,5,6,6,7,9,11,12,11,9,6,10,6,7,8,9,10,11,11,5,11,7,8,8,9,11,13,14,11,6,5,8,4,5,7,8,10,11,10,6,7,7,5,5,6,8,9,11,10,7,8,9,6,6,6,7,8,9,11,9,9,11,7,7,6,6,7,9,12,12,10,13,9,8,7,7,7,8,11,13,11,14,11,10,9,8,7,7,0,0,0,0,8,0,0,0,161,25,0,0,144,59,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,56,85,3,0,0,0,0,0,4,0,0,0,113,2,0,0,0,57,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,59,3,0,0,0,0,0,4,0,0,0,113,2,0,0,112,54,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,56,3,0,0,0,0,0,2,0,0,0,81,0,0,0,240,53,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,72,54,3,0,0,0,0,0,2,0,0,0,81,0,0,0,112,53,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,200,53,3,0,0,0,0,0,2,0,0,0,33,1,0,0,0,52,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,40,53,3,0,0,0,0,0,4,0,0,0,81,0,0,0,152,51,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,240,51,3,0,0,0,0,0,2,0,0,0,121,0,0,0,232,50,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,104,51,3,0,0,0,0,0,2,0,0,0,169,0,0,0,0,50,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,176,50,3,0,0,0,0,0,2,0,0,0,25,0,0,0,200,49,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,49,3,0,0,0,0,0,2,0,0,0,169,0,0,0,224,48,3,0,1,0,0,0,0,136,93,225,0,176,19,97,4,0,0,0,0,0,0,0,144,49,3,0,0,0,0,0,2,0,0,0,225,0,0,0,184,47,3,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,160,48,3,0,0,0,0,0,2,0,0,0,185,1,0,0,160,45,3,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,96,47,3,0,0,0,0,0,2,5,5,6,6,7,7,7,7,8,8,8,8,8,8,8,8,9,9,9,9,11,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,10,11,6,6,7,7,8,8,8,8,9,9,9,9,9,9,10,9,10,10,10,10,11,7,7,7,7,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,12,11,11,7,7,8,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,12,11,12,8,8,8,8,9,9,9,9,9,10,10,10,10,10,10,10,10,10,11,11,11,8,8,8,8,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,12,9,9,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,12,11,11,11,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,12,12,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,12,11,12,11,11,11,9,10,10,10,10,10,10,10,10,10,10,10,10,10,11,12,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,12,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,12,11,11,12,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,12,12,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,12,12,12,11,11,11,12,11,11,11,10,10,10,10,10,10,10,10,10,10,10,12,11,12,12,12,12,12,11,12,11,11,10,10,10,10,10,10,10,10,10,10,12,12,12,12,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,5,5,7,7,9,8,10,9,10,10,10,10,6,5,5,7,7,9,8,10,9,11,10,12,12,13,13,6,5,5,7,7,9,9,10,10,11,11,12,12,12,13,19,8,8,8,8,9,9,10,10,12,11,12,12,13,13,19,8,8,8,8,9,9,11,11,12,12,13,13,13,13,19,12,12,9,9,11,11,11,11,12,11,13,12,13,13,18,12,12,9,9,11,10,11,11,12,12,12,13,13,14,19,18,18,11,11,11,11,12,12,13,12,13,13,14,14,16,18,18,11,11,11,10,12,11,13,13,13,13,13,14,17,18,18,14,15,11,12,12,13,13,13,13,14,14,14,18,18,18,15,15,12,10,13,10,13,13,13,13,13,14,18,17,18,17,18,12,13,12,13,13,13,14,14,16,14,18,17,18,18,17,13,12,13,10,12,12,14,14,14,14,17,18,18,18,18,14,15,12,12,13,12,14,14,15,15,18,18,18,17,18,15,14,12,11,12,12,14,14,14,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,3,3,12,12,12,12,12,12,12,12,12,12,4,7,7,12,12,12,12,12,12,12,12,12,12,3,8,8,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,5,6,5,5,5,5,6,5,4,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,8,8,9,10,11,11,7,5,5,7,7,8,8,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,9,10,10,10,10,11,11,0,13,13,9,9,10,9,10,10,11,11,11,12,0,0,0,10,10,10,10,10,10,11,11,12,12,0,0,0,10,10,10,10,10,10,11,11,12,12,0,0,0,14,14,11,11,11,11,12,12,12,12,0,0,0,14,14,11,11,11,11,12,12,12,13,0,0,0,0,0,12,12,12,12,12,12,13,13,0,0,0,0,0,13,12,12,12,12,12,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,6,6,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,9,8,10,10,10,10,10,8,8,8,8,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,11,11,10,11,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,7,11,11,12,11,11,12,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,4,4,6,6,8,8,9,9,8,8,9,9,10,10,11,11,0,4,4,6,6,8,8,9,9,9,9,10,10,11,11,11,11,0,4,4,7,6,8,8,9,9,9,9,10,10,11,11,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,9,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,9,9,10,10,11,11,11,12,12,12,0,0,0,0,0,10,10,10,10,11,11,11,11,12,12,13,12,0,0,0,0,0,0,0,10,10,11,11,11,11,12,12,12,12,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,12,12,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,0,0,12,12,12,12,12,13,13,13,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,3,3,6,6,7,7,9,9,0,4,4,6,6,7,7,9,9,0,4,5,6,6,7,7,9,9,0,6,6,7,7,8,8,10,10,0,0,0,7,7,8,8,10,9,0,0,0,9,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,10,10,9,9,11,11,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,5,5,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,8,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,0,0,0,5,5,0,0,0,5,5,0,0,0,7,7,0,0,0,0,0,0,0,5,6,6,0,0,0,7,7,0,0,0,7,7,0,0,0,10,10,0,0,0,0,0,0,0,5,6,6,0,0,0,7,7,0,0,0,7,7,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,5,7,8,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,9,9,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,8,10,10,0,0,0,9,9,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,5,6,6,0,0,0,0,0,0,5,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,6,8,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9],"i8",L3,R.GLOBAL_BASE+207264),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,14,10,15,10,12,15,16,15,4,2,11,5,10,6,8,11,14,14,14,10,7,11,6,8,10,11,13,15,9,4,11,5,9,6,9,12,14,15,14,9,6,9,4,5,7,10,12,13,9,5,7,6,5,5,7,10,13,13,10,8,9,8,7,6,8,10,14,14,13,11,10,10,7,7,8,11,14,15,13,12,9,9,6,5,7,10,14,17,15,13,11,10,6,6,7,9,12,17,0,0,0,0,2,0,0,0,100,0,0,0,48,128,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,80,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,120,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,160,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,200,87,3,0,0,0,0,0,0,0,0,0,0,0,0,0,240,87,3,0,0,0,0,0,24,88,3,0,64,88,3,0,0,0,0,0,0,0,0,0,104,88,3,0,144,88,3,0,0,0,0,0,0,0,0,0,184,88,3,0,224,88,3,0,8,89,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,192,86,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,11,11,11,11,10,10,12,11,5,2,11,5,6,6,7,9,11,13,13,10,7,11,6,7,8,9,10,12,11,5,11,6,8,7,9,11,14,15,11,6,6,8,4,5,7,8,10,13,10,5,7,7,5,5,6,8,10,11,10,7,7,8,6,5,5,7,9,9,11,8,8,11,8,7,6,6,7,9,12,11,10,13,9,9,7,7,7,9,11,13,12,15,12,11,9,8,8,8,0,0,0,0,8,0,0,0,161,25,0,0,120,102,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,32,128,3,0,0,0,0,0,4,0,0,0,113,2,0,0,232,99,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,96,102,3,0,0,0,0,0,4,0,0,0,113,2,0,0,88,97,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,99,3,0,0,0,0,0,2,0,0,0,81,0,0,0,216,96,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,48,97,3,0,0,0,0,0,2,0,0,0,81,0,0,0,88,96,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,176,96,3,0,0,0,0,0,2,0,0,0,33,1,0,0,232,94,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,16,96,3,0,0,0,0,0,4,0,0,0,81,0,0,0,128,94,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,216,94,3,0,0,0,0,0,2,0,0,0,121,0,0,0,208,93,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,80,94,3,0,0,0,0,0,2,0,0,0,169,0,0,0,232,92,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,152,93,3,0,0,0,0,0,2,0,0,0,25,0,0,0,176,92,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,92,3,0,0,0,0,0,2,0,0,0,169,0,0,0,200,91,3,0,1,0,0,0,0,232,87,225,0,224,255,96,4,0,0,0,0,0,0,0,120,92,3,0,0,0,0,0,2,0,0,0,225,0,0,0,160,90,3,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,136,91,3,0,0,0,0,0,2,0,0,0,33,1,0,0,48,89,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,88,90,3,0,0,0,0,0,2,5,5,6,6,7,7,7,7,7,7,8,8,8,8,8,8,10,6,6,7,7,8,7,8,8,8,8,8,9,9,9,9,9,10,6,6,7,7,7,7,8,8,8,8,9,9,9,9,9,9,10,7,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,8,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,8,9,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,10,11,11,11,9,9,9,9,9,9,10,10,9,9,10,9,11,10,11,11,11,9,9,9,9,9,9,9,9,10,10,10,9,11,11,11,11,11,9,9,9,9,10,10,9,9,9,9,10,9,11,11,11,11,11,11,11,9,9,9,9,9,9,10,10,10,10,11,11,11,11,11,11,11,10,9,10,10,9,10,9,9,10,9,11,10,10,11,11,11,11,9,10,9,9,9,9,10,10,10,10,11,11,11,11,11,11,10,10,10,9,9,10,9,10,9,10,10,10,10,11,11,11,11,11,11,11,9,9,9,9,9,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,7,9,9,10,10,10,10,6,5,5,7,7,8,8,10,8,11,10,12,12,13,13,6,5,5,7,7,8,8,10,9,11,11,12,12,13,12,18,8,8,8,8,9,9,10,9,11,10,12,12,13,13,18,8,8,8,8,9,9,10,10,11,11,13,12,14,13,18,11,11,9,9,10,10,11,11,11,12,13,12,13,14,18,11,11,9,8,11,10,11,11,11,11,12,12,14,13,18,18,18,10,11,10,11,12,12,12,12,13,12,14,13,18,18,18,10,11,11,9,12,11,12,12,12,13,13,13,18,18,17,14,14,11,11,12,12,13,12,14,12,14,13,18,18,18,14,14,11,10,12,9,12,13,13,13,13,13,18,18,17,16,18,13,13,12,12,13,11,14,12,14,14,17,18,18,17,18,13,12,13,10,12,11,14,14,14,14,17,18,18,18,18,15,16,12,12,13,10,14,12,14,15,18,18,18,16,17,16,14,12,11,13,10,13,13,14,15,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,4,4,12,12,12,12,12,12,12,12,12,12,4,9,8,12,12,12,12,12,12,12,12,12,12,2,9,7,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,5,6,5,5,5,5,6,4,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,8,8,9,9,10,10,7,5,5,7,7,8,8,8,8,9,9,11,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,12,0,13,13,9,9,10,10,10,10,11,11,12,12,0,0,0,10,10,10,10,11,11,12,12,12,12,0,0,0,10,10,10,10,11,11,12,12,12,12,0,0,0,14,14,11,11,11,11,12,12,13,13,0,0,0,14,14,11,11,11,11,12,12,13,13,0,0,0,0,0,12,12,12,12,13,13,14,13,0,0,0,0,0,13,13,12,12,13,12,14,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,6,6,7,7,8,8,8,8,8,8,10,10,10,7,7,8,7,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,7,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,9,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,11,11,10,12,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,7,11,11,11,11,11,12,11,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,6,6,7,7,8,8,8,8,9,9,10,10,11,10,0,5,5,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,5,5,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,10,11,11,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,8,9,9,10,10,11,11,12,12,12,12,0,0,0,0,0,8,8,9,9,10,10,11,11,12,11,12,12,0,0,0,0,0,9,10,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,0,0,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,4,6,6,7,7,9,9,0,5,5,7,7,7,8,9,9,0,5,5,7,7,8,8,9,9,0,7,7,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,9,9,9,9,10,10,0,0,0,9,9,9,9,10,10,0,0,0,10,10,10,10,11,11,0,0,0,0,0,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,3,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,4,4,6,6,0,0,0,0,0,5,5,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,8,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,3,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,0,0,0,5,5,0,0,0,5,5,0,0,0,7,8,0,0,0,0,0,0,0,5,6,6,0,0,0,7,7,0,0,0,7,7,0,0,0,10,10,0,0,0,0,0,0,0,5,6,6,0,0,0,7,7,0,0,0,7,7,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,5,7,7,0,0,0,7,7,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,10,10,0,0,0,9,9,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,8,10,10,0,0,0,9,9,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,5,6,6,0,0,0,0,0,0,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,6,7,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,6,8,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,8,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,8],"i8",L3,R.GLOBAL_BASE+218416),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,10,9,13,11,14,10,12,13,13,14,7,2,12,5,10,5,7,10,12,14,12,6,9,8,7,7,9,11,13,16,10,4,12,5,10,6,8,12,14,16,12,6,8,7,6,5,7,11,12,16,10,4,8,5,6,4,6,9,13,16,10,6,10,7,7,6,7,9,13,15,12,9,11,9,8,6,7,10,12,14,14,11,10,9,6,5,6,9,11,13,15,13,11,10,6,5,6,8,9,11,0,0,0,0,2,0,0,0,100,0,0,0,216,170,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,56,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,96,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,136,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,176,130,3,0,0,0,0,0,0,0,0,0,0,0,0,0,216,130,3,0,0,0,0,0,0,131,3,0,40,131,3,0,0,0,0,0,0,0,0,0,80,131,3,0,120,131,3,0,0,0,0,0,0,0,0,0,160,131,3,0,200,131,3,0,240,131,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,168,129,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,12,10,10,10,9,10,12,12,6,1,10,5,6,6,7,9,11,14,12,9,8,11,7,8,9,11,13,15,10,5,12,7,8,7,9,12,14,15,10,6,7,8,5,6,7,9,12,14,9,6,8,7,6,6,7,9,12,12,9,7,9,9,7,6,6,7,10,10,10,9,10,11,8,7,6,6,8,10,12,11,13,13,11,10,8,8,8,10,11,13,15,15,14,13,10,8,8,9,0,0,0,0,8,0,0,0,161,25,0,0,32,145,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,200,170,3,0,0,0,0,0,4,0,0,0,113,2,0,0,144,142,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,8,145,3,0,0,0,0,0,4,0,0,0,113,2,0,0,0,140,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,142,3,0,0,0,0,0,2,0,0,0,81,0,0,0,128,139,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,216,139,3,0,0,0,0,0,2,0,0,0,81,0,0,0,0,139,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,88,139,3,0,0,0,0,0,2,0,0,0,33,1,0,0,144,137,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,184,138,3,0,0,0,0,0,4,0,0,0,81,0,0,0,40,137,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,128,137,3,0,0,0,0,0,2,0,0,0,121,0,0,0,120,136,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,248,136,3,0,0,0,0,0,2,0,0,0,169,0,0,0,144,135,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,64,136,3,0,0,0,0,0,2,0,0,0,25,0,0,0,88,135,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,135,3,0,0,0,0,0,2,0,0,0,169,0,0,0,112,134,3,0,1,0,0,0,0,184,84,225,0,160,251,96,4,0,0,0,0,0,0,0,32,135,3,0,0,0,0,0,2,0,0,0,169,0,0,0,136,133,3,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,56,134,3,0,0,0,0,0,2,0,0,0,33,1,0,0,24,132,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,64,133,3,0,0,0,0,0,2,4,4,6,6,7,7,7,7,7,7,8,8,8,8,8,8,10,7,7,7,7,7,7,8,8,8,8,9,9,9,9,9,9,10,7,7,7,7,8,8,8,8,8,8,9,9,9,9,9,9,10,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,8,7,8,8,8,8,9,9,9,9,9,9,9,9,10,11,11,8,8,8,8,9,9,9,9,9,9,10,9,9,9,10,11,10,8,8,8,8,9,9,9,9,9,9,9,10,10,10,10,11,10,8,8,9,9,9,9,9,9,10,9,9,10,9,10,11,10,11,11,11,8,8,9,9,9,9,9,9,9,9,10,10,11,11,11,11,11,9,9,9,9,9,9,10,9,9,9,10,10,11,11,11,11,11,9,9,9,9,9,9,9,9,9,10,9,10,11,11,11,11,11,9,9,9,9,10,10,9,9,9,10,10,10,11,11,11,11,11,11,11,9,9,9,10,9,9,10,10,10,10,11,11,10,11,11,11,11,10,9,10,10,9,9,9,9,10,10,11,10,11,11,11,11,11,9,9,9,9,10,9,10,10,10,10,11,10,11,11,11,11,11,10,10,9,9,10,9,10,10,10,10,10,10,10,11,11,11,11,11,11,9,9,10,9,10,9,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,6,8,8,10,9,10,10,6,5,5,7,7,8,7,10,9,11,11,12,13,6,5,5,7,7,8,8,10,10,11,11,13,13,18,8,8,8,8,9,9,10,10,12,12,12,13,18,8,8,8,8,9,9,10,10,12,12,13,13,18,11,11,8,8,10,10,11,11,12,11,13,12,18,11,11,9,7,10,10,11,11,11,12,12,13,17,17,17,10,10,11,11,12,12,12,10,12,12,17,17,17,11,10,11,10,13,12,11,12,12,12,17,17,17,15,14,11,11,12,11,13,10,13,12,17,17,17,14,14,12,10,11,11,13,13,13,13,17,17,16,17,16,13,13,12,10,13,10,14,13,17,16,17,16,17,13,12,12,10,13,11,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,5,4,12,12,12,12,12,12,12,12,12,12,4,9,8,11,11,11,11,11,11,11,11,11,11,2,8,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,4,6,5,5,5,5,6,5,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,6,5,5,7,7,8,8,8,8,9,9,10,10,7,6,5,7,7,8,8,8,8,9,9,10,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,11,0,13,13,9,9,10,10,10,10,11,11,12,12,0,0,0,10,10,10,10,11,11,12,12,12,13,0,0,0,10,10,10,10,11,11,12,12,12,12,0,0,0,14,14,10,11,11,11,12,12,13,13,0,0,0,14,14,11,10,11,11,13,12,13,13,0,0,0,0,0,12,12,11,12,13,12,14,14,0,0,0,0,0,12,12,12,12,13,12,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,4,6,6,7,7,7,7,7,7,9,7,7,6,6,7,7,8,8,8,8,9,6,6,6,6,7,7,8,8,8,8,10,7,7,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,10,9,9,7,10,10,11,10,11,11,10,11,6,9,9,11,10,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,10,11,11,11,12,11,11,6,9,9,11,10,10,11,11,10,6,9,9,11,10,10,12,10,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,6,6,8,8,9,9,9,9,9,9,10,10,11,11,0,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,11,0,7,7,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,8,8,7,7,9,9,10,10,9,9,10,10,11,11,12,12,0,0,0,7,7,9,9,10,10,10,9,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,10,10,10,10,11,11,12,12,13,12,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,7,7,9,9,0,7,7,7,7,7,7,9,9,0,7,7,7,7,7,7,9,9,0,8,8,7,7,8,8,10,10,0,0,0,7,7,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,10,10,9,9,11,11,0,0,0,0,0,9,9,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,3,6,6,0,0,0,0,0,6,6,6,6,0,0,0,0,0,6,6,6,6,0,0,0,0,0,7,7,6,6,0,0,0,0,0,0,0,6,7,0,0,0,0,0,0,0,7,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,3,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,0,0,0,7,7,0,0,0,7,7,0,0,0,8,8,0,0,0,0,0,0,0,4,6,6,0,0,0,8,8,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,4,6,6,0,0,0,8,8,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,11,11,0,0,0,11,11,0,0,0,12,11,0,0,0,0,0,0,0,7,8,8,0,0,0,10,11,0,0,0,11,11,0,0,0,11,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,11,11,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,6,8,8,0,0,0,10,11,0,0,0,10,11,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,9,0,0,0,11,12,0,0,0,11,12,0,0,0,12,11,0,0,0,0,0,0,0,8,10,9,0,0,0,12,11,0,0,0,12,11,0,0,0,11,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,5,6,6,0,0,0,0,0,0,5,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,6,8,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9],"i8",L3,R.GLOBAL_BASE+229400),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,11,9,13,12,12,11,12,12,13,15,8,2,11,4,8,5,7,10,12,15,13,7,10,9,8,8,10,13,17,17,11,4,12,5,9,5,8,11,14,16,12,6,8,7,6,6,8,11,13,16,11,4,9,5,6,4,6,10,13,16,11,6,11,7,7,6,7,10,13,15,13,9,12,9,8,6,8,10,12,14,14,10,10,8,6,5,6,9,11,13,15,11,11,9,6,5,6,8,9,12,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,9,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,R.GLOBAL_BASE+240320),d3([1,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,231,3,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,160,5,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,72,5,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,223,3,0,0,0,0,0,0,0,0,0,0,0,0,0,96,223,3,0,0,0,0,0,0,0,0,0,0,0,0,0,136,223,3,0,0,0,0,0,0,0,0,0,0,0,0,0,176,223,3,0,0,0,0,0,0,0,0,0,0,0,0,0,216,223,3,0,0,0,0,0,0,224,3,0,40,224,3,0,0,0,0,0,0,0,0,0,80,224,3,0,120,224,3,0,0,0,0,0,0,0,0,0,160,224,3,0,200,224,3,0,240,224,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,80,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,120,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,160,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,200,185,3,0,0,0,0,0,240,185,3,0,24,186,3,0,0,0,0,0,0,0,0,0,64,186,3,0,104,186,3,0,0,0,0,0,0,0,0,0,144,186,3,0,184,186,3,0,224,186,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,208,184,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,120,184,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,4,8,10,9,9,10,11,12,4,2,5,6,6,8,10,11,13,8,4,6,8,7,9,12,12,14,10,6,8,4,5,6,9,11,12,9,5,6,5,5,6,9,11,11,9,7,9,6,5,5,7,10,10,10,9,11,8,7,6,7,9,11,11,12,13,10,10,9,8,9,11,11,15,15,12,13,11,9,10,11,0,0,0,0,0,0,0,5,5,9,10,9,9,10,11,12,5,1,5,6,6,7,10,12,14,9,5,6,8,8,10,12,14,14,10,5,8,5,6,8,11,13,14,9,5,7,6,6,8,10,12,11,9,7,9,7,6,6,7,10,10,10,9,12,9,8,7,7,10,12,11,11,13,12,10,9,8,9,11,11,14,15,15,13,11,9,9,11,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,128,197,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,40,223,3,0,0,0,0,0,4,0,0,0,113,2,0,0,240,194,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,104,197,3,0,0,0,0,0,2,0,0,0,81,0,0,0,112,194,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,200,194,3,0,0,0,0,0,2,0,0,0,81,0,0,0,240,193,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,72,194,3,0,0,0,0,0,2,0,0,0,33,1,0,0,128,192,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,168,193,3,0,0,0,0,0,4,0,0,0,81,0,0,0,24,192,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,112,192,3,0,0,0,0,0,2,0,0,0,121,0,0,0,104,191,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,232,191,3,0,0,0,0,0,2,0,0,0,169,0,0,0,128,190,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,48,191,3,0,0,0,0,0,2,0,0,0,25,0,0,0,72,190,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,104,190,3,0,0,0,0,0,2,0,0,0,169,0,0,0,96,189,3,0,1,0,0,0,0,184,84,225,0,160,251,96,4,0,0,0,0,0,0,0,16,190,3,0,0,0,0,0,2,0,0,0,169,0,0,0,120,188,3,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,40,189,3,0,0,0,0,0,2,0,0,0,33,1,0,0,8,187,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,48,188,3,0,0,0,0,0,2,5,5,6,6,7,6,7,7,8,8,8,8,8,8,8,8,10,6,6,7,7,7,7,8,8,9,9,9,9,9,9,9,9,10,6,6,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,7,7,7,7,8,8,8,9,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,9,9,9,9,9,9,9,9,9,9,10,11,11,8,8,8,8,9,9,9,9,9,9,10,10,9,10,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,10,10,11,10,10,8,8,9,9,9,9,9,9,9,9,9,9,10,9,10,10,10,11,11,8,8,9,9,9,9,9,9,9,9,9,9,11,11,11,11,11,9,9,9,9,9,9,9,9,10,9,10,9,11,11,11,11,11,9,8,9,9,9,9,9,9,9,10,10,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,10,10,9,11,11,11,11,11,11,11,9,9,10,9,9,9,9,10,9,10,10,11,10,11,11,11,11,9,10,10,10,9,9,9,9,9,9,10,11,11,11,11,11,11,9,9,9,9,9,9,9,9,10,9,11,11,10,11,11,11,11,10,10,9,9,9,9,9,9,10,9,10,11,10,11,11,11,11,11,11,9,9,10,9,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,9,9,10,11,12,12,6,5,5,7,7,8,7,10,10,11,11,12,12,6,5,5,7,7,8,8,10,10,11,11,12,12,16,7,7,8,8,9,9,11,11,12,12,13,13,17,7,7,8,7,9,9,11,10,12,12,13,13,19,11,10,8,8,10,10,11,11,12,12,13,13,19,11,11,9,7,11,10,11,11,12,12,13,12,19,19,19,10,10,10,10,11,12,12,12,13,14,18,19,19,11,9,11,9,13,12,12,12,13,13,19,20,19,13,15,11,11,12,12,13,13,14,13,18,19,20,15,13,12,10,13,10,13,13,13,14,20,20,20,20,20,13,14,12,12,13,12,13,13,20,20,20,20,20,13,12,12,12,14,12,14,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,13,13,13,13,13,13,13,13,13,13,3,6,6,13,13,13,13,13,13,13,13,13,13,4,8,7,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,4,5,6,5,5,5,5,6,5,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,7,5,5,7,7,8,8,8,8,9,9,10,10,7,5,6,7,7,8,8,8,8,9,9,11,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,11,0,13,13,9,9,9,9,10,10,11,11,12,12,0,0,0,9,10,9,10,11,11,12,11,13,12,0,0,0,10,10,9,9,11,11,12,12,13,12,0,0,0,13,13,10,10,11,11,12,12,13,13,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,11,12,11,11,12,13,14,13,0,0,0,0,0,12,12,11,11,13,12,14,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,7,7,7,7,8,8,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,9,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,10,11,11,11,10,10,6,9,9,11,11,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,11,11,11,11,11,11,11,6,9,9,11,10,10,11,11,10,6,9,9,10,10,10,11,10,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,6,6,7,7,8,8,8,8,9,9,10,10,11,11,0,5,5,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,5,5,6,6,8,8,9,9,9,9,10,10,10,10,11,11,0,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,10,10,10,11,11,11,12,12,0,0,0,8,8,8,8,9,9,10,10,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,7,7,9,9,0,6,6,7,7,8,8,9,9,0,6,6,7,7,8,8,9,9,0,7,7,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,8,8,9,9,11,11,0,0,0,9,9,9,9,11,11,0,0,0,10,10,10,10,11,11,0,0,0,0,0,9,9,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,3,7,7,0,0,0,0,0,5,5,6,6,0,0,0,0,0,5,5,7,7,0,0,0,0,0,7,7,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,9,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,9,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,10,9],"i8",L3,R.GLOBAL_BASE+242772),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,144,235,3,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,56,5,4,0,0,0,0,0,4,0,0,0,113,2,0,0,0,233,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,235,3,0,0,0,0,0,2,0,0,0,81,0,0,0,128,232,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,216,232,3,0,0,0,0,0,2,0,0,0,81,0,0,0,0,232,3,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,88,232,3,0,0,0,0,0,2,0,0,0,33,1,0,0,144,230,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,184,231,3,0,0,0,0,0,4,0,0,0,81,0,0,0,40,230,3,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,128,230,3,0,0,0,0,0,2,0,0,0,121,0,0,0,120,229,3,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,248,229,3,0,0,0,0,0,2,0,0,0,169,0,0,0,144,228,3,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,64,229,3,0,0,0,0,0,2,0,0,0,25,0,0,0,88,228,3,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,120,228,3,0,0,0,0,0,2,0,0,0,169,0,0,0,112,227,3,0,1,0,0,0,0,184,84,225,0,160,251,96,4,0,0,0,0,0,0,0,32,228,3,0,0,0,0,0,2,0,0,0,169,0,0,0,136,226,3,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,56,227,3,0,0,0,0,0,2,0,0,0,33,1,0,0,24,225,3,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,64,226,3,0,0,0,0,0,2,4,4,6,6,6,6,7,7,8,8,8,8,8,8,8,8,10,10,10,7,7,7,7,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,7,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,8,9,9,9,9,9,9,10,9,9,10,10,10,7,7,8,8,9,8,9,9,9,9,10,9,9,10,10,11,11,8,8,8,8,9,9,9,9,9,9,10,9,9,10,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,10,10,11,11,11,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,10,11,11,11,8,8,9,9,9,9,10,9,9,9,9,9,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,10,10,11,11,9,9,9,9,9,9,9,9,9,10,10,10,10,11,10,11,11,9,9,9,9,9,9,9,9,9,10,10,9,10,10,11,11,11,11,11,9,9,9,10,9,9,9,9,9,9,10,11,11,11,11,11,11,10,10,10,10,9,9,9,9,9,9,10,11,11,11,11,11,11,9,10,9,9,9,9,10,9,9,9,11,11,11,11,11,11,11,10,10,9,9,9,9,9,9,10,9,11,11,10,11,11,11,11,10,11,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,5,7,7,9,9,10,10,12,12,6,5,5,7,7,8,8,10,10,12,11,12,12,6,5,5,7,7,8,8,10,10,11,11,12,12,15,7,7,8,8,9,9,11,11,12,12,13,12,15,8,8,8,7,9,9,10,10,12,12,13,13,16,11,10,8,8,10,10,11,11,12,12,13,13,16,11,11,9,8,11,10,11,11,12,12,13,12,16,16,16,10,11,10,11,12,12,12,12,13,13,16,16,16,11,9,11,9,14,12,12,12,13,13,16,16,16,12,14,11,12,12,12,13,13,14,13,16,16,16,15,13,12,10,13,10,13,14,13,13,16,16,16,16,16,13,14,12,13,13,12,13,13,16,16,16,16,16,13,12,12,11,14,12,15,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,3,10,10,10,10,10,10,10,10,10,10,4,8,6,10,10,10,10,10,10,10,10,10,10,4,8,7,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,10,9,7,5,6,7,7,8,8,8,8,9,9,10,10,7,5,5,7,7,8,8,8,8,9,9,10,10,0,8,8,8,8,9,9,9,9,10,10,11,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,10,10,10,11,11,11,11,0,13,13,9,9,9,9,10,10,11,11,11,11,0,0,0,10,10,10,10,11,11,12,11,12,12,0,0,0,10,10,10,9,11,11,12,11,13,12,0,0,0,13,13,10,10,11,11,12,12,13,13,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,11,12,11,11,12,12,14,13,0,0,0,0,0,12,11,11,11,13,10,14,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,7,7,7,7,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,6,10,10,11,11,11,11,10,10,6,9,9,11,10,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,10,11,11,11,12,11,11,7,9,9,11,10,10,11,11,10,6,9,9,10,10,10,12,10,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,6,6,7,7,8,8,8,8,9,9,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,11,0,0,0,8,8,9,9,9,10,10,10,10,10,11,11,12,12,0,0,0,8,8,9,9,10,9,10,10,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,11,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,10,10,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,12,12,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,5,6,6,8,8,0,0,0,7,7,7,7,9,9,0,0,0,7,7,7,7,9,9,0,0,0,7,7,8,8,10,10,0,0,0,7,7,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,10,10,9,9,11,11,0,0,0,0,0,9,9,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,2,7,7,0,0,0,0,0,13,13,6,6,0,0,0,0,0,12,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,9,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,11,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,3,4,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,5,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,0,0,0,0,0,0,5,7,6,0,0,0,0,0,0,5,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,7,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,8,8,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,8,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9],"i8",L3,R.GLOBAL_BASE+253728),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,13,14,14,15,16,18,18,4,2,5,8,7,9,12,15,15,10,4,5,10,6,8,11,15,17,12,5,7,5,6,8,11,14,17,11,5,6,6,5,6,9,13,17,12,6,7,6,5,6,8,12,14,14,7,8,6,6,7,9,11,14,14,8,9,6,5,6,9,11,13,16,10,10,7,6,7,8,10,11,0,0,0,0,0,0,0,6,8,13,12,13,14,15,16,16,4,2,4,7,6,8,11,13,15,10,4,4,8,6,8,11,14,17,11,5,6,5,6,8,12,14,17,11,5,5,6,5,7,10,13,16,12,6,7,8,7,8,10,13,15,13,8,8,7,7,8,10,12,15,15,7,7,5,5,7,9,12,14,15,8,8,6,6,7,8,10,11,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,128,86,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,40,86,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,46,4,0,0,0,0,0,0,0,0,0,0,0,0,0,152,46,4,0,0,0,0,0,0,0,0,0,0,0,0,0,192,46,4,0,0,0,0,0,0,0,0,0,0,0,0,0,232,46,4,0,0,0,0,0,0,0,0,0,0,0,0,0,16,47,4,0,0,0,0,0,56,47,4,0,96,47,4,0,0,0,0,0,0,0,0,0,136,47,4,0,176,47,4,0,0,0,0,0,0,0,0,0,216,47,4,0,0,48,4,0,40,48,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,8,4,0,0,0,0,0,0,0,0,0,0,0,0,0,240,8,4,0,0,0,0,0,0,0,0,0,0,0,0,0,24,9,4,0,0,0,0,0,0,0,0,0,0,0,0,0,64,9,4,0,0,0,0,0,0,0,0,0,0,0,0,0,104,9,4,0,0,0,0,0,144,9,4,0,184,9,4,0,0,0,0,0,0,0,0,0,224,9,4,0,8,10,4,0,0,0,0,0,0,0,0,0,48,10,4,0,88,10,4,0,128,10,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,112,8,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,24,8,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,4,9,10,9,10,11,12,13,4,1,5,7,7,9,11,12,14,8,5,7,9,8,10,13,13,13,10,7,9,4,6,7,10,12,14,9,6,7,6,6,7,10,12,12,9,8,9,7,6,7,8,11,12,11,11,11,9,8,7,8,10,12,12,13,14,12,11,9,9,9,12,12,17,17,15,16,12,10,11,13,0,0,0,0,0,0,0,5,4,8,9,8,9,10,12,15,4,1,5,5,6,8,11,12,12,8,5,8,9,9,11,13,12,12,9,5,8,5,7,9,12,13,13,8,6,8,7,7,9,11,11,11,9,7,9,7,7,7,7,10,12,10,10,11,9,8,7,7,9,11,11,12,13,12,11,9,8,9,11,13,16,16,15,15,12,10,11,12,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,184,20,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,96,46,4,0,0,0,0,0,4,0,0,0,113,2,0,0,40,18,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,20,4,0,0,0,0,0,2,0,0,0,81,0,0,0,168,17,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,0,18,4,0,0,0,0,0,2,0,0,0,81,0,0,0,40,17,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,128,17,4,0,0,0,0,0,2,0,0,0,33,1,0,0,184,15,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,224,16,4,0,0,0,0,0,4,0,0,0,81,0,0,0,80,15,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,168,15,4,0,0,0,0,0,2,0,0,0,121,0,0,0,160,14,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,32,15,4,0,0,0,0,0,2,0,0,0,169,0,0,0,184,13,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,104,14,4,0,0,0,0,0,2,0,0,0,25,0,0,0,128,13,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,13,4,0,0,0,0,0,2,0,0,0,81,0,0,0,0,13,4,0,1,0,0,0,0,160,59,225,0,160,251,96,4,0,0,0,0,0,0,0,88,13,4,0,0,0,0,0,2,0,0,0,169,0,0,0,24,12,4,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,200,12,4,0,0,0,0,0,2,0,0,0,33,1,0,0,168,10,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,208,11,4,0,0,0,0,0,2,5,5,6,6,7,7,7,7,8,8,8,8,8,8,8,8,10,6,6,7,7,7,7,8,8,9,9,9,9,9,9,9,9,10,6,6,7,7,8,7,8,8,9,9,9,9,9,9,9,9,10,7,7,7,7,8,8,8,9,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,9,8,9,9,9,9,10,9,9,10,10,10,11,8,8,8,8,9,9,9,9,9,9,9,10,9,10,10,10,10,8,8,8,8,9,9,9,9,9,9,9,9,10,10,11,10,10,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,11,11,8,8,9,9,9,9,9,9,9,9,9,10,11,11,11,11,11,9,9,9,9,9,9,9,9,10,9,10,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,9,10,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,9,10,9,11,10,11,11,11,11,11,9,9,10,9,9,9,9,9,9,9,10,11,10,11,11,11,11,10,10,10,10,9,9,9,9,9,9,10,11,11,11,11,11,11,9,10,9,9,9,9,9,9,9,9,11,11,10,11,11,11,10,10,10,9,9,9,9,9,9,9,9,10,11,10,11,11,11,11,11,11,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,9,9,10,11,12,12,6,5,5,7,7,8,8,10,10,12,11,12,12,6,5,5,7,7,8,8,10,10,12,11,12,12,17,7,7,8,8,9,9,10,10,12,12,13,13,18,7,7,8,7,9,9,10,10,12,12,12,13,19,10,10,8,8,10,10,11,11,12,12,13,14,19,11,10,8,7,10,10,11,11,12,12,13,12,19,19,19,10,10,10,10,11,11,12,12,13,13,19,19,19,11,9,11,9,14,12,13,12,13,13,19,20,18,13,14,11,11,12,12,13,13,14,13,20,20,20,15,13,11,10,13,11,13,13,14,13,20,20,20,20,20,13,14,12,12,13,13,13,13,20,20,20,20,20,13,13,12,12,16,13,15,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,3,11,11,11,11,11,11,3,7,6,11,11,11,11,11,11,4,8,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,4,4,6,5,5,5,5,6,5,5,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,7,5,5,7,7,8,8,8,8,9,9,10,10,7,6,5,7,7,8,8,8,8,9,9,10,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,11,0,13,13,9,9,9,9,10,10,11,11,11,12,0,0,0,9,10,10,10,11,11,12,11,12,12,0,0,0,10,10,9,9,11,11,12,12,12,12,0,0,0,13,13,10,10,11,11,12,12,13,13,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,11,12,11,11,13,12,13,13,0,0,0,0,0,12,12,11,11,13,12,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,7,8,9,5,5,6,6,7,7,8,8,8,8,9,5,5,6,6,7,7,8,8,8,8,10,7,7,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,11,9,9,4,7,7,10,9,9,11,9,9,7,10,10,10,11,11,11,10,10,6,9,9,11,11,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,10,11,11,11,11,11,11,6,9,9,11,10,10,11,11,10,6,9,9,11,10,10,11,10,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,8,8,8,8,8,8,9,9,10,10,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,10,11,11,11,0,5,6,7,7,8,8,9,9,9,9,10,10,10,11,11,11,0,7,7,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,12,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,10,11,11,12,12,13,13,0,0,0,0,0,10,10,10,10,11,11,12,12,12,13,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,12,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,12,11,12,12,13,13,13,13,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,3,6,6,7,7,9,9,0,5,5,7,7,8,7,9,9,0,5,5,7,7,8,8,9,9,0,7,7,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,9,9,9,9,11,11,0,0,0,9,9,9,9,11,11,0,0,0,10,10,10,10,11,11,0,0,0,0,0,9,9,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,3,7,7,0,0,0,0,0,5,4,7,7,0,0,0,0,0,5,5,7,7,0,0,0,0,0,6,7,8,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,10,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,10,10],"i8",L3,R.GLOBAL_BASE+263472),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,112,60,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,24,86,4,0,0,0,0,0,4,0,0,0,113,2,0,0,224,57,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,60,4,0,0,0,0,0,2,0,0,0,81,0,0,0,96,57,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,184,57,4,0,0,0,0,0,2,0,0,0,81,0,0,0,224,56,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,56,57,4,0,0,0,0,0,2,0,0,0,33,1,0,0,112,55,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,152,56,4,0,0,0,0,0,4,0,0,0,81,0,0,0,8,55,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,96,55,4,0,0,0,0,0,2,0,0,0,121,0,0,0,88,54,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,216,54,4,0,0,0,0,0,2,0,0,0,169,0,0,0,112,53,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,32,54,4,0,0,0,0,0,2,0,0,0,25,0,0,0,56,53,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,88,53,4,0,0,0,0,0,4,0,0,0,113,2,0,0,168,50,4,0,1,0,0,0,0,160,27,225,0,160,251,96,3,0,0,0,0,0,0,0,32,53,4,0,0,0,0,0,2,0,0,0,169,0,0,0,192,49,4,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,112,50,4,0,0,0,0,0,2,0,0,0,33,1,0,0,80,48,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,120,49,4,0,0,0,0,0,2,4,4,6,6,7,7,7,7,8,8,8,8,8,8,8,8,10,10,10,7,7,7,8,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,7,7,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,8,8,9,9,9,9,9,10,9,9,10,10,10,7,7,8,8,9,8,9,9,9,9,10,9,9,10,10,10,10,8,8,8,8,9,8,9,9,9,9,9,10,9,10,10,10,10,7,7,8,8,9,9,9,9,9,9,10,9,10,10,10,10,10,8,8,8,9,9,9,9,9,9,9,10,10,10,9,11,10,10,10,10,8,8,9,9,9,9,9,10,9,9,9,10,10,10,10,11,11,9,9,9,9,9,9,9,9,10,9,9,10,11,10,10,11,11,9,9,9,9,9,9,9,9,9,9,10,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,9,10,9,11,10,10,11,11,11,11,9,9,9,9,9,9,9,9,9,9,10,10,10,11,11,11,11,9,10,9,10,9,9,9,9,10,9,10,11,10,11,10,10,10,10,10,9,9,9,10,9,9,9,10,11,11,10,11,11,10,11,10,10,10,9,9,9,9,10,9,9,10,11,10,11,11,11,11,10,11,10,10,9,10,9,9,9,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,7,7,9,9,11,12,13,12,6,5,5,7,7,8,8,10,9,12,12,12,12,6,5,5,7,7,8,8,10,9,12,11,11,13,16,7,7,8,8,9,9,10,10,12,12,13,12,16,7,7,8,7,9,9,10,10,11,12,12,13,16,10,10,8,8,10,10,11,12,12,12,13,13,16,11,10,8,7,11,10,11,11,12,11,13,13,16,16,16,10,10,10,10,11,11,13,12,13,13,16,16,16,11,9,11,9,15,13,12,13,13,13,16,16,16,15,13,11,11,12,13,12,12,14,13,16,16,16,14,13,11,11,13,12,14,13,13,13,16,16,16,16,16,13,13,13,12,14,13,14,14,16,16,16,16,16,13,13,12,12,14,14,15,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,5,5,10,10,6,9,8,10,10,6,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,7,5,5,7,7,8,8,8,8,9,9,10,10,7,5,6,7,7,8,8,8,8,9,9,10,10,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,10,10,10,10,11,11,11,11,0,13,13,9,9,9,9,10,10,11,11,11,12,0,0,0,10,10,10,10,11,11,11,11,12,12,0,0,0,10,10,9,9,11,11,11,12,12,12,0,0,0,13,13,10,10,11,11,12,12,13,13,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,11,11,11,11,13,12,13,13,0,0,0,0,0,12,12,11,11,12,12,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,7,7,7,7,7,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,8,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,10,10,10,10,10,9,9,8,8,8,8,10,10,10,10,10,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,7,10,9,9,10,9,9,4,6,7,10,9,9,11,9,9,7,10,10,11,11,11,12,10,11,6,9,9,11,10,11,11,10,10,6,9,9,11,10,11,11,10,10,7,11,10,12,11,11,11,11,11,7,9,9,10,10,10,11,11,10,6,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,6,6,8,7,8,8,8,8,9,9,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,9,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,8,8,9,9,9,9,10,10,10,10,11,11,12,12,0,0,0,8,8,9,9,9,9,10,10,10,10,11,11,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,11,12,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,10,10,11,11,11,11,11,12,12,12,13,13,0,0,0,0,0,0,0,11,10,11,11,11,11,12,12,13,13,0,0,0,0,0,0,0,11,11,12,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,11,12,12,12,12,13,13,13,0,0,0,0,0,0,0,12,12,12,12,12,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,6,6,8,8,0,0,0,7,7,7,7,9,9,0,0,0,7,7,7,7,9,9,0,0,0,7,7,7,8,9,9,0,0,0,7,7,7,7,9,9,0,0,0,9,9,8,8,10,10,0,0,0,8,9,8,8,10,10,0,0,0,10,10,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,2,8,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,6,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,9,9,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,9,11,10],"i8",L3,R.GLOBAL_BASE+274008),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,6,6,12,13,13,14,16,17,17,4,2,5,8,7,9,12,15,15,9,4,5,9,7,9,12,16,18,11,6,7,4,6,8,11,14,18,10,5,6,5,5,7,10,14,17,10,5,7,7,6,7,10,13,16,11,5,7,7,7,8,10,12,15,13,6,7,5,5,7,9,12,13,16,8,9,6,6,7,9,10,12,0,0,0,0,0,0,0,9,8,12,11,12,13,14,14,16,6,1,5,6,6,9,12,14,17,9,4,5,9,7,9,13,15,16,8,5,8,6,8,10,13,17,17,9,6,7,7,8,9,13,15,17,11,8,9,9,9,10,12,16,16,13,7,8,7,7,9,12,14,15,13,6,7,5,5,7,10,13,13,14,7,8,5,6,7,9,10,12,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,96,167,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,8,167,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,127,4,0,0,0,0,0,0,0,0,0,0,0,0,0,120,127,4,0,0,0,0,0,0,0,0,0,0,0,0,0,160,127,4,0,0,0,0,0,0,0,0,0,0,0,0,0,200,127,4,0,0,0,0,0,0,0,0,0,0,0,0,0,240,127,4,0,0,0,0,0,24,128,4,0,64,128,4,0,0,0,0,0,0,0,0,0,104,128,4,0,144,128,4,0,0,0,0,0,0,0,0,0,184,128,4,0,224,128,4,0,8,129,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,168,89,4,0,0,0,0,0,0,0,0,0,0,0,0,0,208,89,4,0,0,0,0,0,0,0,0,0,0,0,0,0,248,89,4,0,0,0,0,0,0,0,0,0,0,0,0,0,32,90,4,0,0,0,0,0,0,0,0,0,0,0,0,0,72,90,4,0,0,0,0,0,112,90,4,0,152,90,4,0,0,0,0,0,0,0,0,0,192,90,4,0,232,90,4,0,0,0,0,0,0,0,0,0,16,91,4,0,56,91,4,0,96,91,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,80,89,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,81,0,0,0,248,88,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,8,8,8,8,10,12,14,3,2,6,7,7,8,10,12,16,7,6,7,9,8,10,12,14,16,8,6,8,4,5,7,9,11,13,7,6,8,5,6,7,9,11,14,8,8,10,7,7,6,8,10,13,9,11,12,9,9,7,8,10,12,10,13,15,11,11,10,9,10,13,13,16,17,14,15,14,13,14,17,0,0,0,0,0,0,0,4,4,7,8,7,8,10,12,17,3,1,6,6,7,8,10,12,15,7,6,9,9,9,11,12,14,17,8,6,9,6,7,9,11,13,17,7,6,9,7,7,8,9,12,15,8,8,10,8,7,7,7,10,14,9,10,12,10,8,8,8,10,14,11,13,15,13,12,11,11,12,16,17,18,18,19,20,18,16,16,20,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,152,101,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,64,127,4,0,0,0,0,0,4,0,0,0,113,2,0,0,8,99,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,128,101,4,0,0,0,0,0,2,0,0,0,81,0,0,0,136,98,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,224,98,4,0,0,0,0,0,2,0,0,0,81,0,0,0,8,98,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,96,98,4,0,0,0,0,0,2,0,0,0,33,1,0,0,152,96,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,192,97,4,0,0,0,0,0,4,0,0,0,81,0,0,0,48,96,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,136,96,4,0,0,0,0,0,2,0,0,0,121,0,0,0,128,95,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,0,96,4,0,0,0,0,0,2,0,0,0,169,0,0,0,152,94,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,72,95,4,0,0,0,0,0,2,0,0,0,25,0,0,0,96,94,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,128,94,4,0,0,0,0,0,2,0,0,0,81,0,0,0,224,93,4,0,1,0,0,0,0,160,59,225,0,160,251,96,4,0,0,0,0,0,0,0,56,94,4,0,0,0,0,0,2,0,0,0,169,0,0,0,248,92,4,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,168,93,4,0,0,0,0,0,2,0,0,0,33,1,0,0,136,91,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,176,92,4,0,0,0,0,0,3,4,4,6,6,7,7,8,8,8,8,9,9,9,9,9,9,10,6,6,6,6,7,7,8,8,8,9,9,9,9,9,9,9,10,6,6,6,6,7,7,8,8,8,8,9,9,9,9,9,9,10,7,7,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,7,8,8,8,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,8,8,8,8,8,8,9,9,9,9,9,9,9,9,11,10,11,8,8,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,11,11,8,8,8,8,9,9,9,9,9,9,9,9,11,10,11,11,11,9,9,9,9,9,9,9,9,9,9,9,9,10,11,10,11,11,9,9,9,9,9,9,9,9,9,9,9,10,11,11,10,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,10,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,10,11,11,11,11,11,11,9,10,10,10,9,9,9,9,9,9,11,10,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,11,11,11,11,11,11,11,10,10,9,9,9,9,9,9,9,9,10,11,11,11,11,11,11,11,11,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,10,11,11,11,6,5,5,7,7,8,8,10,10,10,11,11,11,6,5,5,7,7,8,8,10,10,11,12,12,12,14,7,7,7,8,9,9,11,11,11,12,11,12,17,7,7,8,7,9,9,11,11,12,12,12,12,14,11,11,8,8,10,10,11,12,12,13,11,12,14,11,11,8,8,10,10,11,12,12,13,13,12,14,15,14,10,10,10,10,11,12,12,12,12,11,14,13,16,10,10,10,9,12,11,12,12,13,14,14,15,14,14,13,10,10,11,11,12,11,13,11,14,12,15,13,14,11,10,12,10,12,12,13,13,13,13,14,15,15,12,12,11,11,12,11,13,12,14,14,14,14,17,12,12,11,10,13,11,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,12,11,13,13,14,14,4,7,7,11,13,14,14,14,14,3,8,3,14,14,14,14,14,14,14,10,12,14,14,14,14,14,14,14,14,5,14,8,14,14,14,14,14,12,14,13,14,14,14,14,14,14,14,13,14,10,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,4,5,6,5,5,5,5,6,5,5,5,5,6,5,5,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,9,9,10,10,7,5,5,7,7,8,8,8,8,10,9,11,10,7,5,5,7,7,8,8,8,8,9,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,10,10,10,11,11,12,12,0,13,13,9,9,9,9,10,10,11,11,12,12,0,0,0,10,10,10,10,11,11,12,12,12,13,0,0,0,10,10,10,10,11,11,12,12,12,12,0,0,0,14,14,11,11,11,11,12,13,13,13,0,0,0,14,14,11,10,11,11,12,12,13,13,0,0,0,0,0,12,12,12,12,13,13,13,14,0,0,0,0,0,13,12,12,12,13,13,13,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,4,4,5,5,7,7,7,7,8,8,10,5,5,6,6,7,7,8,8,8,8,10,5,5,6,6,7,7,8,8,8,8,10,7,7,7,7,8,8,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,9,9,10,10,10,10,10,8,8,8,8,9,9,10,10,10,10,10,9,9,9,9,8,9,10,10,10,10,10,8,9,8,8,9,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,7,6,10,9,9,11,9,9,4,6,7,10,9,9,11,9,9,7,10,10,10,11,11,11,11,10,6,9,9,11,10,10,11,10,10,6,9,9,11,10,11,11,10,10,7,11,11,11,11,11,12,11,11,7,9,9,11,10,10,12,10,10,7,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,9,8,8,9,9,10,10,11,11,0,6,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,6,5,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,7,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,13,13,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,13,13,13,0,0,0,0,0,10,10,11,11,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,12,12,12,13,13,13,14,14,14,14,0,0,0,0,0,0,0,0,0,12,12,13,13,14,14,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,3,6,6,7,7,9,9,0,5,5,7,7,8,7,9,9,0,5,5,7,7,8,8,9,9,0,7,7,8,8,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,9,9,9,9,10,10,0,0,0,9,9,9,9,10,10,0,0,0,10,10,10,10,11,11,0,0,0,0,0,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,4,7,7,0,0,0,0,0,4,4,7,7,0,0,0,0,0,4,5,7,7,0,0,0,0,0,6,7,8,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,10,9,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,9,0,0,0,0,0,0,9,9,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,9,10,10,0,0,0,0,0,0,9,10,9],"i8",L3,R.GLOBAL_BASE+284176),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,80,141,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,248,166,4,0,0,0,0,0,4,0,0,0,113,2,0,0,192,138,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,141,4,0,0,0,0,0,2,0,0,0,81,0,0,0,64,138,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,152,138,4,0,0,0,0,0,2,0,0,0,81,0,0,0,192,137,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,24,138,4,0,0,0,0,0,2,0,0,0,33,1,0,0,80,136,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,120,137,4,0,0,0,0,0,4,0,0,0,81,0,0,0,232,135,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,64,136,4,0,0,0,0,0,2,0,0,0,121,0,0,0,56,135,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,184,135,4,0,0,0,0,0,2,0,0,0,169,0,0,0,80,134,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,0,135,4,0,0,0,0,0,2,0,0,0,25,0,0,0,24,134,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,134,4,0,0,0,0,0,4,0,0,0,113,2,0,0,136,131,4,0,1,0,0,0,0,160,27,225,0,160,251,96,3,0,0,0,0,0,0,0,0,134,4,0,0,0,0,0,2,0,0,0,169,0,0,0,160,130,4,0,1,0,0,0,0,128,217,224,0,0,145,96,4,0,0,0,0,0,0,0,80,131,4,0,0,0,0,0,2,0,0,0,33,1,0,0,48,129,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,88,130,4,0,0,0,0,0,3,4,3,6,6,7,7,8,8,9,9,9,9,9,9,9,9,10,11,11,6,6,7,7,8,8,9,9,9,9,9,9,9,9,10,10,10,6,6,7,7,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,7,8,8,8,9,9,9,9,9,9,10,9,10,11,10,7,6,7,7,8,8,9,9,9,9,9,9,9,10,10,10,11,7,7,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,7,7,8,8,8,8,9,9,9,9,9,9,9,10,11,11,11,8,8,8,8,8,8,9,9,9,9,9,9,9,9,11,10,10,11,11,8,8,8,9,9,9,9,9,9,10,9,10,10,10,10,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,11,10,11,11,9,9,9,9,9,9,9,9,9,10,10,10,10,11,10,11,11,9,9,9,9,9,9,9,9,9,9,9,9,11,10,10,11,11,11,11,9,9,9,9,9,9,9,9,10,10,10,11,11,10,11,11,11,9,10,10,9,9,9,9,9,9,9,10,11,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,11,11,11,11,11,11,11,10,10,9,9,9,9,9,9,9,9,11,11,11,10,11,11,11,11,11,9,9,9,10,9,9,9,9,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,4,4,6,6,8,8,9,10,10,11,11,11,6,5,5,7,7,8,8,9,10,9,11,11,12,5,5,5,7,7,8,9,10,10,12,12,14,13,15,7,7,8,8,9,10,11,11,10,12,10,11,15,7,8,8,8,9,9,11,11,13,12,12,13,15,10,10,8,8,10,10,12,12,11,14,10,10,15,11,11,8,8,10,10,12,13,13,14,15,13,15,15,15,10,10,10,10,12,12,13,12,13,10,15,15,15,10,10,11,10,13,11,13,13,15,13,15,15,15,13,13,10,11,11,11,12,10,14,11,15,15,14,14,13,10,10,12,11,13,13,14,14,15,15,15,15,15,11,11,11,11,12,11,15,12,15,15,15,15,15,12,12,11,11,14,12,13,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,7,7,11,11,8,11,11,11,11,4,11,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,7,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,8,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,9,9,10,10,6,5,5,7,7,8,8,8,8,9,9,11,11,7,5,5,7,7,8,8,8,8,9,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,8,8,8,8,9,9,9,9,10,10,11,11,0,12,12,9,9,9,10,10,10,11,11,11,12,0,13,13,9,9,9,9,10,10,11,11,11,12,0,0,0,10,10,10,10,11,11,12,12,12,13,0,0,0,10,10,10,10,11,11,12,12,13,12,0,0,0,14,14,11,10,11,12,12,13,13,14,0,0,0,15,15,11,11,12,11,12,12,14,13,0,0,0,0,0,12,12,12,12,13,13,14,14,0,0,0,0,0,13,13,12,12,13,13,13,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,6,6,7,7,8,8,8,8,10,10,10,7,6,8,8,8,8,8,8,10,10,10,7,6,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,9,9,9,9,10,10,10,8,8,8,8,9,9,9,9,10,10,10,9,9,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,10,10,10,10,10,9,9,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,6,6,7,6,6,4,6,6,10,9,9,11,9,9,4,6,6,10,9,9,10,9,9,7,10,10,11,11,11,12,11,11,7,9,9,11,11,10,11,10,10,7,9,9,11,10,11,11,10,10,7,10,10,11,11,11,12,11,11,7,9,9,11,10,10,11,10,10,7,9,9,11,10,10,11,10,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,6,6,7,7,8,8,8,8,9,9,10,10,10,10,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,8,8,9,9,9,9,10,10,10,10,11,11,12,12,0,0,0,8,8,9,9,9,9,10,10,10,11,11,11,12,12,0,0,0,9,9,10,9,10,10,10,10,11,11,11,11,12,12,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,0,0,9,9,10,10,10,11,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,10,10,11,10,11,11,11,12,13,12,13,13,0,0,0,0,0,0,0,11,10,11,11,12,12,12,12,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,13,14,0,0,0,0,0,0,0,12,12,12,13,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,13,12,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,6,6,8,8,0,0,0,6,6,7,7,9,9,0,0,0,6,6,7,7,9,9,0,0,0,7,7,8,8,10,10,0,0,0,7,7,8,8,10,10,0,0,0,9,9,9,9,10,10,0,0,0,9,9,9,9,10,10,0,0,0,10,10,10,10,11,11,0,0,0,0,0,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,2,3,7,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,9,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,7,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,10,9,0,0,0,0,0,0,8,10,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,9,9,11,0,0,0,0,0,0,10,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,9,11,9,0,0,0,0,0,0,10,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,10,11,11,0,0,0,0,0,0,9,9,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,10,11,11,0,0,0,0,0,0,9,11,9],"i8",L3,R.GLOBAL_BASE+294712),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,6,12,14,12,14,16,17,18,4,2,5,11,7,10,12,14,15,9,4,5,11,7,10,13,15,18,15,6,7,5,6,8,11,13,16,11,5,6,5,5,6,9,13,15,12,5,7,6,5,6,9,12,14,12,6,7,8,6,7,9,12,13,14,8,8,7,5,5,8,10,12,16,9,9,8,6,6,7,9,9,0,0,0,0,0,0,0,10,9,12,15,12,13,16,14,16,7,1,5,14,7,10,13,16,16,9,4,6,16,8,11,16,16,16,14,4,7,16,9,12,14,16,16,10,5,7,14,9,12,14,15,15,13,8,9,14,10,12,13,14,15,13,9,9,7,6,8,11,12,12,14,8,8,5,4,5,8,11,12,16,10,10,6,5,6,8,9,10,0,0,0,0,0,0,0,0,0,0,0,0,64,191,64,0,0,0,0,0,88,203,64,0,0,0,0,0,130,228,64,0,0,0,0,0,112,183,64,0,0,0,0,0,148,193,64,0,0,0,0,0,64,223,64,0,0,0,0,0,112,199,64,0,0,0,0,0,136,211,64,0,0,0,0,0,106,232,64,154,153,153,153,153,153,185,191,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,2,0,0,0,2,0,0,30,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,30,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,242,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,2,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,0,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,12,0,0,0,12,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,10,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,12,0,0,0,12,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,99,0,0,0,99,0,0,0,99,0,0,0,0,0,0,0,51,51,51,51,51,51,211,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,18,64,0,0,0,0,0,0,22,64,0,0,0,0,0,0,62,64,208,171,4,0,0,0,0,0,6,0,0,0,6,0,0,0,0,0,0,0,0,64,191,64,0,0,0,0,0,100,201,64,0,0,0,0,0,124,229,64,0,0,0,0,0,64,207,64,0,0,0,0,0,88,219,64,0,0,0,0,0,64,239,64,0,0,0,0,0,106,248,64,154,153,153,153,153,153,185,191,154,153,153,153,153,153,169,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,240,63,0,4,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,30,0,0,0,25,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,22,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,242,255,255,255,0,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,246,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,236,255,255,255,246,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,10,0,0,0,255,255,255,255,10,0,0,0,10,0,0,0,255,255,255,255,20,0,0,0,20,0,0,0,255,255,255,255,20,0,0,0,20,0,0,0,255,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,4,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,15,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,10,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,10,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,244,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,249,255,255,255,251,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,238,255,255,255,238,255,255,255,238,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,4,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,12,0,0,0,14,0,0,0,20,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,4,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,20,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,4,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,12,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,244,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,5,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,14,0,0,0,20,0,0,0,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,254,255,255,255,254,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,4,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,20,0,0,0,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,8,0,0,0,8,0,0,0,15,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,232,255,255,255,236,255,255,255,242,255,255,255,246,255,255,255,250,255,255,255,248,255,255,255,248,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,250,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,8,0,0,0,12,0,0,0,236,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,240,255,255,255,244,255,255,255,236,255,255,255,246,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,5,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,241,255,255,255,244,255,255,255,246,255,255,255,248,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,251,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,234,255,255,255,236,255,255,255,242,255,255,255,244,255,255,255,244,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,246,255,255,255,250,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,226,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,230,255,255,255,232,255,255,255,236,255,255,255,236,255,255,255,236,255,255,255,0,0,0,0,0,0,0,0,154,153,153,153,153,153,233,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,240,63,0,1,0,0,0,1,0,0,15,39,0,0,0,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,51,51,51,51,51,51,211,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,156,255,255,255,156,255,255,255,156,255,255,255,151,255,255,255,126,255,255,255,126,255,255,255,126,255,255,255,116,255,255,255,0,0,0,0,0,0,26,64,0,0,0,0,0,0,32,64,0,0,0,0,0,0,62,64,0,0,0,0,0,192,88,64,0,0,0,0,0,0,240,63,0,0,0,0,0,0,0,64,0,0,0,0,0,0,8,64,0,0,0,0,0,0,16,64,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,64,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,4,0,0,0,4,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,6,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,64,0,0,64,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,128,64,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,0,65,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,0,0,198,66,200,239,4,0,216,239,4,0,8,181,0,0,16,188,4,0,8,181,0,0,48,188,4,0,8,181,0,0,112,188,4,0,1,0,0,0,0,0,0,0,32,0,0,0,240,233,0,0,216,225,4,0,216,225,4,0,0,226,4,0,0,226,4,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,200,208,4,0,200,208,4,0,240,208,4,0,240,208,4,0,1,0,0,0,0,0,0,0,32,0,0,0,88,206,0,0,176,209,4,0,176,209,4,0,240,208,4,0,240,208,4,0,1,0,0,0,0,0,0,0,32,0,0,0,160,220,1,0,176,188,4,0,176,188,4,0,216,188,4,0,216,188,4,0,1,0,0,0,0,0,0,0,32,0,0,0,160,220,1,0,152,189,4,0,152,189,4,0,216,188,4,0,216,188,4,0,2,0,0,0,100,0,0,0,96,208,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,190,4,0,0,0,0,0,0,0,0,0,0,0,0,0,80,190,4,0,0,0,0,0,0,0,0,0,0,0,0,0,120,190,4,0,0,0,0,0,0,0,0,0,0,0,0,0,160,190,4,0,0,0,0,0,200,190,4,0,240,190,4,0,0,0,0,0,0,0,0,0,24,191,4,0,64,191,4,0,0,0,0,0,0,0,0,0,104,191,4,0,144,191,4,0,0,0,0,0,0,0,0,0,184,191,4,0,224,191,4,0,0,0,0,0,0,0,0,0,8,192,4,0,48,192,4,0,88,192,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,192,189,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,10,10,10,11,11,12,14,18,7,5,5,6,8,9,10,12,14,17,9,5,4,5,6,8,10,11,13,19,9,5,4,4,5,6,9,10,12,17,8,6,5,4,4,5,7,10,11,15,8,7,7,6,5,5,6,9,11,14,8,9,8,7,6,5,6,7,11,14,9,11,11,9,7,6,6,6,9,14,11,14,15,13,9,8,7,7,9,14,13,15,19,17,12,11,10,9,10,14,0,0,0,0,4,0,0,0,81,0,0,0,248,207,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,80,208,4,0,0,0,0,0,4,0,0,0,113,2,0,0,104,205,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,224,207,4,0,0,0,0,0,2,0,0,0,81,0,0,0,232,204,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,64,205,4,0,0,0,0,0,2,0,0,0,33,1,0,0,120,203,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,160,204,4,0,0,0,0,0,4,0,0,0,81,0,0,0,16,203,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,104,203,4,0,0,0,0,0,2,0,0,0,121,0,0,0,96,202,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,224,202,4,0,0,0,0,0,2,0,0,0,169,0,0,0,120,201,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,40,202,4,0,0,0,0,0,2,0,0,0,25,0,0,0,64,201,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,96,201,4,0,0,0,0,0,2,0,0,0,169,0,0,0,88,200,4,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,8,201,4,0,0,0,0,0,2,0,0,0,121,0,0,0,168,199,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,40,200,4,0,0,0,0,0,2,0,0,0,225,0,0,0,128,198,4,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,104,199,4,0,0,0,0,0,2,0,0,0,185,1,0,0,104,196,4,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,40,198,4,0,0,0,0,0,2,0,0,0,225,0,0,0,64,195,4,0,1,0,0,0,0,117,153,225,0,24,61,97,4,0,0,0,0,0,0,0,40,196,4,0,0,0,0,0,2,0,0,0,105,1,0,0,128,193,4,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,240,194,4,0,0,0,0,0,1,0,0,0,49,0,0,0,128,192,4,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,184,192,4,0,0,0,0,0,2,3,4,4,4,5,5,6,5,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,7,8,8,8,8,8,8,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,6,9,7,10,8,12,12,13,13,14,14,4,7,7,9,9,9,8,9,8,10,9,11,9,14,9,14,10,13,11,4,7,7,9,9,9,9,8,9,10,10,11,11,12,13,12,13,14,15,7,9,9,10,11,10,10,10,10,11,12,13,13,13,14,17,14,15,16,7,9,9,10,10,10,10,10,10,11,12,13,13,14,14,15,15,18,18,8,9,9,11,10,11,11,11,12,13,12,14,14,16,15,15,17,18,15,8,9,9,10,10,11,11,11,11,13,13,14,14,15,15,15,16,16,18,7,9,8,10,10,11,11,12,12,14,14,15,15,16,16,15,17,16,18,8,9,9,10,10,11,12,12,12,13,13,16,15,17,16,17,18,17,18,9,10,10,12,11,13,13,14,13,14,14,15,17,16,18,17,18,17,18,9,10,10,12,11,12,13,13,14,15,16,14,15,16,18,18,18,18,17,11,11,11,13,13,14,14,16,15,15,15,16,15,15,18,18,18,17,16,11,11,12,13,13,15,14,15,16,16,16,17,16,15,18,17,18,16,18,12,13,13,15,15,15,16,18,16,17,16,17,16,17,17,17,18,18,17,13,13,13,15,13,16,15,17,16,16,16,18,18,18,18,16,17,17,18,13,15,14,15,15,18,17,18,18,18,16,18,17,18,17,18,16,17,17,14,14,14,15,16,17,16,18,18,18,17,18,17,18,18,18,16,16,16,14,17,16,17,15,16,18,18,17,18,17,18,17,18,18,18,17,18,17,15,16,15,18,15,18,17,16,18,18,18,18,18,18,17,18,16,18,17,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,5,3,9,8,9,9,9,9,9,9,9,9,9,9,5,7,8,9,9,9,9,9,9,9,9,9,9,9,9,5,7,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,3,5,5,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,5,6,6,7,7,8,8,9,9,9,9,9,9,9,9,9,9,10,10,10,10,5,6,6,7,7,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,8,8,9,8,9,9,9,9,9,9,10,10,10,10,10,10,10,10,7,7,7,8,8,9,9,9,9,9,9,9,9,10,9,10,10,10,9,10,9,8,8,8,9,8,9,9,9,9,10,9,10,10,10,10,10,10,10,10,10,10,8,8,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,8,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,7,7,8,8,7,7,9,8,10,9,11,11,4,7,6,9,8,9,9,9,9,10,9,11,9,12,9,4,6,7,8,8,9,9,9,9,10,10,10,11,11,12,7,9,8,10,10,11,11,10,10,11,11,12,12,13,12,7,8,8,10,10,10,11,10,10,11,11,11,12,12,13,8,9,9,11,11,11,11,11,11,12,12,13,13,13,13,8,9,9,11,11,11,11,11,11,12,12,13,13,13,14,8,9,9,10,10,11,11,12,11,13,13,14,13,14,14,8,9,9,10,10,11,11,12,12,12,12,13,13,14,14,9,10,10,11,11,12,12,13,12,13,13,14,14,15,15,9,10,10,11,11,12,12,12,13,13,13,14,14,14,15,10,11,11,12,12,13,13,14,13,14,14,15,14,15,15,10,11,11,12,12,13,12,13,14,14,14,14,14,15,15,11,12,12,13,13,13,13,14,14,15,14,15,15,16,16,11,12,12,13,13,13,13,14,14,14,15,15,15,16,16,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,5,5,7,7,7,7,7,7,8,8,5,6,6,7,7,7,7,8,8,8,8,5,6,6,7,7,7,7,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,8,9,9,10,10,4,6,6,8,8,9,9,9,9,10,10,11,10,4,6,6,8,8,9,9,9,9,10,10,11,11,7,8,8,10,9,10,10,10,10,11,11,12,12,7,8,8,10,10,10,10,10,10,11,11,12,12,8,9,9,10,10,11,11,11,11,12,12,13,13,8,9,9,10,10,11,11,11,11,12,12,13,13,8,9,9,11,10,11,11,12,12,13,13,14,13,8,9,9,10,10,11,11,12,12,13,13,13,13,9,10,10,11,11,12,12,13,13,13,13,14,14,9,10,10,11,11,12,12,13,13,13,13,14,14,10,11,11,12,12,13,13,14,13,14,14,15,14,10,11,11,12,12,13,13,14,13,14,14,15,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,4,7,7,8,8,8,8,10,10,11,11,4,6,6,7,7,9,9,9,9,10,10,11,11,4,6,6,7,7,9,9,9,9,10,10,11,11,7,8,8,9,9,9,9,10,10,11,11,12,12,7,7,7,9,8,10,9,10,10,11,11,12,12,8,9,9,9,10,10,10,11,11,12,12,13,13,8,9,9,10,9,10,10,11,11,12,12,13,13,8,9,9,10,10,11,11,11,11,12,12,13,13,8,9,9,10,10,11,11,12,11,12,12,13,13,10,10,10,11,11,12,12,12,12,13,13,14,14,10,10,10,11,11,12,12,12,12,13,13,14,14,11,11,11,12,12,13,13,13,13,14,14,14,14,11,11,11,12,12,13,13,13,13,14,14,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,5,5,6,6,7,7,8,8,8,8,5,6,6,7,7,7,7,8,8,8,8,5,6,6,6,7,7,7,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,6,7,7,7,7,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,8,8,8,8,8,8,8,8,9,9,8,8,8,8,8,8,8,9,9,9,9,8,8,8,8,8,8,8,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,8,7,9,9,7,9,10,5,8,8,7,10,9,7,10,9,5,8,8,8,11,10,8,10,10,7,10,10,9,9,12,10,12,12,7,10,10,9,12,10,10,11,12,5,8,8,8,10,10,8,11,11,7,11,10,10,12,11,9,10,12,7,10,11,10,12,12,9,12,9,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,5,6,6,7,7,8,8,9,9,10,10,11,11,11,11,5,5,5,7,6,8,7,9,9,9,9,10,10,11,11,12,12,5,5,5,6,6,7,8,8,9,9,9,10,10,11,11,12,12,6,7,6,7,7,8,8,9,9,9,9,10,10,11,11,12,12,6,6,7,7,7,8,8,9,9,9,9,10,10,11,11,12,12,7,8,8,8,8,9,9,9,9,10,10,11,11,11,11,12,12,7,7,8,8,8,9,9,9,9,10,10,11,11,11,11,12,12,8,9,9,9,9,9,9,10,10,10,10,11,11,12,12,12,12,8,9,9,9,9,9,9,10,10,10,10,11,11,12,12,12,12,9,9,9,9,9,10,10,10,10,10,11,11,11,12,12,13,13,9,9,9,9,9,10,10,10,10,11,10,11,11,12,12,13,13,10,10,10,10,10,11,11,11,11,11,11,11,12,12,12,13,13,10,10,10,10,10,11,11,11,11,11,11,12,11,12,12,13,13,11,11,11,11,11,11,11,12,12,12,12,12,12,13,13,13,13,11,11,11,11,11,11,11,12,12,12,12,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,13,13,13,13,13,14,14,11,12,12,12,12,12,12,12,13,13,13,13,13,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,4,6,6,7,7,9,9,4,5,5,6,6,8,7,9,9,4,5,5,6,6,7,8,9,9,6,6,6,7,7,8,8,10,10,6,6,6,7,7,8,8,10,10,7,8,7,8,8,9,9,11,10,7,7,8,8,8,9,9,10,11,9,9,9,10,10,11,10,11,11,9,9,9,10,10,10,11,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,5,7,7,9,9,5,7,7,9,9,9,10,9,11,11,9,9,9,11,11,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,9,10,10,11,12,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,9,10,10,12,11,10,10,10,12,12,9,10,10,12,12,10,10,10,12,12,9,10,10,12,12,12,12,12,14,14,11,12,12,13,14,9,10,10,12,12,9,10,10,12,12,10,10,10,12,12,11,12,12,14,13,12,12,12,14,13,5,7,7,9,9,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,10,10,10,12,12,7,8,8,11,10,8,9,9,11,11,8,9,9,11,11,10,11,11,12,13,10,11,11,12,13,7,8,8,10,10,8,9,8,11,10,8,9,9,11,11,10,11,10,13,12,10,11,11,13,13,10,11,10,13,12,10,11,11,13,13,10,11,11,13,13,12,12,13,13,14,12,13,13,14,14,9,10,10,12,12,10,11,10,13,12,10,11,11,13,13,12,13,12,14,13,12,13,13,14,15,5,7,7,9,10,7,8,8,10,10,7,8,8,10,10,10,10,10,12,12,10,10,11,12,12,7,8,8,10,10,8,9,9,11,11,8,8,9,10,11,10,11,11,13,13,10,10,11,12,13,7,8,8,10,10,8,9,9,11,11,8,9,9,11,11,10,11,11,13,12,10,11,11,13,12,9,10,10,12,12,10,11,11,13,13,10,10,11,12,13,12,13,13,15,14,12,12,13,12,14,9,10,11,12,13,10,11,11,13,13,10,11,11,13,13,12,13,13,14,14,12,13,12,14,13,8,10,10,12,12,9,11,10,13,12,9,10,10,12,13,12,13,13,14,14,12,12,12,14,14],"i8",L3,R.GLOBAL_BASE+304880),d3([9,10,10,13,13,10,11,11,13,13,10,11,11,13,13,13,13,13,14,15,12,13,13,14,15,9,10,10,12,13,10,11,10,13,13,10,11,11,12,13,12,13,12,15,14,12,13,13,14,15,11,12,12,15,14,12,12,13,14,15,12,13,13,15,14,13,13,15,14,16,14,14,14,16,15,11,12,12,14,14,11,12,12,14,14,12,13,13,14,15,13,14,13,15,13,14,14,14,15,16,8,9,10,12,12,9,10,10,13,12,9,10,11,12,13,12,12,12,14,14,12,13,13,14,14,9,10,10,13,12,10,11,11,13,13,10,10,11,13,13,12,13,13,15,14,12,12,13,14,15,9,10,10,13,13,10,11,11,13,13,10,11,11,13,13,12,13,13,14,14,13,13,13,15,15,11,12,12,14,13,12,13,13,15,14,11,12,12,14,14,14,14,14,16,15,13,13,14,13,16,11,12,12,14,14,12,13,13,14,15,12,13,12,14,14,14,14,14,16,16,14,15,13,16,14,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,7,5,7,7,5,7,7,7,9,9,7,9,9,5,7,7,7,9,9,8,9,9,5,7,7,8,9,9,7,9,9,7,9,9,9,10,11,9,10,10,7,9,9,9,10,9,9,10,11,5,8,7,7,9,9,8,9,9,7,9,9,9,11,10,9,9,10,7,9,9,9,10,10,9,11,10,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,8,11,13,13,15,16,19,19,19,19,11,8,8,9,9,11,13,15,19,20,14,8,7,7,8,9,12,13,15,20,15,9,6,5,5,7,10,12,14,18,14,9,7,5,3,4,7,10,12,16,13,10,8,6,3,3,5,8,11,14,11,10,9,7,5,4,4,6,11,14,10,10,10,8,6,5,5,6,10,14,10,10,10,9,8,7,7,7,10,14,11,12,12,12,11,10,10,10,12,16,0,0,0,0,2,0,0,0,100,0,0,0,112,225,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,104,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,144,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,184,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,210,4,0,0,0,0,0,0,0,0,0,0,0,0,0,8,211,4,0,0,0,0,0,48,211,4,0,88,211,4,0,0,0,0,0,0,0,0,0,128,211,4,0,168,211,4,0,0,0,0,0,0,0,0,0,208,211,4,0,248,211,4,0,32,212,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,216,209,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,6,10,8,12,8,14,8,14,19,5,3,5,5,7,6,11,7,16,19,7,5,6,7,7,9,11,12,19,19,6,4,7,5,7,6,10,7,18,18,8,6,7,7,7,7,8,9,18,18,7,5,8,5,7,5,8,6,18,18,12,9,10,9,9,9,8,9,18,18,8,7,10,6,8,5,6,4,11,18,11,15,16,12,11,8,8,6,9,18,14,18,18,18,16,16,16,13,16,18,0,0,0,0,4,0,0,0,81,0,0,0,8,225,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,96,225,4,0,0,0,0,0,4,0,0,0,81,0,0,0,160,224,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,248,224,4,0,0,0,0,0,4,0,0,0,113,2,0,0,16,222,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,224,4,0,0,0,0,0,4,0,0,0,113,2,0,0,128,219,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,248,221,4,0,0,0,0,0,2,0,0,0,81,0,0,0,0,219,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,88,219,4,0,0,0,0,0,2,0,0,0,81,0,0,0,128,218,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,216,218,4,0,0,0,0,0,4,0,0,0,81,0,0,0,24,218,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,112,218,4,0,0,0,0,0,2,0,0,0,121,0,0,0,104,217,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,232,217,4,0,0,0,0,0,2,0,0,0,121,0,0,0,184,216,4,0,1,0,0,0,0,128,187,224,0,0,118,96,4,0,0,0,0,0,0,0,56,217,4,0,0,0,0,0,2,0,0,0,121,0,0,0,8,216,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,136,216,4,0,0,0,0,0,2,0,0,0,225,0,0,0,224,214,4,0,1,0,0,0,0,228,91,225,0,224,255,96,4,0,0,0,0,0,0,0,200,215,4,0,0,0,0,0,2,0,0,0,225,0,0,0,184,213,4,0,1,0,0,0,0,192,221,224,0,0,145,96,4,0,0,0,0,0,0,0,160,214,4,0,0,0,0,0,2,0,0,0,33,1,0,0,72,212,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,112,213,4,0,0,0,0,0,1,6,6,7,8,8,11,10,9,9,11,9,10,9,11,11,9,6,7,6,11,8,11,9,10,10,11,9,11,10,10,10,11,9,5,7,7,8,8,10,11,8,8,11,9,9,10,11,9,10,11,8,9,6,8,8,9,9,10,10,11,11,11,9,11,10,9,11,8,8,8,9,8,9,10,11,9,9,11,11,10,9,9,11,10,8,11,8,9,8,11,9,10,9,10,11,11,10,10,9,10,10,8,8,9,10,10,10,9,11,9,10,11,11,11,11,10,9,11,9,9,11,11,10,8,11,11,11,9,10,10,11,10,11,11,9,11,10,9,11,10,10,10,10,9,11,10,11,10,9,9,10,11,9,8,10,11,11,10,10,11,9,11,10,11,11,10,11,9,9,8,10,8,9,11,9,8,10,10,9,11,10,11,10,11,9,11,8,10,11,11,11,11,10,10,11,11,11,11,10,11,11,10,9,8,10,10,9,11,10,11,11,11,9,9,9,11,11,11,10,10,9,9,10,9,11,11,11,11,8,10,11,10,11,11,10,11,11,9,9,9,10,9,11,9,11,11,11,11,11,10,11,11,10,11,10,11,11,9,11,10,11,10,9,10,9,10,10,11,11,11,11,9,10,9,10,11,11,10,11,11,11,11,11,11,10,11,11,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,6,5,9,9,10,10,6,7,9,9,10,10,10,10,5,10,8,10,8,10,10,8,8,10,9,10,10,10,10,5,8,9,10,10,10,10,8,10,10,10,10,10,10,10,9,10,10,10,10,10,10,9,9,10,10,10,10,10,10,9,9,8,9,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,8,10,10,10,10,10,10,10,10,10,10,10,10,10,6,8,8,10,10,10,8,10,10,10,10,10,10,10,10,5,8,8,10,10,10,9,9,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,5,5,6,6,7,7,8,8,8,8,4,6,6,7,7,8,7,8,8,8,8,4,6,6,7,7,7,7,8,8,8,8,6,7,7,7,7,8,8,8,8,8,9,6,7,7,7,7,8,8,8,8,9,9,7,7,7,8,8,8,8,9,9,9,9,7,7,7,8,8,8,8,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,5,8,8,10,10,12,12,4,7,7,8,8,9,9,12,11,14,13,4,7,7,7,8,9,10,11,11,13,12,5,8,8,9,9,11,11,12,13,15,14,5,7,8,9,9,11,11,13,13,17,15,8,9,10,11,11,12,13,17,14,17,16,8,10,9,11,11,12,12,13,15,15,17,10,11,11,12,13,14,15,15,16,16,17,9,11,11,12,12,14,15,17,15,15,16,11,14,12,14,15,16,15,16,16,16,15,11,13,13,14,14,15,15,16,16,15,16,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,4,6,5,7,7,8,8,8,8,8,8,4,5,6,7,7,8,8,8,8,8,8,6,7,7,8,8,8,8,9,9,9,9,6,7,7,8,8,8,8,9,9,9,9,7,8,8,8,8,9,9,9,10,9,10,7,8,8,8,8,9,9,9,9,10,9,8,8,8,9,9,10,10,10,10,10,10,8,8,8,9,9,9,9,10,10,10,10,8,8,8,9,9,9,10,10,10,10,10,8,8,8,9,9,10,10,10,10,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,4,8,8,4,8,8,5,11,9,8,12,11,8,12,11,5,10,11,8,11,12,8,11,12,4,11,11,11,14,13,10,13,13,8,14,13,12,14,16,12,16,15,8,14,14,13,16,14,12,15,16,4,11,11,10,14,13,11,14,14,8,15,14,12,15,15,12,14,16,8,14,14,11,16,15,12,15,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,6,6,7,7,9,9,4,4,4,6,6,8,8,9,9,4,4,4,6,6,7,7,9,9,6,6,6,7,7,8,8,10,9,6,6,6,7,7,8,8,9,10,7,8,7,8,8,9,9,10,10,7,8,8,8,8,9,9,10,10,9,9,9,10,10,10,10,11,11,9,9,9,10,10,10,10,11,11,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,8,8,8,10,10,4,5,6,8,8,8,8,10,10,7,8,8,9,9,9,9,11,11,7,8,8,9,9,9,9,11,11,7,8,8,10,9,11,11,12,11,7,8,8,9,9,11,11,12,12,9,10,10,11,11,12,12,13,12,9,10,10,11,11,12,12,12,13,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,4,5,5,8,8,6,6,7,9,9,6,6,6,9,9,9,10,9,11,11,9,9,10,11,11,6,7,7,10,9,7,7,8,9,10,7,7,8,10,10,10,10,10,10,12,9,9,10,11,12,6,7,7,9,9,7,8,7,10,10,7,8,7,10,10,9,10,9,12,11,10,10,9,12,10,9,10,10,12,11,10,10,10,12,12,9,10,10,12,12,12,11,12,13,13,11,11,12,12,13,9,10,10,11,12,9,10,10,12,12,10,10,10,12,12,11,12,11,14,13,11,12,12,14,13,5,7,7,10,10,7,8,8,10,10,7,8,7,10,10,10,10,10,12,12,10,10,10,12,12,6,8,7,10,10,7,7,9,10,11,8,9,9,11,10,10,10,11,11,13,10,10,11,12,13,6,8,8,10,10,7,9,8,11,10,8,9,9,10,11,10,11,10,13,11,10,11,10,12,12,10,11,10,12,11,10,10,10,12,13,10,11,11,13,12,11,11,13,11,14,12,12,13,14,14,9,10,10,12,13,10,11,10,13,12,10,11,11,12,13,11,12,11,14,12,12,13,13,15,14,5,7,7,10,10,7,7,8,10,10,7,8,8,10,10,10,10,10,11,12,10,10,10,12,12,7,8,8,10,10,8,9,8,11,10,7,8,9,10,11,10,11,11,12,12,10,10,11,11,13,7,7,8,10,10,8,8,9,10,11,7,9,7,11,10,10,11,11,13,12,11,11,10,13,11,9,10,10,12,12,10,11,11,13,12,10,10,11,12,12,12,13,13,14,14,11,11,12,12,14,10,10,11,12,12,10,11,11,12,13,10,10,10,13,12,12,13,13,15,14,12,13,10,14,11,8,10,10,12,12,10,11,10,13,13,9,10,10,12,12,12,13,13,15,14,11,12,12,13,13,9,10,10,13,12,10,10,11,13,13,10,11,10,13,12,12,12,13,14,15,12,13,12,15,13,9,10,10,12,13,10,11,10,13,12,10,10,11,12,13,12,14,12,15,13,12,12,13,14,15,11,12,11,14,13,11,11,12,14,15,12,13,12,15,14,13,11,15,11,16,13,14,14,16,15,11,12,12,14,14,11,12,11,14,13,12,12,13,14,15,13,14,12,16,12,14,14,14,15,15,8,10,10,12,12,9,10,10,12,12,10,10,11,13,13,11,12,12,13,13,12,13,13,14,15,9,10,10,13,12,10,11,11,13,12,10,10,11,13,13,12,13,12,15,14,12,12,13,13,16,9,9,10,12,13,10,10,11,12,13,10,11,10,13,13,12,12,13,13,15,13,13,12,15,13,11,12,12,14,14,12,13,12,15,14,11,11,12,13,14,14,14,14,16,15,13,12,15,12,16,11,11,12,13,14,12,13,13,14,15,10,12,11,14,13,14,15,14,16,16,13,14,11,15,11,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,8,8,6,7,7,9,9,5,7,7,9,9,9,10,9,11,11,9,9,10,11,11,6,8,8,10,10,8,9,10,11,11,8,9,10,11,11,10,11,11,12,13,10,11,11,13,13,6,8,8,10,10,8,10,9,11,11,8,10,9,11,11,10,11,11,13,13,10,11,11,13,12,9,11,11,14,13,10,12,12,15,14,10,12,11,14,13,12,13,13,15,15,12,13,13,16,14,9,11,11,13,14,10,11,12,14,14,10,12,12,14,15,12,13,13,14,15,12,13,14,15,16,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,14,8,10,10,12,12,9,11,12,12,13,10,12,12,13,13,12,12,13,14,15,11,13,13,15,15,7,10,10,12,12,9,12,11,13,12,10,11,12,13,13,12,13,12,15,14,11,12,13,15,15,10,12,12,15,14,11,13,13,16,15,11,13,13,16,15,14,13,14,15,16,13,15,15,17,17,10,12,12,14,15,11,12,12,15,15,11,13,13,15,16,13,15,13,16,15,13,15,15,16,17,5,8,8,11,11,8,10,10,12,12,8,10,10,12,12,11,12,12,14,14,11,12,12,14,14,7,10,10,12,12,10,12,12,14,13,9,11,12,12,13,12,13,13,15,15,12,12,13,13,15,7,10,10,12,13,10,11,12,13,13,10,12,11,13,13,11,13,13,15,15,12,13,12,15,14,9,12,12,15,14,11,13,13,15,15,11,12,13,15,15,13,14,14,17,19,13,13,14,16,16,10,12,12,14,15,11,13,13,15,16,11,13,12,16,15,13,15,15,17,18,14,15,13,16,15,8,11,11,15,14,10,12,12,16,15,10,12,12,16,16,14,15,15,18,17,13,14,15,16,18,9,12,12,15,15,11,12,14,16,17,11,13,13,16,15,15,15,15,17,18,14,15,16,17,17,9,12,12,15,15,11,14,13,16,16,11,13,13,16,16,15,16,15,17,18,14,16,15,17,16,12,14,14,17,16,12,14,15,18,17,13,15,15,17,17,15,15,18,16,20,15,16,17,18,18,11,14,14,16,17,13,15,14,18,17,13,15,15,17,17,15,17,15,18,17,15,17,16,19,18,8,11,11,14,15,10,12,12,15,15,10,12,12,16,16,13,14,14,17,16,14,15,15,17,17,9,12,12,15,16,11,13,13,16,16,11,12,13,16,16,14,16,15,20,17,14,16,16,17,17,9,12,12,15,16,11,13,13,16,17,11,13,13,17,16,14,15,15,17,18,15,15,15,18,18,11,14,14,17,16,13,15,15,17,17,13,14,14,18,17,15,16,16,18,19,15,15,17,17,19,11,14,14,16,17,13,15,14,17,19,13,15,14,18,17,15,17,16,18,18,15,17,15,18,16,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,5,6,6,5,6,6,5,6,6,6,7,8,6,7,8,5,6,6,6,8,7,6,8,7,5,6,6,6,8,8,6,8,8,6,8,8,7,7,10,8,9,9,6,8,8,7,9,8,8,9,10,5,6,6,6,8,8,7,8,8,6,8,8,8,10,9,7,8,9,6,8,8,8,9,9,7,10,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,7,5,8,7,7,10,10,7,9,10,5,7,8,7,10,9,7,10,10,5,8,8,8,10,10,8,10,10,7,10,10,10,11,12,10,12,13,7,10,10,9,13,11,10,12,13,5,8,8,8,10,10,8,10,10,7,10,10,10,12,12,9,11,12,7,10,11,10,12,12,10,13,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,7,10,9,11,10,15,11,13,16,6,4,6,6,7,7,10,9,12,16,10,6,5,6,6,7,10,11,16,16,9,6,7,6,7,7,10,8,14,16,11,6,5,4,5,6,8,9,15,16,9,6,6,5,6,6,9,8,14,16,12,7,6,6,5,6,6,7,13,16,8,6,7,6,5,5,4,4,11,16,9,8,9,9,7,7,6,5,13,16,14,14,16,15,16,15,16,16,16,16,0,0,0,0,2,0,0,0,64,0,0,0,136,239,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,226,4,0,0,0,0,0,0,0,0,0,0,0,0,0,232,226,4,0,0,0,0,0,0,0,0,0,0,0,0,0,16,227,4,0,0,0,0,0,0,0,0,0,0,0,0,0,56,227,4,0,0,0,0,0,0,0,0,0,0,0,0,0,96,227,4,0,0,0,0,0,136,227,4,0,176,227,4,0,0,0,0,0,0,0,0,0,216,227,4,0,0,228,4,0,40,228,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,81,0,0,0,32,239,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,120,239,4,0,0,0,0,0,4,0,0,0,81,0,0,0,184,238,4,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,16,239,4,0,0,0,0,0,4,0,0,0,113,2,0,0,40,236,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,238,4,0,0,0,0,0,4,0,0,0,113,2,0,0,152,233,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,236,4,0,0,0,0,0,2,0,0,0,81,0,0,0,24,233,4,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,112,233,4,0,0,0,0,0,2,0,0,0,169,0,0,0,48,232,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,224,232,4,0,0,0,0,0,2,0,0,0,25,0,0,0,248,231,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,24,232,4,0,0,0,0,0,4,0,0,0,81,0,0,0,144,231,4,0,1,0,0,0,0,176,19,225,0,176,19,97,2,0,0,0,0,0,0,0,232,231,4,0,0,0,0,0,2,0,0,0,225,0,0,0,104,230,4,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,80,231,4,0,0,0,0,0,2,0,0,0,185,1,0,0,80,228,4,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,16,230,4,0,0,0,0,0,1,6,6,7,8,7,7,10,9,10,9,11,10,9,11,10,9,9,9,9,10,6,8,7,9,9,8,8,10,10,9,11,11,12,12,10,9,11,9,12,10,9,6,9,8,9,12,8,8,11,9,11,11,12,11,12,12,10,11,11,10,10,11,7,10,9,9,9,9,9,10,9,10,9,10,10,12,10,10,10,11,12,10,10,7,9,9,9,10,9,9,10,10,9,9,9,11,11,10,10,10,10,9,9,12,7,9,10,9,11,9,10,9,10,11,11,11,10,11,12,9,12,11,10,10,10,7,9,9,9,9,10,12,10,9,11,12,10,11,12,12,11,9,10,11,10,11,7,9,10,10,11,10,9,10,11,11,11,10,12,12,12,11,11,10,11,11,12,8,9,10,12,11,10,10,12,12,12,12,12,10,11,11,9,11,10,12,11,11,8,9,10,10,11,12,11,11,10,10,10,12,12,12,9,10,12,12,12,12,12,8,10,11,10,10,12,9,11,12,12,11,12,12,12,12,10,12,10,10,10,10,8,12,11,11,11,10,10,11,12,12,12,12,11,12,12,12,11,11,11,12,10,9,10,10,12,10,12,10,12,12,10,10,10,11,12,12,12,11,12,12,12,11,10,11,12,12,12,11,12,12,11,12,12,11,12,12,12,12,11,12,12,10,10,10,10,11,11,12,11,12,12,12,12,12,12,12,11,12,11,10,11,11,12,11,11,9,10,10,10,12,10,10,11,9,11,12,11,12,11,12,12,10,11,10,12,9,9,9,12,11,10,11,10,12,10,12,10,12,12,12,11,11,11,11,11,10,9,10,10,11,10,11,11,12,11,10,11,12,12,12,11,11,9,12,10,12,9,10,12,10,10,11,10,11,11,12,11,10,11,10,11,11,11,11,12,11,11,10,9,10,10,10,9,11,11,10,9,12,10,11,12,11,12,12,11,12,11,12,11,10,11,10,12,11,12,11,12,11,12,10,11,10,10,12,11,10,11,11,11,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,5,5,6,5,9,10,11,11,10,10,10,10,10,10,5,8,8,8,10,10,10,10,10,10,10,10,10,10,10,5,8,9,9,9,10,10,10,10,10,10,10,10,10,10,5,10,8,10,10,10,10,10,10,10,10,10,10,10,10,4,8,9,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,5,6,6,4,6,6,6,6,4,6,6,6,6,6,6,6,7,7,6,6,6,7,7,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,10,10,12,12,13,13,18,17,3,6,6,9,9,11,11,13,13,14,14,18,17,3,6,6,9,9,11,11,13,13,14,14,17,18,7,9,9,11,11,13,13,14,14,15,15,0,0,7,9,9,11,11,13,13,14,14,15,16,19,18,10,11,11,13,13,14,14,16,15,17,18,0,0,10,11,11,13,13,14,14,15,15,16,18,0,0,11,13,13,14,14,15,15,17,17,0,19,0,0,11,13,13,14,14,14,15,16,18,0,19,0,0,13,14,14,15,15,18,17,18,18,0,19,0,0,13,14,14,15,16,16,16,18,18,19,0,0,0,16,17,17,0,17,19,19,0,19,0,0,0,0,16,19,16,17,18,0,19,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,4,4,7,7,7,7,9,9,4,6,6,8,8,8,8,9,9,4,6,6,8,8,8,8,9,9,7,8,8,9,9,9,9,11,10,7,8,8,9,9,9,9,10,11,7,8,8,9,9,10,10,11,11,7,8,8,9,9,10,10,11,11,9,9,9,10,10,11,11,12,12,9,9,9,10,10,11,11,12,12,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,3,5,5,8,8,6,6,6,9,9,6,6,6,9,9,9,10,9,11,11,9,9,9,11,11,6,7,7,10,10,7,7,8,10,10,7,7,8,10,10,10,10,10,11,12,9,10,10,11,12,6,7,7,10,10,7,8,7,10,10,7,8,7,10,10,10,11,10,12,11,10,10,10,13,10,9,10,10,12,12,10,11,10,14,12,9,11,11,13,13,11,12,13,13,13,11,12,12,15,13,9,10,10,12,13,9,11,10,12,13,10,10,11,12,13,11,12,12,12,13,11,12,12,13,13,5,7,7,10,10,7,8,8,10,10,7,8,8,10,10,10,11,10,12,13,10,10,11,12,12,6,8,8,11,10,7,8,9,10,12,8,9,9,11,11,11,10,11,11,12,10,11,11,13,12,7,8,8,10,11,8,9,8,11,10,8,9,9,11,11,10,12,10,13,11,10,11,11,13,13,10,11,10,14,13,10,10,11,13,13,10,12,11,14,13,12,11,13,12,13,13,12,13,14,14,10,11,11,13,13,10,11,10,12,13,10,12,12,12,14,12,12,12,14,12,12,13,12,17,15,5,7,7,10,10,7,8,8,10,10,7,8,8,11,10,10,10,11,12,12,10,11,11,12,13,6,8,8,11,10,8,9,9,11,11,7,8,9,10,11,11,11,11,12,12,10,10,11,12,13,6,8,8,10,11,8,9,9,11,11,7,9,7,11,10,10,12,12,13,13,11,11,10,13,11,9,11,10,14,13,11,11,11,15,13,10,10,11,13,13,12,13,13,14,14,12,11,12,12,13,10,11,11,12,13,10,11,12,13,13,10,11,10,13,12,12,12,13,14,0,12,13,11,13,11,8,10,10,13,13,10,11,11,14,13,10,11,11,13,12,13,14,14,14,15,12,12,12,15,14,9,11,10,13,12,10,10,11,13,14,11,11,11,15,12,13,12,14,15,16,13,13,13,14,13,9,11,11,12,12,10,12,11,13,13,10,11,11,13,14,13,13,13,15,15,13,13,14,17,15,11,12,12,14,14,10,11,12,13,15,12,13,13,0,15,13,11,14,12,16,14,16,14,0,15,11,12,12,14,16,11,13,12,16,15,12,13,13,14,15,12,14,12,15,13,15,14,14,16,16,8,10,10,13,13,10,11,10,13,14,10,11,11,13,13,13,13,12,14,14,14,13,13,16,17,9,10,10,12,14,10,12,11,14,13,10,11,12,13,14,12,12,12,15,15,13,13,13,14,14,9,10,10,13,13,10,11,12,12,14,10,11,10,13,13,13,13,13,14,16,13,13,13,14,14,11,12,13,15,13,12,14,13,14,16,12,12,13,13,14,13,14,14,17,15,13,12,17,13,16,11,12,13,14,15,12,13,14,14,17,11,12,11,14,14,13,16,14,16,0,14,15,11,15,11,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,7,7,6,7,7,8,8,6,7,8,8,8,8,9,9,11,11,8,9,9,11,11,6,9,8,10,10,8,10,10,11,11,8,10,10,11,11,10,11,10,13,12,9,11,10,13,13,6,8,9,10,10,8,10,10,11,11,8,10,10,11,11,9,10,11,13,12,10,10,11,12,12,8,11,11,14,13,10,12,11,15,13,9,12,11,15,14,12,14,13,16,14,12,13,13,17,14,8,11,11,13,14,9,11,12,14,15,10,11,12,13,15,11,13,13,14,16,12,13,14,14,16,5,9,9,11,11,9,11,11,12,12,8,11,11,12,12,11,12,12,15,14,10,12,12,15,15,8,11,11,13,12,10,12,12,13,13,10,12,12,14,13,12,12,13,14,15,11,13,13,17,16,7,11,11,13,13,10,12,12,14,13,10,12,12,13,14,12,13,12,15,14,11,13,13,15,14,9,12,12,16,15,11,13,13,17,16,10,13,13,16,16,13,14,15,15,16,13,15,14,19,17,9,12,12,14,16,11,13,13,15,16,10,13,13,17,16,13,14,13,17,15,12,15,15,16,17,5,9,9,11,11,8,11,11,13,12,9,11,11,12,12,10,12,12,14,15,11,12,12,14,14,7,11,10,13,12,10,12,12,14,13,10,11,12,13,13,11,13,13,15,16,12,12,13,15,15,7,11,11,13,13,10,13,13,14,14,10,12,12,13,13,11,13,13,16,15,12,13,13,15,14,9,12,12,15,15,10,13,13,17,16,11,12,13,15,15,12,15,14,18,18,13,14,14,16,17,9,12,12,15,16,10,13,13,15,16,11,13,13,15,16,13,15,15,17,17,13,15,14,16,15,7,11,11,15,16,10,13,12,16,17,10,12,13,15,17,15,16,16,18,17,13,15,15,17,18,8,12,12,16,16,11,13,14,17,18,11,13,13,18,16,15,17,16,17,19,14,15,15,17,16,8,12,12,16,15,11,14,13,18,17,11,13,14,18,17,15,16,16,18,17,13,16,16,18,18,11,15,14,18,17,13,14,15,18,0,12,15,15,0,17,17,16,17,17,18,14,16,18,18,0,11,14,14,17,0,12,15,14,17,19,12,15,14,18,0,15,18,16,0,17,14,18,16,18,0,7,11,11,16,15,10,12,12,18,16,10,13,13,16,15,13,15,14,17,17,14,16,16,19,18,8,12,12,16,16,11,13,13,18,16,11,13,14,17,16,14,15,15,19,18,15,16,16,0,19,8,12,12,16,17,11,13,13,17,17,11,14,13,17,17,13,15,15,17,19,15,17,17,19,0,11,14,15,19,17,12,15,16,18,18,12,14,15,19,17,14,16,17,0,18,16,16,19,17,0,11,14,14,18,19,12,15,14,17,17,13,16,14,17,16,14,17,16,18,18,15,18,15,0,18,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,5,6,6,5,6,6,5,7,7,7,8,9,7,8,9,5,7,7,7,9,8,7,9,7,4,7,7,7,9,9,7,8,8,6,9,8,7,8,11,9,11,10,6,8,9,8,11,8,9,10,11,4,7,7,7,8,8,7,9,9,6,9,8,9,11,10,8,8,11,6,8,9,9,10,11,8,11,8,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,5,7,7,5,7,8,5,8,8,8,10,10,8,10,11,5,8,8,8,10,10,8,10,10,4,9,9,9,12,11,8,11,11,8,12,11,10,12,14,10,13,13,7,11,11,10,14,12,11,14,14,4,9,9,8,11,11,9,11,12,7,11,11,10,13,14,10,12,14,8,11,12,10,14,14,10,13,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,5,8,7,14,8,9,19,5,2,5,5,9,6,9,19,8,4,5,7,8,9,13,19,7,4,6,5,9,6,9,19,12,8,7,9,10,11,13,19,8,5,8,6,9,6,7,19,8,8,10,7,7,4,5,19,12,17,19,15,18,13,11,18,9,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,9,0,0,0,9,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,112,199,64,0,0,0,0,0,136,211,64,0,0,0,0,0,124,229,64,0,0,0,0,0,255,244,64,200,47,1,0,32,240,4,0,200,47,1,0,64,240,4,0,200,47,1,0,128,240,4,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,248,45,5,0,248,45,5,0,32,46,5,0,32,46,5,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,32,5,5,0,32,5,5,0,72,5,5,0,72,5,5,0,2,0,0,0,0,0,0,0,32,0,0,0,24,73,1,0,8,6,5,0,8,6,5,0,72,5,5,0,72,5,5,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,192,240,4,0,192,240,4,0,232,240,4,0,232,240,4,0,2,0,0,0,0,0,0,0,32,0,0,0,224,163,2,0,168,241,4,0,168,241,4,0,232,240,4,0,232,240,4,0,2,0,0,0,100,0,0,0,184,4,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,242,4,0,0,0,0,0,0,0,0,0,0,0,0,0,96,242,4,0,0,0,0,0,0,0,0,0,0,0,0,0,136,242,4,0,0,0,0,0,0,0,0,0,0,0,0,0,176,242,4,0,0,0,0,0,216,242,4,0,0,243,4,0,0,0,0,0,0,0,0,0,40,243,4,0,80,243,4,0,0,0,0,0,0,0,0,0,120,243,4,0,160,243,4,0,0,0,0,0,0,0,0,0,200,243,4,0,240,243,4,0,0,0,0,0,0,0,0,0,24,244,4,0,64,244,4,0,104,244,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,208,241,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,7,9,9,9,8,9,10,13,16,5,4,5,6,7,7,8,9,12,16,6,5,5,5,7,7,9,10,12,15,7,6,5,4,5,6,8,9,10,13,8,7,7,5,5,5,7,9,10,12,7,7,7,6,5,5,6,7,10,12,8,8,8,7,7,5,5,6,9,11,8,9,9,8,8,6,6,5,8,11,10,11,12,12,11,9,9,8,9,12,13,14,15,15,14,12,12,11,11,13,0,0,0,0,4,0,0,0,81,0,0,0,80,4,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,4,5,0,0,0,0,0,4,0,0,0,113,2,0,0,192,1,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,4,5,0,0,0,0,0,2,0,0,0,81,0,0,0,64,1,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,152,1,5,0,0,0,0,0,2,0,0,0,33,1,0,0,208,255,4,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,248,0,5,0,0,0,0,0,4,0,0,0,81,0,0,0,104,255,4,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,192,255,4,0,0,0,0,0,2,0,0,0,121,0,0,0,184,254,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,56,255,4,0,0,0,0,0,2,0,0,0,169,0,0,0,208,253,4,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,128,254,4,0,0,0,0,0,2,0,0,0,25,0,0,0,152,253,4,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,184,253,4,0,0,0,0,0,2,0,0,0,169,0,0,0,176,252,4,0,1,0,0,0,0,128,208,224,0,0,118,96,4,0,0,0,0,0,0,0,96,253,4,0,0,0,0,0,2,0,0,0,121,0,0,0,0,252,4,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,128,252,4,0,0,0,0,0,2,0,0,0,225,0,0,0,216,250,4,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,192,251,4,0,0,0,0,0,2,0,0,0,185,1,0,0,192,248,4,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,128,250,4,0,0,0,0,0,2,0,0,0,33,1,0,0,80,247,4,0,1,0,0,0,0,24,157,225,0,24,61,97,5,0,0,0,0,0,0,0,120,248,4,0,0,0,0,0,2,0,0,0,105,1,0,0,144,245,4,0,1,0,0,0,0,144,27,225,0,128,184,96,5,0,0,0,0,0,0,0,0,247,4,0,0,0,0,0,1,0,0,0,49,0,0,0,144,244,4,0,1,0,0,0,0,0,152,224,0,0,16,96,6,0,0,0,0,0,0,0,200,244,4,0,0,0,0,0,2,4,4,4,4,5,5,5,5,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,24,0,0,0,23,0,0,0,25,0,0,0,22,0,0,0,26,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,19,0,0,0,29,0,0,0,18,0,0,0,30,0,0,0,17,0,0,0,31,0,0,0,16,0,0,0,32,0,0,0,15,0,0,0,33,0,0,0,14,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,12,0,0,0,36,0,0,0,11,0,0,0,37,0,0,0,10,0,0,0,38,0,0,0,9,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,7,0,0,0,41,0,0,0,6,0,0,0,42,0,0,0,5,0,0,0,43,0,0,0,4,0,0,0,44,0,0,0,3,0,0,0,45,0,0,0,2,0,0,0,46,0,0,0,1,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,7,8,8,10,9,11,10,13,11,14,13,6,6,6,8,8,8,8,8,7,9,8,11,9,13,11,14,12,14,13,5,6,6,8,8,8,8,8,8,9,9,11,11,13,11,14,13,15,15,17,8,8,8,8,9,9,9,8,11,9,12,10,13,11,14,12,14,13,17,8,8,8,8,9,9,9,9,10,10,11,11,13,13,13,14,16,15,17,12,12,8,8,9,9,10,10,11,11,12,11,13,12,13,12,14,13,16,12,12,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,17,17,17,9,9,9,9,11,11,12,12,12,13,13,13,16,14,14,14,17,17,17,9,8,9,8,11,10,12,12,13,13,14,14,15,15,16,16,17,17,17,12,12,10,10,11,12,12,13,13,14,13,15,15,14,16,15,17,17,17,12,12,10,8,12,9,13,12,14,14,15,14,15,16,16,16,17,17,17,17,17,11,11,12,12,14,14,14,16,15,16,15,16,15,17,17,17,17,17,17,11,9,12,10,13,11,15,14,16,16,17,16,16,15,17,17,17,17,17,15,15,12,12,14,14,15,16,16,15,16,16,17,17,17,17,17,17,17,14,14,12,10,14,11,15,12,17,16,15,16,17,16,17,17,17,17,17,17,17,13,13,14,14,14,16,17,17,16,17,17,17,17,17,17,17,17,17,17,13,9,13,12,15,13,16,16,17,17,17,17,17,17,17,17,17,17,17,15,17,14,14,15,16,16,17,16,17,16,17,17,17,17,17,17,17,17,17,17,14,13,15,16,16,17,16,17,17],"i8",L3,R.GLOBAL_BASE+315120),d3([17,0,0,0,0,0,0,0,9,0,0,0,8,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,6,0,0,0,12,0,0,0,5,0,0,0,13,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,2,0,0,0,16,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,4,3,10,8,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,2,4,4,6,6,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,11,11,11,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,10,11,10,7,7,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,11,11,11,8,8,8,8,9,9,9,9,9,9,9,9,10,9,10,10,10,10,11,11,11,8,8,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,11,11,11,8,8,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,11,11,11,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,10,10,6,6,6,8,8,9,9,8,8,9,9,10,10,11,11,6,5,5,8,7,9,9,8,8,9,9,10,10,11,11,20,8,8,8,8,9,9,9,9,10,10,11,10,12,11,20,8,8,8,8,9,9,9,9,10,10,11,11,12,12,20,12,12,9,9,10,10,10,10,11,11,12,12,13,12,20,13,13,9,9,10,10,10,10,11,11,12,12,13,13,20,20,20,9,9,9,9,10,10,11,11,12,12,13,12,20,20,20,9,9,9,8,10,10,12,11,12,12,13,13,20,20,20,13,13,10,10,11,11,12,12,13,13,13,13,20,20,20,13,13,10,10,11,10,12,11,13,13,14,14,20,20,20,20,20,11,11,11,11,12,12,13,13,14,14,20,20,20,20,20,11,10,11,11,13,11,13,13,14,14,20,20,21,21,21,14,14,11,12,13,13,13,13,14,14,21,21,21,21,21,15,15,12,11,13,12,14,13,15,14,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,2,4,4,6,6,7,7,7,7,7,7,9,9,9,6,7,7,7,7,7,8,8,9,9,9,6,6,7,7,7,7,8,8,9,9,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,8,8,8,8,9,9,9,7,7,7,7,7,7,8,8,9,9,9,7,7,8,8,7,7,8,8,9,9,9,9,9,8,8,7,7,8,8,9,9,9,9,9,8,8,7,7,8,8,9,9,9,9,9,7,7,7,7,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,7,7,8,8,8,8,10,9,10,10,5,5,5,7,7,9,9,10,10,11,10,12,11,6,5,5,7,7,9,9,10,10,11,11,12,12,20,7,7,7,7,9,9,10,10,11,11,12,12,20,7,7,7,7,9,9,11,10,12,11,12,12,20,11,11,8,8,10,10,11,11,12,12,13,13,20,12,12,8,8,9,9,11,11,12,12,13,13,20,20,21,10,10,10,10,11,11,12,12,13,13,21,21,21,10,10,10,10,11,11,12,12,13,13,21,21,21,14,14,11,11,12,12,13,13,13,14,21,21,21,16,15,11,11,12,11,13,13,14,14,21,21,21,21,21,13,13,12,12,13,13,14,14,21,21,21,21,21,13,13,12,12,13,13,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,8,7,8,8,9,9,10,10,5,5,5,7,7,9,9,9,9,11,11,12,12,6,5,5,7,7,9,9,10,9,11,11,12,12,0,7,7,7,7,9,9,10,10,11,11,12,12,0,7,7,7,7,9,9,10,10,11,11,12,12,0,11,11,8,8,10,10,11,11,12,12,13,13,0,12,12,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,6,6,6,6,7,7,7,7,11,10,10,6,6,7,7,8,8,8,8,10,10,10,6,6,7,7,8,8,8,8,11,11,11,7,7,8,8,8,8,9,9,11,11,11,6,7,8,8,8,8,9,9,11,11,11,7,7,8,8,8,8,8,8,11,11,11,7,7,8,8,8,8,9,9,11,11,11,8,8,8,8,8,8,8,8,11,11,11,11,11,8,8,8,8,8,8,12,11,11,11,11,8,8,8,8,8,8,12,11,11,11,11,7,7,8,8,8,8,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,5,7,7,6,7,7,4,6,6,10,11,10,10,10,11,4,6,6,10,10,11,10,11,10,5,10,10,9,12,11,10,12,12,7,10,10,12,12,12,12,13,13,7,11,10,11,12,12,12,13,13,6,11,10,10,12,12,11,12,12,7,11,10,12,13,13,12,12,12,7,10,11,12,13,13,12,12,12,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,6,7,7,8,8,8,8,9,9,0,0,0,6,6,7,7,8,8,8,8,9,9,10,10,11,10,0,0,0,6,6,7,7,8,8,8,8,9,9,10,10,10,10,0,0,0,6,6,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,6,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,10,10,11,11,11,11,12,12,0,0,0,7,7,8,8,9,9,10,10,11,11,11,11,12,12,0,0,0,7,8,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,8,8,9,9,10,10,11,11,12,12,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,5,5,7,7,8,8,0,0,0,6,6,8,8,9,9,0,0,0,6,6,8,8,9,9,0,0,0,7,7,8,9,10,10,0,0,0,7,7,9,9,10,10,0,0,0,8,8,9,9,11,11,0,0,0,7,7,9,9,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,2,4,4,7,7,0,0,0,8,8,0,0,0,8,8,0,0,0,8,8,0,0,0,8,8,4,4,4,8,7,0,0,0,8,8,0,0,0,8,8,0,0,0,9,9,0,0,0,9,9,4,4,4,7,8,0,0,0,8,8,0,0,0,8,8,0,0,0,9,9,0,0,0,9,9,7,8,8,10,9,0,0,0,12,11,0,0,0,11,12,0,0,0,14,13,0,0,0,14,14,7,8,8,9,10,0,0,0,11,12,0,0,0,11,11,0,0,0,14,14,0,0,0,14,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,8,11,11,0,0,0,12,11,0,0,0,12,12,0,0,0,13,12,0,0,0,13,13,8,8,8,11,11,0,0,0,11,11,0,0,0,12,12,0,0,0,13,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,8,12,11,0,0,0,12,12,0,0,0,12,11,0,0,0,13,13,0,0,0,13,13,8,8,8,11,12,0,0,0,11,12,0,0,0,11,12,0,0,0,13,14,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,9,14,14,0,0,0,13,13,0,0,0,13,13,0,0,0,13,12,0,0,0,13,13,8,9,9,14,14,0,0,0,13,13,0,0,0,13,13,0,0,0,12,13,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,9,14,14,0,0,0,13,13,0,0,0,13,13,0,0,0,13,13,0,0,0,13,12,8,9,9,14,14,0,0,0,13,13,0,0,0,13,13,0,0,0,13,13,0,0,0,12,12,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,3,3,0,0,0,0,0,0,4,5,5,0,0,0,0,0,0,4,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,7,10,12,11,12,13,15,16,18,15,10,8,8,8,9,10,12,13,14,17,10,7,7,7,7,8,10,12,15,18,10,7,7,5,5,6,8,10,13,15,10,7,6,5,4,4,6,9,12,15,11,7,7,5,4,3,4,7,11,13,12,9,8,7,5,4,4,5,10,13,11,11,11,9,7,5,5,5,9,12,13,12,13,12,10,8,8,7,9,13,14,14,14,14,13,11,11,10,10,13,0,0,0,0,2,0,0,0,100,0,0,0,144,45,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,232,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,16,7,5,0,0,0,0,0,0,0,0,0,0,0,0,0,56,7,5,0,0,0,0,0,96,7,5,0,136,7,5,0,0,0,0,0,0,0,0,0,176,7,5,0,216,7,5,0,0,0,0,0,0,0,0,0,0,8,5,0,40,8,5,0,80,8,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,100,0,0,0,48,6,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,5,20,7,10,7,8,10,11,11,4,2,20,5,8,6,7,9,10,10,20,20,20,20,19,19,19,19,19,19,7,5,19,6,10,7,9,11,13,17,11,8,19,10,7,7,8,10,11,15,7,5,19,7,7,5,6,9,11,16,7,6,19,8,7,6,6,7,9,13,9,9,19,11,9,8,6,7,8,13,12,14,19,16,13,10,9,8,9,13,14,17,19,18,18,17,12,11,11,13,0,0,0,0,8,0,0,0,161,25,0,0,216,19,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,128,45,5,0,0,0,0,0,4,0,0,0,113,2,0,0,72,17,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,19,5,0,0,0,0,0,2,0,0,0,81,0,0,0,200,16,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,32,17,5,0,0,0,0,0,2,0,0,0,81,0,0,0,72,16,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,160,16,5,0,0,0,0,0,2,0,0,0,33,1,0,0,216,14,5,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,0,16,5,0,0,0,0,0,4,0,0,0,81,0,0,0,112,14,5,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,200,14,5,0,0,0,0,0,2,0,0,0,121,0,0,0,192,13,5,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,64,14,5,0,0,0,0,0,2,0,0,0,169,0,0,0,216,12,5,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,136,13,5,0,0,0,0,0,2,0,0,0,25,0,0,0,160,12,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,12,5,0,0,0,0,0,2,0,0,0,169,0,0,0,184,11,5,0,1,0,0,0,0,136,93,225,0,176,19,97,4,0,0,0,0,0,0,0,104,12,5,0,0,0,0,0,2,0,0,0,225,0,0,0,144,10,5,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,120,11,5,0,0,0,0,0,2,0,0,0,185,1,0,0,120,8,5,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,56,10,5,0,0,0,0,0,1,4,4,6,6,7,7,8,7,8,8,9,9,9,9,10,10,10,9,10,10,11,12,12,8,8,8,8,9,9,9,9,10,10,10,10,10,11,11,10,12,11,11,13,11,7,7,8,8,8,8,9,9,9,10,10,10,10,9,10,10,11,11,12,11,11,8,8,8,8,9,9,10,10,10,10,11,11,11,11,11,11,11,12,11,12,12,8,8,9,9,9,9,9,10,10,10,10,10,10,11,11,11,11,11,11,12,11,9,9,9,9,10,10,10,10,11,10,11,11,11,11,11,11,12,12,12,12,11,9,9,9,9,10,10,10,10,11,11,11,11,11,11,11,11,11,12,12,12,13,9,10,10,9,11,10,10,10,10,11,11,11,11,11,10,11,12,11,12,12,11,12,11,10,9,10,10,11,10,11,11,11,11,11,11,11,11,11,12,12,11,12,12,12,10,10,10,11,10,11,11,11,11,11,11,11,11,11,11,11,12,13,12,12,11,9,10,10,11,11,10,11,11,11,12,11,11,11,11,11,12,12,13,13,12,13,10,10,12,10,11,11,11,11,11,11,11,11,11,12,12,11,13,12,12,12,12,13,12,11,11,11,11,11,11,12,11,12,11,11,11,11,12,12,13,12,11,12,12,11,11,11,11,11,12,11,11,11,11,12,11,11,12,11,12,13,13,12,12,12,12,11,11,11,11,11,12,11,11,12,11,12,11,11,11,11,13,12,12,12,12,13,11,11,11,12,12,11,11,11,12,11,12,12,12,11,12,13,12,11,11,12,12,11,12,11,11,11,12,12,11,12,11,11,11,12,12,12,12,13,12,13,12,12,12,12,11,11,12,11,11,11,11,11,11,12,12,12,13,12,11,13,13,12,12,11,12,10,11,11,11,11,12,11,12,12,11,12,12,13,12,12,13,12,12,12,12,12,11,12,12,12,11,12,11,11,11,12,13,12,13,13,13,13,13,12,13,13,12,12,13,11,11,11,11,11,12,11,11,12,11,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,4,4,4,4,8,8,12,13,14,14,14,14,14,14,6,6,6,6,6,10,9,14,14,14,14,14,14,14,14,7,6,5,6,6,10,9,12,13,13,13,13,13,13,13,13,7,7,9,9,11,11,12,13,13,13,13,13,13,13,13,7,7,8,8,11,12,13,13,13,13,13,13,13,13,13,12,12,10,10,13,12,13,13,13,13,13,13,13,13,13,12,12,10,10,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,6,6,6,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,6,6,7,7,7,7,8,8,9,9,6,5,5,7,8,8,9,8,8,9,9,10,11,6,5,5,8,8,9,9,8,8,9,10,10,11,0,8,8,8,9,9,9,9,9,10,10,11,11,0,9,9,9,8,9,9,9,9,10,10,11,11,0,13,13,9,9,10,10,10,10,11,11,12,12,0,14,13,9,9,10,10,10,10,11,11,12,12,0,0,0,10,10,9,9,11,11,12,12,13,12,0,0,0,10,10,9,9,10,10,12,12,13,13,0,0,0,13,14,11,10,11,11,12,12,13,14,0,0,0,14,14,10,10,11,11,12,12,13,13,0,0,0,0,0,12,12,12,12,13,13,14,15,0,0,0,0,0,12,12,12,12,13,13,14,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,3,5,6,7,7,7,7,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,6,6,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,7,7,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,7,7,8,8,8,8,8,8,10,10,10,8,8,8,8,8,8,9,9,10,10,10,10,10,8,8,8,8,9,9,10,10,10,10,10,9,9,8,8,9,9,10,10,10,10,10,8,8,8,8,9,9,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,6,7,6,6,4,7,7,10,9,10,10,10,9,4,7,7,10,10,10,11,10,10,6,10,10,11,11,11,11,10,10,6,10,9,11,11,11,11,10,10,6,10,10,11,11,11,11,10,10,7,11,11,11,11,11,12,12,11,6,10,10,11,10,10,11,11,11,6,10,10,10,11,10,11,11,11,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,6,6,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,8,9,10,9,10,10,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,11,12,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,12,12,13,13,0,0,0,0,0,10,10,11,10,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,10,10,11,11,12,12,13,13,13,13,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,12,12,13,13,14,14,0,0,0,0,0,0,0,12,12,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,0,0,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,5,5,6,6,8,8,0,0,0,7,7,7,7,9,9,0,0,0,7,7,7,7,9,9,0,0,0,8,8,8,8,9,9,0,0,0,8,8,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,9,9,8,8,10,10,0,0,0,10,10,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,2,3,7,7,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,8,9,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,7,9,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,7,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,9,11,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,11,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,7,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,8,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,11,10,0,0,0,0,0,0,8,9,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,9,10,11,0,0,0,0,0,0,9,11,9],"i8",L3,R.GLOBAL_BASE+325360),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,6,17,8,12,9,10,10,12,13,5,2,17,4,9,5,7,8,11,13,16,16,16,16,16,16,16,16,16,16,6,4,16,5,10,5,7,10,14,16,13,9,16,11,8,7,8,9,13,16,7,4,16,5,7,4,6,8,11,13,8,6,16,7,8,5,5,7,9,13,9,8,16,9,8,6,6,7,9,13,11,11,16,10,10,7,7,7,9,13,13,13,16,13,13,9,9,9,10,13,0,0,0,0,2,0,0,0,100,0,0,0,88,85,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,46,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,47,5,0,0,0,0,0,0,0,0,0,0,0,0,0,48,47,5,0,0,0,0,0,0,0,0,0,0,0,0,0,88,47,5,0,0,0,0,0,0,0,0,0,0,0,0,0,128,47,5,0,0,0,0,0,168,47,5,0,208,47,5,0,0,0,0,0,0,0,0,0,248,47,5,0,32,48,5,0,0,0,0,0,0,0,0,0,72,48,5,0,112,48,5,0,152,48,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,161,25,0,0,160,59,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,72,85,5,0,0,0,0,0,4,0,0,0,113,2,0,0,16,57,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,59,5,0,0,0,0,0,2,0,0,0,81,0,0,0,144,56,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,232,56,5,0,0,0,0,0,2,0,0,0,81,0,0,0,16,56,5,0,1,0,0,0,0,0,80,224,0,0,16,96,4,0,0,0,0,0,0,0,104,56,5,0,0,0,0,0,2,0,0,0,33,1,0,0,160,54,5,0,1,0,0,0,0,0,112,224,0,0,16,96,5,0,0,0,0,0,0,0,200,55,5,0,0,0,0,0,4,0,0,0,81,0,0,0,56,54,5,0,1,0,0,0,0,0,118,224,0,0,118,96,2,0,0,0,0,0,0,0,144,54,5,0,0,0,0,0,2,0,0,0,121,0,0,0,136,53,5,0,1,0,0,0,0,0,84,224,0,0,16,96,4,0,0,0,0,0,0,0,8,54,5,0,0,0,0,0,2,0,0,0,169,0,0,0,160,52,5,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,80,53,5,0,0,0,0,0,2,0,0,0,25,0,0,0,104,52,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,52,5,0,0,0,0,0,4,0,0,0,81,0,0,0,0,52,5,0,1,0,0,0,0,176,19,225,0,176,19,97,2,0,0,0,0,0,0,0,88,52,5,0,0,0,0,0,2,0,0,0,225,0,0,0,216,50,5,0,1,0,0,0,0,96,242,224,0,0,149,96,4,0,0,0,0,0,0,0,192,51,5,0,0,0,0,0,2,0,0,0,185,1,0,0,192,48,5,0,1,0,0,0,0,0,116,224,0,0,16,96,5,0,0,0,0,0,0,0,128,50,5,0,0,0,0,0,1,5,5,7,8,8,7,9,9,9,12,12,11,12,12,10,10,11,12,12,12,11,12,12,8,9,8,7,9,10,10,11,11,10,11,12,10,12,10,12,12,12,11,12,11,9,8,8,9,10,9,8,9,10,12,12,11,11,12,11,10,11,12,11,12,12,8,9,9,9,10,11,12,11,12,11,11,11,11,12,12,11,11,12,12,11,11,9,9,8,9,9,11,9,9,10,9,11,11,11,11,12,11,11,10,12,12,12,9,12,11,10,11,11,11,11,12,12,12,11,11,11,12,10,12,12,12,10,10,9,10,9,10,10,9,9,9,10,10,12,10,11,11,9,11,11,10,11,11,11,10,10,10,9,9,10,10,9,9,10,11,11,10,11,10,11,10,11,11,10,11,11,11,10,9,10,10,9,10,9,9,11,9,9,11,10,10,11,11,10,10,11,10,11,8,9,11,11,10,9,10,11,11,10,11,11,10,10,10,11,10,9,10,10,11,9,10,10,9,11,10,10,10,10,11,10,11,11,9,11,10,11,10,10,11,11,10,10,10,9,10,10,11,11,11,9,10,10,10,10,10,11,10,10,10,9,10,10,11,10,10,10,10,10,9,10,11,10,10,10,10,11,11,11,10,10,10,10,10,11,10,11,10,11,10,10,10,9,11,11,10,10,10,11,11,10,10,10,10,10,10,10,10,11,11,9,10,10,10,11,10,11,10,10,10,11,9,10,11,10,11,10,10,9,10,10,10,11,10,11,10,10,10,10,10,11,11,10,11,11,10,10,11,11,10,9,9,10,10,10,10,10,9,11,9,10,10,10,11,11,10,10,10,10,11,11,11,10,9,9,10,10,11,10,10,10,10,10,11,11,11,10,10,10,11,11,11,9,10,10,10,10,9,10,9,10,11,10,11,10,10,11,11,10,11,11,11,11,11,10,11,10,10,10,9,11,11,10,11,11,11,11,11,11,11,11,11,10,11,10,10,10,10,11,10,10,11,9,10,10,10,0,0,0,0,0,0,0,10,0,0,0,9,0,0,0,11,0,0,0,8,0,0,0,12,0,0,0,7,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,5,0,0,0,15,0,0,0,4,0,0,0,16,0,0,0,3,0,0,0,17,0,0,0,2,0,0,0,18,0,0,0,1,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,1,5,5,5,5,9,11,11,10,10,10,10,10,10,10,7,6,6,6,6,10,10,10,10,10,10,10,10,10,10,7,6,6,6,6,10,9,10,10,10,10,10,10,10,10,10,7,7,8,9,10,10,10,10,10,10,10,10,10,10,10,8,7,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,4,0,0,0,10,0,0,0,3,0,0,0,11,0,0,0,2,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,3,5,5,7,7,7,6,6,7,7,7,5,5,7,7,7,6,6,7,7,7,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,7,7,7,6,8,8,10,10,6,5,6,8,8,8,8,8,8,8,9,10,10,7,6,6,8,8,8,8,8,8,8,8,10,10,0,8,8,8,8,9,8,9,9,9,10,10,10,0,9,8,8,8,9,9,8,8,9,9,10,10,0,12,11,8,8,9,9,9,9,10,10,11,10,0,12,13,8,8,9,10,9,9,11,11,11,12,0,0,0,8,8,8,8,10,9,12,13,12,14,0,0,0,8,8,8,9,10,10,12,12,13,14,0,0,0,13,13,9,9,11,11,0,0,14,0,0,0,0,14,14,10,10,12,11,12,14,14,14,0,0,0,0,0,11,11,13,13,14,13,14,14,0,0,0,0,0,12,13,13,12,13,14,14,14,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,4,6,6,7,7,8,8,8,8,10,10,10,7,7,8,8,8,9,9,9,10,10,10,6,7,8,8,8,8,9,8,10,10,10,7,7,8,8,9,9,9,9,10,10,10,7,7,8,8,9,9,8,9,10,10,10,8,8,9,9,9,9,9,9,11,11,11,8,8,9,9,9,9,9,10,10,11,11,9,9,9,9,9,9,9,10,11,11,11,10,11,9,9,9,9,10,9,11,11,11,10,11,10,10,9,9,10,10,11,11,11,11,11,9,9,9,9,10,10,0,0,0,0,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,1,4,4,6,6,6,7,6,6,4,7,7,11,10,10,11,11,10,4,7,7,10,10,10,11,10,10,6,10,10,11,11,11,11,11,10,6,9,9,11,12,12,11,9,9,6,9,10,11,12,12,11,9,10,7,11,11,11,11,11,12,13,12,6,9,10,11,10,10,12,13,13,6,10,9,11,10,10,11,12,13,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,4,6,6,7,7,8,8,8,8,9,9,10,10,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,10,11,11,11,0,0,0,6,6,8,8,9,9,9,9,10,10,11,11,11,11,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,7,7,8,8,9,9,9,9,10,10,11,11,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,12,0,0,0,8,8,9,9,10,10,10,10,11,11,12,12,12,13,0,0,0,9,9,9,9,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,10,10,10,10,10,10,11,11,12,12,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,13,13,13,13,0,0,0,0,0,9,9,10,10,11,11,12,12,13,13,13,14,0,0,0,0,0,10,10,10,11,11,11,12,12,13,13,13,14,0,0,0,0,0,0,0,10,10,11,11,12,12,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,13,13,13,13,14,14,0,0,0,0,0,0,0,11,11,12,12,12,13,13,14,15,14,0,0,0,0,0,0,0,12,12,12,12,13,13,13,14,14,15,0,0,0,0,0,0,0,0,0,12,12,13,13,14,13,14,14,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,6,0,0,0,10,0,0,0,5,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,3,0,0,0,13,0,0,0,2,0,0,0,14,0,0,0,1,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,1,3,3,6,6,6,6,8,8,0,0,0,7,7,7,7,8,8,0,0,0,7,7,7,7,8,8,0,0,0,7,7,8,8,9,9,0,0,0,7,7,8,8,9,9,0,0,0,8,9,8,8,10,10,0,0,0,8,8,8,8,10,10,0,0,0,10,10,9,9,10,10,0,0,0,0,0,9,9,10,10,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,3,2,7,8,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,2,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,1,4,4,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,6,6,7,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,6,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,6,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,5,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,9,10,0,0,0,0,0,0,7,9,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,7,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,9,9,12,0,0,0,0,0,0,10,12,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,9,12,10,0,0,0,0,0,0,10,11,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8,8,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,8,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,10,12,11,0,0,0,0,0,0,9,10,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,10,0,0,0,0,0,0,10,11,12,0,0,0,0,0,0,9,12,9],"i8",L3,R.GLOBAL_BASE+339320),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,19,7,9,7,8,11,9,12,4,1,19,6,7,7,8,10,11,13,18,18,18,18,18,18,18,18,18,18,8,6,18,8,9,9,11,12,14,18,9,6,18,9,7,8,9,11,12,18,7,6,18,8,7,7,7,9,11,17,8,8,18,9,7,6,6,8,11,17,10,10,18,12,9,8,7,9,12,18,13,15,18,15,13,11,10,11,15,18,14,18,18,18,18,18,16,16,18,18,0,0,0,0,0,0,0,0,0,64,207,64,0,0,0,0,0,88,219,64,0,0,0,0,0,106,232,64,0,0,0,0,0,249,245,64,0,0,0,0,0,0,35,64,0,0,0,0,0,0,38,64,0,0,0,0,0,0,62,64,0,0,0,0,0,192,88,64,0,0,0,0,0,76,205,64,0,0,0,0,0,136,211,64,0,0,0,0,0,124,229,64,0,0,0,0,0,255,244,64,0,0,0,0,0,76,221,64,0,0,0,0,0,130,228,64,0,0,0,0,0,100,233,64,0,0,0,0,0,64,239,64,0,0,0,0,0,148,241,64,0,0,0,0,0,11,243,64,0,0,0,0,0,255,244,64,0,0,0,0,0,118,246,64,0,0,0,0,0,219,250,64,0,0,0,0,0,76,253,64,0,0,0,0,0,23,1,65,0,0,0,0,128,49,7,65,154,153,153,153,153,153,40,64,0,0,0,0,0,0,42,64,0,0,0,0,0,0,42,64,0,0,0,0,0,0,44,64,0,0,0,0,0,0,46,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,192,88,64,0,0,0,0,0,148,209,64,0,0,0,0,0,88,219,64,0,0,0,0,0,23,225,64,0,0,0,0,0,249,229,64,0,0,0,0,0,88,235,64,0,0,0,0,0,76,237,64,0,0,0,0,128,79,242,64,0,0,0,0,0,249,245,64,0,0,0,0,0,106,248,64,0,0,0,0,128,19,252,64,0,0,0,0,128,79,2,65,0,0,0,0,128,49,7,65,0,0,0,0,0,64,223,64,0,0,0,0,0,112,231,64,0,0,0,0,0,76,237,64,0,0,0,0,0,23,241,64,0,0,0,0,0,136,243,64,0,0,0,0,0,255,244,64,0,0,0,0,0,112,247,64,0,0,0,0,0,219,250,64,0,0,0,0,0,76,253,64,0,0,0,0,0,23,1,65,0,0,0,0,0,136,3,65,0,0,0,0,8,76,13,65,0,0,0,0,0,88,203,64,0,0,0,0,0,136,211,64,0,0,0,0,0,88,219,64,0,0,0,0,0,142,226,64,0,0,0,0,0,118,230,64,0,0,0,0,0,94,234,64,0,0,0,0,128,79,242,64,0,0,0,0,0,112,247,64,0,0,0,0,0,76,253,64,0,0,0,0,0,23,1,65,0,0,0,0,0,249,5,65,0,0,0,0,8,76,13,65,88,88,5,0,104,113,5,0,88,88,5,0,200,113,5,0,88,88,5,0,40,114,5,0,88,88,5,0,136,114,5,0,88,88,5,0,232,114,5,0,88,88,5,0,72,115,5,0,168,115,5,0,184,140,5,0,168,115,5,0,24,141,5,0,168,115,5,0,120,141,5,0,168,115,5,0,216,141,5,0,168,115,5,0,56,142,5,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,30,0,0,0,208,111,7,0,24,201,7,0,24,201,7,0,64,201,7,0,64,201,7,0,2,0,0,0,0,0,0,0,30,0,0,0,208,111,7,0,0,202,7,0,0,202,7,0,64,201,7,0,64,201,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,40,202,7,0,40,202,7,0,80,202,7,0,80,202,7,0,2,0,0,0,0,0,0,0,15,0,0,0,208,111,7,0,0,162,7,0,0,162,7,0,40,162,7,0,40,162,7,0,2,0,0,0,0,0,0,0,30,0,0,0,208,111,7,0,232,162,7,0,232,162,7,0,40,162,7,0,40,162,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,16,163,7,0,16,163,7,0,56,163,7,0,56,163,7,0,2,0,0,0,0,0,0,0,15,0,0,0,208,111,7,0,232,122,7,0,232,122,7,0,16,123,7,0,16,123,7,0,2,0,0,0,0,0,0,0,30,0,0,0,208,111,7,0,208,123,7,0,208,123,7,0,16,123,7,0,16,123,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,248,123,7,0,248,123,7,0,32,124,7,0,32,124,7,0,2,0,0,0,0,0,0,0,15,0,0,0,72,198,6,0,0,59,7,0,0,59,7,0,40,59,7,0,40,59,7,0,2,0,0,0,0,0,0,0,30,0,0,0,72,198,6,0,232,59,7,0,232,59,7,0,40,59,7,0,40,59,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,16,60,7,0,16,60,7,0,56,60,7,0,56,60,7,0,2,0,0,0,0,0,0,0,15,0,0,0,72,198,6,0,48,6,7,0,48,6,7,0,88,6,7,0,88,6,7,0,2,0,0,0,0,0,0,0,30,0,0,0,72,198,6,0,24,7,7,0,24,7,7,0,88,6,7,0,88,6,7,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,64,7,7,0,64,7,7,0,104,7,7,0,104,7,7,0,2,0,0,0,0,0,0,0,15,0,0,0,72,198,6,0,96,209,6,0,96,209,6,0,136,209,6,0,136,209,6,0,2,0,0,0,0,0,0,0,30,0,0,0,72,198,6,0,72,210,6,0,72,210,6,0,136,209,6,0,136,209,6,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,112,210,6,0,112,210,6,0,152,210,6,0,152,210,6,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2],"i8",L3,R.GLOBAL_BASE+349504),d3([2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2],"i8",L3,R.GLOBAL_BASE+360488),d3([2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,120,145,6,0,120,145,6,0,160,145,6,0,160,145,6,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,96,146,6,0,96,146,6,0,160,145,6,0,160,145,6,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,136,146,6,0,136,146,6,0,176,146,6,0,176,146,6,0,2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,176,96,6,0,176,96,6,0,216,96,6,0,216,96,6,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,152,97,6,0,152,97,6,0,216,96,6,0,216,96,6,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,216,165,5,0,216,165,5,0,0,166,5,0,0,166,5,0,2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,136,46,6,0,136,46,6,0,176,46,6,0,176,46,6,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,112,47,6,0,112,47,6,0,176,46,6,0,176,46,6,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,216,165,5,0,216,165,5,0,0,166,5,0,0,166,5,0,2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,24,241,5,0,24,241,5,0,64,241,5,0,64,241,5,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,0,242,5,0,0,242,5,0,64,241,5,0,64,241,5,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,216,165,5,0,216,165,5,0,0,166,5,0,0,166,5,0,2,0,0,0,0,0,0,0,15,0,0,0,152,142,5,0,176,153,5,0,176,153,5,0,216,153,5,0,216,153,5,0,2,0,0,0,0,0,0,0,30,0,0,0,152,142,5,0,152,154,5,0,152,154,5,0,216,153,5,0,216,153,5,0,1,0,0,0,2,0,0,0,6,0,0,0,192,154,5,0,216,165,5,0,216,165,5,0,0,166,5,0,0,166,5,0,0,0,0,0,255,255,255,255,255,255,255,255,8,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,R.GLOBAL_BASE+363696),d3([1,0,0,0,2,0,0,0,4,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,16,241,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,232,169,5,0,0,0,0,0,0,0,0,0,16,170,5,0,0,0,0,0,0,0,0,0,56,170,5,0,96,170,5,0,0,0,0,0,0,0,0,0,136,170,5,0,176,170,5,0,0,0,0,0,0,0,0,0,216,170,5,0,0,171,5,0,0,0,0,0,0,0,0,0,40,171,5,0,80,171,5,0,0,171,5,0,0,0,0,0,120,171,5,0,160,171,5,0,200,171,5,0,240,171,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,224,169,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,2,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,R.GLOBAL_BASE+366508),d3([32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,216,169,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,166,5,0,232,166,5,0,0,0,0,0,0,0,0,0,16,167,5,0,56,167,5,0,96,167,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,240,168,5,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,160,169,5,0,0,0,0,0,2,0,0,0,25,0,0,0,184,168,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,216,168,5,0,0,0,0,0,2,0,0,0,9,0,0,0,152,168,5,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,168,168,5,0,0,0,0,0,1,0,0,0,25,0,0,0,16,168,5,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,48,168,5,0,0,0,0,0,1,0,0,0,25,0,0,0,136,167,5,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,168,167,5,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,2,3,4,5,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,5,6,6,6,6,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,4,4,5,5,4,5,5,5,5,4,5,5,5,5,5,5,5,4,5,5,5,5,5,4,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,10,10,12,12,12,12,13,12,5,5,5,8,6,11,9,12,12,13,12,12,12,4,5,5,6,8,9,11,12,12,13,12,12,12,7,7,8,9,9,11,8,12,9,12,12,12,12,7,8,8,9,9,8,11,9,12,12,12,11,12,10,10,10,11,11,11,11,11,10,11,11,12,11,10,10,10,11,11,11,11,10,11,11,11,11,12,11,11,11,12,11,12,11,12,11,13,11,13,11,11,11,11,11,12,11,12,10,13,11,12,11,13,12,12,12,13,12,13,13,13,12,14,12,14,13,12,12,12,12,13,13,13,12,14,12,14,13,14,13,14,14,14,14,14,14,14,14,15,14,15,14,13,14,13,14,14,14,14,14,15,14,14,14,15,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2,3,1,3,0,0,0,0,3,3,3,3,3,3,3,3,5,0,0,0,243,0,0,0,8,240,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,0,241,5,0,0,0,0,0,5,0,0,0,53,12,0,0,184,227,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,240,239,5,0,0,0,0,0,5,0,0,0,243,0,0,0,176,226,5,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,168,227,5,0,0,0,0,0,5,0,0,0,243,0,0,0,168,225,5,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,160,226,5,0,0,0,0,0,5,0,0,0,243,0,0,0,160,224,5,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,152,225,5,0,0,0,0,0,5,0,0,0,53,12,0,0,80,212,5,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,224,5,0,0,0,0,0,5,0,0,0,53,12,0,0,0,200,5,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,56,212,5,0,0,0,0,0,1,0,0,0,7,0,0,0,216,199,5,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,224,199,5,0,0,0,0,0,5,0,0,0,243,0,0,0,208,198,5,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,200,199,5,0,0,0,0,0,5,0,0,0,243,0,0,0,200,197,5,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,192,198,5,0,0,0,0,0,5,0,0,0,53,12,0,0,120,185,5,0,1,0,0,0,0,106,152,225,0,106,120,97,3,0,0,0,0,0,0,0,176,197,5,0,0,0,0,0,5,0,0,0,53,12,0,0,40,173,5,0,1,0,0,0,0,136,83,225,0,136,51,97,3,0,0,0,0,0,0,0,96,185,5,0,0,0,0,0,1,0,0,0,25,0,0,0,160,172,5,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,192,172,5,0,0,0,0,0,1,0,0,0,25,0,0,0,24,172,5,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,56,172,5,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,10,10,10,11,11,11,12,12,12,13,13,13,13,13,13,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,16,16,4,9,11,15,16,4,12,8,16,16,12,16,16,16,16,13,16,16,16,16,5,8,10,16,16,9,9,14,15,16,12,14,14,16,16,16,16,16,16,16,16,16,16,16,16,5,11,8,16,15,12,14,16,16,16,9,15,9,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,6,11,11,16,16,12,13,16,16,16,12,16,14,16,16,16,16,16,16,16,16,16,16,16,16,11,15,15,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,12,15,16,16,16,16,16,16,16,16,14,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,5,11,11,16,16,12,15,16,16,16,12,16,14,16,16,16,16,16,16,16,16,16,16,16,16,12,15,15,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,11,15,15,16,16,16,16,16,16,16,15,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,6,11,12,16,16,11,15,16,16,16,13,16,14,16,16,16,16,16,16,16,16,16,16,16,16,11,16,14,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,12,14,14,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,8,13,15,16,16,15,15,16,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,7,12,12,16,16,13,12,16,16,16,14,16,14,16,16,16,16,16,16,16,16,16,16,16,16,13,16,16,16,16,14,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,12,14,16,16,16,16,16,16,16,16,14,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,6,11,11,16,16,13,15,16,16,16,11,15,14,16,16,16,16,16,16,16,14,16,16,16,16,11,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,11,16,14,16,16,14,16,16,16,16,13,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,7,11,11,16,16,13,13,16,16,16,13,16,13,16,16,16,16,16,16,16,16,16,16,16,16,12,16,15,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,12,14,16,16,16,16,16,16,16,16,14,16,13,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,8,13,14,16,16,15,16,16,16,16,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,15,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,6,7,7,7,7,7,7,7,7,7,7,8,7,8,8,7,8,8,7,8,7,7,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,8,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,5,5,7,7,5,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,5,7,8,8,9,10,8,9,10,8,9,10,10,10,12,10,11,11,8,10,10,10,11,12,10,11,10,5,8,7,8,10,10,8,10,9,8,10,10,10,10,11,10,12,11,8,10,9,10,11,11,10,12,10,5,8,8,7,9,10,8,10,9,7,9,10,9,10,11,9,11,11,8,10,9,10,11,11,9,11,10,7,9,9,9,10,11,9,11,11,9,9,11,10,10,13,11,12,12,9,11,11,11,12,13,11,13,11,7,9,9,9,10,11,9,11,10,9,11,10,10,10,12,11,13,12,9,11,11,11,12,12,10,12,10,5,8,8,8,9,10,7,10,9,8,9,10,9,10,11,10,11,11,7,10,9,9,11,11,9,11,10,7,9,9,9,10,11,9,11,10,9,11,11,10,10,12,11,12,12,9,10,11,11,12,13,10,12,10,7,9,9,9,11,11,9,11,10,9,11,11,11,11,13,11,13,12,9,11,9,11,12,12,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,4,6,6,9,9,6,7,8,10,11,6,8,7,10,10,8,10,10,12,12,8,10,10,12,12,6,7,8,10,10,7,8,9,10,11,8,9,9,11,11,10,10,11,12,13,10,11,11,13,13,6,8,7,10,10,8,9,9,11,11,7,9,8,11,10,10,11,11,13,13,10,11,10,13,12,9,10,10,11,12,10,10,11,12,13,10,11,11,12,13,12,12,13,12,14,12,13,13,14,14,9,10,10,12,11,10,11,11,13,12,10,11,10,13,12,12,13,13,14,14,12,13,12,14,12,7,8,8,10,11,8,9,10,11,12,8,9,9,11,12,10,11,12,13,14,10,11,11,13,13,8,9,10,11,12,9,10,11,12,13,10,10,11,12,12,11,12,12,13,14,11,12,12,14,14,8,9,9,11,12,10,10,11,12,13,9,10,10,12,12,11,12,12,14,14,11,12,12,14,13,11,11,12,12,13,11,12,12,13,14,12,12,13,14,14,13,13,14,14,16,13,14,14,15,15,11,12,11,13,13,12,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,15,14,7,8,8,11,10,8,10,9,12,11,8,10,9,12,11,10,11,11,13,13,10,12,11,14,13,8,9,9,12,11,9,10,10,12,12,10,11,10,13,12,11,12,12,13,14,11,12,12,14,14,8,10,9,12,11,10,11,10,12,12,9,11,10,13,11,11,12,12,14,14,11,12,12,14,13,11,11,12,13,13,11,12,12,13,14,12,12,12,14,14,13,13,14,14,15,13,14,14,15,15,11,12,11,13,12,12,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,15,14,10,11,11,12,13,11,12,12,13,14,11,12,12,13,14,13,13,14,14,16,13,14,14,15,15,11,12,12,12,14,12,12,13,13,15,12,13,13,13,15,14,14,15,15,16,14,14,15,15,16,11,12,12,13,14,12,13,13,14,15,12,13,13,14,14,14,14,15,15,16,14,14,14,15,15,13,14,14,14,15,14,14,15,15,16,14,15,15,15,16,15,15,16,16,18,16,16,16,17,17,13,14,14,15,15,14,14,15,16,16,14,14,14,16,15,16,16,16,17,17,15,16,16,17,16,10,11,11,13,12,11,12,12,14,13,11,12,12,14,13,13,14,14,15,15,13,14,13,16,14,11,12,12,14,13,12,13,13,14,14,12,13,13,15,14,14,14,14,15,15,14,15,14,16,15,11,12,12,14,12,12,13,13,15,14,12,13,12,15,13,14,15,14,16,15,14,15,14,16,15,13,14,14,15,15,14,14,14,15,16,14,15,14,16,16,15,16,16,16,17,16,16,16,17,17,13,14,14,15,14,14,15,15,16,15,14,15,14,16,15,16,16,16,17,17,15,16,15,18,16,6,8,8,11,11,8,9,10,11,12,8,10,9,12,12,10,11,11,13,13,10,12,11,14,13,8,9,9,11,12,9,10,10,12,12,9,10,10,12,12,11,11,12,13,14,11,12,12,14,14,8,10,9,12,11,10,11,11,12,12,9,11,10,13,12,11,12,12,14,14,11,12,12,14,13,10,11,11,13,13,11,12,12,13,14,11,12,12,14,14,13,13,14,13,15,13,14,14,15,15,11,12,11,13,13,12,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,15,14,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,13,14,11,12,12,14,14,9,9,10,11,12,10,10,11,12,13,10,10,11,12,13,12,12,13,13,15,12,12,13,14,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,14,15,12,13,12,14,14,11,11,12,12,14,12,12,13,13,14,12,12,13,13,14,13,13,14,14,16,14,14,14,15,15,11,12,12,14,13,12,13,13,14,14,12,13,13,15,14,14,14,14,16,16,13,14,14,16,14,7,9,9,12,11,9,10,10,12,12,9,11,10,13,12,11,12,12,13,14,11,13,12,14,13,9,10,10,12,12,10,10,11,12,13,10,12,11,13,13,12,12,13,13,14,12,13,13,15,14,9,10,10,12,12,11,11,11,13,13,10,12,10,13,12,12,13,13,14,15,12,13,12,15,13,11,12,12,14,13,12,12,13,13,14,12,13,13,15,14,13,13,14,13,16,14,15,14,16,15,12,12,12,14,14,13,13,13,14],"i8",L3,R.GLOBAL_BASE+369616),d3([14,12,13,12,14,13,14,15,15,16,16,13,14,13,16,13,10,11,12,13,14,11,12,13,13,15,12,12,13,14,14,13,14,14,15,16,13,14,14,16,15,12,12,13,12,14,12,12,13,13,15,13,13,13,13,15,14,14,15,14,16,14,15,15,15,16,12,13,12,14,14,13,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,15,16,16,13,14,14,13,16,14,14,15,14,16,14,14,15,14,16,15,15,16,15,18,16,16,16,16,17,14,14,14,16,15,14,15,15,16,16,14,15,15,16,16,16,16,16,17,17,15,16,16,17,16,10,12,11,14,13,12,13,13,14,14,12,13,12,15,14,14,14,14,15,15,14,15,14,16,15,12,13,12,14,13,12,13,13,15,14,13,14,13,15,14,14,15,15,16,16,14,15,15,17,15,12,13,12,14,14,13,14,14,15,15,13,14,13,15,14,15,15,15,16,16,14,15,15,17,15,14,14,14,16,15,14,15,15,16,16,14,15,15,16,15,16,16,16,16,17,16,17,16,18,17,14,14,14,16,15,15,15,15,16,16,14,15,14,16,15,16,16,17,17,17,15,16,15,17,16,6,8,8,11,11,8,9,10,12,12,8,10,9,12,11,10,11,12,13,13,10,11,11,13,13,8,9,10,11,12,9,10,11,12,13,10,11,11,12,12,11,12,12,13,14,11,12,12,14,14,8,9,9,12,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,14,11,12,11,14,13,11,11,12,13,13,11,12,12,13,14,12,12,12,14,14,13,13,14,14,15,13,14,14,15,15,10,11,11,13,13,11,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,15,13,7,9,9,11,12,9,10,11,12,13,9,10,10,12,12,11,12,13,13,14,11,12,12,14,14,9,10,10,12,12,10,10,11,12,13,11,12,11,13,13,12,12,13,13,15,12,13,13,15,14,9,10,10,12,12,10,11,12,13,13,10,11,10,13,12,12,13,13,14,15,12,13,12,14,13,12,12,12,14,14,12,12,13,13,14,13,13,13,15,14,14,13,14,13,16,14,15,15,16,16,11,12,12,13,14,12,13,13,14,15,12,13,12,14,13,14,14,15,15,16,13,14,13,15,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,14,11,12,11,14,13,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,12,13,14,15,12,13,13,15,14,9,10,9,12,11,10,11,10,13,12,10,11,10,13,12,12,13,12,14,14,12,13,12,15,13,11,12,12,13,14,12,13,13,14,14,12,13,13,14,14,14,14,14,14,16,14,14,14,16,15,11,12,11,14,12,12,13,12,15,13,12,13,12,15,13,14,14,14,16,15,13,14,13,16,14,10,11,12,13,14,12,12,13,13,15,12,13,13,14,14,14,14,15,15,16,14,14,14,15,16,12,12,13,14,14,12,13,14,14,15,13,14,14,15,15,14,15,15,15,17,15,15,15,16,16,12,12,13,13,14,13,13,14,14,15,12,13,13,14,15,15,15,15,15,17,14,15,15,15,15,14,14,14,16,16,14,15,15,15,16,15,15,15,16,16,16,15,16,16,18,16,16,17,17,17,14,14,14,15,16,15,15,15,16,17,14,15,14,16,16,16,16,17,17,18,16,16,15,17,16,10,12,11,14,13,12,12,12,14,14,11,13,12,14,13,13,14,14,15,15,13,14,13,16,15,12,12,13,14,14,12,13,13,15,15,13,13,13,15,15,14,15,15,16,16,14,15,15,17,16,12,13,12,14,12,13,13,13,15,13,12,13,12,15,13,14,15,15,16,15,14,15,14,16,14,14,14,14,16,16,14,15,15,16,16,14,15,15,16,16,15,16,16,16,17,16,17,16,18,17,13,14,14,16,13,14,15,15,16,14,14,15,14,16,14,16,16,16,17,16,15,16,15,18,15,9,11,11,13,13,11,12,12,14,14,11,12,12,14,14,13,14,14,15,15,13,14,14,15,15,11,12,12,14,14,11,12,13,14,15,12,13,13,15,14,13,14,14,15,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,14,14,14,14,16,16,14,15,14,16,15,12,13,13,14,15,12,13,14,15,16,13,14,14,16,16,14,14,15,16,17,15,15,15,17,17,13,14,14,15,15,14,15,14,16,16,14,15,14,16,15,15,16,16,17,17,15,16,15,17,16,10,12,12,13,14,11,12,13,14,14,12,13,12,14,14,13,14,14,15,16,13,14,14,16,15,11,12,12,14,14,12,12,13,14,15,12,13,13,15,15,13,13,15,15,17,14,14,15,16,16,12,13,12,14,14,12,13,13,15,15,12,13,13,15,14,14,15,15,16,16,14,15,14,16,16,13,12,14,13,16,13,13,15,14,16,14,13,15,15,16,14,14,16,15,17,15,15,16,16,17,13,14,14,16,15,14,15,15,16,16,14,15,14,16,15,16,16,16,17,17,15,16,16,18,16,10,12,12,14,14,12,12,13,14,14,12,13,12,15,14,13,14,14,15,16,14,15,14,16,15,11,12,12,14,14,12,13,13,14,15,13,14,13,15,15,14,14,15,15,16,14,15,15,17,16,12,13,13,14,14,13,13,14,15,15,12,14,13,15,15,14,15,15,16,16,14,15,15,17,15,13,14,13,15,15,13,14,14,15,16,14,15,14,17,16,15,15,15,15,17,16,16,16,18,17,14,14,14,16,16,15,15,15,16,16,14,15,14,16,16,16,16,17,17,17,16,16,16,17,16,11,12,13,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,15,17,16,12,13,13,14,15,13,13,14,14,16,13,14,14,15,16,15,14,16,15,17,15,15,16,16,17,12,13,13,15,15,13,14,14,16,16,13,14,14,16,15,15,15,16,17,17,15,16,15,17,16,14,14,15,13,16,15,14,16,14,17,15,15,16,14,17,16,15,17,15,18,16,16,17,16,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,16,17,17,18,18,16,17,15,18,16,11,12,12,14,14,13,13,14,14,15,13,14,13,16,14,15,15,15,16,16,15,16,15,17,16,12,13,13,15,14,13,13,14,15,15,14,15,14,16,15,15,15,16,15,16,16,16,16,18,16,12,13,13,15,15,14,14,15,15,16,13,14,13,16,15,16,16,16,17,17,15,16,15,17,15,14,15,14,16,15,14,15,15,16,16,15,16,15,17,16,16,15,16,15,17,17,18,17,18,17,15,15,15,16,16,16,16,16,17,17,14,15,15,17,16,17,17,18,18,18,16,17,15,18,15,9,11,11,13,13,11,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,15,15,11,12,12,14,14,12,13,13,14,15,12,13,13,14,14,14,14,15,15,16,14,14,14,16,16,11,12,12,14,14,12,13,13,14,15,11,13,12,14,14,13,14,14,16,16,13,14,14,16,15,13,14,14,15,15,14,14,15,15,16,14,15,14,16,16,15,15,16,16,17,15,16,16,17,17,12,13,13,15,15,13,14,14,16,15,12,14,13,16,15,15,16,15,17,17,14,15,15,17,15,10,12,12,14,14,12,12,13,14,15,12,13,12,14,14,14,14,15,15,16,13,14,14,16,16,12,13,13,14,14,13,13,14,14,15,13,14,13,15,15,14,15,15,15,17,14,15,15,16,16,11,12,12,14,14,13,13,14,15,15,12,13,13,15,14,14,15,15,16,17,14,15,14,16,15,14,14,14,16,16,14,15,15,16,16,15,15,15,16,16,15,16,16,16,18,16,17,16,18,17,13,13,14,15,15,14,14,15,16,16,13,14,14,16,15,16,16,17,17,17,15,15,15,17,15,10,12,12,14,13,12,12,13,14,14,11,13,12,14,14,13,14,14,16,16,13,14,14,16,15,12,12,13,14,14,12,13,13,14,15,13,13,13,15,15,14,14,15,16,16,14,15,15,16,16,11,12,12,14,14,12,13,13,15,15,12,13,12,15,14,14,15,14,16,16,13,15,13,16,15,13,14,14,15,16,14,15,15,15,17,14,15,15,16,16,16,15,16,16,17,16,16,16,17,17,13,14,12,16,13,14,15,13,16,15,13,15,13,16,14,15,16,15,17,16,15,16,14,17,15,11,12,12,14,15,13,13,14,14,16,13,14,13,15,14,15,15,16,16,17,15,15,15,16,16,12,13,13,15,15,13,13,14,15,16,14,15,14,16,15,15,15,16,15,17,16,16,16,17,17,12,13,13,14,15,14,14,15,15,16,13,14,13,15,15,16,16,16,17,17,15,16,15,16,15,15,15,15,16,16,14,15,15,16,17,16,16,16,17,17,16,15,17,15,18,17,18,17,18,18,14,14,15,15,17,15,15,16,16,17,14,15,15,16,16,17,17,17,17,18,16,16,15,17,15,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,14,17,16,13,13,13,15,15,13,14,14,15,16,13,14,14,16,16,15,15,16,16,17,15,16,16,17,17,12,13,13,15,14,13,14,14,16,15,13,14,13,16,14,15,16,16,17,16,15,16,14,17,15,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,15,17,16,18,16,17,17,18,18,14,15,14,16,13,15,16,15,17,14,15,16,14,17,14,16,17,16,18,16,16,17,15,18,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,6,8,8,10,9,8,9,9,10,10,8,9,9,10,10,8,10,10,10,10,8,10,10,10,10,9,9,9,10,10,9,10,10,10,11,9,10,10,11,11,10,10,10,11,11,10,10,10,11,11,9,9,9,10,10,9,10,10,11,11,9,10,10,11,10,10,10,10,11,11,10,10,10,11,11,10,10,10,10,11,10,10,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,10,10,11,10,10,11,11,11,11,10,11,10,11,11,11,11,11,11,11,10,11,11,11,11,9,10,10,10,11,10,10,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,10,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,12,12,12,11,11,11,12,12,10,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,9,10,10,11,10,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,12,12,12,11,11,11,12,12,10,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,11,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,7,10,10,11,11,10,10,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,10,10,11,11,10,11,11,11,11,11,11,11,11,12,11,11,11,12,12,11,11,11,12,12,10,11,11,11,11,11,11,11,12,11,11,11,11,12,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,11,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,12,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,10,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,11,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,7,10,10,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,12,12,12,11,11,11,12,12,10,10,10,11,11,11,11,11,12,11,10,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,11,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,10,10,10,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,11,11,11,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,13,12,13,12,12,13,13,13,13,12,13,13,13,13,8,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,8,11,11,11,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,13,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,13,13,13,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,4,7,7,4,7,6,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,6,7,8,8,9,10,8,10,10,8,9,10,10,11,12,10,11,12,8,10,10,10,11,12,10,12,11,6,8,7,8,10,10,8,10,9,8,10,10,10,11,12,10,12,12,8,10,9,10,12,11,10,12,11,5,8,8,8,10,10,8,10,10,7,9,10,9,10,11,10,11,11,8,10,10,10,12,12,10,12,11,7,9,9,9,11,11,9,11,11,9,10,11,11,11,12,11,12,12,9,11,11,11,12,12,11,12,12,7,9,9,10,11,12,10,12,11,9,11,10,11,11,12,12,13,13,9,11,11,12,13,13,11,13,11,5,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,12,7,9,9,9,11,11,9,11,10,7,9,9,10,11,12,10,12,11,9,11,11,11,11,13,12,13,13,9,10,11,12,13,13,11,12,11,7,9,9,9,11,11,9,11,11,9,11,11,11,12,12,11,12,12,9,11,10,11,12,12,10,12,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,6,7,7,6,7,7,6,7,7,7,7,8,7,7,8,6,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,5,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,8,8,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,7,8,8,8,9,9,8,9,9,8,9,8,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,6,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,9,7,8,8,8,9,9,8,9,9,8,8,9,9,9,9,9,9,9,8,8,8,9,9,9,9,9,9,8,8,8,8,9,9,8,9,9,8,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,4,4,7,7,4,7,6,5,6,7,7,8,9,7,9,9,5,7,6,7,9,9,7,9,8,6,8,8,8,10,10,8,10,10,8,9,10,10,11,12,10,12,12,8,10,10,10,12,12,10,12,11,6,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,12,8,10,9,10,12,11,10,12,11,5,8,8,8,10,10,8,10,10,8,9,10,10,11,11,10,11,11,8,10,10,10,11,12,10,12,11,8,10,10,10,11,11,10,11,11,10,11,11,11,12,13,11,12,13,10,11,11,11,13,13,11,13,13,7,9,9,10,11,12,10,12,11,9,11,11,11,12,13,12,14,13,9,11,11,12,13,14,11,13,12,5,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,12,8,10,9,10,12,11,9,11,11,7,9,9,10,11,12,10,12,11,9,11,11,11,12,13,12,14,13,9,11,11,12,13,14,11,13,12,8,10,10,10,11,11,10,11,11,10,11,11,11,13,13,11,13,13,10,11,10,11,13,12,11,13,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,8,8,5,7,7,9,9,5,7,7,9,9,6,8,8,11,11,6,8,8,11,11,6,7,7,9,9,7,8,9,10,11,7,9,9,11,10,8,9,10,12,12,8,10,10,12,12,6,7,7,9,9,7,9,9,10,10,7,9,8,11,10,8,10,10,12,12,8,10,9,12,12,8,9,9,11,11,9,10,10,12,12,9,11,11,12,13,11,12,12,13,14,11,12,12,14,14,8,9,9,11,11,9,11,10,13,12,9,10,10,13,12,11,12,12,14,14,11,12,12,14,13,7,8,9,10,10,8,10,10,11,11,8,10,10,11,11,10,11,11,13,13,10,11,11,13,13,8,9,10,10,11,10,11,11,12,13,10,11,11,12,12,11,11,12,13,14,11,12,12,14,14,8,10,10,11,11,10,11,11,12,13,10,11,11,12,12,11,12,12,14,14,11,12,12,14,14,10,11,11,12,13,11,12,12,13,14,12,13,13,14,14,13,13,14,14,16,13,14,14,15,16,10,11,11,13,13,12,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,16,15,7,8,8,10,10,8,10,10,11,11,8,10,10,12,11,10,11,11,13,13,10,11,11,13,13,8,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,14,14,11,12,12,14,14,8,10,9,11,10,10,11,11,13,12,10,11,10,13,12,11,12,12,14,14,11,12,11,14,13,10,11,11,13,13,11,12,12,14,14,12,12,12,14,14,13,14,14,15,16,13,14,14,15,15,10,11,11,13,12,12,12,12,14,14,11,12,12,14,13,13,14,14,16,15,13,14,13,16,14,10,11,11,13,13,12,12,13,14,15,12,13,13,14,15,13,14,15,15,16,13,14,14,16,16,11,12,13,14,14,13,13,14,15,16,13,14,14,15,16,14,15,15,16,17,14,15,16,17,17,11,12,12,14,14,13,14,14,15,16,13,14,14,15,15,14,15,15,16,18,14,15,15,17,16,13,14,15,15,16,15,15,16,16,18,15,15,15,17,17,16,16,17,17,18,16,16,16,18,18,14,14,14,16,16,15,15,15,16,17,15,15,15,16,17,16,17,17,18,18,16,16,17,18,17,10,11,11,14,13,12,13,13,15,14,11,13,13,15,14,13,15,15,16,16,13,14,14,16,16,11,12,12,14,14,13,13,13,15,15,13,14,13,15,15,15,15,15,17,16,14,15,15,17,16,11,13,12,14,14,13,14,13,15,15,13,14,13,15,15,14,15,15,17,17,14,15,15,17,16,14,14,14,16,16,14,15,15,17,17,15,15,16,17,16,17,16,17,18,18,16,17,17,18,18,13,14,14,16,15,15,15,15,17,17,14,16,15,16,16,17,17,17,18,18,16,17,16,20,19,6,8,8,10,10,8,10,10,11,11,8,10,10,12,11,10,11,11,13,13,10,11,11,13,13,8,9,10,11,11,10,11,11,12,12,10,11,11,13,12,11,12,12,14,14,11,12,12,14,14,9,10,10,11,11,10,11,11,12,12,10,11,11,13,12,11,12,12,14,14,11,12,12,14,14,10,10,11,12,13,11,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,15,16,10,11,11,13,13,12,12,12,14,14,12,13,12,14,14,13,14,14,16,16,13,14,14,15,15,9,10,10,11,12,10,11,11,12,13,10,11,11,13,12,11,12,12,14,14,11,12,12,14,14,10,10,11,12,13,11,12,12,13,14,11,12,12,13,14,12,13,14,14,15,12,13,13,15,15,10,11,11,13,13,11,12,12,13,14,11,12,12,14,13,12,13,13,15,15,12,13,13,15,15,12,11,13,12,14,13,13,14,14,15,13,13,14,14,15,14,15,15,16,17,14,15,15,16,17,12,13,12,14,14,13,14,14,15,15,13,14,14,15,15,14,15,15,16,17,14,15,15,16,17,8,9,9,11,11,10,11,11,12,13,10,11,11,13,12,12,13,13,14,15,11,13,12,15,14,9,11,10,12,12,11,12,12,13,14,11,12,12,14,13,13,13,14,15,15,13,14,13,15,15,9,11,11,12,12,11,12,12,14,14,11,12,12,14,13,13,14,14,15,16,13,14,13,15,14,11,12,12,14,13,12,13,13,14,15,13,14,14,16,15,15,15,15,15,16,15,16,15,17,17,11,12,12,14,14,13,14,14,15,15,12,13,13,15,14,15,15,15,17,17,14,15,15,17,15,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,16,16,12,13,13,14,15,13,14,14,16,16,14,14,14,15,16,15,16,16,17,17,15,16,16,17,17,12,13,13,15,15,14,14,14,16,16,14,14,15,16,16,15,16,16,17,17,15,16,16,17,17,14,15,15,15,16,15,15,16,16,18,15,16,16,17,17,17,17,17,18,18,16,17,17,19,18,14,15,15,16,17,15,16,16,17,17,15,16,16,18,17,16,17,17,19,18,17,17,17,19,18,10,12,12,14,14,13,13,14,15,15,12,14,13,16,15,15,15,15,17,17,14,15,15,17,16,12,13,13,15,14,13,14,14,16,16,14,14,15,17,16,15,16,16,17,17,15,16,16,18,17,12,13,13,15,14,14,15,15,16,16,13,15,14,16,15,16,17,16,19,17,15,16,16,17,17,14,15,15,17,15,15,16,15,17,17,16,17,16,18,17,17,17,18,18,18,17,17,18,19,18,14,15,15,16,16,15,16,16,17,18,15,16,16,18,16,17,18,18,19,19,17,18,17,18,19,6,8,8,10,10,8,10,10,11,11,8,10,10,12,11,10,11,11,13,13,9,11,11,13,13,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,14,14,11,12,12,14,14,8,10,9,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,14,14,11,12,12,14,14,10,11,11,13,13,11,12,13,14,14,12,12,12,14,14,13,14,14,15,16,13,14,14,16,16,10,11,10,13,12,11,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,16,15,8,9,9,11,11,10,11,11,12,13,10,11,11,13,12,12,13,13,14,15,12,13,13,15,14,10,11,11,12,12,11,11,12,13,14,11,12,12,14,14,13,13,14,15,16,13,14,14,15,15,9,10,11,12,12,11,12,12,13,14,11,12,12,14,13,13,14,14,15,16,12,14,13,15,15,11,12,12,14,14,12,13,13,14,15,13,14,14,16,15,14,15,15,15,17,15,15,16,16,17,11,12,12,13,14,13,14,14,15,15,12,13,13,15,14,15,16,15,16,17,14,16,15,17,15,9,10,10,12,11,10,11,11,13,13,10,11,11,13,12,11,12,12,14,14,11,12,12,14,14,10,11,11,12,13,11,12,12,13,14,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,10,11,10,13,12,11,12,12,13,13,11,12,12,14,13,12,13,13,15,15,12,13,13,15,14,12,13,12,14,14,13,14,14,15,15,13,14,14,15,15,14,15,15,16,16,14,15,15,16,16,11,13,11,14,12,13,13,13,15,14,12,14,13,15,14,15,15,15,17,16,14,15,14,17,15,10,12,12,14,14,13,13,14,15,16,12,14,13,15,15,14,15,16,17,17,14,15,16,17,17,12,13,13,14,15,13,14,14,16,16,14,14,15,16,16,16,16,16,17,17,16,16,16,18,18,12,13,13,14,15,14,14,15,16,16,13,14,14,16,15,16,16,16,17,18,15,16,16,17,17,14,15,15,16,16,15,15,16,17,17,15,16,16,17,18,17,18,18,18,19,17,18,18,19,19,14,15,15,16,16,15,16,16,17,17,15,16,16,17,17,17,17,18,20,18,17,18,17,18,18,11,12,12,14,14,12,13,14,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,17,12,13,13,15,15,14,14,14,16,16,14,14,14,16,16,15,16,16,17,17,15,16,16,17,17,12,13,13,15,14,13,14,14,16,15,14,15,14,16,15,15,16,16,17,17,15,16,16,17,16,14,15,15,16,16,15,16,16,17,17,16,16,16,17,17,17,17,17,19,18,17,17,17,18,19,14,15,14,17,15,15,16,16,17,17,15,16,15,17,17,16,17,17,18,18,16,17,17,18,17,6,11,11,13,13,11,12,12,14,14,11,12,12,14,14,13,14,14,16,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,17,18,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,16,16,13,14,14,15,16,14,15,15,16,17,14,15,15,17,16,15,16,17,18,17,16,16,16,18,17,14,14,15,16,16,14,15,15,18,16,14,15,15,17,16,16,17,17,18,18,16,17,16,18,17,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,16,16,12,13,13,15,15,13,14,14,15,16,13,14,14,16,16,15,16,16,17,17,15,15,16,17,17,12,13,13,15,15,14,14,14,16,16,13,14,14,16,16,15,16,16,17,17,15,16,16,17,17,14,14,15,15,16,15,15,16,16,17,15,15,16,16,17,16,17,17,17,18,16,17,17,18,18,14,15,15,16,16,15,16,16,17,17,15,16,16,17,17,17,17,17,18,19,17,17,17,18,18,10,12,12,14,14,12,13,14,15,16,13,14,13,15,15,14,15,15,17,17,14,15,16,17,17,12,13,13,15,15,13,14,14,15,15,14,15,14,16,16,15,16,16,17,18,15,17,16,18,17,12,13,13,15,15,14,14,14,16,16,13,14,14,16,15,15,16,16,17,18,15,16,16,17,17,14,14,14,16,16,15,15,16,17,17,15,16,16,17,17,17,17,17,18,20,17,17,17,19,19,14,15,15,16,16,15,17,16,18,18,15,16,15,17,16,17,18,19,19,19,17,17,17,18,17,13,14,14,16,16,14,15,15,17,17,14,15,15,16,17,15,17,17,18,18,16,16,17,18,17,14,15,15,16,17,15,16,16,17,17,15,16,16,17,17,16,17,17,18,18,17,17,17,18,19,14,15,15,16,17,15,16,16,17,17,15,16,16,17,17,16,17,17,18,18,17,17,17,19,19,16,16,16,16,18,16,17,17,17,18,17,17,17,17,19,18,18,18,19,19,18,18,18,19,20,16,16,17,18,18,16,18,17,18,18,17,17,17,20,19,18,18,19,21,20,18,20,18,18,19,10,12,12,14,14,14,14,15,15,17,14,15,14,17,15,16,16,17,18,18,16,18,17,19,18,12,14,13,16,15,14,14,15,15,17,15,16,16,18,17,16,17,18,17,19,17,19,18,20,19,12,13,13,15,15,15,16,17,17,18,14,16,14,17,16,17,18,18,19,19,17,17,17,18,18,15,15,15,17,16,15,16,16,17,17,17,19,17,18,18,18,18,18,18,21,19,20,19,20,19,15,15,16,16,17,17,17,18,20,20,15,16,16,18,17,18,19,19,19,20,18,19,18,19,17,6,11,11,13,13,11,12,12,14,14,11,12,12,14,14,13,14,14,16,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,17,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,15,16,16,13,14,14,16,16,15,15,15,16,16,14,15,15,17,16,16,17,17,19,18,16,17,17,18,18,13,14,14,15,15,14,15,15,17,16,14,15,15,17,16,16,17,16,17,18,15,16,16,18,18,10,12,12,14,14,12,13,14,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,17,16,12,13,13,15,15,14,14,14,15,16,14,15,15,16,16,15,16,16,17,18,16,16,16,18,18,12,13,13,14,14,14,14,15,16,16,13,14,14,16,16,15,16,16,18,18,15,16,16,19,17,14,15,15,16,17,15,15,16,17,17,16,17,16,17,18,17,17,18,17,19,17,17,18,18,19,14,14,14,16,16,15,16,16,17,17,15,16,15,17,17,17,17,17,19,20,16,17,17,18,18,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,14,16,16,12,13,13,15,15,14,14,14,16,16,13,14,14,16,16,15,16,16,18,17,15,16,16,17,17,12,13,13,15,15,13,14,14,16,16,13,14,14,16,16,15,16,15,18,18,15,16,15,17,16,14,15,15,16,16,15,16,16,17,17,15,16,16,18,17,16,17,17,18,18,16,17,17,18,18,14,15,14,16,15,15,16,15,17,17,15,16,15,17,16,16,17,17,18,18,17,17,16,19,17,10,12,12,14,15,14,14,15,15,17,14,15,14,17,15,16,17,17,17,18,16,17,17,18,18,12,14,13,16,15,14,14,16,15,17,15,17,16,18,17,17,17,18,17,19,18,18,18,19,18,12,13,14,15,15,15,16,16,16,17,14,15,14,18,16,18,17,18,19,19,17,18,17,20,18,15,15,15,17,17,15,16,16,17,18,18,18,18,19,18,18,18,19,18,20,18,19,19,21,21,15,15,16,16,17,17,18,18,18,18,15,16,16,17,17,17,19,20,19,20,17,18,18,19,17,13,14,14,16,16,14,15,15,16,17,14,15,15,17,17,16,16,17,17,18,15,17,16,17,17,14,15,15,16,16,15,16,16,17,17,16,16,16,17,17,17,17,18,17,18,17,17,17,18,20,14,15,15,17,16,15,16,16,17,17,15,16,16,17,17,17,17,17,18,18,16,17,17,19,18,16,16,17,17,17,17,18,17,19,18,17,17,17,18,19,17,20,18,19,21,17,19,18,19,20,15,17,15,17,16,16,17,17,18,18,17,17,17,18,17,18,19,18,19,21,18,18,17,19,19,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,4,8,8,4,8,8,5,7,8,8,9,10,8,10,10,5,8,7,8,10,10,8,10,9,7,9,9,9,11,11,9,11,11,9,11,11,11,12,13,11,13,13,9,11,11,11,13,13,11,13,13,7,9,9,9,11,11,9,11,11,9,11,11,11,13,13,11,13,13,9,11,11,11,13,13,11,13,12,5,9,9,9,11,11,9,11,11,9,11,11,11,12,13,11,13,13,9,11,11,11,13,13,11,13,13,9,11,12,11,13,13,12,13,13,11,12,13,13,14,15,13,14,14,12,13,13,13,15,15,13,15,14,8,10,10,11,13,13,12,14,13,11,12,12,13,14,15,13,15,15,11,12,12,13,15,15,13,15,14,5,9,9,9,11,11,9,11,11,9,11,11,11,13,13,11,13,13,9,11,10,11,13,13,11,13,12,8,10,10,11,13,13,12,13,13,11,12,12,13,14,15,14,15,15,10,12,12,13,14,15,13,15,14,9,12,11,12,13,13,11,13,13,12,13,13,13,15,15,13,14,15,11,13,12,13,15,14,13,15,14,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,2,0,0,0,64,0,0,0,72,46,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,104,242,5,0,0,0,0,0,0,0,0,0,144,242,5,0,0,0,0,0,0,0,0,0,184,242,5,0,224,242,5,0,0,0,0,0,0,0,0,0,8,243,5,0,48,243,5,0,0,0,0,0,0,0,0,0,88,243,5,0,128,243,5,0,0,0,0,0,0,0,0,0,168,243,5,0,208,243,5,0,128,243,5,0,0,0,0,0,248,243,5,0,32,244,5,0,72,244,5,0,112,244,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,40,242,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,7,14,16,17,18,20,21,7,4,6,8,11,12,14,16,13,5,4,4,8,9,11,13,15,8,4,3,5,7,9,10,17,11,8,4,4,6,9,9,17,11,9,7,6,5,7,8,19,13,11,9,9,7,8,8,21,15,13,11,10,8,8,7,5,0,0,0,243,0,0,0,64,45,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,56,46,6,0,0,0,0,0,5,0,0,0,53,12,0,0,240,32,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,40,45,6,0,0,0,0,0,5,0,0,0,243,0,0,0,232,31,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,224,32,6,0,0,0,0,0,5,0,0,0,243,0,0,0,224,30,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,216,31,6,0,0,0,0,0,5,0,0,0,243,0,0,0,216,29,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,208,30,6,0,0,0,0,0,5,0,0,0,53,12,0,0,136,17,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,29,6,0,0,0,0,0,5,0,0,0,53,12,0,0,56,5,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,112,17,6,0,0,0,0,0,1,0,0,0,7,0,0,0,16,5,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,24,5,6,0,0,0,0,0,5,0,0,0,243,0,0,0,8,4,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,0,5,6,0,0,0,0,0,5,0,0,0,243],"i8",L3,R.GLOBAL_BASE+379856),d3([3,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,248,3,6,0,0,0,0,0,5,0,0,0,243,0,0,0,248,1,6,0,1,0,0,0,0,106,120,225,0,106,120,97,2,0,0,0,0,0,0,0,240,2,6,0,0,0,0,0,5,0,0,0,53,12,0,0,168,245,5,0,1,0,0,0,0,136,83,225,0,136,51,97,3,0,0,0,0,0,0,0,224,1,6,0,0,0,0,0,1,0,0,0,25,0,0,0,32,245,5,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,64,245,5,0,0,0,0,0,1,0,0,0,25,0,0,0,152,244,5,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,184,244,5,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,4,5,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,7,7,12,12,5,11,12,12,12,5,12,11,12,12,12,12,12,12,12,12,13,13,13,13,7,11,11,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,7,13,10,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,7,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,11,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,11,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,7,7,7,8,7,8,7,7,7,8,7,8,8,8,8,8,7,8,7,8,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,9,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,9,9,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,8,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,8,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,5,7,7,5,7,7,5,7,7,7,7,9,7,9,9,6,7,7,8,9,9,7,9,7,6,8,8,8,9,10,8,9,9,8,9,10,9,9,10,10,10,10,8,9,9,10,10,11,9,10,10,6,8,8,8,9,9,8,10,9,8,9,9,9,10,10,10,11,10,8,10,9,10,11,10,9,11,9,6,8,8,7,9,9,7,9,9,7,9,9,8,9,10,9,10,10,8,9,9,9,10,10,9,10,9,7,9,9,9,9,10,9,10,10,9,9,10,10,9,11,10,11,11,9,10,10,10,11,11,10,11,10,6,9,8,9,9,10,9,10,9,8,10,10,9,9,10,10,11,11,9,10,10,10,11,11,9,11,9,6,8,8,7,9,9,7,9,9,8,9,9,9,9,10,9,10,10,7,9,9,9,10,10,8,10,9,6,8,9,9,9,10,9,10,9,9,10,10,9,9,11,10,11,11,8,9,10,10,11,11,9,10,9,7,9,9,9,10,10,9,10,9,9,10,10,10,10,11,10,11,11,9,10,9,10,11,11,10,11,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,9,9,5,7,8,10,11,5,8,7,11,10,8,10,11,12,13,8,11,10,13,12,6,7,8,10,11,7,8,10,10,12,8,9,9,12,12,10,10,12,12,14,10,12,12,14,13,6,8,7,11,10,8,9,9,12,12,7,10,8,12,11,10,12,12,13,14,10,12,10,14,12,9,10,11,11,13,10,10,11,11,13,11,12,12,13,14,12,12,13,11,15,13,14,14,15,14,9,11,10,13,11,11,12,12,13,13,10,11,10,13,11,13,14,14,15,15,12,13,12,15,11,6,8,9,11,12,8,9,11,12,13,8,10,10,13,13,11,12,13,14,15,11,12,13,14,14,9,9,10,12,13,10,10,12,12,14,10,11,11,13,14,12,12,14,14,15,13,13,14,15,15,9,10,10,13,13,10,11,11,13,14,10,11,10,14,13,13,13,14,15,15,12,14,13,15,14,12,12,13,13,14,12,13,14,13,15,13,14,14,15,15,14,14,15,14,16,15,15,15,16,16,12,13,13,14,14,13,14,14,15,15,12,14,13,15,14,14,15,15,16,16,14,15,14,16,14,6,9,8,12,11,8,10,10,13,13,8,11,9,13,12,11,12,12,14,14,11,13,12,15,14,9,10,10,13,13,10,10,11,13,14,10,12,11,14,13,12,13,14,14,15,13,13,13,15,14,9,10,9,13,12,10,11,11,14,13,10,12,10,14,12,13,14,13,15,15,12,14,12,15,14,12,13,13,14,14,13,13,13,14,15,13,14,14,15,15,14,14,15,14,16,14,15,15,16,16,12,13,12,14,13,13,14,14,15,15,12,14,13,15,13,15,15,15,16,16,14,15,14,16,14,11,12,12,13,14,12,13,14,14,16,12,13,13,15,15,14,14,16,15,17,14,15,15,16,16,12,13,14,14,15,13,13,15,15,16,14,14,14,15,16,15,15,16,16,17,15,15,16,16,17,13,13,13,15,15,14,14,15,15,16,13,14,14,15,16,15,15,16,16,17,15,16,15,17,16,14,15,15,16,16,15,15,16,16,17,15,16,16,17,17,16,16,17,16,18,16,17,17,17,17,15,15,15,16,16,15,16,16,17,17,15,16,16,17,16,16,17,17,18,18,16,17,16,17,16,11,12,12,15,13,13,13,13,15,15,12,14,13,16,14,14,15,15,16,16,14,15,14,17,15,13,13,13,15,14,13,14,14,16,15,14,14,14,16,15,15,15,16,16,17,15,16,15,17,16,12,14,13,15,14,14,14,14,16,15,13,14,13,16,15,15,16,16,17,16,15,16,15,17,16,15,15,15,16,16,15,15,16,16,17,15,16,16,17,17,16,16,17,17,17,17,17,17,18,17,14,15,15,16,16,15,16,16,17,16,15,16,15,17,16,17,17,17,18,17,16,17,16,18,16,6,9,9,12,12,8,10,10,12,13,8,10,10,13,12,10,12,12,14,15,11,13,12,15,14,8,9,10,12,13,9,10,11,13,14,10,11,11,14,13,12,12,13,14,15,12,13,13,15,15,8,10,10,13,13,10,11,11,13,14,10,12,10,14,13,12,13,13,15,15,12,14,13,15,14,11,12,12,13,14,12,12,13,13,15,12,13,13,15,15,14,13,15,14,16,14,15,15,16,16,12,13,13,14,14,13,13,14,15,14,12,14,13,15,14,14,15,15,16,15,14,15,14,16,14,7,9,10,12,12,9,10,11,13,14,9,11,10,13,13,11,12,13,14,15,12,13,13,15,14,9,10,11,12,13,10,10,12,13,14,11,11,12,14,14,12,12,14,14,15,13,13,14,15,15,9,11,11,13,13,11,12,12,14,14,10,12,10,14,13,13,14,14,15,15,13,14,13,16,14,12,12,13,14,15,13,13,14,14,16,13,14,14,15,15,14,14,15,14,17,14,15,15,16,16,12,13,13,15,14,13,14,14,15,15,13,14,13,16,14,15,15,15,16,16,14,15,14,16,14,7,10,9,13,12,10,11,12,12,14,10,12,11,14,12,12,13,13,14,15,12,14,13,15,14,9,11,10,13,13,10,11,12,13,14,12,13,12,15,13,13,13,14,13,15,13,14,14,16,15,10,11,11,13,13,12,12,13,14,14,11,12,11,14,13,14,14,14,15,16,13,14,13,16,13,12,13,13,14,14,12,13,13,14,15,14,14,14,15,15,14,13,15,13,16,15,15,15,17,16,13,13,13,14,14,14,14,14,15,15,12,13,13,15,14,15,16,16,16,16,14,15,14,16,13,11,12,13,14,15,12,13,14,15,16,13,14,14,15,15,14,14,15,15,17,14,15,15,16,16,13,13,14,14,15,13,13,15,14,16,14,14,15,15,16,15,14,16,15,17,15,16,16,16,17,13,14,14,15,15,14,14,15,16,16,13,15,14,16,16,15,16,16,17,17,15,16,15,17,16,14,15,15,15,17,15,15,16,15,17,15,16,16,16,17,16,16,17,16,18,17,17,17,17,18,15,15,15,17,16,15,16,16,17,17,15,16,16,17,16,16,17,17,18,18,16,17,16,18,17,11,13,12,15,14,13,13,14,15,15,13,14,13,16,14,15,15,15,16,16,15,16,15,17,16,13,14,13,15,14,13,13,14,15,15,14,15,14,16,15,15,15,16,16,16,15,16,15,18,16,13,14,14,15,15,14,15,15,15,16,13,15,13,16,15,15,16,16,17,17,15,16,15,17,16,15,15,15,16,16,15,15,15,16,17,16,16,16,17,16,16,16,17,16,17,17,17,17,18,17,15,15,15,16,16,16,16,16,17,17,15,16,15,17,16,17,17,17,18,18,16,17,16,17,15,6,9,9,12,12,8,10,10,12,13,8,10,10,13,12,11,12,13,14,15,10,12,12,14,14,9,10,10,13,13,10,10,12,13,14,10,11,11,14,13,12,13,14,14,15,12,13,13,15,15,8,10,9,13,12,10,11,11,13,14,9,11,10,14,13,12,13,13,15,15,12,13,12,15,14,12,13,13,14,14,12,13,13,14,15,13,14,14,14,15,14,14,15,14,16,14,15,15,16,16,11,12,12,14,13,13,13,13,15,15,12,13,12,15,13,14,15,15,16,16,14,15,14,16,14,7,9,10,12,13,10,10,12,12,14,10,12,11,14,13,12,13,14,14,15,12,13,13,15,14,10,11,11,13,13,11,11,12,13,14,12,13,12,14,14,13,13,14,13,16,14,14,14,15,15,9,10,11,13,14,12,12,13,13,15,10,12,10,14,13,13,14,14,15,16,13,14,13,15,13,13,14,13,14,15,12,13,13,14,15,14,14,14,15,15,14,13,15,13,16,15,16,16,16,16,12,13,13,14,14,14,14,14,15,15,12,13,13,15,14,15,15,16,16,16,14,15,13,16,13,7,10,9,12,12,9,10,11,13,13,9,11,10,14,13,12,13,13,14,15,11,13,12,15,14,9,11,11,13,13,10,10,12,13,14,11,12,12,14,14,13,13,14,14,16,13,14,14,16,15,9,11,10,13,12,11,12,11,14,14,10,12,10,14,13,13,14,13,15,15,12,14,12,16,14,12,13,13,14,15,13,13,14,14,16,13,14,14,15,15,14,14,15,14,16,15,15,15,16,16,12,13,12,15,14,13,14,14,15,15,12,14,13,16,14,14,15,15,16,16,14,15,14,17,14,11,12,13,14,15,13,13,14,14,16,13,14,13,15,15,15,15,16,16,17,15,15,15,16,16,13,14,13,15,15,13,13,15,15,16,14,15,15,16,16,15,15,16,15,17,16,16,16,17,17,13,13,14,14,15,14,14,15,15,16,13,14,13,15,15,15,16,16,16,17,15,16,15,16,16,15,15,15,16,16,15,15,16,16,17,16,16,16,17,17,16,16,17,16,18,17,17,17,18,18,15,15,15,16,16,16,16,16,17,17,15,15,15,16,16,17,17,17,17,18,16,16,16,17,15,11,13,12,15,14,13,13,14,15,15,12,14,13,16,14,14,15,15,16,16,14,15,14,16,15,13,14,14,15,15,13,14,14,16,16,14,15,14,16,16,15,15,16,17,17,15,16,16,17,17,13,14,13,15,14,14,14,14,16,15,13,15,13,16,14,15,16,15,17,16,15,16,14,17,15,14,16,15,16,17,15,16,16,16,17,15,16,16,17,17,16,16,17,17,18,16,17,17,18,17,14,15,15,17,15,15,16,16,17,16,15,16,15,17,15,16,17,17,18,17,16,17,16,18,15,10,12,12,14,14,12,13,13,15,15,12,13,13,15,15,13,14,14,15,16,14,15,14,16,16,12,13,13,15,15,12,13,14,15,15,13,14,14,15,15,14,14,15,16,17,14,15,15,17,16,12,13,13,15,15,13,14,14,15,16,13,14,14,16,15,14,15,15,16,17,14,15,15,17,16,13,14,14,15,16,14,14,15,15,16,14,15,15,16,16,15,15,16,16,17,15,16,16,17,17,14,15,15,16,16,15,15,15,16,16,15,15,15,16,16,16,17,16,17,17,16,16,16,18,16,11,12,12,14,14,12,13,14,15,15,12,13,13,15,15,13,14,15,16,16,14,15,15,16,16,12,13,13,15,15,13,13,14,15,16,13,14,14,15,16,14,14,15,16,17,15,15,15,16,17,12,13,13,15,15,13,14,14,15,16,13,14,14,16,15,15,15,15,16,17,15,16,15,17,16,14,14,15,15,16,14,14,15,15,17,15,15,16,16,17,15,15,16,15,18,16,16,16,17,17,14,15,15,16,16,15,16,16,17,17,15,15,15,17,16,16,17,16,17,17,16,16,16,18,16,11,12,12,14,14,13,13,14,15,15,13,14,13,15,15,14,15,15,16,16,14,15,15,16,16,12,13,13,15,15,13,13,14,15,15,14,14,14,16,15,15,15,15,15,16,15,16,15,17,16,12,13,13,15,15,14,14,15,15,16,13,14,13,16,15,15,15,16,16,17,15,16,15,17,15,14,15,14,16,16,14,15,15,16,16,15,16,15,17,16,15,15,16,15,17,16,17,16,17,17,14,15,15,16,16,15,16,16,16,17,14,15,15,16,16,16,17,17,17,18,16,16,16,17,16,12,13,13,15,15,13,13,14,15,16,13,14,14,16,15,14,15,15,16,17,14,15,15,17,16,13,14,14,15,16,14,14,15,15,17,14,15,15,16,16,15,14,16,15,17,15,16,16,17,17,13,14,14,16,16,14,15,15,16,16,14,15,14,16,16,15,16,16,17,17,15,16,15,17,16,15,15,16,15,17,15,15,16,15,17,15,16,16,16,17,16,15,17,15,18,17,17,17,17,17,15,15,15,17,17,16,16,16,17,17,15,16,15,17,17,16,17,17,18,18,16,17,15,18,15,11,12,12,15,15,13,13,15,14,16,13,14,13,16,14,15,15,16,16,17,15,16,15,17,15,12,14,13,16,14,13,13,14,14,16,14,15,14,16,15,15,15,16,15,17,16,16,16,17,16,12,13,14,15,16,15,15,15,15,16,13,15,13,16,14,16,16,16,17,17,15,16,15,17,15,15,16,15,16,15,14,14,15,16,16,16,16,16,17,16,15,15,16,15,17,17,17,17,18,17,15,15,15,16,16,16,16,16,16,17,14,15,15,17,16,17,17,17,17,18,15,16,15,18,14,10,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,14,15,15,16,13,15,14,16,16,12,13,13,15,15,13,14,14,15,16,13,14,14,15,15,14,15,15,16,17,14,15,15,17,16,12,13,13,15,15,13,14,14,15,15,12,14,13,15,15,14,15,15,16,17,14,15,14,17,15,14,15,15,16,16,14,15,15,16,17,15,15,15,17,16,16,16,16,16,17,16,16,16,17,17,13,14,14,16,15,14,15,15,16,16,14,15,14,16,16,15,16,16,17,17,15,16,15,17,16,11,12,12,14,15,13,13,14,14,15,13,14,13,15,15,14,15,15,16,16,14,15,15,16,16,12,14,13,15,15,13,13,14,15,16,14,15,14,16,15,15,15,16,15,17,15,16,16,17,16,12,13,13,15,15,14,14,15,15,16,13,14,13,16,15,15,15,16,16,17,15,15,15,16,16,14,15,15,16,16,14,15,15,16,16,15,16,16,17,17,16,16,16,16,17,16,17,17,18,17,14,14,15,15,16,15,15,16,16,17,14,15,15,16,16,16,16,16,17,17,15,16,15,17,15,11,12,12,14,14,12,13,14,15,15,12,13,13,15,15,14,15,15,16,16,13,15,14,16,16,12,13,13,15,15,13,14,14,15,16,13,14,14,16,16,15,15,15,16,17,15,15,15,17,16,12,13,13,15,15,13,14,14,16,15,13,14,13,16,15,15,16,15,17,17,14,15,14,17,16,14,15,15,16,16,15,15,16,16,17,15,16,16,17,17,16,16,16,16,18,16,17,16,18,17,14,15,14,16,15,15,15,15,17,16,14,15,14,17,15,16,17,16,17,17,15,16,15,17,15,11,12,12,15,15,13,13,15,14,16,13,15,13,16,14,15,15,16,15,17,15,16,15,17,16,12,14,13,15,15,13,13,15,15,16,15,15,15,16,15,15,15,16,15,17,16,16,16,17,16,12,13,14,15,16,14,14,15,15,16,13,14,13,16,14,16,16,16,16,17,15,16,15,17,15,15,16,15,16,16,14,15,15,16,16,16,16,16,17,16,15,15,16,15,17,17,17,17,18,17,15,15,15,15,16,16,16,16,16,17,14,15,14,16,15,17,17,17,17,18,15,16,15,17,15,12,13,13,15,15,13,14,14,15,16,13,14,14,16,15,14,15,15,16,17,14,15,15,17,16,13,14,14,16,15,13,14,15,16,16,14,15,15,16,16,15,15,16,16,17,15,16,16,17,17,13,14,13,16,15,14,15,15,16,16,13,15,14,16,15,15,16,16,17,17,15,16,14,17,15,15,15,16,17,17,15,15,16,16,17,16,16,16,17,17,16,15,17,16,18,17,17,17,18,18,15,15,15,17,14,16,16,16,17,16,15,16,15,17,15,16,17,17,18,17,16,17,15,18,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,7,9,9,10,10,9,10,10,10,11,9,10,10,11,10,9,10,10,11,11,9,10,10,11,11,9,10,10,11,11,10,10,10,11,11,10,10,10,11,11,10,11,11,11,11,10,11,11,11,11,9,10,10,11,11,10,10,10,11,11,9,10,10,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,10,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,9,10,10,11,11,10,10,11,11,11,10,10,11,11,11,10,11,11,11,12,10,11,11,12,12,10,10,11,11,11,10,11,11,11,12,11,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,11,11,11,11,11,11,11,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,10,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,11,10,11,11,11,11,10,11,11,11,12,11,11,11,12,12,11,11,12,12,12,11,11,11,12,12,10,11,10,11,11,11,11,11,12,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,10,11,11,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,13,12,13,12,9,10,10,11,11,10,10,11,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,11,11,11,10,11,11,11,12,10,11,11,12,12,11,11,12,12,12,11,11,11,12,12,10,11,10,11,11,11,11,11,12,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,10,11,11,11,10,11,11,12,12,10,11,11,12,12,11,11,11,12,12,11,11,12,12,12,10,11,11,11,12,11,11,12,12,12,11,11,12,12,12,11,11,12,12,12,11,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,11,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,10,11,11,12,11,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,9,10,10,11,11,10,10,11,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,10,11,11,11,11,10,11,11,12,12,11,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,11,10,11,11,10,11,11,12,12,10,11,11,12,11,11,12,11,12,12,11,11,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,11,12,10,11,11,12,11,11,11,12,12,12,11,11,12,12,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,12,12,12,12,12,12,12,13,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,12,10,11,11,12,12,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,12,13,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,13,12,13,12,12,12,12,13,12,12,13,12,13,12,13,13,12,13,12,12,12,12,12,12,13,13,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,13,13,13,12,12,12,12,12,12,12,13,12,13,12,12,12,12,13,12,12,13,13,13,12,12,13,12,13,12,10,11,11,12,12,11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,11],"i8",L3,R.GLOBAL_BASE+390097),d3([12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,12,13,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,13,13,13,12,12,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,13,12,13,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,13,12,13,12,12,12,12,12,12,12,12,12,12,13,12,13,12,13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,13,12,13,12,12,13,12,13,12,12,13,12,13,12,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,4,7,8,4,8,7,5,7,8,7,7,10,8,9,9,5,7,7,8,9,9,7,10,7,5,7,8,8,9,11,8,10,10,8,9,10,10,10,12,11,12,12,8,10,10,10,12,12,10,12,11,5,8,7,8,10,10,8,11,9,8,10,10,10,11,12,10,12,12,8,10,9,11,12,12,10,12,10,5,8,8,7,10,10,8,11,10,7,9,10,9,10,12,10,12,12,8,10,10,10,12,12,10,12,11,7,9,10,9,11,12,10,12,11,9,9,12,10,10,13,12,12,13,10,12,11,12,13,13,11,13,11,7,10,9,10,11,12,10,13,11,9,11,11,11,11,13,12,14,13,10,11,11,12,14,14,11,14,11,5,8,8,8,10,11,7,10,10,8,10,10,10,11,12,10,12,12,7,10,9,10,12,12,9,12,10,7,9,10,10,11,13,10,12,11,10,11,11,11,11,14,12,14,14,9,11,11,12,13,14,11,13,11,7,10,9,10,11,12,9,12,10,10,11,12,11,11,13,12,13,13,9,12,9,12,13,12,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,6,7,7,7,7,8,7,8,7,7,7,8,7,8,8,8,8,8,7,8,7,7,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,8,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,5,5,7,7,5,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,5,7,8,7,9,10,8,9,9,8,9,10,9,10,12,10,11,11,8,10,9,10,11,12,9,11,10,5,8,7,8,10,9,7,10,9,8,9,10,9,10,11,10,12,11,8,10,9,10,11,11,9,12,10,5,8,8,7,9,10,8,10,9,7,9,10,9,10,11,9,11,11,8,10,9,10,11,11,10,12,10,7,9,10,9,10,12,9,11,11,9,9,12,11,10,13,11,11,13,10,12,11,11,13,13,11,13,12,7,9,9,9,11,11,9,12,11,9,11,10,10,11,12,11,13,12,9,11,11,12,13,13,11,13,11,5,8,8,8,9,10,7,10,9,8,9,10,10,10,12,10,11,11,7,10,9,9,11,11,9,11,10,7,9,9,9,11,12,9,11,11,9,11,11,11,11,13,12,13,13,9,10,11,11,12,13,10,12,11,7,10,9,9,11,11,9,12,10,10,11,12,11,12,13,12,13,13,9,12,9,11,13,11,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,9,9,6,8,8,10,10,6,8,8,10,10,8,9,10,12,12,8,10,9,12,12,6,8,8,10,10,8,8,9,10,11,8,9,9,11,11,9,10,11,12,13,10,11,11,13,13,6,8,8,10,10,8,9,9,11,11,8,9,8,11,10,10,11,11,13,13,9,11,10,13,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,12,13,13,15,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,13,13,14,15,12,13,12,15,12,7,8,8,10,11,8,9,10,11,12,8,9,9,11,11,10,11,11,13,14,10,11,11,13,13,8,9,9,11,12,9,10,11,11,13,9,10,10,12,12,11,11,12,13,15,11,12,12,14,14,8,9,9,11,11,9,10,11,12,13,9,10,10,12,12,11,12,12,14,15,11,12,12,14,14,10,11,12,13,13,11,12,12,13,14,12,12,12,14,14,13,13,14,14,16,14,14,14,16,15,10,11,11,13,13,12,12,12,14,14,11,12,12,14,13,14,14,14,15,16,13,14,13,16,14,7,8,8,11,10,8,9,9,11,11,8,10,9,12,11,10,11,11,13,13,10,11,11,14,13,8,9,9,12,11,9,10,10,12,12,9,11,10,13,12,11,12,12,13,14,11,12,12,15,14,8,9,9,12,11,9,10,10,12,12,9,11,10,13,11,11,12,12,14,14,11,12,12,14,13,10,11,11,13,13,11,12,12,13,14,12,13,12,14,14,13,13,14,14,16,13,14,14,16,15,10,11,11,13,13,12,12,12,14,14,11,12,12,14,13,13,14,14,15,15,13,14,13,16,14,9,10,11,12,13,11,11,12,12,14,11,11,12,13,14,13,13,14,14,16,13,13,14,15,15,11,11,12,12,14,12,12,13,13,15,12,12,13,13,15,14,14,15,15,16,14,14,14,15,16,11,12,12,13,14,12,12,13,14,15,12,13,12,14,14,14,14,15,15,16,14,14,14,16,16,13,13,14,15,16,14,14,15,15,16,14,15,15,16,16,15,15,16,16,18,16,16,16,17,17,13,14,14,15,15,14,14,15,16,16,14,15,14,16,16,16,16,16,17,18,15,16,16,17,16,9,11,10,13,12,11,12,11,14,13,11,12,11,14,12,13,14,13,15,14,13,14,13,16,14,11,12,12,14,13,12,12,13,14,14,12,13,12,15,14,14,14,14,16,16,14,15,14,17,15,11,12,11,14,12,12,13,12,15,13,12,13,12,15,13,14,14,14,16,15,14,15,14,16,15,13,14,14,15,15,14,14,15,16,16,14,15,14,16,16,15,15,16,16,17,16,16,16,17,17,13,14,14,16,15,14,15,15,16,16,14,15,14,17,15,16,16,16,17,17,15,16,15,18,16,7,8,8,10,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,11,11,14,13,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,13,14,11,12,12,14,14,8,9,9,12,11,9,10,11,12,13,9,11,10,13,12,11,12,12,14,14,11,12,12,14,13,10,11,11,13,13,11,12,12,13,14,11,12,12,14,14,13,13,14,14,16,13,14,14,16,15,10,12,11,13,13,12,12,12,14,14,11,12,12,14,13,14,14,14,15,16,13,14,14,16,14,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,11,12,13,14,11,12,12,14,14,9,9,10,11,12,10,10,11,12,13,10,10,11,12,13,12,12,13,14,15,12,12,13,14,15,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,15,15,12,13,13,15,14,11,11,12,13,14,12,12,13,13,15,12,12,13,14,15,14,14,15,14,16,14,14,15,15,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,14,14,15,15,16,16,14,15,14,17,15,8,9,9,11,11,9,10,10,12,12,9,11,10,13,12,11,12,12,14,14,11,13,12,15,13,9,10,10,12,12,10,10,11,12,13,10,12,11,13,13,12,12,13,13,15,12,13,13,15,14,9,10,10,12,12,11,11,12,13,13,10,12,10,13,12,12,13,13,15,15,12,13,13,15,13,11,12,12,14,14,12,12,13,14,14,12,13,13,15,14,13,13,14,13,16,14,15,14,16,16,11,12,12,14,14,13,13,13,15,15,12,13,12,15,14,14,15,15,16,17,14,15,13,16,13,10,11,11,13,14,11,12,12,13,15,11,12,12,14,14,13,14,14,15,16,13,14,14,16,16,11,11,12,12,14,12,12,13,13,15,12,13,13,13,15,14,14,15,14,17,14,14,15,15,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,16,13,14,14,14,16,14,14,15,14,17,14,15,15,14,17,16,16,17,15,18,16,16,17,16,18,13,14,14,16,16,14,15,15,17,16,14,15,15,17,16,16,17,17,18,18,16,17,16,18,17,10,11,11,14,13,11,12,12,14,14,11,13,12,15,14,14,14,14,16,15,14,15,14,16,15,11,12,12,14,13,12,13,13,15,14,13,14,13,15,14,14,15,15,16,16,14,15,15,17,15,11,12,12,14,14,13,13,13,15,15,12,13,13,15,14,15,15,15,17,17,14,15,15,17,15,13,14,14,16,15,14,15,15,16,16,15,15,15,17,16,16,16,16,16,17,16,17,16,18,17,14,14,14,16,16,15,15,15,16,16,14,15,14,17,16,16,17,17,17,18,16,17,16,18,16,7,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,11,10,13,12,11,12,12,13,14,11,12,12,14,14,8,9,9,11,11,9,10,10,12,12,9,10,10,13,12,11,12,12,14,14,11,12,11,14,13,10,11,12,13,13,11,12,12,13,14,12,13,12,14,14,13,13,14,14,16,13,14,14,16,15,10,11,11,13,13,11,12,12,14,14,11,12,12,14,13,13,14,14,15,16,13,14,13,16,14,8,9,9,11,11,9,10,11,12,13,9,10,10,12,12,11,12,13,13,14,11,12,12,14,14,9,10,10,12,12,10,10,11,12,13,11,12,11,13,13,12,12,13,13,15,12,13,13,15,15,9,10,10,12,12,10,11,12,13,14,10,11,10,13,12,12,13,13,14,15,12,13,12,15,13,12,12,12,14,14,12,12,13,14,15,13,13,13,15,15,14,14,15,13,16,14,15,15,16,16,11,12,12,14,14,12,13,13,14,15,12,13,12,14,14,14,14,15,16,16,13,14,13,16,14,8,9,9,11,11,9,10,10,12,12,9,10,10,12,12,11,12,12,14,14,11,12,11,14,14,9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,14,15,12,13,13,15,14,9,10,9,12,11,10,11,10,13,12,10,11,10,13,12,12,13,12,15,14,12,13,12,15,14,11,12,12,14,14,12,13,13,14,15,12,13,13,15,15,14,14,15,15,17,14,15,15,16,16,11,12,11,14,13,12,13,12,15,14,12,13,12,15,13,14,15,14,16,15,13,15,14,17,14,10,11,11,13,14,11,12,13,13,15,11,12,12,14,14,14,14,15,15,17,13,14,14,15,16,11,12,12,14,14,12,12,13,14,15,13,13,13,15,15,14,15,15,15,17,15,15,15,16,16,11,12,12,13,14,13,13,14,14,15,12,13,13,14,15,14,15,15,16,17,14,15,15,16,16,14,14,14,16,16,14,14,15,15,17,15,15,15,17,16,16,16,17,16,18,16,17,17,18,17,13,14,14,15,16,14,15,15,16,17,14,15,15,16,16,16,17,17,17,18,16,16,16,17,16,10,11,11,14,13,11,12,12,14,14,11,12,12,15,13,13,14,14,16,15,13,14,14,16,15,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,17,16,11,12,11,14,12,12,13,13,15,13,12,13,12,15,13,14,15,15,16,15,14,15,14,17,14,13,14,14,16,16,14,15,15,16,17,14,15,15,16,17,16,16,17,17,18,16,17,17,18,18,13,14,14,16,13,14,15,15,17,14,14,15,14,17,14,16,17,16,17,16,16,17,16,18,15,8,11,11,13,13,10,12,12,14,14,11,12,12,14,14,13,13,14,15,16,13,14,14,16,15,10,11,11,14,14,11,12,12,14,15,11,12,12,15,14,13,14,14,15,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,12,15,14,14,14,15,16,16,14,15,14,16,16,12,13,13,15,15,12,13,14,15,16,13,14,14,16,16,14,15,15,16,17,15,15,16,17,17,13,14,14,16,15,14,15,15,16,16,14,15,14,16,16,16,16,16,17,17,15,16,16,18,16,10,11,11,13,14,11,12,12,14,15,11,12,12,15,14,13,14,14,16,16,13,14,14,16,16,11,11,12,14,14,12,12,13,14,15,12,13,13,15,15,14,14,15,15,17,14,14,15,16,16,11,12,12,15,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,17,16,13,12,14,14,16,13,13,15,14,17,14,13,15,15,17,15,14,16,15,18,16,15,16,16,18,13,14,14,16,16,14,15,15,17,17,14,15,15,17,16,16,17,17,18,18,16,17,16,18,17,10,11,11,14,13,11,12,12,14,14,11,13,12,15,14,13,14,14,15,16,13,14,14,16,16,11,12,12,14,14,12,13,13,14,15,12,13,13,15,15,14,14,15,15,16,14,15,15,17,16,11,12,12,14,14,13,13,13,15,15,12,13,13,15,14,14,15,15,16,17,14,15,14,17,15,13,14,13,16,15,14,14,14,15,16,14,15,14,16,16,15,15,16,16,17,16,16,16,18,17,14,14,14,16,16,15,15,15,17,16,14,15,14,17,16,16,16,17,17,18,16,17,16,18,16,11,13,13,15,15,12,13,14,15,16,12,14,14,15,15,14,15,15,16,17,14,15,15,17,17,12,13,14,14,16,13,14,14,14,16,14,14,14,15,16,15,15,16,15,18,15,16,16,17,17,13,14,14,16,16,14,14,15,16,16,14,15,14,16,16,15,16,16,17,18,15,16,16,18,17,14,14,16,13,17,15,15,16,14,18,15,15,16,14,18,16,16,18,15,19,17,17,18,16,18,15,16,15,17,17,15,16,17,18,18,16,16,16,18,17,17,18,18,19,19,17,18,17,19,18,11,12,12,15,14,13,13,14,15,16,13,14,13,16,14,15,15,15,16,17,15,16,15,17,16,12,13,13,15,14,13,13,14,15,15,14,15,14,16,15,15,15,16,16,17,16,16,16,18,17,12,13,13,15,15,14,14,15,16,16,13,14,13,16,15,16,16,16,17,18,15,16,15,17,16,14,15,14,17,15,14,15,15,16,16,15,16,15,17,16,16,15,16,15,17,17,18,17,18,17,15,15,15,16,17,16,16,16,17,17,15,16,15,17,16,17,18,18,18,18,16,17,16,18,15,8,11,11,13,13,11,12,12,14,14,10,12,12,14,14,13,14,14,15,16,13,14,13,16,15,11,12,12,14,14,12,12,13,14,15,12,13,13,15,15,14,14,15,15,16,14,14,14,16,16,10,11,11,14,14,11,12,12,14,15,11,12,12,15,14,13,14,14,16,16,13,14,14,16,15,13,14,14,15,16,14,14,15,16,16,14,15,15,16,16,15,16,16,16,18,16,16,16,17,17,12,13,13,15,15,13,14,14,16,16,12,14,13,16,15,15,16,15,17,17,14,16,15,17,16,10,11,11,13,14,11,12,13,14,15,11,13,12,14,14,14,14,15,16,16,13,14,14,16,16,11,12,12,14,14,12,13,13,14,15,13,14,13,15,15,14,15,15,16,17,14,15,15,17,16,11,12,12,14,14,12,13,13,15,15,12,13,12,15,14,14,15,15,16,17,14,15,15,16,16,14,14,14,16,16,14,14,15,16,16,15,15,15,16,16,16,16,17,16,18,16,17,17,18,18,13,13,14,15,16,14,14,15,16,17,13,14,14,16,16,16,16,17,17,18,15,16,15,17,16,10,11,11,14,13,11,12,12,14,14,11,12,12,15,14,13,14,14,16,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,17,16,11,12,11,14,14,12,13,13,15,15,12,13,12,15,14,14,15,14,16,16,14,15,14,17,16,14,14,14,16,16,14,15,15,16,17,14,15,15,17,17,16,16,17,17,18,16,17,17,18,18,13,14,12,16,14,14,15,13,17,15,13,15,13,17,14,16,16,15,18,16,15,17,14,18,15,11,12,12,14,15,13,13,14,14,16,13,14,13,15,14,15,15,16,16,17,15,16,15,17,16,12,13,13,15,15,13,13,14,15,16,14,15,14,16,16,15,15,16,15,18,16,16,16,18,17,12,13,13,15,15,14,14,15,15,16,13,14,13,15,15,16,16,16,16,18,15,16,15,17,16,15,15,15,17,16,15,15,16,16,17,16,16,16,18,17,16,16,17,15,18,17,18,17,19,18,14,14,15,15,17,15,15,16,16,17,14,15,15,16,16,17,17,18,17,19,16,17,15,17,15,11,13,12,15,15,12,14,14,15,15,12,14,13,16,15,15,15,15,17,17,14,15,15,17,16,12,14,14,16,16,14,14,15,16,16,14,14,14,16,16,15,16,17,17,18,15,16,16,18,17,12,14,13,16,14,13,14,14,16,15,13,15,14,16,14,15,16,16,17,17,15,16,15,18,15,15,15,16,17,17,15,16,16,17,18,16,16,16,18,18,17,17,18,18,19,17,17,18,19,19,14,15,14,17,13,15,16,15,18,14,15,16,15,18,14,17,18,17,18,16,16,18,16,19,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,4,7,7,4,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,6,7,8,8,9,10,8,9,10,8,9,10,10,10,12,10,11,12,8,10,10,10,11,12,10,11,11,6,8,7,8,10,9,8,10,9,8,10,10,10,11,11,10,12,11,8,10,9,10,12,11,10,12,10,5,8,8,8,10,10,8,10,10,7,9,10,9,10,11,9,11,11,8,10,10,10,12,12,10,12,11,7,9,9,9,10,11,9,11,11,9,9,11,10,11,12,10,11,12,9,11,11,11,12,12,11,12,12,7,9,9,10,11,11,10,12,11,9,11,10,11,11,12,11,13,12,10,11,11,12,13,13,11,13,11,5,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,11,7,10,9,9,11,11,9,11,10,7,9,9,10,11,12,10,11,11,10,11,11,11,11,13,12,13,13,9,10,11,12,12,13,11,12,11,7,9,9,9,11,11,9,11,10,9,11,11,11,12,12,11,12,12,9,11,9,10,12,11,10,12,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,9,15,17,20,21,22,23,5,5,7,9,11,13,17,20,9,5,5,6,8,10,15,18,11,7,5,4,6,9,13,17,14,9,7,5,6,7,10,14,17,10,8,6,6,4,5,8,20,14,13,10,8,4,3,4,23,17,16,14,12,6,4,4,2,0,0,0,64,0,0,0,112,96,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,216,47,6,0,0,0,0,0,0,0,0,0,0,48,6,0,0,0,0,0,0,0,0,0,40,48,6,0,80,48,6,0,0,0,0,0,0,0,0,0,120,48,6,0,160,48,6,0,0,0,0,0,0,0,0,0,200,48,6,0,240,48,6,0,0,0,0,0,0,0,0,0,24,49,6,0,64,49,6,0,240,48,6,0,0,0,0,0,104,49,6,0,144,49,6,0,184,49,6,0,224,49,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,152,47,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,7,14,16,17,17,18,20,6,3,5,8,10,11,13,15,13,5,3,5,8,9,11,12,15,7,4,3,5,7,9,11,16,10,7,5,6,7,9,10,17,11,8,7,7,6,8,8,19,13,11,9,9,8,8,9,20,14,13,11,10,8,9,9,5,0,0,0,243,0,0,0,104,95,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,96,96,6,0,0,0,0,0,5,0,0,0,53,12,0,0,24,83,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,80,95,6,0,0,0,0,0,5,0,0,0,243,0,0,0,16,82,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,8,83,6,0,0,0,0,0,5,0,0,0,243,0,0,0,8,81,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,0,82,6,0,0,0,0,0,5,0,0,0,243,0,0,0,0,80,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,248,80,6,0,0,0,0,0,5,0,0,0,53,12,0,0,176,67,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,79,6,0,0,0,0,0,5,0,0,0,53,12,0,0,96,55,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,152,67,6,0,0,0,0,0,1,0,0,0,7,0,0,0,56,55,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,64,55,6,0,0,0,0,0,5,0,0,0,243,0,0,0,48,54,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,40,55,6,0,0,0,0,0,5,0,0,0,243,0,0,0,40,53,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,32,54,6,0,0,0,0,0,5,0,0,0,243,0,0,0,32,52,6,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,24,53,6,0,0,0,0,0,5,0,0,0,243,0,0,0,24,51,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,16,52,6,0,0,0,0,0,1,0,0,0,25,0,0,0,144,50,6,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,176,50,6,0,0,0,0,0,1,0,0,0,25,0,0,0,8,50,6,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,40,50,6,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,4,5,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,5,5,4,10,10,5,10,10,5,10,10,10,10,10,10,10,10,5,10,10,10,10,10,9,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,7,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,7,6,7,8,6,8,7,7,7,8,7,7,8,8,8,8,7,7,7,8,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,9,8,9,8,8,8,8,8,8,9,8,9,9,8,8,8,9,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,9,9,9,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,6,5,7,8,5,8,7,5,7,7,7,7,9,8,9,9,5,7,7,8,9,9,7,9,7,6,8,8,8,9,10,8,9,9,8,9,10,9,9,11,10,10,11,8,10,9,10,10,11,9,10,10,6,8,8,8,9,9,8,10,9,8,9,10,9,10,10,10,11,10,8,10,9,10,11,10,9,11,9,6,8,8,7,9,9,8,9,9,7,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,10,9,7,9,9,9,10,10,9,10,10,9,9,10,10,9,11,10,11,11,9,10,10,10,11,11,10,11,10,6,9,8,9,10,10,9,10,9,8,10,10,9,9,10,10,11,11,9,10,10,10,11,11,9,11,9,6,8,8,8,9,9,7,9,9,8,9,9,9,9,10,9,10,10,7,9,9,9,10,10,9,10,9,6,8,9,9,9,10,9,10,10,9,10,10,9,9,11,10,11,11,8,10,10,10,11,11,9,10,9,7,9,9,9,10,10,9,10,10,9,10,10,10,10,11,10,11,11,9,10,9,10,11,11,10,11,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,9,9,5,7,8,10,11,5,8,7,11,10,8,10,11,12,13,8,11,10,13,12,6,7,8,10,11,7,8,10,10,12,8,9,9,12,11,10,10,12,11,14,10,11,12,14,13,6,8,7,11,10,8,9,9,11,12,7,10,8,12,10,10,12,12,13,14,10,12,10,14,11,9,10,11,11,12,10,10,11,11,13,11,12,12,13,13,12,11,13,11,15,13,14,13,14,14,9,11,10,12,11,11,12,12,13,13,10,11,10,13,11,13,13,14,14,14,12,13,11,14,11,7,8,9,11,12,9,9,11,12,13,9,10,10,13,12,11,12,13,13,15,11,12,12,14,14,9,10,10,12,13,10,10,12,12,14,11,11,11,13,13,12,12,13,13,15,12,13,13,15,14,9,10,10,12,13,10,11,11,13,14,10,12,11,14,13,12,13,13,14,15,12,13,13,15,14,12,12,13,13,14,12,13,13,13,15,13,14,14,14,15,14,14,15,14,16,14,15,15,16,16,12,13,13,14,14,13,13,14,15,14,12,13,13,15,14,14,15,15,15,16,14,15,14,16,14,7,9,8,12,11,9,10,10,12,13,9,11,9,13,12,11,12,12,14,14,11,13,12,15,13,9,10,10,13,12,10,11,12,13,14,10,12,11,14,13,12,13,13,14,15,13,13,13,15,14,9,10,10,13,12,11,11,11,13,13,10,12,10,14,12,13,13,13,14,15,12,13,12,15,13,12,13,13,14,14,12,13,13,14,15,13,14,13,15,15,14,14,15,14,16,14,15,15,16,15,12,13,12,14,13,13,13,13,15,14,12,13,13,15,13,14,15,15,16,15,14,15,14,16,14,11,12,12,13,14,12,13,14,14,15,12,13,13,14,15,14,14,15,15,16,14,15,15,16,16,12,13,13,14,15,13,13,14,14,16,13,14,14,15,15,15,15,16,15,17,15,15,15,16,16,12,13,13,14,15,13,14,14,15,16,13,14,14,15,15,15,15,16,16,17,15,15,15,17,16,14,15,15,16,16,15,15,16,15,16,15,16,16,16,17,16,16,17,16,18,16,16,17,18,17,14,15,15,16,16,15,16,16,16,17,15,16,15,17,16,16,17,17,17,18,16,16,16,17,16,11,12,12,14,13,12,13,13,15,14,12,14,13,15,14,14,15,15,16,16,14,15,14,16,15,12,13,13,15,14,13,14,14,15,15,13,14,14,16,15,15,15,15,16,16,15,16,15,17,16,12,13,13,15,14,13,14,14,15,15,13,14,13,16,14,15,15,15,16,16,15,15,15,17,15,14,15,15,16,16,15,15,15,16,16,15,16,16,17,17,16,16,17,17,17,16,17,17,18,17,14,15,15,16,15,15,15,16,16,16,15,15,15,17,15,17,17,17,18,17,16,17,16,18,16,6,9,9,12,12,8,10,10,12,13,9,11,10,13,12,10,12,12,14,14,11,13,12,14,14,8,10,10,12,12,9,10,11,12,14,10,11,11,13,13,12,12,13,13,15,12,13,13,15,14,9,10,10,13,13,10,11,11,13,13,10,12,10,14,13,12,13,13,14,15,12,13,13,15,14,11,12,12,13,14,12,12,13,13,15,12,13,13,14,14,13,13,14,13,16,14,15,15,16,15,11,12,12,14,14,13,13,13,15,14,12,13,13,15,14,14,15,15,16,15,14,14,14,16,14,7,9,10,12,12,9,10,11,13,13,9,11,10,13,13,11,12,13,14,15,12,13,13,15,14,9,10,11,12,13,10,10,12,13,14,11,11,12,14,14,12,12,14,14,15,13,13,13,15,15,9,11,11,13,13,11,12,12,14,14,10,12,10,14,13,13,14,13,15,15,12,14,13,15,14,12,12,13,13,15,12,12,14,13,15,13,14,14,15,15,14,14,15,14,17,14,15,15,16,16,12,13,13,15,14,13,14,14,15,15,12,14,13,15,14,14,15,15,16,16,14,15,14,16,14,7,10,10,12,12,10,11,11,12,13,10,12,10,14,12,12,13,13,14,15,12,13,13,15,14,9,11,10,13,12,10,10,12,12,14,11,13,12,14,13,13,13,14,13,15,13,14,14,15,14,10,11,11,13,13,12,12,12,13,14,10,12,10,14,12,13,14,14,15,15,13,14,13,15,13,12,13,13,14,14,12,12,13,14,15,13,14,14,15,15,13,13,14,13,15,14,15,15,16,16,12,13,13,14,14,13,14,14,15,15,12,13,13,15,13,15,15,15,16,16,13,14,13,16,13,11,12,13,14,14,12,13,14,14,15,12,13,13,15,15,14,14,15,15,17,14,15,15,16,16,12,13,14,14,15,13,13,14,14,16,13,14,14,15,16,14,14,16,15,17,15,15,16,16,16,12,13,13,15,15,13,14,14,15,16,13,14,14,15,16,15,15,16,17,17,15,16,15,17,16,14,15,15,15,16,15,15,16,15,17,15,15,16,16,17,16,16,16,16,18,16,16,17,17,17,14,15,15,16,16,15,16,16,16,17,15,16,15,17,16,16,17,17,17,17,16,17,16,18,17,11,12,12,14,14,13,13,14,14,15,13,14,13,15,14,14,15,15,15,16,14,15,15,17,15,12,13,13,15,14,13,13,14,15,15,14,15,14,16,15,15,15,15,15,16,15,16,15,17,16,12,13,13,15,15,14,14,14,15,16,13,14,13,16,15,15,15,16,16,17,15,16,15,17,15,14,15,15,16,16,14,15,15,16,16,15,16,16,17,16,15,15,16,15,17,16,17,17,18,17,14,15,15,16,16,15,16,16,16,17,14,15,15,17,16,17,17,17,17,18,15,16,16,18,15,6,9,9,12,12,9,10,11,12,13,8,10,10,13,12,11,12,13,14,14,10,12,12,14,13,9,10,10,12,13,10,10,12,13,14,10,11,11,13,13,12,13,13,14,15,12,13,13,15,14,8,10,10,12,12,10,11,11,13,13,9,11,10,13,13,12,13,13,14,15,12,13,12,15,13,11,12,12,14,14,12,13,13,13,15,13,13,13,14,15,14,14,15,14,16,14,15,15,15,15,11,12,12,14,13,12,13,13,15,14,12,13,12,15,13,14,14,15,16,16,13,14,13,16,13,7,10,10,12,12,10,10,12,12,14,10,11,11,13,12,12,13,13,13,15,12,13,13,15,14,10,11,11,13,13,10,10,12,12,14,12,12,12,14,13,13,13,14,13,15,13,14,14,15,14,9,10,11,13,13,11,12,12,13,14,10,12,10,14,12,13,13,14,14,15,13,13,12,15,13,12,13,13,14,14,12,13,13,14,15,13,14,14,15,15,13,13,15,13,16,15,15,15,16,16,12,13,13,14,14,13,14,14,15,15,12,13,12,15,14,15,15,15,16,16,13,14,13,15,13,7,10,9,12,12,9,10,11,13,13,9,11,10,13,13,11,13,13,14,15,11,13,12,15,14,9,11,11,13,13,10,10,12,13,14,11,12,12,14,14,12,13,14,14,15,13,13,13,15,15,9,11,10,13,12,11,12,11,14,14,10,12,10,14,13,13,14,13,15,15,12,14,12,15,14,12,13,13,14,15,13,13,14,14,15,13,14,14,15,15,14,14,15,14,17,14,15,15,16,16,12,13,12,15,13,13,14,14,15,15,12,14,13,15,13,14,15,15,16,16,14,15,14,16,14,11,12,12,14,14,13,13,14,14,15,13,14,13,15,15,14,15,15,16,17,14,15,15,16,15,12,13,13,15,15,13,13,14,15,16,14,14,14,16,15,15,15,16,15,17,15,16,15,17,16,12,13,13,14,15,14,14,15,15,16,13,14,13,15,15,15,15,16,16,17,15,15,15,16,15,14,15,15,16,16,14,15,15,16,17,15,16,16,17,17,16,15,16,15,17,16,17,17,17,17,14,15,15,15,16,15,15,16,16,17,14,15,15,16,16,16,16,17,17,18,15,16,15,17,15,11,13,12,14,14,12,13,13,15,15,12,14,13,15,14,14,15,15,16,16,14,15,14,16,15,12,13,13,15,15,13,14,14,15,16,13,14,14,16,16,15,15,16,16,17,15,16,15,17,16,12,13,13,15,14,13,14,14,16,15,13,14,13,16,14,15,16,15,17,16,15,15,14,18,15,14,15,15,16,16,15,15,16,16,17,15,16,15,17,16,16,16,17,17,18,16,17,17,18,17,14,15,15,16,15,15,16,15,17,16,15,15,15,17,15,16,17,17,18,17,16,17,16,18,15,10,12,12,14,14,12,13,13,14,14,12,13,13,14,14,13,14,14,15,15,13,14,14,16,15,11,12,13,14,14,12,13,13,15,15,12,13,13,15,15,13,14,15,15,16,14,15,15,16,16,12,13,13,14,14,13,13,14,15,15,13,14,13,15,15,14,15,15,16,16,14,15,14,16,15,13,14,14,15,15,13,14,14,15,16,14,14,15,16,16,14,15,15,15,17,15,16,16,17,17,13,14,14,15,15,14,15,15,16,16,14,15,15,16,16,15,16,16,16,17,15,16,15,17,16,11,12,12,14,14,12,13,13,14,15,12,13,13,15,14,13,14,14,15,16,13,14,14,16,15,12,13,13,14,15,13,13,14,15,15,13,14,14,15,15,14,14,15,15,17,14,15,15,16,16,12,13,13,15,15,13,14,14,15,15,13,14,13,15,15,14,15,15,16,17,14,15,15,16,16,13,13,14,15,16,14,14,15,15,16,14,15,15,16,16,15,15,16,15,18,15,16,16,17,17,14,15,15,16,16,15,15,15,16,16,14,15,15,17,16,16,16,16,17,17,15,16,16,17,16,10,12,12,14,14,12,13,13,14,15,12,13,13,15,14,14,14,15,15,16,14,15,14,16,15,12,13,13,15,14,13,13,14,15,15,13,14,14,15,15,14,14,15,15,16,14,15,15,16,16,12,13,13,15,15,13,14,14,15,16,13,14,13,15,14,15,15,15,16,16,14,15,15,16,15,13,14,14,16,15,14,14,14,15,16,14,15,15,16,16,15,15,16,15,17,16,17,16,17,17,14,14,15,15,16,15,15,16,16,16,14,15,14,16,15,16,16,16,17,17,15,16,15,17,15,11,13,13,14,15,13,13,14,15,15,13,14,13,15,15,14,15,15,15,16,14,15,15,17,15,13,13,14,15,15,13,14,15,15,16,14,14,14,16,16,15,14,16,15,17,15,16,16,17,16,13,14,14,15,15,14,14,14,16,16,13,15,14,16,15,15,15,16,17,17,15,16,15,17,16,14,15,15,15,16,15,15,16,15,17,15,16,16,16,17,16,16,17,15,18,16,17,17,17,17,14,15,15,16,16,15,16,16,17,17,15,16,15,17,16,16,17,17,18,18,16,17,15,18,16,10,12,12,14,14,13,13,14,14,15,13,14,13,15,14,14,15,15,15,16,15,15,15,16,15,12,13,13,15,14,12,12,14,14,15,14,15,14,16,15,15,14,15,14,17,15,16,16,17,16,12,13,13,14,15,14,14,15,15,16,13,14,12,16,14,15,16,16,16,17,15,16,14,17,15,14,15,14,16,15,14,14,15,15,15,15,16,15,17,16,15,14,16,14,16,16,17,17,18,17,14,14,15,15,16,15,16,16,16,17,14,15,14,16,15,16,16,17,17,17,15,16,14,17,14,10,12,12,14,13,12,13,13,14,14,11,13,12,14,14,13,14,14,15,16,13,14,14,16,15,12,13,13,14,14,13,13,14,15,15,13,14,13,15,15,14,14,15,15,16,14,15,15,16,16,11,13,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,13,14,14,16,15,13,14,14,15,15,14,15,15,15,16,14,15,15,16,16,15,16,16,16,17,16,16,16,17,17,13,14,14,15,15,14,15,15,16,16,13,14,14,16,15,15,16,16,17,17,15,15,15,17,15,11,12,12,14,14,12,13,13,14,15,12,13,13,15,14,14,14,15,15,16,14,14,14,16,15,12,13,13,15,14,13,13,14,15,15,13,14,14,16,15,14,15,15,15,16,15,15,15,16,16,12,13,13,14,15,13,13,14,15,15,13,14,13,15,15,15,15,15,16,16,14,15,14,16,15,14,14,15,16,16,14,15,15,15,16,15,16,15,16,16,15,15,16,15,17,16,16,16,17,17,13,14,14,15,16,14,15,15,16,16,14,14,14,16,16,16,16,16,17,17,15,15,15,17,15,11,12,12,14,14,12,13,13,14,15,12,13,13,15,14,14,14,14,15,16,13,14,14,16,15,12,13,13,15,15,13,13,14,15,16,13,14,14,15,15,14,15,15,16,17,14,15,15,17,16,12,13,13,15,14,13,14,14,15,15,13,14,13,15,15,14,15,15,16,16,14,15,14,17,15,14,15,15,16,16,14,15,15,16,17,15,15,15,17,17,15,16,16,16,17,16,17,16,17,17,13,15,14,16,15,14,15,15,16,16,14,15,14,16,15,16,16,16,17,17,15,16,15,17,15,10,12,12,14,14,13,13,14,14,15,13,14,13,15,14,14,15,15,15,17,14,15,15,16,15,12,13,13,15,14,12,12,14,14,15,14,15,14,16,15,15,14,16,15,17,15,16,16,17,16,12,13,13,14,15,14,14,15,15,16,12,14,12,15,14,15,16,16,16,17,15,16,14,17,14,14,15,14,16,16,14,14,15,15,16,15,16,16,17,16,15,14,16,14,17,16,17,17,18,17,14,14,15,15,16,15,15,16,16,17,14,15,14,16,15,16,17,17,17,18,15,16,14,17,14,11,13,13,15,14,13,13,14,15,15,12,14,13,15,15,14,15,15,15,17,14,15,14,16,15,13,14,14,15,15,13,14,15,15,16,14,15,14,16,16,15,15,16,16,17,15,16,16,17,17,13,14,13,15,15,14,14,14,16,16,13,15,14,16,15,15,16,16,17,17,15,16,14,17,15,15,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,15,17,16,17,17,17,17,18,18,14,15,15,17,15,15,16,16,17,16,15,16,15,17,15,16,17,17,17,17,16,17,15,18,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,7,8,8,10,10,8,9,9,10,11,8,9,9,10,10,9,10,10,11,11,9,10,10,11,11,8,9,9,10,10,9,9,10,11,11,9,10,10,11,11,10],"i8",L3,R.GLOBAL_BASE+400337),d3([10,11,11,11,10,11,11,11,11,8,9,9,10,10,9,10,10,11,11,9,10,9,11,11,10,11,11,11,11,10,11,10,11,11,10,10,10,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,11,12,11,11,11,11,12,10,10,10,11,11,10,11,11,11,11,10,11,11,11,11,11,11,11,12,11,11,11,11,12,11,8,9,10,11,11,9,10,11,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,10,11,11,10,10,11,11,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,10,10,11,11,10,11,11,12,12,10,11,11,12,11,11,12,12,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,8,10,9,11,11,9,10,10,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,10,10,11,11,10,11,11,12,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,11,12,11,11,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,13,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,10,11,11,12,11,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,12,12,13,13,13,13,13,13,13,13,13,8,10,10,11,11,9,10,10,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,11,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,10,10,11,11,10,11,11,12,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,11,12,10,11,11,12,12,11,11,11,12,12,11,11,11,12,12,10,10,11,11,12,11,11,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,11,11,12,11,12,12,11,12,11,12,12,10,11,11,12,12,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,13,12,12,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,11,12,12,12,12,12,12,12,13,12,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,11,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,10,10,11,11,9,10,10,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,10,11,11,10,11,11,11,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,11,12,12,11,12,11,12,12,10,11,11,12,12,11,11,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,10,12,11,11,11,11,12,12,11,12,11,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,11,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,11,11,12,12,11,12,12,12,12,11,12,11,13,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,12,13,13,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,11,12,12,12,11,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,12,13,12,13,12,12,13,13,13,12,12,13,13,13,12,13,13,13,13,12,12,12,12,13,12,12,13,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,11,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,13,13,13,13,12,13,13,12,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,13,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,11,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,12,13,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,11,12,12,12,12,12,13,13,11,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,13,13,13,13,13,12,13,12,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,13,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,13,13,13,13,13,13,13,13,13,12,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,8,5,8,7,5,7,8,7,8,10,8,10,10,5,8,7,8,10,10,7,10,8,6,8,9,9,10,12,9,11,11,9,10,11,11,11,13,11,13,13,9,11,11,11,12,13,11,13,11,6,9,8,9,11,11,9,12,10,9,11,11,11,11,13,11,13,13,9,11,10,11,13,13,11,13,11,6,9,9,8,10,11,9,12,11,8,10,11,10,11,13,11,13,13,9,11,11,11,13,12,11,13,11,8,10,10,9,11,12,10,12,12,10,10,12,11,11,14,12,13,14,10,12,12,12,13,13,11,14,11,8,11,10,11,12,13,11,14,12,10,12,11,11,12,14,13,15,14,10,12,12,13,14,15,12,14,12,5,9,9,9,11,12,8,11,10,9,11,11,11,11,13,11,12,13,8,11,10,11,13,13,10,13,11,8,10,11,11,12,14,11,13,12,10,12,12,12,12,14,14,15,14,10,11,12,13,14,15,11,14,12,8,10,10,10,12,12,9,12,11,10,12,12,11,11,14,12,13,13,10,12,10,12,14,13,11,13,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,6,7,7,7,7,7,7,7,7,7,7,8,7,8,8,7,8,8,7,8,7,7,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,8,8,8,8,8,8,9,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,8,8,8,8,8,9,8,8,9,8,7,8,8,7,8,8,7,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,9,8,8,9,8,7,8,8,8,8,9,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,9,9,9,8,9,9,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,7,8,8,7,8,8,8,8,8,8,8,9,8,8,9,7,8,8,8,8,8,8,8,8,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,8,8,9,8,8,8,8,8,9,9,9,9,9,8,8,8,8,9,9,8,9,8,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,5,5,4,7,7,4,7,7,5,7,8,7,8,10,8,9,9,5,7,7,8,9,9,7,10,8,5,7,8,8,9,10,8,10,10,8,9,10,10,10,12,10,12,12,8,10,10,10,12,12,10,12,11,5,8,7,8,10,10,8,10,9,8,10,10,10,11,12,10,12,12,8,10,9,10,12,12,10,12,10,5,8,8,7,10,10,8,10,10,7,9,10,9,10,12,10,12,12,8,10,10,10,12,12,10,12,11,7,9,10,9,11,12,10,12,11,9,9,12,11,10,14,12,12,13,10,12,11,12,13,13,11,14,12,7,10,9,10,11,11,10,12,11,9,11,11,11,11,13,12,14,13,10,12,12,12,14,14,11,14,12,5,8,8,8,10,10,7,10,10,8,10,10,10,11,12,10,12,12,7,10,9,10,12,12,9,12,10,7,9,10,10,11,12,10,11,11,10,12,12,11,12,14,12,14,14,9,11,11,12,13,14,11,13,11,7,10,9,10,11,12,9,12,11,10,11,12,11,12,14,12,13,13,9,12,9,12,13,12,11,14,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,9,9,6,8,8,10,10,6,8,8,10,10,8,10,10,12,13,8,10,10,13,12,6,8,8,10,10,8,8,9,10,11,8,9,9,11,11,10,10,11,12,13,10,11,11,13,13,6,8,8,10,10,8,9,9,11,11,8,9,8,11,10,10,11,11,13,13,10,11,10,13,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,13,13,13,15,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,13,13,14,15,12,13,12,15,12,6,8,8,10,11,8,9,10,11,12,8,9,9,11,11,10,11,12,13,14,10,11,11,13,13,8,9,9,11,12,9,10,11,12,13,9,10,10,12,13,11,12,13,13,15,11,12,12,14,14,8,9,9,11,12,9,10,11,12,13,9,10,10,13,12,11,12,13,14,15,11,12,12,14,13,10,11,12,13,14,11,12,13,13,15,12,13,13,14,14,13,13,14,14,16,14,15,14,16,15,10,12,11,14,13,12,12,13,14,14,11,12,12,14,14,14,14,15,15,16,13,14,14,16,14,6,8,8,11,10,8,9,9,11,11,8,10,9,12,11,10,11,11,13,13,10,12,11,14,13,8,9,9,12,11,9,10,10,12,13,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,8,9,9,12,11,9,10,10,13,12,9,11,10,13,12,11,12,12,14,14,11,13,12,15,13,10,11,12,13,14,11,12,13,13,14,12,13,12,14,14,13,13,14,14,16,14,15,14,16,16,10,12,11,14,13,12,13,13,14,14,11,13,12,15,13,14,14,15,16,16,13,14,13,16,14,9,10,11,12,13,11,11,12,13,14,11,11,12,13,14,13,13,14,14,16,13,14,14,15,15,11,11,12,13,14,12,12,13,13,15,12,13,13,14,15,14,14,15,15,17,14,14,15,16,16,11,12,12,13,14,12,12,13,14,15,12,13,12,14,15,14,14,15,15,17,14,15,14,16,16,13,14,14,15,16,14,14,15,15,17,14,15,15,16,16,15,16,17,16,18,16,17,16,17,17,13,14,14,16,15,14,15,15,16,16,14,15,14,16,15,16,16,17,17,18,16,16,16,17,16,9,11,10,13,12,11,12,11,14,13,11,12,11,14,13,13,14,14,16,15,13,14,13,16,14,11,12,12,14,13,12,12,13,14,14,12,13,13,15,14,14,14,15,16,16,14,15,14,17,15,11,12,11,14,13,12,13,13,15,14,12,13,12,15,13,14,15,14,16,16,14,15,14,17,15,13,14,14,15,16,14,14,15,16,16,14,15,15,16,16,15,16,16,16,17,16,16,16,17,17,13,14,14,16,15,14,15,15,17,16,14,15,14,17,15,16,17,17,17,17,16,16,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,11,11,14,13,8,9,9,11,12,9,10,10,12,13,9,10,10,13,12,11,11,12,13,15,11,12,12,15,14,8,9,9,12,11,9,10,11,12,13,9,11,10,13,12,11,12,12,14,15,11,13,12,15,14,10,11,11,13,14,11,12,12,13,14,11,12,12,14,14,13,13,14,14,16,13,14,14,16,15,11,12,11,14,13,12,13,13,14,14,11,13,12,14,13,14,14,15,16,16,13,14,14,16,14,8,9,9,11,12,9,10,10,12,13,9,10,10,13,12,11,12,12,14,15,11,12,12,14,14,9,9,10,11,13,10,10,12,12,14,10,10,11,13,13,12,12,13,14,16,12,12,13,15,15,9,10,10,13,12,10,11,11,13,14,10,12,11,14,13,12,13,13,15,15,12,13,13,15,15,11,11,12,13,15,12,12,13,13,15,12,13,13,14,15,14,14,15,15,17,14,15,15,16,16,11,13,12,15,14,13,13,13,15,15,12,14,13,15,14,15,15,15,16,16,14,15,15,17,15,7,9,9,12,11,9,10,10,12,12,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,9,10,10,12,12,10,10,11,12,13,10,11,11,14,13,12,12,13,14,15,12,13,13,15,14,9,10,10,12,12,10,11,11,13,13,10,11,10,14,12,12,13,13,15,15,12,13,12,15,13,11,12,12,14,14,12,12,13,14,15,12,13,13,15,15,14,13,14,13,16,14,15,15,16,16,11,12,12,14,14,13,13,14,15,15,12,13,12,15,14,15,15,15,16,16,14,15,14,17,14,10,11,12,13,14,11,12,13,14,15,11,12,12,14,15,13,14,15,15,17,14,14,14,16,16,11,12,13,12,15,12,12,14,13,16,13,13,14,13,16,14,14,15,14,17,15,15,15,15,17,11,13,12,15,15,13,13,14,15,16,12,14,13,16,15,15,15,15,17,17,15,15,15,17,16,14,14,15,14,16,14,14,16,14,17,15,15,15,14,17,16,16,17,15,18,17,17,17,16,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,17,17,17,18,18,16,17,16,18,17,10,11,11,14,13,11,12,12,14,14,11,13,12,15,14,14,14,14,16,16,14,15,14,16,15,11,12,12,15,13,12,13,13,15,14,13,14,13,16,14,14,15,15,16,16,15,16,15,17,16,11,13,12,15,14,13,13,14,15,15,12,14,13,16,14,15,15,15,17,17,14,16,15,17,16,14,14,14,16,15,14,15,15,16,16,15,16,15,17,16,16,16,16,16,17,16,17,17,18,17,14,15,15,16,16,15,15,16,17,16,14,15,15,17,16,17,17,17,18,18,16,17,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,12,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,11,10,13,12,11,12,13,14,15,11,12,12,15,14,8,9,9,12,11,9,10,10,12,13,9,10,10,13,12,11,12,12,14,15,11,12,12,14,13,11,11,12,13,14,11,12,13,13,15,12,13,13,14,14,13,14,14,14,16,14,15,14,16,16,10,11,11,14,13,11,12,12,14,14,11,12,12,14,13,13,14,14,15,16,13,14,13,16,14,7,9,9,11,11,9,10,11,12,13,9,10,10,12,12,11,12,13,14,15,11,12,12,14,14,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,13,15,12,13,13,15,15,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,12,13,13,14,15,12,13,12,15,13,11,12,12,14,14,12,12,13,14,15,13,14,13,15,15,14,13,15,13,16,15,15,15,16,16,11,12,12,14,14,12,13,13,14,15,12,13,12,15,14,14,15,15,16,17,13,14,13,16,13,8,9,9,12,11,9,10,10,12,13,9,10,10,13,12,11,12,12,14,15,11,12,12,15,14,9,10,10,12,13,10,11,12,13,14,10,11,11,14,13,12,13,13,15,15,12,13,13,15,15,9,10,9,13,11,10,11,10,13,13,10,12,10,14,12,12,13,12,15,15,12,13,12,15,14,11,12,13,14,15,12,13,14,14,15,13,13,13,15,15,14,15,15,15,17,15,15,15,16,16,11,12,11,15,13,12,13,13,15,14,12,13,12,16,13,14,15,15,16,16,14,15,14,17,14,10,11,11,13,14,11,12,13,14,15,11,12,12,14,14,14,14,15,15,17,14,14,14,15,16,11,12,13,14,15,12,13,14,14,16,13,14,13,15,15,14,15,16,15,17,15,15,15,17,17,11,12,12,13,15,13,13,14,14,16,12,13,13,14,15,15,15,15,16,17,14,15,15,16,16,14,15,15,16,16,14,15,15,16,17,15,15,16,16,17,16,16,17,16,18,17,17,17,18,18,14,14,15,15,16,15,15,15,16,17,14,15,15,16,16,16,17,17,17,18,16,16,16,17,16,10,11,11,14,13,11,13,12,15,14,11,13,12,15,14,14,15,14,16,16,13,15,14,17,15,11,12,13,15,15,12,13,14,15,16,13,14,13,16,15,15,15,15,16,17,15,15,15,17,16,11,13,11,15,12,13,14,13,16,13,12,14,12,16,13,15,15,15,17,15,14,16,14,17,14,14,15,15,16,17,15,15,16,16,17,15,16,15,17,17,16,16,17,17,18,16,17,17,18,18,14,15,14,17,13,15,16,15,17,15,15,16,15,17,14,16,17,16,18,16,16,17,16,18,15,9,11,11,13,13,10,12,12,14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,16,16,10,11,12,14,14,11,12,13,14,15,11,13,13,15,15,13,14,14,15,16,14,15,15,16,16,11,12,12,14,14,12,13,13,15,15,12,13,12,15,14,14,15,15,16,16,14,15,14,17,16,12,13,13,15,16,13,13,14,15,16,13,14,14,16,16,14,15,16,16,17,15,16,16,17,17,13,14,14,16,15,14,15,15,17,16,14,15,14,17,15,16,16,17,17,17,16,16,16,18,16,10,11,12,14,14,11,12,13,14,15,11,13,12,15,15,13,14,15,16,16,14,15,15,17,16,11,11,13,14,15,12,12,14,14,16,12,13,14,15,15,14,14,15,16,17,15,15,15,17,17,12,13,12,15,15,13,14,14,16,15,13,14,13,16,15,15,16,15,17,17,15,16,15,17,16,13,12,15,14,16,14,13,15,14,17,14,13,15,15,17,15,14,17,15,18,16,15,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,16,17,17,18,18,16,17,16,18,17,10,11,11,14,14,11,12,12,14,15,11,13,12,15,14,13,14,14,16,16,14,15,14,16,16,11,12,12,14,14,12,12,13,15,15,12,13,13,15,15,14,14,15,16,16,14,15,15,17,16,11,12,12,15,15,13,13,13,15,15,12,13,13,15,15,15,15,15,17,17,14,15,15,17,16,13,14,13,16,15,14,14,14,16,16,14,15,14,17,16,15,15,16,16,17,16,17,16,18,17,14,15,15,16,16,15,15,15,17,17,14,15,15,17,16,16,17,17,18,18,16,17,16,18,16,12,13,13,15,15,13,14,14,16,16,13,14,14,16,16,14,15,16,16,18,15,16,16,17,17,13,13,14,14,16,14,14,15,15,17,14,14,15,15,17,15,15,17,15,18,16,16,17,17,18,13,14,14,16,16,14,15,15,16,17,14,15,15,17,16,16,17,16,17,18,16,17,16,18,17,15,14,16,13,18,16,15,17,14,18,16,15,17,14,18,17,16,18,15,19,17,17,18,16,19,15,16,16,17,17,16,17,17,18,18,16,17,16,18,17,18,18,18,19,18,17,18,17,19,17,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,15,15,16,17,15,16,15,17,16,12,13,13,15,15,13,13,14,15,16,14,15,14,16,15,15,15,16,16,17,16,16,16,18,17,12,13,13,15,15,14,14,15,16,16,13,14,13,16,15,16,16,16,17,17,15,16,15,18,16,15,15,15,17,15,14,15,15,16,16,16,17,16,17,16,16,16,17,16,17,17,18,17,19,18,15,15,16,17,17,16,16,16,17,17,15,16,15,17,16,17,18,18,18,18,16,17,16,18,16,9,11,11,13,13,11,12,12,14,14,10,12,12,14,14,13,14,14,15,16,13,14,14,16,15,11,12,12,14,14,12,12,13,14,15,12,13,13,15,15,14,14,15,16,17,14,15,15,16,16,10,12,11,14,14,11,13,13,15,15,11,13,12,15,14,14,14,15,16,16,13,14,14,16,15,13,14,14,15,16,14,14,15,15,17,14,15,15,16,17,16,16,16,16,18,16,16,17,17,17,12,13,13,16,15,13,14,14,16,16,12,14,13,16,15,15,16,16,17,17,14,16,15,17,16,10,11,11,14,14,11,12,13,14,15,11,12,12,15,14,14,14,15,16,16,13,14,14,16,16,11,12,12,14,15,12,13,14,15,15,13,13,13,15,15,14,15,15,16,17,15,15,15,16,17,11,12,12,14,14,12,13,13,15,15,12,13,12,15,15,14,15,15,16,17,14,15,14,16,16,14,14,15,16,16,14,15,15,16,17,15,16,15,17,17,16,16,17,16,18,16,17,17,18,18,13,13,14,15,16,14,14,15,16,17,14,14,14,16,15,16,16,17,17,18,15,16,15,17,16,10,12,11,14,14,11,13,13,15,15,11,13,12,15,15,14,15,15,16,16,13,15,14,16,16,12,12,13,15,15,13,13,14,15,16,13,14,14,16,15,15,15,16,16,17,15,15,15,17,17,11,13,11,15,14,12,14,13,16,15,12,14,12,16,14,15,15,15,17,17,14,15,14,17,15,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,17,18,16,17,17,18,18,13,14,12,16,14,14,15,13,17,15,14,15,13,17,14,16,17,15,18,17,15,17,14,18,15,11,12,12,14,15,13,13,14,15,16,13,14,13,16,15,15,15,16,16,17,15,15,15,16,16,12,13,13,15,15,13,13,14,15,16,14,15,14,16,16,15,15,16,16,18,16,16,16,18,17,12,13,13,15,15,14,14,15,15,16,13,14,13,15,15,16,16,16,17,18,15,16,15,17,16,15,16,15,17,16,15,15,16,16,17,16,17,16,17,17,16,16,17,16,18,17,18,18,18,18,14,15,15,15,17,16,15,17,16,17,14,15,15,16,16,17,17,18,18,19,16,16,16,17,16,12,13,13,15,15,13,14,14,16,16,13,14,14,16,16,15,16,16,17,17,15,16,15,18,16,13,14,14,16,16,14,15,15,16,17,14,15,15,17,16,16,16,17,17,18,16,17,16,18,18,13,14,13,16,14,14,15,14,17,15,14,15,14,17,14,16,17,16,18,17,15,17,15,18,15,15,16,16,17,18,16,16,17,17,18,16,17,17,17,18,17,17,18,18,19,17,18,18,19,18,15,16,14,17,13,16,17,15,18,14,16,17,15,18,14,18,18,17,19,16,17,18,16,19,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,4,7,7,4,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,6,7,8,8,9,10,8,9,10,8,9,10,10,10,12,10,11,11,8,10,10,10,11,12,10,11,11,6,8,7,8,10,9,8,10,9,8,10,10,10,11,11,10,12,11,8,10,9,10,11,11,10,12,10,5,8,8,8,10,10,8,10,10,7,9,10,9,10,11,9,11,11,8,10,10,10,11,12,10,12,11,7,9,9,9,10,11,9,11,11,9,9,11,10,11,12,11,11,12,9,11,11,11,12,12,11,12,12,7,9,9,10,11,11,10,12,11,9,11,10,11,11,12,11,13,12,10,11,11,12,13,13,11,13,11,5,8,8,8,10,10,8,10,10,8,10,10,10,11,12,10,12,11,7,10,9,9,11,11,9,11,10,7,9,9,10,11,12,10,11,11,10,11,11,11,11,13,12,13,13,9,10,11,11,12,13,11,12,11,7,9,9,9,11,11,9,11,10,9,11,11,11,12,12,11,12,12,9,11,9,11,12,11,10,12,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,9,14,16,17,19,22,22,5,4,6,9,11,13,17,20,9,5,5,6,9,11,15,19,11,7,5,5,7,9,13,17,14,9,7,6,6,7,11,14,16,11,9,7,6,4,4,8,19,15,13,11,9,4,3,4,21,16,16,15,12,6,4,4,2,0,0,0,64,0,0,0,56,145,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,98,6,0,0,0,0,0,0,0,0,0,40,98,6,0,0,0,0,0,0,0,0,0,80,98,6,0,120,98,6,0,0,0,0,0,0,0,0,0,160,98,6,0,200,98,6,0,0,0,0,0,0,0,0,0,240,98,6,0,24,99,6,0,0,0,0,0,0,0,0,0,64,99,6,0,104,99,6,0,24,99,6,0,0,0,0,0,144,99,6,0,184,99,6,0,56,167,5,0,96,167,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,192,97,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,7,13,15,16,17,19,20,6,3,4,7,9,10,12,15,13,4,3,4,7,8,11,13,14,7,4,4,6,7,10,11,16,9,7,6,7,8,9,10,16,9,8,7,7,6,8,8,18,12,10,10,9,8,8,9,20,14,13,12,11,8,9,9,5,0,0,0,243,0,0,0,48,144,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,40,145,6,0,0,0,0,0,5,0,0,0,53,12,0,0,224,131,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,24,144,6,0,0,0,0,0,5,0,0,0,243,0,0,0,216,130,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,208,131,6,0,0,0,0,0,5,0,0,0,243,0,0,0,208,129,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,200,130,6,0,0,0,0,0,5,0,0,0,243,0,0,0,200,128,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,192,129,6,0,0,0,0,0,5,0,0,0,53,12,0,0,120,116,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,176,128,6,0,0,0,0,0,5,0,0,0,53,12,0,0,40,104,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,96,116,6,0,0,0,0,0,1,0,0,0,7,0,0,0,0,104,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,8,104,6,0,0,0,0,0,5,0,0,0,243,0,0,0,248,102,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,240,103,6,0,0,0,0,0,5,0,0,0,243,0,0,0,240,101,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,232,102,6,0,0,0,0,0,5,0,0,0,243,0,0,0,232,100,6,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,224,101,6,0,0,0,0,0,5,0,0,0,243,0,0,0,224,99,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,216,100,6,0,0,0,0,0,1,4,5,5,10,10,5,10,10,5,10,10,10,10,10,10,10,10,5,10,10,10,10,10,10,10,10,7,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,6,7,8,6,8,7,6,7,7,7,7,8,7,8,8,6,7,7,7,8,8,7,8,7,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,10,9,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,9,9,10,9,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,9,10,8,9,9,9,10,9,9,10,9,7,8,8,8,9,9,8,9,9,8,8,9,9,9,9,9,9,9,8,9,9,9,10,9,9,9,9,7,9,9,9,9,10,9,10,9,9,9,9,9,9,10,10,10,10,9,9,9,10,10,10,9,10,9,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,9,9,10,9,7,9,9,9,9,10,9,10,9,9,9,9,9,9,10,10,10,10,9,9,9,10,10,10,9,10,9,7,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,9,10,8,9,8,9,9,9,9,10,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,5,7,9,5,9,7,5,7,8,7,7,10,9,10,10,5,8,7,9,10,10,7,10,7,6,9,9,9,10,12,9,11,11,9,10,11,11,11,13,12,13,13,9,11,11,12,13,13,11,13,11,6,9,9,9,11,11,9,12,10,9,11,11,11,11,13,12,13,13,9,11,10,12,13,13,11,13,11,6,9,9,9,11,12,9,12,11,9,10,11,10,10,13,12,13,13,9,11,11,12,13,12,11,13,11,7,9,10,9,10,12,10,12,11,10,10,12,10,10,12,12,12,13,10,11,11,12,12,13,10,12,10,7,10,10,11,11,14,11,14,11,10,12,11,11,11,14,14,14,14,10,11,12,14,14,14,11,14,11,6,9,9,9,11,12,9,12,11,9,11,11,11,11,13,12,12,13,9,11,10,12,13,13,10,13,10,7,10,10,11,11,14,11,14,11,10,12,11,11,11,14,14,15,14,10,11,12,13,14,15,11,14,11,7,10,9,10,11,12,9,12,10,10,11,11,10,10,12,12,13,12,9,12,10,12,13,12,10,12,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,10,10,5,7,8,11,12,5,8,7,12,11,9,11,11,13,15,9,11,11,15,13,6,7,8,11,11,7,7,9,11,13,8,9,9,13,12,11,11,12,12,15,11,12,12,15,14,6,8,7,11,11,8,9,9,12,13,7,9,7,13,11,11,12,12,14,15,11,12,11,15,12,10,11,11,12,14,10,11,12,12,15,12,13,13,14,15,13,12,14,12,16,15,15,15,16,16,10,11,11,14,12,12,13,13,15,14,10,12,11,15,12,15,15,15,16,17,13,14,12,17,12,6,8,8,12,12,8,9,10,13,13,8,9,9,13,13,12,12,13,15,16,12,13,13,16,15,8,9,10,12,13,9,9,11,13,14,10,11,11,14,14,13,13,14,15,16,13,14,14,16,16,8,10,9,13,13,10,11,11,14,14,9,10,10,14,13,13,14,14,16,17,13,13,13,16,15,12,13,13,14,16,13,13,14,14,16,14,14,14,16,16,15,15,16,15,18,16,17,17,18,18,12,13,13,15,15,14,14,14,16,16,13,14,13,16,15,16,16,17,18,18,15,16,15,18,15,6,8,8,12,12,8,9,9,13,13,8,10,9,13,13,12,13,13,15,16,12,13,12,16,15,8,9,10,13,13,9,10,10,13,14,10,11,11,14,14,13,13,13,15,16,13,14,14,17,16,8,10,9,13,13,10,11,11,14,14,9,11,9,14,13,13,14,14,16,16,13,14,13,16,14,12,13,13,15,16,13,13,14,15,16,14,14,14,16,16,15,15,16,15,18,17,17,17,18,18,12,13,13,16,14,14,14,14,16,16,13,14,13,16,14,16,17,17,18,18,15,16,15,18,15,11,12,13,14,16,13,13,14,15,17,13,14,14,16,17,16,16,17,17,19,16,17,17,18,19,13,13,14,16,16,14,14,15,16,17,14,15,15,17,17,17,16,17,17,19,17,17,18,19,19,13,14,14,16,16,14,14,15,17,18,14,15,14,17,17,17,17,18,18,19,17,17,17,18,19,16,16,16,17,18,17,17,17,18,19,17,17,17,18,19,18,18,19,18,20,19,20,19,21,20,16,17,17,18,18,17,17,18,19,19,17,17,17,19,18,19,19,19,19,20,19,19,19,20,19,11,13,12,16,14,13,14,14,17,16,13,14,13,17,15,16,17,17,18,18,16,17,16,19,17,13,14,14,16,16,14,14,14,17,17,14,15,15,17,16,17,17,17,19,19,17,18,17,19,18,13,14,13,17,16,14,15,15,17,17,14,15,14,18,16,17,17,17,19,19,17,17,16,19,17,16,17,17,18,19,17,17,17,18,18,17,18,17,19,18,18,19,18,19,19,19,20,19,20,20,16,17,16,18,17,17,17,17,18,18,17,18,17,19,17,19,19,19,19,20,18,19,19,20,18,6,8,8,12,12,8,9,9,13,13,8,10,9,13,13,11,13,13,15,16,12,13,13,16,15,8,9,9,13,13,9,9,10,13,14,10,11,11,14,14,12,12,13,14,16,13,14,14,17,16,8,10,9,13,13,10,11,11,14,14,9,11,10,14,13,13,14,14,16,16,13,14,13,16,15,12,13,13,14,16,12,13,14,14,16,13,14,14,16,16,15,14,16,15,18,16,17,17,18,17,12,13,13,16,15,14,14,14,16,16,13,14,13,16,15,16,16,17,17,17,15,16,15,18,15,7,9,9,13,13,9,9,11,13,14,9,10,10,14,13,12,13,14,15,16,12,14,13,17,15,9,9,10,13,14,10,9,11,13,15,11,11,11,14,14,13,12,14,14,17,14,14,14,17,16,9,10,10,14,13,11,11,11,14,14,10,11,10,15,13,14,14,14,16,17,13,14,13,17,14,13,13,14,14,16,13,13,14,14,17,14,14,14,16,16,15,14,16,15,18,17,17,17,18,18,13,14,13,16,15,14,14,15,17,16,13,14,13,17,15,17,16,17,17,17,15,16,14,18,14,7,9,9,13,13,9,10,10,13,14,9,11,10,14,13,13,14,14,16,16,13,14,14,17,15,9,10,10,14,13,9,10,11,13,14,11,12,11,15,14,13,13,14,14,16,14,15,15,17,17,9,10,10,14,14,11,12,12,14,15,10,11,10,15,13,14,15,15,17,17],"i8",L3,R.GLOBAL_BASE+410577),d3([14,15,13,17,14,13,14,13,16,16,13,13,14,15,16,14,15,15,17,17,15,14,16,15,18,17,18,17,20,18,13,14,14,16,16,15,15,15,17,17,13,14,13,17,15,17,17,18,18,18,15,16,14,19,14,12,13,13,15,16,13,13,15,16,17,13,14,14,16,16,15,15,17,17,19,16,17,17,19,18,13,13,14,15,17,14,13,15,15,17,14,15,15,16,17,16,15,18,16,19,17,17,17,18,19,13,14,14,17,16,14,15,15,17,17,14,15,14,17,16,17,17,17,18,19,16,17,16,19,17,16,16,17,16,18,16,16,17,16,19,17,17,18,18,19,18,17,18,17,21,19,19,19,20,19,16,17,17,18,18,17,17,18,18,19,16,17,16,18,18,19,19,19,19,20,18,18,17,20,18,11,13,13,16,15,13,14,14,16,17,13,15,14,17,16,16,17,17,18,18,17,17,17,19,18,13,14,13,17,16,14,13,14,16,17,15,16,15,18,16,17,16,17,17,19,18,18,18,20,18,13,14,14,16,17,15,15,15,17,18,14,15,14,18,16,18,18,18,19,20,17,18,16,20,17,16,17,16,18,18,16,16,17,18,18,17,18,18,19,18,18,17,19,17,20,19,20,19,22,20,16,16,17,18,18,18,17,17,19,19,16,17,16,18,17,19,20,19,22,21,18,19,18,21,17,6,8,8,12,12,8,9,10,13,13,8,9,9,13,13,12,13,13,15,16,11,13,13,16,15,8,9,10,13,13,9,10,11,13,14,10,11,11,14,14,13,13,14,15,16,13,14,14,16,16,8,9,9,13,13,10,11,11,14,14,9,10,9,14,13,13,14,14,16,17,12,14,12,16,14,12,13,13,15,16,13,13,14,15,16,13,14,14,15,17,15,15,16,15,18,16,16,17,17,17,12,13,13,16,14,13,14,14,16,16,12,14,13,16,14,16,17,17,18,18,15,15,14,18,14,7,9,9,13,13,9,10,11,13,14,9,10,10,14,13,13,14,14,15,17,13,14,14,16,15,9,10,10,14,14,10,10,11,13,15,11,12,12,15,14,14,13,15,14,17,14,15,15,17,17,9,10,10,13,14,11,11,12,14,15,9,11,10,14,13,14,15,15,16,18,13,14,13,16,14,13,14,14,16,16,13,13,14,15,17,15,15,15,16,17,15,14,16,15,18,17,17,18,19,18,13,14,14,16,16,14,15,15,17,17,13,14,13,16,15,17,17,18,18,18,15,16,14,18,15,7,9,9,13,13,9,10,10,13,14,9,11,10,14,13,12,13,14,15,16,12,14,13,16,15,9,10,10,13,14,10,10,11,13,14,11,11,11,15,14,13,13,14,14,16,14,14,14,17,16,9,10,9,14,13,11,11,11,14,14,10,11,9,15,13,14,14,14,16,16,13,14,12,17,14,13,13,14,15,16,13,13,14,15,16,14,15,14,16,17,15,14,16,14,18,16,17,17,18,18,13,14,13,16,14,14,14,14,16,16,13,14,13,17,14,17,17,17,18,18,15,16,14,18,15,11,13,13,16,16,13,14,15,16,17,13,14,14,17,16,16,17,17,18,19,17,17,17,19,18,13,14,14,17,17,13,13,15,16,18,15,15,15,17,17,17,16,18,17,20,18,17,18,19,19,13,14,14,16,17,15,15,16,16,18,14,15,14,16,16,17,17,18,18,20,17,18,16,18,17,16,17,16,19,18,16,16,17,18,19,18,18,18,19,19,18,17,18,17,21,20,19,19,21,21,16,16,17,18,18,17,17,18,19,19,16,17,16,19,18,20,20,20,19,21,18,18,17,20,18,12,13,13,16,15,13,14,14,16,16,13,14,13,17,16,16,17,17,18,18,15,17,15,19,17,13,14,14,16,17,14,14,15,16,17,14,15,15,17,17,16,16,17,17,18,17,17,17,19,19,13,14,13,17,15,14,15,15,17,16,14,15,13,17,15,17,18,17,19,18,16,17,15,20,16,16,17,17,18,18,16,16,17,18,18,17,18,17,19,18,17,17,18,18,20,19,20,19,20,19,16,16,16,19,16,17,17,17,19,18,16,17,16,19,16,19,19,19,19,19,18,19,17,19,17,11,13,13,16,16,13,14,14,17,17,13,14,14,17,17,15,17,17,19,19,16,18,17,20,19,12,14,14,17,17,13,14,15,17,18,14,15,15,17,18,16,16,17,18,20,17,18,18,20,18,13,14,14,17,17,14,15,15,17,18,14,15,15,17,17,17,18,17,19,19,17,18,17,19,19,15,16,16,18,18,15,16,17,18,19,16,17,17,19,19,17,17,18,18,21,18,19,19,21,19,16,17,17,18,18,17,17,18,19,19,17,18,17,19,19,19,19,19,20,20,18,19,18,21,19,12,13,13,16,16,13,14,14,16,17,13,15,14,17,16,15,16,17,17,19,16,17,17,19,18,13,13,14,16,17,14,13,15,16,17,14,15,15,17,17,15,15,17,17,20,17,17,18,19,18,13,14,14,17,16,15,15,15,17,18,14,15,14,17,16,17,17,17,18,18,16,17,16,19,17,16,15,17,17,19,16,15,17,16,19,17,16,17,18,19,17,16,19,16,20,19,18,19,19,19,16,17,17,18,18,17,17,17,18,19,16,17,16,19,18,20,19,19,20,19,18,18,17,20,17,11,13,13,16,16,13,14,15,16,17,14,15,14,18,16,17,17,17,18,21,17,18,17,20,19,13,14,14,17,16,13,14,15,16,18,15,16,15,18,17,17,16,17,17,19,17,18,18,20,19,13,14,14,16,17,15,15,16,17,18,14,15,14,18,17,17,18,18,19,20,17,18,16,19,17,16,17,15,19,18,16,16,16,18,18,17,18,17,20,19,18,17,18,17,20,20,20,19,22,20,16,17,17,18,19,18,18,18,19,20,16,17,16,19,18,20,19,19,20,20,18,19,17,20,17,13,14,14,16,17,14,14,16,16,18,14,16,15,17,16,16,16,17,17,18,17,17,16,19,18,14,14,15,16,17,14,14,16,16,18,16,16,16,17,17,16,15,17,16,19,18,18,18,19,19,14,15,15,17,17,15,16,16,17,18,14,16,14,18,16,17,17,18,18,19,16,17,16,19,17,16,16,17,16,18,16,16,17,16,19,18,18,18,17,18,17,16,18,16,20,19,19,19,19,19,16,17,17,18,18,17,17,18,19,19,16,17,16,19,17,18,19,19,19,20,17,18,16,20,16,11,14,13,17,17,14,14,16,16,18,14,16,14,19,16,18,18,19,18,19,18,19,18,21,18,13,15,14,18,16,14,14,16,16,18,16,17,16,19,17,18,16,19,17,20,19,19,19,21,19,13,14,15,17,18,17,16,17,17,19,14,16,14,18,16,20,19,19,20,21,18,19,16,21,17,17,18,16,19,17,16,16,17,18,18,19,19,18,21,18,17,17,18,17,20,20,20,20,22,20,17,17,18,18,20,19,19,19,18,20,16,17,17,19,19,21,21,21,20,21,17,19,17,23,17,11,13,13,16,16,13,14,14,17,17,13,14,14,17,17,16,17,17,19,20,15,16,16,19,19,13,14,14,16,17,14,15,15,17,18,14,15,15,17,17,17,17,18,19,19,17,17,18,19,19,13,14,14,17,16,14,15,15,17,17,13,15,14,18,17,17,18,18,19,20,16,17,16,19,18,16,16,17,18,18,17,17,17,18,19,17,18,17,19,19,19,19,19,19,20,19,20,19,20,20,15,16,16,18,17,16,17,17,20,18,15,16,16,19,17,19,19,19,20,20,17,18,17,21,17,11,13,13,16,16,13,14,15,16,17,13,15,14,17,16,17,17,18,18,20,17,17,17,19,19,13,14,14,17,17,14,14,15,17,18,15,15,15,18,17,17,17,18,17,20,18,18,17,20,18,13,14,14,16,17,15,15,16,17,18,14,15,13,17,17,17,18,18,19,20,17,17,16,19,17,16,17,17,18,18,16,16,17,18,18,18,18,18,19,19,18,17,19,18,21,19,20,20,20,20,16,15,17,18,18,17,17,18,18,20,16,16,16,18,17,20,19,20,21,22,17,18,17,20,17,12,13,13,16,16,13,14,15,16,17,13,14,14,17,16,16,17,18,18,19,15,16,16,19,18,13,14,14,16,17,14,14,15,16,17,14,15,15,17,17,16,16,17,17,19,17,17,17,19,18,13,14,13,17,16,14,15,15,17,17,13,15,13,17,16,17,17,17,19,19,15,17,15,19,17,16,17,17,18,18,16,16,17,17,19,17,18,17,19,19,18,17,19,17,19,19,19,19,20,19,15,17,15,19,16,17,17,16,19,18,16,17,15,18,16,19,19,19,20,19,17,19,16,19,16,11,14,14,17,17,15,14,16,16,18,15,16,14,18,16,18,18,19,18,21,18,19,18,20,18,13,15,14,18,17,14,14,16,16,18,16,17,16,19,17,17,17,19,17,22,19,19,19,21,19,13,14,15,17,18,17,16,17,17,19,14,16,14,18,16,19,19,19,20,21,18,18,16,20,17,17,18,16,19,18,15,17,17,19,19,19,19,18,21,19,18,17,20,17,21,22,21,20,21,21,17,16,19,18,20,19,18,19,18,20,16,17,16,19,18,21,20,21,19,23,18,19,16,20,17,13,14,14,17,16,14,14,15,16,18,14,16,14,17,16,16,16,17,17,19,16,17,16,19,17,14,15,15,17,17,14,14,16,16,17,15,16,16,18,17,16,16,17,17,19,17,18,17,19,18,14,15,14,17,16,16,16,16,17,17,14,16,14,17,16,18,18,18,18,19,16,17,15,19,16,17,17,17,18,18,16,15,17,17,18,18,18,18,19,19,17,16,18,16,19,19,19,19,19,19,16,17,16,19,16,18,18,17,19,18,16,17,16,19,16,19,19,20,19,19,17,18,16,20,16,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,6,8,8,10,10,8,9,9,10,11,8,10,9,11,10,9,10,10,11,11,9,10,10,11,11,8,9,9,10,10,9,9,10,11,11,10,10,10,11,11,10,11,11,11,11,10,11,11,11,11,8,9,9,11,10,10,10,10,11,11,9,10,9,11,11,10,11,11,11,11,10,11,10,11,11,10,10,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,10,11,11,11,11,11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,8,9,10,11,11,10,10,11,11,11,10,10,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,11,11,11,10,10,11,11,12,11,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,10,10,11,11,11,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,8,10,9,11,11,10,10,10,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,10,11,11,10,11,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,10,11,11,11,11,11,12,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,11,12,11,11,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,12,12,12,13,12,10,11,11,12,11,11,11,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,13,12,8,10,10,11,11,10,10,11,11,11,10,11,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,11,11,11,10,10,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,10,11,11,11,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,11,11,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,11,11,12,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,13,12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,12,13,13,12,13,13,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,13,12,13,12,12,13,13,13,13,12,13,13,13,13,8,10,10,11,11,10,10,11,11,11,9,11,10,11,11,10,11,11,12,12,10,11,11,12,12,10,10,11,11,11,10,11,11,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,9,11,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,11,12,12,12,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,12,13,12,12,13,12,13,12,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,12,13,13,13,12,12,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,12,13,12,13,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,12,13,12,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,13,13,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,12,13,12,13,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,12,12,13,13,12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,12,12,13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,13,12,13,12,12,13,13,13,13,12,13,12,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,12,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,12,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,7,8,5,8,7,5,7,7,7,7,9,7,9,9,5,7,7,8,9,9,7,9,7,6,8,8,8,9,10,8,9,9,8,9,10,9,9,11,10,11,11,8,9,9,10,11,11,9,11,10,6,8,8,8,9,9,8,10,9,8,9,9,9,10,11,10,11,10,8,10,9,10,11,11,9,11,9,6,8,8,7,9,9,8,10,9,7,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,11,10,7,9,9,8,10,10,9,10,10,9,9,10,10,10,11,10,11,11,9,10,10,10,11,11,10,11,10,7,9,9,9,9,10,9,10,9,8,10,9,9,9,11,10,11,11,9,10,10,10,11,11,9,11,9,6,8,8,8,9,10,7,9,9,8,9,9,9,10,10,9,10,10,7,9,9,9,10,10,9,10,9,7,9,9,9,9,10,9,10,9,9,10,10,9,9,11,10,11,11,8,9,10,10,11,11,9,11,9,7,9,9,9,10,10,8,10,10,9,10,10,10,10,11,10,11,11,9,10,9,10,11,11,10,11,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,7,7,6,7,7,6,7,7,6,7,7,7,8,8,7,8,8,6,7,7,7,8,8,7,8,8,7,7,8,7,8,8,7,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,7,7,8,8,7,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,6,8,8,7,8,8,7,8,8,7,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,8,9,8,9,9,8,8,9,8,9,9,9,9,9,8,9,9,9,9,9,9,9,9,7,8,8,8,9,9,8,9,8,8,8,8,8,9,9,9,9,9,8,9,8,9,9,9,9,9,9,6,8,8,7,8,8,7,8,8,8,8,8,8,8,9,8,9,9,7,8,8,8,9,9,8,9,8,7,8,8,8,8,9,8,9,8,8,8,9,9,9,9,9,9,9,8,8,8,9,9,9,8,9,9,7,8,8,8,9,9,8,9,8,8,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,5,7,8,5,8,7,5,7,8,8,8,10,8,10,10,5,8,7,8,10,10,8,10,8,6,8,9,8,10,12,9,11,11,9,10,11,11,11,13,12,13,13,9,11,11,11,13,13,11,13,12,6,9,8,9,11,11,8,12,10,9,11,11,11,12,13,11,13,13,9,11,10,11,13,13,11,13,11,5,9,9,8,11,11,9,12,11,8,10,11,10,11,13,11,13,13,9,11,11,11,13,13,11,13,12,8,10,11,10,12,13,10,13,12,10,10,13,11,11,14,12,13,14,11,13,12,13,14,14,12,14,12,8,11,10,11,12,13,11,14,12,10,13,12,12,12,13,13,15,14,11,12,13,13,14,15,12,14,12,5,9,9,9,11,12,8,11,11,9,11,11,11,12,13,11,13,13,8,11,10,11,13,13,10,13,11,8,10,11,11,12,14,11,13,12,11,13,12,12,12,14,13,15,14,10,12,13,13,14,15,12,13,12,8,11,10,10,12,13,10,13,12,11,12,13,12,12,14,13,14,14,10,13,10,12,14,13,11,14,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,9,9,6,7,8,10,10,6,8,7,10,10,8,10,10,12,13,8,10,10,13,12,6,8,8,10,10,7,8,9,10,11,8,9,9,11,11,10,10,11,12,13,10,11,11,14,13,6,8,8,10,10,8,9,9,11,11,7,9,8,11,10,10,11,11,13,14,10,11,10,13,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,13,14,13,15,14,9,10,10,13,12,10,11,11,13,13,10,11,10,13,12,13,13,14,14,15,12,13,12,15,12,6,8,8,10,11,8,9,10,11,12,8,9,9,11,11,10,11,12,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,10,11,12,13,11,11,13,13,15,11,12,12,14,14,8,9,9,12,12,9,10,11,12,13,9,10,10,13,12,11,12,13,14,15,11,12,12,14,14,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,13,13,14,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,14,14,11,13,12,14,13,14,15,15,16,16,13,14,14,16,14,6,8,8,11,10,8,9,9,12,11,8,10,9,12,11,10,11,11,13,13,10,12,11,14,13,8,9,9,12,12,9,10,10,12,13,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,8,9,9,12,11,9,10,10,13,12,9,11,10,13,12,12,12,12,14,14,11,13,12,15,13,11,11,12,13,14,11,12,13,13,14,12,13,13,14,15,13,13,14,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,15,13,14,15,15,16,16,13,15,13,16,14,9,10,11,12,13,11,11,12,13,14,11,12,12,13,14,13,13,14,14,16,13,14,14,15,16,11,11,12,13,14,12,12,13,14,15,12,13,13,14,15,14,14,15,15,17,14,15,15,16,17,11,12,12,14,14,12,13,13,14,15,12,13,12,15,15,14,15,15,16,17,14,15,15,16,16,13,14,14,15,16,14,14,15,15,17,15,15,15,16,17,16,16,17,16,18,16,17,17,18,18,13,14,14,16,15,14,15,15,17,16,14,15,15,16,16,16,17,17,18,18,16,16,16,17,16,9,11,10,13,12,11,12,12,14,13,11,12,11,15,13,13,14,14,16,15,13,14,13,17,14,11,12,12,14,14,12,12,13,15,15,12,13,13,15,14,14,14,15,16,16,14,15,15,17,16,11,12,11,14,13,12,13,13,15,14,12,13,12,15,13,14,15,15,16,16,14,15,14,17,15,13,14,14,15,16,14,15,15,16,17,14,15,15,16,17,16,16,16,17,17,16,17,17,18,18,13,15,14,16,15,15,15,15,17,16,14,15,14,17,15,16,17,17,18,18,16,17,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,12,11,14,13,7,9,9,11,12,9,10,10,12,13,9,10,10,13,12,11,11,12,13,15,11,12,12,15,14,8,9,9,12,11,9,10,10,13,13,9,11,10,13,12,12,12,12,14,15,11,13,12,15,13,10,11,11,13,14,11,12,12,13,15,11,12,12,14,14,13,13,14,14,16,14,15,14,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,15,13,14,15,15,16,16,13,14,14,16,14,8,9,9,11,12,9,10,11,12,13,9,10,10,13,12,11,12,13,14,15,11,12,12,15,14,9,9,11,11,13,10,10,12,12,14,10,10,11,13,14,12,12,13,14,16,12,13,13,15,15,9,11,10,13,12,10,11,11,13,14,10,12,11,14,13,12,13,13,15,16,12,13,13,15,15,11,11,13,13,15,12,12,14,13,15,13,13,14,14,15,14,14,15,14,17,15,15,15,16,16,12,13,12,15,14,13,14,14,15,15,12,14,13,15,14,15,15,15,17,17,14,15,14,17,15,7,9,9,12,11,9,10,10,12,12,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,9,10,10,12,12,10,10,11,12,13,10,11,11,14,13,12,12,13,14,15,12,13,13,16,15,9,10,10,13,12,10,11,11,13,13,10,11,10,14,12,13,13,13,15,15,12,13,12,15,14,11,12,12,14,14,12,12,13,14,15,13,14,13,15,15,14,13,15,14,16,15,16,15,17,16,12,12,12,14,14,13,13,14,15,15,12,13,12,15,14,15,15,16,16,17,14,15,14,17,14,10,11,12,13,14,11,12,13,14,15,11,12,13,14,15,13,14,15,15,17,14,15,15,16,16,11,12,13,12,15,12,12,14,13,16,13,13,14,13,16,14,14,16,14,18,15,15,16,16,17,12,13,12,15,15,13,14,14,15,16,13,14,13,16,15,15,15,16,17,18,15,15,15,17,16,14,14,15,14,17,15,14,16,14,17,15,15,16,15,18,16,16,17,16,19,17,17,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,18,16,17,17,18,18,18,16,17,16,18,17,10,11,11,14,13,11,12,12,15,14,11,13,12,15,14,14,15,15,16,16,14,15,15,17,16,11,12,12,15,14,12,13,13,15,14,13,14,13,16,14,14,15,15,16,16,15,16,15,18,16,11,13,12,15,15,13,14,14,15,15,12,14,13,16,15,15,16,16,17,17,15,16,15,17,16,14,15,14,16,16,14,15,15,16,16,15,16,15,17,16,16,16,17,16,17,17,18,17,19,18,14,15,15,17,16,15,16,16,17,17,15,15,15,18,16,17,18,18,18,18,16,17,16,19,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,12,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,10,10,13,13,11,12,13,13,15,11,12,12,15,14,7,9,9,12,11,9,10,10,12,13,9,10,10,13,12,11,12,12,14,15,11,12,11,14,13,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,13,14,14,14,16,14,15,15,16,16,10,11,11,14,13,11,12,12,14,14,11,12,12,15,13,14,14,14,16,16,13,14,13,16,14,7,9,9,11,12,9,10,10,12,13,9,10,10,12,12,11,12,13,14,15,11,12,12,14,14,9,10,10,12,13,10,10,11,12,14,10,11,11,13,13,12,12,13,14,15,13,13,13,15,15,9,10,10,12,12,10,11,11,13,14,10,11,10,13,12,12,13,13,15,16,12,13,12,15,14,11,12,13,14,14,12,12,13,14,15,13,14,13,15,15,14,14,15,14,17,15,16,15,17,16,11,12,12,14,14,13,13,13,15,15,12,13,12,15,14,15,15,15,16,17,14,15,14,16,14,8,9,9,12,11,9,10,10,12,13,9,11,10,13,12,11,12,12,14,15,11,12,12,15,14,9,10,11,13,13,10,11,12,13,14,10,11,11,14,13,12,13,13,15,15,12,13,13,16,15,9,11,9,13,11,10,11,10,14,13,10,12,10,14,12,12,13,13,15,15,12,13,12,16,14,12,12,13,14,15,12,13,14,14,16,13,14,14,15,15,14,14,15,15,17,15,16,15,17,16,11,13,11,15,13,13,14,13,15,14,12,14,12,16,13,15,15,15,16,16,14,15,14,17,14,10,11,11,13,14,11,12,13,14,15,11,12,12,14,15,14,14,15,16,17,14,15,15,16,16,11,12,13,14,15,12,13,14,15,16,13,14,14,15,16,15,15,16,16,18,15,16,16,17,17,11,12,12,14,15,13,13,14,14,16,12,13,13,15,15,15,15,16,16,18,14,15,15,16,16,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,16,19,17,18,17,18,18,14,14,15,16,16,15,15,16,16,17,14,15,15,16,16,17,17,18,18,19,16,17,16,17,16,10,12,11,14,13,11,13,12,15,14,11,13,12,15,14,14,15,15,16,16,13,15,14,17,15,12,13,13,15,15,13,13,14,15,16,13,14,14,16,16,14,15,15,17,17,15,16,16,17,17,11,13,12,15,12,13,14,13,16,13,12,14,12,16,13,15,16,15,17,16,14,16,14,18,14,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,17,18,17,18,17,18,18,14,15,14,17,14,15,16,15,18,15,15,16,15,18,14,17,17,17,18,17,16,17,16,19,16,9,11,11,13,13,10,12,12,14,14,11,12,12,15,14,13,14,14,16,16,13,14,14,16,16,10,11,12,14,14,11,12,13,14,15,12,13,13,15,15,13,14,15,16,16,14,15,15,17,16,11,12,12,15,14,12,13,13,15,15,12,13,12,15,15,14,15,15,16,17,14,15,14,17,16,12,13,14,15,16,13,13,14,15,16,13,14,15,16,16,14,15,16,16,18,15,16,16,18,18,13,14,14,16,15,14,15,15,17,16,14,15,15,17,16,16,17,17,18,18,16,17,16,18,17,10,12,12,14,14,11,12,13,15,15,12,13,13,15,15,13,14,15,16,17,14,15,15,17,16,11,11,13,14,15,12,12,14,15,16,13,13,14,15,16,14,14,15,16,17,15,15,16,17,17,12,13,12,15,15,13,14,14,16,16,13,14,13,16,15,15,16,15,17,17,15,16,15,18,16,13,12,15,14,17,14,13,16,14,17,14,14,16,15,18,15,14,17,16,18,16,16,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,18,16,17,17,17,18,18,16,17,16,19,17,10,11,11,14,14,11,12,12,15,15,11,13,12,15,15,14,15,14,16,16,14,15,15,17,16,11,12,12,15,14,12,12,13,15,15,13,14,13,16,15,14,15,15,16,16,15,16,15,18,17,11,13,12,15,15,13,14,13,15,15,12,14,13,16,15,15,16,15,17,17,15,16,15,18,16,13,14,13,16,16,14,15,14,16,16,14,15,15,17,16,16,16,16,16,18,16,18,17,19,18,14,15,15,17,16,15,16,16,17,17,15,15,15,17,16,17,17,18,18,19,16,17,16,18,16,12,13,13,15,16,13,14,14,16,17,13,14,14,16,16,15,15,16,17,18,15,16,16,18,17,13,13,14,14,17,14,14,15,15,17,14,14,15,16,17,15,15,17,16,18,16,17,17,18,18,13,14,14,17,16,14,15,15,17,17,14,15,14,17,16,16,17,17,18,18,16,17,16,18,17,15,14,16,13,18,16,15,17,14,19,16,16,17,15,18,17,16,18,15,19,18,18,18,17,19,15,16,16,18,17,16,17,17,18,18,16,17,16,19,17,18,19,18,19,19,17,18,17,20,18,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,16,16,17,17,15,16,16,18,17,12,14,13,16,15,13,13,14,15,16,14,15,14,17,16,16,16,16,16,17,16,17,17,19,17,12,13,14,16,16,14,15,15,16,17,13,15,13,17,15,16,17,17,18,18,16,17,16,18,16,15,16,15,17,16,15,15,15,17,17,16,17,16,18,17,17,16,17,16,18,18,19,18,20,18,15,16,16,17,17,16,17,17,18,18,15,16,15,18,17,18,18,19,19,19,17,18,16,19,16,9,11,11,13,13,11,12,12,14,15,10,12,12,14,14,13,14,14,16,16,13,14,14,16,16,11,12,12,14,14,12,12,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,16,10,12,11,14,14,12,13,13,15,15,11,13,12,15,14,14,15,15,16,17,13,15,14,17,16,13,14,14,15,16,14,15,15,16,17,14,15,15,16,17,16,16,17,17,18,16,17,17,18,18,12,14,13,16,15,13,15,14,17,16,13,14,13,17,15,15,16,16,18,18,15,16,15,18,16,10,11,11,14,14,11,12,13,14,15,11,12,12,15,15,14,15,15,16,17,14,15,15,16,16,11,12,13,15,15,12,13,14,15,16,13,14,14,15,16,15,15,16,16,18,15,15,16,17,17,11,12,12,14,15,13,13,14,15,16,12,13,13,15,15,15,15,16,17,18,14,15,15,17,16,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,16,19,17,17,18,19,18,13,13,14,16,16,14,15,16,17,17,14,14,15,16,16,16,16,17,18,18,16,16,16,18,16,10,12,12,14,14,12,13,13,15,15,11,13,12,15,15,14,15,15,16,17,13,15,14,17,16,12,13,13,15,15,13,13,14,15,16,13,14,14,16,16,15,15,16,17,18,15,15,16,17,17,11,13,12,15,14,13,14,13,16,15,12,14,12,16,14,15,16,15,17,17,14,16,14,17,16,14,15,15,16,17,15,15,16,16,18,15,16,16,17,17,16,17,17,17,19,17,17,17,18,18,13,15,12,17,14,14,16,14,17,15,14,15,13,17,14,16,17,16,18,17,15,17,14,19,15,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,16,16,17,18,15,16,16,17,17,12,14,13,16,16,13,13,15,15,17,14,15,15,17,16,16,16,17,16,19,16,17,17,18,18,12,13,14,15,16,14,14,15,16,17,13,14,13,16,15,16,17,17,18,19,15,16,16,17,16,15,16,16,18,17,15,15,16,17,18,16,17,17,18,18,16,16,18,16,19,18,19,19,20,19,15,15,16,16,17,16,16,17,17,18,15,15,15,17,16,18,18,19,18,20,17,17,16,18,16,12,13,13,16,15,13,14,14,16,16,13,14,14,16,16,15,16,16,17,18,15,16,15,18,17,13,14,14,16,16,14,15,15,16,17,14,15,15,17,17,16,17,17,18,18,16,17,17,18,18,13,14,13,17,14,14,15,14,17,16,14,15,14,17,15,16,17,17,18,18,15,17,15,19,15,16,16,16,17,18,16,16,17,17,19,16,17,17,18,19,17,17,18,18,20,18,18,18,19,19,15,16,14,18,13,16,17,16,19,15,16,17,15,19,14,18,18,18,19,17,17,18,16,20,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,7,7,5,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,5,7,8,8,9,10,8,9,9,8,9,10,9,10,12,10,11,11,8,9,10,10,11,11,9,11,11,5,8,7,8,9,9,8,10,9,8,10,9,9,11,11,10,11,11,8,10,9,10,11,11,9,12,10,5,8,8,7,9,10,8,10,9,7,9,9,9,10,11,9,11,11,8,10,10,10,11,11,10,12,11,7,9,9,9,10,11,9,11,11,9,9,11,10,10,13,11,11,12,9,11,11,11,12,13,11,13,12,7,9,9,9,11,11,9,12,10,9,11,10,10,11,12,11,13,12,9,11,11,11,13,13,11,13,11,5,8,8,8,9,10,7,10,9,8,10,10,10,11,11,10,11,11,7,9,9,9,11,11,9,11,10,7,9,9,9,10,12,9,11,11,9,11,11,11,11,13,11,13,13,9,10,11,11,12,13,10,12,11,7,9,9,9,11,11,9,11,10,9,11,11,11,12,13,11,13,12,9,11,9,11,12,11,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,8,13,15,16,18,21,22,5,4,6,8,10,12,17,21,9,5,5,6,8,11,15,19,11,6,5,5,6,7,12,14,14,8,7,5,4,4,9,11,16,11,9,7,4,3,7,10,22,15,14,12,8,7,9,11,21,16,15,12,9,5,6,8,2,0,0,0,64,0,0,0,8,198,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,150,6,0,0,0,0,0,0,0,0,0,248,150,6,0,0,0,0,0,0,0,0,0,32,151,6,0,72,151,6,0,0,0,0,0,0,0,0,0,112,151,6,0,152,151,6,0,0,0,0,0,0,0,0,0,192,151,6,0,232,151,6,0,0,0,0,0,0,0,0,0,16,152,6,0,56,152,6,0,232,151,6,0,0,0,0,0,96,152,6,0,136,152,6,0,232,147,6,0,16,148,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,144,150,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,136,150,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,147,6,0,152,147,6,0,0,0,0,0,0,0,0,0,192,147,6,0,232,147,6,0,16,148,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,160,149,6,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,80,150,6,0,0,0,0,0,2,0,0,0,25,0,0,0,104,149,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,136,149,6,0,0,0,0,0,2,0,0,0,9,0,0,0,72,149,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2],"i8",L3,R.GLOBAL_BASE+420817),d3([0,0,0,0,0,0,0,88,149,6,0,0,0,0,0,1,0,0,0,25,0,0,0,192,148,6,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,224,148,6,0,0,0,0,0,1,0,0,0,25,0,0,0,56,148,6,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,88,148,6,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,2,3,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,14,14,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,4,4,5,5,4,5,5,5,5,4,5,4,4,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,8,8,10,10,10,10,9,8,11,11,4,6,5,8,6,10,10,10,10,10,9,10,9,4,5,6,6,9,10,10,10,10,9,10,9,10,8,9,8,9,8,9,9,10,9,11,10,12,10,8,8,9,8,9,9,9,9,10,10,11,10,12,9,10,10,11,10,11,10,12,11,12,11,13,11,9,10,10,10,11,10,11,11,12,11,12,11,12,11,12,12,12,12,13,12,13,12,13,12,13,13,11,12,12,12,12,12,12,12,13,13,13,13,13,12,12,12,13,13,13,13,13,13,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,12,13,13,13,14,14,13,13,13,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,7,12,14,14,16,18,19,6,2,4,6,8,9,12,14,12,3,3,5,7,8,11,13,13,6,4,5,7,8,10,11,14,8,7,7,7,7,9,10,15,9,8,7,7,6,8,9,17,11,11,10,9,8,9,9,19,14,13,11,10,9,9,9,5,0,0,0,243,0,0,0,0,197,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,248,197,6,0,0,0,0,0,5,0,0,0,53,12,0,0,176,184,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,232,196,6,0,0,0,0,0,5,0,0,0,243,0,0,0,168,183,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,160,184,6,0,0,0,0,0,5,0,0,0,243,0,0,0,160,182,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,152,183,6,0,0,0,0,0,5,0,0,0,243,0,0,0,152,181,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,144,182,6,0,0,0,0,0,5,0,0,0,53,12,0,0,72,169,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,128,181,6,0,0,0,0,0,5,0,0,0,53,12,0,0,248,156,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,48,169,6,0,0,0,0,0,1,0,0,0,7,0,0,0,208,156,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,216,156,6,0,0,0,0,0,5,0,0,0,243,0,0,0,200,155,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,192,156,6,0,0,0,0,0,5,0,0,0,243,0,0,0,192,154,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,184,155,6,0,0,0,0,0,5,0,0,0,243,0,0,0,184,153,6,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,176,154,6,0,0,0,0,0,5,0,0,0,243,0,0,0,176,152,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,168,153,6,0,0,0,0,0,1,7,7,6,9,9,7,9,9,6,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,5,7,8,5,8,7,6,7,7,7,7,8,8,8,8,6,7,7,7,8,8,7,8,7,6,8,8,8,9,10,8,9,9,8,9,9,9,9,10,10,10,10,8,9,9,10,10,10,9,10,10,6,8,8,8,9,9,8,10,9,9,9,9,9,9,10,10,10,10,8,9,9,10,10,10,9,10,9,6,8,9,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,10,9,7,8,9,8,9,9,9,9,9,8,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,7,9,9,9,10,10,9,10,10,9,10,9,9,9,10,10,10,10,9,10,9,10,10,10,9,10,9,6,8,8,8,9,9,8,9,9,8,9,9,9,9,10,9,10,10,8,9,9,9,10,10,9,10,9,7,9,9,9,10,10,9,10,9,9,9,10,10,9,10,10,10,10,9,9,9,10,10,10,9,10,9,7,9,8,8,9,9,8,9,9,9,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,5,7,9,5,9,7,5,7,8,7,7,10,9,9,10,5,8,7,9,10,9,7,10,7,6,9,9,9,10,12,10,12,11,9,10,11,11,10,13,12,12,13,10,11,11,12,13,13,11,13,11,6,9,9,10,11,12,9,12,11,10,11,11,11,11,13,12,13,13,9,11,10,12,13,13,11,13,10,6,9,10,9,11,12,10,12,11,9,10,11,10,10,13,11,13,13,10,11,11,12,13,12,11,13,11,7,9,10,9,10,12,10,11,11,10,10,11,10,10,12,12,11,12,10,11,10,12,12,12,10,12,10,7,10,10,11,11,13,11,13,11,10,12,11,11,10,13,13,14,13,10,11,12,13,13,14,11,13,10,6,10,9,10,11,12,9,12,11,9,11,11,11,11,13,12,12,13,9,11,10,12,13,13,10,13,10,7,10,10,11,11,14,11,13,11,10,12,11,11,10,14,13,14,13,10,11,12,13,13,14,11,13,10,7,10,9,10,10,12,9,12,10,10,11,11,10,10,12,12,12,12,9,11,10,11,12,12,10,12,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,1,6,6,10,10,6,7,9,11,13,5,9,7,13,11,8,11,12,13,15,8,12,11,15,13,6,7,8,11,11,7,8,10,11,13,9,10,10,13,13,11,11,13,12,16,12,13,13,16,15,6,8,7,11,11,9,10,10,13,13,7,10,7,13,11,12,13,13,15,16,11,13,11,16,12,10,11,11,11,13,11,11,13,12,15,13,13,13,14,15,13,12,15,12,17,15,16,16,16,16,10,11,11,14,11,13,13,13,15,14,11,13,11,15,12,15,15,16,16,16,13,15,12,17,12,6,8,9,12,12,9,10,12,13,15,9,11,11,15,14,12,13,15,16,18,13,14,14,17,16,9,10,11,13,14,11,10,13,14,16,11,12,12,15,15,14,13,16,15,18,14,15,15,17,17,9,11,11,14,14,11,12,13,15,16,11,13,11,15,14,15,15,15,17,18,14,15,14,17,15,13,14,14,15,16,14,14,15,15,17,15,16,15,17,17,16,16,17,15,19,17,18,18,19,18,13,14,14,16,15,15,15,16,17,17,14,15,14,18,15,17,17,17,19,19,16,17,15,19,16,6,9,8,13,12,9,11,11,14,15,9,12,10,15,13,13,14,14,16,17,12,15,13,18,16,9,11,11,14,14,11,11,13,14,15,11,13,12,16,15,14,14,15,15,18,14,15,15,18,17,9,11,10,14,13,11,12,12,15,15,11,13,10,16,14,14,15,15,16,18,14,16,13,18,15,13,14,14,16,16,14,14,15,15,17,15,16,15,17,17,16,16,17,16,19,17,18,17,18,19,13,14,14,16,15,15,15,15,17,17,14,15,14,17,15,17,17,17,18,19,16,17,15,19,15,11,13,13,15,16,13,14,15,16,18,14,15,15,17,17,16,16,18,18,20,17,18,17,19,20,13,14,14,16,17,15,15,16,17,18,15,16,16,17,17,18,17,19,18,19,18,18,18,19,21,14,14,15,16,17,15,15,16,18,18,15,16,16,17,18,18,18,19,19,21,18,19,19,22,20,16,16,17,17,19,17,17,17,18,20,17,18,18,20,19,19,19,20,19,0,19,19,20,20,21,17,17,17,19,18,18,18,20,19,19,18,18,18,20,20,19,19,20,20,20,20,21,20,21,19,11,13,13,16,15,14,15,15,17,17,14,15,14,18,16,16,18,18,20,19,16,19,17,21,18,13,14,15,16,17,15,15,16,18,18,15,16,15,19,18,18,18,18,19,19,18,18,18,22,20,13,14,14,16,16,15,16,16,18,17,15,16,15,18,17,18,18,18,19,19,17,18,17,21,18,16,17,17,18,18,17,18,19,19,19,18,20,18,19,19,19,20,21,19,21,20,20,20,0,21,16,17,17,19,19,18,18,18,19,21,17,18,18,19,18,20,19,21,20,21,19,20,20,22,19,7,9,9,13,13,8,10,11,14,15,9,12,11,15,14,11,13,14,16,17,13,15,14,17,16,8,10,11,14,14,10,10,12,14,16,11,12,12,16,15,13,12,15,15,18,14,15,15,19,17,9,11,11,14,14,11,12,12,15,15,11,13,11,16,14,14,15,14,17,17,14,16,14,18,15,12,13,14,15,16,13,13,15,14,17,15,15,15,17,17,15,14,17,14,19,17,18,18,19,18,13,14,14,16,16,15,15,15,17,17,14,15,14,18,15,17,18,17,18,17,16,18,16,19,15,7,10,10,13,13,9,10,12,14,15,10,12,11,15,14,12,13,14,16,17,13,15,14,18,16,10,10,12,13,14,10,10,13,13,16,12,12,13,15,15,13,12,15,15,18,15,15,16,18,17,10,11,11,14,14,12,13,13,15,16,10,13,10,16,14,14,15,15,17,17,14,15,13,17,15,13,13,14,15,16,14,13,15,14,18,15,15,16,16,17,16,15,18,15,18,17,18,18,18,18,13,15,14,17,16,15,16,16,17,17,14,15,13,17,15,17,17,18,18,18,16,17,14,20,14,8,10,10,14,14,11,11,13,14,16,11,13,11,16,14,14,15,16,16,18,14,16,15,18,16,10,12,11,15,14,11,11,13,14,16,13,14,13,16,15,15,14,16,15,19,16,17,16,20,18,10,11,12,14,15,13,13,14,16,16,11,14,11,16,14,16,16,17,18,19,15,17,14,20,15,14,15,14,17,16,13,14,15,15,18,16,17,16,19,18,16,15,18,15,19,18,19,18,21,21,14,14,15,16,17,16,16,17,18,18,13,15,14,17,15,18,18,19,18,22,16,18,15,21,15,12,13,14,16,16,14,14,16,16,18,14,15,15,17,18,16,16,18,18,20,18,18,17,20,20,13,14,15,15,17,15,14,16,16,18,16,16,16,17,19,17,15,18,17,21,18,18,18,19,19,14,15,15,18,17,15,16,16,18,19,15,16,15,18,18,17,18,18,20,21,17,19,17,20,19,16,16,17,16,19,17,17,18,17,20,18,18,18,18,19,19,18,20,17,22,20,20,19,20,20,17,17,18,18,19,18,18,20,21,20,17,18,17,20,20,21,21,21,21,21,19,21,18,22,20,11,13,13,17,16,14,14,16,16,18,14,16,14,18,16,17,18,19,19,20,18,19,18,21,19,14,15,14,17,16,14,14,16,18,18,16,17,16,18,17,18,17,19,18,20,19,19,18,20,20,13,14,15,16,17,16,16,17,18,19,14,16,14,19,17,18,19,18,20,20,18,20,17,21,18,17,17,17,19,18,16,17,18,18,19,18,19,18,21,21,18,18,20,17,21,19,20,20,22,21,16,17,18,18,19,18,18,19,21,20,16,17,17,20,18,21,21,22,21,22,18,21,18,0,18,7,9,9,13,13,9,11,12,14,15,8,11,10,15,14,13,14,15,16,18,11,14,13,17,15,9,11,11,14,14,11,11,13,14,16,11,12,12,15,15,14,14,16,15,18,14,14,15,17,17,8,11,10,14,14,11,12,12,15,15,10,12,10,16,14,14,15,15,17,18,13,15,12,18,15,13,14,14,16,16,14,14,15,15,17,15,15,15,16,17,16,15,17,15,19,17,17,17,18,18,12,14,13,16,15,15,15,15,17,17,13,15,13,17,14,17,18,18,18,19,15,17,14,19,14,8,10,10,14,14,11,11,13,14,16,11,13,11,16,14,14,15,16,17,19,14,16,15,18,17,10,12,11,15,14,11,11,14,14,17,13,14,13,17,15,15,14,17,15,19,16,17,16,19,17,10,11,12,14,15,13,13,14,15,17,11,13,11,17,14,16,16,17,18,19,15,16,14,18,15,14,15,14,16,16,13,14,15,15,18,16,16,16,18,18,16,15,18,15,20,18,19,18,21,18,14,14,15,16,17,16,16,17,17,18,13,15,14,17,16,19,19,19,19,19,15,18,15,20,15,7,10,10,13,13,10,11,12,14,15,9,12,10,15,14,13,14,15,16,17,12,15,13,17,16,10,11,11,14,14,10,10,13,14,16,12,13,13,16,15,14,13,16,15,18,15,15,16,17,17,10,12,10,14,13,12,13,12,15,15,10,13,10,16,13,15,16,15,17,18,13,16,12,18,15,13,14,14,16,17,14,13,15,15,18,15,16,15,17,17,16,14,17,15,19,17,18,18,19,19,13,15,13,17,14,15,15,15,18,17,14,15,13,17,14,18,17,18,18,19,15,17,15,19,15,11,13,13,16,17,14,14,16,16,18,14,16,15,18,17,17,18,19,18,21,18,18,17,20,18,13,15,14,17,16,14,14,16,17,18,16,17,16,19,17,18,17,19,18,22,18,19,19,21,21,13,14,15,16,18,16,16,17,17,20,14,16,14,18,17,18,18,19,19,21,17,18,17,21,18,17,18,17,19,18,16,17,17,18,19,18,18,18,22,22,18,17,19,17,0,20,21,19,21,20,17,17,18,18,21,18,18,18,19,21,17,17,17,19,19,20,20,22,21,21,19,20,18,20,17,12,14,13,17,16,14,15,15,17,18,14,16,14,18,16,17,18,18,21,20,16,18,16,21,18,14,15,15,17,17,15,15,16,18,18,15,17,16,18,18,17,17,19,19,20,18,19,18,20,19,14,15,14,17,15,15,16,16,18,17,15,16,14,19,15,18,18,18,19,20,17,20,15,21,17,16,17,18,18,19,17,17,18,18,20,18,19,18,19,21,19,18,19,19,21,20,0,19,21,20,16,17,16,19,16,18,18,18,19,19,17,18,17,20,17,19,20,20,22,0,19,20,17,21,17,11,13,14,16,17,14,15,15,17,18,14,15,15,18,18,16,17,17,19,20,16,18,17,19,21,13,14,15,17,17,14,15,16,17,19,15,16,16,18,19,16,17,18,19,21,17,18,20,21,21,13,15,15,17,17,15,16,16,18,19,15,16,16,18,19,17,17,18,19,22,17,19,18,22,19,15,16,17,19,19,16,17,18,18,20,17,18,18,19,20,19,18,20,18,22,20,19,19,22,21,16,17,17,18,19,18,18,18,19,20,17,18,18,20,19,20,19,20,22,20,19,20,21,21,20,12,14,14,16,16,13,14,16,17,18,14,16,15,18,18,15,17,17,19,19,17,18,18,19,19,13,14,15,16,17,14,14,16,16,20,15,16,16,17,19,16,15,18,17,20,18,17,19,19,19,14,15,15,17,17,16,16,16,18,18,15,16,15,19,18,17,18,18,20,21,17,18,17,21,18,16,15,17,17,19,17,15,18,17,20,19,17,18,19,20,18,16,19,17,22,20,19,20,19,20,17,17,18,19,19,18,18,19,20,20,17,18,17,18,18,21,21,20,20,21,18,20,17,21,19,11,14,14,16,17,15,14,16,17,19,14,16,14,18,17,18,18,19,19,21,17,19,18,20,20,13,15,14,17,17,14,14,16,17,18,16,17,16,19,18,18,17,19,18,20,18,21,18,20,20,13,15,15,16,17,16,16,17,18,19,14,16,15,19,18,19,19,19,21,20,18,19,17,20,18,16,17,16,19,18,16,17,17,19,20,17,19,18,20,19,18,17,21,18,0,21,20,20,0,20,17,17,18,18,19,18,19,19,20,22,16,17,17,20,18,21,22,20,20,22,18,22,18,22,18,12,14,14,17,17,14,15,16,17,19,14,16,15,17,17,17,17,18,18,21,17,19,17,20,19,14,15,15,16,18,15,14,16,16,19,16,17,16,19,18,17,16,20,17,20,18,20,19,19,20,14,15,15,18,17,16,16,17,18,19,14,16,15,19,17,18,21,18,19,21,17,18,17,19,18,17,17,18,17,20,17,16,18,17,21,18,19,19,19,19,18,17,19,17,20,20,21,20,21,20,17,17,17,19,19,19,18,18,20,21,16,18,16,19,18,20,20,21,21,20,18,19,16,0,17,12,14,14,17,17,15,15,18,17,19,15,18,15,20,16,20,19,21,18,22,20,20,20,22,19,14,16,14,20,17,14,15,17,17,20,18,18,17,20,18,18,17,19,17,21,20,21,20,0,21,14,15,16,17,19,18,17,19,18,21,14,18,15,21,17,21,20,21,20,0,18,21,17,21,17,18,19,17,20,18,16,17,17,19,19,19,21,20,0,20,18,17,21,17,0,22,0,21,0,22,17,17,19,18,20,20,20,21,19,22,16,17,18,20,18,22,22,0,22,0,17,21,17,22,17,11,14,13,16,16,14,15,15,17,18,14,15,14,18,17,17,18,18,19,20,16,17,17,21,19,13,14,15,17,17,15,16,16,18,18,15,16,16,19,18,18,18,18,19,20,17,18,18,20,19,13,15,14,17,17,15,16,16,17,18,14,16,15,19,17,17,18,19,21,21,17,18,17,20,18,16,17,17,19,19,17,18,19,19,20,18,19,18,21,21,21,20,19,21,22,20,20,19,21,20,15,17,16,19,19,17,18,18,20,21,16,18,17,20,18,19,19,21,21,21,19,19,19,20,18,11,14,13,17,16,14,14,16,16,19,14,16,15,19,16,18,18,18,19,22,17,18,17,20,19,13,15,14,17,17,15,15,16,17,19,16,17,16,20,18,18,17,19,18,21,19,19,18,22,0,13,14,15,17,18,16,16,17,17,19,14,16,15,19,18,18,19,19,20,21,18,18,17,20,18,17,18,17,20,18,16,17,17,18,20,18,19,18,20,20,18,18,21,17,21,20,21,21,0,19,16,16,18,18,19,19,18,20,19,20,16,17,17,20,18,21,20,21,22,22,18,20,17,21,17,12,14,14,17,16,14,15,16,18,18,13,15,14,18,17,17,18,18,19,19,15,17,16,19,19,14,15,15,17,17,15,15,16,18,19,15,16,16,19,18,17,17,18,18,20,18,18,18,21,20,13,15,14,17,16,15,16,15,18,18,14,16,14,18,17,18,18,18,19,21,16,18,16,20,17,17,18,17,18,19,17,17,18,18,19,18,19,19,21,19,19,18,20,18,21,21,20,20,21,20,16,17,15,20,17,17,19,17,19,19,17,18,15,20,17,19,20,19,21,22,17,20,16,0,17,12,14,14,17,18,16,15,18,16,20,16,18,15,21,17,20,18,21,19,22,19,21,19,0,19,14,16,15,19,17,14,15,17,16,21,18,19,18,21,17,19,17,21,17,22,20,21,21,0,21,14,15,16,17,19,18,17,19,18,21,14,17,15,20,17,21,22,21,20,22,18,21,17,21,17,17,19,17,21,18,16,17,17,19,20,19,21,20,21,20,17,18,20,17,21,0,22,20,21,22,17,17,20,18,21,21,20,22,20,21,16,17,17,21,19,0,22,0,21,21,18,22,17,21,17,12,14,14,17,16,14,15,16,17,18,14,16,15,18,17,17,17,20,19,20,16,18,17,21,18,14,15,15,17,17,14,15,16,17,19,16,17,16,18,18,17,16,19,18,19,18,19,18,21,20,14,15,15,18,17,16,16,16,19,18,15,16,14,20,16,18,18,19,19,20,16,19,16,21,17,17,17,18,19,19,16,16,18,18,19,19,19,18,20,20,18,16,19,18,20,22,21,20,19,20,16,18,17,20,16,18,19,18,19,18,16,18,16,20,17,21,20,21,20,20,18,19,17,21,16,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,5,7,7,10,10,7,8,9,10,11,7,9,8,11,10,9,10,10,11,11,9,10,10,11,11,7,9,9,10,10,8,9,10,10,11,9,10,10,11,11,10,10,11,11,11,10,11,11,12,12,7,9,9,10,10,9,10,10,11,11,8,10,9,11,10,10,11,11,11,11,10,11,10,11,11,10,10,10,11,11,10,10,11,11,11,11,11,11,11,11,11,11,12,11,12,11,12,11,12,12,10,10,10,11,11,10,11,11,11,11,10,11,10,11,11,11,12,11,12,12,11,12,11,12,11,8,9,9,11,11,9,10,10,11,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,11,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,8,9,9,11,11,9,10,10,11,11,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,11,11,12,12,12,12,11,12,11,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,13,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,13,12,12,12,12,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,9,9,11,11,9,10,10,11,11,9,10,10,12,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,11,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,9,10,10,11,11,10,10,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,10,10,11,11,12,11,11,12,12,12,11,11,12,12,12,11,11,12,12,13,12,12,12,12,12,10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,8,10,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,12,12,12,10,11,10,12,12,10,10,11,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,10,11,11,12,12,11,12,12,12,12,10,12,11,12,12,12,12,12,13,13,12,13,12,13,12,11,12,12,12,12,11,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,13,11,12,12,12,12,12,12,12,13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,12,13,12,12,13,13,13,12,12,13,13,13,13,13,13,13,13,11,12,12,12,12,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,11,12,12,13,12,12,13,12,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,8,9,9,11,11,9,10,10,11,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,9,10,10,11,11,10,10,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,9,10,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,8,10,10,11,11,10,10,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,12,12,10,11,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,10,10,11,12,12,11,12,12,12,12,10,11,10,12,12,12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,11,12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,11,12,12,13,12,12,13,13,13,13,12,13,12,13,12,9,10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,12,12,12,12,13,12,12,12,13,12,10,11,10,12,11,11,12,11,12,12,11,12,11,12,12,12,12,12,12,12,12,12,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,13,13,13,13,11,12,11,12,12,12,12,12,13,12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,12,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,12,13,13,13,12,13,13,13,13,11,12,12,12,13,12,12,13,13,13,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,11,12,12,12,12,12,12,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,13,13,13,12,13,12,13,13,11,12,12,12,12,12,12,13,13,13,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,12,13,12,13,13,12,12,12,13,12,13,13,13,13,13,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,11,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,13,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,13,13,13,13,12,13,12,13,13,11,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,11,12,12,13,12,12,13,12,13,13,12,13,12,13,13,13,13,13,13,13,12,13,13,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,13,13,13,13,12,13,13,12,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,12,13,13,13,12,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,13,12,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,13,13,13,13,13,11,12,12,12,12,12,13,12,13,13,12,13,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,12,11,12,12,12,12,12,13,13,11,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,12,13,13,13,12,13,13,13,13,11,12,12,13,13,12,12,13,13,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,11,12,12,13,12,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,13,13,13,13,13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,12,11,12,12,11,12,12,12,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,13,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,11,12,12,13,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,13,12,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,13,13,13,13,13,12,13,12,13,13,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,11,12,12,12,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,13,13,13,12,13,13,13,13,12,12,13,13,13,13,13,13,13,13,11,12,12,12,12,12,13,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,13,13,13,13,11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,13,13,13,12,13,13,13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,12,13,13,13,13,13,13,13,13,13,12,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,5,5,5,7,9,5,9,7,5,7,8,7,7,10,9,10,10,5,8,7,9,10,10,7,10,7,6,8,9,9,10,12,9,11,11,9,10,11,11,11,13,12,13,13,9,11,11,11,12,13,11,13,11,6,9,8,9,11,11,9,12,10,9,11,11,11,11,13,11,13,12,9,11,10,12,13,13,11,13,11,6,9,9,8,10,11,9,12,11,9,10,11,10,10,12,11,13,13,9,11,11,11,13,12,11,13,11,8,10,10,9,10,12,10,12,11,10,10,12,10,10,13,12,13,13,10,12,11,12,13,13,10,13,10,7,10,10,11,11,13,11,14,11,10,12,11,11,11,13,13,14,13,10,12,12,14,14,14,11,14,11,6,9,9,9,11,12,8,11,10,9,11,11,11,11,13,11,12,13,8,11,10,11,13,13,10,12,10,7,10,10,11,11,14,11,13,11,10,12,12,11,11,14,14,14,14,10,11,12,13,13,14,11,13,11,8,10,10,10,11,12,9,12,10,10,11,12,11,10,13,12,13,13,10,12,10,12,13,13,11,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,6,6,6,7,7,6,7,7,6,7,7,7,7,8,7,8,8,6,7,7,7,8,8,7,8,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,9,7,8,7,8,8,8,8,8,8,8,8,8,8,9,9,8,9,9,8,8,8,8,9,9,8,9,8,6,8,8,7,8,8,7,8,8,7,8,8,8,8,9,8,9,9,8,8,8,8,9,9,8,9,8,7,8,8,8,9,9,8,9,9,8,8,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,7,8,8,8,8,9,8,9,8,8,8,8,8,9,9,9,9,9,8,9,8,9,9,9,8,9,9,6,8,8,7,8,8,7,8,8,8,8,8,8,8,9,8,9,9,7,8,8,8,9,9,8,9,8,7,8,8,8,8,9,8,9,8,8,8,9,8,9,9,9,9,9,8,8,8,9,9,9,8,9,9,7,8,8,8,9,9,8,9,9,8,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,6,5,7,8,5,8,7,5,7,8,7,8,10,8,10,10,5,8,7,8,10,10,7,10,8,6,8,9,8,10,11,9,10,10,9,10,11,10,11,12,11,12,12,9,11,10,11,12,12,10,12,11,6,9,8,9,10,10,8,11,10,9,10,11,10,11,12,11,12,12,9,11,10,11,12,12,10,12,11,6,9,9,8,10,11,9,11,10,8,10,10,10,10,12,11,12,12,9,11,10,11,12,12,10,12,11,8,10,10,10,11,12,10,12,11,10,10,12,11,11,13,12,13,13,10,12,11,12,13,13,11,13,11,7,10,10,10,11,12,10,12,11,10,12,11,11,11,12,12,14,13,10,12,12,12,14,14,11,13,11,6,9,9,9,10,11,8,11,10,9,10,11,10,11,12,11,12,12,8,11,10,11,12,12,10,12,10,7,10,10,10,11,12,10,12,11,10,12,12,11,11,13,12,13,13,10,11,12,12,13,14,11,12,11,8,10,10,10,11,12,10,12,11,10,11,12,11,11,13,12,13,13,10,12,10,12,13,13,11,13,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,6,6,9,9,6,7,8,10,10,6,8,7,10,10,8,10,10,12,13,8,10,10,13,12,6,7,8,10,10,7,8,9,10,11,8,9,9,11,11,10,10,11,12,14,10,11,11,14,13,6,8,7,10,10,8,9,9,11,11,7,9,8,11,10,10,11,11,13,14,10,11,10,14,12,9,10,10,12,12,10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,13,14,13,15,14,9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,13,13,14,14,15,12,13,12,15,12,6,7,8,10,11,8,9,10,11,12,8,9,9,11,12,10,11,12,13,14,10,11,11,14,13,8,9,10,11,12,9,10,11,12,13,9,10,11,12,13,11,12,13,13,15,12,12,13,15,14,8,9,9,12,12,9,10,11,12,13,9,10,10,13,12,12,12,13,14,15,11,12,12,14,14,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,14,13,15,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,14,13,14,15,15,15,16,13,14,14,16,14,6,8,7,11,10,8,9,9,11,12,8,10,9,12,11,10,11,11,13,14,10,12,11,14,13,8,9,9,12,12,9,10,10,12,13,9,11,10,13,12,11,12,12,13,14,12,13,12,15,14,8,10,9,12,11,9,11,10,13,12,9,11,10,13,12,12,13,12,14,15,11,13,12,15,13,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,13,14,14,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,15,13,14,15,15,16,16,13,15,13,16,14,9,10,11,12,14,11,11,12,13,15,11,12,12,13,14,13,14,15,15,17,13,14,14,15,16,11,11,12,13,15,12,12,13,14,16,12,13,13,14,15,14,14,16,15,17,15,15,15,16,17,11,12,12,14,14,12,13,13,15,16,12,13,13,15,15,15,15,15,16,17,14,15,15,16,16,14,14,15,15,17,14,15,15,15,17,15,15,16,16,17,16,16,17,16,18,17,17,17,18,18,14,15,14,16,16,15,15,16,17,17,14,15,15,17,16,17,17,17,18,18,16,16,16,17,17,9,11,10,14,12,11,12,12,14,13,11,12,11,15,13,13,14,14,16,15,13,15,14,17,15,11,12,12,15,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,15,15,15,17,16,11,12,11,15,13,12,13,13,15,14,12,13,12,16,14,15,15,15,17,16,14,15,14,17,15,14,14,15,16,16,14,15,15,16,16,15,16,15,17,17,16,16,16,17,17,17,17,17,18,17,14,15,14,16,15,15,15,15,17,16,15,15,15,17,15,17,17,17,18,18,16,17,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,11,13,14,10,12,11,14,13,7,9,9,11,12,9,10,10,12,13,9,10,10,13,13,11,11,12,13,15,11,12,12,15,14,8,9,9,12,11,9,11,10,13,13,9,11,10,13,12,12,13,12,14,15,11,13,12,15,13,10,11,12,13,14,11,12,12,13,15,12,12,13,14,15,13,13,14,14,16,14,15,15,16,16,11,12,11,14,13,12,13,13,15,14,11,13,12,15,13,14,15,15,15,16,13,14,14,16,14,7,9,9,11,12,9,10,11,12,13,9,10,10,13,12,11,12,12,14,15,11,12,12,15,14,9,9,11,11,13,10,10,12,12,14,10,11,12,13,14,12,12,13,14,16,12,13,13,15,15,9,11,10,13,13,10,12,12,13],"i8",L3,R.GLOBAL_BASE+431057),d3([14,10,12,11,14,13,12,13,13,15,16,12,13,13,15,14,11,11,13,13,15,12,12,14,13,16,13,13,13,14,15,14,14,15,14,17,15,15,15,16,16,12,13,12,15,14,13,14,14,15,15,12,14,13,16,14,15,15,16,16,17,14,15,14,17,15,7,9,9,12,11,9,10,10,12,13,9,11,10,13,12,11,12,12,14,14,11,13,12,15,14,9,10,10,13,12,10,10,11,12,13,10,12,11,14,13,12,12,13,13,15,12,14,13,16,15,9,10,10,13,12,11,11,12,13,13,10,12,10,14,12,13,13,13,15,15,12,13,12,15,13,11,12,12,14,14,12,12,13,14,15,13,14,13,15,15,14,13,15,13,16,15,16,15,17,16,12,13,12,14,14,13,14,14,15,15,12,13,12,15,14,15,15,16,16,17,14,15,13,16,13,10,11,12,13,14,11,12,13,14,15,12,13,13,15,15,14,14,15,15,17,14,15,15,16,16,12,12,13,12,15,12,12,14,13,16,13,13,14,14,16,14,14,16,15,17,15,15,16,16,17,12,13,13,15,15,13,14,14,16,16,13,14,13,16,15,15,16,16,17,17,14,15,15,17,16,14,14,15,14,17,15,15,16,15,17,15,15,16,15,17,16,16,17,16,18,17,17,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,17,17,17,18,18,16,17,16,18,17,10,12,11,14,14,12,13,13,15,15,12,13,12,15,14,14,15,15,16,16,14,15,15,17,16,11,13,12,15,14,12,13,13,15,15,13,14,13,16,14,15,15,15,16,16,15,16,15,17,16,12,13,13,15,15,13,14,14,16,16,12,14,13,16,15,15,16,16,17,17,15,16,15,17,16,14,15,15,16,16,14,15,15,16,16,15,16,16,17,16,16,16,16,16,17,17,18,17,18,17,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,17,17,18,18,18,16,17,16,18,16,6,8,8,11,11,8,9,9,11,12,8,9,9,12,11,10,11,12,13,14,10,11,11,14,13,8,9,9,11,12,9,10,11,12,13,9,10,11,13,13,11,12,13,13,15,12,12,12,15,14,7,9,9,12,11,9,10,10,13,13,9,10,10,13,12,11,12,12,14,15,11,12,11,15,13,11,11,12,13,14,11,12,13,13,15,12,13,13,14,15,13,14,14,14,16,14,15,15,16,16,10,12,11,14,13,12,13,12,14,14,11,12,12,15,13,14,15,15,16,16,13,14,13,16,14,7,9,9,11,12,9,10,11,12,13,9,10,10,13,12,11,12,13,14,15,11,12,12,14,14,9,10,10,12,13,10,10,12,12,14,11,12,11,13,13,12,12,14,13,15,13,13,13,15,15,9,10,10,12,13,10,11,12,13,14,10,11,10,13,12,13,13,14,15,16,12,13,12,15,13,12,13,13,14,14,12,12,13,14,15,13,14,14,15,15,14,13,15,13,16,15,16,15,17,16,11,12,12,14,14,13,13,14,15,15,12,13,12,15,14,15,15,16,16,17,14,14,13,16,13,7,9,9,12,11,9,10,10,12,13,9,11,10,13,12,11,12,12,14,15,11,12,12,15,14,9,10,11,13,13,10,11,12,13,14,10,12,12,14,13,12,13,13,14,16,12,13,13,16,15,9,11,9,13,11,10,12,11,13,13,10,12,10,14,12,12,13,13,15,15,12,13,12,16,14,12,12,13,14,15,12,13,14,14,15,13,14,14,15,15,14,14,15,15,17,15,16,15,17,16,11,13,11,15,13,13,14,13,15,14,12,14,12,16,13,15,15,15,16,16,14,15,14,17,14,10,11,12,14,14,12,12,13,14,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,16,12,12,13,15,15,13,13,14,15,16,13,14,14,16,16,15,15,16,16,17,15,16,16,17,17,11,12,13,14,15,13,13,14,15,16,12,13,13,15,15,15,15,16,16,17,15,15,15,16,16,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,16,18,17,17,17,18,18,14,15,15,16,16,15,16,16,16,17,15,15,15,16,16,17,17,17,18,18,16,16,16,17,16,10,12,11,14,13,12,13,13,15,15,11,13,12,15,14,14,15,15,16,16,14,15,14,17,15,12,13,13,15,15,13,13,14,16,16,13,14,14,16,16,15,15,15,16,17,15,16,16,17,17,12,13,12,15,12,13,14,13,16,14,12,14,12,16,13,15,16,15,17,16,14,16,14,17,15,14,15,15,16,17,15,15,16,17,17,15,16,16,17,17,16,16,17,17,18,17,18,17,18,18,14,15,14,17,14,15,16,15,17,15,15,16,15,17,15,17,17,17,18,17,16,17,16,18,16,9,11,11,14,14,11,12,12,14,14,11,12,12,15,14,13,14,14,16,16,13,15,14,16,16,10,11,12,14,14,11,12,13,15,15,12,13,13,15,15,13,14,15,16,17,14,15,15,17,16,11,12,12,15,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,15,17,16,12,13,14,15,16,13,14,14,15,16,13,14,15,16,16,15,15,16,16,18,16,16,16,18,17,14,14,14,16,15,15,15,15,17,16,14,15,15,17,16,16,17,17,18,17,16,16,16,18,16,10,12,12,14,14,11,12,13,15,15,12,13,13,15,15,13,14,15,16,17,14,15,15,17,16,11,12,13,14,15,12,12,14,15,16,13,13,14,15,16,14,14,15,16,17,15,15,16,17,17,12,13,13,15,15,13,14,14,16,16,13,14,13,16,15,15,16,15,17,17,15,16,15,17,16,13,13,15,14,17,14,13,16,15,17,15,14,16,15,17,15,15,17,16,18,16,16,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,15,17,16,17,17,17,18,18,16,17,16,18,17,10,12,11,14,14,11,12,13,15,15,12,13,12,15,15,14,15,15,16,16,14,15,15,17,16,11,12,12,15,15,12,13,13,15,15,13,14,13,16,15,14,15,15,16,16,15,16,15,17,16,11,13,13,15,15,13,14,14,15,15,12,14,13,16,15,15,16,15,17,17,15,16,15,17,16,13,15,14,16,16,14,15,14,16,16,15,16,15,17,16,15,16,16,16,17,16,17,16,18,17,14,15,15,16,16,15,16,16,17,17,15,15,15,17,16,17,17,17,18,18,16,16,16,18,16,12,13,13,15,16,13,14,14,15,16,13,14,14,16,16,15,15,16,16,18,15,16,16,17,17,13,13,14,15,16,14,14,15,15,17,14,15,15,16,17,15,15,17,16,18,16,16,17,17,17,13,14,14,16,16,14,15,15,17,17,14,15,14,17,16,16,17,16,17,18,16,17,16,18,17,15,15,16,14,17,16,15,17,14,18,16,16,16,15,18,16,16,18,15,19,18,18,18,17,19,15,16,16,18,17,16,17,17,18,17,16,17,16,18,17,18,18,18,19,19,17,18,16,18,17,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,16,16,16,17,15,16,16,17,16,12,14,13,16,15,13,13,14,15,16,14,15,14,17,15,15,15,16,16,17,16,17,16,18,17,12,13,14,15,16,14,15,15,16,16,13,14,13,16,15,16,16,16,17,17,15,16,15,17,15,15,16,15,17,16,15,15,15,16,16,16,17,16,18,16,16,15,16,15,17,17,18,17,18,17,15,15,16,17,17,16,16,17,17,17,15,16,15,17,16,18,18,18,18,18,16,17,16,18,15,9,11,11,14,14,11,12,12,14,15,10,12,12,15,14,13,14,15,16,16,13,14,14,16,16,11,12,12,14,15,12,12,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,15,16,16,10,12,12,14,14,12,13,13,15,15,11,13,12,15,15,14,15,15,16,17,13,15,14,16,16,14,14,14,15,16,14,15,15,16,17,14,15,15,16,17,16,16,17,16,18,16,17,17,17,17,12,14,13,16,15,13,15,14,16,16,13,14,14,16,15,16,16,16,17,17,15,16,15,17,16,10,11,11,14,14,12,12,13,14,15,11,13,12,15,14,14,15,15,16,17,14,15,15,16,16,12,13,13,15,15,12,13,14,15,16,13,14,14,15,15,15,15,16,16,17,15,15,16,17,17,11,12,12,15,15,13,13,14,15,16,12,13,13,15,15,15,15,16,16,17,14,15,15,16,16,14,15,15,16,16,15,15,15,16,17,15,16,16,17,17,16,16,17,16,18,17,17,17,17,18,13,14,15,16,16,15,15,16,16,17,14,14,14,16,16,16,16,17,17,18,16,16,16,17,16,10,12,12,14,14,12,13,13,15,15,11,13,12,15,15,14,15,15,16,17,13,15,14,17,16,12,13,13,15,15,13,13,14,15,16,13,14,14,16,16,15,15,16,16,17,15,15,16,17,17,11,13,12,15,14,13,14,13,16,15,12,14,12,16,15,15,16,15,17,17,14,15,14,17,16,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,16,16,17,17,18,17,17,17,18,18,13,15,13,17,14,14,16,14,17,16,14,15,13,17,15,16,17,16,18,17,15,17,15,18,16,11,12,12,15,15,13,13,14,15,16,13,14,13,16,15,15,16,16,16,17,15,16,16,17,16,12,14,13,16,15,13,13,14,15,16,14,15,15,16,16,16,15,16,16,17,16,16,16,17,17,12,13,14,15,16,14,14,15,15,17,13,14,13,16,15,16,16,17,17,18,15,16,15,17,15,15,16,15,17,17,15,15,16,16,17,16,17,16,17,17,16,15,17,15,18,17,18,17,18,18,15,15,16,16,17,16,16,17,16,18,15,15,15,16,16,17,17,18,17,18,16,16,15,17,15,12,13,13,15,15,13,14,14,16,16,13,14,14,16,16,15,16,16,17,18,15,16,15,18,16,13,14,14,16,16,14,14,15,16,17,14,15,15,17,17,16,16,17,17,18,16,16,17,18,17,13,14,13,16,14,14,15,15,17,16,14,15,14,17,15,16,17,17,18,17,15,17,15,18,16,15,16,16,17,17,16,16,17,17,18,16,17,17,18,18,17,16,18,17,19,18,18,18,18,18,15,16,15,17,14,16,16,16,18,15,16,17,15,18,14,18,18,18,18,17,17,18,16,19,15,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,5,5,5,7,7,5,7,7,5,7,7,7,8,9,7,9,9,5,7,7,7,9,9,7,9,8,5,7,8,8,9,10,8,9,10,8,9,10,9,10,12,10,11,11,8,10,10,10,11,11,9,11,11,5,8,7,8,9,9,8,10,9,8,10,10,9,11,11,10,11,11,8,10,9,10,11,11,9,12,10,5,8,8,7,9,10,8,10,9,7,9,9,9,10,11,9,11,11,8,10,9,10,11,11,10,11,11,7,9,9,9,10,11,9,11,11,9,9,11,10,10,13,11,11,12,9,11,11,11,12,13,11,13,12,7,9,9,9,11,11,9,11,10,9,11,10,10,11,12,11,13,12,9,11,11,11,12,13,11,13,11,5,8,8,8,9,10,7,10,9,8,9,10,10,11,11,10,11,11,7,9,9,9,11,11,9,11,10,7,9,9,9,10,11,9,11,11,9,11,11,11,11,13,11,13,12,9,10,11,11,12,13,10,12,11,7,9,9,9,11,11,9,11,10,9,11,11,11,12,13,11,13,12,9,11,9,11,12,11,10,13,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,7,12,14,15,18,20,20,5,3,4,6,9,11,15,19,9,4,3,4,7,9,13,18,11,6,3,3,5,8,13,19,14,9,6,5,7,10,16,20,16,11,9,8,10,10,14,16,21,14,13,11,8,7,11,14,21,14,13,9,6,5,10,12,0,0,0,0,255,255,255,255,255,255,255,255,8,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,R.GLOBAL_BASE+441297),d3([1,0,0,0,1,0,0,0,2,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,99,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,240,5,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,184,214,6,0,0,0,0,0,0,0,0,0,224,214,6,0,0,0,0,0,0,0,0,0,8,215,6,0,48,215,6,0,0,0,0,0,0,0,0,0,88,215,6,0,128,215,6,0,0,0,0,0,0,0,0,0,168,215,6,0,208,215,6,0,0,0,0,0,0,0,0,0,248,215,6,0,32,216,6,0,208,215,6,0,0,0,0,0,72,216,6,0,112,216,6,0,208,211,6,0,248,211,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,120,214,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,112,214,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,211,6,0,128,211,6,0,0,0,0,0,0,0,0,0,168,211,6,0,208,211,6,0,248,211,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,136,213,6,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,56,214,6,0,0,0,0,0,2,0,0,0,25,0,0,0,80,213,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,112,213,6,0,0,0,0,0,2,0,0,0,9,0,0,0,48,213,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,64,213,6,0,0,0,0,0,1,0,0,0,25,0,0,0,168,212,6,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,200,212,6,0,0,0,0,0,1,0,0,0,25,0,0,0,32,212,6,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,64,212,6,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,4,4,5,5,5,4,5,4,5,5,5,5,6,5,6,5,6,5,6,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,8,8,9,8,9,9,10,10,10,10,4,6,5,8,7,9,9,9,9,10,9,10,10,4,5,6,7,8,9,9,9,9,9,10,9,10,8,9,8,9,8,10,9,11,9,12,10,11,10,8,8,9,8,9,9,10,9,11,10,11,10,12,9,10,10,11,10,11,11,12,11,12,12,12,12,9,10,10,11,11,11,11,11,12,12,12,12,12,10,11,11,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,13,12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,11,13,12,12,12,13,12,12,12,12,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,5,13,9,9,12,16,18,4,2,20,6,7,10,15,20,10,7,5,5,6,8,10,13,8,5,5,3,5,7,10,11,9,7,6,5,5,7,9,9,11,10,8,7,6,6,8,8,15,15,10,10,9,7,8,9,17,19,13,12,10,8,9,9,5,0,0,0,243,0,0,0,232,4,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,224,5,7,0,0,0,0,0,5,0,0,0,53,12,0,0,152,248,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,208,4,7,0,0,0,0,0,5,0,0,0,243,0,0,0,144,247,6,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,136,248,6,0,0,0,0,0,5,0,0,0,243,0,0,0,136,246,6,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,128,247,6,0,0,0,0,0,5,0,0,0,243,0,0,0,128,245,6,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,120,246,6,0,0,0,0,0,5,0,0,0,53,12,0,0,48,233,6,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,104,245,6,0,0,0,0,0,5,0,0,0,53,12,0,0,224,220,6,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,24,233,6,0,0,0,0,0,1,0,0,0,7,0,0,0,184,220,6,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,192,220,6,0,0,0,0,0,5,0,0,0,243,0,0,0,176,219,6,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,168,220,6,0,0,0,0,0,5,0,0,0,243,0,0,0,168,218,6,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,160,219,6,0,0,0,0,0,5,0,0,0,243,0,0,0,160,217,6,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,152,218,6,0,0,0,0,0,5,0,0,0,243,0,0,0,152,216,6,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,144,217,6,0,0,0,0,0,1,9,9,7,9,9,8,8,9,9,9,9,9,9,9,8,9,9,7,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,6,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,5,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,5,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,6,7,7,7,7,7,7,8,8,9,9,9,9,7,7,8,8,8,9,9,9,9,8,8,6,7,7,8,8,8,8,8,8,9,8,8,9,8,9,9,8,8,10,8,8,10,9,9,10,8,8,6,6,6,8,6,6,8,7,7,8,7,7,10,8,8,9,7,7,9,7,7,10,8,8,9,7,7,7,7,7,10,8,8,11,9,9,10,9,9,11,9,9,11,8,8,11,9,9,12,9,9,12,8,8,7,7,7,10,9,9,10,9,9,10,9,9,11,10,10,10,9,9,11,9,10,11,10,11,10,9,9,9,8,8,10,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,9,9,11,10,10,11,9,9,8,8,8,11,9,9,11,9,9,11,9,9,12,9,9,12,8,8,11,9,9,12,9,9,12,8,8,8,7,7,10,9,9,10,9,9,10,9,9,11,11,11,11,9,9,11,10,10,11,11,11,11,9,9,10,9,9,11,9,9,11,9,10,11,10,10,11,10,10,11,9,9,11,10,10,11,10,10,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,7,7,7,8,8,7,8,8,7,9,9,11,11,11,9,8,8,8,9,9,12,11,12,9,8,8,6,7,7,10,11,11,10,10,10,11,11,11,14,14,14,12,11,12,11,11,11,15,15,14,13,12,12,5,6,6,8,5,5,8,7,7,8,7,7,12,10,10,10,7,6,9,8,8,12,10,10,10,6,6,7,8,8,12,10,10,12,10,10,11,10,10,16,14,14,13,10,10,12,10,10,15,14,14,14,10,10,7,7,7,13,11,11,13,11,11,12,11,11,16,14,14,14,12,12,12,11,11,18,15,15,14,12,12,10,9,10,14,11,11,13,11,11,12,11,11,17,14,14,14,11,11,13,11,11,16,15,15,14,11,11,7,8,8,13,11,11,12,10,10,12,10,10,16,14,13,13,10,10,12,10,10,17,14,14,14,10,10,8,7,7,12,11,11,13,11,11,12,11,11,16,15,14,14,12,12,12,11,11,16,15,15,14,12,12,11,10,10,14,11,11,13,11,11,13,11,11,17,14,14,14,11,11,13,11,11,18,14,15,15,11,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,1,7,6,15,15,7,8,8,15,15,8,8,8,15,15,0,13,13,16,16,0,14,14,16,16,7,9,9,16,16,10,11,11,17,17,10,8,8,15,16,0,14,14,18,18,0,14,14,16,16,9,9,9,16,16,12,11,11,17,17,10,9,9,15,15,0,14,14,19,19,0,14,14,16,16,0,15,15,18,17,0,0,0,20,20,0,13,13,16,16,0,17,17,22,20,0,15,15,17,17,0,15,15,18,18,0,22,21,20,21,0,13,13,16,16,0,18,18,0,22,0,15,15,17,17,6,7,7,13,13,9,10,10,15,15,11,10,10,15,15,0,21,22,18,18,0,0,0,18,18,10,10,10,15,15,12,13,13,17,17,12,11,11,15,15,0,22,22,18,18,0,0,21,18,18,12,11,11,15,15,15,14,14,18,18,13,11,11,15,15,0,0,21,18,19,0,21,22,18,19,0,22,0,18,19,0,0,0,0,0,0,21,21,18,18,0,22,0,0,21,0,0,0,19,18,0,0,0,18,19,0,0,0,0,0,0,20,20,18,17,0,0,22,0,21,0,0,0,19,19,6,6,6,13,13,8,6,6,11,11,9,7,7,13,13,0,10,10,11,11,0,12,12,14,14,9,8,8,14,14,12,10,10,13,13,10,7,7,13,13,0,11,11,15,15,0,11,11,13,13,9,8,8,14,14,13,10,10,13,14,11,7,7,13,13,0,11,11,15,15,0,11,11,13,13,0,12,12,15,15,0,21,21,17,17,0,10,10,13,13,0,14,14,20,20,0,12,12,13,13,0,12,12,15,15,0,21,22,17,18,0,10,10,13,13,0,16,16,20,21,0,12,12,13,13,0,11,11,13,13,0,12,12,16,16,0,12,12,16,16,0,16,16,0,21,0,17,18,0,0,0,12,12,15,15,0,15,15,18,18,0,12,12,16,16,0,16,16,21,22,0,17,17,22,21,0,12,12,16,16,0,15,15,19,19,0,12,12,16,16,0,16,16,22,22,0,17,16,22,0,0,17,18,0,0,0,0,0,0,0,0,15,15,21,20,0,19,20,0,22,0,18,18,0,0,0,18,17,0,0,0,0,0,0,0,0,16,16,22,21,0,20,20,0,22,0,20,19,0,0,0,11,11,12,12,0,10,10,11,11,0,11,11,12,12,0,12,12,10,10,0,13,13,12,12,0,11,11,13,13,0,13,13,12,12,0,10,10,12,12,0,13,13,14,13,0,12,12,12,12,0,12,12,13,13,0,14,14,13,13,0,10,10,12,12,0,13,13,14,14,0,13,12,12,12,0,14,14,14,14,0,21,21,16,16,0,12,12,12,12,0,16,16,20,21,0,13,13,11,11,0,14,14,14,14,0,20,20,16,15,0,12,12,12,12,0,17,17,20,20,0,13,13,11,11,7,8,8,16,16,11,10,10,15,15,12,10,10,17,17,0,14,14,16,15,0,15,15,17,17,11,9,9,16,16,14,12,12,17,17,13,9,9,16,15,0,14,14,19,18,0,14,14,16,16,12,10,10,17,18,16,13,13,17,18,14,10,10,16,16,0,14,14,19,19,0,14,15,17,17,0,15,15,18,19,0,0,0,20,20,0,13,13,17,17,0,17,18,0,22,0,15,15,16,17,0,15,15,18,18,0,0,0,20,21,0,14,14,17,17,0,19,18,0,0,0,16,16,17,17,8,7,7,14,14,12,11,11,15,15,13,11,11,15,15,0,0,0,18,19,0,21,20,18,18,12,10,11,15,16,14,13,13,18,18,14,11,11,15,15,0,20,20,19,18,0,20,0,18,18,13,11,11,16,16,17,15,15,19,19,14,12,12,15,15,0,21,0,18,20,0,22,22,18,19,0,22,22,19,19,0,0,0,0,0,0,21,22,19,18,0,0,0,0,21,0,0,0,19,19,0,0,22,20,20,0,0,0,0,0,0,22,0,18,18,0,0,0,0,22,0,0,0,19,20,11,10,10,14,14,14,11,11,13,13,14,11,11,15,15,0,14,13,12,12,0,15,15,16,16,13,11,11,15,15,16,13,13,15,15,15,10,10,14,15,0,14,14,16,16,0,14,14,15,15,13,11,11,15,15,18,14,14,15,15,15,10,10,15,14,0,14,14,16,16,0,14,14,15,15,0,15,15,17,16,0,21,22,18,18,0,13,13,14,14,0,18,17,20,21,0,15,15,14,14,0,15,16,16,17,0,0,0,19,18,0,13,13,15,14,0,19,19,0,0,0,15,15,14,14,0,12,12,14,13,0,13,13,16,16,0,12,12,16,16,0,16,16,22,0,0,17,18,0,22,0,13,13,16,16,0,15,15,18,18,0,12,12,16,16,0,16,16,22,22,0,17,17,0,0,0,13,13,17,17,0,16,16,19,20,0,12,12,17,17,0,17,17,22,0,0,17,17,22,21,0,18,18,0,0,0,0,0,0,0,0,16,16,21,21,0,19,19,0,0,0,18,18,0,22,0,18,18,0,22,0,0,0,0,0,0,16,16,22,0,0,20,20,0,0,0,19,18,0,0,0,12,12,15,15,0,12,12,15,14,0,13,13,15,15,0,14,14,14,14,0,15,15,16,16,0,13,13,15,16,0,15,15,16,16,0,12,12,15,15,0,14,14,16,16,0,14,14,15,15,0,13,13,15,16,0,15,15,16,16,0,12,12,15,15,0,15,15,17,17,0,14,14,15,15,0,15,15,17,17,0,21,21,19,19,0,13,13,14,14,0,17,17,22,0,0,14,14,15,15,0,15,15,17,17,0,22,0,18,20,0,13,13,15,15,0,18,18,0,22,0,15,15,14,15,8,8,8,17,16,12,10,10,16,16,13,10,10,17,16,0,15,15,17,17,0,15,15,17,17,12,11,11,18,18,15,12,12,18,18,15,10,10,16,17,0,14,14,18,18,0,14,14,17,17,13,10,10,16,16,17,14,14,17,17,15,10,10,16,15,0,15,15,19,20,0,14,14,15,16,0,16,16,19,19,0,0,0,21,22,0,13,13,17,17,0,18,17,0,21,0,15,15,17,17,0,15,15,18,19,0,0,22,0,21,0,13,13,16,17,0,19,19,0,22,0,16,15,16,16,9,8,8,14,14,12,11,11,15,15,13,11,11,15,15,0,21,20,19,18,0,0,0,19,18,12,11,11,16,15,15,13,13,17,18,14,11,11,15,15,0,22,22,19,18,0,22,21,18,18,14,11,11,15,15,17,14,14,18,18,15,12,12,15,15,0,22,22,20,19,0,0,21,18,18,0,0,22,20,20,0,0,0,0,0,0,20,21,18,18,0,0,0,21,21,0,0,0,20,19,0,22,21,19,19,0,0,0,0,0,0,0,22,17,18,0,0,22,0,22,0,22,0,19,19,0,11,11,15,15,0,11,11,14,14,0,12,12,15,15,0,15,15,14,14,0,16,16,16,16,0,12,12,16,16,0,14,14,16,16,0,11,11,15,15,0,15,15,17,17,0,15,15,15,15,0,12,12,16,16,0,14,14,15,15,0,11,11,15,15,0,15,15,17,17,0,15,15,14,15,0,16,16,17,17,0,0,0,19,19,0,14,14,15,15,0,18,18,21,0,0,15,15,14,15,0,16,16,17,17,0,21,0,19,19,0,14,14,15,15,0,20,20,22,0,0,16,15,14,14,0,12,12,13,13,0,12,12,16,16,0,12,12,16,16,0,16,16,22,21,0,18,17,21,0,0,13,13,16,16,0,15,15,18,19,0,12,12,16,16,0,16,17,22,0,0,17,17,0,22,0,13,13,17,16,0,15,15,19,19,0,12,12,16,16,0,16,16,21,20,0,17,16,22,0,0,18,18,22,21,0,0,0,0,0,0,15,16,21,21,0,19,19,0,0,0,18,17,0,0,0,18,18,21,0,0,0,0,0,0,0,16,16,22,22,0,20,21,0,0,0,18,19,0,22,0,13,13,16,16,0,12,12,15,15,0,13,13,16,16,0,14,14,15,15,0,15,15,17,17,0,13,13,17,16,0,15,15,17,17,0,12,12,16,16,0,15,15,17,17,0,14,14,16,16,0,13,13,16,17,0,15,15,17,17,0,12,12,16,16,0,14,14,17,17,0,14,14,16,16,0,16,16,17,17,0,21,0,21,19,0,13,13,16,16,0,17,17,0,0,0,15,15,16,16,0,16,15,18,18,0,22,0,20,20,0,13,13,15,15,0,18,18,0,0,0,15,15,15,15,0,12,12,17,17,0,14,14,17,17,0,14,14,17,17,0,17,17,18,17,0,17,17,19,18,0,13,13,17,17,0,16,16,18,18,0,13,13,16,16,0,17,17,19,19,0,16,16,17,17,0,13,13,18,18,0,17,17,18,18,0,13,13,17,17,0,17,17,19,19,0,16,17,17,17,0,17,17,19,19,0,21,0,21,19,0,14,14,16,16,0,20,19,0,21,0,16,16,16,16,0,17,18,19,19,0,0,0,0,21,0,15,15,16,17,0,21,20,0,0,0,17,18,16,17,0,9,9,14,14,0,14,14,15,16,0,14,14,15,15,0,0,0,18,18,0,21,0,18,19,0,12,12,15,15,0,16,16,17,17,0,14,14,14,14,0,22,0,19,18,0,22,0,17,18,0,14,14,16,15,0,18,18,19,18,0,14,15,15,15,0,0,21,20,20,0,0,0,18,18,0,21,21,19,19,0,0,0,0,0,0,21,21,18,18,0,22,0,20,20,0,22,0,19,19,0,22,0,19,20,0,0,0,0,0,0,0,21,17,18,0,0,0,22,22,0,0,0,19,18,0,18,20,16,16,0,21,20,17,17,0,0,21,18,18,0,22,21,18,18,0,0,22,19,19,0,20,20,17,17,0,0,0,18,18,0,19,20,17,17,0,22,0,19,21,0,22,21,18,18,0,20,19,17,18,0,0,0,19,19,0,20,20,17,17,0,22,22,21,21,0,20,0,18,18,0,22,22,18,18,0,0,0,20,22,0,20,20,16,16,0,0,0,21,0,0,21,20,16,17,0,22,0,19,20,0,0,0,21,20,0,19,21,17,17,0,0,0,0,0,0,21,21,17,17,0,12,12,13,13,0,14,14,16,16,0,14,14,16,16,0,18,18,0,0,0,19,18,22,0,0,13,13,16,16,0,16,16,18,18,0,13,13,16,16,0,17,18,21,0,0,18,18,21,0,0,13,13,16,16,0,17,17,19,20,0,13,13,16,17,0,18,18,21,0,0,18,18,21,0,0,18,19,0,21,0,0,0,0,0,0,16,16,21,20,0,20,20,0,0,0,18,19,0,0,0,18,18,0,0,0,0,0,0,0,0,16,16,0,21,0,22,22,0,0,0,19,19,0,0,0,16,16,19,20,0,17,16,22,21,0,17,17,21,20,0,19,18,0,22,0,19,19,22,22,0,16,15,22,22,0,19,19,0,21,0,15,15,20,20,0,18,19,0,21,0,18,18,22,22,0,16,16,21,20,0,20,19,21,22,0,16,15,20,20,0,19,19,0,22,0,18,18,21,0,0,19,18,21,22,0,0,0,0,0,0,16,16,19,21,0,20,22,0,22,0,18,18,20,21,0,19,18,0,22,0,0,0,22,0,0,16,16,20,20,0,21,21,0,0,0,18,18,21,0,0,12,12,17,17,0,15,14,17,17,0,14,14,18,18,0,17,17,17,18,0,18,18,18,18,0,13,13,18,18,0,16,17,19,18,0,13,13,16,17,0,17,17,18,19,0,17,17,17,17,0,13,13,17,17,0,17,18,18,18,0,13,13,16,16,0,18,18,19,20,0,16,17,17,16,0,17,18,19,18,0,0,0,22,21,0,15,15,16,16,0,20,20,21,22,0,17,17,16,16,0,16,17,18,18,0,0,0,21,21,0,15,15,16,16,0,21,20,0,0,0,17,17,16,16,0,10,10,14,14,0,14,14,15,15,0,14,14,15,15,0,22,0,18,18,0,0,0,19,19,0,13,13,15,16,0,17,16,18,18,0,14,14,15,15,0,21,21,19,18,0,22,21,18,17,0,14,14,15,15,0,18,18,19,18,0,15,15,14,14,0,22,21,19,19,0,22,21,17,18,0,0,0,19,19,0,0,0,0,0,0,20,22,17,17,0,0,22,22,20,0,0,0,19,18,0,21,22,19,18,0,0,0,0,0,0,22,22,17,18,0,0,0,21,22,0,0,0,19,18,0,20,20,17,17,0,21,21,17,18,0,21,22,18,18,0,21,0,18,18,0,22,0,19,19,0,19,21,18,18,0,0,22,18,18,0,22,21,17,17,0,22,0,20,20,0,0,0,18,18,0,22,21,18,18,0,21,0,19,19,0,20,21,17,17,0,0,22,22,20,0,21,22,17,17,0,0,21,19,18,0,0,0,21,21,0,21,20,16,17,0,0,0,0,0,0,21,0,17,17,0,21,0,19,20,0,0,0,20,22,0,20,20,17,17,0,0,0,0,0,0,21,21,17,17,0,12,12,13,13,0,14,14,16,16,0,14,14,16,16,0,18,18,21,0,0,19,19,22,0,0,13,13,16,16,0,16,16,18,18,0,13,13,16,16,0,18,18,21,22,0,18,18,0,22,0,13,13,16,16,0,17,17,20,18,0,13,13,16,16,0,19,18,0,22,0,18,18,22,21,0,18,19,0,0,0,0,0,0,0,0,16,16,21,21,0,21,21,0,0,0,18,19,0,0,0,19,19,21,0,0,0,0,0,0,0,16,16,0,21,0,20,20,0,0,0,20,20,0,0,0,16,16,21,20,0,18,17,21,22,0,17,18,0,21,0,18,19,22,22,0,19,19,0,22,0,16,17,21,22,0,20,19,0,0,0,16,16,20,21,0,19,19,0,0,0,19,19,0,22,0,17,17,21,21,0,19,20,0,0,0,16,16,0,20,0,19,20,0,21,0,18,18,0,22,0,19,20,22,22,0,0,0,0,22,0,17,17,0,21,0,21,21,0,0,0,18,19,23,21,0,20,19,0,0,0,0,0,0,0,0,17,17,0,20,0,0,0,0,0,0,19,19,23,22,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,4,5,5,9,9,12,9,9,12,12,12,10,10,13,13,13,11,11,12,12,13,13,13,12,12,13,10,10,13,13,13,13,13,13,13,13,10,10,13,12,13,11,11,13,13,13,14,14,13,12,13,10,10,13,13,12,13,13,13,13,13,10,10,12,12,13,11,11,13,13,13,14,14,12,12,13,12,12,13,13,13,13,13,13,13,13,11,11,12,12,13,11,11,13,13,13,14,14,12,12,13,14,14,13,13,14,13,13,14,14,14,14,14,12,12,13,14,14,13,13,14,14,14,12,12,12,8,8,12,12,13,12,12,11,11,13,11,11,11,11,14,12,12,11,11,14,12,12,10,11,14,12,12,12,12,14,12,12,12,12,13,13,13,11,11,14,12,12,11,11,14,12,12,12,12,14,12,12,12,12,14,12,12,12,12,14,13,13,11,11,14,12,12,11,11,14,12,12,12,12,14,13,13,12,12,14,12,12,12,12,14,13,13,11,11,14,12,12,11,11,14,13,13,11,11,15,13,13,12,12,14,12,12,12,12,15,13,13,12,12,14,12,12,11,11,15,13,13,11,11,12,9,9,11,11,13,7,7,11,11,13,8,8,12,12,14,10,10,10,10,14,14,14,11,11,14,8,8,12,12,14,14,14,12,12,14,7,7,11,11,14,9,9,12,12,14,14,14,11,11,14,8,8,12,12,14,14,14,12,12,14,7,7,11,11,14,9,9,12,12,14,14,14,11,11,14,10,10,12,12,14,14,14,13,13,14,9,9,11,11,14,10,10,12,11,15,14,14,11,11,14,15,15,12,12,15,14,14,14,14,15,14,14,11,11,15,14,14,12,12,15,14,14,11,11,14,11,11,10,10,15,10,10,10,10,15,10,10,10,10,15,11,11,9,9,15,12,13,9,9,15,11,11,11,11,15,13,13,11,11,15,10,10,10,10,15,11,11,10,10,15,13,13,11,11,15,11,11,11,11,15,13,13,11,11,15,10,10,10,10,15,11,11,10,10,15,13,13,10,11,15,12,12,11,11,15,13,13,11,10,15,11,11,10,10,15,11,12,10,9,15,13,13,10,10,15,14,14,11,11,15,13,13,11,11,15,14,14,10,10,15,13,13,10,10,15,14,14,10,10,14,13,13,10,10,15,13,13,10,10,15,13,13,10,10,14,14,14,8,9,15,14,14,9,9,15,14,14,11,11,15,14,14,10,10,15,14,14,10,10,15,14,14,11,11,15,14,14,10,10,15,14,14,11,11,15,14,14,10,10,15,14,14,10,10,15,14,14,10,10,15,14,14,9,9,15,14,14,11,11,15,14,14,11,11,15,14,14,10,10,15,14,14,10,10,14,14,14,9,9,15,15,15,11,11,15,14,14,12,12,15,15,15,10,10,15,14,15,10,10,15,15,15,9,9,15,10,10,13,13,17,8,8,12,12,17,10,9,13,13,18,11,11,12,12,18,14,14,12,12,17,9,9,13,13,17,13,13,12,12,18,8,8,12,12,18,10,10,12,12,18,14,14,12,12,18,10,10,13,13,18,13,13,13,13,18,9,9,12,12,18,10,10,13,13,18,14,14,12,12,18,11,11,13,13,18,14,14,13,13,18,10,10,12,12,17,11,11,12,12,18,14,14,12,12,18,14,14,13,13,18,14,14,13,13,19,14,15,12,12,18,14,14,12,12,18,15,15,12,12,13,7,7,11,11,14,15,15,11,11,14,16,15,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,11,12,14,15,15,12,12,13,15,15,11,11,14,15,15,11,11,15,15,15,12,12,14,15,15,12,12,14,16,16,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,15,15,15,12,12,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,14,15,12,12,15,15,15,12,12,15,16,16,12,12,15,15,15,12,12,14,15,15,12,12,15,15,15,12,12,13,13,13,11,11,14,14,15,11,11,14,14,14,12,12,14,15,15,10,10,15,15,15,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,15,15,12,12,15,15,15,11,11,14,15,15,12,12,14,14,15,11,11,14,15,15,11,11,14,15,15,12,12,15,15,15,11,11,15,15,15,12,12,14,15,15,12,12,14,15,15,10,10,14,15,15,11,11,15,15,15,10,10,15,15,15,12,12,15,15,15,14,14,15,15,15,11,11,15,15,15,11,11,15,15,15,11,11,14,10,10,10,10,15,9,9,12,11,15,10,10,12,12,15,11,11,11,11,15,13,13,12,12,16,10,10,12,12,15,13,13,12,12,15,9,9,11,11,15,10,10,13,12,15,13,13,11,11,15,10,10,12,12,15,13,13,12,12,15,9,9,11,11,15,10,10,12,12,15,13,13,11,11,15,11,11,12,12,15,13,13,13,13,15,10,10,11,11,15,11,11,12,12,15,13,14,11,11,15,14,14,13,13,16,14,14,20,19,15,14,14,11,11,15,13,14,12,12,15,14,14,11,11,14,13,13,10,10,14,14,13,11,11,15,13,14,12,12,15,14,14,12,12,15,14,14,11,11,15,14,14,12,12,15,15,14,13,13,15,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,13,13,15,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,15,14,14,11,11,15,15,15,12,12,15,15,15,13,13,16,14,14,12,12,15,15,15,13,13,15,15,15,12,12,15,15,15,12,12,14,10,10,13,13,17,9,9,12,12,17,9,9,13,13,17,11,11,12,12,18,14,14,12,12,18,10,10,13,13,18,14,13,12,12,18,9,9,12,12,18,10,10,12,13,18,14,14,12,12,17,9,9,12,12,17,13,14,12,12,17,9,9,12,12,17,10,10,12,12,17,14,14,11,11,18,11,11,12,12,18,14,14,12,13,18,10,10,12,12,18,11,11,12,12,18,14,14,11,11,18,15,15,12,12,18,14,14,13,13,18,14,15,12,12,17,14,14,12,12,17,15,15,12,12,13,7,7,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,14,15,15,11,11,14,15,15,12,12,14,15,15,11,11,15,15,15,11,11,15,15,15,12,12,14,15,15,12,12,14,15,16,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,15,15,15,12,12,15,16,16,12,12,15,15,15,12,12,15,15,15,12,12,15,15,15,12,12,13,13,13,12,12,14,14,14,11,11,14,14,14,12,12,14,14,14,10,10,15,15,15,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,14,14,12,12,15,15,14,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,14,14,11,11,15,14,14,10,10,14,15,15,12,12,14,14,14,12,12,14,15,15,10,10,14,15,15,11,11,15,15,15,10,10,15,15,15,12,12,15,14,14,13,13,15,15,15,10,10,15,14,14,11,11,15,15,15,10,10,14,10,10,10,10,14,9,9,12,12,15,10,10,12,12,14,11,11,11,11,15,13,14,12,12,15,10,10,13,13,15,13,13,12,12,15,9,9,12,12,15,10,10,13,13,15,13,14,11,11,15,10,10,12,12,15,13,13,12,12,15,9,9,11,11,15,10,10,12,12,15,13,13,11,11,15,11,11,12,12,15,13,13,13,13,15,10,10,11,11,15,11,11,12,12,15,14,14,11,11,15,14,14,13,13,15,14,14,20,19,15,14,14,11,11,15,14,14,12,12,15,14,14,11,11,14,13,13,11,11,15,13,13,11,11,15,14,13,12,12,15,14,14,11,12,15,14,14,11,11,15,14,14,12,12,14,14,14,13,13,15,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,13,13,14,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,15,14,14,11,11,14,14,14,12,12,15,15,15,13,13,16,14,14,12,12,15,15,15,13,13,15,14,14,12,12,15,15,15,12,12,15,11,11,13,13,18,10,10,12,12,17,11,11,12,12,18,12,12,11,11,18,14,14,12,12,18,10,10,13,13,18,14,14,12,12,18,10,10,12,12,18,11,11,12,12,18,14,14,12,12,18,11,11,12,13,18,14,14,12,12,18,10,10,12,12,18,11,11,12,12,18,14,14,11,11,18,11,11,12,12,18,14,14,12,12,17,10,10,11,11,17,12,12,11,11,17,14,14,11,11,18,15,15,12,12,18,14,14,13,13,18,15,15,11,11,18,15,14,12,12,18,15,15,11,11,14,8,8,11,11,14,15,15,10,10,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,15,15,15,11,11,15,15,15,12,12,14,15,15,10,10,15,15,15,11,11,15,15,15,12,12,15,15,15,11,11,15,15,15,13,13,14,15,15,10,10,15,15,15,11,11,15,15,15,12,12,15,15,15,12,12,15,16,16,12,12,15,14,14,11,11,15,15,15,11,11,15,15,15,12,12,16,15,15,13,13,15,16,16,13,13,16,15,15,12,12,15,15,15,12,12,15,15,15,12,12,14,13,13,11,11,14,14,14,11,11,14,14,14,12,12,15,14,14,11,11,15,15,14,11,11,15,14,14,12,12,15,14,14,12,12,14,15,15,11,11,15,14,14,12,12,15,14,14,11,11,15,14,15,12,12,15,14,14,12,12,14,15,15,11,11,15,14,14,11,11,15,14,14,11,11,15,15,14,12,12,15,14,14,12,12,15,15,15,10,11,15,14,14,11,11,15,15,15,10,10,15,15,15,12,12,16,14,14,13,13,15,15,15,11,11,15,14,14,11,11,15,15,15,11,11,14,11,11,9,9,14,10,10,12,12,15,11,11,12,12,15,12,12,12,12,15,14,14,13,13,15,11,11,12,12,15,14,14,13,13,14,10,10,12,12,15,11,11,13,13,15,14,14,12,12,15,10,10,12,12,14,14,14,13,13,14,10,10,11,11,15,11,11,12,12,15,14,14,12,12,15,12,12,13,13,15,14,14,14,14,15,11,11,11,11,15,12,11,12,12,15,14,14,11,11,15,15,15,13,14,15,14,14,20,19,15,14,14,12,12,15,14,14,13,13,15,14,14,12,12,14,13,13,10,10,14,13,13,11,11,14,13,13,11,11,15,14,14,12,12,15,14,14,12,12,15,14,14,12,11,14,14,14,13,13,15,14,14,11,11,15,14,14,11,11,15,14,14,14,14,15,14,14,11,12,15,14,14,13,13,14,14,14,11,11,15,14,14,11,11,15,14,14,14,14,15,14,14,12,12,15,14,14,13,13,15,14,14,11,11,14,14,14,12,12,15,14,14,13,13,15,15,15,13,13,15,14,14,13,13,15,15,15,13,13,15,14,14,13,13,15,15,15,13,13,15,14,14,13,13,18,15,15,12,12,18,15,15,12,12,18,16,16,11,11,18,17,17,12,12,18,15,15,13,13,18,17,17,12,12,18,15,15,12,12,18,15,16,12,12,18,17,17,12,12,18,15,15,13,12,17,16,17,12,12,17,15,15,11,12,18,15,15,12,12,18,17,17,11,11,18,16,16,12,12,18,17,16,12,12,18,15,15,11,11,18,15,15,12,12,18,17,17,11,11,18,17,17,12,12,18,16,16,13,13,18,17,17,11,11,17,16,16,11,11,18,17,17,11,11,15,15,15,11,11,16,15,15,11,11,16,15,15,11,11,16,15,15,12,12,17,15,15,14,14,16,15,15,11,11,17,15,15,14,14,16,15,15,11,11,16,15,15,12,12,18,15,15,13,13,16,15,15,11,11,17,15,15,14,14,16,15,15,11,11,16,15,15,12,12,17,15,15,13,13,16,15,15,12,12,17,16,15,14,14,16,15,15,11,11,16,15,15,12,12,18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,18,14,15,13,13,18,15,15,14,14,18,15,15,13,13,15,13,13,12,12,15,14,14,12,12,16,14,14,12,12,16,14,14,12,12,17,14,15,12,12,16,14,14,12,12,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,17,14,14,12,12,16,14,14,12,12,17,14,14,13,13,15,15,15,11,11,16,14,14,12,12,17,14,14,12,12,16,15,15,12,12,17,14,14,13,12,16,15,15,11,11,16,14,14,12,12,17,15,15,11,11,17,15,15,13,13,17,14,14,13,13,18,15,15,12,12,17,14,14,12,12,17,15,15,12,12,14,15,15,9,9,14,15,15,12,12,15,16,15,13,13,15,15,15,14,14,15,15,15,21,19,15,15,15,13,13,15,15,15,19,19,15,15,15,12,12,15,16,16,14,14,15,15,15,19,19,15,16,15,13,13,15,16,16,19,20,15,15,15,12,13,15,16,16,14,14,15,15,15,20,19,15,15,15,14,14,15,16,16,19,19,15,15,15,14,13,15,15,15,14,14,15,15,15,19,19,15,16,16,20,19,15,17,16,21,20,15,15,15,20,19,15,16,16,20,20,15,15,15,19,20,14,13,13,10,10,14,14,14,11,11,14,14,14,12,12,15,14,14,13,13,15,15,14,20,20,15,14,14,12,12,14,14,14,19,19,15,14,14,11,11,15,14,14,12,12,15,14,14,20,19,15,14,14,12,12,14,14,14,20,20,14,14,14,11,11,15,14,14,12,12,15,14,14,20,21,15,14,14,13,13,15,14,14,20,20,15,14,14,12,12,15,14,14,13,13,14,15,15,20,20,15,15,15,20,19,15,14,14,20,19,15,15,15,20,20,15,14,14,21,20,15,15,15,20,20,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,6,7,7,7,8,8,7,8,8,10,11,11,9,8,8,8,8,8,11,11,12,9,8,8,5,7,7,9,11,11,10,11,11,10,11,11,12,14,14,11,12,12,10,12,12,13,14,14,12,12,12,5,6,6,7,6,6,8,7,7,8,7,7,11,10,10,10,7,7,9,8,8,12,11,11,10,7,7,7,7,7,11,10,10,12,10,10,11,10,10,15,13,13,13,10,10,12,11,11,15,13,13,14,11,11,7,7,7,11,11,11,12,11,11,12,11,11,14,14,14,13,12,12,12,12,12,16,15,15,14,12,12,0,10,10,0,11,11,0,12,12,0,11,11,0,14,14,0,11,11,0,12,12,0,15,15,0,11,11,7,8,8,12,11,10,12,10,10,12,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,12,11,11,12,11,11,15,14,14,14,12,12,13,12,12,15,14,14,15,13,13,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,13,13,0,15,14,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,5,5,0,8,8,0,8,8,0,9,9,0,10,10,0,8,8,0,8,8,0,10,10,0,8,8,0,7,7,0,8,8,0,7,7,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,7,7,0,6,6,0,7,7,0,7,7,0,10,10,0,6,6,0,7,7,0,10,10,0,5,5,0,8,8,0,7,7,0,8,8,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,7,7,0,6,6,0,9,10,0,10,10,0,10,10,0,11,11,0,9,9,0,10,10,0,11,11,0,9,9,0,8,8,0,8,8,0,8,8,0,9,9,0,9,9,0,7,7,0,8,8,0,9,9,0,7,7,0,8,8,0,7,7,0,7,7,0,8,8,0,9,9,0,7,7,0,7,7,0,8,8,0,6,6,0,6,6,0,10,10,0,10,10,0,10,10,0,12,12,0,9,9,0,10,10,0,12,12,0,9,9,0,8,8],"i8",L3,R.GLOBAL_BASE+446300),d3([7,7,0,7,7,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,6,6,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,6,6,5,7,8,0,8,8,6,9,9,7,10,10,0,8,8,0,9,9,0,12,12,0,8,8,4,7,7,6,10,10,0,12,12,7,11,11,8,12,12,0,12,12,0,13,12,0,15,15,0,12,12,0,7,7,0,7,7,0,7,7,0,8,8,0,10,10,0,7,7,0,8,8,0,11,11,0,7,7,5,7,7,8,9,9,0,10,10,8,9,9,11,11,11,0,10,9,0,11,11,0,13,13,0,10,10,6,7,7,8,10,10,0,12,12,9,10,10,10,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,10,10,0,11,11,0,11,11,0,11,11,0,13,13,0,11,11,0,11,11,0,15,15,0,10,10,0,8,8,0,10,10,0,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,11,11,0,7,7,0,10,10,0,12,12,0,10,10,0,12,12,0,12,12,0,13,13,0,14,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,9,9,0,0,0,8,8,0,0,0,9,9,0,0,0,12,12,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,5,5,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,5,5,0,0,0,7,7,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,5,5,0,0,0,7,7,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,11,0,0,0,9,9,0,0,0,10,10,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,7,7,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,8,8,0,0,0,10,11,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,7,7,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,7,8,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,9,9,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,9,9,0,0,0,10,10,0,0,0,12,12,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,5,16,9,9,13,18,21,4,2,21,6,6,10,15,21,16,19,6,5,7,10,13,16,8,6,5,4,4,8,13,16,8,5,6,4,4,7,12,15,13,10,9,7,7,9,13,16,18,15,13,12,9,7,10,14,21,18,13,13,7,5,8,12,2,0,0,0,64,0,0,0,192,58,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,11,7,0,0,0,0,0,0,0,0,0,176,11,7,0,0,0,0,0,0,0,0,0,216,11,7,0,0,12,7,0,0,0,0,0,0,0,0,0,40,12,7,0,80,12,7,0,0,0,0,0,0,0,0,0,120,12,7,0,160,12,7,0,0,0,0,0,0,0,0,0,200,12,7,0,240,12,7,0,160,12,7,0,0,0,0,0,24,13,7,0,64,13,7,0,160,8,7,0,200,8,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,72,11,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,64,11,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,8,7,0,80,8,7,0,0,0,0,0,0,0,0,0,120,8,7,0,160,8,7,0,200,8,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,88,10,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,8,11,7,0,0,0,0,0,2,0,0,0,25,0,0,0,32,10,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,64,10,7,0,0,0,0,0,2,0,0,0,9,0,0,0,0,10,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,16,10,7,0,0,0,0,0,1,0,0,0,25,0,0,0,120,9,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,152,9,7,0,0,0,0,0,1,0,0,0,25,0,0,0,240,8,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,16,9,7,0,0,0,0,0,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,5,5,4,4,5,5,5,4,5,4,5,5,5,5,6,5,6,5,6,5,6,5,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,8,8,8,8,9,9,10,10,10,10,4,6,5,8,7,9,9,9,9,10,9,11,9,4,5,6,7,8,9,9,9,9,9,10,9,10,8,9,8,9,8,10,9,11,9,12,10,12,10,8,8,9,8,9,9,10,9,11,10,12,10,12,9,10,10,11,10,12,11,12,11,12,12,12,12,9,10,10,11,11,11,11,11,12,12,12,12,12,10,11,11,12,12,12,12,12,12,12,12,12,12,10,11,11,12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,13,12,13,12,13,12,12,11,12,12,12,12,12,12,13,12,12,12,12,12,12,12,12,13,13,12,13,12,13,12,13,12,12,12,13,12,13,12,13,12,13,12,13,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,4,13,9,9,12,15,17,4,2,18,5,7,10,14,18,11,8,6,5,6,8,11,14,8,5,5,3,5,8,11,13,9,6,7,5,5,7,9,10,11,10,9,8,6,6,8,10,14,14,11,11,9,8,9,10,17,17,14,13,10,9,10,10,5,0,0,0,243,0,0,0,184,57,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,176,58,7,0,0,0,0,0,5,0,0,0,53,12,0,0,104,45,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,160,57,7,0,0,0,0,0,5,0,0,0,243,0,0,0,96,44,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,88,45,7,0,0,0,0,0,5,0,0,0,243,0,0,0,88,43,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,80,44,7,0,0,0,0,0,5,0,0,0,243,0,0,0,80,42,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,72,43,7,0,0,0,0,0,5,0,0,0,53,12,0,0,0,30,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,56,42,7,0,0,0,0,0,5,0,0,0,53,12,0,0,176,17,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,232,29,7,0,0,0,0,0,1,0,0,0,7,0,0,0,136,17,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,144,17,7,0,0,0,0,0,5,0,0,0,243,0,0,0,128,16,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,120,17,7,0,0,0,0,0,5,0,0,0,243,0,0,0,120,15,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,112,16,7,0,0,0,0,0,5,0,0,0,243,0,0,0,112,14,7,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,104,15,7,0,0,0,0,0,5,0,0,0,243,0,0,0,104,13,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,96,14,7,0,0,0,0,0,1,9,9,6,9,9,5,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,7,7,7,7,7,7,7,8,8,9,9,9,9,7,7,8,8,8,9,9,9,9,7,8,6,7,7,8,8,8,8,8,8,9,8,8,10,9,9,10,8,8,10,8,8,10,9,9,10,8,8,6,6,6,8,6,6,8,7,7,8,7,7,10,8,8,9,7,7,9,7,7,10,8,9,9,7,7,7,7,7,10,8,8,11,8,8,10,8,8,12,9,9,12,8,8,11,9,9,12,9,9,11,8,8,7,7,7,10,9,9,10,9,9,10,9,9,11,10,10,10,9,9,11,9,9,11,10,10,11,9,9,9,8,8,10,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,9,9,11,10,10,11,9,9,8,8,8,11,9,9,11,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,9,9,12,8,8,8,7,7,10,9,9,10,9,9,11,9,9,11,11,11,11,9,9,11,10,10,11,11,11,11,9,9,10,9,9,11,9,9,11,9,10,11,10,9,11,10,10,11,9,9,11,9,10,11,10,10,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,6,6,7,7,7,7,8,8,7,9,9,11,11,11,9,8,8,8,9,9,12,11,11,9,8,8,6,7,7,10,11,10,10,10,10,11,11,10,14,13,14,12,11,11,11,11,11,15,14,14,13,12,12,5,6,6,8,5,5,8,7,7,8,8,8,12,10,10,9,7,7,9,7,8,12,10,10,10,7,7,7,8,8,12,10,10,12,10,10,11,10,10,15,13,13,13,10,10,11,10,10,16,13,14,14,10,10,7,7,7,12,11,11,12,11,11,11,11,11,16,15,15,14,12,12,12,11,11,16,15,16,14,12,12,10,9,9,14,11,11,13,11,11,12,11,11,16,14,14,14,11,11,12,11,11,17,15,15,14,11,11,7,8,8,12,11,11,12,10,10,12,10,10,16,14,13,14,10,10,12,10,10,17,14,14,14,10,10,8,7,7,13,11,11,12,11,11,12,11,11,16,15,14,14,12,12,12,11,11,16,15,14,15,12,12,11,10,10,13,11,11,13,12,11,13,11,11,17,14,14,14,11,11,13,11,11,17,14,15,14,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,14,14,6,7,7,14,14,7,7,7,15,15,0,12,12,15,15,0,13,13,15,15,7,8,8,15,15,10,10,10,16,16,9,8,8,15,15,0,13,13,18,17,0,13,13,16,16,8,8,8,15,15,12,11,11,16,16,9,8,8,15,15,0,13,13,18,18,0,13,13,16,16,0,14,14,17,17,0,20,0,19,20,0,12,12,16,16,0,16,16,20,22,0,14,14,16,16,0,14,14,17,17,0,20,22,20,19,0,13,13,15,16,0,17,18,0,21,0,15,15,16,16,5,7,7,13,13,8,9,9,14,14,10,10,10,14,14,0,20,22,18,18,0,22,21,18,17,9,10,10,14,14,12,12,12,17,17,12,10,10,14,14,0,0,20,17,17,0,22,21,17,18,11,10,10,14,14,14,13,13,18,18,12,11,11,14,14,0,22,21,18,19,0,20,0,17,17,0,22,0,18,18,0,0,0,0,0,0,20,20,17,17,0,22,0,22,21,0,21,0,19,18,0,22,22,18,18,0,0,0,0,0,0,21,0,17,17,0,22,0,20,20,0,0,0,19,18,6,6,6,12,12,8,6,6,10,10,8,6,6,13,12,0,10,10,11,11,0,11,11,13,13,8,7,7,13,13,11,9,9,13,13,10,6,6,12,12,0,10,10,14,14,0,10,10,13,13,9,7,7,13,13,12,10,10,13,13,10,6,6,12,12,0,11,11,15,15,0,10,10,13,13,0,12,12,15,14,0,19,20,16,17,0,9,9,13,13,0,14,14,20,21,0,12,11,13,12,0,12,12,15,14,0,20,19,17,17,0,10,10,12,13,0,15,15,22,21,0,12,12,12,13,0,10,10,12,12,0,11,11,15,15,0,11,11,15,15,0,15,15,22,22,0,16,17,0,0,0,11,11,15,15,0,14,14,18,18,0,11,11,16,16,0,16,15,0,21,0,16,16,0,0,0,12,12,15,15,0,14,14,19,19,0,11,11,15,15,0,15,15,22,0,0,16,16,22,0,0,16,16,0,21,0,0,0,0,0,0,15,15,19,20,0,18,18,0,0,0,17,17,0,0,0,17,17,0,0,0,0,0,0,0,0,16,15,22,21,0,20,20,0,0,0,18,18,0,0,0,10,10,12,12,0,10,10,11,11,0,11,11,12,12,0,11,11,9,9,0,13,12,12,12,0,11,11,13,13,0,13,13,12,12,0,10,10,12,12,0,13,12,13,13,0,12,12,12,12,0,11,11,13,13,0,13,13,12,12,0,10,10,12,12,0,13,13,14,13,0,12,12,12,12,0,14,13,13,14,0,20,21,15,15,0,11,11,12,12,0,15,16,20,20,0,12,13,10,10,0,13,13,14,13,0,20,20,15,15,0,11,11,12,12,0,16,17,21,21,0,13,13,11,11,6,7,7,16,15,11,9,9,14,15,12,9,9,16,16,0,13,13,15,15,0,14,14,17,17,10,9,9,16,16,14,12,12,16,16,12,9,9,15,15,0,13,13,17,18,0,13,13,15,15,12,10,10,17,17,15,12,12,17,17,13,9,9,16,16,0,13,13,18,19,0,14,14,16,16,0,15,15,18,18,0,0,0,20,19,0,12,12,17,16,0,16,17,0,21,0,14,15,16,16,0,15,15,18,18,0,0,22,19,21,0,13,13,16,16,0,18,17,22,22,0,15,15,16,16,7,7,7,13,13,11,10,10,15,15,12,10,10,14,14,0,21,0,18,17,0,21,22,18,18,11,10,10,15,15,14,12,12,17,17,14,11,11,14,14,0,21,20,18,18,0,22,21,18,17,12,11,10,16,16,16,14,14,17,19,14,11,11,15,15,0,0,22,19,19,0,21,22,18,18,0,21,0,18,19,0,0,0,22,0,0,22,21,17,17,0,0,0,20,22,0,0,21,18,18,0,0,0,19,20,0,0,0,0,0,0,0,21,17,17,0,0,0,22,21,0,0,0,19,19,10,9,9,14,13,13,10,10,12,12,13,10,10,14,14,0,13,13,12,12,0,15,14,16,15,13,10,10,14,14,15,12,12,14,14,15,10,10,14,14,0,14,14,15,15,0,14,13,14,14,13,10,10,15,15,17,13,13,15,15,14,10,10,14,14,0,14,14,15,16,0,14,14,15,15,0,15,15,16,16,0,21,22,17,18,0,12,12,14,14,0,17,17,20,21,0,14,14,14,14,0,15,15,16,16,0,21,22,18,18,0,13,13,14,14,0,18,18,22,0,0,15,15,14,14,0,11,11,13,13,0,12,12,16,15,0,12,12,16,16,0,16,16,0,0,0,16,17,0,22,0,12,12,16,16,0,14,14,17,18,0,11,11,16,16,0,15,15,0,21,0,16,16,21,22,0,12,12,16,16,0,15,15,19,19,0,12,12,17,16,0,16,16,21,22,0,16,16,0,0,0,17,17,0,22,0,0,0,0,0,0,15,15,19,20,0,17,19,0,0,0,17,17,22,0,0,17,17,0,22,0,0,0,0,0,0,15,15,21,0,0,19,20,0,0,0,19,18,22,0,0,11,12,14,14,0,11,11,14,14,0,12,12,15,15,0,13,13,13,13,0,14,14,16,16,0,12,12,15,15,0,14,14,16,15,0,11,11,15,15,0,13,13,16,16,0,13,13,15,15,0,12,12,15,15,0,15,14,16,16,0,11,11,15,15,0,14,14,17,17,0,13,13,15,15,0,15,15,16,16,0,0,0,18,18,0,12,12,14,14,0,16,16,22,0,0,14,14,15,15,0,15,15,16,17,0,21,22,18,18,0,13,13,15,14,0,18,17,22,0,0,14,14,15,15,8,8,8,16,15,12,10,10,16,15,12,10,10,16,16,0,14,14,16,17,0,14,14,17,16,12,10,10,17,18,14,12,12,18,18,14,10,10,16,16,0,14,14,18,18,0,14,14,16,16,12,9,9,16,16,17,13,13,16,17,14,9,9,15,15,0,14,14,18,19,0,13,13,15,15,0,15,15,18,19,0,0,0,22,21,0,13,13,16,16,0,16,16,22,0,0,15,15,16,16,0,14,14,18,17,0,0,0,20,0,0,13,13,16,16,0,18,18,0,0,0,15,15,16,16,8,7,7,13,13,12,10,10,15,15,12,10,10,14,14,0,22,22,19,18,0,0,0,18,18,12,10,10,15,15,14,13,13,17,17,14,11,11,15,15,0,19,20,18,18,0,22,21,17,18,13,11,11,15,15,16,13,13,18,18,14,11,11,14,15,0,22,21,20,19,0,22,21,17,17,0,0,22,19,18,0,0,0,0,0,0,22,20,17,17,0,0,0,21,20,0,0,0,19,17,0,0,22,19,19,0,0,0,0,0,0,22,20,18,17,0,0,0,0,0,0,0,0,18,18,0,10,10,14,14,0,11,11,14,14,0,11,11,15,15,0,14,14,14,14,0,15,15,16,16,0,11,11,16,16,0,13,13,16,16,0,11,11,15,15,0,14,14,16,16,0,14,14,15,15,0,11,11,15,15,0,13,13,15,15,0,10,10,15,15,0,15,15,17,17,0,14,14,14,14,0,16,16,16,16,0,0,22,19,19,0,13,13,14,14,0,17,17,0,0,0,15,15,14,14,0,16,16,17,17,0,0,22,18,18,0,13,13,14,14,0,21,18,0,0,0,15,15,14,14,0,11,11,13,13,0,12,12,15,15,0,12,12,16,15,0,16,16,0,0,0,17,17,22,22,0,12,12,16,16,0,14,14,18,18,0,11,12,16,16,0,15,16,0,21,0,16,16,22,21,0,12,12,16,16,0,15,15,19,20,0,11,12,16,16,0,15,15,20,22,0,16,16,0,22,0,17,17,22,0,0,0,0,0,0,0,15,15,21,22,0,19,18,0,0,0,17,17,0,0,0,17,17,0,22,0,0,0,0,0,0,16,15,22,0,0,19,19,0,0,0,17,18,0,0,0,12,12,15,15,0,12,12,15,15,0,12,12,15,15,0,13,13,14,14,0,15,15,16,17,0,12,12,16,16,0,14,14,16,16,0,12,11,15,16,0,14,14,16,17,0,14,14,16,16,0,13,12,16,16,0,15,15,16,16,0,11,11,15,15,0,14,14,16,16,0,14,14,15,15,0,15,15,18,17,0,0,22,0,20,0,13,13,15,15,0,16,17,22,22,0,14,14,15,15,0,15,15,17,18,0,20,0,19,19,0,13,13,15,15,0,18,18,22,0,0,14,14,15,15,0,11,11,16,16,0,14,14,17,16,0,13,13,17,17,0,16,16,17,17,0,17,17,18,19,0,12,12,16,17,0,15,15,18,18,0,12,12,16,16,0,16,16,19,18,0,16,16,17,16,0,12,13,17,17,0,17,16,18,17,0,13,12,16,16,0,16,16,18,19,0,16,16,16,17,0,16,16,18,18,0,22,0,22,22,0,13,13,16,16,0,19,18,22,20,0,16,15,16,16,0,16,17,18,18,0,0,0,22,20,0,14,14,16,16,0,19,19,0,0,0,16,16,16,16,0,9,9,13,13,0,13,13,15,15,0,14,14,15,15,0,0,22,17,18,0,22,0,18,19,0,12,12,15,15,0,15,16,17,17,0,14,14,14,14,0,22,0,18,18,0,21,22,17,17,0,13,13,15,15,0,17,17,17,18,0,14,14,15,15,0,22,21,21,19,0,20,21,17,17,0,21,21,19,18,0,0,0,0,0,0,21,21,17,17,0,0,0,22,22,0,0,22,19,18,0,0,21,19,18,0,0,0,0,22,0,19,20,17,17,0,0,0,0,22,0,0,0,19,18,0,19,19,15,16,0,21,19,16,17,0,0,21,17,17,0,0,22,17,17,0,22,22,18,19,0,20,20,16,16,0,0,22,18,18,0,20,19,16,17,0,22,21,20,19,0,0,21,17,17,0,21,20,17,17,0,0,0,18,18,0,19,19,17,16,0,22,0,19,19,0,21,22,17,18,0,0,22,19,18,0,0,0,19,20,0,19,19,16,16,0,22,22,22,0,0,20,22,16,16,0,22,20,18,19,0,0,0,20,19,0,20,20,16,16,0,0,0,0,0,0,22,20,17,16,0,11,11,13,13,0,14,13,15,15,0,13,13,16,15,0,18,17,21,0,0,18,18,21,0,0,12,12,15,15,0,15,16,17,18,0,12,12,15,15,0,17,17,22,20,0,17,18,22,0,0,12,12,17,16,0,16,17,19,19,0,13,13,16,16,0,17,17,0,22,0,17,17,0,21,0,18,18,20,22,0,0,0,0,0,0,15,15,21,20,0,20,19,0,0,0,18,18,22,0,0,17,17,22,0,0,0,0,0,0,0,15,16,20,22,0,20,21,0,0,0,19,18,0,0,0,15,15,19,19,0,17,16,20,20,0,16,17,20,21,0,18,17,0,0,0,19,19,0,0,0,15,15,21,19,0,19,19,0,0,0,15,15,22,22,0,18,18,0,22,0,17,18,22,21,0,15,15,20,19,0,19,19,0,0,0,15,15,20,22,0,18,19,20,0,0,18,17,21,21,0,18,18,19,22,0,0,0,0,0,0,15,15,20,19,0,19,19,0,0,0,18,18,21,22,0,18,18,22,0,0,0,0,0,0,0,15,15,19,20,0,21,21,0,0,0,17,17,20,20,0,12,12,17,17,0,14,14,16,17,0,13,14,17,17,0,16,16,17,17,0,17,17,17,19,0,13,13,17,17,0,16,16,18,18,0,13,13,16,16,0,16,16,18,18,0,16,16,17,17,0,13,13,17,17,0,17,17,18,17,0,12,12,15,16,0,17,18,19,20,0,16,16,16,16,0,17,16,18,19,0,0,22,21,22,0,14,14,16,16,0,19,19,0,0,0,16,16,16,16,0,16,16,18,17,0,0,22,21,21,0,14,14,16,16,0,22,20,22,0,0,16,16,15,15,0,9,9,13,13,0,14,14,15,15,0,14,14,14,14,0,22,22,18,18,0,0,22,18,18,0,12,12,15,15,0,16,16,18,17,0,14,14,14,14,0,20,21,18,18,0,22,21,17,17,0,13,13,15,15,0,17,17,18,18,0,14,14,14,14,0,0,21,18,19,0,0,22,17,17,0,22,22,19,18,0,0,0,0,0,0,19,21,17,17,0,0,0,22,20,0,0,21,18,19,0,0,22,18,18,0,0,0,0,22,0,20,22,17,17,0,0,0,20,22,0,0,0,18,18,0,19,21,16,16,0,20,22,16,17,0,20,0,17,17,0,22,0,18,17,0,21,0,18,19,0,20,20,17,17,0,22,0,18,18,0,21,20,17,17,0,0,20,20,19,0,0,21,18,17,0,21,21,17,17,0,22,0,18,17,0,19,19,17,17,0,0,22,20,21,0,0,21,17,17,0,22,0,18,18,0,0,0,20,22,0,20,19,16,16,0,0,0,0,0,0,22,22,17,17,0,22,0,18,19,0,0,0,21,20,0,19,21,16,17,0,0,0,0,0,0,22,22,17,16,0,11,11,13,13,0,13,13,15,15,0,13,13,15,15,0,17,17,22,21,0,18,18,22,0,0,12,13,16,15,0,15,16,18,18,0,13,13,16,16,0,17,17,0,22,0,17,17,22,22,0,13,13,16,16,0,16,16,19,18,0,13,13,16,16,0,18,17,0,20,0,18,17,20,0,0,17,17,21,0,0,0,0,0,0,0,15,15,21,22,0,19,20,0,0,0,18,18,0,0,0,18,17,0,0,0,0,0,0,0,0,16,16,22,22,0,20,20,0,0,0,21,19,0,0,0,15,15,20,19,0,16,16,22,20,0,17,17,0,22,0,18,18,0,22,0,19,17,0,0,0,15,16,22,20,0,18,19,0,0,0,16,16,22,20,0,18,18,0,22,0,18,18,22,0,0,16,16,21,20,0,19,20,0,22,0,16,16,0,22,0,18,18,0,22,0,18,18,0,21,0,19,18,0,22,0,0,0,0,0,0,16,16,21,20,0,20,0,0,0,0,18,18,21,0,0,18,18,0,0,0,0,0,0,0,0,16,16,21,19,0,0,0,0,0,0,18,18,0,21,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,5,8,8,12,10,10,12,12,12,10,10,12,12,13,11,11,12,12,13,12,12,12,12,13,10,10,13,13,13,13,13,13,13,13,10,10,13,13,13,11,11,13,13,14,13,13,12,12,13,10,10,13,13,13,13,13,13,13,13,10,10,12,12,13,11,11,13,13,13,13,13,12,12,13,12,12,13,13,13,13,13,13,13,14,11,11,12,12,14,12,12,13,12,14,14,14,12,12,13,14,14,13,13,14,13,13,13,13,14,14,14,12,12,14,13,13,13,13,14,14,14,12,12,12,8,8,11,11,12,12,12,11,11,12,11,11,10,10,13,12,12,10,10,13,12,12,10,10,13,12,12,12,12,14,12,12,12,12,13,13,13,11,11,14,12,12,11,11,14,12,12,12,12,14,12,12,12,12,13,12,12,12,12,13,13,13,11,11,14,12,12,11,11,14,12,12,12,12,14,13,13,12,12,14,12,12,12,11,14,13,13,11,11,14,13,12,11,11,14,13,13,11,11,14,13,13,12,12,14,12,12,12,12,15,13,13,12,12,14,12,12,11,11,14,13,13,11,11,12,9,9,10,10,12,7,7,11,11,12,9,9,12,12,13,10,10,10,10,14,14,14,11,11,13,9,9,12,12,14,14,14,12,12,13,8,8,11,11,14,9,9,12,12,14,14,14,11,11,13,9,9,12,12,14,14,14,12,12,14,8,8,11,11,14,9,9,12,12,14,14,14,11,11,14,10,10,12,12,14,14,14,13,13,14,9,9,11,11,14,10,10,12,12,14,14,14,11,11,14,14,15,12,12,15],"i8",L3,R.GLOBAL_BASE+456540),d3([14,14,14,14,15,14,14,11,11,14,14,14,12,12,14,14,14,11,11,14,11,11,10,10,14,10,10,10,10,14,10,10,10,10,15,11,11,9,9,14,12,12,9,9,15,11,11,11,11,15,13,13,11,11,15,10,10,10,10,15,11,11,10,10,15,13,13,11,11,15,11,11,11,11,15,13,13,11,11,15,10,10,10,10,15,11,11,10,10,15,13,13,11,11,15,12,12,11,11,15,13,13,11,11,15,11,11,10,10,15,12,12,10,10,15,13,13,10,10,15,14,14,11,11,15,13,13,11,11,15,14,14,10,11,15,13,13,10,10,15,13,14,10,10,14,13,13,10,10,14,13,13,10,10,14,13,13,10,10,14,13,13,9,9,14,14,14,9,9,15,14,14,11,11,15,14,14,10,10,15,14,14,10,10,15,14,14,11,11,15,14,14,10,10,15,14,14,11,11,15,14,14,10,10,14,14,14,10,10,15,14,14,10,10,14,14,14,10,10,15,14,14,11,11,15,14,14,11,11,14,14,14,10,10,15,14,14,10,10,14,14,14,9,9,15,15,15,11,11,15,14,14,12,12,15,15,14,10,10,15,14,14,10,10,14,15,15,9,9,14,10,10,12,12,17,9,9,12,12,17,10,10,13,13,17,11,11,12,12,18,14,14,12,12,17,10,10,13,13,17,14,14,12,12,17,9,9,12,12,17,11,11,12,12,17,14,14,12,12,18,10,10,13,13,18,14,14,13,13,18,9,9,12,12,18,10,10,13,13,18,14,14,12,12,18,11,11,13,13,18,14,14,13,13,18,10,10,12,12,17,11,11,12,12,17,14,14,12,12,18,15,15,13,13,18,14,14,14,14,18,15,15,12,12,18,14,14,12,12,18,15,15,12,12,13,7,7,11,11,14,15,15,11,11,14,15,15,12,12,14,15,15,11,11,15,15,15,11,11,14,15,15,12,12,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,14,15,15,12,12,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,15,15,15,12,12,14,15,15,12,12,14,15,14,12,12,14,15,15,11,11,15,14,14,12,12,15,15,15,12,12,15,16,16,12,12,15,15,15,12,12,15,15,15,12,12,15,15,15,12,12,13,13,13,11,10,14,14,15,11,11,14,14,14,12,12,15,14,14,10,10,15,15,15,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,15,15,12,12,15,15,15,11,11,14,15,15,12,12,14,14,14,12,12,14,15,15,11,11,14,15,15,12,12,15,15,15,11,11,15,15,15,12,12,15,14,14,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,10,10,15,15,16,12,12,15,15,15,14,14,15,15,15,11,11,15,15,15,12,12,15,15,15,11,11,14,11,11,10,10,15,9,9,12,12,15,10,10,12,12,15,11,11,11,11,15,14,14,12,12,15,10,10,13,13,15,14,14,12,12,15,9,9,12,12,15,10,10,13,13,15,13,13,12,11,15,10,10,12,12,15,14,14,12,12,15,9,9,11,11,15,11,11,12,12,15,13,13,11,11,15,11,11,13,13,15,13,14,13,14,15,11,11,11,11,15,11,11,12,12,15,14,14,11,11,15,14,14,13,13,15,14,14,20,20,15,14,14,12,12,15,14,14,12,12,15,14,14,11,11,14,13,13,10,10,14,13,13,12,12,14,14,13,12,12,15,14,14,12,12,15,14,14,11,11,15,14,14,12,12,15,14,14,13,13,15,14,14,12,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,13,13,15,14,14,12,11,15,14,14,12,12,15,14,14,13,13,15,14,14,13,13,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,15,15,15,13,13,15,15,15,13,13,15,14,14,13,13,15,15,15,13,13,15,14,15,12,12,15,15,15,13,13,14,10,10,12,13,17,9,9,12,12,17,10,10,13,13,17,11,11,12,12,18,14,14,12,12,18,10,10,13,13,18,14,14,12,12,17,9,9,12,12,18,10,11,13,13,18,14,14,12,12,17,10,10,12,12,17,14,14,12,12,17,9,9,12,12,17,11,11,12,12,17,14,14,12,12,18,11,11,12,12,18,14,14,13,13,18,11,11,12,12,18,11,11,12,12,18,14,14,12,12,18,15,15,12,12,18,14,14,13,13,18,15,15,12,12,17,14,14,12,12,17,15,15,12,12,13,7,7,11,11,14,15,15,11,11,14,15,15,11,11,14,15,14,12,12,15,15,15,12,11,14,15,15,12,12,14,15,15,12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,13,13,14,15,15,11,11,14,15,15,13,12,14,15,15,11,11,14,15,15,11,11,15,15,15,13,13,14,15,15,12,12,15,15,15,12,12,15,15,15,11,11,15,15,15,11,11,15,15,15,12,12,15,15,15,13,13,15,16,16,12,12,15,15,15,12,13,15,15,15,12,12,15,15,15,12,12,13,13,13,11,11,14,14,14,11,11,14,14,14,12,12,14,14,14,10,10,15,14,14,11,11,14,15,15,12,12,14,14,14,12,12,14,15,15,11,11,14,15,14,12,12,15,14,14,11,11,14,15,15,12,12,14,14,14,11,11,14,15,15,11,11,14,14,14,12,12,15,15,14,11,11,15,15,15,12,12,15,14,14,12,12,14,15,15,11,11,14,15,14,11,11,15,15,15,10,10,15,15,15,12,12,15,14,14,14,13,15,15,15,11,11,15,15,15,11,11,15,15,15,10,10,14,11,11,10,10,15,9,9,12,12,15,10,10,12,12,15,11,11,11,11,15,14,14,12,12,15,10,10,13,13,15,13,13,12,12,15,9,9,12,12,15,11,11,13,13,15,14,14,12,12,15,10,10,13,13,15,13,14,12,12,15,9,9,12,12,15,10,10,13,13,15,13,13,11,11,15,11,11,13,13,15,14,14,13,13,15,10,10,11,11,15,11,11,12,12,15,14,14,11,11,15,14,14,13,13,15,14,14,21,20,15,14,14,11,11,15,14,14,12,12,15,14,14,11,11,14,13,13,10,10,14,13,13,11,11,15,14,14,12,12,15,14,14,12,12,14,14,14,12,12,15,14,14,12,12,15,14,14,13,13,14,14,14,11,11,15,14,14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,13,13,14,14,14,11,11,15,14,14,11,11,14,14,14,13,13,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,14,14,14,13,13,15,15,15,13,13,16,14,14,12,13,15,15,15,13,13,15,14,14,12,12,15,15,15,13,13,15,11,11,13,12,18,10,10,12,12,17,11,11,12,12,18,12,12,11,11,18,14,14,12,12,18,11,11,13,13,17,14,14,12,12,18,10,10,12,12,18,12,12,12,12,18,14,15,12,12,18,11,11,13,13,18,14,14,12,12,17,10,10,12,12,18,11,11,12,12,18,15,14,12,12,17,12,12,12,12,17,14,14,12,12,17,11,11,11,11,17,12,12,12,11,17,15,15,11,11,18,15,15,12,12,18,14,15,13,13,18,15,15,11,11,17,15,15,12,12,18,15,15,11,11,14,9,9,11,11,14,15,15,11,11,15,15,15,11,11,15,15,15,12,11,15,15,15,12,12,15,15,15,11,11,15,15,15,13,13,14,15,15,11,11,15,15,15,11,11,15,15,15,13,13,15,15,15,11,11,15,15,15,13,13,15,15,15,11,11,15,15,15,11,11,15,15,15,13,13,15,15,15,12,12,15,15,15,13,13,15,15,14,11,11,15,15,15,12,12,15,15,15,12,12,16,15,15,13,13,15,16,16,13,13,16,15,15,12,12,15,15,15,13,12,15,15,15,12,12,13,12,12,11,11,14,14,14,11,11,14,14,14,12,12,15,14,14,11,11,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,14,15,15,11,11,15,14,14,12,12,15,14,14,11,11,15,14,14,12,12,15,14,14,12,12,14,15,15,11,11,15,14,14,12,12,15,14,14,11,11,15,15,15,12,12,15,14,14,12,12,15,15,15,11,11,15,14,14,11,11,15,14,15,11,11,15,15,15,12,12,15,14,14,13,13,16,15,15,11,11,15,14,14,12,12,15,15,15,11,11,14,11,11,9,9,15,10,10,12,12,14,11,11,12,12,15,12,12,12,12,15,14,14,13,13,15,11,11,13,13,15,14,14,13,13,15,10,10,12,12,15,12,12,13,13,15,14,14,13,13,15,11,11,12,12,15,14,14,13,13,14,10,10,12,12,15,12,12,13,13,15,14,14,12,12,15,12,12,13,13,15,14,14,15,15,15,11,11,12,12,15,12,12,12,13,15,14,14,12,12,15,15,15,14,14,15,14,14,20,20,15,14,14,12,12,15,14,14,13,13,15,14,14,12,12,14,13,13,10,10,14,13,13,11,11,14,13,13,12,12,14,14,14,12,12,15,14,14,13,13,15,14,14,12,12,14,14,14,14,14,14,14,14,11,11,15,14,14,12,12,15,14,14,14,14,15,14,14,12,12,14,14,14,14,14,14,14,14,11,11,15,14,14,12,12,14,14,14,14,14,15,14,14,12,12,15,14,14,13,13,15,14,14,12,12,15,14,14,12,12,14,14,14,14,13,15,15,15,14,14,15,14,14,13,13,15,15,15,14,14,15,14,14,13,13,15,15,15,13,13,14,13,13,13,13,18,15,15,12,12,18,15,15,13,12,18,15,16,11,11,18,16,17,12,12,18,15,15,13,13,18,17,17,12,12,18,15,15,12,12,17,15,15,12,12,18,17,17,12,12,18,15,15,13,13,18,16,17,12,12,17,15,15,12,12,18,15,15,12,12,18,16,17,11,12,18,16,16,12,12,17,16,17,12,12,18,15,15,11,11,18,15,15,12,12,18,17,17,11,11,17,17,17,12,12,18,16,16,13,13,18,17,17,11,11,18,16,16,12,12,18,17,17,11,11,15,14,14,11,11,16,15,15,11,11,16,15,15,12,12,16,15,15,12,12,17,15,15,14,13,16,15,15,12,12,17,15,15,14,14,16,15,15,11,11,16,15,15,12,12,18,15,15,13,13,16,15,15,11,11,17,15,15,14,14,16,15,15,11,11,16,15,15,12,12,17,15,15,13,13,16,15,15,12,12,17,16,15,14,14,16,14,15,12,12,16,15,15,12,12,18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,15,12,13,11,11,15,14,14,12,12,16,14,14,12,12,16,14,14,12,12,16,14,14,12,12,16,14,14,13,12,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,17,14,14,12,12,16,14,14,12,12,17,14,14,13,13,15,15,15,12,12,16,14,14,12,12,17,14,14,12,12,17,15,15,12,12,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,17,15,15,12,12,18,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,17,15,15,12,12,14,15,15,9,9,15,15,15,12,12,15,15,15,13,13,15,15,15,14,14,15,15,15,19,19,15,15,16,13,13,15,15,16,19,20,15,15,15,13,12,15,16,16,14,14,15,15,15,19,19,15,15,15,13,13,15,16,15,20,19,14,15,15,13,13,15,15,15,14,14,15,15,15,19,19,15,15,15,14,14,15,16,16,19,20,15,15,15,14,14,15,15,15,14,14,15,15,15,19,19,15,15,15,20,19,15,16,16,20,19,15,15,15,19,19,15,16,16,20,20,15,15,15,19,20,14,13,13,10,10,14,14,14,11,11,14,14,14,12,12,15,14,14,13,13,15,14,14,19,20,15,14,14,12,12,14,14,14,20,19,14,14,14,11,11,15,14,14,12,12,15,14,14,20,20,15,14,14,12,12,14,14,14,20,19,14,14,14,11,11,15,14,14,12,12,15,14,14,19,20,15,14,14,13,13,15,14,14,22,19,15,15,14,12,12,15,14,14,13,13,14,15,15,22,20,15,15,15,20,20,15,14,14,21,20,15,15,15,20,21,15,14,14,20,20,14,15,15,20,20,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,7,7,7,7,7,7,7,8,8,10,11,11,9,8,8,8,8,8,11,11,11,10,8,8,5,7,7,9,11,11,10,11,11,10,11,11,12,13,14,11,12,12,10,11,11,13,14,14,12,12,12,5,6,6,8,6,6,8,7,7,8,7,7,11,10,10,10,7,7,9,7,7,12,11,11,11,7,7,7,7,7,11,10,10,12,10,10,11,10,10,15,13,13,13,10,10,12,11,11,15,13,13,14,11,11,7,7,7,11,11,11,12,11,11,12,11,11,14,14,14,14,12,12,12,12,12,16,15,15,14,12,12,0,10,10,0,11,11,0,11,12,0,11,11,0,14,14,0,11,11,0,12,12,0,15,15,0,11,11,8,8,8,12,10,10,12,10,10,13,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,13,11,11,12,11,11,15,14,14,14,12,12,13,12,12,15,14,14,15,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,13,13,0,14,15,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,4,4,0,8,8,0,8,8,0,9,9,0,10,10,0,8,8,0,9,9,0,10,10,0,8,8,0,7,7,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,7,7,0,6,6,0,7,7,0,7,7,0,10,10,0,6,6,0,7,7,0,10,10,0,6,5,0,8,8,0,7,7,0,8,8,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,7,7,0,6,6,0,9,10,0,10,10,0,10,10,0,11,11,0,9,9,0,10,10,0,11,11,0,9,9,0,8,8,0,8,8,0,8,8,0,9,9,0,9,9,0,8,8,0,8,8,0,9,9,0,7,7,0,8,8,0,7,7,0,7,7,0,8,8,0,9,9,0,7,7,0,7,7,0,9,9,0,6,6,0,6,6,0,10,10,0,10,10,0,10,10,0,12,12,0,9,9,0,10,10,0,12,12,0,9,9,0,8,8,0,7,7,0,8,8,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,7,7,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,5,8,8,0,8,8,6,9,9,8,10,10,0,8,8,0,9,9,0,12,12,0,8,8,4,7,7,6,10,10,0,12,12,7,11,11,9,12,12,0,12,12,0,13,13,0,15,15,0,12,12,0,7,7,0,7,7,0,8,8,0,8,8,0,10,10,0,7,7,0,8,8,0,11,11,0,7,7,5,7,7,9,9,9,0,11,10,9,9,9,11,12,12,0,10,10,0,11,11,0,13,13,0,11,11,6,7,7,9,10,10,0,12,12,10,11,11,11,12,12,0,12,12,0,13,13,0,15,15,0,12,12,0,10,10,0,11,11,0,11,11,0,12,12,0,13,13,0,11,11,0,12,12,0,15,15,0,11,11,0,8,8,0,10,10,0,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,11,11,0,7,7,0,10,10,0,12,12,0,10,10,0,12,13,0,12,12,0,13,13,0,14,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,7,7,0,0,0,8,8,0,0,0,8,8,0,0,0,11,11,0,0,0,0,0,0,0,0,10,9,0,0,0,0,0,0,0,0,9,9,0,0,0,10,11,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,5,5,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,5,5,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,5,6,0,0,0,7,7,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,11,0,0,0,9,9,0,0,0,10,10,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,11,12,0,0,0,0,0,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,8,8,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,7,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,7,7,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,9,9,0,0,0,10,10,0,0,0,11,12,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,8,8,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,9,9,0,0,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,0,0,9,9,0,0,0,10,10,0,0,0,12,12,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,5,16,9,9,12,17,18,4,2,18,6,5,9,13,15,10,7,7,6,7,9,13,13,8,5,6,5,5,7,11,12,8,4,7,4,3,6,10,12,11,8,9,7,6,8,11,12,15,13,13,11,9,7,10,12,16,12,16,12,6,5,8,11,2,0,0,0,64,0,0,0,144,111,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,64,7,0,0,0,0,0,0,0,0,0,128,64,7,0,0,0,0,0,0,0,0,0,168,64,7,0,208,64,7,0,0,0,0,0,0,0,0,0,248,64,7,0,32,65,7,0,0,0,0,0,0,0,0,0,72,65,7,0,112,65,7,0,0,0,0,0,0,0,0,0,152,65,7,0,192,65,7,0,112,65,7,0,0,0,0,0,232,65,7,0,16,66,7,0,112,61,7,0,152,61,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0,0,24,64,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,16,64,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,60,7,0,32,61,7,0,0,0,0,0,0,0,0,0,72,61,7,0,112,61,7,0,152,61,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,40,63,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,216,63,7,0,0,0,0,0,2,0,0,0,25,0,0,0,240,62,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,63,7,0,0,0,0,0,2,0,0,0,9,0,0,0,208,62,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,224,62,7,0,0,0,0,0,1,0,0,0,25,0,0,0,72,62,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,104,62,7,0,0,0,0,0,1,0,0,0,25,0,0,0,192,61,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,224,61,7,0,0,0,0,0,3,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,4,4,5,5,4,5,5,6,5,4,5,5,5,6,5,5,6,6,6,5,6,5,6,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,8,8,9,9,10,10,11,11,4,6,5,8,7,9,8,10,9,11,10,11,11,4,5,6,7,8,8,9,9,10,10,10,10,11,8,9,8,10,8,10,9,11,10,11,11,11,11,8,8,9,8,10,9,10,10,11,11,11,11,11,9,10,10,11,11,11,11,11,11,12,11,12,11,9,10,10,10,11,11,11,11,11,11,12,11,12,10,11,11,12,11,12,12,12,12,12,12,12,12,10,11,11,11,11,12,12,12,13,12,12,12,12,11,12,12,12,12,13,13,12,12,12,12,12,12,11,12,12,12,12,13,13,12,13,12,12,12,12,12,13,13,13,13,13,13,12,13,12,13,12,12,12,13,13,13,13,13,13,13,12,13,12,12,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,4,9,8,8,10,13,16,4,2,9,5,7,10,14,18,9,7,6,5,7,9,12,16,7,5,5,3,5,8,11,13,8,7,7,5,5,7,9,11,10,10,9,8,6,6,8,10,13,14,13,11,9,8,9,10,17,18,16,14,11,10,10,10,5,0,0,0,243,0,0,0,136,110,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,128,111,7,0,0,0,0,0,5,0,0,0,53,12,0,0,56,98,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,112,110,7,0,0,0,0,0,5,0,0,0,243,0,0,0,48,97,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,40,98,7,0,0,0,0,0,5,0,0,0,243,0,0,0,40,96,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,32,97,7,0,0,0,0,0,5,0,0,0,243,0,0,0,32,95,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,24,96,7,0,0,0,0,0,5,0,0,0,53,12,0,0,208,82,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,8,95,7,0,0,0,0,0,5,0,0,0,53,12,0,0,128,70,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,184,82,7,0,0,0,0,0,1,0,0,0,7,0,0,0,88,70,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,96,70,7,0,0,0,0,0,5,0,0,0,243,0,0,0,80,69,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,72,70,7,0,0,0,0,0,5,0,0,0,243,0,0,0,72,68,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,64,69,7,0,0,0,0,0,5,0,0,0,243,0,0,0,64,67,7,0,1,0,0,0,0,76,93,225,0,76,93,97,2,0,0,0,0,0,0,0,56,68,7,0,0,0,0,0,5,0,0,0,243,0,0,0,56,66,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,48,67,7,0,0,0,0,0,1,9,9,6,9,9,5,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,6,7,7,7,7,7,7,7,8,8,9,9,9,8,7,7,8,8,8,9,9,9,9,8,8,6,7,7,9,8,8,9,7,7,9,8,8,10,8,8,10,8,8,10,8,8,10,8,9,10,8,8,7,6,6,8,6,6,9,6,6,9,7,7,10,8,8,9,6,6,9,7,7,10,9,8,9,7,7,7,7,7,11,8,8,11,9,9,10,9,9,12,9,9,12,8,8,11,9,9,12,9,9,12,8,8,8,7,7,10,9,9,10,9,9,10,9,9,11,10,11,11,9,9,11,9,9,11,11,11,11,9,9,10,8,8,11,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,9,9,12,10,10,11,9,9,8,8,8,11,9,9,12,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,9,10,12,8,8,9,7,7,11,9,9,11,10,10,11,9,9,11,11,11,11,9,9,11,10,10,12,11,11,11,9,10,10,9,9,11,9,9,11,10,10,11,10,10,11,11,11,11,9,9,11,9,10,11,11,11,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,7,7,7,8,8,7,8,8,7,9,9,10,11,11,9,8,8,7,8,9,11,11,11,9,8,8,6,7,7,10,10,10,10,10,10,10,10,10,14,14,14,12,11,11,10,11,11,15,14,14,13,11,11,6,6,6,8,5,5,8,7,7,8,7,7,11,10,10,9,7,7,9,7,7,12,10,10,10,7,7,6,8,7,12,10,10,12,10,10,11,10,10,15,14,13,13,10,10,11,10,10,16,14,14,14,10,10,7,7,7,12,11,11,12,11,11,11,11,11,16,14,14,13,12,12,11,11,11,17,15,15,14,12,12,10,9,9,13,11,11,13,11,11,12,11,11,16,14,13,14,11,11,12,11,11,17,15,14,14,11,11,7,8,8,12,11,11,12,10,10,12,10,10,16,13,14,13,10,10,11,10,10,17,14,14,14,10,10,7,7,7,12,11,11,12,11,11,12,11,11,15,14,15,14,12,12,12,11,11,17,15,15,14,12,12,10,10,9,13,11,11,13,11,11,13,11,11,16,14,14,14,11,11,13,11,11,16,15,15,15,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,14,14,6,7,7,14,14,7,7,7,15,15,0,13,13,16,16,0,13,13,15,15,7,8,8,15,15,9,10,10,17,16,9,8,8,15,15,0,13,13,18,17,0,13,13,16,16,8,8,8,15,15,12,11,11,16,17,9,8,8,14,14,0,13,13,18,17,0,13,13,16,15,0,14,14,18,17,0,20,22,18,20,0,12,12,16,16,0,16,16,22,20,0,14,14,16,16,0,14,14,17,17,0,22,22,22,19,0,12,13,16,16,0,17,17,0,0,0,15,15,16,16,5,7,7,13,13,9,9,9,15,14,10,10,10,14,14,0,21,21,18,17,0,21,22,18,17,9,10,10,14,14,12,12,12,17,17,12,10,10,14,14,0,19,21,18,17,0,20,22,18,18,11,10,10,14,14,14,13,13,18,17,12,11,11,14,14,0,22,19,17,18,0,20,0,18,17,0,22,21,17,17,0,0,0,0,0,0,20,22,17,17,0,22,0,21,19,0,22,0,18,18,0,0,22],"i8",L3,R.GLOBAL_BASE+466780),d3([18,19,0,0,0,0,0,0,19,21,17,17,0,0,0,20,20,0,0,0,18,18,6,6,6,13,12,8,6,6,11,11,8,6,6,13,13,0,9,9,11,11,0,11,11,14,14,9,7,7,13,13,11,9,9,13,13,10,6,6,13,13,0,10,10,14,14,0,10,10,13,13,9,7,7,13,14,13,9,9,13,13,10,6,6,13,12,0,11,11,15,15,0,10,10,13,13,0,12,12,15,15,0,19,0,17,17,0,9,9,13,13,0,13,14,19,20,0,11,11,13,13,0,11,11,14,14,0,19,20,17,18,0,10,10,13,13,0,15,15,21,19,0,12,12,13,13,0,10,10,12,13,0,11,11,15,15,0,11,11,15,15,0,15,15,22,0,0,16,17,22,0,0,11,11,15,15,0,14,14,18,17,0,11,11,15,16,0,15,15,22,21,0,16,16,0,20,0,12,12,16,15,0,15,14,19,19,0,11,11,16,16,0,15,15,21,0,0,16,15,0,0,0,16,16,22,21,0,0,0,0,0,0,15,15,20,20,0,18,18,0,0,0,16,17,0,0,0,17,17,0,22,0,0,0,0,0,0,15,15,21,22,0,20,18,0,0,0,18,17,22,0,0,10,10,12,11,0,10,10,10,10,0,11,11,12,12,0,11,11,9,9,0,13,13,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,13,12,13,13,0,12,12,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,13,13,13,14,0,12,12,12,12,0,13,14,14,14,0,20,21,15,15,0,12,11,12,12,0,15,16,20,22,0,13,12,11,11,0,13,13,14,13,0,20,0,16,15,0,12,12,12,12,0,16,16,22,21,0,13,13,12,12,6,7,7,16,16,11,9,9,15,15,12,9,9,16,16,0,13,13,14,14,0,14,14,16,17,10,9,9,16,16,14,12,12,16,16,12,9,9,15,15,0,13,13,18,18,0,13,13,15,16,12,10,10,17,18,15,12,12,17,17,13,9,9,16,16,0,13,13,17,18,0,14,14,16,16,0,15,15,18,18,0,22,0,20,20,0,12,12,16,16,0,16,16,20,22,0,14,14,16,16,0,15,14,18,18,0,0,22,19,21,0,13,13,16,17,0,17,17,22,22,0,15,15,16,16,7,7,7,14,14,11,10,10,15,15,12,10,10,15,14,0,22,0,18,18,0,0,21,17,18,11,10,10,15,15,14,12,12,17,17,14,11,11,15,15,0,22,20,18,18,0,0,20,18,17,12,10,10,16,16,17,14,14,19,18,14,11,11,15,15,0,21,22,19,19,0,21,22,18,18,0,22,0,19,21,0,0,0,0,0,0,22,22,18,17,0,0,0,21,20,0,22,22,20,19,0,0,22,20,20,0,0,0,0,0,0,20,21,17,17,0,0,22,21,21,0,0,0,18,18,10,9,9,14,14,13,10,10,13,13,13,10,11,14,14,0,13,13,12,12,0,15,15,16,16,13,10,10,15,15,15,12,12,14,14,15,10,10,14,15,0,14,14,16,15,0,14,14,15,15,13,10,10,15,15,18,13,13,15,15,15,10,10,14,15,0,14,14,16,16,0,14,14,15,15,0,15,15,16,16,0,22,0,18,18,0,12,13,14,14,0,17,17,22,0,0,14,14,14,14,0,15,15,16,16,0,22,0,18,17,0,13,13,14,14,0,19,18,21,22,0,15,15,14,14,0,11,11,13,13,0,12,12,16,16,0,12,12,16,16,0,15,16,21,0,0,16,17,0,22,0,12,12,16,16,0,14,14,17,18,0,11,11,16,16,0,15,15,21,22,0,16,16,0,0,0,12,12,16,16,0,15,15,0,19,0,12,12,16,17,0,16,16,22,0,0,16,16,0,22,0,17,17,0,22,0,0,0,0,0,0,15,15,20,19,0,18,18,0,0,0,17,18,0,0,0,17,17,0,0,0,0,0,0,0,0,15,15,0,22,0,20,18,0,0,0,18,18,22,22,0,11,11,14,14,0,12,12,14,14,0,12,12,15,15,0,13,13,14,14,0,14,14,17,16,0,12,12,16,16,0,14,14,16,16,0,11,11,15,15,0,13,13,16,16,0,13,13,15,15,0,12,12,15,15,0,15,14,16,16,0,11,11,15,15,0,14,14,17,17,0,13,13,15,15,0,15,15,17,17,0,0,0,19,18,0,13,12,15,15,0,16,16,0,0,0,14,14,15,15,0,14,14,16,17,0,22,0,18,18,0,13,13,15,15,0,17,17,0,0,0,14,14,15,15,8,8,8,16,16,12,10,10,16,16,13,9,9,16,16,0,14,14,17,17,0,14,14,17,16,12,10,10,18,17,14,11,11,18,18,14,9,10,16,16,0,13,13,18,19,0,14,13,16,16,12,9,9,16,16,17,13,13,17,17,14,9,9,15,15,0,14,14,19,20,0,13,13,15,15,0,15,15,18,19,0,0,22,22,22,0,13,13,17,17,0,16,16,19,21,0,14,14,16,16,0,14,14,18,18,0,0,0,0,0,0,13,13,16,16,0,18,18,0,0,0,15,15,16,16,8,7,7,14,14,12,10,10,15,15,13,10,10,15,14,0,22,0,18,18,0,22,0,18,18,12,10,10,16,15,15,12,12,17,17,14,11,11,15,15,0,20,21,19,18,0,0,0,17,18,13,11,11,15,15,16,13,13,18,18,15,11,11,14,14,0,22,21,19,19,0,21,22,18,18,0,22,22,20,18,0,0,0,0,0,0,22,19,17,17,0,0,0,22,21,0,0,22,19,17,0,0,22,19,19,0,0,0,0,0,0,22,21,18,17,0,0,0,22,0,0,0,0,19,19,0,10,10,14,14,0,11,11,15,14,0,11,11,15,15,0,14,14,15,14,0,15,15,16,16,0,11,11,16,16,0,13,13,16,16,0,11,11,15,15,0,14,14,17,16,0,14,14,15,15,0,11,11,16,16,0,14,13,15,15,0,11,11,15,15,0,15,15,17,17,0,14,14,15,14,0,16,16,17,17,0,0,22,18,18,0,13,13,15,15,0,17,17,22,0,0,15,15,15,14,0,15,16,16,17,0,0,22,18,19,0,13,13,15,15,0,20,18,21,0,0,15,15,14,14,0,11,11,13,13,0,12,12,16,16,0,12,12,16,15,0,15,16,22,22,0,17,17,0,0,0,12,12,16,16,0,14,14,18,18,0,11,11,16,16,0,15,16,22,20,0,16,16,0,22,0,12,12,16,16,0,15,15,18,20,0,11,11,16,16,0,15,15,0,0,0,16,16,0,0,0,17,17,22,0,0,0,0,0,0,0,15,15,0,21,0,18,18,0,0,0,17,16,0,0,0,17,17,22,22,0,0,0,0,0,0,15,15,21,0,0,20,22,0,0,0,18,18,0,0,0,12,12,15,15,0,12,12,15,15,0,12,12,16,16,0,13,13,15,15,0,15,15,17,17,0,13,12,16,16,0,14,14,16,16,0,12,11,16,16,0,14,14,17,17,0,14,14,16,16,0,12,12,16,16,0,15,15,17,16,0,11,11,15,16,0,14,14,17,17,0,14,14,16,16,0,15,15,18,18,0,0,0,22,19,0,13,13,15,16,0,16,17,0,0,0,14,14,16,16,0,15,15,18,17,0,0,0,20,20,0,13,13,16,15,0,17,17,22,22,0,14,14,15,15,0,11,11,16,16,0,13,13,16,17,0,13,13,17,18,0,16,16,17,17,0,17,17,18,18,0,12,12,17,17,0,16,15,18,18,0,12,12,16,16,0,16,16,18,18,0,15,15,17,17,0,12,12,17,17,0,16,16,19,18,0,12,12,16,17,0,16,16,19,19,0,15,16,16,17,0,16,16,19,17,0,0,0,20,22,0,13,13,16,16,0,19,18,21,0,0,15,15,16,16,0,16,16,18,18,0,0,0,22,21,0,14,14,16,16,0,21,19,21,22,0,16,16,16,16,0,9,9,14,14,0,13,13,15,15,0,14,14,15,15,0,0,20,18,19,0,0,22,18,18,0,12,12,15,15,0,15,15,17,18,0,14,13,14,14,0,20,0,18,18,0,21,0,18,17,0,13,13,15,16,0,17,17,18,18,0,14,14,15,15,0,22,22,20,19,0,20,21,18,18,0,20,22,19,19,0,0,0,0,0,0,20,20,17,17,0,0,22,22,21,0,22,0,18,18,0,20,22,19,19,0,0,0,0,0,0,21,21,17,18,0,0,0,21,20,0,0,22,19,18,0,18,18,15,15,0,22,21,17,16,0,0,22,17,17,0,20,22,18,18,0,0,22,20,20,0,21,19,16,16,0,21,21,18,18,0,19,19,17,17,0,0,22,19,19,0,22,20,17,17,0,21,19,16,16,0,22,22,19,18,0,19,20,16,16,0,22,21,19,21,0,21,22,17,18,0,21,20,18,18,0,0,0,19,20,0,20,19,16,16,0,22,22,0,0,0,21,21,17,16,0,22,20,19,18,0,0,0,20,20,0,20,19,16,16,0,0,0,0,0,0,21,22,17,17,0,11,11,13,13,0,13,13,15,16,0,13,13,16,16,0,17,18,21,0,0,17,18,0,0,0,12,12,15,16,0,15,15,19,18,0,12,12,16,16,0,17,17,22,0,0,17,17,0,22,0,12,12,17,16,0,16,16,19,20,0,12,12,16,16,0,17,17,0,0,0,17,17,0,21,0,17,16,22,0,0,0,0,0,0,0,15,15,20,22,0,20,18,0,0,0,18,18,0,0,0,17,17,21,0,0,0,0,0,0,0,15,15,21,22,0,19,20,22,0,0,19,18,0,0,0,14,14,18,18,0,16,16,22,20,0,16,16,22,19,0,17,17,20,22,0,19,19,0,0,0,15,15,20,0,0,18,21,0,20,0,15,15,21,20,0,18,17,0,0,0,17,17,0,22,0,15,15,19,19,0,19,18,0,0,0,15,15,20,0,0,18,18,22,22,0,17,17,0,20,0,18,18,0,0,0,0,22,0,0,0,15,15,19,20,0,20,19,0,0,0,17,17,20,21,0,17,18,20,22,0,0,0,0,22,0,15,15,20,20,0,22,20,0,0,0,17,18,20,0,0,12,12,17,16,0,14,14,17,17,0,13,13,17,17,0,16,16,18,18,0,17,16,17,17,0,13,13,17,17,0,15,16,18,18,0,13,13,16,16,0,16,16,18,18,0,16,16,17,16,0,13,13,16,16,0,17,17,18,17,0,12,12,15,16,0,17,17,19,19,0,16,16,16,16,0,16,17,19,18,0,0,0,21,22,0,14,14,16,16,0,18,18,0,22,0,16,16,16,16,0,16,16,18,17,0,0,0,21,20,0,14,14,16,16,0,21,22,22,0,0,16,16,16,16,0,9,9,14,13,0,13,14,15,16,0,14,13,15,14,0,22,0,18,18,0,21,0,17,18,0,13,13,15,15,0,15,16,18,17,0,14,14,15,14,0,20,22,18,18,0,22,21,17,17,0,13,13,15,15,0,17,17,19,19,0,14,14,14,14,0,0,22,18,18,0,0,22,17,17,0,0,22,19,20,0,0,0,0,0,0,21,20,17,16,0,0,0,21,22,0,0,0,18,19,0,0,0,18,18,0,0,0,0,0,0,22,0,17,17,0,0,0,20,22,0,0,0,18,19,0,18,19,16,16,0,22,20,17,17,0,22,22,17,18,0,22,22,18,17,0,0,22,18,19,0,20,20,17,18,0,0,22,19,18,0,22,22,17,17,0,22,0,19,19,0,0,22,18,18,0,20,22,17,17,0,0,22,18,18,0,19,20,17,17,0,22,0,20,19,0,22,21,17,17,0,0,0,18,18,0,0,0,22,19,0,20,0,17,17,0,22,0,0,22,0,0,20,17,18,0,22,0,19,19,0,0,0,0,19,0,19,21,17,17,0,0,0,0,0,0,20,21,17,16,0,11,11,13,13,0,13,13,16,16,0,13,13,15,16,0,17,17,21,22,0,17,18,0,0,0,12,12,16,16,0,15,15,18,18,0,13,13,16,16,0,17,16,21,21,0,17,17,0,0,0,13,13,16,16,0,16,16,19,18,0,13,13,16,16,0,17,17,0,22,0,17,18,20,22,0,17,18,0,0,0,0,0,0,0,0,15,15,20,0,0,18,19,0,0,0,17,17,0,0,0,18,17,22,0,0,0,0,0,0,0,15,16,21,20,0,20,20,0,0,0,18,19,0,0,0,15,15,22,22,0,17,16,20,22,0,17,17,20,22,0,18,18,0,21,0,19,18,0,0,0,16,16,20,20,0,19,19,22,0,0,15,16,21,22,0,18,19,22,0,0,17,18,0,0,0,16,16,22,0,0,19,19,0,21,0,15,16,20,0,0,18,18,0,22,0,18,17,0,0,0,18,18,0,0,0,0,0,0,0,0,16,16,22,21,0,20,21,0,0,0,17,18,22,0,0,18,18,0,0,0,0,0,0,0,0,16,16,20,19,0,22,21,0,0,0,18,18,22,22,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,4,4,8,8,11,9,9,12,12,11,10,10,12,12,12,10,10,11,11,12,12,12,12,12,12,11,11,13,13,12,12,12,13,13,12,10,10,12,12,12,11,11,13,13,12,13,13,13,13,12,11,11,13,13,12,12,12,13,13,12,10,10,12,12,12,11,11,13,13,12,13,13,12,12,12,11,11,13,13,12,13,13,13,13,12,11,11,12,12,12,11,11,12,12,12,13,13,12,12,12,13,13,13,13,12,13,13,13,13,13,13,13,12,12,12,13,13,13,13,12,13,13,12,12,11,8,8,10,10,12,11,11,11,11,12,10,10,10,10,13,11,11,10,10,13,11,11,10,10,13,12,12,12,12,13,11,11,11,11,13,12,12,11,11,13,12,12,11,11,13,12,12,12,11,13,12,12,12,12,13,11,11,11,11,13,12,12,11,11,13,11,12,11,11,13,12,12,11,11,14,12,12,11,11,13,11,11,11,11,14,12,12,11,11,13,11,12,10,10,14,12,12,11,11,14,12,12,11,11,14,11,11,11,11,14,12,12,11,11,13,12,12,11,11,14,12,12,11,11,11,8,8,10,10,12,7,7,10,10,12,9,9,11,11,13,9,9,9,9,13,13,13,10,10,13,9,9,12,12,13,13,13,12,12,13,9,8,11,11,13,10,10,12,12,14,13,13,11,11,13,9,9,11,11,13,13,13,12,12,13,9,9,10,10,13,10,10,11,11,13,13,13,10,10,14,10,10,11,11,14,14,14,12,12,13,9,9,10,10,13,10,10,11,11,14,13,14,10,10,14,14,14,11,12,14,14,14,14,14,14,13,13,10,10,13,14,14,11,11,14,14,14,10,10,14,9,9,9,9,14,9,9,9,9,14,10,10,9,9,14,10,10,8,8,14,11,11,8,8,15,11,11,10,10,15,12,12,10,10,15,10,10,10,10,15,11,11,10,10,15,13,13,10,10,15,11,11,10,10,15,12,12,10,10,15,10,10,10,10,15,11,11,10,10,15,13,13,10,10,15,11,11,10,10,15,12,12,10,10,15,11,11,9,9,15,11,11,9,9,15,13,13,9,9,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,13,12,9,9,15,13,13,9,9,14,12,12,9,9,14,13,13,9,9,14,13,13,9,9,14,13,13,7,7,14,13,13,8,8,15,14,14,10,10,15,14,14,10,10,15,14,14,10,10,15,14,14,10,10,15,14,14,9,9,15,14,14,10,10,15,14,14,10,10,14,14,14,9,9,15,14,14,10,10,14,14,14,9,9,15,14,14,10,10,15,14,14,10,10,14,14,14,9,9,14,14,14,9,9,14,14,14,8,8,15,14,14,10,10,15,14,14,11,11,15,14,14,9,9,15,14,14,9,9,14,14,14,8,8,13,9,9,12,12,17,11,11,12,12,17,12,12,12,12,17,12,12,11,11,18,15,15,12,12,17,12,12,12,12,17,14,15,13,13,17,12,12,12,12,17,13,13,12,13,17,15,15,12,12,18,13,13,13,13,18,15,15,13,13,18,12,12,12,12,18,13,13,13,13,18,15,15,12,12,18,13,13,12,12,18,15,15,13,13,18,13,13,12,12,17,13,13,12,12,17,15,15,12,12,18,15,15,13,13,18,15,15,13,14,18,15,16,12,12,18,15,15,12,12,18,16,16,12,12,13,8,8,10,10,14,15,14,11,11,14,15,15,12,12,15,14,14,12,11,15,15,15,12,12,15,15,15,12,12,15,15,15,13,13,15,15,15,12,12,15,15,15,13,13,15,15,15,13,13,15,15,15,13,13,15,15,16,13,13,15,15,15,12,12,15,15,15,13,13,15,15,15,13,13,15,15,15,13,13,15,15,15,13,13,15,15,14,12,12,15,15,15,12,12,16,15,14,12,12,16,15,15,13,13,16,16,16,13,13,16,15,15,12,12,15,15,15,13,13,15,15,15,12,12,13,12,12,10,10,14,14,14,11,11,15,14,14,12,12,15,14,14,11,11,15,14,14,11,11,15,15,15,13,13,15,14,14,13,13,15,15,15,12,12,15,14,15,13,13,16,15,15,12,12,15,15,15,13,13,16,14,14,13,13,15,15,15,12,12,15,15,15,13,13,16,15,15,12,12,16,15,15,12,12,16,14,14,13,13,15,15,15,11,11,15,15,15,12,12,16,15,15,11,11,16,15,15,13,13,16,14,15,14,14,16,15,15,12,12,16,15,14,12,12,16,15,15,12,12,14,10,10,9,9,14,11,11,12,12,14,12,12,13,13,14,12,12,12,12,15,14,14,13,13,15,13,13,14,14,15,14,14,15,15,15,12,12,13,13,15,13,13,14,14,15,14,14,13,13,15,13,13,13,14,15,14,14,15,15,15,12,12,13,13,15,13,13,14,14,15,14,14,13,13,15,13,13,14,14,15,14,14,15,15,15,13,13,12,12,15,13,13,13,13,15,14,14,13,12,15,15,15,14,15,15,15,14,20,20,15,14,14,13,13,15,14,14,13,13,15,14,14,13,13,14,12,12,9,9,14,14,14,12,12,14,13,13,12,13,14,14,14,12,12,15,14,14,12,12,15,14,14,14,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,15,15,15,14,14,15,14,14,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,15,15,15,15,14,15,15,15,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,14,15,15,14,14,15,15,15,14,14,15,14,14,14,14,15,15,15,14,14,15,14,14,13,14,15,15,15,14,14,13,10,10,12,12,17,11,11,12,12,17,12,12,12,12,17,12,12,11,11,17,15,15,12,11,18,13,13,13,13,18,15,15,13,13,17,12,12,12,12,18,13,13,13,13,17,15,15,12,12,17,12,12,12,12,17,15,15,13,13,17,12,12,12,12,17,13,13,12,12,17,15,15,12,12,18,14,13,12,12,18,15,15,13,13,18,13,13,12,12,18,13,13,12,12,18,16,16,12,12,18,16,16,12,12,18,15,15,13,13,18,16,16,12,12,17,15,15,12,12,17,16,16,12,12,13,8,8,10,10,14,14,15,12,12,14,15,15,12,12,15,14,14,12,12,15,15,14,12,12,15,15,15,13,13,15,15,15,13,13,15,15,15,12,12,16,15,15,13,13,16,15,15,13,13,15,15,15,12,12,15,15,15,14,14,15,15,15,12,12,15,15,15,13,13,16,15,15,13,13,15,15,15,13,13,16,15,15,13,13,15,15,14,12,12,15,15,15,12,12,16,14,15,13,13,16,15,15,13,13,15,16,15,13,13,16,15,14,13,13,16,15,15,13,13,16,15,15,13,13,13,12,12,11,11,14,14,14,11,11,14,14,14,12,12,15,14,14,11,11,16,14,14,11,11,15,15,15,12,13,16,14,14,13,13,15,15,15,12,12,15,14,14,13,13,16,15,15,12,12,15,15,15,12,12,15,14,14,13,13,15,15,15,12,12,15,14,14,12,12,16,15,15,12,12,16,15,15,12,12,16,14,14,13,13,15,15,15,11,11,15,15,14,12,12,16,15,15,11,11,16,15,15,12,12,16,14,14,13,13,16,15,15,11,11,16,14,14,12,12,16,15,15,11,11,14,10,10,9,9,14,11,11,12,12,14,12,12,13,14,14,12,12,12,12,14,14,14,13,13,15,13,13,14,14,15,14,14,15,15,15,12,12,13,13,15,13,13,14,14,15,15,15,14,14,15,13,13,14,14,15,15,15,15,15,15,12,12,13,13,15,13,13,14,14,15,14,14,13,13,15,13,13,14,14,15,14,14,15,15,15,12,12,13,13,15,13,13,13,13,14,14,14,13,13,15,15,15,14,15,15,15,15,21,19,15,14,14,13,13,15,14,14,14,14,14,14,14,13,13,14,12,12,9,9,14,14,14,12,12,14,14,13,13,13,14,14,14,12,12,14,14,14,12,12,15,14,14,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,15,15,15,15,15,15,14,14,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,14,15,15,15,15,15,14,15,13,13,15,14,14,14,14,15,14,14,13,13,15,14,14,13,13,14,15,15,14,14,15,15,15,14,14,15,14,14,14,14,15,15,15,15,15,15,14,14,14,13,14,15,15,14,14,13,10,10,12,12,18,12,12,12,12,17,12,12,12,12,18,13,13,11,11,18,15,14,11,11,17,13,13,13,13,18,15,15,12,12,18,12,12,12,12,17,13,13,12,12,18,15,15,12,12,18,13,13,13,12,18,15,15,13,13,18,13,13,12,12,18,13,13,12,12,18,15,15,12,12,17,13,13,12,12,17,15,15,12,12,17,12,12,11,11,17,13,13,11,11,17,15,15,11,11,18,16,16,12,12,18,15,15,13,13,18,15,15,11,11,17,15,15,12,12,18,15,15,11,11,13,8,8,10,10,14,14,14,11,11,15,15,15,12,12,15,14,14,11,11,16,14,14,12,12,15,15,15,12,12,15,15,15,13,13,15,15,15,12,12,15,15,15,12,12,16,15,15,13,13,15,15,15,12,12,15,15,15,13,13,16,15,15,12,12,15,15,15,12,12,16,15,15,13,13,16,15,15,12,12,15,15,15,13,13,15,14,14,12,12,15,15,15,12,12,16,15,14,12,12,16,15,15,13,13,16,16,16,13,13,16,14,15,13,13,15,15,15,13,13,16,15,15,12,12,13,12,12,10,10,14,14,14,11,11,15,14,14,12,12,15,14,14,11,11,16,14,14,11,11,15,14,15,12,12,15,14,14,13,13,15,15,15,12,12,15,14,14,12,12,15,14,15,12,12,15,15,15,12,12,16,14,14,13,13,15,15,15,11,12,16,14,14,12,12,16,15,15,12,12,15,15,15,12,12,16,14,14,12,12,15,15,15,11,11,15,14,14,11,12,15,15,14,11,11,16,15,15,12,12,16,14,14,13,13,16,15,15,11,11,16,14,14,12,12,16,15,15,11,11,13,10,10,8,8,14,12,12,12,12,14,12,12,13,13,14,12,12,12,12,14,14,14,13,13,15,13,13,14,14,15,15,14,15,15,15,13,13,13,13,15,13,13,14,14,15,14,15,14,14,15,13,13,13,13,15,15,15,15,15,15,12,12,13,12,15,13,13,14,14,15,14,14,13,13,15,13,13,14,13,15,15,15,16,16,15,13,13,12,12,15,13,13,13,13,14,14,14,12,12,15,15,15,14,14,15,15,15,20,20,15,14,14,13,13,15,15,14,14,14,15,14,14,13,13,13,12,12,9,9,14,13,13,12,12,14,13,13,12,12,14,14,14,12,12,14,14,14,13,13,15,14,14,13,13,15,14,14,14,14,15,15,14,12,12,15,14,14,13,13,15,14,15,14,15,15,14,14,13,13,15,14,14,14,14,15,14,14,12,12,15,14,14,13,13,14,15,14,15,14,15,14,14,13,13,15,14,14,14,14,15,14,14,12,12,15,14,14,13,13,15,15,15,14,14,15,15,15,14,14,16,14,14,14,14,15,15,15,14,14,15,14,14,14,14,14,15,15,14,14,13,13,13,12,13,17,15,15,12,12,17,15,15,12,12,18,15,15,11,11,17,16,16,11,11,18,16,16,13,13,18,17,16,13,13,18,16,16,12,12,18,16,16,12,12,18,17,17,12,12,17,16,16,12,13,17,16,16,12,13,17,16,16,12,12,17,16,16,12,12,18,17,16,12,12,18,16,16,12,12,17,16,17,12,12,18,15,15,11,11,18,15,15,12,12,17,17,17,11,11,17,17,17,12,12,17,16,16,13,13,18,16,16,11,11,18,16,16,12,12,18,17,16,11,11,14,14,14,10,10,16,15,14,11,11,16,15,15,12,12,16,14,14,12,12,17,14,14,13,13,17,15,15,13,13,17,15,15,14,14,16,15,15,12,12,16,15,15,13,13,18,15,15,14,14,16,15,15,12,12,16,15,15,14,14,16,15,15,12,12,16,15,15,13,13,17,15,15,13,13,17,15,15,13,13,17,15,15,14,14,16,14,14,12,12,17,15,15,12,12,18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,17,15,14,13,13,17,15,15,14,14,17,15,15,13,13,14,12,12,11,11,15,14,14,12,12,16,14,14,12,12,16,14,14,11,11,17,14,14,12,12,16,15,14,13,13,16,14,14,13,13,16,15,15,12,12,16,14,14,13,13,17,15,15,13,13,16,15,15,13,13,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,16,15,15,12,12,17,15,15,12,12,17,14,14,13,13,16,15,15,12,12,16,14,14,12,12,16,15,15,12,12,17,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,17,15,15,12,12,14,14,14,8,8,14,14,14,13,13,14,15,15,14,14,14,14,14,14,14,15,15,15,19,19,15,15,15,14,14,15,15,16,20,19,15,15,15,14,14,15,16,16,15,15,15,15,15,19,19,15,15,15,14,14,15,16,16,19,20,15,15,15,14,14,15,15,15,15,15,15,15,15,19,19,15,15,15,15,15,15,15,16,19,20,15,14,15,14,14,15,15,15,15,15,15,15,15,20,19,15,15,15,21,19,15,16,16,20,20,15,15,14,19,19,15,15,16,20,21,15,15,15,20,19,13,12,12,9,9,14,14,14,12,12,14,13,13,13,13,14,14,14,13,13,15,14,14,20,19,15,14,14,14,13,15,14,14,19,19,15,15,14,13,13,15,14,14,14,14,15,15,15,19,20,15,14,14,13,13,15,14,14,20,19,14,15,14,13,13,15,14,14,14,13,15,15,15,19,20,15,15,14,14,14,15,14,14,21,19,15,15,15,13,13,15,14,14,14,14,14,15,15,20,20,15,15,15,21,20,15,14,14,19,20,15,15,15,20,20,15,14,14,19,20,15,15,15,21,19,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,6,7,7,7,8,8,7,8,8,10,11,11,9,8,8,7,8,8,11,11,11,9,8,8,6,7,7,9,11,11,9,11,11,10,11,11,12,13,13,11,12,12,10,11,11,13,14,14,12,12,12,6,6,6,8,6,6,8,7,7,9,7,7,11,10,10,10,6,6,9,7,7,12,10,10,11,6,7,7,7,7,11,10,10,12,10,10,11,10,10,14,13,13,13,10,10,12,11,11,15,13,13,14,10,10,8,7,7,12,11,11,12,11,11,11,11,11,14,14,14,13,12,12,12,11,11,15,15,15,13,12,12,0,10,10,0,11,11,0,11,11,0,11,11,0,14,14,0,11,11,0,11,11,0,15,15,0,11,11,7,8,8,12,10,10,12,10,10,12,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,12,11,11,12,11,11,16,14,14,14,12,12,13,12,12,15,14,14,15,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,12,12,0,14,14,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,0,8,8,0,8,8,0,9,9,0,9,9,0,9,9,0,9,9,0,9,9,0,8,8,0,6,6,0,7,7,0,7,7,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,8,8,0,6,6,0,6,6,0,6,6,0,8,8,0,9,9,0,7,7,0,8,8,0,9,9,0,6,6,0,8,8,0,9,9,0,9,9,0,10,10,0,10,10,0,10,10,0,10,10,0,11,11,0,9,9,0,7,7,0,10,10,0,10,10,0,12,11,0,12,12,0,11,11,0,11,11,0,12,12,0,10,10,0,7,7,0,10,10,0,10,10,0,12,12,0,11,12,0,11,11,0,11,11,0,11,11,0,10,10,0,8,8,0,9,9,0,9,9,0,10,10,0,10,10,0,10,9,0,10,10,0,10,10,0,9,9,0,6,6,0,10,10,0,10,10,0,11,11,0,12,12,0,11,11,0,11,11,0,12,12,0,11,11,0,7,7,0,9,9,0,9,9,0,11,11,0,11,11,0,10,10,0,10,10,0,11,11,0,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,6,7,7,0,8,8,6,9,9,8,11,11,0,8,8,0,9,9,0,12,12,0,8,8,5,7,7,7,10,10,0,12,12,8,11,11,9,12,12,0,11,12,0,12,12,0,15,15,0,12,12,0,6,6,0,6,6,0,7,7,0,7,7,0,10,10,0,7,7,0,8,8,0,11,11,0,7,7,6,7,7,10,9,9,0,11,10,10,9,9,12,12,12,0,10,10,0,11,11,0,13,13,0,11,11,7,6,6,10,10,10,0,11,11,11,11,11,12,12,12,0,11,11,0,12,12,0,15,15,0,11,11,0,11,11,0,11,11,0,12,12,0,12,12,0,14,14,0,12,12,0,12,12,0,15,15,0,11,11,0,8,8,0,10,10,0,11,11,0,11,11,0,12,12,0,12,12,0,11,11,0,15,15,0,11,11,0,6,6,0,10,10,0,12,12,0,10,10,0,13,13,0,12,12,0,13,13,0,14,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,0,0,0,8,8,0,0,0,9,9,0,0,0,10,10,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,6,6,0,0,0,7,7,0,0,0,8,8,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,0,7,7,0,0,0,9,9,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,8,8,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,0,0,8,8,0,0,0,10,10,0,0,0,9,9,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,0,0,0,0,0,9,9,0,0,0,11,10,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,0,0,10,10,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,11,0,0,0,12,12,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,0,0,10,10,0,0,0,11,11,0,0,0,12,12,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,10,10,0,0,0,13,13,0,0,0,0,0,0,0,0,14,13,0,0,0,0,0,0,0,0,13,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,12,12,0,0,0,12,12,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,14,14,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,12,13,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,11,11,0,0,0,14,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,11,11,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,12,12,0,0,0,0,0,0,0,0,12,12,0,0,0,14,14,0,0,0,0,0,0,0,0,14,14,0,0,0,0,0,0,0,0,12,12,0,0,0,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,2,2],"i8",L3,R.GLOBAL_BASE+477020),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,4,12,9,8,12,15,17,4,2,11,6,5,9,13,15,11,7,8,7,7,10,14,13,8,5,7,5,5,8,12,12,8,4,7,4,3,6,11,12,11,8,9,7,6,8,11,12,15,13,14,12,9,7,10,13,16,12,17,12,7,5,8,11,0,0,0,0,255,255,255,255,255,255,255,255,7,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",L3,R.GLOBAL_BASE+487288),d3([1,0,0,0,2,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,7,0,0,0,17,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,200,161,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,128,7,0,0,0,0,0,0,0,0,0,96,128,7,0,136,128,7,0,0,0,0,0,0,0,0,0,176,128,7,0,216,128,7,0,0,0,0,0,0,0,0,0,0,129,7,0,40,129,7,0,0,0,0,0,0,0,0,0,80,129,7,0,120,129,7,0,40,129,7,0,0,0,0,0,160,129,7,0,88,125,7,0,128,125,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,0,128,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,248,127,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,124,7,0,8,125,7,0,0,0,0,0,0,0,0,0,48,125,7,0,88,125,7,0,128,125,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,16,127,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,192,127,7,0,0,0,0,0,2,0,0,0,25,0,0,0,216,126,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,248,126,7,0,0,0,0,0,2,0,0,0,9,0,0,0,184,126,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,200,126,7,0,0,0,0,0,1,0,0,0,25,0,0,0,48,126,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,80,126,7,0,0,0,0,0,1,0,0,0,25,0,0,0,168,125,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,200,125,7,0,0,0,0,0,3,4,4,5,4,5,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,13,14,16,16,16,16,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,5,5,5,6,6,5,6,5,6,6,6,6,7,7,7,6,7,6,7,7,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,4,4,7,7,8,8,9,9,10,10,11,11,4,6,5,8,6,9,8,10,9,10,10,11,10,5,5,6,6,8,8,9,9,10,10,10,10,11,7,8,8,9,8,10,9,10,9,11,10,11,10,7,8,8,8,10,9,10,10,10,10,11,10,11,9,10,10,11,11,11,11,12,11,12,11,12,11,9,10,10,11,11,11,11,11,11,11,12,11,12,11,11,11,12,12,12,12,12,12,12,12,12,11,11,12,11,12,12,12,12,12,12,12,12,11,12,12,12,12,12,13,12,13,12,12,12,12,12,12,12,12,12,13,13,13,13,12,13,12,12,12,12,12,13,13,12,13,12,13,12,13,12,12,12,12,13,13,13,13,13,13,12,12,12,12,12,11,12,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,3,3,7,7,9,13,16,3,2,4,6,10,13,17,7,4,4,6,9,12,14,7,6,6,5,7,9,12,10,10,9,6,6,9,12,14,14,13,9,8,10,11,18,18,15,13,11,10,11,0,0,0,0,0,0,0,5,0,0,0,243,0,0,0,192,160,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,184,161,7,0,0,0,0,0,5,0,0,0,243,0,0,0,184,159,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,176,160,7,0,0,0,0,0,5,0,0,0,243,0,0,0,176,158,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,168,159,7,0,0,0,0,0,5,0,0,0,243,0,0,0,168,157,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,160,158,7,0,0,0,0,0,5,0,0,0,53,12,0,0,88,145,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,144,157,7,0,0,0,0,0,5,0,0,0,53,12,0,0,8,133,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,64,145,7,0,0,0,0,0,1,0,0,0,7,0,0,0,224,132,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,232,132,7,0,0,0,0,0,5,0,0,0,243,0,0,0,216,131,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,208,132,7,0,0,0,0,0,5,0,0,0,243,0,0,0,208,130,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,200,131,7,0,0,0,0,0,5,0,0,0,243,0,0,0,200,129,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,192,130,7,0,0,0,0,0,1,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,7,7,7,7,7,7,7,7,7,8,8,9,8,8,8,7,7,8,8,8,9,8,8,9,7,7,6,6,6,9,8,7,9,7,7,9,8,8,10,8,8,10,8,8,10,8,8,10,8,8,10,8,8,7,6,6,9,6,6,9,7,7,9,7,7,10,8,8,9,6,6,9,7,7,10,8,8,9,7,7,7,8,8,11,9,9,11,9,9,11,8,9,12,9,9,12,8,8,11,9,9,12,9,9,12,8,8,8,7,7,10,9,9,10,10,9,10,9,9,11,10,10,11,9,9,11,9,9,11,10,11,11,9,9,10,8,8,11,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,9,9,11,10,10,11,9,9,9,8,8,11,9,9,12,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,9,9,12,8,8,9,7,7,11,9,9,11,10,10,11,9,9,11,11,11,11,9,9,11,10,10,11,11,11,11,9,9,10,9,9,11,9,9,11,10,10,11,9,9,11,10,10,11,9,9,11,9,10,11,10,10,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,6,6,7,8,8,7,8,8,7,9,8,10,11,11,9,8,8,7,8,8,11,11,11,9,8,8,6,7,7,10,10,10,10,10,10,10,10,10,14,13,13,12,11,11,10,10,10,14,14,13,12,11,11,6,6,6,8,5,5,8,7,7,9,7,7,11,10,10,9,7,7,9,7,7,12,10,10,10,7,7,7,8,8,12,11,10,12,10,10,11,10,10,15,13,13,13,10,10,11,10,10,17,14,13,13,10,10,7,7,7,12,11,12,12,11,11,12,11,11,16,14,14,13,12,12,12,11,11,17,15,14,14,12,12,10,9,9,13,11,11,13,11,11,13,11,11,17,14,13,14,11,11,12,11,11,16,15,14,14,11,11,7,8,8,12,11,11,12,10,10,12,10,10,15,13,13,14,11,10,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,12,11,11,12,11,11,17,14,14,14,12,12,12,11,11,16,15,15,14,12,12,10,10,10,13,11,11,13,11,11,13,11,12,16,14,14,14,11,11,13,12,11,16,15,15,14,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,14,14,6,7,7,14,14,7,7,7,14,14,0,13,13,16,16,0,13,13,15,14,7,8,8,15,15,9,10,10,16,16,9,8,8,15,15,0,13,13,17,16,0,13,13,15,16,8,8,8,15,15,12,11,11,16,16,9,8,8,14,14,0,13,13,17,18,0,13,13,15,15,0,14,14,16,16,0,0,0,19,18,0,12,12,16,15,0,15,16,0,20,0,14,14,16,16,0,14,14,17,17,0,0,0,19,18,0,12,12,15,15,0,17,17,0,20,0,14,14,16,16,5,6,7,12,12,9,9,9,14,14,10,10,10,14,14,0,21,21,18,17,0,20,20,18,17,9,10,10,14,14,12,12,12,16,16,12,10,10,14,14,0,20,19,18,17,0,0,20,17,18,11,10,10,14,14,14,13,13,18,18,13,11,11,14,14,0,20,20,17,18,0,21,21,17,17,0,21,0,18,18,0,0,0,0,0,0,20,19,16,17,0,0,0,19,19,0,0,0,18,18,0,21,21,18,18,0,0,0,0,0,0,20,20,16,17,0,0,0,21,21,0,0,0,18,19,6,6,6,13,12,8,6,6,11,11,8,6,6,13,13,0,9,9,11,11,0,11,10,14,14,9,7,7,13,13,11,9,9,13,13,10,6,6,13,13,0,10,10,14,15,0,10,10,13,13,9,7,7,13,13,13,10,9,13,13,10,6,6,13,13,0,10,10,15,14,0,10,10,13,13,0,11,11,15,15,0,19,20,17,17,0,9,9,13,13,0,13,13,20,20,0,11,11,13,13,0,11,11,15,15,0,19,19,17,17,0,10,10,13,13,0,15,15,20,20,0,12,12,13,13,0,10,10,12,12,0,11,11,15,15,0,11,11,15,15,0,15,15,20,0,0,16,16,0,21,0,11,11,15,15,0,14,14,18,17,0,11,11,15,15,0,15,16,19,20,0,16,16,21,21,0,12,12,15,15,0,15,14,18,18,0,11,11,16,16,0,15,15,21,21,0,16,15,0,0,0,16,16,21,0,0,0,0,0,0,0,14,14,20,20,0,18,18,0,0,0,16,17,21,0,0,16,16,21,21,0,0,0,0,0,0,15,15,21,21,0,20,19,0,21,0,17,17,0,0,0,10,10,12,11,0,10,10,10,11,0,11,11,12,12,0,11,11,9,9,0,13,13,11,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,12,12,13,13,0,12,12,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,13,13,14,14,0,12,12,12,12,0,14,14,14,13,0,19,20,15,15,0,12,11,12,12,0,15,15,21,20,0,13,13,11,11,0,13,13,13,13,0,19,0,15,15,0,12,12,12,12,0,17,16,19,0,0,13,13,12,12,7,7,7,16,16,11,9,9,15,15,12,9,9,16,16,0,13,13,15,14,0,14,14,17,16,10,9,9,16,16,14,11,11,17,16,12,9,8,15,15,0,13,13,18,18,0,13,13,15,15,12,10,10,18,17,15,12,12,17,17,14,9,9,16,16,0,13,13,18,19,0,14,13,17,16,0,14,14,18,18,0,0,0,20,21,0,12,12,16,16,0,16,16,20,21,0,14,14,17,16,0,14,14,18,19,0,0,0,19,21,0,13,13,17,17,0,17,17,0,21,0,15,15,16,16,8,7,7,14,14,11,10,10,15,15,12,10,10,15,15,0,20,20,18,18,0,0,0,17,17,11,10,10,16,16,14,12,12,18,17,14,11,11,15,15,0,20,21,18,18,0,0,19,18,17,12,10,10,16,16,17,14,14,19,19,14,11,11,15,15,0,21,21,19,19,0,21,20,19,18,0,21,0,18,19,0,0,0,0,0,0,20,20,18,17,0,21,0,0,0,0,0,0,19,18,0,0,0,18,19,0,0,0,0,0,0,0,21,17,18,0,0,0,0,21,0,0,21,18,19,11,9,9,14,14,13,10,10,13,13,13,11,11,15,15,0,13,13,12,12,0,15,15,16,16,13,10,10,15,15,16,12,12,15,15,15,10,10,15,15,0,14,13,16,15,0,14,13,15,15,13,10,10,15,15,18,14,14,15,15,15,10,10,14,15,0,14,14,16,16,0,14,14,16,15,0,15,15,17,16,0,21,0,18,18,0,12,13,15,15,0,16,16,0,0,0,14,14,15,15,0,15,15,16,16,0,21,20,18,18,0,13,13,15,15,0,19,18,0,0,0,15,15,15,15,0,11,11,13,13,0,12,12,16,16,0,12,12,16,16,0,15,16,20,0,0,16,17,0,0,0,12,12,16,16,0,14,14,18,18,0,11,11,16,17,0,15,15,20,0,0,16,16,0,0,0,12,12,16,16,0,15,15,19,19,0,11,11,17,17,0,16,16,21,0,0,16,16,0,0,0,17,17,20,20,0,0,0,0,0,0,15,15,20,0,0,17,18,0,0,0,17,17,0,0,0,16,16,0,21,0,0,0,0,0,0,15,15,21,0,0,19,18,0,0,0,18,17,0,0,0,11,11,14,14,0,11,11,15,15,0,12,12,16,16,0,13,13,14,14,0,14,14,17,17,0,12,12,16,16,0,14,14,16,16,0,11,11,16,15,0,13,13,16,17,0,13,13,16,16,0,12,12,15,16,0,15,14,16,16,0,11,11,15,15,0,14,14,17,17,0,13,13,16,16,0,15,14,18,18,0,21,0,19,19,0,13,13,15,15,0,16,16,20,20,0,14,14,16,15,0,14,14,17,17,0,21,0,20,18,0,13,13,15,15,0,17,17,0,0,0,14,14,16,15,8,8,8,16,16,12,9,9,16,16,13,9,9,16,16,0,14,14,18,17,0,14,14,16,17,12,10,10,18,17,14,11,11,18,18,14,9,9,16,16,0,13,13,18,18,0,13,13,17,16,12,9,9,16,17,17,13,13,16,16,14,9,9,15,15,0,14,14,20,20,0,13,13,15,15,0,15,14,18,18,0,0,0,20,21,0,12,13,16,17,0,16,16,20,21,0,14,14,16,17,0,14,14,18,17,0,0,0,20,21,0,13,13,16,16,0,19,17,0,21,0,14,15,16,16,8,7,7,14,13,12,10,10,15,15,13,10,10,15,15,0,21,21,18,19,0,20,21,18,18,12,10,10,16,15,15,12,12,17,17,14,11,11,15,15,0,21,21,19,18,0,0,21,17,18,13,11,11,15,15,16,13,13,18,19,15,11,11,15,14,0,21,0,19,19,0,0,21,18,18,0,0,21,19,19,0,0,0,0,0,0,20,19,17,17,0,0,0,21,0,0,21,0,18,19,0,0,20,20,19,0,0,0,0,0,0,21,20,18,17,0,0,0,0,20,0,0,0,18,19,0,10,10,15,14,0,11,11,14,14,0,11,11,15,16,0,14,14,15,15,0,15,15,16,16,0,11,11,16,16,0,14,13,16,16,0,11,11,15,15,0,14,14,16,16,0,14,14,15,15,0,11,11,15,15,0,13,13,15,15,0,11,11,15,15,0,15,15,18,17,0,14,14,15,15,0,15,16,18,18,0,0,0,20,20,0,14,13,16,15,0,17,17,21,0,0,15,15,15,15,0,16,15,17,17,0,0,0,19,19,0,13,13,15,15,0,20,19,0,0,0,15,15,15,15,0,11,11,13,13,0,12,12,16,16,0,12,12,16,16,0,15,15,21,21,0,17,16,0,0,0,12,12,16,16,0,14,14,17,17,0,11,11,16,16,0,15,15,0,0,0,16,16,21,0,0,12,12,17,16,0,14,15,20,20,0,11,11,16,16,0,15,15,0,20,0,16,16,0,21,0,16,17,21,0,0,0,0,0,0,0,15,15,0,21,0,18,18,0,0,0,17,16,0,0,0,17,17,21,0,0,0,0,0,0,0,15,15,0,20,0,19,20,21,0,0,17,18,0,0,0,12,12,15,15,0,12,12,15,15,0,12,12,16,16,0,13,13,15,15,0,15,15,17,17,0,13,12,17,16,0,14,14,17,16,0,11,11,16,16,0,14,14,17,17,0,14,14,17,17,0,12,12,16,16,0,15,15,17,17,0,11,11,16,16,0,14,14,17,17,0,14,14,16,16,0,15,15,18,17,0,0,0,19,0,0,13,13,16,16,0,16,16,0,21,0,14,14,16,16,0,15,15,18,17,0,0,0,19,19,0,13,13,16,16,0,18,17,0,21,0,14,15,16,16,0,11,11,16,16,0,13,13,17,17,0,13,13,17,17,0,16,16,16,17,0,16,16,18,18,0,12,12,17,17,0,16,15,18,17,0,12,12,16,16,0,16,15,19,19,0,16,15,17,17,0,12,12,17,18,0,16,16,18,18,0,12,12,16,16,0,16,16,19,19,0,15,16,17,17,0,15,16,18,18,0,0,0,20,20,0,13,13,16,16,0,18,18,21,20,0,15,15,16,16,0,16,16,19,18,0,0,0,19,20,0,14,14,17,17,0,19,19,0,21,0,15,16,16,16,0,9,9,14,14,0,13,13,15,15,0,14,14,15,15,0,0,21,19,19,0,0,21,18,18,0,12,12,15,15,0,15,15,18,18,0,14,13,15,15,0,21,21,18,19,0,21,20,18,18,0,13,13,16,16,0,17,17,18,19,0,14,14,15,15,0,0,21,19,19,0,21,20,18,19,0,20,20,19,19,0,0,0,0,0,0,19,20,17,17,0,0,0,21,21,0,21,0,18,20,0,21,0,18,21,0,0,0,0,0,0,21,21,19,18,0,0,0,0,0,0,0,0,19,19,0,18,18,15,15,0,18,20,17,16,0,20,0,17,17,0,21,0,17,17,0,21,20,19,20,0,19,19,16,16,0,21,21,17,18,0,19,19,17,17,0,20,21,21,21,0,20,20,18,18,0,19,19,16,16,0,0,21,18,19,0,18,19,16,17,0,21,21,19,20,0,21,19,18,18,0,21,20,19,21,0,0,0,20,21,0,19,19,17,16,0,0,0,0,0,0,21,20,17,17,0,20,21,19,18,0,0,0,0,21,0,19,18,16,17,0,0,0,0,0,0,20,20,17,17,0,11,11,14,14,0,13,13,16,16,0,13,13,16,16,0,17,17,21,0,0,17,18,0,0,0,12,12,16,16,0,15,15,17,18,0,12,12,16,16,0,16,16,0,20,0,17,17,0,21,0,12,12,17,17,0,16,16,19,20,0,12,12,17,17,0,17,17,0,20,0,17,17,0,0,0,17,17,21,0,0,0,0,0,0,0,15,15,0,20,0,19,19,0,0,0,18,18,0,0,0,17,17,0,0,0,0,0,0,0,0,15,15,0,0,0,20,19,0,0,0,19,18,0,0,0,14,14,21,19,0,16,16,20,21,0,16,16,20,20,0,17,17,20,0,0,17,17,20,20,0,15,15,20,20,0,19,18,20,0,0,15,15,20,20,0,17,18,21,20,0,17,17,20,21,0,15,15,19,19,0,19,18,21,21,0,15,15,19,20,0,17,18,0,0,0,17,17,20,20,0,17,18,20,21,0,0,0,0,0,0,15,15,20,20,0,19,19,0,0,0,17,17,19,21,0,17,17,0,21,0,0,0,0,21,0,15,15,20,19,0,0,20,0,0,0,17,17,21,20,0,12,12,16,16,0,14,14,17,17,0,13,13,17,17,0,16,16,17,18,0,17,16,18,18,0,13,13,18,17,0,15,16,19,18,0,13,13,16,16,0,16,16,19,19,0,16,16,17,17,0,13,12,17,17,0,16,16,18,17,0,12,12,16,16,0,17,17,19,18,0,16,15,16,16,0,16,17,18,19,0,0,0,20,20,0,14,14,17,16,0,18,18,21,0,0,16,16,16,16,0,16,16,18,17,0,0,21,21,21,0,14,14,16,16,0,21,20,21,0,0,16,16,16,16,0,10,10,14,14,0,14,14,15,16,0,14,14,15,15,0,0,21,18,18,0,0,21,18,19,0,13,13,16,16,0,16,16,18,17,0,14,14,15,15,0,20,0,18,18,0,21,0,18,17,0,13,13,16,15,0,17,17,19,19,0,14,14,15,15,0,20,20,18,19,0,0,0,18,17,0,0,21,18,18,0,0,0,0,0,0,20,21,18,17,0,0,0,0,0,0,0,0,19,19,0,0,21,18,18,0,0,0,0,0,0,21,0,18,17,0,0,0,0,21,0,0,0,19,20,0,19,19,16,16,0,0,21,18,17,0,21,0,18,18,0,20,0,19,18,0,21,20,19,19,0,21,19,17,18,0,0,21,19,19,0,21,19,18,18,0,21,0,20,18,0,0,21,18,18,0,20,21,17,17,0,21,0,18,18,0,21,19,17,17,0,21,0,0,20,0,0,20,17,18,0,0,0,19,20,0,0,0,20,19,0,19,21,17,18,0,21,0,0,0,0,21,21,18,17,0,0,21,18,18,0,0,0,0,21,0,20,19,16,17,0,0,0,0,0,0,21,20,17,17,0,11,11,13,13,0,13,13,16,16,0,13,13,16,16,0,17,17,0,21,0,18,19,21,0,0,12,12,16,16,0,15,15,19,18,0,13,13,16,16,0,16,17,21,19,0,17,17,21,21,0,13,13,16,16,0,16,16,20,18,0,13,13,16,16,0,17,17,0,0,0,18,18,0,0,0,18,17,0,20,0,0,0,0,0,0,15,15,21,21,0,19,18,0,0,0,17,17,21,21,0,17,17,0,0,0,0,0,0,0,0,15,15,20,21,0,20,20,0,0,0,19,19,0,0,0,14,15,21,19,0,16,16,0,21,0,17,16,21,21,0,17,18,21,20,0,18,18,0,21,0,16,16,0,20,0,19,19,0,0,0,16,15,0,20,0,18,18,0,0,0,17,17,0,21,0,16,16,20,20,0,20,19,0,0,0,15,16,21,22,0,18,18,0,0,0,18,17,0,0,0,18,18,0,0,0,0,0,0,0,0,16,16,21,20,0,19,20,0,0,0,18,17,21,0,0,17,18,0,0,0,0,0,0,0,0,16,16,0,20,0,0,20,0,0,0,18,18,22,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,3,4,7,7,10,12,12,12,12,10,11,11,13,13,11,12,12,11,11,12,12,12,12,12,11,13,13,13,13,12,12,12,13,14,12,13,13,13,13,12,13,13,13,13,12,13,13,13,13,11,13,13,13,13,12,12,12,14,14,12,13,13,12,12,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,14,14,12,13,13,12,12,12,13,13,13,13,12,13,13,12,12,12,13,13,13,13,12,12,12,14,14,12,13,13,12,12,12,13,13,13,13,12,13,13,12,12,10,10,11,10,10,11,11,11,11,11,11,9,9,10,10,12,11,11,10,10,12,10,10,10,10,13,12,12,12,12,13,11,11,11,11,13,12,12,12,12,13,11,11,11,11,13,12,12,12,12,13,12,12,12,12,13,11,11,11,11,13,12,12,12,12,13,11,11,11,11,13,12,12,11,11,13,12,12,11,11,13,11,11,11,11,13,12,12,11,11,13,11,11,11,11,13,12,12,11,11,13,12,12,11,11,13,11,11,11,11,13,12,12,11,11,13,11,11,11,11,13,12,12,11,11,11,11,11,10,10,11,11,11,9,9,11,12,12,11,11,12,12,12,9,9,13,13,13,10,10,13,13,13,11,11,13,13,13,14,14,13,13,13,11,10,13,13,14,12,12,13,13,13,11,11,13,13,13,11,11,13,13,13,14,14,13,13,13,10,10,13,13,13,11,11,13,13,13,10,10,13,14,13,11,11,13,14,14,14,14,13,13,13,10,10,13,14,14,11,11,13,13,13,10,10,13,14,14,11,11,13,13,13,14,14,14,13,13,10,10,13,14,14,11,11,13,13,13,10,10,14,12,12,9,9,14,12,12,9,9,14,11,11,9,9,14,12,12,8,8,14,11,11,7,7,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,9,9,15,12,12,9,9,14,13,13,9,9,15,13,13,10,10,15,12,12,10,10,15,13,13,9,9,15,12,12,9,9,15,13,13,9,9,13,12,12,9,9,13,13,13,8,8,13,13,13,9,9,13,13,13,7,7,14,13,13,8,8,14,14,14,10,10,15,14,14,11,11,14,14,14,9,9,15,14,14,10,10,15,14,14,9,9,14,14,14,10,10,15,14,14,11,11,15,14,14,9,9,14,14,14,10,10,14,14,14,9,9,15,14,15,10,10,15,14,14,11,11,14,14,14,9,9,14,14,14,9,9,14,14,14,8,8,15,14,14,10,10,15,14,14,11,11,14,14,14,9,9,15,14,14,9,9,14,14,14,8,8,12,12,12,13,13,16,16,16,11,11,17,16,16,12,12,17,16,16,11,11,17,16,16,11,11,17,17,16,13,13,17,16,16,13,13,18,17,16,12,12,17,16,16,13,13,17,16,17,12,12,18,17,17,13,13,17,16,16,14,14,18,17,17,12,12,18,16,16,13,13,17,17,17,13,12,17,17,17,13,13,17,16,16,13,13,18,17,17,12,12,17,16,16,13,12,17,17,17,12,12,18,17,17,13,13,18,16,16,14,14,18,17,17,12,12,17,17,17,13,13,18,17,18,12,12,13,14,14,10,10,16,14,14,13,13,17,15,15,14,14,17,14,14,12,13,16,14,14,13,13,17,15,15,14,14,16,16,16,15,15,17,15,15,14,14,17,16,16,14,15,17,15,15,14,14,17,15,16,14,14,17,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,14,17,15,15,14,14,16,16,16,15,15,17,15,15,13,13,17,15,15,14,14,17,15,15,13,13,17,15,15,14,14,16,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,13,11,11,10,10,16,14,14,13,12,16,14,14,13,13,16,15,14,12,12,16,14,14,12,12,16,15,15,14,14,16,14,14,14,14,17,15,15,13,13,16,15,15,14,14,17,15,15,13,14,17,15,15,14,14,17,15,14,14,14,17,15,15,13,13,17,15,15,14,14,17,15,15,13,13,17,15,15,14,14,17,14,14,14,14,17,15,15,13,13,17,15,15,13,13,17,15,15,13,13,17,15,15,14,14,17,15,15,14,14,17,15,15,13,13,17,15,15,13,13,17,15,15,13,13,14,14,15,8,8,14,14,14,19,19,14,15,15,18,19,14,14,14,19,18,14,14,14,19,19,15,15,15,19,18,15,16,16,19,19,15,15,15,19,19,15,16,16,20,19,15,15,15,19,19,15,15,15,19,19,16,16,16,20,19,15,15,15,19,18,15,16,16,20,19,15,15,15,18,18,15,15,15,19,20,15,16,16,19,19,15,15,15,20,19,15,15,15,20,19,15,15,15,19,18,15,15,15,19,19,15,16,16,19,20,15,15,15,19,19,15,15,15,19,20,15,15,15,19,19,14,12,12,9,9,14,14,14,19,19,14,14,14,19,19,14,14,15,20,19,15,14,14,18,19,15,15,15,19,19,15,15,14,20,19,15,15,15,20,19,15,15,14,20,19,15,15,15,20,19,15,15,15,19,20,15,14,14,19,20,15,15,15,20,20,15,14,14,20,19,15,15,15,19,19,15,15,15,19,19,15,14,14,19,19,15,15,15,19,20,15,15,15,20,20,15,15,15,19,19,15,15,15,20,19,16,14,14,19,19,15,15,15,20,19,15,14,15,20,19,14,15,15,20,19,12,12,12,13,13,16,16,16,11,11,16,16,16,12,12,17,16,16,11,11,17,15,16,11,11,17,17,17,13,13,18,16,17,13,13,18,17,17,13,12,17,16,17,13,13,17,17,17,13,13,16,16,16,12,12,17,16,16,13,13,17,16,16,12,12,17,16,16,12,13,17,17,17,12,12,17,17,17,13,13,18,16,16,13,13,18,17,17,12,12,18,17,17,12,12,17,17,17,12,12,17,17,17,12,12,17,16,16,13,13,17,17,17,12,12,17,16,16,12,12,17,17,17,12,12,13,14,14,9,9,16,14,14,13,13,16,15,15,14,14,17,14,14,13,13,16,14,14,13,13,17,15,15,15,15,16,16,16,15,15,17,15,15,14,14,17,15,15,15,15,17,15,15,14,14,17,15,15,14,14,16,16,16,15,15,17,15,15,14,14,17,15,15,14,14,17,15,15,14,14,17,15,15,14,14,16,16,16,15,15,18,15,15,14,13,17,15,15,14,14,17,15,15,13,13,17,15,15,14,14,16,16,16,15,15,17,15,15,14,13,17,15,15,14,14,17,15,15,13,13,13,11,11,11,11,16,14,14,12,12,16,14,14,13,13,16,15,14,12,12,17,14,14,12,12,17,15,15,13,13,17,14,14,14,14,17,15,15,13,13,17,14,15,14,13,17,15,15,13,13,16,15,15,13,13,16,14,14,14,14,17,15,15,13,13,16,14,14,13,13,16,15,15,13,13,17,15,15,13,13,17,14,14,14,14,17,15,15,12,12,17,15,15,13,13,17,15,15,12,12,16,15,15,13,13,17,14,14,13,14,17,15,15,12,12,17,14,14,13,13,17,15,15,12,12,14,14,14,8,8,14,14,14,18,18,14,15,15,19,19,14,14,14,19,19,14,15,14,18,19,15,15,15,18,19,15,16,16,20,20,15,15,15,19,20,15,16,16,19,20,15,15,15,19,20,15,15,16,19,19,15,16,16,20,20,15,15,15,20,19,15,16,16,20,19,15,15,15,19,20,15,15,15,19,19,15,16,16,20,19,15,15,15,19,19,15,16,15,20,19,15,15,15,19,19,15,15,15,19,20,15,16,16,20,20,15,15,15,19,19,15,15,15,20,20,15,15,15,19,19,14,12,12,9,9,14,14,14,18,18,14,14,14,19,20,14,14,14,18,18,14,14,14,18,19,15,15,15,19,20,15,14,14,19,19,15,15,15,19,19,15,14,15,19,19,15,15,15,18,20,15,15,15,19,19,15,14,14,19,19,15,15,15,20,19,15,15,14,20,20,15,15,15,19,19,15,15,15,19,19,15,14,14,19,19,15,15,15,19,19,15,14,14,19,20,14,15,15,19,19,15,15,15,19,19,15,14,14,20,19,15,15,15,19,19,15,14,14,20,19,15,15,15,19,19,13,12,12,13,13,17,17,16,11,11,16,16,16,12,12,17,17,16,11,11,17,16,16,11,11,17,17,17,13,13,17,16,16,13,13,18,17,17,12,12,17,16,16,13,13,18,17,17,12,12,18,17,17,13,13,18,16,17,13,13,17,17,17,12,12,18,17,17,13,13,18,17,17,12,12,17,16,17,12,12,17,16,16,13,13,17,16,16,11,11,17,16,16,12,12,17,17,17,11,11,17,17,17,12,12,18,16,16,13,13,18,17,17,12,11,17,16,16,12,12,18,17,17,11,11,13,14,14,9,9,16,14,14,13,13,16,15,15,14,14,17,14,14,12,12,16,14,14,13,13,17,15,15,14,14,17,16,16,15,16,18,15,15,14,14,17,15,15,14,14,17,15,15,14,14,18,15,15,14,14,16,16,16,15,16,18,15,15,14,14,17,16,15,14,14,18,15,15,14,14,17,15,15,14,14,17,16,16,15,15,18,14,15,13,13,17,15,15,14,14,18,15,15,13,13,17,15,15,14,14,17,16,15,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,13,11,11,10,10,16,14,14,12,12,16,14,14,12,12,17,14,15,11,11,17,14,14,11,11,17,15,15,13,13,17,14,14,14,13,17,15,15,13,13,16,15,15,13,13,17,15,15,13,13,17,15,15,13,13,17,14,14,14,14,17,15,15,13,13,17,14,15,13,13,16,15,15,13,13,17,15,15,13,13,17,14,14,13,13,17,15,15,12,12,16,14,14,12,12,17,15,15,12,12,17,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,17,15,15,12,12,13,15,14,8,8,14,14,14,19,19,14,15,15,18,19,14,14,14,18,19,14,15,14,19,19,15,16,15,19,19,15,16,16,19,20,15,15,15,19,19,15,16,16,19,19,15,16,16,19,19,15,15,15,19,19,15,16,16,20,20,15,15,15,19,19,15,15,15,19,19,15,15,15,19,19,15,15,15,19,19,15,16,16,20,19,15,15,15,19,19,15,15,15,19,19,15,15,15,19,19,15,16,15,19,19,15,16,16,21,19,15,15,15,20,20,15,15,15,20,21,15,15,15,19,20,14,12,12,8,8,14,14,14,19,19,14,13,13,19,19,14,14,14,19,19,14,13,14,19,19,15,15,15,20,20,15,14,14,20,19,15,15,15,19,20,15,14,14,19,20,15,15,15,20,19,15,15,15,19,20,15,14,14,20,20,15,15,15,20,19,15,14,14,19,19,15,15,15,19,19,15,15,15,20,19,15,14,14,21,19,15,15,15,20,21,15,14,14,21,19,15,15,15,19,19,15,15,15,20,20,15,14,14,19,21,15,15,15,19,19,15,14,14,19,20,15,15,15,19,19,13,12,12,13,13,17,16,16,11,11,17,16,15,12,12,18,16,16,11,11,17,16,16,11,11,18,17,17,13,13,18,16,16,13,13,17,17,17,12,13,18,17,16,13,13,18,17,17,13,13,17,17,17,13,13,17,16,16,13,13,18,16,17,12,12,17,16,16,13,12,17,17,17,12,12,18,17,17,13,12,18,16,16,13,13,18,17,17,12,12,17,16,16,12,12,17,17,17,11,11,17,16,16,12,12,17,16,16,13,13,17,16,16,11,11,17,16,16,12,12,17,17,17,11,11,13,14,14,9,9,16,14,14,13,13,16,15,15,14,14,17,14,14,12,12,16,14,14,13,13,17,15,15,14,14,17,15,16,15,15,17,15,15,14,14,17,15,16,14,15,18,15,15,14,14,17,15,15,14,14,16,16,16,15,15,18,15,15,13,14,17,15,15,14,14,18,15,15,14,14,17,15,15,14,14,17,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,17,15,15,13,13,17,15,15,14,14,18,15,15,13,13,13,11,11,10,10,16,14,14,12,12,16,14,14,13,13,17,14,14,11,11,17,14,14,12,12,17,15,15,14,14,17,14,14,14,14,17,15,15,13,13,17,15,14,13,13,16,15,15,13,13,16,15,15,13,13,17,14,14,14,14,17,15,15,13,13,17,14,14,13,13,16,15,15,13,13,16,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,16,15,15,12,12,17,15,15,13,13,17,14,14,13,13,17,15,15,12,12,17,14,14,12,12,16,15,15,12,12,14,14,14,8,8,14,14,14,18,18,14,15,15,19,18,14,14,14,18,18,14,14,14,18,19,15,16,15,19,19,15,17,16,20,20,15,15,15,19,19,15,16,16,19,19,15,15,15,19,19,15,16,15,18,19,15,16,16,20,20,15,15,15,19,19,15,16,16,19,20,15,15,15,19,19,15,15,16,19,19,15,16,16,20,20,15,15,15,19,19,15,15,15,19,20,15,15,15,19,19,15,15,15,19,19,15,16,16,20,20,15,15,15,19,20,15,16,16,20,20,15,15,15,19,19,13,12,12,8,8,14,14,14,19,20,14,14,14,19,19,14,14,14,18,19,14,14,14,19,20,15,15,15,19,20,15,14,14,21,20,15,15,15,20,20,15,15,14,19,19,15,15,15,19,19,15,15,15,19,19,15,14,14,19,20,15,15,15,19,20,15,14,14,19,19,15,15,15,19,19,15,15,15,19,19,16,14,14,19,19,15,15,15,20,20,15,14,14,21,19,15,15,15,19,19,15,15,15,19,20,16,14,14,19,20,15,15,15,19,19,15,14,14,19,19,15,15,15,20,19,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,6,7,7,7,8,8,7,8,8,10,11,11,9,8,8,7,9,9,11,12,12,9,8,8,6,7,7,9,11,11,10,11,11,10,11,11,13,13,13,11,12,12,10,11,11,13,14,14,12,12,12,6,6,6,8,6,6,8,6,6,9,7,7,12,10,10,10,6,6,9,7,7,12,10,10,11,7,6,7,8,8,12,10,10,12,10,10,11,10,10,15,13,13,13,10,10,12,11,11,15,13,13,14,11,11,8,7,7,12,11,11,12,11,11,11,11,11,14,14,14,13,12,12,12,11,11,16,15,15,14,12,12,0,10,10,0,11,11,0,12,12,0,11,11,0,14,14,0,11,11,0,11,11,0,15,15,0,11,11,7,8,8,13,10,10,12,10,10,12,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,8,7,7,12,11,11,13,11,11,12,11,11,15,14,14,14,12,12,13,12,12,15,14,14,15,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,12,12,0,15,14,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,0,8,8,0,8,8,0,10,10,0,9,9,0,10,10,0,10,10,0,9,9,0,10,10,0,7,7,0,7,7,0,7,7,0,8,8,0,8,8,0,8,8,0,9,9,0,8,8,0,8,8,0,7,7,0,8,8,0,8,8,0,10,10,0,9,9,0,9,9,0,10,10,0,9,9,0,10,10,0,8,8,0,11,11,0,11,11,0,12,12,0,11,11,0,12,12,0,12,12,0,12,12,0,12,12,0,8,8,0,11,11,0,11,11,0,13,12,0,12,12,0,13,12,0,13,13,0,12,12,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,11,11,0,11,11,0,13,12,0,12,12,0,12,12,0,12,12,0,11,11,0,12,12,0,8,8,0,12,12,0,12,12,0,13,13,0,12,12,0,13,13,0,13,13,0,12,13,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,0,7,7,0,8,8,0,9,9,0,12,12,0,8,8,0,9,9,0,12,12,0,8,8,0,6,6,0,11,11,0,11,11,0,12,12,0,14,14,0,11,11,0,12,12,0,14,14,0,11,11,0,6,6,0,6,5,0,7,6,0,7,7,0,10,10,0,6,6,0,7,7,0,10,10,0,7,7,0,7,7,0,10,10,0,11,11,0,11,11,0,14,14,0,10,10,0,12,12,0,14,14,0,12,12,0,6,6,0,11,11,0,11,11,0,12,12,0,14,14,0,11,11,0,12,12,0,15,15,0,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,11,11,0,11,11,0,12,12,0,15,15,0,12,12,0,11,11,0,15,15,0,11,11,0,6,6,0,11,11,0,12,12,0,12,12,0,15,15,0,11,11,0,12,12,0,14,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,2,2],"i8",L3,R.GLOBAL_BASE+489700),d3([1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,5,7,8,10,13,14,4,2,4,6,8,11,12,7,4,3,5,8,12,14,8,5,4,4,8,12,12,9,7,7,7,9,10,11,13,11,11,9,7,8,10,13,11,10,6,5,7,9,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,224,200,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,167,7,0,0,0,0,0,0,0,0,0,120,167,7,0,160,167,7,0,0,0,0,0,0,0,0,0,200,167,7,0,240,167,7,0,0,0,0,0,0,0,0,0,24,168,7,0,64,168,7,0,0,0,0,0,0,0,0,0,104,168,7,0,144,168,7,0,64,168,7,0,0,0,0,0,184,168,7,0,112,164,7,0,152,164,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,24,167,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,16,167,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,163,7,0,32,164,7,0,0,0,0,0,0,0,0,0,72,164,7,0,112,164,7,0,152,164,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,40,166,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,216,166,7,0,0,0,0,0,2,0,0,0,25,0,0,0,240,165,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,16,166,7,0,0,0,0,0,2,0,0,0,9,0,0,0,208,165,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,224,165,7,0,0,0,0,0,1,0,0,0,25,0,0,0,72,165,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,104,165,7,0,0,0,0,0,1,0,0,0,25,0,0,0,192,164,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,224,164,7,0,0,0,0,0,3,4,4,5,4,5,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,12,14,14,14,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,6,6,5,5,5,7,5,5,5,5,6,7,7,6,7,7,7,6,7,7,7,7,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,3,4,7,7,8,8,9,9,9,10,10,10,5,6,5,8,7,9,8,9,9,10,9,11,10,5,5,7,7,8,8,9,9,9,9,10,10,11,8,9,8,10,9,10,9,10,9,11,10,11,10,8,8,9,9,10,9,10,9,11,10,11,10,11,10,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,12,11,11,11,11,11,11,10,12,12,12,12,12,12,12,11,12,12,12,11,11,11,12,12,12,12,12,12,12,11,12,11,12,11,11,13,12,12,12,13,12,12,12,12,11,12,11,11,13,13,13,12,12,12,12,12,12,11,11,11,10,13,13,13,12,13,12,13,11,13,10,12,11,11,13,13,12,13,12,12,12,12,11,12,11,11,11,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,2,3,6,7,10,14,16,3,2,5,7,11,14,17,6,5,5,7,10,12,14,7,7,6,6,7,9,13,10,11,9,6,6,9,11,15,15,13,10,9,10,12,18,18,16,14,12,13,16,0,0,0,0,0,0,0,5,0,0,0,243,0,0,0,216,199,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,208,200,7,0,0,0,0,0,5,0,0,0,243,0,0,0,208,198,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,200,199,7,0,0,0,0,0,5,0,0,0,243,0,0,0,200,197,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,192,198,7,0,0,0,0,0,5,0,0,0,243,0,0,0,192,196,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,184,197,7,0,0,0,0,0,5,0,0,0,53,12,0,0,112,184,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,168,196,7,0,0,0,0,0,5,0,0,0,53,12,0,0,32,172,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,88,184,7,0,0,0,0,0,1,0,0,0,7,0,0,0,248,171,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,0,172,7,0,0,0,0,0,5,0,0,0,243,0,0,0,240,170,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,232,171,7,0,0,0,0,0,5,0,0,0,243,0,0,0,232,169,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,224,170,7,0,0,0,0,0,5,0,0,0,243,0,0,0,224,168,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,216,169,7,0,0,0,0,0,1,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,7,7,7,8,8,7,7,7,7,8,8,8,8,9,8,7,7,8,8,8,9,9,9,9,7,7,6,6,6,9,7,7,9,7,7,9,8,8,10,8,8,10,8,8,10,8,8,10,8,8,10,8,8,7,6,6,9,6,6,9,6,6,9,7,7,10,8,8,9,6,6,9,7,7,10,8,8,9,7,7,7,8,8,11,9,9,11,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,10,9,12,8,8,8,7,7,10,9,9,11,9,9,11,9,9,11,11,10,11,9,9,11,10,9,11,10,11,11,9,9,10,8,8,11,9,9,11,9,9,11,9,9,11,10,10,11,9,9,11,9,9,11,10,10,11,9,9,9,8,8,12,9,9,12,9,9,11,9,9,12,9,9,12,8,8,12,9,9,12,9,9,12,8,8,9,7,7,11,9,10,11,10,9,11,9,9,11,11,11,11,9,9,11,10,10,11,11,11,11,9,9,10,9,9,11,9,9,11,10,10,11,10,9,11,10,10,11,9,9,11,10,10,11,10,11,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,6,6,6,8,8,7,8,8,7,9,8,10,11,11,9,8,8,7,8,8,11,11,11,9,8,8,6,7,7,10,10,10,10,10,10,10,10,10,14,13,13,12,11,11,10,10,10,14,14,13,13,11,11,6,6,6,8,5,5,8,7,7,8,7,7,11,9,9,9,7,7,8,7,7,12,10,10,10,7,7,7,8,8,12,11,11,12,10,10,11,10,10,14,13,13,13,10,10,11,10,11,16,14,14,13,10,10,7,8,7,12,12,12,12,11,11,12,11,11,16,14,15,13,12,12,11,11,11,17,15,14,14,13,13,10,9,9,13,11,11,13,11,11,12,11,11,16,14,13,14,11,11,12,11,11,16,15,14,14,11,11,7,8,8,12,11,11,12,10,10,12,10,10,16,14,13,13,11,11,12,10,10,16,14,14,13,10,10,8,8,8,12,12,12,12,11,11,12,11,11,16,14,15,14,12,12,12,11,11,16,15,15,14,12,12,10,10,10,13,11,11,13,11,11,12,12,12,16,14,14,14,11,11,12,11,11,17,14,15,14,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,6,6,14,14,6,8,8,14,14,7,7,7,14,14,0,13,13,15,16,0,13,13,15,15,7,8,8,15,15,9,10,10,16,16,9,8,8,14,15,0,13,13,17,17,0,13,13,16,16,8,8,8,15,15,12,11,11,16,16,9,8,8,14,14,0,13,13,17,17,0,13,13,15,15,0,14,14,16,16,0,0,0,18,19,0,12,12,16,15,0,16,16,0,20,0,14,14,16,16,0,14,14,17,17,0,0,0,19,19,0,12,12,15,15,0,18,17,21,21,0,14,14,16,16,5,7,7,12,13,9,10,9,14,14,11,10,10,14,14,0,0,0,18,17,0,20,21,18,18,9,10,10,14,14,12,12,12,17,16,12,10,10,14,14,0,20,20,18,17,0,21,21,17,17,11,10,10,14,14,15,13,13,18,18,13,11,11,14,14,0,20,0,18,18,0,20,21,18,17,0,21,0,18,19,0,0,0,0,21,0,21,20,16,17,0,0,0,21,21,0,0,0,20,18,0,20,0,17,18,0,0,0,0,0,0,0,20,16,17,0,0,0,20,0,0,0,0,18,18,6,6,6,13,13,8,5,5,11,11,9,6,6,13,13,0,9,9,12,12,0,10,10,14,14,9,7,7,13,13,12,9,9,13,13,10,6,6,13,13,0,10,10,14,14,0,10,10,13,13,9,7,7,13,13,13,10,10,13,13,11,6,6,13,13,0,10,10,15,15,0,10,10,13,13,0,12,11,15,15,0,20,19,17,16,0,9,9,13,13,0,13,13,20,19,0,11,11,13,13,0,11,11,15,15,0,20,19,17,17,0,10,10,13,13,0,14,15,0,21,0,12,12,13,13,0,10,10,12,12,0,11,11,15,15,0,11,11,15,15,0,15,15,20,20,0,16,16,0,0,0,11,11,15,15,0,14,14,17,17,0,11,11,15,15,0,15,15,20,21,0,16,16,21,21,0,12,12,15,15,0,15,15,18,20,0,11,11,16,15,0,15,15,21,21,0,16,16,0,21,0,16,16,0,0,0,0,0,0,0,0,14,14,21,21,0,17,18,0,0,0,16,17,20,0,0,16,16,0,0,0,0,0,0,0,0,15,15,20,20,0,19,18,0,21,0,18,17,0,0,0,10,10,11,11,0,10,10,10,10,0,11,11,12,12,0,11,11,9,9,0,13,13,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,12,12,13,13,0,12,12,12,12,0,11,11,12,12,0,13,13,12,12,0,10,10,12,12,0,13,13,13,13,0,12,12,12,12,0,14,13,13,13,0,19,21,15,15,0,12,11,12,12,0,16,15,19,19,0,13,13,11,11,0,13,13,13,13,0,0,21,15,16,0,12,12,12,12,0,16,16,19,21,0,13,13,12,12,7,7,7,16,16,11,9,9,16,16,12,9,9,16,16,0,13,13,16,16,0,14,14,17,16,11,9,9,16,16,14,12,11,17,17,13,8,9,15,15,0,13,13,19,19,0,13,13,16,15,12,10,10,17,17,15,12,12,19,18,14,9,9,17,16,0,14,14,18,0,0,14,13,16,16,0,14,15,18,17,0,21,0,19,21,0,12,12,16,16,0,16,16,0,0,0,14,14,16,16,0,14,14,18,18,0,0,21,20,0,0,13,13,16,17,0,18,18,0,0,0,15,14,17,16,8,7,7,14,14,11,10,10,15,15,13,10,10,15,15,0,21,20,19,19,0,21,0,17,18,11,10,10,15,16,14,12,12,18,18,14,11,11,15,14,0,21,20,18,19,0,0,21,18,18,12,11,11,16,16,16,14,14,18,20,14,11,11,16,15,0,20,20,19,19,0,0,20,18,18,0,21,0,18,19,0,0,0,0,0,0,20,20,17,18,0,0,0,20,20,0,0,0,19,19,0,0,0,20,18,0,0,0,0,0,0,0,21,18,18,0,21,21,0,21,0,0,0,19,20,11,9,9,14,14,13,10,10,14,14,13,11,11,15,15,0,13,13,13,13,0,14,14,16,16,13,11,11,15,15,16,12,12,15,15,14,10,10,14,14,0,14,14,16,16,0,14,14,15,15,13,10,10,15,15,17,13,14,15,16,15,10,10,15,15,0,14,14,17,16,0,14,14,15,15,0,15,15,17,17,0,0,21,18,18,0,13,13,15,15,0,16,16,21,20,0,14,14,15,14,0,15,14,16,17,0,0,20,20,19,0,13,13,15,15,0,19,18,0,0,0,15,15,15,15,0,11,11,14,14,0,12,12,16,16,0,12,12,16,16,0,15,16,21,21,0,16,17,21,0,0,12,12,17,16,0,14,14,18,19,0,11,11,16,16,0,15,15,20,21,0,16,16,21,0,0,12,12,17,16,0,15,15,19,19,0,12,12,16,17,0,16,15,0,0,0,16,16,0,0,0,17,17,0,21,0,0,0,0,0,0,14,15,20,0,0,17,17,0,0,0,17,17,0,0,0,17,16,0,0,0,0,0,0,0,0,15,15,0,0,0,18,18,0,0,0,18,17,0,0,0,11,11,14,14,0,12,12,15,15,0,12,12,15,15,0,13,13,14,14,0,14,14,17,17,0,12,12,16,16,0,14,14,16,16,0,11,11,15,15,0,13,13,16,17,0,13,13,16,16,0,12,12,15,15,0,14,14,17,16,0,11,11,15,15,0,14,14,17,17,0,13,13,16,16,0,15,15,17,18,0,21,20,20,21,0,12,12,15,15,0,16,16,20,21,0,14,14,15,15,0,14,14,17,17,0,0,0,18,19,0,12,13,15,15,0,18,17,21,0,0,14,15,15,15,8,8,8,16,16,12,10,10,16,16,13,9,9,16,16,0,14,14,18,17,0,14,14,16,17,12,10,10,18,17,14,12,11,18,18,14,9,9,16,16,0,13,13,18,18,0,13,13,17,16,12,9,9,16,17,17,13,13,17,17,14,9,9,15,15,0,14,14,20,19,0,13,13,16,16,0,15,15,19,18,0,0,0,20,19,0,12,13,17,17,0,16,16,20,0,0,14,14,16,17,0,14,14,19,18,0,0,0,20,20,0,13,13,16,16,0,18,17,0,0,0,15,15,16,16,9,7,7,14,14,12,10,10,15,15,13,10,10,15,15,0,21,0,18,19,0,20,21,19,18,12,10,10,16,15,15,13,13,18,18,14,11,11,15,15,0,0,0,19,18,0,0,21,18,18,13,11,11,15,15,16,14,14,17,19,15,11,11,15,15,0,21,21,20,18,0,0,21,18,18,0,0,21,21,19,0,0,0,0,0,0,19,20,18,17,0,0,0,21,21,0,21,0,20,18,0,0,21,19,19,0,0,0,0,0,0,20,21,17,17,0,0,0,0,0,0,21,0,18,20,0,10,10,14,14,0,11,11,15,15,0,11,11,15,15,0,14,14,15,15,0,15,15,16,16,0,11,12,16,16,0,13,13,16,16,0,11,11,15,15,0,14,14,17,17,0,14,14,15,15,0,11,11,16,15,0,14,14,15,15,0,11,11,15,15,0,15,15,17,17,0,14,14,15,15,0,16,16,18,18,0,0,0,20,19,0,14,13,16,15,0,17,17,21,0,0,15,15,15,15,0,16,15,17,16,0,20,0,20,18,0,13,14,15,15,0,19,18,0,21,0,15,15,15,15,0,11,11,14,14,0,12,12,16,16,0,12,12,16,16,0,16,15,20,21,0,17,16,0,0,0,12,12,16,16,0,14,14,18,18,0,11,11,16,16,0,15,15,21,20,0,16,16,0,0,0,12,12,16,17,0,15,14,19,19,0,11,12,16,16,0,15,15,21,0,0,16,16,0,0,0,16,17,0,0,0,0,0,0,0,0,15,15,21,0,0,17,17,0,0,0,17,17,0,0,0,17,16,0,0,0,0,0,0,0,0,15,15,0,20,0,19,20,0,0,0,17,17,0,0,0,12,12,15,15,0,12,12,15,15,0,12,12,16,16,0,13,13,15,15,0,15,15,17,17,0,13,13,17,16,0,14,14,17,17,0,11,11,16,16,0,14,14,17,17,0,13,13,16,16,0,12,12,16,16,0,15,15,16,17,0,11,11,15,16,0,14,14,17,17,0,13,14,16,16,0,15,15,18,18,0,21,20,20,19,0,13,13,16,17,0,16,16,0,0,0,14,14,16,16,0,15,15,18,18,0,0,0,20,19,0,13,13,16,16,0,17,17,0,0,0,14,14,16,16,0,11,11,16,16,0,13,13,18,17,0,13,13,17,17,0,16,16,17,17,0,16,16,17,18,0,12,12,17,17,0,15,15,18,18,0,12,12,16,16,0,16,16,19,19,0,15,15,16,17,0,12,12,17,17,0,17,17,18,18,0,12,12,17,17,0,16,16,19,19,0,15,16,17,17,0,16,16,18,17,0,0,0,21,21,0,13,13,16,16,0,17,17,0,20,0,15,15,16,17,0,16,16,19,18,0,0,21,20,21,0,14,14,17,16,0,20,0,0,0,0,15,16,16,17,0,9,9,14,14,0,13,13,16,16,0,14,14,15,15,0,0,20,19,19,0,0,0,19,19,0,12,12,15,15,0,15,16,19,18,0,14,14,15,15,0,21,0,18,18,0,20,0,17,18,0,13,13,16,16,0,17,17,17,19,0,14,14,16,15,0,21,20,20,19,0,0,0,19,19,0,0,0,19,18,0,0,0,0,0,0,20,20,17,18,0,0,0,21,21,0,0,0,18,18,0,21,0,18,19,0,0,0,0,0,0,20,21,18,18,0,0,0,20,21,0,0,0,19,19,0,18,18,15,15,0,20,21,17,17,0,19,21,17,17,0,0,0,17,18,0,0,0,20,19,0,19,19,17,17,0,0,0,18,18,0,19,20,16,17,0,0,21,20,20,0,19,20,19,18,0,19,20,16,16,0,0,0,18,19,0,19,20,17,17,0,0,21,0,20,0,21,21,17,19,0,20,0,19,20,0,0,0,20,0,0,19,18,17,16,0,0,0,0,0,0,0,20,17,17,0,20,21,18,20,0,0,0,0,21,0,19,20,17,17,0,0,0,0,0,0,20,21,17,17,0,11,11,14,14,0,13,13,16,17,0,13,13,16,16,0,17,17,0,21,0,18,17,21,0,0,13,13,16,16,0,15,15,18,18,0,12,12,16,16,0,17,16,21,0,0,17,17,0,0,0,12,12,17,17,0,17,17,19,21,0,13,12,16,16,0,17,17,0,0,0,17,17,0,0,0,18,17,0,21,0,0,0,0,0,0,15,15,20,0,0,20,18,0,0,0,17,18,0,0,0,16,17,0,0,0,0,0,0,0,0,15,15,0,0,0,19,19,0,0,0,18,18,0,0,0,14,14,18,18,0,16,16,0,21,0,16,16,21,21,0,17,17,0,20,0,17,17,20,0,0,16,15,0,0,0,20,20,0,0,0,15,15,20,20,0,17,17,21,0,0,17,18,20,20,0,15,15,20,20,0,18,18,0,0,0,15,15,19,20,0,17,18,0,0,0,17,17,20,20,0,18,17,21,0,0,0,0,0,21,0,15,15,20,20,0,19,19,0,0,0,17,17,21,0,0,17,17,0,0,0,0,0,21,0,0,15,15,19,19,0,20,21,0,0,0,18,17,21,21,0,12,12,16,16,0,14,14,17,17,0,13,13,17,18,0,16,16,18,17,0,16,16,18,18,0,13,13,18,18,0,15,16,19,18,0,13,13,16,16,0,16,16,20,18,0,16,16,17,17,0,12,13,17,17,0,17,16,18,18,0,12,12,16,16,0,17,16,20,19,0,16,16,16,16,0,16,17,18,20,0,0,0,21,20,0,14,14,17,16,0,19,18,0,20,0,16,16,17,16,0,16,16,17,18,0,0,21,21,21,0,14,14,16,16,0,20,20,21,0,0,16,16,16,16,0,10,10,14,14,0,14,14,15,16,0,14,14,15,15,0,0,21,18,18,0,0,21,18,19,0,13,13,16,16,0,16,16,18,18,0,14,14,15,15,0,21,0,18,18,0,21,0,18,18,0,13,13,16,16,0,17,17,19,20,0,14,14,15,15,0,0,0,18,20,0,0,21,18,18,0,0,21,19,18,0,0,0,0,0,0,20,21,18,17,0,0,0,21,21,0,0,0,19,19,0,21,0,18,19,0,0,0,0,0,0,21,20,17,17,0,0,21,20,0,0,0,0,19,19,0,19,20,15,16,0,0,20,18,17,0,20,21,17,18,0,21,0,18,18,0,0,0,19,19,0,20,20,17,18,0,0,0,18,19,0,20,20,18,17,0,0,0,0,20,0,0,21,17,18,0,20,21,17,17,0,0,0,18,18,0,19,19,17,17,0,0,0,21,21,0,20,20,17,17,0,0,0,21,19,0,0,0,20,19,0,21,20,17,18,0,0,0,0,0,0,0,20,18,17,0,21,20,18,18,0,0,0,20,21,0,20,20,17,17,0,0,0,0,0,0,20,0,17,17,0,11,11,13,14,0,13,13,16,16,0,13,13,16,16,0,17,17,0,0,0,17,18,0,0,0,13,13,16,16,0,15,16,18,18,0,13,13,16,17,0,16,17,20,0,0,17,18,20,0,0,13,13,17,17,0,16,16,20,21,0,13,13,16,16,0,17,17,21,0,0,17,18,0,0,0,17,18,0,21,0,0,0,0,0,0,15,15,20,0,0,19,19,0,0,0,17,17,0,0,0,18,17,21,20,0,0,0,0,0,0,16,16,20,21,0,21,20,0,21,0,19,21,0,0,0,15,15,0,0,0,16,17,0,19,0,16,16,0,0,0,17,17,0,0,0,19,18,0,0,0,16,16,20,20,0,20,18,21,0,0,15,15,21,21,0,18,18,0,0,0,18,19,0,0,0,16,15,0,21,0,20,19,0,0,0,16,16,0,0,0,20,18,0,21,0,17,18,21,0,0,18,19,0,0,0,0,0,0,0,0,16,16,20,20,0,19,20,0,0,0,17,17,0,0,0,18,17,20,21,0,0,0,0,0,0,16,16,0,20,0,20,22,0,0,0,18,18,0,22,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,4,4,8,8,10,12,12,11,11,9,11,11,12,13,11,12,12,11,11,11,12,12,12,12,10,13,12,13,13,11,12,12,13,13,11,12,12,13,13,11,12,13,13,13,11,13,13,13,13,10,13,13,12,13,11,12,12,14,14,11,13,12,12,12,11,12,12,13,13,11,13,13,12,12,11,13,13,13,13,11,12,12,13,13,11,13,13,12,12,11,12,12,13,13,11,13,13,12,12,11,13,13,13,13,11,12,12,14,14,11,13,13,12,12,11,12,12,13,13,11,13,13,12,12,11,10,10,10,10,12,10,10,11,11,11,8,8,11,11,13,10,10,10,10,12,10,10,10,10,13,11,11,11,11,13,10,10,11,11,13,11,11,12,12,13,11,11,11,11,13,11,11,12,12,13,11,11,12,12,13,10,10,11,11,13,11,11,11,11,13,11,10,11,11,13,11,11,11,11,13,11,11,11,11,13,10,10,11,11,13,11,11,11,11,12,10,11,11,11,13,11,11,11,11,13,11,11,11,11,13,10,10,11,11,13,11,11,11,11,13,11,11,11,11,13,11,11,11,11,11,10,10,10,10,12,10,10,9,9,12,12,12,11,11,13,12,12,9,9,13,12,12,10,10,12,12,12,12,12,13,13,13,14,14,13,12,12,11,11,13,13,13,12,12,13,12,12,11,11,13,12,13,11,11,13,13,13,14,14,13,12,12,10,10,13,13,13,11,11,13,12,12,10,10,13,13,13,11,11,13,13,13,14,14,13,12,12,10,10,13,13,13,11,11,13,12,13,10,10,13,13,13,11,11,13,13,13,14,14,13,12,12,10,10,13,13,13,11,11,13,13,12,10,10,14,12,12,8,8,14,12,12,9,9,14,11,11,9,9,14,12,12,8,8,14,11,11,7,7,14,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,12,12,9,9,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,14,12,12,9,9,14,13,13,9,9,14,13,13,9,9,15,12,12,9,9,15,13,13,9,9,14,12,12,9,9,14,13,13,9,9,14,13,13,9,9,15,12,12,9,9,14,13,13,9,9,14,12,12,9,9,14,13,13,9,9,13,12,12,8,8,13,13,13,8,8,14,13,13,9,9,13,13,13,7,7,14,13,13,8,8,14,14,14,10,10,14,14,14,11,11,14,14,14,9,9,14,14,14,10,10,14,14,14,9,9,14,14,14,10,9,15,14,14,11,11,14,14,14,9,9,14,14,14,10,10,14,14,14,9,9,14,14,14,9,9,15,14,14,11,11,14,14,14,8,8,14,14,14,9,9,14,14,14,8,8,14,14,14,9,9,15,14,14,11,11,14,14,14,8,8,14,14,14,9,9,14,14,14,8,8,12,12,12,13,13,16,15,15,11,11,16,15,16,12,12,17,16,16,11,11,17,15,15,12,11,16,16,16,12,13,16,15,15,13,13,16,16,16,12,12,16,16,15,13,13,16,16,16,12,12,16,16,16,13,13,17,16,16,14,14,17,17,16,12,12,17,16,16,13,13,17,17,16,12,13,16,16,17,13,12,17,16,16,14,13,17,16,16,12,12,17,16,16,12,12,17,16,17,12,12,17,17,17,13,13,16,16,16,13,14,17,17,16,12,12,16,16,16,13,13,17,17,17,12,12,13,14,14,10,10,16,14,14,12,12,16,15,15,14,14,16,14,14,12,12,15,14,14,13,13,17,15,15,14,13,16,16,15,15,15,16,15,15,14,14,16,15,15,14,14,17,15,15,14,14,16,15,15,14,14,16,16,15,15,15,17,15,15,13,13,16,15,15,14,14,17,15,15,13,13,17,15,15,14,14,16,15,15,15,15,16,14,14,13,13,16,15,15,14,14,16,14,14,13,13,17,15,15,14,14,16,16,15,15,15,17,14,14,13,13,16,15,15,14,14,17,14,14,13,13,13,11,11,10,10,16,14,14,13,13,15,14,14,13,13,16,14,14,12,12,16,14,14,12,12,15,15,15,14,14,16,14,14,14,14,16,15,14,14,14,16,14,14,14,14,16,15,15,14,13,16,15,15,14,14,16,14,14,14,14,17,15,15,14,14,16,14,14,14,14,16,15,15,13,14,16,15,15,14,14,16,14,14,14,14,16,15,15,13,13,16,14,14,13,13,16,15,15,13,13,16,15,15,14,14,16,14,14,14,14,17,15,15,13,13,16,15,14,13,13,17,15,15,13,13,14,14,14,9,9,14,14,14,17,17,14,15,15,18,18,14,14,14,18,19,14,14,14,18,18,15,15,15,19,18,15,16,15,18,20,15,15,15,18,19,15,15,15,19,19,15,15,15,18,20,15,15,15,18,19,15,15,16,20,18,15,15,15,18,18,15,15,15,19,19,15,15,15,18,19,15,15,15,18,19,15,15,15,19,19,14,15,14,19,19,15,15,15,20,19,15,14,14,19,18,14,15,15,18,19,15,15,16,20,20,14,14,14,18,19,15,15,15,19,18,14,14,14,18,18,14,12,12,9,9,13,14,14,18,18,14,13,13,18,19,14,14,14,18,18,14,14,14,18,18,15,15,15,19,19,15,14,14,19,18,14,15,15,19,18,15,14,14,18,18,15,15,15,19,18,14,15,15,19,19,15,14,14,19,18,14,15,15,19,18,15,14,14,19,18,14,15,15,19,18,15,15,15,21,18,15,14,14,19,18,14,15,15,18,19,14,15,14,20,19,14,15,15,18,19,14,15,15,19,19,15,14,14,19,20,14,15,15,18,18,14,14,14,19,19,14,15,15,19,18,12,12,12,13,13,16,15,15,11,11,16,15,15,12,12,16,16,16,11,11,16,15,15,11,11,16,16,16,13,13,17,16,16,13,13,17,17,17,12,12,16,16,16,13,13,17,16,17,13,12,15,16,16,12,12,16,15,15,13,13,17,16,16,12,12,16,16,15,12,12,16,16,16,12,12,17,17,16,13,12,16,16,16,13,13,17,16,16,12,12,17,16,16,12,12,17,17,16,12,12,16,17,16,12,12,17,15,15,13,13,17,16,16,12,12,16,16,16,12,12,16,16,16,12,12,13,13,13,9,9,15,14,14,13,13,16,15,14,14,14,16,14,14,13,13,15,14,14,13,13,17,15,15,14,14,16,15,15,15,15,16,15,15,14,14,16,15,15,15,15,17,15,15,14,14,16,15,15,14,14,16,15,15,15,15,17,14,15,14,14,16,15,15,14,14,17,15,15,13,14,17,15,15,14,14,16,15,15,15,15,17,14,14,13,13,16,15,15,14,14,17,14,14,13,13,17,15,15,14,14,16,15,16,15,15,17,14,14,13,13,16,15,15,14,14,18,14,14,13,13,13,11,11,11,11,15,14,14,12,12,15,14,14,13,13,16,14,14,12,12,16,13,14,12,12,16,15,15,13,13,16,14,14,14,14,16,15,15,13,13,16,14,14,13,13,16,14,15,13,13,15,15,15,13,13,16,14,14,14,13,16,14,14,13,13,16,14,14,13,13,16,15,15,13,13,16,15,15,13,13,16,14,14,14,14,16,15,15,12,12,16,14,14,13,13,16,15,15,12,12,16,15,15,13,13,16,14,14,14,14,17,15,14,12,12,16,14,14,13,13,16,15,15,12,12,14,14,14,8,8,14,14,14,17,18,14,15,15,17,18,14,14,14,17,18,14,14,14,18,18,14,15,15,18,18,14,16,15,19,19,15,15,15,18,19,15,16,15,20,19,15,15,15,18,18,14,15,15,18,19,15,16,16,20,19,15,15,15,19,17,14,15,15,20,18,14,15,15,18,18,14,15,15,18,19,14,15,15,19,20,14,14,14,18,18,14,15,15,18,19,14,14,14,18,19,14,15,15,19,18,15,16,16,20,21,14,14,15,19,19,14,15,15,19,19,14,14,14,19,18,13,12,12,9,9,13,14,14,18,19,14,14,14,18,19,14,14,14,18,18,14,14,14,18,18,14,15,15,19,19,15,14,14,19,18,15,15,15,19,19,15,14,14,19,20,14,15,15,18,19,14,15,15,20,18,15,14,14,18,18,14,15,15,18,18,14,14,14,19,19,14,15,15,18,18,14,15,15,19,18,15,14,14,19,19,14,15,15,19,18,15,14,14,19,18,14,14,15,18,19,14,15,15,19,18,15,14,14,18,19,14,15,14,19,20,14,14,14,19,19,14,15,15,19,19,12,12,12,13,13,16,16,16,11,11,16,16,16,12,12,17,16,16,11,11,17,15,15,11,11,16,16,16,13,13,17,15,16,13,13,16,16,16,12,12,17,16,16,13,13,17,17,16,12,12,17,17,16,13,13,17,16,16,13,13,17,17,17,12,12,17,16,16,13,13,17,17,17,12,12,16,16,16,12,12,17,15,15,13,13,17,16,16,11,11,17,16,16,12,12,16,16,16,11,11,16,17,16,12,12,17,16,16,13,13,17,17,16,12,12,17,17,16,12,12,17,16,16,11,11,13,14,14,9,9,16,14,14,13,13,16,14,15,14,14,16,14,14,12,12,16,14,14,13,13,17,15,15,14,14,16,15,15,15,15,17,15,15,14,14,16,15,15,14,14,17,15,15,14,14,16,15,15,14,14,16,15,15,15,16,17,14,15,14,14,16,15,15,14,14,17,15,15,14,14,16,15,15,14,14,16,15,15,15,15,17,14,14,13,13,16,15,15,14,14,16,14,14,13,13,17,15,15,14,14,16,16,15,15,15,17,14,14,13,13,16,15,15,14,14,17,14,14,13,13,13,11,11,10,10,16,14,14,12,12,15,13,13,13,12,16,14,14,11,11,16,14,14,11,11,16,14,15,13,14,16,14,14,13,13,16,15,15,13,13,16,14,14,13,13,16,15,15,13,13,16,15,15,13,13,17,14,14,14,14,17,15,15,13,13,16,14,15,13,13,16,15,15,13,13,16,15,15,13,13,16,14,14,13,13,17,15,15,12,12,16,14,14,12,12,16,15,15,12,12,16,15,15,13,13,16,14,14,13,13,17,15,15,12,12,17,14,14,12,12,16,15,15,12,12,13,14,14,8,8,13,14,14,18,18,13,15,15,17,18,14,14,14,18,19,14,14,14,19,18,14,15,15,19,18,15,15,16,21,18,15,15,15,19,19,14,16,16,19,19,14,15,15,18,19,14,15,15,19,20,14,16,16,19,18,15,15,15,18,19,14,15,15,19,18,15,15,15,18,18,15,15,15,20,18,15,16,16,20,19,14,15,14,18,19,14,15,16,19,20,14,15,15,19,18,15,15,15,19,18,15,16,16,20,19,15,14,14,18,18,14,15,15,19,19,14,15,15,18,18,13,12,12,8,8,13,14,14,19,18,14,13,13,20,18,14,14,14,19,18,14,13,13,18,19,14,15,15,20,19,15,14,14,19,19,14,15,15,19,18,15,14,14,20,20,15,15,15,19,18,14,15,15,19,18,15,14,14,19,18,14,15,15,20,19,14,14,14,20,19,14,15,15,19,18,15,15,15,18,18,15,14,14,18,18,14,15,15,19,19,14,14,14,19,19,14,15,15,19,19,15,15,15,19,18,15,14,14,20,19,15,15,15,19,19,14,14,14,20,19,14,15,15,20,20,12,12,12,13,13,17,16,16,11,11,16,16,15,12,12,17,16,16,11,11,17,15,15,11,11,17,17,17,13,13,17,16,16,13,13,17,17,17,12,12,17,16,16,13,13,17,17,16,12,13,16,17,16,13,13,17,16,15,13,13,17,16,16,12,12,17,16,16,12,13,17,16,17,12,12,17,17,17,12,12,17,16,15,13,13,17,16,16,12,12,17,16,16,12,12,17,16,16,11,11,16,16,16,12,12,17,15,15,13,13,17,16,15,11,11,16,16,16,12,12,17,16,16,11,11,13,14,14,9,9,16,14,14,13,13,16,14,15,14,14,16,14,14,12,12,16,14,14,13,13,17,15,15,14,15,16,15,15,15,15,17,15,15,14,14,16,15,15,15,14,16,15,15,14,14,16,15,15,14,14,16,15,16,15,15,17,15,14,14,14,16,15,15,14,14,17,15,15,13,13,16,15,15,14,14,16,16,16,15,15,17,14,14,13,13,16,15,15,14,14,18,14,15,13,13,16,15,15,14,14,16,16,15,15,15,16,14,14,13,13,16,15,15,14,14,17,14,15,13,13,13,11,11,10,10,15,14,14,12,12,15,14,14,13,13,16,14,14,12,12,16,13,14,12,12,16,14,15,14,13,16,14,14,14,14,16,15,15,13,13,16,14,14,13,13,16,15,15,13,13,15,15,15,13,13,16,14,14,14,14,17,15,15,13,13,16,14,14,13,13,16,15,15,13,13,16,15,15,13,13,16,14,14,13,13,17,15,15,12,12,16,14,14,12,12,16,14,15,12,12,16,15,15,13,13,16,14,14,13,13,17,15,15,12,12,16,14,14,12,12,16,15,15,12,12,14,14,14,8,8,14,14,14,17,17,14,15,15,18,18,14,14,14,18,17,14,14,14,18,18,14,15,15,18,20,15,16,15,19,18,15,15,15,19,18,15,15,16,19,18,15,15,15,18,18,14,15,15,18,18,15,16,16,18,19,15,15,15,18,18,15,15,15,19,20,15,15,15,18,18,15,15,15,18,18,15,16,16,19,19,15,14,15,19,19,15,15,15,19,20,14,14,15,18,18,15,15,15,19,19,15,16,16,19,19,15,15,14,18,19,15,15,15,20,20,15,15,14,18,18,13,12,12,8,8,13,14,14,18,18,14,14,14,18,18,14,14,14,18,20,14,14,14,18,18,14,15,15,19,18,15,14,14,18,19,15,15,15,18,19,15,14,14,18,19,15,15,15,18,18,14,15,14,18,19,15,14,14,21,19,15,15,15,19,18,14,14,14,19,18,14,15,15,19,18,15,15,15,20,19,15,14,14,20,18,14,15,15,18,19,14,14,14,19,18,14,15,15,18,19,15,15,15,18,19,15,14,14,19,19,15,15,15,19,19,14,14,14,19,20,14,15,15,18,19,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,7,8,8,7,8,8,7,9,9,10,12,11,9,8,8,7,9,9,11,12,12,9,9,9,6,7,7,10,11,11,10,11,11,10,11,11,13,13,14,12,12,12,11,11,11,14,14,14,12,12,12,6,5,5,9,6,5,9,6,6,9,7,7,12,10,10,11,6,6,10,7,7,13,10,10,12,7,7,7,8,8,12,10,10,12,10,10,11,10,10,15,13,13,13,9,9,12,11,11,16,13,13,15,11,11,8,7,7,12,12,12,12,11,11,12,11,11,14,14,14,14,12,12,12,12,12,16,15,15,14,12,12,0,10,10,0,12,12,0,12,12,0,11,11,0,14,14,0,11,11,0,12,12,0,15,15,0,11,11,8,8,8,13,11,11,13,10,10,13,11,11,15,13,13,14,11,11,12,10,10,16,14,14,14,10,10,9,7,7,13,11,11,13,11,11,12,11,11,16,14,14,14,12,12,13,12,12,15,14,14,15,13,12,0,11,11,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,13,12,0,14,15,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,0,9,9,0,9,9,0,10,10,0,9,9,0,10,10,0,10,10,0,9,9,0,10,10,0,7,7,0,7,7,0,6,6,0,8,8,0,7,7,0,8,8,0,8,9,0,8,8,0,8,8,0,7,7,0,9,9,0,8,8,0,10,10,0,9,9,0,10,10,0,10,10,0,9,9,0,10,10,0,9,9,0,11,11,0,11,11,0,12,12,0,11,11,0,12,12,0,13,13,0,12,12,0,13,12,0,8,8,0,12,12,0,12,12,0,13,13,0,12,12,0,13,13,0,13,13,0,13,13,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,11,11,0,12,12,0,13,13,0,12,12,0,13,13,0,13,13,0,12,12,0,12,12,0,8,8,0,12,12,0,12,12,0,13,13,0,13,13,0,13,14,0,14,13,0,13,13,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,0,7,7,0,8,8,0,9,9,0,12,12,0,8,8,0,9,9,0,12,12,0,8,8,0,6,6,0,11,11,0,12,12,0,12,12,0,15,15,0,11,11,0,12,12,0,15,15,0,12,12,0,5,5,0,5,5,0,6,6,0,7,7,0,11,11,0,6,6,0,7,7,0,10,11,0,6,6,0,7,7,0,11,11,0,12,12,0,11,11,0,15,15,0,10,10,0,12,12,0,15,15,0,12,12,0,6,6,0,12,12,0,12,12,0,12,12,0,15,15,0,11,11,0,12,12,0,15,15,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,11,12,0,15,16,0,11,11,0,6,6,0,11,12,0,12,12,0,12,12,0,16,15,0,12,12,0,13,12,0,15,14,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,3,7,8,10,13,16,3,2,5,7,9,13,16,6,4,4,6,10,14,15,7,5,5,7,10,13,14,9,8,9,9,9,11,13,12,11,12,9,7,8,11,14,12,10,6,5,7,10,0,0,0,0,0,0,0,2,0,0,0,49,0,0,0,248,239,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,104,206,7,0,0,0,0,0,0,0,0,0,144,206,7,0,184,206,7,0,0,0,0,0,0,0,0,0,224,206,7,0,8,207,7,0,0,0,0,0,0,0,0,0,48,207,7,0,88,207,7,0,0,0,0,0,0,0,0,0,128,207,7,0,168,207,7,0,88,207,7,0,0,0,0,0,208,207,7,0,136,203,7,0,176,203,7],"i8",L3,R.GLOBAL_BASE+500144),d3([2,0,0,0,49,0,0,0,48,206,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,40,206,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,203,7,0,56,203,7,0,0,0,0,0,0,0,0,0,96,203,7,0,136,203,7,0,176,203,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,169,0,0,0,64,205,7,0,1,0,0,0,0,0,158,224,0,0,84,96,4,0,0,0,0,0,0,0,240,205,7,0,0,0,0,0,2,0,0,0,25,0,0,0,8,205,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,40,205,7,0,0,0,0,0,2,0,0,0,9,0,0,0,232,204,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,248,204,7,0,0,0,0,0,1,0,0,0,25,0,0,0,96,204,7,0,1,0,0,0,0,192,18,225,0,0,153,96,5,0,0,0,0,0,0,0,128,204,7,0,0,0,0,0,1,0,0,0,25,0,0,0,216,203,7,0,1,0,0,0,0,0,120,224,0,0,16,96,5,0,0,0,0,0,0,0,248,203,7,0,0,0,0,0,3,5,4,5,4,5,4,5,5,5,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,3,2,5,4,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,15,15,0,0,0,0,0,0,0,12,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,14,0,0,0,9,0,0,0,15,0,0,0,8,0,0,0,16,0,0,0,7,0,0,0,17,0,0,0,6,0,0,0,18,0,0,0,5,0,0,0,19,0,0,0,4,0,0,0,20,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,4,4,7,7,4,5,6,7,7,4,6,5,7,7,7,6,7,6,7,7,7,6,7,6,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,3,3,8,8,10,10,10,10,10,10,10,10,5,7,5,9,8,10,10,10,10,11,10,11,10,5,5,7,8,9,10,10,11,10,10,11,10,11,10,10,10,11,11,11,11,11,11,11,10,11,11,10,10,10,10,11,11,11,11,11,10,11,11,11,11,11,11,11,11,12,11,10,11,11,11,11,11,11,11,11,11,11,11,11,10,10,11,11,12,11,11,11,11,11,11,12,11,11,11,10,11,11,11,11,11,11,11,11,10,11,11,10,11,10,11,11,11,11,11,11,11,11,11,11,12,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,10,11,11,11,11,11,11,11,12,11,13,11,11,11,11,11,11,11,11,11,11,11,12,11,13,0,0,0,0,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,1,0,0,0,11,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,1,3,2,3,0,0,0,0,2,3,6,7,9,13,17,3,2,5,7,9,13,17,6,5,5,6,9,12,16,7,7,6,6,7,10,13,10,10,9,7,6,10,13,13,13,12,10,10,11,15,17,17,17,14,14,15,17,0,0,0,0,0,0,0,5,0,0,0,243,0,0,0,240,238,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,232,239,7,0,0,0,0,0,5,0,0,0,243,0,0,0,232,237,7,0,1,0,0,0,0,0,56,224,0,0,56,96,2,0,0,0,0,0,0,0,224,238,7,0,0,0,0,0,5,0,0,0,243,0,0,0,224,236,7,0,1,0,0,0,0,0,16,224,0,0,16,96,2,0,0,0,0,0,0,0,216,237,7,0,0,0,0,0,5,0,0,0,243,0,0,0,216,235,7,0,1,0,0,0,0,0,84,224,0,0,84,96,2,0,0,0,0,0,0,0,208,236,7,0,0,0,0,0,5,0,0,0,53,12,0,0,136,223,7,0,1,0,0,0,0,0,48,224,0,0,16,96,3,0,0,0,0,0,0,0,192,235,7,0,0,0,0,0,5,0,0,0,53,12,0,0,56,211,7,0,1,0,0,0,0,0,124,224,0,0,92,96,3,0,0,0,0,0,0,0,112,223,7,0,0,0,0,0,1,0,0,0,7,0,0,0,16,211,7,0,1,0,0,0,0,0,56,224,0,0,16,96,3,0,0,0,0,0,0,0,24,211,7,0,0,0,0,0,5,0,0,0,243,0,0,0,8,210,7,0,1,0,0,0,0,0,149,224,0,0,149,96,2,0,0,0,0,0,0,0,0,211,7,0,0,0,0,0,5,0,0,0,243,0,0,0,0,209,7,0,1,0,0,0,0,0,92,224,0,0,92,96,2,0,0,0,0,0,0,0,248,209,7,0,0,0,0,0,5,0,0,0,243,0,0,0,248,207,7,0,1,0,0,0,0,136,51,225,0,136,51,97,2,0,0,0,0,0,0,0,240,208,7,0,0,0,0,0,1,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,6,7,6,8,8,7,7,8,7,8,8,9,9,9,8,7,7,8,8,8,9,9,9,9,8,8,6,6,6,9,7,7,9,7,7,9,8,8,10,8,8,10,8,8,10,8,8,10,9,8,10,8,8,7,6,6,9,6,6,9,6,6,9,7,7,10,8,8,10,6,6,9,7,7,10,8,8,10,6,6,7,7,7,11,9,9,11,9,9,10,9,9,12,10,10,12,8,8,11,9,9,13,9,10,12,8,8,8,7,7,11,9,10,11,10,10,10,9,9,11,11,11,11,9,9,11,10,9,12,11,11,11,9,10,10,8,8,11,9,10,11,9,9,11,9,9,12,10,10,11,9,9,11,9,9,12,10,11,11,9,9,8,8,8,12,9,9,12,9,9,11,9,9,13,9,9,13,8,8,12,9,9,13,10,10,12,8,8,9,7,7,11,10,10,11,10,10,11,10,10,12,11,11,11,10,9,11,10,10,11,11,11,11,9,9,11,9,9,12,10,10,11,10,10,12,10,10,11,11,11,11,9,9,11,10,10,12,11,11,11,9,9,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,7,7,6,8,8,7,8,8,7,9,9,11,11,11,9,8,8,7,9,9,11,12,11,9,9,9,6,7,7,10,11,11,10,10,10,10,11,11,15,14,14,12,12,12,11,11,11,14,14,14,12,12,12,5,6,6,8,5,5,8,7,7,8,8,8,12,10,10,10,7,7,8,7,7,12,10,10,10,7,7,6,7,7,12,11,11,12,10,10,11,10,10,14,14,13,13,10,10,11,10,10,16,14,14,14,11,10,7,7,7,13,12,12,12,12,11,11,11,11,15,14,17,13,12,12,12,11,11,15,15,15,14,13,13,10,9,9,14,12,11,13,11,11,12,11,11,16,15,14,14,11,11,12,11,11,17,14,14,15,11,11,7,8,8,12,11,11,13,10,10,11,10,10,17,14,13,14,10,10,12,10,10,18,15,15,14,10,10,8,7,7,13,12,12,13,11,11,12,11,11,16,14,15,14,12,12,12,11,11,18,16,16,14,12,12,11,10,10,13,12,11,13,11,11,13,12,12,0,15,14,14,11,11,13,11,11,16,15,15,15,11,11,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,3,0,0,0,2,0,0,0,4,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,1,7,7,14,14,6,8,8,15,16,7,8,8,16,15,0,14,14,17,17,0,14,14,16,16,7,9,9,16,16,10,11,11,17,18,9,8,8,16,16,0,14,14,19,19,0,14,14,17,16,8,9,9,16,16,12,12,12,17,17,10,9,9,16,16,0,15,14,18,20,0,14,14,17,17,0,15,15,18,17,0,21,0,0,21,0,13,13,17,17,0,17,17,0,0,0,15,15,17,17,0,15,15,17,18,0,0,0,0,21,0,13,13,17,17,0,18,18,0,21,0,16,15,17,18,6,7,7,14,14,9,10,10,16,16,11,10,10,15,15,0,21,0,20,21,0,0,0,18,20,10,10,10,15,16,12,13,13,18,18,12,11,11,15,15,0,0,0,20,20,0,0,21,19,19,12,11,11,15,15,15,14,14,18,18,13,11,11,15,16,0,0,0,20,19,0,0,0,20,21,0,0,20,19,19,0,0,0,0,0,0,20,0,17,18,0,0,21,0,0,0,0,0,21,0,0,21,0,20,19,0,0,0,0,0,0,21,0,18,18,0,0,0,21,0,0,0,0,0,20,7,6,6,13,13,9,6,6,12,12,9,7,7,14,14,0,10,10,12,12,0,11,11,15,15,9,7,7,14,14,12,9,9,14,14,10,7,7,14,13,0,11,11,16,15,0,11,11,14,14,9,7,7,14,14,13,10,10,14,14,11,7,7,14,13,0,11,11,16,16,0,11,11,14,14,0,12,12,16,16,0,19,0,17,18,0,10,10,14,14,0,15,14,0,0,0,12,12,14,14,0,12,12,15,15,0,20,0,18,19,0,10,10,14,14,0,16,15,0,20,0,13,13,14,14,0,11,11,13,13,0,12,13,16,16,0,12,12,16,16,0,16,16,0,21,0,17,18,0,0,0,12,12,16,16,0,15,15,18,0,0,12,12,16,16,0,17,16,21,21,0,16,17,0,0,0,13,13,17,16,0,16,16,20,21,0,12,12,17,16,0,17,17,0,21,0,17,17,21,21,0,17,18,0,0,0,0,0,0,0,0,15,15,0,0,0,18,21,0,0,0,18,19,0,0,0,18,17,21,21,0,0,0,0,0,0,16,16,0,0,0,0,0,0,0,0,19,19,0,0,0,11,11,12,12,0,11,11,10,10,0,12,12,13,13,0,12,12,9,9,0,14,14,13,13,0,12,12,13,13,0,14,14,12,13,0,11,11,12,12,0,13,13,13,13,0,13,13,13,13,0,12,12,13,13,0,14,14,12,12,0,11,11,12,12,0,14,13,14,14,0,13,13,13,13,0,15,15,14,15,0,0,0,16,16,0,12,12,13,13,0,16,17,20,21,0,14,13,12,12,0,14,14,14,14,0,21,0,16,16,0,12,12,13,13,0,18,17,21,0,0,14,14,13,13,7,8,8,17,17,11,10,10,18,18,12,10,10,17,17,0,15,15,20,18,0,15,15,17,17,11,9,9,17,17,14,12,12,19,19,13,9,9,16,16,0,15,14,0,19,0,14,14,16,16,12,10,10,20,18,16,13,13,21,20,14,10,10,17,17,0,15,15,21,20,0,15,14,17,17,0,15,15,21,21,0,0,21,0,0,0,13,13,18,18,0,19,16,0,0,0,15,15,17,16,0,16,16,0,21,0,0,0,0,21,0,13,14,18,17,0,20,19,0,0,0,15,15,18,18,8,7,7,15,15,12,11,11,17,16,13,11,11,16,16,0,0,0,21,20,0,0,0,0,20,11,10,10,17,17,14,13,13,19,18,14,11,11,16,16,0,20,0,21,19,0,0,21,0,20,12,11,11,17,17,16,15,15,0,19,14,11,11,17,16,0,21,0,0,19,0,0,0,21,20,0,0,21,20,0,0,0,0,0,0,0,0,0,19,21,0,0,0,0,0,0,0,0,19,20,0,0,0,20,21,0,0,0,0,0,0,20,0,19,21,0,0,0,0,0,0,0,0,21,20,11,10,9,15,15,14,11,11,15,15,14,11,11,16,16,0,14,14,14,14,0,16,15,17,16,13,11,11,16,16,16,13,13,16,16,15,10,10,15,15,0,14,15,17,17,0,14,14,16,15,13,11,11,16,16,17,15,14,16,16,15,10,10,15,15,0,15,15,17,18,0,15,15,16,16,0,16,16,17,17,0,21,0,21,20,0,13,13,15,15,0,18,18,0,21,0,15,15,15,15,0,16,16,17,17,0,0,0,0,18,0,13,13,15,15,0,19,18,0,0,0,15,15,16,16,0,12,12,15,15,0,13,13,17,17,0,13,13,17,18,0,16,17,21,0,0,20,18,0,0,0,13,13,17,17,0,15,15,0,18,0,12,12,17,18,0,16,16,0,0,0,17,17,21,0,0,13,13,18,18,0,16,16,21,21,0,12,12,17,18,0,16,17,21,0,0,17,17,0,21,0,17,18,0,0,0,0,0,0,0,0,16,15,0,21,0,21,19,0,0,0,18,18,0,0,0,18,19,0,0,0,0,0,0,0,0,16,16,21,21,0,20,19,0,0,0,19,21,0,21,0,12,12,15,15,0,12,12,15,16,0,13,13,16,16,0,14,14,15,15,0,16,15,17,17,0,13,13,17,17,0,15,15,16,18,0,12,12,16,16,0,14,14,17,17,0,15,14,16,16,0,13,13,16,16,0,16,15,17,17,0,12,12,16,16,0,15,15,18,18,0,14,14,17,16,0,16,16,17,18,0,0,0,20,21,0,13,13,16,17,0,17,17,0,0,0,15,15,16,16,0,15,16,17,17,0,0,0,19,0,0,13,13,15,16,0,19,18,0,0,0,16,15,16,17,8,8,8,17,17,13,11,10,17,18,13,10,10,17,17,0,15,15,20,19,0,15,15,17,17,12,10,10,19,18,15,12,12,20,18,14,10,10,17,16,0,15,15,20,20,0,14,15,16,16,13,10,10,17,17,17,14,14,0,18,15,10,10,17,17,0,16,15,20,20,0,14,14,17,17,0,15,16,20,20,0,0,21,0,0,0,13,13,17,17,0,18,17,0,0,0,15,16,17,18,0,15,15,18,21,0,0,0,21,0,0,13,13,18,18,0,19,19,0,0,0,16,16,18,17,9,8,8,15,15,12,11,11,16,16,13,11,11,16,15,0,0,0,0,21,0,21,0,19,19,12,11,11,17,18,15,13,13,18,19,14,11,11,16,16,0,0,21,21,19,0,0,0,21,20,13,11,11,18,17,17,14,15,20,21,15,11,12,16,16,0,0,0,20,0,0,0,21,0,19,0,0,0,0,19,0,0,0,0,0,0,21,21,19,19,0,0,0,21,0,0,0,0,19,21,0,0,0,19,20,0,0,0,21,0,0,0,21,19,19,0,0,0,0,0,0,0,0,21,20,0,11,11,15,15,0,12,12,15,16,0,12,12,16,16,0,15,15,16,15,0,16,16,17,17,0,12,12,17,17,0,14,14,17,17,0,11,11,16,16,0,15,15,19,18,0,15,15,16,16,0,12,12,17,16,0,14,15,16,16,0,11,11,15,15,0,16,16,18,19,0,15,15,15,16,0,17,17,18,20,0,21,0,21,19,0,14,14,16,16,0,18,18,0,0,0,16,16,15,15,0,16,16,18,17,0,0,0,19,20,0,14,14,16,16,0,19,19,0,0,0,16,17,15,15,0,12,12,14,15,0,13,13,16,17,0,12,12,17,17,0,17,16,0,0,0,18,17,21,0,0,13,13,19,17,0,15,15,20,21,0,12,12,17,17,0,17,17,0,0,0,17,17,0,0,0,13,13,17,18,0,16,16,21,0,0,12,12,17,17,0,17,17,0,0,0,17,17,0,0,0,18,21,0,0,0,0,0,0,0,0,15,15,21,0,0,20,21,0,0,0,18,19,0,0,0,18,17,0,0,0,0,0,0,0,0,16,16,21,0,0,21,21,0,0,0,18,19,0,0,0,12,12,16,16,0,13,13,16,17,0,13,13,17,16,0,14,14,16,16,0,16,15,19,18,0,13,13,17,17,0,15,15,18,18,0,12,12,16,16,0,15,15,18,19,0,15,15,17,16,0,13,13,17,17,0,16,16,18,17,0,12,12,17,16,0,15,15,18,18,0,15,15,17,17,0,16,16,0,19,0,0,0,0,0,0,14,14,16,17,0,18,18,0,0,0,15,15,17,17,0,16,16,21,19,0,21,0,21,21,0,13,14,16,16,0,19,19,0,0,0,15,16,16,16,0,11,11,17,16,0,15,14,19,18,0,14,14,19,19,0,18,17,18,20,0,17,17,18,19,0,13,13,17,17,0,16,17,21,18,0,13,13,17,16,0,18,17,19,0,0,16,17,18,18,0,12,12,19,18,0,18,18,20,20,0,13,13,17,17,0,17,17,21,0,0,16,17,17,18,0,18,17,19,18,0,0,0,0,0,0,14,14,17,17,0,19,19,21,0,0,16,16,16,17,0,17,17,19,20,0,0,0,0,21,0,15,15,17,18,0,21,21,0,0,0,17,17,17,18,0,10,10,15,15,0,15,14,17,18,0,14,14,16,16,0,0,0,18,0,0,21,0,19,0,0,13,13,17,16,0,17,17,18,0,0,14,14,16,15,0,0,0,21,0,0,21,0,19,18,0,13,13,17,17,0,18,18,20,20,0,15,15,16,16,0,0,0,21,21,0,0,0,20,20,0,0,0,19,0,0,0,0,0,0,0,21,20,18,18,0,0,0,0,0,0,0,0,0,20,0,0,0,0,20,0,0,0,0,0,0,0,0,19,18,0,0,0,0,21,0,0,0,18,20,0,18,19,16,17,0,21,19,17,17,0,0,21,18,18,0,0,21,20,19,0,0,0,20,20,0,0,21,17,17,0,0,0,19,19,0,20,20,17,17,0,0,0,0,20,0,0,20,18,18,0,21,20,17,17,0,0,0,20,21,0,19,0,17,17,0,0,21,0,0,0,20,0,18,19,0,0,0,21,21,0,0,0,0,21,0,20,20,17,17,0,0,0,0,0,0,21,0,18,17,0,0,0,20,19,0,0,0,0,21,0,20,20,17,17,0,0,0,0,0,0,21,21,18,18,0,12,12,15,14,0,14,14,17,17,0,14,14,17,16,0,18,18,21,0,0,19,20,0,0,0,13,13,18,17,0,16,16,19,18,0,13,13,17,17,0,17,17,0,0,0,17,17,21,0,0,13,13,17,17,0,17,17,21,20,0,13,13,18,17,0,18,19,21,21,0,19,18,0,0,0,18,17,0,0,0,0,0,0,0,0,15,16,0,0,0,21,21,0,0,0,20,18,21,0,0,17,18,0,0,0,0,0,0,0,0,15,16,0,0,0,0,20,0,0,0,0,19,0,0,0,15,15,18,19,0,18,17,21,0,0,16,18,0,20,0,17,18,21,0,0,18,20,0,0,0,16,16,21,21,0,19,20,21,0,0,16,15,0,21,0,18,20,0,0,0,18,19,0,0,0,16,15,21,21,0,21,0,0,0,0,16,15,21,0,0,20,19,0,0,0,18,21,21,0,0,20,18,0,0,0,0,0,0,0,0,16,16,0,20,0,21,0,0,0,0,17,18,20,21,0,18,18,21,21,0,0,0,0,0,0,16,16,20,0,0,0,21,0,0,0,21,18,0,0,0,12,12,20,17,0,15,15,19,18,0,14,14,19,18,0,18,17,21,19,0,17,17,21,17,0,13,13,21,19,0,16,17,20,19,0,13,13,16,16,0,17,17,20,21,0,16,16,19,17,0,13,13,18,18,0,17,19,19,19,0,13,13,17,17,0,18,18,0,19,0,16,17,18,18,0,16,17,19,21,0,0,0,0,0,0,15,15,16,17,0,20,19,21,0,0,17,17,17,17,0,17,17,21,19,0,0,0,0,0,0,15,15,17,17,0,21,0,0,0,0,18,18,17,17,0,10,10,15,15,0,15,15,17,17,0,15,14,16,16,0,0,0,21,19,0,21,21,19,21,0,13,13,17,16,0,17,17,18,19,0,14,15,16,15,0,0,0,21,19,0,21,21,18,19,0,14,14,16,17,0,18,18,18,19,0,15,15,15,16,0,0,21,0,21,0,0,0,19,20,0,0,0,21,19,0,0,0,0,0,0,21,21,19,17,0,0,0,0,0,0,0,0,21,21,0,21,0,0,21,0,0,0,0,0,0,21,21,19,18,0,0,0,0,0,0,0,0,0,19,0,21,18,18,17,0,21,0,20,20,0,0,0,18,20,0,0,21,18,21,0,0,0,21,18,0,0,0,0,19,0,0,0,21,21,0,20,21,17,19,0,21,0,21,0,0,21,0,18,18,0,20,21,17,18,0,0,0,21,19,0,20,21,17,18,0,0,0,21,21,0,0,0,20,19,0,0,0,21,21,0,0,0,0,0,0,21,21,19,18,0,0,0,0,0,0,0,21,19,18,0,21,21,19,0,0,0,0,21,0,0,21,21,18,17,0,0,0,0,0,0,21,0,21,18,0,12,12,14,14,0,15,14,17,17,0,14,14,17,16,0,19,17,0,0,0,19,19,0,0,0,13,13,17,17,0,17,17,20,20,0,13,13,18,18,0,18,17,0,0,0,18,21,0,0,0,13,13,17,17,0,18,18,21,20,0,14,14,18,19,0,19,18,21,0,0,19,19,0,0,0,20,18,20,0,0,0,0,0,0,0,15,16,0,0,0,21,21,0,0,0,19,19,0,0,0,18,18,0,0,0,0,0,0,0,0,16,16,0,21,0,0,0,0,0,0,19,20,0,0,0,15,15,20,21,0,17,17,21,21,0,17,17,0,0,0,19,18,0,0,0,18,19,0,0,0,17,16,0,21,0,0,20,0,0,0,16,16,0,20,0,19,19,0,21,0,19,18,0,21,0,16,16,0,0,0,21,21,0,0,0,16,16,0,0,0,21,21,0,0,0,19,19,0,0,0,20,0,0,0,0,0,0,0,0,0,17,17,0,21,0,0,20,0,0,0,20,18,21,21,0,19,18,0,20,0,0,0,0,0,0,16,17,21,0,0,0,21,0,0,0,19,20,21,20,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,3,4,9,9,10,12,12,12,11,10,12,12,13,12,11,13,12,11,11,11,12,12,12,11,11,13,13,13,13,11,12,12,14,14,12,13,13,13,13,11,13,13,13,13,11,13,13,13,13,11,13,13,13,13,11,12,12,14,14,12,13,13,12,12,11,13,13,13,13,11,13,13,12,12,11,13,13,13,13,12,12,13,14,14,12,13,13,12,12,11,13,13,13,13,11,13,13,12,12,11,13,13,13,13,12,13,13,14,14,12,13,13,12,12,11,13,13,13,13,11,13,13,12,12,11,10,10,10,10,12,10,10,11,11,12,9,9,11,11,13,11,11,10,10,13,10,10,10,10,13,11,11,12,12,13,10,10,12,12,14,12,11,12,12,13,11,11,11,12,13,12,12,12,12,13,11,11,12,12,13,10,10,12,12,14,11,11,12,12,13,11,11,12,12,13,11,11,12,12,14,12,12,12,12,14,10,10,11,11,14,12,11,11,11,13,11,11,11,11,13,12,12,11,11,14,12,12,12,11,14,10,10,11,11,14,12,11,11,11,13,11,11,11,11,13,12,12,11,11,11,11,11,10,10,12,10,11,9,9,12,12,12,11,11,13,12,12,9,9,13,13,13,10,10,13,13,13,12,12,13,13,13,14,14,13,12,12,11,11,14,13,13,12,12,14,13,13,11,11,13,13,13,12,11,13,13,13,14,14,13,12,12,10,10,14,13,13,11,11,13,13,13,10,10,13,13,13,11,11,14,13,13,14,14,14,12,12,10,10,13,13,13,11,11,13,13,13,10,10,13,13,13,11,11,14,13,13,14,14,14,13,13,10,10,13,13,13,11,11,13,13,13,10,10,14,12,12,8,8,14,12,12,9,9,14,11,11,9,9,14,12,12,8,8,14,12,12,7,7,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,12,13,9,9,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,13,13,9,9,15,13,13,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,9,9,14,13,12,9,9,14,13,13,9,9,15,13,13,10,10,15,12,12,10,10,15,13,13,9,9,15,13,13,9,9,14,13,13,9,9,14,12,12,8,8,13,13,13,8,8,14,14,13,9,9,14,14,13,7,7,14,14,14,8,8,14,14,14,10,10,15,14,14,12,12,14,14,14,9,9,15,14,14,10,10,14,14,14,9,9,14,14,14,10,9,15,14,14,12,12,14,14,14,9,9,15,14,14,10,10,14,14,14,9,9,15,14,15,9,9,15,14,14,11,11,14,14,14,8,8,14,14,14,9,9,14,14,14,8,8,14,15,14,10,10,15,14,14,11,11,14,14,14,8,8,15,14,14,9,9,14,14,14,8,8,12,12,12,13,13,16,16,15,12,12,17,16,16,13,13,17,16,16,11,11,17,16,16,12,12,17,16,17,13,13,17,16,16,14,14,17,17,16,12,12,18,16,16,13,13,17,16,17,12,12,17,17,17,13,13,18,16,16,14,14,18,17,17,12,12,17,17,17,13,13,18,17,17,13,13,17,17,17,13,13,17,16,16,14,14,17,17,17,12,12,16,16,17,13,13,17,17,16,12,12,18,17,17,13,13,18,16,16,14,14,18,17,17,12,12,19,16,17,13,13,17,16,17,12,12,13,14,14,10,10,16,14,14,13,13,17,15,15,14,14,17,14,14,13,13,16,14,14,13,13,17,16,15,14,14,16,16,16,15,15,17,15,15,14,14,17,15,15,14,14,17,15,15,14,14,17,16,15,14,14,16,16,16,15,15,18,15,15,13,13,16,16,15,14,14,17,15,15,14,13,17,15,15,14,14,16,16,16,15,15,18,15,14,13,13,17,15,15,14,14,18,14,15,13,13,18,15,15,14,14,16,16,16,15,15,17,15,15,13,13,17,15,15,14,14,17,15,15,13,13,13,11,11,10,10,16,14,14,13,13,17,14,15,14,14,17,15,15,12,12,17,14,14,12,12,16,15,15,14,14,16,14,14,14,14,16,15,15,14,14,16,15,15,14,14,16,15,15,14,14,16,15,15,14,14,16,15,14,15,15,17,15,15,14,14,17,15,15,14,14,17,15,15,14,14,17,15,16,14,14,16,14,14,14,14,17,15,15,13,13,17,15,15,13,13,16,15,15,13,13,17,16,16,14,14,17,15,14,15,14,17,15,15,13,13,17,15,15,13,13,17,15,15,13,13,14,14,14,9,9,14,14,14,18,19,14,15,15,19,18,14,14,14,19,19,15,14,14,19,19,15,16,16,19,19,15,16,16,19,19,15,15,15,19,19,15,16,16,19,20,15,15,15,19,19,15,15,15,19,19,15,16,16,20,20,15,15,15,18,19,15,15,16,19,20,15,15,15,19,18,15,15,15,18,18,15,16,16,21,20,15,15,15,19,19,15,15,15,19,19,15,15,14,19,20,15,15,15,20,19,15,16,16,19,20,15,15,15,19,19,15,15,15,20,21,15,14,15,19,19,14,12,12,9,9,14,14,15,21,19,14,14,14,18,19,14,15,15,19,20,14,14,14,19,19,15,15,15,19,20,15,15,14,21,19,15,15,15,20,19,15,14,15,20,21,15,15,15,18,18,15,15,15,20,21,16,14,14,18,19,15,15,15,20,19,15,15,15,18,21,15,15,15,19,19,15,15,15,19,20,16,15,14,20,19,15,16,15,19,19,15,15,15,19,0,14,15,15,19,19,15,15,15,19,19,15,15,14,20,19,15,15,15,20,19,15,15,15,19,19,15,15,15,20,19,12,12,12,13,13,16,15,16,11,11,16,16,16,12,12,17,16,16,11,11,17,16,16,12,11,17,17,17,13,13,18,16,16,14,14,18,18,17,13,13,17,16,16,13,13,17,17,17,13,13,17,16,17,12,12,17,15,16,13,13,17,16,17,12,12,17,16,16,13,12,17,16,16,12,12,18,17,17,13,13,18,16,16,13,14,18,17,17,12,12,17,16,16,12,12,17,17,17,12,12,18,17,17,13,13,17,16,16,14,14,17,17,17,12,12,17,16,16,12,12,18,17,17,12,12,13,14,14,9,9,16,14,14,13,13,16,15,15,14,14,16,14,14,13,13,16,14,14,13,13,17,16,15,15,15,16,15,16,16,15,17,15,15,14,14,17,15,15,15,15,17,15,15,14,14,17,15,15,14,14,16,15,16,16,16,17,15,15,14,14,16,15,15,14,15,16,15,15,14,14,17,15,15,15,15,16,16,16,15,16,18,15,14,13,14,17,15,15,14,14,17,14,14,13,13,17,15,15,14,14,16,15,15,15,15,17,15,14,14,14,17,15,15,14,14,17,14,14,13,13,13,11,11,11,11,16,14,14,12,12,16,14,14,13,13,16,14,14,12,12,16,14,14,12,12,16,15,15,13,13,17,14,14,14,14,17,15,15,13,13,16,15,15,14,13,16,15,15,13,13,16,15,15,13,13,16,14,14,14,14,16,15,15,13,13,16,14,15,13,13,17,15,15,13,13,17,15,15,13,13,16,14,14,14,14,17,15,15,12,12,17,14,15,13,13,17,15,15,12,12,16,15,15,13,13,17,14,14,14,14,17,15,15,12,12,17,15,15,13,13,16,15,15,12,12,14,15,15,8,8,14,14,14,19,18,14,15,15,19,20,14,14,14,19,19,14,14,15,19,20,15,16,15,19,21,15,16,16,21,19,15,15,15,20,19,15,16,16,19,20,15,15,15,19,18,15,16,15,20,19,15,16,16,19,20,15,15,15,19,19,15,16,15,20,20,14,15,15,19,19,15,15,15,21,19,15,17,16,19,20,15,14,15,0,21,15,15,15,19,20,14,14,14,19,19,15,15,15,20,19,15,16,16,19,19,15,15,15,19,18,15,15,15,20,19,14,14,15,18,18,14,12,12,9,9,14,14,14,18,18,14,14,14,18,18,14,15,14,19,18,14,14,14,19,18,15,15,15,19,20,15,14,14,18,18,15,15,15,20,19,15,15,15,18,20,15,15,15,19,18,15,15,15,19,19,15,14,14,19,21,15,15,15,20,20,15,15,15,18,19,14,15,15,19,20,15,15,15,20,19,15,14,14,19,21,15,15,15,18,19,15,14,15,20,19,14,15,15,21,21,14,15,15,19,20,15,14,14,19,20,15,15,15,19,20,15,15,14,20,20,14,15,15,20,19,13,12,12,13,13,17,16,16,11,11,17,16,16,12,12,18,17,16,11,11,18,16,16,11,11,17,17,17,13,13,18,16,16,13,13,18,17,17,12,12,18,16,16,13,13,18,17,17,12,12,18,17,17,13,13,18,16,16,14,14,18,16,17,12,12,18,17,17,13,13,17,17,17,12,12,17,17,17,12,12,17,16,15,13,13,18,16,16,11,11,17,16,16,12,12,17,16,17,11,11,18,17,17,13,12,17,16,16,13,13,17,17,17,12,12,17,16,17,12,12,18,17,17,11,11,14,14,14,9,9,16,14,14,13,13,17,15,15,14,14,17,14,14,13,13,16,14,14,13,13,17,15,15,14,14,16,16,16,16,15,18,15,15,14,14,17,16,15,15,15,17,15,15,14,14,17,15,15,14,15,16,16,16,15,16,18,15,15,14,14,17,15,15,14,15,17,15,15,14,14,17,15,15,14,14,16,16,16,15,16,17,14,14,13,13,17,15,15,14,14,18,15,15,13,13,17,15,15,14,14,16,16,16,15,15,17,14,14,13,13,17,15,15,14,14,17,14,14,13,13,13,11,11,11,11,16,14,14,12,12,16,14,14,12,13,17,15,14,11,11,17,14,14,11,11,17,15,15,13,14,17,14,14,14,14,17,15,15,13,13,17,14,14,13,13,17,15,15,13,13,17,15,15,13,13,17,14,14,14,14,17,15,15,13,13,18,14,15,13,13,17,15,15,13,13,16,15,15,13,13,17,14,14,13,13,17,15,15,12,12,16,14,14,12,12,16,15,15,12,12,17,16,15,13,13,17,14,14,13,13,17,15,15,12,12,16,15,15,12,12,16,15,15,12,12,13,15,15,8,8,14,14,14,18,19,14,15,15,19,20,14,14,14,18,18,14,15,15,18,18,15,16,16,19,19,15,16,17,20,20,15,15,15,19,19,15,16,16,18,20,15,15,15,19,19,15,15,16,18,18,15,17,16,19,19,15,15,15,18,21,15,16,16,21,20,15,15,15,19,21,15,16,15,20,19,15,16,17,20,20,15,15,15,19,19,15,16,16,21,20,15,15,15,19,20,15,15,15,19,19,15,16,16,20,19,15,15,15,19,19,15,16,15,20,21,15,15,15,21,19,14,12,12,8,8,14,14,14,20,18,14,13,13,19,19,14,14,14,19,18,15,14,14,19,20,14,15,15,20,20,15,14,14,21,20,15,15,15,20,20,15,15,14,21,19,15,15,15,19,19,15,15,15,19,20,15,14,14,20,20,15,15,15,19,20,15,14,14,19,20,15,15,15,20,20,15,15,15,20,19,15,14,14,20,21,15,15,15,20,21,15,14,14,20,0,15,16,15,20,21,15,15,15,19,20,15,14,14,19,19,15,15,15,19,20,15,15,15,19,19,15,15,15,18,20,13,12,12,13,13,18,16,17,12,12,17,16,16,12,12,17,17,16,11,11,18,16,16,11,11,17,17,18,13,13,18,16,16,14,14,18,17,17,13,13,18,16,16,13,13,18,17,17,12,12,17,17,16,13,13,17,16,16,13,14,18,17,17,12,12,18,16,16,12,13,17,16,17,12,12,17,18,17,13,13,18,16,16,13,13,18,17,17,12,12,17,16,16,12,12,17,17,17,11,11,17,16,17,12,12,17,16,16,13,13,17,16,16,11,11,17,16,16,12,12,18,16,17,11,11,14,14,14,9,9,16,14,15,13,13,17,15,15,14,14,17,14,14,12,12,16,14,14,13,13,18,15,15,15,15,17,15,16,15,16,18,15,15,14,14,17,15,16,15,15,17,15,15,14,14,18,15,15,14,14,16,16,16,16,15,17,15,15,14,14,16,15,15,14,14,17,15,15,14,14,17,15,15,14,14,17,16,16,15,15,17,15,14,13,13,17,15,15,14,14,17,15,15,13,13,17,15,15,14,14,16,16,16,15,15,18,15,14,14,14,17,15,15,14,14,18,15,15,13,13,13,12,12,11,11,16,14,14,12,12,16,14,14,13,13,17,15,15,12,12,17,14,14,12,12,17,15,15,14,14,17,14,14,14,14,17,15,15,13,13,17,15,14,13,13,17,15,15,13,13,17,15,15,13,13,16,14,14,14,14,17,15,15,13,13,16,14,14,13,13,16,15,15,13,13,17,15,16,13,13,17,14,14,14,13,17,15,15,12,12,16,15,14,12,12,17,15,15,12,12,16,15,16,13,13,16,14,14,14,13,17,15,15,12,12,16,14,14,12,12,17,15,15,12,12,14,15,15,8,8,14,14,14,18,18,14,15,15,19,18,14,14,14,18,18,14,15,15,19,20,15,16,15,21,18,15,16,16,18,0,15,15,15,19,20,15,16,16,20,0,15,16,15,19,18,15,15,15,19,19,15,16,16,21,19,15,15,15,19,19,15,16,16,20,20,15,15,15,19,19,15,15,15,19,18,15,16,16,20,20,15,14,15,20,19,15,15,15,19,20,15,15,15,19,19,15,16,15,19,20,15,16,16,19,20,15,15,15,19,19,15,16,15,20,20,15,15,15,20,18,13,12,12,8,8,14,14,14,19,20,14,14,14,19,19,14,15,15,20,20,14,14,14,18,19,15,15,15,20,0,15,14,14,18,20,15,15,15,19,19,15,15,15,21,19,15,15,15,19,20,15,15,15,20,21,15,14,14,20,19,15,15,15,20,19,15,15,14,21,19,15,15,15,19,18,15,15,15,20,19,15,14,14,19,19,15,15,16,20,19,15,15,15,20,0,15,15,15,19,21,15,15,15,22,20,15,14,14,22,19,15,15,15,19,20,15,14,14,20,19,14,15,15,19,21,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,1,6,6,6,8,8,6,8,8,7,9,9,10,11,11,8,8,8,7,9,9,11,12,12,9,9,9,6,7,7,10,11,11,10,11,11,10,11,11,13,13,13,12,12,12,10,12,11,14,14,14,12,12,12,6,5,5,9,6,6,9,6,6,9,7,7,12,10,10,11,7,6,9,7,7,13,11,11,12,7,7,7,8,8,12,10,10,12,10,10,11,10,10,15,13,13,13,9,9,12,11,11,15,14,14,15,11,11,8,7,7,12,11,11,12,11,11,11,11,11,14,13,14,14,12,12,12,11,11,16,15,15,14,12,12,0,10,10,0,12,12,0,12,12,0,11,11,0,14,14,0,11,11,0,11,11,0,15,15,0,11,11,7,8,8,13,11,11,12,10,10,12,11,11,15,13,13,14,11,11,12,10,10,16,14,14,15,10,10,9,7,7,13,11,12,13,12,11,12,11,11,15,14,14,14,12,12,13,12,12,16,15,15,15,12,12,0,11,11,0,12,12,0,12,13,0,12,12,0,15,15,0,12,12,0,12,12,0,16,15,0,12,12,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,3,3,0,9,9,0,9,9,0,10,10,0,9,9,0,10,10,0,10,10,0,10,10,0,10,10,0,7,7,0,7,7,0,6,6,0,8,8,0,7,7,0,8,8,0,8,8,0,7,7,0,8,8,0,7,7,0,9,9,0,8,9,0,10,10,0,9,9,0,10,10,0,10,11,0,9,9,0,10,10,0,9,9,0,11,11,0,12,12,0,12,12,0,11,11,0,12,12,0,13,13,0,12,12,0,13,13,0,8,8,0,12,12,0,12,12,0,13,13,0,13,13,0,13,13,0,13,13,0,13,13,0,13,13,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,11,11,0,12,12,0,13,13,0,12,12,0,13,13,0,13,13,0,12,12,0,12,12,0,9,9,0,12,12,0,13,13,0,14,14,0,13,13,0,14,14,0,14,14,0,13,13,0,14,14,0,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,5,5,0,7,7,0,8,8,0,9,9,0,12,12,0,8,8,0,9,9,0,13,13,0,8,8,0,6,6,0,11,11,0,12,12,0,12,12,0,14,14,0,11,12,0,12,12,0,15,15,0,12,12,0,5,5,0,5,5,0,6,6,0,7,7,0,10,10,0,6,6,0,7,7,0,11,11,0,6,6,0,7,7,0,11,11,0,12,11,0,11,11,0,14,14,0,10,10,0,12,12,0,15,15,0,12,12,0,6,6,0,12,12,0,12,12,0,12,12,0,14,14,0,11,11,0,12,12,0,16,16,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,0,12,12,0,12,12,0,12,12,0,15,15,0,12,12,0,11,11,0,16,16,0,11,11,0,6,6,0,12,12,0,12,12,0,13,13,0,15,15,0,12,12,0,13,13,0,15,15,0,12,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,3,7,9,12,16,16,3,2,5,7,11,14,15,7,4,5,6,9,12,15,8,5,5,5,8,10,14,9,7,6,6,8,10,12,12,10,10,7,6,8,10,15,12,10,6,4,7,9,0,0,0,0,0,0,0,0,0,0,0,0,249,213,64,0,0,0,0,0,64,223,64,0,0,0,0,0,136,227,64,0,0,0,0,0,112,231,64,0,0,0,0,0,88,235,64,0,0,0,0,0,64,239,64,0,0,0,0,0,136,243,64,0,0,0,0,0,112,247,64,0,0,0,0,0,88,251,64,0,0,0,0,0,64,255,64,0,0,0,0,0,136,3,65,0,0,0,0,136,132,14,65,176,240,7,0,48,241,7,0,48,242,7,0,48,244,7,0,48,248,7,0,48,0,8,0,48,16,8,0,48,48,8,0,24,0,120,58,76,70,11,60,242,204,192,60,116,252,59,61,86,73,154,61,241,93,228,61,248,163,29,62,180,231,78,62,54,157,130,62,78,220,159,62,193,174,190,62,65,132,222,62,173,194,254,62,186,101,15,63,248,0,31,63,29,233,45,63,249,219,59,63,45,162,72,63,160,17,84,63,38,15,94,63,46,143,102,63,112,149,109,63,174,51,115,63,159,135,119,63,66,184,122,63,196,242,124,63,75,103,126,63,196,69,127,63,241,186,127,63,217,237,127,63,162,253,127,63,248,255,127,63,168,9,120,57,17,119,11,59,135,139,193,59,74,113,61,60,148,82,156,60,94,8,233,60,42,83,34,61,74,118,87,61,138,227,137,61,7,140,171,61,34,154,208,61,108,239,248,61,164,52,18,62,100,112,41,62,65,21,66,62,67,11,92,62,47,56,119,62,197,191,137,62,92,97,152,62,135,112,167,62,4,220,182,62,188,145,198,62,231,126,214,62,48,144,230,62,227,177,246,62,13,104,3,63,121,107,11,63,98,89,19,63,42,40,27,63,137,206,34,63,166,67,42,63,49,127,49,63,126,121,56,63,153,43,63,63,92,143,69,63,127,159,75,63,165,87,81,63,104,180,86,63,89,179,91,63,8,83,96,63,252,146,100,63,177,115,104,63,138,246,107,63,198,29,111,63,109,236,113,63,62,102,116,63,154,143,118,63,104,109,120,63,3,5,122,63,26,92,123,63,153,120,124,63,143,96,125,63],"i8",L3,R.GLOBAL_BASE+510456),d3([17,26,126,63,39,171,126,63,176,25,127,63,74,107,127,63,68,165,127,63,132,204,127,63,123,229,127,63,17,244,127,63,158,251,127,63,219,254,127,63,218,255,127,63,0,0,128,63,5,12,120,56,50,131,11,58,118,186,193,58,226,203,61,59,38,207,156,59,139,32,234,59,245,102,35,60,63,100,89,60,184,127,139,60,59,23,174,60,239,114,212,60,96,140,254,60,45,46,22,61,114,237,46,61,155,127,73,61,220,223,101,61,123,4,130,61,159,250,145,61,71,207,162,61,38,127,180,61,173,6,199,61,16,98,218,61,63,141,238,61,244,193,1,62,185,160,12,62,128,224,23,62,182,126,35,62,166,120,47,62,116,203,59,62,34,116,72,62,141,111,85,62,107,186,98,62,83,81,112,62,180,48,126,62,110,42,134,62,252,92,141,62,9,174,148,62,138,27,156,62,100,163,163,62,112,67,171,62,119,249,178,62,54,195,186,62,93,158,194,62,147,136,202,62,118,127,210,62,154,128,218,62,142,137,226,62,217,151,234,62,2,169,242,62,139,186,250,62,251,100,1,63,99,106,5,63,65,108,9,63,89,105,13,63,116,96,17,63,94,80,21,63,231,55,25,63,231,21,29,63,58,233,32,63,197,176,36,63,116,107,40,63,62,24,44,63,35,182,47,63,43,68,51,63,109,193,54,63,10,45,58,63,48,134,61,63,26,204,64,63,17,254,67,63,107,27,71,63,142,35,74,63,238,21,77,63,15,242,79,63,132,183,82,63,239,101,85,63,3,253,87,63,129,124,90,63,60,228,92,63,21,52,95,63,254,107,97,63,246,139,99,63,14,148,101,63,98,132,103,63,33,93,105,63,133,30,107,63,213,200,108,63,103,92,110,63,155,217,111,63,224,64,113,63,172,146,114,63,131,207,115,63,241,247,116,63,139,12,118,63,239,13,119,63,193,252,119,63,172,217,120,63,99,165,121,63,155,96,122,63,15,12,123,63,124,168,123,63,163,54,124,63,71,183,124,63,41,43,125,63,13,147,125,63,183,239,125,63,229,65,126,63,89,138,126,63,205,201,126,63,251,0,127,63,150,48,127,63,78,89,127,63,205,123,127,63,182,152,127,63,167,176,127,63,53,196,127,63,239,211,127,63,91,224,127,63,245,233,127,63,51,241,127,63,127,246,127,63,59,250,127,63,190,252,127,63,84,254,127,63,64,255,127,63,186,255,127,63,238,255,127,63,254,255,127,63,0,0,128,63,169,12,120,55,54,134,11,57,38,198,193,57,94,226,61,58,234,237,156,58,85,101,234,58,56,170,35,59,207,219,89,59,169,226,139,59,42,178,174,59,13,91,213,59,204,219,255,59,91,25,23,60,250,46,48,60,194,45,75,60,156,20,104,60,46,113,131,60,225,202,147,60,185,22,165,60,1,84,183,60,245,129,202,60,198,159,222,60,155,172,243,60,199,211,4,61,213,71,16,61,250,49,28,61,174,145,40,61,101,102,53,61,141,175,66,61,140,108,80,61,193,156,94,61,133,63,109,61,41,84,124,61,252,236,133,61,26,232,141,61,13,27,150,61,110,133,158,61,212,38,167,61,210,254,175,61,245,12,185,61,200,80,194,61,209,201,203,61,146,119,213,61,139,89,223,61,51,111,233,61,2,184,243,61,105,51,254,61,106,112,4,62,214,223,9,62,171,103,15,62,153,7,21,62,77,191,26,62,116,142,32,62,181,116,38,62,184,113,44,62,34,133,50,62,149,174,56,62,178,237,62,62,21,66,69,62,92,171,75,62,30,41,82,62,243,186,88,62,112,96,95,62,40,25,102,62,170,228,108,62,132,194,115,62,68,178,122,62,185,217,128,62,203,98,132,62,26,244,135,62,105,141,139,62,120,46,143,62,6,215,146,62,211,134,150,62,156,61,154,62,29,251,157,62,19,191,161,62,57,137,165,62,71,89,169,62,249,46,173,62,5,10,177,62,36,234,180,62,13,207,184,62,117,184,188,62,18,166,192,62,153,151,196,62,190,140,200,62,52,133,204,62,175,128,208,62,225,126,212,62,125,127,216,62,52,130,220,62,184,134,224,62,185,140,228,62,233,147,232,62,248,155,236,62,150,164,240,62,117,173,244,62,67,182,248,62,178,190,252,62,57,99,0,63,153,102,2,63,82,105,4,63,60,107,6,63,48,108,8,63,6,108,10,63,151,106,12,63,188,103,14,63,78,99,16,63,39,93,18,63,33,85,20,63,21,75,22,63,222,62,24,63,87,48,26,63,92,31,28,63,199,11,30,63,117,245,31,63,66,220,33,63,12,192,35,63,176,160,37,63,12,126,39,63,254,87,41,63,104,46,43,63,39,1,45,63,29,208,46,63,43,155,48,63,51,98,50,63,23,37,52,63,188,227,53,63,4,158,55,63,214,83,57,63,23,5,59,63,173,177,60,63,128,89,62,63,120,252,63,63,126,154,65,63,124,51,67,63,93,199,68,63,12,86,70,63,119,223,71,63,138,99,73,63,54,226,74,63,104,91,76,63,17,207,77,63,35,61,79,63,145,165,80,63,76,8,82,63,75,101,83,63,130,188,84,63,231,13,86,63,114,89,87,63,26,159,88,63,218,222,89,63,172,24,91,63,138,76,92,63,113,122,93,63,93,162,94,63,78,196,95,63,67,224,96,63,58,246,97,63,54,6,99,63,56,16,100,63,67,20,101,63,92,18,102,63,133,10,103,63,198,252,103,63,37,233,104,63,168,207,105,63,89,176,106,63,64,139,107,63,102,96,108,63,216,47,109,63,159,249,109,63,201,189,110,63,97,124,111,63,118,53,112,63,23,233,112,63,81,151,113,63,53,64,114,63,212,227,114,63,61,130,115,63,131,27,116,63,184,175,116,63,238,62,117,63,56,201,117,63,171,78,118,63,90,207,118,63,90,75,119,63,192,194,119,63,162,53,120,63,21,164,120,63,48,14,121,63,8,116,121,63,182,213,121,63,79,51,122,63,235,140,122,63,162,226,122,63,139,52,123,63,191,130,123,63,85,205,123,63,102,20,124,63,9,88,124,63,88,152,124,63,106,213,124,63,88,15,125,63,58,70,125,63,41,122,125,63,62,171,125,63,143,217,125,63,54,5,126,63,75,46,126,63,228,84,126,63,27,121,126,63,7,155,126,63,190,186,126,63,88,216,126,63,236,243,126,63,144,13,127,63,91,37,127,63,99,59,127,63,188,79,127,63,125,98,127,63,185,115,127,63,135,131,127,63,249,145,127,63,36,159,127,63,26,171,127,63,238,181,127,63,179,191,127,63,122,200,127,63,85,208,127,63,84,215,127,63,136,221,127,63,0,227,127,63,204,231,127,63,249,235,127,63,150,239,127,63,177,242,127,63,85,245,127,63,144,247,127,63,109,249,127,63,246,250,127,63,54,252,127,63,55,253,127,63,1,254,127,63,156,254,127,63,18,255,127,63,103,255,127,63,163,255,127,63,204,255,127,63,229,255,127,63,244,255,127,63,252,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,60,12,120,54,253,134,11,56,19,201,193,56,248,231,61,57,148,245,156,57,115,118,234,57,238,186,35,58,113,249,89,58,32,251,139,58,96,216,174,58,34,148,213,58,3,23,0,59,209,82,23,59,65,125,48,59,21,150,75,59,8,157,104,59,233,200,131,59,20,58,148,59,218,161,165,59,16,0,184,59,136,84,203,59,16,159,223,59,118,223,244,59,194,138,5,60,128,32,17,60,217,48,29,60,172,187,41,60,219,192,54,60,67,64,68,60,194,57,82,60,52,173,96,60,115,154,111,60,88,1,127,60,222,112,135,60,186,157,143,60,42,7,152,60,25,173,160,60,112,143,169,60,23,174,178,60,246,8,188,60,243,159,197,60,245,114,207,60,225,129,217,60,156,204,227,60,10,83,238,60,14,21,249,60,70,9,2,61,177,165,7,61,187,95,13,61,81,55,19,61,102,44,25,61,230,62,31,61,195,110,37,61,233,187,43,61,71,38,50,61,202,173,56,61,97,82,63,61,247,19,70,61,121,242,76,61,210,237,83,61,240,5,91,61,187,58,98,61,32,140,105,61,8,250,112,61,93,132,120,61,132,21,128,61,249,246,131,61,130,230,135,61,19,228,139,61,159,239,143,61,26,9,148,61,119,48,152,61,169,101,156,61,163,168,160,61,88,249,164,61,186,87,169,61,186,195,173,61,76,61,178,61,95,196,182,61,230,88,187,61,209,250,191,61,18,170,196,61,152,102,201,61,85,48,206,61,56,7,211,61,48,235,215,61,47,220,220,61,34,218,225,61,248,228,230,61,161,252,235,61,11,33,241,61,35,82,246,61,217,143,251,61,13,109,0,62,105,24,3,62,247,201,5,62,174,129,8,62,133,63,11,62,113,3,14,62,104,205,16,62,96,157,19,62,79,115,22,62,42,79,25,62,232,48,28,62,124,24,31,62,221,5,34,62,255,248,36,62,215,241,39,62,90,240,42,62,125,244,45,62,51,254,48,62,114,13,52,62,45,34,55,62,88,60,58,62,232,91,61,62,208,128,64,62,3,171,67,62,118,218,70,62,26,15,74,62,229,72,77,62,199,135,80,62,181,203,83,62,162,20,87,62,127,98,90,62,63,181,93,62,213,12,97,62,50,105,100,62,73,202,103,62,12,48,107,62,108,154,110,62,92,9,114,62,203,124,117,62,173,244,120,62,241,112,124,62,138,241,127,62,52,187,129,62,190,127,131,62,91,70,133,62,4,15,135,62,176,217,136,62,89,166,138,62,245,116,140,62,126,69,142,62,234,23,144,62,50,236,145,62,78,194,147,62,54,154,149,62,224,115,151,62,70,79,153,62,93,44,155,62,31,11,157,62,130,235,158,62,127,205,160,62,11,177,162,62,31,150,164,62,177,124,166,62,186,100,168,62,47,78,170,62,9,57,172,62,62,37,174,62,198,18,176,62,150,1,178,62,167,241,179,62,238,226,181,62,100,213,183,62,254,200,185,62,179,189,187,62,122,179,189,62,74,170,191,62,25,162,193,62,221,154,195,62,142,148,197,62,34,143,199,62,142,138,201,62,203,134,203,62,205,131,205,62,140,129,207,62,253,127,209,62,24,127,211,62,210,126,213,62,33,127,215,62,252,127,217,62,88,129,219,62,45,131,221,62,112,133,223,62,23,136,225,62,25,139,227,62,108,142,229,62,5,146,231,62,219,149,233,62,228,153,235,62,21,158,237,62,102,162,239,62,203,166,241,62,59,171,243,62,173,175,245,62,21,180,247,62,107,184,249,62,164,188,251,62,181,192,253,62,150,196,255,62,30,228,0,63,207,229,1,63,88,231,2,63,182,232,3,63,226,233,4,63,215,234,5,63,146,235,6,63,12,236,7,63,66,236,8,63,45,236,9,63,202,235,10,63,19,235,11,63,4,234,12,63,151,232,13,63,200,230,14,63,145,228,15,63,239,225,16,63,220,222,17,63,84,219,18,63,81,215,19,63,208,210,20,63,202,205,21,63,61,200,22,63,34,194,23,63,117,187,24,63,50,180,25,63,85,172,26,63,215,163,27,63,182,154,28,63,236,144,29,63,117,134,30,63,77,123,31,63,110,111,32,63,214,98,33,63,126,85,34,63,100,71,35,63,130,56,36,63,212,40,37,63,87,24,38,63,5,7,39,63,219,244,39,63,213,225,40,63,239,205,41,63,36,185,42,63,113,163,43,63,209,140,44,63,64,117,45,63,188,92,46,63,63,67,47,63,199,40,48,63,78,13,49,63,211,240,49,63,80,211,50,63,195,180,51,63,39,149,52,63,122,116,53,63,184,82,54,63,220,47,55,63,229,11,56,63,206,230,56,63,149,192,57,63,54,153,58,63,174,112,59,63,249,70,60,63,21,28,61,63,255,239,61,63,179,194,62,63,48,148,63,63,113,100,64,63,116,51,65,63,55,1,66,63,182,205,66,63,239,152,67,63,224,98,68,63,134,43,69,63,222,242,69,63,230,184,70,63,156,125,71,63,253,64,72,63,7,3,73,63,184,195,73,63,14,131,74,63,6,65,75,63,159,253,75,63,215,184,76,63,172,114,77,63,28,43,78,63,38,226,78,63,199,151,79,63,253,75,80,63,201,254,80,63,39,176,81,63,22,96,82,63,150,14,83,63,164,187,83,63,63,103,84,63,103,17,85,63,26,186,85,63,86,97,86,63,28,7,87,63,105,171,87,63,62,78,88,63,152,239,88,63,120,143,89,63,221,45,90,63,198,202,90,63,50,102,91,63,33,0,92,63,147,152,92,63,134,47,93,63,251,196,93,63,242,88,94,63,105,235,94,63,98,124,95,63,219,11,96,63,213,153,96,63,80,38,97,63,76,177,97,63,201,58,98,63,199,194,98,63,70,73,99,63,71,206,99,63,202,81,100,63,208,211,100,63,88,84,101,63,100,211,101,63,244,80,102,63,9,205,102,63,163,71,103,63,195,192,103,63,107,56,104,63,154,174,104,63,82,35,105,63,147,150,105,63,96,8,106,63,184,120,106,63,157,231,106,63,16,85,107,63,19,193,107,63,166,43,108,63,203,148,108,63,132,252,108,63,209,98,109,63,180,199,109,63,48,43,110,63,68,141,110,63,244,237,110,63,64,77,111,63,42,171,111,63,181,7,112,63,225,98,112,63,177,188,112,63,38,21,113,63,67,108,113,63,10,194,113,63,123,22,114,63,155,105,114,63,106,187,114,63,234,11,115,63,31,91,115,63,9,169,115,63,172,245,115,63,9,65,116,63,35,139,116,63,252,211,116,63,151,27,117,63,245,97,117,63,26,167,117,63,8,235,117,63,193,45,118,63,72,111,118,63,159,175,118,63,202,238,118,63,201,44,119,63,161,105,119,63,84,165,119,63,228,223,119,63,85,25,120,63,168,81,120,63,226,136,120,63,3,191,120,63,16,244,120,63,11,40,121,63,247,90,121,63,215,140,121,63,173,189,121,63,125,237,121,63,73,28,122,63,20,74,122,63,226,118,122,63,181,162,122,63,144,205,122,63,118,247,122,63,107,32,123,63,112,72,123,63,138,111,123,63,186,149,123,63,5,187,123,63,109,223,123,63,245,2,124,63,160,37,124,63,113,71,124,63,108,104,124,63,147,136,124,63,233,167,124,63,114,198,124,63,48,228,124,63,38,1,125,63,89,29,125,63,201,56,125,63,124,83,125,63,115,109,125,63,178,134,125,63,60,159,125,63,19,183,125,63,60,206,125,63,184,228,125,63,139,250,125,63,184,15,126,63,66,36,126,63,44,56,126,63,120,75,126,63,43,94,126,63,70,112,126,63,204,129,126,63,194,146,126,63,41,163,126,63,4,179,126,63,86,194,126,63,35,209,126,63,109,223,126,63,55,237,126,63,131,250,126,63,85,7,127,63,175,19,127,63,148,31,127,63,7,43,127,63,10,54,127,63,160,64,127,63,205,74,127,63,146,84,127,63,242,93,127,63,239,102,127,63,141,111,127,63,206,119,127,63,181,127,127,63,67,135,127,63,124,142,127,63,98,149,127,63,247,155,127,63,61,162,127,63,56,168,127,63,233,173,127,63,83,179,127,63,120,184,127,63,90,189,127,63,252,193,127,63,95,198,127,63,134,202,127,63,116,206,127,63,41,210,127,63,168,213,127,63,244,216,127,63,13,220,127,63,247,222,127,63,179,225,127,63,67,228,127,63,168,230,127,63,229,232,127,63,252,234,127,63,237,236,127,63,188,238,127,63,105,240,127,63,246,241,127,63,101,243,127,63,183,244,127,63,238,245,127,63,11,247,127,63,16,248,127,63,254,248,127,63,214,249,127,63,155,250,127,63,76,251,127,63,236,251,127,63,124,252,127,63,252,252,127,63,110,253,127,63,211,253,127,63,44,254,127,63,121,254,127,63,189,254,127,63,247,254,127,63,42,255,127,63,84,255,127,63,120,255,127,63,150,255,127,63,175,255,127,63,195,255,127,63,211,255,127,63,224,255,127,63,234,255,127,63,241,255,127,63,246,255,127,63,250,255,127,63,253,255,127,63,254,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,171,15,120,53,24,135,11,55,225,201,193,55,107,233,61,56,128,247,156,56,187,122,234,56,24,191,35,57,213,0,90,57,56,1,140,57,229,225,174,57,88,162,213,57,60,33,0,58,24,97,23,58,175,144,48,58,243,175,75,58,212,190,104,58,159,222,131,58,143,85,148,58,48,196,165,58,119,42,184,58,90,136,203,58,204,221,223,58,191,42,245,58,148,183,5,59,124,85,17,59,16,111,29,59,73,4,42,59,31,21,55,59,138,161,68,59,129,169,82,59,252,44,97,59,241,43,112,59,88,166,127,59,19,206,135,59,169,6,144,59,233,124,152,59,204,48,161,59,79,34,170,59,106,81,179,59,26,190,188,59,86,104,198,59,26,80,208,59,95,117,218,59,31,216,228,59,83,120,239,59,244,85,250,59,126,184,2,60,177,100,8,60,145,47,14,60,25,25,20,60,70,33,26,60,19,72,32,60,126,141,38,60,129,241,44,60,25,116,51,60,65,21,58,60,246,212,64,60,50,179,71,60,243,175,78,60,50,203,85,60,235,4,93,60,26,93,100,60,186,211,107,60,198,104,115,60,58,28,123,60,7,119,129,60,33,111,133,60,102,118,137,60,212,140,141,60,105,178,145,60,33,231,149,60,251,42,154,60,243,125,158,60,6,224,162,60,50,81,167,60,115,209,171,60,199,96,176,60,43,255,180,60,154,172,185,60,19,105,190,60,146,52,195,60,20,15,200,60,149,248,204,60,19,241,209,60,137,248,214,60,245,14,220,60,83,52,225,60,160,104,230,60,215,171,235,60,246,253,240,60,249,94,246,60,220,206,251,60,205,166,0,61,153,109,3,61,207,59,6,61,109,17,9,61,114,238,11,61,220,210,14,61,167,190,17,61,211,177,20,61,94,172,23,61,68,174,26,61,133,183,29,61,30,200,32,61,12,224,35,61,78,255,38,61,225,37,42,61,196,83,45,61,243,136,48,61,109,197,51,61,47,9,55,61,55,84,58,61,130,166,61,61,15,0,65,61,218,96,68,61,226,200,71,61,35,56,75,61,156,174,78,61,73,44,82,61,40,177,85,61,55,61,89,61,115,208,92,61,217,106,96,61,103,12,100,61,25,181,103,61,238,100,107,61,227,27,111,61,244,217,114,61,30,159,118,61,96,107,122,61,182,62,126,61,143,12,129,61,73,253,130,61,138,241,132,61,79,233,134,61,150,228,136,61,94,227,138,61,167,229,140,61,109,235,142,61,175,244,144,61,109,1,147,61,164,17,149,61,83,37,151,61,120,60,153,61,17,87,155,61,30,117,157,61,155,150,159,61,136,187,161,61,226,227,163,61,169,15,166,61,218,62,168,61,116,113,170,61,116,167,172,61,218,224,174,61,162,29,177,61,205,93,179,61,87,161,181,61,62,232,183,61,130,50,186,61,32,128,188,61,22,209,190,61,98,37,193,61,2,125,195,61,245,215,197,61,57,54,200,61,203,151,202,61,169,252,204,61,211,100,207,61,68,208,209,61,252,62,212,61,249,176,214,61,56,38,217,61,184,158,219,61,117,26,222,61,111,153,224,61,163,27,227,61,14,161,229,61,175,41,232,61,132,181,234,61,138,68,237,61,191,214,239,61,33,108,242,61,174,4,245,61,99,160,247,61,62,63,250,61,61,225,252,61,93,134,255,61,78,23,1,62,252,108,2,62,56,196,3,62,255,28,5,62,81,119,6,62,45,211,7,62,145,48,9,62,125,143,10,62,238,239,11,62,228,81,13,62,94,181,14,62,89,26,16,62,214,128,17,62,210,232,18,62,77,82,20,62,69,189,21,62,184,41,23,62,166,151,24,62,13,7,26,62,236,119,27,62,65,234,28,62,11,94,30,62,73,211,31,62,250,73,33,62,28,194,34,62,173,59,36,62,172,182,37,62,24,51,39,62,240,176,40,62,50,48,42,62,220,176,43,62,238,50,45,62,101,182,46,62,64,59,48,62,126,193,49,62,30,73,51,62,29,210,52,62,123,92,54,62,54,232,55,62,76,117,57,62,187,3,59,62,131,147,60,62,162,36,62,62,22,183,63,62,222,74,65,62,248,223,66,62,98,118,68,62,28,14,70,62,35,167,71,62,117,65,73,62,18,221,74,62,247,121,76,62,35,24,78,62,149,183,79,62,74,88,81,62,66,250,82,62,121,157,84,62,240,65,86,62,163,231,87,62,146,142,89,62,186,54,91,62,26,224,92,62,177,138,94,62,124,54,96,62,122,227,97,62,169,145,99,62,7,65,101,62,147,241,102,62,75,163,104,62,44,86,106,62,54,10,108,62,102,191,109,62,187,117,111,62,51,45,113,62,204,229,114,62,132,159,116,62,90,90,118,62,75,22,120,62,85,211,121,62,120,145,123,62,176,80,125,62,253,16,127,62,46,105,128,62,101,74,129,62,36,44,130,62,105,14,131,62,52,241,131,62,130,212,132,62,84,184,133,62,169,156,134,62,127,129,135,62,213,102,136,62,171,76,137,62,255,50,138,62,209,25,139,62,32,1,140,62,233,232,140,62,46,209,141,62,236,185,142,62,34,163,143,62,208,140,144,62,244,118,145,62,142,97,146,62,156,76,147,62,29,56,148,62,17,36,149,62,118,16,150,62,76,253,150,62,144,234,151,62,67,216,152,62,99,198,153,62,239,180,154,62,230,163,155,62,71,147,156,62,17,131,157,62,67,115,158,62,219,99,159,62,218,84,160,62,60,70,161,62,3,56,162,62,43,42,163,62,181,28,164,62,160,15,165,62,233,2,166,62,145,246,166,62,149,234,167,62,245,222,168,62,176,211,169,62,197,200,170,62,50,190,171,62,246,179,172,62,17,170,173,62,129,160,174,62,69,151,175,62,91,142,176,62,196,133,177,62,125,125,178,62,133,117,179,62,220,109,180,62,128,102,181,62,112,95,182,62,171,88,183,62,47,82,184,62,252,75,185,62,17,70,186,62,108,64,187,62,11,59,188,62,239,53,189,62,22,49,190,62,126,44,191,62,38,40,192,62,13,36,193,62,51,32,194,62,150,28,195,62,52,25,196,62,12,22,197,62,30,19,198,62,104,16,199,62,233,13,200,62,159,11,201,62,138,9,202,62,169,7,203,62,249,5,204,62,123,4,205,62,44,3,206,62,11,2,207,62,24,1,208,62,81,0,209,62,181,255,209,62,66,255,210,62,248,254,211,62,213,254,212,62,216,254,213,62,255,254,214,62,75,255,215,62,184,255,216,62,71,0,218,62,245,0,219,62,195,1,220,62,173,2,221,62,180,3,222,62,214,4,223,62,17,6,224,62,101,7,225,62,208,8,226,62,81,10,227,62,231,11,228,62,144,13,229,62,76,15,230,62,25,17,231,62,245,18,232,62,224,20,233,62,217,22,234,62,221,24,235,62,236,26,236,62,5,29,237,62,39,31,238,62,79,33,239,62,125,35,240,62,176,37,241,62,230,39,242,62,31,42,243,62,88,44,244,62,145,46,245,62,200,48,246,62,253,50,247,62,45,53,248,62,88,55,249,62,124,57,250,62,153,59,251,62,172,61,252,62,181,63,253,62,179,65,254,62,163,67,255,62,195,34,0,63,173,163,0,63,142,36,1,63,102,165,1,63,53,38,2,63,250,166,2,63,180,39,3,63,99,168,3,63,5,41,4,63,155,169,4,63,36,42,5,63,159,170,5,63,12,43,6,63,105,171,6,63,183,43,7,63,244,171,7,63,32,44,8,63,59,172,8,63,68,44,9,63,58,172,9,63,28,44,10,63,235,171,10,63,164,43,11,63,73,171,11,63,216,42,12,63,80,170,12,63,177,41,13,63,251,168,13,63,44,40,14,63,69,167,14,63,68,38,15,63,41,165,15,63,243,35,16,63,162,162,16,63,53,33,17,63,172,159,17,63,5,30,18,63,65,156,18,63,95,26,19,63,94,152,19,63,61,22,20,63,252,147,20,63,155,17,21,63,24,143,21,63,116,12,22,63,173,137,22,63,195,6,23,63,182,131,23,63,133,0,24,63,46,125,24,63,179,249,24,63,18,118,25,63,74,242,25,63,91,110,26,63,69,234,26,63,6,102,27,63,159,225,27,63,14,93,28,63,84,216,28,63,111,83,29,63,95,206,29,63,36,73,30,63,188,195,30,63,40,62,31,63,102,184,31,63,119,50,32,63,90,172,32,63,14,38,33,63,146,159,33,63,230,24,34,63,10,146,34,63,253,10,35,63,190,131,35,63,77,252,35,63,169,116,36,63,211,236,36,63,200,100,37,63,138,220,37,63,22,84,38,63,110,203,38,63,143,66,39,63,122,185,39,63,47,48,40,63,172,166,40,63,241,28,41,63,254,146,41,63,210,8,42,63,108,126,42,63,205,243,42,63,243,104,43,63,223,221,43,63,143,82,44,63,3,199,44,63,59,59,45,63,54,175,45,63,244,34,46,63,116,150,46,63,182,9,47,63,185,124,47,63,125,239,47,63,1,98,48,63,69,212,48,63,72,70,49,63,10,184,49,63,139,41,50,63,202,154,50,63,198,11,51,63,127,124,51,63,246,236,51,63,40,93,52,63,22,205,52,63,191,60,53,63,36,172,53,63,66,27,54,63,27,138,54,63,174,248,54,63,249,102,55,63,254,212,55,63,187,66,56,63,47,176,56,63,91,29,57,63,63,138,57,63,217,246,57,63,41,99,58,63,48,207,58,63,236,58,59,63,93,166,59,63,130,17,60,63,93,124,60,63,235,230,60,63,44,81,61,63,33,187,61,63,201,36,62,63,35,142,62,63,48,247,62,63,238,95,63,63,94,200,63,63,126,48,64,63,80,152,64,63,209,255,64,63,3,103,65,63,228,205,65,63,117,52,66,63,181,154,66,63,163,0,67,63,64,102,67,63,139,203,67,63,131,48,68,63,41,149,68,63,124,249,68,63,123,93,69,63,39,193,69,63,127,36,70,63,132,135,70,63,51,234,70,63,142,76,71,63,148,174,71,63,68,16,72,63,159,113,72,63,164,210,72,63,83,51,73,63,172,147,73,63,174,243,73,63,89,83,74,63,173,178,74,63,169,17,75,63,77,112,75,63,154,206,75,63,143,44,76,63,43,138,76,63,110,231,76,63,89,68,77,63,234,160,77,63,34,253,77,63,0,89,78,63,133,180,78,63,176,15,79,63,128,106,79,63,246,196,79,63,18,31,80,63,210,120,80,63,56,210,80,63,66,43,81,63,242,131,81,63,69,220,81,63,61,52,82,63,217,139,82,63,24,227,82,63,252,57,83,63,131,144,83,63,174,230,83,63,123,60,84,63,236,145,84,63,0,231,84,63,183,59,85,63,16,144,85,63,12,228,85,63,170,55,86,63,235,138,86,63,206,221,86,63,83,48,87,63,121,130,87,63,66,212,87,63,172,37,88,63,184,118,88,63,101,199,88,63,180,23,89,63,164,103,89,63,53,183,89,63,104,6,90,63,59,85,90,63,175,163,90,63,197,241,90,63,123,63,91,63,210,140,91,63,201,217,91,63,97,38,92,63,154,114,92,63,115,190,92,63,237,9,93,63,7,85,93,63,194,159,93,63,29,234,93,63,24,52,94,63,179,125,94,63,239,198,94,63,203,15,95,63,72,88,95,63,100,160,95,63,33,232,95,63,126,47,96,63,123,118,96,63,24,189,96,63,85,3,97,63,51,73,97,63,177,142,97,63,207,211,97,63,141,24,98,63,236,92,98,63,235,160,98,63,138,228,98,63,202,39,99,63,170,106,99,63,42,173,99,63,75,239,99,63,13,49,100,63,111,114,100,63,114,179,100,63,21,244,100,63,90,52,101,63,63,116,101,63,197,179,101,63,236,242,101,63,180,49,102,63,29,112,102,63,39,174,102,63,211,235,102,63,32,41,103,63,15,102,103,63,159,162,103,63,209,222,103,63,164,26,104,63,26,86,104,63,49,145,104,63,235,203,104,63,71,6,105,63,69,64,105,63,230,121,105,63,42,179,105,63,16,236,105,63,153,36,106,63,197,92,106,63,148,148,106,63,7,204,106,63,29,3,107,63,214,57,107,63,52,112,107,63,53,166,107,63,218,219,107,63,36,17,108,63,18,70,108,63,164,122,108,63,220,174,108,63,184,226,108,63,57,22,109,63,96,73,109,63,44,124,109,63,157,174,109,63,181,224,109,63,115,18,110,63,214,67,110,63,225,116,110,63,146,165,110,63,233,213,110,63,232,5,111,63,142,53,111,63,219,100,111,63,209,147,111,63,110,194,111,63,179,240,111,63,160,30,112,63,54,76,112,63,117,121,112,63,93,166,112,63,239,210,112,63,41,255,112,63,14,43,113,63,156,86,113,63,213,129,113,63,184,172,113,63,70,215,113,63,127,1,114,63,99,43,114,63,243,84,114,63,46,126,114,63,21,167,114,63,169,207,114,63,233,247,114,63,214,31,115,63,113,71,115,63,184,110,115,63,173,149,115,63,80,188,115,63,162,226,115,63,161,8,116,63,80,46,116,63,174,83,116,63,187,120,116,63,119,157,116,63,228,193,116,63,1,230,116,63,206,9,117,63,76,45,117,63,123,80,117,63,92,115,117,63,238,149,117,63,51,184,117,63,42,218,117,63,211,251,117,63,48,29,118,63,64,62,118,63,3,95,118,63,122,127,118,63,166,159,118,63,134,191,118,63,27,223,118,63,101,254,118,63,101,29,119,63,27,60,119,63,135,90,119,63,169,120,119,63,131,150,119,63,19,180,119,63,91,209,119,63,91,238,119,63,20,11,120,63,132,39,120,63,174,67,120,63,145,95,120,63,46,123,120,63,132,150,120,63,149,177,120,63,96,204,120,63,231,230,120,63,41,1,121,63,38,27,121,63,223,52,121,63,85,78,121,63,136,103,121,63,120,128,121,63,37,153,121,63,144,177,121,63,185,201,121,63,161,225,121,63,72,249,121,63,174,16,122,63,212,39,122,63,185,62,122,63,96,85,122,63,198,107,122,63,238,129,122,63,216,151,122,63,131,173,122,63,241,194,122,63,33,216,122,63,20,237,122,63,202,1,123,63,68,22,123,63,130,42,123,63,133,62,123,63,77,82,123,63,217,101,123,63,43,121,123,63,68,140,123,63,34,159,123,63,200,177,123,63,52,196,123,63,104,214,123,63,99,232,123,63,39,250,123,63,180,11,124,63,9,29,124,63,40,46,124,63,17,63,124,63,196,79,124,63,65,96,124,63,137,112,124,63,156,128,124,63,124,144,124,63,39,160,124,63,158,175,124,63,226,190,124,63,244,205,124,63,211,220,124,63,128,235,124,63,251,249,124,63,69,8,125,63,94,22,125,63,71,36,125,63,255,49,125,63,136,63,125,63,225,76,125,63,11,90,125,63,7,103,125,63,212,115,125,63,115,128,125,63,229,140,125,63,42,153,125,63,66,165,125,63,46,177,125,63,238,188,125,63,130,200,125,63,235,211,125,63,41,223,125,63,61,234,125,63,38,245,125,63,230,255,125,63,124,10,126,63,234,20,126,63,47,31,126,63,75,41,126,63,64,51,126,63,13,61,126,63,180,70,126,63,51,80,126,63,140,89,126,63,191,98,126,63,205,107,126,63,181,116,126,63,120,125,126,63,23,134,126,63,146,142,126,63,233,150,126,63,28,159,126,63,44,167,126,63,26,175,126,63,229,182,126,63,142,190,126,63,22,198,126,63,124,205,126,63,194,212,126,63,231,219,126,63,235,226,126,63,208,233,126,63,149,240,126,63,59,247,126,63,195,253,126,63,44,4,127,63,118,10,127,63,163,16,127,63,179,22,127,63,165,28,127,63,123,34,127,63,52,40,127,63,210,45,127,63,83,51,127,63,186,56,127,63,5,62,127,63,53,67,127,63,75,72,127,63,72,77,127,63,42,82,127,63,243,86,127,63,163,91,127,63,58,96,127,63,185,100,127,63,32,105,127,63,111,109,127,63,166,113,127,63,199,117,127,63,208,121,127,63,196,125,127,63,161,129,127,63,104,133,127,63,25,137,127,63,182,140,127,63,61,144,127,63,176,147,127,63,14,151,127,63,89,154,127,63,143,157,127,63,179,160,127,63,195,163,127,63,192,166,127,63,171,169,127,63,132,172,127,63,74,175,127,63,255,177,127,63,163,180,127,63,53,183,127,63,183,185,127,63,40,188,127,63,137,190,127,63,217,192,127,63,26,195,127,63,76,197,127,63,111,199,127,63,130,201,127,63,135,203,127,63,126,205,127,63,102,207,127,63,65,209,127,63,14,211,127,63,205,212,127,63,128,214,127,63,38,216,127,63,191,217,127,63,76,219,127,63,204,220,127,63,65,222,127,63,170,223,127,63,8,225,127,63,91,226,127,63,163,227,127,63,224,228,127,63,19,230,127,63,59,231,127,63,90,232,127,63,110,233,127,63,122,234,127,63,124,235,127,63,116,236,127,63,100,237,127,63,75,238,127,63,42,239,127,63,1,240,127,63,207,240,127,63,149,241,127,63,84,242,127,63,12,243,127,63,188,243,127,63,101,244,127,63,7,245,127,63,162,245,127,63,55,246,127,63,198,246,127,63,78,247,127,63,209,247,127,63,77,248,127,63,196,248,127,63,54,249,127,63,162,249,127,63,9,250,127,63,108,250,127,63,201,250,127,63,34,251,127,63,118,251,127,63,198,251,127,63,18,252,127,63,89,252,127,63,157,252,127,63,221,252,127,63,26,253,127,63,83,253,127,63,136,253,127,63,187,253,127,63,234,253,127,63,22,254,127,63,64,254,127,63,103,254,127,63,139,254,127,63,173,254,127,63,204,254,127,63,234,254,127,63,5,255,127,63,30,255,127,63,53,255,127,63,74,255,127,63,94,255,127,63,112,255,127,63,128,255,127,63,143,255,127,63,157,255,127,63,169,255,127,63,180,255,127,63,191,255,127,63,200,255,127,63,208,255,127,63,215,255,127,63,221,255,127,63,227,255,127,63,232,255,127,63,236,255,127,63,239,255,127,63,243,255,127,63,245,255,127,63,248,255,127,63,249,255,127,63,251,255,127,63,252,255,127,63,253,255,127,63,254,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,204,8,120,52,171,134,11,54,79,202,193,54,190,233,61,55,238,247,156,55,192,123,234,55,43,192,35,56,161,2,90,56,189,2,140,56,76,228,174,56,227,165,213,56,199,35,0,57,168,100,23,57,134,149,48,57,104,182,75,57,64,199,104,57,7,228,131,57,105,92,148,57,191,204,165,57,6,53,184,57,65,149,203,57,105,237,223,57,120,61,245,57,184,194,5,58,166,98,17,58,134,126,29,58,81,22,42,58,9,42,55,58,172,185,68,58,54,197,82,58,165,76,97,58,250,79,112,58,47,207,127,58,34,229,135,58,154,32,144,58,255,153,152,58,80,81,161,58,139,70,170,58,174,121,179,58,186,234,188,58,171,153,198,58,129,134,208,58,58,177,218,58,212,25,229,58,79,192,239,58,167,164,250,58,109,227,2,59,117,147,8,59,105,98,14,59,73,80,20,59,19,93,26,59,199,136,32,59,100,211,38,59,232,60,45,59,83,197,51,59,164,108,58,59,218,50,65,59,243,23,72,59,239,27,79,59,204,62,86,59,138,128,93,59,38,225,100,59,161,96,108,59,249,254,115,59,45,188,123,59,29,204,129,59,145,201,133,59,113,214,137,59,188,242,141,59,113,30,146,59,145,89,150,59,26,164,154,59,12,254,158,59,102,103,163,59,40,224,167,59,80,104,172,59,222,255,176,59,209,166,181,59,40,93,186,59,228,34,191,59,2,248,195,59,131,220,200,59,101,208,205,59,168,211,210,59,74,230,215,59,76,8,221,59,172,57,226,59,105,122,231,59,131,202,236,59,249,41,242,59,202,152,247,59,245,22,253,59,60,82,1,60,170,32,4,60,196,246,6,60,137,212,9,60,249,185,12,60,19,167,15,60,216,155,18,60,69,152,21,60,92,156,24,60,26,168,27,60,129,187,30,60,143,214,33,60,69,249,36,60,160,35,40,60,162,85,43,60,73,143,46,60,149,208,49,60,133,25,53,60,26,106,56,60,81,194,59,60,44,34,63,60,168,137,66,60,199,248,69,60,134,111,73,60,230,237,76,60,231,115,80,60,134,1,84,60,197,150,87,60,162,51,91,60,28,216,94,60,52,132,98,60,232,55,102,60,56,243,105,60,35,182,109,60,170,128,113,60,202,82,117,60,131,44,121,60,214,13,125,60,96,123,128,60,161,115,130,60,174,111,132,60,134,111,134,60,40,115,136,60,149,122,138,60,205,133,140,60,206,148,142,60,152,167,144,60,44,190,146,60,136,216,148,60,173,246,150,60,154,24,153,60,78,62,155,60,202,103,157,60,13,149,159,60,23,198,161,60,231,250,163,60,125,51,166,60,217,111,168,60,249,175,170,60,223,243,172,60,137,59,175,60,247,134,177,60,40,214,179,60,29,41,182,60,213,127,184,60,80,218,186,60,140,56,189,60,138,154,191,60,74,0,194,60,202,105,196,60,11,215,198,60,12,72,201,60,205,188,203,60,77,53,206,60,140,177,208,60,137,49,211,60,69,181,213,60,189,60,216,60,243,199,218,60,230,86,221,60,149,233,223,60,0,128,226,60,39,26,229,60,8,184,231,60,164,89,234,60,250,254,236,60,9,168,239,60,210,84,242,60,83,5,245,60,141,185,247,60,126,113,250,60,39,45,253,60,134,236,255,60,206,87,1,61,52,187,2,61,117,32,4,61,144,135,5,61,133,240,6,61,84,91,8,61,253,199,9,61,128,54,11,61,219,166,12,61,16,25,14,61,29,141,15,61,3,3,17,61,193,122,18,61,87,244,19,61,197,111,21,61,10,237,22,61,39,108,24,61,26,237,25,61,228,111,27,61,132,244,28,61,251,122,30,61,71,3,32,61,105,141,33,61,96,25,35,61,45,167,36,61,206,54,38,61,67,200,39,61,141,91,41,61,171,240,42,61,156,135,44,61,96,32,46,61,248,186,47,61,99,87,49,61,160,245,50,61,175,149,52,61,144,55,54,61,67,219,55,61,199,128,57,61,28,40,59,61,65,209,60,61,56,124,62,61,254,40,64,61,148,215,65,61,250,135,67,61,47,58,69,61,51,238,70,61,5,164,72,61,166,91,74,61,20,21,76,61,80,208,77,61,90,141,79,61,49,76,81,61,212,12,83,61,68,207,84,61,128,147,86,61,135,89,88,61,90,33,90,61,248,234,91,61,97,182,93,61,148,131,95,61,145,82,97,61,88,35,99,61,232,245,100,61,65,202,102,61,100,160,104,61,78,120,106,61,1,82,108,61,123,45,110,61,188,10,112,61,197,233,113,61,148,202,115,61,41,173,117,61,133,145,119,61,166,119,121,61,140,95,123,61,55,73,125,61,166,52,127,61,237,144,128,61,105,136,129,61,198,128,130,61,5,122,131,61,37,116,132,61,39,111,133,61,9,107,134,61,204,103,135,61,112,101,136,61,244,99,137,61,88,99,138,61,157,99,139,61,193,100,140,61,196,102,141,61,167,105,142,61,106,109,143,61,11,114,144,61,139,119,145,61,234,125,146,61,40,133,147,61,67,141,148,61,61,150,149,61,20,160,150,61,201,170,151,61,92,182,152,61,203,194,153,61,24,208,154,61,66,222,155,61,72,237,156,61,42,253,157,61,233,13,159,61,132,31,160,61,250,49,161,61,76,69,162,61,122,89,163,61,130,110,164,61,101,132,165,61,35,155,166,61,188,178,167,61,47,203,168,61,124,228,169,61,162,254,170,61,163,25,172,61,124,53,173,61,47,82,174,61,187,111,175,61,31,142,176,61,92,173,177,61,113,205,178,61,94,238,179,61,35,16,181,61,192,50,182,61,52,86,183,61,127,122,184,61,160,159,185,61,153,197,186,61,104,236,187,61,13,20,189,61,136,60,190,61,217,101,191,61,255,143,192,61,250,186,193,61,202,230,194,61,111,19,196,61,233,64,197,61,55,111,198,61,89,158,199,61,78,206,200,61,23,255,201,61,179,48,203,61,35,99,204,61,101,150,205,61,121,202,206,61,96,255,207,61,25,53,209,61,164,107,210,61,0,163,211,61,45,219,212,61,44,20,214,61,251,77,215,61,154,136,216,61,10,196,217,61,74,0,219,61,89,61,220,61,56,123,221,61,230,185,222,61,99,249,223,61,174,57,225,61,200,122,226,61,176,188,227,61,102,255,228,61,233,66,230,61,58,135,231,61,88,204,232,61,66,18,234,61,249,88,235,61,124,160,236,61,203,232,237,61,230,49,239,61,204,123,240,61,125,198,241,61,249,17,243,61,63,94,244,61,79,171,245,61,42,249,246,61,206,71,248,61,60,151,249,61,114,231,250,61,114,56,252,61,58,138,253,61,202,220,254,61,17,24,0,62,33,194,0,62,149,108,1,62,108,23,2,62,166,194,2,62,68,110,3,62,69,26,4,62,168,198,4,62,111,115,5,62,152,32,6,62,35,206,6,62,17,124,7,62,98,42,8,62,20,217,8,62,40,136,9,62,157,55,10,62,117,231,10,62,173,151,11,62,71,72,12,62,66,249,12,62,158,170,13,62,91,92,14,62,120,14,15,62,246,192,15,62,213,115,16,62,19,39,17,62,177,218,17,62,175,142,18,62,13,67,19,62,202,247,19,62,231,172,20,62,99,98,21,62,62,24,22,62,120,206,22,62,16,133,23,62,7,60,24,62,92,243,24,62,16,171,25,62,33,99,26,62,145,27,27,62,94,212,27,62,137,141,28,62,17,71,29,62,246,0,30,62,56,187,30,62,215,117,31,62,211,48,32,62,43,236,32,62,224,167,33,62,241,99,34,62,93,32,35,62,38,221,35,62,74,154,36,62,202,87,37,62,165,21,38,62,219,211,38,62,108,146,39,62,88,81,40,62,159,16,41,62,64,208,41,62,59,144,42,62,144,80,43,62,63,17,44,62,72,210,44,62,170,147,45,62,102,85,46,62,122,23,47,62,232,217,47,62,175,156,48,62,206,95,49,62,69,35,50,62,21,231,50,62,61,171,51,62,189,111,52,62,148,52,53,62,195,249,53,62,73,191,54,62,38,133,55,62,91,75,56,62,230,17,57,62,199,216,57,62,255,159,58,62,141,103,59,62,113,47,60,62,171,247,60,62,59,192,61,62,31,137,62,62,89,82,63,62,232,27,64,62,204,229,64,62,5,176,65,62,146,122,66,62,115,69,67,62,168,16,68,62,49,220,68,62,14,168,69,62,62,116,70,62,194,64,71,62,152,13,72,62,193,218,72,62,61,168,73,62,12,118,74,62,44,68,75,62,159,18,76,62,100,225,76,62,122,176,77,62,225,127,78,62,154,79,79,62,164,31,80,62,255,239,80,62,170,192,81,62,166,145,82,62,242,98,83,62,141,52,84,62,121,6,85,62,180,216,85,62,63,171,86,62,25,126,87,62,65,81,88,62,185,36,89,62,126,248,89,62,147,204,90,62,245,160,91,62,165,117,92,62,163,74,93,62,238,31,94,62,135,245,94,62,109,203,95,62,159,161,96,62,30,120,97,62,233,78,98,62,1,38,99,62,100,253,99,62,19,213,100,62,14,173,101,62,84,133,102,62,229,93,103,62,193,54,104,62,231,15,105,62,88,233,105,62,19,195,106,62,24,157,107,62,103,119,108,62,255,81,109,62,224,44,110,62,11,8,111,62,126,227,111,62,58,191,112,62,62,155,113,62,139,119,114,62,31,84,115,62,251,48,116,62,31,14,117,62,138,235,117,62,59,201,118,62,52,167,119,62,115,133,120,62,248,99,121,62,196,66,122,62,213,33,123,62,44,1,124,62,200,224,124,62,170,192,125,62,208,160,126,62,59,129,127,62,245,48,128,62,111,161,128,62,11,18,129,62,201,130,129,62,168,243,129,62,169,100,130,62,204,213,130,62,15,71,131,62,117,184,131,62,251,41,132,62,162,155,132,62,107,13,133,62,84,127,133,62,93,241,133,62,136,99,134,62,210,213,134,62,61,72,135,62,200,186,135,62,116,45,136,62,63,160,136,62,42,19,137,62,52,134,137,62,94,249,137,62,168,108,138,62,17,224,138,62,153,83,139,62,64,199,139,62,6,59,140,62,235,174,140,62,239,34,141,62,17,151,141,62,82,11,142,62,177,127,142,62,46,244,142,62,201,104,143,62,130,221,143,62,89,82,144,62,78,199,144,62,96,60,145,62,143,177,145,62,220,38,146,62,70,156,146,62,205,17,147,62,113,135,147,62,50,253,147,62,16,115,148,62,9,233,148,62,32,95,149,62,82,213,149,62,161,75,150,62,12,194,150,62,146,56,151,62,53,175,151,62,243,37,152,62,204,156,152,62,193,19,153,62,209,138,153,62,252,1,154,62,66,121,154,62,163,240,154,62,31,104,155,62,181,223,155,62,101,87,156,62,48,207,156,62,21,71,157,62,20,191,157,62,45,55,158,62,96,175,158,62,172,39,159,62,18,160,159,62,145,24,160,62,41,145,160,62,218,9,161,62,165,130,161,62,136,251,161,62,132,116,162,62,152,237,162,62,197,102,163,62,10,224,163,62,103,89,164,62,220,210,164,62,105,76,165,62,14,198,165,62,202,63,166,62,158,185,166,62,137,51,167,62,139,173,167,62,164,39,168,62,213,161,168,62,27,28,169,62],"i8",L3,R.GLOBAL_BASE+520696),d3([121,150,169,62,237,16,170,62,119,139,170,62,24,6,171,62,206,128,171,62,155,251,171,62,125,118,172,62,117,241,172,62,130,108,173,62,165,231,173,62,221,98,174,62,42,222,174,62,140,89,175,62,2,213,175,62,142,80,176,62,46,204,176,62,226,71,177,62,170,195,177,62,135,63,178,62,119,187,178,62,124,55,179,62,148,179,179,62,191,47,180,62,254,171,180,62,80,40,181,62,181,164,181,62,45,33,182,62,184,157,182,62,85,26,183,62,5,151,183,62,199,19,184,62,156,144,184,62,130,13,185,62,123,138,185,62,133,7,186,62,161,132,186,62,206,1,187,62,13,127,187,62,93,252,187,62,190,121,188,62,48,247,188,62,178,116,189,62,70,242,189,62,233,111,190,62,157,237,190,62,98,107,191,62,54,233,191,62,26,103,192,62,14,229,192,62,17,99,193,62,36,225,193,62,70,95,194,62,119,221,194,62,184,91,195,62,7,218,195,62,100,88,196,62,209,214,196,62,75,85,197,62,212,211,197,62,107,82,198,62,16,209,198,62,195,79,199,62,132,206,199,62,82,77,200,62,45,204,200,62,21,75,201,62,11,202,201,62,13,73,202,62,29,200,202,62,56,71,203,62,97,198,203,62,149,69,204,62,214,196,204,62,34,68,205,62,123,195,205,62,223,66,206,62,79,194,206,62,202,65,207,62,81,193,207,62,226,64,208,62,127,192,208,62,38,64,209,62,216,191,209,62,148,63,210,62,91,191,210,62,44,63,211,62,7,191,211,62,235,62,212,62,218,190,212,62,210,62,213,62,211,190,213,62,222,62,214,62,242,190,214,62,15,63,215,62,53,191,215,62,99,63,216,62,154,191,216,62,217,63,217,62,32,192,217,62,112,64,218,62,199,192,218,62,38,65,219,62,140,193,219,62,250,65,220,62,112,194,220,62,236,66,221,62,112,195,221,62,250,67,222,62,139,196,222,62,34,69,223,62,192,197,223,62,100,70,224,62,14,199,224,62,189,71,225,62,115,200,225,62,46,73,226,62,239,201,226,62,181,74,227,62,127,203,227,62,79,76,228,62,36,205,228,62,253,77,229,62,219,206,229,62,190,79,230,62,164,208,230,62,142,81,231,62,125,210,231,62,111,83,232,62,100,212,232,62,93,85,233,62,89,214,233,62,89,87,234,62,91,216,234,62,96,89,235,62,104,218,235,62,114,91,236,62,126,220,236,62,141,93,237,62,158,222,237,62,176,95,238,62,196,224,238,62,218,97,239,62,241,226,239,62,10,100,240,62,35,229,240,62,62,102,241,62,89,231,241,62,116,104,242,62,145,233,242,62,173,106,243,62,202,235,243,62,230,108,244,62,3,238,244,62,31,111,245,62,59,240,245,62,86,113,246,62,112,242,246,62,137,115,247,62,161,244,247,62,184,117,248,62,206,246,248,62,226,119,249,62,244,248,249,62,4,122,250,62,18,251,250,62,30,124,251,62,40,253,251,62,47,126,252,62,52,255,252,62,54,128,253,62,52,1,254,62,48,130,254,62,40,3,255,62,29,132,255,62,135,2,0,63,254,66,0,63,115,131,0,63,230,195,0,63,86,4,1,63,197,68,1,63,49,133,1,63,155,197,1,63,3,6,2,63,103,70,2,63,202,134,2,63,42,199,2,63,135,7,3,63,225,71,3,63,56,136,3,63,141,200,3,63,222,8,4,63,44,73,4,63,119,137,4,63,191,201,4,63,3,10,5,63,68,74,5,63,130,138,5,63,188,202,5,63,242,10,6,63,36,75,6,63,83,139,6,63,126,203,6,63,165,11,7,63,199,75,7,63,230,139,7,63,1,204,7,63,23,12,8,63,41,76,8,63,54,140,8,63,63,204,8,63,67,12,9,63,67,76,9,63,62,140,9,63,52,204,9,63,37,12,10,63,18,76,10,63,249,139,10,63,219,203,10,63,184,11,11,63,144,75,11,63,98,139,11,63,47,203,11,63,246,10,12,63,184,74,12,63,116,138,12,63,43,202,12,63,219,9,13,63,134,73,13,63,43,137,13,63,202,200,13,63,98,8,14,63,245,71,14,63,129,135,14,63,7,199,14,63,135,6,15,63,0,70,15,63,114,133,15,63,222,196,15,63,67,4,16,63,161,67,16,63,249,130,16,63,73,194,16,63,147,1,17,63,213,64,17,63,17,128,17,63,69,191,17,63,114,254,17,63,151,61,18,63,181,124,18,63,203,187,18,63,218,250,18,63,225,57,19,63,225,120,19,63,216,183,19,63,200,246,19,63,176,53,20,63,143,116,20,63,103,179,20,63,54,242,20,63,253,48,21,63,188,111,21,63,114,174,21,63,32,237,21,63,197,43,22,63,98,106,22,63,246,168,22,63,129,231,22,63,3,38,23,63,125,100,23,63,237,162,23,63,84,225,23,63,178,31,24,63,7,94,24,63,83,156,24,63,149,218,24,63,206,24,25,63,253,86,25,63,35,149,25,63,63,211,25,63,82,17,26,63,90,79,26,63,89,141,26,63,78,203,26,63,57,9,27,63,25,71,27,63,240,132,27,63,188,194,27,63,126,0,28,63,54,62,28,63,227,123,28,63,134,185,28,63,30,247,28,63,172,52,29,63,47,114,29,63,167,175,29,63,20,237,29,63,118,42,30,63,206,103,30,63,26,165,30,63,91,226,30,63,145,31,31,63,188,92,31,63,219,153,31,63,239,214,31,63,247,19,32,63,244,80,32,63,230,141,32,63,203,202,32,63,165,7,33,63,115,68,33,63,53,129,33,63,235,189,33,63,150,250,33,63,52,55,34,63,198,115,34,63,75,176,34,63,197,236,34,63,50,41,35,63,146,101,35,63,230,161,35,63,46,222,35,63,105,26,36,63,151,86,36,63,185,146,36,63,205,206,36,63,213,10,37,63,208,70,37,63,190,130,37,63,158,190,37,63,114,250,37,63,56,54,38,63,241,113,38,63,157,173,38,63,59,233,38,63,204,36,39,63,79,96,39,63,197,155,39,63,45,215,39,63,135,18,40,63,211,77,40,63,18,137,40,63,66,196,40,63,101,255,40,63,121,58,41,63,128,117,41,63,120,176,41,63,98,235,41,63,62,38,42,63,11,97,42,63,202,155,42,63,122,214,42,63,28,17,43,63,175,75,43,63,52,134,43,63,170,192,43,63,16,251,43,63,105,53,44,63,178,111,44,63,236,169,44,63,23,228,44,63,51,30,45,63,64,88,45,63,61,146,45,63,43,204,45,63,10,6,46,63,218,63,46,63,154,121,46,63,74,179,46,63,235,236,46,63,124,38,47,63,254,95,47,63,112,153,47,63,210,210,47,63,36,12,48,63,102,69,48,63,152,126,48,63,186,183,48,63,204,240,48,63,205,41,49,63,191,98,49,63,160,155,49,63,113,212,49,63,49,13,50,63,225,69,50,63,128,126,50,63,15,183,50,63,141,239,50,63,251,39,51,63,87,96,51,63,163,152,51,63,222,208,51,63,8,9,52,63,34,65,52,63,42,121,52,63,33,177,52,63,7,233,52,63,219,32,53,63,159,88,53,63,81,144,53,63,242,199,53,63,129,255,53,63,255,54,54,63,108,110,54,63,198,165,54,63,16,221,54,63,71,20,55,63,109,75,55,63,129,130,55,63,131,185,55,63,116,240,55,63,82,39,56,63,30,94,56,63,217,148,56,63,129,203,56,63,23,2,57,63,155,56,57,63,13,111,57,63,108,165,57,63,185,219,57,63,244,17,58,63,28,72,58,63,50,126,58,63,53,180,58,63,38,234,58,63,4,32,59,63,207,85,59,63,135,139,59,63,45,193,59,63,192,246,59,63,64,44,60,63,173,97,60,63,7,151,60,63,78,204,60,63,130,1,61,63,163,54,61,63,177,107,61,63,171,160,61,63,146,213,61,63,102,10,62,63,39,63,62,63,212,115,62,63,110,168,62,63,244,220,62,63,103,17,63,63,198,69,63,63,17,122,63,63,73,174,63,63,109,226,63,63,126,22,64,63,122,74,64,63,99,126,64,63,56,178,64,63,248,229,64,63,165,25,65,63,62,77,65,63,195,128,65,63,52,180,65,63,144,231,65,63,216,26,66,63,13,78,66,63,44,129,66,63,56,180,66,63,47,231,66,63,18,26,67,63,224,76,67,63,154,127,67,63,64,178,67,63,208,228,67,63,77,23,68,63,180,73,68,63,7,124,68,63,69,174,68,63,111,224,68,63,131,18,69,63,131,68,69,63,110,118,69,63,68,168,69,63,5,218,69,63,177,11,70,63,72,61,70,63,202,110,70,63,55,160,70,63,143,209,70,63,210,2,71,63,255,51,71,63,23,101,71,63,26,150,71,63,8,199,71,63,224,247,71,63,163,40,72,63,81,89,72,63,233,137,72,63,107,186,72,63,216,234,72,63,48,27,73,63,114,75,73,63,158,123,73,63,181,171,73,63,181,219,73,63,161,11,74,63,118,59,74,63,54,107,74,63,224,154,74,63,116,202,74,63,242,249,74,63,90,41,75,63,173,88,75,63,233,135,75,63,15,183,75,63,32,230,75,63,26,21,76,63,254,67,76,63,204,114,76,63,132,161,76,63,38,208,76,63,177,254,76,63,38,45,77,63,133,91,77,63,206,137,77,63,0,184,77,63,28,230,77,63,34,20,78,63,17,66,78,63,234,111,78,63,172,157,78,63,88,203,78,63,238,248,78,63,108,38,79,63,213,83,79,63,38,129,79,63,97,174,79,63,134,219,79,63,147,8,80,63,138,53,80,63,107,98,80,63,52,143,80,63,231,187,80,63,131,232,80,63,8,21,81,63,119,65,81,63,206,109,81,63,15,154,81,63,57,198,81,63,76,242,81,63,71,30,82,63,44,74,82,63,250,117,82,63,177,161,82,63,81,205,82,63,218,248,82,63,76,36,83,63,166,79,83,63,234,122,83,63,22,166,83,63,44,209,83,63,42,252,83,63,17,39,84,63,224,81,84,63,153,124,84,63,58,167,84,63,196,209,84,63,54,252,84,63,146,38,85,63,214,80,85,63,2,123,85,63,24,165,85,63,22,207,85,63,252,248,85,63,204,34,86,63,131,76,86,63,36,118,86,63,172,159,86,63,30,201,86,63,120,242,86,63,186,27,87,63,229,68,87,63,248,109,87,63,244,150,87,63,216,191,87,63,165,232,87,63,90,17,88,63,248,57,88,63,126,98,88,63,236,138,88,63,67,179,88,63,130,219,88,63,169,3,89,63,185,43,89,63,177,83,89,63,145,123,89,63,90,163,89,63,11,203,89,63,164,242,89,63,37,26,90,63,143,65,90,63,225,104,90,63,27,144,90,63,62,183,90,63,72,222,90,63,59,5,91,63,22,44,91,63,217,82,91,63,133,121,91,63,24,160,91,63,148,198,91,63,248,236,91,63,68,19,92,63,120,57,92,63,149,95,92,63,153,133,92,63,134,171,92,63,91,209,92,63,24,247,92,63,189,28,93,63,74,66,93,63,191,103,93,63,28,141,93,63,98,178,93,63,143,215,93,63,165,252,93,63,162,33,94,63,136,70,94,63,86,107,94,63,11,144,94,63,169,180,94,63,47,217,94,63,157,253,94,63,243,33,95,63,49,70,95,63,88,106,95,63,102,142,95,63,92,178,95,63,59,214,95,63,1,250,95,63,175,29,96,63,70,65,96,63,196,100,96,63,43,136,96,63,122,171,96,63,176,206,96,63,207,241,96,63,214,20,97,63,197,55,97,63,155,90,97,63,90,125,97,63,1,160,97,63,144,194,97,63,8,229,97,63,103,7,98,63,174,41,98,63,221,75,98,63,245,109,98,63,244,143,98,63,220,177,98,63,171,211,98,63,99,245,98,63,3,23,99,63,139,56,99,63,251,89,99,63,83,123,99,63,147,156,99,63,188,189,99,63,204,222,99,63,197,255,99,63,166,32,100,63,110,65,100,63,32,98,100,63,185,130,100,63,58,163,100,63,164,195,100,63,245,227,100,63,47,4,101,63,82,36,101,63,92,68,101,63,78,100,101,63,41,132,101,63,236,163,101,63,151,195,101,63,43,227,101,63,167,2,102,63,11,34,102,63,87,65,102,63,139,96,102,63,168,127,102,63,174,158,102,63,155,189,102,63,113,220,102,63,47,251,102,63,214,25,103,63,101,56,103,63,220,86,103,63,59,117,103,63,132,147,103,63,180,177,103,63,205,207,103,63,206,237,103,63,184,11,104,63,138,41,104,63,69,71,104,63,233,100,104,63,116,130,104,63,233,159,104,63,69,189,104,63,139,218,104,63,185,247,104,63,207,20,105,63,207,49,105,63,182,78,105,63,135,107,105,63,64,136,105,63,225,164,105,63,108,193,105,63,223,221,105,63,59,250,105,63,127,22,106,63,172,50,106,63,195,78,106,63,193,106,106,63,169,134,106,63,121,162,106,63,51,190,106,63,213,217,106,63,96,245,106,63,212,16,107,63,48,44,107,63,118,71,107,63,165,98,107,63,188,125,107,63,189,152,107,63,167,179,107,63,121,206,107,63,53,233,107,63,218,3,108,63,104,30,108,63,223,56,108,63,63,83,108,63,136,109,108,63,187,135,108,63,214,161,108,63,219,187,108,63,201,213,108,63,161,239,108,63,97,9,109,63,11,35,109,63,159,60,109,63,27,86,109,63,129,111,109,63,209,136,109,63,9,162,109,63,44,187,109,63,56,212,109,63,45,237,109,63,12,6,110,63,212,30,110,63,134,55,110,63,33,80,110,63,166,104,110,63,21,129,110,63,110,153,110,63,176,177,110,63,220,201,110,63,241,225,110,63,241,249,110,63,218,17,111,63,173,41,111,63,106,65,111,63,16,89,111,63,161,112,111,63,28,136,111,63,128,159,111,63,207,182,111,63,7,206,111,63,42,229,111,63,54,252,111,63,45,19,112,63,14,42,112,63,217,64,112,63,142,87,112,63,46,110,112,63,184,132,112,63,43,155,112,63,138,177,112,63,210,199,112,63,5,222,112,63,35,244,112,63,42,10,113,63,29,32,113,63,249,53,113,63,193,75,113,63,114,97,113,63,15,119,113,63,150,140,113,63,7,162,113,63,99,183,113,63,170,204,113,63,220,225,113,63,249,246,113,63,0,12,114,63,242,32,114,63,207,53,114,63,151,74,114,63,73,95,114,63,231,115,114,63,112,136,114,63,227,156,114,63,66,177,114,63,140,197,114,63,193,217,114,63,225,237,114,63,236,1,115,63,227,21,115,63,197,41,115,63,146,61,115,63,74,81,115,63,238,100,115,63,125,120,115,63,248,139,115,63,94,159,115,63,175,178,115,63,236,197,115,63,21,217,115,63,41,236,115,63,41,255,115,63,21,18,116,63,236,36,116,63,175,55,116,63,94,74,116,63,248,92,116,63,127,111,116,63,241,129,116,63,80,148,116,63,154,166,116,63,208,184,116,63,242,202,116,63,1,221,116,63,251,238,116,63,226,0,117,63,181,18,117,63,116,36,117,63,31,54,117,63,183,71,117,63,59,89,117,63,171,106,117,63,8,124,117,63,81,141,117,63,135,158,117,63,169,175,117,63,184,192,117,63,179,209,117,63,155,226,117,63,112,243,117,63,50,4,118,63,224,20,118,63,123,37,118,63,3,54,118,63,120,70,118,63,217,86,118,63,40,103,118,63,100,119,118,63,140,135,118,63,162,151,118,63,165,167,118,63,149,183,118,63,114,199,118,63,61,215,118,63,245,230,118,63,154,246,118,63,44,6,119,63,172,21,119,63,26,37,119,63,117,52,119,63,189,67,119,63,243,82,119,63,22,98,119,63,40,113,119,63,39,128,119,63,19,143,119,63,238,157,119,63,182,172,119,63,108,187,119,63,16,202,119,63,162,216,119,63,34,231,119,63,144,245,119,63,236,3,120,63,55,18,120,63,111,32,120,63,150,46,120,63,170,60,120,63,174,74,120,63,159,88,120,63,127,102,120,63,77,116,120,63,10,130,120,63,181,143,120,63,79,157,120,63,215,170,120,63,78,184,120,63,180,197,120,63,8,211,120,63,76,224,120,63,126,237,120,63,158,250,120,63,174,7,121,63,173,20,121,63,155,33,121,63,119,46,121,63,67,59,121,63,254,71,121,63,168,84,121,63,66,97,121,63,202,109,121,63,66,122,121,63,169,134,121,63,0,147,121,63,70,159,121,63,124,171,121,63,161,183,121,63,181,195,121,63,186,207,121,63,173,219,121,63,145,231,121,63,100,243,121,63,40,255,121,63,219,10,122,63,126,22,122,63,16,34,122,63,147,45,122,63,6,57,122,63,105,68,122,63,188,79,122,63,255,90,122,63,51,102,122,63,86,113,122,63,106,124,122,63,111,135,122,63,99,146,122,63,72,157,122,63,30,168,122,63,228,178,122,63,155,189,122,63,66,200,122,63,218,210,122,63,99,221,122,63,221,231,122,63,71,242,122,63,162,252,122,63,238,6,123,63,43,17,123,63,89,27,123,63,120,37,123,63,137,47,123,63,138,57,123,63,124,67,123,63,96,77,123,63,53,87,123,63,252,96,123,63,179,106,123,63,92,116,123,63,247,125,123,63,131,135,123,63,1,145,123,63,112,154,123,63,209,163,123,63,36,173,123,63,104,182,123,63,158,191,123,63,198,200,123,63,224,209,123,63,236,218,123,63,234,227,123,63,218,236,123,63,188,245,123,63,144,254,123,63,86,7,124,63,14,16,124,63,185,24,124,63,86,33,124,63,230,41,124,63,104,50,124,63,220,58,124,63,67,67,124,63,156,75,124,63,232,83,124,63,39,92,124,63,88,100,124,63,124,108,124,63,147,116,124,63,157,124,124,63,153,132,124,63,137,140,124,63,107,148,124,63,65,156,124,63,9,164,124,63,197,171,124,63,116,179,124,63,22,187,124,63,172,194,124,63,52,202,124,63,176,209,124,63,32,217,124,63,131,224,124,63,217,231,124,63,35,239,124,63,97,246,124,63,146,253,124,63,183,4,125,63,208,11,125,63,221,18,125,63,221,25,125,63,209,32,125,63,185,39,125,63,150,46,125,63,102,53,125,63,42,60,125,63,227,66,125,63,143,73,125,63,48,80,125,63,197,86,125,63,78,93,125,63,204,99,125,63,62,106,125,63,165,112,125,63,0,119,125,63,80,125,125,63,148,131,125,63,205,137,125,63,251,143,125,63,29,150,125,63,52,156,125,63,64,162,125,63,65,168,125,63,55,174,125,63,34,180,125,63,2,186,125,63,215,191,125,63,161,197,125,63,96,203,125,63,21,209,125,63,190,214,125,63,93,220,125,63,242,225,125,63,124,231,125,63,251,236,125,63,112,242,125,63,218,247,125,63,58,253,125,63,143,2,126,63,219,7,126,63,28,13,126,63,82,18,126,63,127,23,126,63,161,28,126,63,186,33,126,63,200,38,126,63,204,43,126,63,199,48,126,63,183,53,126,63,158,58,126,63,123,63,126,63,78,68,126,63,23,73,126,63,215,77,126,63,141,82,126,63,58,87,126,63,221,91,126,63,118,96,126,63,6,101,126,63,141,105,126,63,10,110,126,63,126,114,126,63,233,118,126,63,75,123,126,63,164,127,126,63,243,131,126,63,57,136,126,63,119,140,126,63,171,144,126,63,214,148,126,63,249,152,126,63,18,157,126,63,35,161,126,63,44,165,126,63,43,169,126,63,34,173,126,63,16,177,126,63,246,180,126,63,211,184,126,63,167,188,126,63,115,192,126,63,55,196,126,63,243,199,126,63,166,203,126,63,81,207,126,63,243,210,126,63,142,214,126,63,32,218,126,63,171,221,126,63,45,225,126,63,167,228,126,63,26,232,126,63,132,235,126,63,231,238,126,63,66,242,126,63,149,245,126,63,224,248,126,63,36,252,126,63,96,255,126,63,148,2,127,63,193,5,127,63,230,8,127,63,4,12,127,63,27,15,127,63,42,18,127,63,50,21,127,63,50,24,127,63,43,27,127,63,29,30,127,63,8,33,127,63,236,35,127,63,201,38,127,63,158,41,127,63,109,44,127,63,53,47,127,63,246,49,127,63,175,52,127,63,99,55,127,63,15,58,127,63,181,60,127,63,83,63,127,63,236,65,127,63,125,68,127,63,8,71,127,63,141,73,127,63,11,76,127,63,131,78,127,63,244,80,127,63,95,83,127,63,195,85,127,63,33,88,127,63,121,90,127,63,203,92,127,63,23,95,127,63,92,97,127,63,155,99,127,63,213,101,127,63,8,104,127,63,54,106,127,63,93,108,127,63,127,110,127,63,155,112,127,63,177,114,127,63,193,116,127,63,203,118,127,63,208,120,127,63,207,122,127,63,201,124,127,63,189,126,127,63,171,128,127,63,148,130,127,63,120,132,127,63,86,134,127,63,47,136,127,63,2,138,127,63,209,139,127,63,153,141,127,63,93,143,127,63,28,145,127,63,213,146,127,63,137,148,127,63,57,150,127,63,227,151,127,63,136,153,127,63,40,155,127,63,196,156,127,63,90,158,127,63,236,159,127,63,121,161,127,63,1,163,127,63,132,164,127,63,3,166,127,63,125,167,127,63,242,168,127,63,99,170,127,63,207,171,127,63,55,173,127,63,154,174,127,63,249,175,127,63,84,177,127,63,170,178,127,63,251,179,127,63,73,181,127,63,146,182,127,63,215,183,127,63,24,185,127,63,85,186,127,63,141,187,127,63,193,188,127,63,242,189,127,63,30,191,127,63,71,192,127,63,107,193,127,63,140,194,127,63,168,195,127,63,193,196,127,63,214,197,127,63,231,198,127,63,245,199,127,63,255,200,127,63,5,202,127,63,7,203,127,63,6,204,127,63,1,205,127,63,249,205,127,63,237,206,127,63,222,207,127,63,203,208,127,63,181,209,127,63,156,210,127,63,127,211,127,63,95,212,127,63,59,213,127,63,20,214,127,63,234,214,127,63,189,215,127,63,141,216,127,63,90,217,127,63,35,218,127,63,233,218,127,63,173,219,127,63,109,220,127,63,43,221,127,63,229,221,127,63,156,222,127,63,81,223,127,63,3,224,127,63,178,224,127,63,94,225,127,63,7,226,127,63,174,226,127,63,82,227,127,63,243,227,127,63,146,228,127,63,46,229,127,63,199,229,127,63,94,230,127,63,242,230,127,63,132,231,127,63,19,232,127,63,160,232,127,63,42,233,127,63,178,233,127,63,56,234,127,63,187,234,127,63,60,235,127,63,187,235,127,63,55,236,127,63,177,236,127,63,41,237,127,63,159,237,127,63,18,238,127,63,132,238,127,63,243,238,127,63,96,239,127,63,204,239,127,63,53,240,127,63,156,240,127,63,1,241,127,63,101,241,127,63,198,241,127,63,37,242,127,63,131,242,127,63,222,242,127,63,56,243,127,63,144,243,127,63,231,243,127,63,59,244,127,63,142,244,127,63,223,244,127,63,46,245,127,63,124,245,127,63,200,245,127,63,19,246,127,63,91,246,127,63,163,246,127,63,233,246,127,63,45,247,127,63,111,247,127,63,177,247,127,63,240,247,127,63,47,248,127,63,108,248,127,63,167,248,127,63,225,248,127,63,26,249,127,63,82,249,127,63,136,249,127,63,188,249,127,63,240,249,127,63,34,250,127,63,83,250,127,63,131,250,127,63,178,250,127,63,224,250,127,63,12,251,127,63,55,251,127,63,97,251,127,63,138,251,127,63,178,251,127,63,217,251,127,63,255,251,127,63,36,252,127,63,72,252,127,63,107,252,127,63,141,252,127,63,173,252,127,63,205,252,127,63,237,252,127,63,11,253,127,63,40,253,127,63,69,253,127,63,96,253,127,63,123,253,127,63,149,253,127,63,174,253,127,63,199,253,127,63,222,253,127,63,245,253,127,63,12,254,127,63,33,254,127,63,54,254,127,63,74,254,127,63,93,254,127,63,112,254,127,63,130,254,127,63,148,254,127,63,165,254,127,63,181,254,127,63,197,254,127,63,212,254,127,63,227,254,127,63,241,254,127,63,254,254,127,63,11,255,127,63,24,255,127,63,36,255,127,63,47,255,127,63,59,255,127,63,69,255,127,63,79,255,127,63,89,255,127,63,99,255,127,63,108,255,127,63,116,255,127,63,124,255,127,63,132,255,127,63,140,255,127,63,147,255,127,63,154,255,127,63,160,255,127,63,166,255,127,63,172,255,127,63,178,255,127,63,183,255,127,63,188,255,127,63,193,255,127,63,197,255,127,63,202,255,127,63,206,255,127,63,209,255,127,63,213,255,127,63,216,255,127,63,220,255,127,63,223,255,127,63,225,255,127,63,228,255,127,63,230,255,127,63,233,255,127,63,235,255,127,63,237,255,127,63,239,255,127,63,240,255,127,63,242,255,127,63,243,255,127,63,245,255,127,63,246,255,127,63,247,255,127,63,248,255,127,63,249,255,127,63,250,255,127,63,251,255,127,63,251,255,127,63,252,255,127,63,252,255,127,63,253,255,127,63,253,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,198,63,120,51,98,136,11,53,151,200,193,53,80,233,61,54,183,247,156,54,46,124,234,54,153,192,35,55,244,2,90,55,56,3,140,55,227,228,174,55,177,166,213,55,108,36,0,56,146,101,23,56,201,150,48,56,18,184,75,56,81,201,104,56,94,229,131,56,29,94,148,56,229,206,165,56,167,55,184,56,128,152,203,56,85,241,223,56,36,66,245,56,126,197,5,57,238,101,17,57,99,130,29,57,207,26,42,57,63,47,55,57,179,191,68,57,30,204,82,57,141,84,97,57,243,88,112,57,94,217,127,57,227,234,135,57,18,39,144,57,64,161,152,57,105,89,161,57,146,79,170,57,181,131,179,57,215,245,188,57,245,165,198,57,14,148,208,57,34,192,218,57,46,42,229,57,57,210,239,57,60,184,250,57,27,238,2,58,22,159,8,58,13,111,14,58,0,94,20,58,239,107,26,58,218,152,32,58,192,228,38,58,161,79,45,58,124,217,51,58,83,130,58,58,37,74,65,58,240,48,72,58,182,54,79,58,116,91,86,58,45,159,93,58,222,1,101,58,136,131,108,58,42,36,116,58,196,227,123,58,44,225,129,58,241,223,133,58,49,238,137,58,238,11,142,58,37,57,146,58,215,117,150,58,5,194,154,58,174,29,159,58,209,136,163,58,110,3,168,58,134,141,172,58,24,39,177,58,36,208,181,58,169,136,186,58,169,80,191,58,33,40,196,58,19,15,201,58,126,5,206,58,98,11,211,58,191,32,216,58,148,69,221,58,225,121,226,58,166,189,231,58,227,16,237,58,152,115,242,58,196,229,247,58,103,103,253,58,65,124,1,59,137,76,4,59,141,36,7,59,76,4,10,59,198,235,12,59,251,218,15,59,235,209,18,59,149,208,21,59,251,214,24,59,26,229,27,59,244,250,30,59,136,24,34,59,215,61,37,59,223,106,40,59,161,159,43,59,29,220,46,59,83,32,50,59,66,108,53,59,234,191,56,59,76,27,60,59,103,126,63,59,59,233,66,59,199,91,70,59,12,214,73,59,10,88,77,59,193,225,80,59,48,115,84,59,86,12,88,59,53,173,91,59,204,85,95,59,26,6,99,59,32,190,102,59,222,125,106,59,82,69,110,59,127,20,114,59,97,235,117,59,251,201,121,59,76,176,125,59,41,207,128,59,8,202,130,59,194,200,132,59,87,203,134,59,198,209,136,59,17,220,138,59,55,234,140,59,55,252,142,59,18,18,145,59,199,43,147,59,87,73,149,59,194,106,151,59,6,144,153,59,37,185,155,59,30,230,157,59,241,22,160,59,158,75,162,59,37,132,164,59,134,192,166,59,192,0,169,59,212,68,171,59,193,140,173,59,137,216,175,59,41,40,178,59,163,123,180,59,245,210,182,59,33,46,185,59,38,141,187,59,4,240,189,59,186,86,192,59,73,193,194,59,177,47,197,59,242,161,199,59,10,24,202,59,251,145,204,59,196,15,207,59,102,145,209,59,223,22,212,59,49,160,214,59,90,45,217,59,91,190,219,59,51,83,222,59,227,235,224,59,107,136,227,59,201,40,230,59,255,204,232,59,12,117,235,59,240,32,238,59,171,208,240,59,61,132,243,59,165,59,246,59,228,246,248,59,250,181,251,59,229,120,254,59,212,159,0,60,32,5,2,60,87,108,3,60,121,213,4,60,134,64,6,60,126,173,7,60,96,28,9,60,45,141,10,60,229,255,11,60,136,116,13,60,21,235,14,60,141,99,16,60,239,221,17,60,59,90,19,60,114,216,20,60,147,88,22,60,158,218,23,60,147,94,25,60,115,228,26,60,60,108,28,60,240,245,29,60,141,129,31,60,20,15,33,60,133,158,34,60,224,47,36,60,36,195,37,60,82,88,39,60,105,239,40,60,106,136,42,60,84,35,44,60,40,192,45,60,229,94,47,60,139,255,48,60,26,162,50,60,146,70,52,60,243,236,53,60,61,149,55,60,112,63,57,60,140,235,58,60,145,153,60,60,126,73,62,60,84,251,63,60,18,175,65,60,185,100,67,60,72,28,69,60,192,213,70,60,31,145,72,60,103,78,74,60,151,13,76,60,175,206,77,60,176,145,79,60,152,86,81,60,103,29,83,60,31,230,84,60,190,176,86,60,69,125,88,60,179,75,90,60,9,28,92,60,71,238,93,60,107,194,95,60,119,152,97,60,106,112,99,60,68,74,101,60,5,38,103,60,173,3,105,60,60,227,106,60,178,196,108,60,14,168,110,60,81,141,112,60,123,116,114,60,139,93,116,60,130,72,118,60,95,53,120,60,34,36,122,60,203,20,124,60,90,7,126,60,208,251,127,60,22,249,128,60,54,245,129,60,74,242,130,60,80,240,131,60,73,239,132,60,53,239,133,60,19,240,134,60,229,241,135,60,169,244,136,60,95,248,137,60,8,253,138,60,164,2,140,60,50,9,141,60,178,16,142,60,37,25,143,60,139,34,144,60,226,44,145,60,44,56,146,60,104,68,147,60,150,81,148,60,182,95,149,60,201,110,150,60,205,126,151,60,196,143,152,60,172,161,153,60,135,180,154,60,83,200,155,60,17,221,156,60,193,242,157,60,98,9,159,60,245,32,160,60,122,57,161,60,241,82,162,60,89,109,163,60,178,136,164,60,253,164,165,60,57,194,166,60,103,224,167,60,134,255,168,60,151,31,170,60,152,64,171,60,139,98,172,60,111,133,173,60,68,169,174,60,10,206,175,60,193,243,176,60,105,26,178,60,2,66,179,60,139,106,180,60,6,148,181,60,113,190,182,60,205,233,183,60,26,22,185,60,87,67,186,60,133,113,187,60,163,160,188,60,177,208,189,60,177,1,191,60,160,51,192,60,128,102,193,60,80,154,194,60,16,207,195,60,193,4,197,60,97,59,198,60,242,114,199,60,114,171,200,60,227,228,201,60,67,31,203,60,147,90,204,60,211,150,205,60,3,212,206,60,34,18,208,60,49,81,209,60,48,145,210,60,30,210,211,60,252,19,213,60,201,86,214,60,133,154,215,60,49,223,216,60,204,36,218,60,86,107,219,60,208,178,220,60,56,251,221,60,144,68,223,60,214,142,224,60,12,218,225,60,48,38,227,60,67,115,228,60,69,193,229,60,54,16,231,60,21,96,232,60,227,176,233,60,160,2,235,60,75,85,236,60,228,168,237,60,108,253,238,60,226,82,240,60,70,169,241,60,153,0,243,60,218,88,244,60,8,178,245,60,37,12,247,60,48,103,248,60,41,195,249,60,15,32,251,60,228,125,252,60,166,220,253,60,85,60,255,60,121,78,0,61,63,255,0,61,123,176,1,61,46,98,2,61,88,20,3,61,248,198,3,61,15,122,4,61,156,45,5,61,161,225,5,61,27,150,6,61,12,75,7,61,116,0,8,61,82,182,8,61,167,108,9,61,113,35,10,61,179,218,10,61,106,146,11,61,152,74,12,61,60,3,13,61,87,188,13,61,231,117,14,61,238,47,15,61,107,234,15,61,94,165,16,61,199,96,17,61,166,28,18,61,251,216,18,61,198,149,19,61,7,83,20,61,190,16,21,61,234,206,21,61,141,141,22,61,165,76,23,61,52,12,24,61,56,204,24,61,177,140,25,61,161,77,26,61,6,15,27,61,224,208,27,61,48,147,28,61,246,85,29,61,49,25,30,61,226,220,30,61,8,161,31,61,164,101,32,61,181,42,33,61,59,240,33,61,55,182,34,61,168,124,35,61,142,67,36,61,233,10,37,61,186,210,37,61,255,154,38,61,186,99,39,61,234,44,40,61,143,246,40,61,168,192,41,61,55,139,42,61,59,86,43,61,180,33,44,61,161,237,44,61,4,186,45,61,219,134,46,61,38,84,47,61,231,33,48,61,28,240,48,61,198,190,49,61,229,141,50,61,120,93,51,61,127,45,52,61,251,253,52,61,236,206,53,61,81,160,54,61,42,114,55,61,120,68,56,61,58,23,57,61,112,234,57,61,27,190,58,61,58,146,59,61,204,102,60,61,211,59,61,61,79,17,62,61,62,231,62,61,161,189,63,61,120,148,64,61,195,107,65,61,130,67,66,61,181,27,67,61,92,244,67,61,118,205,68,61,4,167,69,61,6,129,70,61,124,91,71,61,101,54,72,61,194,17,73,61,146,237,73,61,214,201,74,61,141,166,75,61,184,131,76,61,86,97,77,61,104,63,78,61,236,29,79,61,229,252,79,61,80,220,80,61,46,188,81,61,128,156,82,61,69,125,83,61,125,94,84,61,40,64,85,61,69,34,86,61,214,4,87,61,218,231,87,61,81,203,88,61,58,175,89,61,150,147,90,61,101,120,91,61,167,93,92,61,91,67,93,61,130,41,94,61,28,16,95,61,40,247,95,61,167,222,96,61,152,198,97,61,251,174,98,61,209,151,99,61,25,129,100,61,212,106,101,61,0,85,102,61,159,63,103,61,176,42,104,61,51,22,105,61,41,2,106,61,144,238,106,61,105,219,107,61,180,200,108,61,113,182,109,61,160,164,110,61,65,147,111,61,84,130,112,61,216,113,113,61,206,97,114,61,54,82,115,61,15,67,116,61,89,52,117,61,22,38,118,61,67,24,119,61,226,10,120,61,243,253,120,61,117,241,121,61,104,229,122,61,204,217,123,61,162,206,124,61,232,195,125,61,160,185,126,61,201,175,127,61,49,83,128,61,183,206,128,61,117,74,129,61,107,198,129,61,154,66,130,61,1,191,130,61,160,59,131,61,120,184,131,61,136,53,132,61,209,178,132,61,81,48,133,61,10,174,133,61,251,43,134,61,37,170,134,61,134,40,135,61,32,167,135,61,242,37,136,61,252,164,136,61,62,36,137,61,184,163,137,61,106,35,138,61,84,163,138,61,118,35,139,61,209,163,139,61,99,36,140,61,45,165,140,61,46,38,141,61,104,167,141,61,218,40,142,61,131,170,142,61,100,44,143,61,125,174,143,61,206,48,144,61,86,179,144,61,23,54,145,61,14,185,145,61,62,60,146,61,165,191,146,61,67,67,147,61,26,199,147,61,39,75,148,61,109,207,148,61,234,83,149,61,158,216,149,61,138,93,150,61,173,226,150,61,7,104,151,61,153,237,151,61,98,115,152,61,99,249,152,61,155,127,153,61,10,6,154,61,176,140,154,61,142,19,155,61,163,154,155,61,239,33,156,61,114,169,156,61,44,49,157,61,29,185,157,61,69,65,158,61,165,201,158,61,59,82,159,61,8,219,159,61,13,100,160,61,72,237,160,61,186,118,161,61,99,0,162,61,67,138,162,61,90,20,163,61,167,158,163,61,43,41,164,61,230,179,164,61,216,62,165,61,0,202,165,61,95,85,166,61,245,224,166,61,193,108,167,61,196,248,167,61,254,132,168,61,110,17,169,61,20,158,169,61,241,42,170,61,4,184,170,61,78,69,171,61,206,210,171,61,133,96,172,61,113,238,172,61,149,124,173,61,238,10,174,61,126,153,174,61,67,40,175,61,63,183,175,61,114,70,176,61,218,213,176,61,120,101,177,61,77,245,177,61,88,133,178,61,152,21,179,61,15,166,179,61,187,54,180,61,158,199,180,61,182,88,181,61,4,234,181,61,137,123,182,61,67,13,183,61,50,159,183,61,88,49,184,61,179,195,184,61,68,86,185,61,11,233,185,61,7,124,186,61,57,15,187,61,160,162,187,61,61,54,188,61,16,202,188,61,24,94,189,61,85,242,189,61,200,134,190,61,112,27,191,61,78,176,191,61,97,69,192,61,170,218,192,61,39,112,193,61,218,5,194,61,194,155,194,61,224,49,195,61,50,200,195,61,186,94,196,61,119,245,196,61,104,140,197,61,143,35,198,61,235,186,198,61,124,82,199,61,66,234,199,61,61,130,200,61,108,26,201,61,209,178,201,61,106,75,202,61,57,228,202,61,59,125,203,61,115,22,204,61,224,175,204,61,129,73,205,61,86,227,205,61,97,125,206,61,159,23,207,61,19,178,207,61,187,76,208,61,151,231,208,61,168,130,209,61,237,29,210,61,103,185,210,61,21,85,211,61,248,240,211,61,14,141,212,61,89,41,213,61,216,197,213,61,140,98,214,61,115,255,214,61,143,156,215,61,223,57,216,61,99,215,216,61,27,117,217,61,7,19,218,61,38,177,218,61,122,79,219,61,2,238,219,61,189,140,220,61,173,43,221,61,208,202,221,61,39,106,222,61,178,9,223,61,112,169,223,61,98,73,224,61,136,233,224,61,226,137,225,61,111,42,226,61,47,203,226,61,35,108,227,61,74,13,228,61,165,174,228,61,52,80,229,61,245,241,229,61,234,147,230,61,19,54,231,61,110,216,231,61,253,122,232,61,191,29,233,61,180,192,233,61,221,99,234,61,56,7,235,61,199,170,235,61,136,78,236,61,125,242,236,61,164,150,237,61,255,58,238,61,140,223,238,61,76,132,239,61,63,41,240,61,101,206,240,61,189,115,241,61,73,25,242,61,7,191,242,61,247,100,243,61,26,11,244,61,112,177,244,61,248,87,245,61,179,254,245,61,160,165,246,61,192,76,247,61,18,244,247,61,151,155,248,61,77,67,249,61,55,235,249,61,82,147,250,61,159,59,251,61,31,228,251,61,209,140,252,61,181,53,253,61,203,222,253,61,19,136,254,61,141,49,255,61,57,219,255,61,140,66,0,62,148,151,0,62,181,236,0,62,238,65,1,62,65,151,1,62,173,236,1,62,49,66,2,62,206,151,2,62,132,237,2,62,83,67,3,62,59,153,3,62,59,239,3,62,84,69,4,62,134,155,4,62,209,241,4,62,52,72,5,62,176,158,5,62,68,245,5,62,242,75,6,62,183,162,6,62,150,249,6,62,141,80,7,62,156,167,7,62,196,254,7,62,5,86,8,62,94,173,8,62,207,4,9,62,89,92,9,62,252,179,9,62,183,11,10,62,138,99,10,62,118,187,10,62,122,19,11,62,150,107,11,62,203,195,11,62,24,28,12,62,125,116,12,62,250,204,12,62,144,37,13,62,62,126,13,62,4,215,13,62,227,47,14,62,217,136,14,62,232,225,14,62,15,59,15,62,78,148,15,62,165,237,15,62,20,71,16,62,155,160,16,62,58,250,16,62,241,83,17,62,193,173,17,62,168,7,18,62,167,97,18,62,190,187,18,62,237,21,19,62,51,112,19,62,146,202,19,62,9,37,20,62,151,127,20,62,61,218,20,62,251,52,21,62,209,143,21,62,190,234,21,62,195,69,22,62,224,160,22,62,21,252,22,62,97,87,23,62,197,178,23,62,64,14,24,62,211,105,24,62,126,197,24,62,64,33,25,62,26,125,25,62,11,217,25,62,20,53,26,62,52,145,26,62,108,237,26,62,187,73,27,62,34,166,27,62,160,2,28,62,53,95,28,62,226,187,28,62,166,24,29,62,129,117,29,62,116,210,29,62,126,47,30,62,159,140,30,62,215,233,30,62,39,71,31,62,141,164,31,62,11,2,32,62,160,95,32,62,76,189,32,62,16,27,33,62,234,120,33,62,219,214,33,62,228,52,34,62,3,147,34,62,58,241,34,62,135,79,35,62,235,173,35,62,103,12,36,62,249,106,36,62,162,201,36,62,98,40,37,62,56,135,37,62,38,230,37,62,42,69,38,62,69,164,38,62,119,3,39,62,192,98,39,62,31,194,39,62,149,33,40,62,33,129,40,62,197,224,40,62,126,64,41,62,79,160,41,62,54,0,42,62,51,96,42,62,72,192,42,62,114,32,43,62,179,128,43,62,11,225,43,62,121,65,44,62,253,161,44,62,152,2,45,62,73,99,45,62,16,196,45,62,238,36,46,62,226,133,46,62,237,230,46,62,13,72,47,62,68,169,47,62,145,10,48,62,245,107,48,62,110,205,48,62,254,46,49,62,163,144,49,62,95,242,49,62,49,84,50,62,25,182,50,62,23,24,51,62,43,122,51,62,85,220,51,62,148,62,52,62,234,160,52,62,86,3,53,62,216,101,53,62,111,200,53,62,28,43,54,62,223,141,54,62,184,240,54,62,167,83,55,62,171,182,55,62,197,25,56,62,245,124,56,62,59,224,56,62,150,67,57,62,7,167,57,62,141,10,58,62,41,110,58,62,219,209,58,62,162,53,59,62,126,153,59,62,112,253,59,62,120,97,60,62,149,197,60,62,199,41,61,62,15,142,61,62,108,242,61,62,222,86,62,62,102,187,62,62,3,32,63,62,181,132,63,62,125,233,63,62,90,78,64,62,75,179,64,62,83,24,65,62,111,125,65,62,160,226,65,62,231,71,66,62,66,173,66,62,179,18,67,62,57,120,67,62,211,221,67,62,131,67,68,62,71,169,68,62,33,15,69,62,15,117,69,62,18,219,69,62,42,65,70,62,87,167,70,62,153,13,71,62,240,115,71,62,91,218,71,62,219,64,72,62,111,167,72,62,25,14,73,62,215,116,73,62,169,219,73,62,144,66,74,62,140,169,74,62,157,16,75,62,193,119,75,62,251,222,75,62,73,70,76,62,171,173,76,62,34,21,77,62,173,124,77,62,76,228,77,62,0,76,78,62,200,179,78,62,164,27,79,62,149,131,79,62,154,235,79,62,179,83,80,62,225,187,80,62,34,36,81,62,120,140,81,62,225,244,81,62,95,93,82,62,241,197,82,62,151,46,83,62,81,151,83,62,31,0,84,62,1,105,84,62,247,209,84,62,0,59,85,62,30,164,85,62,79,13,86,62,149,118,86,62,238,223,86,62,91,73,87,62,219,178,87,62,112,28,88,62,24,134,88,62,211,239,88,62,163,89,89,62,134,195,89,62,124,45,90,62,134,151,90,62,164,1,91,62,213,107,91,62,26,214,91,62,114,64,92,62,221,170,92,62,92,21,93,62,239,127,93,62,148,234,93,62,77,85,94,62,26,192,94,62,249,42,95,62,236,149,95,62,242,0,96,62,11,108,96,62,55,215,96,62,119,66,97,62,202,173,97,62,47,25,98,62,168,132,98,62,52,240,98,62,210,91,99,62,132,199,99,62,73,51,100,62,32,159,100,62,11,11,101,62,8,119,101,62,24,227,101,62,59,79,102,62,113,187,102,62,186,39,103,62,21,148,103,62,131,0,104,62,3,109,104,62,151,217,104,62,60,70,105,62,245,178,105,62,192,31,106,62,157,140,106,62,141,249,106,62,144,102,107,62,165,211,107,62,204,64,108,62,6,174,108,62,82,27,109,62,176,136,109,62,33,246,109,62,164,99,110,62,57,209,110,62,225,62,111,62,154,172,111,62,102,26,112,62,68,136,112,62,52,246,112,62,55,100,113,62,75,210,113,62,113,64,114,62,169,174,114,62,243,28,115,62,80,139,115,62,190,249,115,62,61,104,116,62,207,214,116,62,115,69,117,62,40,180,117,62,239,34,118,62,200,145,118,62,179,0,119,62,175,111,119,62,189,222,119,62,221,77,120,62,14,189,120,62,80,44,121,62,165,155,121,62,10,11,122,62,130,122,122,62,10,234,122,62,164,89,123,62,80,201,123,62,13,57,124,62,219,168,124,62,186,24,125,62,171,136,125,62,173,248,125,62,192,104,126,62,228,216,126,62,26,73,127,62,96,185,127,62,220,20,128,62,16,77,128,62,77,133,128,62,147,189,128,62,225,245,128,62,55,46,129,62,150,102,129,62,253,158,129,62,109,215,129,62,229,15,130,62,102,72,130,62,238,128,130,62,128,185,130,62,25,242,130,62,187,42,131,62,102,99,131,62,24,156,131,62,211,212,131,62,150,13,132,62,98,70,132,62,53,127,132,62,17,184,132,62,245,240,132,62,226,41,133,62,214,98,133,62,211,155,133,62,216,212,133,62,229,13,134,62,250,70,134,62,23,128,134,62,61,185,134,62,106,242,134,62,160,43,135,62,221,100,135,62,35,158,135,62,112,215,135,62,198,16,136,62,35,74,136,62,137,131,136,62,247,188,136,62,108,246,136,62,233,47,137,62,111,105,137,62,252,162,137,62,145,220,137,62,46,22,138,62,211,79,138,62,127,137,138,62,52,195,138,62,240,252,138,62,180,54,139,62,128,112,139,62,84,170,139,62,47,228,139,62,18,30,140,62,253,87,140,62,239,145,140,62,233,203,140,62,235,5,141,62,245,63,141,62,6,122,141,62,31,180,141,62,63,238,141,62,103,40,142,62],"i8",L3,R.GLOBAL_BASE+530936),d3([150,98,142,62,205,156,142,62,12,215,142,62,82,17,143,62,159,75,143,62,245,133,143,62,81,192,143,62,181,250,143,62,33,53,144,62,147,111,144,62,14,170,144,62,143,228,144,62,25,31,145,62,169,89,145,62,65,148,145,62,224,206,145,62,134,9,146,62,52,68,146,62,233,126,146,62,165,185,146,62,105,244,146,62,52,47,147,62,6,106,147,62,223,164,147,62,191,223,147,62,167,26,148,62,150,85,148,62,139,144,148,62,136,203,148,62,140,6,149,62,152,65,149,62,170,124,149,62,195,183,149,62,227,242,149,62,11,46,150,62,57,105,150,62,111,164,150,62,171,223,150,62,238,26,151,62,56,86,151,62,138,145,151,62,226,204,151,62,65,8,152,62,167,67,152,62,19,127,152,62,135,186,152,62,1,246,152,62,130,49,153,62,10,109,153,62,153,168,153,62,47,228,153,62,203,31,154,62,110,91,154,62,24,151,154,62,200,210,154,62,127,14,155,62,61,74,155,62,2,134,155,62,205,193,155,62,158,253,155,62,119,57,156,62,85,117,156,62,59,177,156,62,39,237,156,62,25,41,157,62,18,101,157,62,18,161,157,62,24,221,157,62,36,25,158,62,55,85,158,62,80,145,158,62,112,205,158,62,150,9,159,62,195,69,159,62,246,129,159,62,47,190,159,62,111,250,159,62,180,54,160,62,1,115,160,62,83,175,160,62,172,235,160,62,11,40,161,62,112,100,161,62,219,160,161,62,77,221,161,62,196,25,162,62,66,86,162,62,198,146,162,62,81,207,162,62,225,11,163,62,119,72,163,62,20,133,163,62,182,193,163,62,95,254,163,62,13,59,164,62,194,119,164,62,125,180,164,62,61,241,164,62,4,46,165,62,208,106,165,62,162,167,165,62,123,228,165,62,89,33,166,62,61,94,166,62,39,155,166,62,23,216,166,62,12,21,167,62,7,82,167,62,8,143,167,62,15,204,167,62,28,9,168,62,46,70,168,62,70,131,168,62,100,192,168,62,136,253,168,62,177,58,169,62,223,119,169,62,20,181,169,62,78,242,169,62,141,47,170,62,211,108,170,62,29,170,170,62,109,231,170,62,195,36,171,62,31,98,171,62,127,159,171,62,230,220,171,62,81,26,172,62,194,87,172,62,57,149,172,62,181,210,172,62,54,16,173,62,189,77,173,62,73,139,173,62,218,200,173,62,113,6,174,62,13,68,174,62,174,129,174,62,85,191,174,62,0,253,174,62,177,58,175,62,103,120,175,62,35,182,175,62,227,243,175,62,169,49,176,62,116,111,176,62,68,173,176,62,25,235,176,62,243,40,177,62,210,102,177,62,182,164,177,62,160,226,177,62,142,32,178,62,129,94,178,62,121,156,178,62,119,218,178,62,121,24,179,62,128,86,179,62,140,148,179,62,157,210,179,62,178,16,180,62,205,78,180,62,236,140,180,62,16,203,180,62,57,9,181,62,103,71,181,62,154,133,181,62,209,195,181,62,13,2,182,62,78,64,182,62,147,126,182,62,221,188,182,62,44,251,182,62,127,57,183,62,215,119,183,62,52,182,183,62,149,244,183,62,251,50,184,62,101,113,184,62,212,175,184,62,71,238,184,62,191,44,185,62,59,107,185,62,188,169,185,62,65,232,185,62,202,38,186,62,88,101,186,62,235,163,186,62,129,226,186,62,28,33,187,62,188,95,187,62,95,158,187,62,7,221,187,62,180,27,188,62,100,90,188,62,25,153,188,62,210,215,188,62,143,22,189,62,80,85,189,62,22,148,189,62,223,210,189,62,173,17,190,62,127,80,190,62,85,143,190,62,47,206,190,62,13,13,191,62,239,75,191,62,213,138,191,62,191,201,191,62,173,8,192,62,159,71,192,62,149,134,192,62,143,197,192,62,141,4,193,62,143,67,193,62,148,130,193,62,158,193,193,62,171,0,194,62,188,63,194,62,209,126,194,62,234,189,194,62,6,253,194,62,38,60,195,62,74,123,195,62,113,186,195,62,157,249,195,62,204,56,196,62,254,119,196,62,52,183,196,62,110,246,196,62,171,53,197,62,236,116,197,62,49,180,197,62,121,243,197,62,196,50,198,62,19,114,198,62,102,177,198,62,188,240,198,62,21,48,199,62,114,111,199,62,210,174,199,62,54,238,199,62,157,45,200,62,7,109,200,62,117,172,200,62,230,235,200,62,90,43,201,62,209,106,201,62,76,170,201,62,202,233,201,62,75,41,202,62,208,104,202,62,88,168,202,62,226,231,202,62,112,39,203,62,1,103,203,62,149,166,203,62,45,230,203,62,199,37,204,62,100,101,204,62,4,165,204,62,168,228,204,62,78,36,205,62,248,99,205,62,164,163,205,62,83,227,205,62,5,35,206,62,186,98,206,62,114,162,206,62,45,226,206,62,234,33,207,62,171,97,207,62,110,161,207,62,52,225,207,62,253,32,208,62,200,96,208,62,150,160,208,62,103,224,208,62,59,32,209,62,17,96,209,62,234,159,209,62,198,223,209,62,164,31,210,62,133,95,210,62,104,159,210,62,78,223,210,62,55,31,211,62,33,95,211,62,15,159,211,62,255,222,211,62,241,30,212,62,230,94,212,62,221,158,212,62,215,222,212,62,211,30,213,62,209,94,213,62,210,158,213,62,213,222,213,62,219,30,214,62,226,94,214,62,236,158,214,62,248,222,214,62,7,31,215,62,24,95,215,62,42,159,215,62,63,223,215,62,87,31,216,62,112,95,216,62,139,159,216,62,169,223,216,62,200,31,217,62,234,95,217,62,14,160,217,62,51,224,217,62,91,32,218,62,133,96,218,62,176,160,218,62,222,224,218,62,13,33,219,62,63,97,219,62,114,161,219,62,167,225,219,62,222,33,220,62,23,98,220,62,82,162,220,62,142,226,220,62,204,34,221,62,12,99,221,62,78,163,221,62,146,227,221,62,215,35,222,62,29,100,222,62,102,164,222,62,176,228,222,62,252,36,223,62,73,101,223,62,152,165,223,62,232,229,223,62,58,38,224,62,142,102,224,62,227,166,224,62,57,231,224,62,145,39,225,62,234,103,225,62,69,168,225,62,161,232,225,62,255,40,226,62,94,105,226,62,190,169,226,62,32,234,226,62,131,42,227,62,231,106,227,62,76,171,227,62,179,235,227,62,27,44,228,62,132,108,228,62,238,172,228,62,90,237,228,62,199,45,229,62,52,110,229,62,163,174,229,62,19,239,229,62,133,47,230,62,247,111,230,62,106,176,230,62,222,240,230,62,83,49,231,62,202,113,231,62,65,178,231,62,185,242,231,62,50,51,232,62,172,115,232,62,38,180,232,62,162,244,232,62,31,53,233,62,156,117,233,62,26,182,233,62,153,246,233,62,25,55,234,62,153,119,234,62,26,184,234,62,156,248,234,62,31,57,235,62,162,121,235,62,38,186,235,62,170,250,235,62,47,59,236,62,181,123,236,62,59,188,236,62,194,252,236,62,73,61,237,62,209,125,237,62,89,190,237,62,226,254,237,62,107,63,238,62,245,127,238,62,127,192,238,62,10,1,239,62,149,65,239,62,32,130,239,62,171,194,239,62,55,3,240,62,196,67,240,62,80,132,240,62,221,196,240,62,106,5,241,62,247,69,241,62,132,134,241,62,18,199,241,62,160,7,242,62,45,72,242,62,187,136,242,62,74,201,242,62,216,9,243,62,102,74,243,62,244,138,243,62,131,203,243,62,17,12,244,62,159,76,244,62,46,141,244,62,188,205,244,62,74,14,245,62,216,78,245,62,102,143,245,62,244,207,245,62,129,16,246,62,15,81,246,62,156,145,246,62,41,210,246,62,182,18,247,62,67,83,247,62,207,147,247,62,91,212,247,62,231,20,248,62,115,85,248,62,254,149,248,62,136,214,248,62,19,23,249,62,157,87,249,62,38,152,249,62,175,216,249,62,56,25,250,62,192,89,250,62,72,154,250,62,207,218,250,62,86,27,251,62,220,91,251,62,97,156,251,62,230,220,251,62,106,29,252,62,238,93,252,62,113,158,252,62,243,222,252,62,117,31,253,62,245,95,253,62,118,160,253,62,245,224,253,62,116,33,254,62,241,97,254,62,110,162,254,62,235,226,254,62,102,35,255,62,224,99,255,62,90,164,255,62,211,228,255,62,165,18,0,63,225,50,0,63,27,83,0,63,86,115,0,63,144,147,0,63,201,179,0,63,2,212,0,63,58,244,0,63,114,20,1,63,169,52,1,63,224,84,1,63,22,117,1,63,76,149,1,63,129,181,1,63,181,213,1,63,233,245,1,63,28,22,2,63,78,54,2,63,128,86,2,63,178,118,2,63,226,150,2,63,18,183,2,63,65,215,2,63,112,247,2,63,157,23,3,63,203,55,3,63,247,87,3,63,35,120,3,63,78,152,3,63,120,184,3,63,161,216,3,63,202,248,3,63,242,24,4,63,25,57,4,63,63,89,4,63,101,121,4,63,137,153,4,63,173,185,4,63,208,217,4,63,243,249,4,63,20,26,5,63,52,58,5,63,84,90,5,63,115,122,5,63,145,154,5,63,173,186,5,63,202,218,5,63,229,250,5,63,255,26,6,63,24,59,6,63,48,91,6,63,72,123,6,63,94,155,6,63,116,187,6,63,136,219,6,63,155,251,6,63,174,27,7,63,191,59,7,63,208,91,7,63,223,123,7,63,237,155,7,63,250,187,7,63,7,220,7,63,18,252,7,63,28,28,8,63,37,60,8,63,44,92,8,63,51,124,8,63,57,156,8,63,61,188,8,63,64,220,8,63,67,252,8,63,68,28,9,63,68,60,9,63,66,92,9,63,64,124,9,63,60,156,9,63,55,188,9,63,49,220,9,63,41,252,9,63,33,28,10,63,23,60,10,63,12,92,10,63,255,123,10,63,242,155,10,63,227,187,10,63,211,219,10,63,193,251,10,63,174,27,11,63,154,59,11,63,133,91,11,63,110,123,11,63,86,155,11,63,60,187,11,63,33,219,11,63,5,251,11,63,231,26,12,63,200,58,12,63,168,90,12,63,134,122,12,63,98,154,12,63,62,186,12,63,23,218,12,63,240,249,12,63,199,25,13,63,156,57,13,63,112,89,13,63,66,121,13,63,19,153,13,63,227,184,13,63,176,216,13,63,125,248,13,63,72,24,14,63,17,56,14,63,216,87,14,63,159,119,14,63,99,151,14,63,38,183,14,63,232,214,14,63,167,246,14,63,101,22,15,63,34,54,15,63,221,85,15,63,150,117,15,63,78,149,15,63,4,181,15,63,184,212,15,63,106,244,15,63,27,20,16,63,202,51,16,63,120,83,16,63,36,115,16,63,206,146,16,63,118,178,16,63,28,210,16,63,193,241,16,63,100,17,17,63,6,49,17,63,165,80,17,63,67,112,17,63,223,143,17,63,121,175,17,63,17,207,17,63,167,238,17,63,60,14,18,63,206,45,18,63,95,77,18,63,238,108,18,63,123,140,18,63,7,172,18,63,144,203,18,63,23,235,18,63,157,10,19,63,32,42,19,63,162,73,19,63,34,105,19,63,159,136,19,63,27,168,19,63,149,199,19,63,13,231,19,63,131,6,20,63,247,37,20,63,104,69,20,63,216,100,20,63,70,132,20,63,178,163,20,63,27,195,20,63,131,226,20,63,233,1,21,63,76,33,21,63,174,64,21,63,13,96,21,63,106,127,21,63,197,158,21,63,31,190,21,63,117,221,21,63,202,252,21,63,29,28,22,63,109,59,22,63,188,90,22,63,8,122,22,63,82,153,22,63,153,184,22,63,223,215,22,63,34,247,22,63,100,22,23,63,162,53,23,63,223,84,23,63,26,116,23,63,82,147,23,63,136,178,23,63,187,209,23,63,237,240,23,63,28,16,24,63,73,47,24,63,115,78,24,63,155,109,24,63,193,140,24,63,228,171,24,63,6,203,24,63,36,234,24,63,65,9,25,63,91,40,25,63,115,71,25,63,136,102,25,63,155,133,25,63,171,164,25,63,185,195,25,63,197,226,25,63,206,1,26,63,213,32,26,63,217,63,26,63,219,94,26,63,218,125,26,63,215,156,26,63,210,187,26,63,202,218,26,63,191,249,26,63,178,24,27,63,162,55,27,63,144,86,27,63,123,117,27,63,100,148,27,63,74,179,27,63,46,210,27,63,15,241,27,63,237,15,28,63,201,46,28,63,162,77,28,63,121,108,28,63,77,139,28,63,31,170,28,63,237,200,28,63,185,231,28,63,131,6,29,63,74,37,29,63,14,68,29,63,207,98,29,63,142,129,29,63,74,160,29,63,3,191,29,63,186,221,29,63,110,252,29,63,31,27,30,63,205,57,30,63,121,88,30,63,34,119,30,63,200,149,30,63,107,180,30,63,12,211,30,63,170,241,30,63,69,16,31,63,221,46,31,63,114,77,31,63,5,108,31,63,148,138,31,63,33,169,31,63,171,199,31,63,50,230,31,63,182,4,32,63,56,35,32,63,182,65,32,63,50,96,32,63,170,126,32,63,32,157,32,63,147,187,32,63,3,218,32,63,112,248,32,63,218,22,33,63,65,53,33,63,165,83,33,63,6,114,33,63,100,144,33,63,191,174,33,63,23,205,33,63,108,235,33,63,190,9,34,63,13,40,34,63,89,70,34,63,162,100,34,63,232,130,34,63,43,161,34,63,107,191,34,63,167,221,34,63,225,251,34,63,24,26,35,63,75,56,35,63,123,86,35,63,168,116,35,63,211,146,35,63,249,176,35,63,29,207,35,63,62,237,35,63,91,11,36,63,118,41,36,63,141,71,36,63,161,101,36,63,177,131,36,63,191,161,36,63,201,191,36,63,208,221,36,63,212,251,36,63,213,25,37,63,210,55,37,63,204,85,37,63,195,115,37,63,183,145,37,63,167,175,37,63,148,205,37,63,126,235,37,63,101,9,38,63,72,39,38,63,40,69,38,63,4,99,38,63,221,128,38,63,179,158,38,63,134,188,38,63,85,218,38,63,33,248,38,63,233,21,39,63,174,51,39,63,112,81,39,63,46,111,39,63,233,140,39,63,160,170,39,63,84,200,39,63,4,230,39,63,178,3,40,63,91,33,40,63,1,63,40,63,164,92,40,63,67,122,40,63,223,151,40,63,120,181,40,63,12,211,40,63,158,240,40,63,43,14,41,63,182,43,41,63,60,73,41,63,192,102,41,63,63,132,41,63,187,161,41,63,52,191,41,63,169,220,41,63,26,250,41,63,136,23,42,63,242,52,42,63,89,82,42,63,188,111,42,63,28,141,42,63,119,170,42,63,208,199,42,63,36,229,42,63,117,2,43,63,194,31,43,63,12,61,43,63,82,90,43,63,148,119,43,63,211,148,43,63,14,178,43,63,69,207,43,63,120,236,43,63,168,9,44,63,212,38,44,63,252,67,44,63,33,97,44,63,66,126,44,63,95,155,44,63,120,184,44,63,142,213,44,63,159,242,44,63,173,15,45,63,184,44,45,63,190,73,45,63,193,102,45,63,191,131,45,63,186,160,45,63,177,189,45,63,165,218,45,63,148,247,45,63,128,20,46,63,103,49,46,63,75,78,46,63,43,107,46,63,7,136,46,63,224,164,46,63,180,193,46,63,132,222,46,63,81,251,46,63,26,24,47,63,222,52,47,63,159,81,47,63,92,110,47,63,21,139,47,63,202,167,47,63,123,196,47,63,40,225,47,63,209,253,47,63,118,26,48,63,23,55,48,63,180,83,48,63,77,112,48,63,226,140,48,63,115,169,48,63,0,198,48,63,137,226,48,63,14,255,48,63,142,27,49,63,11,56,49,63,132,84,49,63,248,112,49,63,105,141,49,63,214,169,49,63,62,198,49,63,162,226,49,63,2,255,49,63,95,27,50,63,182,55,50,63,10,84,50,63,90,112,50,63,166,140,50,63,237,168,50,63,48,197,50,63,111,225,50,63,170,253,50,63,225,25,51,63,19,54,51,63,66,82,51,63,108,110,51,63,146,138,51,63,180,166,51,63,209,194,51,63,234,222,51,63,0,251,51,63,16,23,52,63,29,51,52,63,37,79,52,63,41,107,52,63,41,135,52,63,37,163,52,63,28,191,52,63,15,219,52,63,253,246,52,63,232,18,53,63,206,46,53,63,176,74,53,63,141,102,53,63,102,130,53,63,59,158,53,63,11,186,53,63,215,213,53,63,159,241,53,63,98,13,54,63,33,41,54,63,220,68,54,63,146,96,54,63,68,124,54,63,241,151,54,63,154,179,54,63,63,207,54,63,223,234,54,63,123,6,55,63,18,34,55,63,165,61,55,63,52,89,55,63,190,116,55,63,67,144,55,63,196,171,55,63,65,199,55,63,185,226,55,63,45,254,55,63,156,25,56,63,7,53,56,63,109,80,56,63,207,107,56,63,44,135,56,63,133,162,56,63,217,189,56,63,40,217,56,63,115,244,56,63,186,15,57,63,252,42,57,63,57,70,57,63,114,97,57,63,166,124,57,63,214,151,57,63,1,179,57,63,40,206,57,63,74,233,57,63,103,4,58,63,128,31,58,63,148,58,58,63,163,85,58,63,174,112,58,63,180,139,58,63,182,166,58,63,179,193,58,63,171,220,58,63,159,247,58,63,142,18,59,63,120,45,59,63,94,72,59,63,63,99,59,63,27,126,59,63,243,152,59,63,197,179,59,63,148,206,59,63,93,233,59,63,34,4,60,63,226,30,60,63,157,57,60,63,84,84,60,63,5,111,60,63,178,137,60,63,91,164,60,63,254,190,60,63,157,217,60,63,55,244,60,63,204,14,61,63,93,41,61,63,232,67,61,63,111,94,61,63,241,120,61,63,110,147,61,63,231,173,61,63,91,200,61,63,201,226,61,63,51,253,61,63,152,23,62,63,249,49,62,63,84,76,62,63,171,102,62,63,252,128,62,63,73,155,62,63,145,181,62,63,212,207,62,63,19,234,62,63,76,4,63,63,128,30,63,63,176,56,63,63,219,82,63,63,0,109,63,63,33,135,63,63,61,161,63,63,84,187,63,63,102,213,63,63,115,239,63,63,123,9,64,63,127,35,64,63,125,61,64,63,118,87,64,63,106,113,64,63,90,139,64,63,68,165,64,63,42,191,64,63,10,217,64,63,229,242,64,63,188,12,65,63,141,38,65,63,90,64,65,63,33,90,65,63,228,115,65,63,161,141,65,63,89,167,65,63,13,193,65,63,187,218,65,63,100,244,65,63,8,14,66,63,167,39,66,63,65,65,66,63,214,90,66,63,102,116,66,63,241,141,66,63,119,167,66,63,248,192,66,63,115,218,66,63,234,243,66,63,91,13,67,63,199,38,67,63,47,64,67,63,145,89,67,63,238,114,67,63,69,140,67,63,152,165,67,63,230,190,67,63,46,216,67,63,113,241,67,63,175,10,68,63,232,35,68,63,28,61,68,63,75,86,68,63,116,111,68,63,153,136,68,63,184,161,68,63,210,186,68,63,230,211,68,63,246,236,68,63,0,6,69,63,5,31,69,63,5,56,69,63,0,81,69,63,245,105,69,63,230,130,69,63,209,155,69,63,182,180,69,63,151,205,69,63,114,230,69,63,72,255,69,63,25,24,70,63,229,48,70,63,171,73,70,63,108,98,70,63,40,123,70,63,222,147,70,63,143,172,70,63,59,197,70,63,226,221,70,63,131,246,70,63,31,15,71,63,182,39,71,63,71,64,71,63,211,88,71,63,90,113,71,63,220,137,71,63,88,162,71,63,207,186,71,63,64,211,71,63,172,235,71,63,19,4,72,63,116,28,72,63,209,52,72,63,39,77,72,63,121,101,72,63,197,125,72,63,11,150,72,63,77,174,72,63,137,198,72,63,191,222,72,63,240,246,72,63,28,15,73,63,66,39,73,63,99,63,73,63,127,87,73,63,149,111,73,63,166,135,73,63,177,159,73,63,183,183,73,63,183,207,73,63,178,231,73,63,168,255,73,63,152,23,74,63,131,47,74,63,104,71,74,63,72,95,74,63,34,119,74,63,247,142,74,63,199,166,74,63,145,190,74,63,85,214,74,63,20,238,74,63,206,5,75,63,130,29,75,63,49,53,75,63,218,76,75,63,126,100,75,63,28,124,75,63,181,147,75,63,72,171,75,63,213,194,75,63,93,218,75,63,224,241,75,63,93,9,76,63,213,32,76,63,71,56,76,63,179,79,76,63,26,103,76,63,124,126,76,63,216,149,76,63,46,173,76,63,127,196,76,63,202,219,76,63,16,243,76,63,80,10,77,63,139,33,77,63,192,56,77,63,240,79,77,63,26,103,77,63,62,126,77,63,93,149,77,63,118,172,77,63,137,195,77,63,151,218,77,63,160,241,77,63,163,8,78,63,160,31,78,63,151,54,78,63,137,77,78,63,118,100,78,63,93,123,78,63,62,146,78,63,25,169,78,63,239,191,78,63,192,214,78,63,138,237,78,63,79,4,79,63,15,27,79,63,201,49,79,63,125,72,79,63,43,95,79,63,212,117,79,63,119,140,79,63,21,163,79,63,172,185,79,63,63,208,79,63,203,230,79,63,82,253,79,63,211,19,80,63,79,42,80,63,197,64,80,63,53,87,80,63,159,109,80,63,4,132,80,63,99,154,80,63,189,176,80,63,16,199,80,63,94,221,80,63,167,243,80,63,233,9,81,63,38,32,81,63,93,54,81,63,143,76,81,63,187,98,81,63,225,120,81,63,1,143,81,63,28,165,81,63,48,187,81,63,64,209,81,63,73,231,81,63,77,253,81,63,75,19,82,63,67,41,82,63,53,63,82,63,34,85,82,63,9,107,82,63,234,128,82,63,198,150,82,63,155,172,82,63,107,194,82,63,53,216,82,63,250,237,82,63,185,3,83,63,113,25,83,63,37,47,83,63,210,68,83,63,121,90,83,63,27,112,83,63,183,133,83,63,77,155,83,63,222,176,83,63,104,198,83,63,237,219,83,63,108,241,83,63,230,6,84,63,89,28,84,63,199,49,84,63,46,71,84,63,145,92,84,63,237,113,84,63,67,135,84,63,148,156,84,63,223,177,84,63,35,199,84,63,99,220,84,63,156,241,84,63,207,6,85,63,253,27,85,63,37,49,85,63,71,70,85,63,99,91,85,63,121,112,85,63,138,133,85,63,149,154,85,63,153,175,85,63,152,196,85,63,146,217,85,63,133,238,85,63,114,3,86,63,90,24,86,63,60,45,86,63,24,66,86,63,238,86,86,63,190,107,86,63,136,128,86,63,76,149,86,63,11,170,86,63,196,190,86,63,118,211,86,63,35,232,86,63,203,252,86,63,108,17,87,63,7,38,87,63,156,58,87,63,44,79,87,63,182,99,87,63,58,120,87,63,183,140,87,63,47,161,87,63,162,181,87,63,14,202,87,63,116,222,87,63,213,242,87,63,47,7,88,63,132,27,88,63,211,47,88,63,28,68,88,63,95,88,88,63,156,108,88,63,211,128,88,63,4,149,88,63,47,169,88,63,85,189,88,63,116,209,88,63,142,229,88,63,162,249,88,63,175,13,89,63,183,33,89,63,185,53,89,63,181,73,89,63,171,93,89,63,155,113,89,63,134,133,89,63,106,153,89,63,72,173,89,63,33,193,89,63,243,212,89,63,192,232,89,63,135,252,89,63,71,16,90,63,2,36,90,63,183,55,90,63,102,75,90,63,15,95,90,63,178,114,90,63,79,134,90,63,230,153,90,63,119,173,90,63,3,193,90,63,136,212,90,63,7,232,90,63,129,251,90,63,244,14,91,63,98,34,91,63,201,53,91,63,43,73,91,63,135,92,91,63,220,111,91,63,44,131,91,63,118,150,91,63,186,169,91,63,248,188,91,63,47,208,91,63,97,227,91,63,141,246,91,63,179,9,92,63,212,28,92,63,238,47,92,63,2,67,92,63,16,86,92,63,24,105,92,63,26,124,92,63,23,143,92,63,13,162,92,63,253,180,92,63,232,199,92,63,204,218,92,63,171,237,92,63,131,0,93,63,86,19,93,63,34,38,93,63,233,56,93,63,169,75,93,63,100,94,93,63,24,113,93,63,199,131,93,63,112,150,93,63,18,169,93,63,175,187,93,63,70,206,93,63,215,224,93,63,97,243,93,63,230,5,94,63,101,24,94,63,222,42,94,63,81,61,94,63,190,79,94,63,36,98,94,63,133,116,94,63,224,134,94,63,53,153,94,63,132,171,94,63,205,189,94,63,16,208,94,63,77,226,94,63,132,244,94,63,181,6,95,63,224,24,95,63,5,43,95,63,36,61,95,63,61,79,95,63,80,97,95,63,93,115,95,63,101,133,95,63,102,151,95,63,97,169,95,63,86,187,95,63,69,205,95,63,46,223,95,63,18,241,95,63,239,2,96,63,198,20,96,63,151,38,96,63,98,56,96,63,40,74,96,63,231,91,96,63,160,109,96,63,84,127,96,63,1,145,96,63,168,162,96,63,73,180,96,63,229,197,96,63,122,215,96,63,10,233,96,63,147,250,96,63,22,12,97,63,148,29,97,63,11,47,97,63,125,64,97,63,232,81,97,63,77,99,97,63,173,116,97,63,6,134,97,63,90,151,97,63,167,168,97,63,239,185,97,63,48,203,97,63,108,220,97,63,162,237,97,63,209,254,97,63,251,15,98,63,30,33,98,63,60,50,98,63,84,67,98,63,101,84,98,63,113,101,98,63,119,118,98,63,119,135,98,63,112,152,98,63,100,169,98,63,82,186,98,63,58,203,98,63,28,220,98,63,247,236,98,63,205,253,98,63,157,14,99,63,103,31,99,63,43,48,99,63,233,64,99,63,161,81,99,63,83,98,99,63,255,114,99,63,165,131,99,63,69,148,99,63,224,164,99,63,116,181,99,63,2,198,99,63,138,214,99,63,13,231,99,63,137,247,99,63,255,7,100,63,112,24,100,63,218,40,100,63,62,57,100,63,157,73,100,63,246,89,100,63,72,106,100,63,149,122,100,63,219,138,100,63,28,155,100,63,87,171,100,63,140,187,100,63,186,203,100,63,227,219,100,63,6,236,100,63,35,252,100,63,58,12,101,63,75,28,101,63,86,44,101,63,91,60,101,63,91,76,101,63,84,92,101,63,71,108,101,63,53,124,101,63,28,140,101,63,254,155,101,63,217,171,101,63,175,187,101,63,126,203,101,63,72,219,101,63,12,235,101,63,202,250,101,63,130,10,102,63,52,26,102,63,224,41,102,63,134,57,102,63,38,73,102,63,193,88,102,63,85,104,102,63,227,119,102,63,108,135,102,63,238,150,102,63,107,166,102,63,226,181,102,63,83,197,102,63,190,212,102,63,35,228,102,63,130,243,102,63,219,2,103,63,46,18,103,63,124,33,103,63,195,48,103,63,5,64,103,63,64,79,103,63,118,94,103,63,166,109,103,63,208,124,103,63,244,139,103,63,18,155,103,63,42,170,103,63,61,185,103,63,73,200,103,63,80,215,103,63,80,230,103,63,75,245,103,63,64,4,104,63,47,19,104,63,24,34,104,63,251,48,104,63,217,63,104,63,176,78,104,63,130,93,104,63,78,108,104,63,20,123,104,63,212,137,104,63,142,152,104,63,66,167,104,63,240,181,104,63,153,196,104,63,60,211,104,63,217,225,104,63,112,240,104,63,1,255,104,63,140,13,105,63,17,28,105,63,145,42,105,63,11,57,105,63,127,71,105,63,237,85,105,63,85,100,105,63,183,114,105,63,20,129,105,63,106,143,105,63,187,157,105,63,6,172,105,63,75,186,105,63,139,200,105,63,196,214,105,63,248,228,105,63,38,243,105,63,78,1,106,63,112,15,106,63,141,29,106,63,163,43,106,63,180,57,106,63,191,71,106,63,196,85,106,63,196,99,106,63,189,113,106,63,177,127,106,63,159,141,106,63,135,155,106,63,106,169,106,63,70,183,106,63,29,197,106,63,238,210,106,63,186,224,106,63,127,238,106,63,63,252,106,63,249,9,107,63,173,23,107,63,91,37,107,63,4,51,107,63,167,64,107,63,68,78,107,63,219,91,107,63,109,105,107,63,249,118,107,63,127,132,107,63,255,145,107,63,122,159,107,63,238,172,107,63,94,186,107,63,199,199,107,63,42,213,107,63,136,226,107,63,224,239,107,63,51,253,107,63,128,10,108,63,198,23,108,63,8,37,108,63,67,50,108,63,121,63,108,63,169,76,108,63,211,89,108,63,248,102,108,63,23,116,108,63,48,129,108,63,68,142,108,63,82,155,108,63,90,168,108,63,92,181,108,63,89,194,108,63,80,207,108,63,65,220,108,63,45,233,108,63,19,246,108,63,243,2,109,63,206,15,109,63,163,28,109,63,114,41,109,63,60,54,109,63,0,67,109,63,190,79,109,63,119,92,109,63,42,105,109,63,215,117,109,63,127,130,109,63,33,143,109,63,189,155,109,63,84,168,109,63,229,180,109,63,113,193,109,63,247,205,109,63,119,218,109,63,242,230,109,63,103,243,109,63,214,255,109,63,64,12,110,63,164,24,110,63,3,37,110,63,91,49,110,63,175,61,110,63,253,73,110,63,69,86,110,63,135,98,110,63,196,110,110,63,252,122,110,63,45,135,110,63,90,147,110,63,128,159,110,63,161,171,110,63,189,183,110,63,211,195,110,63,227,207,110,63,238,219,110,63,243,231,110,63,243,243,110,63,237,255,110,63,226,11,111,63,209,23,111,63,186,35,111,63,158,47,111,63,125,59,111,63,85,71,111,63,41,83,111,63,247,94,111,63,191,106,111,63,130,118,111,63,63,130,111,63,247,141,111,63,169,153,111,63,86,165,111,63,253,176,111,63,159,188,111,63,59,200,111,63,210,211,111,63,99,223,111,63,239,234,111,63,117,246,111,63,246,1,112,63,114,13,112,63,231,24,112,63,88,36,112,63,195,47,112,63,40,59,112,63,137,70,112,63,227,81,112,63,56,93,112,63,136,104,112,63,210,115,112,63,23,127,112,63,87,138,112,63,145,149,112,63,197,160,112,63,244,171,112,63,30,183,112,63,66,194,112,63,97,205,112,63,123,216,112,63,143,227,112,63,157,238,112,63,167,249,112,63,171,4,113,63,169,15,113,63,162,26,113,63,150,37,113,63,132,48,113,63,109,59,113,63,81,70,113,63,47,81,113,63,8,92,113,63,219,102,113,63,170,113,113,63,114,124,113,63,54,135,113,63,244,145,113,63,173,156,113,63,96,167,113,63,14,178,113,63,183,188,113,63,91,199,113,63,249,209,113,63,146,220,113,63,37,231,113,63,179,241,113,63,60,252,113,63,192,6,114,63,62,17,114,63,183,27,114,63,43,38,114,63,154,48,114,63,3,59,114,63,103,69,114,63,197,79,114,63,31,90,114,63,115,100,114,63,194,110,114,63,11,121,114,63,79,131,114,63,143,141,114,63,200,151,114,63,253,161,114,63,44,172,114,63,87,182,114,63,123,192,114,63,155,202,114,63,182,212,114,63,203,222,114,63,219,232,114,63,230,242,114,63,235,252,114,63,236,6,115,63,231,16,115,63,221,26,115,63,206,36,115,63,186,46,115,63,160,56,115,63,130,66,115,63,94,76,115,63,53,86,115,63,7,96,115,63,212,105,115,63,155,115,115,63,94,125,115,63,27,135,115,63,211,144,115,63,134,154,115,63,52,164,115,63,221,173,115,63,128,183,115,63,31,193,115,63,184,202,115,63,77,212,115,63,220,221,115,63,102,231,115,63,235,240,115,63,107,250,115,63,230,3,116,63,92,13,116,63,204,22,116,63,56,32,116,63,159,41,116,63,0,51,116,63,93,60,116,63,180,69,116,63,6,79,116,63,84,88,116,63,156,97,116,63,223,106,116,63,29,116,116,63,87,125,116,63,139,134,116,63,186,143,116,63,228,152,116,63,9,162,116,63,41,171,116,63,68,180,116,63,91,189,116,63,108,198,116,63,120,207,116,63,127,216,116,63,129,225,116,63,127,234,116,63,119,243,116,63,106,252,116,63,89,5,117,63,66,14,117,63,38,23,117,63,6,32,117,63,225,40,117,63,182,49,117,63,135,58,117,63,83,67,117,63,26,76,117,63,220,84,117,63,153,93,117,63,81,102,117,63,4,111,117,63,179,119,117,63,92,128,117,63,1,137,117,63,160,145,117,63,59,154,117,63,209,162,117,63,98,171,117,63,239,179,117,63,118,188,117,63,249,196,117,63,118,205,117,63,239,213,117,63,99,222,117,63,210,230,117,63,61,239,117,63,162,247,117,63,3,0,118,63,95,8,118,63,182,16,118,63,8,25,118,63,86,33,118,63,159,41,118,63,227,49,118,63,34,58,118,63,92,66,118,63,146,74,118,63,195,82,118,63,239,90,118,63,22,99,118,63,57,107,118,63,86,115,118,63,112,123,118,63,132,131,118,63,148,139,118,63,158,147,118,63,165,155,118,63,166,163,118,63,163,171,118,63,155,179,118,63,142,187,118,63,125,195,118,63,103,203,118,63,76,211,118,63,45,219,118,63,9,227,118,63,224,234,118,63,178,242,118,63,128,250,118,63,74,2,119,63,14,10,119,63,206,17,119,63,137,25,119,63,64,33,119,63,242,40,119,63,160,48,119,63,72,56,119,63,237,63,119,63,140,71,119,63,39,79,119,63,190,86,119,63,79,94,119,63,220,101,119,63,101,109,119,63,233,116,119,63,105,124,119,63,228,131,119,63,90,139,119,63,204,146,119,63,57,154,119,63,162,161,119,63,6,169,119,63,101,176,119,63,192,183,119,63,23,191,119,63,105,198,119,63,182,205,119,63,255,212,119,63,68,220,119,63,132,227,119,63,191,234,119,63,246,241,119,63,41,249,119,63,87,0,120,63,129,7,120,63,166,14,120,63,198,21,120,63,227,28,120,63,250,35,120,63,14,43,120,63,28,50,120,63,39,57,120,63,45,64,120,63,46,71,120,63,44,78,120,63,36,85,120,63,25,92,120,63,9,99,120,63,244,105,120,63,219,112,120,63,190,119,120,63,156,126,120,63,118,133,120,63,76,140,120,63,29,147,120,63,234,153,120,63,179,160,120,63,119,167,120,63,55,174,120,63,242,180,120,63,169,187,120,63,92,194,120,63,11,201,120,63,181,207,120,63,91,214,120,63,252,220,120,63,154,227,120,63,51,234,120,63,199,240,120,63,88,247,120,63,228,253,120,63,108,4,121,63,240,10,121,63,111,17,121,63,234,23,121,63,97,30,121,63,211,36,121,63,66,43,121,63,172,49,121,63,18,56,121,63,116,62,121,63,209,68,121,63,42,75,121,63,127,81,121,63,208,87,121,63,29,94,121,63,101,100,121,63,170,106,121,63,234,112,121,63,38,119,121,63,93,125,121,63,145,131,121,63,193,137,121,63,236,143,121,63,19,150,121,63,54,156,121,63,85,162,121,63,112,168,121,63,134,174,121,63,153,180,121,63,167,186,121,63,178,192,121,63,184,198,121,63,186,204,121,63,184,210,121,63,178,216,121,63,168,222,121,63,154,228,121,63,135,234,121,63,113,240,121,63,87,246,121,63,56,252,121,63,22,2,122,63,239,7,122,63,197,13,122,63,150,19,122,63,100,25,122,63,45,31,122,63,243,36,122,63,180,42,122,63,113,48,122,63,43,54,122,63,224,59,122,63,146,65,122,63,63,71,122,63,233,76,122,63,142,82,122,63,48,88,122,63,206,93,122,63,103,99,122,63,253,104,122,63,143,110,122,63,29,116,122,63,167,121,122,63,45,127,122,63,175,132,122,63,45,138,122,63,168,143,122,63,30,149,122,63,145,154,122,63,255,159,122,63,106,165,122,63,209,170,122,63,52,176,122,63,147,181,122,63,239,186,122,63,70,192,122,63,154,197,122,63,234,202,122,63,54,208,122,63,126,213,122,63,194,218,122,63,3,224,122,63,64,229,122,63,121,234,122,63,174,239,122,63,223,244,122,63,13,250,122,63,55,255,122,63,93,4,123,63,127,9,123,63,157,14,123,63,184,19,123,63,207,24,123,63,227,29,123,63,242,34,123,63,254,39,123,63,6,45,123,63,10,50,123,63,11,55,123,63,8,60,123,63,1,65,123,63,247,69,123,63,233,74,123,63,215,79,123,63,193,84,123,63,168,89,123,63,139,94,123,63,107,99,123,63,71,104,123,63,31,109,123,63,243,113,123,63,196,118,123,63,146,123,123,63,91,128,123,63,33,133,123,63,228,137,123,63,163,142,123,63,94,147,123,63,22,152,123,63,202,156,123,63,122,161,123,63,39,166,123,63,208,170,123,63,118,175,123,63,24,180,123,63,183,184,123,63,82,189,123,63,233,193,123,63,125,198,123,63,14,203,123,63,155,207,123,63,36,212,123,63,170,216,123,63,45,221,123,63,172,225,123,63,39,230,123,63,159,234,123,63,19,239,123,63,132,243,123,63,242,247,123,63,92,252,123,63,195,0,124,63,38,5,124,63,133,9,124,63,226,13,124,63,58,18,124,63,144,22,124,63,226,26,124,63,48,31,124,63,123,35,124,63,195,39,124,63,7,44,124,63,72,48,124,63,134,52,124,63,192,56,124,63,247,60,124,63,42,65,124,63,90,69,124,63,135,73,124,63,176,77,124,63,214,81,124,63,249,85,124,63,24,90,124,63,52,94,124,63,77,98,124,63,98,102,124,63,116,106,124,63,131,110,124,63,142,114,124,63,150,118,124,63,155,122,124,63,157,126,124,63,155,130,124,63,150,134,124,63,142,138,124,63,130,142,124,63,116,146,124,63,98,150,124,63,77,154,124,63,52,158,124,63,24,162,124,63,249,165,124,63,215,169,124,63,178,173,124,63,137,177,124,63,94,181,124,63,47,185,124,63,253,188,124,63,199,192,124,63,143,196,124,63,83,200,124,63,20,204,124,63,211,207,124,63,141,211,124,63,69,215,124,63,250,218,124,63,171,222,124,63,90,226,124,63,5,230,124,63,173,233,124,63,82,237,124,63,244,240,124,63,147,244,124,63,46,248,124,63,199,251,124,63,93,255,124,63,239,2,125,63,127,6,125,63,11,10,125,63,148,13,125,63,27,17,125,63,158,20,125,63,30,24,125,63,155,27,125,63,21,31,125,63,140,34,125,63,0,38,125,63,114,41,125,63,224,44,125,63,75,48,125,63,179,51,125,63,24,55,125,63,122,58,125,63,217,61,125,63,54,65,125,63,143,68,125,63,229,71,125,63,56,75,125,63,137,78,125,63,214,81,125,63,33,85,125,63,104,88,125,63,173,91,125,63,239,94,125,63,46,98,125,63,106,101,125,63,163,104,125,63,217,107,125,63,12,111,125,63,61,114,125,63,106,117,125,63,149,120,125,63,189,123,125,63,226,126,125,63,4,130,125,63,36,133,125,63,64,136,125,63,90,139,125,63,112,142,125,63,133,145,125,63,150,148,125,63,164,151,125,63,176,154,125,63,185,157,125,63,191,160,125,63,194,163,125,63,194,166,125,63,192,169,125,63,187,172,125,63,179,175,125,63,168,178,125,63,155,181,125,63,139,184,125,63,120,187,125,63,99,190,125,63,74,193,125,63,48,196,125,63,18,199,125,63,241,201,125,63,206,204,125,63,169,207,125,63,128,210,125,63,85,213,125,63,39,216,125,63,247,218,125,63,196,221,125,63,142,224,125,63,85,227,125,63,26,230,125,63,220,232,125,63,156,235,125,63,89,238,125,63,19,241,125,63,203,243,125,63,128,246,125,63,51,249,125,63,227,251,125,63,144,254,125,63,59,1,126,63,227,3,126,63,137,6,126,63,44,9,126,63,204,11,126,63,106,14,126,63,6,17,126,63,158,19,126,63,53,22,126,63,200,24,126,63,90,27,126,63,232,29,126,63,116,32,126,63,254,34,126,63,133,37,126,63,10,40,126,63,140,42,126,63,12,45,126,63,137,47,126,63,4,50,126,63,124,52,126,63,242,54,126,63,101,57,126,63,214,59,126,63,68,62,126,63,176,64,126,63,26,67,126,63,129,69,126,63,230,71,126,63,72,74,126,63,168,76,126,63,5,79,126,63,96,81,126,63,185,83,126,63,15,86,126,63,99,88,126,63,181,90,126,63,4,93,126,63,81,95,126,63,155,97,126,63,227,99,126,63,41,102,126,63,108,104,126,63,173,106,126,63,236,108,126,63,40,111,126,63,98,113,126,63,154,115,126,63,208,117,126,63,3,120,126,63,51,122,126,63,98,124,126,63,142,126,126,63,184,128,126,63,224,130,126,63,5,133,126,63,40,135,126,63,73,137,126,63,104,139,126,63,132,141,126,63,159,143,126,63,183,145,126,63,204,147,126,63,224,149,126,63,241,151,126,63,0,154,126,63,13,156,126,63,24,158,126,63,32,160,126,63,38,162,126,63,42,164,126,63,44,166,126,63,44,168,126,63,41,170,126,63,37,172,126,63,30,174,126,63,21,176,126,63,10,178,126,63,253,179,126,63,238,181,126,63,220,183,126,63,201,185,126,63,179,187,126,63,155,189,126,63,129,191,126,63,101,193,126,63,71,195,126,63,39,197,126,63,5,199,126,63,224,200,126,63,186,202,126,63,145,204,126,63,103,206,126,63,58,208,126,63,12,210,126,63,219,211,126,63,168,213,126,63,115,215,126,63,61,217,126,63,4,219,126,63,201,220,126,63,140,222,126,63,77,224,126,63,12,226,126,63,202,227,126,63,133,229,126,63,62,231,126,63,245,232,126,63,170,234,126,63,94,236,126,63,15,238,126,63,190,239,126,63,108,241,126,63,23,243,126,63,193,244,126,63,104,246,126,63,14,248,126,63,178,249,126,63,84,251,126,63,243,252,126,63,145,254,126,63,46,0,127,63,200,1,127,63,96,3,127,63,247,4,127,63,139,6,127,63,30,8,127,63,175,9,127,63,62,11,127,63,203,12,127,63,86,14,127,63,223,15,127,63,103,17,127,63,237,18,127,63,112,20,127,63,242,21,127,63,115,23,127,63,241,24,127,63,110,26,127,63,233,27,127,63,98,29,127,63,217,30,127,63,78,32,127,63,194,33,127,63,52,35,127,63,164,36,127,63,18,38,127,63,127,39,127,63,234,40,127,63,83,42,127,63,186,43,127,63,32,45,127,63,131,46,127,63,230,47,127,63,70,49,127,63,165,50,127,63,2,52,127,63,93,53,127,63,182,54,127,63,14,56,127,63,100,57,127,63,185,58,127,63,12,60,127,63,93,61,127,63,172,62,127,63,250,63,127,63,70,65,127,63,145,66,127,63,217,67,127,63,33,69,127,63,102,70,127,63,170,71,127,63,236,72,127,63,45,74,127,63,108,75,127,63,169,76,127,63,229,77,127,63,31,79,127,63,88,80,127,63,143,81,127,63,196,82,127,63,248,83,127,63,42,85,127,63,91,86,127,63,138,87,127,63,184,88,127,63,228,89,127,63,14,91,127,63,55,92,127,63,94,93,127,63,132,94,127,63,169,95,127,63,203,96,127,63,237,97,127,63,12,99,127,63,42,100,127,63,71,101,127,63,98,102,127,63,124,103,127,63,148,104,127,63,171,105,127,63,192,106,127,63,212,107,127,63,230,108,127,63,247,109,127,63,6,111,127,63,20,112,127,63,33,113,127,63,44,114,127,63,53,115,127,63,61,116,127,63,68,117,127,63,73,118,127,63,77,119,127,63,79,120,127,63,80,121,127,63,80,122,127,63,78,123,127,63,75,124,127,63,70,125,127,63,64,126,127,63,57,127,127,63,48,128,127,63,38,129,127,63,27,130,127,63,14,131,127,63,0,132,127,63,240,132,127,63,223,133,127,63,205,134,127,63,185,135,127,63,164,136,127,63,142,137,127,63,118,138,127,63,93,139,127,63,67,140,127,63,40,141,127,63,11,142,127,63,237,142,127,63,205,143,127,63,173,144,127,63,139,145,127,63,103,146,127,63,67,147,127,63,29,148,127,63,246,148,127,63,205,149,127,63,164,150,127,63,121,151,127,63,77,152,127,63,31,153,127,63,241,153,127,63,193,154,127,63,144,155,127,63,93,156,127,63,42,157,127,63,245,157,127,63,191,158,127,63,136,159,127,63,79,160,127,63,22,161,127,63,219,161,127,63,159,162,127,63,98,163,127,63,36,164,127,63,228,164,127,63,163,165,127,63,98,166,127,63,31,167,127,63,219,167,127,63,149,168,127,63,79,169,127,63,7,170,127,63,190,170,127,63,117,171,127,63,42,172,127,63,221,172,127,63,144,173,127,63,66,174,127,63,242,174,127,63,162,175,127,63,80,176,127,63,253,176,127,63,169,177,127,63,85,178,127,63,254,178,127,63,167,179,127,63,79,180,127,63,246,180,127,63,156,181,127,63,64,182,127,63,228,182,127,63,134,183,127,63,40,184,127,63,200,184,127,63,103,185,127,63,6,186,127,63,163,186,127,63,63,187,127,63,219,187,127,63,117,188,127,63,14,189,127,63,166,189,127,63,61,190,127,63,212,190,127,63,105,191,127,63,253,191,127,63,144,192,127,63,34,193,127,63,180,193,127,63,68,194,127,63,211,194,127,63,98,195,127,63,239,195,127,63,123,196,127,63,7,197,127,63,145,197,127,63,27,198,127,63,163,198,127,63,43,199,127,63,178,199,127,63,56,200,127,63,189,200,127,63,65,201,127,63,196,201,127,63,70,202,127,63,199,202,127,63,71,203,127,63,199,203,127,63,69,204,127,63,195,204,127,63,64,205,127,63,187,205,127,63,54,206,127,63,177,206,127,63,42,207,127,63,162,207,127,63,26,208,127,63,144,208,127,63,6,209,127,63,123,209,127,63,239,209,127,63,98,210,127,63,213,210,127,63,70,211,127,63,183,211,127,63,39,212,127,63,150,212,127,63,4,213,127,63,114,213,127,63],"i8",L3,R.GLOBAL_BASE+541176),d3([222,213,127,63,74,214,127,63,181,214,127,63,32,215,127,63,137,215,127,63,242,215,127,63,89,216,127,63,192,216,127,63,39,217,127,63,140,217,127,63,241,217,127,63,85,218,127,63,184,218,127,63,27,219,127,63,124,219,127,63,221,219,127,63,61,220,127,63,157,220,127,63,251,220,127,63,89,221,127,63,183,221,127,63,19,222,127,63,111,222,127,63,202,222,127,63,36,223,127,63,126,223,127,63,215,223,127,63,47,224,127,63,134,224,127,63,221,224,127,63,51,225,127,63,137,225,127,63,221,225,127,63,49,226,127,63,133,226,127,63,215,226,127,63,41,227,127,63,122,227,127,63,203,227,127,63,27,228,127,63,106,228,127,63,185,228,127,63,7,229,127,63,84,229,127,63,161,229,127,63,237,229,127,63,56,230,127,63,131,230,127,63,205,230,127,63,23,231,127,63,96,231,127,63,168,231,127,63,239,231,127,63,54,232,127,63,125,232,127,63,195,232,127,63,8,233,127,63,76,233,127,63,144,233,127,63,212,233,127,63,23,234,127,63,89,234,127,63,154,234,127,63,219,234,127,63,28,235,127,63,92,235,127,63,155,235,127,63,218,235,127,63,24,236,127,63,86,236,127,63,147,236,127,63,207,236,127,63,11,237,127,63,71,237,127,63,130,237,127,63,188,237,127,63,246,237,127,63,47,238,127,63,104,238,127,63,160,238,127,63,216,238,127,63,15,239,127,63,69,239,127,63,123,239,127,63,177,239,127,63,230,239,127,63,27,240,127,63,79,240,127,63,130,240,127,63,182,240,127,63,232,240,127,63,26,241,127,63,76,241,127,63,125,241,127,63,174,241,127,63,222,241,127,63,14,242,127,63,61,242,127,63,108,242,127,63,154,242,127,63,200,242,127,63,245,242,127,63,34,243,127,63,79,243,127,63,123,243,127,63,166,243,127,63,209,243,127,63,252,243,127,63,38,244,127,63,80,244,127,63,121,244,127,63,162,244,127,63,203,244,127,63,243,244,127,63,27,245,127,63,66,245,127,63,105,245,127,63,143,245,127,63,181,245,127,63,219,245,127,63,0,246,127,63,37,246,127,63,73,246,127,63,109,246,127,63,145,246,127,63,180,246,127,63,215,246,127,63,250,246,127,63,28,247,127,63,62,247,127,63,95,247,127,63,128,247,127,63,160,247,127,63,193,247,127,63,225,247,127,63,0,248,127,63,31,248,127,63,62,248,127,63,93,248,127,63,123,248,127,63,152,248,127,63,182,248,127,63,211,248,127,63,240,248,127,63,12,249,127,63,40,249,127,63,68,249,127,63,95,249,127,63,122,249,127,63,149,249,127,63,175,249,127,63,202,249,127,63,227,249,127,63,253,249,127,63,22,250,127,63,47,250,127,63,71,250,127,63,96,250,127,63,120,250,127,63,143,250,127,63,166,250,127,63,190,250,127,63,212,250,127,63,235,250,127,63,1,251,127,63,23,251,127,63,44,251,127,63,66,251,127,63,87,251,127,63,108,251,127,63,128,251,127,63,148,251,127,63,168,251,127,63,188,251,127,63,208,251,127,63,227,251,127,63,246,251,127,63,8,252,127,63,27,252,127,63,45,252,127,63,63,252,127,63,81,252,127,63,98,252,127,63,115,252,127,63,132,252,127,63,149,252,127,63,165,252,127,63,182,252,127,63,198,252,127,63,213,252,127,63,229,252,127,63,244,252,127,63,3,253,127,63,18,253,127,63,33,253,127,63,47,253,127,63,62,253,127,63,76,253,127,63,89,253,127,63,103,253,127,63,116,253,127,63,130,253,127,63,143,253,127,63,155,253,127,63,168,253,127,63,181,253,127,63,193,253,127,63,205,253,127,63,217,253,127,63,228,253,127,63,240,253,127,63,251,253,127,63,6,254,127,63,17,254,127,63,28,254,127,63,38,254,127,63,49,254,127,63,59,254,127,63,69,254,127,63,79,254,127,63,89,254,127,63,98,254,127,63,108,254,127,63,117,254,127,63,126,254,127,63,135,254,127,63,144,254,127,63,152,254,127,63,161,254,127,63,169,254,127,63,177,254,127,63,185,254,127,63,193,254,127,63,201,254,127,63,208,254,127,63,216,254,127,63,223,254,127,63,230,254,127,63,237,254,127,63,244,254,127,63,251,254,127,63,2,255,127,63,8,255,127,63,14,255,127,63,21,255,127,63,27,255,127,63,33,255,127,63,39,255,127,63,45,255,127,63,50,255,127,63,56,255,127,63,61,255,127,63,67,255,127,63,72,255,127,63,77,255,127,63,82,255,127,63,87,255,127,63,92,255,127,63,96,255,127,63,101,255,127,63,105,255,127,63,110,255,127,63,114,255,127,63,118,255,127,63,122,255,127,63,126,255,127,63,130,255,127,63,134,255,127,63,138,255,127,63,142,255,127,63,145,255,127,63,149,255,127,63,152,255,127,63,155,255,127,63,159,255,127,63,162,255,127,63,165,255,127,63,168,255,127,63,171,255,127,63,174,255,127,63,176,255,127,63,179,255,127,63,182,255,127,63,184,255,127,63,187,255,127,63,189,255,127,63,192,255,127,63,194,255,127,63,196,255,127,63,198,255,127,63,201,255,127,63,203,255,127,63,205,255,127,63,207,255,127,63,209,255,127,63,210,255,127,63,212,255,127,63,214,255,127,63,216,255,127,63,217,255,127,63,219,255,127,63,220,255,127,63,222,255,127,63,223,255,127,63,225,255,127,63,226,255,127,63,227,255,127,63,229,255,127,63,230,255,127,63,231,255,127,63,232,255,127,63,233,255,127,63,234,255,127,63,235,255,127,63,236,255,127,63,237,255,127,63,238,255,127,63,239,255,127,63,240,255,127,63,241,255,127,63,241,255,127,63,242,255,127,63,243,255,127,63,244,255,127,63,244,255,127,63,245,255,127,63,246,255,127,63,246,255,127,63,247,255,127,63,247,255,127,63,248,255,127,63,248,255,127,63,249,255,127,63,249,255,127,63,250,255,127,63,250,255,127,63,250,255,127,63,251,255,127,63,251,255,127,63,251,255,127,63,252,255,127,63,252,255,127,63,252,255,127,63,253,255,127,63,253,255,127,63,253,255,127,63,253,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,254,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,255,255,127,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,0,0,128,63,69,78,67,79,68,69,82,0,79,103,103,86,111,114,98,105,115,69,110,99,111,100,101,114,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"i8",L3,R.GLOBAL_BASE+551416);var p8=R.alignMemory(d3(12,"i8",RA),8);J4(p8%8==0);function qB(i){q9[p8]=q9[i],q9[p8+1]=q9[i+1],q9[p8+2]=q9[i+2],q9[p8+3]=q9[i+3]}function cr(i){q9[p8]=q9[i],q9[p8+1]=q9[i+1],q9[p8+2]=q9[i+2],q9[p8+3]=q9[i+3],q9[p8+4]=q9[i+4],q9[p8+5]=q9[i+5],q9[p8+6]=q9[i+6],q9[p8+7]=q9[i+7]}var qi=HB,Oo=Ua,NA=0;function UA(i){return D9[NA>>2]=i,i}var L2={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function $p(i){switch(i){case 30:return NB;case 85:return Nr/NB;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return typeof navigator=="object"&&navigator.hardwareConcurrency||1}return UA(L2.EINVAL),-1}o._memset=Wk;var ap=!0;o._strlen=Kk,o._strcat=Vk,o._bitshift64Shl=tv;function dk(){o.abort()}o._i64Add=zk;var Ek=Fe,Ck={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"},_n={ttys:[],init:function(){},shutdown:function(){},register:function(i,a){_n.ttys[i]={input:[],output:[],ops:a},k.registerDevice(i,_n.stream_ops)},stream_ops:{open:function(i){var a=_n.ttys[i.node.rdev];if(!a)throw new k.ErrnoError(L2.ENODEV);i.tty=a,i.seekable=!1},close:function(i){i.tty.ops.flush(i.tty)},flush:function(i){i.tty.ops.flush(i.tty)},read:function(i,a,g,u,O){if(!i.tty||!i.tty.ops.get_char)throw new k.ErrnoError(L2.ENXIO);for(var e=0,Z0=0;Z00?a=u.slice(0,O).toString("utf-8"):a=null}else typeof window<"u"&&typeof window.prompt=="function"?(a=window.prompt("Input: "),a!==null&&(a+=` `)):typeof readline=="function"&&(a=readline(),a!==null&&(a+=` -`));if(!a)return null;i.input=Ur(a,!0)}return i.input.shift()},put_char:function(i,a){a===null||a===10?(o.print(xA(i.output,0)),i.output=[]):a!=0&&i.output.push(a)},flush:function(i){i.output&&i.output.length>0&&(o.print(xA(i.output,0)),i.output=[])}},default_tty1_ops:{put_char:function(i,a){a===null||a===10?(o.printErr(xA(i.output,0)),i.output=[]):a!=0&&i.output.push(a)},flush:function(i){i.output&&i.output.length>0&&(o.printErr(xA(i.output,0)),i.output=[])}}},w9={ops_table:null,mount:function(i){return w9.createNode(null,"/",16895,0)},createNode:function(i,a,g,u){if(k.isBlkdev(g)||k.isFIFO(g))throw new k.ErrnoError(L2.EPERM);w9.ops_table||(w9.ops_table={dir:{node:{getattr:w9.node_ops.getattr,setattr:w9.node_ops.setattr,lookup:w9.node_ops.lookup,mknod:w9.node_ops.mknod,rename:w9.node_ops.rename,unlink:w9.node_ops.unlink,rmdir:w9.node_ops.rmdir,readdir:w9.node_ops.readdir,symlink:w9.node_ops.symlink},stream:{llseek:w9.stream_ops.llseek}},file:{node:{getattr:w9.node_ops.getattr,setattr:w9.node_ops.setattr},stream:{llseek:w9.stream_ops.llseek,read:w9.stream_ops.read,write:w9.stream_ops.write,allocate:w9.stream_ops.allocate,mmap:w9.stream_ops.mmap,msync:w9.stream_ops.msync}},link:{node:{getattr:w9.node_ops.getattr,setattr:w9.node_ops.setattr,readlink:w9.node_ops.readlink},stream:{}},chrdev:{node:{getattr:w9.node_ops.getattr,setattr:w9.node_ops.setattr},stream:k.chrdev_stream_ops}});var O=k.createNode(i,a,g,u);return k.isDir(O.mode)?(O.node_ops=w9.ops_table.dir.node,O.stream_ops=w9.ops_table.dir.stream,O.contents={}):k.isFile(O.mode)?(O.node_ops=w9.ops_table.file.node,O.stream_ops=w9.ops_table.file.stream,O.usedBytes=0,O.contents=null):k.isLink(O.mode)?(O.node_ops=w9.ops_table.link.node,O.stream_ops=w9.ops_table.link.stream):k.isChrdev(O.mode)&&(O.node_ops=w9.ops_table.chrdev.node,O.stream_ops=w9.ops_table.chrdev.stream),O.timestamp=Date.now(),i&&(i.contents[a]=O),O},getFileDataAsRegularArray:function(i){if(i.contents&&i.contents.subarray){for(var a=[],g=0;gi.contents.length&&(i.contents=w9.getFileDataAsRegularArray(i),i.usedBytes=i.contents.length),!i.contents||i.contents.subarray){var g=i.contents?i.contents.buffer.byteLength:0;if(g>=a)return;var u=1024*1024;a=Math.max(a,g*(g0&&i.contents.set(O.subarray(0,i.usedBytes),0);return}for(!i.contents&&a>0&&(i.contents=[]);i.contents.lengtha)i.contents.length=a;else for(;i.contents.length=i.node.usedBytes)return 0;var Z0=Math.min(i.node.usedBytes-O,u);if(K4(Z0>=0),Z0>8&&e.subarray)a.set(e.subarray(O,O+Z0),g);else for(var t1=0;t10||O+uM5.timestamp)&&(O.push(Q5),u++)});var e=[];if(Object.keys(a.entries).forEach(function(Q5){var p2=a.entries[Q5],M5=i.entries[Q5];M5||(e.push(Q5),u++)}),!u)return g(null);var Z0=!1,t1=0,b2=i.type==="remote"?i.db:a.db,A=b2.transaction([C7.DB_STORE_NAME],"readwrite"),o1=A.objectStore(C7.DB_STORE_NAME);function B(Q5){if(Q5)return B.errored?void 0:(B.errored=!0,g(Q5));if(++t1>=u)return g(null)}A.onerror=function(Q5){B(this.error),Q5.preventDefault()},O.sort().forEach(function(Q5){a.type==="local"?C7.loadRemoteEntry(o1,Q5,function(p2,M5){if(p2)return B(p2);C7.storeLocalEntry(Q5,M5,B)}):C7.loadLocalEntry(Q5,function(p2,M5){if(p2)return B(p2);C7.storeRemoteEntry(o1,Q5,M5,B)})}),e.sort().reverse().forEach(function(Q5){a.type==="local"?C7.removeLocalEntry(Q5,B):C7.removeRemoteEntry(o1,Q5,B)})}},l8={isWindows:!1,staticInit:function(){l8.isWindows=!!process.platform.match(/^win/)},mount:function(i){return K4(E),l8.createNode(null,"/",l8.getMode(i.opts.root),0)},createNode:function(i,a,g,u){if(!k.isDir(g)&&!k.isFile(g)&&!k.isLink(g))throw new k.ErrnoError(L2.EINVAL);var O=k.createNode(i,a,g);return O.node_ops=l8.node_ops,O.stream_ops=l8.stream_ops,O},getMode:function(i){var a;try{a=B7.lstatSync(i),l8.isWindows&&(a.mode=a.mode|(a.mode&146)>>1)}catch(g){throw g.code?new k.ErrnoError(L2[g.code]):g}return a.mode},realPath:function(i){for(var a=[];i.parent!==i;)a.push(i.name),i=i.parent;return a.push(i.mount.opts.root),a.reverse(),a9.join.apply(null,a)},flagsToPermissionStringMap:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},flagsToPermissionString:function(i){return i in l8.flagsToPermissionStringMap?l8.flagsToPermissionStringMap[i]:i},node_ops:{getattr:function(i){var a=l8.realPath(i),g;try{g=B7.lstatSync(a)}catch(u){throw u.code?new k.ErrnoError(L2[u.code]):u}return l8.isWindows&&!g.blksize&&(g.blksize=4096),l8.isWindows&&!g.blocks&&(g.blocks=(g.size+g.blksize-1)/g.blksize|0),{dev:g.dev,ino:g.ino,mode:g.mode,nlink:g.nlink,uid:g.uid,gid:g.gid,rdev:g.rdev,size:g.size,atime:g.atime,mtime:g.mtime,ctime:g.ctime,blksize:g.blksize,blocks:g.blocks}},setattr:function(i,a){var g=l8.realPath(i);try{if(a.mode!==void 0&&(B7.chmodSync(g,a.mode),i.mode=a.mode),a.timestamp!==void 0){var u=new Date(a.timestamp);B7.utimesSync(g,u,u)}a.size!==void 0&&B7.truncateSync(g,a.size)}catch(O){throw O.code?new k.ErrnoError(L2[O.code]):O}},lookup:function(i,a){var g=a9.join2(l8.realPath(i),a),u=l8.getMode(g);return l8.createNode(i,a,u)},mknod:function(i,a,g,u){var O=l8.createNode(i,a,g,u),e=l8.realPath(O);try{k.isDir(O.mode)?B7.mkdirSync(e,O.mode):B7.writeFileSync(e,"",{mode:O.mode})}catch(Z0){throw Z0.code?new k.ErrnoError(L2[Z0.code]):Z0}return O},rename:function(i,a,g){var u=l8.realPath(i),O=a9.join2(l8.realPath(a),g);try{B7.renameSync(u,O)}catch(e){throw e.code?new k.ErrnoError(L2[e.code]):e}},unlink:function(i,a){var g=a9.join2(l8.realPath(i),a);try{B7.unlinkSync(g)}catch(u){throw u.code?new k.ErrnoError(L2[u.code]):u}},rmdir:function(i,a){var g=a9.join2(l8.realPath(i),a);try{B7.rmdirSync(g)}catch(u){throw u.code?new k.ErrnoError(L2[u.code]):u}},readdir:function(i){var a=l8.realPath(i);try{return B7.readdirSync(a)}catch(g){throw g.code?new k.ErrnoError(L2[g.code]):g}},symlink:function(i,a,g){var u=a9.join2(l8.realPath(i),a);try{B7.symlinkSync(g,u)}catch(O){throw O.code?new k.ErrnoError(L2[O.code]):O}},readlink:function(i){var a=l8.realPath(i);try{return a=B7.readlinkSync(a),a=gp.relative(gp.resolve(i.mount.opts.root),a),a}catch(g){throw g.code?new k.ErrnoError(L2[g.code]):g}}},stream_ops:{open:function(i){var a=l8.realPath(i.node);try{k.isFile(i.node.mode)&&(i.nfd=B7.openSync(a,l8.flagsToPermissionString(i.flags)))}catch(g){throw g.code?new k.ErrnoError(L2[g.code]):g}},close:function(i){try{k.isFile(i.node.mode)&&i.nfd&&B7.closeSync(i.nfd)}catch(a){throw a.code?new k.ErrnoError(L2[a.code]):a}},read:function(i,a,g,u,O){if(u===0)return 0;var e=new Buffer(u),Z0;try{Z0=B7.readSync(i.nfd,e,0,u,O)}catch(b2){throw new k.ErrnoError(L2[b2.code])}if(Z0>0)for(var t1=0;t18)throw new k.ErrnoError(L2.ELOOP);for(var O=a9.normalizeArray(i.split("/").filter(function(Q5){return!!Q5}),!1),e=k.root,Z0="/",t1=0;t140)throw new k.ErrnoError(L2.ELOOP)}}return{path:Z0,node:e}},getPath:function(i){for(var a;;){if(k.isRoot(i)){var g=i.mount.mountpoint;return a?g[g.length-1]!=="/"?g+"/"+a:g+a:g}a=a?i.name+"/"+a:i.name,i=i.parent}},hashName:function(i,a){for(var g=0,u=0;u>>0)%k.nameTable.length},hashAddNode:function(i){var a=k.hashName(i.parent.id,i.name);i.name_next=k.nameTable[a],k.nameTable[a]=i},hashRemoveNode:function(i){var a=k.hashName(i.parent.id,i.name);if(k.nameTable[a]===i)k.nameTable[a]=i.name_next;else for(var g=k.nameTable[a];g;){if(g.name_next===i){g.name_next=i.name_next;break}g=g.name_next}},lookupNode:function(i,a){var g=k.mayLookup(i);if(g)throw new k.ErrnoError(g,i);for(var u=k.hashName(i.id,a),O=k.nameTable[u];O;O=O.name_next){var e=O.name;if(O.parent.id===i.id&&e===a)return O}return k.lookup(i,a)},createNode:function(i,a,g,u){if(!k.FSNode){k.FSNode=function(t1,b2,A,o1){t1||(t1=this),this.parent=t1,this.mount=t1.mount,this.mounted=null,this.id=k.nextInode++,this.name=b2,this.mode=A,this.node_ops={},this.stream_ops={},this.rdev=o1},k.FSNode.prototype={};var O=365,e=146;Object.defineProperties(k.FSNode.prototype,{read:{get:function(){return(this.mode&O)===O},set:function(t1){t1?this.mode|=O:this.mode&=~O}},write:{get:function(){return(this.mode&e)===e},set:function(t1){t1?this.mode|=e:this.mode&=~e}},isFolder:{get:function(){return k.isDir(this.mode)}},isDevice:{get:function(){return k.isChrdev(this.mode)}}})}var Z0=new k.FSNode(i,a,g,u);return k.hashAddNode(Z0),Z0},destroyNode:function(i){k.hashRemoveNode(i)},isRoot:function(i){return i===i.parent},isMountpoint:function(i){return!!i.mounted},isFile:function(i){return(i&61440)===32768},isDir:function(i){return(i&61440)===16384},isLink:function(i){return(i&61440)===40960},isChrdev:function(i){return(i&61440)===8192},isBlkdev:function(i){return(i&61440)===24576},isFIFO:function(i){return(i&61440)===4096},isSocket:function(i){return(i&49152)===49152},flagModes:{r:0,rs:1052672,"r+":2,w:577,wx:705,xw:705,"w+":578,"wx+":706,"xw+":706,a:1089,ax:1217,xa:1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function(i){var a=k.flagModes[i];if(typeof a>"u")throw new Error("Unknown file open mode: "+i);return a},flagsToPermissionString:function(i){var a=i&2097155,g=["r","w","rw"][a];return i&512&&(g+="w"),g},nodePermissions:function(i,a){return k.ignorePermissions?0:a.indexOf("r")!==-1&&!(i.mode&292)||a.indexOf("w")!==-1&&!(i.mode&146)||a.indexOf("x")!==-1&&!(i.mode&73)?L2.EACCES:0},mayLookup:function(i){var a=k.nodePermissions(i,"x");return a||(i.node_ops.lookup?0:L2.EACCES)},mayCreate:function(i,a){try{var g=k.lookupNode(i,a);return L2.EEXIST}catch{}return k.nodePermissions(i,"wx")},mayDelete:function(i,a,g){var u;try{u=k.lookupNode(i,a)}catch(e){return e.errno}var O=k.nodePermissions(i,"wx");if(O)return O;if(g){if(!k.isDir(u.mode))return L2.ENOTDIR;if(k.isRoot(u)||k.getPath(u)===k.cwd())return L2.EBUSY}else if(k.isDir(u.mode))return L2.EISDIR;return 0},mayOpen:function(i,a){return i?k.isLink(i.mode)?L2.ELOOP:k.isDir(i.mode)&&(a&2097155||a&512)?L2.EISDIR:k.nodePermissions(i,k.flagsToPermissionString(a)):L2.ENOENT},MAX_OPEN_FDS:4096,nextfd:function(i,a){i=i||0,a=a||k.MAX_OPEN_FDS;for(var g=i;g<=a;g++)if(!k.streams[g])return g;throw new k.ErrnoError(L2.EMFILE)},getStream:function(i){return k.streams[i]},createStream:function(i,a,g){k.FSStream||(k.FSStream=function(){},k.FSStream.prototype={},Object.defineProperties(k.FSStream.prototype,{object:{get:function(){return this.node},set:function(Z0){this.node=Z0}},isRead:{get:function(){return(this.flags&2097155)!==1}},isWrite:{get:function(){return(this.flags&2097155)!==0}},isAppend:{get:function(){return this.flags&1024}}}));var u=new k.FSStream;for(var O in i)u[O]=i[O];i=u;var e=k.nextfd(a,g);return i.fd=e,k.streams[e]=i,i},closeStream:function(i){k.streams[i]=null},getStreamFromPtr:function(i){return k.streams[i-1]},getPtrForStream:function(i){return i?i.fd+1:0},chrdev_stream_ops:{open:function(i){var a=k.getDevice(i.node.rdev);i.stream_ops=a.stream_ops,i.stream_ops.open&&i.stream_ops.open(i)},llseek:function(){throw new k.ErrnoError(L2.ESPIPE)}},major:function(i){return i>>8},minor:function(i){return i&255},makedev:function(i,a){return i<<8|a},registerDevice:function(i,a){k.devices[i]={stream_ops:a}},getDevice:function(i){return k.devices[i]},getMounts:function(i){for(var a=[],g=[i];g.length;){var u=g.pop();a.push(u),g.push.apply(g,u.mounts)}return a},syncfs:function(i,a){typeof i=="function"&&(a=i,i=!1);var g=k.getMounts(k.root.mount),u=0;function O(e){if(e)return O.errored?void 0:(O.errored=!0,a(e));++u>=g.length&&a(null)}g.forEach(function(e){if(!e.type.syncfs)return O(null);e.type.syncfs(e,i,O)})},mount:function(i,a,g){var u=g==="/",O=!g,e;if(u&&k.root)throw new k.ErrnoError(L2.EBUSY);if(!u&&!O){var Z0=k.lookupPath(g,{follow_mount:!1});if(g=Z0.path,e=Z0.node,k.isMountpoint(e))throw new k.ErrnoError(L2.EBUSY);if(!k.isDir(e.mode))throw new k.ErrnoError(L2.ENOTDIR)}var t1={type:i,opts:a,mountpoint:g,mounts:[]},b2=i.mount(t1);return b2.mount=t1,t1.root=b2,u?k.root=b2:e&&(e.mounted=t1,e.mount&&e.mount.mounts.push(t1)),b2},unmount:function(i){var a=k.lookupPath(i,{follow_mount:!1});if(!k.isMountpoint(a.node))throw new k.ErrnoError(L2.EINVAL);var g=a.node,u=g.mounted,O=k.getMounts(u);Object.keys(k.nameTable).forEach(function(Z0){for(var t1=k.nameTable[Z0];t1;){var b2=t1.name_next;O.indexOf(t1.mount)!==-1&&k.destroyNode(t1),t1=b2}}),g.mounted=null;var e=g.mount.mounts.indexOf(u);K4(e!==-1),g.mount.mounts.splice(e,1)},lookup:function(i,a){return i.node_ops.lookup(i,a)},mknod:function(i,a,g){var u=k.lookupPath(i,{parent:!0}),O=u.node,e=a9.basename(i);if(!e||e==="."||e==="..")throw new k.ErrnoError(L2.EINVAL);var Z0=k.mayCreate(O,e);if(Z0)throw new k.ErrnoError(Z0);if(!O.node_ops.mknod)throw new k.ErrnoError(L2.EPERM);return O.node_ops.mknod(O,e,a,g)},create:function(i,a){return a=a!==void 0?a:438,a&=4095,a|=32768,k.mknod(i,a,0)},mkdir:function(i,a){return a=a!==void 0?a:511,a&=1023,a|=16384,k.mknod(i,a,0)},mkdev:function(i,a,g){return typeof g>"u"&&(g=a,a=438),a|=8192,k.mknod(i,a,g)},symlink:function(i,a){if(!a9.resolve(i))throw new k.ErrnoError(L2.ENOENT);var g=k.lookupPath(a,{parent:!0}),u=g.node;if(!u)throw new k.ErrnoError(L2.ENOENT);var O=a9.basename(a),e=k.mayCreate(u,O);if(e)throw new k.ErrnoError(e);if(!u.node_ops.symlink)throw new k.ErrnoError(L2.EPERM);return u.node_ops.symlink(u,O,i)},rename:function(i,a){var g=a9.dirname(i),u=a9.dirname(a),O=a9.basename(i),e=a9.basename(a),Z0,t1,b2;try{Z0=k.lookupPath(i,{parent:!0}),t1=Z0.node,Z0=k.lookupPath(a,{parent:!0}),b2=Z0.node}catch{throw new k.ErrnoError(L2.EBUSY)}if(!t1||!b2)throw new k.ErrnoError(L2.ENOENT);if(t1.mount!==b2.mount)throw new k.ErrnoError(L2.EXDEV);var A=k.lookupNode(t1,O),o1=a9.relative(i,u);if(o1.charAt(0)!==".")throw new k.ErrnoError(L2.EINVAL);if(o1=a9.relative(a,g),o1.charAt(0)!==".")throw new k.ErrnoError(L2.ENOTEMPTY);var B;try{B=k.lookupNode(b2,e)}catch{}if(A!==B){var Q5=k.isDir(A.mode),p2=k.mayDelete(t1,O,Q5);if(p2)throw new k.ErrnoError(p2);if(p2=B?k.mayDelete(b2,e,Q5):k.mayCreate(b2,e),p2)throw new k.ErrnoError(p2);if(!t1.node_ops.rename)throw new k.ErrnoError(L2.EPERM);if(k.isMountpoint(A)||B&&k.isMountpoint(B))throw new k.ErrnoError(L2.EBUSY);if(b2!==t1&&(p2=k.nodePermissions(t1,"w"),p2))throw new k.ErrnoError(p2);try{k.trackingDelegate.willMovePath&&k.trackingDelegate.willMovePath(i,a)}catch(M5){console.log("FS.trackingDelegate['willMovePath']('"+i+"', '"+a+"') threw an exception: "+M5.message)}k.hashRemoveNode(A);try{t1.node_ops.rename(A,b2,e)}catch(M5){throw M5}finally{k.hashAddNode(A)}try{k.trackingDelegate.onMovePath&&k.trackingDelegate.onMovePath(i,a)}catch(M5){console.log("FS.trackingDelegate['onMovePath']('"+i+"', '"+a+"') threw an exception: "+M5.message)}}},rmdir:function(i){var a=k.lookupPath(i,{parent:!0}),g=a.node,u=a9.basename(i),O=k.lookupNode(g,u),e=k.mayDelete(g,u,!0);if(e)throw new k.ErrnoError(e);if(!g.node_ops.rmdir)throw new k.ErrnoError(L2.EPERM);if(k.isMountpoint(O))throw new k.ErrnoError(L2.EBUSY);try{k.trackingDelegate.willDeletePath&&k.trackingDelegate.willDeletePath(i)}catch(Z0){console.log("FS.trackingDelegate['willDeletePath']('"+i+"') threw an exception: "+Z0.message)}g.node_ops.rmdir(g,u),k.destroyNode(O);try{k.trackingDelegate.onDeletePath&&k.trackingDelegate.onDeletePath(i)}catch(Z0){console.log("FS.trackingDelegate['onDeletePath']('"+i+"') threw an exception: "+Z0.message)}},readdir:function(i){var a=k.lookupPath(i,{follow:!0}),g=a.node;if(!g.node_ops.readdir)throw new k.ErrnoError(L2.ENOTDIR);return g.node_ops.readdir(g)},unlink:function(i){var a=k.lookupPath(i,{parent:!0}),g=a.node,u=a9.basename(i),O=k.lookupNode(g,u),e=k.mayDelete(g,u,!1);if(e)throw e===L2.EISDIR&&(e=L2.EPERM),new k.ErrnoError(e);if(!g.node_ops.unlink)throw new k.ErrnoError(L2.EPERM);if(k.isMountpoint(O))throw new k.ErrnoError(L2.EBUSY);try{k.trackingDelegate.willDeletePath&&k.trackingDelegate.willDeletePath(i)}catch(Z0){console.log("FS.trackingDelegate['willDeletePath']('"+i+"') threw an exception: "+Z0.message)}g.node_ops.unlink(g,u),k.destroyNode(O);try{k.trackingDelegate.onDeletePath&&k.trackingDelegate.onDeletePath(i)}catch(Z0){console.log("FS.trackingDelegate['onDeletePath']('"+i+"') threw an exception: "+Z0.message)}},readlink:function(i){var a=k.lookupPath(i),g=a.node;if(!g)throw new k.ErrnoError(L2.ENOENT);if(!g.node_ops.readlink)throw new k.ErrnoError(L2.EINVAL);return a9.resolve(k.getPath(a.node.parent),g.node_ops.readlink(g))},stat:function(i,a){var g=k.lookupPath(i,{follow:!a}),u=g.node;if(!u)throw new k.ErrnoError(L2.ENOENT);if(!u.node_ops.getattr)throw new k.ErrnoError(L2.EPERM);return u.node_ops.getattr(u)},lstat:function(i){return k.stat(i,!0)},chmod:function(i,a,g){var u;if(typeof i=="string"){var O=k.lookupPath(i,{follow:!g});u=O.node}else u=i;if(!u.node_ops.setattr)throw new k.ErrnoError(L2.EPERM);u.node_ops.setattr(u,{mode:a&4095|u.mode&-4096,timestamp:Date.now()})},lchmod:function(i,a){k.chmod(i,a,!0)},fchmod:function(i,a){var g=k.getStream(i);if(!g)throw new k.ErrnoError(L2.EBADF);k.chmod(g.node,a)},chown:function(i,a,g,u){var O;if(typeof i=="string"){var e=k.lookupPath(i,{follow:!u});O=e.node}else O=i;if(!O.node_ops.setattr)throw new k.ErrnoError(L2.EPERM);O.node_ops.setattr(O,{timestamp:Date.now()})},lchown:function(i,a,g){k.chown(i,a,g,!0)},fchown:function(i,a,g){var u=k.getStream(i);if(!u)throw new k.ErrnoError(L2.EBADF);k.chown(u.node,a,g)},truncate:function(i,a){if(a<0)throw new k.ErrnoError(L2.EINVAL);var g;if(typeof i=="string"){var u=k.lookupPath(i,{follow:!0});g=u.node}else g=i;if(!g.node_ops.setattr)throw new k.ErrnoError(L2.EPERM);if(k.isDir(g.mode))throw new k.ErrnoError(L2.EISDIR);if(!k.isFile(g.mode))throw new k.ErrnoError(L2.EINVAL);var O=k.nodePermissions(g,"w");if(O)throw new k.ErrnoError(O);g.node_ops.setattr(g,{size:a,timestamp:Date.now()})},ftruncate:function(i,a){var g=k.getStream(i);if(!g)throw new k.ErrnoError(L2.EBADF);if(!(g.flags&2097155))throw new k.ErrnoError(L2.EINVAL);k.truncate(g.node,a)},utime:function(i,a,g){var u=k.lookupPath(i,{follow:!0}),O=u.node;O.node_ops.setattr(O,{timestamp:Math.max(a,g)})},open:function(i,a,g,u,O){if(i==="")throw new k.ErrnoError(L2.ENOENT);a=typeof a=="string"?k.modeStringToFlags(a):a,g=typeof g>"u"?438:g,a&64?g=g&4095|32768:g=0;var e;if(typeof i=="object")e=i;else{i=a9.normalize(i);try{var Z0=k.lookupPath(i,{follow:!(a&131072)});e=Z0.node}catch{}}var t1=!1;if(a&64)if(e){if(a&128)throw new k.ErrnoError(L2.EEXIST)}else e=k.mknod(i,g,0),t1=!0;if(!e)throw new k.ErrnoError(L2.ENOENT);if(k.isChrdev(e.mode)&&(a&=-513),!t1){var b2=k.mayOpen(e,a);if(b2)throw new k.ErrnoError(b2)}a&512&&k.truncate(e,0),a&=-641;var A=k.createStream({node:e,path:k.getPath(e),flags:a,seekable:!0,position:0,stream_ops:e.stream_ops,ungotten:[],error:!1},u,O);A.stream_ops.open&&A.stream_ops.open(A),o.logReadFiles&&!(a&1)&&(k.readFiles||(k.readFiles={}),i in k.readFiles||(k.readFiles[i]=1,o.printErr("read file: "+i)));try{if(k.trackingDelegate.onOpenFile){var o1=0;(a&2097155)!==1&&(o1|=k.tracking.openFlags.READ),a&2097155&&(o1|=k.tracking.openFlags.WRITE),k.trackingDelegate.onOpenFile(i,o1)}}catch(B){console.log("FS.trackingDelegate['onOpenFile']('"+i+"', flags) threw an exception: "+B.message)}return A},close:function(i){try{i.stream_ops.close&&i.stream_ops.close(i)}catch(a){throw a}finally{k.closeStream(i.fd)}},llseek:function(i,a,g){if(!i.seekable||!i.stream_ops.llseek)throw new k.ErrnoError(L2.ESPIPE);return i.position=i.stream_ops.llseek(i,a,g),i.ungotten=[],i.position},read:function(i,a,g,u,O){if(u<0||O<0)throw new k.ErrnoError(L2.EINVAL);if((i.flags&2097155)===1)throw new k.ErrnoError(L2.EBADF);if(k.isDir(i.node.mode))throw new k.ErrnoError(L2.EISDIR);if(!i.stream_ops.read)throw new k.ErrnoError(L2.EINVAL);var e=!0;if(typeof O>"u")O=i.position,e=!1;else if(!i.seekable)throw new k.ErrnoError(L2.ESPIPE);var Z0=i.stream_ops.read(i,a,g,u,O);return e||(i.position+=Z0),Z0},write:function(i,a,g,u,O,e){if(u<0||O<0)throw new k.ErrnoError(L2.EINVAL);if(!(i.flags&2097155))throw new k.ErrnoError(L2.EBADF);if(k.isDir(i.node.mode))throw new k.ErrnoError(L2.EISDIR);if(!i.stream_ops.write)throw new k.ErrnoError(L2.EINVAL);i.flags&1024&&k.llseek(i,0,2);var Z0=!0;if(typeof O>"u")O=i.position,Z0=!1;else if(!i.seekable)throw new k.ErrnoError(L2.ESPIPE);var t1=i.stream_ops.write(i,a,g,u,O,e);Z0||(i.position+=t1);try{i.path&&k.trackingDelegate.onWriteToFile&&k.trackingDelegate.onWriteToFile(i.path)}catch(b2){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+b2.message)}return t1},allocate:function(i,a,g){if(a<0||g<=0)throw new k.ErrnoError(L2.EINVAL);if(!(i.flags&2097155))throw new k.ErrnoError(L2.EBADF);if(!k.isFile(i.node.mode)&&!k.isDir(node.mode))throw new k.ErrnoError(L2.ENODEV);if(!i.stream_ops.allocate)throw new k.ErrnoError(L2.EOPNOTSUPP);i.stream_ops.allocate(i,a,g)},mmap:function(i,a,g,u,O,e,Z0){if((i.flags&2097155)===1)throw new k.ErrnoError(L2.EACCES);if(!i.stream_ops.mmap)throw new k.ErrnoError(L2.ENODEV);return i.stream_ops.mmap(i,a,g,u,O,e,Z0)},msync:function(i,a,g,u,O){return!i||!i.stream_ops.msync?0:i.stream_ops.msync(i,a,g,u,O)},munmap:function(i){return 0},ioctl:function(i,a,g){if(!i.stream_ops.ioctl)throw new k.ErrnoError(L2.ENOTTY);return i.stream_ops.ioctl(i,a,g)},readFile:function(i,a){if(a=a||{},a.flags=a.flags||"r",a.encoding=a.encoding||"binary",a.encoding!=="utf8"&&a.encoding!=="binary")throw new Error('Invalid encoding type "'+a.encoding+'"');var g,u=k.open(i,a.flags),O=k.stat(i),e=O.size,Z0=new Uint8Array(e);return k.read(u,Z0,0,e,0),a.encoding==="utf8"?g=xA(Z0,0):a.encoding==="binary"&&(g=Z0),k.close(u),g},writeFile:function(i,a,g){if(g=g||{},g.flags=g.flags||"w",g.encoding=g.encoding||"utf8",g.encoding!=="utf8"&&g.encoding!=="binary")throw new Error('Invalid encoding type "'+g.encoding+'"');var u=k.open(i,g.flags,g.mode);if(g.encoding==="utf8"){var O=new Uint8Array(FA(a)+1),e=Sn(a,O,0,O.length);k.write(u,O,0,e,0,g.canOwn)}else g.encoding==="binary"&&k.write(u,a,0,a.length,0,g.canOwn);k.close(u)},cwd:function(){return k.currentPath},chdir:function(i){var a=k.lookupPath(i,{follow:!0});if(!k.isDir(a.node.mode))throw new k.ErrnoError(L2.ENOTDIR);var g=k.nodePermissions(a.node,"x");if(g)throw new k.ErrnoError(g);k.currentPath=a.path},createDefaultDirectories:function(){k.mkdir("/tmp"),k.mkdir("/home"),k.mkdir("/home/web_user")},createDefaultDevices:function(){k.mkdir("/dev"),k.registerDevice(k.makedev(1,3),{read:function(){return 0},write:function(g,u,O,e,Z0){return e}}),k.mkdev("/dev/null",k.makedev(1,3)),_n.register(k.makedev(5,0),_n.default_tty_ops),_n.register(k.makedev(6,0),_n.default_tty1_ops),k.mkdev("/dev/tty",k.makedev(5,0)),k.mkdev("/dev/tty1",k.makedev(6,0));var i;if(typeof crypto<"u"){var a=new Uint8Array(1);i=function(){return crypto.getRandomValues(a),a[0]}}else E?i=void 0:i=function(){return Math.random()*256|0};k.createDevice("/dev","random",i),k.createDevice("/dev","urandom",i),k.mkdir("/dev/shm"),k.mkdir("/dev/shm/tmp")},createStandardStreams:function(){o.stdin?k.createDevice("/dev","stdin",o.stdin):k.symlink("/dev/tty","/dev/stdin"),o.stdout?k.createDevice("/dev","stdout",null,o.stdout):k.symlink("/dev/tty","/dev/stdout"),o.stderr?k.createDevice("/dev","stderr",null,o.stderr):k.symlink("/dev/tty1","/dev/stderr");var i=k.open("/dev/stdin","r");D9[Bk>>2]=k.getPtrForStream(i),K4(i.fd===0,"invalid handle for stdin ("+i.fd+")");var a=k.open("/dev/stdout","w");D9[mk>>2]=k.getPtrForStream(a),K4(a.fd===1,"invalid handle for stdout ("+a.fd+")");var g=k.open("/dev/stderr","w");D9[pk>>2]=k.getPtrForStream(g),K4(g.fd===2,"invalid handle for stderr ("+g.fd+")")},ensureErrnoError:function(){k.ErrnoError||(k.ErrnoError=function(a,g){this.node=g,this.setErrno=function(u){this.errno=u;for(var O in L2)if(L2[O]===u){this.code=O;break}},this.setErrno(a),this.message=Ck[a]},k.ErrnoError.prototype=new Error,k.ErrnoError.prototype.constructor=k.ErrnoError,[L2.ENOENT].forEach(function(i){k.genericErrors[i]=new k.ErrnoError(i),k.genericErrors[i].stack=""}))},staticInit:function(){k.ensureErrnoError(),k.nameTable=new Array(4096),k.mount(w9,{},"/"),k.createDefaultDirectories(),k.createDefaultDevices()},init:function(i,a,g){K4(!k.init.initialized,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)"),k.init.initialized=!0,k.ensureErrnoError(),o.stdin=i||o.stdin,o.stdout=a||o.stdout,o.stderr=g||o.stderr,k.createStandardStreams()},quit:function(){k.init.initialized=!1;for(var i=0;ithis.length-1||Q5<0)){var p2=Q5%this.chunkSize,M5=Q5/this.chunkSize|0;return this.getter(M5)[p2]}},e.prototype.setDataGetter=function(Q5){this.getter=Q5},e.prototype.cacheLength=function(){var Q5=new XMLHttpRequest;if(Q5.open("HEAD",g,!1),Q5.send(null),!(Q5.status>=200&&Q5.status<300||Q5.status===304))throw new Error("Couldn't load "+g+". Status: "+Q5.status);var p2=Number(Q5.getResponseHeader("Content-length")),M5,b9=(M5=Q5.getResponseHeader("Accept-Ranges"))&&M5==="bytes",U9=1024*1024;b9||(U9=p2);var f4=function(J9,c8){if(J9>c8)throw new Error("invalid range ("+J9+", "+c8+") or no bytes requested!");if(c8>p2-1)throw new Error("only "+p2+" bytes available! programmer error!");var V4=new XMLHttpRequest;if(V4.open("GET",g,!1),p2!==U9&&V4.setRequestHeader("Range","bytes="+J9+"-"+c8),typeof Uint8Array<"u"&&(V4.responseType="arraybuffer"),V4.overrideMimeType&&V4.overrideMimeType("text/plain; charset=x-user-defined"),V4.send(null),!(V4.status>=200&&V4.status<300||V4.status===304))throw new Error("Couldn't load "+g+". Status: "+V4.status);return V4.response!==void 0?new Uint8Array(V4.response||[]):Ur(V4.responseText||"",!0)},Q8=this;Q8.setDataGetter(function(J9){var c8=J9*U9,V4=(J9+1)*U9-1;if(V4=Math.min(V4,p2-1),typeof Q8.chunks[J9]>"u"&&(Q8.chunks[J9]=f4(c8,V4)),typeof Q8.chunks[J9]>"u")throw new Error("doXHR failed!");return Q8.chunks[J9]}),this._length=p2,this._chunkSize=U9,this.lengthKnown=!0},typeof XMLHttpRequest<"u"){if(!F)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var Z0=new e;Object.defineProperty(Z0,"length",{get:function(){return this.lengthKnown||this.cacheLength(),this._length}}),Object.defineProperty(Z0,"chunkSize",{get:function(){return this.lengthKnown||this.cacheLength(),this._chunkSize}});var t1={isDevice:!1,contents:Z0}}else var t1={isDevice:!1,url:g};var b2=k.createFile(i,a,t1,u,O);t1.contents?b2.contents=t1.contents:t1.url&&(b2.contents=null,b2.url=t1.url),Object.defineProperty(b2,"usedBytes",{get:function(){return this.contents.length}});var A={},o1=Object.keys(b2.stream_ops);return o1.forEach(function(B){var Q5=b2.stream_ops[B];A[B]=function(){if(!k.forceLoadFile(b2))throw new k.ErrnoError(L2.EIO);return Q5.apply(null,arguments)}}),A.read=function(Q5,p2,M5,b9,U9){if(!k.forceLoadFile(b2))throw new k.ErrnoError(L2.EIO);var f4=Q5.node.contents;if(U9>=f4.length)return 0;var Q8=Math.min(f4.length-U9,b9);if(K4(Q8>=0),f4.slice)for(var J9=0;J9=0;u--){var O=i[u];O==="."?i.splice(u,1):O===".."?(i.splice(u,1),g++):g&&(i.splice(u,1),g--)}if(a)for(;g--;g)i.unshift("..");return i},normalize:function(i){var a=i.charAt(0)==="/",g=i.substr(-1)==="/";return i=a9.normalizeArray(i.split("/").filter(function(u){return!!u}),!a).join("/"),!i&&!a&&(i="."),i&&g&&(i+="/"),(a?"/":"")+i},dirname:function(i){var a=a9.splitPath(i),g=a[0],u=a[1];return!g&&!u?".":(u&&(u=u.substr(0,u.length-1)),g+u)},basename:function(i){if(i==="/")return"/";var a=i.lastIndexOf("/");return a===-1?i:i.substr(a+1)},extname:function(i){return a9.splitPath(i)[3]},join:function(){var i=Array.prototype.slice.call(arguments,0);return a9.normalize(i.join("/"))},join2:function(i,a){return a9.normalize(i+"/"+a)},resolve:function(){for(var i="",a=!1,g=arguments.length-1;g>=-1&&!a;g--){var u=g>=0?arguments[g]:k.cwd();if(typeof u!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!u)return"";i=u+"/"+i,a=u.charAt(0)==="/"}return i=a9.normalizeArray(i.split("/").filter(function(O){return!!O}),!a).join("/"),(a?"/":"")+i||"."},relative:function(i,a){i=a9.resolve(i).substr(1),a=a9.resolve(a).substr(1);function g(A){for(var o1=0;o1=0&&A[B]==="";B--);return o1>B?[]:A.slice(o1,B-o1+1)}for(var u=g(i.split("/")),O=g(a.split("/")),e=Math.min(u.length,O.length),Z0=e,t1=0;t10){var t1=Date.now(),b2=J1.mainLoop.queue.shift();if(b2.func(b2.arg),J1.mainLoop.remainingBlockers){var A=J1.mainLoop.remainingBlockers,o1=A%1==0?A-1:Math.floor(A);b2.counted?J1.mainLoop.remainingBlockers=o1:(o1=o1+.5,J1.mainLoop.remainingBlockers=(8*A+o1)/9)}console.log('main loop blocker "'+b2.name+'" took '+(Date.now()-t1)+" ms"),J1.mainLoop.updateStatus(),setTimeout(J1.mainLoop.runner,0);return}if(!(e1&&J1.mainLoop.currentFrameNumber%J1.mainLoop.timingValue!=0){J1.mainLoop.scheduler();return}J1.mainLoop.method==="timeout"&&o.ctx&&(o.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),J1.mainLoop.method=""),J1.mainLoop.runIter(function(){typeof u<"u"?x.dynCall("vi",i,[u]):x.dynCall("v",i)}),!(e0?LC(0,1e3/a):LC(1,1),J1.mainLoop.scheduler()),g)throw"SimulateInfiniteLoop"}var J1={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){J1.mainLoop.scheduler=null,J1.mainLoop.currentlyRunningMainloop++},resume:function(){J1.mainLoop.currentlyRunningMainloop++;var i=J1.mainLoop.timingMode,a=J1.mainLoop.timingValue,g=J1.mainLoop.func;J1.mainLoop.func=null,lp(g,0,!1,J1.mainLoop.arg,!0),LC(i,a),J1.mainLoop.scheduler()},updateStatus:function(){if(o.setStatus){var i=o.statusMessage||"Please wait...",a=J1.mainLoop.remainingBlockers,g=J1.mainLoop.expectedBlockers;a?a"u"&&(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),o.noImageDecoding=!0);var i={};i.canHandle=function(e){return!o.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(e)},i.handle=function(e,Z0,t1,b2){var A=null;if(J1.hasBlobConstructor)try{A=new Blob([e],{type:J1.getMimetype(Z0)}),A.size!==e.length&&(A=new Blob([new Uint8Array(e).buffer],{type:J1.getMimetype(Z0)}))}catch(p2){x.warnOnce("Blob constructor present but fails: "+p2+"; falling back to blob builder")}if(!A){var o1=new J1.BlobBuilder;o1.append(new Uint8Array(e).buffer),A=o1.getBlob()}var B=J1.URLObject.createObjectURL(A),Q5=new Image;Q5.onload=function(){K4(Q5.complete,"Image "+Z0+" could not be decoded");var M5=document.createElement("canvas");M5.width=Q5.width,M5.height=Q5.height;var b9=M5.getContext("2d");b9.drawImage(Q5,0,0),o.preloadedImages[Z0]=M5,J1.URLObject.revokeObjectURL(B),t1&&t1(e)},Q5.onerror=function(M5){console.log("Image "+B+" could not be decoded"),b2&&b2()},Q5.src=B},o.preloadPlugins.push(i);var a={};a.canHandle=function(e){return!o.noAudioDecoding&&e.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},a.handle=function(e,Z0,t1,b2){var A=!1;function o1(b9){A||(A=!0,o.preloadedAudios[Z0]=b9,t1&&t1(e))}function B(){A||(A=!0,o.preloadedAudios[Z0]=new Audio,b2&&b2())}if(J1.hasBlobConstructor){try{var Q5=new Blob([e],{type:J1.getMimetype(Z0)})}catch{return B()}var p2=J1.URLObject.createObjectURL(Q5),M5=new Audio;M5.addEventListener("canplaythrough",function(){o1(M5)},!1),M5.onerror=function(U9){if(A)return;console.log("warning: browser could not fully decode audio "+Z0+", trying slower base64 approach");function f4(Q8){for(var J9="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",c8="=",V4="",Li=0,Mi=0,gr=0;gr=6;){var qa=Li>>Mi-6&63;Mi-=6,V4+=J9[qa]}return Mi==2?(V4+=J9[(Li&3)<<4],V4+=c8+c8):Mi==4&&(V4+=J9[(Li&15)<<2],V4+=c8),V4}M5.src="data:audio/x-"+Z0.substr(-3)+";base64,"+f4(e),o1(M5)},M5.src=p2,J1.safeSetTimeout(function(){o1(M5)},1e4)}else return B()},o.preloadPlugins.push(a);var g=o.canvas;function u(){J1.pointerLock=document.pointerLockElement===g||document.mozPointerLockElement===g||document.webkitPointerLockElement===g||document.msPointerLockElement===g}g&&(g.requestPointerLock=g.requestPointerLock||g.mozRequestPointerLock||g.webkitRequestPointerLock||g.msRequestPointerLock||function(){},g.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},g.exitPointerLock=g.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",u,!1),document.addEventListener("mozpointerlockchange",u,!1),document.addEventListener("webkitpointerlockchange",u,!1),document.addEventListener("mspointerlockchange",u,!1),o.elementPointerLock&&g.addEventListener("click",function(O){!J1.pointerLock&&g.requestPointerLock&&(g.requestPointerLock(),O.preventDefault())},!1))},createContext:function(i,a,g,u){if(a&&o.ctx&&i==o.canvas)return o.ctx;var O,e;if(a){var Z0={antialias:!1,alpha:!1};if(u)for(var t1 in u)Z0[t1]=u[t1];e=GL.createContext(i,Z0),e&&(O=GL.getContext(e).GLctx),i.style.backgroundColor="black"}else O=i.getContext("2d");return O?(g&&(a||K4(typeof GLctx>"u","cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),o.ctx=O,a&&GL.makeContextCurrent(e),o.useWebGL=a,J1.moduleContextCreatedCallbacks.forEach(function(b2){b2()}),J1.init()),O):null},destroyContext:function(i,a,g){},fullScreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullScreen:function(i,a,g){J1.lockPointer=i,J1.resizeCanvas=a,J1.vrDevice=g,typeof J1.lockPointer>"u"&&(J1.lockPointer=!0),typeof J1.resizeCanvas>"u"&&(J1.resizeCanvas=!1),typeof J1.vrDevice>"u"&&(J1.vrDevice=null);var u=o.canvas;function O(){J1.isFullScreen=!1;var Z0=u.parentNode;(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===Z0?(u.cancelFullScreen=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullScreen||document.msExitFullscreen||document.exitFullscreen||function(){},u.cancelFullScreen=u.cancelFullScreen.bind(document),J1.lockPointer&&u.requestPointerLock(),J1.isFullScreen=!0,J1.resizeCanvas&&J1.setFullScreenCanvasSize()):(Z0.parentNode.insertBefore(u,Z0),Z0.parentNode.removeChild(Z0),J1.resizeCanvas&&J1.setWindowedCanvasSize()),o.onFullScreen&&o.onFullScreen(J1.isFullScreen),J1.updateCanvasDimensions(u)}J1.fullScreenHandlersInstalled||(J1.fullScreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",O,!1),document.addEventListener("mozfullscreenchange",O,!1),document.addEventListener("webkitfullscreenchange",O,!1),document.addEventListener("MSFullscreenChange",O,!1));var e=document.createElement("div");u.parentNode.insertBefore(e,u),e.appendChild(u),e.requestFullScreen=e.requestFullScreen||e.mozRequestFullScreen||e.msRequestFullscreen||(e.webkitRequestFullScreen?function(){e.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),g?e.requestFullScreen({vrDisplay:g}):e.requestFullScreen()},nextRAF:0,fakeRequestAnimationFrame:function(i){var a=Date.now();if(J1.nextRAF===0)J1.nextRAF=a+1e3/60;else for(;a+2>=J1.nextRAF;)J1.nextRAF+=1e3/60;var g=Math.max(J1.nextRAF-a,0);setTimeout(i,g)},requestAnimationFrame:function(a){typeof window>"u"?J1.fakeRequestAnimationFrame(a):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||J1.fakeRequestAnimationFrame),window.requestAnimationFrame(a))},safeCallback:function(i){return function(){if(!K0)return i.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){J1.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(J1.allowAsyncCallbacks=!0,J1.queuedAsyncCallbacks.length>0){var i=J1.queuedAsyncCallbacks;J1.queuedAsyncCallbacks=[],i.forEach(function(a){a()})}},safeRequestAnimationFrame:function(i){return J1.requestAnimationFrame(function(){K0||(J1.allowAsyncCallbacks?i():J1.queuedAsyncCallbacks.push(i))})},safeSetTimeout:function(i,a){return o.noExitRuntime=!0,setTimeout(function(){K0||(J1.allowAsyncCallbacks?i():J1.queuedAsyncCallbacks.push(i))},a)},safeSetInterval:function(i,a){return o.noExitRuntime=!0,setInterval(function(){K0||J1.allowAsyncCallbacks&&i()},a)},getMimetype:function(i){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[i.substr(i.lastIndexOf(".")+1)]},getUserMedia:function(i){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(i)},getMovementX:function(i){return i.movementX||i.mozMovementX||i.webkitMovementX||0},getMovementY:function(i){return i.movementY||i.mozMovementY||i.webkitMovementY||0},getMouseWheelDelta:function(i){var a=0;switch(i.type){case"DOMMouseScroll":a=i.detail;break;case"mousewheel":a=i.wheelDelta;break;case"wheel":a=i.deltaY;break;default:throw"unrecognized mouse wheel event: "+i.type}return a},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(i){if(J1.pointerLock)i.type!="mousemove"&&"mozMovementX"in i?J1.mouseMovementX=J1.mouseMovementY=0:(J1.mouseMovementX=J1.getMovementX(i),J1.mouseMovementY=J1.getMovementY(i)),typeof SDL<"u"?(J1.mouseX=SDL.mouseX+J1.mouseMovementX,J1.mouseY=SDL.mouseY+J1.mouseMovementY):(J1.mouseX+=J1.mouseMovementX,J1.mouseY+=J1.mouseMovementY);else{var a=o.canvas.getBoundingClientRect(),g=o.canvas.width,u=o.canvas.height,O=typeof window.scrollX<"u"?window.scrollX:window.pageXOffset,e=typeof window.scrollY<"u"?window.scrollY:window.pageYOffset;if(i.type==="touchstart"||i.type==="touchend"||i.type==="touchmove"){var Z0=i.touch;if(Z0===void 0)return;var t1=Z0.pageX-(O+a.left),b2=Z0.pageY-(e+a.top);t1=t1*(g/a.width),b2=b2*(u/a.height);var A={x:t1,y:b2};if(i.type==="touchstart")J1.lastTouches[Z0.identifier]=A,J1.touches[Z0.identifier]=A;else if(i.type==="touchend"||i.type==="touchmove"){var o1=J1.touches[Z0.identifier];o1||(o1=A),J1.lastTouches[Z0.identifier]=o1,J1.touches[Z0.identifier]=A}return}var B=i.pageX-(O+a.left),Q5=i.pageY-(e+a.top);B=B*(g/a.width),Q5=Q5*(u/a.height),J1.mouseMovementX=B-J1.mouseX,J1.mouseMovementY=Q5-J1.mouseY,J1.mouseX=B,J1.mouseY=Q5}},xhrLoad:function(i,a,g){var u=new XMLHttpRequest;u.open("GET",i,!0),u.responseType="arraybuffer",u.onload=function(){u.status==200||u.status==0&&u.response?a(u.response):g()},u.onerror=g,u.send(null)},asyncLoad:function(i,a,g,u){J1.xhrLoad(i,function(O){K4(O,'Loading data file "'+i+'" failed (no arrayBuffer).'),a(new Uint8Array(O)),u||lr("al "+i)},function(O){if(g)g();else throw'Loading data file "'+i+'" failed.'}),u||bn("al "+i)},resizeListeners:[],updateResizeListeners:function(){var i=o.canvas;J1.resizeListeners.forEach(function(a){a(i.width,i.height)})},setCanvasSize:function(i,a,g){var u=o.canvas;J1.updateCanvasDimensions(u,i,a),g||J1.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:function(){if(typeof SDL<"u"){var i=Oa[SDL.screen+x.QUANTUM_SIZE*0>>2];i=i|8388608,D9[SDL.screen+x.QUANTUM_SIZE*0>>2]=i}J1.updateResizeListeners()},setWindowedCanvasSize:function(){if(typeof SDL<"u"){var i=Oa[SDL.screen+x.QUANTUM_SIZE*0>>2];i=i&-8388609,D9[SDL.screen+x.QUANTUM_SIZE*0>>2]=i}J1.updateResizeListeners()},updateCanvasDimensions:function(i,a,g){a&&g?(i.widthNative=a,i.heightNative=g):(a=i.widthNative,g=i.heightNative);var u=a,O=g;if(o.forcedAspectRatio&&o.forcedAspectRatio>0&&(u/O>2]=a),a}function Tk(){o.printErr("missing function: floor0_exportbundle"),OA(-1)}if(NA=x.staticAlloc(4),D9[NA>>2]=0,o.requestFullScreen=function(a,g,u){J1.requestFullScreen(a,g,u)},o.requestAnimationFrame=function(a){J1.requestAnimationFrame(a)},o.setCanvasSize=function(a,g,u){J1.setCanvasSize(a,g,u)},o.pauseMainLoop=function(){J1.mainLoop.pause()},o.resumeMainLoop=function(){J1.mainLoop.resume()},o.getUserMedia=function(){J1.getUserMedia()},o.createContext=function(a,g,u,O){return J1.createContext(a,g,u,O)},k.staticInit(),La.unshift(function(){!o.noFSInit&&!k.init.initialized&&k.init()}),Bh.push(function(){k.ignorePermissions=!1}),Ma.push(function(){k.quit()}),o.FS_createFolder=k.createFolder,o.FS_createPath=k.createPath,o.FS_createDataFile=k.createDataFile,o.FS_createPreloadedFile=k.createPreloadedFile,o.FS_createLazyFile=k.createLazyFile,o.FS_createLink=k.createLink,o.FS_createDevice=k.createDevice,La.unshift(function(){_n.init()}),Ma.push(function(){_n.shutdown()}),E)var B7=void 0,gp=void 0;Ch=Ei=x.alignMemory(Gr),_a=!0,Ra=Ch+bC,xa=bi=x.alignMemory(Ra),K4(xa>0]=u[t>>0],u[p2+1>>0]=u[t+1>>0],u[p2+2>>0]=u[t+2>>0],u[p2+3>>0]=u[t+3>>0]}function Bb(t){t=t|0,u[p2>>0]=u[t>>0],u[p2+1>>0]=u[t+1>>0],u[p2+2>>0]=u[t+2>>0],u[p2+3>>0]=u[t+3>>0],u[p2+4>>0]=u[t+4>>0],u[p2+5>>0]=u[t+5>>0],u[p2+6>>0]=u[t+6>>0],u[p2+7>>0]=u[t+7>>0]}function dv(t){t=t|0,q6=t}function Ev(){return q6|0}function VB(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0;d=B,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,n=k9(256)|0,s=t+8|0,e[s>>2]=n,$=t+12|0,e[$>>2]=n,u[n>>0]=0,c=t+16|0,e[c>>2]=256}function Cv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0;_=B,s=n>>3,$=t+12|0,m=e[$>>2]|0,v=(m|0)==0,!v&&(S=s<<3,w=n-S|0,y=t+8|0,D=e[y>>2]|0,Q=D+s|0,e[$>>2]=Q,b=t+4|0,e[b>>2]=w,e[t>>2]=s,c=8+(w<<2)|0,f=e[c>>2]|0,d=u[Q>>0]|0,I=d&255,C=I&f,p=C&255,u[Q>>0]=p)}function U2(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0;U0=B,f=s>>>0>32;do if(!f){if(d=e[t>>2]|0,b=t+16|0,t0=e[b>>2]|0,n0=t0+-4|0,Q0=(d|0)<(n0|0),$=t+12|0,c=e[$>>2]|0,Q0)G=c;else{if(x0=(c|0)==0,x0)return;if(q0=(t0|0)>2147483391,q0||(N0=t+8|0,V0=e[N0>>2]|0,I=t0+256|0,C=Gi(V0,I)|0,p=(C|0)==0,p))break;e[N0>>2]=C,m=e[b>>2]|0,v=m+256|0,e[b>>2]=v,S=e[t>>2]|0,w=C+S|0,e[$>>2]=w,G=w}y=8+(s<<2)|0,D=e[y>>2]|0,Q=D&n,R=t+4|0,_=e[R>>2]|0,L=_+s|0,M=Q<<_,T=u[G>>0]|0,N=T&255,P=N|M,z=P&255,u[G>>0]=z,Y=(L|0)>7;do if(Y&&(J=e[R>>2]|0,W=8-J|0,e0=Q>>>W,H=e0&255,X=e[$>>2]|0,U=X+1|0,u[U>>0]=H,o0=(L|0)>15,o0&&(Z=e[R>>2]|0,V=16-Z|0,s0=Q>>>V,i0=s0&255,r0=e[$>>2]|0,K=r0+2|0,u[K>>0]=i0,c0=(L|0)>23,c0&&(A0=e[R>>2]|0,l0=24-A0|0,j=Q>>>l0,$0=j&255,g0=e[$>>2]|0,f0=g0+3|0,u[f0>>0]=$0,d0=(L|0)>31,d0))))if(y0=e[R>>2]|0,h0=(y0|0)==0,h0){D0=e[$>>2]|0,m0=D0+4|0,u[m0>>0]=0;break}else{E0=32-y0|0,C0=Q>>>E0,u0=C0&255,k0=e[$>>2]|0,J0=k0+4|0,u[J0>>0]=u0;break}while(!1);F0=(L|0)/8&-1,M0=e[t>>2]|0,G0=M0+F0|0,e[t>>2]=G0,p0=e[$>>2]|0,H0=p0+F0|0,e[$>>2]=H0,R0=L&7,e[R>>2]=R0;return}while(!1);S0=t+8|0,L0=e[S0>>2]|0,Y0=(L0|0)==0,Y0||I2(L0),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0}function zB(t){t=t|0;var n=0,s=0,$=0,c=0,f=0;f=B,n=t+8|0,s=e[n>>2]|0,$=(s|0)==0,$||I2(s),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0}function at(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0;p=B,n=t+12|0,s=e[n>>2]|0,$=(s|0)==0,!$&&(c=t+8|0,f=e[c>>2]|0,e[n>>2]=f,d=f,u[d>>0]=0,e[t>>2]=0,I=t+4|0,e[I>>2]=0)}function ZB(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0;if(k0=B,$=n>>>0>32,$)return s=-1,s|0;if(c=8+(n<<2)|0,D=e[c>>2]|0,z=t+4|0,V=e[z>>2]|0,g0=V+n|0,Q0=e[t>>2]|0,d0=t+16|0,y0=e[d0>>2]|0,h0=y0+-4|0,f=(Q0|0)<(h0|0),!f){if(d=g0+7|0,I=d>>3,C=y0-I|0,p=(Q0|0)>(C|0),p)return s=-1,s|0;if(m=(g0|0)==0,m)return s=0,s|0}return v=t+12|0,S=e[v>>2]|0,w=u[S>>0]|0,y=w&255,Q=y>>>V,b=(g0|0)>8,b?(R=S+1|0,_=u[R>>0]|0,L=_&255,M=8-V|0,T=L<16,N?(P=S+2|0,Y=u[P>>0]|0,t0=Y&255,J=16-V|0,W=t0<24,H?(X=S+3|0,U=u[X>>0]|0,o0=U&255,Z=24-V|0,s0=o0<>0]|0,A0=c0&255,l0=32-V|0,j=A0<>2]|0,v=$+n|0,S=e[t>>2]|0,w=t+16|0,y=e[w>>2]|0,D=v+7|0,Q=D>>3,b=y-Q|0,R=(S|0)>(b|0),R){m=t+12|0,e[m>>2]=0,e[t>>2]=y,_=1,e[s>>2]=_;return}else{c=(v|0)/8&-1,f=t+12|0,d=e[f>>2]|0,I=d+c|0,e[f>>2]=I,C=S+c|0,e[t>>2]=C,p=v&7,_=p,e[s>>2]=_;return}}function Z4(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0;S0=B,C=n>>>0>32;do if(C)$=t+16|0,c=e[$>>2]|0,I=t+4|0,f=t,d=I,m0=c;else{if(p=8+(n<<2)|0,L=e[p>>2]|0,e0=t+4|0,K=e[e0>>2]|0,h0=K+n|0,x0=e[t>>2]|0,F0=t+16|0,M0=e[F0>>2]|0,G0=M0+-4|0,m=(x0|0)<(G0|0),!m){if(v=h0+7|0,S=v>>3,w=M0-S|0,y=(x0|0)>(w|0),y){f=t,d=e0,m0=M0;break}if(D=(h0|0)==0,D)return s=0,s|0}return Q=t+12|0,b=e[Q>>2]|0,R=u[b>>0]|0,_=R&255,M=_>>>K,T=(h0|0)>8,T?(G=b+1|0,N=u[G>>0]|0,P=N&255,z=8-K|0,Y=P<16,J?(W=b+2|0,H=u[W>>0]|0,X=H&255,U=16-K|0,o0=X<24,V?(s0=b+3|0,n0=u[s0>>0]|0,i0=n0&255,r0=24-K|0,c0=i0<>0]|0,f0=g0&255,Q0=32-K|0,d0=f0<>2]=u0,k0=x0+C0|0,e[t>>2]=k0,J0=h0&7,e[e0>>2]=J0,s=E0,s|0}while(!1);return D0=t+12|0,e[D0>>2]=0,e[f>>2]=m0,e[d>>2]=1,s=-1,s|0}function m7(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0;return C=B,n=e[t>>2]|0,s=t+4|0,$=e[s>>2]|0,c=$+7|0,f=(c|0)/8&-1,d=f+n|0,d|0}function Up(t){t=t|0;var n=0,s=0,$=0,c=0;return c=B,n=t+8|0,s=e[n>>2]|0,s|0}function Bv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0;if(T=B,c=(t|0)==0,c)return s=-1,s|0;Ae(t|0,0,360)|0,f=t+4|0,e[f>>2]=16384,S=t+24|0,e[S>>2]=1024,w=k9(16384)|0,e[t>>2]=w,y=k9(4096)|0,D=t+16|0,e[D>>2]=y,Q=k9(8192)|0,b=t+20|0,e[b>>2]=Q,R=(w|0)==0;do if(R)I=y;else{if(_=(y|0)==0,d=(Q|0)==0,L=d|_,L){I2(w),$=e[D>>2]|0,I=$;break}return v=t+336|0,e[v>>2]=n,s=0,s|0}while(!1);return C=(I|0)==0,C||I2(I),p=e[b>>2]|0,m=(p|0)==0,m||I2(p),Ae(t|0,0,360)|0,s=-1,s|0}function mv(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0;return v=B,n=(t|0)==0,n||(s=e[t>>2]|0,$=(s|0)==0,$||I2(s),c=t+16|0,f=e[c>>2]|0,d=(f|0)==0,d||I2(f),I=t+20|0,C=e[I>>2]|0,p=(C|0)==0,p||I2(C),Ae(t|0,0,360)|0),0}function pv(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0;if(M0=B,n=(t|0)==0,!n){if(s=e[t>>2]|0,w=s+22|0,u[w>>0]=0,N=e[t>>2]|0,o0=N+23|0,u[o0>>0]=0,j=e[t>>2]|0,y0=j+24|0,u[y0>>0]=0,h0=e[t>>2]|0,E0=h0+25|0,u[E0>>0]=0,C0=t+4|0,$=e[C0>>2]|0,c=($|0)>0,c)for(f=e[t>>2]|0,k0=0,m0=0;;)if(v=k0<<8,S=k0>>>24,y=f+m0|0,D=u[y>>0]|0,Q=D&255,b=Q^S,R=144+(b<<2)|0,_=e[R>>2]|0,L=_^v,M=m0+1|0,T=(M|0)<($|0),T)k0=L,m0=M;else{u0=L;break}else u0=0;if(d=t+12|0,I=e[d>>2]|0,C=(I|0)>0,C)for(p=t+8|0,m=e[p>>2]|0,D0=u0,x0=0;;)if(G=D0<<8,P=D0>>>24,z=m+x0|0,Y=u[z>>0]|0,t0=Y&255,J=t0^P,W=144+(J<<2)|0,e0=e[W>>2]|0,H=e0^G,X=x0+1|0,U=(X|0)<(I|0),U)D0=H,x0=X;else{J0=H;break}else J0=u0;Z=J0&255,V=e[t>>2]|0,s0=V+22|0,u[s0>>0]=Z,n0=J0>>>8,i0=n0&255,r0=e[t>>2]|0,K=r0+23|0,u[K>>0]=i0,c0=J0>>>16,A0=c0&255,l0=e[t>>2]|0,$0=l0+24|0,u[$0>>0]=A0,g0=J0>>>24,f0=g0&255,Q0=e[t>>2]|0,d0=Q0+25|0,u[d0>>0]=f0}}function Qv(t,n,s,$,c,f){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0;var d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0;if(u2=B,j=(t|0)==0,j||(k0=e[t>>2]|0,S0=(k0|0)==0,S0))return I=-1,I|0;if(v0=(n|0)==0,v0)return I=0,I|0;z0=(s|0)>0;e:do if(z0){for(f2=0,y2=0;;){if(y1=(n+(y2<<3)|0)+4|0,P1=e[y1>>2]|0,A2=(P1|0)<0,y=2147483647-P1|0,P=(f2|0)>(y|0),M2=A2|P,M2){I=-1;break}if(Z=P1+f2|0,n0=y2+1|0,i0=(n0|0)<(s|0),i0)f2=Z,y2=n0;else{n2=Z;break e}}return I|0}else n2=0;while(!1);r0=(n2|0)/255&-1,K=r0+1|0,c0=t+12|0,A0=e[c0>>2]|0,l0=(A0|0)==0,w=t+8|0,l0||($0=e[w>>2]|0,g0=$0-A0|0,e[w>>2]=g0,f0=($0|0)==(A0|0),f0||(Q0=k0+A0|0,Ko(k0|0,Q0|0,g0|0)|0),e[c0>>2]=0),d0=t+4|0,y0=e[d0>>2]|0,h0=y0-n2|0,E0=e[w>>2]|0,C0=(h0|0)>(E0|0);do if(!C0){if(u0=2147483647-n2|0,J0=(y0|0)>(u0|0),J0)return D0=e[t>>2]|0,m0=(D0|0)==0,m0||I2(D0),x0=t+16|0,F0=e[x0>>2]|0,M0=(F0|0)==0,M0||I2(F0),G0=t+20|0,p0=e[G0>>2]|0,H0=(p0|0)==0,H0||I2(p0),Ae(t|0,0,360)|0,I=-1,I|0;if(R0=y0+n2|0,L0=(R0|0)<2147482623,Y0=R0+1024|0,d=L0?Y0:R0,q0=e[t>>2]|0,N0=Gi(q0,d)|0,V0=(N0|0)==0,!V0){e[d0>>2]=d,e[t>>2]=N0;break}return T0=e[t>>2]|0,U0=(T0|0)==0,U0||I2(T0),r1=t+16|0,O0=e[r1>>2]|0,e1=(O0|0)==0,e1||I2(O0),i1=t+20|0,c1=e[i1>>2]|0,a1=(c1|0)==0,a1||I2(c1),Ae(t|0,0,360)|0,I=-1,I|0}while(!1);if(f1=yv(t,K)|0,g1=(f1|0)==0,!g1)return I=-1,I|0;if(z0)for(p=e[w>>2]|0,p1=p,S2=0;d1=e[t>>2]|0,m1=d1+p1|0,Q1=n+(S2<<3)|0,D1=e[Q1>>2]|0,_1=(n+(S2<<3)|0)+4|0,k1=e[_1>>2]|0,i4(m1|0,D1|0,k1|0)|0,x1=e[_1>>2]|0,L1=e[w>>2]|0,N1=L1+x1|0,e[w>>2]=N1,w1=S2+1|0,e2=(w1|0)==(s|0),!e2;)p1=N1,S2=w1;if(l1=(n2|0)>254,A1=t+28|0,$1=e[A1>>2]|0,n1=t+16|0,s1=e[n1>>2]|0,l1){for(I1=t+352|0,h1=t+20|0,E1=e[h1>>2]|0,u1=(r0|0)>1,C2=0;U1=$1+C2|0,Z1=s1+(U1<<2)|0,e[Z1>>2]=255,G1=I1,v1=G1,K1=e[v1>>2]|0,H1=G1+4|0,q1=H1,Y1=e[q1>>2]|0,j1=E1+(U1<<3)|0,r2=j1,W1=r2,e[W1>>2]=K1,O1=r2+4|0,l2=O1,e[l2>>2]=Y1,z1=C2+1|0,h2=(z1|0)<(r0|0),h2;)C2=z1;_2=u1?r0:1,m=I1,$2=E1,w2=_2}else C=t+20|0,v=e[C>>2]|0,S=t+352|0,m=S,$2=v,w2=0;return d2=(n2|0)%255&-1,s2=$1+w2|0,V1=s1+(s2<<2)|0,e[V1>>2]=d2,g2=$2+(s2<<3)|0,t2=g2,a2=t2,e[a2>>2]=c,i2=t2+4|0,o2=i2,e[o2>>2]=f,X1=m,D=X1,e[D>>2]=c,Q=X1+4|0,b=Q,e[b>>2]=f,R=s1+($1<<2)|0,_=e[R>>2]|0,L=_|256,e[R>>2]=L,M=$1+K|0,e[A1>>2]=M,T=t+344|0,G=T,N=G,z=e[N>>2]|0,Y=G+4|0,t0=Y,J=e[t0>>2]|0,W=qA(z|0,J|0,1,0)|0,e0=q6,H=T,X=H,e[X>>2]=W,U=H+4|0,o0=U,e[o0>>2]=e0,V=($|0)==0,V?(I=0,I|0):(s0=t+328|0,e[s0>>2]=1,I=0,I|0)}function UC(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0;return R=B,B=B+16|0,Q=R,s=e[n>>2]|0,e[Q>>2]=s,$=n+4|0,C=e[$>>2]|0,p=Q+4|0,e[p>>2]=C,m=n+12|0,v=e[m>>2]|0,S=n+16|0,w=S,y=w,D=e[y>>2]|0,c=w+4|0,f=c,d=e[f>>2]|0,I=Qv(t,Q,1,v,D,d)|0,B=R,I|0}function Op(t,n){t=t|0,n=n|0;var s=0,$=0,c=0;return c=B,s=Hp(t,n,1,4096)|0,s|0}function Pp(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0;return R=B,f=(t|0)==0,f||(d=e[t>>2]|0,I=(d|0)==0,I)?(s=0,s|0):(C=t+328|0,p=e[C>>2]|0,m=(p|0)==0,$=t+28|0,c=e[$>>2]|0,Q=(c|0)==0,m?Q?D=0:(v=t+332|0,S=e[v>>2]|0,w=(S|0)==0,w?b=7:D=0):Q?D=0:b=7,(b|0)==7&&(D=1),y=Hp(t,n,D,4096)|0,s=y,s|0)}function yv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0;return $0=B,c=t+24|0,f=e[c>>2]|0,Q=f-n|0,Y=t+28|0,s0=e[Y>>2]|0,r0=(Q|0)>(s0|0),r0?($=0,$|0):(K=2147483647-n|0,c0=(f|0)>(K|0),c0?(A0=e[t>>2]|0,l0=(A0|0)==0,l0||I2(A0),d=t+16|0,I=e[d>>2]|0,C=(I|0)==0,C||I2(I),p=t+20|0,m=e[p>>2]|0,v=(m|0)==0,v||I2(m),Ae(t|0,0,360)|0,$=-1,$|0):(S=f+n|0,w=(S|0)<2147483615,y=S+32|0,s=w?y:S,D=t+16|0,b=e[D>>2]|0,R=s<<2,_=Gi(b,R)|0,L=(_|0)==0,L?(M=e[t>>2]|0,T=(M|0)==0,T||I2(M),G=e[D>>2]|0,N=(G|0)==0,N||I2(G),P=t+20|0,z=e[P>>2]|0,t0=(z|0)==0,t0||I2(z),Ae(t|0,0,360)|0,$=-1,$|0):(e[D>>2]=_,J=t+20|0,W=e[J>>2]|0,e0=s<<3,H=Gi(W,e0)|0,X=(H|0)==0,X?(U=e[t>>2]|0,o0=(U|0)==0,o0||I2(U),Z=e[D>>2]|0,V=(Z|0)==0,V||I2(Z),n0=e[J>>2]|0,i0=(n0|0)==0,i0||I2(n0),Ae(t|0,0,360)|0,$=-1,$|0):(e[J>>2]=H,e[c>>2]=s,$=0,$|0))))}function Hp(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0;if(y5=B,Q=t+28|0,b=e[Q>>2]|0,c1=(b|0)>255,c=c1?255:b,h1=(t|0)==0,h1||(x1=e[t>>2]|0,q1=(x1|0)==0,s2=(c|0)==0,Q3=s2|q1,Q3))return f=0,f|0;e2=t+332|0,q2=e[e2>>2]|0,z2=(q2|0)==0;e:do if(z2)for(d0=t+16|0,a3=0;;){if(F0=(a3|0)<(c|0),!F0){I=s,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,Y5=a3,P5=14;break e}if(V0=e[d0>>2]|0,O0=V0+(a3<<2)|0,e1=e[O0>>2]|0,v0=e1&255,i1=(v0|0)==255,a1=a3+1|0,i1)a3=a1;else{I=s,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,Y5=a1,P5=14;break}}else if(R=(c|0)>0,R){for(J=t+16|0,i0=t+20|0,C5=0,k5=-1,c5=-1,o5=-1,Z2=-1,c2=-1,m5=-1,e5=-1,n5=-1,j5=0,_3=0,C3=0;;){if(f1=(C5|0)>($|0),g1=(j5|0)>3,M3=f1&g1,M3){d=1,G5=k5,D5=c5,H2=o5,I5=Z2,s5=c2,l5=m5,B5=e5,M1=n5,l3=C3;break}if(l1=e[J>>2]|0,A1=l1+(C3<<2)|0,$1=e[A1>>2]|0,n1=$1&255,s1=n1+C5|0,z0=(n1|0)==255,z0?(g5=k5,J2=c5,h5=o5,t5=Z2,b5=c2,W2=m5,$5=e5,F2=n5,j3=0,T3=_3):(I1=e[i0>>2]|0,E1=I1+(C3<<3)|0,u1=E1,d1=u1,m1=e[d1>>2]|0,p1=u1+4|0,Q1=p1,D1=e[Q1>>2]|0,_1=_3+1|0,y1=m1&255,k1=YA(m1|0,D1|0,8)|0,L1=q6,N1=k1&255,w1=YA(m1|0,D1|0,16)|0,U1=q6,Z1=w1&255,G1=YA(m1|0,D1|0,24)|0,v1=q6,K1=G1&255,P1=D1&255,H1=YA(m1|0,D1|0,40)|0,Y1=q6,j1=H1&255,r2=YA(m1|0,D1|0,48)|0,W1=q6,O1=r2&255,l2=YA(m1|0,D1|0,56)|0,z1=q6,h2=l2&255,g5=y1,J2=Z1,h5=K1,t5=P1,b5=j1,W2=O1,$5=h2,F2=N1,j3=_1,T3=_1),A2=C3+1|0,d2=(A2|0)<(c|0),d2)C5=s1,k5=g5,c5=J2,o5=h5,Z2=t5,c2=b5,m5=W2,e5=$5,n5=F2,j5=j3,_3=T3,C3=A2;else{d=s,G5=g5,D5=J2,H2=h5,I5=t5,s5=b5,l5=W2,B5=$5,M1=F2,l3=A2;break}}V1=(l3|0)==255,V1?(A3=G5,E3=D5,F5=H2,V5=I5,y3=s5,h3=l5,B3=B5,q3=M1,N5=255):(I=d,p5=G5,q5=D5,e3=H2,d5=I5,f3=s5,g3=l5,K5=B5,t3=M1,Y5=l3,P5=14)}else I=s,p5=-1,q5=-1,e3=-1,d5=-1,f3=-1,g3=-1,K5=-1,t3=-1,Y5=0,P5=14;while(!1);if((P5|0)==14){if(g2=(I|0)==0,g2)return f=0,f|0;A3=p5,E3=q5,F5=e3,V5=d5,y3=f3,h3=g3,B3=K5,q3=t3,N5=Y5}if($2=t+40|0,u[$2>>0]=79,u[$2+1>>0]=103,u[$2+2>>0]=103,u[$2+3>>0]=83,t2=t+44|0,u[t2>>0]=0,a2=t+45|0,u[a2>>0]=0,i2=t+16|0,o2=e[i2>>2]|0,X1=e[o2>>2]|0,n2=X1>>>8,v=n2&1,f2=v^1,y2=f2|2,C=z2?y2:f2,$3=C&255,u[a2>>0]=$3,S2=t+328|0,w2=e[S2>>2]|0,C2=(w2|0)!=0,M2=(b|0)==(N5|0),Z5=C2&M2,Z5&&(p=z2?y2:f2,_2=p|4,G2=_2&255,u[a2>>0]=G2),e[e2>>2]=1,u2=t+46|0,u[u2>>0]=A3,K2=t+47|0,u[K2>>0]=q3,N2=t+48|0,u[N2>>0]=E3,T2=t+49|0,u[T2>>0]=F5,O2=t+50|0,u[O2>>0]=V5,V2=t+51|0,u[V2>>0]=y3,A5=t+52|0,u[A5>>0]=h3,P2=t+53|0,u[P2>>0]=B3,T1=t+336|0,j2=e[T1>>2]|0,R5=j2&255,X2=t+54|0,u[X2>>0]=R5,v5=j2>>>8,f5=v5&255,w5=t+55|0,u[w5>>0]=f5,O5=j2>>>16,a5=O5&255,k2=t+56|0,u[k2>>0]=a5,E5=j2>>>24,r5=E5&255,x2=t+57|0,u[x2>>0]=r5,R2=t+340|0,B2=e[R2>>2]|0,_=(B2|0)==-1,_?(e[R2>>2]=0,M=0):M=B2,L=M+1|0,e[R2>>2]=L,T=M&255,G=t+58|0,u[G>>0]=T,N=M>>>8,P=N&255,z=t+59|0,u[z>>0]=P,Y=M>>>16,t0=Y&255,W=t+60|0,u[W>>0]=t0,e0=M>>>24,H=e0&255,X=t+61|0,u[X>>0]=H,U=t+62|0,o0=N5&255,Z=t+66|0,u[U>>0]=0,u[U+1>>0]=0,u[U+2>>0]=0,u[U+3>>0]=0,u[Z>>0]=o0,V=(N5|0)>0,V){if(s0=e[o2>>2]|0,n0=s0&255,r0=t+67|0,u[r0>>0]=n0,K=s0&255,S5=(N5|0)==1,S5)m=K;else for(A0=1,y0=K;;)if(S=e[i2>>2]|0,c0=S+(A0<<2)|0,l0=e[c0>>2]|0,j=l0&255,$0=A0+27|0,g0=(t+40|0)+$0|0,u[g0>>0]=j,f0=l0&255,Q0=f0+y0|0,h0=A0+1|0,u5=(h0|0)==(N5|0),u5){m=Q0;break}else A0=h0,y0=Q0;w=e[t>>2]|0,y=e[Q>>2]|0,D=e[i2>>2]|0,m0=w,p0=y,R0=D,x5=m}else m0=x1,p0=b,R0=o2,x5=0;return e[n>>2]=$2,E0=N5+27|0,C0=t+324|0,e[C0>>2]=E0,u0=n+4|0,e[u0>>2]=E0,k0=t+12|0,J0=e[k0>>2]|0,D0=m0+J0|0,x0=n+8|0,e[x0>>2]=D0,M0=n+12|0,e[M0>>2]=x5,G0=p0-N5|0,e[Q>>2]=G0,H0=R0+(N5<<2)|0,S0=G0<<2,Ko(R0|0,H0|0,S0|0)|0,L0=t+20|0,Y0=e[L0>>2]|0,q0=Y0+(N5<<3)|0,N0=e[Q>>2]|0,T0=N0<<3,Ko(Y0|0,q0|0,T0|0)|0,U0=e[k0>>2]|0,r1=U0+x5|0,e[k0>>2]=r1,pv(n),f=1,f|0}function wv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0;return O0=B,$=t+104|0,c=e[$>>2]|0,D=t+88|0,z=c+12|0,e[D>>2]=0,e[D+4>>2]=0,e[D+8>>2]=0,e[D+12>>2]=0,V=e[z>>2]|0,at(V),g0=c+16|0,D0=e[g0>>2]|0,at(D0),Y0=c+20|0,T0=e[Y0>>2]|0,at(T0),U0=c+24|0,f=e[U0>>2]|0,at(f),d=c+28|0,I=e[d>>2]|0,at(I),C=c+32|0,p=e[C>>2]|0,at(p),m=c+36|0,v=e[m>>2]|0,at(v),S=c+40|0,w=e[S>>2]|0,at(w),y=c+44|0,Q=e[y>>2]|0,at(Q),b=c+48|0,R=e[b>>2]|0,at(R),_=c+52|0,L=e[_>>2]|0,at(L),M=c+56|0,T=e[M>>2]|0,at(T),G=c+60|0,N=e[G>>2]|0,at(N),P=c+64|0,Y=e[P>>2]|0,at(Y),t0=c+68|0,J=e[t0>>2]|0,at(J),W=e[6416]|0,e0=W+12|0,H=e[e0>>2]|0,X=mQ[H&1](t)|0,U=(X|0)==0,U?(o0=(n|0)==0,o0?(s=0,s|0):(Z=Sh(t)|0,s0=(Z|0)==0,s0?(n0=t+4|0,i0=Up(n0)|0,e[n>>2]=i0,r0=m7(n0)|0,K=n+4|0,e[K>>2]=r0,c0=n+8|0,e[c0>>2]=0,A0=t+44|0,l0=e[A0>>2]|0,j=n+12|0,e[j>>2]=l0,$0=t+48|0,f0=$0,Q0=f0,d0=e[Q0>>2]|0,y0=f0+4|0,h0=y0,E0=e[h0>>2]|0,C0=n+16|0,u0=C0,k0=u0,e[k0>>2]=d0,J0=u0+4|0,m0=J0,e[m0>>2]=E0,x0=t+56|0,F0=x0,M0=F0,G0=e[M0>>2]|0,p0=F0+4|0,H0=p0,R0=e[H0>>2]|0,S0=n+24|0,L0=S0,q0=L0,e[q0>>2]=G0,N0=L0+4|0,V0=N0,e[V0>>2]=R0,s=0,s|0):(s=-131,s|0))):(s=X,s|0)}function kv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0;d0=B,s=t+28|0,$=e[s>>2]|0,f0=n,y0=f0+48|0;do e[f0>>2]=0,f0=f0+4|0;while((f0|0)<(y0|0));y=$+3372|0,P=e[y>>2]|0,Z=(P|0)>0,Z&&(A0=t+8|0,l0=e[A0>>2]|0,j=e[$>>2]|0,$0=j>>1,g0=$+4|0,c=e[g0>>2]|0,f=(c|0)/(j|0)&-1,d=n+24|0,e[d>>2]=f,e[n>>2]=1,I=$+3360|0,C=e[I>>2]|0,p=+(C|0),m=+($0|0),v=p*m,S=+(l0|0),w=v/S,D=+Ti(w),Q=~~D,b=n+12|0,e[b>>2]=Q,R=$+3364|0,_=e[R>>2]|0,L=+(_|0),M=L*m,T=M/S,G=+Ti(T),N=~~G,z=n+16|0,e[z>>2]=N,Y=$+3368|0,t0=e[Y>>2]|0,J=+(t0|0),W=J*m,e0=W/S,H=+Ti(e0),X=~~H,U=n+20|0,e[U>>2]=X,o0=n+32|0,o1[o0>>3]=7,V=+(P|0),s0=$+3376|0,n0=+o1[s0>>3],i0=V*n0,r0=~~i0,K=n+8|0,e[K>>2]=r0,c0=n+4|0,e[c0>>2]=r0)}function vv(t){t=t|0;var n=0,s=0,$=0,c=0;$=B,n=t,c=n+48|0;do e[n>>2]=0,n=n+4|0;while((n|0)<(c|0))}function Sh(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0;return m=B,s=t+64|0,$=e[s>>2]|0,c=$+104|0,f=e[c>>2]|0,d=f+80|0,I=e[d>>2]|0,C=(I|0)!=0,n=C&1,n|0}function Sv(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,B6=0,z3=0,$6=0,m6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0;if(v6=B,p=t+104|0,m=e[p>>2]|0,z1=t+64|0,k2=e[z1>>2]|0,D5=k2+104|0,c2=e[D5>>2]|0,F2=k2+4|0,F5=e[F2>>2]|0,_3=F5+28|0,L5=e[_3>>2]|0,v=c2+112|0,T=+o1[v>>3],X=+Ti(T),A0=~~X,C0=(m+12|0)+(A0<<2)|0,H0=e[C0>>2]|0,O0=m7(H0)|0,n1=O0<<3,D1=t+28|0,v1=e[D1>>2]|0,h2=(v1|0)==0,X1=c2+96|0,u2=e[X1>>2]|0,h2?(R5=c2+100|0,v5=e[R5>>2]|0,U=u2,y0=R5,u0=v5):(z2=c2+104|0,f5=e[z2>>2]|0,w5=c2+100|0,O5=e[w5>>2]|0,a5=i5(f5,u2)|0,E5=i5(f5,O5)|0,U=a5,y0=w5,u0=E5),r5=L5+(v1<<2)|0,x2=e[r5>>2]|0,R2=x2>>1,B2=L5+3372|0,C5=e[B2>>2]|0,x5=+(C5|0),u5=L5+3376|0,S5=+o1[u5>>3],G5=x5*S5,H2=~~G5,I5=c2+80|0,s5=e[I5>>2]|0,l5=(s5|0)==0,B5=c2+120|0,l5)return M1=e[B5>>2]|0,k5=(M1|0)==0,k5?(e[B5>>2]=t,s=0,s|0):(s=-1,s|0);if(e[B5>>2]=t,c5=c2+92|0,o5=e[c5>>2]|0,Z2=(o5|0)>0,Z2){h2?$5=o5:(m5=c2+104|0,e5=e[m5>>2]|0,n5=i5(e5,o5)|0,$5=n5),g5=L5+3384|0,J2=+o1[g5>>3],h5=15/J2,t5=c2+84|0,b5=e[t5>>2]|0,W2=n1-$5|0,p5=b5+W2|0,q5=(p5|0)>(H2|0);e:do if(q5)if(e3=(A0|0)>0,d5=(n1|0)>($5|0),k6=d5&e3,k6)if(f3=n1-$5|0,g3=f3+b5|0,K5=(g3|0)>(H2|0),K5)for(N3=A0;;){if(t3=N3+-1|0,A3=(m+12|0)+(t3<<2)|0,E3=e[A3>>2]|0,V5=m7(E3)|0,y3=V5<<3,h3=(N3|0)>1,B3=(y3|0)>($5|0),w6=B3&h3,!w6){z5=t3;break e}if(I=e[t5>>2]|0,q3=y3-$5|0,M3=q3+I|0,Z5=(M3|0)>(H2|0),Z5)N3=t3;else{z5=t3;break}}else z5=A0;else z5=A0;else if(Q3=(p5|0)<(H2|0),Q3)if(j5=A0+1|0,j3=(j5|0)<15,T3=(n1|0)<($5|0),z3=T3&j3,z3)if($3=n1-$5|0,a3=$3+b5|0,l3=(a3|0)<(H2|0),l3)for(Y5=j5;;){if(C3=(m+12|0)+(Y5<<2)|0,N5=e[C3>>2]|0,P5=m7(N5)|0,y5=P5<<3,G3=Y5+1|0,t6=(G3|0)<15,i3=(y5|0)<($5|0),B6=i3&t6,!B6){z5=Y5;break e}if(d=e[t5>>2]|0,o3=y5-$5|0,R3=o3+d|0,h6=(R3|0)<(H2|0),h6)Y5=G3;else{z5=Y5;break}}else z5=A0;else z5=A0;else z5=A0;while(!1);m3=+(z5|0),w3=+o1[v>>3],p3=m3-w3,X3=+Ti(p3),V3=+(R2|0),S=X3/V3,w=F5+8|0,y=e[w>>2]|0,D=+(y|0),Q=D*S,b=-h5,R=Qh5,v3=_?h5:C6,L=v3/D,M=L*V3,G=M+w3,o1[v>>3]=G,N=+Ti(G),P=~~N,z=(m+12|0)+(P<<2)|0,Y=e[z>>2]|0,t0=m7(Y)|0,J=t0<<3,C=e[X1>>2]|0,W=C,k3=P,Z3=J}else W=u2,k3=A0,Z3=n1;e0=(W|0)>0,H=(Z3|0)<(U|0),$6=H&e0;e:do if($6)if(o0=c2+88|0,Z=e[o0>>2]|0,V=Z3-U|0,s0=V+Z|0,n0=(s0|0)<0,n0)for(c3=k3,W3=Z3;;){if(i0=c3+1|0,r0=(c3|0)>13,r0){U3=i0,f6=W3;break e}if(K=(m+12|0)+(i0<<2)|0,c0=e[K>>2]|0,l0=m7(c0)|0,j=l0<<3,$0=e[o0>>2]|0,g0=j-U|0,f0=g0+$0|0,Q0=(f0|0)<0,Q0)c3=i0,W3=j;else{U3=i0,f6=j;break}}else U3=k3,f6=Z3;else U3=k3,f6=Z3;while(!1);d0=e[y0>>2]|0,h0=(d0|0)>0,E0=(f6|0)>(u0|0),m6=E0&h0;e:do if(m6)if(k0=c2+88|0,J0=e[k0>>2]|0,D0=f6-u0|0,m0=D0+J0|0,x0=e[B2>>2]|0,F0=(m0|0)>(x0|0),F0)for(o6=U3,O3=f6;;){if(M0=o6+-1|0,G0=(o6|0)<1,G0){u3=M0,S3=O3;break e}if(p0=(m+12|0)+(M0<<2)|0,R0=e[p0>>2]|0,S0=m7(R0)|0,L0=S0<<3,Y0=e[k0>>2]|0,q0=L0-u0|0,N0=q0+Y0|0,V0=e[B2>>2]|0,T0=(N0|0)>(V0|0),T0)o6=M0,O3=L0;else{u3=M0,S3=L0;break}}else u3=U3,S3=f6;else u3=U3,S3=f6;while(!1);if(U0=(u3|0)<0,U0)r1=e[B2>>2]|0,e1=c2+88|0,v0=e[e1>>2]|0,i1=r1+u0|0,c1=i1-v0|0,a1=(c1|0)/8&-1,f1=c2+124|0,e[f1>>2]=0,g1=m+12|0,l1=e[g1>>2]|0,A1=m7(l1)|0,$1=(A1|0)>(a1|0),$1?(s1=e[g1>>2]|0,z0=a1<<3,Cv(s1,z0),I1=e[g1>>2]|0,h1=m7(I1)|0,E1=h1<<3,P3=E1):P3=S3;else{if(u1=c2+88|0,d1=e[u1>>2]|0,m1=U+7|0,p1=m1-d1|0,Q1=(p1|0)/8&-1,_1=(u3|0)>14,c=_1?14:u3,y1=c2+124|0,e[y1>>2]=c,k1=(m+12|0)+(c<<2)|0,x1=e[k1>>2]|0,L1=m7(x1)|0,N1=Q1-L1|0,w1=(N1|0)>0,U1=e[k1>>2]|0,w1)for(G1=U1,y6=N1;;)if(Z1=y6+-1|0,U2(G1,0,8),K1=(y6|0)>1,P1=e[k1>>2]|0,K1)G1=P1,y6=Z1;else{f=P1;break}else f=U1;H1=m7(f)|0,q1=H1<<3,P3=q1}Y1=e[X1>>2]|0,j1=(Y1|0)>0,j1?Y3=37:(r2=e[y0>>2]|0,W1=(r2|0)>0,W1&&(Y3=37));do if((Y3|0)==37){if(O1=(u0|0)>0,l2=(P3|0)>(u0|0),_6=O1&l2,_6){A2=P3-u0|0,d2=c2+88|0,s2=e[d2>>2]|0,V1=A2+s2|0,e[d2>>2]=V1;break}if(g2=(U|0)>0,$2=(P3|0)<(U|0),Y6=g2&$2,Y6){t2=P3-U|0,a2=c2+88|0,i2=e[a2>>2]|0,o2=t2+i2|0,e[a2>>2]=o2;break}if(n2=c2+88|0,f2=e[n2>>2]|0,e2=(f2|0)>(H2|0),e2)if(O1){y2=P3-u0|0,S2=f2+y2|0,w2=(S2|0)<(H2|0),n=w2?H2:S2,e[n2>>2]=n;break}else{e[n2>>2]=H2;break}else if(g2){C2=P3-U|0,M2=f2+C2|0,_2=(M2|0)>(H2|0),$=_2?H2:M2,e[n2>>2]=$;break}else{e[n2>>2]=H2;break}}while(!1);return G2=e[c5>>2]|0,K2=(G2|0)>0,K2?(N2=e[D1>>2]|0,q2=(N2|0)==0,q2?P2=G2:(T2=c2+104|0,O2=e[T2>>2]|0,V2=i5(O2,G2)|0,P2=V2),A5=P3-P2|0,T1=c2+84|0,j2=e[T1>>2]|0,X2=A5+j2|0,e[T1>>2]=X2,s=0,s|0):(s=0,s|0)}function qp(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0;return u0=B,$=t+104|0,c=e[$>>2]|0,D=c+120|0,z=e[D>>2]|0,V=(z|0)==0,V?(s=0,s|0):(g0=(n|0)==0,g0||(f0=z+104|0,Q0=e[f0>>2]|0,d0=z+64|0,y0=e[d0>>2]|0,f=y0+104|0,d=e[f>>2]|0,I=d+80|0,C=e[I>>2]|0,E0=(C|0)==0,E0?h0=7:(p=c+124|0,m=e[p>>2]|0,h0=m),v=(Q0+12|0)+(h0<<2)|0,S=e[v>>2]|0,w=Up(S)|0,e[n>>2]=w,y=e[v>>2]|0,Q=m7(y)|0,b=n+4|0,e[b>>2]=Q,R=n+8|0,e[R>>2]=0,_=z+44|0,L=e[_>>2]|0,M=n+12|0,e[M>>2]=L,T=z+48|0,G=T,N=G,P=e[N>>2]|0,Y=G+4|0,t0=Y,J=e[t0>>2]|0,W=n+16|0,e0=W,H=e0,e[H>>2]=P,X=e0+4|0,U=X,e[U>>2]=J,o0=z+56|0,Z=o0,s0=Z,n0=e[s0>>2]|0,i0=Z+4|0,r0=i0,K=e[r0>>2]|0,c0=n+24|0,A0=c0,l0=A0,e[l0>>2]=n0,j=A0+4|0,$0=j,e[$0>>2]=K),e[D>>2]=0,s=1,s|0)}function Dv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0;M=B,_=n,T=_+112|0;do e[_>>2]=0,_=_+4|0;while((_|0)<(T|0));if(s=n+64|0,e[s>>2]=t,$=n+76|0,e[$>>2]=0,p=n+68|0,e[p>>2]=0,m=e[t>>2]|0,v=(m|0)==0,v)return 0;for(S=t4(1,72)|0,w=n+104|0,e[w>>2]=S,y=S+4|0,A[y>>2]=-9999,D=n+4|0,Q=S+12|0,c=S+40|0,R=0;;)if(f=(R|0)==7,f){e[c>>2]=D,VB(D),R=8;continue}else{if(d=t4(1,20)|0,I=Q+(R<<2)|0,e[I>>2]=d,VB(d),C=R+1|0,b=(C|0)==15,b)break;R=C;continue}return 0}function U7(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0;return Y=B,s=n+7|0,$=s&-8,y=t+72|0,_=e[y>>2]|0,L=_+$|0,M=t+76|0,T=e[M>>2]|0,G=(L|0)>(T|0),N=t+68|0,P=e[N>>2]|0,G?(c=(P|0)==0,c||(f=P,d=k9(8)|0,I=t+80|0,C=e[I>>2]|0,p=C+_|0,e[I>>2]=p,m=t+84|0,v=e[m>>2]|0,S=d+4|0,e[S>>2]=v,e[d>>2]=f,e[m>>2]=d),e[M>>2]=$,w=k9($)|0,e[N>>2]=w,e[y>>2]=0,Q=w,b=0,D=Q+b|0,R=b+$|0,e[y>>2]=R,D|0):(Q=P,b=_,D=Q+b|0,R=b+$|0,e[y>>2]=R,D|0)}function bv(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0;if(Z=B,$=t+104|0,c=e[$>>2]|0,D=t+84|0,N=e[D>>2]|0,P=(N|0)==0,!P)for(X=N;z=X+4|0,Y=e[z>>2]|0,t0=e[X>>2]|0,I2(t0),I2(X),J=(Y|0)==0,!J;)X=Y;if(W=t+80|0,f=e[W>>2]|0,d=(f|0)==0,n=t+68|0,s=e[n>>2]|0,d?Q=s:(I=t+76|0,C=e[I>>2]|0,p=C+f|0,m=Gi(s,p)|0,e[n>>2]=m,v=e[W>>2]|0,S=e[I>>2]|0,w=S+v|0,e[I>>2]=w,e[W>>2]=0,Q=m),y=t+72|0,e[y>>2]=0,e[D>>2]=0,b=(Q|0)==0,b||I2(Q),R=(c|0)==0,R){U=t,V=U+112|0;do e[U>>2]=0,U=U+4|0;while((U|0)<(V|0));return 0}else H=0;for(;;){if(_=(c+12|0)+(H<<2)|0,L=e[_>>2]|0,zB(L),M=(H|0)==7,M){H=8;continue}if(T=e[_>>2]|0,I2(T),G=H+1|0,e0=(G|0)==15,e0)break;H=G}I2(c),U=t,V=U+112|0;do e[U>>2]=0,U=U+4|0;while((U|0)<(V|0));return 0}function _v(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0;return b=B,$=xv(t,n,1)|0,c=($|0)==0,c?(C=t+104|0,p=e[C>>2]|0,m=cS(n)|0,v=p+60|0,e[v>>2]=m,S=t4(1,180)|0,e[p>>2]=S,Gv(S,n),w=p+80|0,kv(n,w),y=t+64|0,D=y,f=D,e[f>>2]=3,d=D+4|0,I=d,e[I>>2]=0,s=0,s|0):(s=1,s|0)}function Yp(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0;if(N2=B,m=(t|0)==0,!m){if(v=t+4|0,C0=e[v>>2]|0,H0=(C0|0)!=0,H0?(O0=C0+28|0,n1=e[O0>>2]|0,p0=n1):p0=0,D1=t+104|0,v1=e[D1>>2]|0,z1=(v1|0)!=0,z1){if(o2=e[v1>>2]|0,S=(o2|0)==0,S||(Nv(o2),G=e[v1>>2]|0,I2(G)),U=v1+12|0,l0=e[U>>2]|0,f0=(l0|0)==0,f0||(Q0=e[l0>>2]|0,tm(Q0),d0=e[U>>2]|0,y0=e[d0>>2]|0,I2(y0),h0=e[U>>2]|0,I2(h0)),E0=v1+16|0,u0=e[E0>>2]|0,k0=(u0|0)==0,k0||(J0=e[u0>>2]|0,tm(J0),D0=e[E0>>2]|0,m0=e[D0>>2]|0,I2(m0),x0=e[E0>>2]|0,I2(x0)),F0=v1+48|0,M0=e[F0>>2]|0,G0=(M0|0)==0,!G0){if(R0=(p0|0)==0,R0)u1=M0;else if(S0=p0+16|0,L0=e[S0>>2]|0,Y0=(L0|0)>0,Y0){if(q0=p0+800|0,N0=e[q0>>2]|0,V0=25640+(N0<<2)|0,T0=e[V0>>2]|0,U0=T0+16|0,r1=e[U0>>2]|0,e1=e[M0>>2]|0,KA[r1&7](e1),v0=e[S0>>2]|0,i1=(v0|0)>1,i1)for(a1=1;n=e[F0>>2]|0,c1=q0+(a1<<2)|0,f1=e[c1>>2]|0,g1=25640+(f1<<2)|0,l1=e[g1>>2]|0,A1=l1+16|0,$1=e[A1>>2]|0,s1=n+(a1<<2)|0,z0=e[s1>>2]|0,KA[$1&7](z0),I1=a1+1|0,h1=e[S0>>2]|0,E1=(I1|0)<(h1|0),E1;)a1=I1;s=e[F0>>2]|0,u1=s}else u1=M0;I2(u1)}if(d1=v1+52|0,m1=e[d1>>2]|0,p1=(m1|0)==0,!p1){if(Q1=(p0|0)==0,Q1)V1=m1;else if(_1=p0+20|0,y1=e[_1>>2]|0,k1=(y1|0)>0,k1){if(x1=p0+1312|0,L1=e[x1>>2]|0,N1=25648+(L1<<2)|0,w1=e[N1>>2]|0,U1=w1+16|0,Z1=e[U1>>2]|0,G1=e[m1>>2]|0,KA[Z1&7](G1),K1=e[_1>>2]|0,P1=(K1|0)>1,P1)for(q1=1;$=e[d1>>2]|0,H1=x1+(q1<<2)|0,Y1=e[H1>>2]|0,j1=25648+(Y1<<2)|0,r2=e[j1>>2]|0,W1=r2+16|0,O1=e[W1>>2]|0,l2=$+(q1<<2)|0,h2=e[l2>>2]|0,KA[O1&7](h2),A2=q1+1|0,d2=e[_1>>2]|0,s2=(A2|0)<(d2|0),s2;)q1=A2;c=e[d1>>2]|0,V1=c}else V1=m1;I2(V1)}if(g2=v1+56|0,$2=e[g2>>2]|0,t2=($2|0)==0,!t2){if(a2=(p0|0)==0,a2)_2=$2;else if(i2=p0+28|0,X1=e[i2>>2]|0,n2=(X1|0)>0,n2){if(eQ($2),f2=e[i2>>2]|0,e2=(f2|0)>1,e2)for(S2=1;f=e[g2>>2]|0,y2=f+(S2*52|0)|0,eQ(y2),w2=S2+1|0,C2=e[i2>>2]|0,M2=(w2|0)<(C2|0),M2;)S2=w2;d=e[g2>>2]|0,_2=d}else _2=$2;I2(_2)}w=v1+60|0,y=e[w>>2]|0,D=(y|0)==0,D||gS(y),Q=v1+80|0,vv(Q),b=v1+20|0,lQ(b),R=v1+32|0,lQ(R)}if(_=t+8|0,L=e[_>>2]|0,M=(L|0)==0,!M){if(H0)if(T=C0+4|0,N=e[T>>2]|0,P=(N|0)>0,P){for(Y=L,g0=N,G2=0;z=Y+(G2<<2)|0,t0=e[z>>2]|0,J=(t0|0)==0,J?H=g0:(I2(t0),C=e[T>>2]|0,H=C),W=G2+1|0,e0=(W|0)<(H|0),!!e0;)I=e[_>>2]|0,Y=I,g0=H,G2=W;p=e[_>>2]|0,X=p}else X=L;else X=L;I2(X),o0=t+12|0,Z=e[o0>>2]|0,V=(Z|0)==0,V||I2(Z)}z1&&(s0=v1+64|0,n0=e[s0>>2]|0,i0=(n0|0)==0,i0||I2(n0),r0=v1+68|0,K=e[r0>>2]|0,c0=(K|0)==0,c0||I2(K),A0=v1+72|0,j=e[A0>>2]|0,$0=(j|0)==0,$0||I2(j),I2(v1)),u2=t,q2=u2+112|0;do e[u2>>2]=0,u2=u2+4|0;while((u2|0)<(q2|0))}}function Jp(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0;if(H0=B,I=t+4|0,C=e[I>>2]|0,_=t+104|0,W=e[_>>2]|0,r0=W+64|0,y0=e[r0>>2]|0,m0=(y0|0)==0,m0||I2(y0),e[r0>>2]=0,x0=W+68|0,F0=e[x0>>2]|0,M0=(F0|0)==0,M0||I2(F0),e[x0>>2]=0,p=W+72|0,m=e[p>>2]|0,v=(m|0)==0,v||I2(m),e[p>>2]=0,S=t+20|0,w=e[S>>2]|0,y=w+n|0,D=t+16|0,Q=e[D>>2]|0,b=(y|0)<(Q|0),b)s=C+4|0,f=e[s>>2]|0,X=f,p0=11;else if(R=n<<1,L=w+R|0,e[D>>2]=L,M=C+4|0,T=e[M>>2]|0,G=(T|0)>0,G)if(N=t+8|0,P=e[N>>2]|0,z=e[P>>2]|0,Y=L<<2,t0=Gi(z,Y)|0,J=e[N>>2]|0,e[J>>2]=t0,e0=e[M>>2]|0,H=(e0|0)>1,H)for(i0=1;;)if($=e[D>>2]|0,s0=e[N>>2]|0,n0=s0+(i0<<2)|0,K=e[n0>>2]|0,c0=$<<2,A0=Gi(K,c0)|0,l0=e[N>>2]|0,j=l0+(i0<<2)|0,e[j>>2]=A0,$0=i0+1|0,g0=e[M>>2]|0,f0=($0|0)<(g0|0),f0)i0=$0;else{X=g0,p0=11;break}else X=e0,p0=11;if((p0|0)==11&&(U=(X|0)>0,U)){for(o0=t+8|0,Z=e[S>>2]|0,V=t+12|0,G0=0;;)if(Q0=e[o0>>2]|0,d0=Q0+(G0<<2)|0,h0=e[d0>>2]|0,E0=h0+(Z<<2)|0,C0=e[V>>2]|0,u0=C0+(G0<<2)|0,e[u0>>2]=E0,k0=G0+1|0,J0=(k0|0)<(X|0),J0)G0=k0;else{c=V;break}return D0=e[c>>2]|0,D0|0}return d=t+12|0,c=d,D0=e[c>>2]|0,D0|0}function Rv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0;if(N0=B,I=t+4|0,C=e[I>>2]|0,_=C+28|0,W=e[_>>2]|0,r0=(n|0)<1,!r0)return Q0=t+20|0,d0=e[Q0>>2]|0,h0=d0+n|0,E0=t+16|0,C0=e[E0>>2]|0,u0=(h0|0)>(C0|0),u0?($=-131,B=N0,$|0):(e[Q0>>2]=h0,k0=t+28|0,J0=e[k0>>2]|0,D0=(J0|0)==0,!D0||(m0=t+48|0,x0=e[m0>>2]|0,F0=h0-x0|0,G0=W+4|0,p0=e[G0>>2]|0,H0=(F0|0)>(p0|0),!H0)?($=0,B=N0,$|0):(Vp(t),$=0,B=N0,$|0));if(y0=B,B=B+128|0,M0=t+28|0,R0=e[M0>>2]|0,S0=(R0|0)==0,S0&&Vp(t),L0=W+4|0,p=e[L0>>2]|0,m=p*3|0,Jp(t,m)|0,v=t+20|0,S=e[v>>2]|0,w=t+32|0,e[w>>2]=S,y=e[L0>>2]|0,D=y*3|0,Q=S+D|0,e[v>>2]=Q,b=C+4|0,R=e[b>>2]|0,L=(R|0)>0,!L)return $=0,B=N0,$|0;for(M=t+8|0,T=S,Y0=0;;){if(G=(T|0)>64,G?(N=e[L0>>2]|0,P=(T|0)>(N|0),s=P?N:T,z=e[M>>2]|0,Y=z+(Y0<<2)|0,t0=e[Y>>2]|0,f=T-s|0,J=t0+(f<<2)|0,+zp(J,y0,s,32),e0=e[M>>2]|0,H=e0+(Y0<<2)|0,X=e[H>>2]|0,U=e[w>>2]|0,o0=X+(U<<2)|0,d=U+-32|0,Z=X+(d<<2)|0,V=e[v>>2]|0,s0=V-U|0,Zp(y0,Z,32,o0,s0)):(n0=e[M>>2]|0,i0=n0+(Y0<<2)|0,K=e[i0>>2]|0,c0=K+(T<<2)|0,A0=e[v>>2]|0,l0=A0-T|0,j=l0<<2,Ae(c0|0,0,j|0)|0),$0=Y0+1|0,g0=e[b>>2]|0,f0=($0|0)<(g0|0),!f0){$=0;break}c=e[w>>2]|0,T=c,Y0=$0}return B=N0,$|0}function Kp(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,B6=0,z3=0,$6=0,m6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,s3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0;if(r4=B,v=t+4|0,S=e[v>>2]|0,A2=S+28|0,y5=e[A2>>2]|0,X3=t+104|0,k6=e[X3>>2]|0,f6=k6+60|0,u6=e[f6>>2]|0,G6=t+48|0,X6=e[G6>>2]|0,w=t+40|0,N=e[w>>2]|0,o0=y5+(N<<2)|0,j=e[o0>>2]|0,k0=(j|0)/2&-1,S0=X6-k0|0,v0=n+104|0,z0=e[v0>>2]|0,y1=t+28|0,P1=e[y1>>2]|0,d2=(P1|0)==0,d2||(f2=t+32|0,N2=e[f2>>2]|0,v5=(N2|0)==-1,v5))return $=0,$|0;B2=Uv(t)|0,B5=(B2|0)==-1;do if(B5){if(J2=e[f2>>2]|0,f3=(J2|0)==0,f3)return $=0,$|0;q3=t+44|0,e[q3>>2]=0,f=q3,N3=0;break}else if(C3=e[y5>>2]|0,G3=y5+4|0,L5=e[G3>>2]|0,t6=(C3|0)==(L5|0),i3=t+44|0,t6){e[i3>>2]=0,f=i3,N3=0;break}else{e[i3>>2]=B2,f=i3,N3=B2;break}while(!1);if(o3=e[G6>>2]|0,R3=e[w>>2]|0,h6=y5+(R3<<2)|0,m3=e[h6>>2]|0,w3=(m3|0)/4&-1,p3=w3+o3|0,V3=y5+(N3<<2)|0,z5=e[V3>>2]|0,k3=(z5|0)/4&-1,c3=p3+k3|0,U3=(z5|0)/2&-1,o6=c3+U3|0,u3=t+20|0,y6=e[u3>>2]|0,w6=(y6|0)<(o6|0),w6)return $=0,$|0;if(B6=n+84|0,z3=e[B6>>2]|0,$6=(z3|0)==0,!$6)for(u9=z3;m6=u9+4|0,_6=e[m6>>2]|0,Y6=e[u9>>2]|0,I2(Y6),I2(u9),C6=(_6|0)==0,!C6;)u9=_6;v3=n+80|0,Z3=e[v3>>2]|0,W3=(Z3|0)==0,W3||(O3=n+68|0,S3=e[O3>>2]|0,P3=n+76|0,Y3=e[P3>>2]|0,v6=Y3+Z3|0,i6=Gi(S3,v6)|0,e[O3>>2]=i6,r3=e[v3>>2]|0,O6=e[P3>>2]|0,s3=O6+r3|0,e[P3>>2]=s3,e[v3>>2]=0),r6=n+72|0,e[r6>>2]=0,e[B6>>2]=0,D3=t+36|0,T6=e[D3>>2]|0,e6=n+24|0,e[e6>>2]=T6,p6=e[w>>2]|0,R6=n+28|0,e[R6>>2]=p6,K6=e[f>>2]|0,I6=n+32|0,e[I6>>2]=K6,J6=(p6|0)==0;do if(J6)if(r9=Ov(t)|0,x6=(r9|0)==0,N6=z0+8|0,x6){e[N6>>2]=1;break}else{e[N6>>2]=0;break}else if(x3=(T6|0)==0,Z6=(K6|0)==0,M9=x3|Z6,j6=z0+8|0,M9){e[j6>>2]=0;break}else{e[j6>>2]=1;break}while(!1);S6=n+64|0,e[S6>>2]=t,V6=t+64|0,Q6=V6,F6=Q6,F3=e[F6>>2]|0,L6=Q6+4|0,A9=L6,W6=e[A9>>2]|0,g9=qA(F3|0,W6|0,1,0)|0,h9=q6,f9=V6,s9=f9,e[s9>>2]=g9,o9=f9+4|0,L9=o9,e[L9>>2]=h9,d6=n+56|0,M6=d6,y=M6,e[y>>2]=F3,D=M6+4|0,Q=D,e[Q>>2]=W6,b=t+56|0,R=b,_=R,L=e[_>>2]|0,M=R+4|0,T=M,G=e[T>>2]|0,P=n+48|0,z=P,Y=z,e[Y>>2]=L,t0=z+4|0,J=t0,e[J>>2]=G,W=e[w>>2]|0,e0=y5+(W<<2)|0,H=e[e0>>2]|0,X=n+36|0,e[X>>2]=H,U=z0+4|0,Z=+A[U>>2],V=+A[u6>>2],s0=Z>V,s0?(A[u6>>2]=Z,n0=Z):n0=V,i0=+uS(n0,t),A[u6>>2]=i0,A[U>>2]=i0,r0=S+4|0,K=e[r0>>2]|0,c0=K<<2,A0=c0+7|0,l0=A0&-8,$0=e[r6>>2]|0,g0=l0+$0|0,f0=n+76|0,Q0=e[f0>>2]|0,d0=(g0|0)>(Q0|0),y0=n+68|0,h0=e[y0>>2]|0,d0?(E0=(h0|0)==0,E0||(C0=h0,u0=k9(8)|0,J0=e[v3>>2]|0,D0=J0+$0|0,e[v3>>2]=D0,m0=e[B6>>2]|0,x0=u0+4|0,e[x0>>2]=m0,e[u0>>2]=C0,e[B6>>2]=u0),e[f0>>2]=l0,F0=k9(l0)|0,e[y0>>2]=F0,e[r6>>2]=0,c=e[r0>>2]|0,G0=F0,p0=0,L0=c,T0=l0):(G0=h0,p0=$0,L0=K,T0=Q0),M0=G0+p0|0,H0=p0+l0|0,e[r6>>2]=H0,e[n>>2]=M0,R0=L0<<2,Y0=R0+7|0,q0=Y0&-8,N0=q0+H0|0,V0=(N0|0)>(T0|0),V0?(U0=(G0|0)==0,U0||(r1=G0,O0=k9(8)|0,e1=e[v3>>2]|0,i1=e1+H0|0,e[v3>>2]=i1,c1=e[B6>>2]|0,a1=O0+4|0,e[a1>>2]=c1,e[O0>>2]=r1,e[B6>>2]=O0),e[f0>>2]=q0,f1=k9(q0)|0,e[y0>>2]=f1,e[r6>>2]=0,d=e[r0>>2]|0,l1=f1,A1=0,n1=d,P5=q0):(l1=G0,A1=H0,n1=L0,P5=T0),g1=l1+A1|0,$1=A1+q0|0,e[r6>>2]=$1,e[z0>>2]=g1,s1=(n1|0)>0;e:do if(s1)for(I1=t+8|0,Q1=$1,_1=P5,k1=l1,e9=0;;){if(h1=e[X>>2]|0,E1=h1+S0|0,u1=E1<<2,d1=u1+7|0,m1=d1&-8,p1=m1+Q1|0,D1=(p1|0)>(_1|0),D1?(x1=(k1|0)==0,x1||(L1=k1,N1=k9(8)|0,w1=e[v3>>2]|0,U1=w1+Q1|0,e[v3>>2]=U1,Z1=e[B6>>2]|0,G1=N1+4|0,e[G1>>2]=Z1,e[N1>>2]=L1,e[B6>>2]=N1),e[f0>>2]=m1,v1=k9(m1)|0,e[y0>>2]=v1,e[r6>>2]=0,H1=v1,q1=0):(H1=k1,q1=Q1),K1=H1+q1|0,Y1=q1+m1|0,e[r6>>2]=Y1,j1=e[z0>>2]|0,r2=j1+(e9<<2)|0,e[r2>>2]=K1,W1=e[z0>>2]|0,O1=W1+(e9<<2)|0,l2=e[O1>>2]|0,z1=e[I1>>2]|0,h2=z1+(e9<<2)|0,s2=e[h2>>2]|0,i4(l2|0,s2|0,u1|0)|0,V1=e[z0>>2]|0,g2=V1+(e9<<2)|0,$2=e[g2>>2]|0,t2=$2+(S0<<2)|0,a2=e[n>>2]|0,i2=a2+(e9<<2)|0,e[i2>>2]=t2,o2=e9+1|0,X1=e[r0>>2]|0,n2=(o2|0)<(X1|0),!n2)break e;I=e[r6>>2]|0,C=e[f0>>2]|0,p=e[y0>>2]|0,Q1=I,_1=C,k1=p,e9=o2}while(!1);if(e2=e[f2>>2]|0,y2=(e2|0)==0,!y2&&(S2=e[G6>>2]|0,w2=(S2|0)<(e2|0),!w2))return e[f2>>2]=-1,C2=n+44|0,e[C2>>2]=1,$=1,$|0;if(M2=y5+4|0,_2=e[M2>>2]|0,G2=(_2|0)/2&-1,u2=c3-G2|0,K2=(u2|0)>0,!K2)return $=1,$|0;if(q2=e[k6>>2]|0,Pv(q2,u2),T2=e[u3>>2]|0,O2=T2-u2|0,e[u3>>2]=O2,V2=e[r0>>2]|0,A5=(V2|0)>0,A5&&(P2=t+8|0,T1=e[P2>>2]|0,j2=e[T1>>2]|0,R5=j2+(u2<<2)|0,X2=O2<<2,Ko(j2|0,R5|0,X2|0)|0,z2=e[r0>>2]|0,f5=(z2|0)>1,f5))for(a5=1;m=e[u3>>2]|0,w5=e[P2>>2]|0,O5=w5+(a5<<2)|0,k2=e[O5>>2]|0,E5=k2+(u2<<2)|0,r5=m<<2,Ko(k2|0,E5|0,r5|0)|0,x2=a5+1|0,R2=e[r0>>2]|0,C5=(x2|0)<(R2|0),C5;)a5=x2;return x5=e[w>>2]|0,e[D3>>2]=x5,u5=e[f>>2]|0,e[w>>2]=u5,e[G6>>2]=G2,S5=e[f2>>2]|0,G5=(S5|0)==0,G5?(h3=(u2|0)<0,B3=h3<<31>>31,M3=b,Z5=M3,Q3=e[Z5>>2]|0,j5=M3+4|0,j3=j5,_3=e[j3>>2]|0,T3=qA(Q3|0,_3|0,u2|0,B3|0)|0,$3=q6,a3=b,l3=a3,e[l3>>2]=T3,Y5=a3+4|0,N5=Y5,e[N5>>2]=$3,$=1,$|0):(D5=S5-u2|0,H2=(D5|0)<1,s=H2?-1:D5,e[f2>>2]=s,I5=(s|0)>(G2|0),I5?($5=(u2|0)<0,F2=$5<<31>>31,p5=b,q5=p5,e3=e[q5>>2]|0,d5=p5+4|0,g3=d5,K5=e[g3>>2]|0,t3=qA(e3|0,K5|0,u2|0,F2|0)|0,A3=q6,E3=b,F5=E3,e[F5>>2]=t3,V5=E3+4|0,y3=V5,e[y3>>2]=A3,$=1,$|0):(s5=s+u2|0,l5=s5-G2|0,M1=(l5|0)<0,k5=M1<<31>>31,c5=b,o5=c5,Z2=e[o5>>2]|0,c2=c5+4|0,m5=c2,e5=e[m5>>2]|0,n5=qA(Z2|0,e5|0,l5|0,k5|0)|0,g5=q6,h5=b,t5=h5,e[t5>>2]=n5,b5=h5+4|0,W2=b5,e[W2>>2]=g5,$=1,$|0))}function xv(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0;if(t5=B,p=n+28|0,m=e[p>>2]|0,p1=(m|0)==0,p1||(Z1=m+8|0,O1=e[Z1>>2]|0,a2=(O1|0)<1,a2)||(M2=e[m>>2]|0,P2=(M2|0)<64,P2)||(k2=m+4|0,D5=e[k2>>2]|0,v=(D5|0)<(M2|0),v))return $=1,$|0;T=m+3656|0,X=e[T>>2]|0,J2=t,b5=J2+112|0;do e[J2>>2]=0,J2=J2+4|0;while((J2|0)<(b5|0));A0=t4(1,136)|0,C0=t+104|0,e[C0>>2]=A0,H0=t+4|0,e[H0>>2]=n,O0=e[Z1>>2]|0,n1=O0+-1|0,d1=F7(n1)|0,m1=A0+44|0,e[m1>>2]=d1,Q1=t4(1,4)|0,D1=A0+12|0,e[D1>>2]=Q1,_1=t4(1,4)|0,y1=A0+16|0,e[y1>>2]=_1,k1=t4(1,20)|0,e[Q1>>2]=k1,x1=t4(1,20)|0,e[_1>>2]=x1,L1=e[m>>2]|0,N1=L1>>X,em(k1,N1),w1=e[y1>>2]|0,U1=e[w1>>2]|0,G1=e[k2>>2]|0,v1=G1>>X,em(U1,v1),K1=e[m>>2]|0,P1=F7(K1)|0,H1=P1+-7|0,q1=A0+4|0,e[q1>>2]=H1,Y1=e[k2>>2]|0,j1=F7(Y1)|0,r2=j1+-7|0,W1=A0+8|0,e[W1>>2]=r2,l2=(s|0)==0;e:do if(l2){if(B2=m+2848|0,C5=e[B2>>2]|0,x5=(C5|0)==0,x5&&(u5=m+24|0,S5=e[u5>>2]|0,G5=t4(S5,56)|0,e[B2>>2]=G5,H2=e[u5>>2]|0,I5=(H2|0)>0,I5)){for(E1=H2,m5=0;;){if(s5=(m+1824|0)+(m5<<2)|0,l5=e[s5>>2]|0,B5=(l5|0)==0,B5){M1=E1;break}if(c5=e[B2>>2]|0,o5=c5+(m5*56|0)|0,Z2=LS(o5,l5)|0,S=(Z2|0)==0,!S){h5=20;break}if(w=e[s5>>2]|0,im(w),e[s5>>2]=0,y=m5+1|0,D=e[u5>>2]|0,Q=(y|0)<(D|0),Q)E1=D,m5=y;else break e}if((h5|0)==20&&(I=e[u5>>2]|0,M1=I),k5=(M1|0)>0,k5)for(u1=M1,g5=0;A1=(m+1824|0)+(g5<<2)|0,$1=e[A1>>2]|0,s1=($1|0)==0,s1?h1=u1:(im($1),e[A1>>2]=0,C=e[u5>>2]|0,h1=C),z0=g5+1|0,I1=(z0|0)<(h1|0),I1;)u1=h1,g5=z0;return Yp(t),$=-1,$|0}}else{if(z1=A0+20|0,h2=e[m>>2]|0,aQ(z1,h2),A2=A0+32|0,d2=e[k2>>2]|0,aQ(A2,d2),s2=m+2848|0,V1=e[s2>>2]|0,g2=(V1|0)==0,g2&&($2=m+24|0,t2=e[$2>>2]|0,i2=t4(t2,56)|0,e[s2>>2]=i2,o2=e[$2>>2]|0,X1=(o2|0)>0,X1&&(n2=m+1824|0,f2=e[n2>>2]|0,$Q(i2,f2)|0,e2=e[$2>>2]|0,y2=(e2|0)>1,y2)))for(w2=1;c=e[s2>>2]|0,S2=c+(w2*56|0)|0,C2=(m+1824|0)+(w2<<2)|0,_2=e[C2>>2]|0,$Q(S2,_2)|0,G2=w2+1|0,u2=e[$2>>2]|0,K2=(G2|0)<(u2|0),K2;)w2=G2;N2=m+28|0,q2=e[N2>>2]|0,T2=t4(q2,52)|0,O2=A0+56|0,e[O2>>2]=T2,V2=e[N2>>2]|0,A5=(V2|0)>0;t:do if(A5)for(T1=m+2868|0,j2=n+8|0,X2=T2,c2=0;;){if(R5=X2+(c2*52|0)|0,v5=(m+2852|0)+(c2<<2)|0,z2=e[v5>>2]|0,f5=e[z2>>2]|0,w5=m+(f5<<2)|0,O5=e[w5>>2]|0,a5=(O5|0)/2&-1,E5=e[j2>>2]|0,fS(R5,z2,T1,a5,E5),r5=c2+1|0,x2=e[N2>>2]|0,R2=(r5|0)<(x2|0),!R2)break t;f=e[O2>>2]|0,X2=f,c2=r5}while(!1);e[t>>2]=1}while(!1);if(b=e[k2>>2]|0,R=t+16|0,e[R>>2]=b,_=n+4|0,L=e[_>>2]|0,M=L<<2,G=k9(M)|0,N=t+8|0,e[N>>2]=G,P=k9(M)|0,z=t+12|0,e[z>>2]=P,Y=(L|0)>0,Y&&(t0=t4(b,4)|0,e[G>>2]=t0,J=(L|0)>1,J))for(H=1;d=e[N>>2]|0,W=t4(b,4)|0,e0=d+(H<<2)|0,e[e0>>2]=W,U=H+1|0,o0=(U|0)<(L|0),o0;)H=U;if(Z=t+36|0,e[Z>>2]=0,V=t+40|0,e[V>>2]=0,s0=e[k2>>2]|0,n0=(s0|0)/2&-1,i0=t+48|0,e[i0>>2]=n0,r0=t+20|0,e[r0>>2]=n0,K=m+16|0,c0=e[K>>2]|0,l0=t4(c0,4)|0,j=A0+48|0,e[j>>2]=l0,$0=m+20|0,g0=e[$0>>2]|0,f0=t4(g0,4)|0,Q0=A0+52|0,e[Q0>>2]=f0,d0=e[K>>2]|0,y0=(d0|0)>0,y0)for(e5=0;u0=(m+800|0)+(e5<<2)|0,k0=e[u0>>2]|0,J0=25640+(k0<<2)|0,D0=e[J0>>2]|0,m0=D0+8|0,x0=e[m0>>2]|0,F0=(m+1056|0)+(e5<<2)|0,M0=e[F0>>2]|0,G0=lt[x0&15](t,M0)|0,p0=e[j>>2]|0,R0=p0+(e5<<2)|0,e[R0>>2]=G0,S0=e5+1|0,L0=e[K>>2]|0,Y0=(S0|0)<(L0|0),Y0;)e5=S0;if(h0=e[$0>>2]|0,E0=(h0|0)>0,E0)n5=0;else return $=0,$|0;for(;;)if(q0=(m+1312|0)+(n5<<2)|0,N0=e[q0>>2]|0,V0=25648+(N0<<2)|0,T0=e[V0>>2]|0,U0=T0+8|0,r1=e[U0>>2]|0,e1=(m+1568|0)+(n5<<2)|0,v0=e[e1>>2]|0,i1=lt[r1&15](t,v0)|0,c1=e[Q0>>2]|0,a1=c1+(n5<<2)|0,e[a1>>2]=i1,f1=n5+1|0,g1=e[$0>>2]|0,l1=(f1|0)<(g1|0),l1)n5=f1;else{$=0;break}return $|0}function Vp(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0;if(D0=B,B=B+64|0,c=D0,f=t+20|0,Q=e[f>>2]|0,Y=Q<<2,n=Y,s0=B,B=B+((1*n|0)+15&-16)|0,f0=t+28|0,e[f0>>2]=1,d0=t+48|0,y0=e[d0>>2]|0,h0=Q-y0|0,E0=(h0|0)>32,!E0){B=D0;return}if(d=t+4|0,I=e[d>>2]|0,C=I+4|0,p=e[C>>2]|0,m=(p|0)>0,!m){B=D0;return}for(v=t+8|0,S=Q,C0=0;;){if(w=(S|0)>0,w)for(y=e[v>>2]|0,D=y+(C0<<2)|0,b=e[D>>2]|0,u0=0;R=u0^-1,_=S+R|0,L=b+(_<<2)|0,M=e[L>>2]|0,T=s0+(u0<<2)|0,e[T>>2]=M,G=u0+1|0,N=(S|0)>(G|0),N;)u0=G;if(P=e[d0>>2]|0,z=S-P|0,+zp(s0,c,z,16),t0=e[f>>2]|0,J=e[d0>>2]|0,s=t0-J|0,W=s0+(s<<2)|0,$=s+-16|0,e0=s0+($<<2)|0,Zp(c,e0,16,W,J),H=e[f>>2]|0,X=(H|0)>0,X)for(U=e[v>>2]|0,o0=U+(C0<<2)|0,Z=e[o0>>2]|0,k0=0;V=s0+(k0<<2)|0,n0=e[V>>2]|0,i0=k0^-1,r0=H+i0|0,K=Z+(r0<<2)|0,e[K>>2]=n0,c0=k0+1|0,A0=(H|0)>(c0|0),A0;)k0=c0;if(l0=C0+1|0,j=e[d>>2]|0,$0=j+4|0,g0=e[$0>>2]|0,Q0=(l0|0)<(g0|0),Q0)S=H,C0=l0;else break}B=D0}function Fv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0;o2=B,U2(n,5653314,24),d=e[t>>2]|0,U2(n,d,16),I=t+4|0,N=e[I>>2]|0,U2(n,N,24),o0=e[I>>2]|0,j=(o0|0)>1;e:do if(j)for(k0=t+8|0,S0=e[k0>>2]|0,c=u[S0>>0]|0,v0=c,O1=1;;){if(z0=v0<<24>>24==0,z0){W1=O1;break e}if(y1=S0+O1|0,C=u[y1>>0]|0,D=C<<24>>24>24,D){W1=O1;break e}if(Q=O1+1|0,b=(Q|0)<(o0|0),b)v0=C,O1=Q;else{W1=Q;break}}else W1=1;while(!1);R=(W1|0)==(o0|0);e:do if(R){if(U2(n,1,1),_=t+8|0,L=e[_>>2]|0,M=u[L>>0]|0,T=M<<24>>24,G=T+-1|0,U2(n,G,5),P=e[I>>2]|0,z=(P|0)>1,z)for(y=P,H1=0,z1=1;;){if(Y=e[_>>2]|0,t0=Y+z1|0,J=u[t0>>0]|0,W=z1+-1|0,e0=Y+W|0,H=u[e0>>0]|0,X=J<<24>>24>H<<24>>24,X)for(U=H<<24>>24,Z=J<<24>>24,n0=y,q1=H1,$2=U;;)if(V=z1-q1|0,s0=n0-q1|0,i0=F7(s0)|0,U2(n,V,i0),r0=$2+1|0,r2=(r0|0)==(Z|0),f=e[I>>2]|0,r2){A0=f,Y1=z1;break}else n0=f,q1=z1,$2=r0;else A0=y,Y1=H1;if(K=z1+1|0,c0=(K|0)<(A0|0),c0)y=A0,H1=Y1,z1=K;else{$=A0,P1=Y1,l2=K;break}}else $=P,P1=0,l2=1;l0=l2-P1|0,$0=$-P1|0,g0=F7($0)|0,U2(n,l0,g0)}else{U2(n,0,1),f0=e[I>>2]|0,Q0=(f0|0)>0;t:do if(Q0)for(d0=t+8|0,y0=e[d0>>2]|0,A2=0;;){if(h0=y0+A2|0,E0=u[h0>>0]|0,C0=E0<<24>>24==0,C0){h2=A2;break t}if(u0=A2+1|0,J0=(u0|0)<(f0|0),J0)A2=u0;else{h2=u0;break}}else h2=0;while(!1);if(D0=(h2|0)==(f0|0),D0){if(U2(n,0,1),m0=e[I>>2]|0,x0=(m0|0)>0,!x0)break;for(F0=t+8|0,d2=0;;)if(M0=e[F0>>2]|0,G0=M0+d2|0,p0=u[G0>>0]|0,H0=p0<<24>>24,R0=H0+-1|0,U2(n,R0,5),L0=d2+1|0,Y0=e[I>>2]|0,q0=(L0|0)<(Y0|0),q0)d2=L0;else break e}if(U2(n,1,1),N0=e[I>>2]|0,V0=(N0|0)>0,V0)for(T0=t+8|0,s2=0;U0=e[T0>>2]|0,r1=U0+s2|0,O0=u[r1>>0]|0,e1=O0<<24>>24==0,e1?U2(n,0,1):(U2(n,1,1),i1=e[T0>>2]|0,c1=i1+s2|0,a1=u[c1>>0]|0,f1=a1<<24>>24,g1=f1+-1|0,U2(n,g1,5)),l1=s2+1|0,A1=e[I>>2]|0,$1=(l1|0)<(A1|0),$1;)s2=l1}while(!1);if(n1=t+12|0,s1=e[n1>>2]|0,U2(n,s1,4),I1=e[n1>>2]|0,(I1|0)==2|(I1|0)==1)i2=28;else if(I1|0)return s=-1,s|0;do if((i2|0)==28){if(h1=t+32|0,E1=e[h1>>2]|0,u1=(E1|0)==0,u1)return s=-1,s|0;if(d1=t+16|0,m1=e[d1>>2]|0,U2(n,m1,32),p1=t+20|0,Q1=e[p1>>2]|0,U2(n,Q1,32),D1=t+24|0,_1=e[D1>>2]|0,k1=_1+-1|0,U2(n,k1,4),x1=t+28|0,L1=e[x1>>2]|0,U2(n,L1,1),N1=e[n1>>2]|0,(N1|0)==1)w1=RS(t)|0,a2=w1;else if((N1|0)==2)U1=e[I>>2]|0,Z1=e[t>>2]|0,G1=i5(Z1,U1)|0,a2=G1;else break;if(v1=(a2|0)>0,v1)for(V1=0;K1=e[h1>>2]|0,p=K1+(V1<<2)|0,m=e[p>>2]|0,g2=(m|0)>-1,t2=0-m|0,v=g2?m:t2,S=e[D1>>2]|0,U2(n,v,S),w=V1+1|0,j1=(w|0)==(a2|0),!j1;)V1=w}while(!1);return s=0,s|0}function Dh(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0;return z=B,c=(n|0)<0,c||(f=t+12|0,Q=e[f>>2]|0,R=Q+4|0,_=e[R>>2]|0,L=(_|0)>(n|0),!L)?($=0,$|0):(M=t+20|0,T=e[M>>2]|0,G=T+(n<<2)|0,N=e[G>>2]|0,d=Q+8|0,I=e[d>>2]|0,C=I+n|0,p=u[C>>0]|0,m=p<<24>>24,U2(s,N,m),v=e[f>>2]|0,S=v+8|0,w=e[S>>2]|0,y=w+n|0,D=u[y>>0]|0,b=D<<24>>24,$=b,$|0)}function OC(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0;return w=B,$=t+8|0,c=e[$>>2]|0,f=(c|0)>0,!f||(d=bh(t,n)|0,I=(d|0)>-1,!I)?(s=-1,s|0):(C=t+24|0,p=e[C>>2]|0,m=p+(d<<2)|0,v=e[m>>2]|0,s=v,s|0)}function Lv(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0;if(j=B,C=t+8|0,p=e[C>>2]|0,L=(p|0)>0,!L)return c=0,B=j,c|0;e0=e[t>>2]|0,X=($|0)/(e0|0)&-1,U=X<<2,f=U,o0=B,B=B+((1*f|0)+15&-16)|0,Z=(X|0)>0;e:do if(Z){for(V=t+16|0,r0=0;;){if(G=bh(t,s)|0,N=(G|0)==-1,N){c=-1;break}if(P=e[V>>2]|0,z=e[t>>2]|0,Y=i5(z,G)|0,t0=P+(Y<<2)|0,J=o0+(r0<<2)|0,e[J>>2]=t0,W=r0+1|0,H=(W|0)<(X|0),H)r0=W;else{s0=z;break e}}return B=j,c|0}else s0=e0;while(!1);if(d=(s0|0)<1,I=Z^1,n0=d|I,n0)return c=0,B=j,c|0;for(K=0,A0=0;;){for(c0=0;w=o0+(c0<<2)|0,y=e[w>>2]|0,D=y+(K<<2)|0,Q=+A[D>>2],b=c0+A0|0,R=n+(b<<2)|0,_=+A[R>>2],M=_+Q,A[R>>2]=M,T=c0+1|0,i0=(T|0)==(X|0),!i0;)c0=T;if(m=K+1|0,v=A0+X|0,S=(m|0)<(s0|0),S)K=m,A0=v;else{c=0;break}}return B=j,c|0}function Mv(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0;if(j2=B,Y=t+8|0,t0=e[Y>>2]|0,l0=(t0|0)>0,!l0)return c=0,c|0;if(u0=e[t>>2]|0,R0=(u0|0)>8,R0){if(_1=($|0)>0,!_1)return c=0,c|0;for(K1=t+16|0,X1=0;;){if(Z=bh(t,s)|0,V=(Z|0)==-1,V){c=-1,T1=29;break}if(s0=e[K1>>2]|0,n0=e[t>>2]|0,i0=i5(n0,Z)|0,r0=(n0|0)>0,r0){for(K=(n0|0)>1,P2=K?n0:1,f2=X1,u2=0;c0=u2+1|0,z=u2+i0|0,A0=s0+(z<<2)|0,j=+A[A0>>2],$0=f2+1|0,g0=n+(f2<<2)|0,f0=+A[g0>>2],Q0=f0+j,A[g0>>2]=Q0,d0=(c0|0)<(n0|0),d0;)f2=$0,u2=c0;h2=X1+P2|0,n2=h2}else n2=X1;if(J=(n2|0)<($|0),J)X1=n2;else{c=0,T1=29;break}}if((T1|0)==29)return c|0}if(e1=t+16|0,s1=($|0)>0,s1)e2=0;else return c=0,c|0;e:for(;;){t:for(;;){if(H=bh(t,s)|0,X=(H|0)==-1,X){c=-1,T1=29;break e}switch(U=e[e1>>2]|0,o0=e[t>>2]|0,o0|0){case 4:{m=H,Q=U,T1=19;break t}case 3:{v=H,b=U,T1=21;break t}case 7:{I=H,w=U,T1=13;break t}case 6:{C=H,y=U,T1=15;break t}case 8:{f=U,d=H,T1=12;break t}case 5:{p=H,D=U,T1=17;break t}case 1:{V1=H,$2=U,G2=e2,A5=0;break t}case 2:{S=H,R=U,T1=23;break t}default:}}if((T1|0)==12?(T1=0,y0=d<<3,h0=f+(y0<<2)|0,E0=+A[h0>>2],C0=e2+1|0,k0=n+(e2<<2)|0,J0=+A[k0>>2],D0=J0+E0,A[k0>>2]=D0,F0=y0,G0=f,y2=C0,K2=1,T1=14):(T1|0)==13?(T1=0,m0=I*7|0,F0=m0,G0=w,y2=e2,K2=0,T1=14):(T1|0)==15?(T1=0,q0=C*6|0,V0=q0,U0=y,S2=e2,N2=0,T1=16):(T1|0)==17?(T1=0,a1=p*5|0,g1=a1,A1=D,w2=e2,q2=0,T1=18):(T1|0)==19?(T1=0,E1=m<<2,d1=E1,p1=Q,C2=e2,T2=0,T1=20):(T1|0)==21?(T1=0,L1=v*3|0,w1=L1,Z1=b,M2=e2,O2=0,T1=22):(T1|0)==23&&(T1=0,Y1=S<<1,r2=Y1,O1=R,_2=e2,V2=0,T1=24),(T1|0)==14&&(T1=0,x0=K2+1|0,P=K2+F0|0,M0=G0+(P<<2)|0,p0=+A[M0>>2],H0=y2+1|0,S0=n+(y2<<2)|0,L0=+A[S0>>2],Y0=L0+p0,A[S0>>2]=Y0,V0=F0,U0=G0,S2=H0,N2=x0,T1=16),(T1|0)==16&&(T1=0,N0=N2+1|0,N=N2+V0|0,T0=U0+(N<<2)|0,r1=+A[T0>>2],O0=S2+1|0,v0=n+(S2<<2)|0,i1=+A[v0>>2],c1=i1+r1,A[v0>>2]=c1,g1=V0,A1=U0,w2=O0,q2=N0,T1=18),(T1|0)==18&&(T1=0,f1=q2+1|0,G=q2+g1|0,l1=A1+(G<<2)|0,$1=+A[l1>>2],n1=w2+1|0,z0=n+(w2<<2)|0,I1=+A[z0>>2],h1=I1+$1,A[z0>>2]=h1,d1=g1,p1=A1,C2=n1,T2=f1,T1=20),(T1|0)==20&&(T1=0,u1=T2+1|0,T=T2+d1|0,m1=p1+(T<<2)|0,Q1=+A[m1>>2],D1=C2+1|0,y1=n+(C2<<2)|0,k1=+A[y1>>2],x1=k1+Q1,A[y1>>2]=x1,w1=d1,Z1=p1,M2=D1,O2=u1,T1=22),(T1|0)==22&&(T1=0,N1=O2+1|0,M=O2+w1|0,U1=Z1+(M<<2)|0,G1=+A[U1>>2],v1=M2+1|0,P1=n+(M2<<2)|0,H1=+A[P1>>2],q1=H1+G1,A[P1>>2]=q1,r2=w1,O1=Z1,_2=v1,V2=N1,T1=24),(T1|0)==24&&(T1=0,j1=V2+1|0,L=V2+r2|0,W1=O1+(L<<2)|0,l2=+A[W1>>2],z1=_2+1|0,A2=n+(_2<<2)|0,d2=+A[A2>>2],s2=d2+l2,A[A2>>2]=s2,V1=r2,$2=O1,G2=z1,A5=j1),_=A5+V1|0,g2=$2+(_<<2)|0,t2=+A[g2>>2],a2=G2+1|0,i2=n+(G2<<2)|0,o2=+A[i2>>2],W=o2+t2,A[i2>>2]=W,e0=(a2|0)<($|0),e0)e2=a2;else{c=0,T1=29;break}}return(T1|0)==29?c|0:0}function Tv(t,n,s,$,c,f){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0;var d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0;if(l0=B,m=t+8|0,v=e[m>>2]|0,T=(v|0)>0,!T||(W=(s|0)/($|0)&-1,e0=f+s|0,H=(e0|0)/($|0)&-1,X=(W|0)<(H|0),!X))return I=0,I|0;for(U=t+16|0,V=0,i0=W;;){if(Z=bh(t,c)|0,S=(Z|0)==-1,S){I=-1,A0=8;break}if(w=e[U>>2]|0,y=e[t>>2]|0,D=i5(y,Z)|0,Q=(y|0)>0,Q)for(n0=V,K=i0,c0=0;;)if(p=c0+D|0,b=w+(p<<2)|0,R=+A[b>>2],_=n0+1|0,L=n+(n0<<2)|0,M=e[L>>2]|0,G=M+(K<<2)|0,N=+A[G>>2],P=N+R,A[G>>2]=P,z=(_|0)==($|0),Y=z&1,C=Y+K|0,d=z?0:_,t0=c0+1|0,J=(t0|0)<(y|0),J)n0=d,K=C,c0=t0;else{s0=d,r0=C;break}else s0=V,r0=i0;if(o0=(r0|0)<(H|0),o0)V=s0,i0=r0;else{I=0,A0=8;break}}return(A0|0)==8?I|0:0}function bh(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0;h1=B,c=t+40|0,f=e[c>>2]|0,Q=t+36|0,Y=e[Q>>2]|0,s0=ZB(n,Y)|0,f0=(s0|0)>-1;do if(f0){if(m0=t+32|0,q0=e[m0>>2]|0,c1=q0+(s0<<2)|0,a1=e[c1>>2]|0,d=(a1|0)<0,d){I=a1>>>15,C=I&32767,p=t+8|0,m=e[p>>2]|0,v=a1&32767,S=m-v|0,f1=S,l1=C;break}return w=a1+-1|0,y=t+28|0,D=e[y>>2]|0,b=D+w|0,R=u[b>>0]|0,_=R<<24>>24,WB(n,_),s=w,s|0}else L=t+8|0,M=e[L>>2]|0,f1=M,l1=0;while(!1);if(T=ZB(n,f)|0,G=(T|0)<0,N=(f|0)>1,P=G&N,P)for(z0=f;;)if(z=z0+-1|0,t0=ZB(n,z)|0,J=(t0|0)<0,W=(z|0)>1,e0=J&W,e0)z0=z;else{$=J,n1=t0,s1=z;break}else $=G,n1=T,s1=f;if($)return s=-1,s|0;if(H=n1>>>16,X=n1<<16,U=H|X,o0=U>>>8,Z=o0&16711935,V=U<<8,n0=V&-16711936,i0=Z|n0,r0=i0>>>4,K=r0&252645135,c0=i0<<4,A0=c0&-252645136,l0=K|A0,j=l0>>>2,$0=j&858993459,g0=l0<<2,Q0=g0&-858993460,d0=$0|Q0,y0=d0>>>1,h0=y0&1431655765,E0=d0<<1,C0=E0&-1431655766,u0=h0|C0,k0=f1-l1|0,J0=(k0|0)>1,J0)for(D0=t+20|0,x0=e[D0>>2]|0,M0=k0,g1=f1,$1=l1;;)if(F0=M0>>1,G0=F0+$1|0,p0=x0+(G0<<2)|0,H0=e[p0>>2]|0,R0=H0>>>0>u0>>>0,S0=R0?0:F0,L0=S0+$1|0,Y0=R0?F0:0,N0=g1-Y0|0,V0=N0-L0|0,T0=(V0|0)>1,T0)M0=V0,g1=N0,$1=L0;else{A1=L0;break}else A1=l1;return U0=t+28|0,r1=e[U0>>2]|0,O0=r1+A1|0,e1=u[O0>>0]|0,v0=e1<<24>>24,i1=(v0|0)>(s1|0),i1?(WB(n,s1),s=-1,s|0):(WB(n,v0),s=A1,s|0)}function Gv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0;for(c1=B,p=n+28|0,m=e[p>>2]|0,M=n+4|0,H=e[M>>2]|0,c0=t+4|0,e[c0>>2]=128,E0=t+8|0,e[E0>>2]=64,p0=m+2932|0,q0=e[p0>>2]|0,N0=t+12|0,e[N0>>2]=q0,e[t>>2]=H,V0=t+164|0,e[V0>>2]=128,v=m+4|0,S=e[v>>2]|0,w=(S|0)/2&-1,y=t+176|0,e[y>>2]=w,D=t4(128,4)|0,Q=t+36|0,e[Q>>2]=D,b=t+16|0,em(b,128),R=e[Q>>2]|0,O0=0;_=+(O0|0),L=_*.024736950028266088,T=+xn(+L),G=T,N=R+(O0<<2)|0,P=G*G,A[N>>2]=P,z=O0+1|0,r1=(z|0)==128,!r1;)O0=z;for(Y=t+40|0,e[Y>>2]=2,t0=t+44|0,e[t0>>2]=4,J=t+56|0,e[J>>2]=4,W=t+60|0,e[W>>2]=5,e0=t+72|0,e[e0>>2]=6,X=t+76|0,e[X>>2]=6,U=t+88|0,e[U>>2]=9,o0=t+92|0,e[o0>>2]=8,Z=t+104|0,e[Z>>2]=13,V=t+108|0,e[V>>2]=8,s0=t+120|0,e[s0>>2]=17,n0=t+124|0,e[n0>>2]=8,i0=t+136|0,e[i0>>2]=22,r0=t+140|0,e[r0>>2]=8,A0=4,v0=0;;){if(K=A0<<2,l0=k9(K)|0,j=((t+40|0)+(v0<<4)|0)+8|0,e[j>>2]=l0,$0=(A0|0)>0,$0){for(g0=+(A0|0),f0=((t+40|0)+(v0<<4)|0)+12|0,C=+A[f0>>2],D0=C,e1=0;;)if(Q0=+(e1|0),d0=Q0+.5,y0=d0/g0,h0=y0*3.141592653589793,C0=+xn(+h0),u0=C0,k0=l0+(e1<<2)|0,A[k0>>2]=u0,J0=D0+u0,m0=e1+1|0,T0=(m0|0)==(A0|0),T0){s=J0;break}else D0=J0,e1=m0;A[f0>>2]=s,d=f0,F0=s}else c=((t+40|0)+(v0<<4)|0)+12|0,I=+A[c>>2],d=c,F0=I;if(x0=1/F0,A[d>>2]=x0,M0=v0+1|0,U0=(M0|0)==7,U0)break;$=((t+40|0)+(M0<<4)|0)+4|0,f=e[$>>2]|0,A0=f,v0=M0}G0=H*7|0,H0=t4(G0,144)|0,R0=t+152|0,e[R0>>2]=H0,S0=e[V0>>2]|0,L0=t4(S0,4)|0,Y0=t+160|0,e[Y0>>2]=L0}function Nv(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0;G=B,n=t+16|0,tm(n),s=t+48|0,w=e[s>>2]|0,I2(w),D=t+64|0,Q=e[D>>2]|0,I2(Q),b=t+80|0,R=e[b>>2]|0,I2(R),_=t+96|0,L=e[_>>2]|0,I2(L),M=t+112|0,$=e[M>>2]|0,I2($),c=t+128|0,f=e[c>>2]|0,I2(f),d=t+144|0,I=e[d>>2]|0,I2(I),C=t+36|0,p=e[C>>2]|0,I2(p),m=t+152|0,v=e[m>>2]|0,I2(v),S=t+160|0,y=e[S>>2]|0,I2(y),Ae(t|0,0,180)|0}function Uv(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0;if(j1=B,f=t+4|0,d=e[f>>2]|0,L=d+28|0,e0=e[L>>2]|0,K=e0+2868|0,h0=t+104|0,G0=e[h0>>2]|0,U0=e[G0>>2]|0,A1=U0+168|0,p1=e[A1>>2]|0,I=U0+8|0,v=e[I>>2]|0,S=(p1|0)/(v|0)&-1,w=t+20|0,y=e[w>>2]|0,D=(y|0)/(v|0)&-1,Q=D+-4|0,b=(S|0)<0,n=b?0:S,R=D+2|0,_=U0+164|0,M=e[_>>2]|0,T=(R|0)>(M|0),T&&(e[_>>2]=R,G=U0+160|0,N=e[G>>2]|0,P=R<<2,z=Gi(N,P)|0,e[G>>2]=z),Y=(n|0)<(Q|0),Y)for(t0=U0+156|0,J=U0+160|0,W=t+8|0,H=U0+40|0,X=U0+152|0,v1=n;;){if(U=e[t0>>2]|0,o0=U+1|0,Z=(U|0)>23,$=Z?24:o0,e[t0>>2]=$,V=e[U0>>2]|0,s0=(V|0)>0,s0){for(G1=0,q1=0;;)if(c0=e[W>>2]|0,A0=c0+(G1<<2)|0,l0=e[A0>>2]|0,j=e[I>>2]|0,$0=i5(j,v1)|0,g0=l0+($0<<2)|0,f0=e[X>>2]|0,Q0=G1*7|0,d0=f0+(Q0*144|0)|0,y0=Hv(U0,K,g0,H,d0)|0,E0=y0|q1,C0=G1+1|0,u0=e[U0>>2]|0,k0=(C0|0)<(u0|0),k0)G1=C0,q1=E0;else{c=E0;break}J0=v1+2|0,D0=e[J>>2]|0,m0=D0+(J0<<2)|0,e[m0>>2]=0,x0=c&1,F0=(x0|0)==0,F0||(M0=D0+(v1<<2)|0,e[M0>>2]=1,p0=v1+1|0,H0=D0+(p0<<2)|0,e[H0>>2]=1),R0=c&2,S0=(R0|0)==0,S0||(L0=D0+(v1<<2)|0,e[L0>>2]=1,Y0=(v1|0)>0,Y0&&(q0=v1+-1|0,N0=D0+(q0<<2)|0,e[N0>>2]=1)),V0=c&4,T0=(V0|0)==0,T0||(e[t0>>2]=-1)}else n0=v1+2|0,i0=e[J>>2]|0,r0=i0+(n0<<2)|0,e[r0>>2]=0;if(r1=v1+1|0,Z1=(r1|0)==(Q|0),Z1)break;v1=r1}if(O0=e[I>>2]|0,e1=i5(O0,Q)|0,e[A1>>2]=e1,v0=t+48|0,i1=e[v0>>2]|0,c1=t+40|0,a1=e[c1>>2]|0,f1=e0+(a1<<2)|0,g1=e[f1>>2]|0,l1=(g1|0)/4&-1,$1=l1+i1|0,n1=e0+4|0,s1=e[n1>>2]|0,z0=(s1|0)/2&-1,I1=$1+z0|0,h1=e[e0>>2]|0,E1=(h1|0)/4&-1,u1=I1+E1|0,d1=U0+176|0,m1=e[d1>>2]|0,Q1=e1-O0|0,D1=(m1|0)<(Q1|0),!D1)return s=-1,s|0;for(_1=U0+160|0,K1=m1;;){if(x1=(K1|0)<(u1|0),!x1){s=1,Y1=22;break}if(e[d1>>2]=K1,L1=(K1|0)/(O0|0)&-1,N1=e[_1>>2]|0,w1=N1+(L1<<2)|0,U1=e[w1>>2]|0,C=(U1|0)!=0,p=(K1|0)>(i1|0),H1=p&C,y1=O0+K1|0,H1){P1=K1,Y1=21;break}if(k1=(y1|0)<(Q1|0),k1)K1=y1;else{s=-1,Y1=22;break}}return(Y1|0)==21?(m=U0+172|0,e[m>>2]=P1,s=0,s|0):(Y1|0)==22?s|0:0}function Ov(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0;if(E0=B,c=t+104|0,f=e[c>>2]|0,Q=e[f>>2]|0,Y=t+4|0,s0=e[Y>>2]|0,A0=s0+28|0,l0=e[A0>>2]|0,j=t+48|0,$0=e[j>>2]|0,g0=t+40|0,d=e[g0>>2]|0,I=l0+(d<<2)|0,C=e[I>>2]|0,p=(C|0)/4&-1,m=$0-p|0,v=p+$0|0,S=(d|0)==0,S?(N=e[l0>>2]|0,P=(N|0)/4&-1,s=P,$=P):(w=t+36|0,y=e[w>>2]|0,D=l0+(y<<2)|0,b=e[D>>2]|0,R=(b|0)/4&-1,_=t+44|0,L=e[_>>2]|0,M=l0+(L<<2)|0,T=e[M>>2]|0,G=(T|0)/4&-1,s=G,$=R),f0=m-$|0,Q0=v+s|0,z=Q+172|0,t0=e[z>>2]|0,J=(t0|0)>=(f0|0),W=(t0|0)<(Q0|0),y0=J&W,y0)return n=1,n|0;if(e0=Q+8|0,H=e[e0>>2]|0,X=(f0|0)/(H|0)&-1,U=(Q0|0)/(H|0)&-1,o0=(X|0)<(U|0),!o0)return n=0,n|0;for(Z=Q+160|0,V=e[Z>>2]|0,d0=X;;){if(r0=V+(d0<<2)|0,K=e[r0>>2]|0,c0=(K|0)==0,n0=d0+1|0,!c0){n=1,h0=9;break}if(i0=(n0|0)<(U|0),i0)d0=n0;else{n=0,h0=9;break}}return(h0|0)==9?n|0:0}function Pv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0;if(N=B,s=t+168|0,$=e[s>>2]|0,y=t+8|0,Q=e[y>>2]|0,b=($|0)/(Q|0)&-1,R=b+2|0,_=(n|0)/(Q|0)&-1,L=t+160|0,M=e[L>>2]|0,T=M+(_<<2)|0,c=R-_|0,f=c<<2,Ko(M|0,T|0,f|0)|0,d=e[s>>2]|0,I=d-n|0,e[s>>2]=I,C=t+172|0,p=e[C>>2]|0,m=(p|0)>-1,!m){S=t+176|0,w=e[S>>2]|0,D=w-n|0,e[S>>2]=D;return}v=p-n|0,e[C>>2]=v,S=t+176|0,w=e[S>>2]|0,D=w-n|0,e[S>>2]=D}function Hv(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0;if(u3=B,Y=t+4|0,t0=e[Y>>2]|0,a2=t+12|0,M2=+A[a2>>2],P2=t0<<2,b=P2,k2=B,B=B+((1*b|0)+15&-16)|0,D5=t+156|0,c2=e[D5>>2]|0,F2=(c2|0)>5,F5=(c2|0)/2&-1,f=F2?F5:2,J=n+60|0,i0=+A[J>>2],d0=F5+-2|0,F0=+(d0|0),V0=i0-F0,g1=V0<0,h6=g1?0:V0,d1=h6>i0,m3=d1?i0:h6,w1=(t0|0)>0,w1)for(r2=t+36|0,$2=e[r2>>2]|0,P5=0;i2=s+(P5<<2)|0,o2=+A[i2>>2],X1=$2+(P5<<2)|0,n2=+A[X1>>2],f2=n2*o2,e2=k2+(P5<<2)|0,A[e2>>2]=f2,y2=P5+1|0,C3=(y2|0)==(t0|0),!C3;)P5=y2;S2=t+16|0,Wp(S2,k2,k2),w2=+A[k2>>2],C2=w2*w2,_2=C2,G2=k2+4|0,u2=+A[G2>>2],K2=u2,N2=K2*K2,q2=N2*.7,T2=q2+_2,O2=k2+8|0,V2=+A[O2>>2],A5=V2,T1=A5*A5,j2=T1*.2,R5=T2+j2,X2=R5,v5=c+140|0,z2=e[v5>>2]|0,f5=(z2|0)==0,f5?(w5=c+136|0,O5=+A[w5>>2],a5=O5+X2,E5=c+132|0,A[E5>>2]=a5,A[w5>>2]=X2,T=E5,H2=a5):(r5=c+132|0,x2=+A[r5>>2],R2=x2+X2,A[r5>>2]=R2,B2=c+136|0,C5=+A[B2>>2],x5=C5+X2,A[B2>>2]=x5,T=r5,H2=R2),u5=(c+72|0)+(z2<<2)|0,S5=+A[u5>>2],G5=H2-S5,A[T>>2]=G5,A[u5>>2]=X2,I5=e[v5>>2]|0,s5=I5+1|0,l5=(I5|0)>13,d=l5?0:s5,e[v5>>2]=d,B5=(t0|0)/2&-1,M1=(t0|0)>1;e:do if(M1)for(k5=H2*.0625,c5=(A[p2>>2]=k5,e[p2>>2]|0),o5=c5&2147483647,Z2=+(o5>>>0),m5=Z2*7177114298428933e-22,e5=m5+-764.6162109375,n5=e5,g5=n5*.5,J2=g5+-15,h5=J2,R=h5,x0=w2,y5=0;;){if(m0=x0*x0,M0=y5|1,G0=k2+(M0<<2)|0,p0=+A[G0>>2],H0=p0*p0,R0=H0+m0,S0=(A[p2>>2]=R0,e[p2>>2]|0),L0=S0&2147483647,Y0=+(L0>>>0),q0=Y0*35885571492144663e-23,N0=q0+-382.30810546875,T0=N0>1,O0=k2+(r1<<2)|0,A[O0>>2]=z,e1=y5+2|0,v0=(e1|0)<(B5|0),!v0)break e;i1=R+-8,L=k2+(e1<<2)|0,M=+A[L>>2],R=i1,x0=M,y5=e1}while(!1);if(t5=(f|0)>0,t5)o3=0,N3=0;else{for(i3=0,V3=0;;){if(c1=($+(i3<<4)|0)+4|0,a1=e[c1>>2]|0,f1=(a1|0)>0,f1)for(l1=$+(i3<<4)|0,A1=e[l1>>2]|0,$1=($+(i3<<4)|0)+8|0,n1=e[$1>>2]|0,$3=0,G3=0;;)if(s1=A1+G3|0,z0=k2+(s1<<2)|0,I1=+A[z0>>2],h1=n1+(G3<<2)|0,E1=+A[h1>>2],u1=E1*I1,m1=u1+$3,p1=G3+1|0,Q1=(p1|0)<(a1|0),Q1)$3=m1,G3=p1;else{_3=m1;break}else _3=0;if(D1=($+(i3<<4)|0)+12|0,_1=+A[D1>>2],y1=_1*_3,k1=(c+(i3*144|0)|0)+68|0,x1=e[k1>>2]|0,L1=(x1|0)<1,p=L1?16:-1,I=p+x1|0,N1=(c+(i3*144|0)|0)+(I<<2)|0,U1=+A[N1>>2],Z1=y1U1,v=v1?U1:y1,K1=v+-99999,P1=G1+99999,H1=(c+(i3*144|0)|0)+(x1<<2)|0,A[H1>>2]=y1,q1=e[k1>>2]|0,Y1=q1+1|0,j1=(q1|0)>15,D=j1?0:Y1,e[k1>>2]=D,W1=(n+4|0)+(i3<<2)|0,O1=+A[W1>>2],l2=O1+m3,z1=P1>l2,h2=V3|5,z5=z1?h2:V3,A2=(n+32|0)+(i3<<2)|0,d2=+A[A2>>2],s2=d2-m3,V1=K1>2]|0,$5=(W2|0)>0,$5)for(Q0=$+(o3<<4)|0,n0=e[Q0>>2]|0,y0=($+(o3<<4)|0)+8|0,A0=e[y0>>2]|0,a3=0,L5=0;;)if(s0=n0+L5|0,r0=k2+(s0<<2)|0,K=+A[r0>>2],c0=A0+(L5<<2)|0,l0=+A[c0>>2],j=l0*K,$0=j+a3,g0=L5+1|0,f0=(g0|0)<(W2|0),f0)a3=$0,L5=g0;else{T3=$0;break}else T3=0;for(h0=($+(o3<<4)|0)+12|0,E0=+A[h0>>2],g3=E0*T3,t3=(c+(o3*144|0)|0)+68|0,f3=e[t3>>2]|0,C0=(f3|0)<1,m=C0?16:-1,C=m+f3|0,u0=(c+(o3*144|0)|0)+(C<<2)|0,k0=+A[u0>>2],J0=g3k0,S=D0?k0:g3,t6=0,R3=C,w3=-99999,p3=99999;;)if(e0=(R3|0)<1,y=e0?16:-1,w=y+R3|0,H=(c+(o3*144|0)|0)+(w<<2)|0,X=+A[H>>2],U=w3X,G=Z?X:p3,V=t6+1|0,Y5=(V|0)==(f|0),Y5){_=o0,N=G;break}else t6=V,R3=w,w3=o0,p3=G;if(p5=S-N,q5=e3-_,d5=(c+(o3*144|0)|0)+(f3<<2)|0,A[d5>>2]=g3,K5=e[t3>>2]|0,A3=K5+1|0,E3=(K5|0)>15,Q=E3?0:A3,e[t3>>2]=Q,V5=(n+4|0)+(o3<<2)|0,y3=+A[V5>>2],h3=y3+m3,B3=q5>h3,q3=N3|5,k3=B3?q3:N3,M3=(n+32|0)+(o3<<2)|0,Z5=+A[M3>>2],Q3=Z5-m3,j5=p5>2]|0,C2=n+1288|0,z3=e[C2>>2]|0,F3=n+1284|0,d6=e[F3>>2]|0,I9=(d6|0)>0,I9){for(g8=0;W4=C4+(g8<<2)|0,e[W4>>2]=-200,de=g8+1|0,Ee=(de|0)==(d6|0),!Ee;)g8=de;if(I9){for(H3=0;g4=$4+(H3<<2)|0,e[g4>>2]=-200,W=H3+1|0,o4=(W|0)==(d6|0),!o4;)H3=W;if(I9){for(r0=d6<<2,Ae(F8|0,0,r0|0)|0,Q9=0;y0=ve+(Q9<<2)|0,e[y0>>2]=1,M0=Q9+1|0,Ge=(M0|0)==(d6|0),!Ge;)Q9=M0;if(I9){if(l1=d6<<2,Ae(V8|0,-1,l1|0)|0,m1=(d6|0)>1,!m1)return te=0,B=j9,te|0;for(U1=z3+-1|0,W1=J+1112|0,t2=d6+-1|0,M=e[n>>2]|0,d4=M,C9=0,Ce=0;;){v4=C9+1|0,S4=n+(v4<<2)|0,_4=e[S4>>2]|0,M4=U6+(C9*56|0)|0,xe=M4,D7=xe+56|0;do e[xe>>2]=0,xe=xe+4|0;while((xe|0)<(D7|0));if(e[M4>>2]=d4,T4=(U6+(C9*56|0)|0)+4|0,e[T4>>2]=_4,G9=(_4|0)<(z3|0),X8=G9?_4:U1,G4=(X8|0)<(d4|0),G4)y8=0,W8=0,v8=0,S8=0,d8=0,Re=0,e7=0,P9=0,Y8=0,b8=0,O7=0,P7=0;else for(Q4=d4,h8=0,Ne=0,P4=0,Z9=0,Be=0,r8=0,I3=0,S9=0,A8=0,B9=0,s7=0,_8=0;;){A4=$+(Q4<<2)|0,P=+A[A4>>2],R4=P*7.314285755157471,c4=R4+1023.5,Ie=~~c4,O9=(Ie|0)>1023,d9=(Ie|0)<0,d=d9?0:Ie,v=O9?1023:d,Me=(v|0)==0;do if(Me)O8=h8,je=Ne,e8=P4,I8=Z9,Oe=Be,B4=r8,C8=I3,H8=S9,q4=A8,Ye=B9,ne=s7,J8=_8;else if(ze=s+(Q4<<2)|0,N4=+A[ze>>2],Te=+A[W1>>2],U4=Te+N4,j4=!(U4>=P),j4){oe=Q4+r8|0,z9=v+_8|0,$e=i5(Q4,Q4)|0,ae=$e+Z9|0,E4=i5(v,v)|0,e0=E4+B9|0,H=i5(v,Q4)|0,X=H+S9|0,U=Ne+1|0,O8=h8,je=U,e8=P4,I8=ae,Oe=Be,B4=oe,C8=I3,H8=X,q4=A8,Ye=e0,ne=s7,J8=z9;break}else{ke=Q4+Be|0,Ze=v+s7|0,V9=i5(Q4,Q4)|0,se=V9+P4|0,D6=i5(v,v)|0,O4=D6+A8|0,R9=i5(v,Q4)|0,s4=R9+I3|0,D4=h8+1|0,O8=D4,je=Ne,e8=se,I8=Z9,Oe=ke,B4=r8,C8=s4,H8=S9,q4=O4,Ye=B9,ne=Ze,J8=_8;break}while(!1);if(o0=Q4+1|0,Z=(Q4|0)<(X8|0),Z)Q4=o0,h8=O8,Ne=je,P4=e8,Z9=I8,Be=Oe,r8=B4,I3=C8,S9=H8,A8=q4,B9=Ye,s7=ne,_8=J8;else{y8=O8,W8=je,v8=e8,S8=I8,d8=Oe,Re=B4,e7=C8,P9=H8,Y8=q4,b8=Ye,O7=ne,P7=J8;break}}if(V=(U6+(C9*56|0)|0)+8|0,e[V>>2]=d8,s0=(U6+(C9*56|0)|0)+12|0,e[s0>>2]=O7,n0=(U6+(C9*56|0)|0)+16|0,e[n0>>2]=v8,i0=(U6+(C9*56|0)|0)+20|0,e[i0>>2]=Y8,K=(U6+(C9*56|0)|0)+24|0,e[K>>2]=e7,c0=(U6+(C9*56|0)|0)+28|0,e[c0>>2]=y8,A0=(U6+(C9*56|0)|0)+32|0,e[A0>>2]=Re,l0=(U6+(C9*56|0)|0)+36|0,e[l0>>2]=P7,j=(U6+(C9*56|0)|0)+40|0,e[j>>2]=S8,$0=(U6+(C9*56|0)|0)+44|0,e[$0>>2]=b8,g0=(U6+(C9*56|0)|0)+48|0,e[g0>>2]=P9,f0=(U6+(C9*56|0)|0)+52|0,e[f0>>2]=W8,Q0=y8+Ce|0,a6=(v4|0)==(t2|0),a6){h7=Q0;break}else d4=_4,C9=v4,Ce=Q0}}else fe=9}else fe=9}else fe=9}else fe=9;if((fe|0)==9){if(T0=(d6|0)==0,!T0)return te=0,B=j9,te|0;M2=U6+4|0,xe=U6,D7=xe+56|0;do e[xe>>2]=0,xe=xe+4|0;while((xe|0)<(D7|0));if(e[M2>>2]=z3,P2=(z3|0)<1,P2)N8=0,Z8=0,P8=0,u8=0,i8=0,W9=0,E8=0,ie=0,r7=0,n7=0,L7=0,M7=0;else for(k2=J+1112|0,a4=0,w8=0,f8=0,Xe=0,ce=0,ge=0,he=0,H4=0,re=0,n8=0,qe=0,k7=0,s8=0;;){D5=$+(a4<<2)|0,N=+A[D5>>2],c2=N*7.314285755157471,F2=c2+1023.5,F5=~~F2,_3=(F5|0)>1023,L5=(F5|0)<0,f=L5?0:F5,m=_3?1023:f,N3=(m|0)==0;do if(N3)U8=w8,be=f8,_e=Xe,t8=ce,Ue=ge,me=he,Pe=H4,He=re,D8=n8,A7=qe,v7=k7,S7=s8;else if($6=s+(a4<<2)|0,P3=+A[$6>>2],e6=+A[k2>>2],r9=e6+P3,x6=!(r9>=N),x6){g9=a4+he|0,h9=m+s8|0,f9=i5(a4,a4)|0,s9=f9+ce|0,o9=i5(m,m)|0,L9=o9+qe|0,M6=i5(m,a4)|0,e9=M6+re|0,M9=f8+1|0,U8=w8,be=M9,_e=Xe,t8=s9,Ue=ge,me=g9,Pe=H4,He=e9,D8=n8,A7=L9,v7=k7,S7=h9;break}else{N6=a4+ge|0,S6=m+k7|0,V6=i5(a4,a4)|0,Q6=V6+Xe|0,F6=i5(m,m)|0,L6=F6+n8|0,X6=i5(m,a4)|0,A9=X6+H4|0,W6=w8+1|0,U8=W6,be=f8,_e=Q6,t8=ce,Ue=N6,me=he,Pe=A9,He=re,D8=L6,A7=qe,v7=S6,S7=s8;break}while(!1);if(u9=a4+1|0,E9=(u9|0)==(z3|0),E9){N8=U8,Z8=be,P8=_e,u8=t8,i8=Ue,W9=me,E8=Pe,ie=He,r7=D8,n7=A7,L7=v7,M7=S7;break}else a4=u9,w8=U8,f8=be,Xe=_e,ce=t8,ge=Ue,he=me,H4=Pe,re=He,n8=D8,qe=A7,k7=v7,s8=S7}u4=U6+8|0,e[u4>>2]=i8,r4=U6+12|0,e[r4>>2]=L7,l4=U6+16|0,e[l4>>2]=P8,T9=U6+20|0,e[T9>>2]=r7,K9=U6+24|0,e[K9>>2]=E8,v9=U6+28|0,e[v9>>2]=N8,P6=U6+32|0,e[P6>>2]=W9,t9=U6+36|0,e[t9>>2]=M7,I4=U6+40|0,e[I4>>2]=u8,k4=U6+44|0,e[k4>>2]=n7,n4=U6+48|0,e[n4>>2]=ie,p9=U6+52|0,e[p9>>2]=Z8,h7=N8}if(d0=(h7|0)==0,d0)return te=0,B=j9,te|0;e[i7>>2]=-200,e[q8>>2]=-200,h0=d6+-1|0,jB(U6,h0,i7,q8,J)|0,E0=e[i7>>2]|0,e[C4>>2]=E0,e[$4>>2]=E0,C0=e[q8>>2]|0,u0=$4+4|0,e[u0>>2]=C0,k0=C4+4|0,e[k0>>2]=C0,J0=(d6|0)>2;do if(J0){D0=J+1112|0,m0=J+1096|0,x0=J+1100|0,F0=J+1104|0,F4=2;e:for(;;){G0=(n+520|0)+(F4<<2)|0,p0=e[G0>>2]|0,H0=F8+(p0<<2)|0,R0=e[H0>>2]|0,S0=ve+(p0<<2)|0,L0=e[S0>>2]|0,Y0=V8+(R0<<2)|0,q0=e[Y0>>2]|0,N0=(q0|0)==(L0|0);t:do if(!N0){if(V0=(n+520|0)+(R0<<2)|0,U0=e[V0>>2]|0,r1=(n+520|0)+(L0<<2)|0,O0=e[r1>>2]|0,e[Y0>>2]=L0,e1=(J+836|0)+(R0<<2)|0,v0=e[e1>>2]|0,i1=(J+836|0)+(L0<<2)|0,c1=e[i1>>2]|0,a1=C4+(R0<<2)|0,f1=e[a1>>2]|0,g1=(f1|0)<0,A1=$4+(R0<<2)|0,$1=e[A1>>2]|0,g1?y=$1:(n1=($1|0)<0,n1?y=f1:(s1=$1+f1|0,z0=s1>>1,y=z0)),I1=C4+(L0<<2)|0,h1=e[I1>>2]|0,E1=(h1|0)<0,u1=$4+(L0<<2)|0,d1=e[u1>>2]|0,E1?Q=d1:(p1=(d1|0)<0,p1?Q=h1:(Q1=d1+h1|0,D1=Q1>>1,Q=D1)),_1=(y|0)==-1,y1=(Q|0)==-1,y7=_1|y1,y7){fe=38;break e}k1=Q-y|0,x1=c1-v0|0,De=(k1|0)>-1,y9=0-k1|0,L1=De?k1:y9,N1=(k1|0)/(x1|0)&-1,w1=k1>>31,Z1=w1|1,G1=$+(v0<<2)|0,Y=+A[G1>>2],v1=Y*7.314285755157471,K1=v1+1023.5,P1=~~K1,H1=(P1|0)>1023,q1=(P1|0)<0,I=q1?0:P1,S=H1?1023:I,Y1=i5(N1,x1)|0,a7=(Y1|0)>-1,g7=0-Y1|0,j1=a7?Y1:g7,r2=L1-j1|0,O1=y-S|0,l2=i5(O1,O1)|0,z1=s+(v0<<2)|0,h2=+A[z1>>2],A2=+A[D0>>2],d2=A2+h2,s2=!(d2>=Y),s2?fe=42:(V1=+(y|0),g2=+A[m0>>2],$2=g2+V1,a2=+(S|0),i2=$2>2],X1=V1-o2,n2=X1>a2,n2||(fe=42)));i:do if((fe|0)==42){if(fe=0,f2=v0+1|0,e2=(f2|0)<(c1|0),e2)for(u2=f2,X4=0,Q7=l2,G8=1,f7=y;;){if(y2=X4+r2|0,S2=(y2|0)<(x1|0),w2=S2?0:Z1,_2=S2?0:x1,x4=y2-_2|0,L=f7+N1|0,t7=L+w2|0,G2=$+(u2<<2)|0,z=+A[G2>>2],K2=z*7.314285755157471,N2=K2+1023.5,q2=~~N2,T2=(q2|0)>1023,O2=(q2|0)<0,C=O2?0:q2,D=T2?1023:C,V2=t7-D|0,A5=i5(V2,V2)|0,T1=A5+Q7|0,j2=G8+1|0,R5=s+(u2<<2)|0,X2=+A[R5>>2],v5=X2+A2,z2=v5>=z,f5=(D|0)!=0,j8=z2&f5,j8&&(w5=+(t7|0),O5=+A[m0>>2],a5=O5+w5,E5=+(D|0),r5=a5>2],R2=w5-x2,B2=R2>E5,B2)))break i;if(C5=u2+1|0,x5=(C5|0)<(c1|0),x5)u2=C5,X4=x4,Q7=T1,G8=j2,f7=t7;else{z8=T1,T8=j2;break}}else z8=l2,T8=1;if(u5=+A[m0>>2],S5=u5*u5,G5=+(T8|0),H2=S5/G5,I5=+A[F0>>2],s5=H2>I5,!s5&&(l5=+A[x0>>2],B5=l5*l5,M1=B5/G5,k5=M1>I5,!k5&&(c5=(z8|0)/(T8|0)&-1,o5=+(c5|0),Z2=o5>I5,Z2)))break;a3=C4+(F4<<2)|0,e[a3>>2]=-200,l3=$4+(F4<<2)|0,e[l3>>2]=-200;break t}while(!1);if(e[L8>>2]=-200,e[M8>>2]=-200,e[Se>>2]=-200,e[We>>2]=-200,m5=U6+(U0*56|0)|0,e5=p0-U0|0,n5=jB(m5,e5,L8,M8,J)|0,g5=U6+(p0*56|0)|0,J2=O0-p0|0,h5=jB(g5,J2,Se,We,J)|0,t5=(n5|0)!=0,t5&&(e[L8>>2]=y,b5=e[Se>>2]|0,e[M8>>2]=b5),W2=(h5|0)==0,!W2&&($5=e[M8>>2]|0,e[Se>>2]=$5,e[We>>2]=Q,t5)){p5=C4+(F4<<2)|0,e[p5>>2]=-200,q5=$4+(F4<<2)|0,e[q5>>2]=-200;break}if(e3=e[L8>>2]|0,e[A1>>2]=e3,d5=(R0|0)==0,d5&&(e[C4>>2]=e3),f3=e[M8>>2]|0,g3=C4+(F4<<2)|0,e[g3>>2]=f3,K5=e[Se>>2]|0,t3=$4+(F4<<2)|0,e[t3>>2]=K5,A3=e[We>>2]|0,e[I1>>2]=A3,E3=(L0|0)==1,E3&&(e[u0>>2]=A3),V5=K5&f3,y3=(V5|0)>-1,y3){h3=(p0|0)>0;i:do if(h3)for(K8=p0;;){if(p7=K8+-1|0,q3=ve+(p7<<2)|0,M3=e[q3>>2]|0,Z5=(M3|0)==(L0|0),!Z5)break i;if(e[q3>>2]=F4,Q3=(K8|0)>1,Q3)K8=p7;else break}while(!1);if(c7=p0+1|0,B3=(c7|0)<(d6|0),B3)for(x8=c7;;){if(j5=F8+(x8<<2)|0,j3=e[j5>>2]|0,T3=(j3|0)==(R0|0),!T3)break t;if(e[j5>>2]=F4,l7=x8+1|0,$3=(l7|0)<(d6|0),$3)x8=l7;else break}}}while(!1);if(C3=F4+1|0,Y5=(C3|0)<(d6|0),Y5)F4=C3;else{fe=68;break}}if((fe|0)==38)cv(1);else if((fe|0)==68){T=e[C4>>2]|0,G=e[$4>>2]|0,y5=T,t6=G;break}}else y5=E0,t6=E0;while(!1);if(N5=d6<<2,P5=U7(t,N5)|0,G3=(y5|0)<0,G3?w=t6:(i3=(t6|0)<0,i3?w=y5:(o3=t6+y5|0,R3=o3>>1,w=R3)),e[P5>>2]=w,h6=e[k0>>2]|0,m3=(h6|0)<0,w3=e[u0>>2]|0,m3?R=w3:(p3=(w3|0)<0,p3?R=h6:(X3=w3+h6|0,V3=X3>>1,R=V3)),z5=P5+4|0,e[z5>>2]=R,J0)ee=2;else return te=P5,B=j9,te|0;for(;;)if(k3=ee+-2|0,c3=(n+1032|0)+(k3<<2)|0,U3=e[c3>>2]|0,o6=(n+780|0)+(k3<<2)|0,u3=e[o6>>2]|0,y6=(J+836|0)+(U3<<2)|0,w6=e[y6>>2]|0,k6=(J+836|0)+(u3<<2)|0,B6=e[k6>>2]|0,m6=P5+(U3<<2)|0,_6=e[m6>>2]|0,Y6=P5+(u3<<2)|0,C6=e[Y6>>2]|0,v3=(J+836|0)+(ee<<2)|0,Z3=e[v3>>2]|0,W3=_6&32767,f6=C6&32767,O3=f6-W3|0,S3=B6-w6|0,$7=(O3|0)>-1,k8=0-O3|0,Y3=$7?O3:k8,v6=Z3-w6|0,i6=i5(Y3,v6)|0,r3=(i6|0)/(S3|0)&-1,O6=(O3|0)<0,s3=0-r3|0,_=O6?s3:r3,b=_+W3|0,r6=C4+(ee<<2)|0,u6=e[r6>>2]|0,D3=(u6|0)<0,T6=$4+(ee<<2)|0,p6=e[T6>>2]|0,D3?p=p6:(R6=(p6|0)<0,R6?p=u6:(K6=p6+u6|0,I6=K6>>1,p=I6)),J6=(p|0)<0,x3=(b|0)==(p|0),w7=J6|x3,Z6=b|32768,c=w7?Z6:p,G6=P5+(ee<<2)|0,e[G6>>2]=c,j6=ee+1|0,le=(j6|0)==(d6|0),le){te=P5;break}else ee=j6;return B=j9,te|0}function R8(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0;if(s0=B,f=n+1284|0,d=e[f>>2]|0,b=(s|0)!=0,z=($|0)!=0,o0=b&z,!o0)return Z=0,Z|0;if(Y=d<<2,t0=U7(t,Y)|0,J=(d|0)>0,!J)return Z=t0,Z|0;for(W=65536-c|0,U=0;;)if(e0=s+(U<<2)|0,H=e[e0>>2]|0,I=H&32767,C=i5(I,W)|0,p=$+(U<<2)|0,m=e[p>>2]|0,v=m&32767,S=i5(v,c)|0,w=C+32768|0,y=w+S|0,D=y>>16,Q=t0+(U<<2)|0,e[Q>>2]=D,R=e[e0>>2]|0,_=R&32768,L=(_|0)==0,L||(M=e[p>>2]|0,T=M&32768,G=(T|0)==0,G||(N=D|32768,e[Q>>2]=N)),P=U+1|0,X=(P|0)==(d|0),X){Z=t0;break}else U=P;return Z|0}function qv(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,B6=0,z3=0,$6=0,m6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,s3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0;if(L6=B,B=B+336|0,x6=L6+64|0,c3=L6+32|0,x3=L6,D=s+1296|0,Q=e[D>>2]|0,g2=s+1284|0,x2=e[g2>>2]|0,s5=n+64|0,n5=e[s5>>2]|0,e3=n5+4|0,h3=e[e3>>2]|0,a3=h3+28|0,o3=e[a3>>2]|0,b=o3+2848|0,t0=e[b>>2]|0,n0=($|0)==0,n0)return U2(t,0,1),R5=n+36|0,X2=e[R5>>2]|0,v5=(X2|0)/2&-1,z2=v5<<2,Ae(c|0,0,z2|0)|0,d=0,B=L6,d|0;if(Q0=(x2|0)>0,Q0)for(x0=Q+832|0,f6=0;N0=$+(f6<<2)|0,f1=e[N0>>2]|0,u1=f1&32767,N1=e[x0>>2]|0,(N1|0)==4?(V2=u1>>>4,N6=V2):(N1|0)==1?(j1=u1>>>2,N6=j1):(N1|0)==2?($2=u1>>>3,N6=$2):(N1|0)==3?(w2=(u1>>>0)/12&-1,N6=w2):N6=u1,f5=f1&32768,w5=f5|N6,e[N0>>2]=w5,O5=f6+1|0,C6=(O5|0)==(x2|0),!C6;)f6=O5;if(a5=e[$>>2]|0,e[x6>>2]=a5,k2=$+4|0,E5=e[k2>>2]|0,r5=x6+4|0,e[r5>>2]=E5,R2=(x2|0)>2,B2=s+1292|0,R2){for(O3=2;;){if(C5=O3+-2|0,x5=(s+1032|0)+(C5<<2)|0,u5=e[x5>>2]|0,S5=(s+780|0)+(C5<<2)|0,G5=e[S5>>2]|0,D5=(Q+836|0)+(u5<<2)|0,H2=e[D5>>2]|0,I5=(Q+836|0)+(G5<<2)|0,l5=e[I5>>2]|0,B5=$+(u5<<2)|0,M1=e[B5>>2]|0,k5=$+(G5<<2)|0,c5=e[k5>>2]|0,o5=(Q+836|0)+(O3<<2)|0,Z2=e[o5>>2]|0,c2=M1&32767,m5=c5&32767,e5=m5-c2|0,g5=l5-H2|0,P3=(e5|0)>-1,Z6=0-e5|0,J2=P3?e5:Z6,h5=Z2-H2|0,t5=i5(J2,h5)|0,b5=(t5|0)/(g5|0)&-1,W2=(e5|0)<0,$5=0-b5|0,C=W2?$5:b5,I=C+c2|0,F2=$+(O3<<2)|0,p5=e[F2>>2]|0,q5=p5&32768,d5=(q5|0)!=0,f3=(p5|0)==(I|0),r9=d5|f3,r9)g3=I|32768,e[F2>>2]=g3,K5=x6+(O3<<2)|0,e[K5>>2]=0;else{t3=e[B2>>2]|0,A3=t3-I|0,E3=(A3|0)<(I|0),f=E3?A3:I,F5=p5-I|0,V5=(F5|0)<0;do if(V5)if(y3=0-f|0,B3=(F5|0)<(y3|0),B3){q3=F5^-1,M3=f+q3|0,S6=M3;break}else{Z5=F5<<1,Q3=Z5^-1,S6=Q3;break}else if(j5=(f|0)>(F5|0),j5){_3=F5<<1,S6=_3;break}else{j3=f+F5|0,S6=j3;break}while(!1);T3=x6+(O3<<2)|0,e[T3>>2]=S6,e[B5>>2]=c2,$3=e[k5>>2]|0,l3=$3&32767,e[k5>>2]=l3}if(C3=O3+1|0,Y6=(C3|0)==(x2|0),Y6)break;O3=C3}v=e[x6>>2]|0,S=e[r5>>2]|0,X3=v,k3=S}else X3=a5,k3=E5;if(U2(t,1,1),Y5=s+1308|0,N5=e[Y5>>2]|0,P5=N5+1|0,e[Y5>>2]=P5,y5=e[B2>>2]|0,G3=y5+-1|0,L5=F7(G3)|0,t6=L5<<1,i3=s+1304|0,R3=e[i3>>2]|0,h6=R3+t6|0,e[i3>>2]=h6,m3=e[B2>>2]|0,w3=m3+-1|0,p3=F7(w3)|0,U2(t,X3,p3),V3=e[B2>>2]|0,N3=V3+-1|0,z5=F7(N3)|0,U2(t,k3,z5),R=e[Q>>2]|0,_=(R|0)>0,_)for(L=s+1300|0,S3=0,i6=2;;){if(M=(Q+4|0)+(S3<<2)|0,T=e[M>>2]|0,G=(Q+128|0)+(T<<2)|0,N=e[G>>2]|0,P=(Q+192|0)+(T<<2)|0,z=e[P>>2]|0,Y=1<>2]=0,e[c3+4>>2]=0,e[c3+8>>2]=0,e[c3+12>>2]=0,e[c3+16>>2]=0,e[c3+20>>2]=0,e[c3+24>>2]=0,e[c3+28>>2]=0,J=(z|0)==0,!J){if(e[x3>>2]=0,e[x3+4>>2]=0,e[x3+8>>2]=0,e[x3+12>>2]=0,e[x3+16>>2]=0,e[x3+20>>2]=0,e[x3+24>>2]=0,e[x3+28>>2]=0,W=(z|0)==31,!W)for(s3=0;$0=((Q+320|0)+(T<<5)|0)+(s3<<2)|0,g0=e[$0>>2]|0,f0=(g0|0)<0,f0?y=1:(d0=(o3+1824|0)+(g0<<2)|0,y0=e[d0>>2]|0,h0=y0+4|0,E0=e[h0>>2]|0,y=E0),C0=x3+(s3<<2)|0,e[C0>>2]=y,u0=s3+1|0,k0=(u0|0)<(Y|0),k0;)s3=u0;e0=(N|0)>0;e:do if(e0){if(W)for(U3=0,y6=0,r6=0;;)if(J0=c3+(r6<<2)|0,D0=e[J0>>2]|0,m0=D0<>2]|0,T6=0;;){if(H=x3+(T6<<2)|0,X=e[H>>2]|0,o0=(U|0)<(X|0),o0){e6=T6,F3=31;break}if(Z=T6+1|0,V=(Z|0)<(Y|0),V)T6=Z;else{F3=33;break}}if((F3|0)==31?(F3=0,s0=c3+(u6<<2)|0,e[s0>>2]=e6,r0=e6):(F3|0)==33&&(F3=0,p=c3+(u6<<2)|0,w=e[p>>2]|0,r0=w),i0=r0<>2]|0,R0=t0+(H0*56|0)|0,S0=Dh(R0,u3,t)|0,L0=e[L>>2]|0,Y0=L0+S0|0,e[L>>2]=Y0}if(q0=(N|0)>0,q0)for(D3=0;V0=c3+(D3<<2)|0,T0=e[V0>>2]|0,U0=((Q+320|0)+(T<<5)|0)+(T0<<2)|0,r1=e[U0>>2]|0,O0=(r1|0)>-1,O0&&(e1=D3+i6|0,v0=x6+(e1<<2)|0,i1=e[v0>>2]|0,c1=(t0+(r1*56|0)|0)+4|0,a1=e[c1>>2]|0,g1=(i1|0)<(a1|0),g1&&(l1=t0+(r1*56|0)|0,A1=Dh(l1,i1,t)|0,$1=e[i3>>2]|0,n1=$1+A1|0,e[i3>>2]=n1)),s1=D3+1|0,m6=(s1|0)==(N|0),!m6;)D3=s1;if(z0=N+i6|0,I1=S3+1|0,h1=e[Q>>2]|0,E1=(I1|0)<(h1|0),E1)S3=I1,i6=z0;else break}if(d1=e[$>>2]|0,m1=Q+832|0,p1=e[m1>>2]|0,Q1=i5(p1,d1)|0,D1=n+28|0,_1=e[D1>>2]|0,y1=o3+(_1<<2)|0,k1=e[y1>>2]|0,x1=(k1|0)/2&-1,L1=e[g2>>2]|0,w1=(L1|0)>1,w1)for(Z3=0,r3=1,p6=0,I6=Q1;;){if(K1=(s+260|0)+(r3<<2)|0,P1=e[K1>>2]|0,H1=$+(P1<<2)|0,q1=e[H1>>2]|0,Y1=q1&32767,r2=(Y1|0)==(q1|0),r2)if(W1=e[m1>>2]|0,O1=i5(W1,q1)|0,l2=(Q+836|0)+(P1<<2)|0,z1=e[l2>>2]|0,h2=O1-I6|0,A2=z1-p6|0,Y3=(h2|0)>-1,G6=0-h2|0,d2=Y3?h2:G6,s2=(h2|0)/(A2|0)&-1,V1=h2>>31,t2=V1|1,a2=i5(s2,A2)|0,v6=(a2|0)>-1,j6=0-a2|0,i2=v6?a2:j6,o2=d2-i2|0,X1=(x1|0)>(z1|0),V6=X1?z1:x1,n2=(V6|0)>(p6|0),n2&&(f2=c+(p6<<2)|0,e[f2>>2]=I6),e2=p6+1|0,y2=(e2|0)<(V6|0),y2)for(u2=e2,k6=0,Q6=I6;;)if(S2=k6+o2|0,C2=(S2|0)<(A2|0),M2=C2?0:t2,_2=C2?0:A2,B6=S2-_2|0,m=Q6+s2|0,F6=m+M2|0,G2=c+(u2<<2)|0,e[G2>>2]=F6,K2=u2+1|0,$6=(K2|0)==(V6|0),$6){W3=z1,R6=z1,J6=O1;break}else u2=K2,k6=B6,Q6=F6;else W3=z1,R6=z1,J6=O1;else W3=Z3,R6=p6,J6=I6;if(N2=r3+1|0,q2=e[g2>>2]|0,T2=(N2|0)<(q2|0),T2)Z3=W3,r3=N2,p6=R6,I6=J6;else{v3=W3,K6=J6;break}}else v3=0,K6=Q1;if(U1=n+36|0,Z1=e[U1>>2]|0,G1=(Z1|0)/2&-1,v1=(v3|0)<(G1|0),v1)O6=v3;else return d=1,B=L6,d|0;for(;;)if(O2=c+(O6<<2)|0,e[O2>>2]=K6,A5=O6+1|0,P2=e[U1>>2]|0,T1=(P2|0)/2&-1,j2=(A5|0)<(T1|0),j2)O6=A5;else{d=1;break}return B=L6,d|0}function jB(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0;if(A5=B,p=e[t>>2]|0,m=n+-1|0,i0=(t+(m*56|0)|0)+4|0,d0=e[i0>>2]|0,F0=(n|0)>0,F0)for(V0=c+1108|0,g1=+A[V0>>2],t2=0,X1=0,f2=0,w2=0,G2=0,q2=0;;)if(d1=(t+(X1*56|0)|0)+52|0,w1=e[d1>>2]|0,r2=(t+(X1*56|0)|0)+28|0,v=e[r2>>2]|0,T=v+w1|0,H=+(T|0),X=H*g1,U=v+1|0,o0=+(U|0),Z=X/o0,V=Z,s0=V+1,n0=(t+(X1*56|0)|0)+32|0,r0=e[n0>>2]|0,K=+(r0|0),c0=(t+(X1*56|0)|0)+8|0,A0=e[c0>>2]|0,l0=+(A0|0),j=l0*s0,$0=K+w2,g0=$0+j,f0=(t+(X1*56|0)|0)+36|0,Q0=e[f0>>2]|0,y0=+(Q0|0),h0=(t+(X1*56|0)|0)+12|0,E0=e[h0>>2]|0,C0=+(E0|0),u0=C0*s0,k0=y0+q2,J0=k0+u0,D0=(t+(X1*56|0)|0)+40|0,m0=e[D0>>2]|0,x0=+(m0|0),M0=(t+(X1*56|0)|0)+16|0,G0=e[M0>>2]|0,p0=+(G0|0),H0=p0*s0,R0=x0+f2,S0=R0+H0,L0=(t+(X1*56|0)|0)+48|0,Y0=e[L0>>2]|0,q0=+(Y0|0),N0=(t+(X1*56|0)|0)+24|0,T0=e[N0>>2]|0,U0=+(T0|0),r1=U0*s0,O0=q0+G2,e1=O0+r1,v0=+(w1|0),i1=+(v|0),c1=s0*i1,a1=v0+t2,f1=a1+c1,l1=X1+1|0,o2=(l1|0)==(n|0),o2){$2=f1,n2=S0,S2=g0,_2=e1,N2=J0;break}else t2=f1,X1=l1,f2=S0,w2=g0,G2=e1,q2=J0;else $2=0,n2=0,S2=0,_2=0,N2=0;return A1=e[s>>2]|0,$1=(A1|0)>-1,$1?(n1=+(p|0),s1=S2+n1,z0=+(A1|0),I1=z0+N2,h1=i5(p,p)|0,E1=+(h1|0),u1=n2+E1,m1=i5(A1,p)|0,p1=+(m1|0),Q1=p1+_2,D1=$2+1,a2=D1,e2=u1,C2=s1,u2=Q1,T2=I1):(a2=$2,e2=n2,C2=S2,u2=_2,T2=N2),_1=e[$>>2]|0,y1=(_1|0)>-1,y1?(k1=+(d0|0),x1=C2+k1,L1=+(_1|0),N1=L1+T2,U1=i5(d0,d0)|0,Z1=+(U1|0),G1=e2+Z1,v1=i5(_1,d0)|0,K1=+(v1|0),P1=K1+u2,H1=a2+1,i2=H1,y2=G1,M2=x1,K2=P1,O2=N1):(i2=a2,y2=e2,M2=C2,K2=u2,O2=T2),q1=y2*i2,Y1=M2*M2,j1=q1-Y1,W1=j1>0,W1?(O1=O2*y2,l2=M2*K2,z1=O1-l2,h2=z1/j1,A2=K2*i2,d2=M2*O2,s2=A2-d2,V1=s2/j1,g2=+(p|0),S=V1*g2,w=S+h2,y=+Ti(w),D=~~y,e[s>>2]=D,Q=+(d0|0),b=V1*Q,R=b+h2,_=+Ti(R),L=~~_,e[$>>2]=L,M=e[s>>2]|0,G=(M|0)>1023,G?(e[s>>2]=1023,d=e[$>>2]|0,N=d,W=1023):(N=L,W=M),P=(N|0)>1023,P?(e[$>>2]=1023,I=e[s>>2]|0,z=I,e0=1023):(z=W,e0=N),Y=(z|0)<0,Y?(e[s>>2]=0,C=e[$>>2]|0,t0=C):t0=e0,J=(t0|0)<0,J?(e[$>>2]=0,f=0,f|0):(f=0,f|0)):(e[s>>2]=0,e[$>>2]=0,f=1,f|0)}function Yv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0;if(v0=B,d=t+836|0,I=t+840|0,R=e[I>>2]|0,J=e[t>>2]|0,U2(n,J,5),i0=e[t>>2]|0,d0=(i0|0)>0,d0){for(F0=t+4|0,Y0=0,O0=-1;;)if(m=F0+(Y0<<2)|0,v=e[m>>2]|0,U2(n,v,4),S=e[m>>2]|0,w=(O0|0)<(S|0),s=w?S:O0,y=Y0+1|0,D=e[t>>2]|0,Q=(y|0)<(D|0),Q)Y0=y,O0=s;else{$=s;break}if(G0=($|0)>-1,G0)for(p0=t+128|0,H0=t+192|0,C=t+256|0,p=t+320|0,q0=0;;){if(b=p0+(q0<<2)|0,_=e[b>>2]|0,L=_+-1|0,U2(n,L,3),M=H0+(q0<<2)|0,T=e[M>>2]|0,U2(n,T,2),G=e[M>>2]|0,N=(G|0)==0,N?(V0=0,e1=8):(P=C+(q0<<2)|0,z=e[P>>2]|0,U2(n,z,8),c=e[M>>2]|0,Y=(c|0)==31,Y||(V0=0,e1=8)),(e1|0)==8)for(;e1=0,t0=(p+(q0<<5)|0)+(V0<<2)|0,W=e[t0>>2]|0,e0=W+1|0,U2(n,e0,8),H=V0+1|0,X=e[M>>2]|0,U=1<>2]|0,n0=s0+-1|0,U2(n,n0,2),r0=R+-1|0,K=F7(r0)|0,U2(n,K,4),c0=F7(r0)|0,A0=e[t>>2]|0,l0=(A0|0)>0,!!l0)for(j=t+4|0,$0=t+128|0,M0=A0,R0=0,N0=0,T0=0;;){if(g0=j+(N0<<2)|0,f0=e[g0>>2]|0,Q0=$0+(f0<<2)|0,y0=e[Q0>>2]|0,h0=y0+R0|0,E0=(T0|0)<(h0|0),E0){for(r1=T0;C0=r1+2|0,u0=d+(C0<<2)|0,k0=e[u0>>2]|0,U2(n,k0,c0),J0=r1+1|0,S0=(J0|0)==(h0|0),!S0;)r1=J0;f=e[t>>2]|0,x0=f,U0=h0}else x0=M0,U0=T0;if(D0=N0+1|0,m0=(D0|0)<(x0|0),m0)M0=x0,R0=h0,N0=D0,T0=U0;else break}}function Jv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0;z1=B,B=B+272|0,O1=z1,D=t+28|0,Q=e[D>>2]|0,Y=t4(1,1120)|0,s0=Z4(n,5)|0,e[Y>>2]=s0,f0=(s0|0)>0;e:do if(f0){for(m0=Y+4|0,Z1=0,r2=-1;;){if(_=Z4(n,4)|0,L=m0+(Z1<<2)|0,e[L>>2]=_,M=(_|0)<0,M)break e;if(T=(r2|0)<(_|0),c=T?_:r2,G=Z1+1|0,N=e[Y>>2]|0,P=(G|0)<(N|0),P)Z1=G,r2=c;else{f=c;break}}if(q0=(f|0)>-1,q0)for(a1=Y+128|0,E1=Y+192|0,L1=Y+256|0,b=Q+24|0,R=Y+320|0,G1=0;;){if(z=Z4(n,3)|0,t0=z+1|0,J=a1+(G1<<2)|0,e[J>>2]=t0,W=Z4(n,2)|0,e0=E1+(G1<<2)|0,e[e0>>2]=W,H=(W|0)<0,H||(X=(W|0)==0,X?(d=L1+(G1<<2)|0,I=e[d>>2]|0,Z=I):(U=Z4(n,8)|0,o0=L1+(G1<<2)|0,e[o0>>2]=U,Z=U),V=(Z|0)<0,V)||(n0=e[b>>2]|0,i0=(Z|0)<(n0|0),!i0))break e;if(r0=e[e0>>2]|0,K=(r0|0)==31,!K)for(H1=0;;){if($0=Z4(n,8)|0,g0=$0+-1|0,Q0=(R+(G1<<5)|0)+(H1<<2)|0,e[Q0>>2]=g0,d0=($0|0)<0,d0||(y0=e[b>>2]|0,h0=($0|0)>(y0|0),l0=H1+1|0,h0))break e;if(c0=e[e0>>2]|0,A0=1<>2]=k0,D0=Z4(n,4)|0,x0=(D0|0)<0,!x0)){if(F0=e[Y>>2]|0,M0=(F0|0)>0,M0)for(G0=Y+4|0,p0=Y+128|0,H0=Y+836|0,R0=1<>2]|0,Y0=p0+(L0<<2)|0,N0=e[Y0>>2]|0,V0=N0+U1|0,T0=(V0|0)>63,T0)break e;if(U0=(q1|0)<(V0|0),U0){for(j1=q1;;){if(r1=Z4(n,D0)|0,O0=j1+2|0,e1=H0+(O0<<2)|0,e[e1>>2]=r1,v0=(r1|0)>-1,i1=(r1|0)<(R0|0),W1=v0&i1,!W1)break e;if(c1=j1+1|0,f1=(c1|0)<(V0|0),f1)j1=c1;else{$=c1;break}}m=e[Y>>2]|0,A1=m,Y1=$}else A1=N1,Y1=q1;if(g1=v1+1|0,l1=(g1|0)<(A1|0),l1)N1=A1,U1=V0,v1=g1,q1=Y1;else{C=H0,p=R0,w1=V0;break}}else w=Y+836|0,y=1<>2]=0,$1=Y+840|0,e[$1>>2]=p,n1=w1+2|0,s1=(w1|0)>-2,s1)for(K1=0;z0=C+(K1<<2)|0,I1=O1+(K1<<2)|0,e[I1>>2]=z0,h1=K1+1|0,u1=(h1|0)<(n1|0),u1;)K1=h1;_h(O1,n1,4,8),d1=(n1|0)>1;t:do if(d1){for(v=e[O1>>2]|0,S=e[v>>2]|0,y1=S,P1=1;Q1=O1+(P1<<2)|0,D1=e[Q1>>2]|0,_1=e[D1>>2]|0,k1=(y1|0)==(_1|0),m1=P1+1|0,!k1;)if(p1=(m1|0)<(n1|0),p1)y1=_1,P1=m1;else break t;if(x1=(Y|0)==0,x1)s=0;else break e;return B=z1,s|0}while(!1);return s=Y,B=z1,s|0}while(!1);return I2(Y),s=0,B=z1,s|0}function Kv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0;if(x1=B,B=B+272|0,y1=x1,$=t4(1,1312)|0,c=$+1296|0,e[c>>2]=n,D=n+836|0,z=n+840|0,V=e[z>>2]|0,g0=$+1288|0,e[g0>>2]=V,D0=e[n>>2]|0,Y0=(D0|0)>0,Y0){for(O0=n+4|0,f=n+128|0,g1=0,Q1=0;;)if(d=O0+(g1<<2)|0,I=e[d>>2]|0,C=f+(I<<2)|0,p=e[C>>2]|0,m=p+Q1|0,v=g1+1|0,S=(v|0)<(D0|0),S)g1=v,Q1=m;else{s=m;break}w=s+2|0,y=$+1284|0,e[y>>2]=w,Q=(s|0)>-2,Q?(M=w,p1=s,k1=7):(_h(y1,w,4,8),m1=s)}else r1=$+1284|0,e[r1>>2]=2,M=2,p1=0,k1=7;if((k1|0)==7){for(l1=0;b=D+(l1<<2)|0,R=y1+(l1<<2)|0,e[R>>2]=b,_=l1+1|0,L=(_|0)<(M|0),L;)l1=_;for(_h(y1,M,4,8),T=D,G=$+260|0,A1=0;Y=y1+(A1<<2)|0,t0=e[Y>>2]|0,J=t0,W=J-T|0,e0=W>>2,H=G+(A1<<2)|0,e[H>>2]=e0,X=A1+1|0,U=(X|0)<(M|0),U;)A1=X;for(N=$+260|0,P=$+520|0,$1=0;Z=N+($1<<2)|0,s0=e[Z>>2]|0,n0=P+(s0<<2)|0,e[n0>>2]=$1,i0=$1+1|0,r0=(i0|0)<(M|0),r0;)$1=i0;for(o0=$+260|0,n1=0;;)if(K=o0+(n1<<2)|0,c0=e[K>>2]|0,A0=D+(c0<<2)|0,l0=e[A0>>2]|0,j=$+(n1<<2)|0,e[j>>2]=l0,$0=n1+1|0,f0=($0|0)<(M|0),f0)n1=$0;else{m1=p1;break}}if(Q0=n+832|0,d0=e[Q0>>2]|0,(d0|0)==4?(C0=$+1292|0,e[C0>>2]=64):(d0|0)==2?(h0=$+1292|0,e[h0>>2]=128):(d0|0)==1?(y0=$+1292|0,e[y0>>2]=256):(d0|0)==3&&(E0=$+1292|0,e[E0>>2]=86),u0=(m1|0)>0,!u0)return B=x1,$|0;for(k0=$+1032|0,J0=$+780|0,s1=0;;){for(m0=s1+2|0,x0=D+(m0<<2)|0,F0=e[x0>>2]|0,M0=e[g0>>2]|0,v0=1,a1=M0,z0=0,I1=0,u1=0;;)if(G0=D+(z0<<2)|0,p0=e[G0>>2]|0,H0=(p0|0)>(u1|0),R0=(p0|0)<(F0|0),D1=H0&R0,h1=D1?z0:I1,d1=D1?p0:u1,S0=(p0|0)<(a1|0),L0=(p0|0)>(F0|0),_1=S0&L0,i1=_1?z0:v0,f1=_1?p0:a1,q0=z0+1|0,N0=(q0|0)<(m0|0),N0)v0=i1,a1=f1,z0=q0,I1=h1,u1=d1;else{c1=i1,E1=h1;break}if(V0=k0+(s1<<2)|0,e[V0>>2]=E1,T0=J0+(s1<<2)|0,e[T0>>2]=c1,U0=s1+1|0,e1=(U0|0)==(m1|0),e1)break;s1=U0}return B=x1,$|0}function Vv(t){t=t|0;var n=0,s=0,$=0;$=B,n=(t|0)==0,n||I2(t)}function zv(t){t=t|0;var n=0,s=0,$=0;$=B,n=(t|0)==0,n||I2(t)}function Zv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0;if(w2=B,f=n+1296|0,d=e[f>>2]|0,r0=t+64|0,y0=e[r0>>2]|0,M0=y0+4|0,T0=e[M0>>2]|0,l1=T0+28|0,m1=e[l1>>2]|0,U1=m1+2848|0,W1=e[U1>>2]|0,I=t+4|0,R=Z4(I,1)|0,J=(R|0)==1,!J)return s=0,s|0;U=n+1284|0,o0=e[U>>2]|0,Z=o0<<2,V=U7(t,Z)|0,s0=n+1292|0,n0=e[s0>>2]|0,i0=n0+-1|0,K=F7(i0)|0,c0=Z4(I,K)|0,e[V>>2]=c0,A0=e[s0>>2]|0,l0=A0+-1|0,j=F7(l0)|0,$0=Z4(I,j)|0,g0=V+4|0,e[g0>>2]=$0,f0=e[d>>2]|0,Q0=(f0|0)>0;e:do if(Q0){i2=0,n2=2;t:for(;;){if(u0=(d+4|0)+(i2<<2)|0,k0=e[u0>>2]|0,J0=(d+128|0)+(k0<<2)|0,D0=e[J0>>2]|0,m0=(d+192|0)+(k0<<2)|0,x0=e[m0>>2]|0,F0=1<>2]|0,R0=W1+(H0*56|0)|0,S0=OC(R0,I)|0,L0=(S0|0)==-1,L0){s=0,S2=25;break}else t2=S0;if(Y0=(D0|0)>0,Y0)for(q0=F0+-1|0,a2=t2,f2=0;;){if(N0=a2&q0,V0=((d+320|0)+(k0<<5)|0)+(N0<<2)|0,U0=e[V0>>2]|0,r1=a2>>x0,O0=(U0|0)>-1,O0){if(e1=W1+(U0*56|0)|0,v0=OC(e1,I)|0,i1=f2+n2|0,c1=V+(i1<<2)|0,e[c1>>2]=v0,a1=(v0|0)==-1,a1){s=0,S2=25;break t}}else f1=f2+n2|0,g1=V+(f1<<2)|0,e[g1>>2]=0;if(A1=f2+1|0,$1=(A1|0)<(D0|0),$1)a2=r1,f2=A1;else break}if(n1=D0+n2|0,s1=i2+1|0,z0=e[d>>2]|0,I1=(s1|0)<(z0|0),I1)i2=s1,n2=n1;else break e}if((S2|0)==25)return s|0}while(!1);if(d0=e[U>>2]|0,h0=(d0|0)>2,!h0)return s=V,s|0;for(E0=n+1032|0,C0=n+780|0,o2=2;;){if(h1=o2+-2|0,E1=E0+(h1<<2)|0,u1=e[E1>>2]|0,d1=(d+836|0)+(u1<<2)|0,p1=e[d1>>2]|0,Q1=C0+(h1<<2)|0,D1=e[Q1>>2]|0,_1=(d+836|0)+(D1<<2)|0,y1=e[_1>>2]|0,k1=V+(u1<<2)|0,x1=e[k1>>2]|0,L1=V+(D1<<2)|0,N1=e[L1>>2]|0,w1=(d+836|0)+(o2<<2)|0,Z1=e[w1>>2]|0,G1=x1&32767,v1=N1&32767,K1=v1-G1|0,P1=y1-p1|0,X1=(K1|0)>-1,e2=0-K1|0,H1=X1?K1:e2,q1=Z1-p1|0,Y1=i5(H1,q1)|0,j1=(Y1|0)/(P1|0)&-1,r2=(K1|0)<0,O1=0-j1|0,c=r2?O1:j1,$=c+G1|0,l2=e[s0>>2]|0,z1=l2-$|0,h2=V+(o2<<2)|0,A2=e[h2>>2]|0,d2=(A2|0)==0,d2)W=$|32768,e[h2>>2]=W;else{s2=(z1|0)<($|0),V1=s2?z1:$,g2=V1<<1,$2=(A2|0)<(g2|0);do if($2)if(S=A2&1,w=(S|0)==0,w){b=A2>>1,y2=b;break}else{y=A2+1|0,D=y>>1,Q=0-D|0,y2=Q;break}else if(C=(z1|0)>($|0),C){p=A2-$|0,y2=p;break}else{m=A2-z1|0,v=m^-1,y2=v;break}while(!1);_=y2+$|0,L=_&32767,e[h2>>2]=L,M=e[E1>>2]|0,T=V+(M<<2)|0,G=e[T>>2]|0,N=G&32767,e[T>>2]=N,P=e[Q1>>2]|0,z=V+(P<<2)|0,Y=e[z>>2]|0,t0=Y&32767,e[z>>2]=t0}if(e0=o2+1|0,H=e[U>>2]|0,X=(e0|0)<(H|0),X)o2=e0;else{s=V;break}}return s|0}function Wv(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0;if(w1=B,d=n+1296|0,I=e[d>>2]|0,R=t+64|0,J=e[R>>2]|0,i0=J+4|0,d0=e[i0>>2]|0,F0=d0+28|0,V0=e[F0>>2]|0,a1=t+28|0,f1=e[a1>>2]|0,C=V0+(f1<<2)|0,p=e[C>>2]|0,m=(p|0)/2&-1,v=(s|0)==0,v)return c1=m<<2,Ae($|0,0,c1|0)|0,c=0,c|0;if(S=e[s>>2]|0,w=I+832|0,y=e[w>>2]|0,D=i5(y,S)|0,Q=(D|0)<0,b=(D|0)>255,_=b?255:D,L=Q?0:_,M=n+1284|0,T=e[M>>2]|0,G=(T|0)>1,G)for(N=n+260|0,s1=0,E1=1,d1=0,Q1=L;;){if(t0=N+(E1<<2)|0,W=e[t0>>2]|0,e0=s+(W<<2)|0,H=e[e0>>2]|0,X=H&32767,U=(X|0)==(H|0),U)if(o0=(I+836|0)+(W<<2)|0,Z=e[o0>>2]|0,V=i5(y,H)|0,s0=(V|0)<0,n0=(V|0)>255,r0=n0?255:V,K=s0?0:r0,c0=K-Q1|0,A0=Z-d1|0,I1=(c0|0)>-1,_1=0-c0|0,l0=I1?c0:_1,j=(c0|0)/(A0|0)&-1,$0=c0>>31,g0=$0|1,f0=i5(j,A0)|0,h1=(f0|0)>-1,y1=0-f0|0,Q0=h1?f0:y1,y0=l0-Q0|0,h0=(m|0)>(Z|0),k1=h0?Z:m,E0=(k1|0)>(d1|0),E0&&(C0=1768+(Q1<<2)|0,u0=+A[C0>>2],k0=$+(d1<<2)|0,J0=+A[k0>>2],D0=J0*u0,A[k0>>2]=D0),m0=d1+1|0,x0=(m0|0)<(k1|0),x0)for(Y0=m0,g1=0,x1=Q1;;)if(M0=g1+y0|0,G0=(M0|0)<(A0|0),p0=G0?0:g0,H0=G0?0:A0,l1=M0-H0|0,f=x1+j|0,L1=f+p0|0,R0=1768+(L1<<2)|0,S0=+A[R0>>2],L0=$+(Y0<<2)|0,q0=+A[L0>>2],N0=q0*S0,A[L0>>2]=N0,T0=Y0+1|0,$1=(T0|0)==(k1|0),$1){z0=Z,m1=Z,D1=K;break}else Y0=T0,g1=l1,x1=L1;else z0=Z,m1=Z,D1=K;else z0=s1,m1=d1,D1=Q1;if(U0=E1+1|0,r1=(U0|0)<(T|0),r1)s1=z0,E1=U0,d1=m1,Q1=D1;else{n1=z0,p1=D1;break}}else n1=0,p1=L;if(P=(n1|0)<(m|0),!P)return c=1,c|0;for(z=1768+(p1<<2)|0,Y=+A[z>>2],u1=n1;;)if(O0=$+(u1<<2)|0,e1=+A[O0>>2],v0=e1*Y,A[O0>>2]=v0,i1=u1+1|0,A1=(i1|0)==(m|0),A1){c=1;break}else u1=i1;return c|0}function jv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0;return C=B,s=e[t>>2]|0,$=e[s>>2]|0,c=e[n>>2]|0,f=e[c>>2]|0,d=$-f|0,d|0}function Xv(t){t=t|0;var n=0,s=0;s=B,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0}function eS(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0;s0=B,c=Ka(n|0)|0,f=Ka(s|0)|0,Q=c+2|0,Y=Q+f|0,$=Y,J=B,B=B+((1*$|0)+15&-16)|0,rm(J|0,n|0)|0,Z=Ka(J|0)|0,o0=J+Z|0,u[o0>>0]=61,u[o0+1>>0]=0,IQ(J|0,s|0)|0,W=e[t>>2]|0,e0=t+8|0,H=e[e0>>2]|0,X=H<<2,U=X+8|0,d=Gi(W,U)|0,e[t>>2]=d,I=t+4|0,C=e[I>>2]|0,p=e[e0>>2]|0,m=p<<2,v=m+8|0,S=Gi(C,v)|0,e[I>>2]=S,w=Ka(J|0)|0,y=e[e0>>2]|0,D=S+(y<<2)|0,e[D>>2]=w,b=w+1|0,R=k9(b)|0,_=e[t>>2]|0,L=_+(y<<2)|0,e[L>>2]=R,M=e[t>>2]|0,T=M+(y<<2)|0,G=e[T>>2]|0,rm(G|0,J|0)|0,N=e[e0>>2]|0,P=N+1|0,e[e0>>2]=P,z=e[t>>2]|0,t0=z+(P<<2)|0,e[t0>>2]=0,B=s0}function tS(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0;if(Y=B,c=(t|0)==0,!c){if(f=e[t>>2]|0,Q=(f|0)==0,!Q){if(R=t+8|0,_=e[R>>2]|0,L=(_|0)>0,L){for(b=_,T=f,P=0;M=T+(P<<2)|0,G=e[M>>2]|0,N=(G|0)==0,N?C=b:(I2(G),s=e[R>>2]|0,C=s),d=P+1|0,I=(d|0)<(C|0),!!I;)n=e[t>>2]|0,b=C,T=n,P=d;$=e[t>>2]|0,p=$}else p=f;I2(p)}m=t+4|0,v=e[m>>2]|0,S=(v|0)==0,S||I2(v),w=t+12|0,y=e[w>>2]|0,D=(y|0)==0,D||I2(y),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0}}function iS(t){t=t|0;var n=0,s=0,$=0,c=0;c=B,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,e[t+20>>2]=0,e[t+24>>2]=0,n=t4(1,3664)|0,s=t+28|0,e[s>>2]=n}function XB(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0;if(m1=B,f=t+28|0,d=e[f>>2]|0,b=(d|0)==0,b){e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,e[t+20>>2]=0,e[t+24>>2]=0,e[t+28>>2]=0;return}if(t0=d+8|0,n0=e[t0>>2]|0,Q0=(n0|0)>0,Q0)for(g1=n0,s1=0;n1=(d+32|0)+(s1<<2)|0,I=e[n1>>2]|0,C=(I|0)==0,C?v=g1:(I2(I),n=e[t0>>2]|0,v=n),p=s1+1|0,m=(p|0)<(v|0),m;)g1=v,s1=p;if(x0=d+12|0,N0=e[x0>>2]|0,f1=(N0|0)>0,f1)for(l1=N0,z0=0;D=(d+544|0)+(z0<<2)|0,Q=e[D>>2]|0,R=(Q|0)==0,R?Y=l1:(_=(d+288|0)+(z0<<2)|0,L=e[_>>2]|0,M=25664+(L<<2)|0,T=e[M>>2]|0,G=T+8|0,N=e[G>>2]|0,KA[N&7](Q),s=e[x0>>2]|0,Y=s),P=z0+1|0,z=(P|0)<(Y|0),z;)l1=Y,z0=P;if(S=d+16|0,w=e[S>>2]|0,y=(w|0)>0,y)for(A1=w,I1=0;H=(d+1056|0)+(I1<<2)|0,X=e[H>>2]|0,U=(X|0)==0,U?A0=A1:(o0=(d+800|0)+(I1<<2)|0,Z=e[o0>>2]|0,V=25640+(Z<<2)|0,s0=e[V>>2]|0,i0=s0+12|0,r0=e[i0>>2]|0,KA[r0&7](X),$=e[S>>2]|0,A0=$),K=I1+1|0,c0=(K|0)<(A0|0),c0;)A1=A0,I1=K;if(J=d+20|0,W=e[J>>2]|0,e0=(W|0)>0,e0)for($1=W,h1=0;f0=(d+1568|0)+(h1<<2)|0,d0=e[f0>>2]|0,y0=(d0|0)==0,y0?F0=$1:(h0=(d+1312|0)+(h1<<2)|0,E0=e[h0>>2]|0,C0=25648+(E0<<2)|0,u0=e[C0>>2]|0,k0=u0+12|0,J0=e[k0>>2]|0,KA[J0&7](d0),c=e[J>>2]|0,F0=c),D0=h1+1|0,m0=(D0|0)<(F0|0),m0;)$1=F0,h1=D0;if(l0=d+24|0,j=e[l0>>2]|0,$0=(j|0)>0,g0=d+2848|0,$0)for(E1=0;M0=(d+1824|0)+(E1<<2)|0,G0=e[M0>>2]|0,p0=(G0|0)==0,p0||im(G0),H0=e[g0>>2]|0,R0=(H0|0)==0,R0||(S0=H0+(E1*56|0)|0,FS(S0)),L0=E1+1|0,Y0=e[l0>>2]|0,q0=(L0|0)<(Y0|0),q0;)E1=L0;if(V0=e[g0>>2]|0,T0=(V0|0)==0,T0||I2(V0),U0=d+28|0,r1=e[U0>>2]|0,O0=(r1|0)>0,O0)for(u1=0;e1=(d+2852|0)+(u1<<2)|0,v0=e[e1>>2]|0,hS(v0),i1=u1+1|0,c1=e[U0>>2]|0,a1=(i1|0)<(c1|0),a1;)u1=i1;I2(d),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,e[t+20>>2]=0,e[t+24>>2]=0,e[t+28>>2]=0}function rS(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0;if(Z2=B,B=B+32|0,M1=Z2,C=t+4|0,p=e[C>>2]|0,$1=t+104|0,Q1=e[$1>>2]|0,G1=(Q1|0)==0,G1)return e[s>>2]=0,e[s+4>>2]=0,e[s+8>>2]=0,e[s+12>>2]=0,e[s+16>>2]=0,e[s+20>>2]=0,e[s+24>>2]=0,e[s+28>>2]=0,e[$>>2]=0,e[$+4>>2]=0,e[$+8>>2]=0,e[$+12>>2]=0,e[$+16>>2]=0,e[$+20>>2]=0,e[$+24>>2]=0,e[$+28>>2]=0,e[c>>2]=0,e[c+4>>2]=0,e[c+8>>2]=0,e[c+12>>2]=0,e[c+16>>2]=0,e[c+20>>2]=0,e[c+24>>2]=0,e[c+28>>2]=0,f=-129,B=Z2,f|0;if(l2=p+4|0,i2=e[l2>>2]|0,_2=(i2|0)<1,_2)k5=-129,o5=27;else if(VB(M1),T1=p+28|0,E5=e[T1>>2]|0,m=(E5|0)==0,m)k5=-130,o5=27;else if(M=e[E5>>2]|0,H=(M|0)<64,H)k5=-130,o5=27;else if(c0=E5+4|0,E0=e[c0>>2]|0,p0=(E0|0)<(M|0),p0)k5=-130,o5=27;else{U2(M1,1,8),U2(M1,118,8),U2(M1,111,8),U2(M1,114,8),U2(M1,98,8),U2(M1,105,8),U2(M1,115,8),U2(M1,0,32),r1=e[l2>>2]|0,U2(M1,r1,8),g1=p+8|0,l1=e[g1>>2]|0,U2(M1,l1,32),A1=p+12|0,n1=e[A1>>2]|0,U2(M1,n1,32),s1=p+16|0,z0=e[s1>>2]|0,U2(M1,z0,32),I1=p+20|0,h1=e[I1>>2]|0,U2(M1,h1,32),E1=e[E5>>2]|0,u1=E1+-1|0,d1=F7(u1)|0,U2(M1,d1,4),m1=e[c0>>2]|0,p1=m1+-1|0,D1=F7(p1)|0,U2(M1,D1,4),U2(M1,1,1),_1=Q1+64|0,y1=e[_1>>2]|0,k1=(y1|0)==0,k1||I2(y1),x1=m7(M1)|0,L1=k9(x1)|0,e[_1>>2]=L1,N1=M1+8|0,w1=e[N1>>2]|0,U1=m7(M1)|0,i4(L1|0,w1|0,U1|0)|0,Z1=e[_1>>2]|0,e[s>>2]=Z1,v1=m7(M1)|0,K1=s+4|0,e[K1>>2]=v1,P1=s+8|0,e[P1>>2]=1,H1=s+12|0,e[H1>>2]=0,e[H1+4>>2]=0,e[H1+8>>2]=0,e[H1+12>>2]=0,e[H1+16>>2]=0,at(M1),nS(M1,n),q1=Q1+68|0,Y1=e[q1>>2]|0,j1=(Y1|0)==0,j1||I2(Y1),r2=m7(M1)|0,W1=k9(r2)|0,e[q1>>2]=W1,O1=e[N1>>2]|0,z1=m7(M1)|0,i4(W1|0,O1|0,z1|0)|0,h2=e[q1>>2]|0,e[$>>2]=h2,A2=m7(M1)|0,d2=$+4|0,e[d2>>2]=A2,s2=$+8|0,V1=$+24|0,e[s2>>2]=0,e[s2+4>>2]=0,e[s2+8>>2]=0,e[s2+12>>2]=0,g2=V1,$2=g2,e[$2>>2]=1,t2=g2+4|0,a2=t2,e[a2>>2]=0,at(M1),o2=e[T1>>2]|0,X1=(o2|0)==0;e:do if(!X1){if(U2(M1,5,8),U2(M1,118,8),U2(M1,111,8),U2(M1,114,8),U2(M1,98,8),U2(M1,105,8),U2(M1,115,8),n2=o2+24|0,f2=e[n2>>2]|0,e2=f2+-1|0,U2(M1,e2,8),y2=e[n2>>2]|0,S2=(y2|0)>0,S2)for(H2=0;;){if(G2=(o2+1824|0)+(H2<<2)|0,u2=e[G2>>2]|0,K2=Fv(u2,M1)|0,N2=(K2|0)==0,C2=H2+1|0,!N2)break e;if(w2=e[n2>>2]|0,M2=(C2|0)<(w2|0),M2)H2=C2;else break}if(U2(M1,0,6),U2(M1,0,16),q2=o2+16|0,T2=e[q2>>2]|0,O2=T2+-1|0,U2(M1,O2,6),V2=e[q2>>2]|0,A5=(V2|0)>0,A5)for(I5=0;;){if(P2=(o2+800|0)+(I5<<2)|0,j2=e[P2>>2]|0,U2(M1,j2,16),R5=e[P2>>2]|0,X2=25640+(R5<<2)|0,v5=e[X2>>2]|0,z2=e[v5>>2]|0,f5=(z2|0)==0,f5)break e;if(w5=(o2+1056|0)+(I5<<2)|0,O5=e[w5>>2]|0,om[z2&3](O5,M1),a5=I5+1|0,k2=e[q2>>2]|0,r5=(a5|0)<(k2|0),r5)I5=a5;else break}if(x2=o2+20|0,R2=e[x2>>2]|0,B2=R2+-1|0,U2(M1,B2,6),C5=e[x2>>2]|0,x5=(C5|0)>0,x5)for(s5=0;u5=(o2+1312|0)+(s5<<2)|0,S5=e[u5>>2]|0,U2(M1,S5,16),G5=e[u5>>2]|0,D5=25648+(G5<<2)|0,v=e[D5>>2]|0,S=e[v>>2]|0,w=(o2+1568|0)+(s5<<2)|0,y=e[w>>2]|0,om[S&3](y,M1),D=s5+1|0,Q=e[x2>>2]|0,b=(D|0)<(Q|0),b;)s5=D;if(R=o2+12|0,_=e[R>>2]|0,L=_+-1|0,U2(M1,L,6),T=e[R>>2]|0,G=(T|0)>0,G)for(l5=0;N=(o2+288|0)+(l5<<2)|0,P=e[N>>2]|0,U2(M1,P,16),z=e[N>>2]|0,Y=25664+(z<<2)|0,t0=e[Y>>2]|0,J=e[t0>>2]|0,W=(o2+544|0)+(l5<<2)|0,e0=e[W>>2]|0,pQ[J&1](p,e0,M1),X=l5+1|0,U=e[R>>2]|0,o0=(X|0)<(U|0),o0;)l5=X;if(Z=o2+8|0,V=e[Z>>2]|0,s0=V+-1|0,U2(M1,s0,6),n0=e[Z>>2]|0,i0=(n0|0)>0,i0)for(B5=0;r0=(o2+32|0)+(B5<<2)|0,K=e[r0>>2]|0,A0=e[K>>2]|0,U2(M1,A0,1),l0=e[r0>>2]|0,j=l0+4|0,$0=e[j>>2]|0,U2(M1,$0,16),g0=e[r0>>2]|0,f0=g0+8|0,Q0=e[f0>>2]|0,U2(M1,Q0,16),d0=e[r0>>2]|0,y0=d0+12|0,h0=e[y0>>2]|0,U2(M1,h0,8),C0=B5+1|0,u0=e[Z>>2]|0,k0=(C0|0)<(u0|0),k0;)B5=C0;return U2(M1,1,1),J0=Q1+72|0,D0=e[J0>>2]|0,m0=(D0|0)==0,m0||I2(D0),x0=m7(M1)|0,F0=k9(x0)|0,e[J0>>2]=F0,M0=e[N1>>2]|0,G0=m7(M1)|0,i4(F0|0,M0|0,G0|0)|0,H0=e[J0>>2]|0,e[c>>2]=H0,R0=m7(M1)|0,S0=c+4|0,e[S0>>2]=R0,L0=c+8|0,Y0=c+24|0,e[L0>>2]=0,e[L0+4>>2]=0,e[L0+8>>2]=0,e[L0+12>>2]=0,q0=Y0,N0=q0,e[N0>>2]=2,V0=q0+4|0,T0=V0,e[T0>>2]=0,zB(M1),f=0,B=Z2,f|0}while(!1);e[s>>2]=0,e[s+4>>2]=0,e[s+8>>2]=0,e[s+12>>2]=0,e[s+16>>2]=0,e[s+20>>2]=0,e[s+24>>2]=0,e[s+28>>2]=0,e[$>>2]=0,e[$+4>>2]=0,e[$+8>>2]=0,e[$+12>>2]=0,e[$+16>>2]=0,e[$+20>>2]=0,e[$+24>>2]=0,e[$+28>>2]=0,e[c>>2]=0,e[c+4>>2]=0,e[c+8>>2]=0,e[c+12>>2]=0,e[c+16>>2]=0,e[c+20>>2]=0,e[c+24>>2]=0,e[c+28>>2]=0,I=_1,c5=-130}return(o5|0)==27&&(e[s>>2]=0,e[s+4>>2]=0,e[s+8>>2]=0,e[s+12>>2]=0,e[s+16>>2]=0,e[s+20>>2]=0,e[s+24>>2]=0,e[s+28>>2]=0,e[$>>2]=0,e[$+4>>2]=0,e[$+8>>2]=0,e[$+12>>2]=0,e[$+16>>2]=0,e[$+20>>2]=0,e[$+24>>2]=0,e[$+28>>2]=0,e[c>>2]=0,e[c+4>>2]=0,e[c+8>>2]=0,e[c+12>>2]=0,e[c+16>>2]=0,e[c+20>>2]=0,e[c+24>>2]=0,e[c+28>>2]=0,d=Q1+64|0,I=d,c5=k5),zB(M1),U0=e[I>>2]|0,O0=(U0|0)==0,O0||I2(U0),e1=Q1+68|0,v0=e[e1>>2]|0,i1=(v0|0)==0,i1||I2(v0),c1=Q1+72|0,a1=e[c1>>2]|0,f1=(a1|0)==0,f1||I2(a1),e[I>>2]=0,e[e1>>2]=0,e[c1>>2]=0,f=c5,B=Z2,f|0}function nS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0;for(i0=B,U2(t,3,8),U2(t,118,8),U2(t,111,8),U2(t,114,8),U2(t,98,8),U2(t,105,8),U2(t,115,8),U2(t,44,32),s=1200,c=44;d=c+-1|0,I=s+1|0,R=u[s>>0]|0,J=R<<24>>24,U2(t,J,8),H=(d|0)==0,!H;)s=I,c=d;if(X=n+8|0,U=e[X>>2]|0,U2(t,U,32),o0=e[X>>2]|0,Z=(o0|0)>0,!Z){U2(t,1,1);return}for(V=n+4|0,s0=0;;){if(C=e[n>>2]|0,p=C+(s0<<2)|0,m=e[p>>2]|0,v=(m|0)==0,v)U2(t,0,32);else if(S=e[V>>2]|0,w=S+(s0<<2)|0,y=e[w>>2]|0,U2(t,y,32),D=e[V>>2]|0,Q=D+(s0<<2)|0,b=e[Q>>2]|0,_=(b|0)==0,!_)for(L=e[n>>2]|0,M=L+(s0<<2)|0,T=e[M>>2]|0,$=T,f=b;G=f+-1|0,N=$+1|0,P=u[$>>0]|0,z=P<<24>>24,U2(t,z,8),Y=(G|0)==0,!Y;)$=N,f=G;if(t0=s0+1|0,W=e[X>>2]|0,e0=(t0|0)<(W|0),e0)s0=t0;else break}U2(t,1,1)}function zp(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0;if(Y1=B,C=$+1|0,p=C<<3,c=p,L=B,B=B+((1*c|0)+15&-16)|0,e0=$<<3,f=e0,K=B,B=B+((1*f|0)+15&-16)|0,h0=(C|0)==0,h0)G=0;else{for(G0=$;;){if(U0=(G0|0)<(s|0),U0)for(E1=0,x1=G0;;)if(A1=t+(x1<<2)|0,I1=+A[A1>>2],m=I1,v=x1-G0|0,S=t+(v<<2)|0,w=+A[S>>2],y=w,D=y*m,Q=D+E1,b=x1+1|0,k1=(b|0)==(s|0),k1){h1=Q;break}else E1=Q,x1=b;else h1=0;if(R=L+(G0<<3)|0,o1[R>>3]=h1,_=G0+-1|0,M=(G0|0)==0,M)break;G0=_}I=+o1[L>>3],G=I}if(T=G*1.0000000001,N=G*1e-9,P=N+1e-10,z=($|0)>0,z)d1=T,L1=0;else return Q1=T,z0=Q1,B=Y1,+z0;for(;;){if(w1=L1+1|0,Y=d1>3],U=-X,o0=(L1|0)>0,o0){for(U1=0,P1=U;;)if(s0=K+(U1<<3)|0,n0=+o1[s0>>3],i0=L1-U1|0,r0=L+(i0<<3)|0,c0=+o1[r0>>3],A0=c0*n0,l0=P1-A0,j=U1+1|0,y1=(j|0)==(L1|0),y1){d=l0;break}else U1=j,P1=l0;if($0=d/d1,g0=K+(L1<<3)|0,o1[g0>>3]=$0,f0=(L1|0)/2&-1,Q0=(L1|0)>1,Q0){for(d0=L1+-1|0,y0=(f0|0)>1,G1=0;E0=K+(G1<<3)|0,C0=+o1[E0>>3],u0=d0-G1|0,k0=K+(u0<<3)|0,J0=+o1[k0>>3],D0=J0*$0,m0=D0+C0,o1[E0>>3]=m0,x0=C0*$0,F0=+o1[k0>>3],M0=F0+x0,o1[k0>>3]=M0,p0=G1+1|0,H0=(p0|0)<(f0|0),H0;)G1=p0;H1=y0?f0:1,N0=$0,Z1=H1}else N0=$0,Z1=0}else Z=U/d1,V=K+(L1<<3)|0,o1[V>>3]=Z,N0=Z,Z1=0;if(R0=L1&1,S0=(R0|0)==0,S0||(L0=K+(Z1<<3)|0,Y0=+o1[L0>>3],q0=Y0*N0,V0=q0+Y0,o1[L0>>3]=V0),T0=N0*N0,r1=1-T0,O0=r1*d1,e1=(w1|0)<($|0),e1)d1=O0,L1=w1;else{p1=O0;break}}if((q1|0)==8&&(t0=K+(N1<<3)|0,J=$-N1|0,W=J<<3,Ae(t0|0,0,W|0)|0,p1=m1),z)u1=.99,v1=0;else return Q1=p1,z0=Q1,B=Y1,+z0;for(;v0=K+(v1<<3)|0,i1=+o1[v0>>3],c1=i1*u1,o1[v0>>3]=c1,a1=u1*.99,f1=v1+1|0,_1=(f1|0)==($|0),!_1;)u1=a1,v1=f1;if(z)K1=0;else return Q1=p1,z0=Q1,B=Y1,+z0;for(;;)if(g1=K+(K1<<3)|0,l1=+o1[g1>>3],$1=l1,n1=n+(K1<<2)|0,A[n1>>2]=$1,s1=K1+1|0,D1=(s1|0)==($|0),D1){Q1=p1;break}else K1=s1;return z0=Q1,B=Y1,+z0}function Zp(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0;if(V=B,I=c+s|0,C=I<<2,f=C,_=B,B=B+((1*f|0)+15&-16)|0,M=(n|0)==0,T=(s|0)>0,M?T&&(N=s<<2,Ae(_|0,0,N|0)|0):T&&(G=s<<2,i4(_|0,n|0,G|0)|0),P=(c|0)>0,!P){B=V;return}if(z=(s|0)>0,z)W=0,e0=s;else{Y=c<<2,Ae(_|0,0,Y|0)|0,Ae($|0,0,Y|0)|0,B=V;return}for(;;){for(X=W,U=s,o0=0;;)if(S=X+1|0,w=_+(X<<2)|0,y=+A[w>>2],D=U+-1|0,Q=t+(D<<2)|0,b=+A[Q>>2],R=b*y,L=o0-R,t0=(S|0)==(e0|0),t0){d=L;break}else X=S,U=D,o0=L;if(p=_+(e0<<2)|0,A[p>>2]=d,m=$+(W<<2)|0,A[m>>2]=d,v=W+1|0,H=e0+1|0,J=(v|0)==(c|0),J)break;W=v,e0=H}B=V}function AS(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0;if(k0=B,c=e[n>>2]|0,f=(c|0)>1,f?(U2(s,1,1),Q=e[n>>2]|0,Y=Q+-1|0,U2(s,Y,4)):U2(s,0,1),s0=n+1156|0,g0=e[s0>>2]|0,f0=(g0|0)>0,f0){if(U2(s,1,1),Q0=e[s0>>2]|0,d0=Q0+-1|0,U2(s,d0,8),y0=e[s0>>2]|0,d=(y0|0)>0,d)for(I=n+1160|0,C=t+4|0,p=n+2184|0,h0=0;m=I+(h0<<2)|0,v=e[m>>2]|0,S=e[C>>2]|0,w=S+-1|0,y=F7(w)|0,U2(s,v,y),D=p+(h0<<2)|0,b=e[D>>2]|0,R=e[C>>2]|0,_=R+-1|0,L=F7(_)|0,U2(s,b,L),M=h0+1|0,T=e[s0>>2]|0,G=(M|0)<(T|0),G;)h0=M}else U2(s,0,1);if(U2(s,0,2),N=e[n>>2]|0,P=(N|0)>1,P){if(z=t+4|0,t0=e[z>>2]|0,J=(t0|0)>0,J){for(W=n+4|0,E0=0;o0=W+(E0<<2)|0,Z=e[o0>>2]|0,U2(s,Z,4),V=E0+1|0,n0=e[z>>2]|0,i0=(V|0)<(n0|0),i0;)E0=V;$=e[n>>2]|0,e0=$,u0=13}}else e0=N,u0=13;if(!((u0|0)==13&&(H=(e0|0)>0,!H)))for(X=n+1028|0,U=n+1092|0,C0=0;U2(s,0,8),r0=X+(C0<<2)|0,K=e[r0>>2]|0,U2(s,K,8),c0=U+(C0<<2)|0,A0=e[c0>>2]|0,U2(s,A0,8),l0=C0+1|0,j=e[n>>2]|0,$0=(l0|0)<(j|0),$0;)C0=l0}function sS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0;n1=B,c=t4(1,3208)|0,f=t+28|0,Q=e[f>>2]|0,Ae(c|0,0,3208)|0,Y=t+4|0,s0=e[Y>>2]|0,f0=(s0|0)<1;e:do if(f0)$1=24;else if(m0=Z4(n,1)|0,q0=(m0|0)<0,q0)$1=24;else{if(O0=(m0|0)==0,O0)e[c>>2]=1;else if(e1=Z4(n,4)|0,d=e1+1|0,e[c>>2]=d,I=(e1|0)<0,I)break;if(C=Z4(n,1)|0,p=(C|0)<0,!p){if(m=(C|0)==0,!m){if(v=Z4(n,8)|0,S=v+1|0,w=c+1156|0,e[w>>2]=S,y=(v|0)<0,y)break;for(D=c+1160|0,b=c+2184|0,$=e[Y>>2]|0,T=$,v0=0;;){if(M=T+-1|0,G=F7(M)|0,N=Z4(n,G)|0,P=D+(v0<<2)|0,e[P>>2]=N,z=e[Y>>2]|0,t0=z+-1|0,J=F7(t0)|0,W=Z4(n,J)|0,e0=b+(v0<<2)|0,e[e0>>2]=W,H=W|N,X=(H|0)<0,U=(N|0)==(W|0),a1=U|X,a1||(o0=e[Y>>2]|0,Z=(N|0)<(o0|0),V=(W|0)<(o0|0),f1=Z&V,_=v0+1|0,!f1))break e;if(R=e[w>>2]|0,L=(_|0)<(R|0),L)T=o0,v0=_;else break}}if(n0=Z4(n,2)|0,i0=(n0|0)==0,i0){if(r0=e[c>>2]|0,K=(r0|0)>1,K){if(c0=e[Y>>2]|0,A0=(c0|0)>0,A0)for(l0=c+4|0,i1=0;;){if(u0=Z4(n,4)|0,k0=l0+(i1<<2)|0,e[k0>>2]=u0,J0=e[c>>2]|0,D0=(u0|0)>=(J0|0),x0=(u0|0)<0,g1=x0|D0,E0=i1+1|0,g1)break e;if(h0=e[Y>>2]|0,C0=(E0|0)<(h0|0),C0)i1=E0;else{j=J0,$1=17;break}}}else j=r0,$1=17;if(($1|0)==17&&($0=(j|0)>0,!$0))return s=c,s|0;for(g0=c+1028|0,Q0=Q+16|0,d0=c+1092|0,y0=Q+20|0,c1=0;;){if(Z4(n,8)|0,p0=Z4(n,8)|0,H0=g0+(c1<<2)|0,e[H0>>2]=p0,R0=e[Q0>>2]|0,S0=(p0|0)>=(R0|0),L0=(p0|0)<0,l1=L0|S0,l1||(Y0=Z4(n,8)|0,N0=d0+(c1<<2)|0,e[N0>>2]=Y0,V0=e[y0>>2]|0,T0=(Y0|0)>=(V0|0),U0=(Y0|0)<0,A1=U0|T0,M0=c1+1|0,A1))break e;if(F0=e[c>>2]|0,G0=(M0|0)<(F0|0),G0)c1=M0;else{s=c;break}}return s|0}}}while(!1);return($1|0)==24&&(r1=(c|0)==0,r1)?(s=0,s|0):(I2(c),s=0,s|0)}function oS(t){t=t|0;var n=0,s=0,$=0;$=B,n=(t|0)==0,n||I2(t)}function $S(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,B6=0,z3=0,$6=0,m6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,s3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0,_4=0,M4=0,W4=0,d4=0,T4=0,G9=0,G4=0,A4=0,R4=0,c4=0,Ie=0,O9=0,d9=0,de=0,Me=0,ze=0,N4=0,Te=0,U4=0,j4=0,ke=0,Ze=0,V9=0,se=0,g4=0,D6=0,O4=0,R9=0,s4=0,D4=0,oe=0,z9=0,$e=0,ae=0,E4=0,X4=0,x4=0,le=0,E9=0,a6=0,Ge=0,o4=0,Ee=0,C4=0,$4=0,U6=0,ve=0,Se=0,We=0,a4=0,Q4=0,g8=0,H3=0,Q9=0,C9=0,F4=0,ee=0,$7=0,De=0,a7=0,p7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,Q7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ne=0,be=0,je=0,k8=0,y9=0,g7=0,Ce=0,h7=0,y7=0,j8=0,w7=0,te=0,X8=0,P8=0,v8=0,Xe=0,P4=0,_e=0,e8=0,u8=0,S8=0,ce=0,Z9=0,t8=0,I8=0,i8=0,d8=0,ge=0,Be=0,Ue=0,Oe=0,W9=0,Re=0,he=0,r8=0,me=0,B4=0,E8=0,e7=0,H4=0,I3=0,Pe=0,C8=0,ie=0,P9=0,re=0,S9=0,He=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,A8=0,D8=0,q4=0,n7=0,b8=0,qe=0,B9=0,A7=0,Ye=0,L7=0,O7=0,k7=0,s7=0,v7=0,ne=0,M7=0,P7=0,s8=0,_8=0,S7=0,J8=0,xe=0,fe=0,j9=0,D7=0,X7=0,Lt=0,Mt=0,Tt=0,ct=0,H7=0,gt=0,q7=0,ht=0,Y7=0,ft=0,et=0,ti=0,Gt=0,ut=0,It=0,ii=0,dt=0,tt=0,ri=0,Nt=0,Ut=0,Ot=0,Pt=0,it=0,Et=0,Ht=0,J7=0,rt=0,T7=0,K7=0,ni=0,qt=0,Ai=0,Ct=0,Yt=0,Bt=0,mt=0,Jt=0,pt=0,V7=0,Qt=0,Kt=0,nt=0,G7=0,yt=0,pe=0,wt=0,b7=0,At=0,i9=0,u7=0,B8=0,I7=0,_7=0,Hr=0,hr=0,VA=0,Ln=0,zA=0,Mn=0,ZA=0,WA=0,Tn=0,jA=0,qr=0,XA=0,es=0,ts=0,Gn=0,is=0,Nn=0,Un=0,rs=0,Yr=0,On=0,Jr=0,Pn=0,Hn=0,ns=0,As=0,ss=0,Kr=0,qn=0,os=0,fr=0,Vr=0,$s=0,as=0,zr=0,si=0,Yn=0,ls=0,cs=0,Jn=0,Kn=0,Vn=0,gs=0,oi=0,Zr=0,hs=0,zn=0,fs=0,us=0,Is=0,Zn=0,ds=0,Es=0,Cs=0,Bs=0,Wn=0,ms=0,ps=0,Wr=0,ur=0,jr=0,Qs=0,Ki=0,ys=0,jn=0,Xr=0,Xn=0,en=0,ws=0,eA=0,tA=0,ks=0,iA=0,rA=0,vs=0,Ir=0,nA=0,$i=0,tn=0,dr=0,Vi=0,Er=0,Ni=0,Cr=0,AA=0,Ui=0,Bi=0,mi=0,Vt=0,pi=0,Br=0,zi=0,Zi=0,mr=0,ai=0,Ss=0,st=0,za=0,rn=0,nn=0;if(rn=B,b=t+64|0,R=e[b>>2]|0,t2=R+4|0,N3=e[t2>>2]|0,D4=N3+28|0,q4=e[D4>>2]|0,$s=R+104|0,oi=e[$s>>2]|0,Bs=t+104|0,Xr=e[Bs>>2]|0,_=t+36|0,W=e[_>>2]|0,r0=N3+4|0,y0=e[r0>>2]|0,M0=y0<<2,$=M0,T0=B,B=B+((1*$|0)+15&-16)|0,l1=U7(t,M0)|0,m1=e[r0>>2]|0,U1=m1<<2,W1=U7(t,U1)|0,a2=e[r0>>2]|0,M2=a2<<2,P2=U7(t,M2)|0,k2=Xr+4|0,D5=+A[k2>>2],c2=e[r0>>2]|0,F2=c2<<2,c=F2,F5=B,B=B+((1*c|0)+15&-16)|0,_3=Xr+8|0,L5=e[_3>>2]|0,z5=t+28|0,$6=e[z5>>2]|0,P3=(q4+544|0)+($6<<2)|0,e6=e[P3>>2]|0,x6=oi+56|0,g9=e[x6>>2]|0,u4=($6|0)!=0,n4=u4?2:0,D=n4+L5|0,A4=g9+(D*52|0)|0,U4=t+40|0,e[U4>>2]=$6,oe=(c2|0)>0,oe)for(o4=+(W|0),H3=4/o4,c7=(A[p2>>2]=H3,e[p2>>2]|0),y8=(W|0)/2&-1,k8=y8<<2,v8=c7&2147483647,i8=+(v8>>>0),B4=i8*7177114298428933e-22,He=B4+-764.6162109375,n7=He,ne=n7+.345,X7=ne,et=oi+4|0,Ot=t+24|0,Ai=t+32|0,G7=X7+-764.6162109375,Hr=W+-1|0,XA=(Hr|0)>1,Pn=X7+-382.30810546875,Cr=D5,Ui=0;;){if(as=e[t>>2]|0,zr=as+(Ui<<2)|0,si=e[zr>>2]|0,Yn=U7(t,k8)|0,ls=W1+(Ui<<2)|0,e[ls>>2]=Yn,cs=U7(t,k8)|0,Jn=l1+(Ui<<2)|0,e[Jn>>2]=cs,Kn=e[Ot>>2]|0,Vn=e[z5>>2]|0,gs=e[Ai>>2]|0,PS(si,et,q4,Kn,Vn,gs),Zr=e[z5>>2]|0,hs=(oi+12|0)+(Zr<<2)|0,zn=e[hs>>2]|0,fs=e[zn>>2]|0,us=e[Jn>>2]|0,Wp(fs,si,us),Is=e[z5>>2]|0,Zn=(oi+20|0)+(Is*12|0)|0,TS(Zn,si),ds=e[si>>2]|0,Es=ds&2147483647,Cs=+(Es>>>0),Wn=Cs*7177114298428933e-22,ms=G7+Wn,ps=ms,Wr=ps+.345,ur=Wr,A[si>>2]=ur,jr=F5+(Ui<<2)|0,A[jr>>2]=ur,XA)for(P=ur,Br=1;;)if(Qs=si+(Br<<2)|0,Ki=+A[Qs>>2],ys=Ki*Ki,jn=Br+1|0,Xn=si+(jn<<2)|0,en=+A[Xn>>2],ws=en*en,eA=ws+ys,tA=(A[p2>>2]=eA,e[p2>>2]|0),ks=tA&2147483647,iA=+(ks>>>0),rA=iA*35885571492144663e-23,vs=Pn+rA,Ir=vs,L=Ir+.345,M=L,T=jn>>1,G=si+(T<<2)|0,A[G>>2]=M,N=M>P,N?(A[jr>>2]=M,fr=M):fr=P,z=Br+2|0,Y=(z|0)<(Hr|0),Y)P=fr,Br=z;else{J=fr;break}else J=ur;if(t0=J>0,t0?(A[jr>>2]=0,H=0):H=J,e0=H>Cr,AA=e0?H:Cr,X=Ui+1|0,U=e[r0>>2]|0,o0=(X|0)<(U|0),o0)Cr=AA,Ui=X;else{p=k8,v=y8,Ni=AA;break}}else S=(W|0)/2&-1,w=S<<2,p=w,v=S,Ni=D5;Z=U7(t,p)|0,V=U7(t,p)|0,s0=e[r0>>2]|0,n0=(s0|0)>0;e:do if(n0){if(i0=(W|0)>1,K=oi+48|0,i0)mi=0;else{for(Bi=0;;){W3=(e6+4|0)+(Bi<<2)|0,f6=e[W3>>2]|0,O3=l1+(Bi<<2)|0,S3=e[O3>>2]|0,Y3=e[t>>2]|0,v6=Y3+(Bi<<2)|0,i6=e[v6>>2]|0,r3=i6+(v<<2)|0,e[U4>>2]=$6,O6=U7(t,60)|0,s3=P2+(Bi<<2)|0,e[s3>>2]=O6,st=O6,nn=st+60|0;do e[st>>2]=0,st=st+4|0;while((st|0)<(nn|0));if(tQ(A4,r3,Z),r6=F5+(Bi<<2)|0,u6=+A[r6>>2],iQ(A4,i6,V,Ni,u6),Ja(A4,Z,V,1,i6,S3,r3),D3=(e6+1028|0)+(f6<<2)|0,T6=e[D3>>2]|0,p6=(q4+800|0)+(T6<<2)|0,R6=e[p6>>2]|0,K6=(R6|0)==1,!K6){s=-1;break}if(I6=e[K>>2]|0,J6=I6+(T6<<2)|0,x3=e[J6>>2]|0,Z6=Ya(t,x3,r3,i6)|0,G6=e[s3>>2]|0,j6=G6+28|0,e[j6>>2]=Z6,r9=Sh(t)|0,N6=(r9|0)==0,N6||(S6=e[s3>>2]|0,V6=S6+28|0,Q6=e[V6>>2]|0,F6=(Q6|0)==0,F6||(Ja(A4,Z,V,2,i6,S3,r3),F3=e[D3>>2]|0,L6=e[K>>2]|0,X6=L6+(F3<<2)|0,A9=e[X6>>2]|0,W6=Ya(t,A9,r3,i6)|0,h9=e[s3>>2]|0,f9=h9+56|0,e[f9>>2]=W6,Ja(A4,Z,V,0,i6,S3,r3),s9=e[D3>>2]|0,o9=e[K>>2]|0,L9=o9+(s9<<2)|0,d6=e[L9>>2]|0,M6=Ya(t,d6,r3,i6)|0,e9=e[s3>>2]|0,e[e9>>2]=M6,M9=e[D3>>2]|0,u9=e[K>>2]|0,r4=u9+(M9<<2)|0,l4=e[r4>>2]|0,T9=e[s3>>2]|0,K9=e[T9>>2]|0,v9=T9+28|0,I9=e[v9>>2]|0,P6=R8(t,l4,K9,I9,9362)|0,t9=e[s3>>2]|0,I4=t9+4|0,e[I4>>2]=P6,k4=e[D3>>2]|0,p9=e[K>>2]|0,v4=p9+(k4<<2)|0,S4=e[v4>>2]|0,_4=e[s3>>2]|0,M4=e[_4>>2]|0,W4=_4+28|0,d4=e[W4>>2]|0,T4=R8(t,S4,M4,d4,18724)|0,G9=e[s3>>2]|0,G4=G9+8|0,e[G4>>2]=T4,R4=e[D3>>2]|0,c4=e[K>>2]|0,Ie=c4+(R4<<2)|0,O9=e[Ie>>2]|0,d9=e[s3>>2]|0,de=e[d9>>2]|0,Me=d9+28|0,ze=e[Me>>2]|0,N4=R8(t,O9,de,ze,28086)|0,Te=e[s3>>2]|0,j4=Te+12|0,e[j4>>2]=N4,ke=e[D3>>2]|0,Ze=e[K>>2]|0,V9=Ze+(ke<<2)|0,se=e[V9>>2]|0,g4=e[s3>>2]|0,D6=e[g4>>2]|0,O4=g4+28|0,R9=e[O4>>2]|0,s4=R8(t,se,D6,R9,37449)|0,z9=e[s3>>2]|0,$e=z9+16|0,e[$e>>2]=s4,ae=e[D3>>2]|0,E4=e[K>>2]|0,X4=E4+(ae<<2)|0,x4=e[X4>>2]|0,le=e[s3>>2]|0,E9=e[le>>2]|0,a6=le+28|0,Ge=e[a6>>2]|0,Ee=R8(t,x4,E9,Ge,46811)|0,C4=e[s3>>2]|0,$4=C4+20|0,e[$4>>2]=Ee,U6=e[D3>>2]|0,ve=e[K>>2]|0,Se=ve+(U6<<2)|0,We=e[Se>>2]|0,a4=e[s3>>2]|0,Q4=e[a4>>2]|0,g8=a4+28|0,Q9=e[g8>>2]|0,C9=R8(t,We,Q4,Q9,56173)|0,F4=e[s3>>2]|0,ee=F4+24|0,e[ee>>2]=C9,$7=e[D3>>2]|0,De=e[K>>2]|0,a7=De+($7<<2)|0,p7=e[a7>>2]|0,K8=e[s3>>2]|0,l7=K8+28|0,x8=e[l7>>2]|0,F8=K8+56|0,L8=e[F8>>2]|0,M8=R8(t,p7,x8,L8,9362)|0,V8=e[s3>>2]|0,z8=V8+32|0,e[z8>>2]=M8,Q7=e[D3>>2]|0,T8=e[K>>2]|0,G8=T8+(Q7<<2)|0,N8=e[G8>>2]|0,w8=e[s3>>2]|0,h8=w8+28|0,U8=e[h8>>2]|0,O8=w8+56|0,Z8=e[O8>>2]|0,W8=R8(t,N8,U8,Z8,18724)|0,f8=e[s3>>2]|0,Ne=f8+36|0,e[Ne>>2]=W8,be=e[D3>>2]|0,je=e[K>>2]|0,y9=je+(be<<2)|0,g7=e[y9>>2]|0,Ce=e[s3>>2]|0,h7=Ce+28|0,y7=e[h7>>2]|0,j8=Ce+56|0,w7=e[j8>>2]|0,te=R8(t,g7,y7,w7,28086)|0,X8=e[s3>>2]|0,P8=X8+40|0,e[P8>>2]=te,Xe=e[D3>>2]|0,P4=e[K>>2]|0,_e=P4+(Xe<<2)|0,e8=e[_e>>2]|0,u8=e[s3>>2]|0,S8=u8+28|0,ce=e[S8>>2]|0,Z9=u8+56|0,t8=e[Z9>>2]|0,I8=R8(t,e8,ce,t8,37449)|0,d8=e[s3>>2]|0,ge=d8+44|0,e[ge>>2]=I8,Be=e[D3>>2]|0,Ue=e[K>>2]|0,Oe=Ue+(Be<<2)|0,W9=e[Oe>>2]|0,Re=e[s3>>2]|0,he=Re+28|0,r8=e[he>>2]|0,me=Re+56|0,E8=e[me>>2]|0,e7=R8(t,W9,r8,E8,46811)|0,H4=e[s3>>2]|0,I3=H4+48|0,e[I3>>2]=e7,Pe=e[D3>>2]|0,C8=e[K>>2]|0,ie=C8+(Pe<<2)|0,P9=e[ie>>2]|0,re=e[s3>>2]|0,S9=re+28|0,H8=e[S9>>2]|0,f7=re+56|0,t7=e[f7>>2]|0,i7=R8(t,P9,H8,t7,56173)|0,q8=e[s3>>2]|0,r7=q8+52|0,e[r7>>2]=i7)),Y8=Bi+1|0,n8=e[r0>>2]|0,A8=(Y8|0)<(n8|0),A8)Bi=Y8;else{m=K,b8=n8;break e}}return B=rn,s|0}for(;;){_6=(e6+4|0)+(mi<<2)|0,f0=e[_6>>2]|0,Y6=l1+(mi<<2)|0,$0=e[Y6>>2]|0,C6=e[t>>2]|0,v3=C6+(mi<<2)|0,j=e[v3>>2]|0,c0=j+(v<<2)|0,e[U4>>2]=$6,Z3=U7(t,60)|0,m0=P2+(mi<<2)|0,e[m0>>2]=Z3,st=Z3,nn=st+60|0;do e[st>>2]=0,st=st+4|0;while((st|0)<(nn|0));for(zi=0;V3=$0+(zi<<2)|0,k3=e[V3>>2]|0,c3=k3&2147483647,U3=+(c3>>>0),o6=U3*7177114298428933e-22,u3=o6+-764.6162109375,y6=u3,w6=y6+.345,k6=w6,Q=zi+v|0,B6=j+(Q<<2)|0,A[B6>>2]=k6,z3=zi+1|0,m6=(z3|0)<(v|0),m6;)zi=z3;if(tQ(A4,c0,Z),A0=F5+(mi<<2)|0,l0=+A[A0>>2],iQ(A4,j,V,Ni,l0),Ja(A4,Z,V,1,j,$0,c0),g0=(e6+1028|0)+(f0<<2)|0,Q0=e[g0>>2]|0,d0=(q4+800|0)+(Q0<<2)|0,h0=e[d0>>2]|0,E0=(h0|0)==1,!E0){s=-1;break}if(C0=e[K>>2]|0,u0=C0+(Q0<<2)|0,k0=e[u0>>2]|0,J0=Ya(t,k0,c0,j)|0,D0=e[m0>>2]|0,x0=D0+28|0,e[x0>>2]=J0,F0=Sh(t)|0,G0=(F0|0)==0,G0||(p0=e[m0>>2]|0,H0=p0+28|0,R0=e[H0>>2]|0,S0=(R0|0)==0,S0||(Ja(A4,Z,V,2,j,$0,c0),L0=e[g0>>2]|0,Y0=e[K>>2]|0,q0=Y0+(L0<<2)|0,N0=e[q0>>2]|0,V0=Ya(t,N0,c0,j)|0,U0=e[m0>>2]|0,r1=U0+56|0,e[r1>>2]=V0,Ja(A4,Z,V,0,j,$0,c0),O0=e[g0>>2]|0,e1=e[K>>2]|0,v0=e1+(O0<<2)|0,i1=e[v0>>2]|0,c1=Ya(t,i1,c0,j)|0,a1=e[m0>>2]|0,e[a1>>2]=c1,f1=e[g0>>2]|0,g1=e[K>>2]|0,A1=g1+(f1<<2)|0,$1=e[A1>>2]|0,n1=e[m0>>2]|0,s1=e[n1>>2]|0,z0=n1+28|0,I1=e[z0>>2]|0,h1=R8(t,$1,s1,I1,9362)|0,E1=e[m0>>2]|0,u1=E1+4|0,e[u1>>2]=h1,d1=e[g0>>2]|0,p1=e[K>>2]|0,Q1=p1+(d1<<2)|0,D1=e[Q1>>2]|0,_1=e[m0>>2]|0,y1=e[_1>>2]|0,k1=_1+28|0,x1=e[k1>>2]|0,L1=R8(t,D1,y1,x1,18724)|0,N1=e[m0>>2]|0,w1=N1+8|0,e[w1>>2]=L1,Z1=e[g0>>2]|0,G1=e[K>>2]|0,v1=G1+(Z1<<2)|0,K1=e[v1>>2]|0,P1=e[m0>>2]|0,H1=e[P1>>2]|0,q1=P1+28|0,Y1=e[q1>>2]|0,j1=R8(t,K1,H1,Y1,28086)|0,r2=e[m0>>2]|0,O1=r2+12|0,e[O1>>2]=j1,l2=e[g0>>2]|0,z1=e[K>>2]|0,h2=z1+(l2<<2)|0,A2=e[h2>>2]|0,d2=e[m0>>2]|0,s2=e[d2>>2]|0,V1=d2+28|0,g2=e[V1>>2]|0,$2=R8(t,A2,s2,g2,37449)|0,i2=e[m0>>2]|0,o2=i2+16|0,e[o2>>2]=$2,X1=e[g0>>2]|0,n2=e[K>>2]|0,f2=n2+(X1<<2)|0,e2=e[f2>>2]|0,y2=e[m0>>2]|0,S2=e[y2>>2]|0,w2=y2+28|0,C2=e[w2>>2]|0,_2=R8(t,e2,S2,C2,46811)|0,G2=e[m0>>2]|0,u2=G2+20|0,e[u2>>2]=_2,K2=e[g0>>2]|0,N2=e[K>>2]|0,q2=N2+(K2<<2)|0,T2=e[q2>>2]|0,O2=e[m0>>2]|0,V2=e[O2>>2]|0,A5=O2+28|0,T1=e[A5>>2]|0,j2=R8(t,T2,V2,T1,56173)|0,R5=e[m0>>2]|0,X2=R5+24|0,e[X2>>2]=j2,v5=e[g0>>2]|0,z2=e[K>>2]|0,f5=z2+(v5<<2)|0,w5=e[f5>>2]|0,O5=e[m0>>2]|0,a5=O5+28|0,E5=e[a5>>2]|0,r5=O5+56|0,x2=e[r5>>2]|0,R2=R8(t,w5,E5,x2,9362)|0,B2=e[m0>>2]|0,C5=B2+32|0,e[C5>>2]=R2,x5=e[g0>>2]|0,u5=e[K>>2]|0,S5=u5+(x5<<2)|0,G5=e[S5>>2]|0,H2=e[m0>>2]|0,I5=H2+28|0,s5=e[I5>>2]|0,l5=H2+56|0,B5=e[l5>>2]|0,M1=R8(t,G5,s5,B5,18724)|0,k5=e[m0>>2]|0,c5=k5+36|0,e[c5>>2]=M1,o5=e[g0>>2]|0,Z2=e[K>>2]|0,m5=Z2+(o5<<2)|0,e5=e[m5>>2]|0,n5=e[m0>>2]|0,g5=n5+28|0,J2=e[g5>>2]|0,h5=n5+56|0,t5=e[h5>>2]|0,b5=R8(t,e5,J2,t5,28086)|0,W2=e[m0>>2]|0,$5=W2+40|0,e[$5>>2]=b5,p5=e[g0>>2]|0,q5=e[K>>2]|0,e3=q5+(p5<<2)|0,d5=e[e3>>2]|0,f3=e[m0>>2]|0,g3=f3+28|0,K5=e[g3>>2]|0,t3=f3+56|0,A3=e[t3>>2]|0,E3=R8(t,d5,K5,A3,37449)|0,V5=e[m0>>2]|0,y3=V5+44|0,e[y3>>2]=E3,h3=e[g0>>2]|0,B3=e[K>>2]|0,q3=B3+(h3<<2)|0,M3=e[q3>>2]|0,Z5=e[m0>>2]|0,Q3=Z5+28|0,j5=e[Q3>>2]|0,j3=Z5+56|0,T3=e[j3>>2]|0,$3=R8(t,M3,j5,T3,46811)|0,a3=e[m0>>2]|0,l3=a3+48|0,e[l3>>2]=$3,C3=e[g0>>2]|0,Y5=e[K>>2]|0,N5=Y5+(C3<<2)|0,P5=e[N5>>2]|0,y5=e[m0>>2]|0,G3=y5+28|0,t6=e[G3>>2]|0,i3=y5+56|0,o3=e[i3>>2]|0,R3=R8(t,P5,t6,o3,56173)|0,h6=e[m0>>2]|0,m3=h6+52|0,e[m3>>2]=R3)),w3=mi+1|0,p3=e[r0>>2]|0,X3=(w3|0)<(p3|0),X3)mi=w3;else{m=K,b8=p3;break e}}return B=rn,s|0}else y=oi+48|0,m=y,b8=s0;while(!1);for(A[k2>>2]=Ni,D8=b8<<2,f=D8,qe=B,B=B+((1*f|0)+15&-16)|0,d=D8,B9=B,B=B+((1*d|0)+15&-16)|0,A7=Sh(t)|0,Ye=(A7|0)!=0,L7=Ye?0:7,O7=oi+44|0,k7=t+24|0,s7=t+32|0,v7=q4+2868|0,M7=oi+52|0,ai=L7;;){if(P7=(Xr+12|0)+(ai<<2)|0,s8=e[P7>>2]|0,U2(s8,0,1),_8=e[O7>>2]|0,U2(s8,$6,_8),S7=e[z5>>2]|0,J8=(S7|0)==0,J8||(xe=e[k7>>2]|0,U2(s8,xe,1),fe=e[s7>>2]|0,U2(s8,fe,1)),j9=e[r0>>2]|0,D7=(j9|0)>0,D7)for(Vt=0;;)if(Lt=(e6+4|0)+(Vt<<2)|0,Mt=e[Lt>>2]|0,Tt=W1+(Vt<<2)|0,ct=e[Tt>>2]|0,H7=(e6+1028|0)+(Mt<<2)|0,gt=e[H7>>2]|0,q7=e[m>>2]|0,ht=q7+(gt<<2)|0,Y7=e[ht>>2]|0,ft=P2+(Vt<<2)|0,ti=e[ft>>2]|0,Gt=ti+(ai<<2)|0,ut=e[Gt>>2]|0,It=qv(s8,t,Y7,ut,ct)|0,ii=T0+(Vt<<2)|0,e[ii>>2]=It,dt=Vt+1|0,tt=e[r0>>2]|0,ri=(dt|0)<(tt|0),ri)Vt=dt;else{I=tt;break}else I=j9;if(Nt=e[z5>>2]|0,Ut=((q4+3240|0)+(Nt*60|0)|0)+(ai<<2)|0,Pt=e[Ut>>2]|0,IS(ai,v7,A4,e6,l1,W1,T0,Pt,I),it=e[e6>>2]|0,Et=(it|0)>0,Et)for(pi=0;;){if(Ht=(e6+1092|0)+(pi<<2)|0,J7=e[Ht>>2]|0,rt=e[r0>>2]|0,T7=(rt|0)>0,T7)for(Vr=rt,$i=0,Zi=0;;)if(K7=(e6+4|0)+(Zi<<2)|0,ni=e[K7>>2]|0,qt=(ni|0)==(pi|0),qt?(Ct=B9+($i<<2)|0,Yt=T0+(Zi<<2)|0,Bt=e[Yt>>2]|0,Ss=(Bt|0)!=0,n=Ss&1,e[Ct>>2]=n,mt=W1+(Zi<<2)|0,Jt=e[mt>>2]|0,pt=$i+1|0,V7=qe+($i<<2)|0,e[V7>>2]=Jt,C=e[r0>>2]|0,nt=C,tn=pt):(nt=Vr,tn=$i),Qt=Zi+1|0,Kt=(Qt|0)<(nt|0),Kt)Vr=nt,$i=tn,Zi=Qt;else{nA=tn;break}else nA=0;if(yt=(q4+1312|0)+(J7<<2)|0,pe=e[yt>>2]|0,wt=25648+(pe<<2)|0,b7=e[wt>>2]|0,At=b7+20|0,i9=e[At>>2]|0,u7=e[M7>>2]|0,B8=u7+(J7<<2)|0,I7=e[B8>>2]|0,_7=$m[i9&7](t,I7,qe,B9,nA)|0,hr=e[r0>>2]|0,VA=(hr|0)>0,VA)for(Vi=0,mr=0;;)if(Ln=(e6+4|0)+(mr<<2)|0,zA=e[Ln>>2]|0,Mn=(zA|0)==(pi|0),Mn?(ZA=W1+(mr<<2)|0,WA=e[ZA>>2]|0,Tn=Vi+1|0,jA=qe+(Vi<<2)|0,e[jA>>2]=WA,Er=Tn):Er=Vi,qr=mr+1|0,es=(qr|0)<(hr|0),es)Vi=Er,mr=qr;else{dr=Er;break}else dr=0;if(ts=e[yt>>2]|0,Gn=25648+(ts<<2)|0,is=e[Gn>>2]|0,Nn=is+24|0,Un=e[Nn>>2]|0,rs=e[M7>>2]|0,Yr=rs+(J7<<2)|0,On=e[Yr>>2]|0,QQ[Un&3](s8,t,On,qe,B9,dr,_7,pi)|0,Jr=pi+1|0,Hn=e[e6>>2]|0,ns=(Jr|0)<(Hn|0),ns)pi=Jr;else break}if(As=ai+1|0,ss=Sh(t)|0,Kr=(ss|0)!=0,qn=Kr?14:7,os=(ai|0)<(qn|0),os)ai=As;else{s=0;break}}return B=rn,s|0}function aS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0;if(F2=B,S=t+64|0,w=e[S>>2]|0,E1=w+4|0,L1=e[E1>>2]|0,Y1=L1+28|0,V1=e[Y1>>2]|0,y2=w+104|0,T2=e[y2>>2]|0,f5=t+28|0,x5=e[f5>>2]|0,y=V1+(x5<<2)|0,P=e[y>>2]|0,Z=t+36|0,e[Z>>2]=P,$0=L1+4|0,J0=e[$0>>2]|0,L0=J0<<2,c=L0,i1=B,B=B+((1*c|0)+15&-16)|0,f=L0,z0=B,B=B+((1*f|0)+15&-16)|0,d=L0,I1=B,B=B+((1*d|0)+15&-16)|0,I=L0,h1=B,B=B+((1*I|0)+15&-16)|0,u1=e[$0>>2]|0,d1=(u1|0)>0,d1)for(m1=n+4|0,p1=n+1028|0,Q1=T2+48|0,D1=P<<1,_1=D1&2147483646,Z2=0;;)if(U1=m1+(Z2<<2)|0,Z1=e[U1>>2]|0,G1=p1+(Z1<<2)|0,v1=e[G1>>2]|0,K1=(V1+800|0)+(v1<<2)|0,P1=e[K1>>2]|0,H1=25640+(P1<<2)|0,q1=e[H1>>2]|0,j1=q1+20|0,r2=e[j1>>2]|0,W1=e[Q1>>2]|0,O1=W1+(v1<<2)|0,l2=e[O1>>2]|0,z1=lt[r2&15](t,l2)|0,h2=h1+(Z2<<2)|0,e[h2>>2]=z1,A2=I1+(Z2<<2)|0,W2=(z1|0)!=0,s=W2&1,e[A2>>2]=s,d2=e[t>>2]|0,s2=d2+(Z2<<2)|0,g2=e[s2>>2]|0,Ae(g2|0,0,_1|0)|0,$2=Z2+1|0,t2=e[$0>>2]|0,a2=($2|0)<(t2|0),a2)Z2=$2;else{n1=t2;break}else n1=u1;if(y1=n+1156|0,k1=e[y1>>2]|0,x1=(k1|0)>0,x1)for(N1=n+1160|0,w1=n+2184|0,c2=0;e2=N1+(c2<<2)|0,S2=e[e2>>2]|0,w2=I1+(S2<<2)|0,C2=e[w2>>2]|0,M2=(C2|0)==0,_2=w1+(c2<<2)|0,G2=e[_2>>2]|0,M2?(u2=I1+(G2<<2)|0,K2=e[u2>>2]|0,N2=(K2|0)==0,N2||($5=10)):$5=10,($5|0)==10&&($5=0,e[w2>>2]=1,q2=I1+(G2<<2)|0,e[q2>>2]=1),O2=c2+1|0,V2=(O2|0)<(k1|0),V2;)c2=O2;if(i2=e[n>>2]|0,o2=(i2|0)>0,o2){for(X1=n+1092|0,n2=T2+52|0,f2=n+4|0,A5=n1,m5=0;;){if(P2=(A5|0)>0,P2)for(s1=A5,c5=0,h5=0;;)if(T1=f2+(h5<<2)|0,j2=e[T1>>2]|0,R5=(j2|0)==(m5|0),R5?(X2=I1+(h5<<2)|0,v5=e[X2>>2]|0,z2=z0+(c5<<2)|0,b5=(v5|0)!=0,$=b5&1,e[z2>>2]=$,w5=e[t>>2]|0,O5=w5+(h5<<2)|0,a5=e[O5>>2]|0,k2=c5+1|0,E5=i1+(c5<<2)|0,e[E5>>2]=a5,m=e[$0>>2]|0,R2=m,o5=k2):(R2=s1,o5=c5),r5=h5+1|0,x2=(r5|0)<(R2|0),x2)s1=R2,c5=o5,h5=r5;else{k5=o5;break}else k5=0;if(B2=X1+(m5<<2)|0,C5=e[B2>>2]|0,u5=(V1+1312|0)+(C5<<2)|0,S5=e[u5>>2]|0,G5=25648+(S5<<2)|0,D5=e[G5>>2]|0,H2=D5+28|0,I5=e[H2>>2]|0,s5=e[n2>>2]|0,l5=s5+(C5<<2)|0,B5=e[l5>>2]|0,$m[I5&7](t,B5,i1,z0,k5)|0,M1=m5+1|0,D=e[n>>2]|0,Q=(M1|0)<(D|0),!Q)break;p=e[$0>>2]|0,A5=p,m5=M1}v=e[y1>>2]|0,b=v}else b=k1;if(R=(b|0)>0,R)for(_=n+1160|0,L=e[t>>2]|0,M=n+2184|0,T=(P|0)/2&-1,G=(P|0)>1,n5=b;;){if(e5=n5+-1|0,e0=_+(e5<<2)|0,H=e[e0>>2]|0,X=L+(H<<2)|0,U=e[X>>2]|0,o0=M+(e5<<2)|0,V=e[o0>>2]|0,s0=L+(V<<2)|0,n0=e[s0>>2]|0,G)for(t5=0;;){i0=U+(t5<<2)|0,r0=+A[i0>>2],K=n0+(t5<<2)|0,c0=+A[K>>2],A0=r0>0,l0=c0>0;do if(A0)if(l0){A[i0>>2]=r0,j=r0-c0,A[K>>2]=j;break}else{A[K>>2]=r0,g0=c0+r0,A[i0>>2]=g0;break}else if(l0){A[i0>>2]=r0,f0=c0+r0,A[K>>2]=f0;break}else{A[K>>2]=r0,Q0=r0-c0,A[i0>>2]=Q0;break}while(!1);if(d0=t5+1|0,y0=(d0|0)<(T|0),y0)t5=d0;else break}if(N=(n5|0)>1,N)n5=e5;else break}if(z=e[$0>>2]|0,Y=(z|0)>0,!Y)return B=F2,0;for(t0=n+4|0,J=n+1028|0,W=T2+48|0,g5=0;;)if(E0=e[t>>2]|0,C0=E0+(g5<<2)|0,u0=e[C0>>2]|0,k0=t0+(g5<<2)|0,D0=e[k0>>2]|0,m0=J+(D0<<2)|0,x0=e[m0>>2]|0,F0=(V1+800|0)+(x0<<2)|0,M0=e[F0>>2]|0,G0=25640+(M0<<2)|0,p0=e[G0>>2]|0,H0=p0+24|0,R0=e[H0>>2]|0,S0=e[W>>2]|0,Y0=S0+(x0<<2)|0,q0=e[Y0>>2]|0,N0=h1+(g5<<2)|0,V0=e[N0>>2]|0,sm[R0&3](t,q0,V0,u0)|0,T0=g5+1|0,U0=e[$0>>2]|0,r1=(T0|0)<(U0|0),r1)g5=T0;else{C=U0;break}if(h0=(C|0)>0,!h0)return B=F2,0;for(J2=0;O0=e[t>>2]|0,e1=O0+(J2<<2)|0,v0=e[e1>>2]|0,c1=e[f5>>2]|0,a1=(T2+12|0)+(c1<<2)|0,f1=e[a1>>2]|0,g1=e[f1>>2]|0,lS(g1,v0,v0),l1=J2+1|0,A1=e[$0>>2]|0,$1=(l1|0)<(A1|0),$1;)J2=l1;return B=F2,0}function em(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0;if(y1=B,s=(n|0)/4&-1,$=s<<2,y=k9($)|0,P=s+n|0,Z=P<<2,$0=k9(Z)|0,J0=n>>1,L0=+(n|0),i1=L0,I1=+Or(+i1),c=I1*1.4426950408889634,f=+Ti(c),d=~~f,I=t+4|0,e[I>>2]=d,e[t>>2]=n,C=t+8|0,e[C>>2]=$0,p=t+12|0,e[p>>2]=y,m=(n|0)>3,!m){z0=4/L0,h1=t+16|0,A[h1>>2]=z0;return}for(v=+(n|0),S=3.141592653589793/v,w=n<<1,D=+(w|0),Q=3.141592653589793/D,m1=0;M=m1<<2,T=+(M|0),G=S*T,N=+Yo(+G),z=N,Y=m1<<1,t0=$0+(Y<<2)|0,A[t0>>2]=z,J=+xn(+G),W=J,e0=-W,H=Y|1,X=$0+(H<<2)|0,A[X>>2]=e0,U=+(H|0),o0=Q*U,V=+Yo(+o0),s0=V,n0=Y+J0|0,i0=$0+(n0<<2)|0,A[i0>>2]=s0,r0=+xn(+o0),K=r0,c0=n0+1|0,A0=$0+(c0<<2)|0,A[A0>>2]=K,l0=m1+1|0,j=(l0|0)<(s|0),j;)m1=l0;if(b=(n|0)/8&-1,R=(n|0)>7,!R){z0=4/L0,h1=t+16|0,A[h1>>2]=z0;return}for(_=+(n|0),L=3.141592653589793/_,p1=0;g0=p1<<2,f0=g0|2,Q0=+(f0|0),d0=L*Q0,y0=+Yo(+d0),h0=y0*.5,E0=h0,C0=p1<<1,u0=C0+n|0,k0=$0+(u0<<2)|0,A[k0>>2]=E0,D0=+xn(+d0),m0=D0*-.5,x0=m0,F0=u0+1|0,M0=$0+(F0<<2)|0,A[M0>>2]=x0,G0=p1+1|0,p0=(G0|0)<(b|0),p0;)p1=G0;if(H0=d+-1|0,R0=1<>2]=z0;return}for(;;){for(V0=q0,E1=0,D1=0;;)if(N0=V0&Q1,T0=(N0|0)==0,U0=1<>O0,v0=(e1|0)==0,v0){d1=u1;break}else V0=e1,E1=u1,D1=O0;if(c1=d1^-1,a1=S0&c1,f1=a1+-1|0,g1=Q1<<1,l1=y+(g1<<2)|0,e[l1>>2]=f1,A1=g1|1,$1=y+(A1<<2)|0,e[$1>>2]=d1,n1=Q1+1|0,s1=(n1|0)<(b|0),s1)Q1=n1;else break}z0=4/L0,h1=t+16|0,A[h1>>2]=z0}function tm(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0;p=B,n=(t|0)==0,!n&&(s=t+8|0,$=e[s>>2]|0,c=($|0)==0,c||I2($),f=t+12|0,d=e[f>>2]|0,I=(d|0)==0,I||I2(d),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0)}function lS(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0;for(U3=B,d=e[t>>2]|0,I=d>>1,W1=d>>2,$=I+-7|0,K2=n+($<<2)|0,c=I+W1|0,X2=s+(c<<2)|0,R2=t+8|0,l5=e[R2>>2]|0,g5=l5+(W1<<2)|0,l3=g5,N5=K2,w3=X2;d5=w3+-16|0,B3=N5+8|0,C=+A[B3>>2],_=l3+12|0,W=+A[_>>2],r0=C*W,y0=-r0,M0=+A[N5>>2],T0=l3+8|0,l1=+A[T0>>2],m1=l1*M0,U1=y0-m1,A[d5>>2]=U1,O1=+A[N5>>2],a2=+A[_>>2],y2=a2*O1,S2=+A[B3>>2],w2=+A[T0>>2],C2=w2*S2,M2=y2-C2,_2=w3+-12|0,A[_2>>2]=M2,G2=N5+24|0,u2=+A[G2>>2],N2=l3+4|0,q2=+A[N2>>2],T2=u2*q2,O2=-T2,V2=N5+16|0,A5=+A[V2>>2],P2=+A[l3>>2],T1=P2*A5,j2=O2-T1,R5=w3+-8|0,A[R5>>2]=j2,v5=+A[V2>>2],z2=+A[N2>>2],f5=z2*v5,w5=+A[G2>>2],O5=+A[l3>>2],a5=O5*w5,k2=f5-a5,E5=w3+-4|0,A[E5>>2]=k2,r5=N5+-32|0,x2=l3+16|0,B2=r5>>>0>>0,!B2;)l3=x2,N5=r5,w3=d5;for(C5=s+(I<<2)|0,f=I+-8|0,x5=n+(f<<2)|0,C3=g5,P5=x5,p3=X2;u5=C3+-16|0,S5=P5+16|0,G5=+A[S5>>2],D5=C3+-4|0,H2=+A[D5>>2],I5=H2*G5,s5=P5+24|0,B5=+A[s5>>2],M1=C3+-8|0,k5=+A[M1>>2],c5=k5*B5,o5=c5+I5,A[p3>>2]=o5,Z2=+A[S5>>2],c2=+A[M1>>2],m5=c2*Z2,e5=+A[s5>>2],n5=+A[D5>>2],J2=n5*e5,h5=m5-J2,t5=p3+4|0,A[t5>>2]=h5,b5=+A[P5>>2],W2=C3+-12|0,$5=+A[W2>>2],F2=$5*b5,p5=P5+8|0,q5=+A[p5>>2],e3=+A[u5>>2],f3=e3*q5,g3=f3+F2,K5=p3+8|0,A[K5>>2]=g3,t3=+A[P5>>2],A3=+A[u5>>2],E3=A3*t3,F5=+A[p5>>2],V5=+A[W2>>2],y3=V5*F5,h3=E3-y3,q3=p3+12|0,A[q3>>2]=h3,M3=P5+-32|0,Z5=p3+16|0,Q3=M3>>>0>>0,!Q3;)C3=u5,P5=M3,p3=Z5;for(t6=t+4|0,i3=e[t6>>2]|0,jp(i3,l5,C5,I),o3=e[t>>2]|0,R3=e[R2>>2]|0,h6=t+12|0,m3=e[h6>>2]|0,Xp(o3,R3,m3,s),j5=e[R2>>2]|0,j3=j5+(I<<2)|0,Y5=j3,y5=s,X3=X2,z5=X2;_3=X3+-16|0,T3=+A[y5>>2],$3=Y5+4|0,a3=+A[$3>>2],p=a3*T3,m=y5+4|0,v=+A[m>>2],S=+A[Y5>>2],w=S*v,y=p-w,D=X3+-4|0,A[D>>2]=y,Q=+A[y5>>2],b=+A[Y5>>2],R=b*Q,L=+A[m>>2],M=+A[$3>>2],T=M*L,G=R+T,N=-G,A[z5>>2]=N,P=y5+8|0,z=+A[P>>2],Y=Y5+12|0,t0=+A[Y>>2],J=t0*z,e0=y5+12|0,H=+A[e0>>2],X=Y5+8|0,U=+A[X>>2],o0=U*H,Z=J-o0,V=X3+-8|0,A[V>>2]=Z,s0=+A[P>>2],n0=+A[X>>2],i0=n0*s0,K=+A[e0>>2],c0=+A[Y>>2],A0=c0*K,l0=i0+A0,j=-l0,$0=z5+4|0,A[$0>>2]=j,g0=y5+16|0,f0=+A[g0>>2],Q0=Y5+20|0,d0=+A[Q0>>2],h0=d0*f0,E0=y5+20|0,C0=+A[E0>>2],u0=Y5+16|0,k0=+A[u0>>2],J0=k0*C0,D0=h0-J0,m0=X3+-12|0,A[m0>>2]=D0,x0=+A[g0>>2],F0=+A[u0>>2],G0=F0*x0,p0=+A[E0>>2],H0=+A[Q0>>2],R0=H0*p0,S0=G0+R0,L0=-S0,Y0=z5+8|0,A[Y0>>2]=L0,q0=y5+24|0,N0=+A[q0>>2],V0=Y5+28|0,U0=+A[V0>>2],r1=U0*N0,O0=y5+28|0,e1=+A[O0>>2],v0=Y5+24|0,i1=+A[v0>>2],c1=i1*e1,a1=r1-c1,A[_3>>2]=a1,f1=+A[q0>>2],g1=+A[v0>>2],A1=g1*f1,$1=+A[O0>>2],n1=+A[V0>>2],s1=n1*$1,z0=A1+s1,I1=-z0,h1=z5+12|0,A[h1>>2]=I1,E1=z5+16|0,u1=y5+32|0,d1=Y5+32|0,p1=u1>>>0<_3>>>0,p1;)Y5=d1,y5=u1,X3=_3,z5=E1;for(Q1=s+(W1<<2)|0,G3=X2,V3=Q1,k3=Q1;;)if(D1=V3+-16|0,_1=G3+-16|0,y1=G3+-4|0,k1=+A[y1>>2],x1=V3+-4|0,A[x1>>2]=k1,L1=-k1,A[k3>>2]=L1,N1=G3+-8|0,w1=+A[N1>>2],Z1=V3+-8|0,A[Z1>>2]=w1,G1=-w1,v1=k3+4|0,A[v1>>2]=G1,K1=G3+-12|0,P1=+A[K1>>2],H1=V3+-12|0,A[H1>>2]=P1,q1=-P1,Y1=k3+8|0,A[Y1>>2]=q1,j1=+A[_1>>2],A[D1>>2]=j1,r2=-j1,l2=k3+12|0,A[l2>>2]=r2,z1=k3+16|0,h2=z1>>>0<_1>>>0,h2)G3=_1,V3=D1,k3=z1;else{L5=X2,N3=X2;break}for(;A2=N3+-16|0,d2=L5+12|0,s2=e[d2>>2]|0,e[A2>>2]=s2,V1=L5+8|0,g2=e[V1>>2]|0,$2=N3+-12|0,e[$2>>2]=g2,t2=L5+4|0,i2=e[t2>>2]|0,o2=N3+-8|0,e[o2>>2]=i2,X1=e[L5>>2]|0,n2=N3+-4|0,e[n2>>2]=X1,f2=L5+16|0,e2=A2>>>0>C5>>>0,e2;)L5=f2,N3=A2}function Wp(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0;if(q5=B,w=e[t>>2]|0,y=w>>1,r1=w>>2,$1=w>>3,Q1=w<<2,$=Q1,G1=B,B=B+((1*$|0)+15&-16)|0,l2=G1+(y<<2)|0,c=y+r1|0,i2=n+(c<<2)|0,_2=t+8|0,T1=e[_2>>2]|0,D=T1+(y<<2)|0,z=($1|0)>0,z){for(f=c+1|0,V=n+(f<<2)|0,g0=$1+-1|0,D0=g0>>>1,Y0=D0<<1,N0=y+-2|0,V0=N0-Y0|0,T0=c+-4|0,U0=D0<<2,O0=T0-U0|0,r5=D,S5=0,g5=i2,b5=V;e1=g5+-16|0,v0=r5+-8|0,i1=g5+-8|0,c1=+A[i1>>2],a1=+A[b5>>2],f1=a1+c1,g1=+A[e1>>2],l1=b5+8|0,A1=+A[l1>>2],n1=A1+g1,s1=r5+-4|0,z0=+A[s1>>2],I1=n1*z0,h1=+A[v0>>2],E1=h1*f1,u1=E1+I1,v=S5+y|0,d1=G1+(v<<2)|0,A[d1>>2]=u1,m1=+A[v0>>2],p1=m1*n1,D1=+A[s1>>2],_1=D1*f1,y1=p1-_1,k1=S5|1,S=k1+y|0,x1=G1+(S<<2)|0,A[x1>>2]=y1,L1=b5+16|0,N1=S5+2|0,w1=(N1|0)<($1|0),w1;)r5=v0,S5=N1,g5=e1,b5=L1;U1=Y0+2|0,c2=T1+(V0<<2)|0,m5=n+(O0<<2)|0,P2=V0,E5=c2,u5=U1,n5=m5}else P2=y,E5=D,u5=0,n5=i2;if(Z1=n+4|0,v1=y-$1|0,K1=(u5|0)<(v1|0),K1){for(P1=y+-1|0,H1=P1-u5|0,q1=H1-$1|0,Y1=q1>>>1,j1=Y1<<1,r2=u5+j1|0,W1=Y1<<2,O1=W1+5|0,z1=-2-j1|0,R2=E5,D5=u5,J2=n5,$5=Z1;h2=R2+-8|0,A2=J2+-16|0,d2=J2+-8|0,s2=+A[d2>>2],V1=+A[$5>>2],g2=s2-V1,$2=+A[A2>>2],t2=$5+8|0,a2=+A[t2>>2],o2=$2-a2,X1=R2+-4|0,n2=+A[X1>>2],f2=o2*n2,e2=+A[h2>>2],y2=e2*g2,S2=y2+f2,C=D5+y|0,w2=G1+(C<<2)|0,A[w2>>2]=S2,C2=+A[h2>>2],M2=C2*o2,G2=+A[X1>>2],u2=G2*g2,K2=M2-u2,N2=D5|1,p=N2+y|0,q2=G1+(p<<2)|0,A[q2>>2]=K2,T2=$5+16|0,O2=D5+2|0,V2=(O2|0)<(v1|0),V2;)R2=h2,D5=O2,J2=A2,$5=T2;A5=r2+2|0,o5=n+(O1<<2)|0,m=P2+z1|0,Z2=T1+(m<<2)|0,x2=Z2,G5=A5,W2=o5}else x2=E5,G5=u5,W2=Z1;if(j2=(G5|0)<(y|0),j2)for(R5=n+(w<<2)|0,B2=x2,H2=G5,h5=R5,F2=W2;X2=B2+-8|0,v5=h5+-16|0,z2=h5+-8|0,f5=+A[z2>>2],w5=-f5,O5=+A[F2>>2],a5=w5-O5,k2=+A[v5>>2],Q=-k2,b=F2+8|0,R=+A[b>>2],_=Q-R,L=B2+-4|0,M=+A[L>>2],T=_*M,G=+A[X2>>2],N=G*a5,P=N+T,d=H2+y|0,Y=G1+(d<<2)|0,A[Y>>2]=P,t0=+A[X2>>2],J=t0*_,W=+A[L>>2],e0=W*a5,H=J-e0,X=H2|1,I=X+y|0,U=G1+(I<<2)|0,A[U>>2]=H,o0=F2+16|0,Z=H2+2|0,s0=(Z|0)<(y|0),s0;)B2=X2,H2=Z,h5=v5,F2=o0;if(s5=t+4|0,l5=e[s5>>2]|0,jp(l5,T1,l2,y),c5=e[t>>2]|0,B5=e[_2>>2]|0,M1=t+12|0,k5=e[M1>>2]|0,Xp(c5,B5,k5,G1),n0=(r1|0)>0,!n0){B=q5;return}for(i0=s+(y<<2)|0,r0=e[_2>>2]|0,K=r0+(y<<2)|0,c0=t+16|0,C5=K,I5=0,e5=G1,t5=i0;A0=t5+-4|0,l0=+A[e5>>2],j=+A[C5>>2],$0=j*l0,f0=e5+4|0,Q0=+A[f0>>2],d0=C5+4|0,y0=+A[d0>>2],h0=y0*Q0,E0=h0+$0,C0=+A[c0>>2],u0=E0*C0,k0=s+(I5<<2)|0,A[k0>>2]=u0,J0=+A[e5>>2],m0=+A[d0>>2],x0=m0*J0,F0=+A[f0>>2],M0=+A[C5>>2],G0=M0*F0,p0=x0-G0,H0=+A[c0>>2],R0=p0*H0,A[A0>>2]=R0,S0=e5+8|0,L0=C5+8|0,q0=I5+1|0,x5=(q0|0)==(r1|0),!x5;)C5=L0,I5=q0,e5=S0,t5=A0;B=q5}function jp(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,B6=0,z3=0,$6=0,m6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,s3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0,_4=0,M4=0,W4=0,d4=0,T4=0,G9=0,G4=0,A4=0,R4=0,c4=0,Ie=0,O9=0,d9=0,de=0,Me=0,ze=0,N4=0,Te=0,U4=0,j4=0,ke=0,Ze=0,V9=0,se=0,g4=0,D6=0,O4=0,R9=0,s4=0,D4=0,oe=0,z9=0,$e=0,ae=0,E4=0,X4=0,x4=0,le=0,E9=0,a6=0,Ge=0,o4=0,Ee=0,C4=0,$4=0,U6=0,ve=0,Se=0,We=0,a4=0,Q4=0,g8=0,H3=0,Q9=0,C9=0,F4=0,ee=0,$7=0,De=0,a7=0,p7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,Q7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ne=0,be=0,je=0,k8=0,y9=0,g7=0,Ce=0,h7=0,y7=0,j8=0,w7=0,te=0,X8=0,P8=0,v8=0,Xe=0,P4=0,_e=0,e8=0,u8=0,S8=0,ce=0,Z9=0,t8=0,I8=0,i8=0,d8=0,ge=0,Be=0,Ue=0,Oe=0,W9=0,Re=0,he=0,r8=0,me=0,B4=0,E8=0,e7=0,H4=0,I3=0,Pe=0,C8=0,ie=0,P9=0,re=0,S9=0,He=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,A8=0,D8=0,q4=0,n7=0,b8=0,qe=0,B9=0,A7=0,Ye=0,L7=0,O7=0,k7=0,s7=0,v7=0,ne=0,M7=0,P7=0,s8=0,_8=0,S7=0,J8=0,xe=0,fe=0,j9=0,D7=0,X7=0,Lt=0,Mt=0,Tt=0,ct=0,H7=0,gt=0,q7=0,ht=0,Y7=0,ft=0,et=0,ti=0,Gt=0,ut=0,It=0,ii=0,dt=0,tt=0,ri=0,Nt=0,Ut=0,Ot=0,Pt=0,it=0,Et=0,Ht=0,J7=0,rt=0,T7=0,K7=0,ni=0,qt=0,Ai=0,Ct=0,Yt=0,Bt=0,mt=0,Jt=0,pt=0,V7=0,Qt=0,Kt=0,nt=0,G7=0,yt=0,pe=0,wt=0,b7=0,At=0,i9=0,u7=0,B8=0,I7=0,_7=0,Hr=0,hr=0;if(hr=B,f0=t+-6|0,Q0=(t|0)>6,Q0)for(I=$+-8|0,O5=s+(I<<2)|0,D3=$>>1,m=D3+-8|0,K8=s+(m<<2)|0,c=n,u7=O5,I7=K8;s8=u7+24|0,Tt=+A[s8>>2],ut=I7+24|0,Et=+A[ut>>2],Bt=Tt-Et,d0=u7+28|0,F0=+A[d0>>2],V0=I7+28|0,g1=+A[V0>>2],d1=F0-g1,w1=Et+Tt,A[s8>>2]=w1,r2=+A[V0>>2],$2=r2+F0,A[d0>>2]=$2,w2=c+4|0,V2=+A[w2>>2],a5=V2*d1,G5=+A[c>>2],Z2=G5*Bt,$5=Z2+a5,A[ut>>2]=$5,E3=+A[c>>2],j3=E3*d1,G3=+A[w2>>2],V3=G3*Bt,B6=j3-V3,A[V0>>2]=B6,O3=u7+16|0,T6=+A[O3>>2],r9=I7+16|0,W6=+A[r9>>2],u9=T6-W6,k4=u7+20|0,G4=+A[k4>>2],Te=I7+20|0,s4=+A[Te>>2],a6=G4-s4,Q4=W6+T6,A[O3>>2]=Q4,l7=+A[Te>>2],N8=l7+G4,A[k4>>2]=N8,je=c+20|0,P8=+A[je>>2],I8=P8*a6,me=c+16|0,S9=+A[me>>2],D8=S9*u9,s7=D8+I8,A[r9>>2]=s7,P7=+A[me>>2],_8=P7*a6,S7=+A[je>>2],J8=S7*u9,xe=_8-J8,A[Te>>2]=xe,fe=u7+8|0,j9=+A[fe>>2],D7=I7+8|0,X7=+A[D7>>2],Lt=j9-X7,Mt=u7+12|0,ct=+A[Mt>>2],H7=I7+12|0,gt=+A[H7>>2],q7=ct-gt,ht=X7+j9,A[fe>>2]=ht,Y7=+A[H7>>2],ft=Y7+ct,A[Mt>>2]=ft,et=c+36|0,ti=+A[et>>2],Gt=ti*q7,It=c+32|0,ii=+A[It>>2],dt=ii*Lt,tt=dt+Gt,A[D7>>2]=tt,ri=+A[It>>2],Nt=ri*q7,Ut=+A[et>>2],Ot=Ut*Lt,Pt=Nt-Ot,A[H7>>2]=Pt,it=+A[u7>>2],Ht=+A[I7>>2],J7=it-Ht,rt=u7+4|0,T7=+A[rt>>2],K7=I7+4|0,ni=+A[K7>>2],qt=T7-ni,Ai=Ht+it,A[u7>>2]=Ai,Ct=+A[K7>>2],Yt=Ct+T7,A[rt>>2]=Yt,mt=c+52|0,Jt=+A[mt>>2],pt=Jt*qt,V7=c+48|0,Qt=+A[V7>>2],Kt=Qt*J7,nt=Kt+pt,A[I7>>2]=nt,G7=+A[V7>>2],yt=G7*qt,pe=+A[mt>>2],y0=pe*J7,h0=yt-y0,A[K7>>2]=h0,E0=u7+-32|0,C0=I7+-32|0,u0=c+64|0,k0=C0>>>0>>0,!k0;)c=u0,u7=E0,I7=C0;if(J0=(f0|0)>1,J0)for(b7=1;;){if(D0=1<>b7,M0=4<>1,v=G0+-8|0,G=M0+1|0,o0=M0<<1,i0=o0|1,c0=M0*3|0,l0=c0+1|0,$0=M0<<2,At=0;;){for(H0=i5(At,x0)|0,R0=s+(H0<<2)|0,d=C+H0|0,S0=s+(d<<2)|0,s0=v+H0|0,L0=s+(s0<<2)|0,f=n,B8=S0,_7=L0;Y0=B8+24|0,q0=+A[Y0>>2],N0=_7+24|0,T0=+A[N0>>2],U0=q0-T0,r1=B8+28|0,O0=+A[r1>>2],e1=_7+28|0,v0=+A[e1>>2],i1=O0-v0,c1=T0+q0,A[Y0>>2]=c1,a1=+A[e1>>2],f1=a1+O0,A[r1>>2]=f1,l1=f+4|0,A1=+A[l1>>2],$1=A1*i1,n1=+A[f>>2],s1=n1*U0,z0=s1+$1,A[N0>>2]=z0,I1=+A[f>>2],h1=I1*i1,E1=+A[l1>>2],u1=E1*U0,m1=h1-u1,A[e1>>2]=m1,p1=f+(M0<<2)|0,Q1=B8+16|0,D1=+A[Q1>>2],_1=_7+16|0,y1=+A[_1>>2],k1=D1-y1,x1=B8+20|0,L1=+A[x1>>2],N1=_7+20|0,U1=+A[N1>>2],Z1=L1-U1,G1=y1+D1,A[Q1>>2]=G1,v1=+A[N1>>2],K1=v1+L1,A[x1>>2]=K1,P1=f+(G<<2)|0,H1=+A[P1>>2],q1=H1*Z1,Y1=+A[p1>>2],j1=Y1*k1,W1=j1+q1,A[_1>>2]=W1,O1=+A[p1>>2],l2=O1*Z1,z1=+A[P1>>2],h2=z1*k1,A2=l2-h2,A[N1>>2]=A2,d2=f+(o0<<2)|0,s2=B8+8|0,V1=+A[s2>>2],g2=_7+8|0,t2=+A[g2>>2],a2=V1-t2,i2=B8+12|0,o2=+A[i2>>2],X1=_7+12|0,n2=+A[X1>>2],f2=o2-n2,e2=t2+V1,A[s2>>2]=e2,y2=+A[X1>>2],S2=y2+o2,A[i2>>2]=S2,C2=f+(i0<<2)|0,M2=+A[C2>>2],_2=M2*f2,G2=+A[d2>>2],u2=G2*a2,K2=u2+_2,A[g2>>2]=K2,N2=+A[d2>>2],q2=N2*f2,T2=+A[C2>>2],O2=T2*a2,A5=q2-O2,A[X1>>2]=A5,P2=f+(c0<<2)|0,T1=+A[B8>>2],j2=+A[_7>>2],R5=T1-j2,X2=B8+4|0,v5=+A[X2>>2],z2=_7+4|0,f5=+A[z2>>2],w5=v5-f5,k2=j2+T1,A[B8>>2]=k2,E5=+A[z2>>2],r5=E5+v5,A[X2>>2]=r5,x2=f+(l0<<2)|0,R2=+A[x2>>2],B2=R2*w5,C5=+A[P2>>2],x5=C5*R5,u5=x5+B2,A[_7>>2]=u5,S5=+A[P2>>2],D5=S5*w5,H2=+A[x2>>2],I5=H2*R5,s5=D5-I5,A[z2>>2]=s5,l5=f+($0<<2)|0,B5=B8+-32|0,M1=_7+-32|0,k5=M1>>>0>>0,!k5;)f=l5,B8=B5,_7=M1;if(c5=At+1|0,o5=(c5|0)<(D0|0),o5)At=c5;else break}if(c2=b7+1|0,wt=(c2|0)==(f0|0),wt)break;b7=c2}if(p0=($|0)>0,p0)i9=0;else return;for(;m5=s+(i9<<2)|0,p=i9|30,e5=s+(p<<2)|0,n5=+A[e5>>2],T=i9|14,g5=s+(T<<2)|0,J2=+A[g5>>2],h5=n5-J2,U=i9|31,t5=s+(U<<2)|0,b5=+A[t5>>2],n0=i9|15,W2=s+(n0<<2)|0,F2=+A[W2>>2],p5=b5-F2,q5=J2+n5,A[e5>>2]=q5,e3=F2+b5,A[t5>>2]=e3,A[g5>>2]=h5,A[W2>>2]=p5,r0=i9|28,d5=s+(r0<<2)|0,f3=+A[d5>>2],K=i9|12,g3=s+(K<<2)|0,K5=+A[g3>>2],t3=f3-K5,A0=i9|29,A3=s+(A0<<2)|0,F5=+A[A3>>2],j=i9|13,V5=s+(j<<2)|0,y3=+A[V5>>2],h3=F5-y3,B3=K5+f3,A[d5>>2]=B3,q3=y3+F5,A[A3>>2]=q3,M3=t3*.9238795042037964,Z5=h3*.3826834261417389,Q3=M3-Z5,A[g3>>2]=Q3,j5=t3*.3826834261417389,_3=h3*.9238795042037964,T3=_3+j5,A[V5>>2]=T3,g0=i9|26,$3=s+(g0<<2)|0,a3=+A[$3>>2],S=i9|10,l3=s+(S<<2)|0,C3=+A[l3>>2],Y5=a3-C3,w=i9|27,N5=s+(w<<2)|0,P5=+A[N5>>2],y=i9|11,y5=s+(y<<2)|0,L5=+A[y5>>2],t6=P5-L5,i3=C3+a3,A[$3>>2]=i3,o3=L5+P5,A[N5>>2]=o3,R3=Y5-t6,h6=R3*.7071067690849304,A[l3>>2]=h6,m3=t6+Y5,w3=m3*.7071067690849304,A[y5>>2]=w3,D=i9|24,p3=s+(D<<2)|0,X3=+A[p3>>2],Q=i9|8,N3=s+(Q<<2)|0,z5=+A[N3>>2],k3=X3-z5,b=i9|25,c3=s+(b<<2)|0,U3=+A[c3>>2],R=i9|9,o6=s+(R<<2)|0,u3=+A[o6>>2],y6=U3-u3,w6=z5+X3,A[p3>>2]=w6,k6=u3+U3,A[c3>>2]=k6,z3=k3*.3826834261417389,$6=y6*.9238795042037964,m6=z3-$6,_6=y6*.3826834261417389,Y6=k3*.9238795042037964,C6=_6+Y6,_=i9|22,v3=s+(_<<2)|0,Z3=+A[v3>>2],L=i9|6,W3=s+(L<<2)|0,f6=+A[W3>>2],S3=Z3-f6,M=i9|7,P3=s+(M<<2)|0,Y3=+A[P3>>2],N=i9|23,v6=s+(N<<2)|0,i6=+A[v6>>2],r3=Y3-i6,O6=f6+Z3,A[v3>>2]=O6,s3=i6+Y3,A[v6>>2]=s3,A[W3>>2]=r3,A[P3>>2]=S3,P=i9|4,r6=s+(P<<2)|0,u6=+A[r6>>2],z=i9|20,e6=s+(z<<2)|0,p6=+A[e6>>2],R6=u6-p6,Y=i9|5,K6=s+(Y<<2)|0,I6=+A[K6>>2],t0=i9|21,J6=s+(t0<<2)|0,x3=+A[J6>>2],Z6=I6-x3,G6=p6+u6,A[e6>>2]=G6,j6=x3+I6,A[J6>>2]=j6,x6=Z6*.9238795042037964,N6=R6*.3826834261417389,S6=x6+N6,V6=Z6*.3826834261417389,Q6=R6*.9238795042037964,F6=V6-Q6,J=i9|2,F3=s+(J<<2)|0,L6=+A[F3>>2],W=i9|18,X6=s+(W<<2)|0,A9=+A[X6>>2],g9=L6-A9,e0=i9|3,h9=s+(e0<<2)|0,f9=+A[h9>>2],H=i9|19,s9=s+(H<<2)|0,o9=+A[s9>>2],L9=f9-o9,d6=A9+L6,A[X6>>2]=d6,M6=o9+f9,A[s9>>2]=M6,e9=L9+g9,M9=e9*.7071067690849304,u4=L9-g9,r4=u4*.7071067690849304,l4=+A[m5>>2],X=i9|16,T9=s+(X<<2)|0,K9=+A[T9>>2],v9=l4-K9,Z=i9|1,I9=s+(Z<<2)|0,P6=+A[I9>>2],V=i9|17,t9=s+(V<<2)|0,I4=+A[t9>>2],n4=P6-I4,p9=K9+l4,A[T9>>2]=p9,v4=I4+P6,A[t9>>2]=v4,S4=n4*.3826834261417389,_4=v9*.9238795042037964,M4=S4+_4,W4=n4*.9238795042037964,d4=v9*.3826834261417389,T4=W4-d4,G9=T4-C6,A4=M4-m6,R4=M4+m6,c4=T4+C6,Ie=A4+G9,O9=G9-A4,d9=+A[y5>>2],de=r4-d9,Me=+A[l3>>2],ze=Me-M9,N4=Me+M9,U4=d9+r4,j4=+A[g3>>2],ke=j4-S6,Ze=+A[V5>>2],V9=Ze-F6,se=j4+S6,g4=Ze+F6,D6=ke-V9,O4=V9+ke,R9=+A[g5>>2],D4=R9-r3,oe=+A[W2>>2],z9=oe-S3,$e=r3+R9,ae=S3+oe,E4=D4+de,X4=D4-de,x4=D6+Ie,le=x4*.7071067690849304,E9=D6-Ie,Ge=E9*.7071067690849304,o4=le+E4,A[W3>>2]=o4,Ee=E4-le,A[r6>>2]=Ee,C4=O4-O9,$4=C4*.7071067690849304,U6=z9-ze,ve=$4+X4,A[m5>>2]=ve,Se=X4-$4,A[F3>>2]=Se,We=O4+O9,a4=We*.7071067690849304,g8=z9+ze,H3=U6+Ge,A[h9>>2]=H3,Q9=U6-Ge,A[I9>>2]=Q9,C9=g8+a4,A[P3>>2]=C9,F4=g8-a4,A[K6>>2]=F4,ee=$e+N4,$7=$e-N4,De=R4+se,a7=se-R4,p7=ee+De,A[g5>>2]=p7,c7=ee-De,A[g3>>2]=c7,x8=g4-c4,F8=ae-U4,L8=$7+x8,A[N3>>2]=L8,M8=$7-x8,A[l3>>2]=M8,V8=g4+c4,z8=ae+U4,Q7=F8+a7,A[y5>>2]=Q7,T8=F8-a7,A[o6>>2]=T8,G8=z8+V8,A[W2>>2]=G8,y8=z8-V8,A[V5>>2]=y8,w8=+A[c3>>2],h8=v4-w8,U8=+A[p3>>2],O8=p9-U8,Z8=U8+p9,W8=w8+v4,f8=O8+h8,Ne=h8-O8,be=+A[s9>>2],k8=+A[N5>>2],y9=be-k8,g7=+A[$3>>2],Ce=+A[X6>>2],h7=g7-Ce,y7=Ce+g7,j8=k8+be,w7=+A[d5>>2],te=+A[e6>>2],X8=w7-te,v8=+A[A3>>2],Xe=+A[J6>>2],P4=v8-Xe,_e=te+w7,e8=Xe+v8,u8=X8-P4,S8=P4+X8,ce=+A[e5>>2],Z9=+A[v3>>2],t8=ce-Z9,i8=+A[t5>>2],d8=+A[v6>>2],ge=i8-d8,Be=Z9+ce,Ue=d8+i8,Oe=t8+y9,W9=t8-y9,Re=u8+f8,he=Re*.7071067690849304,r8=u8-f8,B4=r8*.7071067690849304,E8=he+Oe,A[v3>>2]=E8,e7=Oe-he,A[e6>>2]=e7,H4=S8-Ne,I3=H4*.7071067690849304,Pe=ge-h7,C8=I3+W9,A[T9>>2]=C8,ie=W9-I3,A[X6>>2]=ie,P9=S8+Ne,re=P9*.7071067690849304,He=ge+h7,H8=Pe+B4,A[s9>>2]=H8,f7=Pe-B4,A[t9>>2]=f7,t7=He+re,A[v6>>2]=t7,i7=He-re,A[J6>>2]=i7,q8=Be+y7,r7=Be-y7,Y8=_e+Z8,n8=_e-Z8,A8=q8+Y8,A[e5>>2]=A8,q4=q8-Y8,A[d5>>2]=q4,n7=e8-W8,b8=Ue-j8,qe=r7+n7,A[p3>>2]=qe,B9=r7-n7,A[$3>>2]=B9,A7=e8+W8,Ye=Ue+j8,L7=b8+n8,A[N5>>2]=L7,O7=b8-n8,A[c3>>2]=O7,k7=Ye+A7,A[t5>>2]=k7,v7=Ye-A7,A[A3>>2]=v7,ne=i9+32|0,M7=(ne|0)<($|0),M7;)i9=ne}function Xp(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0;for(E1=B,S=t>>1,w=$+(S<<2)|0,N=n+(t<<2)|0,n1=N,s1=s,z0=$,I1=w;o0=e[s1>>2]|0,c=o0+S|0,j=$+(c<<2)|0,k0=s1+4|0,S0=e[k0>>2]|0,f=S0+S|0,v0=$+(f<<2)|0,d=c+1|0,A1=$+(d<<2)|0,$1=+A[A1>>2],I=f+1|0,y=$+(I<<2)|0,D=+A[y>>2],Q=$1-D,b=+A[j>>2],R=+A[v0>>2],_=R+b,L=+A[n1>>2],M=_*L,T=n1+4|0,G=+A[T>>2],P=G*Q,z=P+M,Y=G*_,t0=L*Q,J=Y-t0,W=I1+-16|0,e0=D+$1,H=e0*.5,X=b-R,U=X*.5,Z=z+H,A[z0>>2]=Z,V=H-z,s0=I1+-8|0,A[s0>>2]=V,n0=J+U,i0=z0+4|0,A[i0>>2]=n0,r0=J-U,K=I1+-4|0,A[K>>2]=r0,c0=s1+8|0,A0=e[c0>>2]|0,C=A0+S|0,l0=$+(C<<2)|0,$0=s1+12|0,g0=e[$0>>2]|0,p=g0+S|0,f0=$+(p<<2)|0,m=C+1|0,Q0=$+(m<<2)|0,d0=+A[Q0>>2],v=p+1|0,y0=$+(v<<2)|0,h0=+A[y0>>2],E0=d0-h0,C0=+A[l0>>2],u0=+A[f0>>2],J0=u0+C0,D0=n1+8|0,m0=+A[D0>>2],x0=J0*m0,F0=n1+12|0,M0=+A[F0>>2],G0=M0*E0,p0=G0+x0,H0=M0*J0,R0=m0*E0,L0=H0-R0,Y0=h0+d0,q0=Y0*.5,N0=C0-u0,V0=N0*.5,T0=p0+q0,U0=z0+8|0,A[U0>>2]=T0,r1=q0-p0,A[W>>2]=r1,O0=L0+V0,e1=z0+12|0,A[e1>>2]=O0,i1=L0-V0,c1=I1+-12|0,A[c1>>2]=i1,a1=n1+16|0,f1=s1+16|0,g1=z0+16|0,l1=g1>>>0>>0,l1;)n1=a1,s1=f1,z0=g1,I1=W}function cS(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0;return m=B,n=t+28|0,s=e[n>>2]|0,$=s+2868|0,c=t4(1,36)|0,f=t+4|0,d=e[f>>2]|0,I=c+4|0,e[I>>2]=d,A[c>>2]=-9999,C=c+8|0,e[C>>2]=$,c|0}function gS(t){t=t|0;var n=0,s=0,$=0;$=B,n=(t|0)==0,!n&&I2(t)}function hS(t){t=t|0;var n=0,s=0,$=0;$=B,n=(t|0)==0,n||I2(t)}function fS(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,B6=0,z3=0,$6=0,m6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,s3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0;e9=B,d6=t,M9=d6+48|0;do e[d6>>2]=0,d6=d6+4|0;while((d6|0)<(M9|0));b=e[s>>2]|0,R=t+36|0,e[R>>2]=b,t2=+(b|0),e3=t2*8,h3=e3,a3=+Or(+h3),o3=a3*1.4426950408889634,c3=+Ti(o3),_6=c3+-1,v6=~~_6,_=t+32|0,e[_>>2]=v6,W=+(c|0),r0=W*.25,y0=r0,M0=y0*.5,T0=+($|0),l1=M0/T0,m1=+Or(+l1),U1=m1*1.4426950216293335,W1=U1+-5.965784072875977,a2=v6+1|0,M2=1<>2]=$5,p5=+($|0),q5=p5+.25,d5=q5*W,f3=d5,g3=f3*.5,K5=g3/T0,t3=+Or(+K5),A3=t3*1.4426950216293335,E3=A3+-5.965784072875977,F5=P2*E3,V5=F5+.5,y3=~~V5,B3=1-$5|0,q3=B3+y3|0,M3=t+40|0,e[M3>>2]=q3,Z5=$<<2,Q3=k9(Z5)|0,j5=t+16|0,e[j5>>2]=Q3,j3=k9(Z5)|0,_3=t+20|0,e[_3>>2]=j3,T3=k9(Z5)|0,$3=t+24|0,e[$3>>2]=T3,l3=t+4|0,e[l3>>2]=n,e[t>>2]=$,C3=t+44|0,e[C3>>2]=c,Y5=t+48|0,A[Y5>>2]=1,N5=(c|0)<26e3;do if(N5)A[Y5>>2]=0;else{if(P5=(c|0)<38e3,P5){A[Y5>>2]=.9399999976158142;break}y5=(c|0)>46e3,y5&&(A[Y5>>2]=1.274999976158142)}while(!1);G3=T0*2,L5=+(c|0),t6=($|0)>0,m3=t6,V6=0,W6=0;e:for(;;){for(p=m3^1,Q6=V6;;){if(p3=Q6+1|0,X3=+(p3|0),V3=X3*.08664337545633316,N3=V3+2.7488713472395148,z5=+Fn(+N3),k3=G3*z5,U3=k3/L5,o6=+Ti(U3),u3=~~o6,C=(u3|0)<=(W6|0),K6=C|p,!K6){d=p3,I=u3,F6=Q6;break}if(y6=(p3|0)<87,y6)Q6=p3;else{A9=W6;break e}}for(w6=1272+(F6<<2)|0,k6=+A[w6>>2],B6=1272+(d<<2)|0,z3=+A[B6>>2],$6=z3-k6,m6=I-W6|0,Y6=+(m6|0),C6=$6/Y6,v3=W6-I|0,Z3=W6-$|0,W3=v3>>>0>Z3>>>0,L9=W3?v3:Z3,i3=W6-L9|0,R6=k6,g9=W6;f6=R6+100,O3=Q3+(g9<<2)|0,A[O3>>2]=f6,S3=R6+C6,P3=g9+1|0,G6=(P3|0)==(i3|0),!G6;)R6=S3,g9=P3;if(R3=(i3|0)<($|0),h6=(d|0)<87,h6)m3=R3,V6=d,W6=i3;else{A9=i3;break}}if(w3=(A9|0)<($|0),w3)for(h9=A9;T6=h9+-1|0,e6=Q3+(T6<<2)|0,p6=e[e6>>2]|0,L=Q3+(h9<<2)|0,e[L>>2]=p6,M=h9+1|0,Z6=(M|0)==($|0),!Z6;)h9=M;if(Y3=($|0)>0,Y3){for(i6=$<<1,r3=(c|0)/(i6|0)&-1,O6=n+120|0,s3=e[O6>>2]|0,r6=n+124|0,u6=n+116|0,D3=n+112|0,x6=1,F3=0,f9=-99;;){Y=i5(r3,F3)|0,t0=+(Y|0),J=t0*.0007399999885819852,e0=J,H=+PA(+e0),X=H*13.100000381469727,U=i5(Y,Y)|0,o0=+(U|0),Z=o0*18499999754340024e-24,V=Z,s0=+PA(+V),n0=s0*2.240000009536743,i0=n0+X,K=t0*9999999747378752e-20,c0=K,A0=i0+c0,l0=A0,j=s3+f9|0,$0=(j|0)<(F3|0);e:do if($0)for(g0=+A[D3>>2],f0=l0-g0,Q0=f0,o9=f9;;){if(d0=i5(o9,r3)|0,h0=+(d0|0),E0=h0*.0007399999885819852,C0=E0,u0=+PA(+C0),k0=u0*13.100000381469727,J0=i5(d0,d0)|0,D0=+(J0|0),m0=D0*18499999754340024e-24,x0=m0,F0=+PA(+x0),G0=F0*2.240000009536743,p0=h0*9999999747378752e-20,H0=p0,R0=k0+H0,S0=R0+G0,L0=S0($|0);e:do if(Y0)N6=x6;else for(q0=e[r6>>2]|0,N0=q0+F3|0,S6=x6;;){if(O0=(S6|0)<(N0|0),!O0&&(e1=i5(S6,r3)|0,v0=+(e1|0),i1=v0*.0007399999885819852,c1=i1,a1=+PA(+c1),f1=a1*13.100000381469727,g1=i5(e1,e1)|0,A1=+(g1|0),$1=A1*18499999754340024e-24,n1=$1,s1=+PA(+n1),z0=s1*2.240000009536743,I1=v0*9999999747378752e-20,h1=I1,E1=f1+h1,u1=E1+z0,d1=+A[u6>>2],p1=d1+l0,Q1=p1,D1=u1>2]=L1,w1=F3+1|0,x3=(w1|0)==($|0),x3)break;x6=N6,F3=w1,f9=s9}if(Y3)for(T=L5*.5,G=e[_>>2]|0,N=G+1|0,P=1<>2]=O1,z1=L6+1|0,J6=(z1|0)==($|0),J6){w=T;break}else L6=z1;else M6=19}else M6=19;if((M6|0)==19&&(Q=L5*.5,w=Q),h2=n+36|0,A2=w/T0,d2=A2,s2=n+24|0,V1=+A[s2>>2],g2=n+28|0,$2=+A[g2>>2],i2=dS(h2,d2,$,V1,$2)|0,o2=t+8|0,e[o2>>2]=i2,X1=k9(12)|0,n2=t+12|0,e[n2>>2]=X1,f2=k9(Z5)|0,e[X1>>2]=f2,e2=k9(Z5)|0,y2=X1+4|0,e[y2>>2]=e2,S2=k9(Z5)|0,w2=X1+8|0,e[w2>>2]=S2,!!Y3)for(C2=e[l3>>2]|0,S=e[X1>>2]|0,m=X1+4|0,y=e[m>>2]|0,v=X1+8|0,D=e[v>>2]|0,X6=0;_2=+(X6|0),G2=_2+.5,u2=G2*L5,K2=u2/G3,N2=+Or(+K2),q2=N2*2.885390043258667,T2=q2+-11.931568145751953,O2=T2,V2=O2<0,j6=V2?0:O2,f=j6>=16,r9=f?16:j6,A5=~~r9,T1=+(A5|0),j2=r9-T1,R5=j2,X2=1-R5,v5=A5+1|0,z2=(C2+132|0)+(A5<<2)|0,f5=+A[z2>>2],w5=f5,O5=w5*X2,a5=(C2+132|0)+(v5<<2)|0,E5=+A[a5>>2],r5=E5*j2,x2=r5,R2=x2+O5,B2=R2,C5=S+(X6<<2)|0,A[C5>>2]=B2,x5=(C2+200|0)+(A5<<2)|0,u5=+A[x5>>2],S5=u5,G5=S5*X2,H2=(C2+200|0)+(v5<<2)|0,I5=+A[H2>>2],s5=I5*j2,l5=s5,B5=l5+G5,M1=B5,k5=y+(X6<<2)|0,A[k5>>2]=M1,c5=(C2+268|0)+(A5<<2)|0,o5=+A[c5>>2],Z2=o5,m5=Z2*X2,e5=(C2+268|0)+(v5<<2)|0,n5=+A[e5>>2],g5=n5*j2,J2=g5,h5=J2+m5,t5=h5,b5=D+(X6<<2)|0,A[b5>>2]=t5,W2=X6+1|0,I6=(W2|0)==($|0),!I6;)X6=W2}function eQ(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0;if(T0=B,s=(t|0)==0,!s){if($=t+16|0,y=e[$>>2]|0,P=(y|0)==0,P||I2(y),Z=t+20|0,$0=e[Z>>2]|0,J0=($0|0)==0,J0||I2($0),R0=t+24|0,S0=e[R0>>2]|0,L0=(S0|0)==0,L0||I2(S0),c=t+8|0,f=e[c>>2]|0,d=(f|0)==0,!d){for(C=f,q0=0;I=C+(q0<<2)|0,p=e[I>>2]|0,m=e[p>>2]|0,I2(m),v=e[c>>2]|0,S=v+(q0<<2)|0,w=e[S>>2]|0,D=w+4|0,Q=e[D>>2]|0,I2(Q),b=e[c>>2]|0,R=b+(q0<<2)|0,_=e[R>>2]|0,L=_+8|0,M=e[L>>2]|0,I2(M),T=e[c>>2]|0,G=T+(q0<<2)|0,N=e[G>>2]|0,z=N+12|0,Y=e[z>>2]|0,I2(Y),t0=e[c>>2]|0,J=t0+(q0<<2)|0,W=e[J>>2]|0,e0=W+16|0,H=e[e0>>2]|0,I2(H),X=e[c>>2]|0,U=X+(q0<<2)|0,o0=e[U>>2]|0,V=o0+20|0,s0=e[V>>2]|0,I2(s0),n0=e[c>>2]|0,i0=n0+(q0<<2)|0,r0=e[i0>>2]|0,K=r0+24|0,c0=e[K>>2]|0,I2(c0),A0=e[c>>2]|0,l0=A0+(q0<<2)|0,j=e[l0>>2]|0,g0=j+28|0,f0=e[g0>>2]|0,I2(f0),Q0=e[c>>2]|0,d0=Q0+(q0<<2)|0,y0=e[d0>>2]|0,I2(y0),h0=q0+1|0,Y0=(h0|0)==17,!Y0;)n=e[c>>2]|0,C=n,q0=h0;E0=e[c>>2]|0,I2(E0)}C0=t+12|0,u0=e[C0>>2]|0,k0=(u0|0)==0,k0||(D0=e[u0>>2]|0,I2(D0),m0=e[C0>>2]|0,x0=m0+4|0,F0=e[x0>>2]|0,I2(F0),M0=e[C0>>2]|0,G0=M0+8|0,p0=e[G0>>2]|0,I2(p0),H0=e[C0>>2]|0,I2(H0)),N0=t,U0=N0+52|0;do e[N0>>2]=0,N0=N0+4|0;while((N0|0)<(U0|0))}}function tQ(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0;if(d0=B,d=e[t>>2]|0,I=d<<2,f=I,R=B,B=B+((1*f|0)+15&-16)|0,J=t+24|0,s0=e[J>>2]|0,rQ(d,s0,n,s,140,-1),n0=(d|0)>0,n0)for($0=0;i0=n+($0<<2)|0,r0=+A[i0>>2],K=s+($0<<2)|0,c0=+A[K>>2],C=r0-c0,p=R+($0<<2)|0,A[p>>2]=C,m=$0+1|0,l0=(m|0)==(d|0),!l0;)$0=m;if(v=e[J>>2]|0,S=t+4|0,w=e[S>>2]|0,y=w+128|0,D=e[y>>2]|0,rQ(d,v,R,s,0,D),n0)g0=0;else{B=d0;return}for(;b=n+(g0<<2)|0,_=+A[b>>2],L=R+(g0<<2)|0,M=+A[L>>2],T=_-M,A[L>>2]=T,G=g0+1|0,j=(G|0)==(d|0),!j;)g0=G;if(!n0){B=d0;return}for(Q=e[S>>2]|0,f0=0;N=s+(f0<<2)|0,P=+A[N>>2],z=P,Y=z+.5,t0=~~Y,W=(t0|0)>39,$=W?39:t0,e0=($|0)<0,c=e0?0:$,H=R+(f0<<2)|0,X=+A[H>>2],U=(Q+336|0)+(c<<2)|0,o0=+A[U>>2],Z=o0+X,A[N>>2]=Z,V=f0+1|0,A0=(V|0)==(d|0),!A0;)f0=V;B=d0}function iQ(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=+$,c=+c;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0;if(d5=B,M=e[t>>2]|0,T=t+40|0,l1=e[T>>2]|0,m1=l1<<2,I=m1,U1=B,B=B+((1*I|0)+15&-16)|0,W1=t+4|0,t2=e[W1>>2]|0,C2=t2+4|0,A5=+A[C2>>2],a5=A5+c,G=(l1|0)>0,G)for(s5=0;U=U1+(s5<<2)|0,A[U>>2]=-9999,l0=s5+1|0,u0=(l0|0)<(l1|0),u0;)s5=l0;if(R0=t2+8|0,e1=+A[R0>>2],c1=a50,a1){for(f1=t+16|0,g1=e[f1>>2]|0,c5=0;A1=g1+(c5<<2)|0,$1=+A[A1>>2],n1=$1+G5,s1=s+(c5<<2)|0,A[s1>>2]=n1,z0=c5+1|0,H2=(z0|0)==(M|0),!H2;)c5=z0;if(I1=t+8|0,h1=e[I1>>2]|0,E1=t2+496|0,u1=+A[E1>>2],d1=u1-$,a1)for(p1=t+20|0,Q1=e[p1>>2]|0,D1=t+32|0,_1=t+36|0,y1=t+28|0,l5=0;;){k1=n+(l5<<2)|0,x1=+A[k1>>2],L1=Q1+(l5<<2)|0,N1=e[L1>>2]|0,k5=l5,n5=x1;e:for(;;)for(B5=k5;;){if(w1=B5+1|0,Z1=(w1|0)<(M|0),!Z1){v=0,w=w1,M1=B5,g5=n5;break e}if(G1=Q1+(w1<<2)|0,v1=e[G1>>2]|0,K1=(v1|0)==(N1|0),!K1){v=1,w=w1,M1=B5,g5=n5;break e}if(P1=n+(w1<<2)|0,H1=+A[P1>>2],q1=H1>n5,q1){k5=w1,n5=H1;continue e}else B5=w1}if(Y1=g5+6,j1=s+(M1<<2)|0,r2=+A[j1>>2],O1=Y1>r2,O1&&(l2=e[D1>>2]|0,z1=N1>>l2,h2=(z1|0)>16,d=h2?16:z1,A2=(d|0)<0,f=A2?0:d,d2=h1+(f<<2)|0,s2=e[d2>>2]|0,V1=e[_1>>2]|0,g2=d1+g5,$2=g2,a2=$2+-30,i2=a2*.10000000149011612,o2=~~i2,X1=(o2|0)<0,n2=X1?0:o2,f2=(n2|0)>7,e2=f2?7:n2,y2=s2+(e2<<2)|0,S2=e[y2>>2]|0,w2=S2+4|0,M2=+A[w2>>2],_2=~~M2,G2=+A[S2>>2],u2=~~G2,K2=(u2|0)<(_2|0),K2))for(N2=Q1+(M1<<2)|0,q2=e[N2>>2]|0,T2=e[y1>>2]|0,O2=q2-T2|0,V2=+(O2|0),P2=V1>>1,T1=+(P2|0),j2=G2+-16,R5=+(V1|0),X2=j2*R5,v5=X2-T1,z2=v5+V2,f5=~~z2,I5=u2,q5=f5;w5=(q5|0)>0,w5&&(L=I5+2|0,O5=S2+(L<<2)|0,k2=+A[O5>>2],E5=k2+g5,r5=U1+(q5<<2)|0,x2=+A[r5>>2],R2=x2>2]=E5)),B2=q5+V1|0,C5=(B2|0)<(l1|0),x5=I5+1|0,u5=(x5|0)<(_2|0),$5=u5&C5,$5;)I5=x5,q5=B2;if(v)l5=w;else{R=_1;break}}else e3=7}else e3=7;(e3|0)==7&&(Q=t+36|0,R=Q),S5=e[R>>2]|0,ES(U1,S5,l1),N=e[t>>2]|0,P=(N|0)>1;e:do if(P)for(z=t+20|0,Y=t+28|0,t0=e[z>>2]|0,J=e[t0>>2]|0,W=S5>>1,e0=J-W|0,H=e[Y>>2]|0,X=e0-H|0,o0=e[W1>>2]|0,Z=o0+32|0,K=1,j=J,Z2=0,F2=X;;){n0=U1+(F2<<2)|0,i0=+A[n0>>2],r0=t0+(K<<2)|0,c0=e[r0>>2]|0,A0=c0+j|0,$0=A0>>1,g0=$0-H|0,f0=+A[Z>>2],Q0=i0>f0,J2=Q0?f0:i0,d0=(F2|0)<(g0|0);t:do if(d0)for(C=F2,t5=J2;;){for(y0=t5==-9999,p=C;;){if(h0=p+1|0,E0=U1+(h0<<2)|0,C0=+A[E0>>2],k0=C0>-9999,k0){if(J0=C0=(N|0),M0=(j|0)>(x0|0),b5=F0|M0;t:do if(b5)c2=Z2;else for(m5=Z2;;){if(G0=s+(m5<<2)|0,p0=+A[G0>>2],H0=p0>2]=h5),S0=m5+1|0,L0=(S0|0)<(N|0),!L0){c2=S0;break t}if(D=t0+(S0<<2)|0,_=e[D>>2]|0,Y0=(_|0)>(x0|0),Y0){c2=S0;break}else m5=S0}while(!1);if(V=c2+1|0,s0=(V|0)<(N|0),!s0){o5=c2;break e}y=t0+(c2<<2)|0,b=e[y>>2]|0,K=V,j=b,Z2=c2,F2=p5}else o5=0;while(!1);if(q0=e[T>>2]|0,N0=q0+-1|0,V0=U1+(N0<<2)|0,T0=+A[V0>>2],U0=(o5|0)<(N|0),U0)e5=o5;else{B=d5;return}for(;r1=s+(e5<<2)|0,O0=+A[r1>>2],v0=O0>2]=T0),i1=e5+1|0,D5=(i1|0)==(N|0),!D5;)e5=i1;B=d5}function Ja(t,n,s,$,c,f,d){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0;var I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0;if(D0=B,C=e[t>>2]|0,p=t+4|0,L=e[p>>2]|0,e0=(L+12|0)+($<<2)|0,K=+A[e0>>2],f0=(C|0)>0,!!f0)for(Q0=t+48|0,d0=+A[Q0>>2],y0=t+12|0,h0=e[y0>>2]|0,m=h0+($<<2)|0,v=e[m>>2]|0,S=L+108|0,w=($|0)==1,y=d0,D=y*.005,Q=y*3e-4,u0=0;b=n+(u0<<2)|0,R=+A[b>>2],_=v+(u0<<2)|0,M=+A[_>>2],T=M+R,G=+A[S>>2],N=T>G,k0=N?G:T,P=s+(u0<<2)|0,z=+A[P>>2],Y=z+K,t0=k0>2]=I,w&&(W=d+(u0<<2)|0,H=+A[W>>2],X=k0-H,U=X>-17.200000762939453,o0=X+17.200000762939453,Z=o0,U?(V=D*Z,s0=1-V,n0=s0,i0=n0<0,i0?E0=9999999747378752e-20:E0=n0):(r0=Q*Z,c0=1-r0,A0=c0,E0=A0),l0=f+(u0<<2)|0,j=+A[l0>>2],$0=j*E0,A[l0>>2]=$0),g0=u0+1|0,C0=(g0|0)==(C|0),!C0;)u0=g0}function uS(t,n){t=+t,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0;return G=B,$=n+4|0,c=e[$>>2]|0,y=c+28|0,D=e[y>>2]|0,Q=n+40|0,b=e[Q>>2]|0,R=D+(b<<2)|0,_=e[R>>2]|0,L=(_|0)/2&-1,M=+(L|0),f=c+8|0,d=e[f>>2]|0,I=+(d|0),C=M/I,p=D+2936|0,m=+A[p>>2],v=m*C,S=v+t,w=S<-9999,s=w?-9999:S,+s}function IS(t,n,s,$,c,f,d,I,C){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0,I=I|0,C=C|0;var p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,B6=0,z3=0,$6=0,m6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,s3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0,_4=0,M4=0,W4=0,d4=0,T4=0,G9=0,G4=0;if(G4=B,n0=e[s>>2]|0,i0=s+4|0,A5=e[i0>>2]|0,q3=A5+500|0,C3=e[q3>>2]|0,h6=(C3|0)==0,h6?V5=16:(o6=A5+508|0,C6=e[o6>>2]|0,V5=C6),r3=e[A5>>2]|0,I6=((n+132|0)+(r3*60|0)|0)+(t<<2)|0,r0=e[I6>>2]|0,y0=(n+252|0)+(t<<2)|0,M0=e[y0>>2]|0,T0=1624+(M0<<3)|0,l1=+o1[T0>>3],m1=(n+312|0)+(t<<2)|0,U1=e[m1>>2]|0,W1=C<<2,v=W1,t2=B,B=B+((1*v|0)+15&-16)|0,S=W1,C2=B,B=B+((1*S|0)+15&-16)|0,Q=W1,P2=B,B=B+((1*Q|0)+15&-16)|0,b=W1,k2=B,B=B+((1*b|0)+15&-16)|0,R=W1,D5=B,B=B+((1*R|0)+15&-16)|0,c2=$+1156|0,F2=(n0|0)>1e3,T4=F2?1696:1624,M4=T4+(U1<<3)|0,_4=+o1[M4>>3],F5=i5(W1,V5)|0,_=F5,y3=B,B=B+((1*_|0)+15&-16)|0,e[t2>>2]=y3,w=F5,h3=B,B=B+((1*w|0)+15&-16)|0,e[C2>>2]=h3,y=F5,B3=B,B=B+((1*y|0)+15&-16)|0,e[P2>>2]=B3,D=F5,M3=B,B=B+((1*D|0)+15&-16)|0,e[k2>>2]=M3,Z5=(C|0)>1,Z5&&(Q3=y3+(V5<<2)|0,j5=t2+4|0,e[j5>>2]=Q3,j3=h3+(V5<<2)|0,_3=C2+4|0,e[_3>>2]=j3,T3=B3+(V5<<2)|0,$3=P2+4|0,e[$3>>2]=T3,a3=M3+(V5<<2)|0,l3=k2+4|0,e[l3>>2]=a3,g9=(C|0)==2,!g9))for(y5=2;M=e[t2>>2]|0,N=e[C2>>2]|0,P=e[P2>>2]|0,z=e[k2>>2]|0,P5=i5(y5,V5)|0,G3=M+(P5<<2)|0,L5=t2+(y5<<2)|0,e[L5>>2]=G3,t6=N+(P5<<2)|0,i3=C2+(y5<<2)|0,e[i3>>2]=t6,o3=P+(P5<<2)|0,R3=P2+(y5<<2)|0,e[R3>>2]=o3,m3=z+(P5<<2)|0,w3=k2+(y5<<2)|0,e[w3>>2]=m3,p3=y5+1|0,W6=(p3|0)==(C|0),!W6;)y5=p3;if(Y5=e[c2>>2]|0,N5=(n0|0)>0,N5)for(X3=e[k2>>2]|0,V3=(C|0)>0,N3=n0^-1,z5=V5^-1,M6=0,u9=N3;;){if(U3=(u9|0)>(z5|0),W4=U3?u9:z5,u3=W4^-1,y6=n0-M6|0,w6=(V5|0)>(y6|0),p=w6?y6:V5,i4(D5|0,d|0,W1|0)|0,Ae(X3|0,0,F5|0)|0,V3)for(k6=(p|0)>0,B6=r0-M6|0,t9=0;;){if(v3=f+(t9<<2)|0,Z3=e[v3>>2]|0,W3=Z3+(M6<<2)|0,f6=D5+(t9<<2)|0,O3=e[f6>>2]|0,S3=(O3|0)==0,S3){if(k6)for(v6=P2+(t9<<2)|0,i6=e[v6>>2]|0,O6=t2+(t9<<2)|0,s3=e[O6>>2]|0,r6=C2+(t9<<2)|0,u6=e[r6>>2]|0,D3=k2+(t9<<2)|0,T6=e[D3>>2]|0,I9=0;L0=i6+(I9<<2)|0,A[L0>>2]=1000000013351432e-25,Y0=s3+(I9<<2)|0,A[Y0>>2]=0,q0=u6+(I9<<2)|0,A[q0>>2]=0,N0=T6+(I9<<2)|0,e[N0>>2]=0,U=I9+M6|0,V0=Z3+(U<<2)|0,e[V0>>2]=0,U0=I9+1|0,L6=(U0|0)==(u3|0),!L6;)I9=U0}else{if(P3=P2+(t9<<2)|0,Y3=e[P3>>2]|0,k6){for(K9=0;o0=K9+M6|0,e6=Z3+(o0<<2)|0,p6=e[e6>>2]|0,R6=1768+(p6<<2)|0,K6=e[R6>>2]|0,J6=Y3+(K9<<2)|0,e[J6>>2]=K6,x3=K9+1|0,Q6=(x3|0)==(u3|0),!Q6;)K9=x3;if(Z6=c+(t9<<2)|0,G6=e[Z6>>2]|0,j6=k2+(t9<<2)|0,r9=e[j6>>2]|0,k6){for(T9=0;x6=(T9|0)>=(B6|0),s0=x6?_4:l1,N6=s0,Z=T9+M6|0,S6=G6+(Z<<2)|0,V6=+A[S6>>2],f9=+Yi(+V6),K=Y3+(T9<<2)|0,c0=+A[K>>2],A0=f9/c0,l0=r9+(T9<<2)|0,p9=!(A0>2]=m,j=T9+1|0,F6=(j|0)==(p|0),!F6;)T9=j;if(k6)for($0=t2+(t9<<2)|0,g0=e[$0>>2]|0,f0=C2+(t9<<2)|0,Q0=e[f0>>2]|0,v9=0;;)if(d0=v9+M6|0,h0=G6+(d0<<2)|0,E0=+A[h0>>2],C0=E0*E0,u0=g0+(v9<<2)|0,A[u0>>2]=C0,k0=Q0+(v9<<2)|0,A[k0>>2]=C0,J0=+A[h0>>2],D0=J0<0,D0&&(m0=+A[u0>>2],x0=-m0,A[u0>>2]=x0),F0=Y3+(v9<<2)|0,G0=+A[F0>>2],p0=G0*G0,A[F0>>2]=p0,H0=v9+1|0,F3=(H0|0)==(u3|0),F3){T=f0,S0=g0;break}else v9=H0;else G9=21}else G9=21}else G9=21;(G9|0)==21&&(G9=0,L=t2+(t9<<2)|0,Y=e[L>>2]|0,H=C2+(t9<<2)|0,T=H,S0=Y),R0=e[T>>2]|0,v4=e[i0>>2]|0,+nQ(v4,r0,S0,R0,Y3,0,M6,p,W3)}if(r1=t9+1|0,X6=(r1|0)==(C|0),X6)break;t9=r1}if(z3=e[c2>>2]|0,$6=(z3|0)>0,$6)for(m6=(p|0)>0,_6=I-M6|0,Y6=r0-M6|0,E3=z3,d4=0;;){if(O0=($+1160|0)+(d4<<2)|0,e1=e[O0>>2]|0,v0=($+2184|0)+(d4<<2)|0,i1=e[v0>>2]|0,c1=f+(e1<<2)|0,a1=e[c1>>2]|0,f1=a1+(M6<<2)|0,g1=f+(i1<<2)|0,A1=e[g1>>2]|0,$1=t2+(e1<<2)|0,n1=e[$1>>2]|0,s1=t2+(i1<<2)|0,z0=e[s1>>2]|0,I1=C2+(e1<<2)|0,h1=e[I1>>2]|0,E1=C2+(i1<<2)|0,u1=e[E1>>2]|0,d1=P2+(e1<<2)|0,p1=e[d1>>2]|0,Q1=P2+(i1<<2)|0,D1=e[Q1>>2]|0,_1=k2+(e1<<2)|0,y1=e[_1>>2]|0,k1=k2+(i1<<2)|0,x1=e[k1>>2]|0,L1=D5+(e1<<2)|0,N1=e[L1>>2]|0,w1=(N1|0)==0,Z1=D5+(i1<<2)|0,w1?(G1=e[Z1>>2]|0,v1=(G1|0)==0,v1?Z2=E3:G9=31):G9=31,(G9|0)==31){if(G9=0,e[Z1>>2]=1,e[L1>>2]=1,m6)for(P6=0;;){K1=(P6|0)<(_6|0);do if(K1){if(P1=y1+(P6<<2)|0,H1=e[P1>>2]|0,q1=(H1|0)==0,Y1=x1+(P6<<2)|0,q1&&(j1=e[Y1>>2]|0,r2=(j1|0)==0,r2)){X2=(P6|0)<(Y6|0);do if(X2)v5=z0+(P6<<2)|0,z2=+A[v5>>2],f5=n1+(P6<<2)|0,w5=+A[f5>>2],O5=w5+z2,A[f5>>2]=O5,o9=+Yi(+O5),a5=h1+(P6<<2)|0,A[a5>>2]=o9,G=v5;else if(E5=n1+(P6<<2)|0,r5=+A[E5>>2],x2=z0+(P6<<2)|0,R2=+A[x2>>2],B2=R2+r5,C5=B2<0,h9=+Yi(+r5),s9=+Yi(+R2),x5=s9+h9,u5=h1+(P6<<2)|0,A[u5>>2]=x5,C5){S5=-x5,A[E5>>2]=S5,G=x2;break}else{A[E5>>2]=x5,G=x2;break}while(!1);G5=u1+(P6<<2)|0,A[G5>>2]=0,A[G>>2]=0,e[Y1>>2]=1,X=P6+M6|0,H2=A1+(X<<2)|0,e[H2>>2]=0;break}O1=n1+(P6<<2)|0,l2=+A[O1>>2],L9=+Yi(+l2),z1=z0+(P6<<2)|0,h2=+A[z1>>2],d6=+Yi(+h2),A2=d6+L9,A[O1>>2]=A2,d2=h1+(P6<<2)|0,s2=+A[d2>>2],V1=u1+(P6<<2)|0,g2=+A[V1>>2],$2=g2+s2,A[d2>>2]=$2,e[Y1>>2]=1,e[P1>>2]=1,V=P6+M6|0,a2=a1+(V<<2)|0,i2=e[a2>>2]|0,o2=A1+(V<<2)|0,X1=e[o2>>2]|0,u4=(i2|0)>-1,I4=0-i2|0,n2=u4?i2:I4,r4=(X1|0)>-1,n4=0-X1|0,f2=r4?X1:n4,e2=(n2|0)>(f2|0),e2?(y2=(i2|0)>0,S2=i2-X1|0,w2=X1-i2|0,M2=y2?S2:w2,e[o2>>2]=M2,J=e[a2>>2]|0,N2=J,O2=M2):(_2=(X1|0)>0,G2=i2-X1|0,u2=X1-i2|0,K2=_2?G2:u2,e[o2>>2]=K2,e[a2>>2]=X1,t0=e[o2>>2]|0,N2=X1,O2=t0),l4=(N2|0)>-1,k4=0-N2|0,q2=l4?N2:k4,T2=q2<<1,V2=(O2|0)<(T2|0),V2||(T1=0-O2|0,e[o2>>2]=T1,j2=e[a2>>2]|0,R5=0-j2|0,e[a2>>2]=R5)}while(!1);if(I5=p1+(P6<<2)|0,s5=+A[I5>>2],l5=D1+(P6<<2)|0,B5=+A[l5>>2],M1=B5+s5,A[l5>>2]=M1,A[I5>>2]=M1,k5=P6+1|0,A9=(k5|0)==(u3|0),A9)break;P6=k5}S4=e[i0>>2]|0,+nQ(S4,r0,n1,h1,p1,y1,M6,p,f1),W=e[c2>>2]|0,Z2=W}if(c5=d4+1|0,o5=(c5|0)<(Z2|0),o5)E3=Z2,d4=c5;else{A3=Z2;break}}else A3=z3;if(m5=M6+V5|0,e5=(n0|0)>(m5|0),M9=u9+V5|0,e5)M6=m5,u9=M9;else{k3=A3;break}}else k3=Y5;if(c3=(k3|0)>0,c3)t3=k3,e9=0;else{B=G4;return}for(;n5=($+1160|0)+(e9<<2)|0,g5=e[n5>>2]|0,J2=d+(g5<<2)|0,h5=e[J2>>2]|0,t5=(h5|0)==0,b5=($+2184|0)+(e9<<2)|0,t5?(W2=e[b5>>2]|0,$5=d+(W2<<2)|0,p5=e[$5>>2]|0,q5=(p5|0)==0,q5?K5=t3:G9=52):G9=52,(G9|0)==52&&(G9=0,e[J2>>2]=1,e3=e[b5>>2]|0,d5=d+(e3<<2)|0,e[d5>>2]=1,e0=e[c2>>2]|0,K5=e0),f3=e9+1|0,g3=(f3|0)<(K5|0),g3;)t3=K5,e9=f3;B=G4}function dS(t,n,s,$,c){t=t|0,n=+n,s=s|0,$=+$,c=+c;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,B6=0,z3=0,$6=0,m6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,s3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0,_4=0,M4=0,W4=0,d4=0,T4=0,G9=0,G4=0,A4=0,R4=0,c4=0,Ie=0,O9=0,d9=0,de=0,Me=0,ze=0,N4=0,Te=0,U4=0,j4=0,ke=0,Ze=0,V9=0,se=0,g4=0,D6=0,O4=0,R9=0,s4=0,D4=0,oe=0,z9=0,$e=0,ae=0,E4=0,X4=0,x4=0,le=0,E9=0,a6=0,Ge=0,o4=0,Ee=0,C4=0,$4=0,U6=0,ve=0,Se=0,We=0,a4=0,Q4=0,g8=0,H3=0,Q9=0,C9=0,F4=0,ee=0,$7=0,De=0,a7=0,p7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,Q7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ne=0,be=0,je=0,k8=0,y9=0,g7=0,Ce=0,h7=0,y7=0,j8=0,w7=0,te=0,X8=0,P8=0,v8=0,Xe=0,P4=0,_e=0,e8=0,u8=0,S8=0,ce=0,Z9=0,t8=0,I8=0,i8=0,d8=0,ge=0,Be=0,Ue=0,Oe=0,W9=0,Re=0,he=0,r8=0,me=0,B4=0,E8=0,e7=0,H4=0,I3=0,Pe=0,C8=0,ie=0,P9=0,re=0,S9=0,He=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,A8=0,D8=0,q4=0,n7=0,b8=0,qe=0,B9=0,A7=0,Ye=0;for(Ye=B,B=B+32480|0,H3=Ye+32256|0,B9=Ye+1792|0,Q9=Ye,_=s<<2,S=_,L=B,B=B+((1*S|0)+15&-16)|0,i2=k9(68)|0,Ae(B9|0,0,30464)|0,k3=$>0,r4=$<0,y9=0;;){for(oe=y9<<2,te=0;r5=te+oe|0,I5=(r5|0)<88,I5?(e5=1272+(r5<<2)|0,q5=+A[e5>>2],P9=q5):P9=-30,y3=r5+1|0,$3=(y3|0)<88,$3?(x6=1272+(y3<<2)|0,N6=+A[x6>>2],V6=P9>N6,V6?re=N6:re=P9):(r9=P9>-30,r9?re=-30:re=P9),Q6=r5+2|0,F6=(Q6|0)<88,F6?(L6=1272+(Q6<<2)|0,X6=+A[L6>>2],A9=re>X6,A9?S9=X6:S9=re):(F3=re>-30,F3?S9=-30:S9=re),W6=r5+3|0,g9=(W6|0)<88,g9?(s9=1272+(W6<<2)|0,o9=+A[s9>>2],L9=S9>o9,L9?He=o9:He=S9):(h9=S9>-30,h9?He=-30:He=S9),d6=H3+(te<<2)|0,A[d6>>2]=He,M6=te+1|0,L8=(M6|0)==56,!L8;)te=M6;if(o4=(B9+(y9*1792|0)|0)+448|0,M=2792+(y9*1344|0)|0,i4(o4|0,M|0,224)|0,H=(B9+(y9*1792|0)|0)+672|0,c0=(2792+(y9*1344|0)|0)+224|0,i4(H|0,c0|0,224)|0,E0=(B9+(y9*1792|0)|0)+896|0,p0=(2792+(y9*1344|0)|0)+448|0,i4(E0|0,p0|0,224)|0,r1=(B9+(y9*1792|0)|0)+1120|0,$1=(2792+(y9*1344|0)|0)+672|0,i4(r1|0,$1|0,224)|0,Q1=(B9+(y9*1792|0)|0)+1344|0,G1=(2792+(y9*1344|0)|0)+896|0,i4(Q1|0,G1|0,224)|0,l2=(B9+(y9*1792|0)|0)+1568|0,o2=(2792+(y9*1344|0)|0)+1120|0,i4(l2|0,o2|0,224)|0,G2=B9+(y9*1792|0)|0,i4(G2|0,M|0,224)|0,j2=(B9+(y9*1792|0)|0)+224|0,i4(j2|0,M|0,224)|0,k3)for(Xe=0;;){if(r4)for(I8=0;l4=16-I8|0,y7=(l4|0)>-1,i7=0-l4|0,T9=y7?l4:i7,K9=+(T9|0),v9=K9*c,I9=v9+$,P6=I9<0,I=P6?0:I9,t9=I>0,f=t9?0:I,I4=((B9+(y9*1792|0)|0)+(Xe*224|0)|0)+(I8<<2)|0,k4=+A[I4>>2],n4=k4+f,A[I4>>2]=n4,v4=I8+1|0,N8=(v4|0)==56,!N8;)I8=v4;else for(i8=0;c3=16-i8|0,j8=(c3|0)>-1,q8=0-c3|0,_6=j8?c3:q8,v6=+(_6|0),R6=v6*c,S6=R6+$,f9=S6<0,C=f9?0:S6,e9=((B9+(y9*1792|0)|0)+(Xe*224|0)|0)+(i8<<2)|0,M9=+A[e9>>2],u9=M9+C,A[e9>>2]=u9,u4=i8+1|0,G8=(u4|0)==56,!G8;)i8=u4;if(i3=Xe+1|0,y8=(i3|0)==8,y8)break;Xe=i3}else for(v8=0;;){if(r4)for(d8=0;W4=16-d8|0,w7=(W4|0)>-1,r7=0-W4|0,d4=w7?W4:r7,T4=+(d4|0),G9=T4*c,G4=G9+$,A4=G4>0,d=A4?0:G4,c4=((B9+(y9*1792|0)|0)+(v8*224|0)|0)+(d8<<2)|0,Ie=+A[c4>>2],O9=Ie+d,A[c4>>2]=O9,d9=d8+1|0,V8=(d9|0)==56,!V8;)d8=d9;else for(t8=0;de=16-t8|0,h7=(de|0)>-1,t7=0-de|0,Me=h7?de:t7,ze=+(Me|0),N4=ze*c,Te=N4+$,U4=((B9+(y9*1792|0)|0)+(v8*224|0)|0)+(t8<<2)|0,ke=+A[U4>>2],Ze=ke+Te,A[U4>>2]=Ze,V9=t8+1|0,M8=(V9|0)==56,!M8;)t8=V9;if(se=v8+1|0,z8=(se|0)==8,z8)break;v8=se}for(S4=t+(y9<<2)|0,_4=+A[S4>>2],M4=_4,P4=0;;){for(g4=(P4|0)<2,D6=+(P4|0),w=D6*10,y=70-w,O4=g4?50:y,R9=O4+M4,s4=R9,f8=0;D4=((B9+(y9*1792|0)|0)+(P4*224|0)|0)+(f8<<2)|0,z9=+A[D4>>2],$e=z9+s4,A[D4>>2]=$e,ae=f8+1|0,F4=(ae|0)==56,!F4;)f8=ae;for(E4=Q9+(P4*224|0)|0,i4(E4|0,H3|0,224)|0,X4=+(P4|0),x4=X4*10,le=70-x4,k8=0;;)if(E9=(Q9+(P4*224|0)|0)+(k8<<2)|0,a6=+A[E9>>2],Ge=le+a6,A[E9>>2]=Ge,Ee=k8+1|0,a7=(Ee|0)==56,a7){je=0;break}else k8=Ee;for(;C4=((B9+(y9*1792|0)|0)+(P4*224|0)|0)+(je<<2)|0,$4=+A[C4>>2],U6=(Q9+(P4*224|0)|0)+(je<<2)|0,ve=+A[U6>>2],Se=$4>ve,Se&&(A[U6>>2]=$4),We=je+1|0,De=(We|0)==56,!De;)je=We;if(a4=P4+1|0,Q7=(a4|0)==8,Q7){_e=1;break}else P4=a4}for(;;){for(Q4=_e+-1|0,be=0;;)if(g8=(Q9+(Q4*224|0)|0)+(be<<2)|0,T=+A[g8>>2],G=(Q9+(_e*224|0)|0)+(be<<2)|0,N=+A[G>>2],P=T>2]=T),z=be+1|0,$7=(z|0)==56,$7){Ne=0;break}else be=z;for(;Y=(Q9+(_e*224|0)|0)+(Ne<<2)|0,t0=+A[Y>>2],J=((B9+(y9*1792|0)|0)+(_e*224|0)|0)+(Ne<<2)|0,W=+A[J>>2],e0=t0>2]=t0),X=Ne+1|0,ee=(X|0)==56,!ee;)Ne=X;if(U=_e+1|0,T8=(U|0)==8,T8)break;_e=U}if(o0=y9+1|0,w8=(o0|0)==17,w8)break;y9=o0}for(p9=n,R4=(s|0)>0,j4=s^-1,Ce=0;;){for(Z=k9(32)|0,V=i2+(Ce<<2)|0,e[V>>2]=Z,s0=+(Ce|0),n0=s0*.5,i0=s0*.34657350182533264,r0=i0+4.135165354540845,K=+Fn(+r0),A0=K/p9,l0=+qo(+A0),j=~~l0,$0=+(j|0),g0=$0*n,f0=g0+1,Q0=f0,d0=+Or(+Q0),y0=d0*2.885390043258667,h0=y0+-11.931568145751953,C0=+KB(+h0),u0=~~C0,k0=j+1|0,J0=+(k0|0),D0=J0*n,m0=D0,x0=+Or(+m0),F0=x0*2.885390043258667,M0=F0+-11.931568145751953,G0=+qo(+M0),H0=~~G0,R0=(u0|0)>(Ce|0),g7=R0?Ce:u0,S0=(g7|0)<0,C8=S0?0:g7,L0=(H0|0)>16,p=L0?16:H0,Y0=(C8|0)>(p|0),q0=Ce+1|0,N0=(q0|0)<17,V0=n0+3.9657840728759766,ie=0;;){if(T0=k9(232)|0,U0=Z+(ie<<2)|0,e[U0>>2]=T0,R4)for(e8=0;O0=L+(e8<<2)|0,A[O0>>2]=999,e1=e8+1|0,C9=(e1|0)==(s|0),!C9;)e8=e1;if(!Y0)for(ge=C8;;){for(v0=+(ge|0),i1=v0*.5,u8=0,Be=0;;){if(g1=+(u8|0),l1=g1*.125,A1=l1+i1,n1=A1+3.9032840728759766,s1=n1*.6931470036506653,z0=+Fn(+s1),I1=z0/p9,h1=~~I1,E1=A1+4.028284072875977,u1=E1*.6931470036506653,d1=+Fn(+u1),m1=d1/p9,p1=m1+1,D1=~~p1,_1=(h1|0)<0,m=_1?0:h1,y1=(m|0)>(s|0),e7=y1?s:m,k1=(e7|0)<(Be|0),H4=k1?e7:Be,x1=(D1|0)<0,Z8=x1?0:D1,L1=(Z8|0)>(s|0),H8=L1?s:Z8,N1=(H4|0)<(H8|0),w1=(H4|0)<(s|0),Y8=N1&w1,Y8)for(U1=((B9+(ge*1792|0)|0)+(ie*224|0)|0)+(u8<<2)|0,Z1=+A[U1>>2],v1=(Be|0)<(s|0),K1=v1?Be:s,P1=K1^-1,H1=(h1|0)>0,b=h1^-1,q1=H1?b:-1,Y1=(q1|0)<(P1|0),q4=Y1?P1:q1,j1=q4^-1,r2=(D1|0)>0,R=D1^-1,W1=r2?R:-1,O1=(W1|0)<(j4|0),n7=O1?j4:W1,z1=n7-q4|0,h2=q4+s|0,A2=h2^-1,d2=z1>>>0>A2>>>0,b8=d2?z1:A2,s2=j1-b8|0,W9=H4;;)if(V1=L+(W9<<2)|0,g2=+A[V1>>2],$2=g2>Z1,$2&&(A[V1>>2]=Z1),t2=W9+1|0,h8=(t2|0)==(s2|0),h8){Ue=s2;break}else W9=t2;else Ue=H4;if(a2=u8+1|0,U8=(a2|0)==56,U8){Oe=Ue;break}else u8=a2,Be=Ue}if(c1=(Oe|0)<(s|0),c1)for(a1=((B9+(ge*1792|0)|0)+(ie*224|0)|0)+220|0,f1=+A[a1>>2],Re=Oe;X1=L+(Re<<2)|0,n2=+A[X1>>2],f2=n2>f1,f2&&(A[X1>>2]=f1),e2=Re+1|0,O8=(e2|0)==(s|0),!O8;)Re=e2;if(y2=ge+1|0,S2=(ge|0)<(p|0),S2)ge=y2;else break}if(N0){for(S8=0,he=0;;){if(N2=+(S8|0),q2=N2*.125,T2=q2+n0,O2=T2+3.9032840728759766,V2=O2*.6931470036506653,A5=+Fn(+V2),P2=A5/p9,T1=~~P2,R5=T2+4.028284072875977,X2=R5*.6931470036506653,v5=+Fn(+X2),z2=v5/p9,f5=z2+1,w5=~~f5,O5=(T1|0)<0,v=O5?0:T1,a5=(v|0)>(s|0),I3=a5?s:v,k2=(I3|0)<(he|0),Pe=k2?I3:he,E5=(w5|0)<0,W8=E5?0:w5,x2=(W8|0)>(s|0),f7=x2?s:W8,R2=(Pe|0)<(f7|0),B2=(Pe|0)<(s|0),n8=R2&B2,n8)for(C5=((B9+(q0*1792|0)|0)+(ie*224|0)|0)+(S8<<2)|0,x5=+A[C5>>2],u5=(he|0)<(s|0),S5=u5?he:s,G5=S5^-1,D5=(T1|0)>0,D=T1^-1,H2=D5?D:-1,s5=(H2|0)<(G5|0),A8=s5?G5:H2,l5=A8^-1,B5=(w5|0)>0,Q=w5^-1,M1=B5?Q:-1,k5=(M1|0)<(j4|0),D8=k5?j4:M1,c5=D8-A8|0,o5=A8+s|0,Z2=o5^-1,c2=c5>>>0>Z2>>>0,qe=c2?c5:Z2,m5=l5-qe|0,B4=Pe;;)if(n5=L+(B4<<2)|0,g5=+A[n5>>2],J2=g5>x5,J2&&(A[n5>>2]=x5),h5=B4+1|0,p7=(h5|0)==(m5|0),p7){r8=m5;break}else B4=h5;else r8=Pe;if(t5=S8+1|0,K8=(t5|0)==56,K8){me=r8;break}else S8=t5,he=r8}if(_2=(me|0)<(s|0),_2)for(u2=((B9+(q0*1792|0)|0)+(ie*224|0)|0)+220|0,K2=+A[u2>>2],E8=me;b5=L+(E8<<2)|0,W2=+A[b5>>2],$5=W2>K2,$5&&(A[b5>>2]=K2),F2=E8+1|0,l7=(F2|0)==(s|0),!l7;)E8=F2}for(w2=Z+(ie<<2)|0,C2=Z+(ie<<2)|0,M2=Z+(ie<<2)|0,ce=0;;){f3=+(ce|0),g3=f3*.125,K5=V0+g3,t3=K5*.6931470036506653,A3=+Fn(+t3),E3=A3/p9,F5=~~E3,V5=(F5|0)<0;do if(V5)h3=ce+2|0,B3=e[w2>>2]|0,q3=B3+(h3<<2)|0,A[q3>>2]=-999;else if(M3=(F5|0)<(s|0),M3){j3=L+(F5<<2)|0,_3=e[j3>>2]|0,T3=ce+2|0,a3=e[C2>>2]|0,l3=a3+(T3<<2)|0,e[l3>>2]=_3;break}else{Z5=ce+2|0,Q3=e[M2>>2]|0,j5=Q3+(Z5<<2)|0,A[j5>>2]=-999;break}while(!1);if(C3=ce+1|0,c7=(C3|0)==56,c7)break;ce=C3}p5=T0+8|0,e3=+A[p5>>2],d5=e3>-200;do if(d5)Z9=0;else if(Y5=T0+12|0,N5=+A[Y5>>2],P5=N5>-200,P5)Z9=1;else if(p3=T0+16|0,X3=+A[p3>>2],V3=X3>-200,V3)Z9=2;else if(N3=T0+20|0,z5=+A[N3>>2],U3=z5>-200,U3)Z9=3;else if(o6=T0+24|0,u3=+A[o6>>2],y6=u3>-200,y6)Z9=4;else if(w6=T0+28|0,k6=+A[w6>>2],B6=k6>-200,B6)Z9=5;else if(z3=T0+32|0,$6=+A[z3>>2],m6=$6>-200,m6)Z9=6;else if(Y6=T0+36|0,C6=+A[Y6>>2],v3=C6>-200,v3)Z9=7;else if(Z3=T0+40|0,W3=+A[Z3>>2],f6=W3>-200,f6)Z9=8;else if(O3=T0+44|0,S3=+A[O3>>2],P3=S3>-200,P3)Z9=9;else if(Y3=T0+48|0,i6=+A[Y3>>2],r3=i6>-200,r3)Z9=10;else if(O6=T0+52|0,s3=+A[O6>>2],r6=s3>-200,r6)Z9=11;else if(u6=T0+56|0,D3=+A[u6>>2],T6=D3>-200,T6)Z9=12;else if(e6=T0+60|0,p6=+A[e6>>2],K6=p6>-200,K6)Z9=13;else{if(I6=T0+64|0,J6=+A[I6>>2],x3=J6>-200,x3){Z9=14;break}if(Z6=T0+68|0,G6=+A[Z6>>2],j6=G6>-200,j6){Z9=15;break}Z9=16}while(!1);for(A[T0>>2]=Z9,P8=55;;){if(y5=P8+2|0,G3=T0+(y5<<2)|0,L5=+A[G3>>2],t6=L5>-200,t6){X8=P8;break}if(o3=P8+-1|0,R3=(o3|0)>17,R3)P8=o3;else{X8=o3;break}}if(h6=+(X8|0),m3=T0+4|0,A[m3>>2]=h6,w3=ie+1|0,x8=(w3|0)==8,x8)break;ie=w3}if(F8=(q0|0)==17,F8)break;Ce=q0}return B=Ye,i2|0}function rQ(t,n,s,$,c,f){t=t|0,n=n|0,s=s|0,$=$|0,c=+c,f=f|0;var d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,B6=0,z3=0,$6=0,m6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,s3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0;if(S4=B,w=t<<2,d=w,y=B,B=B+((1*d|0)+15&-16)|0,I=w,s2=B,B=B+((1*I|0)+15&-16)|0,C=w,W2=B,B=B+((1*C|0)+15&-16)|0,p=w,A3=B,B=B+((1*p|0)+15&-16)|0,m=w,j5=B,B=B+((1*m|0)+15&-16)|0,y5=+A[s>>2],X3=y5+c,k6=X3<1,n4=k6?1:X3,f6=n4*n4,D=f6*.5,z=D*n4,A[y>>2]=D,A[s2>>2]=D,A[W2>>2]=0,A[A3>>2]=z,A[j5>>2]=0,V=(t|0)>1,V)for(F3=1,d6=D,M6=D,e9=0,M9=0,u9=z,u4=1;c1=s+(F3<<2)|0,h1=+A[c1>>2],x1=h1+c,q1=x1<1,p9=q1?1:x1,V1=p9*p9,y2=V1+d6,T2=V1*u4,f5=T2+M6,x5=T2*u4,k5=x5+e9,J2=V1*p9,h5=J2+u9,t5=T2*p9,b5=t5+M9,$5=y+(F3<<2)|0,A[$5>>2]=y2,F2=s2+(F3<<2)|0,A[F2>>2]=f5,p5=W2+(F3<<2)|0,A[p5>>2]=k5,q5=A3+(F3<<2)|0,A[q5>>2]=h5,e3=j5+(F3<<2)|0,A[e3>>2]=b5,d5=F3+1|0,f3=u4+1,F6=(d5|0)==(t|0),!F6;)F3=d5,d6=y2,M6=f5,e9=k5,M9=b5,u9=h5,u4=f3;if(g0=e[n>>2]|0,D0=g0>>16,Y0=(D0|0)>-1,Y0)K5=g0,u6=0,p6=0,J6=1,L6=0,r4=0;else for(F5=g0,B3=D0,X6=0,l4=0;;)if(E3=F5&65535,V5=y+(E3<<2)|0,y3=+A[V5>>2],h3=0-B3|0,q3=y+(h3<<2)|0,M3=+A[q3>>2],Z5=M3+y3,Q3=s2+(E3<<2)|0,j3=+A[Q3>>2],_3=s2+(h3<<2)|0,T3=+A[_3>>2],$3=j3-T3,a3=W2+(E3<<2)|0,l3=+A[a3>>2],C3=W2+(h3<<2)|0,Y5=+A[C3>>2],N5=Y5+l3,P5=A3+(E3<<2)|0,G3=+A[P5>>2],L5=A3+(h3<<2)|0,t6=+A[L5>>2],i3=t6+G3,o3=j5+(E3<<2)|0,R3=+A[o3>>2],h6=j5+(h3<<2)|0,m3=+A[h6>>2],w3=R3-m3,p3=i3*N5,V3=w3*$3,N3=p3-V3,z5=w3*Z5,k3=i3*$3,c3=z5-k3,U3=N5*Z5,o6=$3*$3,u3=U3-o6,y6=c3*l4,w6=y6+N3,B6=w6/u3,z3=B6<0,j6=z3?0:B6,$6=j6-c,m6=$+(X6<<2)|0,A[m6>>2]=$6,_6=X6+1|0,Y6=l4+1,C6=n+(_6<<2)|0,v3=e[C6>>2]|0,Z3=v3>>16,W3=(Z3|0)>-1,W3){K5=v3,u6=N3,p6=c3,J6=u3,L6=_6,r4=Y6;break}else F5=v3,B3=Z3,X6=_6,l4=Y6;if(g3=K5&65535,t3=(g3|0)<(t|0),t3)for(v=K5,Y3=g3,W6=L6,K9=r4;;)if(S3=v>>16,P3=y+(Y3<<2)|0,v6=+A[P3>>2],i6=y+(S3<<2)|0,r3=+A[i6>>2],O6=v6-r3,s3=s2+(Y3<<2)|0,r6=+A[s3>>2],Q=s2+(S3<<2)|0,b=+A[Q>>2],R=r6-b,_=W2+(Y3<<2)|0,L=+A[_>>2],M=W2+(S3<<2)|0,T=+A[M>>2],G=L-T,N=A3+(Y3<<2)|0,P=+A[N>>2],Y=A3+(S3<<2)|0,t0=+A[Y>>2],J=P-t0,W=j5+(Y3<<2)|0,e0=+A[W>>2],H=j5+(S3<<2)|0,X=+A[H>>2],U=e0-X,o0=J*G,Z=U*R,s0=o0-Z,n0=U*O6,i0=J*R,r0=n0-i0,K=G*O6,c0=R*R,A0=K-c0,l0=r0*K9,j=l0+s0,$0=j/A0,f0=$0<0,r9=f0?0:$0,Q0=r9-c,d0=$+(W6<<2)|0,A[d0>>2]=Q0,y0=W6+1|0,h0=K9+1,E0=n+(y0<<2)|0,C0=e[E0>>2]|0,u0=C0&65535,k0=(u0|0)<(t|0),k0)v=C0,Y3=u0,W6=y0,K9=h0;else{D3=s0,R6=r0,x3=A0,A9=y0,T9=h0;break}else D3=u6,R6=p6,x3=J6,A9=L6,T9=r4;if(O3=(A9|0)<(t|0),O3)for(g9=A9,v9=T9;J0=v9*R6,m0=J0+D3,x0=m0/x3,F0=x0<0,x6=F0?0:x0,M0=x6-c,G0=$+(g9<<2)|0,A[G0>>2]=M0,p0=g9+1|0,H0=v9+1,Q6=(p0|0)==(t|0),!Q6;)g9=p0,v9=H0;if(R0=(f|0)<1,R0){B=S4;return}if(S0=(f|0)/2&-1,L0=S0-f|0,q0=(L0|0)>-1,q0)T6=D3,K6=R6,Z6=x3,h9=0,I9=0;else for(N0=f-S0|0,O0=S0,i1=L0,f9=0,P6=0;;)if(r1=y+(O0<<2)|0,e1=+A[r1>>2],v0=0-i1|0,a1=y+(v0<<2)|0,f1=+A[a1>>2],g1=f1+e1,l1=s2+(O0<<2)|0,A1=+A[l1>>2],$1=s2+(v0<<2)|0,n1=+A[$1>>2],s1=A1-n1,z0=W2+(O0<<2)|0,I1=+A[z0>>2],E1=W2+(v0<<2)|0,u1=+A[E1>>2],d1=u1+I1,m1=A3+(O0<<2)|0,p1=+A[m1>>2],Q1=A3+(v0<<2)|0,D1=+A[Q1>>2],_1=D1+p1,y1=j5+(O0<<2)|0,k1=+A[y1>>2],L1=j5+(v0<<2)|0,N1=+A[L1>>2],w1=k1-N1,U1=_1*d1,Z1=w1*s1,G1=U1-Z1,v1=w1*g1,K1=_1*s1,P1=v1-K1,H1=d1*g1,Y1=s1*s1,j1=H1-Y1,r2=P1*P6,W1=r2+G1,O1=W1/j1,l2=O1-c,z1=$+(f9<<2)|0,h2=+A[z1>>2],A2=l2>2]=l2),d2=f9+1|0,g2=P6+1,$2=S0+d2|0,t2=$2-f|0,V6=(d2|0)==(N0|0),V6){T6=G1,K6=P1,Z6=j1,h9=N0,I9=g2;break}else O0=$2,i1=t2,f9=d2,P6=g2;if(V0=h9+S0|0,T0=(V0|0)<(t|0),T0)for(U0=t-S0|0,S=V0,o9=h9,I4=I9;;)if(i2=S-f|0,o2=y+(S<<2)|0,X1=+A[o2>>2],n2=y+(i2<<2)|0,f2=+A[n2>>2],e2=X1-f2,S2=s2+(S<<2)|0,w2=+A[S2>>2],C2=s2+(i2<<2)|0,M2=+A[C2>>2],_2=w2-M2,G2=W2+(S<<2)|0,u2=+A[G2>>2],K2=W2+(i2<<2)|0,N2=+A[K2>>2],q2=u2-N2,O2=A3+(S<<2)|0,V2=+A[O2>>2],A5=A3+(i2<<2)|0,P2=+A[A5>>2],T1=V2-P2,j2=j5+(S<<2)|0,R5=+A[j2>>2],X2=j5+(i2<<2)|0,v5=+A[X2>>2],z2=R5-v5,w5=T1*q2,O5=z2*_2,a5=w5-O5,k2=z2*e2,E5=T1*_2,r5=k2-E5,x2=q2*e2,R2=_2*_2,B2=x2-R2,C5=r5*I4,u5=C5+a5,S5=u5/B2,G5=S5-c,D5=$+(o9<<2)|0,H2=+A[D5>>2],I5=G5>2]=G5),s5=o9+1|0,l5=I4+1,B5=s5+S0|0,S6=(s5|0)==(U0|0),S6){e6=a5,I6=r5,G6=B2,s9=U0,t9=l5;break}else S=B5,o9=s5,I4=l5;else e6=T6,I6=K6,G6=Z6,s9=h9,t9=I9;if(a2=(s9|0)<(t|0),a2)L9=s9,k4=t9;else{B=S4;return}for(;M1=k4*I6,c5=M1+e6,o5=c5/G6,Z2=o5-c,c2=$+(L9<<2)|0,m5=+A[c2>>2],e5=Z2>2]=Z2),n5=L9+1|0,g5=k4+1,N6=(n5|0)==(t|0),!N6;)L9=n5,k4=g5;B=S4}function ES(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0;if(c1=B,f=s<<2,$=f,d=B,B=B+((1*$|0)+15&-16)|0,c=f,b=B,B=B+((1*c|0)+15&-16)|0,t0=(s|0)>0,t0)p0=0,N0=0;else{B=c1;return}for(;;){k0=(N0|0)<2;do if(k0)m0=d+(N0<<2)|0,e[m0>>2]=p0,I=t+(p0<<2)|0,C=e[I>>2]|0,p=b+(N0<<2)|0,e[p>>2]=C,O0=N0;else{for(J0=t+(p0<<2)|0,D0=+A[J0>>2],V0=N0;;){if(m=V0+-1|0,v=b+(m<<2)|0,S=+A[v>>2],w=D0>2]|0,_=R+n|0,L=(p0|0)<(_|0),M=(V0|0)>1,S0=M&L,!S0){U0=V0,i1=12;break}if(T=V0+-2|0,G=b+(T<<2)|0,N=+A[G>>2],P=!(S<=N),P){U0=V0,i1=12;break}if(z=d+(T<<2)|0,Y=e[z>>2]|0,J=Y+n|0,W=(p0|0)<(J|0),W)V0=m;else{U0=V0,i1=12;break}}if((i1|0)==8){i1=0,y=d+(T0<<2)|0,e[y>>2]=p0,D=b+(T0<<2)|0,A[D>>2]=D0,O0=T0;break}else if((i1|0)==12){i1=0,e0=d+(U0<<2)|0,e[e0>>2]=p0,H=b+(U0<<2)|0,A[H>>2]=D0,O0=U0;break}}while(!1);if(r1=O0+1|0,X=p0+1|0,G0=(X|0)==(s|0),G0){e1=O0,v0=r1;break}else p0=X,N0=r1}if(n0=(e1|0)>-1,!n0){B=c1;return}for(Q0=n+1|0,H0=0,L0=0;;){if(U=(H0|0)<(e1|0),U?(o0=H0+1|0,Z=b+(o0<<2)|0,V=+A[Z>>2],s0=b+(H0<<2)|0,i0=+A[s0>>2],r0=V>i0,r0?(K=d+(o0<<2)|0,c0=e[K>>2]|0,x0=c0):i1=17):i1=17,(i1|0)==17&&(i1=0,A0=d+(H0<<2)|0,l0=e[A0>>2]|0,j=Q0+l0|0,x0=j),$0=(x0|0)>(s|0),R0=$0?s:x0,g0=(L0|0)<(R0|0),g0)for(f0=b+(H0<<2)|0,d0=e[f0>>2]|0,y0=(x0|0)<(s|0),h0=y0?x0:s,q0=L0;;)if(E0=t+(q0<<2)|0,e[E0>>2]=d0,C0=q0+1|0,F0=(C0|0)==(h0|0),F0){Y0=h0;break}else q0=C0;else Y0=L0;if(u0=H0+1|0,M0=(u0|0)==(v0|0),M0)break;H0=u0,L0=Y0}B=c1}function nQ(t,n,s,$,c,f,d,I,C){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0,I=I|0,C=C|0;var p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0;if(l2=B,_=I<<2,D=_,L=B,B=B+((1*D|0)+15&-16)|0,e0=t+500|0,K=e[e0>>2]|0,h0=(K|0)==0,h0?p1=I:(G0=t+504|0,U0=e[G0>>2]|0,A1=U0-d|0,p1=A1),L1=(p1|0)>(I|0),Y1=L1?I:p1,M=(Y1|0)>0,M)for(T=(f|0)==0,G=(p1|0)<(I|0),N=G?p1:I,P1=0;;){T?O1=9:(t0=f+(P1<<2)|0,J=e[t0>>2]|0,W=(J|0)==0,W&&(O1=9));do if((O1|0)==9)if(O1=0,H=$+(P1<<2)|0,X=+A[H>>2],U=c+(P1<<2)|0,o0=+A[U>>2],Z=X/o0,V=s+(P1<<2)|0,s0=+A[V>>2],n0=s0<0,i0=Z,r0=+Rn(+i0),c0=+Ti(r0),n0){A0=-c0,l0=~~A0,j=C+(P1<<2)|0,e[j>>2]=l0;break}else{$0=~~c0,g0=C+(P1<<2)|0,e[g0>>2]=$0;break}while(!1);if(f0=P1+1|0,v1=(f0|0)==(N|0),v1){K1=N;break}else P1=f0}else K1=0;if(P=(K1|0)<(I|0),!P)return y=0,B=l2,+y;for(z=(f|0)!=0,Y=n-d|0,p=0,N1=0,H1=K1;;){z?(Q0=f+(H1<<2)|0,d0=e[Q0>>2]|0,y0=(d0|0)==0,y0?O1=15:(m=p,w1=N1)):O1=15;do if((O1|0)==15)if(O1=0,E0=$+(H1<<2)|0,C0=+A[E0>>2],u0=c+(H1<<2)|0,k0=+A[u0>>2],J0=C0/k0,D0=!(J0<.25),m0=(H1|0)<(Y|0),j1=z&m0,r2=D0|j1,r2){p0=s+(H1<<2)|0,H0=+A[p0>>2],R0=H0<0,S0=J0,L0=+Rn(+S0),Y0=+Ti(L0),q0=-Y0,b=R0?q0:Y0,Q=~~b,N0=C+(H1<<2)|0,e[N0>>2]=Q,V0=i5(Q,Q)|0,T0=+(V0|0),r1=+A[u0>>2],O0=T0*r1,A[E0>>2]=O0,m=p,w1=N1;break}else{x0=J0+p,F0=N1+1|0,M0=L+(N1<<2)|0,e[M0>>2]=E0,m=x0,w1=F0;break}while(!1);if(e1=H1+1|0,G1=(e1|0)==(I|0),G1){v=m,U1=w1;break}else p=m,N1=w1,H1=e1}if(v0=(U1|0)==0,v0||(_h(L,U1,4,9),i1=(U1|0)>0,!i1))return y=v,B=l2,+y;for(c1=$,a1=t+512|0,f1=+o1[a1>>3],S=v,q1=0;;)if(g1=L+(q1<<2)|0,l1=e[g1>>2]|0,$1=l1,n1=$1-c1|0,s1=n1>>2,z0=S,I1=!(z0>=f1),I1?(w=S,R=0,W1=0):(h1=s+(s1<<2)|0,E1=e[h1>>2]|0,u1=E1&-2147483648,d1=u1|1065353216,m1=(e[p2>>2]=d1,+A[p2>>2]),Q1=~~m1,D1=S+-1,_1=c+(s1<<2)|0,y1=+A[_1>>2],w=D1,R=Q1,W1=y1),k1=C+(s1<<2)|0,e[k1>>2]=R,A[l1>>2]=W1,x1=q1+1|0,Z1=(x1|0)==(U1|0),Z1){y=w;break}else S=w,q1=x1;return B=l2,+y}function CS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0;return S=B,s=e[t>>2]|0,$=+A[s>>2],c=e[n>>2]|0,f=+A[c>>2],d=$f,p=C&1,m=I-p|0,m|0}function BS(t){t=t|0;var n=0,s=0,$=0;$=B,n=(t|0)==0,n||I2(t)}function mS(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0;if(W=B,s=(t|0)==0,!s){if($=t+4|0,y=e[$>>2]|0,L=(y|0)>0,M=t+20|0,L)for(_=y,Y=0;T=e[M>>2]|0,G=T+(Y<<2)|0,N=e[G>>2]|0,P=(N|0)==0,P?f=_:(I2(N),n=e[$>>2]|0,f=n),z=Y+1|0,c=(z|0)<(f|0),c;)_=f,Y=z;if(d=e[M>>2]|0,I2(d),I=t+24|0,C=e[I>>2]|0,p=(C|0)>0,m=t+28|0,p)for(t0=0;v=e[m>>2]|0,S=v+(t0<<2)|0,w=e[S>>2]|0,I2(w),D=t0+1|0,Q=e[I>>2]|0,b=(D|0)<(Q|0),b;)t0=D;R=e[m>>2]|0,I2(R),I2(t)}}function pS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0;if($0=B,c=e[t>>2]|0,U2(n,c,24),f=t+4|0,Q=e[f>>2]|0,U2(n,Q,24),Y=t+8|0,U=e[Y>>2]|0,o0=U+-1|0,U2(n,o0,24),Z=t+12|0,V=e[Z>>2]|0,s0=V+-1|0,U2(n,s0,6),n0=t+20|0,d=e[n0>>2]|0,U2(n,d,8),I=e[Z>>2]|0,C=(I|0)>0,!!C){for(p=t+24|0,i0=0,K=0;;){if(S=p+(K<<2)|0,w=e[S>>2]|0,y=F7(w)|0,D=(y|0)>3,b=e[S>>2]|0,D?(U2(n,b,3),U2(n,1,1),R=e[S>>2]|0,_=R>>3,U2(n,_,5)):U2(n,b,4),L=e[S>>2]|0,M=(L|0)==0,M)A0=0;else for(s=L,l0=0;;)if(T=s&1,G=T+l0|0,N=s>>>1,P=(N|0)==0,P){A0=G;break}else s=N,l0=G;if(z=A0+i0|0,t0=K+1|0,J=e[Z>>2]|0,W=(t0|0)<(J|0),W)i0=z,K=t0;else{$=z;break}}if(m=($|0)>0,!!m)for(v=t+280|0,c0=0;e0=v+(c0<<2)|0,H=e[e0>>2]|0,U2(n,H,8),X=c0+1|0,r0=(X|0)==($|0),!r0;)c0=X}}function QS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0;n1=B,d=t4(1,2840)|0,I=t+28|0,R=e[I>>2]|0,J=Z4(n,24)|0,e[d>>2]=J,i0=Z4(n,24)|0,d0=d+4|0,e[d0>>2]=i0,F0=Z4(n,24)|0,V0=F0+1|0,U0=d+8|0,e[U0>>2]=V0,r1=Z4(n,6)|0,C=r1+1|0,p=d+12|0,e[p>>2]=C,m=Z4(n,8)|0,v=d+20|0,e[v>>2]=m,S=(m|0)<0;e:do if(S)$1=26;else{if(w=(r1|0)>-1,w){for(y=d+24|0,e1=0,c1=0;;){if(b=Z4(n,3)|0,_=Z4(n,1)|0,L=(_|0)<0,L){$1=26;break e}if(M=(_|0)==0,M)v0=b;else{if(T=Z4(n,5)|0,G=(T|0)<0,G){$1=26;break e}N=T<<3,P=N|b,v0=P}if(z=y+(c1<<2)|0,e[z>>2]=v0,Y=(v0|0)==0,Y)l1=0;else for($=v0,A1=0;;)if(t0=$&1,W=t0+A1|0,e0=$>>>1,H=(e0|0)==0,H){l1=W;break}else $=e0,A1=W;if(X=l1+e1|0,U=c1+1|0,o0=e[p>>2]|0,Z=(U|0)<(o0|0),Z)e1=X,c1=U;else{f=X;break}}if(D=(f|0)>0,D)for(Q=d+280|0,a1=0;;){if(V=Z4(n,8)|0,s0=(V|0)<0,s0)break e;if(n0=Q+(a1<<2)|0,e[n0>>2]=V,r0=a1+1|0,K=(r0|0)<(f|0),K)a1=r0;else{T0=D,O0=f;break}}else T0=0,O0=f}else T0=0,O0=0;if(c0=e[v>>2]|0,A0=R+24|0,l0=e[A0>>2]|0,j=(c0|0)<(l0|0),j){if(T0)for($0=d+280|0,f1=0;;){if(Q0=$0+(f1<<2)|0,y0=e[Q0>>2]|0,h0=(y0|0)<(l0|0),!h0||(E0=(R+1824|0)+(y0<<2)|0,C0=e[E0>>2]|0,u0=C0+12|0,k0=e[u0>>2]|0,J0=(k0|0)==0,g0=f1+1|0,J0))break e;if(f0=(g0|0)<(O0|0),f0)f1=g0;else break}if(D0=(R+1824|0)+(c0<<2)|0,m0=e[D0>>2]|0,x0=m0+4|0,M0=e[x0>>2]|0,G0=e[m0>>2]|0,p0=(G0|0)<1,!p0){for(H0=e[p>>2]|0,i1=G0,g1=1;;){if(L0=i5(H0,g1)|0,Y0=(L0|0)>(M0|0),Y0)break e;if(R0=i1+-1|0,S0=(i1|0)>1,S0)i1=R0,g1=L0;else{c=L0;break}}return q0=d+16|0,e[q0>>2]=c,s=d,s|0}}}while(!1);return($1|0)==26&&(N0=(d|0)==0,N0)?(s=0,s|0):(I2(d),s=0,s|0)}function yS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0;if(p1=B,f=t4(1,44)|0,d=t+4|0,b=e[d>>2]|0,t0=b+28|0,n0=e[t0>>2]|0,e[f>>2]=n,Q0=n+12|0,x0=e[Q0>>2]|0,N0=f+4|0,e[N0>>2]=x0,r1=n0+2848|0,O0=e[r1>>2]|0,I=f+12|0,e[I>>2]=O0,C=O0,p=n+20|0,m=e[p>>2]|0,v=C+(m*56|0)|0,S=f+16|0,e[S>>2]=v,w=e[v>>2]|0,y=t4(x0,4)|0,D=f+20|0,e[D>>2]=y,Q=(x0|0)>0,Q)for(R=n+24|0,_=n+280|0,e1=0,l1=0,h1=0;;){if(L=R+(l1<<2)|0,M=e[L>>2]|0,T=F7(M)|0,G=(T|0)==0,G)c1=e1,E1=h1;else if(N=(T|0)>(h1|0),$=N?T:h1,P=t4(T,4)|0,z=y+(l1<<2)|0,e[z>>2]=P,Y=(T|0)>0,Y)for(J=e[L>>2]|0,W=y+(l1<<2)|0,v0=e1,s1=0;;)if(e0=1<>2]|0,o0=v0+1|0,Z=_+(v0<<2)|0,V=e[Z>>2]|0,s0=U+(V*56|0)|0,i0=e[W>>2]|0,r0=i0+(s1<<2)|0,e[r0>>2]=s0,i1=o0),K=s1+1|0,f1=(K|0)==(T|0),f1){c1=i1,E1=$;break}else v0=i1,s1=K;else c1=e1,E1=$;if(c0=l1+1|0,A0=(c0|0)<(x0|0),A0)e1=c1,l1=c0,h1=E1;else{I1=E1;break}}else I1=0;if(l0=f+24|0,e[l0>>2]=1,j=(w|0)>0,j){for(g0=1,A1=0;;)if($0=i5(g0,x0)|0,f0=A1+1|0,a1=(f0|0)==(w|0),a1){s=$0;break}else g0=$0,A1=f0;e[l0>>2]=s,h0=s}else h0=1;if(d0=f+8|0,e[d0>>2]=I1,y0=h0<<2,E0=k9(y0)|0,C0=f+28|0,e[C0>>2]=E0,u0=(h0|0)>0,!u0)return f|0;if(k0=w<<2,!j){for($1=0;q0=k9(k0)|0,V0=E0+($1<<2)|0,e[V0>>2]=q0,T0=$1+1|0,U0=(T0|0)<(h0|0),U0;)$1=T0;return f|0}for(J0=e[C0>>2]|0,n1=0;;){for(S0=k9(k0)|0,L0=E0+(n1<<2)|0,e[L0>>2]=S0,Y0=J0+(n1<<2)|0,H0=e[Y0>>2]|0,c=h0,z0=0,d1=n1;u1=(c|0)/(x0|0)&-1,F0=(d1|0)/(u1|0)&-1,M0=i5(F0,u1)|0,G0=d1-M0|0,p0=H0+(z0<<2)|0,e[p0>>2]=F0,R0=z0+1|0,g1=(R0|0)==(w|0),!g1;)c=u1,z0=R0,d1=G0;if(D0=n1+1|0,m0=(D0|0)<(h0|0),m0)n1=D0;else break}return f|0}function wS(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0;if(M=B,f=(c|0)>0,f)Q=0,b=0;else return 0;for(;;)if(d=$+(Q<<2)|0,I=e[d>>2]|0,C=(I|0)==0,C?R=b:(p=s+(Q<<2)|0,m=e[p>>2]|0,v=b+1|0,S=s+(b<<2)|0,e[S>>2]=m,R=v),w=Q+1|0,D=(w|0)==(c|0),D){_=R;break}else Q=w,b=R;return y=(_|0)==0,y||AQ(t,n,s,_,2),0}function kS(t,n,s,$,c,f,d,I){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0,I=I|0;var C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0;if(N=B,C=(f|0)>0,C)_=0,L=0;else return 0;for(;;)if(p=c+(_<<2)|0,m=e[p>>2]|0,v=(m|0)==0,v?M=L:(S=$+(_<<2)|0,w=e[S>>2]|0,y=L+1|0,D=$+(L<<2)|0,e[D>>2]=w,M=y),Q=_+1|0,R=(Q|0)==(f|0),R){T=M;break}else _=Q,L=M;return b=(T|0)==0,b||sQ(t,s,$,T,d),0}function vS(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0;if(m1=B,I=(c|0)>0,I)i1=0,h1=0;else return f=0,f|0;for(;;)if(C=$+(i1<<2)|0,_=e[C>>2]|0,W=(_|0)==0,W?E1=h1:(r0=s+(i1<<2)|0,y0=e[r0>>2]|0,M0=h1+1|0,Y0=s+(h1<<2)|0,e[Y0>>2]=y0,E1=M0),q0=i1+1|0,U0=(q0|0)==(c|0),U0){u1=E1;break}else i1=q0,h1=E1;if(N0=(u1|0)==0,N0)return f=0,f|0;if(p=e[n>>2]|0,m=p+8|0,v=e[m>>2]|0,S=p+12|0,w=e[S>>2]|0,y=p+4|0,D=e[y>>2]|0,Q=e[p>>2]|0,b=D-Q|0,R=(b|0)/(v|0)&-1,L=u1<<2,M=U7(t,L)|0,T=+(v|0),G=100/T,N=G,P=(u1|0)>0,P)for(z=R<<2,c1=0;H=U7(t,z)|0,X=M+(c1<<2)|0,e[X>>2]=H,Ae(H|0,0,z|0)|0,U=c1+1|0,v0=(U|0)==(u1|0),!v0;)c1=U;if(Y=(R|0)>0,Y)for(t0=(v|0)>0,J=w+-1|0,e0=(w|0)>1,a1=0;;){if(o0=i5(a1,v)|0,Z=e[p>>2]|0,V=Z+o0|0,P)for(g1=0;;){if(t0)for(s0=s+(g1<<2)|0,n0=e[s0>>2]|0,T0=0,l1=0,s1=0;;)if(i0=V+l1|0,K=n0+(i0<<2)|0,c0=e[K>>2]|0,f1=(c0|0)>-1,z0=0-c0|0,A0=f1?c0:z0,l0=(A0|0)>(s1|0),d=l0?A0:s1,j=A0+T0|0,$0=l1+1|0,r1=($0|0)==(v|0),r1){V0=j,n1=d;break}else T0=j,l1=$0,s1=d;else V0=0,n1=0;g0=+(V0|0),f0=g0*N,Q0=~~f0;e:do if(e0)for($1=0;;){if(d0=(p+2328|0)+($1<<2)|0,h0=e[d0>>2]|0,E0=(n1|0)>(h0|0),!E0&&(C0=(p+2584|0)+($1<<2)|0,u0=e[C0>>2]|0,k0=(u0|0)<0,J0=(Q0|0)<(u0|0),I1=k0|J0,I1)){A1=$1;break e}if(D0=$1+1|0,m0=(D0|0)<(J|0),m0)$1=D0;else{A1=D0;break}}else A1=0;while(!1);if(x0=M+(g1<<2)|0,F0=e[x0>>2]|0,G0=F0+(a1<<2)|0,e[G0>>2]=A1,p0=g1+1|0,O0=(p0|0)==(u1|0),O0)break;g1=p0}if(H0=a1+1|0,e1=(H0|0)==(R|0),e1)break;a1=H0}return R0=n+40|0,S0=e[R0>>2]|0,L0=S0+1|0,e[R0>>2]=L0,f=M,f|0}function SS(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0;if(M=B,f=(c|0)>0,f)Q=0,b=0;else return 0;for(;;)if(d=$+(Q<<2)|0,I=e[d>>2]|0,C=(I|0)==0,C?R=b:(p=s+(Q<<2)|0,m=e[p>>2]|0,v=b+1|0,S=s+(b<<2)|0,e[S>>2]=m,R=v),w=Q+1|0,D=(w|0)==(c|0),D){_=R;break}else Q=w,b=R;return y=(_|0)==0,y||AQ(t,n,s,_,3),0}function DS(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0;if(z0=B,C=(c|0)>0,C)L0=0,n1=0;else return f=0,f|0;for(;;)if(p=$+(L0<<2)|0,L=e[p>>2]|0,g1=(L|0)!=0,e0=g1&1,A1=e0+n1|0,K=L0+1|0,H0=(K|0)==(c|0),H0){$1=A1;break}else L0=K,n1=A1;if(l1=($1|0)==0,l1)return f=0,f|0;if(h0=e[n>>2]|0,J0=h0+8|0,D0=e[J0>>2]|0,m0=h0+12|0,x0=e[m0>>2]|0,m=h0+4|0,v=e[m>>2]|0,S=e[h0>>2]|0,w=v-S|0,y=(w|0)/(D0|0)&-1,D=U7(t,4)|0,Q=y<<2,b=U7(t,Q)|0,e[D>>2]=b,Ae(b|0,0,Q|0)|0,R=(y|0)>0,R)for(_=e[h0>>2]|0,M=(_|0)/(c|0)&-1,T=(D0|0)>0,G=x0+-1|0,N=(x0|0)>1,P=e[D>>2]|0,z=(c|0)>1,Y0=0,O0=M;;){if(T)for(Y=e[s>>2]|0,M0=0,V0=0,v0=O0,c1=0;;){if(t0=Y+(v0<<2)|0,J=e[t0>>2]|0,q0=(J|0)>-1,a1=0-J|0,W=q0?J:a1,H=(W|0)>(c1|0),I=H?W:c1,z)for(p0=M0,r1=1;;)if(X=s+(r1<<2)|0,U=e[X>>2]|0,o0=U+(v0<<2)|0,Z=e[o0>>2]|0,N0=(Z|0)>-1,f1=0-Z|0,V=N0?Z:f1,s0=(V|0)>(p0|0),d=s0?V:p0,n0=r1+1|0,R0=(n0|0)==(c|0),R0){G0=d;break}else p0=d,r1=n0;else G0=M0;if(i0=v0+1|0,r0=V0+c|0,c0=(r0|0)<(D0|0),c0)M0=G0,V0=r0,v0=i0,c1=I;else{F0=G0,e1=i0,i1=I;break}}else F0=0,e1=O0,i1=0;e:do if(N)for(U0=0;;){if(A0=(h0+2328|0)+(U0<<2)|0,l0=e[A0>>2]|0,j=(i1|0)>(l0|0),!j&&($0=(h0+2584|0)+(U0<<2)|0,g0=e[$0>>2]|0,f0=(F0|0)>(g0|0),!f0)){T0=U0;break e}if(Q0=U0+1|0,d0=(Q0|0)<(G|0),d0)U0=Q0;else{T0=Q0;break}}else T0=0;while(!1);if(y0=P+(Y0<<2)|0,e[y0>>2]=T0,E0=Y0+1|0,S0=(E0|0)==(y|0),S0)break;Y0=E0,O0=e1}return C0=n+40|0,u0=e[C0>>2]|0,k0=u0+1|0,e[C0>>2]=k0,f=D,f|0}function bS(t,n,s,$,c,f,d,I){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0,I=I|0;var C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0;if(n0=B,B=B+16|0,V=n0,C=n+36|0,p=e[C>>2]|0,L=(p|0)/2&-1,M=f<<2,T=i5(M,L)|0,G=U7(n,T)|0,e[V>>2]=G,N=(f|0)>0,!N)return B=n0,0;for(P=(p|0)>1,J=0,Z=0;;){if(z=$+(J<<2)|0,Y=e[z>>2]|0,m=c+(J<<2)|0,v=e[m>>2]|0,H=(v|0)!=0,S=H&1,U=S+Z|0,P)for(W=0,e0=J;w=Y+(W<<2)|0,y=e[w>>2]|0,D=G+(e0<<2)|0,e[D>>2]=y,Q=W+1|0,b=e0+f|0,R=(Q|0)<(L|0),R;)W=Q,e0=b;if(_=J+1|0,t0=(_|0)==(f|0),t0){o0=U;break}else J=_,Z=U}return X=(o0|0)==0,X?(B=n0,0):(sQ(t,s,V,1,d),B=n0,0)}function _S(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0;if(Q1=B,I=e[n>>2]|0,C=I+8|0,_=e[C>>2]|0,W=n+16|0,r0=e[W>>2]|0,y0=e[r0>>2]|0,M0=t+36|0,T0=e[M0>>2]|0,l1=i5(T0,c)|0,A1=l1>>1,p=I+4|0,m=e[p>>2]|0,v=(m|0)<(A1|0),f=v?m:A1,S=e[I>>2]|0,w=f-S|0,y=(w|0)>0,!y)return 0;D=(w|0)/(_|0)&-1,Q=y0+-1|0,b=Q+D|0,R=(b|0)/(y0|0)&-1,L=R<<2,M=U7(t,L)|0,T=(c|0)>0;e:do if(T)for(n1=0;;){if(G=$+(n1<<2)|0,N=e[G>>2]|0,P=(N|0)==0,!P){$1=n1;break e}if(z=n1+1|0,Y=(z|0)<(c|0),Y)n1=z;else{$1=z;break}}else $1=0;while(!1);if(t0=($1|0)==(c|0),t0||(J=n+8|0,e0=e[J>>2]|0,H=(e0|0)>0,!H))return 0;X=(D|0)>0,U=t+4|0,o0=I+16|0,Z=n+28|0,V=(y0|0)>0,s0=n+20|0,g1=e0,m1=0;e:for(;;){if(X){for(n0=(m1|0)==0,i0=1<>2]|0,c0=OC(K,U)|0,A0=(c0|0)==-1,A0){p1=23;break e}if(l0=e[o0>>2]|0,j=(c0|0)<(l0|0),!j){p1=23;break e}if($0=e[Z>>2]|0,g0=$0+(c0<<2)|0,f0=e[g0>>2]|0,Q0=M+(E1<<2)|0,e[Q0>>2]=f0,d0=(f0|0)==0,d0){p1=23;break e}}if(h0=(s1|0)<(D|0),d1=V&h0,d1)for(E0=M+(E1<<2)|0,I1=s1,h1=0;;){if(C0=e[E0>>2]|0,u0=C0+(h1<<2)|0,k0=e[u0>>2]|0,J0=(I+24|0)+(k0<<2)|0,D0=e[J0>>2]|0,m0=D0&i0,x0=(m0|0)==0,!x0&&(F0=e[s0>>2]|0,G0=F0+(k0<<2)|0,p0=e[G0>>2]|0,H0=p0+(m1<<2)|0,R0=e[H0>>2]|0,S0=(R0|0)==0,!S0&&(L0=i5(I1,_)|0,Y0=e[I>>2]|0,q0=Y0+L0|0,N0=Tv(R0,s,q0,c,U,_)|0,V0=(N0|0)==-1,V0))){p1=23;break e}if(U0=h1+1|0,r1=I1+1|0,O0=(U0|0)<(y0|0),e1=(r1|0)<(D|0),u1=O0&e1,u1)I1=r1,h1=U0;else{z0=r1;break}}else z0=s1;if(v0=E1+1|0,i1=(z0|0)<(D|0),i1)s1=z0,E1=v0;else break}d=e[J>>2]|0,f1=d}else f1=g1;if(c1=m1+1|0,a1=(c1|0)<(f1|0),a1)g1=f1,m1=c1;else{p1=23;break}}return(p1|0)==23,0}function AQ(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0;if(j1=B,p=e[n>>2]|0,m=p+8|0,M=e[m>>2]|0,H=n+16|0,c0=e[H>>2]|0,E0=e[c0>>2]|0,p0=t+36|0,r1=e[p0>>2]|0,$1=r1>>1,Q1=p+4|0,v=e[Q1>>2]|0,S=(v|0)<($1|0),f=S?v:$1,w=e[p>>2]|0,y=f-w|0,D=(y|0)>0,!D){B=j1;return}if(Q=(y|0)/(M|0)&-1,b=$<<2,d=b,R=B,B=B+((1*d|0)+15&-16)|0,_=($|0)>0,_)for(L=E0+-1|0,T=L+Q|0,G=(T|0)/(E0|0)&-1,N=G<<2,N1=0;o0=U7(t,N)|0,Z=R+(N1<<2)|0,e[Z>>2]=o0,V=N1+1|0,_1=(V|0)==($|0),!_1;)N1=V;if(P=n+8|0,z=e[P>>2]|0,Y=(z|0)>0,!Y){B=j1;return}t0=(Q|0)>0,J=t+4|0,W=p+16|0,e0=n+28|0,X=(E0|0)>0,U=n+20|0,C=_^1,q1=0;e:for(;;){if(t0)for(s0=1<>2]|0,O0=OC(U0,J)|0,e1=(O0|0)==-1,e1){Y1=25;break e}if(v0=e[W>>2]|0,i1=(O0|0)<(v0|0),!i1){Y1=25;break e}if(c1=e[e0>>2]|0,a1=c1+(O0<<2)|0,f1=e[a1>>2]|0,g1=R+(w1<<2)|0,l1=e[g1>>2]|0,A1=l1+(v1<<2)|0,e[A1>>2]=f1,n1=(f1|0)==0,V0=w1+1|0,n1){Y1=25;break e}if(T0=(V0|0)<($|0),T0)w1=V0;else break}n0=(y1|0)<(Q|0),H1=X&n0;t:do if(H1){if(_)L1=y1,G1=0;else for(x1=y1,Z1=0;;)if(s1=Z1+1|0,z0=x1+1|0,I1=(s1|0)<(E0|0),h1=(z0|0)<(Q|0),K1=I1&h1,K1)x1=z0,Z1=s1;else{k1=z0;break t}for(;;){for($0=i5(L1,M)|0,U1=0;;){if(l0=e[p>>2]|0,j=l0+$0|0,g0=R+(U1<<2)|0,f0=e[g0>>2]|0,Q0=f0+(v1<<2)|0,d0=e[Q0>>2]|0,y0=d0+(G1<<2)|0,h0=e[y0>>2]|0,C0=(p+24|0)+(h0<<2)|0,u0=e[C0>>2]|0,k0=u0&s0,J0=(k0|0)==0,!J0&&(D0=e[U>>2]|0,m0=D0+(h0<<2)|0,x0=e[m0>>2]|0,F0=x0+(q1<<2)|0,M0=e[F0>>2]|0,G0=(M0|0)==0,!G0&&(H0=s+(U1<<2)|0,R0=e[H0>>2]|0,S0=R0+(j<<2)|0,L0=sm[c&3](M0,S0,J,M)|0,Y0=(L0|0)==-1,Y0))){Y1=25;break e}if(q0=U1+1|0,N0=(q0|0)<($|0),N0)U1=q0;else break}if(i0=G1+1|0,r0=L1+1|0,K=(i0|0)<(E0|0),A0=(r0|0)<(Q|0),P1=K&A0,P1)L1=r0,G1=i0;else{k1=r0;break}}}else k1=y1;while(!1);if(E1=v1+1|0,u1=(k1|0)<(Q|0),u1)y1=k1,v1=E1;else break}if(d1=q1+1|0,m1=e[P>>2]|0,p1=(d1|0)<(m1|0),p1)q1=d1;else{Y1=25;break}}if((Y1|0)==25){B=j1;return}}function sQ(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,B6=0,z3=0,$6=0,m6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,s3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0;if(I6=B,B=B+1088|0,r3=I6+1056|0,L5=I6+1024|0,O6=I6+512|0,s3=I6,Q=e[n>>2]|0,b=Q+8|0,$2=e[b>>2]|0,q2=Q+12|0,z2=e[q2>>2]|0,C5=n+16|0,M1=e[C5>>2]|0,h5=e[M1>>2]|0,g3=Q+4|0,M3=e[g3>>2]|0,R=e[Q>>2]|0,J=M3-R|0,i0=(J|0)/($2|0)&-1,Ae(O6|0,0,512)|0,Ae(s3|0,0,512)|0,d0=n+8|0,F0=e[d0>>2]|0,V0=(F0|0)>0,!V0){B=I6;return}for(g1=(i0|0)>0,d1=($|0)>0,w1=(h5|0)>1,r2=n+36|0,t2=(h5|0)>0,S2=n+20|0,w2=n+32|0,C2=0-h5|0,y2=F0,r6=0;;){if(g1){for(M2=(r6|0)==0,_2=1<>2]|0,G5=S5+(z5<<2)|0,D5=e[G5>>2]|0,H2=e[C5>>2]|0,I5=H2+4|0,s5=e[I5>>2]|0,l5=(D5|0)<(s5|0),l5&&(B5=Dh(H2,D5,t)|0,k5=e[r2>>2]|0,c5=k5+B5|0,e[r2>>2]=c5),o5=C6+1|0,t6=(o5|0)==($|0),t6)break e;C6=o5}for(;;){for(k2=c+(v3<<2)|0,f5=e[k2>>2]|0,E5=f5+(z5<<2)|0,r5=e[E5>>2]|0,f6=1,e6=r5;;)if(j2=i5(e6,z2)|0,R5=f6+z5|0,X2=(R5|0)<(i0|0),X2?(v5=f5+(R5<<2)|0,w5=e[v5>>2]|0,O5=w5+j2|0,p6=O5):p6=j2,a5=f6+1|0,w3=(a5|0)==(h5|0),w3){R6=p6;break}else f6=a5,e6=p6;if(K2=e[C5>>2]|0,N2=K2+4|0,T2=e[N2>>2]|0,O2=(R6|0)<(T2|0),O2&&(V2=Dh(K2,R6,t)|0,A5=e[r2>>2]|0,P2=A5+V2|0,e[r2>>2]=P2),T1=v3+1|0,p3=(T1|0)==($|0),p3)break;v3=T1}}while(!1);if(x2=(z5|0)<(i0|0),v6=t2&x2,v6){for(R2=z5-i0|0,B2=R2>>>0>>0,T6=B2?C2:R2,x5=0-T6|0,o6=z5,O3=0;;){if(Z2=i5(o6,$2)|0,c2=e[Q>>2]|0,m5=c2+Z2|0,d1)for(W3=0;;){if(e5=c+(W3<<2)|0,n5=e[e5>>2]|0,g5=n5+(o6<<2)|0,J2=e[g5>>2]|0,M2&&(t5=s3+(J2<<2)|0,b5=e[t5>>2]|0,W2=b5+$2|0,e[t5>>2]=W2),$5=(Q+24|0)+(J2<<2)|0,F2=e[$5>>2]|0,p5=F2&_2,q5=(p5|0)==0,!q5&&(e3=e[S2>>2]|0,d5=e3+(J2<<2)|0,f3=e[d5>>2]|0,K5=f3+(r6<<2)|0,t3=e[K5>>2]|0,A3=(t3|0)==0,!A3)){if(E3=s+(W3<<2)|0,F5=e[E3>>2]|0,V5=e[t3>>2]|0,y3=($2|0)/(V5|0)&-1,h3=(y3|0)>0,h3){for(B3=t3+48|0,q3=t3+52|0,Z5=t3+44|0,Q3=t3+12|0,j5=t3+4|0,_=V5,y5=0,c3=0;;){j3=i5(c3,V5)|0,S=j3+m5|0,_3=F5+(S<<2)|0,T3=e[B3>>2]|0,$3=e[q3>>2]|0,a3=e[Z5>>2]|0,l3=a3>>1,e[r3>>2]=0,e[r3+4>>2]=0,e[r3+8>>2]=0,e[r3+12>>2]=0,e[r3+16>>2]=0,e[r3+20>>2]=0,e[r3+24>>2]=0,e[r3+28>>2]=0,C3=($3|0)==1,L=(_|0)>0;do if(C3){if(!L){z3=0;break}for(N=a3+-1|0,u3=0,B6=0,P3=_;;)if(f0=P3+-1|0,D=S+f0|0,Q0=F5+(D<<2)|0,y0=e[Q0>>2]|0,h0=y0-T3|0,E0=(h0|0)<(l3|0),E0?(C0=l3-h0|0,u0=C0<<1,k0=u0+-1|0,x0=k0):(J0=h0-l3|0,D0=J0<<1,x0=D0),m0=i5(B6,a3)|0,M0=(x0|0)<0,G0=(x0|0)>=(a3|0),p0=G0?N:x0,H0=M0?0:p0,R0=H0+m0|0,S0=r3+(f0<<2)|0,e[S0>>2]=y0,L0=u3+1|0,V3=(L0|0)==(_|0),V3){z3=R0;break}else u3=L0,B6=R0,P3=f0}else{if(!L){z3=0;break}for(M=$3>>1,T=M-T3|0,G=a3+-1|0,k3=0,k6=0,S3=_;;)if(P=S3+-1|0,y=S+P|0,z=F5+(y<<2)|0,Y=e[z>>2]|0,t0=T+Y|0,W=(t0|0)/($3|0)&-1,e0=(W|0)<(l3|0),e0?(H=l3-W|0,X=H<<1,U=X+-1|0,s0=U):(o0=W-l3|0,Z=o0<<1,s0=Z),V=i5(k6,a3)|0,n0=(s0|0)<0,r0=(s0|0)>=(a3|0),K=r0?G:s0,c0=n0?0:K,A0=c0+V|0,l0=i5(W,$3)|0,j=l0+T3|0,$0=r3+(P<<2)|0,e[$0>>2]=j,g0=k3+1|0,N3=(g0|0)==(_|0),N3){z3=A0;break}else k3=g0,k6=A0,S3=P}while(!1);Y0=e[Q3>>2]|0,q0=Y0+8|0,N0=e[q0>>2]|0,T0=N0+z3|0,U0=u[T0>>0]|0,r1=U0<<24>>24<1;do if(r1){if(e[L5>>2]=0,e[L5+4>>2]=0,e[L5+8>>2]=0,e[L5+12>>2]=0,e[L5+16>>2]=0,e[L5+20>>2]=0,e[L5+24>>2]=0,e[L5+28>>2]=0,O0=a3+-1|0,e1=i5(O0,$3)|0,v0=e1+T3|0,i1=e[j5>>2]|0,c1=(i1|0)>0,c1)Y5=-1,y6=0,$6=z3;else{_6=z3;break}for(;;){a1=N0+y6|0,f1=u[a1>>0]|0,l1=f1<<24>>24>0;do if(l1){if(L)for(Y6=0,D3=0;;)if(A1=L5+(Y6<<2)|0,$1=e[A1>>2]|0,w=S+Y6|0,n1=F5+(w<<2)|0,s1=e[n1>>2]|0,z0=$1-s1|0,I1=i5(z0,z0)|0,h1=I1+D3|0,E1=Y6+1|0,X3=(E1|0)==(_|0),X3){u6=h1;break}else Y6=E1,D3=h1;else u6=0;if(u1=(Y5|0)==-1,m1=(u6|0)<(Y5|0),Y3=u1|m1,!Y3){N5=Y5,m6=$6;break}e[r3>>2]=e[L5>>2]|0,e[r3+4>>2]=e[L5+4>>2]|0,e[r3+8>>2]=e[L5+8>>2]|0,e[r3+12>>2]=e[L5+12>>2]|0,e[r3+16>>2]=e[L5+16>>2]|0,e[r3+20>>2]=e[L5+20>>2]|0,e[r3+24>>2]=e[L5+24>>2]|0,e[r3+28>>2]=e[L5+28>>2]|0,N5=u6,m6=y6}else N5=Y5,m6=$6;while(!1);if(p1=e[L5>>2]|0,Q1=(p1|0)<(v0|0),Q1)d=L5,I=p1;else for(_1=L5,Z3=0;;)if(D1=Z3+1|0,e[_1>>2]=0,y1=L5+(D1<<2)|0,k1=e[y1>>2]|0,x1=(k1|0)<(v0|0),x1){d=y1,I=k1;break}else _1=y1,Z3=D1;if(L1=(I|0)>-1,L1?(N1=I+$3|0,e[d>>2]=N1,Z1=N1):Z1=I,U1=0-Z1|0,e[d>>2]=U1,G1=y6+1|0,i3=(G1|0)==(i1|0),i3){_6=m6;break}else Y5=N5,y6=G1,$6=m6}}else _6=z3;while(!1);if(v1=(_6|0)>-1,i6=L&v1,i6)for(f=_3,w6=0;K1=r3+(w6<<2)|0,P1=e[K1>>2]|0,H1=f+4|0,q1=e[f>>2]|0,Y1=q1-P1|0,e[f>>2]=Y1,j1=w6+1|0,o3=(j1|0)==(_|0),!o3;)f=H1,w6=j1;if(W1=Dh(t3,_6,t)|0,O1=W1+y5|0,l2=c3+1|0,R3=(l2|0)==(y3|0),R3){C=O1;break}p=e[t3>>2]|0,_=p,y5=O1,c3=l2}m=e[e5>>2]|0,d2=m,P5=C}else d2=n5,P5=0;z1=e[w2>>2]|0,h2=z1+P5|0,e[w2>>2]=h2,A2=d2+(o6<<2)|0,s2=e[A2>>2]|0,V1=O6+(s2<<2)|0,g2=e[V1>>2]|0,a2=g2+P5|0,e[V1>>2]=a2}if(i2=W3+1|0,h6=(i2|0)==($|0),h6)break;W3=i2}if(o2=O3+1|0,X1=o6+1|0,m3=(o2|0)==(x5|0),m3)break;o6=X1,O3=o2}G2=z5-T6|0,U3=G2}else U3=z5;if(u2=(U3|0)<(i0|0),u2)z5=U3;else break}v=e[d0>>2]|0,e2=v}else e2=y2;if(n2=r6+1|0,f2=(n2|0)<(e2|0),f2)y2=e2,r6=n2;else break}B=I6}function F7(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0;if(p=B,s=(t|0)==0,s)d=0;else for(n=t,I=0;;)if($=n>>>1,c=I+1|0,f=($|0)==0,f){d=c;break}else n=$,I=c;return d|0}function oQ(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0;g2=B,B=B+144|0,O1=g2,C=(s|0)!=0,p=C?s:n,L=p<<2,e0=k9(L)|0,Ae(O1|0,0,132)|0,K=(n|0)>0;do if(K){h0=O1+4|0,G0=(s|0)==0,U0=G0&1,p1=0,w1=0;e:for(;;){A1=t+w1|0,m1=u[A1>>0]|0,m=m1<<24>>24,v=m1<<24>>24>0;t:do if(v){if(S=O1+(m<<2)|0,w=e[S>>2]|0,y=m1<<24>>24>31,D=w>>>m,Q=(D|0)==0,l2=y|Q,!l2){V1=5;break e}b=e0+(p1<<2)|0,e[b>>2]=w,R=O1+(m<<2)|0,_=w&1,M=(_|0)==0;i:do if(M)for(H=w,X=R,K1=m;;){if(W=H+1|0,e[X>>2]=W,U=K1+-1|0,o0=(K1|0)>1,!o0)break i;if(f=O1+(U<<2)|0,I=e[f>>2]|0,Z=O1+(U<<2)|0,V=I&1,s0=(V|0)==0,s0)H=I,X=Z,K1=U;else{c=Z,v1=U,V1=8;break}}else c=R,v1=m,V1=8;while(!1);do if((V1|0)==8)if(V1=0,G=(v1|0)==1,G){N=e[h0>>2]|0,P=N+1|0,e[h0>>2]=P;break}else{z=v1+-1|0,Y=O1+(z<<2)|0,t0=e[Y>>2]|0,J=t0<<1,e[c>>2]=J;break}while(!1);if(Y1=m+1|0,T=(Y1|0)<33,T)for(x1=w,H1=m,j1=Y1;;){if(n0=O1+(j1<<2)|0,i0=e[n0>>2]|0,r0=i0>>>1,c0=(r0|0)==(x1|0),!c0){d=1;break t}if(A0=O1+(H1<<2)|0,l0=e[A0>>2]|0,j=l0<<1,e[n0>>2]=j,P1=j1+1|0,$0=(P1|0)<33,$0)q1=j1,x1=i0,j1=P1,H1=q1;else{d=1;break}}else d=1}else d=U0;while(!1);if(Q1=p1+d|0,g0=w1+1|0,f0=(g0|0)<(n|0),f0)p1=Q1,w1=g0;else{D1=Q1,V1=16;break}}if((V1|0)==5)return I2(e0),$=0,B=g2,$|0;if((V1|0)==16){if(z1=(D1|0)==1,!z1){U1=1,V1=27;break}if(Q0=O1+8|0,d0=e[Q0>>2]|0,y0=(d0|0)==2,y0)break;U1=1,V1=27;break}}else U1=1,V1=27;while(!1);e:do if((V1|0)==27){for(;V1=0,V0=O1+(U1<<2)|0,T0=e[V0>>2]|0,r1=32-U1|0,O0=-1>>>r1,e1=T0&O0,v0=(e1|0)==0,q0=U1+1|0,!!v0;)if(N0=(q0|0)<33,N0)U1=q0,V1=27;else break e;return I2(e0),$=0,B=g2,$|0}while(!1);if(!K)return $=e0,B=g2,$|0;if(C)y1=0,G1=0;else{for(_1=0,Z1=0;;){if(i1=t+Z1|0,c1=u[i1>>0]|0,a1=c1<<24>>24>0,a1)for(f1=e0+(_1<<2)|0,g1=e[f1>>2]|0,l1=c1<<24>>24,r2=0,d2=0;;)if($1=d2<<1,n1=g1>>>r2,s1=n1&1,z0=s1|$1,I1=r2+1|0,h1=(I1|0)<(l1|0),h1)r2=I1,d2=z0;else{h2=z0;break}else h2=0;if(E1=_1+1|0,u1=e0+(_1<<2)|0,e[u1>>2]=h2,d1=Z1+1|0,L1=(d1|0)==(n|0),L1){$=e0;break}else _1=E1,Z1=d1}return B=g2,$|0}for(;;){if(E0=t+G1|0,C0=u[E0>>0]|0,u0=C0<<24>>24>0,u0)for(Y0=e0+(y1<<2)|0,M0=e[Y0>>2]|0,L0=C0<<24>>24,W1=0,s2=0;;)if(x0=s2<<1,F0=M0>>>W1,p0=F0&1,H0=p0|x0,R0=W1+1|0,S0=(R0|0)<(L0|0),S0)W1=R0,s2=H0;else{A2=H0;break}else A2=0;if(k0=C0<<24>>24==0,k0?k1=y1:(J0=y1+1|0,D0=e0+(y1<<2)|0,e[D0>>2]=A2,k1=J0),m0=G1+1|0,N1=(m0|0)==(n|0),N1){$=e0;break}else y1=k1,G1=m0}return B=g2,$|0}function RS(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0;if(H=B,$=t+4|0,c=e[$>>2]|0,D=e[t>>2]|0,Q=(D|0)>0,!Q)for(;;);for(b=+(c|0),R=b,_=+(D|0),L=1/_,M=L,T=+kh(+R,+M),f=+qo(+T),d=~~f,Y=d;;){for(S=Y+1|0,G=1,N=1,P=0;;)if(m=i5(G,Y)|0,v=i5(N,S)|0,w=P+1|0,y=(w|0)<(D|0),y)G=m,N=v,P=w;else{n=m,s=v;break}if(I=(n|0)<=(c|0),C=(s|0)>(c|0),z=I&C,z){W=Y;break}p=(n|0)>(c|0),J=p?-1:1,t0=Y+J|0,Y=t0}return W|0}function xS(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0;if(q5=B,p=t+12|0,m=e[p>>2]|0,C=m+-1|0,t5=C>>>0<2,!t5)return f=0,f|0;if(O0=t+16|0,n1=e[O0>>2]|0,D1=n1&2097151,v1=+(D1|0),z1=n1>>>21,o2=z1&1023,G2=(n1|0)<0,j2=-v1,$=G2?j2:v1,v=o2+-788|0,T=+qC($,v),X=T,A0=t+20|0,C0=e[A0>>2]|0,H0=C0&2097151,V0=+(H0|0),T0=C0>>>21,U0=T0&1023,r1=(C0|0)<0,e1=-V0,c=r1?e1:V0,v0=U0+-788|0,i1=+qC(c,v0),c1=i1,a1=e[t>>2]|0,f1=i5(a1,n)|0,g1=t4(f1,4)|0,(m|0)==1){if(m1=t+4|0,p1=e[m1>>2]|0,Q1=(a1|0)>0,!Q1)for(;;);for(_1=+(p1|0),y1=_1,k1=+(a1|0),x1=1/k1,L1=x1,N1=+kh(+y1,+L1),w1=+qo(+N1),U1=~~w1,$5=U1;;){for(h2=$5+1|0,r5=1,x2=1,I5=0;;)if(O1=i5(r5,$5)|0,l2=i5(x2,h2)|0,A2=I5+1|0,u5=(A2|0)==(a1|0),u5){d=O1,I=l2;break}else r5=O1,x2=l2,I5=A2;if(Z1=(d|0)<=(p1|0),G1=(I|0)>(p1|0),h5=G1&Z1,h5){F2=$5;break}W1=(d|0)>(p1|0),W2=W1?-1:1,b5=W2+$5|0,$5=b5}if(K1=(p1|0)>0,!K1)return f=g1,f|0;for(P1=(s|0)==0,H1=t+8|0,q1=t+32|0,Y1=c1,j1=X,r2=t+28|0,R2=0,M1=0;;){if(P1)if($2=e[q1>>2]|0,t2=e[r2>>2]|0,a2=(t2|0)==0,i2=i5(a1,R2)|0,a2)for(B5=1,Z2=0;;)if(v5=(M1|0)/(B5|0)&-1,z2=(v5|0)%(F2|0)&-1,f5=$2+(z2<<2)|0,w5=e[f5>>2]|0,O5=+(w5|0),H2=+Yi(+O5),a5=H2,k2=a5*Y1,E5=j1+k2,S=E5,w=i2+Z2|0,y=g1+(w<<2)|0,A[y>>2]=S,D=i5(B5,F2)|0,Q=Z2+1|0,b=(Q|0)<(a1|0),b)B5=D,Z2=Q;else{p5=21;break}else for(s5=1,c5=0,e5=0;;)if(R=(M1|0)/(s5|0)&-1,_=(R|0)%(F2|0)&-1,L=$2+(_<<2)|0,M=e[L>>2]|0,G=+(M|0),G5=+Yi(+G),N=G5,P=N*Y1,z=e5,Y=z+j1,t0=Y+P,J=t0,W=i2+c5|0,e0=g1+(W<<2)|0,A[e0>>2]=J,H=i5(s5,F2)|0,U=c5+1|0,o0=(U|0)<(a1|0),o0)s5=H,c5=U,e5=J;else{p5=21;break}else if(d2=e[H1>>2]|0,s2=d2+M1|0,V1=u[s2>>0]|0,g2=V1<<24>>24==0,g2)B2=R2;else for(X1=e[q1>>2]|0,n2=e[r2>>2]|0,f2=(n2|0)==0,e2=s+(R2<<2)|0,y2=e[e2>>2]|0,S2=i5(y2,a1)|0,l5=1,o5=0,n5=0;;)if(w2=(M1|0)/(l5|0)&-1,C2=(w2|0)%(F2|0)&-1,M2=X1+(C2<<2)|0,_2=e[M2>>2]|0,u2=+(_2|0),D5=+Yi(+u2),K2=D5,N2=K2*Y1,q2=n5,T2=q2+j1,O2=T2+N2,V2=O2,m5=f2?n5:V2,A5=S2+o5|0,P2=g1+(A5<<2)|0,A[P2>>2]=V2,T1=i5(l5,F2)|0,R5=o5+1|0,X2=(R5|0)<(a1|0),X2)l5=T1,o5=R5,n5=m5;else{p5=21;break}if((p5|0)==21&&(p5=0,Z=R2+1|0,B2=Z),V=M1+1|0,s0=(V|0)<(p1|0),s0)R2=B2,M1=V;else{f=g1;break}}return f|0}else if((m|0)==2){if(l1=t+4|0,A1=e[l1>>2]|0,$1=(A1|0)>0,!$1)return f=g1,f|0;for(s1=(s|0)!=0,z0=t+8|0,I1=t+32|0,h1=c1,E1=X,u1=t+28|0,d1=(a1|0)>0,C5=0,k5=0;;){if(s1?(n0=e[z0>>2]|0,i0=n0+k5|0,r0=u[i0>>0]|0,K=r0<<24>>24==0,K?x5=C5:p5=25):p5=25,(p5|0)==25){if(p5=0,d1)for(c0=e[I1>>2]|0,l0=e[u1>>2]|0,j=(l0|0)==0,$0=s+(C5<<2)|0,g0=i5(a1,k5)|0,f0=i5(a1,C5)|0,c2=0,J2=0;Q0=g0+c2|0,d0=c0+(Q0<<2)|0,y0=e[d0>>2]|0,h0=+(y0|0),S5=+Yi(+h0),E0=S5,u0=E0*h1,k0=J2,J0=k0+E1,D0=J0+u0,m0=D0,g5=j?J2:m0,s1?(x0=e[$0>>2]|0,F0=i5(x0,a1)|0,M0=F0+c2|0,G0=g1+(M0<<2)|0,A[G0>>2]=m0):(p0=f0+c2|0,R0=g1+(p0<<2)|0,A[R0>>2]=m0),S0=c2+1|0,L0=(S0|0)<(a1|0),L0;)c2=S0,J2=g5;Y0=C5+1|0,x5=Y0}if(q0=k5+1|0,N0=(q0|0)<(A1|0),N0)C5=x5,k5=q0;else{f=g1;break}}return f|0}else return f=g1,f|0;return 0}function im(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0;v=B,n=t+36|0,s=e[n>>2]|0,$=(s|0)==0,!$&&(c=t+32|0,f=e[c>>2]|0,d=(f|0)==0,d||I2(f),I=t+8|0,C=e[I>>2]|0,p=(C|0)==0,p||I2(C),I2(t))}function FS(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0;R=B,n=t+16|0,s=e[n>>2]|0,C=(s|0)==0,C||I2(s),p=t+20|0,m=e[p>>2]|0,v=(m|0)==0,v||I2(m),S=t+24|0,w=e[S>>2]|0,y=(w|0)==0,y||I2(w),D=t+28|0,$=e[D>>2]|0,c=($|0)==0,c||I2($),f=t+32|0,d=e[f>>2]|0,I=(d|0)==0,I||I2(d),Q=t,_=Q+56|0;do e[Q>>2]=0,Q=Q+4|0;while((Q|0)<(_|0))}function $Q(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0;T0=B,N0=t,U0=N0+56|0;do e[N0>>2]=0,N0=N0+4|0;while((N0|0)<(U0|0));if(d=t+12|0,e[d>>2]=n,I=n+4|0,R=e[I>>2]|0,J=t+4|0,e[J>>2]=R,i0=t+8|0,e[i0>>2]=R,d0=e[n>>2]|0,e[t>>2]=d0,k0=n+8|0,J0=e[k0>>2]|0,D0=oQ(J0,R,0)|0,m0=t+20|0,e[m0>>2]=D0,C=e[I>>2]|0,p=e[n>>2]|0,m=(p|0)>0,!m)for(;;);for(v=+(C|0),S=v,w=+(p|0),y=1/w,D=y,Q=+kh(+S,+D),b=+qo(+Q),_=~~b,Y0=_;;){for(P=Y0+1|0,x0=1,F0=1,G0=0;;)if(G=i5(x0,Y0)|0,N=i5(F0,P)|0,z=G0+1|0,M0=(z|0)==(p|0),M0){c=G,f=N;break}else x0=G,F0=N,G0=z;if(L=(c|0)<=(C|0),M=(f|0)>(C|0),p0=M&L,p0){q0=Y0;break}T=(c|0)>(C|0),L0=T?-1:1,S0=L0+Y0|0,Y0=S0}return Y=t+44|0,e[Y>>2]=q0,t0=n+16|0,W=e[t0>>2]|0,e0=W&2097151,H=+(e0|0),X=W>>>21,U=X&1023,o0=(W|0)<0,Z=-H,s=o0?Z:H,V=U+-788|0,s0=+qC(s,V),n0=s0,H0=+fQ(n0),r0=~~H0,K=t+48|0,e[K>>2]=r0,c0=n+20|0,A0=e[c0>>2]|0,l0=A0&2097151,j=+(l0|0),$0=A0>>>21,g0=$0&1023,f0=(A0|0)<0,Q0=-j,$=f0?Q0:j,y0=g0+-788|0,h0=+qC($,y0),E0=h0,R0=+fQ(E0),C0=~~R0,u0=t+52|0,e[u0>>2]=C0,0}function LS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,B6=0,z3=0,$6=0,m6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,s3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0;F3=B,Q6=t,L6=Q6+56|0;do e[Q6>>2]=0,Q6=Q6+4|0;while((Q6|0)<(L6|0));if(S=n+4|0,w=e[S>>2]|0,d2=(w|0)>0,d2)for(H2=n+8|0,m5=e[H2>>2]|0,O3=0,R6=0;;)if(p5=m5+O3|0,V5=u[p5>>0]|0,T3=V5<<24>>24>0,t6=T3&1,C=t6+R6|0,z5=O3+1|0,y=(z5|0)<(w|0),y)O3=z5,R6=C;else{$0=C;break}else $0=0;if(P=t+4|0,e[P>>2]=w,Z=t+8|0,e[Z>>2]=$0,J0=e[n>>2]|0,e[t>>2]=J0,L0=($0|0)>0,!L0)return $=0,B=F3,$|0;if(i1=n+8|0,I1=e[i1>>2]|0,k1=oQ(I1,w,$0)|0,H1=$0<<2,f=H1,s2=B,B=B+((1*f|0)+15&-16)|0,e2=(k1|0)==0,e2){O2=t+16|0,V2=e[O2>>2]|0,A5=(V2|0)==0,A5||I2(V2),P2=t+20|0,T1=e[P2>>2]|0,j2=(T1|0)==0,j2||I2(T1),R5=t+24|0,X2=e[R5>>2]|0,v5=(X2|0)==0,v5||I2(X2),f5=t+28|0,w5=e[f5>>2]|0,O5=(w5|0)==0,O5||I2(w5),a5=t+32|0,k2=e[a5>>2]|0,E5=(k2|0)==0,E5||I2(k2),Q6=t,L6=Q6+56|0;do e[Q6>>2]=0,Q6=Q6+4|0;while((Q6|0)<(L6|0));return $=-1,B=F3,$|0}else S3=0;for(;q2=k1+(S3<<2)|0,z2=e[q2>>2]|0,C5=z2>>>16,x5=z2<<16,u5=C5|x5,S5=u5>>>8,G5=S5&16711935,D5=u5<<8,I5=D5&-16711936,s5=G5|I5,l5=s5>>>4,B5=l5&252645135,M1=s5<<4,k5=M1&-252645136,c5=B5|k5,o5=c5>>>2,Z2=o5&858993459,c2=c5<<2,e5=c2&-858993460,n5=Z2|e5,g5=n5>>>1,J2=g5&1431655765,h5=n5<<1,t5=h5&-1431655766,b5=J2|t5,e[q2>>2]=b5,W2=s2+(S3<<2)|0,e[W2>>2]=q2,$5=S3+1|0,Y6=($5|0)==($0|0),!Y6;)S3=$5;for(_h(s2,$0,4,10),d=H1,F2=B,B=B+((1*d|0)+15&-16)|0,q5=k9(H1)|0,e3=t+20|0,e[e3>>2]=q5,d5=k1,P3=0;;)if(f3=s2+(P3<<2)|0,g3=e[f3>>2]|0,K5=g3,t3=K5-d5|0,A3=t3>>2,E3=F2+(A3<<2)|0,e[E3>>2]=P3,F5=P3+1|0,_6=(F5|0)==($0|0),_6){Y3=0;break}else P3=F5;for(;y3=k1+(Y3<<2)|0,h3=e[y3>>2]|0,B3=F2+(Y3<<2)|0,q3=e[B3>>2]|0,M3=q5+(q3<<2)|0,e[M3>>2]=h3,Z5=Y3+1|0,m6=(Z5|0)==($0|0),!m6;)Y3=Z5;if(I2(k1),Q3=xS(n,$0,F2)|0,j5=t+16|0,e[j5>>2]=Q3,j3=k9(H1)|0,_3=t+24|0,e[_3>>2]=j3,$3=e[S>>2]|0,a3=($3|0)>0,a3)for(p=e[i1>>2]|0,v6=0,I6=0;;)if(l3=p+v6|0,C3=u[l3>>0]|0,Y5=C3<<24>>24>0,Y5?(N5=I6+1|0,P5=F2+(I6<<2)|0,y5=e[P5>>2]|0,G3=j3+(y5<<2)|0,e[G3>>2]=v6,J6=N5):J6=I6,L5=v6+1|0,i3=(L5|0)<($3|0),i3)v6=L5,I6=J6;else{K6=J6;break}else K6=0;if(o3=k9(K6)|0,R3=t+28|0,e[R3>>2]=o3,h6=t+40|0,e[h6>>2]=0,a3){for(m=e[i1>>2]|0,r5=0,w3=m,i6=0,Z6=0;;)if(m3=w3+i6|0,p3=u[m3>>0]|0,X3=p3<<24>>24>0,X3?(V3=Z6+1|0,N3=F2+(Z6<<2)|0,k3=e[N3>>2]|0,c3=e[R3>>2]|0,U3=c3+k3|0,u[U3>>0]=p3,o6=e[i1>>2]|0,u3=o6+i6|0,y6=u[u3>>0]|0,w6=y6<<24>>24,k6=e[h6>>2]|0,B6=(w6|0)>(k6|0),B6?(e[h6>>2]=w6,x2=w6,R2=o6,G6=V3):(x2=k6,R2=o6,G6=V3)):(x2=r5,R2=w3,G6=Z6),z3=i6+1|0,D=e[S>>2]|0,Q=(z3|0)<(D|0),Q)r5=x2,w3=R2,i6=z3,Z6=G6;else{I=x2,j6=G6;break}if(b=(j6|0)==1,b){if(R=(I|0)==1,R)return _=t+36|0,e[_>>2]=1,L=t4(2,4)|0,M=t+32|0,e[M>>2]=L,T=L+4|0,e[T>>2]=1,e[L>>2]=1,$=0,B=F3,$|0;x3=1}else x3=j6}else x3=0;if(G=e[Z>>2]|0,N=(G|0)==0,N)x6=-4;else{for(c=G,N6=0;;)if(z=c>>>1,Y=N6+1|0,t0=(z|0)==0,t0){S6=N6;break}else c=z,N6=Y;r9=S6+-3|0,x6=r9}if(J=t+36|0,W=(x6|0)<5,s=W?5:x6,e0=(s|0)>8,V6=e0?8:s,e[J>>2]=V6,H=1<>2]=X,o0=(x3|0)>0,o0)for(r0=V6,r3=0;;){if(V=e[R3>>2]|0,s0=V+r3|0,n0=u[s0>>0]|0,i0=n0<<24>>24,K=(r0|0)<(i0|0),K)B2=r0;else if(c0=e[e3>>2]|0,A0=c0+(r3<<2)|0,l0=e[A0>>2]|0,j=l0>>>16,g0=l0<<16,f0=j|g0,Q0=f0>>>8,d0=Q0&16711935,y0=f0<<8,h0=y0&-16711936,E0=d0|h0,C0=E0>>>4,u0=C0&252645135,k0=E0<<4,D0=k0&-252645136,m0=u0|D0,x0=m0>>>2,F0=x0&858993459,M0=m0<<2,G0=M0&-858993460,p0=F0|G0,H0=p0>>>1,R0=H0&1431655765,S0=p0<<1,Y0=S0&-1431655766,q0=R0|Y0,N0=r0-i0|0,V0=(N0|0)==31,V0)B2=r0;else for(T0=r3+1|0,r1=i0,s3=0;;)if(U0=s3<>2]=T0,v0=s3+1|0,c1=e[J>>2]|0,a1=u[s0>>0]|0,f1=a1<<24>>24,g1=c1-f1|0,l1=1<>>16,p1=d1<<16,Q1=m1|p1,D1=Q1>>>8,_1=D1&16711935,y1=Q1<<8,x1=y1&-16711936,L1=_1|x1,N1=L1>>>4,w1=N1&252645135,U1=L1<<4,Z1=U1&-252645136,G1=w1|Z1,v1=G1>>>2,K1=v1&858993459,P1=G1<<2,q1=P1&-858993460,Y1=K1|q1,j1=Y1>>>1,r2=j1&1431655765,W1=Y1<<1,O1=W1&-1431655766,l2=r2|O1,z1=X+(l2<<2)|0,h2=e[z1>>2]|0,A2=(h2|0)==0,A2){for(u6=r6;;){if(V1=u6+1|0,g2=(V1|0)<(x3|0),!g2){D3=u6;break}if($2=e[e3>>2]|0,t2=$2+(V1<<2)|0,a2=e[t2>>2]|0,i2=a2>>>0>d1>>>0,i2){D3=u6;break}else u6=V1}o2=(x3|0)>(C6|0);e:do if(o2)for(X1=e[e3>>2]|0,Z3=C6;;){if(n2=X1+(Z3<<2)|0,f2=e[n2>>2]|0,y2=f2&z0,S2=d1>>>0>>0,S2){v3=Z3;break e}if(w2=Z3+1|0,C2=(x3|0)>(w2|0),C2)Z3=w2;else{v3=w2;break}}else v3=C6;while(!1);M2=x3-v3|0,_2=D3>>>0>32767,G2=M2>>>0>32767,f6=G2?32767:M2,T6=D3<<15,e6=T6|-2147483648,u2=_2?-1073774592:e6,K2=u2|f6,e[z1>>2]=K2,W3=v3,p6=D3}else W3=C6,p6=r6;if(N2=O6+1|0,T2=(N2|0)<(H|0),!T2){$=0;break}v=e[J>>2]|0,u1=v,C6=W3,O6=N2,r6=p6}return B=F3,$|0}function MS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0;return S=B,s=e[t>>2]|0,$=e[s>>2]|0,c=e[n>>2]|0,f=e[c>>2]|0,d=$>>>0>f>>>0,I=d&1,C=$>>>0>>0,p=C&1,m=I-p|0,m|0}function TS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0;if(J0=B,p=e[t>>2]|0,m=(p|0)==1,!m&&(M=t+4|0,H=e[M>>2]|0,i0=t+8|0,r0=e[i0>>2]|0,K=r0+4|0,c0=e[K>>2]|0,A0=(c0|0)>0,!!A0)){for(l0=c0+1|0,C=p+-1|0,f0=p,Q0=0,d0=p,h0=1;;){v=l0-Q0|0,S=r0+(v<<2)|0,w=e[S>>2]|0,y=(d0|0)/(w|0)&-1,D=(p|0)/(d0|0)&-1,Q=i5(D,y)|0,b=w+-1|0,R=i5(D,b)|0,_=f0-R|0,L=1-h0|0;do if((w|0)==2)if(Y=(L|0)==0,s=C+_|0,t0=H+(s<<2)|0,Y){gQ(D,y,n,H,t0),E0=0;break}else{gQ(D,y,H,n,t0),E0=L;break}else if((w|0)==4)if(T=_+D|0,G=(L|0)==0,$=C+_|0,N=H+($<<2)|0,c=C+T|0,P=H+(c<<2)|0,f=C+D|0,d=f+T|0,z=H+(d<<2)|0,G){cQ(D,y,n,H,N,P,z),E0=0;break}else{cQ(D,y,H,n,N,P,z),E0=L;break}else if(J=(D|0)==1,y0=J?h0:L,W=(y0|0)==0,I=C+_|0,e0=H+(I<<2)|0,W){hQ(D,w,y,Q,n,n,n,H,H,e0),E0=1;break}else{hQ(D,w,y,Q,H,H,H,n,n,e0),E0=0;break}while(!1);if(X=Q0+1|0,$0=(X|0)==(c0|0),$0){C0=E0;break}else f0=_,Q0=X,d0=y,h0=E0}if(U=(C0|0)!=1,o0=(p|0)>0,u0=o0&U,u0)g0=0;else return;for(;Z=H+(g0<<2)|0,V=e[Z>>2]|0,s0=n+(g0<<2)|0,e[s0>>2]=V,n0=g0+1|0,j=(n0|0)==(p|0),!j;)g0=n0}}function aQ(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0;if(I1=B,e[t>>2]=n,d=n*3|0,I=t4(d,4)|0,R=t+4|0,e[R>>2]=I,J=t4(32,4)|0,i0=t+8|0,e[i0>>2]=J,d0=(n|0)==1,!d0){J0=J+8|0,O0=-1,a1=0,f1=n,l1=0;e:for(;;)for(D0=O0+1|0,m0=(D0|0)<4,m0?(x0=25768+(D0<<2)|0,C=e[x0>>2]|0,A1=C):(p=l1+2|0,A1=p),m=(A1|0)!=2,N0=a1,g1=f1;;){if(Y0=N0+1|0,v=(g1|0)/(A1|0)&-1,S=i5(v,A1)|0,w=(g1|0)==(S|0),!w){O0=D0,a1=N0,f1=g1,l1=A1;continue e}if(y=N0+2|0,D=J+(y<<2)|0,e[D>>2]=A1,Q=(N0|0)==0,$1=m|Q,!$1){if(b=(N0|0)<1,!b)for(R0=1;_=Y0-R0|0,L=_+1|0,M=J+(L<<2)|0,T=e[M>>2]|0,G=_+2|0,N=J+(G<<2)|0,e[N>>2]=T,P=R0+1|0,p0=(P|0)==(Y0|0),!p0;)R0=P;e[J0>>2]=2}if(z=(v|0)==1,z){s=Q,q0=Y0,V0=N0;break e}else N0=Y0,g1=v}if(e[J>>2]=n,Y=J+4|0,e[Y>>2]=q0,t0=+(n|0),W=6.2831854820251465/t0,$=s^1,e0=(V0|0)>0,n1=e0&$,!!n1)for(H=n+1|0,T0=0,v0=0,i1=1;;){if(X=v0+2|0,U=J+(X<<2)|0,o0=e[U>>2]|0,Z=i5(o0,i1)|0,V=(n|0)/(Z|0)&-1,s0=(o0|0)>1,s0){for(n0=(V|0)>2,r0=o0+-1|0,r1=T0,e1=0,c1=0;;){if(K=c1+i1|0,c0=+(K|0),A0=c0*W,n0)for(H0=0,S0=r1,L0=2;l0=H0+1,j=A0*l0,F0=+Yo(+j),c=S0+n|0,$0=I+(c<<2)|0,A[$0>>2]=F0,s1=+xn(+j),g0=S0+2|0,f=H+S0|0,f0=I+(f<<2)|0,A[f0>>2]=s1,Q0=L0+2|0,y0=(Q0|0)<(V|0),y0;)H0=l0,S0=g0,L0=Q0;if(h0=r1+V|0,E0=e1+1|0,M0=(E0|0)==(r0|0),M0)break;r1=h0,e1=E0,c1=K}C0=i5(V,r0)|0,u0=C0+T0|0,U0=u0}else U0=T0;if(k0=v0+1|0,G0=(k0|0)==(V0|0),G0)break;T0=U0,v0=k0,i1=Z}}}function lQ(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0;p=B,n=(t|0)==0,!n&&(s=t+4|0,$=e[s>>2]|0,c=($|0)==0,c||I2($),f=t+8|0,d=e[f>>2]|0,I=(d|0)==0,I||I2(d),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0)}function cQ(t,n,s,$,c,f,d){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0;var I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0;if(f3=B,I=i5(n,t)|0,C=I<<1,E1=(n|0)>0,E1)for(L1=I*3|0,Y1=t<<2,V1=Y1+-1|0,y2=t<<1,c2=0,n5=I,h5=L1,W2=0,$5=C;T2=s+(n5<<2)|0,f5=+A[T2>>2],x5=s+(h5<<2)|0,p=+A[x5>>2],L=p+f5,e0=s+(W2<<2)|0,K=+A[e0>>2],h0=s+($5<<2)|0,G0=+A[h0>>2],U0=G0+K,A1=U0+L,I1=W2<<2,h1=$+(I1<<2)|0,A[h1>>2]=A1,u1=U0-L,d1=V1+I1|0,m1=$+(d1<<2)|0,A[m1>>2]=u1,p1=+A[e0>>2],Q1=+A[h0>>2],D1=p1-Q1,_1=I1+y2|0,y1=_1+-1|0,k1=$+(y1<<2)|0,A[k1>>2]=D1,x1=+A[x5>>2],N1=+A[T2>>2],w1=x1-N1,U1=$+(_1<<2)|0,A[U1>>2]=w1,Z1=n5+t|0,G1=h5+t|0,v1=W2+t|0,K1=$5+t|0,P1=c2+1|0,c5=(P1|0)==(n|0),!c5;)c2=P1,n5=Z1,h5=G1,W2=v1,$5=K1;if(H1=(t|0)<2,!H1){if(q1=(t|0)==2,!q1){if(E1)for(j1=t<<1,m5=0,g5=0;;){for(j=g5<<2,$0=j+j1|0,Z2=2,t5=g5,F2=j,q5=$0;O1=t5+2|0,l2=F2+2|0,z1=q5+-2|0,h2=O1+I|0,A2=Z2+-2|0,d2=c+(A2<<2)|0,s2=+A[d2>>2],g2=h2+-1|0,$2=s+(g2<<2)|0,t2=+A[$2>>2],a2=t2*s2,i2=Z2+-1|0,o2=c+(i2<<2)|0,X1=+A[o2>>2],n2=s+(h2<<2)|0,f2=+A[n2>>2],e2=f2*X1,S2=e2+a2,w2=f2*s2,C2=X1*t2,M2=w2-C2,_2=h2+I|0,G2=f+(A2<<2)|0,u2=+A[G2>>2],K2=_2+-1|0,N2=s+(K2<<2)|0,q2=+A[N2>>2],O2=q2*u2,V2=f+(i2<<2)|0,A5=+A[V2>>2],P2=s+(_2<<2)|0,T1=+A[P2>>2],j2=T1*A5,R5=j2+O2,X2=T1*u2,v5=A5*q2,z2=X2-v5,w5=_2+I|0,O5=d+(A2<<2)|0,a5=+A[O5>>2],k2=w5+-1|0,E5=s+(k2<<2)|0,r5=+A[E5>>2],x2=r5*a5,R2=d+(i2<<2)|0,B2=+A[R2>>2],C5=s+(w5<<2)|0,u5=+A[C5>>2],S5=u5*B2,G5=S5+x2,D5=u5*a5,H2=B2*r5,I5=D5-H2,s5=G5+S2,l5=G5-S2,B5=I5+M2,M1=M2-I5,m=s+(O1<<2)|0,v=+A[m>>2],S=v+z2,w=v-z2,y=t5+1|0,D=s+(y<<2)|0,Q=+A[D>>2],b=Q+R5,R=Q-R5,_=s5+b,M=F2|1,T=$+(M<<2)|0,A[T>>2]=_,G=B5+S,N=$+(l2<<2)|0,A[N>>2]=G,P=R-M1,z=q5+-3|0,Y=$+(z<<2)|0,A[Y>>2]=P,t0=l5-w,J=$+(z1<<2)|0,A[J>>2]=t0,W=M1+R,H=l2+j1|0,X=H+-1|0,U=$+(X<<2)|0,A[U>>2]=W,o0=l5+w,Z=$+(H<<2)|0,A[Z>>2]=o0,V=b-s5,s0=z1+j1|0,n0=s0+-1|0,i0=$+(n0<<2)|0,A[i0>>2]=V,r0=B5-S,c0=$+(s0<<2)|0,A[c0>>2]=r0,A0=Z2+2|0,l0=(A0|0)<(t|0),l0;)Z2=A0,t5=O1,F2=l2,q5=z1;if(r2=g5+t|0,W1=m5+1|0,o5=(W1|0)==(n|0),o5)break;m5=W1,g5=r2}if(g0=t&1,f0=(g0|0)==0,!f0)return}if(Q0=t+-1|0,d0=Q0+I|0,y0=t<<2,E0=t<<1,!!E1)for(C0=d0+C|0,e5=0,J2=d0,b5=C0,p5=t,e3=t;u0=s+(J2<<2)|0,k0=+A[u0>>2],J0=s+(b5<<2)|0,D0=+A[J0>>2],m0=D0+k0,x0=m0*-.7071067690849304,F0=k0-D0,M0=F0*.7071067690849304,p0=e3+-1|0,H0=s+(p0<<2)|0,R0=+A[H0>>2],S0=M0+R0,L0=p5+-1|0,Y0=$+(L0<<2)|0,A[Y0>>2]=S0,q0=+A[H0>>2],N0=q0-M0,V0=p5+E0|0,T0=V0+-1|0,r1=$+(T0<<2)|0,A[r1>>2]=N0,O0=J2+I|0,e1=s+(O0<<2)|0,v0=+A[e1>>2],i1=x0-v0,c1=$+(p5<<2)|0,A[c1>>2]=i1,a1=+A[e1>>2],f1=a1+x0,g1=$+(V0<<2)|0,A[g1>>2]=f1,l1=J2+t|0,$1=b5+t|0,n1=p5+y0|0,s1=e3+t|0,z0=e5+1|0,k5=(z0|0)==(n|0),!k5;)e5=z0,J2=l1,b5=$1,p5=n1,e3=s1}}function gQ(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0;if(w1=B,f=i5(n,t)|0,d=t<<1,b=(n|0)>0,b)for(t0=d+-1|0,I1=0,u1=0,p1=f;n0=s+(u1<<2)|0,Q0=+A[n0>>2],x0=s+(p1<<2)|0,N0=+A[x0>>2],f1=N0+Q0,A1=u1<<1,I=$+(A1<<2)|0,A[I>>2]=f1,C=+A[n0>>2],p=+A[x0>>2],m=C-p,v=t0+A1|0,S=$+(v<<2)|0,A[S>>2]=m,w=u1+t|0,y=p1+t|0,D=I1+1|0,n1=(D|0)==(n|0),!n1;)I1=D,u1=w,p1=y;if(Q=(t|0)<2,!Q){if(R=(t|0)==2,!R){if(b)for(h1=0,d1=0,Q1=f;;){for(H0=d1<<1,R0=H0+d|0,z0=2,_1=Q1,k1=R0,x1=d1,L1=H0;T=_1+2|0,G=k1+-2|0,N=x1+2|0,P=L1+2|0,z=z0+-2|0,Y=c+(z<<2)|0,J=+A[Y>>2],W=_1+1|0,e0=s+(W<<2)|0,H=+A[e0>>2],X=H*J,U=z0+-1|0,o0=c+(U<<2)|0,Z=+A[o0>>2],V=s+(T<<2)|0,s0=+A[V>>2],i0=s0*Z,r0=i0+X,K=s0*J,c0=Z*H,A0=K-c0,l0=s+(N<<2)|0,j=+A[l0>>2],$0=A0+j,g0=$+(P<<2)|0,A[g0>>2]=$0,f0=+A[l0>>2],d0=A0-f0,y0=$+(G<<2)|0,A[y0>>2]=d0,h0=x1+1|0,E0=s+(h0<<2)|0,C0=+A[E0>>2],u0=C0+r0,k0=L1|1,J0=$+(k0<<2)|0,A[J0>>2]=u0,D0=+A[E0>>2],m0=D0-r0,F0=k1+-3|0,M0=$+(F0<<2)|0,A[M0>>2]=m0,G0=z0+2|0,p0=(G0|0)<(t|0),p0;)z0=G0,_1=T,k1=G,x1=N,L1=P;if(_=d1+t|0,L=Q1+t|0,M=h1+1|0,s1=(M|0)==(n|0),s1)break;h1=M,d1=_,Q1=L}if(S0=(t|0)%2&-1,L0=(S0|0)==1,L0)return}if(Y0=t+-1|0,!!b)for(q0=f+Y0|0,E1=0,m1=t,D1=q0,y1=Y0;V0=s+(D1<<2)|0,T0=+A[V0>>2],U0=-T0,r1=$+(m1<<2)|0,A[r1>>2]=U0,O0=s+(y1<<2)|0,e1=e[O0>>2]|0,v0=m1+-1|0,i1=$+(v0<<2)|0,e[i1>>2]=e1,c1=m1+d|0,a1=D1+t|0,g1=y1+t|0,l1=E1+1|0,$1=(l1|0)==(n|0),!$1;)E1=l1,m1=c1,D1=a1,y1=g1}}function hQ(t,n,s,$,c,f,d,I,C,p){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0,I=I|0,C=C|0,p=p|0;var m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,B6=0,z3=0,$6=0,m6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,s3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0,_4=0,M4=0,W4=0,d4=0,T4=0,G9=0,G4=0,A4=0,R4=0,c4=0,Ie=0,O9=0,d9=0,de=0,Me=0,ze=0,N4=0,Te=0,U4=0,j4=0,ke=0,Ze=0,V9=0,se=0,g4=0,D6=0,O4=0,R9=0,s4=0,D4=0,oe=0,z9=0,$e=0,ae=0,E4=0,X4=0,x4=0,le=0,E9=0,a6=0,Ge=0,o4=0,Ee=0,C4=0,$4=0,U6=0,ve=0,Se=0,We=0,a4=0,Q4=0,g8=0,H3=0,Q9=0,C9=0,F4=0,ee=0,$7=0,De=0,a7=0,p7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,Q7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ne=0,be=0,je=0,k8=0,y9=0,g7=0,Ce=0,h7=0,y7=0,j8=0,w7=0,te=0,X8=0,P8=0,v8=0,Xe=0,P4=0,_e=0,e8=0,u8=0,S8=0,ce=0,Z9=0,t8=0,I8=0,i8=0,d8=0,ge=0,Be=0,Ue=0,Oe=0,W9=0,Re=0,he=0,r8=0,me=0,B4=0,E8=0,e7=0,H4=0,I3=0,Pe=0,C8=0,ie=0,P9=0,re=0,S9=0,He=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,A8=0,D8=0,q4=0,n7=0,b8=0,qe=0,B9=0,A7=0,Ye=0,L7=0,O7=0,k7=0,s7=0,v7=0,ne=0,M7=0,P7=0,s8=0,_8=0,S7=0,J8=0,xe=0,fe=0,j9=0,D7=0,X7=0,Lt=0,Mt=0,Tt=0,ct=0,H7=0,gt=0,q7=0,ht=0,Y7=0,ft=0,et=0,ti=0,Gt=0,ut=0,It=0,ii=0,dt=0,tt=0,ri=0,Nt=0,Ut=0,Ot=0,Pt=0,it=0,Et=0,Ht=0,J7=0,rt=0,T7=0,K7=0,ni=0,qt=0,Ai=0,Ct=0,Yt=0,Bt=0,mt=0,Jt=0,pt=0,V7=0,Qt=0,Kt=0,nt=0,G7=0,yt=0,pe=0,wt=0,b7=0,At=0,i9=0,u7=0,B8=0;B8=B,S=+(n|0),w=6.2831854820251465/S,h8=+Yo(+w),L7=+xn(+w),d2=n+1|0,m3=d2>>1,G9=t+-1|0,N4=G9>>1,R9=i5(s,t)|0,E9=i5(n,t)|0,a4=(t|0)==1;e:do if(!a4){if(p7=($|0)>0,p7)for(me=0;$0=d+(me<<2)|0,J0=e[$0>>2]|0,L0=C+(me<<2)|0,e[L0>>2]=J0,i1=me+1|0,I8=(i1|0)==($|0),!I8;)me=i1;if(P=(n|0)>1,P)for(Z=(s|0)>0,C8=1,O7=0;;){if(I1=O7+R9|0,Z)for(r7=0,j9=I1;k1=f+(j9<<2)|0,H1=e[k1>>2]|0,s2=I+(j9<<2)|0,e[s2>>2]=H1,e2=j9+t|0,q2=r7+1|0,Z9=(q2|0)==(s|0),!Z9;)r7=q2,j9=e2;if(z2=C8+1|0,t8=(z2|0)==(n|0),t8)break;C8=z2,O7=I1}if(C5=0-t|0,M1=(N4|0)>(s|0),M1){if(P)for(M3=(s|0)>0,Y5=(t|0)>2,I3=C5,P9=1,v7=0;;){if(w3=v7+R9|0,y6=I3+t|0,M3)for(Z3=w3-t|0,s3=y6+-1|0,n8=0,D7=Z3;;){if(x3=D7+t|0,Y5)for(i8=2,he=s3,ht=x3;F3=he+2|0,d6=ht+2|0,I9=he+1|0,W4=p+(I9<<2)|0,T4=+A[W4>>2],G4=ht+1|0,A4=f+(G4<<2)|0,R4=+A[A4>>2],c4=R4*T4,Ie=p+(F3<<2)|0,O9=+A[Ie>>2],d9=f+(d6<<2)|0,de=+A[d9>>2],Me=de*O9,ze=Me+c4,Te=I+(G4<<2)|0,A[Te>>2]=ze,U4=+A[W4>>2],j4=+A[d9>>2],ke=j4*U4,Ze=+A[Ie>>2],V9=+A[A4>>2],se=V9*Ze,g4=ke-se,D6=I+(d6<<2)|0,A[D6>>2]=g4,O4=i8+2|0,s4=(O4|0)<(t|0),s4;)i8=O4,he=F3,ht=d6;if(D4=n8+1|0,e8=(D4|0)==(s|0),e8)break;n8=D4,D7=x3}if(oe=P9+1|0,u8=(oe|0)==(n|0),u8)break;I3=y6,P9=oe,v7=w3}}else if(P)for(h5=(t|0)>2,g3=(s|0)>0,Pe=C5,re=1,M7=0;;){if(z9=Pe+t|0,$e=M7+R9|0,h5)for(ae=z9+-1|0,d8=2,r8=ae,X7=$e;;){if(E4=r8+2|0,X4=X7+2|0,g3)for(x4=r8+1|0,le=p+(x4<<2)|0,a6=p+(E4<<2)|0,A8=0,Y7=X4;Ge=+A[le>>2],o4=Y7+-1|0,Ee=f+(o4<<2)|0,C4=+A[Ee>>2],$4=C4*Ge,U6=+A[a6>>2],ve=f+(Y7<<2)|0,Se=+A[ve>>2],We=Se*U6,Q4=We+$4,g8=I+(o4<<2)|0,A[g8>>2]=Q4,H3=+A[le>>2],Q9=+A[ve>>2],C9=Q9*H3,F4=+A[a6>>2],ee=+A[Ee>>2],$7=ee*F4,De=C9-$7,a7=I+(Y7<<2)|0,A[a7>>2]=De,K8=Y7+t|0,l7=A8+1|0,S8=(l7|0)==(s|0),!S8;)A8=l7,Y7=K8;if(c7=d8+2|0,x8=(c7|0)<(t|0),x8)d8=c7,r8=E4,X7=X4;else break}if(F8=re+1|0,ce=(F8|0)==(n|0),ce)break;Pe=z9,re=F8,M7=$e}if(L8=i5(R9,n)|0,M8=(N4|0)<(s|0),V8=(m3|0)>1,!M8){if(!V8)break;for(z8=(s|0)>0,Q7=(t|0)>2,He=1,s8=0,Mt=L8;;){if(E0=s8+R9|0,C0=Mt-R9|0,z8)for(q4=0,et=E0,tt=C0;;){if(Q7)for(Be=2,J7=et,Ct=tt;u0=J7+2|0,k0=Ct+2|0,D0=J7+1|0,m0=I+(D0<<2)|0,x0=+A[m0>>2],F0=Ct+1|0,M0=I+(F0<<2)|0,G0=+A[M0>>2],p0=G0+x0,H0=f+(D0<<2)|0,A[H0>>2]=p0,R0=I+(u0<<2)|0,S0=+A[R0>>2],Y0=I+(k0<<2)|0,q0=+A[Y0>>2],N0=S0-q0,V0=f+(F0<<2)|0,A[V0>>2]=N0,T0=+A[R0>>2],U0=+A[Y0>>2],r1=U0+T0,O0=f+(u0<<2)|0,A[O0>>2]=r1,e1=+A[M0>>2],v0=+A[m0>>2],c1=e1-v0,a1=f+(k0<<2)|0,A[a1>>2]=c1,f1=Be+2|0,g1=(f1|0)<(t|0),g1;)Be=f1,J7=u0,Ct=k0;if(l1=et+t|0,A1=tt+t|0,$1=q4+1|0,P4=($1|0)==(s|0),P4)break;q4=$1,et=l1,tt=A1}if(n1=He+1|0,_e=(n1|0)==(m3|0),_e)break e;He=n1,s8=E0,Mt=C0}}if(V8)for(D=(t|0)>2,Q=(s|0)>0,S9=1,P7=0,Lt=L8;;){if(b=P7+R9|0,R=Lt-R9|0,D)for(ge=2,ft=b,dt=R;;){if(_=ft+2|0,L=dt+2|0,Q)for(M=L-t|0,T=_-t|0,D8=0,Ht=T,Ai=M;G=Ht+t|0,N=Ai+t|0,z=G+-1|0,Y=I+(z<<2)|0,t0=+A[Y>>2],J=N+-1|0,W=I+(J<<2)|0,e0=+A[W>>2],H=e0+t0,X=f+(z<<2)|0,A[X>>2]=H,U=I+(G<<2)|0,o0=+A[U>>2],V=I+(N<<2)|0,s0=+A[V>>2],n0=o0-s0,i0=f+(J<<2)|0,A[i0>>2]=n0,r0=+A[U>>2],K=+A[V>>2],c0=K+r0,A0=f+(G<<2)|0,A[A0>>2]=c0,l0=+A[W>>2],j=+A[Y>>2],g0=l0-j,f0=f+(N<<2)|0,A[f0>>2]=g0,Q0=D8+1|0,v8=(Q0|0)==(s|0),!v8;)D8=Q0,Ht=G,Ai=N;if(d0=ge+2|0,y0=(d0|0)<(t|0),y0)ge=d0,ft=_,dt=L;else break}if(h0=S9+1|0,Xe=(h0|0)==(m3|0),Xe)break;S9=h0,P7=b,Lt=R}}while(!1);if(y=($|0)>0,y)for(B4=0;s1=C+(B4<<2)|0,z0=e[s1>>2]|0,h1=d+(B4<<2)|0,e[h1>>2]=z0,E1=B4+1|0,P8=(E1|0)==($|0),!P8;)B4=E1;if(u1=i5($,n)|0,d1=(m3|0)>1,d1){for(m1=(s|0)>0,H8=1,_8=0,Tt=u1;;){if(p1=_8+R9|0,Q1=Tt-R9|0,m1)for(D1=Q1-t|0,_1=p1-t|0,n7=0,ti=_1,ri=D1;y1=ti+t|0,x1=ri+t|0,L1=I+(y1<<2)|0,N1=+A[L1>>2],w1=I+(x1<<2)|0,U1=+A[w1>>2],Z1=U1+N1,G1=f+(y1<<2)|0,A[G1>>2]=Z1,v1=+A[w1>>2],K1=+A[L1>>2],P1=v1-K1,q1=f+(x1<<2)|0,A[q1>>2]=P1,Y1=n7+1|0,te=(Y1|0)==(s|0),!te;)n7=Y1,ti=y1,ri=x1;if(j1=H8+1|0,X8=(j1|0)==(m3|0),X8)break;H8=j1,_8=p1,Tt=Q1}if(r2=n+-1|0,W1=i5(r2,$)|0,d1){for(O1=(m3|0)>2,T8=0,N8=1,Ye=1,S7=0,ct=u1;;){if(l2=S7+$|0,z1=ct-$|0,h2=N8*h8,A2=T8*L7,V1=h2-A2,g2=T8*h8,$2=N8*L7,t2=$2+g2,y)for(E8=0,Nt=l2,rt=z1,Yt=W1,V7=$;a2=d+(E8<<2)|0,i2=+A[a2>>2],o2=V7+1|0,X1=d+(V7<<2)|0,n2=+A[X1>>2],f2=n2*V1,y2=f2+i2,S2=Nt+1|0,w2=C+(Nt<<2)|0,A[w2>>2]=y2,C2=Yt+1|0,M2=d+(Yt<<2)|0,_2=+A[M2>>2],G2=_2*t2,u2=rt+1|0,K2=C+(rt<<2)|0,A[K2>>2]=G2,N2=E8+1|0,h7=(N2|0)==($|0),!h7;)E8=N2,Nt=S2,rt=u2,Yt=C2,V7=o2;if(O1)for(G8=t2,y8=V1,f7=2,Ut=$,T7=W1;;){if(T2=Ut+$|0,O2=T7-$|0,V2=y8*V1,A5=G8*t2,P2=V2-A5,T1=G8*V1,j2=y8*t2,R5=j2+T1,y)for(e7=0,Bt=l2,Qt=z1,yt=T2,b7=O2;X2=yt+1|0,v5=d+(yt<<2)|0,f5=+A[v5>>2],w5=f5*P2,O5=Bt+1|0,a5=C+(Bt<<2)|0,k2=+A[a5>>2],E5=k2+w5,A[a5>>2]=E5,r5=b7+1|0,x2=d+(b7<<2)|0,R2=+A[x2>>2],B2=R2*R5,x5=Qt+1|0,u5=C+(Qt<<2)|0,S5=+A[u5>>2],G5=S5+B2,A[u5>>2]=G5,D5=e7+1|0,y7=(D5|0)==($|0),!y7;)e7=D5,Bt=O5,Qt=x5,yt=X2,b7=r5;if(H2=f7+1|0,j8=(H2|0)==(m3|0),j8)break;G8=R5,y8=P2,f7=H2,Ut=T2,T7=O2}if(I5=Ye+1|0,w7=(I5|0)==(m3|0),w7)break;T8=t2,N8=V1,Ye=I5,S7=l2,ct=z1}if(d1)for(t7=1,J8=0;;){if(s5=J8+$|0,y)for(H4=0,H7=s5;l5=H7+1|0,B5=d+(H7<<2)|0,k5=+A[B5>>2],c5=C+(H4<<2)|0,o5=+A[c5>>2],Z2=o5+k5,A[c5>>2]=Z2,c2=H4+1|0,g7=(c2|0)==($|0),!g7;)H4=c2,H7=l5;if(m5=t7+1|0,Ce=(m5|0)==(m3|0),Ce)break;t7=m5,J8=s5}}}if(e5=(t|0)<(s|0),e5){if(J2=(t|0)>0,J2)for(t5=(s|0)>0,Oe=0;;){if(t5)for(qe=0,fe=Oe,q7=Oe;K5=I+(fe<<2)|0,t3=e[K5>>2]|0,A3=c+(q7<<2)|0,e[A3>>2]=t3,E3=fe+t|0,F5=q7+E9|0,V5=qe+1|0,be=(V5|0)==(s|0),!be;)qe=V5,fe=E3,q7=F5;if(y3=Oe+1|0,je=(y3|0)==(t|0),je)break;Oe=y3}}else if(n5=(s|0)>0,n5)for(g5=(t|0)>0,b8=0,xe=0,gt=0;;){if(g5)for(Ue=0,Gt=xe,Ot=gt;b5=Gt+1|0,W2=I+(Gt<<2)|0,$5=e[W2>>2]|0,F2=Ot+1|0,p5=c+(Ot<<2)|0,e[p5>>2]=$5,q5=Ue+1|0,k8=(q5|0)==(t|0),!k8;)Ue=q5,Gt=b5,Ot=F2;if(e3=xe+t|0,d5=gt+E9|0,f3=b8+1|0,y9=(f3|0)==(s|0),y9)break;b8=f3,xe=e3,gt=d5}if(h3=t<<1,B3=i5(R9,n)|0,d1)for(q3=(s|0)>0,i7=1,k7=0,ut=0,Pt=B3;;){if(Z5=k7+h3|0,Q3=ut+R9|0,j5=Pt-R9|0,q3)for(B9=0,K7=Z5,mt=Q3,Kt=j5;j3=I+(mt<<2)|0,_3=e[j3>>2]|0,T3=K7+-1|0,$3=c+(T3<<2)|0,e[$3>>2]=_3,a3=I+(Kt<<2)|0,l3=e[a3>>2]|0,C3=c+(K7<<2)|0,e[C3>>2]=l3,N5=K7+E9|0,P5=mt+t|0,y5=Kt+t|0,G3=B9+1|0,f8=(G3|0)==(s|0),!f8;)B9=G3,K7=N5,mt=P5,Kt=y5;if(L5=i7+1|0,Ne=(L5|0)==(m3|0),Ne)break;i7=L5,k7=Z5,ut=Q3,Pt=j5}if(!a4){if(t6=(N4|0)<(s|0),i3=0-t|0,!t6){if(!d1)return;for(m=(s|0)<1,v=(t|0)<3,w8=m|v,q8=1,s7=i3,It=0,it=0,ni=B3;;){if(h6=s7+h3|0,p3=It+h3|0,X3=it+R9|0,V3=ni-R9|0,!w8)for(A7=0,Jt=h6,nt=p3,pe=X3,At=V3;;){for(W9=2;o6=t-W9|0,u3=W9+pe|0,w6=u3+-1|0,k6=I+(w6<<2)|0,B6=+A[k6>>2],z3=W9+At|0,$6=z3+-1|0,m6=I+($6<<2)|0,_6=+A[m6>>2],Y6=_6+B6,C6=W9+nt|0,v3=C6+-1|0,W3=c+(v3<<2)|0,A[W3>>2]=Y6,f6=+A[k6>>2],O3=+A[m6>>2],S3=f6-O3,P3=o6+Jt|0,Y3=P3+-1|0,v6=c+(Y3<<2)|0,A[v6>>2]=S3,i6=I+(u3<<2)|0,r3=+A[i6>>2],O6=I+(z3<<2)|0,r6=+A[O6>>2],u6=r6+r3,D3=c+(C6<<2)|0,A[D3>>2]=u6,T6=+A[O6>>2],e6=+A[i6>>2],p6=T6-e6,R6=c+(P3<<2)|0,A[R6>>2]=p6,K6=W9+2|0,I6=(K6|0)<(t|0),I6;)W9=K6;if(N3=Jt+E9|0,z5=nt+E9|0,k3=pe+t|0,c3=At+t|0,U3=A7+1|0,Z8=(U3|0)==(s|0),Z8)break;A7=U3,Jt=N3,nt=z5,pe=k3,At=c3}if(J6=q8+1|0,W8=(J6|0)==(m3|0),W8)break;q8=J6,s7=h6,It=p3,it=X3,ni=V3}return}if(d1)for(o3=(t|0)>2,R3=(s|0)>0,ie=1,ne=i3,ii=0,Et=0,qt=B3;;){if(Z6=ne+h3|0,G6=ii+h3|0,j6=Et+R9|0,r9=qt-R9|0,o3&&(x6=Z6+t|0,R3))for(Re=2;;){for(v4=Re+r9|0,S4=Re+j6|0,_4=Re+G6|0,M4=x6-Re|0,Y8=0,pt=M4,G7=_4,wt=S4,i9=v4;V6=wt+-1|0,Q6=I+(V6<<2)|0,F6=+A[Q6>>2],L6=i9+-1|0,X6=I+(L6<<2)|0,A9=+A[X6>>2],W6=A9+F6,g9=G7+-1|0,h9=c+(g9<<2)|0,A[h9>>2]=W6,f9=+A[Q6>>2],s9=+A[X6>>2],o9=f9-s9,L9=pt+-1|0,M6=c+(L9<<2)|0,A[M6>>2]=o9,e9=I+(wt<<2)|0,M9=+A[e9>>2],u9=I+(i9<<2)|0,u4=+A[u9>>2],r4=u4+M9,l4=c+(G7<<2)|0,A[l4>>2]=r4,T9=+A[u9>>2],K9=+A[e9>>2],v9=T9-K9,P6=c+(pt<<2)|0,A[P6>>2]=v9,t9=pt+E9|0,I4=G7+E9|0,k4=wt+t|0,n4=i9+t|0,p9=Y8+1|0,U8=(p9|0)==(s|0),!U8;)Y8=p9,pt=t9,G7=I4,wt=k4,i9=n4;if(N6=Re+2|0,S6=(N6|0)<(t|0),S6)Re=N6;else break}if(d4=ie+1|0,O8=(d4|0)==(m3|0),O8)break;ie=d4,ne=Z6,ii=G6,Et=j6,qt=r9}}}function GS(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,B6=0,z3=0,$6=0,m6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,s3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0,_4=0,M4=0,W4=0,d4=0,T4=0,G9=0,G4=0,A4=0,R4=0,c4=0,Ie=0,O9=0,d9=0,de=0,Me=0,ze=0,N4=0,Te=0,U4=0,j4=0,ke=0,Ze=0,V9=0,se=0,g4=0,D6=0,O4=0,R9=0,s4=0,D4=0,oe=0,z9=0,$e=0,ae=0,E4=0,X4=0,x4=0,le=0,E9=0,a6=0,Ge=0,o4=0,Ee=0,C4=0,$4=0,U6=0,ve=0,Se=0,We=0,a4=0,Q4=0,g8=0,H3=0,Q9=0,C9=0,F4=0,ee=0,$7=0,De=0,a7=0,p7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,Q7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ne=0,be=0,je=0,k8=0,y9=0,g7=0,Ce=0,h7=0,y7=0,j8=0,w7=0,te=0,X8=0,P8=0,v8=0,Xe=0,P4=0,_e=0,e8=0,u8=0,S8=0,ce=0,Z9=0,t8=0,I8=0,i8=0,d8=0,ge=0,Be=0,Ue=0,Oe=0,W9=0,Re=0,he=0,r8=0,me=0,B4=0,E8=0,e7=0,H4=0,I3=0,Pe=0,C8=0,ie=0,P9=0,re=0,S9=0,He=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,A8=0,D8=0,q4=0,n7=0,b8=0,qe=0,B9=0,A7=0,Ye=0,L7=0,O7=0,k7=0,s7=0,v7=0,ne=0,M7=0,P7=0,s8=0,_8=0,S7=0,J8=0,xe=0,fe=0,j9=0,D7=0,X7=0,Lt=0,Mt=0,Tt=0,ct=0,H7=0,gt=0,q7=0,ht=0,Y7=0,ft=0,et=0,ti=0,Gt=0,ut=0,It=0,ii=0,dt=0,tt=0,ri=0,Nt=0,Ut=0,Ot=0,Pt=0,it=0,Et=0,Ht=0,J7=0,rt=0,T7=0,K7=0,ni=0,qt=0,Ai=0,Ct=0,Yt=0,Bt=0,mt=0,Jt=0,pt=0,V7=0,Qt=0,Kt=0,nt=0,G7=0,yt=0,pe=0,wt=0,b7=0,At=0,i9=0,u7=0,B8=0,I7=0,_7=0,Hr=0,hr=0,VA=0,Ln=0,zA=0,Mn=0,ZA=0,WA=0,Tn=0,jA=0,qr=0,XA=0,es=0,ts=0,Gn=0,is=0,Nn=0,Un=0,rs=0,Yr=0,On=0,Jr=0,Pn=0,Hn=0,ns=0,As=0,ss=0,Kr=0,qn=0,os=0,fr=0,Vr=0,$s=0,as=0,zr=0,si=0,Yn=0,ls=0,cs=0,Jn=0,Kn=0,Vn=0,gs=0,oi=0,Zr=0,hs=0,zn=0,fs=0,us=0,Is=0,Zn=0,ds=0,Es=0,Cs=0,Bs=0,Wn=0,ms=0,ps=0,Wr=0,ur=0,jr=0,Qs=0,Ki=0,ys=0,jn=0,Xr=0,Xn=0,en=0,ws=0,eA=0,tA=0,ks=0,iA=0,rA=0,vs=0,Ir=0,nA=0,$i=0,tn=0,dr=0,Vi=0,Er=0,Ni=0,Cr=0,AA=0,Ui=0,Bi=0,mi=0,Vt=0,pi=0,Br=0,zi=0,Zi=0,mr=0,ai=0,Ss=0,st=0,za=0,rn=0,nn=0,Rh=0,Za=0,Ds=0,xh=0,Vo=0,Wa=0,Fh=0,Lh=0,Mh=0,zo=0,ja=0,Xa=0,Zo=0,An=0,el=0,Th=0,bs=0,Wi=0,Gh=0,Nh=0,Uh=0,Oh=0,Ph=0,Hh=0,qh=0,Yh=0,Jh=0,Kh=0,tl=0,pr=0,Vh=0,zh=0,il=0,Zh=0,Wo=0,_s=0,jo=0,Wh=0,jh=0,Xo=0,rl=0,nl=0,Al=0,e$=0,sl=0,Rs=0,Xh=0,ef=0,ol=0,tf=0,rf=0,$l=0,nf=0,Af=0,al=0,ll=0,cl=0,gl=0,hl=0,sn=0,sf=0,fl=0,of=0,ul=0,Il=0,$f=0,af=0,lf=0,t$=0,dl=0,El=0,sA=0,Cl=0,i$=0,cf=0,Bl=0,gf=0,ml=0,hf=0,ff=0,pl=0,Ql=0,uf=0,xs=0,If=0,r$=0,yl=0,wl=0,df=0,Ef=0,Cf=0,Bf=0,mf=0,pf=0,Fs=0,kl=0,vl=0,Sl=0,Ls=0,Qf=0,Dl=0,yf=0,bl=0,wf=0,kf=0,_l=0,n$=0,vf=0,Sf=0,Ms=0,Df=0,Ts=0,bf=0,A$=0,_f=0,Rf=0,xf=0,Rl=0,Ff=0,Lf=0,Mf=0,Tf=0,xl=0,Fl=0,ji=0,Ll=0,Gs=0,s$=0,o$=0,on=0,Ml=0,$n=0,Gf=0,Tl=0,Nf=0,Uf=0,Of=0,Pf=0,Ns=0,$$=0,Qr=0,Hf=0,qf=0,Gl=0,a$=0,Nl=0,Ul=0,Yf=0,Ol=0,Jf=0,l$=0,Kf=0,Vf=0,N9=0,zf=0,Pl=0,Zf=0,Wf=0,c$=0,jf=0,g$=0,Hl=0,Xf=0,eu=0,ql=0,Yl=0,tu=0,h$=0,f$=0,Jl=0,Kl=0,iu=0,Vl=0,u$=0,ru=0,zl=0,nu=0,Au=0,su=0,ou=0,Zl=0,Wl=0,I$=0,Us=0,jl=0,$u=0,Xl=0,ec=0,au=0,lu=0,cu=0,tc=0,gu=0,hu=0,fu=0,uu=0,Iu=0,du=0,ic=0,Eu=0,rc=0,Cu=0,an=0,Bu=0,nc=0,mu=0,oA=0,Ac=0,d$=0,pu=0,Os=0,E$=0,Qu=0,C$=0,sc=0,yu=0,wu=0,ku=0,vu=0,Su=0,oc=0,Du=0,bu=0,_u=0,Ps=0,$A=0,B$=0,Ru=0,m$=0,xu=0,Fu=0,Lu=0,$c=0,Mu=0,Tu=0,Gu=0,Nu=0,Uu=0,Hs=0,Ou=0,Pu=0,ac=0,Hu=0,qu=0,Yu=0,Ju=0,li=0,lc=0,ci=0,cc=0,p$=0,Ku=0,zt=0,aA=0,Vu=0,zu=0,Zu=0,Wu=0,ju=0,gc=0,Xu=0,eI=0,hc=0,tI=0,iI=0,lA=0,Q$=0,rI=0,fc=0,nI=0,AI=0,qs=0,sI=0,oI=0,uc=0,Ic=0,$I=0,aI=0,ln=0,lI=0,cI=0,cn=0,gI=0,dc=0,hI=0,fI=0,cA=0,Ec=0,uI=0,Cc=0,II=0,Xi=0,y$=0,dI=0,Bc=0,mc=0,EI=0,CI=0,pc=0,BI=0,mI=0,pI=0,Qc=0,QI=0,gA=0,yI=0,gn=0,wI=0,kI=0,w$=0,vI=0,k$=0,v$=0,SI=0,yc=0,wc=0,DI=0,kc=0,vc=0,Sc=0,bI=0,Dc=0,bc=0,_I=0,RI=0,_c=0,Rc=0,xI=0,xc=0,Fc=0,FI=0,LI=0,Lc=0,S$=0,Mc=0,Tc=0,Gc=0,Nc=0,MI=0,TI=0,GI=0,NI=0,UI=0,OI=0,PI=0,HI=0,Uc=0,D$=0,qI=0,YI=0,JI=0,Oc=0,Pc=0,KI=0,Hc=0,b$=0,Ys=0,qc=0,VI=0,zI=0,ZI=0,WI=0,Yc=0,Js=0,jI=0,XI=0,ed=0,td=0,id=0,rd=0,nd=0,Ad=0,Jc=0,sd=0,od=0,$d=0,ad=0,Ks=0,Kc=0,ld=0,cd=0,hn=0,Vc=0,zc=0,_$=0,gd=0,Zc=0,hd=0,Wc=0,jc=0,fd=0,ud=0,Id=0,dd=0,Ed=0,Vs=0,R$=0,Cd=0,Bd=0,md=0,pd=0,Xc=0,Qd=0,eg=0,yd=0,wd=0,tg=0,yr=0,ig=0,rg=0,kd=0,ng=0,zs=0,vd=0,Sd=0,Dd=0,Zs=0,Ag=0,bd=0,_d=0,sg=0,Rd=0,xd=0,x$=0,Ws=0,Fd=0,Ld=0,Md=0,og=0,$g=0,ag=0,Td=0,Gd=0,hA=0,Nd=0,lg=0,Ud=0,F$=0,cg=0,Od=0,Pd=0,Hd=0,qd=0,gg=0,Yd=0,Jd=0,hg=0,js=0,Kd=0,Vd=0,zd=0,fA=0,fg=0,ug=0,Zd=0,Ig=0,dg=0,Qi=0,Eg=0,er=0,Wd=0,jd=0,Xd=0,eE=0,L$=0,Xs=0,Cg=0,Bg=0,tE=0,eo=0,uA=0,iE=0,to=0,M$=0,rE=0,T$=0,nE=0,AE=0,mg=0,io=0,pg=0,sE=0,oE=0,$E=0,aE=0,Qg=0,lE=0,z7=0,m4=0,Zt=0,cE=0,yg=0,wg=0,G$=0,gE=0,wr=0,IA=0,hE=0,fE=0,kg=0,N$=0,uE=0,vg=0,Sg=0,Dg=0,U$=0,O$=0,bg=0,dA=0,P$=0,_g=0,IE=0,fn=0,dE=0,Rg=0,ro=0,EE=0,xg=0,yi=0,CE=0,BE=0,mE=0,pE=0,QE=0,yE=0,wi=0,wE=0,kE=0,vE=0,Fg=0,gi=0,no=0,H$=0,Lg=0,Mg=0,SE=0,Tg=0,Gg=0,DE=0,bE=0,Ng=0,Ug=0,_E=0,RE=0,Og=0,xE=0,EA=0,Ao=0,so=0,FE=0,q$=0,LE=0,ME=0,Pg=0,CA=0,TE=0,GE=0,Y$=0,J$=0,oo=0,K$=0,V$=0,tr=0,kr=0,vr=0,z$=0,Z$=0,BA=0,ir=0,un=0,NE=0,rr=0,In=0,UE=0,kt=0,vt=0,St=0,$o=0,ao=0,Hg=0,qg=0,lo=0,W$=0,Dt=0,co=0,Sr=0,j$=0,OE=0,X$=0,PE=0,ea=0,Yg=0,go=0,HE=0,qE=0,ho=0,YE=0,fo=0,dn=0,Je=0,y4=0,Jg=0,JE=0,ta=0,Kg=0,KE=0,VE=0,uo=0,zE=0,ZE=0,WE=0,jE=0,Vg=0,XE=0,eC=0,tC=0,Wt=0,Io=0,En=0,ia=0,mA=0,pA=0,Z7=0,QA=0,zg=0,Zg=0,Eo=0,yA=0,wA=0,kA=0,iC=0,vA=0,nr=0,Wg=0,Dr=0,jt=0,ra=0,na=0,Oi=0,Aa=0,sa=0,oa=0,br=0,A6=0,Co=0,_r=0,jg=0,Qe=0,$a=0,m8=0,SA=0,Cn=0,Bn=0,x9=0,mn=0,Rr=0,Y4=0,aa=0,am=0,rC=0,KC=0,VC=0,lm=0,nC=0,yQ=0,wQ=0,kQ=0,vQ=0,SQ=0,DQ=0,bQ=0,_Q=0,RQ=0,xQ=0,FQ=0,LQ=0,cm=0,gm=0,MQ=0,TQ=0,GQ=0,Xg=0,zC=0,hi=0,eh=0,th=0,ih=0,rh=0,AC=0,sC=0,oC=0,$C=0,aC=0,lC=0,cC=0,gC=0,hC=0,fC=0,ZC=0,Bo=0,Ar=0,la=0,nh=0,ca=0,hm=0,mo=0,uC=0,ga=0,WC=0,jC=0,IC=0,XC=0,eB=0,tB=0,iB=0,rB=0,nB=0,AB=0,fm=0,um=0,Im=0,dm=0,Em=0,po=0,Qo=0,yo=0,wo=0,NQ=0,sr=0,X9=0,hD=0,ko=0,sB=0;if(hD=B,l0=t+28|0,j=e[l0>>2]|0,W8=(j|0)==0,W8||(rt=j+3456|0,AA=e[rt>>2]|0,kl=(AA|0)==0,n=kl&1,oA=j+3496|0,kc=+o1[oA>>3],og=kc>-80,og?o1[oA>>3]=-80:(bE=kc<-200,bE&&(o1[oA>>3]=-200)),$0=j+3512|0,z2=+o1[$0>>3],s3=z2>0,s3?o1[$0>>3]=0:(d4=z2<-99999,d4&&(o1[$0>>3]=-99999)),Me=j+3396|0,D6=e[Me>>2]|0,x4=(D6|0)==0,x4))return C=-131,C|0;if(Se=j+3392|0,e[Se>>2]=1,De=j+3400|0,z8=+o1[De>>3],f8=D6+24|0,w7=e[f8>>2]|0,ce=D6+28|0,Re=e[ce>>2]|0,ie=~~z8,Y8=w7+(ie<<2)|0,L7=e[Y8>>2]|0,J8=Re+(ie<<2)|0,gt=e[J8>>2]|0,e[j>>2]=L7,dt=j+4|0,e[dt>>2]=gt,T7=(L7|0)==(gt|0),V7=D6+144|0,u7=e[V7>>2]|0,WA=(u7|0)>0,WA){for(rs=D6+136|0,os=D6+140|0,Kn=D6+148|0,Ki=z8,Qr=j,ZC=0;;){if(ds=~~Ki,rA=e[rs>>2]|0,Ui=e[os>>2]|0,st=e[Kn>>2]|0,Lh=st+(ZC<<2)|0,Gh=e[Lh>>2]|0,pr=t4(1,1120)|0,rl=Gh+(ds<<2)|0,$l=e[rl>>2]|0,of=Ui+($l*1120|0)|0,i4(pr|0,of|0,1120)|0,i$=e[pr>>2]|0,If=(i$|0)>0,If){for(vl=pr+4|0,zC=0,AB=-1;;)if(u$=vl+(zC<<2)|0,jl=e[u$>>2]|0,uu=(jl|0)>(AB|0),t0=uu?jl:AB,Ac=zC+1|0,FQ=(Ac|0)==(i$|0),FQ){J=t0;break}else zC=Ac,AB=t0;if(vf=(J|0)<0,!vf){for(Ff=pr+256|0,on=Qr+24|0,Kf=pr+192|0,Xf=pr+320|0,ca=0,tB=-1;;){if(mc=Ff+(ca<<2)|0,gn=e[mc>>2]|0,vc=(gn|0)>(tB|0),z=vc?gn:tB,Fc=e[on>>2]|0,GI=Fc+gn|0,e[mc>>2]=GI,Oc=Kf+(ca<<2)|0,Yc=e[Oc>>2]|0,sd=(Yc|0)==31,sd)iB=z;else for(p9=Yc,XC=0,nB=z;;)if(_$=(Xf+(ca<<5)|0)+(XC<<2)|0,Vs=e[_$>>2]|0,tg=(Vs|0)>(nB|0),Y=tg?Vs:nB,Ag=(Vs|0)>-1,Ag?($g=e[on>>2]|0,Pd=$g+Vs|0,e[_$>>2]=Pd,e0=e[Oc>>2]|0,M$=e0):M$=p9,fA=XC+1|0,Xd=1<>2]|0,Ku=e[Pu>>2]|0,hc=e[on>>2]|0,oI=hc+1|0,e[on>>2]=oI,hI=(Qr+1824|0)+(hc<<2)|0,e[hI>>2]=Ku,bQ=(rB|0)==0,!bQ))for(hm=0;O$=hm+1|0,Z=e[rl>>2]|0,xg=rA+(Z<<2)|0,vE=e[xg>>2]|0,Ng=vE+(O$<<2)|0,LE=e[Ng>>2]|0,tr=e[on>>2]|0,UE=tr+1|0,e[on>>2]=UE,co=(Qr+1824|0)+(tr<<2)|0,e[co>>2]=LE,DQ=(O$|0)==(rB|0),!DQ;)hm=O$}}if(ho=Qr+16|0,VE=e[ho>>2]|0,Io=(Qr+800|0)+(VE<<2)|0,e[Io>>2]=1,wA=e[ho>>2]|0,Aa=(Qr+1056|0)+(wA<<2)|0,e[Aa>>2]=pr,g0=e[ho>>2]|0,D0=g0+1|0,e[ho>>2]=D0,Y0=ZC+1|0,c1=e[V7>>2]|0,h1=(Y0|0)<(c1|0),!h1)break;W=+o1[De>>3],r0=e[l0>>2]|0,Ki=W,Qr=r0,ZC=Y0}c0=e[l0>>2]|0,Z5=c0}else Z5=j;x1=j+3520|0,q1=+o1[x1>>3],s2=D6+124|0,e2=e[s2>>2]|0,q2=D6+128|0,f5=e[q2>>2]|0,x5=~~q1,k5=+(x5|0),t5=q1-k5,K5=Z5+2868|0,N5=f5+(x5<<3)|0,w3=+o1[N5>>3],y6=~~w3,Z3=e2+(y6*492|0)|0,i4(K5|0,Z3|0,492)|0,r6=+o1[N5>>3],Z6=1-t5,L6=r6*Z6,M6=x5+1|0,P6=f5+(M6<<3)|0,v4=+o1[P6>>3],S4=v4*t5,_4=S4+L6,M4=~~_4,W4=+(M4|0),T4=_4-W4,G9=T4==0,G4=(M4|0)>0,fm=G4&G9,I=fm?1:T4,A4=fm<<31>>31,L=A4+M4|0,R4=1-I,c4=L+1|0,Ie=(e2+(L*492|0)|0)+4|0,O9=+A[Ie>>2],d9=O9,de=R4*d9,ze=(e2+(c4*492|0)|0)+4|0,N4=+A[ze>>2],Te=N4,U4=I*Te,j4=de+U4,ke=j4,Ze=Z5+2872|0,A[Ze>>2]=ke,V9=(e2+(L*492|0)|0)+32|0,se=+A[V9>>2],g4=se,O4=R4*g4,R9=(e2+(c4*492|0)|0)+32|0,s4=+A[R9>>2],D4=s4,oe=I*D4,z9=O4+oe,$e=z9,ae=Z5+2900|0,A[ae>>2]=$e,E4=(e2+(L*492|0)|0)+8|0,X4=+A[E4>>2],le=X4,E9=R4*le,a6=(e2+(c4*492|0)|0)+8|0,Ge=+A[a6>>2],o4=Ge,Ee=I*o4,C4=E9+Ee,$4=C4,U6=Z5+2876|0,A[U6>>2]=$4,ve=(e2+(L*492|0)|0)+36|0,We=+A[ve>>2],a4=We,Q4=R4*a4,g8=(e2+(c4*492|0)|0)+36|0,H3=+A[g8>>2],Q9=H3,C9=Q9*I,F4=C9+Q4,ee=F4,$7=Z5+2904|0,A[$7>>2]=ee,a7=(e2+(L*492|0)|0)+12|0,p7=+A[a7>>2],K8=p7,l7=K8*R4,c7=(e2+(c4*492|0)|0)+12|0,x8=+A[c7>>2],F8=x8,L8=F8*I,M8=L8+l7,V8=M8,Q7=Z5+2880|0,A[Q7>>2]=V8,T8=(e2+(L*492|0)|0)+40|0,G8=+A[T8>>2],N8=G8,y8=N8*R4,w8=(e2+(c4*492|0)|0)+40|0,h8=+A[w8>>2],U8=h8,O8=U8*I,Z8=O8+y8,Ne=Z8,be=Z5+2908|0,A[be>>2]=Ne,je=(e2+(L*492|0)|0)+16|0,k8=+A[je>>2],y9=k8,g7=y9*R4,Ce=(e2+(c4*492|0)|0)+16|0,h7=+A[Ce>>2],y7=h7,j8=y7*I,te=j8+g7,X8=te,P8=Z5+2884|0,A[P8>>2]=X8,v8=(e2+(L*492|0)|0)+44|0,Xe=+A[v8>>2],P4=Xe,_e=P4*R4,e8=(e2+(c4*492|0)|0)+44|0,u8=+A[e8>>2],S8=u8,Z9=S8*I,t8=Z9+_e,I8=t8,i8=Z5+2912|0,A[i8>>2]=I8,d8=Z5+3512|0,ge=+o1[d8>>3],Be=ge,Ue=Z5+2936|0,A[Ue>>2]=Be,Oe=D6+132|0,W9=e[Oe>>2]|0,he=j+3472|0,r8=+o1[he>>3],me=r8,B4=~~me,E8=+(B4|0),e7=me-E8,H4=e7,I3=e[l0>>2]|0,Pe=(W9|0)==0;e:do if(Pe)C8=I3+4|0,P9=e[I3>>2]|0,re=I3+3240|0,e[re>>2]=P9,S9=e[C8>>2]|0,He=I3+3300|0,e[He>>2]=S9,H8=I3+3244|0,e[H8>>2]=P9,f7=I3+3304|0,e[f7>>2]=S9,t7=I3+3248|0,e[t7>>2]=P9,i7=I3+3308|0,e[i7>>2]=S9,q8=I3+3252|0,e[q8>>2]=P9,r7=I3+3312|0,e[r7>>2]=S9,n8=I3+3256|0,e[n8>>2]=P9,A8=I3+3316|0,e[A8>>2]=S9,D8=I3+3260|0,e[D8>>2]=P9,q4=I3+3320|0,e[q4>>2]=S9,n7=I3+3264|0,e[n7>>2]=P9,b8=I3+3324|0,e[b8>>2]=S9,qe=I3+3268|0,e[qe>>2]=P9,B9=I3+3328|0,e[B9>>2]=S9,A7=I3+3272|0,e[A7>>2]=P9,Ye=I3+3332|0,e[Ye>>2]=S9,O7=I3+3276|0,e[O7>>2]=P9,k7=I3+3336|0,e[k7>>2]=S9,s7=I3+3280|0,e[s7>>2]=P9,v7=I3+3340|0,e[v7>>2]=S9,ne=I3+3284|0,e[ne>>2]=P9,M7=I3+3344|0,e[M7>>2]=S9,P7=I3+3288|0,e[P7>>2]=P9,s8=I3+3348|0,e[s8>>2]=S9,_8=I3+3292|0,e[_8>>2]=P9,S7=I3+3352|0,e[S7>>2]=S9,xe=I3+3296|0,e[xe>>2]=P9,fe=I3+3356|0,e[fe>>2]=S9;else{j9=I3+3120|0,D7=W9+(B4*240|0)|0,sr=j9,ko=D7,sB=sr+60|0;do e[sr>>2]=e[ko>>2]|0,sr=sr+4|0,ko=ko+4|0;while((sr|0)<(sB|0));X7=I3+3180|0,Lt=(W9+(B4*240|0)|0)+60|0,sr=X7,ko=Lt,sB=sr+60|0;do e[sr>>2]=e[ko>>2]|0,sr=sr+4|0,ko=ko+4|0;while((sr|0)<(sB|0));if(Mt=j+3420|0,Tt=e[Mt>>2]|0,ct=(Tt|0)==0,!ct)for(H7=1-H4,q7=B4+1|0,ht=t+8|0,Y7=I3+4|0,X=e[ht>>2]|0,ft=+(X|0),Ar=0;;){if(et=((W9+(B4*240|0)|0)+120|0)+(Ar<<2)|0,ti=+A[et>>2],Gt=ti,ut=Gt*H7,It=((W9+(q7*240|0)|0)+120|0)+(Ar<<2)|0,ii=+A[It>>2],tt=ii,ri=tt*H4,Nt=ri+ut,Ut=Nt,Ot=Ut,Pt=Ot*1e3,it=Pt/ft,Et=e[I3>>2]|0,Ht=+(Et|0),J7=Ht*it,K7=~~J7,ni=(I3+3e3|0)+(Ar<<2)|0,e[ni>>2]=K7,qt=e[Y7>>2]|0,Ai=+(qt|0),Ct=Ai*it,Yt=~~Ct,Bt=(I3+3060|0)+(Ar<<2)|0,e[Bt>>2]=Yt,mt=~~Ut,Jt=(I3+2940|0)+(Ar<<2)|0,e[Jt>>2]=mt,pt=((W9+(B4*240|0)|0)+180|0)+(Ar<<2)|0,Qt=+A[pt>>2],Kt=Qt,nt=Kt*H7,G7=((W9+(q7*240|0)|0)+180|0)+(Ar<<2)|0,yt=+A[G7>>2],pe=yt,wt=pe*H4,b7=wt+nt,At=b7,i9=At,B8=i9*1e3,I7=B8/ft,_7=e[I3>>2]|0,Hr=+(_7|0),hr=Hr*I7,VA=~~hr,Ln=(I3+3240|0)+(Ar<<2)|0,e[Ln>>2]=VA,zA=e[Y7>>2]|0,Mn=+(zA|0),ZA=Mn*I7,Tn=~~ZA,jA=(I3+3300|0)+(Ar<<2)|0,e[jA>>2]=Tn,qr=Ar+1|0,RQ=(qr|0)==15,RQ)break e;Ar=qr}for(XA=(W9+(B4*240|0)|0)+148|0,es=+A[XA>>2],ts=es,Gn=1-H4,is=ts*Gn,Nn=B4+1|0,Un=(W9+(Nn*240|0)|0)+148|0,Yr=+A[Un>>2],On=Yr,Jr=On*H4,Pn=Jr+is,Hn=Pn,ns=Hn,As=ns*1e3,ss=t+8|0,Kr=I3+4|0,qn=~~Hn,o0=e[ss>>2]|0,fr=+(o0|0),Vr=As/fr,nh=0;$s=e[I3>>2]|0,as=+($s|0),zr=as*Vr,si=~~zr,Yn=(I3+3e3|0)+(nh<<2)|0,e[Yn>>2]=si,ls=e[Kr>>2]|0,cs=+(ls|0),Jn=cs*Vr,Vn=~~Jn,gs=(I3+3060|0)+(nh<<2)|0,e[gs>>2]=Vn,oi=(I3+2940|0)+(nh<<2)|0,e[oi>>2]=qn,Zr=nh+1|0,LQ=(Zr|0)==15,!LQ;)nh=Zr;for(hs=(W9+(B4*240|0)|0)+208|0,zn=+A[hs>>2],fs=zn,us=fs*Gn,Is=(W9+(Nn*240|0)|0)+208|0,Zn=+A[Is>>2],Es=Zn,Cs=Es*H4,Bs=Cs+us,Wn=Bs,ms=Wn,ps=ms*1e3,Wr=ps/fr,uC=0;ur=e[I3>>2]|0,jr=+(ur|0),Qs=jr*Wr,ys=~~Qs,jn=(I3+3240|0)+(uC<<2)|0,e[jn>>2]=ys,Xr=e[Kr>>2]|0,Xn=+(Xr|0),en=Xn*Wr,ws=~~en,eA=(I3+3300|0)+(uC<<2)|0,e[eA>>2]=ws,tA=uC+1|0,_Q=(tA|0)==15,!_Q;)uC=tA}while(!1);for(ks=+o1[De>>3],iA=D6+92|0,vs=e[iA>>2]|0,Ir=D6+100|0,nA=e[Ir>>2]|0,$i=D6+108|0,tn=e[$i>>2]|0,dr=e[l0>>2]|0,Vi=dr+2852|0,Er=e[Vi>>2]|0,Ni=~~ks,Cr=dr+28|0,Bi=e[Cr>>2]|0,mi=(Bi|0)>0,mi||(e[Cr>>2]=1),Vt=(Er|0)==0,Vt?(pi=t4(1,520)|0,e[Vi>>2]=pi,po=pi):po=Er,i4(po|0,25784,520)|0,e[po>>2]=0,Br=dr+3460|0,zi=e[Br>>2]|0,Zi=(zi|0)==0,Zi||(mr=po+500|0,e[mr>>2]=1,ai=vs+(Ni<<2)|0,Ss=e[ai>>2]|0,za=po+504|0,e[za>>2]=Ss,rn=nA+(Ni<<2)|0,nn=e[rn>>2]|0,Rh=po+508|0,e[Rh>>2]=nn,Za=tn+(Ni<<3)|0,Ds=+o1[Za>>3],xh=po+512|0,o1[xh>>3]=Ds),Vo=+o1[De>>3],Wa=e[iA>>2]|0,Fh=e[Ir>>2]|0,Mh=e[$i>>2]|0,zo=e[l0>>2]|0,ja=zo+2856|0,Xa=e[ja>>2]|0,Zo=~~Vo,An=zo+28|0,el=e[An>>2]|0,Th=(el|0)>1,Th||(e[An>>2]=2),bs=(Xa|0)==0,bs?(Wi=t4(1,520)|0,e[ja>>2]=Wi,Qo=Wi):Qo=Xa,i4(Qo|0,25784,520)|0,e[Qo>>2]=0,Nh=zo+3460|0,Uh=e[Nh>>2]|0,Oh=(Uh|0)==0,Oh||(Ph=Qo+500|0,e[Ph>>2]=1,Hh=Wa+(Zo<<2)|0,qh=e[Hh>>2]|0,Yh=Qo+504|0,e[Yh>>2]=qh,Jh=Fh+(Zo<<2)|0,Kh=e[Jh>>2]|0,tl=Qo+508|0,e[tl>>2]=Kh,Vh=Mh+(Zo<<3)|0,zh=+o1[Vh>>3],il=Qo+512|0,o1[il>>3]=zh),T7||(Zh=+o1[De>>3],Wo=D6+96|0,_s=e[Wo>>2]|0,jo=D6+104|0,Wh=e[jo>>2]|0,jh=e[$i>>2]|0,Xo=e[l0>>2]|0,nl=Xo+2860|0,Al=e[nl>>2]|0,e$=~~Zh,sl=Xo+28|0,Rs=e[sl>>2]|0,Xh=(Rs|0)>2,Xh||(e[sl>>2]=3),ef=(Al|0)==0,ef?(ol=t4(1,520)|0,e[nl>>2]=ol,yo=ol):yo=Al,i4(yo|0,25784,520)|0,e[yo>>2]=1,tf=Xo+3460|0,rf=e[tf>>2]|0,nf=(rf|0)==0,nf||(Af=yo+500|0,e[Af>>2]=1,al=_s+(e$<<2)|0,ll=e[al>>2]|0,cl=yo+504|0,e[cl>>2]=ll,gl=Wh+(e$<<2)|0,hl=e[gl>>2]|0,sn=yo+508|0,e[sn>>2]=hl,sf=jh+(e$<<3)|0,fl=+o1[sf>>3],ul=yo+512|0,o1[ul>>3]=fl),Il=+o1[De>>3],$f=e[Wo>>2]|0,af=e[jo>>2]|0,lf=e[$i>>2]|0,t$=e[l0>>2]|0,dl=t$+2864|0,El=e[dl>>2]|0,sA=~~Il,Cl=t$+28|0,cf=e[Cl>>2]|0,Bl=(cf|0)>3,Bl||(e[Cl>>2]=4),gf=(El|0)==0,gf?(ml=t4(1,520)|0,e[dl>>2]=ml,wo=ml):wo=El,i4(wo|0,25784,520)|0,e[wo>>2]=1,hf=t$+3460|0,ff=e[hf>>2]|0,pl=(ff|0)==0,pl||(Ql=wo+500|0,e[Ql>>2]=1,uf=$f+(sA<<2)|0,xs=e[uf>>2]|0,r$=wo+504|0,e[r$>>2]=xs,yl=af+(sA<<2)|0,wl=e[yl>>2]|0,df=wo+508|0,e[df>>2]=wl,Ef=lf+(sA<<3)|0,Cf=+o1[Ef>>3],Bf=wo+512|0,o1[Bf>>3]=Cf)),mf=(j+3528|0)+(n<<5)|0,pf=+o1[mf>>3],Fs=D6+32|0,Sl=e[Fs>>2]|0,Ls=D6+36|0,Qf=e[Ls>>2]|0,Dl=D6+44|0,yf=e[Dl>>2]|0,PC(t,pf,0,Sl,Qf,yf),bl=j+3560|0,wf=+o1[bl>>3],kf=e[Fs>>2]|0,_l=e[Ls>>2]|0,n$=D6+52|0,Sf=e[n$>>2]|0,PC(t,wf,1,kf,_l,Sf),T7||(Ms=j+3592|0,Df=+o1[Ms>>3],Ts=e[Fs>>2]|0,bf=e[Ls>>2]|0,A$=e[n$>>2]|0,PC(t,Df,2,Ts,bf,A$),_f=j+3624|0,Rf=+o1[_f>>3],xf=e[Fs>>2]|0,Rl=e[Ls>>2]|0,Lf=D6+48|0,Mf=e[Lf>>2]|0,PC(t,Rf,3,xf,Rl,Mf)),Tf=((j+3528|0)+(n<<5)|0)+24|0,xl=+o1[Tf>>3],Fl=D6+80|0,ji=e[Fl>>2]|0,Ll=D6+84|0,Gs=e[Ll>>2]|0,s$=~~xl,o$=+(s$|0),Ml=xl-o$,$n=e[l0>>2]|0,Gf=$n+2852|0,Tl=e[Gf>>2]|0,Nf=Gs+(s$<<3)|0,Uf=+o1[Nf>>3],Of=1-Ml,Pf=Uf*Of,Ns=s$+1|0,$$=Gs+(Ns<<3)|0,Hf=+o1[$$>>3],qf=Hf*Ml,Gl=qf+Pf,a$=~~Gl,Nl=+(a$|0),Ul=Gl-Nl,Yf=Ul==0,Ol=(a$|0)>0,um=Ol&Yf,$=um?1:Ul,Jf=um<<31>>31,M=Jf+a$|0,l$=1-$,Vf=M+1|0,eh=0;N9=(ji+(M*160|0)|0)+(eh<<2)|0,zf=e[N9>>2]|0,Pl=+(zf|0),Zf=Pl*l$,Wf=(ji+(Vf*160|0)|0)+(eh<<2)|0,c$=e[Wf>>2]|0,jf=+(c$|0),g$=jf*$,Hl=g$+Zf,eu=Hl,ql=(Tl+336|0)+(eh<<2)|0,A[ql>>2]=eu,Yl=eh+1|0,wQ=(Yl|0)==40,!wQ;)eh=Yl;for(tu=j+3584|0,h$=+o1[tu>>3],f$=~~h$,Jl=+(f$|0),Kl=h$-Jl,iu=$n+2856|0,Vl=e[iu>>2]|0,ru=Gs+(f$<<3)|0,zl=+o1[ru>>3],nu=1-Kl,Au=zl*nu,su=f$+1|0,ou=Gs+(su<<3)|0,Zl=+o1[ou>>3],Wl=Zl*Kl,I$=Wl+Au,Us=~~I$,$u=+(Us|0),Xl=I$-$u,ec=Xl==0,au=(Us|0)>0,Im=au&ec,c=Im?1:Xl,lu=Im<<31>>31,T=lu+Us|0,cu=1-c,tc=T+1|0,th=0;gu=(ji+(T*160|0)|0)+(th<<2)|0,hu=e[gu>>2]|0,fu=+(hu|0),Iu=fu*cu,du=(ji+(tc*160|0)|0)+(th<<2)|0,ic=e[du>>2]|0,Eu=+(ic|0),rc=Eu*c,Cu=rc+Iu,an=Cu,Bu=(Vl+336|0)+(th<<2)|0,A[Bu>>2]=an,nc=th+1|0,kQ=(nc|0)==40,!kQ;)th=nc;if(!T7){for(mu=j+3616|0,d$=+o1[mu>>3],pu=D6+88|0,Os=e[pu>>2]|0,E$=~~d$,Qu=+(E$|0),C$=d$-Qu,sc=$n+2860|0,yu=e[sc>>2]|0,wu=Os+(E$<<3)|0,ku=+o1[wu>>3],Su=1-C$,oc=ku*Su,Du=E$+1|0,bu=Os+(Du<<3)|0,_u=+o1[bu>>3],Ps=_u*C$,$A=Ps+oc,B$=~~$A,Ru=+(B$|0),m$=$A-Ru,Fu=m$==0,Lu=(B$|0)>0,dm=Lu&Fu,f=dm?1:m$,$c=dm<<31>>31,G=$c+B$|0,Mu=1-f,Tu=G+1|0,ih=0;Gu=(ji+(G*160|0)|0)+(ih<<2)|0,Nu=e[Gu>>2]|0,Uu=+(Nu|0),Hs=Uu*Mu,Ou=(ji+(Tu*160|0)|0)+(ih<<2)|0,ac=e[Ou>>2]|0,Hu=+(ac|0),qu=Hu*f,Yu=qu+Hs,Ju=Yu,li=(yu+336|0)+(ih<<2)|0,A[li>>2]=Ju,lc=ih+1|0,vQ=(lc|0)==40,!vQ;)ih=lc;for(ci=j+3648|0,cc=+o1[ci>>3],p$=~~cc,zt=+(p$|0),aA=cc-zt,Vu=$n+2864|0,zu=e[Vu>>2]|0,Zu=Os+(p$<<3)|0,Wu=+o1[Zu>>3],ju=1-aA,gc=Wu*ju,Xu=p$+1|0,eI=Os+(Xu<<3)|0,tI=+o1[eI>>3],iI=tI*aA,lA=iI+gc,Q$=~~lA,rI=+(Q$|0),fc=lA-rI,nI=fc==0,AI=(Q$|0)>0,Em=AI&nI,d=Em?1:fc,qs=Em<<31>>31,N=qs+Q$|0,sI=1-d,uc=N+1|0,rh=0;Ic=(ji+(N*160|0)|0)+(rh<<2)|0,$I=e[Ic>>2]|0,aI=+($I|0),ln=aI*sI,lI=(ji+(uc*160|0)|0)+(rh<<2)|0,cI=e[lI>>2]|0,cn=+(cI|0),gI=cn*d,dc=gI+ln,fI=dc,cA=(zu+336|0)+(rh<<2)|0,A[cA>>2]=fI,Ec=rh+1|0,SQ=(Ec|0)==40,!SQ;)rh=Ec}for(uI=((j+3528|0)+(n<<5)|0)+8|0,Cc=+o1[uI>>3],II=D6+40|0,Xi=e[II>>2]|0,y$=~~Cc,dI=+(y$|0),Bc=Cc-dI,EI=Xi+(y$<<2)|0,CI=e[EI>>2]|0,pc=+(CI|0),BI=1-Bc,mI=pc*BI,pI=y$+1|0,Qc=Xi+(pI<<2)|0,QI=e[Qc>>2]|0,gA=+(QI|0),yI=gA*Bc,wI=yI+mI,kI=wI,w$=Tl+32|0,A[w$>>2]=kI,vI=j+3568|0,k$=+o1[vI>>3],v$=~~k$,SI=+(v$|0),yc=k$-SI,wc=Xi+(v$<<2)|0,DI=e[wc>>2]|0,Sc=+(DI|0),bI=1-yc,Dc=Sc*bI,bc=v$+1|0,_I=Xi+(bc<<2)|0,RI=e[_I>>2]|0,_c=+(RI|0),Rc=_c*yc,xI=Rc+Dc,xc=xI,FI=Vl+32|0,A[FI>>2]=xc,T7||(LI=j+3600|0,Lc=+o1[LI>>3],S$=~~Lc,Mc=+(S$|0),Tc=Lc-Mc,Gc=$n+2860|0,Nc=e[Gc>>2]|0,MI=Xi+(S$<<2)|0,TI=e[MI>>2]|0,NI=+(TI|0),UI=1-Tc,OI=NI*UI,PI=S$+1|0,HI=Xi+(PI<<2)|0,Uc=e[HI>>2]|0,D$=+(Uc|0),qI=D$*Tc,YI=qI+OI,JI=YI,Pc=Nc+32|0,A[Pc>>2]=JI,KI=j+3632|0,Hc=+o1[KI>>3],b$=~~Hc,Ys=+(b$|0),qc=Hc-Ys,VI=$n+2864|0,zI=e[VI>>2]|0,ZI=Xi+(b$<<2)|0,WI=e[ZI>>2]|0,Js=+(WI|0),jI=1-qc,XI=Js*jI,ed=b$+1|0,td=Xi+(ed<<2)|0,id=e[td>>2]|0,rd=+(id|0),nd=rd*qc,Ad=nd+XI,Jc=Ad,od=zI+32|0,A[od>>2]=Jc),$d=((j+3528|0)+(n<<5)|0)+16|0,ad=+o1[$d>>3],Ks=D6+76|0,Kc=e[Ks>>2]|0,ld=D6+60|0,cd=e[ld>>2]|0,hn=D6+56|0,Vc=e[hn>>2]|0,kl?Zc=0:(zc=j+3408|0,gd=+o1[zc>>3],Zc=gd),HC(t,ad,0,Kc,cd,Vc,Zc),hd=j+3576|0,Wc=+o1[hd>>3],jc=e[Ks>>2]|0,fd=D6+64|0,ud=e[fd>>2]|0,Id=e[hn>>2]|0,HC(t,Wc,1,jc,ud,Id,0),T7?(hA=e[l0>>2]|0,Nd=hA+2852|0,lg=e[Nd>>2]|0,Ud=hA+3496|0,F$=+o1[Ud>>3],cg=F$,Od=lg+4|0,A[Od>>2]=cg,Hd=hA+3504|0,qd=+o1[Hd>>3],gg=qd,Yd=lg+8|0,A[Yd>>2]=gg,Jd=hA+2856|0,hg=e[Jd>>2]|0,js=hg+4|0,A[js>>2]=cg,Kd=hg+8|0,A[Kd>>2]=gg,er=hA):(dd=j+3608|0,Ed=+o1[dd>>3],R$=e[Ks>>2]|0,Cd=D6+68|0,Bd=e[Cd>>2]|0,md=e[hn>>2]|0,HC(t,Ed,2,R$,Bd,md,0),pd=j+3640|0,Xc=+o1[pd>>3],Qd=e[Ks>>2]|0,eg=D6+72|0,yd=e[eg>>2]|0,wd=e[hn>>2]|0,HC(t,Xc,3,Qd,yd,wd,0),yr=e[l0>>2]|0,ig=yr+2852|0,rg=e[ig>>2]|0,kd=yr+3496|0,ng=+o1[kd>>3],zs=ng,vd=rg+4|0,A[vd>>2]=zs,Sd=yr+3504|0,Dd=+o1[Sd>>3],Zs=Dd,bd=rg+8|0,A[bd>>2]=Zs,_d=yr+2856|0,sg=e[_d>>2]|0,Rd=sg+4|0,A[Rd>>2]=zs,xd=sg+8|0,A[xd>>2]=Zs,x$=yr+2860|0,Ws=e[x$>>2]|0,Fd=Ws+4|0,A[Fd>>2]=zs,Ld=Ws+8|0,A[Ld>>2]=Zs,Md=yr+2864|0,ag=e[Md>>2]|0,Td=ag+4|0,A[Td>>2]=zs,Gd=ag+8|0,A[Gd>>2]=Zs,er=yr),Vd=+o1[De>>3],zd=D6+152|0,fg=e[zd>>2]|0,ug=~~Vd,Zd=fg+(ug<<3)|0,Ig=e[Zd>>2]|0,dg=(fg+(ug<<3)|0)+4|0,Qi=e[dg>>2]|0,Eg=e[er>>2]|0,Wd=er+4|0,jd=e[Wd>>2]|0,eE=(Eg|0)==(jd|0),s=eE?1:2,L$=er+8|0,Xs=er+12|0,Cg=t+8|0,Bg=t+4|0,hi=0;;){if(tE=t4(1,3208)|0,eo=(er+544|0)+(hi<<2)|0,e[eo>>2]=tE,uA=t4(1,16)|0,iE=(er+32|0)+(hi<<2)|0,e[iE>>2]=uA,to=26304+(hi<<4)|0,e[uA>>2]=e[to>>2]|0,e[uA+4>>2]=e[to+4>>2]|0,e[uA+8>>2]=e[to+8>>2]|0,e[uA+12>>2]=e[to+12>>2]|0,rE=e[L$>>2]|0,T$=(hi|0)<(rE|0),T$||(nE=hi+1|0,e[L$>>2]=nE),AE=(er+288|0)+(hi<<2)|0,e[AE>>2]=0,mg=e[eo>>2]|0,io=Ig+(hi*3208|0)|0,i4(mg|0,io|0,3208)|0,pg=e[Xs>>2]|0,sE=(hi|0)<(pg|0),sE||(oE=hi+1|0,e[Xs>>2]=oE),$E=e[io>>2]|0,Qg=($E|0)>0,Qg)for(jC=0;;){lE=((Ig+(hi*3208|0)|0)+1092|0)+(jC<<2)|0,z7=e[lE>>2]|0,m4=e[l0>>2]|0,Zt=k9(2840)|0,cE=(m4+1568|0)+(z7<<2)|0,e[cE>>2]=Zt,yg=(Qi+(z7<<5)|0)+12|0,wg=e[yg>>2]|0,i4(Zt|0,wg|0,2840)|0,G$=m4+20|0,gE=e[G$>>2]|0,IA=(gE|0)>(z7|0),IA||(hE=z7+1|0,e[G$>>2]=hE),fE=(Qi+(z7<<5)|0)+8|0,kg=e[fE>>2]|0,N$=Zt+8|0,e[N$>>2]=kg,uE=Qi+(z7<<5)|0,vg=e[uE>>2]|0,Sg=(m4+1312|0)+(z7<<2)|0,e[Sg>>2]=vg,Dg=m4+3420|0,U$=e[Dg>>2]|0,bg=(U$|0)==0,dA=Zt+12|0,P$=e[dA>>2]|0,_g=(P$|0)>0;do if(bg){if(_g)for(Rg=(Qi+(z7<<5)|0)+24|0,ro=e[Rg>>2]|0,EE=Zt+24|0,mo=0;;)if(rr=EE+(mo<<2)|0,In=ro+(mo<<4)|0,kt=e[In>>2]|0,vt=(kt|0)==0,vt||(St=e[rr>>2]|0,$o=St|1,e[rr>>2]=$o),ao=(ro+(mo<<4)|0)+4|0,Hg=e[ao>>2]|0,qg=(Hg|0)==0,qg||(k2=e[rr>>2]|0,E5=k2|2,e[rr>>2]=E5),r5=(ro+(mo<<4)|0)+8|0,x2=e[r5>>2]|0,R2=(x2|0)==0,R2||(B2=e[rr>>2]|0,C5=B2|4,e[rr>>2]=C5),u5=(ro+(mo<<4)|0)+12|0,S5=e[u5>>2]|0,G5=(S5|0)==0,G5||(D5=e[rr>>2]|0,H2=D5|8,e[rr>>2]=H2),I5=mo+1|0,s5=e[dA>>2]|0,l5=(I5|0)<(s5|0),l5)mo=I5;else{fo=s5;break}else fo=P$;lo=(Qi+(z7<<5)|0)+16|0,W$=e[lo>>2]|0,Dt=m4+24|0,Sr=e[Dt>>2]|0,j$=(Sr|0)>0,OE=W$;e:do if(j$)for(fC=0;;){if(X$=(m4+1824|0)+(fC<<2)|0,PE=e[X$>>2]|0,ea=(PE|0)==(W$|0),ea){_=fC;break e}if(Yg=fC+1|0,go=(Yg|0)<(Sr|0),go)fC=Yg;else{X9=116;break}}else X9=116;while(!1);if((X9|0)==116&&(X9=0,HE=Sr+1|0,e[Dt>>2]=HE,_=Sr),qE=Zt+20|0,e[qE>>2]=_,YE=(m4+1824|0)+(_<<2)|0,e[YE>>2]=OE,dn=(fo|0)>0,!dn)break;for(Je=(Qi+(z7<<5)|0)+24|0,y4=Zt+280|0,Rr=0,ga=0;;){if(Jg=e[Je>>2]|0,JE=Jg+(ga<<4)|0,ta=e[JE>>2]|0,Kg=(ta|0)==0,KE=ta,Kg)mA=Jg,rC=Rr;else{uo=e[Dt>>2]|0,zE=(uo|0)>0;e:do if(zE)for(aC=0;;){if(ZE=(m4+1824|0)+(aC<<2)|0,WE=e[ZE>>2]|0,jE=(WE|0)==(ta|0),jE){R=aC;break e}if(Vg=aC+1|0,XE=(Vg|0)<(uo|0),XE)aC=Vg;else{X9=123;break}}else X9=123;while(!1);(X9|0)==123&&(X9=0,eC=uo+1|0,e[Dt>>2]=eC,R=uo),tC=Rr+1|0,Wt=y4+(Rr<<2)|0,e[Wt>>2]=R,En=(m4+1824|0)+(R<<2)|0,e[En>>2]=KE,n0=e[Je>>2]|0,mA=n0,rC=tC}if(ia=(mA+(ga<<4)|0)+4|0,pA=e[ia>>2]|0,Z7=(pA|0)==0,QA=pA,Z7)d2=mA,Y4=rC;else{K1=e[Dt>>2]|0,P1=(K1|0)>0;e:do if(P1)for(sC=0;;){if(H1=(m4+1824|0)+(sC<<2)|0,Y1=e[H1>>2]|0,j1=(Y1|0)==(pA|0),j1){D=sC;break e}if(r2=sC+1|0,W1=(r2|0)<(K1|0),W1)sC=r2;else{X9=147;break}}else X9=147;while(!1);(X9|0)==147&&(X9=0,O1=K1+1|0,e[Dt>>2]=O1,D=K1),l2=rC+1|0,z1=y4+(rC<<2)|0,e[z1>>2]=D,h2=(m4+1824|0)+(D<<2)|0,e[h2>>2]=QA,i0=e[Je>>2]|0,d2=i0,Y4=l2}if(A2=(d2+(ga<<4)|0)+8|0,V1=e[A2>>2]|0,g2=(V1|0)==0,$2=V1,g2)_2=d2,aa=Y4;else{t2=e[Dt>>2]|0,a2=(t2|0)>0;e:do if(a2)for(oC=0;;){if(i2=(m4+1824|0)+(oC<<2)|0,o2=e[i2>>2]|0,X1=(o2|0)==(V1|0),X1){Q=oC;break e}if(n2=oC+1|0,f2=(n2|0)<(t2|0),f2)oC=n2;else{X9=153;break}}else X9=153;while(!1);(X9|0)==153&&(X9=0,y2=t2+1|0,e[Dt>>2]=y2,Q=t2),S2=Y4+1|0,w2=y4+(Y4<<2)|0,e[w2>>2]=Q,C2=(m4+1824|0)+(Q<<2)|0,e[C2>>2]=$2,K=e[Je>>2]|0,_2=K,aa=S2}if(M2=(_2+(ga<<4)|0)+12|0,G2=e[M2>>2]|0,u2=(G2|0)==0,K2=G2,u2)am=aa;else{N2=e[Dt>>2]|0,T2=(N2|0)>0;e:do if(T2)for($C=0;;){if(O2=(m4+1824|0)+($C<<2)|0,V2=e[O2>>2]|0,A5=(V2|0)==(G2|0),A5){b=$C;break e}if(P2=$C+1|0,T1=(P2|0)<(N2|0),T1)$C=P2;else{X9=159;break}}else X9=159;while(!1);(X9|0)==159&&(X9=0,j2=N2+1|0,e[Dt>>2]=j2,b=N2),R5=aa+1|0,X2=y4+(aa<<2)|0,e[X2>>2]=b,v5=(m4+1824|0)+(b<<2)|0,e[v5>>2]=K2,am=R5}if(w5=ga+1|0,O5=e[dA>>2]|0,a5=(w5|0)<(O5|0),a5)Rr=am,ga=w5;else break}}else{if(_g)for(IE=(Qi+(z7<<5)|0)+28|0,fn=e[IE>>2]|0,dE=Zt+24|0,Bo=0;;)if(yi=dE+(Bo<<2)|0,CE=fn+(Bo<<4)|0,BE=e[CE>>2]|0,mE=(BE|0)==0,mE||(pE=e[yi>>2]|0,QE=pE|1,e[yi>>2]=QE),yE=(fn+(Bo<<4)|0)+4|0,wi=e[yE>>2]|0,wE=(wi|0)==0,wE||(t6=e[yi>>2]|0,i3=t6|2,e[yi>>2]=i3),o3=(fn+(Bo<<4)|0)+8|0,R3=e[o3>>2]|0,h6=(R3|0)==0,h6||(m3=e[yi>>2]|0,p3=m3|4,e[yi>>2]=p3),X3=(fn+(Bo<<4)|0)+12|0,V3=e[X3>>2]|0,N3=(V3|0)==0,N3||(z5=e[yi>>2]|0,k3=z5|8,e[yi>>2]=k3),c3=Bo+1|0,U3=e[dA>>2]|0,o6=(c3|0)<(U3|0),o6)Bo=c3;else{Og=U3;break}else Og=P$;kE=(Qi+(z7<<5)|0)+20|0,Fg=e[kE>>2]|0,gi=m4+24|0,no=e[gi>>2]|0,H$=(no|0)>0,Lg=Fg;e:do if(H$)for(AC=0;;){if(Mg=(m4+1824|0)+(AC<<2)|0,SE=e[Mg>>2]|0,Tg=(SE|0)==(Fg|0),Tg){m=AC;break e}if(Gg=AC+1|0,DE=(Gg|0)<(no|0),DE)AC=Gg;else{X9=100;break}}else X9=100;while(!1);if((X9|0)==100&&(X9=0,Ug=no+1|0,e[gi>>2]=Ug,m=no),_E=Zt+20|0,e[_E>>2]=m,RE=(m4+1824|0)+(m<<2)|0,e[RE>>2]=Lg,xE=(Og|0)>0,!xE)break;for(EA=(Qi+(z7<<5)|0)+28|0,Ao=Zt+280|0,SA=0,la=0;;){if(so=e[EA>>2]|0,FE=so+(la<<4)|0,q$=e[FE>>2]|0,ME=(q$|0)==0,Pg=q$,ME)BA=so,mn=SA;else{CA=e[gi>>2]|0,TE=(CA|0)>0;e:do if(TE)for(hC=0;;){if(GE=(m4+1824|0)+(hC<<2)|0,Y$=e[GE>>2]|0,J$=(Y$|0)==(q$|0),J$){y=hC;break e}if(oo=hC+1|0,K$=(oo|0)<(CA|0),K$)hC=oo;else{X9=107;break}}else X9=107;while(!1);(X9|0)==107&&(X9=0,V$=CA+1|0,e[gi>>2]=V$,y=CA),kr=SA+1|0,vr=Ao+(SA<<2)|0,e[vr>>2]=y,z$=(m4+1824|0)+(y<<2)|0,e[z$>>2]=Pg,H=e[EA>>2]|0,BA=H,mn=kr}if(Z$=(BA+(la<<4)|0)+4|0,ir=e[Z$>>2]|0,un=(ir|0)==0,NE=ir,un)b5=BA,Cn=mn;else{B5=e[gi>>2]|0,M1=(B5|0)>0;e:do if(M1)for(lC=0;;){if(c5=(m4+1824|0)+(lC<<2)|0,o5=e[c5>>2]|0,Z2=(o5|0)==(ir|0),Z2){v=lC;break e}if(c2=lC+1|0,m5=(c2|0)<(B5|0),m5)lC=c2;else{X9=171;break}}else X9=171;while(!1);(X9|0)==171&&(X9=0,e5=B5+1|0,e[gi>>2]=e5,v=B5),n5=mn+1|0,g5=Ao+(mn<<2)|0,e[g5>>2]=v,J2=(m4+1824|0)+(v<<2)|0,e[J2>>2]=NE,V=e[EA>>2]|0,b5=V,Cn=n5}if(h5=(b5+(la<<4)|0)+8|0,W2=e[h5>>2]|0,$5=(W2|0)==0,F2=W2,$5)h3=b5,Bn=Cn;else{p5=e[gi>>2]|0,q5=(p5|0)>0;e:do if(q5)for(cC=0;;){if(e3=(m4+1824|0)+(cC<<2)|0,d5=e[e3>>2]|0,f3=(d5|0)==(W2|0),f3){S=cC;break e}if(g3=cC+1|0,t3=(g3|0)<(p5|0),t3)cC=g3;else{X9=177;break}}else X9=177;while(!1);(X9|0)==177&&(X9=0,A3=p5+1|0,e[gi>>2]=A3,S=p5),E3=Cn+1|0,F5=Ao+(Cn<<2)|0,e[F5>>2]=S,V5=(m4+1824|0)+(S<<2)|0,e[V5>>2]=F2,s0=e[EA>>2]|0,h3=s0,Bn=E3}if(y3=(h3+(la<<4)|0)+12|0,B3=e[y3>>2]|0,q3=(B3|0)==0,M3=B3,q3)x9=Bn;else{Q3=e[gi>>2]|0,j5=(Q3|0)>0;e:do if(j5)for(gC=0;;){if(j3=(m4+1824|0)+(gC<<2)|0,_3=e[j3>>2]|0,T3=(_3|0)==(B3|0),T3){w=gC;break e}if($3=gC+1|0,a3=($3|0)<(Q3|0),a3)gC=$3;else{X9=183;break}}else X9=183;while(!1);(X9|0)==183&&(X9=0,l3=Q3+1|0,e[gi>>2]=l3,w=Q3),C3=Bn+1|0,Y5=Ao+(Bn<<2)|0,e[Y5>>2]=w,P5=(m4+1824|0)+(w<<2)|0,e[P5>>2]=M3,x9=C3}if(y5=la+1|0,G3=e[dA>>2]|0,L5=(y5|0)<(G3|0),L5)SA=x9,la=y5;else break}}while(!1);zg=m4+3480|0,Zg=+o1[zg>>3],Eo=Zg*1e3,yA=(m4+1056|0)+(hi<<2)|0,kA=e[yA>>2]|0,iC=e[Cg>>2]|0,vA=+(iC|0),nr=vA*.5,Wg=m4+(hi<<2)|0,Dr=e[Wg>>2]|0,jt=Dr>>1,ra=Eo>nr,cm=ra?nr:Eo,na=cm/nr,Oi=+(jt|0),sa=Oi*na,oa=~~sa,br=kA+1116|0,e[br>>2]=oa,A6=(Qi+(z7<<5)|0)+4|0,Co=e[A6>>2]|0;do if((Co|0)==2)Xg=250;else if((Co|0)==1){if(_r=e[Dg>>2]|0,jg=(_r|0)==0,Qe=m4+2996|0,$a=m4+2968|0,GQ=jg?$a:Qe,TQ=e[GQ>>2]|0,MQ=+(TQ|0),gm=MQ*1e3,m8=gm>nr,!m8){Xg=gm;break}Xg=nr}else Xg=cm;while(!1);f0=e[Sg>>2]|0,Q0=(f0|0)==2;do if(Q0){if(d0=m4+12|0,y0=e[d0>>2]|0,h0=(y0|0)>0,h0)for(WC=0;;){if(E0=(m4+544|0)+(WC<<2)|0,C0=e[E0>>2]|0,u0=e[C0>>2]|0,k0=(u0|0)>0,k0)for(IC=0;;){J0=(C0+1092|0)+(IC<<2)|0,m0=e[J0>>2]|0,x0=(m0|0)==(z7|0);do if(x0){if(F0=e[Bg>>2]|0,M0=(F0|0)>0,M0)lm=0,eB=0;else{nC=0;break}for(;;)if(G0=(C0+4|0)+(eB<<2)|0,p0=e[G0>>2]|0,H0=(p0|0)==(IC|0),R0=H0&1,P=R0+lm|0,S0=eB+1|0,yQ=(S0|0)==(F0|0),yQ){nC=P;break}else lm=P,eB=S0}else nC=0;while(!1);if(L0=IC+1|0,q0=(L0|0)<(u0|0),N0=(nC|0)==0,V0=q0&N0,V0)IC=L0;else{VC=nC;break}}else VC=0;if(T0=WC+1|0,U0=(T0|0)<(y0|0),r1=(VC|0)==0,O0=U0&r1,O0)WC=T0;else{KC=VC;break}}else KC=0;if(e1=Xg/nr,v0=+(KC|0),i1=v0*Oi,a1=i1*e1,f1=e[N$>>2]|0,g1=+(f1|0),l1=a1/g1,A1=l1+.9,$1=~~A1,n1=i5($1,f1)|0,s1=Zt+4|0,e[s1>>2]=n1,z0=i5(KC,jt)|0,I1=(n1|0)>(z0|0),!I1){U=s1,Z1=n1,v1=f1;break}E1=(z0|0)%(f1|0)&-1,u1=z0-E1|0,e[s1>>2]=u1,U=s1,Z1=u1,v1=f1}else{if(d1=Xg/nr,m1=d1*Oi,p1=e[N$>>2]|0,Q1=+(p1|0),D1=m1/Q1,_1=D1+.9,y1=~~_1,k1=i5(y1,p1)|0,L1=Zt+4|0,e[L1>>2]=k1,N1=(k1|0)>(jt|0),!N1){U=L1,Z1=k1,v1=p1;break}w1=(jt|0)%(p1|0)&-1,U1=jt-w1|0,e[L1>>2]=U1,U=L1,Z1=U1,v1=p1}while(!1);if(G1=(Z1|0)==0,G1&&(e[U>>2]=v1),u3=jC+1|0,w6=e[io>>2]|0,k6=(u3|0)<(w6|0),k6)jC=u3;else break}if(B6=hi+1|0,z3=(B6|0)<(s|0),z3)hi=B6;else break}return $6=j+3428|0,m6=e[$6>>2]|0,_6=(m6|0)>0,_6?(Y6=t+16|0,e[Y6>>2]=m6):(C6=e[l0>>2]|0,v3=C6+3396|0,W3=e[v3>>2]|0,f6=C6+3400|0,O3=+o1[f6>>3],S3=~~O3,P3=+(S3|0),Y3=O3-P3,v6=W3+4|0,i6=e[v6>>2]|0,r3=(i6|0)==0,r3?p=-1:(O6=e[Bg>>2]|0,u6=i6+(S3<<3)|0,D3=+o1[u6>>3],T6=1-Y3,e6=D3*T6,p6=S3+1|0,R6=i6+(p6<<3)|0,K6=+o1[R6>>3],I6=K6*Y3,J6=I6+e6,x3=+(O6|0),G6=J6*x3,NQ=~~G6,p=NQ),j6=t+16|0,e[j6>>2]=p),r9=j+3424|0,x6=e[r9>>2]|0,N6=t+20|0,e[N6>>2]=x6,S6=j+3440|0,V6=e[S6>>2]|0,Q6=t+12|0,e[Q6>>2]=V6,F6=(m6|0)==0,F6?A0=0:(F3=j+3444|0,X6=e[F3>>2]|0,A9=+(X6|0),W6=+(m6|0),g9=A9/W6,h9=~~g9,A0=h9),f9=t+24|0,e[f9>>2]=A0,s9=j+3420|0,o9=e[s9>>2]|0,L9=(o9|0)==0,L9?(C=0,C|0):(d6=e[$6>>2]|0,e9=j+3360|0,e[e9>>2]=d6,M9=e[r9>>2]|0,u9=j+3364|0,e[u9>>2]=M9,u4=e[S6>>2]|0,r4=j+3368|0,e[r4>>2]=u4,l4=j+3444|0,T9=e[l4>>2]|0,K9=j+3372|0,e[K9>>2]=T9,v9=j+3448|0,I9=+o1[v9>>3],t9=j+3376|0,o1[t9>>3]=I9,I4=j+3432|0,k4=+o1[I4>>3],n4=j+3384|0,o1[n4>>3]=k4,C=0,C|0)}function NS(t,n,s,$){t=t|0,n=n|0,s=s|0,$=+$;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0;if(P=B,I=(s|0)<1,I)f=-131;else if(C=t+28|0,Q=e[C>>2]|0,b=$,R=b+1e-7,_=R,L=!(_>=1),d=L?_:.9998999834060669,M=Q+3416|0,A[M>>2]=d,T=d,G=Q+3400|0,p=US(n,s,T,0,G)|0,m=Q+3396|0,e[m>>2]=p,v=(p|0)==0,v)f=-130;else return OS(t,n,s),S=Q+3420|0,e[S>>2]=0,w=Q+3464|0,e[w>>2]=1,y=GS(t)|0,D=(y|0)==0,D?(c=0,c|0):(XB(t),c=y,c|0);return XB(t),c=f,c|0}function PC(t,n,s,$,c,f){t=t|0,n=+n,s=s|0,$=$|0,c=c|0,f=f|0;var d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0;for(m1=B,d=~~n,I=+(d|0),R=n-I,J=t+28|0,i0=e[J>>2]|0,d0=(i0+2852|0)+(s<<2)|0,F0=e[d0>>2]|0,V0=$+(d*20|0)|0,g1=e[V0>>2]|0,h1=+(g1|0),C=1-R,p=h1*C,m=d+1|0,v=$+(m*20|0)|0,S=e[v>>2]|0,w=+(S|0),y=w*R,D=y+p,Q=D,b=F0+12|0,A[b>>2]=Q,_=($+(d*20|0)|0)+4|0,L=e[_>>2]|0,M=+(L|0),T=M*C,G=($+(m*20|0)|0)+4|0,N=e[G>>2]|0,P=+(N|0),z=P*R,Y=z+T,t0=Y,W=F0+16|0,A[W>>2]=t0,e0=($+(d*20|0)|0)+8|0,H=e[e0>>2]|0,X=+(H|0),U=X*C,o0=($+(m*20|0)|0)+8|0,Z=e[o0>>2]|0,V=+(Z|0),s0=V*R,n0=s0+U,r0=n0,K=F0+20|0,A[K>>2]=r0,c0=($+(d*20|0)|0)+12|0,A0=+A[c0>>2],l0=A0,j=l0*C,$0=($+(m*20|0)|0)+12|0,g0=+A[$0>>2],f0=g0,Q0=f0*R,y0=Q0+j,h0=y0,E0=F0+24|0,A[E0>>2]=h0,C0=($+(d*20|0)|0)+16|0,u0=+A[C0>>2],k0=u0,J0=k0*C,D0=($+(m*20|0)|0)+16|0,m0=+A[D0>>2],x0=m0,M0=x0*R,G0=M0+J0,p0=G0,H0=F0+28|0,A[H0>>2]=p0,R0=c+(d<<2)|0,S0=e[R0>>2]|0,L0=+(S0|0),Y0=L0*C,q0=c+(m<<2)|0,N0=e[q0>>2]|0,T0=+(N0|0),U0=T0*R,r1=U0+Y0,O0=r1,e1=F0+496|0,A[e1>>2]=O0,u1=0;v0=(f+(d*68|0)|0)+(u1<<2)|0,i1=e[v0>>2]|0,c1=+(i1|0),a1=c1*C,f1=(f+(m*68|0)|0)+(u1<<2)|0,l1=e[f1>>2]|0,A1=+(l1|0),$1=A1*R,n1=$1+a1,s1=n1,z0=(F0+36|0)+(u1<<2)|0,A[z0>>2]=s1,I1=u1+1|0,E1=(I1|0)==17,!E1;)u1=I1}function HC(t,n,s,$,c,f,d){t=t|0,n=+n,s=s|0,$=$|0,c=c|0,f=f|0,d=+d;var I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0;for(w2=B,w=~~n,y=+(w|0),o0=n-y,j=t+28|0,k0=e[j>>2]|0,S0=(k0+2852|0)+(s<<2)|0,v0=e[S0>>2]|0,z0=$+(w<<2)|0,y1=e[z0>>2]|0,P1=+(y1|0),D=1-o0,z=P1*D,Y=w+1|0,t0=$+(Y<<2)|0,J=e[t0>>2]|0,W=+(J|0),e0=W*o0,H=e0+z,X=H,U=v0+108|0,A[U>>2]=X,Z=f+(s*12|0)|0,V=e[Z>>2]|0,s0=v0+120|0,e[s0>>2]=V,n0=(f+(s*12|0)|0)+4|0,i0=e[n0>>2]|0,r0=v0+124|0,e[r0>>2]=i0,K=(f+(s*12|0)|0)+8|0,c0=e[K>>2]|0,A0=v0+128|0,e[A0>>2]=c0,t2=0;;)if(l0=(c+(w*204|0)|0)+(t2<<2)|0,$0=e[l0>>2]|0,g0=+($0|0),f0=g0*D,Q0=(c+(Y*204|0)|0)+(t2<<2)|0,d0=e[Q0>>2]|0,y0=+(d0|0),h0=y0*o0,E0=h0+f0,C0=E0,u0=(v0+132|0)+(t2<<2)|0,A[u0>>2]=C0,J0=t2+1|0,V1=(J0|0)==17,V1){a2=0;break}else t2=J0;for(;;)if(_1=((c+(w*204|0)|0)+68|0)+(a2<<2)|0,k1=e[_1>>2]|0,x1=+(k1|0),L1=x1*D,N1=((c+(Y*204|0)|0)+68|0)+(a2<<2)|0,w1=e[N1>>2]|0,U1=+(w1|0),Z1=U1*o0,G1=Z1+L1,v1=G1,K1=(v0+200|0)+(a2<<2)|0,A[K1>>2]=v1,H1=a2+1|0,g2=(H1|0)==17,g2){i2=0;break}else a2=H1;for(;q1=((c+(w*204|0)|0)+136|0)+(i2<<2)|0,Y1=e[q1>>2]|0,j1=+(Y1|0),r2=j1*D,W1=((c+(Y*204|0)|0)+136|0)+(i2<<2)|0,O1=e[W1>>2]|0,l2=+(O1|0),z1=l2*o0,h2=z1+r2,Q=h2,b=(v0+268|0)+(i2<<2)|0,A[b>>2]=Q,R=i2+1|0,$2=(R|0)==17,!$2;)i2=R;for(_=v0+132|0,L=+A[_>>2],p0=L+6,M=v0+132|0,T=L,G=T+d,N=G,P=N>2]=y2,D0=1;I=(v0+132|0)+(D0<<2)|0,m=+A[I>>2],m0=(v0+132|0)+(D0<<2)|0,x0=m,F0=x0+d,M0=F0,G0=M0>2]=o2,H0=D0+1|0,A2=(H0|0)==17,!A2;)D0=H0;for(R0=v0+200|0,L0=+A[R0>>2],Y0=L0+6,q0=v0+200|0,N0=L0,V0=N0+d,T0=V0,U0=T0>2]=n2,r1=1;C=(v0+200|0)+(r1<<2)|0,v=+A[C>>2],O0=(v0+200|0)+(r1<<2)|0,e1=v,i1=e1+d,c1=i1,a1=c1>2]=X1,f1=r1+1|0,d2=(f1|0)==17,!d2;)r1=f1;for(g1=v0+268|0,l1=+A[g1>>2],A1=l1+6,$1=v0+268|0,n1=l1,s1=n1+d,I1=s1,h1=I1>2]=e2,E1=1;p=(v0+268|0)+(E1<<2)|0,S=+A[p>>2],u1=(v0+268|0)+(E1<<2)|0,d1=S,m1=d1+d,p1=m1,Q1=p1>2]=f2,D1=E1+1|0,s2=(D1|0)==17,!s2;)E1=D1}function US(t,n,s,$,c){t=t|0,n=n|0,s=+s,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0;Q1=B,w=($|0)==0;e:do if(w){for(H=26336,z0=0;;){if(e0=e[H>>2]|0,X=e0+12|0,U=e[X>>2]|0,o0=(U|0)==-1,V=(U|0)==(t|0),u1=o0|V,u1&&(s0=e0+16|0,n0=e[s0>>2]|0,i0=(n0|0)>(n|0),!i0&&(r0=e0+20|0,K=e[r0>>2]|0,c0=(K|0)<(n|0),!c0&&(A0=e[e0>>2]|0,l0=e0+8|0,j=e[l0>>2]|0,g0=+o1[j>>3],f0=g0>s,!f0&&(y0=j+(A0<<3)|0,h0=+o1[y0>>3],E0=h0>2]|0,J0=Z+12|0,L0=e[J0>>2]|0,i1=(L0|0)==-1,A1=(L0|0)==(t|0),d1=i1|A1,d1&&($1=Z+16|0,D=e[$1>>2]|0,Q=(D|0)>(n|0),!Q&&(b=Z+20|0,R=e[b>>2]|0,_=(R|0)<(n|0),!_&&(L=e[Z>>2]|0,M=Z+4|0,T=e[M>>2]|0,G=+o1[T>>3],N=P>3],t0=P>Y,!t0))))){d=P,I=L,C=$0,p=T,l1=G;break e}if(s1=I1+1|0,J=26336+(s1<<2)|0,W=(s1|0)==17,W){f=0;break}else $0=J,I1=s1}return f|0}while(!1);C0=(I|0)>0;e:do if(C0)for(k0=l1,E1=0;;){if(u0=!(d>=k0),S=E1+1|0,!u0&&(D0=p+(S<<3)|0,m0=+o1[D0>>3],x0=d>3],k0=v,E1=S}else h1=0;while(!1);return M0=(h1|0)==(I|0),M0?(G0=+(I|0),p0=G0+-.001,m1=p0):(H0=p+(h1<<3)|0,R0=+o1[H0>>3],S0=R0,Y0=h1+1|0,q0=p+(Y0<<3)|0,N0=+o1[q0>>3],V0=N0,T0=S0,U0=d-T0,r1=V0-S0,O0=r1,e1=U0/O0,v0=e1,c1=+(h1|0),a1=v0+c1,f1=a1,m1=f1),o1[c>>3]=m1,g1=e[C>>2]|0,f=g1,f|0}function OS(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0;v0=B,I=t+28|0,C=e[I>>2]|0,_=C+3396|0,W=e[_>>2]|0,e[t>>2]=0,r0=t+4|0,e[r0>>2]=n,y0=t+8|0,e[y0>>2]=s,M0=C+3456|0,e[M0>>2]=1,T0=C+3460|0,e[T0>>2]=1,r1=C+3400|0,O0=+o1[r1>>3],p=~~O0,m=+(p|0),v=O0-m,S=C+3472|0,o1[S>>3]=O0,w=C+3488|0,y=e[w>>2]|0,D=(y|0)==0,D?(Q=W+120|0,b=e[Q>>2]|0,R=b+(p<<3)|0,L=+o1[R>>3],M=1-v,T=L*M,G=p+1|0,N=b+(G<<3)|0,P=+o1[N>>3],z=P*v,Y=z+T,t0=C+3480|0,o1[t0>>3]=Y,c=G,f=M):($=1-v,d=p+1|0,c=d,f=$),J=W+112|0,e0=e[J>>2]|0,H=e0+(p<<2)|0,X=e[H>>2]|0,U=+(X|0),o0=U*f,Z=e0+(c<<2)|0,V=e[Z>>2]|0,s0=+(V|0),n0=s0*v,i0=n0+o0,K=C+3496|0,o1[K>>3]=i0,c0=W+116|0,A0=e[c0>>2]|0,l0=A0+(p<<2)|0,j=e[l0>>2]|0,$0=+(j|0),g0=$0*f,f0=A0+(c<<2)|0,Q0=e[f0>>2]|0,d0=+(Q0|0),h0=d0*v,E0=h0+g0,C0=C+3504|0,o1[C0>>3]=E0,u0=C+3512|0,o1[u0>>3]=-6,k0=C+3520|0,o1[k0>>3]=O0,J0=C+3528|0,o1[J0>>3]=O0,D0=C+3536|0,o1[D0>>3]=O0,m0=C+3544|0,o1[m0>>3]=O0,x0=C+3552|0,o1[x0>>3]=O0,F0=C+3560|0,o1[F0>>3]=O0,G0=C+3568|0,o1[G0>>3]=O0,p0=C+3576|0,o1[p0>>3]=O0,H0=C+3584|0,o1[H0>>3]=O0,R0=C+3592|0,o1[R0>>3]=O0,S0=C+3600|0,o1[S0>>3]=O0,L0=C+3608|0,o1[L0>>3]=O0,Y0=C+3616|0,o1[Y0>>3]=O0,q0=C+3624|0,o1[q0>>3]=O0,N0=C+3632|0,o1[N0>>3]=O0,V0=C+3640|0,o1[V0>>3]=O0,U0=C+3648|0,o1[U0>>3]=O0}function PS(t,n,s,$,c,f){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0;var d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0;if(N0=B,I=(c|0)!=0,C=I?$:0,_=I?f:0,W=n+(C<<2)|0,r0=e[W>>2]|0,y0=520336+(r0<<2)|0,k0=e[y0>>2]|0,J0=n+(_<<2)|0,D0=e[J0>>2]|0,m0=520336+(D0<<2)|0,p=e[m0>>2]|0,m=s+(c<<2)|0,v=e[m>>2]|0,S=s+(C<<2)|0,w=e[S>>2]|0,y=s+(_<<2)|0,D=e[y>>2]|0,Q=(v|0)/4&-1,b=(w|0)/4&-1,R=Q-b|0,L=(w|0)/2&-1,M=R+L|0,T=(v|0)/2&-1,G=T+Q|0,d=(D|0)/-4&-1,N=G+d|0,P=(D|0)/2&-1,z=N+P|0,Y=(R|0)>0,Y?(t0=Q-b|0,J=t0<<2,Ae(t|0,0,J|0)|0,F0=R):F0=0,e0=(F0|0)<(M|0),e0)for(H=Q+L|0,X=H-F0|0,U=X-b|0,M0=F0,H0=0;s0=k0+(H0<<2)|0,n0=+A[s0>>2],i0=t+(M0<<2)|0,K=+A[i0>>2],c0=K*n0,A[i0>>2]=c0,A0=M0+1|0,l0=H0+1|0,x0=(l0|0)==(U|0),!x0;)M0=A0,H0=l0;if(o0=(D|0)>1,o0){for(Z=N+1|0,V=(z|0)>(Z|0),p0=N,S0=P;R0=S0+-1|0,f0=p+(R0<<2)|0,Q0=+A[f0>>2],d0=t+(p0<<2)|0,h0=+A[d0>>2],E0=h0*Q0,A[d0>>2]=E0,C0=p0+1|0,u0=(C0|0)<(z|0),u0;)p0=C0,S0=R0;Y0=V?z:Z,G0=Y0}else G0=N;j=(v|0)>(G0|0),j&&(L0=t+(G0<<2)|0,$0=v-G0|0,g0=$0<<2,Ae(L0|0,0,g0|0)|0)}function HS(t,n,s){t=t|0,n=+n,s=+s;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0;if(K=B,B=B+64|0,i0=K+32|0,n0=K,$=k9(688)|0,c=$+408|0,iS(c),D=~~n,NS(c,t,D,s)|0,z=$+440|0,Xv(z),eS(z,553008,553016),X=$+456|0,_v(X,c)|0,U=$+568|0,Dv(X,U)|0,o0=Np(0)|0,ZS(o0),Z=WS()|0,Bv($,Z)|0,V=$+680|0,e[V>>2]=0,s0=$+684|0,e[s0>>2]=0,f=$+360|0,rS(X,z,f,i0,n0)|0,UC($,f)|0,UC($,i0)|0,UC($,n0)|0,d=$+392|0,I=Op($,d)|0,C=(I|0)==0,C)return B=K,$|0;for(p=$+396|0,m=$+404|0,v=$+400|0;S=e[s0>>2]|0,w=e[p>>2]|0,y=w+S|0,Q=e[m>>2]|0,b=y+Q|0,R=(b|0)==0,R||(M=e[V>>2]|0,T=Gi(M,b)|0,e[V>>2]=T,G=e[s0>>2]|0,N=T+G|0,P=e[d>>2]|0,Y=e[p>>2]|0,i4(N|0,P|0,Y|0)|0,t0=Y+G|0,e[s0>>2]=t0,J=T+t0|0,W=e[v>>2]|0,e0=e[m>>2]|0,i4(J|0,W|0,e0|0)|0,H=e0+t0|0,e[s0>>2]=H),_=Op($,d)|0,L=(_|0)==0,!L;);return B=K,$|0}function qS(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0;C=B,mv(t)|0,n=t+568|0,bv(n)|0,s=t+456|0,Yp(s),$=t+440|0,tS($),c=t+408|0,XB(c),f=t+680|0,d=e[f>>2]|0,I2(d),I2(t)}function YS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0;return f=B,s=t+456|0,$=Jp(s,n)|0,$|0}function JS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0;if(K=B,s=t+456|0,Rv(s,n)|0,$=t+568|0,y=Kp(s,$)|0,P=(y|0)==1,!!P)for(o0=t+360|0,Z=t+392|0,V=t+684|0,s0=t+396|0,n0=t+404|0,i0=t+680|0,c=t+392|0,f=t+400|0;;){if(wv($,0)|0,Sv($)|0,C=qp(s,o0)|0,p=(C|0)==0,!p)for(;;){if(UC(t,o0)|0,S=Pp(t,Z)|0,w=(S|0)==0,!w)for(;D=e[V>>2]|0,Q=e[s0>>2]|0,b=Q+D|0,R=e[n0>>2]|0,_=b+R|0,L=(_|0)==0,L||(G=e[i0>>2]|0,N=Gi(G,_)|0,e[i0>>2]=N,z=e[V>>2]|0,Y=N+z|0,t0=e[c>>2]|0,J=e[s0>>2]|0,i4(Y|0,t0|0,J|0)|0,W=J+z|0,e[V>>2]=W,e0=N+W|0,H=e[f>>2]|0,X=e[n0>>2]|0,i4(e0|0,H|0,X|0)|0,U=X+W|0,e[V>>2]=U),M=Pp(t,Z)|0,T=(M|0)==0,!T;);if(m=qp(s,o0)|0,v=(m|0)==0,v)break}if(d=Kp(s,$)|0,I=(d|0)==1,!I)break}}function KS(t){t=t|0;var n=0,s=0,$=0,c=0;return c=B,n=t+684|0,s=e[n>>2]|0,s|0}function VS(t){t=t|0;var n=0,s=0,$=0,c=0,f=0;return f=B,n=t+684|0,e[n>>2]=0,s=t+680|0,$=e[s>>2]|0,$|0}function qC(t,n){t=+t,n=n|0;var s=0,$=0,c=0;return c=B,s=+zS(t,n),+s}function _h(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0;if(R3=B,B=B+688|0,i3=R3+424|0,K5=R3+192|0,j5=R3,X=i5(s,n)|0,U=(X|0)==0,U){B=R3;return}for(J=X-s|0,q1=j5+4|0,e[q1>>2]=s,e[j5>>2]=s,e2=s,f5=s,y3=2;s2=e2+s|0,T2=s2+f5|0,x5=j5+(y3<<2)|0,e[x5>>2]=T2,k5=T2>>>0>>0,t5=y3+1|0,k5;)y2=f5,f5=T2,y3=t5,e2=y2;if(o0=0-s|0,j=t+J|0,k0=(J|0)>0,k0)for(S0=(s|0)==0,v0=j,y1=1,V2=0,F5=t,N5=1;;){z0=y1&3,K1=(z0|0)==3;do if(K1){e[K5>>2]=F5,P1=(N5|0)>1;e:do if(P1){for(m=N5,Q=F5,O1=F5,Z5=1;;){if(H1=Q+o0|0,Y1=m+-2|0,j1=j5+(Y1<<2)|0,r2=e[j1>>2]|0,L5=r2+s|0,W=0-L5|0,W1=Q+W|0,l2=lt[$&15](O1,W1)|0,z1=(l2|0)>-1,z1&&(h2=lt[$&15](O1,H1)|0,A2=(h2|0)>-1,A2)){h3=Z5;break}if(d2=lt[$&15](W1,H1)|0,V1=(d2|0)>-1,g2=Z5+1|0,$2=K5+(Z5<<2)|0,V1?(e[$2>>2]=W1,t2=m+-1|0,f=W1,C=t2):(e[$2>>2]=H1,f=H1,C=Y1),a2=(C|0)>1,!a2){h3=g2;break}P=e[K5>>2]|0,m=C,Q=f,O1=P,Z5=g2}if(i2=(h3|0)<2,!i2&&(o2=K5+(h3<<2)|0,e[o2>>2]=i3,!S0))for(y=s,N2=i3;;){for(u2=y>>>0>256,n2=u2?256:y,K2=e[K5>>2]|0,i4(N2|0,K2|0,n2|0)|0,_2=K2,q3=0;S2=K5+(q3<<2)|0,w2=q3+1|0,C2=K5+(w2<<2)|0,M2=e[C2>>2]|0,i4(_2|0,M2|0,n2|0)|0,G2=_2+n2|0,e[S2>>2]=G2,t3=(w2|0)==(h3|0),!t3;)_2=M2,q3=w2;if(X1=(y|0)==(n2|0),X1)break e;f2=y-n2|0,Y=e[o2>>2]|0,y=f2,N2=Y}}while(!1);q2=y1>>>2,O2=V2<<30,A5=q2|O2,P2=V2>>>2,T1=N5+2|0,r0=A5,v1=P2,P5=T1}else{if(j2=N5+-1|0,R5=j5+(j2<<2)|0,X2=e[R5>>2]|0,v5=F5,z2=v0-v5|0,w5=X2>>>0>>0,w5){e[K5>>2]=F5,O5=(N5|0)>1;e:do if(O5){for(v=N5,b=F5,R2=F5,Q3=1;;){if(a5=b+o0|0,k2=v+-2|0,E5=j5+(k2<<2)|0,r5=e[E5>>2]|0,t6=r5+s|0,e0=0-t6|0,x2=b+e0|0,B2=lt[$&15](R2,x2)|0,C5=(B2|0)>-1,C5&&(u5=lt[$&15](R2,a5)|0,S5=(u5|0)>-1,S5)){B3=Q3;break}if(G5=lt[$&15](x2,a5)|0,D5=(G5|0)>-1,H2=Q3+1|0,I5=K5+(Q3<<2)|0,D5?(e[I5>>2]=x2,s5=v+-1|0,d=x2,p=s5):(e[I5>>2]=a5,d=a5,p=k2),l5=(p|0)>1,!l5){B3=H2;break}z=e[K5>>2]|0,v=p,b=d,R2=z,Q3=H2}if(B5=(B3|0)<2,!B5&&(M1=K5+(B3<<2)|0,e[M1>>2]=i3,!S0))for(D=s,W2=i3;;){for(h5=D>>>0>256,o5=h5?256:D,b5=e[K5>>2]|0,i4(W2|0,b5|0,o5|0)|0,g5=b5,M3=0;c2=K5+(M3<<2)|0,m5=M3+1|0,e5=K5+(m5<<2)|0,n5=e[e5>>2]|0,i4(g5|0,n5|0,o5|0)|0,J2=g5+o5|0,e[c2>>2]=J2,A3=(m5|0)==(B3|0),!A3;)g5=n5,M3=m5;if(c5=(D|0)==(o5|0),c5)break e;Z2=D-o5|0,t0=e[M1>>2]|0,D=Z2,W2=t0}}while(!1)}else YC(F5,s,$,y1,V2,N5,0,j5);if($5=(N5|0)==1,$5){F2=V2<<1,p5=y1>>>31,q5=p5|F2,e3=y1<<1,r0=e3,v1=q5,P5=0;break}else{d5=j2>>>0>31,f3=N5+-33|0,c=d5?0:y1,R=d5?y1:V2,_=d5?f3:j2,g3=R<<_,Z=32-_|0,V=c>>>Z,s0=V|g3,n0=c<<_,r0=n0,v1=s0,P5=1;break}}while(!1);if(i0=r0|1,K=F5+s|0,c0=K>>>0>>0,c0)y1=i0,V2=v1,F5=K,N5=P5;else{T=v1,G=i0,E3=K,Y5=P5;break}}else T=0,G=1,E3=t,Y5=1;if(YC(E3,s,$,G,T,Y5,0,j5),A0=(Y5|0)==1,l0=(G|0)==1,C3=l0&A0,$0=(T|0)==0,l3=$0&C3,l3){B=R3;return}else Q0=G,m0=T,V5=E3,y5=Y5;for(;;){if(g0=(y5|0)<2,!g0){U0=m0<<2,r1=Q0>>>30,O0=r1|U0,e1=y5+-2|0,i1=Q0<<1,c1=i1&2147483646,a1=r1<<31,f1=c1|a1,g1=f1^3,l1=O0>>>1,A1=j5+(e1<<2)|0,$1=e[A1>>2]|0,G3=$1+s|0,H=0-G3|0,n1=V5+H|0,s1=y5+-1|0,YC(n1,s,$,g1,l1,s1,1,j5),I1=l1<<1,h1=r1&1,E1=I1|h1,u1=g1<<1,d1=u1|1,m1=V5+o0|0,YC(m1,s,$,d1,E1,e1,1,j5),Q0=d1,m0=E1,V5=m1,y5=e1;continue}f0=Q0+-1|0,d0=(f0|0)==0;do if(d0)T0=32,o3=56;else{if(y0=f0&1,h0=(y0|0)==0,h0){for(S=f0,j3=0;;)if(E0=j3+1|0,C0=S>>>1,u0=C0&1,J0=(u0|0)==0,J0)S=C0,j3=E0;else{L=E0;break}D0=(L|0)==0,D0?o3=51:q0=L}else o3=51;if((o3|0)==51){if(o3=0,x0=(m0|0)==0,x0){T0=64,o3=56;break}if(F0=m0&1,M0=(F0|0)==0,M0)w=m0,_3=0;else{I=0,Q1=Q0,k1=m0,w1=0;break}for(;;)if(G0=_3+1|0,p0=w>>>1,H0=p0&1,R0=(H0|0)==0,R0)w=p0,_3=G0;else{M=G0,T3=_3;break}if(L0=T3+33|0,Y0=(M|0)==0,Y0){I=0,Q1=Q0,k1=m0,w1=0;break}else q0=L0}N0=q0>>>0>31,N0?(T0=q0,o3=56):(I=q0,Q1=Q0,k1=m0,w1=q0)}while(!1);if((o3|0)==56&&(o3=0,V0=T0+-32|0,I=V0,Q1=m0,k1=0,w1=T0),p1=Q1>>>I,D1=32-I|0,_1=k1<>>I,N1=w1+y5|0,N=V5+o0|0,U1=(N1|0)==1,Z1=(x1|0)==1,$3=Z1&U1,G1=(L1|0)==0,a3=G1&$3,a3)break;Q0=x1,m0=L1,V5=N,y5=N1}B=R3}function YC(t,n,s,$,c,f,d,I){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0,I=I|0;var C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0;B2=B,B=B+720|0,x2=B2+456|0,O2=B2+228|0,T2=B2,e[T2>>2]=t,U=0-n|0,o0=($|0)!=1,m0=(c|0)!=0,q0=m0|o0;e:do if(q0)if(a1=I+(f<<2)|0,E1=e[a1>>2]|0,L1=0-E1|0,Y1=t+L1|0,V1=lt[s&15](Y1,t)|0,y2=(V1|0)<1,y2)m=t,R=f,N=d,P2=1,R2=18;else for(w=t,T=f,P=d,u0=Y1,U0=c,v5=1,k2=$;;){if(Z=(P|0)==0,$0=(T|0)>1,a5=Z&$0,a5){if(y0=w+U|0,h0=T+-2|0,E0=I+(h0<<2)|0,C0=e[E0>>2]|0,k0=lt[s&15](y0,u0)|0,J0=(k0|0)>-1,J0){v=w,_=T,j2=v5;break e}if(E5=C0+n|0,H=0-E5|0,D0=w+H|0,x0=lt[s&15](D0,u0)|0,F0=(x0|0)>-1,F0){v=w,_=T,j2=v5;break e}}M0=v5+1|0,G0=T2+(v5<<2)|0,e[G0>>2]=u0,p0=k2+-1|0,H0=(p0|0)==0;do if(H0)s1=32,R2=15;else{if(R0=p0&1,S0=(R0|0)==0,S0){for(Q=p0,f5=0;;)if(L0=f5+1|0,Y0=Q>>>1,N0=Y0&1,V0=(N0|0)==0,V0)Q=Y0,f5=L0;else{z=L0;break}T0=(z|0)==0,T0?R2=10:A1=z}else R2=10;if((R2|0)==10){if(R2=0,r1=(U0|0)==0,r1){s1=64,R2=15;break}if(O0=U0&1,e1=(O0|0)==0,e1)b=U0,w5=0;else{p=0,I1=k2,d1=U0,D1=0;break}for(;;)if(v0=w5+1|0,i1=b>>>1,c1=i1&1,f1=(c1|0)==0,f1)b=i1,w5=v0;else{Y=v0,O5=w5;break}if(g1=O5+33|0,l1=(Y|0)==0,l1){p=0,I1=k2,d1=U0,D1=0;break}else A1=g1}$1=A1>>>0>31,$1?(s1=A1,R2=15):(p=A1,I1=k2,d1=U0,D1=A1)}while(!1);if((R2|0)==15&&(R2=0,n1=s1+-32|0,p=n1,I1=U0,d1=0,D1=s1),z0=I1>>>p,h1=32-p|0,u1=d1<>>p,Q1=D1+T|0,_1=(m1|0)!=1,y1=(p1|0)!=0,k1=y1|_1,!k1){v=u0,_=Q1,j2=M0;break e}if(t0=e[T2>>2]|0,x1=I+(Q1<<2)|0,N1=e[x1>>2]|0,w1=0-N1|0,U1=u0+w1|0,Z1=lt[s&15](U1,t0)|0,G1=(Z1|0)<1,G1){m=u0,R=Q1,N=0,P2=M0,R2=18;break}else y=u0,T=Q1,P=0,u0=U1,U0=p1,v5=M0,k2=m1,w=y}else m=t,R=f,N=d,P2=1,R2=18;while(!1);if((R2|0)==18)if(v1=(N|0)==0,v1)v=m,_=R,j2=P2;else{B=B2;return}K1=(j2|0)<2;e:do if(!K1&&(P1=T2+(j2<<2)|0,e[P1>>2]=x2,H1=(n|0)==0,!H1))for(M=n,g2=x2;;){for(d2=M>>>0>256,j1=d2?256:M,s2=e[T2>>2]|0,i4(g2|0,s2|0,j1|0)|0,h2=s2,X2=0;W1=T2+(X2<<2)|0,O1=X2+1|0,l2=T2+(O1<<2)|0,z1=e[l2>>2]|0,i4(h2|0,z1|0,j1|0)|0,A2=h2+j1|0,e[W1>>2]=A2,A5=(O1|0)==(j2|0),!A5;)h2=z1,X2=O1;if(q1=(M|0)==(j1|0),q1)break e;r2=M-j1|0,e0=e[P1>>2]|0,M=r2,g2=e0}while(!1);e[O2>>2]=v,$2=(_|0)>1;e:do if($2){for(D=_,G=v,n2=v,z2=1;;){if(t2=G+U|0,a2=D+-2|0,i2=I+(a2<<2)|0,o2=e[i2>>2]|0,r5=o2+n|0,X=0-r5|0,X1=G+X|0,f2=lt[s&15](n2,X1)|0,e2=(f2|0)>-1,e2&&(S2=lt[s&15](n2,t2)|0,w2=(S2|0)>-1,w2)){T1=z2;break}if(C2=lt[s&15](X1,t2)|0,M2=(C2|0)>-1,_2=z2+1|0,G2=O2+(z2<<2)|0,M2?(e[G2>>2]=X1,u2=D+-1|0,C=X1,S=u2):(e[G2>>2]=t2,C=t2,S=a2),K2=(S|0)>1,!K2){T1=_2;break}J=e[O2>>2]|0,D=S,G=C,n2=J,z2=_2}if(N2=(T1|0)<2,N2)d0=x2;else if(q2=O2+(T1<<2)|0,e[q2>>2]=x2,V=(n|0)==0,V)d0=x2;else for(L=n,Q0=x2;;){for(g0=L>>>0>256,n0=g0?256:L,f0=e[O2>>2]|0,i4(Q0|0,f0|0,n0|0)|0,l0=f0,R5=0;r0=O2+(R5<<2)|0,K=R5+1|0,c0=O2+(K<<2)|0,A0=e[c0>>2]|0,i4(l0|0,A0|0,n0|0)|0,j=l0+n0|0,e[r0>>2]=j,V2=(K|0)==(T1|0),!V2;)l0=A0,R5=K;if(s0=(L|0)==(n0|0),s0){d0=x2;break e}i0=L-n0|0,W=e[q2>>2]|0,L=i0,Q0=W}}else d0=x2;while(!1);B=B2}function Ti(t){t=+t;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0;return _=B,o1[p2>>3]=t,s=e[p2>>2]|0,$=e[p2+4>>2]|0,p=$&2146435072,m=p>>>0>1126170624,v=!1,S=(p|0)==1126170624,w=S&v,y=m|w,y?(n=t,+n):(D=($|0)<0,Q=t+-4503599627370496,c=Q+4503599627370496,f=t+4503599627370496,d=f+-4503599627370496,b=D?c:d,I=b==0,I?(C=D?-0:0,n=C,+n):(n=b,+n))}function fQ(t){t=+t;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0;return y=B,s=(A[p2>>2]=t,e[p2>>2]|0),$=s&2130706432,c=$>>>0>1249902592,c?(n=t,+n):(f=(s|0)<0,d=t+-8388608,I=d+8388608,C=t+8388608,p=C+-8388608,S=f?I:p,m=S==0,m?(v=f?-0:0,n=v,+n):(n=S,+n))}function zS(t,n){t=+t,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0;return z=B,f=(n|0)>1023,f?(d=t*898846567431158e293,Q=n+-1023|0,b=(Q|0)>1023,b?(R=d*898846567431158e293,_=n+-2046|0,L=(_|0)>1023,s=L?1023:_,$=s,N=R):($=Q,N=d)):(M=(n|0)<-1022,M?(T=t*22250738585072014e-324,G=n+1022|0,I=(G|0)<-1022,I?(C=T*22250738585072014e-324,p=n+2044|0,m=(p|0)<-1022,c=m?-1022:p,$=c,N=C):($=G,N=T)):($=n,N=t)),v=$+1023|0,S=dQ(v|0,0,52)|0,w=q6,e[p2>>2]=S,e[p2+4>>2]=w,y=+o1[p2>>3],D=N*y,+D}function ZS(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0;I=B,n=t+-1|0,s=553040,$=s,e[$>>2]=n,c=s+4|0,f=c,e[f>>2]=0}function WS(){var t=0,n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0;return b=B,t=553040,n=t,C=e[n>>2]|0,p=t+4|0,m=p,v=e[m>>2]|0,S=tD(C|0,v|0,1284865837,1481765933)|0,w=q6,y=qA(S|0,w|0,1,0)|0,D=q6,s=553040,$=s,e[$>>2]=y,c=s+4|0,f=c,e[f>>2]=D,d=YA(y|0,D|0,33)|0,I=q6,d|0}function k9(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,B6=0,z3=0,$6=0,m6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,s3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0,_4=0,M4=0,W4=0,d4=0,T4=0,G9=0,G4=0,A4=0,R4=0,c4=0,Ie=0,O9=0,d9=0,de=0,Me=0,ze=0,N4=0,Te=0,U4=0,j4=0,ke=0,Ze=0,V9=0,se=0,g4=0,D6=0,O4=0,R9=0,s4=0,D4=0,oe=0,z9=0,$e=0,ae=0,E4=0,X4=0,x4=0,le=0,E9=0,a6=0,Ge=0,o4=0,Ee=0,C4=0,$4=0,U6=0,ve=0,Se=0,We=0,a4=0,Q4=0,g8=0,H3=0,Q9=0,C9=0,F4=0,ee=0,$7=0,De=0,a7=0,p7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,Q7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ne=0,be=0,je=0,k8=0,y9=0,g7=0,Ce=0,h7=0,y7=0,j8=0,w7=0,te=0,X8=0,P8=0,v8=0,Xe=0,P4=0,_e=0,e8=0,u8=0,S8=0,ce=0,Z9=0,t8=0,I8=0,i8=0,d8=0,ge=0,Be=0,Ue=0,Oe=0,W9=0,Re=0,he=0,r8=0,me=0,B4=0,E8=0,e7=0,H4=0,I3=0,Pe=0,C8=0,ie=0,P9=0,re=0,S9=0,He=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,A8=0,D8=0,q4=0,n7=0,b8=0,qe=0,B9=0,A7=0,Ye=0,L7=0,O7=0,k7=0,s7=0,v7=0,ne=0,M7=0,P7=0,s8=0,_8=0,S7=0,J8=0,xe=0,fe=0,j9=0,D7=0,X7=0,Lt=0,Mt=0,Tt=0,ct=0,H7=0,gt=0,q7=0,ht=0,Y7=0,ft=0,et=0,ti=0,Gt=0,ut=0,It=0,ii=0,dt=0,tt=0,ri=0,Nt=0,Ut=0,Ot=0,Pt=0,it=0,Et=0,Ht=0,J7=0,rt=0,T7=0,K7=0,ni=0,qt=0,Ai=0,Ct=0,Yt=0,Bt=0,mt=0,Jt=0,pt=0,V7=0,Qt=0,Kt=0,nt=0,G7=0,yt=0,pe=0,wt=0,b7=0,At=0,i9=0,u7=0,B8=0,I7=0,_7=0,Hr=0,hr=0,VA=0,Ln=0,zA=0,Mn=0,ZA=0,WA=0,Tn=0,jA=0,qr=0,XA=0,es=0,ts=0,Gn=0,is=0,Nn=0,Un=0,rs=0,Yr=0,On=0,Jr=0,Pn=0,Hn=0,ns=0,As=0,ss=0,Kr=0,qn=0,os=0,fr=0,Vr=0,$s=0,as=0,zr=0,si=0,Yn=0,ls=0,cs=0,Jn=0,Kn=0,Vn=0,gs=0,oi=0,Zr=0,hs=0,zn=0,fs=0,us=0,Is=0,Zn=0,ds=0,Es=0,Cs=0,Bs=0,Wn=0,ms=0,ps=0,Wr=0,ur=0,jr=0,Qs=0,Ki=0,ys=0,jn=0,Xr=0,Xn=0,en=0,ws=0,eA=0,tA=0,ks=0,iA=0,rA=0,vs=0,Ir=0,nA=0,$i=0,tn=0,dr=0,Vi=0,Er=0,Ni=0,Cr=0,AA=0,Ui=0,Bi=0,mi=0,Vt=0,pi=0,Br=0,zi=0,Zi=0,mr=0,ai=0,Ss=0,st=0,za=0,rn=0,nn=0,Rh=0,Za=0,Ds=0,xh=0,Vo=0,Wa=0,Fh=0,Lh=0,Mh=0,zo=0,ja=0,Xa=0,Zo=0,An=0,el=0,Th=0,bs=0,Wi=0,Gh=0,Nh=0,Uh=0,Oh=0,Ph=0,Hh=0,qh=0,Yh=0,Jh=0,Kh=0,tl=0,pr=0,Vh=0,zh=0,il=0,Zh=0,Wo=0,_s=0,jo=0,Wh=0,jh=0,Xo=0,rl=0,nl=0,Al=0,e$=0,sl=0,Rs=0,Xh=0,ef=0,ol=0,tf=0,rf=0,$l=0,nf=0,Af=0,al=0,ll=0,cl=0,gl=0,hl=0,sn=0,sf=0,fl=0,of=0,ul=0,Il=0,$f=0,af=0,lf=0,t$=0,dl=0,El=0,sA=0,Cl=0,i$=0,cf=0,Bl=0,gf=0,ml=0,hf=0,ff=0,pl=0,Ql=0,uf=0,xs=0,If=0,r$=0,yl=0,wl=0,df=0,Ef=0,Cf=0,Bf=0,mf=0,pf=0,Fs=0,kl=0,vl=0,Sl=0,Ls=0,Qf=0,Dl=0,yf=0,bl=0,wf=0,kf=0,_l=0,n$=0,vf=0,Sf=0,Ms=0,Df=0,Ts=0,bf=0,A$=0,_f=0,Rf=0,xf=0,Rl=0,Ff=0,Lf=0,Mf=0,Tf=0,xl=0,Fl=0,ji=0,Ll=0,Gs=0,s$=0,o$=0,on=0,Ml=0,$n=0,Gf=0,Tl=0,Nf=0,Uf=0,Of=0,Pf=0,Ns=0,$$=0,Qr=0,Hf=0,qf=0,Gl=0,a$=0,Nl=0,Ul=0,Yf=0,Ol=0,Jf=0,l$=0,Kf=0,Vf=0,N9=0,zf=0,Pl=0,Zf=0,Wf=0,c$=0,jf=0,g$=0,Hl=0,Xf=0,eu=0,ql=0,Yl=0,tu=0,h$=0,f$=0,Jl=0,Kl=0,iu=0,Vl=0,u$=0,ru=0,zl=0,nu=0,Au=0,su=0,ou=0,Zl=0,Wl=0,I$=0,Us=0,jl=0,$u=0,Xl=0,ec=0,au=0,lu=0,cu=0,tc=0,gu=0,hu=0,fu=0,uu=0,Iu=0,du=0,ic=0,Eu=0,rc=0,Cu=0,an=0,Bu=0,nc=0,mu=0,oA=0,Ac=0,d$=0,pu=0,Os=0,E$=0,Qu=0,C$=0,sc=0,yu=0,wu=0,ku=0,vu=0,Su=0,oc=0,Du=0,bu=0,_u=0,Ps=0,$A=0,B$=0,Ru=0,m$=0,xu=0,Fu=0,Lu=0,$c=0,Mu=0,Tu=0,Gu=0,Nu=0,Uu=0,Hs=0,Ou=0,Pu=0,ac=0,Hu=0,qu=0,Yu=0,Ju=0,li=0,lc=0,ci=0,cc=0,p$=0,Ku=0,zt=0,aA=0,Vu=0,zu=0,Zu=0,Wu=0,ju=0,gc=0,Xu=0,eI=0,hc=0,tI=0,iI=0,lA=0,Q$=0,rI=0,fc=0,nI=0,AI=0,qs=0,sI=0,oI=0,uc=0,Ic=0,$I=0,aI=0,ln=0,lI=0,cI=0,cn=0,gI=0,dc=0,hI=0,fI=0,cA=0,Ec=0,uI=0,Cc=0,II=0,Xi=0,y$=0,dI=0,Bc=0,mc=0,EI=0,CI=0,pc=0,BI=0,mI=0,pI=0,Qc=0,QI=0,gA=0,yI=0,gn=0,wI=0,kI=0,w$=0,vI=0,k$=0,v$=0,SI=0,yc=0,wc=0,DI=0,kc=0,vc=0,Sc=0,bI=0,Dc=0,bc=0,_I=0,RI=0,_c=0,Rc=0,xI=0,xc=0,Fc=0,FI=0,LI=0,Lc=0,S$=0,Mc=0,Tc=0,Gc=0,Nc=0,MI=0,TI=0,GI=0,NI=0,UI=0,OI=0,PI=0,HI=0,Uc=0,D$=0,qI=0,YI=0,JI=0,Oc=0,Pc=0,KI=0,Hc=0,b$=0,Ys=0,qc=0,VI=0,zI=0,ZI=0,WI=0,Yc=0,Js=0,jI=0,XI=0,ed=0,td=0,id=0,rd=0,nd=0,Ad=0,Jc=0,sd=0,od=0,$d=0,ad=0,Ks=0,Kc=0,ld=0,cd=0,hn=0,Vc=0,zc=0,_$=0,gd=0,Zc=0,hd=0,Wc=0,jc=0,fd=0,ud=0,Id=0,dd=0,Ed=0,Vs=0,R$=0,Cd=0,Bd=0,md=0,pd=0,Xc=0,Qd=0,eg=0,yd=0,wd=0,tg=0,yr=0,ig=0,rg=0,kd=0,ng=0,zs=0,vd=0,Sd=0,Dd=0,Zs=0,Ag=0,bd=0,_d=0,sg=0,Rd=0,xd=0,x$=0,Ws=0,Fd=0,Ld=0,Md=0,og=0,$g=0,ag=0,Td=0,Gd=0,hA=0,Nd=0,lg=0,Ud=0,F$=0,cg=0,Od=0,Pd=0,Hd=0,qd=0,gg=0,Yd=0,Jd=0,hg=0,js=0,Kd=0,Vd=0,zd=0,fA=0,fg=0,ug=0,Zd=0,Ig=0,dg=0,Qi=0,Eg=0,er=0,Wd=0,jd=0,Xd=0,eE=0,L$=0,Xs=0,Cg=0,Bg=0,tE=0,eo=0,uA=0,iE=0,to=0,M$=0,rE=0,T$=0,nE=0,AE=0,mg=0,io=0,pg=0,sE=0,oE=0,$E=0,aE=0,Qg=0,lE=0,z7=0,m4=0,Zt=0,cE=0,yg=0,wg=0,G$=0,gE=0,wr=0,IA=0,hE=0,fE=0,kg=0,N$=0,uE=0,vg=0,Sg=0,Dg=0,U$=0,O$=0,bg=0,dA=0,P$=0,_g=0,IE=0,fn=0,dE=0,Rg=0,ro=0,EE=0,xg=0,yi=0,CE=0,BE=0,mE=0,pE=0,QE=0,yE=0,wi=0,wE=0,kE=0,vE=0,Fg=0,gi=0,no=0,H$=0,Lg=0,Mg=0,SE=0,Tg=0,Gg=0,DE=0,bE=0,Ng=0,Ug=0,_E=0,RE=0,Og=0,xE=0,EA=0,Ao=0,so=0,FE=0,q$=0,LE=0,ME=0,Pg=0,CA=0,TE=0,GE=0,Y$=0,J$=0,oo=0,K$=0,V$=0,tr=0,kr=0,vr=0,z$=0,Z$=0,BA=0,ir=0,un=0,NE=0,rr=0,In=0,UE=0,kt=0,vt=0,St=0,$o=0,ao=0,Hg=0,qg=0,lo=0,W$=0,Dt=0,co=0,Sr=0,j$=0,OE=0,X$=0,PE=0,ea=0,Yg=0,go=0,HE=0,qE=0,ho=0,YE=0,fo=0,dn=0,Je=0,y4=0,Jg=0,JE=0,ta=0,Kg=0,KE=0,VE=0,uo=0,zE=0,ZE=0,WE=0,jE=0,Vg=0,XE=0,eC=0,tC=0,Wt=0,Io=0,En=0,ia=0,mA=0,pA=0,Z7=0,QA=0,zg=0,Zg=0,Eo=0,yA=0,wA=0,kA=0,iC=0,vA=0,nr=0,Wg=0,Dr=0,jt=0,ra=0,na=0,Oi=0,Aa=0,sa=0,oa=0,br=0,A6=0,Co=0,_r=0,jg=0,Qe=0,$a=0,m8=0,SA=0,Cn=0,Bn=0,x9=0,mn=0,Rr=0,Y4=0,aa=0;aa=B,V1=t>>>0<245;do if(V1){if(g2=t>>>0<11,l4=t+11|0,P4=l4&-8,pe=g2?16:P4,Ds=pe>>>3,A$=e[138262]|0,Ps=A$>>>Ds,Tc=Ps&3,hg=(Tc|0)==0,!hg){$2=Ps&1,h3=$2^1,a3=h3+Ds|0,o3=a3<<1,c3=553088+(o3<<2)|0,Q0=o3+2|0,_6=553088+(Q0<<2)|0,v6=e[_6>>2]|0,R6=v6+8|0,S6=e[R6>>2]|0,f9=(c3|0)==(S6|0);do if(f9)T9=1<>>0>>0,$e&&Q2(),C4=S6+12|0,C9=e[C4>>2]|0,F8=(C9|0)==(v6|0),F8){e[C4>>2]=c3,e[_6>>2]=S6;break}else Q2();while(!1);return h8=a3<<3,g7=h8|3,_e=v6+4|0,e[_e>>2]=g7,C0=h8|4,Be=v6+C0|0,H4=e[Be>>2]|0,t7=H4|1,e[Be>>2]=t7,Je=R6,Je|0}if(qe=e[138264]|0,P7=pe>>>0>qe>>>0,P7){if(Mt=(Ps|0)==0,!Mt){Gt=Ps<>>12,Wr=fs&16,eA=Yn>>>Wr,Vi=eA>>>5,zi=Vi&8,xh=zi|Wr,el=eA>>>zi,Yh=el>>>2,jo=Yh&4,ef=xh|jo,hl=el>>>jo,dl=hl>>>1,pl=dl&2,Bf=ef|pl,bl=hl>>>pl,_f=bl>>>1,Ll=_f&1,Of=Bf|Ll,Yf=bl>>>Ll,c$=Of+Yf|0,Jl=c$<<1,Zl=553088+(Jl<<2)|0,U1=Jl+2|0,tc=553088+(U1<<2)|0,an=e[tc>>2]|0,C$=an+8|0,$A=e[C$>>2]|0,Nu=(Zl|0)==($A|0);do if(Nu)lc=1<>>0>>0,Xi&&Q2(),Qc=$A+12|0,SI=e[Qc>>2]|0,RI=(SI|0)==(an|0),RI){e[Qc>>2]=Zl,e[tc>>2]=$A,y=e[138264]|0,Ws=y;break}else Q2();while(!1);return Gc=c$<<3,D$=Gc-pe|0,VI=pe|3,rd=an+4|0,e[rd>>2]=VI,cd=an+pe|0,ud=D$|1,j1=pe|4,Qd=an+j1|0,e[Qd>>2]=ud,vd=an+Gc|0,e[vd>>2]=D$,lg=(Ws|0)==0,lg||(js=e[138267]|0,Eg=Ws>>>3,eo=Eg<<1,pg=553088+(eo<<2)|0,yg=e[138262]|0,vg=1<>2]|0,C2=e[138266]|0,A5=t2>>>0>>0,A5?Q2():(N=EA,oo=t2)),e[N>>2]=js,a5=oo+12|0,e[a5>>2]=js,G5=js+8|0,e[G5>>2]=oo,Z2=js+12|0,e[Z2>>2]=pg),e[138264]=D$,e[138267]=cd,Je=C$,Je|0}if($5=e[138263]|0,E3=($5|0)==0,E3)y4=pe;else{for(V5=0-$5|0,y3=$5&V5,B3=y3+-1|0,q3=B3>>>12,M3=q3&16,Z5=B3>>>M3,Q3=Z5>>>5,j5=Q3&8,j3=j5|M3,_3=Z5>>>j5,T3=_3>>>2,$3=T3&4,l3=j3|$3,C3=_3>>>$3,Y5=C3>>>1,N5=Y5&2,P5=l3|N5,y5=C3>>>N5,G3=y5>>>1,L5=G3&1,t6=P5|L5,i3=y5>>>L5,R3=t6+i3|0,h6=553352+(R3<<2)|0,m3=e[h6>>2]|0,w3=m3+4|0,p3=e[w3>>2]|0,X3=p3&-8,V3=X3-pe|0,Io=V3,na=m3,$a=m3;;){if(N3=na+16|0,z5=e[N3>>2]|0,k3=(z5|0)==0,k3)if(U3=na+20|0,o6=e[U3>>2]|0,u3=(o6|0)==0,u3){En=Io,m8=$a;break}else w6=o6;else w6=z5;y6=w6+4|0,k6=e[y6>>2]|0,B6=k6&-8,z3=B6-pe|0,$6=z3>>>0>>0,H=$6?z3:Io,s2=$6?w6:$a,Io=H,na=w6,$a=s2}m6=e[138266]|0,Y6=m8>>>0>>0,Y6&&Q2(),C6=m8+pe|0,v3=m8>>>0>>0,v3||Q2(),Z3=m8+24|0,W3=e[Z3>>2]|0,f6=m8+12|0,O3=e[f6>>2]|0,S3=(O3|0)==(m8|0);do if(S3){if(T6=m8+20|0,e6=e[T6>>2]|0,p6=(e6|0)==0,p6)if(K6=m8+16|0,I6=e[K6>>2]|0,J6=(I6|0)==0,J6){kt=0;break}else ir=I6,$o=K6;else ir=e6,$o=T6;for(;;){if(x3=ir+20|0,Z6=e[x3>>2]|0,G6=(Z6|0)==0,!G6){ir=Z6,$o=x3;continue}if(j6=ir+16|0,r9=e[j6>>2]|0,x6=(r9|0)==0,x6){rr=ir,qg=$o;break}else ir=r9,$o=j6}if(N6=qg>>>0>>0,N6)Q2();else{e[qg>>2]=0,kt=rr;break}}else if(P3=m8+8|0,Y3=e[P3>>2]|0,i6=Y3>>>0>>0,i6&&Q2(),r3=Y3+12|0,O6=e[r3>>2]|0,s3=(O6|0)==(m8|0),s3||Q2(),r6=O3+8|0,u6=e[r6>>2]|0,D3=(u6|0)==(m8|0),D3){e[r3>>2]=O3,e[r6>>2]=Y3,kt=O3;break}else Q2();while(!1);V6=(W3|0)==0;do if(!V6){if(Q6=m8+28|0,F6=e[Q6>>2]|0,F3=553352+(F6<<2)|0,L6=e[F3>>2]|0,X6=(m8|0)==(L6|0),X6){if(e[F3>>2]=kt,HE=(kt|0)==0,HE){A9=1<>>0>>0,o9&&Q2(),L9=W3+16|0,d6=e[L9>>2]|0,M6=(d6|0)==(m8|0),M6?e[L9>>2]=kt:(e9=W3+20|0,e[e9>>2]=kt),M9=(kt|0)==0,M9)break;u9=e[138266]|0,u4=kt>>>0>>0,u4&&Q2(),r4=kt+24|0,e[r4>>2]=W3,K9=m8+16|0,v9=e[K9>>2]|0,I9=(v9|0)==0;do if(!I9)if(P6=v9>>>0>>0,P6)Q2();else{t9=kt+16|0,e[t9>>2]=v9,I4=v9+24|0,e[I4>>2]=kt;break}while(!1);if(k4=m8+20|0,n4=e[k4>>2]|0,p9=(n4|0)==0,!p9)if(v4=e[138266]|0,_4=n4>>>0>>0,_4)Q2();else{M4=kt+20|0,e[M4>>2]=n4,W4=n4+24|0,e[W4>>2]=kt;break}}while(!1);return d4=En>>>0<16,d4?(T4=En+pe|0,G9=T4|3,G4=m8+4|0,e[G4>>2]=G9,Z1=T4+4|0,A4=m8+Z1|0,R4=e[A4>>2]|0,c4=R4|1,e[A4>>2]=c4):(O9=pe|3,d9=m8+4|0,e[d9>>2]=O9,de=En|1,c0=pe|4,Me=m8+c0|0,e[Me>>2]=de,l0=En+pe|0,ze=m8+l0|0,e[ze>>2]=En,N4=e[138264]|0,Te=(N4|0)==0,Te||(U4=e[138267]|0,j4=N4>>>3,ke=j4<<1,V9=553088+(ke<<2)|0,se=e[138262]|0,g4=1<>2]|0,oe=e[138266]|0,z9=D4>>>0>>0,z9?Q2():(T=s4,J$=D4)),e[T>>2]=U4,ae=J$+12|0,e[ae>>2]=U4,E4=U4+8|0,e[E4>>2]=J$,X4=U4+12|0,e[X4>>2]=V9),e[138264]=En,e[138267]=C6),x4=m8+8|0,Je=x4,Je|0}}else y4=pe}else if(le=t>>>0>4294967231,le)y4=-1;else if(E9=t+11|0,a6=E9&-8,Ge=e[138263]|0,o4=(Ge|0)==0,o4)y4=a6;else{Ee=0-a6|0,$4=E9>>>8,U6=($4|0)==0,U6?dn=0:(ve=a6>>>0>16777215,ve?dn=31:(Se=$4+1048320|0,We=Se>>>16,a4=We&8,Q4=$4<>>16,Q9=H3&4,F4=Q9|a4,ee=Q4<>>16,a7=De&2,p7=F4|a7,K8=14-p7|0,l7=ee<>>15,x8=K8+c7|0,L8=x8<<1,M8=x8+7|0,V8=a6>>>M8,z8=V8&1,Q7=z8|L8,dn=Q7)),T8=553352+(dn<<2)|0,G8=e[T8>>2]|0,N8=(G8|0)==0;e:do if(N8)pA=Ee,Aa=0,Bn=0,Y4=86;else for(y8=(dn|0)==31,w8=dn>>>1,U8=25-w8|0,O8=y8?0:U8,Z8=a6<>2]|0,Ne=f8&-8,be=Ne-a6|0,je=be>>>0>>0,je)if(k8=(Ne|0)==(a6|0),k8){QA=be,br=Oi,Rr=Oi,Y4=90;break e}else mA=be,Cn=Oi;else mA=ia,Cn=SA;if(y9=Oi+20|0,Ce=e[y9>>2]|0,h7=Eo>>>31,y7=(Oi+16|0)+(h7<<2)|0,j8=e[y7>>2]|0,w7=(Ce|0)==0,te=(Ce|0)==(j8|0),zE=w7|te,Zg=zE?zg:Ce,X8=(j8|0)==0,P8=Eo<<1,X8){pA=mA,Aa=Zg,Bn=Cn,Y4=86;break}else ia=mA,zg=Zg,Eo=P8,Oi=j8,SA=Cn}while(!1);if((Y4|0)==86){if(v8=(Aa|0)==0,Xe=(Bn|0)==0,KE=v8&Xe,KE){if(e8=2<>>12,ge=d8&16,Ue=i8>>>ge,Oe=Ue>>>5,W9=Oe&8,Re=W9|ge,he=Ue>>>W9,r8=he>>>2,me=r8&4,B4=Re|me,E8=he>>>me,e7=E8>>>1,I3=e7&2,Pe=B4|I3,C8=E8>>>I3,ie=C8>>>1,P9=ie&1,re=Pe|P9,S9=C8>>>P9,He=re+S9|0,H8=553352+(He<<2)|0,f7=e[H8>>2]|0,sa=f7,mn=0}else sa=Aa,mn=Bn;i7=(sa|0)==0,i7?(Z7=pA,x9=mn):(QA=pA,br=sa,Rr=mn,Y4=90)}if((Y4|0)==90)for(;;){if(Y4=0,q8=br+4|0,r7=e[q8>>2]|0,Y8=r7&-8,n8=Y8-a6|0,A8=n8>>>0>>0,X=A8?n8:QA,oa=A8?br:Rr,D8=br+16|0,q4=e[D8>>2]|0,n7=(q4|0)==0,!n7){QA=X,br=q4,Rr=oa,Y4=90;continue}if(b8=br+20|0,B9=e[b8>>2]|0,A7=(B9|0)==0,A7){Z7=X,x9=oa;break}else QA=X,br=B9,Rr=oa,Y4=90}if(Ye=(x9|0)==0,Ye)y4=a6;else if(L7=e[138264]|0,O7=L7-a6|0,k7=Z7>>>0>>0,k7){s7=e[138266]|0,v7=x9>>>0>>0,v7&&Q2(),ne=x9+a6|0,M7=x9>>>0>>0,M7||Q2(),s8=x9+24|0,_8=e[s8>>2]|0,S7=x9+12|0,J8=e[S7>>2]|0,xe=(J8|0)==(x9|0);do if(xe){if(q7=x9+20|0,ht=e[q7>>2]|0,Y7=(ht|0)==0,Y7)if(ft=x9+16|0,et=e[ft>>2]|0,ti=(et|0)==0,ti){St=0;break}else In=et,lo=ft;else In=ht,lo=q7;for(;;){if(ut=In+20|0,It=e[ut>>2]|0,ii=(It|0)==0,!ii){In=It,lo=ut;continue}if(dt=In+16|0,tt=e[dt>>2]|0,ri=(tt|0)==0,ri){UE=In,W$=lo;break}else In=tt,lo=dt}if(Nt=W$>>>0>>0,Nt)Q2();else{e[W$>>2]=0,St=UE;break}}else if(fe=x9+8|0,j9=e[fe>>2]|0,D7=j9>>>0>>0,D7&&Q2(),X7=j9+12|0,Lt=e[X7>>2]|0,Tt=(Lt|0)==(x9|0),Tt||Q2(),ct=J8+8|0,H7=e[ct>>2]|0,gt=(H7|0)==(x9|0),gt){e[X7>>2]=J8,e[ct>>2]=j9,St=J8;break}else Q2();while(!1);Ut=(_8|0)==0;do if(!Ut){if(Ot=x9+28|0,Pt=e[Ot>>2]|0,Et=553352+(Pt<<2)|0,Ht=e[Et>>2]|0,J7=(x9|0)==(Ht|0),J7){if(e[Et>>2]=St,ho=(St|0)==0,ho){rt=1<>>0>>0,Ai&&Q2(),Ct=_8+16|0,Bt=e[Ct>>2]|0,mt=(Bt|0)==(x9|0),mt?e[Ct>>2]=St:(Jt=_8+20|0,e[Jt>>2]=St),pt=(St|0)==0,pt)break;V7=e[138266]|0,Qt=St>>>0>>0,Qt&&Q2(),Kt=St+24|0,e[Kt>>2]=_8,nt=x9+16|0,G7=e[nt>>2]|0,yt=(G7|0)==0;do if(!yt)if(b7=G7>>>0>>0,b7)Q2();else{At=St+16|0,e[At>>2]=G7,i9=G7+24|0,e[i9>>2]=St;break}while(!1);if(u7=x9+20|0,B8=e[u7>>2]|0,I7=(B8|0)==0,!I7)if(_7=e[138266]|0,Hr=B8>>>0<_7>>>0,Hr)Q2();else{hr=St+20|0,e[hr>>2]=B8,VA=B8+24|0,e[VA>>2]=St;break}}while(!1);zA=Z7>>>0<16;e:do if(zA)Mn=Z7+a6|0,ZA=Mn|3,WA=x9+4|0,e[WA>>2]=ZA,c1=Mn+4|0,Tn=x9+c1|0,jA=e[Tn>>2]|0,qr=jA|1,e[Tn>>2]=qr;else{if(XA=a6|3,es=x9+4|0,e[es>>2]=XA,ts=Z7|1,r0=a6|4,is=x9+r0|0,e[is>>2]=ts,f0=Z7+a6|0,Nn=x9+f0|0,e[Nn>>2]=Z7,Un=Z7>>>3,rs=Z7>>>0<256,rs){Yr=Un<<1,On=553088+(Yr<<2)|0,Jr=e[138262]|0,Pn=1<>2]|0,os=e[138266]|0,fr=qn>>>0>>0,fr?Q2():(M=Kr,V$=qn)),e[M>>2]=ne,Vr=V$+12|0,e[Vr>>2]=ne,U0=a6+8|0,$s=x9+U0|0,e[$s>>2]=V$,O0=a6+12|0,as=x9+O0|0,e[as>>2]=On;break}if(zr=Z7>>>8,si=(zr|0)==0,si?kr=0:(ls=Z7>>>0>16777215,ls?kr=31:(cs=zr+1048320|0,Jn=cs>>>16,Kn=Jn&8,Vn=zr<>>16,Zr=oi&4,hs=Zr|Kn,zn=Vn<>>16,Zn=Is&2,ds=hs|Zn,Es=14-ds|0,Cs=zn<>>15,Wn=Es+Bs|0,ms=Wn<<1,ps=Wn+7|0,ur=Z7>>>ps,jr=ur&1,Qs=jr|ms,kr=Qs)),Ki=553352+(kr<<2)|0,g1=a6+28|0,ys=x9+g1|0,e[ys>>2]=kr,_1=a6+16|0,jn=x9+_1|0,v1=a6+20|0,Xr=x9+v1|0,e[Xr>>2]=0,e[jn>>2]=0,Xn=e[138263]|0,en=1<>2]=ne,q1=a6+24|0,iA=x9+q1|0,e[iA>>2]=Ki,r2=a6+12|0,rA=x9+r2|0,e[rA>>2]=ne,O1=a6+8|0,vs=x9+O1|0,e[vs>>2]=ne;break}Ir=e[Ki>>2]|0,nA=Ir+4|0,$i=e[nA>>2]|0,tn=$i&-8,dr=(tn|0)==(Z7|0);t:do if(dr)Dt=Ir;else{for(Er=(kr|0)==31,Ni=kr>>>1,Cr=25-Ni|0,AA=Er?0:Cr,Ui=Z7<>>31,ai=(j$+16|0)+(mr<<2)|0,Vt=e[ai>>2]|0,Ss=(Vt|0)==0,Ss){w=ai,OE=j$;break}if(Bi=z$<<1,mi=Vt+4|0,pi=e[mi>>2]|0,Br=pi&-8,Zi=(Br|0)==(Z7|0),Zi){Dt=Vt;break t}else z$=Bi,j$=Vt}if(st=e[138266]|0,za=w>>>0>>0,za)Q2();else{e[w>>2]=ne,h0=a6+24|0,rn=x9+h0|0,e[rn>>2]=OE,G0=a6+12|0,nn=x9+G0|0,e[nn>>2]=ne,N0=a6+8|0,Rh=x9+N0|0,e[Rh>>2]=ne;break e}}while(!1);if(Za=Dt+8|0,Vo=e[Za>>2]|0,Wa=e[138266]|0,Fh=Vo>>>0>=Wa>>>0,Jg=Dt>>>0>=Wa>>>0,Lh=Fh&Jg,Lh){Mh=Vo+12|0,e[Mh>>2]=ne,e[Za>>2]=ne,l2=a6+8|0,zo=x9+l2|0,e[zo>>2]=Vo,h2=a6+12|0,ja=x9+h2|0,e[ja>>2]=Dt,d0=a6+24|0,Xa=x9+d0|0,e[Xa>>2]=0;break}else Q2()}while(!1);return Zo=x9+8|0,Je=Zo,Je|0}else y4=a6}while(!1);if(An=e[138264]|0,Th=An>>>0>>0,!Th)return bs=An-y4|0,Wi=e[138267]|0,Gh=bs>>>0>15,Gh?(Nh=Wi+y4|0,e[138267]=Nh,e[138264]=bs,Uh=bs|1,f1=y4+4|0,Oh=Wi+f1|0,e[Oh>>2]=Uh,Ph=Wi+An|0,e[Ph>>2]=bs,Hh=y4|3,qh=Wi+4|0,e[qh>>2]=Hh):(e[138264]=0,e[138267]=0,Jh=An|3,Kh=Wi+4|0,e[Kh>>2]=Jh,A0=An+4|0,tl=Wi+A0|0,pr=e[tl>>2]|0,Vh=pr|1,e[tl>>2]=Vh),zh=Wi+8|0,Je=zh,Je|0;if(il=e[138265]|0,Zh=il>>>0>y4>>>0,Zh)return Wo=il-y4|0,e[138265]=Wo,_s=e[138268]|0,Wh=_s+y4|0,e[138268]=Wh,jh=Wo|1,U=y4+4|0,Xo=_s+U|0,e[Xo>>2]=jh,rl=y4|3,nl=_s+4|0,e[nl>>2]=rl,Al=_s+8|0,Je=Al,Je|0;e$=e[138380]|0,sl=(e$|0)==0;do if(sl)if(Rs=lv(30)|0,Xh=Rs+-1|0,ol=Xh&Rs,tf=(ol|0)==0,tf){e[138382]=Rs,e[138381]=Rs,e[138383]=-1,e[138384]=-1,e[138385]=0,e[138373]=0,rf=Np(0)|0,$l=rf&-16,nf=$l^1431655768,e[138380]=nf;break}else Q2();while(!1);if(Af=y4+48|0,al=e[138382]|0,ll=y4+47|0,cl=al+ll|0,gl=0-al|0,sn=cl&gl,sf=sn>>>0>y4>>>0,!sf||(fl=e[138372]|0,of=(fl|0)==0,!of&&(ul=e[138370]|0,Il=ul+sn|0,$f=Il>>>0<=ul>>>0,af=Il>>>0>fl>>>0,uo=$f|af,uo)))return Je=0,Je|0;lf=e[138373]|0,t$=lf&4,El=(t$|0)==0;e:do if(El){sA=e[138268]|0,Cl=(sA|0)==0;t:do if(Cl)Y4=174;else{for(yA=553496;;){if(i$=e[yA>>2]|0,cf=i$>>>0>sA>>>0,!cf&&(Bl=yA+4|0,gf=e[Bl>>2]|0,ml=i$+gf|0,hf=ml>>>0>sA>>>0,hf)){v=yA,S=Bl;break}if(ff=yA+8|0,Ql=e[ff>>2]|0,uf=(Ql|0)==0,uf){Y4=174;break t}else yA=Ql}if(vf=e[138265]|0,Sf=cl-vf|0,Ms=Sf&gl,Df=Ms>>>0<2147483647,Df)if(Ts=Ft(Ms|0)|0,bf=e[v>>2]|0,Rf=e[S>>2]|0,xf=bf+Rf|0,Rl=(Ts|0)==(xf|0),n=Rl?Ms:0,Rl)if(Ff=(Ts|0)==-1,Ff)_r=n;else{A6=Ts,Qe=n,Y4=194;break e}else go=Ts,jt=Ms,Co=n,Y4=184;else _r=0}while(!1);do if((Y4|0)==174)if(xs=Ft(0)|0,If=(xs|0)==-1,If)_r=0;else if(r$=xs,yl=e[138381]|0,wl=yl+-1|0,df=wl&r$,Ef=(df|0)==0,Ef?Dr=sn:(Cf=wl+r$|0,mf=0-yl|0,pf=Cf&mf,Fs=sn-r$|0,kl=Fs+pf|0,Dr=kl),vl=e[138370]|0,Sl=vl+Dr|0,Ls=Dr>>>0>y4>>>0,Qf=Dr>>>0<2147483647,VE=Ls&Qf,VE){if(Dl=e[138372]|0,yf=(Dl|0)==0,!yf&&(wf=Sl>>>0<=vl>>>0,kf=Sl>>>0>Dl>>>0,ZE=wf|kf,ZE)){_r=0;break}if(_l=Ft(Dr|0)|0,n$=(_l|0)==(xs|0),Wg=n$?Dr:0,n$){A6=xs,Qe=Wg,Y4=194;break e}else go=_l,jt=Dr,Co=Wg,Y4=184}else _r=0;while(!1);t:do if((Y4|0)==184){Lf=0-jt|0,Mf=(go|0)!=-1,Tf=jt>>>0<2147483647,jE=Tf&Mf,xl=Af>>>0>jt>>>0,XE=xl&jE;do if(XE)if(Fl=e[138382]|0,ji=ll-jt|0,Gs=ji+Fl|0,s$=0-Fl|0,o$=Gs&s$,on=o$>>>0<2147483647,on)if(Ml=Ft(o$|0)|0,$n=(Ml|0)==-1,$n){Ft(Lf|0)|0,_r=Co;break t}else{Gf=o$+jt|0,ra=Gf;break}else ra=jt;else ra=jt;while(!1);if(Tl=(go|0)==-1,Tl)_r=Co;else{A6=go,Qe=ra,Y4=194;break e}}while(!1);Nf=e[138373]|0,Uf=Nf|4,e[138373]=Uf,jg=_r,Y4=191}else jg=0,Y4=191;while(!1);if((Y4|0)==191&&(Pf=sn>>>0<2147483647,Pf&&(Ns=Ft(sn|0)|0,$$=Ft(0)|0,Qr=(Ns|0)!=-1,Hf=($$|0)!=-1,WE=Qr&Hf,qf=Ns>>>0<$$>>>0,eC=qf&WE,eC&&(Gl=$$,a$=Ns,Nl=Gl-a$|0,Ul=y4+40|0,Ol=Nl>>>0>Ul>>>0,d2=Ol?Nl:jg,Ol&&(A6=Ns,Qe=d2,Y4=194)))),(Y4|0)==194){Jf=e[138370]|0,l$=Jf+Qe|0,e[138370]=l$,Kf=e[138371]|0,Vf=l$>>>0>Kf>>>0,Vf&&(e[138371]=l$),N9=e[138268]|0,zf=(N9|0)==0;e:do if(zf){for(Pl=e[138266]|0,Zf=(Pl|0)==0,Wf=A6>>>0>>0,tC=Zf|Wf,tC&&(e[138266]=A6),e[138374]=A6,e[138375]=Qe,e[138377]=0,jf=e[138380]|0,e[138271]=jf,e[138270]=-1,fo=0;g$=fo<<1,Hl=553088+(g$<<2)|0,o0=g$+3|0,Xf=553088+(o0<<2)|0,e[Xf>>2]=Hl,j=g$+2|0,eu=553088+(j<<2)|0,e[eu>>2]=Hl,ql=fo+1|0,YE=(ql|0)==32,!YE;)fo=ql;Yl=Qe+-40|0,tu=A6+8|0,h$=tu,f$=h$&7,Kl=(f$|0)==0,iu=0-h$|0,Vl=iu&7,u$=Kl?0:Vl,ru=A6+u$|0,zl=Yl-u$|0,e[138268]=ru,e[138265]=zl,nu=zl|1,V=u$+4|0,Au=A6+V|0,e[Au>>2]=nu,l1=Qe+-36|0,su=A6+l1|0,e[su>>2]=40,ou=e[138384]|0,e[138269]=ou}else{for(kA=553496;;){if(Wl=e[kA>>2]|0,I$=kA+4|0,Us=e[I$>>2]|0,jl=Wl+Us|0,$u=(A6|0)==(jl|0),$u){C=Wl,p=I$,m=Us,iC=kA,Y4=204;break}if(Xl=kA+8|0,ec=e[Xl>>2]|0,au=(ec|0)==0,au)break;kA=ec}if((Y4|0)==204&&(lu=iC+12|0,cu=e[lu>>2]|0,gu=cu&8,hu=(gu|0)==0,hu&&(fu=N9>>>0>=C>>>0,uu=N9>>>0>>0,Vg=uu&fu,Vg))){Iu=m+Qe|0,e[p>>2]=Iu,du=e[138265]|0,ic=du+Qe|0,Eu=N9+8|0,rc=Eu,Cu=rc&7,Bu=(Cu|0)==0,nc=0-rc|0,mu=nc&7,oA=Bu?0:mu,Ac=N9+oA|0,d$=ic-oA|0,e[138268]=Ac,e[138265]=d$,pu=d$|1,n0=oA+4|0,Os=N9+n0|0,e[Os>>2]=pu,n1=ic+4|0,E$=N9+n1|0,e[E$>>2]=40,Qu=e[138384]|0,e[138269]=Qu;break}for(sc=e[138266]|0,yu=A6>>>0>>0,yu?(e[138266]=A6,cA=A6):cA=sc,wu=A6+Qe|0,vA=553496;;){if(ku=e[vA>>2]|0,vu=(ku|0)==(wu|0),vu){I=vA,nr=vA,Y4=212;break}if(Su=vA+8|0,oc=e[Su>>2]|0,Du=(oc|0)==0,Du){wA=553496;break}else vA=oc}if((Y4|0)==212)if(bu=nr+12|0,_u=e[bu>>2]|0,B$=_u&8,Ru=(B$|0)==0,Ru){e[I>>2]=A6,m$=nr+4|0,xu=e[m$>>2]|0,Fu=xu+Qe|0,e[m$>>2]=Fu,Lu=A6+8|0,$c=Lu,Mu=$c&7,Tu=(Mu|0)==0,Gu=0-$c|0,Uu=Gu&7,Hs=Tu?0:Uu,Ou=A6+Hs|0,u0=Qe+8|0,Pu=A6+u0|0,ac=Pu,Hu=ac&7,qu=(Hu|0)==0,Yu=0-ac|0,Ju=Yu&7,li=qu?0:Ju,k0=li+Qe|0,ci=A6+k0|0,cc=ci,p$=Ou,Ku=cc-p$|0,i0=Hs+y4|0,zt=A6+i0|0,aA=Ku-y4|0,Vu=y4|3,g0=Hs+4|0,zu=A6+g0|0,e[zu>>2]=Vu,Zu=(ci|0)==(N9|0);t:do if(Zu)Wu=e[138265]|0,gc=Wu+aA|0,e[138265]=gc,e[138268]=zt,Xu=gc|1,H1=i0+4|0,eI=A6+H1|0,e[eI>>2]=Xu;else{if(hc=e[138267]|0,tI=(ci|0)==(hc|0),tI){iI=e[138264]|0,lA=iI+aA|0,e[138264]=lA,e[138267]=zt,Q$=lA|1,K1=i0+4|0,rI=A6+K1|0,e[rI>>2]=Q$,P1=lA+i0|0,fc=A6+P1|0,e[fc>>2]=lA;break}if(s1=Qe+4|0,J0=s1+li|0,AI=A6+J0|0,qs=e[AI>>2]|0,sI=qs&3,oI=(sI|0)==1,oI){uc=qs&-8,Ic=qs>>>3,$I=qs>>>0<256;i:do if($I){N1=li|8,Y0=N1+Qe|0,aI=A6+Y0|0,ln=e[aI>>2]|0,w1=Qe+12|0,q0=w1+li|0,lI=A6+q0|0,cn=e[lI>>2]|0,gI=Ic<<1,dc=553088+(gI<<2)|0,hI=(ln|0)==(dc|0);do if(!hI){if(fI=ln>>>0>>0,fI&&Q2(),Ec=ln+12|0,uI=e[Ec>>2]|0,Cc=(uI|0)==(ci|0),Cc)break;Q2()}while(!1);if(II=(cn|0)==(ln|0),II){y$=1<>>0>>0,CI&&Q2(),pc=cn+8|0,BI=e[pc>>2]|0,mI=(BI|0)==(ci|0),mI){G=pc;break}Q2()}while(!1);pI=ln+12|0,e[pI>>2]=cn,e[G>>2]=ln}else{x1=li|24,D0=x1+Qe|0,QI=A6+D0|0,gA=e[QI>>2]|0,Y1=Qe+12|0,m0=Y1+li|0,yI=A6+m0|0,gn=e[yI>>2]|0,wI=(gn|0)==(ci|0);do if(wI){if(W1=li|16,S0=s1+W1|0,vc=A6+S0|0,Sc=e[vc>>2]|0,bI=(Sc|0)==0,bI)if(L0=W1+Qe|0,Dc=A6+L0|0,bc=e[Dc>>2]|0,_I=(bc|0)==0,_I){vt=0;break}else un=bc,ao=Dc;else un=Sc,ao=vc;for(;;){if(_c=un+20|0,Rc=e[_c>>2]|0,xI=(Rc|0)==0,!xI){un=Rc,ao=_c;continue}if(xc=un+16|0,Fc=e[xc>>2]|0,FI=(Fc|0)==0,FI){NE=un,Hg=ao;break}else un=Fc,ao=xc}if(LI=Hg>>>0>>0,LI)Q2();else{e[Hg>>2]=0,vt=NE;break}}else if(L1=li|8,x0=L1+Qe|0,kI=A6+x0|0,w$=e[kI>>2]|0,vI=w$>>>0>>0,vI&&Q2(),k$=w$+12|0,v$=e[k$>>2]|0,yc=(v$|0)==(ci|0),yc||Q2(),wc=gn+8|0,DI=e[wc>>2]|0,kc=(DI|0)==(ci|0),kc){e[k$>>2]=gn,e[wc>>2]=w$,vt=gn;break}else Q2();while(!1);if(Lc=(gA|0)==0,Lc)break;y1=Qe+28|0,F0=y1+li|0,S$=A6+F0|0,Mc=e[S$>>2]|0,Nc=553352+(Mc<<2)|0,MI=e[Nc>>2]|0,TI=(ci|0)==(MI|0);do if(TI){if(e[Nc>>2]=vt,qE=(vt|0)==0,!qE)break;GI=1<>>0>>0,HI&&Q2(),Uc=gA+16|0,qI=e[Uc>>2]|0,YI=(qI|0)==(ci|0),YI?e[Uc>>2]=vt:(JI=gA+20|0,e[JI>>2]=vt),Oc=(vt|0)==0,Oc)break i;while(!1);Pc=e[138266]|0,KI=vt>>>0>>0,KI&&Q2(),Hc=vt+24|0,e[Hc>>2]=gA,k1=li|16,M0=k1+Qe|0,b$=A6+M0|0,Ys=e[b$>>2]|0,qc=(Ys|0)==0;do if(!qc)if(zI=Ys>>>0>>0,zI)Q2();else{ZI=vt+16|0,e[ZI>>2]=Ys,WI=Ys+24|0,e[WI>>2]=vt;break}while(!1);if(H0=s1+k1|0,Yc=A6+H0|0,Js=e[Yc>>2]|0,jI=(Js|0)==0,jI)break;if(XI=e[138266]|0,ed=Js>>>0>>0,ed)Q2();else{td=vt+20|0,e[td>>2]=Js,id=Js+24|0,e[id>>2]=vt;break}}while(!1);A2=uc|li,R0=A2+Qe|0,nd=A6+R0|0,Ad=uc+aA|0,Kg=nd,Wt=Ad}else Kg=ci,Wt=aA;if(Jc=Kg+4|0,sd=e[Jc>>2]|0,od=sd&-2,e[Jc>>2]=od,$d=Wt|1,y0=i0+4|0,ad=A6+y0|0,e[ad>>2]=$d,E0=Wt+i0|0,Ks=A6+E0|0,e[Ks>>2]=Wt,Kc=Wt>>>3,ld=Wt>>>0<256,ld){hn=Kc<<1,Vc=553088+(hn<<2)|0,zc=e[138262]|0,_$=1<>2]|0,fd=e[138266]|0,Id=jc>>>0>>0,!Id){L=Wc,K$=jc;break}Q2()}while(!1);e[L>>2]=zt,dd=K$+12|0,e[dd>>2]=zt,m1=i0+8|0,Ed=A6+m1|0,e[Ed>>2]=K$,p1=i0+12|0,Vs=A6+p1|0,e[Vs>>2]=Vc;break}R$=Wt>>>8,Cd=(R$|0)==0;do if(Cd)vr=0;else{if(Bd=Wt>>>0>16777215,Bd){vr=31;break}md=R$+1048320|0,pd=md>>>16,Xc=pd&8,eg=R$<>>16,tg=wd&4,yr=tg|Xc,ig=eg<>>16,ng=kd&2,zs=yr|ng,Sd=14-zs|0,Dd=ig<>>15,Ag=Sd+Zs|0,bd=Ag<<1,_d=Ag+7|0,sg=Wt>>>_d,Rd=sg&1,xd=Rd|bd,vr=xd}while(!1);if(x$=553352+(vr<<2)|0,p0=i0+28|0,Fd=A6+p0|0,e[Fd>>2]=vr,V0=i0+16|0,Ld=A6+V0|0,T0=i0+20|0,Md=A6+T0|0,e[Md>>2]=0,e[Ld>>2]=0,og=e[138263]|0,$g=1<>2]=zt,r1=i0+24|0,hA=A6+r1|0,e[hA>>2]=x$,e1=i0+12|0,Nd=A6+e1|0,e[Nd>>2]=zt,i1=i0+8|0,Ud=A6+i1|0,e[Ud>>2]=zt;break}F$=e[x$>>2]|0,cg=F$+4|0,Od=e[cg>>2]|0,Pd=Od&-8,Hd=(Pd|0)==(Wt|0);i:do if(Hd)Sr=F$;else{for(qd=(vr|0)==31,gg=vr>>>1,Yd=25-gg|0,Jd=qd?0:Yd,Kd=Wt<>>31,dg=(X$+16|0)+(Ig<<2)|0,fA=e[dg>>2]|0,Qi=(fA|0)==0,Qi){s=dg,PE=X$;break}if(Vd=BA<<1,zd=fA+4|0,fg=e[zd>>2]|0,ug=fg&-8,Zd=(ug|0)==(Wt|0),Zd){Sr=fA;break i}else BA=Vd,X$=fA}if(er=e[138266]|0,Wd=s>>>0>>0,Wd)Q2();else{e[s>>2]=zt,E1=i0+24|0,jd=A6+E1|0,e[jd>>2]=PE,u1=i0+12|0,Xd=A6+u1|0,e[Xd>>2]=zt,d1=i0+8|0,eE=A6+d1|0,e[eE>>2]=zt;break t}}while(!1);if(L$=Sr+8|0,Xs=e[L$>>2]|0,Cg=e[138266]|0,Bg=Xs>>>0>=Cg>>>0,ta=Sr>>>0>=Cg>>>0,tE=Bg&ta,tE){uA=Xs+12|0,e[uA>>2]=zt,e[L$>>2]=zt,z0=i0+8|0,iE=A6+z0|0,e[iE>>2]=Xs,I1=i0+12|0,to=A6+I1|0,e[to>>2]=Sr,h1=i0+24|0,M$=A6+h1|0,e[M$>>2]=0;break}else Q2()}while(!1);return a1=Hs|8,rE=A6+a1|0,Je=rE,Je|0}else wA=553496;for(;;){if(T$=e[wA>>2]|0,nE=T$>>>0>N9>>>0,!nE&&(AE=wA+4|0,mg=e[AE>>2]|0,io=T$+mg|0,sE=io>>>0>N9>>>0,sE)){c=T$,f=mg,d=io;break}oE=wA+8|0,$E=e[oE>>2]|0,wA=$E}if(s0=f+-47|0,$0=f+-39|0,aE=c+$0|0,Qg=aE,lE=Qg&7,z7=(lE|0)==0,m4=0-Qg|0,Zt=m4&7,cE=z7?0:Zt,$1=s0+cE|0,wg=c+$1|0,G$=N9+16|0,gE=wg>>>0>>0,wr=gE?N9:wg,IA=wr+8|0,hE=Qe+-40|0,fE=A6+8|0,kg=fE,N$=kg&7,uE=(N$|0)==0,Sg=0-kg|0,Dg=Sg&7,U$=uE?0:Dg,O$=A6+U$|0,bg=hE-U$|0,e[138268]=O$,e[138265]=bg,dA=bg|1,Z=U$+4|0,P$=A6+Z|0,e[P$>>2]=dA,A1=Qe+-36|0,_g=A6+A1|0,e[_g>>2]=40,IE=e[138384]|0,e[138269]=IE,fn=wr+4|0,e[fn>>2]=27,e[IA>>2]=e[138374]|0,e[IA+4>>2]=e[138375]|0,e[IA+8>>2]=e[138376]|0,e[IA+12>>2]=e[138377]|0,e[138374]=A6,e[138375]=Qe,e[138377]=0,e[138376]=IA,Rg=wr+28|0,e[Rg>>2]=7,ro=wr+32|0,EE=ro>>>0>>0,EE)for(yi=Rg;xg=yi+4|0,e[xg>>2]=7,CE=yi+8|0,BE=CE>>>0>>0,BE;)yi=xg;if(mE=(wr|0)==(N9|0),!mE){if(pE=wr,QE=N9,wi=pE-QE|0,wE=e[fn>>2]|0,kE=wE&-2,e[fn>>2]=kE,vE=wi|1,Fg=N9+4|0,e[Fg>>2]=vE,e[wr>>2]=wi,gi=wi>>>3,no=wi>>>0<256,no){H$=gi<<1,Lg=553088+(H$<<2)|0,Mg=e[138262]|0,Tg=1<>2]|0,_E=e[138266]|0,RE=Ug>>>0<_E>>>0,RE?Q2():(_=Ng,Y$=Ug)),e[_>>2]=N9,Og=Y$+12|0,e[Og>>2]=N9,xE=N9+8|0,e[xE>>2]=Y$,Ao=N9+12|0,e[Ao>>2]=Lg;break}if(so=wi>>>8,FE=(so|0)==0,FE?tr=0:(q$=wi>>>0>16777215,q$?tr=31:(LE=so+1048320|0,ME=LE>>>16,Pg=ME&8,CA=so<>>16,a2=GE&4,i2=a2|Pg,o2=CA<>>16,f2=n2&2,e2=i2|f2,y2=14-e2|0,S2=o2<>>15,M2=y2+w2|0,_2=M2<<1,G2=M2+7|0,u2=wi>>>G2,K2=u2&1,N2=K2|_2,tr=N2)),q2=553352+(tr<<2)|0,T2=N9+28|0,e[T2>>2]=tr,O2=N9+20|0,e[O2>>2]=0,e[G$>>2]=0,V2=e[138263]|0,P2=1<>2]=N9,X2=N9+24|0,e[X2>>2]=q2,v5=N9+12|0,e[v5>>2]=N9,z2=N9+8|0,e[z2>>2]=N9;break}f5=e[q2>>2]|0,w5=f5+4|0,O5=e[w5>>2]|0,k2=O5&-8,E5=(k2|0)==(wi|0);t:do if(E5)co=f5;else{for(r5=(tr|0)==31,x2=tr>>>1,R2=25-x2|0,B2=r5?0:R2,C5=wi<>>31,l5=(ea+16|0)+(s5<<2)|0,S5=e[l5>>2]|0,B5=(S5|0)==0,B5){$=l5,Yg=ea;break}if(x5=Z$<<1,u5=S5+4|0,D5=e[u5>>2]|0,H2=D5&-8,I5=(H2|0)==(wi|0),I5){co=S5;break t}else Z$=x5,ea=S5}if(M1=e[138266]|0,k5=$>>>0>>0,k5)Q2();else{e[$>>2]=N9,c5=N9+24|0,e[c5>>2]=Yg,o5=N9+12|0,e[o5>>2]=N9,c2=N9+8|0,e[c2>>2]=N9;break e}}while(!1);if(m5=co+8|0,e5=e[m5>>2]|0,n5=e[138266]|0,g5=e5>>>0>=n5>>>0,JE=co>>>0>=n5>>>0,J2=g5&JE,J2){h5=e5+12|0,e[h5>>2]=N9,e[m5>>2]=N9,t5=N9+8|0,e[t5>>2]=e5,b5=N9+12|0,e[b5>>2]=co,W2=N9+24|0,e[W2>>2]=0;break}else Q2()}}while(!1);if(F2=e[138265]|0,p5=F2>>>0>y4>>>0,p5)return q5=F2-y4|0,e[138265]=q5,e3=e[138268]|0,d5=e3+y4|0,e[138268]=d5,f3=q5|1,K=y4+4|0,g3=e3+K|0,e[g3>>2]=f3,K5=y4|3,t3=e3+4|0,e[t3>>2]=K5,A3=e3+8|0,Je=A3,Je|0}return F5=Gp()|0,e[F5>>2]=12,Je=0,Je|0}function I2(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,B6=0,z3=0,$6=0,m6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,s3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0,_4=0,M4=0,W4=0,d4=0,T4=0,G9=0,G4=0,A4=0,R4=0,c4=0,Ie=0,O9=0,d9=0,de=0,Me=0,ze=0,N4=0,Te=0,U4=0,j4=0,ke=0,Ze=0,V9=0,se=0,g4=0,D6=0,O4=0,R9=0,s4=0,D4=0,oe=0,z9=0,$e=0,ae=0,E4=0,X4=0,x4=0,le=0,E9=0,a6=0,Ge=0,o4=0,Ee=0,C4=0,$4=0,U6=0,ve=0,Se=0,We=0,a4=0,Q4=0,g8=0,H3=0,Q9=0,C9=0,F4=0,ee=0,$7=0,De=0;if(De=B,X=(t|0)==0,!X){U=t+-8|0,K2=e[138266]|0,C6=U>>>0>>0,C6&&Q2(),Q6=t+-4|0,o9=e[Q6>>2]|0,K9=o9&3,_4=(K9|0)==1,_4&&Q2(),O9=o9&-8,p=O9+-8|0,V9=t+p|0,o0=o9&1,j=(o0|0)==0;do if(j){if(k0=e[U>>2]|0,S0=(K9|0)==0,S0)return;if(Q=-8-k0|0,v0=t+Q|0,z0=k0+O9|0,y1=v0>>>0>>0,y1&&Q2(),P1=e[138267]|0,A2=(v0|0)==(P1|0),A2){if(z=O9+-4|0,n0=t+z|0,i0=e[n0>>2]|0,r0=i0&3,K=(r0|0)==3,!K){H3=v0,Q9=z0;break}e[138264]=z0,c0=i0&-2,e[n0>>2]=c0,A0=z0|1,b=Q+4|0,l0=t+b|0,e[l0>>2]=A0,e[V9>>2]=z0;return}if(n2=k0>>>3,N2=k0>>>0<256,N2){if(Y=Q+8|0,v5=t+Y|0,B2=e[v5>>2]|0,t0=Q+12|0,B5=t+t0|0,J2=e[B5>>2]|0,f3=n2<<1,q3=553088+(f3<<2)|0,C3=(B2|0)==(q3|0),C3||(h6=B2>>>0>>0,h6&&Q2(),o6=B2+12|0,v3=e[o6>>2]|0,O6=(v3|0)==(v0|0),O6||Q2()),J6=(J2|0)==(B2|0),J6){G6=1<>>0>>0,S6&&Q2(),V6=J2+8|0,F6=e[V6>>2]|0,F3=(F6|0)==(v0|0),F3?c=V6:Q2()),L6=B2+12|0,e[L6>>2]=J2,e[c>>2]=B2,H3=v0,Q9=z0;break}R=Q+24|0,X6=t+R|0,A9=e[X6>>2]|0,_=Q+12|0,W6=t+_|0,g9=e[W6>>2]|0,h9=(g9|0)==(v0|0);do if(h9){if(M=Q+20|0,r4=t+M|0,l4=e[r4>>2]|0,T9=(l4|0)==0,T9)if(L=Q+16|0,v9=t+L|0,I9=e[v9>>2]|0,P6=(I9|0)==0,P6){E9=0;break}else x4=I9,Ee=v9;else x4=l4,Ee=r4;for(;;){if(t9=x4+20|0,I4=e[t9>>2]|0,k4=(I4|0)==0,!k4){x4=I4,Ee=t9;continue}if(n4=x4+16|0,p9=e[n4>>2]|0,v4=(p9|0)==0,v4){le=x4,C4=Ee;break}else x4=p9,Ee=n4}if(S4=C4>>>0>>0,S4)Q2();else{e[C4>>2]=0,E9=le;break}}else if(P=Q+8|0,f9=t+P|0,s9=e[f9>>2]|0,L9=s9>>>0>>0,L9&&Q2(),d6=s9+12|0,M6=e[d6>>2]|0,e9=(M6|0)==(v0|0),e9||Q2(),M9=g9+8|0,u9=e[M9>>2]|0,u4=(u9|0)==(v0|0),u4){e[d6>>2]=g9,e[M9>>2]=s9,E9=g9;break}else Q2();while(!1);if(M4=(A9|0)==0,M4)H3=v0,Q9=z0;else{if(T=Q+28|0,W4=t+T|0,d4=e[W4>>2]|0,T4=553352+(d4<<2)|0,G9=e[T4>>2]|0,G4=(v0|0)==(G9|0),G4){if(e[T4>>2]=E9,a4=(E9|0)==0,a4){A4=1<>>0>>0,de&&Q2(),Me=A9+16|0,ze=e[Me>>2]|0,N4=(ze|0)==(v0|0),N4?e[Me>>2]=E9:(Te=A9+20|0,e[Te>>2]=E9),U4=(E9|0)==0,U4){H3=v0,Q9=z0;break}j4=e[138266]|0,ke=E9>>>0>>0,ke&&Q2(),Ze=E9+24|0,e[Ze>>2]=A9,G=Q+16|0,se=t+G|0,g4=e[se>>2]|0,D6=(g4|0)==0;do if(!D6)if(O4=g4>>>0>>0,O4)Q2();else{R9=E9+16|0,e[R9>>2]=g4,s4=g4+24|0,e[s4>>2]=E9;break}while(!1);if(N=Q+20|0,D4=t+N|0,oe=e[D4>>2]|0,z9=(oe|0)==0,z9)H3=v0,Q9=z0;else if($e=e[138266]|0,Z=oe>>>0<$e>>>0,Z)Q2();else{V=E9+20|0,e[V>>2]=oe,s0=oe+24|0,e[s0>>2]=E9,H3=v0,Q9=z0;break}}}else H3=U,Q9=O9;while(!1);if($0=H3>>>0>>0,$0||Q2(),D=O9+-4|0,g0=t+D|0,f0=e[g0>>2]|0,Q0=f0&1,d0=(Q0|0)==0,d0&&Q2(),y0=f0&2,h0=(y0|0)==0,h0){if(E0=e[138268]|0,C0=(V9|0)==(E0|0),C0){if(u0=e[138265]|0,J0=u0+Q9|0,e[138265]=J0,e[138268]=H3,D0=J0|1,m0=H3+4|0,e[m0>>2]=D0,x0=e[138267]|0,F0=(H3|0)==(x0|0),!F0)return;e[138267]=0,e[138264]=0;return}if(M0=e[138267]|0,G0=(V9|0)==(M0|0),G0){p0=e[138264]|0,H0=p0+Q9|0,e[138264]=H0,e[138267]=H3,R0=H0|1,L0=H3+4|0,e[L0>>2]=R0,Y0=H3+H0|0,e[Y0>>2]=H0;return}q0=f0&-8,N0=q0+Q9|0,V0=f0>>>3,T0=f0>>>0<256;do if(T0){if(U0=t+O9|0,r1=e[U0>>2]|0,y=O9|4,O0=t+y|0,e1=e[O0>>2]|0,i1=V0<<1,c1=553088+(i1<<2)|0,a1=(r1|0)==(c1|0),a1||(f1=e[138266]|0,g1=r1>>>0>>0,g1&&Q2(),l1=r1+12|0,A1=e[l1>>2]|0,$1=(A1|0)==(V9|0),$1||Q2()),n1=(e1|0)==(r1|0),n1){s1=1<>>0>>0,m1&&Q2(),p1=e1+8|0,Q1=e[p1>>2]|0,D1=(Q1|0)==(V9|0),D1?$=p1:Q2()),_1=r1+12|0,e[_1>>2]=e1,e[$>>2]=r1}else{J=O9+16|0,k1=t+J|0,x1=e[k1>>2]|0,W=O9|4,L1=t+W|0,N1=e[L1>>2]|0,w1=(N1|0)==(V9|0);do if(w1){if(H=O9+12|0,W1=t+H|0,O1=e[W1>>2]|0,l2=(O1|0)==0,l2)if(e0=O9+8|0,z1=t+e0|0,h2=e[z1>>2]|0,d2=(h2|0)==0,d2){o4=0;break}else a6=h2,$4=z1;else a6=O1,$4=W1;for(;;){if(s2=a6+20|0,V1=e[s2>>2]|0,g2=(V1|0)==0,!g2){a6=V1,$4=s2;continue}if($2=a6+16|0,t2=e[$2>>2]|0,a2=(t2|0)==0,a2){Ge=a6,U6=$4;break}else a6=t2,$4=$2}if(i2=e[138266]|0,o2=U6>>>0>>0,o2)Q2();else{e[U6>>2]=0,o4=Ge;break}}else if(U1=t+O9|0,Z1=e[U1>>2]|0,G1=e[138266]|0,v1=Z1>>>0>>0,v1&&Q2(),K1=Z1+12|0,H1=e[K1>>2]|0,q1=(H1|0)==(V9|0),q1||Q2(),Y1=N1+8|0,j1=e[Y1>>2]|0,r2=(j1|0)==(V9|0),r2){e[K1>>2]=N1,e[Y1>>2]=Z1,o4=N1;break}else Q2();while(!1);if(X1=(x1|0)==0,!X1){if(v=O9+20|0,f2=t+v|0,e2=e[f2>>2]|0,y2=553352+(e2<<2)|0,S2=e[y2>>2]|0,w2=(V9|0)==(S2|0),w2){if(e[y2>>2]=o4,Q4=(o4|0)==0,Q4){C2=1<>>0>>0,q2&&Q2(),T2=x1+16|0,O2=e[T2>>2]|0,V2=(O2|0)==(V9|0),V2?e[T2>>2]=o4:(A5=x1+20|0,e[A5>>2]=o4),P2=(o4|0)==0,P2)break;T1=e[138266]|0,j2=o4>>>0>>0,j2&&Q2(),R5=o4+24|0,e[R5>>2]=x1,S=O9+8|0,X2=t+S|0,z2=e[X2>>2]|0,f5=(z2|0)==0;do if(!f5)if(w5=z2>>>0>>0,w5)Q2();else{O5=o4+16|0,e[O5>>2]=z2,a5=z2+24|0,e[a5>>2]=o4;break}while(!1);if(w=O9+12|0,k2=t+w|0,E5=e[k2>>2]|0,r5=(E5|0)==0,!r5)if(x2=e[138266]|0,R2=E5>>>0>>0,R2)Q2();else{C5=o4+20|0,e[C5>>2]=E5,x5=E5+24|0,e[x5>>2]=o4;break}}}while(!1);if(u5=N0|1,S5=H3+4|0,e[S5>>2]=u5,G5=H3+N0|0,e[G5>>2]=N0,D5=e[138267]|0,H2=(H3|0)==(D5|0),H2){e[138264]=N0;return}else C9=N0}else I5=f0&-2,e[g0>>2]=I5,s5=Q9|1,l5=H3+4|0,e[l5>>2]=s5,M1=H3+Q9|0,e[M1>>2]=Q9,C9=Q9;if(k5=C9>>>3,c5=C9>>>0<256,c5){o5=k5<<1,Z2=553088+(o5<<2)|0,c2=e[138262]|0,m5=1<>2]|0,b5=e[138266]|0,W2=t5>>>0>>0,W2?Q2():(f=h5,ae=t5)),e[f>>2]=H3,$5=ae+12|0,e[$5>>2]=H3,F2=H3+8|0,e[F2>>2]=ae,p5=H3+12|0,e[p5>>2]=Z2;return}q5=C9>>>8,e3=(q5|0)==0,e3?E4=0:(d5=C9>>>0>16777215,d5?E4=31:(g3=q5+1048320|0,K5=g3>>>16,t3=K5&8,A3=q5<>>16,V5=F5&4,y3=V5|t3,h3=A3<>>16,Z5=M3&2,Q3=y3|Z5,j5=14-Q3|0,j3=h3<>>15,T3=j5+_3|0,$3=T3<<1,a3=T3+7|0,l3=C9>>>a3,Y5=l3&1,N5=Y5|$3,E4=N5)),P5=553352+(E4<<2)|0,y5=H3+28|0,e[y5>>2]=E4,G3=H3+16|0,L5=H3+20|0,e[L5>>2]=0,e[G3>>2]=0,t6=e[138263]|0,i3=1<>2]=H3,w3=H3+24|0,e[w3>>2]=P5,p3=H3+12|0,e[p3>>2]=H3,X3=H3+8|0,e[X3>>2]=H3;else{V3=e[P5>>2]|0,N3=V3+4|0,z5=e[N3>>2]|0,k3=z5&-8,c3=(k3|0)==(C9|0);t:do if(c3)ve=V3;else{for(U3=(E4|0)==31,u3=E4>>>1,y6=25-u3|0,w6=U3?0:y6,k6=C9<>>31,W3=(Se+16|0)+(Z3<<2)|0,$6=e[W3>>2]|0,f6=($6|0)==0,f6){n=W3,We=Se;break}if(B6=X4<<1,z3=$6+4|0,m6=e[z3>>2]|0,_6=m6&-8,Y6=(_6|0)==(C9|0),Y6){ve=$6;break t}else X4=B6,Se=$6}if(O3=e[138266]|0,S3=n>>>0>>0,S3)Q2();else{e[n>>2]=H3,P3=H3+24|0,e[P3>>2]=We,Y3=H3+12|0,e[Y3>>2]=H3,v6=H3+8|0,e[v6>>2]=H3;break e}}while(!1);if(i6=ve+8|0,r3=e[i6>>2]|0,s3=e[138266]|0,r6=r3>>>0>=s3>>>0,g8=ve>>>0>=s3>>>0,u6=r6&g8,u6){D3=r3+12|0,e[D3>>2]=H3,e[i6>>2]=H3,T6=H3+8|0,e[T6>>2]=r3,e6=H3+12|0,e[e6>>2]=ve,p6=H3+24|0,e[p6>>2]=0;break}else Q2()}while(!1);if(R6=e[138270]|0,K6=R6+-1|0,e[138270]=K6,I6=(K6|0)==0,I6)ee=553504;else return;for(;F4=e[ee>>2]|0,x3=(F4|0)==0,Z6=F4+8|0,!x3;)ee=Z6;e[138270]=-1}}function t4(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0;return b=B,$=(t|0)==0,$?D=0:(c=i5(n,t)|0,I=n|t,C=I>>>0>65535,C?(p=(c>>>0)/(t>>>0)&-1,m=(p|0)==(n|0),s=m?c:-1,D=s):D=c),v=k9(D)|0,S=(v|0)==0,S||(w=v+-4|0,y=e[w>>2]|0,f=y&3,d=(f|0)==0,d)||Ae(v|0,0,D|0)|0,v|0}function Gi(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0;return Y=B,s=(t|0)==0,s?($=k9(n)|0,P=$,P|0):(y=n>>>0>4294967231,y?(R=Gp()|0,e[R>>2]=12,P=0,P|0):(_=n>>>0<11,L=n+11|0,M=L&-8,T=_?16:M,G=t+-8|0,N=jS(G,T)|0,c=(N|0)==0,c?(d=k9(n)|0,I=(d|0)==0,I?(P=0,P|0):(C=t+-4|0,p=e[C>>2]|0,m=p&-8,v=p&3,S=(v|0)==0,w=S?8:4,D=m-w|0,Q=D>>>0>>0,b=Q?D:n,i4(d|0,t|0,b|0)|0,I2(t),P=d,P|0)):(f=N+8|0,P=f,P|0)))}function jS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0;if(V5=B,G=t+4|0,N=e[G>>2]|0,w1=N&-8,r2=t+w1|0,$2=e[138266]|0,w2=N&3,f3=t>>>0>=$2>>>0,g3=(w2|0)!=1,K5=g3&f3,V2=t>>>0>>0,t3=K5&V2,t3||Q2(),b=w1|4,O5=t+b|0,S5=e[O5>>2]|0,o5=S5&1,P=(o5|0)==0,P&&Q2(),Z=(w2|0)==0,Z)return $0=n>>>0<256,$0?(d5=0,d5|0):(J0=n+4|0,L0=w1>>>0>>0,!L0&&(i1=w1-n|0,I1=e[138382]|0,k1=I1<<1,L1=i1>>>0>k1>>>0,!L1)?(d5=t,d5|0):(d5=0,d5|0));if(N1=w1>>>0>>0,!N1)return U1=w1-n|0,Z1=U1>>>0>15,Z1?(G1=t+n|0,v1=N&1,K1=v1|n,P1=K1|2,e[G>>2]=P1,Q=n+4|0,H1=t+Q|0,q1=U1|3,e[H1>>2]=q1,Y1=e[O5>>2]|0,j1=Y1|1,e[O5>>2]=j1,uQ(G1,U1),d5=t,d5|0):(d5=t,d5|0);if(W1=e[138268]|0,O1=(r2|0)==(W1|0),O1)return l2=e[138265]|0,z1=l2+w1|0,h2=z1>>>0>n>>>0,h2?(A2=z1-n|0,d2=t+n|0,s2=N&1,V1=s2|n,g2=V1|2,e[G>>2]=g2,D=n+4|0,t2=t+D|0,a2=A2|1,e[t2>>2]=a2,e[138268]=d2,e[138265]=A2,d5=t,d5|0):(d5=0,d5|0);if(i2=e[138267]|0,o2=(r2|0)==(i2|0),o2)return X1=e[138264]|0,n2=X1+w1|0,f2=n2>>>0>>0,f2?(d5=0,d5|0):(e2=n2-n|0,y2=e2>>>0>15,y2?(S2=t+n|0,C2=t+n2|0,M2=N&1,_2=M2|n,G2=_2|2,e[G>>2]=G2,S=n+4|0,u2=t+S|0,K2=e2|1,e[u2>>2]=K2,e[C2>>2]=e2,y=n2+4|0,N2=t+y|0,q2=e[N2>>2]|0,T2=q2&-2,e[N2>>2]=T2,A3=S2,E3=e2):(O2=N&1,A5=O2|n2,P2=A5|2,e[G>>2]=P2,v=n2+4|0,T1=t+v|0,j2=e[T1>>2]|0,R5=j2|1,e[T1>>2]=R5,A3=0,E3=0),e[138264]=E3,e[138267]=A3,d5=t,d5|0);if(X2=S5&2,v5=(X2|0)==0,!v5||(z2=S5&-8,f5=z2+w1|0,w5=f5>>>0>>0,w5))return d5=0,d5|0;a5=f5-n|0,k2=S5>>>3,E5=S5>>>0<256;do if(E5){if(p=w1+8|0,r5=t+p|0,x2=e[r5>>2]|0,m=w1+12|0,R2=t+m|0,B2=e[R2>>2]|0,C5=k2<<1,x5=553088+(C5<<2)|0,u5=(x2|0)==(x5|0),u5||(G5=x2>>>0<$2>>>0,G5&&Q2(),D5=x2+12|0,H2=e[D5>>2]|0,I5=(H2|0)==(r2|0),I5||Q2()),s5=(B2|0)==(x2|0),s5){l5=1<>>0<$2>>>0,Z2&&Q2(),c2=B2+8|0,m5=e[c2>>2]|0,e5=(m5|0)==(r2|0),e5?$=c2:Q2()),n5=x2+12|0,e[n5>>2]=B2,e[$>>2]=x2}else{c=w1+24|0,g5=t+c|0,J2=e[g5>>2]|0,w=w1+12|0,h5=t+w|0,t5=e[h5>>2]|0,b5=(t5|0)==(r2|0);do if(b5){if(_=w1+20|0,o0=t+_|0,V=e[o0>>2]|0,s0=(V|0)==0,s0)if(R=w1+16|0,n0=t+R|0,i0=e[n0>>2]|0,r0=(i0|0)==0,r0){F2=0;break}else W2=i0,p5=n0;else W2=V,p5=o0;for(;;){if(K=W2+20|0,c0=e[K>>2]|0,A0=(c0|0)==0,!A0){W2=c0,p5=K;continue}if(l0=W2+16|0,j=e[l0>>2]|0,g0=(j|0)==0,g0){$5=W2,q5=p5;break}else W2=j,p5=l0}if(f0=q5>>>0<$2>>>0,f0)Q2();else{e[q5>>2]=0,F2=$5;break}}else if(C=w1+8|0,z=t+C|0,Y=e[z>>2]|0,t0=Y>>>0<$2>>>0,t0&&Q2(),J=Y+12|0,W=e[J>>2]|0,e0=(W|0)==(r2|0),e0||Q2(),H=t5+8|0,X=e[H>>2]|0,U=(X|0)==(r2|0),U){e[J>>2]=t5,e[H>>2]=Y,F2=t5;break}else Q2();while(!1);if(Q0=(J2|0)==0,!Q0){if(f=w1+28|0,d0=t+f|0,y0=e[d0>>2]|0,h0=553352+(y0<<2)|0,E0=e[h0>>2]|0,C0=(r2|0)==(E0|0),C0){if(e[h0>>2]=F2,e3=(F2|0)==0,e3){u0=1<>>0>>0,F0&&Q2(),M0=J2+16|0,G0=e[M0>>2]|0,p0=(G0|0)==(r2|0),p0?e[M0>>2]=F2:(H0=J2+20|0,e[H0>>2]=F2),R0=(F2|0)==0,R0)break;S0=e[138266]|0,Y0=F2>>>0>>0,Y0&&Q2(),q0=F2+24|0,e[q0>>2]=J2,d=w1+16|0,N0=t+d|0,V0=e[N0>>2]|0,T0=(V0|0)==0;do if(!T0)if(U0=V0>>>0>>0,U0)Q2();else{r1=F2+16|0,e[r1>>2]=V0,O0=V0+24|0,e[O0>>2]=F2;break}while(!1);if(I=w1+20|0,e1=t+I|0,v0=e[e1>>2]|0,c1=(v0|0)==0,!c1)if(a1=e[138266]|0,f1=v0>>>0>>0,f1)Q2();else{g1=F2+20|0,e[g1>>2]=v0,l1=v0+24|0,e[l1>>2]=F2;break}}}while(!1);return A1=a5>>>0<16,A1?($1=N&1,n1=f5|$1,s1=n1|2,e[G>>2]=s1,T=f5|4,z0=t+T|0,h1=e[z0>>2]|0,E1=h1|1,e[z0>>2]=E1,d5=t,d5|0):(u1=t+n|0,d1=N&1,m1=d1|n,p1=m1|2,e[G>>2]=p1,L=n+4|0,Q1=t+L|0,D1=a5|3,e[Q1>>2]=D1,M=f5|4,_1=t+M|0,y1=e[_1>>2]|0,x1=y1|1,e[_1>>2]=x1,uQ(u1,a5),d5=t,d5|0)}function uQ(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,O0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,J2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,q5=0,e3=0,d5=0,f3=0,g3=0,K5=0,t3=0,A3=0,E3=0,F5=0,V5=0,y3=0,h3=0,B3=0,q3=0,M3=0,Z5=0,Q3=0,j5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,Y5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,i3=0,o3=0,R3=0,h6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,z5=0,k3=0,c3=0,U3=0,o6=0,u3=0,y6=0,w6=0,k6=0,B6=0,z3=0,$6=0,m6=0,_6=0,Y6=0,C6=0,v3=0,Z3=0,W3=0,f6=0,O3=0,S3=0,P3=0,Y3=0,v6=0,i6=0,r3=0,O6=0,s3=0,r6=0,u6=0,D3=0,T6=0,e6=0,p6=0,R6=0,K6=0,I6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,S6=0,V6=0,Q6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,L9=0,d6=0,M6=0,e9=0,M9=0,u9=0,u4=0,r4=0,l4=0,T9=0,K9=0,v9=0,I9=0,P6=0,t9=0,I4=0,k4=0,n4=0,p9=0,v4=0,S4=0,_4=0,M4=0,W4=0,d4=0,T4=0,G9=0,G4=0,A4=0,R4=0,c4=0,Ie=0,O9=0,d9=0,de=0,Me=0,ze=0,N4=0,Te=0,U4=0,j4=0,ke=0,Ze=0,V9=0,se=0,g4=0,D6=0,O4=0,R9=0,s4=0,D4=0,oe=0,z9=0,$e=0,ae=0,E4=0,X4=0,x4=0,le=0,E9=0,a6=0,Ge=0,o4=0,Ee=0,C4=0;C4=B,V=t+n|0,s0=t+4|0,O2=e[s0>>2]|0,f6=O2&1,J6=(f6|0)==0;do if(J6){if(F6=e[t>>2]|0,L9=O2&3,v9=(L9|0)==0,v9)return;if(M4=0-F6|0,d9=t+M4|0,n0=F6+n|0,Q0=e[138266]|0,x0=d9>>>0>>0,x0&&Q2(),N0=e[138267]|0,f1=(d9|0)==(N0|0),f1){if(w=n+4|0,V9=t+w|0,i0=e[V9>>2]|0,r0=i0&3,K=(r0|0)==3,!K){s=d9,$=n0;break}e[138264]=n0,c0=i0&-2,e[V9>>2]=c0,A0=n0|1,_=4-F6|0,l0=t+_|0,e[l0>>2]=A0,e[V>>2]=n0;return}if(u1=F6>>>3,N1=F6>>>0<256,N1){if(J=8-F6|0,j1=t+J|0,g2=e[j1>>2]|0,W=12-F6|0,S2=t+W|0,V2=e[S2>>2]|0,O5=u1<<1,S5=553088+(O5<<2)|0,o5=(g2|0)==(S5|0),o5||(W2=g2>>>0>>0,W2&&Q2(),A3=g2+12|0,j5=e[A3>>2]|0,y5=(j5|0)==(d9|0),y5||Q2()),X3=(V2|0)==(g2|0),X3){k6=1<>>0>>0,T6&&Q2(),e6=V2+8|0,p6=e[e6>>2]|0,R6=(p6|0)==(d9|0),R6?C=e6:Q2()),K6=g2+12|0,e[K6>>2]=V2,e[C>>2]=g2,s=d9,$=n0;break}L=24-F6|0,I6=t+L|0,x3=e[I6>>2]|0,M=12-F6|0,Z6=t+M|0,G6=e[Z6>>2]|0,j6=(G6|0)==(d9|0);do if(j6){if(T=16-F6|0,G=T+4|0,A9=t+G|0,W6=e[A9>>2]|0,g9=(W6|0)==0,g9)if(h9=t+T|0,f9=e[h9>>2]|0,s9=(f9|0)==0,s9){s4=0;break}else O4=f9,$e=h9;else O4=W6,$e=A9;for(;;){if(o9=O4+20|0,d6=e[o9>>2]|0,M6=(d6|0)==0,!M6){O4=d6,$e=o9;continue}if(e9=O4+16|0,M9=e[e9>>2]|0,u9=(M9|0)==0,u9){R9=O4,ae=$e;break}else O4=M9,$e=e9}if(u4=ae>>>0>>0,u4)Q2();else{e[ae>>2]=0,s4=R9;break}}else if(t0=8-F6|0,r9=t+t0|0,x6=e[r9>>2]|0,N6=x6>>>0>>0,N6&&Q2(),S6=x6+12|0,V6=e[S6>>2]|0,Q6=(V6|0)==(d9|0),Q6||Q2(),F3=G6+8|0,L6=e[F3>>2]|0,X6=(L6|0)==(d9|0),X6){e[S6>>2]=G6,e[F3>>2]=x6,s4=G6;break}else Q2();while(!1);if(r4=(x3|0)==0,r4)s=d9,$=n0;else{if(P=28-F6|0,l4=t+P|0,T9=e[l4>>2]|0,K9=553352+(T9<<2)|0,I9=e[K9>>2]|0,P6=(d9|0)==(I9|0),P6){if(e[K9>>2]=s4,a6=(s4|0)==0,a6){t9=1<>>0>>0,v4&&Q2(),S4=x3+16|0,_4=e[S4>>2]|0,W4=(_4|0)==(d9|0),W4?e[S4>>2]=s4:(d4=x3+20|0,e[d4>>2]=s4),T4=(s4|0)==0,T4){s=d9,$=n0;break}G9=e[138266]|0,G4=s4>>>0>>0,G4&&Q2(),A4=s4+24|0,e[A4>>2]=x3,z=16-F6|0,R4=t+z|0,c4=e[R4>>2]|0,Ie=(c4|0)==0;do if(!Ie)if(O9=c4>>>0>>0,O9)Q2();else{de=s4+16|0,e[de>>2]=c4,Me=c4+24|0,e[Me>>2]=s4;break}while(!1);if(Y=z+4|0,ze=t+Y|0,N4=e[ze>>2]|0,Te=(N4|0)==0,Te)s=d9,$=n0;else if(U4=e[138266]|0,j4=N4>>>0>>0,j4)Q2();else{ke=s4+20|0,e[ke>>2]=N4,Ze=N4+24|0,e[Ze>>2]=s4,s=d9,$=n0;break}}}else s=t,$=n;while(!1);if(j=e[138266]|0,$0=V>>>0>>0,$0&&Q2(),y=n+4|0,g0=t+y|0,f0=e[g0>>2]|0,d0=f0&2,y0=(d0|0)==0,y0){if(h0=e[138268]|0,E0=(V|0)==(h0|0),E0){if(C0=e[138265]|0,u0=C0+$|0,e[138265]=u0,e[138268]=s,k0=u0|1,J0=s+4|0,e[J0>>2]=k0,D0=e[138267]|0,m0=(s|0)==(D0|0),!m0)return;e[138267]=0,e[138264]=0;return}if(F0=e[138267]|0,M0=(V|0)==(F0|0),M0){G0=e[138264]|0,p0=G0+$|0,e[138264]=p0,e[138267]=s,H0=p0|1,R0=s+4|0,e[R0>>2]=H0,S0=s+p0|0,e[S0>>2]=p0;return}L0=f0&-8,Y0=L0+$|0,q0=f0>>>3,V0=f0>>>0<256;do if(V0){if(b=n+8|0,T0=t+b|0,U0=e[T0>>2]|0,R=n+12|0,r1=t+R|0,O0=e[r1>>2]|0,e1=q0<<1,v0=553088+(e1<<2)|0,i1=(U0|0)==(v0|0),i1||(c1=U0>>>0>>0,c1&&Q2(),a1=U0+12|0,g1=e[a1>>2]|0,l1=(g1|0)==(V|0),l1||Q2()),A1=(O0|0)==(U0|0),A1){$1=1<>>0>>0,h1&&Q2(),E1=O0+8|0,d1=e[E1>>2]|0,m1=(d1|0)==(V|0),m1?I=E1:Q2()),p1=U0+12|0,e[p1>>2]=O0,e[I>>2]=U0}else{N=n+24|0,Q1=t+N|0,D1=e[Q1>>2]|0,e0=n+12|0,_1=t+e0|0,y1=e[_1>>2]|0,k1=(y1|0)==(V|0);do if(k1){if(X=n+20|0,H1=t+X|0,q1=e[H1>>2]|0,Y1=(q1|0)==0,Y1)if(H=n+16|0,r2=t+H|0,W1=e[r2>>2]|0,O1=(W1|0)==0,O1){z9=0;break}else D4=W1,E4=r2;else D4=q1,E4=H1;for(;;){if(l2=D4+20|0,z1=e[l2>>2]|0,h2=(z1|0)==0,!h2){D4=z1,E4=l2;continue}if(A2=D4+16|0,d2=e[A2>>2]|0,s2=(d2|0)==0,s2){oe=D4,X4=E4;break}else D4=d2,E4=A2}if(V1=X4>>>0>>0,V1)Q2();else{e[X4>>2]=0,z9=oe;break}}else if(Q=n+8|0,x1=t+Q|0,L1=e[x1>>2]|0,w1=L1>>>0>>0,w1&&Q2(),U1=L1+12|0,Z1=e[U1>>2]|0,G1=(Z1|0)==(V|0),G1||Q2(),v1=y1+8|0,K1=e[v1>>2]|0,P1=(K1|0)==(V|0),P1){e[U1>>2]=y1,e[v1>>2]=L1,z9=y1;break}else Q2();while(!1);if($2=(D1|0)==0,!$2){if(o0=n+28|0,t2=t+o0|0,a2=e[t2>>2]|0,i2=553352+(a2<<2)|0,o2=e[i2>>2]|0,X1=(V|0)==(o2|0),X1){if(e[i2>>2]=z9,Ge=(z9|0)==0,Ge){n2=1<>>0>>0,C2&&Q2(),M2=D1+16|0,_2=e[M2>>2]|0,G2=(_2|0)==(V|0),G2?e[M2>>2]=z9:(u2=D1+20|0,e[u2>>2]=z9),K2=(z9|0)==0,K2)break;N2=e[138266]|0,q2=z9>>>0>>0,q2&&Q2(),T2=z9+24|0,e[T2>>2]=D1,Z=n+16|0,A5=t+Z|0,P2=e[A5>>2]|0,T1=(P2|0)==0;do if(!T1)if(j2=P2>>>0>>0,j2)Q2();else{R5=z9+16|0,e[R5>>2]=P2,X2=P2+24|0,e[X2>>2]=z9;break}while(!1);if(D=n+20|0,v5=t+D|0,z2=e[v5>>2]|0,f5=(z2|0)==0,!f5)if(w5=e[138266]|0,a5=z2>>>0>>0,a5)Q2();else{k2=z9+20|0,e[k2>>2]=z2,E5=z2+24|0,e[E5>>2]=z9;break}}}while(!1);if(r5=Y0|1,x2=s+4|0,e[x2>>2]=r5,R2=s+Y0|0,e[R2>>2]=Y0,B2=e[138267]|0,C5=(s|0)==(B2|0),C5){e[138264]=Y0;return}else c=Y0}else x5=f0&-2,e[g0>>2]=x5,u5=$|1,G5=s+4|0,e[G5>>2]=u5,D5=s+$|0,e[D5>>2]=$,c=$;if(H2=c>>>3,I5=c>>>0<256,I5){s5=H2<<1,l5=553088+(s5<<2)|0,B5=e[138262]|0,M1=1<>2]|0,e5=e[138266]|0,n5=m5>>>0>>0,n5?Q2():(p=c2,se=m5)),e[p>>2]=s,g5=se+12|0,e[g5>>2]=s,J2=s+8|0,e[J2>>2]=se,h5=s+12|0,e[h5>>2]=l5;return}if(t5=c>>>8,b5=(t5|0)==0,b5?g4=0:($5=c>>>0>16777215,$5?g4=31:(F2=t5+1048320|0,p5=F2>>>16,q5=p5&8,e3=t5<>>16,g3=f3&4,K5=g3|q5,t3=e3<>>16,V5=F5&2,y3=K5|V5,h3=14-y3|0,B3=t3<>>15,M3=h3+q3|0,Z5=M3<<1,Q3=M3+7|0,j3=c>>>Q3,_3=j3&1,T3=_3|Z5,g4=T3)),$3=553352+(g4<<2)|0,a3=s+28|0,e[a3>>2]=g4,l3=s+16|0,C3=s+20|0,e[C3>>2]=0,e[l3>>2]=0,Y5=e[138263]|0,N5=1<>2]=s,t6=s+24|0,e[t6>>2]=$3,i3=s+12|0,e[i3>>2]=s,o3=s+8|0,e[o3>>2]=s;return}R3=e[$3>>2]|0,h6=R3+4|0,m3=e[h6>>2]|0,w3=m3&-8,p3=(w3|0)==(c|0);e:do if(p3)x4=R3;else{for(V3=(g4|0)==31,N3=g4>>>1,z5=25-N3|0,k3=V3?0:z5,c3=c<>>31,$6=(le+16|0)+(z3<<2)|0,u3=e[$6>>2]|0,m6=(u3|0)==0,m6){f=$6,E9=le;break}if(U3=D6<<1,o6=u3+4|0,y6=e[o6>>2]|0,w6=y6&-8,B6=(w6|0)==(c|0),B6){x4=u3;break e}else D6=U3,le=u3}_6=e[138266]|0,Y6=f>>>0<_6>>>0,Y6&&Q2(),e[f>>2]=s,C6=s+24|0,e[C6>>2]=E9,v3=s+12|0,e[v3>>2]=s,Z3=s+8|0,e[Z3>>2]=s;return}while(!1);W3=x4+8|0,S3=e[W3>>2]|0,P3=e[138266]|0,Y3=S3>>>0>=P3>>>0,o4=x4>>>0>=P3>>>0,v6=Y3&o4,v6||Q2(),i6=S3+12|0,e[i6>>2]=s,e[W3>>2]=s,r3=s+8|0,e[r3>>2]=S3,O6=s+12|0,e[O6>>2]=x4,s3=s+24|0,e[s3>>2]=0}function XS(){e[6410]=U9}function Ae(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0;if($=t+s|0,(s|0)>=20){if(n=n&255,d=t&3,c=n|n<<8|n<<16|n<<24,f=$&-4,d)for(d=t+4-d|0;(t|0)<(d|0);)u[t>>0]=n,t=t+1|0;for(;(t|0)<(f|0);)e[t>>2]=c,t=t+4|0}for(;(t|0)<($|0);)u[t>>0]=n,t=t+1|0;return t-s|0}function Ka(t){t=t|0;var n=0;for(n=t;u[n>>0]|0;)n=n+1|0;return n-t|0}function IQ(t,n){t=t|0,n=n|0;var s=0,$=0;$=t+(Ka(t)|0)|0;do u[$+s>>0]=u[n+s>>0],s=s+1|0;while(u[n+(s-1)>>0]|0);return t|0}function dQ(t,n,s){t=t|0,n=n|0,s=s|0;var $=0;return(s|0)<32?($=(1<>>32-s,t<>>0,f=n+$+(c>>>0>>0|0)>>>0,q6=f,c|0|0}function YA(t,n,s){t=t|0,n=n|0,s=s|0;var $=0;return(s|0)<32?($=(1<>>s,t>>>s|(n&$)<<32-s):(q6=0,n>>>s-32|0)}function i4(t,n,s){t=t|0,n=n|0,s=s|0;var $=0;if((s|0)>=4096)return av(t|0,n|0,s|0)|0;if($=t|0,(t&3)==(n&3)){for(;t&3;){if(!(s|0))return $|0;u[t>>0]=u[n>>0]|0,t=t+1|0,n=n+1|0,s=s-1|0}for(;(s|0)>=4;)e[t>>2]=e[n>>2]|0,t=t+4|0,n=n+4|0,s=s-4|0}for(;(s|0)>0;)u[t>>0]=u[n>>0]|0,t=t+1|0,n=n+1|0,s=s-1|0;return $|0}function Ko(t,n,s){t=t|0,n=n|0,s=s|0;var $=0;if((n|0)<(t|0)&(t|0)<(n+s|0)){for($=t,n=n+s|0,t=t+s|0;(s|0)>0;)t=t-1|0,n=n-1|0,s=s-1|0,u[t>>0]=u[n>>0]|0;t=$}else i4(t,n,s)|0;return t|0}function rm(t,n){t=t|0,n=n|0;var s=0;do u[(t+s|0)>>0]=u[(n+s|0)>>0],s=s+1|0;while(u[n+(s-1)>>0]|0);return t|0}function JA(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0;return c=t-s>>>0,f=n-$>>>0,f=n-$-(s>>>0>t>>>0|0)>>>0,q6=f,c|0|0}function mb(t,n,s){t=t|0,n=n|0,s=s|0;var $=0;return(s|0)<32?($=(1<>s,t>>>s|(n&$)<<32-s):(q6=(n|0)<0?-1:0,n>>s-32|0)}function EQ(t){t=t|0;var n=0;return n=u[b9+(t&255)>>0]|0,(n|0)<8?n|0:(n=u[b9+(t>>8&255)>>0]|0,(n|0)<8?n+8|0:(n=u[b9+(t>>16&255)>>0]|0,(n|0)<8?n+16|0:(u[b9+(t>>>24)>>0]|0)+24|0))}function eD(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0;return s=t&65535,$=n&65535,c=i5($,s)|0,f=t>>>16,d=(c>>>16)+(i5($,f)|0)|0,I=n>>>16,C=i5(I,s)|0,q6=((d>>>16)+(i5(I,f)|0)|0)+(((d&65535)+C|0)>>>16)|0,0|(d+C<<16|c&65535)|0}function pb(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0;return c=n>>31|((n|0)<0?-1:0)<<1,f=((n|0)<0?-1:0)>>31|((n|0)<0?-1:0)<<1,d=$>>31|(($|0)<0?-1:0)<<1,I=(($|0)<0?-1:0)>>31|(($|0)<0?-1:0)<<1,C=JA(c^t,f^n,c,f)|0,p=q6,m=JA(d^s,I^$,d,I)|0,v=d^c,S=I^f,w=JC(C,p,m,q6,0)|0,y=JA(w^v,q6^S,v,S)|0,y|0}function Qb(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0;return y=B,B=B+8|0,c=y|0,f=n>>31|((n|0)<0?-1:0)<<1,d=((n|0)<0?-1:0)>>31|((n|0)<0?-1:0)<<1,I=$>>31|(($|0)<0?-1:0)<<1,C=(($|0)<0?-1:0)>>31|(($|0)<0?-1:0)<<1,p=JA(f^t,d^n,f,d)|0,m=q6,v=JA(I^s,C^$,I,C)|0,JC(p,m,v,q6,c)|0,S=JA(e[c>>2]^f,e[c+4>>2]^d,f,d)|0,w=q6,B=y,q6=w,S|0}function tD(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0;return c=t,f=s,d=eD(c,f)|0,I=q6,C=i5(n,f)|0,q6=((i5($,c)|0)+C|0)+I|I&0,0|d&-1|0}function yb(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0;return c=JC(t,n,s,$,0)|0,c|0}function wb(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0;return f=B,B=B+8|0,c=f|0,JC(t,n,s,$,c)|0,B=f,q6=e[c+4>>2]|0,e[c>>2]|0|0}function JC(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,R=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,$0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0;if(f=t,d=n,I=d,C=s,p=$,m=p,!(I|0))return v=(c|0)!=0,m|0?v?(e[c>>2]=t&-1,e[c+4>>2]=n&0,S0=0,R0=0,q6=S0,R0|0):(S0=0,R0=0,q6=S0,R0|0):(v&&(e[c>>2]=(f>>>0)%(C>>>0),e[c+4>>2]=0),S0=0,R0=(f>>>0)/(C>>>0)>>>0,q6=S0,R0|0);S=(m|0)==0;do if(C|0){if(!S){if(Y=HA(m|0)|0,t0=Y-(HA(I|0)|0)|0,t0>>>0<=31){J=t0+1|0,W=31-t0|0,e0=t0-31>>31,Z=J,o0=f>>>(J>>>0)&e0|I<>>(J>>>0)&e0,X=0,H=f<>2]=0|t&-1,e[c+4>>2]=d|n&0,S0=0,R0=0,q6=S0,R0|0):(S0=0,R0=0,q6=S0,R0|0)}if(R=C-1|0,R&C|0){L=(HA(C|0)|0)+33|0,M=L-(HA(I|0)|0)|0,T=64-M|0,G=32-M|0,N=G>>31,P=M-32|0,z=P>>31,Z=M,o0=G-1>>31&I>>>(P>>>0)|(I<>>(M>>>0))&z,U=z&I>>>(M>>>0),X=f<>>(P>>>0))&N|f<>31;break}return c|0&&(e[c>>2]=R&f,e[c+4>>2]=0),(C|0)==1?(S0=d|n&0,R0=0|t&-1,q6=S0,R0|0):(_=EQ(C|0)|0,S0=0|I>>>(_>>>0),R0=I<<32-_|f>>>(_>>>0)|0,q6=S0,R0|0)}else{if(S)return c|0&&(e[c>>2]=(I>>>0)%(C>>>0),e[c+4>>2]=0),S0=0,R0=(I>>>0)/(C>>>0)>>>0,q6=S0,R0|0;if(!(f|0))return c|0&&(e[c>>2]=0,e[c+4>>2]=(I>>>0)%(m>>>0)),S0=0,R0=(I>>>0)/(m>>>0)>>>0,q6=S0,R0|0;if(w=m-1|0,!(w&m|0))return c|0&&(e[c>>2]=0|t&-1,e[c+4>>2]=w&I|n&0),S0=0,R0=I>>>((EQ(m|0)|0)>>>0),q6=S0,R0|0;if(y=HA(m|0)|0,D=y-(HA(I|0)|0)|0,D>>>0<=30){Q=D+1|0,b=31-D|0,Z=Q,o0=I<>>(Q>>>0),U=I>>>(Q>>>0),X=0,H=f<>2]=0|t&-1,e[c+4>>2]=d|n&0,S0=0,R0=0,q6=S0,R0|0):(S0=0,R0=0,q6=S0,R0|0)}while(!1);if(!(Z|0))M0=H,F0=X,x0=U,m0=o0,D0=0,J0=0;else{for(V=0|s&-1,s0=p|$&0,n0=qA(V|0,s0|0,-1,-1)|0,i0=q6,j=H,l0=X,A0=U,c0=o0,K=Z,r0=0;$0=l0>>>31|j<<1,g0=r0|l0<<1,f0=0|(c0<<1|j>>>31),Q0=c0>>>31|A0<<1|0,JA(n0,i0,f0,Q0)|0,d0=q6,y0=d0>>31|((d0|0)<0?-1:0)<<1,h0=y0&1,E0=JA(f0,Q0,y0&V,(((d0|0)<0?-1:0)>>31|((d0|0)<0?-1:0)<<1)&s0)|0,C0=E0,u0=q6,k0=K-1|0,k0|0;)j=$0,l0=g0,A0=u0,c0=C0,K=k0,r0=h0;M0=$0,F0=g0,x0=u0,m0=C0,D0=0,J0=h0}return G0=F0,p0=0,H0=M0|p0,c|0&&(e[c>>2]=0|m0,e[c+4>>2]=x0|0),S0=(0|G0)>>>31|H0<<1|(p0<<1|G0>>>31)&0|D0,R0=(G0<<1|0)&-2|J0,q6=S0,R0|0}function iD(t,n,s,$,c){return t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,sm[t&3](n|0,s|0,$|0,c|0)|0}function rD(t,n){t=t|0,n=n|0,KA[t&7](n|0)}function nD(t,n,s){t=t|0,n=n|0,s=s|0,om[t&3](n|0,s|0)}function AD(t,n){return t=t|0,n=n|0,mQ[t&1](n|0)|0}function sD(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0,pQ[t&1](n|0,s|0,$|0)}function oD(t,n,s,$,c,f,d,I,C){return t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0,I=I|0,C=C|0,QQ[t&3](n|0,s|0,$|0,c|0,f|0,d|0,I|0,C|0)|0}function $D(t,n,s){return t=t|0,n=n|0,s=s|0,lt[t&15](n|0,s|0)|0}function aD(t,n,s,$,c,f){return t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,$m[t&7](n|0,s|0,$|0,c|0,f|0)|0}function lD(t,n,s,$){return t=t|0,n=n|0,s=s|0,$=$|0,Pr(0),0}function nm(t){t=t|0,Pr(1)}function CQ(t,n){t=t|0,n=n|0,Pr(2)}function cD(t){return t=t|0,Pr(3),0}function gD(t,n,s){t=t|0,n=n|0,s=s|0,Pr(4)}function BQ(t,n,s,$,c,f,d,I){return t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0,I=I|0,Pr(5),0}function Va(t,n){return t=t|0,n=n|0,Pr(6),0}function Am(t,n,s,$,c){return t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,Pr(7),0}var sm=[lD,Wv,Lv,Mv],KA=[nm,Vv,zv,oS,BS,mS,nm,nm],om=[CQ,Yv,pS,CQ],mQ=[cD,$S],pQ=[gD,AS],QQ=[BQ,kS,bS,BQ],lt=[Va,Jv,Kv,Zv,sS,aS,QS,yS,jv,CS,MS,Va,Va,Va,Va,Va],$m=[Am,wS,vS,SS,DS,_S,Am,Am];return{_memmove:Ko,_strlen:Ka,_strcat:IQ,_free:I2,_i64Add:qA,_encoder_clear:qS,_encoder_transfer_data:VS,_encoder_data_len:KS,_memset:Ae,_malloc:k9,_memcpy:i4,_encoder_init:HS,_encoder_process:JS,_bitshift64Lshr:YA,_bitshift64Shl:dQ,_strcpy:rm,_encoder_analysis_buffer:YS,runPostSets:XS,stackAlloc:gv,stackSave:hv,stackRestore:fv,establishStackSpace:uv,setThrew:Iv,setTempRet0:dv,getTempRet0:Ev,dynCall_iiiii:iD,dynCall_vi:rD,dynCall_vii:nD,dynCall_ii:AD,dynCall_viii:sD,dynCall_iiiiiiiii:oD,dynCall_iii:$D,dynCall_iiiiii:aD}}(o.asmGlobalArg,o.asmLibraryArg,_i),ZD=o.runPostSets=Y9.runPostSets,Kk=o._strlen=Y9._strlen,Vk=o._strcat=Y9._strcat,YB=o._free=Y9._free,WD=o._encoder_init=Y9._encoder_init,zk=o._i64Add=Y9._i64Add,Zk=o._memmove=Y9._memmove,jD=o._encoder_transfer_data=Y9._encoder_transfer_data,XD=o._encoder_process=Y9._encoder_process,eb=o._encoder_data_len=Y9._encoder_data_len,Wk=o._memset=Y9._memset,wh=o._malloc=Y9._malloc,jk=o._memcpy=Y9._memcpy,tb=o._encoder_clear=Y9._encoder_clear,Xk=o._bitshift64Lshr=Y9._bitshift64Lshr,ib=o._encoder_analysis_buffer=Y9._encoder_analysis_buffer,ev=o._strcpy=Y9._strcpy,tv=o._bitshift64Shl=Y9._bitshift64Shl,rb=o.dynCall_iiiii=Y9.dynCall_iiiii,nb=o.dynCall_vi=Y9.dynCall_vi,Ab=o.dynCall_vii=Y9.dynCall_vii,sb=o.dynCall_ii=Y9.dynCall_ii,ob=o.dynCall_viii=Y9.dynCall_viii,$b=o.dynCall_iiiiiiiii=Y9.dynCall_iiiiiiiii,ab=o.dynCall_iii=Y9.dynCall_iii,lb=o.dynCall_iiiiii=Y9.dynCall_iiiiii;x.stackAlloc=Y9.stackAlloc,x.stackSave=Y9.stackSave,x.stackRestore=Y9.stackRestore,x.establishStackSpace=Y9.establishStackSpace,x.setTempRet0=Y9.setTempRet0,x.getTempRet0=Y9.getTempRet0;var cb=function(){var i={math:{}};i.math.Long=function(q,w0){this.low_=q|0,this.high_=w0|0},i.math.Long.IntCache_={},i.math.Long.fromInt=function(q){if(-128<=q&&q<128){var w0=i.math.Long.IntCache_[q];if(w0)return w0}var W0=new i.math.Long(q|0,q<0?-1:0);return-128<=q&&q<128&&(i.math.Long.IntCache_[q]=W0),W0},i.math.Long.fromNumber=function(q){return isNaN(q)||!isFinite(q)?i.math.Long.ZERO:q<=-i.math.Long.TWO_PWR_63_DBL_?i.math.Long.MIN_VALUE:q+1>=i.math.Long.TWO_PWR_63_DBL_?i.math.Long.MAX_VALUE:q<0?i.math.Long.fromNumber(-q).negate():new i.math.Long(q%i.math.Long.TWO_PWR_32_DBL_|0,q/i.math.Long.TWO_PWR_32_DBL_|0)},i.math.Long.fromBits=function(q,w0){return new i.math.Long(q,w0)},i.math.Long.fromString=function(q,w0){if(q.length==0)throw Error("number format error: empty string");var W0=w0||10;if(W0<2||36=0)throw Error('number format error: interior "-" character: '+q);for(var E2=i.math.Long.fromNumber(Math.pow(W0,8)),W5=i.math.Long.ZERO,T5=0;T5=0?this.low_:i.math.Long.TWO_PWR_32_DBL_+this.low_},i.math.Long.prototype.getNumBitsAbs=function(){if(this.isNegative())return this.equals(i.math.Long.MIN_VALUE)?64:this.negate().getNumBitsAbs();for(var q=this.high_!=0?this.high_:this.low_,w0=31;w0>0&&!(q&1<0},i.math.Long.prototype.greaterThanOrEqual=function(q){return this.compare(q)>=0},i.math.Long.prototype.compare=function(q){if(this.equals(q))return 0;var w0=this.isNegative(),W0=q.isNegative();return w0&&!W0?-1:!w0&&W0?1:this.subtract(q).isNegative()?-1:1},i.math.Long.prototype.negate=function(){return this.equals(i.math.Long.MIN_VALUE)?i.math.Long.MIN_VALUE:this.not().add(i.math.Long.ONE)},i.math.Long.prototype.add=function(q){var w0=this.high_>>>16,W0=this.high_&65535,E2=this.low_>>>16,W5=this.low_&65535,T5=q.high_>>>16,b3=q.high_&65535,z6=q.low_>>>16,F9=q.low_&65535,_9=0,z4=0,j7=0,Ji=0;return Ji+=W5+F9,j7+=Ji>>>16,Ji&=65535,j7+=E2+z6,z4+=j7>>>16,j7&=65535,z4+=W0+b3,_9+=z4>>>16,z4&=65535,_9+=w0+T5,_9&=65535,i.math.Long.fromBits(j7<<16|Ji,_9<<16|z4)},i.math.Long.prototype.subtract=function(q){return this.add(q.negate())},i.math.Long.prototype.multiply=function(q){if(this.isZero())return i.math.Long.ZERO;if(q.isZero())return i.math.Long.ZERO;if(this.equals(i.math.Long.MIN_VALUE))return q.isOdd()?i.math.Long.MIN_VALUE:i.math.Long.ZERO;if(q.equals(i.math.Long.MIN_VALUE))return this.isOdd()?i.math.Long.MIN_VALUE:i.math.Long.ZERO;if(this.isNegative())return q.isNegative()?this.negate().multiply(q.negate()):this.negate().multiply(q).negate();if(q.isNegative())return this.multiply(q.negate()).negate();if(this.lessThan(i.math.Long.TWO_PWR_24_)&&q.lessThan(i.math.Long.TWO_PWR_24_))return i.math.Long.fromNumber(this.toNumber()*q.toNumber());var w0=this.high_>>>16,W0=this.high_&65535,E2=this.low_>>>16,W5=this.low_&65535,T5=q.high_>>>16,b3=q.high_&65535,z6=q.low_>>>16,F9=q.low_&65535,_9=0,z4=0,j7=0,Ji=0;return Ji+=W5*F9,j7+=Ji>>>16,Ji&=65535,j7+=E2*F9,z4+=j7>>>16,j7&=65535,j7+=W5*z6,z4+=j7>>>16,j7&=65535,z4+=W0*F9,_9+=z4>>>16,z4&=65535,z4+=E2*z6,_9+=z4>>>16,z4&=65535,z4+=W5*b3,_9+=z4>>>16,z4&=65535,_9+=w0*F9+W0*z6+E2*b3+W5*T5,_9&=65535,i.math.Long.fromBits(j7<<16|Ji,_9<<16|z4)},i.math.Long.prototype.div=function(q){if(q.isZero())throw Error("division by zero");if(this.isZero())return i.math.Long.ZERO;if(this.equals(i.math.Long.MIN_VALUE)){if(q.equals(i.math.Long.ONE)||q.equals(i.math.Long.NEG_ONE))return i.math.Long.MIN_VALUE;if(q.equals(i.math.Long.MIN_VALUE))return i.math.Long.ONE;var w0=this.shiftRight(1),W0=w0.div(q).shiftLeft(1);if(W0.equals(i.math.Long.ZERO))return q.isNegative()?i.math.Long.ONE:i.math.Long.NEG_ONE;var T5=this.subtract(q.multiply(W0)),E2=W0.add(T5.div(q));return E2}else if(q.equals(i.math.Long.MIN_VALUE))return i.math.Long.ZERO;if(this.isNegative())return q.isNegative()?this.negate().div(q.negate()):this.negate().div(q).negate();if(q.isNegative())return this.div(q.negate()).negate();for(var W5=i.math.Long.ZERO,T5=this;T5.greaterThanOrEqual(q);){for(var W0=Math.max(1,Math.floor(T5.toNumber()/q.toNumber())),b3=Math.ceil(Math.log(W0)/Math.LN2),z6=b3<=48?1:Math.pow(2,b3-48),F9=i.math.Long.fromNumber(W0),_9=F9.multiply(q);_9.isNegative()||_9.greaterThan(T5);)W0-=z6,F9=i.math.Long.fromNumber(W0),_9=F9.multiply(q);F9.isZero()&&(F9=i.math.Long.ONE),W5=W5.add(F9),T5=T5.subtract(_9)}return W5},i.math.Long.prototype.modulo=function(q){return this.subtract(this.div(q).multiply(q))},i.math.Long.prototype.not=function(){return i.math.Long.fromBits(~this.low_,~this.high_)},i.math.Long.prototype.and=function(q){return i.math.Long.fromBits(this.low_&q.low_,this.high_&q.high_)},i.math.Long.prototype.or=function(q){return i.math.Long.fromBits(this.low_|q.low_,this.high_|q.high_)},i.math.Long.prototype.xor=function(q){return i.math.Long.fromBits(this.low_^q.low_,this.high_^q.high_)},i.math.Long.prototype.shiftLeft=function(q){if(q&=63,q==0)return this;var w0=this.low_;if(q<32){var W0=this.high_;return i.math.Long.fromBits(w0<>>32-q)}else return i.math.Long.fromBits(0,w0<>>q|w0<<32-q,w0>>q)}else return i.math.Long.fromBits(w0>>q-32,w0>=0?0:-1)},i.math.Long.prototype.shiftRightUnsigned=function(q){if(q&=63,q==0)return this;var w0=this.high_;if(q<32){var W0=this.low_;return i.math.Long.fromBits(W0>>>q|w0<<32-q,w0>>>q)}else return q==32?i.math.Long.fromBits(w0,0):i.math.Long.fromBits(w0>>>q-32,0)};var a={appName:"Modern Browser"},g,u=0xdeadbeefcafe,O=(u&16777215)==15715070;function e(q,w0,W0){q!=null&&(typeof q=="number"?this.fromNumber(q,w0,W0):w0==null&&typeof q!="string"?this.fromString(q,256):this.fromString(q,w0))}function Z0(){return new e(null)}function t1(q,w0,W0,E2,W5,T5){for(;--T5>=0;){var b3=w0*this[q++]+W0[E2]+W5;W5=Math.floor(b3/67108864),W0[E2++]=b3&67108863}return W5}function b2(q,w0,W0,E2,W5,T5){for(var b3=w0&32767,z6=w0>>15;--T5>=0;){var F9=this[q]&32767,_9=this[q++]>>15,z4=z6*F9+_9*b3;F9=b3*F9+((z4&32767)<<15)+W0[E2]+(W5&1073741823),W5=(F9>>>30)+(z4>>>15)+z6*_9+(W5>>>30),W0[E2++]=F9&1073741823}return W5}function A(q,w0,W0,E2,W5,T5){for(var b3=w0&16383,z6=w0>>14;--T5>=0;){var F9=this[q]&16383,_9=this[q++]>>14,z4=z6*F9+_9*b3;F9=b3*F9+((z4&16383)<<14)+W0[E2]+W5,W5=(F9>>28)+(z4>>14)+z6*_9,W0[E2++]=F9&268435455}return W5}O&&a.appName=="Microsoft Internet Explorer"?(e.prototype.am=b2,g=30):O&&a.appName!="Netscape"?(e.prototype.am=t1,g=26):(e.prototype.am=A,g=28),e.prototype.DB=g,e.prototype.DM=(1<=0;--w0)q[w0]=this[w0];q.t=this.t,q.s=this.s}function Q8(q){this.t=1,this.s=q<0?-1:0,q>0?this[0]=q:q<-1?this[0]=q+DV:this.t=0}function J9(q){var w0=Z0();return w0.fromInt(q),w0}function c8(q,w0){var W0;if(w0==16)W0=4;else if(w0==8)W0=3;else if(w0==256)W0=8;else if(w0==2)W0=1;else if(w0==32)W0=5;else if(w0==4)W0=2;else{this.fromRadix(q,w0);return}this.t=0,this.s=0;for(var E2=q.length,W5=!1,T5=0;--E2>=0;){var b3=W0==8?q[E2]&255:U9(q,E2);if(b3<0){q.charAt(E2)=="-"&&(W5=!0);continue}W5=!1,T5==0?this[this.t++]=b3:T5+W0>this.DB?(this[this.t-1]|=(b3&(1<>this.DB-T5):this[this.t-1]|=b3<=this.DB&&(T5-=this.DB)}W0==8&&q[0]&128&&(this.s=-1,T5>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==q;)--this.t}function Li(q){if(this.s<0)return"-"+this.negate().toString(q);var w0;if(q==16)w0=4;else if(q==8)w0=3;else if(q==2)w0=1;else if(q==32)w0=5;else if(q==4)w0=2;else return this.toRadix(q);var W0=(1<0)for(z6>z6)>0&&(W5=!0,T5=b9(E2));b3>=0;)z6>(z6+=this.DB-w0)):(E2=this[b3]>>(z6-=w0)&W0,z6<=0&&(z6+=this.DB,--b3)),E2>0&&(W5=!0),W5&&(T5+=b9(E2));return W5?T5:"0"}function Mi(){var q=Z0();return e.ZERO.subTo(this,q),q}function gr(){return this.s<0?this.negate():this}function qa(q){var w0=this.s-q.s;if(w0!=0)return w0;var W0=this.t;if(w0=W0-q.t,w0!=0)return this.s<0?-w0:w0;for(;--W0>=0;)if((w0=this[W0]-q[W0])!=0)return w0;return 0}function GC(q){var w0=1,W0;return(W0=q>>>16)!=0&&(q=W0,w0+=16),(W0=q>>8)!=0&&(q=W0,w0+=8),(W0=q>>4)!=0&&(q=W0,w0+=4),(W0=q>>2)!=0&&(q=W0,w0+=2),(W0=q>>1)!=0&&(q=W0,w0+=1),w0}function dp(){return this.t<=0?0:this.DB*(this.t-1)+GC(this[this.t-1]^this.s&this.DM)}function Ep(q,w0){var W0;for(W0=this.t-1;W0>=0;--W0)w0[W0+q]=this[W0];for(W0=q-1;W0>=0;--W0)w0[W0]=0;w0.t=this.t+q,w0.s=this.s}function Cp(q,w0){for(var W0=q;W0=0;--z6)w0[z6+T5+1]=this[z6]>>E2|b3,b3=(this[z6]&W5)<=0;--z6)w0[z6]=0;w0[T5]=b3,w0.t=this.t+T5+1,w0.s=this.s,w0.clamp()}function mp(q,w0){w0.s=this.s;var W0=Math.floor(q/this.DB);if(W0>=this.t){w0.t=0;return}var E2=q%this.DB,W5=this.DB-E2,T5=(1<>E2;for(var b3=W0+1;b3>E2;E2>0&&(w0[this.t-W0-1]|=(this.s&T5)<>=this.DB;if(q.t>=this.DB;E2+=this.s}else{for(E2+=this.s;W0>=this.DB;E2-=q.s}w0.s=E2<0?-1:0,E2<-1?w0[W0++]=this.DV+E2:E2>0&&(w0[W0++]=E2),w0.t=W0,w0.clamp()}function pp(q,w0){var W0=this.abs(),E2=q.abs(),W5=W0.t;for(w0.t=W5+E2.t;--W5>=0;)w0[W5]=0;for(W5=0;W5=0;)q[W0]=0;for(W0=0;W0=w0.DV&&(q[W0+w0.t]-=w0.DV,q[W0+w0.t+1]=1)}q.t>0&&(q[q.t-1]+=w0.am(W0,w0[W0],q,2*W0,0,1)),q.s=0,q.clamp()}function yp(q,w0,W0){var E2=q.abs();if(!(E2.t<=0)){var W5=this.abs();if(W5.t0?(E2.lShiftTo(F9,T5),W5.lShiftTo(F9,W0)):(E2.copyTo(T5),W5.copyTo(W0));var _9=T5.t,z4=T5[_9-1];if(z4!=0){var j7=z4*(1<1?T5[_9-2]>>this.F2:0),Ji=this.FV/j7,Mp=(1<=0&&(W0[W0.t++]=1,W0.subTo(Ft,W0)),e.ONE.dlShiftTo(_9,Ft),Ft.subTo(T5,T5);T5.t<_9;)T5[T5.t++]=0;for(;--vh>=0;){var NC=W0[--Jo]==z4?this.DM:Math.floor(W0[Jo]*Ji+(W0[Jo-1]+Tp)*Mp);if((W0[Jo]+=T5.am(0,NC,W0,vh,0,_9))0&&W0.rShiftTo(F9,W0),b3<0&&e.ZERO.subTo(W0,W0)}}}function wp(q){var w0=Z0();return this.abs().divRemTo(q,null,w0),this.s<0&&w0.compareTo(e.ZERO)>0&&q.subTo(w0,w0),w0}function Ho(q){this.m=q}function kp(q){return q.s<0||q.compareTo(this.m)>=0?q.mod(this.m):q}function vp(q){return q}function Sp(q){q.divRemTo(this.m,null,q)}function Dp(q,w0,W0){q.multiplyTo(w0,W0),this.reduce(W0)}function qo(q,w0){q.squareTo(w0),this.reduce(w0)}Ho.prototype.convert=kp,Ho.prototype.revert=vp,Ho.prototype.reduce=Sp,Ho.prototype.mulTo=Dp,Ho.prototype.sqrTo=qo;function Yi(){if(this.t<1)return 0;var q=this[0];if(!(q&1))return 0;var w0=q&3;return w0=w0*(2-(q&15)*w0)&15,w0=w0*(2-(q&255)*w0)&255,w0=w0*(2-((q&65535)*w0&65535))&65535,w0=w0*(2-q*w0%this.DV)%this.DV,w0>0?this.DV-w0:-w0}function Rn(q){this.m=q,this.mp=q.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<0&&this.m.subTo(w0,w0),w0}function Yo(q){var w0=Z0();return q.copyTo(w0),this.reduce(w0),w0}function xn(q){for(;q.t<=this.mt2;)q[q.t++]=0;for(var w0=0;w0>15)*this.mpl&this.um)<<15)&q.DM;for(W0=w0+this.m.t,q[W0]+=this.m.am(0,E2,q,w0,0,this.m.t);q[W0]>=q.DV;)q[W0]-=q.DV,q[++W0]++}q.clamp(),q.drShiftTo(this.m.t,q),q.compareTo(this.m)>=0&&q.subTo(this.m,q)}function bp(q,w0){q.squareTo(w0),this.reduce(w0)}function _p(q,w0,W0){q.multiplyTo(w0,W0),this.reduce(W0)}Rn.prototype.convert=kh,Rn.prototype.revert=Yo,Rn.prototype.reduce=xn,Rn.prototype.mulTo=_p,Rn.prototype.sqrTo=bp;function Rp(){return(this.t>0?this[0]&1:this.s)==0}function PA(q,w0){if(q>4294967295||q<1)return e.ONE;var W0=Z0(),E2=Z0(),W5=w0.convert(this),T5=GC(q)-1;for(W5.copyTo(W0);--T5>=0;)if(w0.sqrTo(W0,E2),(q&1<0)w0.mulTo(E2,W5,W0);else{var b3=W0;W0=E2,E2=b3}return w0.revert(W0)}function xp(q,w0){var W0;return q<256||w0.isEven()?W0=new Ho(w0):W0=new Rn(w0),this.exp(q,W0)}e.prototype.copyTo=f4,e.prototype.fromInt=Q8,e.prototype.fromString=c8,e.prototype.clamp=V4,e.prototype.dlShiftTo=Ep,e.prototype.drShiftTo=Cp,e.prototype.lShiftTo=Bp,e.prototype.rShiftTo=mp,e.prototype.subTo=q6,e.prototype.multiplyTo=pp,e.prototype.squareTo=Qp,e.prototype.divRemTo=yp,e.prototype.invDigit=Yi,e.prototype.isEven=Rp,e.prototype.exp=PA,e.prototype.toString=Li,e.prototype.negate=Mi,e.prototype.abs=gr,e.prototype.compareTo=qa,e.prototype.bitLength=dp,e.prototype.mod=wp,e.prototype.modPowInt=xp,e.ZERO=J9(0),e.ONE=J9(1);function Fn(q,w0){this.fromInt(0),w0==null&&(w0=10);for(var W0=this.chunkSize(w0),E2=Math.pow(w0,W0),W5=!1,T5=0,b3=0,z6=0;z6=W0&&(this.dMultiply(E2),this.dAddOffset(b3,0),T5=0,b3=0)}T5>0&&(this.dMultiply(Math.pow(w0,T5)),this.dAddOffset(b3,0)),W5&&e.ZERO.subTo(this,this)}function Or(q){return Math.floor(Math.LN2*this.DB/Math.log(q))}function KB(){return this.s<0?-1:this.t<=0||this.t==1&&this[0]<=0?0:1}function i5(q){this[this.t]=this.am(0,q-1,this,0,0,this.t),++this.t,this.clamp()}function Fp(q,w0){if(q!=0){for(;this.t<=w0;)this[this.t++]=0;for(this[w0]+=q;this[w0]>=this.DV;)this[w0]-=this.DV,++w0>=this.t&&(this[this.t++]=0),++this[w0]}}function HA(q){if(q==null&&(q=10),this.signum()==0||q<2||q>36)return"0";var w0=this.chunkSize(q),W0=Math.pow(q,w0),E2=J9(W0),W5=Z0(),T5=Z0(),b3="";for(this.divRemTo(E2,W5,T5);W5.signum()>0;)b3=(W0+T5.intValue()).toString(q).substr(1)+b3,W5.divRemTo(E2,W5,T5);return T5.intValue().toString(q)+b3}function Pr(){if(this.s<0){if(this.t==1)return this[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this[0];if(this.t==0)return 0}return(this[1]&(1<<32-this.DB)-1)<>=this.DB;if(q.t>=this.DB;E2+=this.s}else{for(E2+=this.s;W0>=this.DB;E2+=q.s}w0.s=E2<0?-1:0,E2>0?w0[W0++]=E2:E2<-1&&(w0[W0++]=this.DV+E2),w0.t=W0,w0.clamp()}e.prototype.fromRadix=Fn,e.prototype.chunkSize=Or,e.prototype.signum=KB,e.prototype.dMultiply=i5,e.prototype.dAddOffset=Fp,e.prototype.toRadix=HA,e.prototype.intValue=Pr,e.prototype.addTo=Lp;var ei={abs:function(q,w0){var W0=new i.math.Long(q,w0),E2;W0.isNegative()?E2=W0.negate():E2=W0,D9[p8>>2]=E2.low_,D9[p8+4>>2]=E2.high_},ensureTemps:function(){ei.ensuredTemps||(ei.ensuredTemps=!0,ei.two32=new e,ei.two32.fromString("4294967296",10),ei.two64=new e,ei.two64.fromString("18446744073709551616",10),ei.temp1=new e,ei.temp2=new e)},lh2bignum:function(q,w0){var W0=new e;W0.fromString(w0.toString(),10);var E2=new e;W0.multiplyTo(ei.two32,E2);var W5=new e;W5.fromString(q.toString(),10);var T5=new e;return W5.addTo(E2,T5),T5},stringify:function(q,w0,W0){var E2=new i.math.Long(q,w0).toString();if(W0&&E2[0]=="-"){ei.ensureTemps();var W5=new e;W5.fromString(E2,10),E2=new e,ei.two64.addTo(W5,E2),E2=E2.toString(10)}return E2},fromString:function(q,w0,W0,E2,W5){ei.ensureTemps();var T5=new e;T5.fromString(q,w0);var b3=new e;b3.fromString(W0,10);var z6=new e;if(z6.fromString(E2,10),W5&&T5.compareTo(e.ZERO)<0){var F9=new e;T5.addTo(ei.two64,F9),T5=F9}var _9=!1;T5.compareTo(b3)<0?(T5=b3,_9=!0):T5.compareTo(z6)>0&&(T5=z6,_9=!0);var z4=i.math.Long.fromString(T5.toString());if(D9[p8>>2]=z4.low_,D9[p8+4>>2]=z4.high_,_9)throw"range error"}};return ei}();function Po(i){this.name="ExitStatus",this.message="Program terminated with exit("+i+")",this.status=i}Po.prototype=new Error,Po.prototype.constructor=Po;var hp,TC=null,iv=!1;xi=function i(){o.calledRun||JB(),o.calledRun||(xi=i)},o.callMain=o.callMain=function(a){K4(E7==0,"cannot call main when async dependencies remain! (listen on __ATMAIN__)"),K4(_C.length==0,"cannot call main when preRun functions remain to be called"),a=a||[],TA();var g=a.length+1;function u(){for(var t1=0;t1<3;t1++)O.push(0)}var O=[d3(Ur(o.thisProgram),"i8",No)];u();for(var e=0;e0||(Qh(),E7>0)||o.calledRun)return;function a(){o.calledRun||(o.calledRun=!0,!K0&&(TA(),np(),h&&TC!==null&&o.printErr("pre-main prep time: "+(Date.now()-TC)+" ms"),o.onRuntimeInitialized&&o.onRuntimeInitialized(),o._main&&Ip&&o.callMain(i),Ta()))}o.setStatus?(o.setStatus("Running..."),setTimeout(function(){setTimeout(function(){o.setStatus("")},1),a()},1)):a()}o.run=o.run=JB;function fp(i,a){if(!(a&&o.noExitRuntime))throw o.noExitRuntime||(K0=!0,F1=i,Ei=hp,RC(),o.onExit&&o.onExit(i)),E?(process.stdout.once("drain",function(){process.exit(i)}),console.log(" "),setTimeout(function(){process.exit(i)},500)):I0&&typeof quit=="function"&&quit(i),new Po(i)}o.exit=o.exit=fp;var up=[];function OA(i){i!==void 0?(o.print(i),o.printErr(i),i=JSON.stringify(i)):i="",K0=!0,F1=1;var a=` -If this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.`,g="abort("+i+") at "+SC()+a;throw up&&up.forEach(function(u){g=u(g,i)}),g}if(o.abort=o.abort=OA,o.preInit)for(typeof o.preInit=="function"&&(o.preInit=[o.preInit]);o.preInit.length>0;)o.preInit.pop()();var Ip=!0;o.noInitialRun&&(Ip=!1),JB();var rv=o._encoder_init,nv=o._encoder_clear,Av=o._encoder_analysis_buffer,sv=o._encoder_process,ov=o._encoder_data_len,$v=o._encoder_transfer_data,Ci=o.HEAPU8,Oa=o.HEAPU32,Pa=o.HEAPF32,Ha=function(i,a,g){this.numChannels=a,this.oggBuffers=[],this.encoder=rv(this.numChannels,i,g)};Ha.prototype.encode=function(i){for(var a=i[0].length,g=Av(this.encoder,a)>>2,u=0;u>2);this.process(a)},Ha.prototype.finish=function(){this.process(0);let i=this.oggBuffers.slice();return this.cleanup(),i},Ha.prototype.cancel=Ha.prototype.cleanup=function(){nv(this.encoder),delete this.encoder,delete this.oggBuffers},Ha.prototype.process=function(i){sv(this.encoder,i);var a=ov(this.encoder);if(a>0){var g=$v(this.encoder);this.oggBuffers.push(new Uint8Array(Ci.subarray(g,g+a)))}},TB.OggVorbisEncoder=Ha}};typeof window<"u"&&window===self&&TB.init();function ak(o,r,l,h){let E=new TB.OggVorbisEncoder(l,r,h);E.encode(o);let F=E.finish(),I0=F.reduce((P0,B1)=>P0+B1.length,0),b0=new Uint8Array(I0),B0=0;for(let P0 of F)b0.set(P0,B0),B0+=P0.length;return b0}document.body.classList.add("load");var lk=!1,Lr=class{channelColors=["rgba(255, 99, 71, 1)","rgba(255, 165, 0, 1)","rgba(255, 215, 0, 1)","rgba(50, 205, 50, 1)","rgba(60, 179, 113, 1)","rgba(0, 128, 0, 1)","rgba(0, 191, 255, 1)","rgba(65, 105, 225, 1)","rgba(138, 43, 226, 1)","rgba(50, 120, 125, 1)","rgba(255, 0, 255, 1)","rgba(255, 20, 147, 1)","rgba(218, 112, 214, 1)","rgba(240, 128, 128, 1)","rgba(255, 192, 203, 1)","rgba(255, 255, 0, 1)"];constructor(r,l,h){this.localeManager=h,this.context=r,this.isExporting=!1,this.compressionFunc=ak;let E;this.ready=new Promise(F=>E=F),this.initializeContext(r,l).then(()=>{E()})}saveBlob(r,l){let h=URL.createObjectURL(r),E=document.createElement("a");E.href=h,E.download=l,E.click(),X5(E)}sfError;async initializeContext(r,l){if(!r.audioWorklet)throw alert("Audio worklet is not supported on your browser. Sorry!"),"Not supported.";for(let x of document.querySelectorAll("*[translate-path]"))this.localeManager.bindObjectProperty(x,"innerText",x.getAttribute("translate-path"));for(let x of document.querySelectorAll("*[translate-path-title]"))this.localeManager.bindObjectProperty(x,"innerText",x.getAttribute("translate-path-title")+".title"),this.localeManager.bindObjectProperty(x,"title",x.getAttribute("translate-path-title")+".description");let E=lk?"synthetizer/worklet_system/worklet_processor.js":_B;lk&&console.warn("DEBUG ENABLED! DEBUGGING ENABLED!!"),r.audioWorklet&&await r.audioWorklet.addModule(new URL("../../spessasynth_lib/"+E,import.meta.url)),this.soundFont=l;let F=new URL("../../spessasynth_lib/synthetizer/audio_effects/impulse_response_2.flac",import.meta.url),b0=await(await fetch(F)).arrayBuffer();this.impulseResponse=await r.decodeAudioData(b0),this.synth=new Ah(r.destination,this.soundFont,void 0,void 0,{chorusEnabled:!0,chorusConfig:void 0,reverbImpulseResponse:this.impulseResponse,reverbEnabled:!0}),this.synth.eventHandler.addEvent("soundfonterror","manager-sf-error",x=>{this.sfError&&this.sfError(x)}),await this.synth.isReady,this.midHandler=new pB,this.wml=new QB(this.synth),this.keyboard=new EC(this.channelColors,this.synth);let B0=document.getElementById("note_canvas");B0.width=window.innerWidth*window.devicePixelRatio,B0.height=window.innerHeight*window.devicePixelRatio,this.renderer=new vi(this.channelColors,this.synth,B0),this.renderer.render(!0);let P0=!1,B1=()=>{if(B0.width=window.innerWidth*window.devicePixelRatio,B0.height=window.innerHeight*window.devicePixelRatio,this.renderer.computeColors(),vo){if(window.innerWidth/window.innerHeight>1){if(!P0){let x=document.getElementById("title_wrapper"),j0=document.getElementById("settings_div");P0=!0,x.parentElement.insertBefore(j0,x)}}else if(P0){let x=document.getElementById("title_wrapper"),j0=document.getElementById("settings_div");P0=!1,x.parentElement.insertBefore(x,j0)}}this.renderer.render(!1,!0)};B1(),window.addEventListener("resize",B1.bind(this)),window.addEventListener("orientationchange",B1.bind(this)),vo&&(this.renderer.keyRange={min:36,max:96},this.keyboard.setKeyRange({min:36,max:96},!1)),this.synthUI=new Fr(this.channelColors,document.getElementById("synthetizer_controls"),this.localeManager),this.synthUI.connectSynth(this.synth),this.playerUI=new DB(document.getElementById("player_info"),this.localeManager),this.seqUI=new bA(document.getElementById("sequencer_controls"),this.localeManager,this.playerUI),this.settingsUI=new di(document.getElementById("settings_div"),this.synthUI,this.seqUI,this.renderer,this.keyboard,this.midHandler,this.playerUI,this.localeManager),document.addEventListener("keydown",x=>{switch(x.key.toLowerCase()){case W7.cinematicMode:this.seq&&this.seq.pause();let j0=window.prompt(`Cinematic mode activated! +`));if(!a)return null;i.input=Ur(a,!0)}return i.input.shift()},put_char:function(i,a){a===null||a===10?(o.print(xA(i.output,0)),i.output=[]):a!=0&&i.output.push(a)},flush:function(i){i.output&&i.output.length>0&&(o.print(xA(i.output,0)),i.output=[])}},default_tty1_ops:{put_char:function(i,a){a===null||a===10?(o.printErr(xA(i.output,0)),i.output=[]):a!=0&&i.output.push(a)},flush:function(i){i.output&&i.output.length>0&&(o.printErr(xA(i.output,0)),i.output=[])}}},w9={ops_table:null,mount:function(i){return w9.createNode(null,"/",16895,0)},createNode:function(i,a,g,u){if(k.isBlkdev(g)||k.isFIFO(g))throw new k.ErrnoError(L2.EPERM);w9.ops_table||(w9.ops_table={dir:{node:{getattr:w9.node_ops.getattr,setattr:w9.node_ops.setattr,lookup:w9.node_ops.lookup,mknod:w9.node_ops.mknod,rename:w9.node_ops.rename,unlink:w9.node_ops.unlink,rmdir:w9.node_ops.rmdir,readdir:w9.node_ops.readdir,symlink:w9.node_ops.symlink},stream:{llseek:w9.stream_ops.llseek}},file:{node:{getattr:w9.node_ops.getattr,setattr:w9.node_ops.setattr},stream:{llseek:w9.stream_ops.llseek,read:w9.stream_ops.read,write:w9.stream_ops.write,allocate:w9.stream_ops.allocate,mmap:w9.stream_ops.mmap,msync:w9.stream_ops.msync}},link:{node:{getattr:w9.node_ops.getattr,setattr:w9.node_ops.setattr,readlink:w9.node_ops.readlink},stream:{}},chrdev:{node:{getattr:w9.node_ops.getattr,setattr:w9.node_ops.setattr},stream:k.chrdev_stream_ops}});var O=k.createNode(i,a,g,u);return k.isDir(O.mode)?(O.node_ops=w9.ops_table.dir.node,O.stream_ops=w9.ops_table.dir.stream,O.contents={}):k.isFile(O.mode)?(O.node_ops=w9.ops_table.file.node,O.stream_ops=w9.ops_table.file.stream,O.usedBytes=0,O.contents=null):k.isLink(O.mode)?(O.node_ops=w9.ops_table.link.node,O.stream_ops=w9.ops_table.link.stream):k.isChrdev(O.mode)&&(O.node_ops=w9.ops_table.chrdev.node,O.stream_ops=w9.ops_table.chrdev.stream),O.timestamp=Date.now(),i&&(i.contents[a]=O),O},getFileDataAsRegularArray:function(i){if(i.contents&&i.contents.subarray){for(var a=[],g=0;gi.contents.length&&(i.contents=w9.getFileDataAsRegularArray(i),i.usedBytes=i.contents.length),!i.contents||i.contents.subarray){var g=i.contents?i.contents.buffer.byteLength:0;if(g>=a)return;var u=1024*1024;a=Math.max(a,g*(g0&&i.contents.set(O.subarray(0,i.usedBytes),0);return}for(!i.contents&&a>0&&(i.contents=[]);i.contents.lengtha)i.contents.length=a;else for(;i.contents.length=i.node.usedBytes)return 0;var Z0=Math.min(i.node.usedBytes-O,u);if(J4(Z0>=0),Z0>8&&e.subarray)a.set(e.subarray(O,O+Z0),g);else for(var t1=0;t10||O+uM5.timestamp)&&(O.push(Q5),u++)});var e=[];if(Object.keys(a.entries).forEach(function(Q5){var p2=a.entries[Q5],M5=i.entries[Q5];M5||(e.push(Q5),u++)}),!u)return g(null);var Z0=!1,t1=0,b2=i.type==="remote"?i.db:a.db,A=b2.transaction([C7.DB_STORE_NAME],"readwrite"),o1=A.objectStore(C7.DB_STORE_NAME);function B(Q5){if(Q5)return B.errored?void 0:(B.errored=!0,g(Q5));if(++t1>=u)return g(null)}A.onerror=function(Q5){B(this.error),Q5.preventDefault()},O.sort().forEach(function(Q5){a.type==="local"?C7.loadRemoteEntry(o1,Q5,function(p2,M5){if(p2)return B(p2);C7.storeLocalEntry(Q5,M5,B)}):C7.loadLocalEntry(Q5,function(p2,M5){if(p2)return B(p2);C7.storeRemoteEntry(o1,Q5,M5,B)})}),e.sort().reverse().forEach(function(Q5){a.type==="local"?C7.removeLocalEntry(Q5,B):C7.removeRemoteEntry(o1,Q5,B)})}},l8={isWindows:!1,staticInit:function(){l8.isWindows=!!process.platform.match(/^win/)},mount:function(i){return J4(E),l8.createNode(null,"/",l8.getMode(i.opts.root),0)},createNode:function(i,a,g,u){if(!k.isDir(g)&&!k.isFile(g)&&!k.isLink(g))throw new k.ErrnoError(L2.EINVAL);var O=k.createNode(i,a,g);return O.node_ops=l8.node_ops,O.stream_ops=l8.stream_ops,O},getMode:function(i){var a;try{a=B7.lstatSync(i),l8.isWindows&&(a.mode=a.mode|(a.mode&146)>>1)}catch(g){throw g.code?new k.ErrnoError(L2[g.code]):g}return a.mode},realPath:function(i){for(var a=[];i.parent!==i;)a.push(i.name),i=i.parent;return a.push(i.mount.opts.root),a.reverse(),a9.join.apply(null,a)},flagsToPermissionStringMap:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},flagsToPermissionString:function(i){return i in l8.flagsToPermissionStringMap?l8.flagsToPermissionStringMap[i]:i},node_ops:{getattr:function(i){var a=l8.realPath(i),g;try{g=B7.lstatSync(a)}catch(u){throw u.code?new k.ErrnoError(L2[u.code]):u}return l8.isWindows&&!g.blksize&&(g.blksize=4096),l8.isWindows&&!g.blocks&&(g.blocks=(g.size+g.blksize-1)/g.blksize|0),{dev:g.dev,ino:g.ino,mode:g.mode,nlink:g.nlink,uid:g.uid,gid:g.gid,rdev:g.rdev,size:g.size,atime:g.atime,mtime:g.mtime,ctime:g.ctime,blksize:g.blksize,blocks:g.blocks}},setattr:function(i,a){var g=l8.realPath(i);try{if(a.mode!==void 0&&(B7.chmodSync(g,a.mode),i.mode=a.mode),a.timestamp!==void 0){var u=new Date(a.timestamp);B7.utimesSync(g,u,u)}a.size!==void 0&&B7.truncateSync(g,a.size)}catch(O){throw O.code?new k.ErrnoError(L2[O.code]):O}},lookup:function(i,a){var g=a9.join2(l8.realPath(i),a),u=l8.getMode(g);return l8.createNode(i,a,u)},mknod:function(i,a,g,u){var O=l8.createNode(i,a,g,u),e=l8.realPath(O);try{k.isDir(O.mode)?B7.mkdirSync(e,O.mode):B7.writeFileSync(e,"",{mode:O.mode})}catch(Z0){throw Z0.code?new k.ErrnoError(L2[Z0.code]):Z0}return O},rename:function(i,a,g){var u=l8.realPath(i),O=a9.join2(l8.realPath(a),g);try{B7.renameSync(u,O)}catch(e){throw e.code?new k.ErrnoError(L2[e.code]):e}},unlink:function(i,a){var g=a9.join2(l8.realPath(i),a);try{B7.unlinkSync(g)}catch(u){throw u.code?new k.ErrnoError(L2[u.code]):u}},rmdir:function(i,a){var g=a9.join2(l8.realPath(i),a);try{B7.rmdirSync(g)}catch(u){throw u.code?new k.ErrnoError(L2[u.code]):u}},readdir:function(i){var a=l8.realPath(i);try{return B7.readdirSync(a)}catch(g){throw g.code?new k.ErrnoError(L2[g.code]):g}},symlink:function(i,a,g){var u=a9.join2(l8.realPath(i),a);try{B7.symlinkSync(g,u)}catch(O){throw O.code?new k.ErrnoError(L2[O.code]):O}},readlink:function(i){var a=l8.realPath(i);try{return a=B7.readlinkSync(a),a=gp.relative(gp.resolve(i.mount.opts.root),a),a}catch(g){throw g.code?new k.ErrnoError(L2[g.code]):g}}},stream_ops:{open:function(i){var a=l8.realPath(i.node);try{k.isFile(i.node.mode)&&(i.nfd=B7.openSync(a,l8.flagsToPermissionString(i.flags)))}catch(g){throw g.code?new k.ErrnoError(L2[g.code]):g}},close:function(i){try{k.isFile(i.node.mode)&&i.nfd&&B7.closeSync(i.nfd)}catch(a){throw a.code?new k.ErrnoError(L2[a.code]):a}},read:function(i,a,g,u,O){if(u===0)return 0;var e=new Buffer(u),Z0;try{Z0=B7.readSync(i.nfd,e,0,u,O)}catch(b2){throw new k.ErrnoError(L2[b2.code])}if(Z0>0)for(var t1=0;t18)throw new k.ErrnoError(L2.ELOOP);for(var O=a9.normalizeArray(i.split("/").filter(function(Q5){return!!Q5}),!1),e=k.root,Z0="/",t1=0;t140)throw new k.ErrnoError(L2.ELOOP)}}return{path:Z0,node:e}},getPath:function(i){for(var a;;){if(k.isRoot(i)){var g=i.mount.mountpoint;return a?g[g.length-1]!=="/"?g+"/"+a:g+a:g}a=a?i.name+"/"+a:i.name,i=i.parent}},hashName:function(i,a){for(var g=0,u=0;u>>0)%k.nameTable.length},hashAddNode:function(i){var a=k.hashName(i.parent.id,i.name);i.name_next=k.nameTable[a],k.nameTable[a]=i},hashRemoveNode:function(i){var a=k.hashName(i.parent.id,i.name);if(k.nameTable[a]===i)k.nameTable[a]=i.name_next;else for(var g=k.nameTable[a];g;){if(g.name_next===i){g.name_next=i.name_next;break}g=g.name_next}},lookupNode:function(i,a){var g=k.mayLookup(i);if(g)throw new k.ErrnoError(g,i);for(var u=k.hashName(i.id,a),O=k.nameTable[u];O;O=O.name_next){var e=O.name;if(O.parent.id===i.id&&e===a)return O}return k.lookup(i,a)},createNode:function(i,a,g,u){if(!k.FSNode){k.FSNode=function(t1,b2,A,o1){t1||(t1=this),this.parent=t1,this.mount=t1.mount,this.mounted=null,this.id=k.nextInode++,this.name=b2,this.mode=A,this.node_ops={},this.stream_ops={},this.rdev=o1},k.FSNode.prototype={};var O=365,e=146;Object.defineProperties(k.FSNode.prototype,{read:{get:function(){return(this.mode&O)===O},set:function(t1){t1?this.mode|=O:this.mode&=~O}},write:{get:function(){return(this.mode&e)===e},set:function(t1){t1?this.mode|=e:this.mode&=~e}},isFolder:{get:function(){return k.isDir(this.mode)}},isDevice:{get:function(){return k.isChrdev(this.mode)}}})}var Z0=new k.FSNode(i,a,g,u);return k.hashAddNode(Z0),Z0},destroyNode:function(i){k.hashRemoveNode(i)},isRoot:function(i){return i===i.parent},isMountpoint:function(i){return!!i.mounted},isFile:function(i){return(i&61440)===32768},isDir:function(i){return(i&61440)===16384},isLink:function(i){return(i&61440)===40960},isChrdev:function(i){return(i&61440)===8192},isBlkdev:function(i){return(i&61440)===24576},isFIFO:function(i){return(i&61440)===4096},isSocket:function(i){return(i&49152)===49152},flagModes:{r:0,rs:1052672,"r+":2,w:577,wx:705,xw:705,"w+":578,"wx+":706,"xw+":706,a:1089,ax:1217,xa:1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function(i){var a=k.flagModes[i];if(typeof a>"u")throw new Error("Unknown file open mode: "+i);return a},flagsToPermissionString:function(i){var a=i&2097155,g=["r","w","rw"][a];return i&512&&(g+="w"),g},nodePermissions:function(i,a){return k.ignorePermissions?0:a.indexOf("r")!==-1&&!(i.mode&292)||a.indexOf("w")!==-1&&!(i.mode&146)||a.indexOf("x")!==-1&&!(i.mode&73)?L2.EACCES:0},mayLookup:function(i){var a=k.nodePermissions(i,"x");return a||(i.node_ops.lookup?0:L2.EACCES)},mayCreate:function(i,a){try{var g=k.lookupNode(i,a);return L2.EEXIST}catch{}return k.nodePermissions(i,"wx")},mayDelete:function(i,a,g){var u;try{u=k.lookupNode(i,a)}catch(e){return e.errno}var O=k.nodePermissions(i,"wx");if(O)return O;if(g){if(!k.isDir(u.mode))return L2.ENOTDIR;if(k.isRoot(u)||k.getPath(u)===k.cwd())return L2.EBUSY}else if(k.isDir(u.mode))return L2.EISDIR;return 0},mayOpen:function(i,a){return i?k.isLink(i.mode)?L2.ELOOP:k.isDir(i.mode)&&(a&2097155||a&512)?L2.EISDIR:k.nodePermissions(i,k.flagsToPermissionString(a)):L2.ENOENT},MAX_OPEN_FDS:4096,nextfd:function(i,a){i=i||0,a=a||k.MAX_OPEN_FDS;for(var g=i;g<=a;g++)if(!k.streams[g])return g;throw new k.ErrnoError(L2.EMFILE)},getStream:function(i){return k.streams[i]},createStream:function(i,a,g){k.FSStream||(k.FSStream=function(){},k.FSStream.prototype={},Object.defineProperties(k.FSStream.prototype,{object:{get:function(){return this.node},set:function(Z0){this.node=Z0}},isRead:{get:function(){return(this.flags&2097155)!==1}},isWrite:{get:function(){return(this.flags&2097155)!==0}},isAppend:{get:function(){return this.flags&1024}}}));var u=new k.FSStream;for(var O in i)u[O]=i[O];i=u;var e=k.nextfd(a,g);return i.fd=e,k.streams[e]=i,i},closeStream:function(i){k.streams[i]=null},getStreamFromPtr:function(i){return k.streams[i-1]},getPtrForStream:function(i){return i?i.fd+1:0},chrdev_stream_ops:{open:function(i){var a=k.getDevice(i.node.rdev);i.stream_ops=a.stream_ops,i.stream_ops.open&&i.stream_ops.open(i)},llseek:function(){throw new k.ErrnoError(L2.ESPIPE)}},major:function(i){return i>>8},minor:function(i){return i&255},makedev:function(i,a){return i<<8|a},registerDevice:function(i,a){k.devices[i]={stream_ops:a}},getDevice:function(i){return k.devices[i]},getMounts:function(i){for(var a=[],g=[i];g.length;){var u=g.pop();a.push(u),g.push.apply(g,u.mounts)}return a},syncfs:function(i,a){typeof i=="function"&&(a=i,i=!1);var g=k.getMounts(k.root.mount),u=0;function O(e){if(e)return O.errored?void 0:(O.errored=!0,a(e));++u>=g.length&&a(null)}g.forEach(function(e){if(!e.type.syncfs)return O(null);e.type.syncfs(e,i,O)})},mount:function(i,a,g){var u=g==="/",O=!g,e;if(u&&k.root)throw new k.ErrnoError(L2.EBUSY);if(!u&&!O){var Z0=k.lookupPath(g,{follow_mount:!1});if(g=Z0.path,e=Z0.node,k.isMountpoint(e))throw new k.ErrnoError(L2.EBUSY);if(!k.isDir(e.mode))throw new k.ErrnoError(L2.ENOTDIR)}var t1={type:i,opts:a,mountpoint:g,mounts:[]},b2=i.mount(t1);return b2.mount=t1,t1.root=b2,u?k.root=b2:e&&(e.mounted=t1,e.mount&&e.mount.mounts.push(t1)),b2},unmount:function(i){var a=k.lookupPath(i,{follow_mount:!1});if(!k.isMountpoint(a.node))throw new k.ErrnoError(L2.EINVAL);var g=a.node,u=g.mounted,O=k.getMounts(u);Object.keys(k.nameTable).forEach(function(Z0){for(var t1=k.nameTable[Z0];t1;){var b2=t1.name_next;O.indexOf(t1.mount)!==-1&&k.destroyNode(t1),t1=b2}}),g.mounted=null;var e=g.mount.mounts.indexOf(u);J4(e!==-1),g.mount.mounts.splice(e,1)},lookup:function(i,a){return i.node_ops.lookup(i,a)},mknod:function(i,a,g){var u=k.lookupPath(i,{parent:!0}),O=u.node,e=a9.basename(i);if(!e||e==="."||e==="..")throw new k.ErrnoError(L2.EINVAL);var Z0=k.mayCreate(O,e);if(Z0)throw new k.ErrnoError(Z0);if(!O.node_ops.mknod)throw new k.ErrnoError(L2.EPERM);return O.node_ops.mknod(O,e,a,g)},create:function(i,a){return a=a!==void 0?a:438,a&=4095,a|=32768,k.mknod(i,a,0)},mkdir:function(i,a){return a=a!==void 0?a:511,a&=1023,a|=16384,k.mknod(i,a,0)},mkdev:function(i,a,g){return typeof g>"u"&&(g=a,a=438),a|=8192,k.mknod(i,a,g)},symlink:function(i,a){if(!a9.resolve(i))throw new k.ErrnoError(L2.ENOENT);var g=k.lookupPath(a,{parent:!0}),u=g.node;if(!u)throw new k.ErrnoError(L2.ENOENT);var O=a9.basename(a),e=k.mayCreate(u,O);if(e)throw new k.ErrnoError(e);if(!u.node_ops.symlink)throw new k.ErrnoError(L2.EPERM);return u.node_ops.symlink(u,O,i)},rename:function(i,a){var g=a9.dirname(i),u=a9.dirname(a),O=a9.basename(i),e=a9.basename(a),Z0,t1,b2;try{Z0=k.lookupPath(i,{parent:!0}),t1=Z0.node,Z0=k.lookupPath(a,{parent:!0}),b2=Z0.node}catch{throw new k.ErrnoError(L2.EBUSY)}if(!t1||!b2)throw new k.ErrnoError(L2.ENOENT);if(t1.mount!==b2.mount)throw new k.ErrnoError(L2.EXDEV);var A=k.lookupNode(t1,O),o1=a9.relative(i,u);if(o1.charAt(0)!==".")throw new k.ErrnoError(L2.EINVAL);if(o1=a9.relative(a,g),o1.charAt(0)!==".")throw new k.ErrnoError(L2.ENOTEMPTY);var B;try{B=k.lookupNode(b2,e)}catch{}if(A!==B){var Q5=k.isDir(A.mode),p2=k.mayDelete(t1,O,Q5);if(p2)throw new k.ErrnoError(p2);if(p2=B?k.mayDelete(b2,e,Q5):k.mayCreate(b2,e),p2)throw new k.ErrnoError(p2);if(!t1.node_ops.rename)throw new k.ErrnoError(L2.EPERM);if(k.isMountpoint(A)||B&&k.isMountpoint(B))throw new k.ErrnoError(L2.EBUSY);if(b2!==t1&&(p2=k.nodePermissions(t1,"w"),p2))throw new k.ErrnoError(p2);try{k.trackingDelegate.willMovePath&&k.trackingDelegate.willMovePath(i,a)}catch(M5){console.log("FS.trackingDelegate['willMovePath']('"+i+"', '"+a+"') threw an exception: "+M5.message)}k.hashRemoveNode(A);try{t1.node_ops.rename(A,b2,e)}catch(M5){throw M5}finally{k.hashAddNode(A)}try{k.trackingDelegate.onMovePath&&k.trackingDelegate.onMovePath(i,a)}catch(M5){console.log("FS.trackingDelegate['onMovePath']('"+i+"', '"+a+"') threw an exception: "+M5.message)}}},rmdir:function(i){var a=k.lookupPath(i,{parent:!0}),g=a.node,u=a9.basename(i),O=k.lookupNode(g,u),e=k.mayDelete(g,u,!0);if(e)throw new k.ErrnoError(e);if(!g.node_ops.rmdir)throw new k.ErrnoError(L2.EPERM);if(k.isMountpoint(O))throw new k.ErrnoError(L2.EBUSY);try{k.trackingDelegate.willDeletePath&&k.trackingDelegate.willDeletePath(i)}catch(Z0){console.log("FS.trackingDelegate['willDeletePath']('"+i+"') threw an exception: "+Z0.message)}g.node_ops.rmdir(g,u),k.destroyNode(O);try{k.trackingDelegate.onDeletePath&&k.trackingDelegate.onDeletePath(i)}catch(Z0){console.log("FS.trackingDelegate['onDeletePath']('"+i+"') threw an exception: "+Z0.message)}},readdir:function(i){var a=k.lookupPath(i,{follow:!0}),g=a.node;if(!g.node_ops.readdir)throw new k.ErrnoError(L2.ENOTDIR);return g.node_ops.readdir(g)},unlink:function(i){var a=k.lookupPath(i,{parent:!0}),g=a.node,u=a9.basename(i),O=k.lookupNode(g,u),e=k.mayDelete(g,u,!1);if(e)throw e===L2.EISDIR&&(e=L2.EPERM),new k.ErrnoError(e);if(!g.node_ops.unlink)throw new k.ErrnoError(L2.EPERM);if(k.isMountpoint(O))throw new k.ErrnoError(L2.EBUSY);try{k.trackingDelegate.willDeletePath&&k.trackingDelegate.willDeletePath(i)}catch(Z0){console.log("FS.trackingDelegate['willDeletePath']('"+i+"') threw an exception: "+Z0.message)}g.node_ops.unlink(g,u),k.destroyNode(O);try{k.trackingDelegate.onDeletePath&&k.trackingDelegate.onDeletePath(i)}catch(Z0){console.log("FS.trackingDelegate['onDeletePath']('"+i+"') threw an exception: "+Z0.message)}},readlink:function(i){var a=k.lookupPath(i),g=a.node;if(!g)throw new k.ErrnoError(L2.ENOENT);if(!g.node_ops.readlink)throw new k.ErrnoError(L2.EINVAL);return a9.resolve(k.getPath(a.node.parent),g.node_ops.readlink(g))},stat:function(i,a){var g=k.lookupPath(i,{follow:!a}),u=g.node;if(!u)throw new k.ErrnoError(L2.ENOENT);if(!u.node_ops.getattr)throw new k.ErrnoError(L2.EPERM);return u.node_ops.getattr(u)},lstat:function(i){return k.stat(i,!0)},chmod:function(i,a,g){var u;if(typeof i=="string"){var O=k.lookupPath(i,{follow:!g});u=O.node}else u=i;if(!u.node_ops.setattr)throw new k.ErrnoError(L2.EPERM);u.node_ops.setattr(u,{mode:a&4095|u.mode&-4096,timestamp:Date.now()})},lchmod:function(i,a){k.chmod(i,a,!0)},fchmod:function(i,a){var g=k.getStream(i);if(!g)throw new k.ErrnoError(L2.EBADF);k.chmod(g.node,a)},chown:function(i,a,g,u){var O;if(typeof i=="string"){var e=k.lookupPath(i,{follow:!u});O=e.node}else O=i;if(!O.node_ops.setattr)throw new k.ErrnoError(L2.EPERM);O.node_ops.setattr(O,{timestamp:Date.now()})},lchown:function(i,a,g){k.chown(i,a,g,!0)},fchown:function(i,a,g){var u=k.getStream(i);if(!u)throw new k.ErrnoError(L2.EBADF);k.chown(u.node,a,g)},truncate:function(i,a){if(a<0)throw new k.ErrnoError(L2.EINVAL);var g;if(typeof i=="string"){var u=k.lookupPath(i,{follow:!0});g=u.node}else g=i;if(!g.node_ops.setattr)throw new k.ErrnoError(L2.EPERM);if(k.isDir(g.mode))throw new k.ErrnoError(L2.EISDIR);if(!k.isFile(g.mode))throw new k.ErrnoError(L2.EINVAL);var O=k.nodePermissions(g,"w");if(O)throw new k.ErrnoError(O);g.node_ops.setattr(g,{size:a,timestamp:Date.now()})},ftruncate:function(i,a){var g=k.getStream(i);if(!g)throw new k.ErrnoError(L2.EBADF);if(!(g.flags&2097155))throw new k.ErrnoError(L2.EINVAL);k.truncate(g.node,a)},utime:function(i,a,g){var u=k.lookupPath(i,{follow:!0}),O=u.node;O.node_ops.setattr(O,{timestamp:Math.max(a,g)})},open:function(i,a,g,u,O){if(i==="")throw new k.ErrnoError(L2.ENOENT);a=typeof a=="string"?k.modeStringToFlags(a):a,g=typeof g>"u"?438:g,a&64?g=g&4095|32768:g=0;var e;if(typeof i=="object")e=i;else{i=a9.normalize(i);try{var Z0=k.lookupPath(i,{follow:!(a&131072)});e=Z0.node}catch{}}var t1=!1;if(a&64)if(e){if(a&128)throw new k.ErrnoError(L2.EEXIST)}else e=k.mknod(i,g,0),t1=!0;if(!e)throw new k.ErrnoError(L2.ENOENT);if(k.isChrdev(e.mode)&&(a&=-513),!t1){var b2=k.mayOpen(e,a);if(b2)throw new k.ErrnoError(b2)}a&512&&k.truncate(e,0),a&=-641;var A=k.createStream({node:e,path:k.getPath(e),flags:a,seekable:!0,position:0,stream_ops:e.stream_ops,ungotten:[],error:!1},u,O);A.stream_ops.open&&A.stream_ops.open(A),o.logReadFiles&&!(a&1)&&(k.readFiles||(k.readFiles={}),i in k.readFiles||(k.readFiles[i]=1,o.printErr("read file: "+i)));try{if(k.trackingDelegate.onOpenFile){var o1=0;(a&2097155)!==1&&(o1|=k.tracking.openFlags.READ),a&2097155&&(o1|=k.tracking.openFlags.WRITE),k.trackingDelegate.onOpenFile(i,o1)}}catch(B){console.log("FS.trackingDelegate['onOpenFile']('"+i+"', flags) threw an exception: "+B.message)}return A},close:function(i){try{i.stream_ops.close&&i.stream_ops.close(i)}catch(a){throw a}finally{k.closeStream(i.fd)}},llseek:function(i,a,g){if(!i.seekable||!i.stream_ops.llseek)throw new k.ErrnoError(L2.ESPIPE);return i.position=i.stream_ops.llseek(i,a,g),i.ungotten=[],i.position},read:function(i,a,g,u,O){if(u<0||O<0)throw new k.ErrnoError(L2.EINVAL);if((i.flags&2097155)===1)throw new k.ErrnoError(L2.EBADF);if(k.isDir(i.node.mode))throw new k.ErrnoError(L2.EISDIR);if(!i.stream_ops.read)throw new k.ErrnoError(L2.EINVAL);var e=!0;if(typeof O>"u")O=i.position,e=!1;else if(!i.seekable)throw new k.ErrnoError(L2.ESPIPE);var Z0=i.stream_ops.read(i,a,g,u,O);return e||(i.position+=Z0),Z0},write:function(i,a,g,u,O,e){if(u<0||O<0)throw new k.ErrnoError(L2.EINVAL);if(!(i.flags&2097155))throw new k.ErrnoError(L2.EBADF);if(k.isDir(i.node.mode))throw new k.ErrnoError(L2.EISDIR);if(!i.stream_ops.write)throw new k.ErrnoError(L2.EINVAL);i.flags&1024&&k.llseek(i,0,2);var Z0=!0;if(typeof O>"u")O=i.position,Z0=!1;else if(!i.seekable)throw new k.ErrnoError(L2.ESPIPE);var t1=i.stream_ops.write(i,a,g,u,O,e);Z0||(i.position+=t1);try{i.path&&k.trackingDelegate.onWriteToFile&&k.trackingDelegate.onWriteToFile(i.path)}catch(b2){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+b2.message)}return t1},allocate:function(i,a,g){if(a<0||g<=0)throw new k.ErrnoError(L2.EINVAL);if(!(i.flags&2097155))throw new k.ErrnoError(L2.EBADF);if(!k.isFile(i.node.mode)&&!k.isDir(node.mode))throw new k.ErrnoError(L2.ENODEV);if(!i.stream_ops.allocate)throw new k.ErrnoError(L2.EOPNOTSUPP);i.stream_ops.allocate(i,a,g)},mmap:function(i,a,g,u,O,e,Z0){if((i.flags&2097155)===1)throw new k.ErrnoError(L2.EACCES);if(!i.stream_ops.mmap)throw new k.ErrnoError(L2.ENODEV);return i.stream_ops.mmap(i,a,g,u,O,e,Z0)},msync:function(i,a,g,u,O){return!i||!i.stream_ops.msync?0:i.stream_ops.msync(i,a,g,u,O)},munmap:function(i){return 0},ioctl:function(i,a,g){if(!i.stream_ops.ioctl)throw new k.ErrnoError(L2.ENOTTY);return i.stream_ops.ioctl(i,a,g)},readFile:function(i,a){if(a=a||{},a.flags=a.flags||"r",a.encoding=a.encoding||"binary",a.encoding!=="utf8"&&a.encoding!=="binary")throw new Error('Invalid encoding type "'+a.encoding+'"');var g,u=k.open(i,a.flags),O=k.stat(i),e=O.size,Z0=new Uint8Array(e);return k.read(u,Z0,0,e,0),a.encoding==="utf8"?g=xA(Z0,0):a.encoding==="binary"&&(g=Z0),k.close(u),g},writeFile:function(i,a,g){if(g=g||{},g.flags=g.flags||"w",g.encoding=g.encoding||"utf8",g.encoding!=="utf8"&&g.encoding!=="binary")throw new Error('Invalid encoding type "'+g.encoding+'"');var u=k.open(i,g.flags,g.mode);if(g.encoding==="utf8"){var O=new Uint8Array(FA(a)+1),e=Sn(a,O,0,O.length);k.write(u,O,0,e,0,g.canOwn)}else g.encoding==="binary"&&k.write(u,a,0,a.length,0,g.canOwn);k.close(u)},cwd:function(){return k.currentPath},chdir:function(i){var a=k.lookupPath(i,{follow:!0});if(!k.isDir(a.node.mode))throw new k.ErrnoError(L2.ENOTDIR);var g=k.nodePermissions(a.node,"x");if(g)throw new k.ErrnoError(g);k.currentPath=a.path},createDefaultDirectories:function(){k.mkdir("/tmp"),k.mkdir("/home"),k.mkdir("/home/web_user")},createDefaultDevices:function(){k.mkdir("/dev"),k.registerDevice(k.makedev(1,3),{read:function(){return 0},write:function(g,u,O,e,Z0){return e}}),k.mkdev("/dev/null",k.makedev(1,3)),_n.register(k.makedev(5,0),_n.default_tty_ops),_n.register(k.makedev(6,0),_n.default_tty1_ops),k.mkdev("/dev/tty",k.makedev(5,0)),k.mkdev("/dev/tty1",k.makedev(6,0));var i;if(typeof crypto<"u"){var a=new Uint8Array(1);i=function(){return crypto.getRandomValues(a),a[0]}}else E?i=void 0:i=function(){return Math.random()*256|0};k.createDevice("/dev","random",i),k.createDevice("/dev","urandom",i),k.mkdir("/dev/shm"),k.mkdir("/dev/shm/tmp")},createStandardStreams:function(){o.stdin?k.createDevice("/dev","stdin",o.stdin):k.symlink("/dev/tty","/dev/stdin"),o.stdout?k.createDevice("/dev","stdout",null,o.stdout):k.symlink("/dev/tty","/dev/stdout"),o.stderr?k.createDevice("/dev","stderr",null,o.stderr):k.symlink("/dev/tty1","/dev/stderr");var i=k.open("/dev/stdin","r");D9[Bk>>2]=k.getPtrForStream(i),J4(i.fd===0,"invalid handle for stdin ("+i.fd+")");var a=k.open("/dev/stdout","w");D9[mk>>2]=k.getPtrForStream(a),J4(a.fd===1,"invalid handle for stdout ("+a.fd+")");var g=k.open("/dev/stderr","w");D9[pk>>2]=k.getPtrForStream(g),J4(g.fd===2,"invalid handle for stderr ("+g.fd+")")},ensureErrnoError:function(){k.ErrnoError||(k.ErrnoError=function(a,g){this.node=g,this.setErrno=function(u){this.errno=u;for(var O in L2)if(L2[O]===u){this.code=O;break}},this.setErrno(a),this.message=Ck[a]},k.ErrnoError.prototype=new Error,k.ErrnoError.prototype.constructor=k.ErrnoError,[L2.ENOENT].forEach(function(i){k.genericErrors[i]=new k.ErrnoError(i),k.genericErrors[i].stack=""}))},staticInit:function(){k.ensureErrnoError(),k.nameTable=new Array(4096),k.mount(w9,{},"/"),k.createDefaultDirectories(),k.createDefaultDevices()},init:function(i,a,g){J4(!k.init.initialized,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)"),k.init.initialized=!0,k.ensureErrnoError(),o.stdin=i||o.stdin,o.stdout=a||o.stdout,o.stderr=g||o.stderr,k.createStandardStreams()},quit:function(){k.init.initialized=!1;for(var i=0;ithis.length-1||Q5<0)){var p2=Q5%this.chunkSize,M5=Q5/this.chunkSize|0;return this.getter(M5)[p2]}},e.prototype.setDataGetter=function(Q5){this.getter=Q5},e.prototype.cacheLength=function(){var Q5=new XMLHttpRequest;if(Q5.open("HEAD",g,!1),Q5.send(null),!(Q5.status>=200&&Q5.status<300||Q5.status===304))throw new Error("Couldn't load "+g+". Status: "+Q5.status);var p2=Number(Q5.getResponseHeader("Content-length")),M5,b9=(M5=Q5.getResponseHeader("Accept-Ranges"))&&M5==="bytes",O9=1024*1024;b9||(O9=p2);var I4=function(K9,c8){if(K9>c8)throw new Error("invalid range ("+K9+", "+c8+") or no bytes requested!");if(c8>p2-1)throw new Error("only "+p2+" bytes available! programmer error!");var K4=new XMLHttpRequest;if(K4.open("GET",g,!1),p2!==O9&&K4.setRequestHeader("Range","bytes="+K9+"-"+c8),typeof Uint8Array<"u"&&(K4.responseType="arraybuffer"),K4.overrideMimeType&&K4.overrideMimeType("text/plain; charset=x-user-defined"),K4.send(null),!(K4.status>=200&&K4.status<300||K4.status===304))throw new Error("Couldn't load "+g+". Status: "+K4.status);return K4.response!==void 0?new Uint8Array(K4.response||[]):Ur(K4.responseText||"",!0)},Q8=this;Q8.setDataGetter(function(K9){var c8=K9*O9,K4=(K9+1)*O9-1;if(K4=Math.min(K4,p2-1),typeof Q8.chunks[K9]>"u"&&(Q8.chunks[K9]=I4(c8,K4)),typeof Q8.chunks[K9]>"u")throw new Error("doXHR failed!");return Q8.chunks[K9]}),this._length=p2,this._chunkSize=O9,this.lengthKnown=!0},typeof XMLHttpRequest<"u"){if(!F)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var Z0=new e;Object.defineProperty(Z0,"length",{get:function(){return this.lengthKnown||this.cacheLength(),this._length}}),Object.defineProperty(Z0,"chunkSize",{get:function(){return this.lengthKnown||this.cacheLength(),this._chunkSize}});var t1={isDevice:!1,contents:Z0}}else var t1={isDevice:!1,url:g};var b2=k.createFile(i,a,t1,u,O);t1.contents?b2.contents=t1.contents:t1.url&&(b2.contents=null,b2.url=t1.url),Object.defineProperty(b2,"usedBytes",{get:function(){return this.contents.length}});var A={},o1=Object.keys(b2.stream_ops);return o1.forEach(function(B){var Q5=b2.stream_ops[B];A[B]=function(){if(!k.forceLoadFile(b2))throw new k.ErrnoError(L2.EIO);return Q5.apply(null,arguments)}}),A.read=function(Q5,p2,M5,b9,O9){if(!k.forceLoadFile(b2))throw new k.ErrnoError(L2.EIO);var I4=Q5.node.contents;if(O9>=I4.length)return 0;var Q8=Math.min(I4.length-O9,b9);if(J4(Q8>=0),I4.slice)for(var K9=0;K9=0;u--){var O=i[u];O==="."?i.splice(u,1):O===".."?(i.splice(u,1),g++):g&&(i.splice(u,1),g--)}if(a)for(;g--;g)i.unshift("..");return i},normalize:function(i){var a=i.charAt(0)==="/",g=i.substr(-1)==="/";return i=a9.normalizeArray(i.split("/").filter(function(u){return!!u}),!a).join("/"),!i&&!a&&(i="."),i&&g&&(i+="/"),(a?"/":"")+i},dirname:function(i){var a=a9.splitPath(i),g=a[0],u=a[1];return!g&&!u?".":(u&&(u=u.substr(0,u.length-1)),g+u)},basename:function(i){if(i==="/")return"/";var a=i.lastIndexOf("/");return a===-1?i:i.substr(a+1)},extname:function(i){return a9.splitPath(i)[3]},join:function(){var i=Array.prototype.slice.call(arguments,0);return a9.normalize(i.join("/"))},join2:function(i,a){return a9.normalize(i+"/"+a)},resolve:function(){for(var i="",a=!1,g=arguments.length-1;g>=-1&&!a;g--){var u=g>=0?arguments[g]:k.cwd();if(typeof u!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!u)return"";i=u+"/"+i,a=u.charAt(0)==="/"}return i=a9.normalizeArray(i.split("/").filter(function(O){return!!O}),!a).join("/"),(a?"/":"")+i||"."},relative:function(i,a){i=a9.resolve(i).substr(1),a=a9.resolve(a).substr(1);function g(A){for(var o1=0;o1=0&&A[B]==="";B--);return o1>B?[]:A.slice(o1,B-o1+1)}for(var u=g(i.split("/")),O=g(a.split("/")),e=Math.min(u.length,O.length),Z0=e,t1=0;t10){var t1=Date.now(),b2=J1.mainLoop.queue.shift();if(b2.func(b2.arg),J1.mainLoop.remainingBlockers){var A=J1.mainLoop.remainingBlockers,o1=A%1==0?A-1:Math.floor(A);b2.counted?J1.mainLoop.remainingBlockers=o1:(o1=o1+.5,J1.mainLoop.remainingBlockers=(8*A+o1)/9)}console.log('main loop blocker "'+b2.name+'" took '+(Date.now()-t1)+" ms"),J1.mainLoop.updateStatus(),setTimeout(J1.mainLoop.runner,0);return}if(!(e1&&J1.mainLoop.currentFrameNumber%J1.mainLoop.timingValue!=0){J1.mainLoop.scheduler();return}J1.mainLoop.method==="timeout"&&o.ctx&&(o.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),J1.mainLoop.method=""),J1.mainLoop.runIter(function(){typeof u<"u"?R.dynCall("vi",i,[u]):R.dynCall("v",i)}),!(e0?LC(0,1e3/a):LC(1,1),J1.mainLoop.scheduler()),g)throw"SimulateInfiniteLoop"}var J1={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){J1.mainLoop.scheduler=null,J1.mainLoop.currentlyRunningMainloop++},resume:function(){J1.mainLoop.currentlyRunningMainloop++;var i=J1.mainLoop.timingMode,a=J1.mainLoop.timingValue,g=J1.mainLoop.func;J1.mainLoop.func=null,lp(g,0,!1,J1.mainLoop.arg,!0),LC(i,a),J1.mainLoop.scheduler()},updateStatus:function(){if(o.setStatus){var i=o.statusMessage||"Please wait...",a=J1.mainLoop.remainingBlockers,g=J1.mainLoop.expectedBlockers;a?a"u"&&(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),o.noImageDecoding=!0);var i={};i.canHandle=function(e){return!o.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(e)},i.handle=function(e,Z0,t1,b2){var A=null;if(J1.hasBlobConstructor)try{A=new Blob([e],{type:J1.getMimetype(Z0)}),A.size!==e.length&&(A=new Blob([new Uint8Array(e).buffer],{type:J1.getMimetype(Z0)}))}catch(p2){R.warnOnce("Blob constructor present but fails: "+p2+"; falling back to blob builder")}if(!A){var o1=new J1.BlobBuilder;o1.append(new Uint8Array(e).buffer),A=o1.getBlob()}var B=J1.URLObject.createObjectURL(A),Q5=new Image;Q5.onload=function(){J4(Q5.complete,"Image "+Z0+" could not be decoded");var M5=document.createElement("canvas");M5.width=Q5.width,M5.height=Q5.height;var b9=M5.getContext("2d");b9.drawImage(Q5,0,0),o.preloadedImages[Z0]=M5,J1.URLObject.revokeObjectURL(B),t1&&t1(e)},Q5.onerror=function(M5){console.log("Image "+B+" could not be decoded"),b2&&b2()},Q5.src=B},o.preloadPlugins.push(i);var a={};a.canHandle=function(e){return!o.noAudioDecoding&&e.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},a.handle=function(e,Z0,t1,b2){var A=!1;function o1(b9){A||(A=!0,o.preloadedAudios[Z0]=b9,t1&&t1(e))}function B(){A||(A=!0,o.preloadedAudios[Z0]=new Audio,b2&&b2())}if(J1.hasBlobConstructor){try{var Q5=new Blob([e],{type:J1.getMimetype(Z0)})}catch{return B()}var p2=J1.URLObject.createObjectURL(Q5),M5=new Audio;M5.addEventListener("canplaythrough",function(){o1(M5)},!1),M5.onerror=function(O9){if(A)return;console.log("warning: browser could not fully decode audio "+Z0+", trying slower base64 approach");function I4(Q8){for(var K9="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",c8="=",K4="",Li=0,Mi=0,gr=0;gr=6;){var qa=Li>>Mi-6&63;Mi-=6,K4+=K9[qa]}return Mi==2?(K4+=K9[(Li&3)<<4],K4+=c8+c8):Mi==4&&(K4+=K9[(Li&15)<<2],K4+=c8),K4}M5.src="data:audio/x-"+Z0.substr(-3)+";base64,"+I4(e),o1(M5)},M5.src=p2,J1.safeSetTimeout(function(){o1(M5)},1e4)}else return B()},o.preloadPlugins.push(a);var g=o.canvas;function u(){J1.pointerLock=document.pointerLockElement===g||document.mozPointerLockElement===g||document.webkitPointerLockElement===g||document.msPointerLockElement===g}g&&(g.requestPointerLock=g.requestPointerLock||g.mozRequestPointerLock||g.webkitRequestPointerLock||g.msRequestPointerLock||function(){},g.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},g.exitPointerLock=g.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",u,!1),document.addEventListener("mozpointerlockchange",u,!1),document.addEventListener("webkitpointerlockchange",u,!1),document.addEventListener("mspointerlockchange",u,!1),o.elementPointerLock&&g.addEventListener("click",function(O){!J1.pointerLock&&g.requestPointerLock&&(g.requestPointerLock(),O.preventDefault())},!1))},createContext:function(i,a,g,u){if(a&&o.ctx&&i==o.canvas)return o.ctx;var O,e;if(a){var Z0={antialias:!1,alpha:!1};if(u)for(var t1 in u)Z0[t1]=u[t1];e=GL.createContext(i,Z0),e&&(O=GL.getContext(e).GLctx),i.style.backgroundColor="black"}else O=i.getContext("2d");return O?(g&&(a||J4(typeof GLctx>"u","cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),o.ctx=O,a&&GL.makeContextCurrent(e),o.useWebGL=a,J1.moduleContextCreatedCallbacks.forEach(function(b2){b2()}),J1.init()),O):null},destroyContext:function(i,a,g){},fullScreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullScreen:function(i,a,g){J1.lockPointer=i,J1.resizeCanvas=a,J1.vrDevice=g,typeof J1.lockPointer>"u"&&(J1.lockPointer=!0),typeof J1.resizeCanvas>"u"&&(J1.resizeCanvas=!1),typeof J1.vrDevice>"u"&&(J1.vrDevice=null);var u=o.canvas;function O(){J1.isFullScreen=!1;var Z0=u.parentNode;(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===Z0?(u.cancelFullScreen=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullScreen||document.msExitFullscreen||document.exitFullscreen||function(){},u.cancelFullScreen=u.cancelFullScreen.bind(document),J1.lockPointer&&u.requestPointerLock(),J1.isFullScreen=!0,J1.resizeCanvas&&J1.setFullScreenCanvasSize()):(Z0.parentNode.insertBefore(u,Z0),Z0.parentNode.removeChild(Z0),J1.resizeCanvas&&J1.setWindowedCanvasSize()),o.onFullScreen&&o.onFullScreen(J1.isFullScreen),J1.updateCanvasDimensions(u)}J1.fullScreenHandlersInstalled||(J1.fullScreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",O,!1),document.addEventListener("mozfullscreenchange",O,!1),document.addEventListener("webkitfullscreenchange",O,!1),document.addEventListener("MSFullscreenChange",O,!1));var e=document.createElement("div");u.parentNode.insertBefore(e,u),e.appendChild(u),e.requestFullScreen=e.requestFullScreen||e.mozRequestFullScreen||e.msRequestFullscreen||(e.webkitRequestFullScreen?function(){e.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),g?e.requestFullScreen({vrDisplay:g}):e.requestFullScreen()},nextRAF:0,fakeRequestAnimationFrame:function(i){var a=Date.now();if(J1.nextRAF===0)J1.nextRAF=a+1e3/60;else for(;a+2>=J1.nextRAF;)J1.nextRAF+=1e3/60;var g=Math.max(J1.nextRAF-a,0);setTimeout(i,g)},requestAnimationFrame:function(a){typeof window>"u"?J1.fakeRequestAnimationFrame(a):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||J1.fakeRequestAnimationFrame),window.requestAnimationFrame(a))},safeCallback:function(i){return function(){if(!K0)return i.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){J1.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(J1.allowAsyncCallbacks=!0,J1.queuedAsyncCallbacks.length>0){var i=J1.queuedAsyncCallbacks;J1.queuedAsyncCallbacks=[],i.forEach(function(a){a()})}},safeRequestAnimationFrame:function(i){return J1.requestAnimationFrame(function(){K0||(J1.allowAsyncCallbacks?i():J1.queuedAsyncCallbacks.push(i))})},safeSetTimeout:function(i,a){return o.noExitRuntime=!0,setTimeout(function(){K0||(J1.allowAsyncCallbacks?i():J1.queuedAsyncCallbacks.push(i))},a)},safeSetInterval:function(i,a){return o.noExitRuntime=!0,setInterval(function(){K0||J1.allowAsyncCallbacks&&i()},a)},getMimetype:function(i){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[i.substr(i.lastIndexOf(".")+1)]},getUserMedia:function(i){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(i)},getMovementX:function(i){return i.movementX||i.mozMovementX||i.webkitMovementX||0},getMovementY:function(i){return i.movementY||i.mozMovementY||i.webkitMovementY||0},getMouseWheelDelta:function(i){var a=0;switch(i.type){case"DOMMouseScroll":a=i.detail;break;case"mousewheel":a=i.wheelDelta;break;case"wheel":a=i.deltaY;break;default:throw"unrecognized mouse wheel event: "+i.type}return a},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(i){if(J1.pointerLock)i.type!="mousemove"&&"mozMovementX"in i?J1.mouseMovementX=J1.mouseMovementY=0:(J1.mouseMovementX=J1.getMovementX(i),J1.mouseMovementY=J1.getMovementY(i)),typeof SDL<"u"?(J1.mouseX=SDL.mouseX+J1.mouseMovementX,J1.mouseY=SDL.mouseY+J1.mouseMovementY):(J1.mouseX+=J1.mouseMovementX,J1.mouseY+=J1.mouseMovementY);else{var a=o.canvas.getBoundingClientRect(),g=o.canvas.width,u=o.canvas.height,O=typeof window.scrollX<"u"?window.scrollX:window.pageXOffset,e=typeof window.scrollY<"u"?window.scrollY:window.pageYOffset;if(i.type==="touchstart"||i.type==="touchend"||i.type==="touchmove"){var Z0=i.touch;if(Z0===void 0)return;var t1=Z0.pageX-(O+a.left),b2=Z0.pageY-(e+a.top);t1=t1*(g/a.width),b2=b2*(u/a.height);var A={x:t1,y:b2};if(i.type==="touchstart")J1.lastTouches[Z0.identifier]=A,J1.touches[Z0.identifier]=A;else if(i.type==="touchend"||i.type==="touchmove"){var o1=J1.touches[Z0.identifier];o1||(o1=A),J1.lastTouches[Z0.identifier]=o1,J1.touches[Z0.identifier]=A}return}var B=i.pageX-(O+a.left),Q5=i.pageY-(e+a.top);B=B*(g/a.width),Q5=Q5*(u/a.height),J1.mouseMovementX=B-J1.mouseX,J1.mouseMovementY=Q5-J1.mouseY,J1.mouseX=B,J1.mouseY=Q5}},xhrLoad:function(i,a,g){var u=new XMLHttpRequest;u.open("GET",i,!0),u.responseType="arraybuffer",u.onload=function(){u.status==200||u.status==0&&u.response?a(u.response):g()},u.onerror=g,u.send(null)},asyncLoad:function(i,a,g,u){J1.xhrLoad(i,function(O){J4(O,'Loading data file "'+i+'" failed (no arrayBuffer).'),a(new Uint8Array(O)),u||lr("al "+i)},function(O){if(g)g();else throw'Loading data file "'+i+'" failed.'}),u||bn("al "+i)},resizeListeners:[],updateResizeListeners:function(){var i=o.canvas;J1.resizeListeners.forEach(function(a){a(i.width,i.height)})},setCanvasSize:function(i,a,g){var u=o.canvas;J1.updateCanvasDimensions(u,i,a),g||J1.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:function(){if(typeof SDL<"u"){var i=Oa[SDL.screen+R.QUANTUM_SIZE*0>>2];i=i|8388608,D9[SDL.screen+R.QUANTUM_SIZE*0>>2]=i}J1.updateResizeListeners()},setWindowedCanvasSize:function(){if(typeof SDL<"u"){var i=Oa[SDL.screen+R.QUANTUM_SIZE*0>>2];i=i&-8388609,D9[SDL.screen+R.QUANTUM_SIZE*0>>2]=i}J1.updateResizeListeners()},updateCanvasDimensions:function(i,a,g){a&&g?(i.widthNative=a,i.heightNative=g):(a=i.widthNative,g=i.heightNative);var u=a,O=g;if(o.forcedAspectRatio&&o.forcedAspectRatio>0&&(u/O>2]=a),a}function Tk(){o.printErr("missing function: floor0_exportbundle"),OA(-1)}if(NA=R.staticAlloc(4),D9[NA>>2]=0,o.requestFullScreen=function(a,g,u){J1.requestFullScreen(a,g,u)},o.requestAnimationFrame=function(a){J1.requestAnimationFrame(a)},o.setCanvasSize=function(a,g,u){J1.setCanvasSize(a,g,u)},o.pauseMainLoop=function(){J1.mainLoop.pause()},o.resumeMainLoop=function(){J1.mainLoop.resume()},o.getUserMedia=function(){J1.getUserMedia()},o.createContext=function(a,g,u,O){return J1.createContext(a,g,u,O)},k.staticInit(),La.unshift(function(){!o.noFSInit&&!k.init.initialized&&k.init()}),Bh.push(function(){k.ignorePermissions=!1}),Ma.push(function(){k.quit()}),o.FS_createFolder=k.createFolder,o.FS_createPath=k.createPath,o.FS_createDataFile=k.createDataFile,o.FS_createPreloadedFile=k.createPreloadedFile,o.FS_createLazyFile=k.createLazyFile,o.FS_createLink=k.createLink,o.FS_createDevice=k.createDevice,La.unshift(function(){_n.init()}),Ma.push(function(){_n.shutdown()}),E)var B7=void 0,gp=void 0;Ch=Ei=R.alignMemory(Gr),_a=!0,Ra=Ch+bC,xa=bi=R.alignMemory(Ra),J4(xa>0]=u[t>>0],u[p2+1>>0]=u[t+1>>0],u[p2+2>>0]=u[t+2>>0],u[p2+3>>0]=u[t+3>>0]}function Bb(t){t=t|0,u[p2>>0]=u[t>>0],u[p2+1>>0]=u[t+1>>0],u[p2+2>>0]=u[t+2>>0],u[p2+3>>0]=u[t+3>>0],u[p2+4>>0]=u[t+4>>0],u[p2+5>>0]=u[t+5>>0],u[p2+6>>0]=u[t+6>>0],u[p2+7>>0]=u[t+7>>0]}function dv(t){t=t|0,q6=t}function Ev(){return q6|0}function VB(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0;d=B,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,n=k9(256)|0,s=t+8|0,e[s>>2]=n,$=t+12|0,e[$>>2]=n,u[n>>0]=0,c=t+16|0,e[c>>2]=256}function Cv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0;_=B,s=n>>3,$=t+12|0,m=e[$>>2]|0,v=(m|0)==0,!v&&(S=s<<3,w=n-S|0,y=t+8|0,D=e[y>>2]|0,Q=D+s|0,e[$>>2]=Q,b=t+4|0,e[b>>2]=w,e[t>>2]=s,c=8+(w<<2)|0,f=e[c>>2]|0,d=u[Q>>0]|0,I=d&255,C=I&f,p=C&255,u[Q>>0]=p)}function U2(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0;U0=B,f=s>>>0>32;do if(!f){if(d=e[t>>2]|0,b=t+16|0,t0=e[b>>2]|0,n0=t0+-4|0,Q0=(d|0)<(n0|0),$=t+12|0,c=e[$>>2]|0,Q0)G=c;else{if(x0=(c|0)==0,x0)return;if(q0=(t0|0)>2147483391,q0||(N0=t+8|0,V0=e[N0>>2]|0,I=t0+256|0,C=Gi(V0,I)|0,p=(C|0)==0,p))break;e[N0>>2]=C,m=e[b>>2]|0,v=m+256|0,e[b>>2]=v,S=e[t>>2]|0,w=C+S|0,e[$>>2]=w,G=w}y=8+(s<<2)|0,D=e[y>>2]|0,Q=D&n,x=t+4|0,_=e[x>>2]|0,L=_+s|0,M=Q<<_,T=u[G>>0]|0,N=T&255,P=N|M,z=P&255,u[G>>0]=z,Y=(L|0)>7;do if(Y&&(J=e[x>>2]|0,W=8-J|0,e0=Q>>>W,H=e0&255,X=e[$>>2]|0,U=X+1|0,u[U>>0]=H,o0=(L|0)>15,o0&&(Z=e[x>>2]|0,V=16-Z|0,s0=Q>>>V,i0=s0&255,r0=e[$>>2]|0,K=r0+2|0,u[K>>0]=i0,c0=(L|0)>23,c0&&(A0=e[x>>2]|0,l0=24-A0|0,j=Q>>>l0,a0=j&255,g0=e[$>>2]|0,f0=g0+3|0,u[f0>>0]=a0,d0=(L|0)>31,d0))))if(y0=e[x>>2]|0,h0=(y0|0)==0,h0){D0=e[$>>2]|0,m0=D0+4|0,u[m0>>0]=0;break}else{E0=32-y0|0,C0=Q>>>E0,u0=C0&255,k0=e[$>>2]|0,J0=k0+4|0,u[J0>>0]=u0;break}while(!1);F0=(L|0)/8&-1,M0=e[t>>2]|0,G0=M0+F0|0,e[t>>2]=G0,p0=e[$>>2]|0,H0=p0+F0|0,e[$>>2]=H0,R0=L&7,e[x>>2]=R0;return}while(!1);S0=t+8|0,L0=e[S0>>2]|0,Y0=(L0|0)==0,Y0||I2(L0),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0}function zB(t){t=t|0;var n=0,s=0,$=0,c=0,f=0;f=B,n=t+8|0,s=e[n>>2]|0,$=(s|0)==0,$||I2(s),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0}function at(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0;p=B,n=t+12|0,s=e[n>>2]|0,$=(s|0)==0,!$&&(c=t+8|0,f=e[c>>2]|0,e[n>>2]=f,d=f,u[d>>0]=0,e[t>>2]=0,I=t+4|0,e[I>>2]=0)}function ZB(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0;if(k0=B,$=n>>>0>32,$)return s=-1,s|0;if(c=8+(n<<2)|0,D=e[c>>2]|0,z=t+4|0,V=e[z>>2]|0,g0=V+n|0,Q0=e[t>>2]|0,d0=t+16|0,y0=e[d0>>2]|0,h0=y0+-4|0,f=(Q0|0)<(h0|0),!f){if(d=g0+7|0,I=d>>3,C=y0-I|0,p=(Q0|0)>(C|0),p)return s=-1,s|0;if(m=(g0|0)==0,m)return s=0,s|0}return v=t+12|0,S=e[v>>2]|0,w=u[S>>0]|0,y=w&255,Q=y>>>V,b=(g0|0)>8,b?(x=S+1|0,_=u[x>>0]|0,L=_&255,M=8-V|0,T=L<16,N?(P=S+2|0,Y=u[P>>0]|0,t0=Y&255,J=16-V|0,W=t0<24,H?(X=S+3|0,U=u[X>>0]|0,o0=U&255,Z=24-V|0,s0=o0<>0]|0,A0=c0&255,l0=32-V|0,j=A0<>2]|0,v=$+n|0,S=e[t>>2]|0,w=t+16|0,y=e[w>>2]|0,D=v+7|0,Q=D>>3,b=y-Q|0,x=(S|0)>(b|0),x){m=t+12|0,e[m>>2]=0,e[t>>2]=y,_=1,e[s>>2]=_;return}else{c=(v|0)/8&-1,f=t+12|0,d=e[f>>2]|0,I=d+c|0,e[f>>2]=I,C=S+c|0,e[t>>2]=C,p=v&7,_=p,e[s>>2]=_;return}}function z4(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0;S0=B,C=n>>>0>32;do if(C)$=t+16|0,c=e[$>>2]|0,I=t+4|0,f=t,d=I,m0=c;else{if(p=8+(n<<2)|0,L=e[p>>2]|0,e0=t+4|0,K=e[e0>>2]|0,h0=K+n|0,x0=e[t>>2]|0,F0=t+16|0,M0=e[F0>>2]|0,G0=M0+-4|0,m=(x0|0)<(G0|0),!m){if(v=h0+7|0,S=v>>3,w=M0-S|0,y=(x0|0)>(w|0),y){f=t,d=e0,m0=M0;break}if(D=(h0|0)==0,D)return s=0,s|0}return Q=t+12|0,b=e[Q>>2]|0,x=u[b>>0]|0,_=x&255,M=_>>>K,T=(h0|0)>8,T?(G=b+1|0,N=u[G>>0]|0,P=N&255,z=8-K|0,Y=P<16,J?(W=b+2|0,H=u[W>>0]|0,X=H&255,U=16-K|0,o0=X<24,V?(s0=b+3|0,n0=u[s0>>0]|0,i0=n0&255,r0=24-K|0,c0=i0<>0]|0,f0=g0&255,Q0=32-K|0,d0=f0<>2]=u0,k0=x0+C0|0,e[t>>2]=k0,J0=h0&7,e[e0>>2]=J0,s=E0,s|0}while(!1);return D0=t+12|0,e[D0>>2]=0,e[f>>2]=m0,e[d>>2]=1,s=-1,s|0}function m7(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0;return C=B,n=e[t>>2]|0,s=t+4|0,$=e[s>>2]|0,c=$+7|0,f=(c|0)/8&-1,d=f+n|0,d|0}function Up(t){t=t|0;var n=0,s=0,$=0,c=0;return c=B,n=t+8|0,s=e[n>>2]|0,s|0}function Bv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0;if(T=B,c=(t|0)==0,c)return s=-1,s|0;ne(t|0,0,360)|0,f=t+4|0,e[f>>2]=16384,S=t+24|0,e[S>>2]=1024,w=k9(16384)|0,e[t>>2]=w,y=k9(4096)|0,D=t+16|0,e[D>>2]=y,Q=k9(8192)|0,b=t+20|0,e[b>>2]=Q,x=(w|0)==0;do if(x)I=y;else{if(_=(y|0)==0,d=(Q|0)==0,L=d|_,L){I2(w),$=e[D>>2]|0,I=$;break}return v=t+336|0,e[v>>2]=n,s=0,s|0}while(!1);return C=(I|0)==0,C||I2(I),p=e[b>>2]|0,m=(p|0)==0,m||I2(p),ne(t|0,0,360)|0,s=-1,s|0}function mv(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0;return v=B,n=(t|0)==0,n||(s=e[t>>2]|0,$=(s|0)==0,$||I2(s),c=t+16|0,f=e[c>>2]|0,d=(f|0)==0,d||I2(f),I=t+20|0,C=e[I>>2]|0,p=(C|0)==0,p||I2(C),ne(t|0,0,360)|0),0}function pv(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0;if(M0=B,n=(t|0)==0,!n){if(s=e[t>>2]|0,w=s+22|0,u[w>>0]=0,N=e[t>>2]|0,o0=N+23|0,u[o0>>0]=0,j=e[t>>2]|0,y0=j+24|0,u[y0>>0]=0,h0=e[t>>2]|0,E0=h0+25|0,u[E0>>0]=0,C0=t+4|0,$=e[C0>>2]|0,c=($|0)>0,c)for(f=e[t>>2]|0,k0=0,m0=0;;)if(v=k0<<8,S=k0>>>24,y=f+m0|0,D=u[y>>0]|0,Q=D&255,b=Q^S,x=144+(b<<2)|0,_=e[x>>2]|0,L=_^v,M=m0+1|0,T=(M|0)<($|0),T)k0=L,m0=M;else{u0=L;break}else u0=0;if(d=t+12|0,I=e[d>>2]|0,C=(I|0)>0,C)for(p=t+8|0,m=e[p>>2]|0,D0=u0,x0=0;;)if(G=D0<<8,P=D0>>>24,z=m+x0|0,Y=u[z>>0]|0,t0=Y&255,J=t0^P,W=144+(J<<2)|0,e0=e[W>>2]|0,H=e0^G,X=x0+1|0,U=(X|0)<(I|0),U)D0=H,x0=X;else{J0=H;break}else J0=u0;Z=J0&255,V=e[t>>2]|0,s0=V+22|0,u[s0>>0]=Z,n0=J0>>>8,i0=n0&255,r0=e[t>>2]|0,K=r0+23|0,u[K>>0]=i0,c0=J0>>>16,A0=c0&255,l0=e[t>>2]|0,a0=l0+24|0,u[a0>>0]=A0,g0=J0>>>24,f0=g0&255,Q0=e[t>>2]|0,d0=Q0+25|0,u[d0>>0]=f0}}function Qv(t,n,s,$,c,f){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0;var d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0;if(u2=B,j=(t|0)==0,j||(k0=e[t>>2]|0,S0=(k0|0)==0,S0))return I=-1,I|0;if(v0=(n|0)==0,v0)return I=0,I|0;z0=(s|0)>0;e:do if(z0){for(f2=0,y2=0;;){if(y1=(n+(y2<<3)|0)+4|0,P1=e[y1>>2]|0,A2=(P1|0)<0,y=2147483647-P1|0,P=(f2|0)>(y|0),M2=A2|P,M2){I=-1;break}if(Z=P1+f2|0,n0=y2+1|0,i0=(n0|0)<(s|0),i0)f2=Z,y2=n0;else{n2=Z;break e}}return I|0}else n2=0;while(!1);r0=(n2|0)/255&-1,K=r0+1|0,c0=t+12|0,A0=e[c0>>2]|0,l0=(A0|0)==0,w=t+8|0,l0||(a0=e[w>>2]|0,g0=a0-A0|0,e[w>>2]=g0,f0=(a0|0)==(A0|0),f0||(Q0=k0+A0|0,Ko(k0|0,Q0|0,g0|0)|0),e[c0>>2]=0),d0=t+4|0,y0=e[d0>>2]|0,h0=y0-n2|0,E0=e[w>>2]|0,C0=(h0|0)>(E0|0);do if(!C0){if(u0=2147483647-n2|0,J0=(y0|0)>(u0|0),J0)return D0=e[t>>2]|0,m0=(D0|0)==0,m0||I2(D0),x0=t+16|0,F0=e[x0>>2]|0,M0=(F0|0)==0,M0||I2(F0),G0=t+20|0,p0=e[G0>>2]|0,H0=(p0|0)==0,H0||I2(p0),ne(t|0,0,360)|0,I=-1,I|0;if(R0=y0+n2|0,L0=(R0|0)<2147482623,Y0=R0+1024|0,d=L0?Y0:R0,q0=e[t>>2]|0,N0=Gi(q0,d)|0,V0=(N0|0)==0,!V0){e[d0>>2]=d,e[t>>2]=N0;break}return T0=e[t>>2]|0,U0=(T0|0)==0,U0||I2(T0),r1=t+16|0,P0=e[r1>>2]|0,e1=(P0|0)==0,e1||I2(P0),i1=t+20|0,c1=e[i1>>2]|0,a1=(c1|0)==0,a1||I2(c1),ne(t|0,0,360)|0,I=-1,I|0}while(!1);if(f1=yv(t,K)|0,g1=(f1|0)==0,!g1)return I=-1,I|0;if(z0)for(p=e[w>>2]|0,p1=p,S2=0;d1=e[t>>2]|0,m1=d1+p1|0,Q1=n+(S2<<3)|0,D1=e[Q1>>2]|0,_1=(n+(S2<<3)|0)+4|0,k1=e[_1>>2]|0,r4(m1|0,D1|0,k1|0)|0,x1=e[_1>>2]|0,L1=e[w>>2]|0,N1=L1+x1|0,e[w>>2]=N1,w1=S2+1|0,e2=(w1|0)==(s|0),!e2;)p1=N1,S2=w1;if(l1=(n2|0)>254,A1=t+28|0,$1=e[A1>>2]|0,n1=t+16|0,s1=e[n1>>2]|0,l1){for(I1=t+352|0,h1=t+20|0,E1=e[h1>>2]|0,u1=(r0|0)>1,C2=0;U1=$1+C2|0,Z1=s1+(U1<<2)|0,e[Z1>>2]=255,G1=I1,v1=G1,K1=e[v1>>2]|0,H1=G1+4|0,q1=H1,Y1=e[q1>>2]|0,j1=E1+(U1<<3)|0,r2=j1,W1=r2,e[W1>>2]=K1,O1=r2+4|0,l2=O1,e[l2>>2]=Y1,z1=C2+1|0,h2=(z1|0)<(r0|0),h2;)C2=z1;_2=u1?r0:1,m=I1,$2=E1,w2=_2}else C=t+20|0,v=e[C>>2]|0,S=t+352|0,m=S,$2=v,w2=0;return d2=(n2|0)%255&-1,s2=$1+w2|0,V1=s1+(s2<<2)|0,e[V1>>2]=d2,g2=$2+(s2<<3)|0,t2=g2,a2=t2,e[a2>>2]=c,i2=t2+4|0,o2=i2,e[o2>>2]=f,X1=m,D=X1,e[D>>2]=c,Q=X1+4|0,b=Q,e[b>>2]=f,x=s1+($1<<2)|0,_=e[x>>2]|0,L=_|256,e[x>>2]=L,M=$1+K|0,e[A1>>2]=M,T=t+344|0,G=T,N=G,z=e[N>>2]|0,Y=G+4|0,t0=Y,J=e[t0>>2]|0,W=qA(z|0,J|0,1,0)|0,e0=q6,H=T,X=H,e[X>>2]=W,U=H+4|0,o0=U,e[o0>>2]=e0,V=($|0)==0,V?(I=0,I|0):(s0=t+328|0,e[s0>>2]=1,I=0,I|0)}function UC(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0;return x=B,B=B+16|0,Q=x,s=e[n>>2]|0,e[Q>>2]=s,$=n+4|0,C=e[$>>2]|0,p=Q+4|0,e[p>>2]=C,m=n+12|0,v=e[m>>2]|0,S=n+16|0,w=S,y=w,D=e[y>>2]|0,c=w+4|0,f=c,d=e[f>>2]|0,I=Qv(t,Q,1,v,D,d)|0,B=x,I|0}function Op(t,n){t=t|0,n=n|0;var s=0,$=0,c=0;return c=B,s=Hp(t,n,1,4096)|0,s|0}function Pp(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0;return x=B,f=(t|0)==0,f||(d=e[t>>2]|0,I=(d|0)==0,I)?(s=0,s|0):(C=t+328|0,p=e[C>>2]|0,m=(p|0)==0,$=t+28|0,c=e[$>>2]|0,Q=(c|0)==0,m?Q?D=0:(v=t+332|0,S=e[v>>2]|0,w=(S|0)==0,w?b=7:D=0):Q?D=0:b=7,(b|0)==7&&(D=1),y=Hp(t,n,D,4096)|0,s=y,s|0)}function yv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0;return a0=B,c=t+24|0,f=e[c>>2]|0,Q=f-n|0,Y=t+28|0,s0=e[Y>>2]|0,r0=(Q|0)>(s0|0),r0?($=0,$|0):(K=2147483647-n|0,c0=(f|0)>(K|0),c0?(A0=e[t>>2]|0,l0=(A0|0)==0,l0||I2(A0),d=t+16|0,I=e[d>>2]|0,C=(I|0)==0,C||I2(I),p=t+20|0,m=e[p>>2]|0,v=(m|0)==0,v||I2(m),ne(t|0,0,360)|0,$=-1,$|0):(S=f+n|0,w=(S|0)<2147483615,y=S+32|0,s=w?y:S,D=t+16|0,b=e[D>>2]|0,x=s<<2,_=Gi(b,x)|0,L=(_|0)==0,L?(M=e[t>>2]|0,T=(M|0)==0,T||I2(M),G=e[D>>2]|0,N=(G|0)==0,N||I2(G),P=t+20|0,z=e[P>>2]|0,t0=(z|0)==0,t0||I2(z),ne(t|0,0,360)|0,$=-1,$|0):(e[D>>2]=_,J=t+20|0,W=e[J>>2]|0,e0=s<<3,H=Gi(W,e0)|0,X=(H|0)==0,X?(U=e[t>>2]|0,o0=(U|0)==0,o0||I2(U),Z=e[D>>2]|0,V=(Z|0)==0,V||I2(Z),n0=e[J>>2]|0,i0=(n0|0)==0,i0||I2(n0),ne(t|0,0,360)|0,$=-1,$|0):(e[J>>2]=H,e[c>>2]=s,$=0,$|0))))}function Hp(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0;if(y5=B,Q=t+28|0,b=e[Q>>2]|0,c1=(b|0)>255,c=c1?255:b,h1=(t|0)==0,h1||(x1=e[t>>2]|0,q1=(x1|0)==0,s2=(c|0)==0,Q3=s2|q1,Q3))return f=0,f|0;e2=t+332|0,q2=e[e2>>2]|0,z2=(q2|0)==0;e:do if(z2)for(d0=t+16|0,a3=0;;){if(F0=(a3|0)<(c|0),!F0){I=s,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,q5=a3,P5=14;break e}if(V0=e[d0>>2]|0,P0=V0+(a3<<2)|0,e1=e[P0>>2]|0,v0=e1&255,i1=(v0|0)==255,a1=a3+1|0,i1)a3=a1;else{I=s,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,q5=a1,P5=14;break}}else if(x=(c|0)>0,x){for(J=t+16|0,i0=t+20|0,C5=0,k5=-1,c5=-1,o5=-1,Z2=-1,c2=-1,m5=-1,e5=-1,n5=-1,W5=0,_3=0,C3=0;;){if(f1=(C5|0)>($|0),g1=(W5|0)>3,M3=f1&g1,M3){d=1,G5=k5,D5=c5,H2=o5,I5=Z2,s5=c2,l5=m5,B5=e5,M1=n5,l3=C3;break}if(l1=e[J>>2]|0,A1=l1+(C3<<2)|0,$1=e[A1>>2]|0,n1=$1&255,s1=n1+C5|0,z0=(n1|0)==255,z0?(g5=k5,Y2=c5,h5=o5,t5=Z2,b5=c2,W2=m5,$5=e5,F2=n5,j3=0,T3=_3):(I1=e[i0>>2]|0,E1=I1+(C3<<3)|0,u1=E1,d1=u1,m1=e[d1>>2]|0,p1=u1+4|0,Q1=p1,D1=e[Q1>>2]|0,_1=_3+1|0,y1=m1&255,k1=YA(m1|0,D1|0,8)|0,L1=q6,N1=k1&255,w1=YA(m1|0,D1|0,16)|0,U1=q6,Z1=w1&255,G1=YA(m1|0,D1|0,24)|0,v1=q6,K1=G1&255,P1=D1&255,H1=YA(m1|0,D1|0,40)|0,Y1=q6,j1=H1&255,r2=YA(m1|0,D1|0,48)|0,W1=q6,O1=r2&255,l2=YA(m1|0,D1|0,56)|0,z1=q6,h2=l2&255,g5=y1,Y2=Z1,h5=K1,t5=P1,b5=j1,W2=O1,$5=h2,F2=N1,j3=_1,T3=_1),A2=C3+1|0,d2=(A2|0)<(c|0),d2)C5=s1,k5=g5,c5=Y2,o5=h5,Z2=t5,c2=b5,m5=W2,e5=$5,n5=F2,W5=j3,_3=T3,C3=A2;else{d=s,G5=g5,D5=Y2,H2=h5,I5=t5,s5=b5,l5=W2,B5=$5,M1=F2,l3=A2;break}}V1=(l3|0)==255,V1?(A3=G5,E3=D5,F5=H2,K5=I5,y3=s5,h3=l5,B3=B5,q3=M1,N5=255):(I=d,p5=G5,H5=D5,X5=H2,d5=I5,f3=s5,g3=l5,J5=B5,e3=M1,q5=l3,P5=14)}else I=s,p5=-1,H5=-1,X5=-1,d5=-1,f3=-1,g3=-1,J5=-1,e3=-1,q5=0,P5=14;while(!1);if((P5|0)==14){if(g2=(I|0)==0,g2)return f=0,f|0;A3=p5,E3=H5,F5=X5,K5=d5,y3=f3,h3=g3,B3=J5,q3=e3,N5=q5}if($2=t+40|0,u[$2>>0]=79,u[$2+1>>0]=103,u[$2+2>>0]=103,u[$2+3>>0]=83,t2=t+44|0,u[t2>>0]=0,a2=t+45|0,u[a2>>0]=0,i2=t+16|0,o2=e[i2>>2]|0,X1=e[o2>>2]|0,n2=X1>>>8,v=n2&1,f2=v^1,y2=f2|2,C=z2?y2:f2,$3=C&255,u[a2>>0]=$3,S2=t+328|0,w2=e[S2>>2]|0,C2=(w2|0)!=0,M2=(b|0)==(N5|0),z5=C2&M2,z5&&(p=z2?y2:f2,_2=p|4,G2=_2&255,u[a2>>0]=G2),e[e2>>2]=1,u2=t+46|0,u[u2>>0]=A3,K2=t+47|0,u[K2>>0]=q3,N2=t+48|0,u[N2>>0]=E3,T2=t+49|0,u[T2>>0]=F5,O2=t+50|0,u[O2>>0]=K5,V2=t+51|0,u[V2>>0]=y3,A5=t+52|0,u[A5>>0]=h3,P2=t+53|0,u[P2>>0]=B3,T1=t+336|0,j2=e[T1>>2]|0,R5=j2&255,X2=t+54|0,u[X2>>0]=R5,v5=j2>>>8,f5=v5&255,w5=t+55|0,u[w5>>0]=f5,O5=j2>>>16,a5=O5&255,k2=t+56|0,u[k2>>0]=a5,E5=j2>>>24,r5=E5&255,x2=t+57|0,u[x2>>0]=r5,R2=t+340|0,B2=e[R2>>2]|0,_=(B2|0)==-1,_?(e[R2>>2]=0,M=0):M=B2,L=M+1|0,e[R2>>2]=L,T=M&255,G=t+58|0,u[G>>0]=T,N=M>>>8,P=N&255,z=t+59|0,u[z>>0]=P,Y=M>>>16,t0=Y&255,W=t+60|0,u[W>>0]=t0,e0=M>>>24,H=e0&255,X=t+61|0,u[X>>0]=H,U=t+62|0,o0=N5&255,Z=t+66|0,u[U>>0]=0,u[U+1>>0]=0,u[U+2>>0]=0,u[U+3>>0]=0,u[Z>>0]=o0,V=(N5|0)>0,V){if(s0=e[o2>>2]|0,n0=s0&255,r0=t+67|0,u[r0>>0]=n0,K=s0&255,S5=(N5|0)==1,S5)m=K;else for(A0=1,y0=K;;)if(S=e[i2>>2]|0,c0=S+(A0<<2)|0,l0=e[c0>>2]|0,j=l0&255,a0=A0+27|0,g0=(t+40|0)+a0|0,u[g0>>0]=j,f0=l0&255,Q0=f0+y0|0,h0=A0+1|0,u5=(h0|0)==(N5|0),u5){m=Q0;break}else A0=h0,y0=Q0;w=e[t>>2]|0,y=e[Q>>2]|0,D=e[i2>>2]|0,m0=w,p0=y,R0=D,x5=m}else m0=x1,p0=b,R0=o2,x5=0;return e[n>>2]=$2,E0=N5+27|0,C0=t+324|0,e[C0>>2]=E0,u0=n+4|0,e[u0>>2]=E0,k0=t+12|0,J0=e[k0>>2]|0,D0=m0+J0|0,x0=n+8|0,e[x0>>2]=D0,M0=n+12|0,e[M0>>2]=x5,G0=p0-N5|0,e[Q>>2]=G0,H0=R0+(N5<<2)|0,S0=G0<<2,Ko(R0|0,H0|0,S0|0)|0,L0=t+20|0,Y0=e[L0>>2]|0,q0=Y0+(N5<<3)|0,N0=e[Q>>2]|0,T0=N0<<3,Ko(Y0|0,q0|0,T0|0)|0,U0=e[k0>>2]|0,r1=U0+x5|0,e[k0>>2]=r1,pv(n),f=1,f|0}function wv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0;return P0=B,$=t+104|0,c=e[$>>2]|0,D=t+88|0,z=c+12|0,e[D>>2]=0,e[D+4>>2]=0,e[D+8>>2]=0,e[D+12>>2]=0,V=e[z>>2]|0,at(V),g0=c+16|0,D0=e[g0>>2]|0,at(D0),Y0=c+20|0,T0=e[Y0>>2]|0,at(T0),U0=c+24|0,f=e[U0>>2]|0,at(f),d=c+28|0,I=e[d>>2]|0,at(I),C=c+32|0,p=e[C>>2]|0,at(p),m=c+36|0,v=e[m>>2]|0,at(v),S=c+40|0,w=e[S>>2]|0,at(w),y=c+44|0,Q=e[y>>2]|0,at(Q),b=c+48|0,x=e[b>>2]|0,at(x),_=c+52|0,L=e[_>>2]|0,at(L),M=c+56|0,T=e[M>>2]|0,at(T),G=c+60|0,N=e[G>>2]|0,at(N),P=c+64|0,Y=e[P>>2]|0,at(Y),t0=c+68|0,J=e[t0>>2]|0,at(J),W=e[6416]|0,e0=W+12|0,H=e[e0>>2]|0,X=mQ[H&1](t)|0,U=(X|0)==0,U?(o0=(n|0)==0,o0?(s=0,s|0):(Z=Sh(t)|0,s0=(Z|0)==0,s0?(n0=t+4|0,i0=Up(n0)|0,e[n>>2]=i0,r0=m7(n0)|0,K=n+4|0,e[K>>2]=r0,c0=n+8|0,e[c0>>2]=0,A0=t+44|0,l0=e[A0>>2]|0,j=n+12|0,e[j>>2]=l0,a0=t+48|0,f0=a0,Q0=f0,d0=e[Q0>>2]|0,y0=f0+4|0,h0=y0,E0=e[h0>>2]|0,C0=n+16|0,u0=C0,k0=u0,e[k0>>2]=d0,J0=u0+4|0,m0=J0,e[m0>>2]=E0,x0=t+56|0,F0=x0,M0=F0,G0=e[M0>>2]|0,p0=F0+4|0,H0=p0,R0=e[H0>>2]|0,S0=n+24|0,L0=S0,q0=L0,e[q0>>2]=G0,N0=L0+4|0,V0=N0,e[V0>>2]=R0,s=0,s|0):(s=-131,s|0))):(s=X,s|0)}function kv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0;d0=B,s=t+28|0,$=e[s>>2]|0,f0=n,y0=f0+48|0;do e[f0>>2]=0,f0=f0+4|0;while((f0|0)<(y0|0));y=$+3372|0,P=e[y>>2]|0,Z=(P|0)>0,Z&&(A0=t+8|0,l0=e[A0>>2]|0,j=e[$>>2]|0,a0=j>>1,g0=$+4|0,c=e[g0>>2]|0,f=(c|0)/(j|0)&-1,d=n+24|0,e[d>>2]=f,e[n>>2]=1,I=$+3360|0,C=e[I>>2]|0,p=+(C|0),m=+(a0|0),v=p*m,S=+(l0|0),w=v/S,D=+Ti(w),Q=~~D,b=n+12|0,e[b>>2]=Q,x=$+3364|0,_=e[x>>2]|0,L=+(_|0),M=L*m,T=M/S,G=+Ti(T),N=~~G,z=n+16|0,e[z>>2]=N,Y=$+3368|0,t0=e[Y>>2]|0,J=+(t0|0),W=J*m,e0=W/S,H=+Ti(e0),X=~~H,U=n+20|0,e[U>>2]=X,o0=n+32|0,o1[o0>>3]=7,V=+(P|0),s0=$+3376|0,n0=+o1[s0>>3],i0=V*n0,r0=~~i0,K=n+8|0,e[K>>2]=r0,c0=n+4|0,e[c0>>2]=r0)}function vv(t){t=t|0;var n=0,s=0,$=0,c=0;$=B,n=t,c=n+48|0;do e[n>>2]=0,n=n+4|0;while((n|0)<(c|0))}function Sh(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0;return m=B,s=t+64|0,$=e[s>>2]|0,c=$+104|0,f=e[c>>2]|0,d=f+80|0,I=e[d>>2]|0,C=(I|0)!=0,n=C&1,n|0}function Sv(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,V5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,m6=0,z3=0,$6=0,p6=0,_6=0,Y6=0,B6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0;if(S6=B,p=t+104|0,m=e[p>>2]|0,z1=t+64|0,k2=e[z1>>2]|0,D5=k2+104|0,c2=e[D5>>2]|0,F2=k2+4|0,F5=e[F2>>2]|0,_3=F5+28|0,L5=e[_3>>2]|0,v=c2+112|0,T=+o1[v>>3],X=+Ti(T),A0=~~X,C0=(m+12|0)+(A0<<2)|0,H0=e[C0>>2]|0,P0=m7(H0)|0,n1=P0<<3,D1=t+28|0,v1=e[D1>>2]|0,h2=(v1|0)==0,X1=c2+96|0,u2=e[X1>>2]|0,h2?(R5=c2+100|0,v5=e[R5>>2]|0,U=u2,y0=R5,u0=v5):(z2=c2+104|0,f5=e[z2>>2]|0,w5=c2+100|0,O5=e[w5>>2]|0,a5=i5(f5,u2)|0,E5=i5(f5,O5)|0,U=a5,y0=w5,u0=E5),r5=L5+(v1<<2)|0,x2=e[r5>>2]|0,R2=x2>>1,B2=L5+3372|0,C5=e[B2>>2]|0,x5=+(C5|0),u5=L5+3376|0,S5=+o1[u5>>3],G5=x5*S5,H2=~~G5,I5=c2+80|0,s5=e[I5>>2]|0,l5=(s5|0)==0,B5=c2+120|0,l5)return M1=e[B5>>2]|0,k5=(M1|0)==0,k5?(e[B5>>2]=t,s=0,s|0):(s=-1,s|0);if(e[B5>>2]=t,c5=c2+92|0,o5=e[c5>>2]|0,Z2=(o5|0)>0,Z2){h2?$5=o5:(m5=c2+104|0,e5=e[m5>>2]|0,n5=i5(e5,o5)|0,$5=n5),g5=L5+3384|0,Y2=+o1[g5>>3],h5=15/Y2,t5=c2+84|0,b5=e[t5>>2]|0,W2=n1-$5|0,p5=b5+W2|0,H5=(p5|0)>(H2|0);e:do if(H5)if(X5=(A0|0)>0,d5=(n1|0)>($5|0),v6=d5&X5,v6)if(f3=n1-$5|0,g3=f3+b5|0,J5=(g3|0)>(H2|0),J5)for(N3=A0;;){if(e3=N3+-1|0,A3=(m+12|0)+(e3<<2)|0,E3=e[A3>>2]|0,K5=m7(E3)|0,y3=K5<<3,h3=(N3|0)>1,B3=(y3|0)>($5|0),k6=B3&h3,!k6){V5=e3;break e}if(I=e[t5>>2]|0,q3=y3-$5|0,M3=q3+I|0,z5=(M3|0)>(H2|0),z5)N3=e3;else{V5=e3;break}}else V5=A0;else V5=A0;else if(Q3=(p5|0)<(H2|0),Q3)if(W5=A0+1|0,j3=(W5|0)<15,T3=(n1|0)<($5|0),z3=T3&j3,z3)if($3=n1-$5|0,a3=$3+b5|0,l3=(a3|0)<(H2|0),l3)for(q5=W5;;){if(C3=(m+12|0)+(q5<<2)|0,N5=e[C3>>2]|0,P5=m7(N5)|0,y5=P5<<3,G3=q5+1|0,t6=(G3|0)<15,t3=(y5|0)<($5|0),m6=t3&t6,!m6){V5=q5;break e}if(d=e[t5>>2]|0,o3=y5-$5|0,R3=o3+d|0,f6=(R3|0)<(H2|0),f6)q5=G3;else{V5=q5;break}}else V5=A0;else V5=A0;else V5=A0;while(!1);m3=+(V5|0),w3=+o1[v>>3],p3=m3-w3,X3=+Ti(p3),V3=+(R2|0),S=X3/V3,w=F5+8|0,y=e[w>>2]|0,D=+(y|0),Q=D*S,b=-h5,x=Qh5,v3=_?h5:B6,L=v3/D,M=L*V3,G=M+w3,o1[v>>3]=G,N=+Ti(G),P=~~N,z=(m+12|0)+(P<<2)|0,Y=e[z>>2]|0,t0=m7(Y)|0,J=t0<<3,C=e[X1>>2]|0,W=C,k3=P,Z3=J}else W=u2,k3=A0,Z3=n1;e0=(W|0)>0,H=(Z3|0)<(U|0),$6=H&e0;e:do if($6)if(o0=c2+88|0,Z=e[o0>>2]|0,V=Z3-U|0,s0=V+Z|0,n0=(s0|0)<0,n0)for(c3=k3,W3=Z3;;){if(i0=c3+1|0,r0=(c3|0)>13,r0){U3=i0,u6=W3;break e}if(K=(m+12|0)+(i0<<2)|0,c0=e[K>>2]|0,l0=m7(c0)|0,j=l0<<3,a0=e[o0>>2]|0,g0=j-U|0,f0=g0+a0|0,Q0=(f0|0)<0,Q0)c3=i0,W3=j;else{U3=i0,u6=j;break}}else U3=k3,u6=Z3;else U3=k3,u6=Z3;while(!1);d0=e[y0>>2]|0,h0=(d0|0)>0,E0=(u6|0)>(u0|0),p6=E0&h0;e:do if(p6)if(k0=c2+88|0,J0=e[k0>>2]|0,D0=u6-u0|0,m0=D0+J0|0,x0=e[B2>>2]|0,F0=(m0|0)>(x0|0),F0)for(o6=U3,O3=u6;;){if(M0=o6+-1|0,G0=(o6|0)<1,G0){u3=M0,S3=O3;break e}if(p0=(m+12|0)+(M0<<2)|0,R0=e[p0>>2]|0,S0=m7(R0)|0,L0=S0<<3,Y0=e[k0>>2]|0,q0=L0-u0|0,N0=q0+Y0|0,V0=e[B2>>2]|0,T0=(N0|0)>(V0|0),T0)o6=M0,O3=L0;else{u3=M0,S3=L0;break}}else u3=U3,S3=u6;else u3=U3,S3=u6;while(!1);if(U0=(u3|0)<0,U0)r1=e[B2>>2]|0,e1=c2+88|0,v0=e[e1>>2]|0,i1=r1+u0|0,c1=i1-v0|0,a1=(c1|0)/8&-1,f1=c2+124|0,e[f1>>2]=0,g1=m+12|0,l1=e[g1>>2]|0,A1=m7(l1)|0,$1=(A1|0)>(a1|0),$1?(s1=e[g1>>2]|0,z0=a1<<3,Cv(s1,z0),I1=e[g1>>2]|0,h1=m7(I1)|0,E1=h1<<3,P3=E1):P3=S3;else{if(u1=c2+88|0,d1=e[u1>>2]|0,m1=U+7|0,p1=m1-d1|0,Q1=(p1|0)/8&-1,_1=(u3|0)>14,c=_1?14:u3,y1=c2+124|0,e[y1>>2]=c,k1=(m+12|0)+(c<<2)|0,x1=e[k1>>2]|0,L1=m7(x1)|0,N1=Q1-L1|0,w1=(N1|0)>0,U1=e[k1>>2]|0,w1)for(G1=U1,w6=N1;;)if(Z1=w6+-1|0,U2(G1,0,8),K1=(w6|0)>1,P1=e[k1>>2]|0,K1)G1=P1,w6=Z1;else{f=P1;break}else f=U1;H1=m7(f)|0,q1=H1<<3,P3=q1}Y1=e[X1>>2]|0,j1=(Y1|0)>0,j1?Y3=37:(r2=e[y0>>2]|0,W1=(r2|0)>0,W1&&(Y3=37));do if((Y3|0)==37){if(O1=(u0|0)>0,l2=(P3|0)>(u0|0),_6=O1&l2,_6){A2=P3-u0|0,d2=c2+88|0,s2=e[d2>>2]|0,V1=A2+s2|0,e[d2>>2]=V1;break}if(g2=(U|0)>0,$2=(P3|0)<(U|0),Y6=g2&$2,Y6){t2=P3-U|0,a2=c2+88|0,i2=e[a2>>2]|0,o2=t2+i2|0,e[a2>>2]=o2;break}if(n2=c2+88|0,f2=e[n2>>2]|0,e2=(f2|0)>(H2|0),e2)if(O1){y2=P3-u0|0,S2=f2+y2|0,w2=(S2|0)<(H2|0),n=w2?H2:S2,e[n2>>2]=n;break}else{e[n2>>2]=H2;break}else if(g2){C2=P3-U|0,M2=f2+C2|0,_2=(M2|0)>(H2|0),$=_2?H2:M2,e[n2>>2]=$;break}else{e[n2>>2]=H2;break}}while(!1);return G2=e[c5>>2]|0,K2=(G2|0)>0,K2?(N2=e[D1>>2]|0,q2=(N2|0)==0,q2?P2=G2:(T2=c2+104|0,O2=e[T2>>2]|0,V2=i5(O2,G2)|0,P2=V2),A5=P3-P2|0,T1=c2+84|0,j2=e[T1>>2]|0,X2=A5+j2|0,e[T1>>2]=X2,s=0,s|0):(s=0,s|0)}function qp(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0;return u0=B,$=t+104|0,c=e[$>>2]|0,D=c+120|0,z=e[D>>2]|0,V=(z|0)==0,V?(s=0,s|0):(g0=(n|0)==0,g0||(f0=z+104|0,Q0=e[f0>>2]|0,d0=z+64|0,y0=e[d0>>2]|0,f=y0+104|0,d=e[f>>2]|0,I=d+80|0,C=e[I>>2]|0,E0=(C|0)==0,E0?h0=7:(p=c+124|0,m=e[p>>2]|0,h0=m),v=(Q0+12|0)+(h0<<2)|0,S=e[v>>2]|0,w=Up(S)|0,e[n>>2]=w,y=e[v>>2]|0,Q=m7(y)|0,b=n+4|0,e[b>>2]=Q,x=n+8|0,e[x>>2]=0,_=z+44|0,L=e[_>>2]|0,M=n+12|0,e[M>>2]=L,T=z+48|0,G=T,N=G,P=e[N>>2]|0,Y=G+4|0,t0=Y,J=e[t0>>2]|0,W=n+16|0,e0=W,H=e0,e[H>>2]=P,X=e0+4|0,U=X,e[U>>2]=J,o0=z+56|0,Z=o0,s0=Z,n0=e[s0>>2]|0,i0=Z+4|0,r0=i0,K=e[r0>>2]|0,c0=n+24|0,A0=c0,l0=A0,e[l0>>2]=n0,j=A0+4|0,a0=j,e[a0>>2]=K),e[D>>2]=0,s=1,s|0)}function Dv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0;M=B,_=n,T=_+112|0;do e[_>>2]=0,_=_+4|0;while((_|0)<(T|0));if(s=n+64|0,e[s>>2]=t,$=n+76|0,e[$>>2]=0,p=n+68|0,e[p>>2]=0,m=e[t>>2]|0,v=(m|0)==0,v)return 0;for(S=i4(1,72)|0,w=n+104|0,e[w>>2]=S,y=S+4|0,A[y>>2]=-9999,D=n+4|0,Q=S+12|0,c=S+40|0,x=0;;)if(f=(x|0)==7,f){e[c>>2]=D,VB(D),x=8;continue}else{if(d=i4(1,20)|0,I=Q+(x<<2)|0,e[I>>2]=d,VB(d),C=x+1|0,b=(C|0)==15,b)break;x=C;continue}return 0}function U7(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0;return Y=B,s=n+7|0,$=s&-8,y=t+72|0,_=e[y>>2]|0,L=_+$|0,M=t+76|0,T=e[M>>2]|0,G=(L|0)>(T|0),N=t+68|0,P=e[N>>2]|0,G?(c=(P|0)==0,c||(f=P,d=k9(8)|0,I=t+80|0,C=e[I>>2]|0,p=C+_|0,e[I>>2]=p,m=t+84|0,v=e[m>>2]|0,S=d+4|0,e[S>>2]=v,e[d>>2]=f,e[m>>2]=d),e[M>>2]=$,w=k9($)|0,e[N>>2]=w,e[y>>2]=0,Q=w,b=0,D=Q+b|0,x=b+$|0,e[y>>2]=x,D|0):(Q=P,b=_,D=Q+b|0,x=b+$|0,e[y>>2]=x,D|0)}function bv(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0;if(Z=B,$=t+104|0,c=e[$>>2]|0,D=t+84|0,N=e[D>>2]|0,P=(N|0)==0,!P)for(X=N;z=X+4|0,Y=e[z>>2]|0,t0=e[X>>2]|0,I2(t0),I2(X),J=(Y|0)==0,!J;)X=Y;if(W=t+80|0,f=e[W>>2]|0,d=(f|0)==0,n=t+68|0,s=e[n>>2]|0,d?Q=s:(I=t+76|0,C=e[I>>2]|0,p=C+f|0,m=Gi(s,p)|0,e[n>>2]=m,v=e[W>>2]|0,S=e[I>>2]|0,w=S+v|0,e[I>>2]=w,e[W>>2]=0,Q=m),y=t+72|0,e[y>>2]=0,e[D>>2]=0,b=(Q|0)==0,b||I2(Q),x=(c|0)==0,x){U=t,V=U+112|0;do e[U>>2]=0,U=U+4|0;while((U|0)<(V|0));return 0}else H=0;for(;;){if(_=(c+12|0)+(H<<2)|0,L=e[_>>2]|0,zB(L),M=(H|0)==7,M){H=8;continue}if(T=e[_>>2]|0,I2(T),G=H+1|0,e0=(G|0)==15,e0)break;H=G}I2(c),U=t,V=U+112|0;do e[U>>2]=0,U=U+4|0;while((U|0)<(V|0));return 0}function _v(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0;return b=B,$=xv(t,n,1)|0,c=($|0)==0,c?(C=t+104|0,p=e[C>>2]|0,m=cS(n)|0,v=p+60|0,e[v>>2]=m,S=i4(1,180)|0,e[p>>2]=S,Gv(S,n),w=p+80|0,kv(n,w),y=t+64|0,D=y,f=D,e[f>>2]=3,d=D+4|0,I=d,e[I>>2]=0,s=0,s|0):(s=1,s|0)}function Yp(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0;if(N2=B,m=(t|0)==0,!m){if(v=t+4|0,C0=e[v>>2]|0,H0=(C0|0)!=0,H0?(P0=C0+28|0,n1=e[P0>>2]|0,p0=n1):p0=0,D1=t+104|0,v1=e[D1>>2]|0,z1=(v1|0)!=0,z1){if(o2=e[v1>>2]|0,S=(o2|0)==0,S||(Nv(o2),G=e[v1>>2]|0,I2(G)),U=v1+12|0,l0=e[U>>2]|0,f0=(l0|0)==0,f0||(Q0=e[l0>>2]|0,tm(Q0),d0=e[U>>2]|0,y0=e[d0>>2]|0,I2(y0),h0=e[U>>2]|0,I2(h0)),E0=v1+16|0,u0=e[E0>>2]|0,k0=(u0|0)==0,k0||(J0=e[u0>>2]|0,tm(J0),D0=e[E0>>2]|0,m0=e[D0>>2]|0,I2(m0),x0=e[E0>>2]|0,I2(x0)),F0=v1+48|0,M0=e[F0>>2]|0,G0=(M0|0)==0,!G0){if(R0=(p0|0)==0,R0)u1=M0;else if(S0=p0+16|0,L0=e[S0>>2]|0,Y0=(L0|0)>0,Y0){if(q0=p0+800|0,N0=e[q0>>2]|0,V0=25640+(N0<<2)|0,T0=e[V0>>2]|0,U0=T0+16|0,r1=e[U0>>2]|0,e1=e[M0>>2]|0,KA[r1&7](e1),v0=e[S0>>2]|0,i1=(v0|0)>1,i1)for(a1=1;n=e[F0>>2]|0,c1=q0+(a1<<2)|0,f1=e[c1>>2]|0,g1=25640+(f1<<2)|0,l1=e[g1>>2]|0,A1=l1+16|0,$1=e[A1>>2]|0,s1=n+(a1<<2)|0,z0=e[s1>>2]|0,KA[$1&7](z0),I1=a1+1|0,h1=e[S0>>2]|0,E1=(I1|0)<(h1|0),E1;)a1=I1;s=e[F0>>2]|0,u1=s}else u1=M0;I2(u1)}if(d1=v1+52|0,m1=e[d1>>2]|0,p1=(m1|0)==0,!p1){if(Q1=(p0|0)==0,Q1)V1=m1;else if(_1=p0+20|0,y1=e[_1>>2]|0,k1=(y1|0)>0,k1){if(x1=p0+1312|0,L1=e[x1>>2]|0,N1=25648+(L1<<2)|0,w1=e[N1>>2]|0,U1=w1+16|0,Z1=e[U1>>2]|0,G1=e[m1>>2]|0,KA[Z1&7](G1),K1=e[_1>>2]|0,P1=(K1|0)>1,P1)for(q1=1;$=e[d1>>2]|0,H1=x1+(q1<<2)|0,Y1=e[H1>>2]|0,j1=25648+(Y1<<2)|0,r2=e[j1>>2]|0,W1=r2+16|0,O1=e[W1>>2]|0,l2=$+(q1<<2)|0,h2=e[l2>>2]|0,KA[O1&7](h2),A2=q1+1|0,d2=e[_1>>2]|0,s2=(A2|0)<(d2|0),s2;)q1=A2;c=e[d1>>2]|0,V1=c}else V1=m1;I2(V1)}if(g2=v1+56|0,$2=e[g2>>2]|0,t2=($2|0)==0,!t2){if(a2=(p0|0)==0,a2)_2=$2;else if(i2=p0+28|0,X1=e[i2>>2]|0,n2=(X1|0)>0,n2){if(eQ($2),f2=e[i2>>2]|0,e2=(f2|0)>1,e2)for(S2=1;f=e[g2>>2]|0,y2=f+(S2*52|0)|0,eQ(y2),w2=S2+1|0,C2=e[i2>>2]|0,M2=(w2|0)<(C2|0),M2;)S2=w2;d=e[g2>>2]|0,_2=d}else _2=$2;I2(_2)}w=v1+60|0,y=e[w>>2]|0,D=(y|0)==0,D||gS(y),Q=v1+80|0,vv(Q),b=v1+20|0,lQ(b),x=v1+32|0,lQ(x)}if(_=t+8|0,L=e[_>>2]|0,M=(L|0)==0,!M){if(H0)if(T=C0+4|0,N=e[T>>2]|0,P=(N|0)>0,P){for(Y=L,g0=N,G2=0;z=Y+(G2<<2)|0,t0=e[z>>2]|0,J=(t0|0)==0,J?H=g0:(I2(t0),C=e[T>>2]|0,H=C),W=G2+1|0,e0=(W|0)<(H|0),!!e0;)I=e[_>>2]|0,Y=I,g0=H,G2=W;p=e[_>>2]|0,X=p}else X=L;else X=L;I2(X),o0=t+12|0,Z=e[o0>>2]|0,V=(Z|0)==0,V||I2(Z)}z1&&(s0=v1+64|0,n0=e[s0>>2]|0,i0=(n0|0)==0,i0||I2(n0),r0=v1+68|0,K=e[r0>>2]|0,c0=(K|0)==0,c0||I2(K),A0=v1+72|0,j=e[A0>>2]|0,a0=(j|0)==0,a0||I2(j),I2(v1)),u2=t,q2=u2+112|0;do e[u2>>2]=0,u2=u2+4|0;while((u2|0)<(q2|0))}}function Jp(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0;if(H0=B,I=t+4|0,C=e[I>>2]|0,_=t+104|0,W=e[_>>2]|0,r0=W+64|0,y0=e[r0>>2]|0,m0=(y0|0)==0,m0||I2(y0),e[r0>>2]=0,x0=W+68|0,F0=e[x0>>2]|0,M0=(F0|0)==0,M0||I2(F0),e[x0>>2]=0,p=W+72|0,m=e[p>>2]|0,v=(m|0)==0,v||I2(m),e[p>>2]=0,S=t+20|0,w=e[S>>2]|0,y=w+n|0,D=t+16|0,Q=e[D>>2]|0,b=(y|0)<(Q|0),b)s=C+4|0,f=e[s>>2]|0,X=f,p0=11;else if(x=n<<1,L=w+x|0,e[D>>2]=L,M=C+4|0,T=e[M>>2]|0,G=(T|0)>0,G)if(N=t+8|0,P=e[N>>2]|0,z=e[P>>2]|0,Y=L<<2,t0=Gi(z,Y)|0,J=e[N>>2]|0,e[J>>2]=t0,e0=e[M>>2]|0,H=(e0|0)>1,H)for(i0=1;;)if($=e[D>>2]|0,s0=e[N>>2]|0,n0=s0+(i0<<2)|0,K=e[n0>>2]|0,c0=$<<2,A0=Gi(K,c0)|0,l0=e[N>>2]|0,j=l0+(i0<<2)|0,e[j>>2]=A0,a0=i0+1|0,g0=e[M>>2]|0,f0=(a0|0)<(g0|0),f0)i0=a0;else{X=g0,p0=11;break}else X=e0,p0=11;if((p0|0)==11&&(U=(X|0)>0,U)){for(o0=t+8|0,Z=e[S>>2]|0,V=t+12|0,G0=0;;)if(Q0=e[o0>>2]|0,d0=Q0+(G0<<2)|0,h0=e[d0>>2]|0,E0=h0+(Z<<2)|0,C0=e[V>>2]|0,u0=C0+(G0<<2)|0,e[u0>>2]=E0,k0=G0+1|0,J0=(k0|0)<(X|0),J0)G0=k0;else{c=V;break}return D0=e[c>>2]|0,D0|0}return d=t+12|0,c=d,D0=e[c>>2]|0,D0|0}function Rv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0;if(N0=B,I=t+4|0,C=e[I>>2]|0,_=C+28|0,W=e[_>>2]|0,r0=(n|0)<1,!r0)return Q0=t+20|0,d0=e[Q0>>2]|0,h0=d0+n|0,E0=t+16|0,C0=e[E0>>2]|0,u0=(h0|0)>(C0|0),u0?($=-131,B=N0,$|0):(e[Q0>>2]=h0,k0=t+28|0,J0=e[k0>>2]|0,D0=(J0|0)==0,!D0||(m0=t+48|0,x0=e[m0>>2]|0,F0=h0-x0|0,G0=W+4|0,p0=e[G0>>2]|0,H0=(F0|0)>(p0|0),!H0)?($=0,B=N0,$|0):(Vp(t),$=0,B=N0,$|0));if(y0=B,B=B+128|0,M0=t+28|0,R0=e[M0>>2]|0,S0=(R0|0)==0,S0&&Vp(t),L0=W+4|0,p=e[L0>>2]|0,m=p*3|0,Jp(t,m)|0,v=t+20|0,S=e[v>>2]|0,w=t+32|0,e[w>>2]=S,y=e[L0>>2]|0,D=y*3|0,Q=S+D|0,e[v>>2]=Q,b=C+4|0,x=e[b>>2]|0,L=(x|0)>0,!L)return $=0,B=N0,$|0;for(M=t+8|0,T=S,Y0=0;;){if(G=(T|0)>64,G?(N=e[L0>>2]|0,P=(T|0)>(N|0),s=P?N:T,z=e[M>>2]|0,Y=z+(Y0<<2)|0,t0=e[Y>>2]|0,f=T-s|0,J=t0+(f<<2)|0,+zp(J,y0,s,32),e0=e[M>>2]|0,H=e0+(Y0<<2)|0,X=e[H>>2]|0,U=e[w>>2]|0,o0=X+(U<<2)|0,d=U+-32|0,Z=X+(d<<2)|0,V=e[v>>2]|0,s0=V-U|0,Zp(y0,Z,32,o0,s0)):(n0=e[M>>2]|0,i0=n0+(Y0<<2)|0,K=e[i0>>2]|0,c0=K+(T<<2)|0,A0=e[v>>2]|0,l0=A0-T|0,j=l0<<2,ne(c0|0,0,j|0)|0),a0=Y0+1|0,g0=e[b>>2]|0,f0=(a0|0)<(g0|0),!f0){$=0;break}c=e[w>>2]|0,T=c,Y0=a0}return B=N0,$|0}function Kp(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,V5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,m6=0,z3=0,$6=0,p6=0,_6=0,Y6=0,B6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,s3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0;if(n4=B,v=t+4|0,S=e[v>>2]|0,A2=S+28|0,y5=e[A2>>2]|0,X3=t+104|0,v6=e[X3>>2]|0,u6=v6+60|0,I6=e[u6>>2]|0,G6=t+48|0,X6=e[G6>>2]|0,w=t+40|0,N=e[w>>2]|0,o0=y5+(N<<2)|0,j=e[o0>>2]|0,k0=(j|0)/2&-1,S0=X6-k0|0,v0=n+104|0,z0=e[v0>>2]|0,y1=t+28|0,P1=e[y1>>2]|0,d2=(P1|0)==0,d2||(f2=t+32|0,N2=e[f2>>2]|0,v5=(N2|0)==-1,v5))return $=0,$|0;B2=Uv(t)|0,B5=(B2|0)==-1;do if(B5){if(Y2=e[f2>>2]|0,f3=(Y2|0)==0,f3)return $=0,$|0;q3=t+44|0,e[q3>>2]=0,f=q3,N3=0;break}else if(C3=e[y5>>2]|0,G3=y5+4|0,L5=e[G3>>2]|0,t6=(C3|0)==(L5|0),t3=t+44|0,t6){e[t3>>2]=0,f=t3,N3=0;break}else{e[t3>>2]=B2,f=t3,N3=B2;break}while(!1);if(o3=e[G6>>2]|0,R3=e[w>>2]|0,f6=y5+(R3<<2)|0,m3=e[f6>>2]|0,w3=(m3|0)/4&-1,p3=w3+o3|0,V3=y5+(N3<<2)|0,V5=e[V3>>2]|0,k3=(V5|0)/4&-1,c3=p3+k3|0,U3=(V5|0)/2&-1,o6=c3+U3|0,u3=t+20|0,w6=e[u3>>2]|0,k6=(w6|0)<(o6|0),k6)return $=0,$|0;if(m6=n+84|0,z3=e[m6>>2]|0,$6=(z3|0)==0,!$6)for(u9=z3;p6=u9+4|0,_6=e[p6>>2]|0,Y6=e[u9>>2]|0,I2(Y6),I2(u9),B6=(_6|0)==0,!B6;)u9=_6;v3=n+80|0,Z3=e[v3>>2]|0,W3=(Z3|0)==0,W3||(O3=n+68|0,S3=e[O3>>2]|0,P3=n+76|0,Y3=e[P3>>2]|0,S6=Y3+Z3|0,i6=Gi(S3,S6)|0,e[O3>>2]=i6,i3=e[v3>>2]|0,P6=e[P3>>2]|0,s3=P6+i3|0,e[P3>>2]=s3,e[v3>>2]=0),r6=n+72|0,e[r6>>2]=0,e[m6>>2]=0,D3=t+36|0,T6=e[D3>>2]|0,e6=n+24|0,e[e6>>2]=T6,Q6=e[w>>2]|0,R6=n+28|0,e[R6>>2]=Q6,K6=e[f>>2]|0,d6=n+32|0,e[d6>>2]=K6,J6=(Q6|0)==0;do if(J6)if(r9=Ov(t)|0,x6=(r9|0)==0,N6=z0+8|0,x6){e[N6>>2]=1;break}else{e[N6>>2]=0;break}else if(x3=(T6|0)==0,Z6=(K6|0)==0,T9=x3|Z6,j6=z0+8|0,T9){e[j6>>2]=0;break}else{e[j6>>2]=1;break}while(!1);D6=n+64|0,e[D6>>2]=t,V6=t+64|0,y6=V6,F6=y6,F3=e[F6>>2]|0,L6=y6+4|0,A9=L6,W6=e[A9>>2]|0,g9=qA(F3|0,W6|0,1,0)|0,h9=q6,f9=V6,s9=f9,e[s9>>2]=g9,o9=f9+4|0,M9=o9,e[M9>>2]=h9,E6=n+56|0,M6=E6,y=M6,e[y>>2]=F3,D=M6+4|0,Q=D,e[Q>>2]=W6,b=t+56|0,x=b,_=x,L=e[_>>2]|0,M=x+4|0,T=M,G=e[T>>2]|0,P=n+48|0,z=P,Y=z,e[Y>>2]=L,t0=z+4|0,J=t0,e[J>>2]=G,W=e[w>>2]|0,e0=y5+(W<<2)|0,H=e[e0>>2]|0,X=n+36|0,e[X>>2]=H,U=z0+4|0,Z=+A[U>>2],V=+A[I6>>2],s0=Z>V,s0?(A[I6>>2]=Z,n0=Z):n0=V,i0=+uS(n0,t),A[I6>>2]=i0,A[U>>2]=i0,r0=S+4|0,K=e[r0>>2]|0,c0=K<<2,A0=c0+7|0,l0=A0&-8,a0=e[r6>>2]|0,g0=l0+a0|0,f0=n+76|0,Q0=e[f0>>2]|0,d0=(g0|0)>(Q0|0),y0=n+68|0,h0=e[y0>>2]|0,d0?(E0=(h0|0)==0,E0||(C0=h0,u0=k9(8)|0,J0=e[v3>>2]|0,D0=J0+a0|0,e[v3>>2]=D0,m0=e[m6>>2]|0,x0=u0+4|0,e[x0>>2]=m0,e[u0>>2]=C0,e[m6>>2]=u0),e[f0>>2]=l0,F0=k9(l0)|0,e[y0>>2]=F0,e[r6>>2]=0,c=e[r0>>2]|0,G0=F0,p0=0,L0=c,T0=l0):(G0=h0,p0=a0,L0=K,T0=Q0),M0=G0+p0|0,H0=p0+l0|0,e[r6>>2]=H0,e[n>>2]=M0,R0=L0<<2,Y0=R0+7|0,q0=Y0&-8,N0=q0+H0|0,V0=(N0|0)>(T0|0),V0?(U0=(G0|0)==0,U0||(r1=G0,P0=k9(8)|0,e1=e[v3>>2]|0,i1=e1+H0|0,e[v3>>2]=i1,c1=e[m6>>2]|0,a1=P0+4|0,e[a1>>2]=c1,e[P0>>2]=r1,e[m6>>2]=P0),e[f0>>2]=q0,f1=k9(q0)|0,e[y0>>2]=f1,e[r6>>2]=0,d=e[r0>>2]|0,l1=f1,A1=0,n1=d,P5=q0):(l1=G0,A1=H0,n1=L0,P5=T0),g1=l1+A1|0,$1=A1+q0|0,e[r6>>2]=$1,e[z0>>2]=g1,s1=(n1|0)>0;e:do if(s1)for(I1=t+8|0,Q1=$1,_1=P5,k1=l1,e9=0;;){if(h1=e[X>>2]|0,E1=h1+S0|0,u1=E1<<2,d1=u1+7|0,m1=d1&-8,p1=m1+Q1|0,D1=(p1|0)>(_1|0),D1?(x1=(k1|0)==0,x1||(L1=k1,N1=k9(8)|0,w1=e[v3>>2]|0,U1=w1+Q1|0,e[v3>>2]=U1,Z1=e[m6>>2]|0,G1=N1+4|0,e[G1>>2]=Z1,e[N1>>2]=L1,e[m6>>2]=N1),e[f0>>2]=m1,v1=k9(m1)|0,e[y0>>2]=v1,e[r6>>2]=0,H1=v1,q1=0):(H1=k1,q1=Q1),K1=H1+q1|0,Y1=q1+m1|0,e[r6>>2]=Y1,j1=e[z0>>2]|0,r2=j1+(e9<<2)|0,e[r2>>2]=K1,W1=e[z0>>2]|0,O1=W1+(e9<<2)|0,l2=e[O1>>2]|0,z1=e[I1>>2]|0,h2=z1+(e9<<2)|0,s2=e[h2>>2]|0,r4(l2|0,s2|0,u1|0)|0,V1=e[z0>>2]|0,g2=V1+(e9<<2)|0,$2=e[g2>>2]|0,t2=$2+(S0<<2)|0,a2=e[n>>2]|0,i2=a2+(e9<<2)|0,e[i2>>2]=t2,o2=e9+1|0,X1=e[r0>>2]|0,n2=(o2|0)<(X1|0),!n2)break e;I=e[r6>>2]|0,C=e[f0>>2]|0,p=e[y0>>2]|0,Q1=I,_1=C,k1=p,e9=o2}while(!1);if(e2=e[f2>>2]|0,y2=(e2|0)==0,!y2&&(S2=e[G6>>2]|0,w2=(S2|0)<(e2|0),!w2))return e[f2>>2]=-1,C2=n+44|0,e[C2>>2]=1,$=1,$|0;if(M2=y5+4|0,_2=e[M2>>2]|0,G2=(_2|0)/2&-1,u2=c3-G2|0,K2=(u2|0)>0,!K2)return $=1,$|0;if(q2=e[v6>>2]|0,Pv(q2,u2),T2=e[u3>>2]|0,O2=T2-u2|0,e[u3>>2]=O2,V2=e[r0>>2]|0,A5=(V2|0)>0,A5&&(P2=t+8|0,T1=e[P2>>2]|0,j2=e[T1>>2]|0,R5=j2+(u2<<2)|0,X2=O2<<2,Ko(j2|0,R5|0,X2|0)|0,z2=e[r0>>2]|0,f5=(z2|0)>1,f5))for(a5=1;m=e[u3>>2]|0,w5=e[P2>>2]|0,O5=w5+(a5<<2)|0,k2=e[O5>>2]|0,E5=k2+(u2<<2)|0,r5=m<<2,Ko(k2|0,E5|0,r5|0)|0,x2=a5+1|0,R2=e[r0>>2]|0,C5=(x2|0)<(R2|0),C5;)a5=x2;return x5=e[w>>2]|0,e[D3>>2]=x5,u5=e[f>>2]|0,e[w>>2]=u5,e[G6>>2]=G2,S5=e[f2>>2]|0,G5=(S5|0)==0,G5?(h3=(u2|0)<0,B3=h3<<31>>31,M3=b,z5=M3,Q3=e[z5>>2]|0,W5=M3+4|0,j3=W5,_3=e[j3>>2]|0,T3=qA(Q3|0,_3|0,u2|0,B3|0)|0,$3=q6,a3=b,l3=a3,e[l3>>2]=T3,q5=a3+4|0,N5=q5,e[N5>>2]=$3,$=1,$|0):(D5=S5-u2|0,H2=(D5|0)<1,s=H2?-1:D5,e[f2>>2]=s,I5=(s|0)>(G2|0),I5?($5=(u2|0)<0,F2=$5<<31>>31,p5=b,H5=p5,X5=e[H5>>2]|0,d5=p5+4|0,g3=d5,J5=e[g3>>2]|0,e3=qA(X5|0,J5|0,u2|0,F2|0)|0,A3=q6,E3=b,F5=E3,e[F5>>2]=e3,K5=E3+4|0,y3=K5,e[y3>>2]=A3,$=1,$|0):(s5=s+u2|0,l5=s5-G2|0,M1=(l5|0)<0,k5=M1<<31>>31,c5=b,o5=c5,Z2=e[o5>>2]|0,c2=c5+4|0,m5=c2,e5=e[m5>>2]|0,n5=qA(Z2|0,e5|0,l5|0,k5|0)|0,g5=q6,h5=b,t5=h5,e[t5>>2]=n5,b5=h5+4|0,W2=b5,e[W2>>2]=g5,$=1,$|0))}function xv(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0;if(t5=B,p=n+28|0,m=e[p>>2]|0,p1=(m|0)==0,p1||(Z1=m+8|0,O1=e[Z1>>2]|0,a2=(O1|0)<1,a2)||(M2=e[m>>2]|0,P2=(M2|0)<64,P2)||(k2=m+4|0,D5=e[k2>>2]|0,v=(D5|0)<(M2|0),v))return $=1,$|0;T=m+3656|0,X=e[T>>2]|0,Y2=t,b5=Y2+112|0;do e[Y2>>2]=0,Y2=Y2+4|0;while((Y2|0)<(b5|0));A0=i4(1,136)|0,C0=t+104|0,e[C0>>2]=A0,H0=t+4|0,e[H0>>2]=n,P0=e[Z1>>2]|0,n1=P0+-1|0,d1=F7(n1)|0,m1=A0+44|0,e[m1>>2]=d1,Q1=i4(1,4)|0,D1=A0+12|0,e[D1>>2]=Q1,_1=i4(1,4)|0,y1=A0+16|0,e[y1>>2]=_1,k1=i4(1,20)|0,e[Q1>>2]=k1,x1=i4(1,20)|0,e[_1>>2]=x1,L1=e[m>>2]|0,N1=L1>>X,em(k1,N1),w1=e[y1>>2]|0,U1=e[w1>>2]|0,G1=e[k2>>2]|0,v1=G1>>X,em(U1,v1),K1=e[m>>2]|0,P1=F7(K1)|0,H1=P1+-7|0,q1=A0+4|0,e[q1>>2]=H1,Y1=e[k2>>2]|0,j1=F7(Y1)|0,r2=j1+-7|0,W1=A0+8|0,e[W1>>2]=r2,l2=(s|0)==0;e:do if(l2){if(B2=m+2848|0,C5=e[B2>>2]|0,x5=(C5|0)==0,x5&&(u5=m+24|0,S5=e[u5>>2]|0,G5=i4(S5,56)|0,e[B2>>2]=G5,H2=e[u5>>2]|0,I5=(H2|0)>0,I5)){for(E1=H2,m5=0;;){if(s5=(m+1824|0)+(m5<<2)|0,l5=e[s5>>2]|0,B5=(l5|0)==0,B5){M1=E1;break}if(c5=e[B2>>2]|0,o5=c5+(m5*56|0)|0,Z2=LS(o5,l5)|0,S=(Z2|0)==0,!S){h5=20;break}if(w=e[s5>>2]|0,im(w),e[s5>>2]=0,y=m5+1|0,D=e[u5>>2]|0,Q=(y|0)<(D|0),Q)E1=D,m5=y;else break e}if((h5|0)==20&&(I=e[u5>>2]|0,M1=I),k5=(M1|0)>0,k5)for(u1=M1,g5=0;A1=(m+1824|0)+(g5<<2)|0,$1=e[A1>>2]|0,s1=($1|0)==0,s1?h1=u1:(im($1),e[A1>>2]=0,C=e[u5>>2]|0,h1=C),z0=g5+1|0,I1=(z0|0)<(h1|0),I1;)u1=h1,g5=z0;return Yp(t),$=-1,$|0}}else{if(z1=A0+20|0,h2=e[m>>2]|0,aQ(z1,h2),A2=A0+32|0,d2=e[k2>>2]|0,aQ(A2,d2),s2=m+2848|0,V1=e[s2>>2]|0,g2=(V1|0)==0,g2&&($2=m+24|0,t2=e[$2>>2]|0,i2=i4(t2,56)|0,e[s2>>2]=i2,o2=e[$2>>2]|0,X1=(o2|0)>0,X1&&(n2=m+1824|0,f2=e[n2>>2]|0,$Q(i2,f2)|0,e2=e[$2>>2]|0,y2=(e2|0)>1,y2)))for(w2=1;c=e[s2>>2]|0,S2=c+(w2*56|0)|0,C2=(m+1824|0)+(w2<<2)|0,_2=e[C2>>2]|0,$Q(S2,_2)|0,G2=w2+1|0,u2=e[$2>>2]|0,K2=(G2|0)<(u2|0),K2;)w2=G2;N2=m+28|0,q2=e[N2>>2]|0,T2=i4(q2,52)|0,O2=A0+56|0,e[O2>>2]=T2,V2=e[N2>>2]|0,A5=(V2|0)>0;t:do if(A5)for(T1=m+2868|0,j2=n+8|0,X2=T2,c2=0;;){if(R5=X2+(c2*52|0)|0,v5=(m+2852|0)+(c2<<2)|0,z2=e[v5>>2]|0,f5=e[z2>>2]|0,w5=m+(f5<<2)|0,O5=e[w5>>2]|0,a5=(O5|0)/2&-1,E5=e[j2>>2]|0,fS(R5,z2,T1,a5,E5),r5=c2+1|0,x2=e[N2>>2]|0,R2=(r5|0)<(x2|0),!R2)break t;f=e[O2>>2]|0,X2=f,c2=r5}while(!1);e[t>>2]=1}while(!1);if(b=e[k2>>2]|0,x=t+16|0,e[x>>2]=b,_=n+4|0,L=e[_>>2]|0,M=L<<2,G=k9(M)|0,N=t+8|0,e[N>>2]=G,P=k9(M)|0,z=t+12|0,e[z>>2]=P,Y=(L|0)>0,Y&&(t0=i4(b,4)|0,e[G>>2]=t0,J=(L|0)>1,J))for(H=1;d=e[N>>2]|0,W=i4(b,4)|0,e0=d+(H<<2)|0,e[e0>>2]=W,U=H+1|0,o0=(U|0)<(L|0),o0;)H=U;if(Z=t+36|0,e[Z>>2]=0,V=t+40|0,e[V>>2]=0,s0=e[k2>>2]|0,n0=(s0|0)/2&-1,i0=t+48|0,e[i0>>2]=n0,r0=t+20|0,e[r0>>2]=n0,K=m+16|0,c0=e[K>>2]|0,l0=i4(c0,4)|0,j=A0+48|0,e[j>>2]=l0,a0=m+20|0,g0=e[a0>>2]|0,f0=i4(g0,4)|0,Q0=A0+52|0,e[Q0>>2]=f0,d0=e[K>>2]|0,y0=(d0|0)>0,y0)for(e5=0;u0=(m+800|0)+(e5<<2)|0,k0=e[u0>>2]|0,J0=25640+(k0<<2)|0,D0=e[J0>>2]|0,m0=D0+8|0,x0=e[m0>>2]|0,F0=(m+1056|0)+(e5<<2)|0,M0=e[F0>>2]|0,G0=lt[x0&15](t,M0)|0,p0=e[j>>2]|0,R0=p0+(e5<<2)|0,e[R0>>2]=G0,S0=e5+1|0,L0=e[K>>2]|0,Y0=(S0|0)<(L0|0),Y0;)e5=S0;if(h0=e[a0>>2]|0,E0=(h0|0)>0,E0)n5=0;else return $=0,$|0;for(;;)if(q0=(m+1312|0)+(n5<<2)|0,N0=e[q0>>2]|0,V0=25648+(N0<<2)|0,T0=e[V0>>2]|0,U0=T0+8|0,r1=e[U0>>2]|0,e1=(m+1568|0)+(n5<<2)|0,v0=e[e1>>2]|0,i1=lt[r1&15](t,v0)|0,c1=e[Q0>>2]|0,a1=c1+(n5<<2)|0,e[a1>>2]=i1,f1=n5+1|0,g1=e[a0>>2]|0,l1=(f1|0)<(g1|0),l1)n5=f1;else{$=0;break}return $|0}function Vp(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0;if(D0=B,B=B+64|0,c=D0,f=t+20|0,Q=e[f>>2]|0,Y=Q<<2,n=Y,s0=B,B=B+((1*n|0)+15&-16)|0,f0=t+28|0,e[f0>>2]=1,d0=t+48|0,y0=e[d0>>2]|0,h0=Q-y0|0,E0=(h0|0)>32,!E0){B=D0;return}if(d=t+4|0,I=e[d>>2]|0,C=I+4|0,p=e[C>>2]|0,m=(p|0)>0,!m){B=D0;return}for(v=t+8|0,S=Q,C0=0;;){if(w=(S|0)>0,w)for(y=e[v>>2]|0,D=y+(C0<<2)|0,b=e[D>>2]|0,u0=0;x=u0^-1,_=S+x|0,L=b+(_<<2)|0,M=e[L>>2]|0,T=s0+(u0<<2)|0,e[T>>2]=M,G=u0+1|0,N=(S|0)>(G|0),N;)u0=G;if(P=e[d0>>2]|0,z=S-P|0,+zp(s0,c,z,16),t0=e[f>>2]|0,J=e[d0>>2]|0,s=t0-J|0,W=s0+(s<<2)|0,$=s+-16|0,e0=s0+($<<2)|0,Zp(c,e0,16,W,J),H=e[f>>2]|0,X=(H|0)>0,X)for(U=e[v>>2]|0,o0=U+(C0<<2)|0,Z=e[o0>>2]|0,k0=0;V=s0+(k0<<2)|0,n0=e[V>>2]|0,i0=k0^-1,r0=H+i0|0,K=Z+(r0<<2)|0,e[K>>2]=n0,c0=k0+1|0,A0=(H|0)>(c0|0),A0;)k0=c0;if(l0=C0+1|0,j=e[d>>2]|0,a0=j+4|0,g0=e[a0>>2]|0,Q0=(l0|0)<(g0|0),Q0)S=H,C0=l0;else break}B=D0}function Fv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0;o2=B,U2(n,5653314,24),d=e[t>>2]|0,U2(n,d,16),I=t+4|0,N=e[I>>2]|0,U2(n,N,24),o0=e[I>>2]|0,j=(o0|0)>1;e:do if(j)for(k0=t+8|0,S0=e[k0>>2]|0,c=u[S0>>0]|0,v0=c,O1=1;;){if(z0=v0<<24>>24==0,z0){W1=O1;break e}if(y1=S0+O1|0,C=u[y1>>0]|0,D=C<<24>>24>24,D){W1=O1;break e}if(Q=O1+1|0,b=(Q|0)<(o0|0),b)v0=C,O1=Q;else{W1=Q;break}}else W1=1;while(!1);x=(W1|0)==(o0|0);e:do if(x){if(U2(n,1,1),_=t+8|0,L=e[_>>2]|0,M=u[L>>0]|0,T=M<<24>>24,G=T+-1|0,U2(n,G,5),P=e[I>>2]|0,z=(P|0)>1,z)for(y=P,H1=0,z1=1;;){if(Y=e[_>>2]|0,t0=Y+z1|0,J=u[t0>>0]|0,W=z1+-1|0,e0=Y+W|0,H=u[e0>>0]|0,X=J<<24>>24>H<<24>>24,X)for(U=H<<24>>24,Z=J<<24>>24,n0=y,q1=H1,$2=U;;)if(V=z1-q1|0,s0=n0-q1|0,i0=F7(s0)|0,U2(n,V,i0),r0=$2+1|0,r2=(r0|0)==(Z|0),f=e[I>>2]|0,r2){A0=f,Y1=z1;break}else n0=f,q1=z1,$2=r0;else A0=y,Y1=H1;if(K=z1+1|0,c0=(K|0)<(A0|0),c0)y=A0,H1=Y1,z1=K;else{$=A0,P1=Y1,l2=K;break}}else $=P,P1=0,l2=1;l0=l2-P1|0,a0=$-P1|0,g0=F7(a0)|0,U2(n,l0,g0)}else{U2(n,0,1),f0=e[I>>2]|0,Q0=(f0|0)>0;t:do if(Q0)for(d0=t+8|0,y0=e[d0>>2]|0,A2=0;;){if(h0=y0+A2|0,E0=u[h0>>0]|0,C0=E0<<24>>24==0,C0){h2=A2;break t}if(u0=A2+1|0,J0=(u0|0)<(f0|0),J0)A2=u0;else{h2=u0;break}}else h2=0;while(!1);if(D0=(h2|0)==(f0|0),D0){if(U2(n,0,1),m0=e[I>>2]|0,x0=(m0|0)>0,!x0)break;for(F0=t+8|0,d2=0;;)if(M0=e[F0>>2]|0,G0=M0+d2|0,p0=u[G0>>0]|0,H0=p0<<24>>24,R0=H0+-1|0,U2(n,R0,5),L0=d2+1|0,Y0=e[I>>2]|0,q0=(L0|0)<(Y0|0),q0)d2=L0;else break e}if(U2(n,1,1),N0=e[I>>2]|0,V0=(N0|0)>0,V0)for(T0=t+8|0,s2=0;U0=e[T0>>2]|0,r1=U0+s2|0,P0=u[r1>>0]|0,e1=P0<<24>>24==0,e1?U2(n,0,1):(U2(n,1,1),i1=e[T0>>2]|0,c1=i1+s2|0,a1=u[c1>>0]|0,f1=a1<<24>>24,g1=f1+-1|0,U2(n,g1,5)),l1=s2+1|0,A1=e[I>>2]|0,$1=(l1|0)<(A1|0),$1;)s2=l1}while(!1);if(n1=t+12|0,s1=e[n1>>2]|0,U2(n,s1,4),I1=e[n1>>2]|0,(I1|0)==2|(I1|0)==1)i2=28;else if(I1|0)return s=-1,s|0;do if((i2|0)==28){if(h1=t+32|0,E1=e[h1>>2]|0,u1=(E1|0)==0,u1)return s=-1,s|0;if(d1=t+16|0,m1=e[d1>>2]|0,U2(n,m1,32),p1=t+20|0,Q1=e[p1>>2]|0,U2(n,Q1,32),D1=t+24|0,_1=e[D1>>2]|0,k1=_1+-1|0,U2(n,k1,4),x1=t+28|0,L1=e[x1>>2]|0,U2(n,L1,1),N1=e[n1>>2]|0,(N1|0)==1)w1=RS(t)|0,a2=w1;else if((N1|0)==2)U1=e[I>>2]|0,Z1=e[t>>2]|0,G1=i5(Z1,U1)|0,a2=G1;else break;if(v1=(a2|0)>0,v1)for(V1=0;K1=e[h1>>2]|0,p=K1+(V1<<2)|0,m=e[p>>2]|0,g2=(m|0)>-1,t2=0-m|0,v=g2?m:t2,S=e[D1>>2]|0,U2(n,v,S),w=V1+1|0,j1=(w|0)==(a2|0),!j1;)V1=w}while(!1);return s=0,s|0}function Dh(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0;return z=B,c=(n|0)<0,c||(f=t+12|0,Q=e[f>>2]|0,x=Q+4|0,_=e[x>>2]|0,L=(_|0)>(n|0),!L)?($=0,$|0):(M=t+20|0,T=e[M>>2]|0,G=T+(n<<2)|0,N=e[G>>2]|0,d=Q+8|0,I=e[d>>2]|0,C=I+n|0,p=u[C>>0]|0,m=p<<24>>24,U2(s,N,m),v=e[f>>2]|0,S=v+8|0,w=e[S>>2]|0,y=w+n|0,D=u[y>>0]|0,b=D<<24>>24,$=b,$|0)}function OC(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0;return w=B,$=t+8|0,c=e[$>>2]|0,f=(c|0)>0,!f||(d=bh(t,n)|0,I=(d|0)>-1,!I)?(s=-1,s|0):(C=t+24|0,p=e[C>>2]|0,m=p+(d<<2)|0,v=e[m>>2]|0,s=v,s|0)}function Lv(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0;if(j=B,C=t+8|0,p=e[C>>2]|0,L=(p|0)>0,!L)return c=0,B=j,c|0;e0=e[t>>2]|0,X=($|0)/(e0|0)&-1,U=X<<2,f=U,o0=B,B=B+((1*f|0)+15&-16)|0,Z=(X|0)>0;e:do if(Z){for(V=t+16|0,r0=0;;){if(G=bh(t,s)|0,N=(G|0)==-1,N){c=-1;break}if(P=e[V>>2]|0,z=e[t>>2]|0,Y=i5(z,G)|0,t0=P+(Y<<2)|0,J=o0+(r0<<2)|0,e[J>>2]=t0,W=r0+1|0,H=(W|0)<(X|0),H)r0=W;else{s0=z;break e}}return B=j,c|0}else s0=e0;while(!1);if(d=(s0|0)<1,I=Z^1,n0=d|I,n0)return c=0,B=j,c|0;for(K=0,A0=0;;){for(c0=0;w=o0+(c0<<2)|0,y=e[w>>2]|0,D=y+(K<<2)|0,Q=+A[D>>2],b=c0+A0|0,x=n+(b<<2)|0,_=+A[x>>2],M=_+Q,A[x>>2]=M,T=c0+1|0,i0=(T|0)==(X|0),!i0;)c0=T;if(m=K+1|0,v=A0+X|0,S=(m|0)<(s0|0),S)K=m,A0=v;else{c=0;break}}return B=j,c|0}function Mv(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0;if(j2=B,Y=t+8|0,t0=e[Y>>2]|0,l0=(t0|0)>0,!l0)return c=0,c|0;if(u0=e[t>>2]|0,R0=(u0|0)>8,R0){if(_1=($|0)>0,!_1)return c=0,c|0;for(K1=t+16|0,X1=0;;){if(Z=bh(t,s)|0,V=(Z|0)==-1,V){c=-1,T1=29;break}if(s0=e[K1>>2]|0,n0=e[t>>2]|0,i0=i5(n0,Z)|0,r0=(n0|0)>0,r0){for(K=(n0|0)>1,P2=K?n0:1,f2=X1,u2=0;c0=u2+1|0,z=u2+i0|0,A0=s0+(z<<2)|0,j=+A[A0>>2],a0=f2+1|0,g0=n+(f2<<2)|0,f0=+A[g0>>2],Q0=f0+j,A[g0>>2]=Q0,d0=(c0|0)<(n0|0),d0;)f2=a0,u2=c0;h2=X1+P2|0,n2=h2}else n2=X1;if(J=(n2|0)<($|0),J)X1=n2;else{c=0,T1=29;break}}if((T1|0)==29)return c|0}if(e1=t+16|0,s1=($|0)>0,s1)e2=0;else return c=0,c|0;e:for(;;){t:for(;;){if(H=bh(t,s)|0,X=(H|0)==-1,X){c=-1,T1=29;break e}switch(U=e[e1>>2]|0,o0=e[t>>2]|0,o0|0){case 4:{m=H,Q=U,T1=19;break t}case 3:{v=H,b=U,T1=21;break t}case 7:{I=H,w=U,T1=13;break t}case 6:{C=H,y=U,T1=15;break t}case 8:{f=U,d=H,T1=12;break t}case 5:{p=H,D=U,T1=17;break t}case 1:{V1=H,$2=U,G2=e2,A5=0;break t}case 2:{S=H,x=U,T1=23;break t}default:}}if((T1|0)==12?(T1=0,y0=d<<3,h0=f+(y0<<2)|0,E0=+A[h0>>2],C0=e2+1|0,k0=n+(e2<<2)|0,J0=+A[k0>>2],D0=J0+E0,A[k0>>2]=D0,F0=y0,G0=f,y2=C0,K2=1,T1=14):(T1|0)==13?(T1=0,m0=I*7|0,F0=m0,G0=w,y2=e2,K2=0,T1=14):(T1|0)==15?(T1=0,q0=C*6|0,V0=q0,U0=y,S2=e2,N2=0,T1=16):(T1|0)==17?(T1=0,a1=p*5|0,g1=a1,A1=D,w2=e2,q2=0,T1=18):(T1|0)==19?(T1=0,E1=m<<2,d1=E1,p1=Q,C2=e2,T2=0,T1=20):(T1|0)==21?(T1=0,L1=v*3|0,w1=L1,Z1=b,M2=e2,O2=0,T1=22):(T1|0)==23&&(T1=0,Y1=S<<1,r2=Y1,O1=x,_2=e2,V2=0,T1=24),(T1|0)==14&&(T1=0,x0=K2+1|0,P=K2+F0|0,M0=G0+(P<<2)|0,p0=+A[M0>>2],H0=y2+1|0,S0=n+(y2<<2)|0,L0=+A[S0>>2],Y0=L0+p0,A[S0>>2]=Y0,V0=F0,U0=G0,S2=H0,N2=x0,T1=16),(T1|0)==16&&(T1=0,N0=N2+1|0,N=N2+V0|0,T0=U0+(N<<2)|0,r1=+A[T0>>2],P0=S2+1|0,v0=n+(S2<<2)|0,i1=+A[v0>>2],c1=i1+r1,A[v0>>2]=c1,g1=V0,A1=U0,w2=P0,q2=N0,T1=18),(T1|0)==18&&(T1=0,f1=q2+1|0,G=q2+g1|0,l1=A1+(G<<2)|0,$1=+A[l1>>2],n1=w2+1|0,z0=n+(w2<<2)|0,I1=+A[z0>>2],h1=I1+$1,A[z0>>2]=h1,d1=g1,p1=A1,C2=n1,T2=f1,T1=20),(T1|0)==20&&(T1=0,u1=T2+1|0,T=T2+d1|0,m1=p1+(T<<2)|0,Q1=+A[m1>>2],D1=C2+1|0,y1=n+(C2<<2)|0,k1=+A[y1>>2],x1=k1+Q1,A[y1>>2]=x1,w1=d1,Z1=p1,M2=D1,O2=u1,T1=22),(T1|0)==22&&(T1=0,N1=O2+1|0,M=O2+w1|0,U1=Z1+(M<<2)|0,G1=+A[U1>>2],v1=M2+1|0,P1=n+(M2<<2)|0,H1=+A[P1>>2],q1=H1+G1,A[P1>>2]=q1,r2=w1,O1=Z1,_2=v1,V2=N1,T1=24),(T1|0)==24&&(T1=0,j1=V2+1|0,L=V2+r2|0,W1=O1+(L<<2)|0,l2=+A[W1>>2],z1=_2+1|0,A2=n+(_2<<2)|0,d2=+A[A2>>2],s2=d2+l2,A[A2>>2]=s2,V1=r2,$2=O1,G2=z1,A5=j1),_=A5+V1|0,g2=$2+(_<<2)|0,t2=+A[g2>>2],a2=G2+1|0,i2=n+(G2<<2)|0,o2=+A[i2>>2],W=o2+t2,A[i2>>2]=W,e0=(a2|0)<($|0),e0)e2=a2;else{c=0,T1=29;break}}return(T1|0)==29?c|0:0}function Tv(t,n,s,$,c,f){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0;var d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0;if(l0=B,m=t+8|0,v=e[m>>2]|0,T=(v|0)>0,!T||(W=(s|0)/($|0)&-1,e0=f+s|0,H=(e0|0)/($|0)&-1,X=(W|0)<(H|0),!X))return I=0,I|0;for(U=t+16|0,V=0,i0=W;;){if(Z=bh(t,c)|0,S=(Z|0)==-1,S){I=-1,A0=8;break}if(w=e[U>>2]|0,y=e[t>>2]|0,D=i5(y,Z)|0,Q=(y|0)>0,Q)for(n0=V,K=i0,c0=0;;)if(p=c0+D|0,b=w+(p<<2)|0,x=+A[b>>2],_=n0+1|0,L=n+(n0<<2)|0,M=e[L>>2]|0,G=M+(K<<2)|0,N=+A[G>>2],P=N+x,A[G>>2]=P,z=(_|0)==($|0),Y=z&1,C=Y+K|0,d=z?0:_,t0=c0+1|0,J=(t0|0)<(y|0),J)n0=d,K=C,c0=t0;else{s0=d,r0=C;break}else s0=V,r0=i0;if(o0=(r0|0)<(H|0),o0)V=s0,i0=r0;else{I=0,A0=8;break}}return(A0|0)==8?I|0:0}function bh(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0;h1=B,c=t+40|0,f=e[c>>2]|0,Q=t+36|0,Y=e[Q>>2]|0,s0=ZB(n,Y)|0,f0=(s0|0)>-1;do if(f0){if(m0=t+32|0,q0=e[m0>>2]|0,c1=q0+(s0<<2)|0,a1=e[c1>>2]|0,d=(a1|0)<0,d){I=a1>>>15,C=I&32767,p=t+8|0,m=e[p>>2]|0,v=a1&32767,S=m-v|0,f1=S,l1=C;break}return w=a1+-1|0,y=t+28|0,D=e[y>>2]|0,b=D+w|0,x=u[b>>0]|0,_=x<<24>>24,WB(n,_),s=w,s|0}else L=t+8|0,M=e[L>>2]|0,f1=M,l1=0;while(!1);if(T=ZB(n,f)|0,G=(T|0)<0,N=(f|0)>1,P=G&N,P)for(z0=f;;)if(z=z0+-1|0,t0=ZB(n,z)|0,J=(t0|0)<0,W=(z|0)>1,e0=J&W,e0)z0=z;else{$=J,n1=t0,s1=z;break}else $=G,n1=T,s1=f;if($)return s=-1,s|0;if(H=n1>>>16,X=n1<<16,U=H|X,o0=U>>>8,Z=o0&16711935,V=U<<8,n0=V&-16711936,i0=Z|n0,r0=i0>>>4,K=r0&252645135,c0=i0<<4,A0=c0&-252645136,l0=K|A0,j=l0>>>2,a0=j&858993459,g0=l0<<2,Q0=g0&-858993460,d0=a0|Q0,y0=d0>>>1,h0=y0&1431655765,E0=d0<<1,C0=E0&-1431655766,u0=h0|C0,k0=f1-l1|0,J0=(k0|0)>1,J0)for(D0=t+20|0,x0=e[D0>>2]|0,M0=k0,g1=f1,$1=l1;;)if(F0=M0>>1,G0=F0+$1|0,p0=x0+(G0<<2)|0,H0=e[p0>>2]|0,R0=H0>>>0>u0>>>0,S0=R0?0:F0,L0=S0+$1|0,Y0=R0?F0:0,N0=g1-Y0|0,V0=N0-L0|0,T0=(V0|0)>1,T0)M0=V0,g1=N0,$1=L0;else{A1=L0;break}else A1=l1;return U0=t+28|0,r1=e[U0>>2]|0,P0=r1+A1|0,e1=u[P0>>0]|0,v0=e1<<24>>24,i1=(v0|0)>(s1|0),i1?(WB(n,s1),s=-1,s|0):(WB(n,v0),s=A1,s|0)}function Gv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0;for(c1=B,p=n+28|0,m=e[p>>2]|0,M=n+4|0,H=e[M>>2]|0,c0=t+4|0,e[c0>>2]=128,E0=t+8|0,e[E0>>2]=64,p0=m+2932|0,q0=e[p0>>2]|0,N0=t+12|0,e[N0>>2]=q0,e[t>>2]=H,V0=t+164|0,e[V0>>2]=128,v=m+4|0,S=e[v>>2]|0,w=(S|0)/2&-1,y=t+176|0,e[y>>2]=w,D=i4(128,4)|0,Q=t+36|0,e[Q>>2]=D,b=t+16|0,em(b,128),x=e[Q>>2]|0,P0=0;_=+(P0|0),L=_*.024736950028266088,T=+xn(+L),G=T,N=x+(P0<<2)|0,P=G*G,A[N>>2]=P,z=P0+1|0,r1=(z|0)==128,!r1;)P0=z;for(Y=t+40|0,e[Y>>2]=2,t0=t+44|0,e[t0>>2]=4,J=t+56|0,e[J>>2]=4,W=t+60|0,e[W>>2]=5,e0=t+72|0,e[e0>>2]=6,X=t+76|0,e[X>>2]=6,U=t+88|0,e[U>>2]=9,o0=t+92|0,e[o0>>2]=8,Z=t+104|0,e[Z>>2]=13,V=t+108|0,e[V>>2]=8,s0=t+120|0,e[s0>>2]=17,n0=t+124|0,e[n0>>2]=8,i0=t+136|0,e[i0>>2]=22,r0=t+140|0,e[r0>>2]=8,A0=4,v0=0;;){if(K=A0<<2,l0=k9(K)|0,j=((t+40|0)+(v0<<4)|0)+8|0,e[j>>2]=l0,a0=(A0|0)>0,a0){for(g0=+(A0|0),f0=((t+40|0)+(v0<<4)|0)+12|0,C=+A[f0>>2],D0=C,e1=0;;)if(Q0=+(e1|0),d0=Q0+.5,y0=d0/g0,h0=y0*3.141592653589793,C0=+xn(+h0),u0=C0,k0=l0+(e1<<2)|0,A[k0>>2]=u0,J0=D0+u0,m0=e1+1|0,T0=(m0|0)==(A0|0),T0){s=J0;break}else D0=J0,e1=m0;A[f0>>2]=s,d=f0,F0=s}else c=((t+40|0)+(v0<<4)|0)+12|0,I=+A[c>>2],d=c,F0=I;if(x0=1/F0,A[d>>2]=x0,M0=v0+1|0,U0=(M0|0)==7,U0)break;$=((t+40|0)+(M0<<4)|0)+4|0,f=e[$>>2]|0,A0=f,v0=M0}G0=H*7|0,H0=i4(G0,144)|0,R0=t+152|0,e[R0>>2]=H0,S0=e[V0>>2]|0,L0=i4(S0,4)|0,Y0=t+160|0,e[Y0>>2]=L0}function Nv(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0;G=B,n=t+16|0,tm(n),s=t+48|0,w=e[s>>2]|0,I2(w),D=t+64|0,Q=e[D>>2]|0,I2(Q),b=t+80|0,x=e[b>>2]|0,I2(x),_=t+96|0,L=e[_>>2]|0,I2(L),M=t+112|0,$=e[M>>2]|0,I2($),c=t+128|0,f=e[c>>2]|0,I2(f),d=t+144|0,I=e[d>>2]|0,I2(I),C=t+36|0,p=e[C>>2]|0,I2(p),m=t+152|0,v=e[m>>2]|0,I2(v),S=t+160|0,y=e[S>>2]|0,I2(y),ne(t|0,0,180)|0}function Uv(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0;if(j1=B,f=t+4|0,d=e[f>>2]|0,L=d+28|0,e0=e[L>>2]|0,K=e0+2868|0,h0=t+104|0,G0=e[h0>>2]|0,U0=e[G0>>2]|0,A1=U0+168|0,p1=e[A1>>2]|0,I=U0+8|0,v=e[I>>2]|0,S=(p1|0)/(v|0)&-1,w=t+20|0,y=e[w>>2]|0,D=(y|0)/(v|0)&-1,Q=D+-4|0,b=(S|0)<0,n=b?0:S,x=D+2|0,_=U0+164|0,M=e[_>>2]|0,T=(x|0)>(M|0),T&&(e[_>>2]=x,G=U0+160|0,N=e[G>>2]|0,P=x<<2,z=Gi(N,P)|0,e[G>>2]=z),Y=(n|0)<(Q|0),Y)for(t0=U0+156|0,J=U0+160|0,W=t+8|0,H=U0+40|0,X=U0+152|0,v1=n;;){if(U=e[t0>>2]|0,o0=U+1|0,Z=(U|0)>23,$=Z?24:o0,e[t0>>2]=$,V=e[U0>>2]|0,s0=(V|0)>0,s0){for(G1=0,q1=0;;)if(c0=e[W>>2]|0,A0=c0+(G1<<2)|0,l0=e[A0>>2]|0,j=e[I>>2]|0,a0=i5(j,v1)|0,g0=l0+(a0<<2)|0,f0=e[X>>2]|0,Q0=G1*7|0,d0=f0+(Q0*144|0)|0,y0=Hv(U0,K,g0,H,d0)|0,E0=y0|q1,C0=G1+1|0,u0=e[U0>>2]|0,k0=(C0|0)<(u0|0),k0)G1=C0,q1=E0;else{c=E0;break}J0=v1+2|0,D0=e[J>>2]|0,m0=D0+(J0<<2)|0,e[m0>>2]=0,x0=c&1,F0=(x0|0)==0,F0||(M0=D0+(v1<<2)|0,e[M0>>2]=1,p0=v1+1|0,H0=D0+(p0<<2)|0,e[H0>>2]=1),R0=c&2,S0=(R0|0)==0,S0||(L0=D0+(v1<<2)|0,e[L0>>2]=1,Y0=(v1|0)>0,Y0&&(q0=v1+-1|0,N0=D0+(q0<<2)|0,e[N0>>2]=1)),V0=c&4,T0=(V0|0)==0,T0||(e[t0>>2]=-1)}else n0=v1+2|0,i0=e[J>>2]|0,r0=i0+(n0<<2)|0,e[r0>>2]=0;if(r1=v1+1|0,Z1=(r1|0)==(Q|0),Z1)break;v1=r1}if(P0=e[I>>2]|0,e1=i5(P0,Q)|0,e[A1>>2]=e1,v0=t+48|0,i1=e[v0>>2]|0,c1=t+40|0,a1=e[c1>>2]|0,f1=e0+(a1<<2)|0,g1=e[f1>>2]|0,l1=(g1|0)/4&-1,$1=l1+i1|0,n1=e0+4|0,s1=e[n1>>2]|0,z0=(s1|0)/2&-1,I1=$1+z0|0,h1=e[e0>>2]|0,E1=(h1|0)/4&-1,u1=I1+E1|0,d1=U0+176|0,m1=e[d1>>2]|0,Q1=e1-P0|0,D1=(m1|0)<(Q1|0),!D1)return s=-1,s|0;for(_1=U0+160|0,K1=m1;;){if(x1=(K1|0)<(u1|0),!x1){s=1,Y1=22;break}if(e[d1>>2]=K1,L1=(K1|0)/(P0|0)&-1,N1=e[_1>>2]|0,w1=N1+(L1<<2)|0,U1=e[w1>>2]|0,C=(U1|0)!=0,p=(K1|0)>(i1|0),H1=p&C,y1=P0+K1|0,H1){P1=K1,Y1=21;break}if(k1=(y1|0)<(Q1|0),k1)K1=y1;else{s=-1,Y1=22;break}}return(Y1|0)==21?(m=U0+172|0,e[m>>2]=P1,s=0,s|0):(Y1|0)==22?s|0:0}function Ov(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0;if(E0=B,c=t+104|0,f=e[c>>2]|0,Q=e[f>>2]|0,Y=t+4|0,s0=e[Y>>2]|0,A0=s0+28|0,l0=e[A0>>2]|0,j=t+48|0,a0=e[j>>2]|0,g0=t+40|0,d=e[g0>>2]|0,I=l0+(d<<2)|0,C=e[I>>2]|0,p=(C|0)/4&-1,m=a0-p|0,v=p+a0|0,S=(d|0)==0,S?(N=e[l0>>2]|0,P=(N|0)/4&-1,s=P,$=P):(w=t+36|0,y=e[w>>2]|0,D=l0+(y<<2)|0,b=e[D>>2]|0,x=(b|0)/4&-1,_=t+44|0,L=e[_>>2]|0,M=l0+(L<<2)|0,T=e[M>>2]|0,G=(T|0)/4&-1,s=G,$=x),f0=m-$|0,Q0=v+s|0,z=Q+172|0,t0=e[z>>2]|0,J=(t0|0)>=(f0|0),W=(t0|0)<(Q0|0),y0=J&W,y0)return n=1,n|0;if(e0=Q+8|0,H=e[e0>>2]|0,X=(f0|0)/(H|0)&-1,U=(Q0|0)/(H|0)&-1,o0=(X|0)<(U|0),!o0)return n=0,n|0;for(Z=Q+160|0,V=e[Z>>2]|0,d0=X;;){if(r0=V+(d0<<2)|0,K=e[r0>>2]|0,c0=(K|0)==0,n0=d0+1|0,!c0){n=1,h0=9;break}if(i0=(n0|0)<(U|0),i0)d0=n0;else{n=0,h0=9;break}}return(h0|0)==9?n|0:0}function Pv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0;if(N=B,s=t+168|0,$=e[s>>2]|0,y=t+8|0,Q=e[y>>2]|0,b=($|0)/(Q|0)&-1,x=b+2|0,_=(n|0)/(Q|0)&-1,L=t+160|0,M=e[L>>2]|0,T=M+(_<<2)|0,c=x-_|0,f=c<<2,Ko(M|0,T|0,f|0)|0,d=e[s>>2]|0,I=d-n|0,e[s>>2]=I,C=t+172|0,p=e[C>>2]|0,m=(p|0)>-1,!m){S=t+176|0,w=e[S>>2]|0,D=w-n|0,e[S>>2]=D;return}v=p-n|0,e[C>>2]=v,S=t+176|0,w=e[S>>2]|0,D=w-n|0,e[S>>2]=D}function Hv(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,V5=0,k3=0,c3=0,U3=0,o6=0,u3=0;if(u3=B,Y=t+4|0,t0=e[Y>>2]|0,a2=t+12|0,M2=+A[a2>>2],P2=t0<<2,b=P2,k2=B,B=B+((1*b|0)+15&-16)|0,D5=t+156|0,c2=e[D5>>2]|0,F2=(c2|0)>5,F5=(c2|0)/2&-1,f=F2?F5:2,J=n+60|0,i0=+A[J>>2],d0=F5+-2|0,F0=+(d0|0),V0=i0-F0,g1=V0<0,f6=g1?0:V0,d1=f6>i0,m3=d1?i0:f6,w1=(t0|0)>0,w1)for(r2=t+36|0,$2=e[r2>>2]|0,P5=0;i2=s+(P5<<2)|0,o2=+A[i2>>2],X1=$2+(P5<<2)|0,n2=+A[X1>>2],f2=n2*o2,e2=k2+(P5<<2)|0,A[e2>>2]=f2,y2=P5+1|0,C3=(y2|0)==(t0|0),!C3;)P5=y2;S2=t+16|0,Wp(S2,k2,k2),w2=+A[k2>>2],C2=w2*w2,_2=C2,G2=k2+4|0,u2=+A[G2>>2],K2=u2,N2=K2*K2,q2=N2*.7,T2=q2+_2,O2=k2+8|0,V2=+A[O2>>2],A5=V2,T1=A5*A5,j2=T1*.2,R5=T2+j2,X2=R5,v5=c+140|0,z2=e[v5>>2]|0,f5=(z2|0)==0,f5?(w5=c+136|0,O5=+A[w5>>2],a5=O5+X2,E5=c+132|0,A[E5>>2]=a5,A[w5>>2]=X2,T=E5,H2=a5):(r5=c+132|0,x2=+A[r5>>2],R2=x2+X2,A[r5>>2]=R2,B2=c+136|0,C5=+A[B2>>2],x5=C5+X2,A[B2>>2]=x5,T=r5,H2=R2),u5=(c+72|0)+(z2<<2)|0,S5=+A[u5>>2],G5=H2-S5,A[T>>2]=G5,A[u5>>2]=X2,I5=e[v5>>2]|0,s5=I5+1|0,l5=(I5|0)>13,d=l5?0:s5,e[v5>>2]=d,B5=(t0|0)/2&-1,M1=(t0|0)>1;e:do if(M1)for(k5=H2*.0625,c5=(A[p2>>2]=k5,e[p2>>2]|0),o5=c5&2147483647,Z2=+(o5>>>0),m5=Z2*7177114298428933e-22,e5=m5+-764.6162109375,n5=e5,g5=n5*.5,Y2=g5+-15,h5=Y2,x=h5,x0=w2,y5=0;;){if(m0=x0*x0,M0=y5|1,G0=k2+(M0<<2)|0,p0=+A[G0>>2],H0=p0*p0,R0=H0+m0,S0=(A[p2>>2]=R0,e[p2>>2]|0),L0=S0&2147483647,Y0=+(L0>>>0),q0=Y0*35885571492144663e-23,N0=q0+-382.30810546875,T0=N0>1,P0=k2+(r1<<2)|0,A[P0>>2]=z,e1=y5+2|0,v0=(e1|0)<(B5|0),!v0)break e;i1=x+-8,L=k2+(e1<<2)|0,M=+A[L>>2],x=i1,x0=M,y5=e1}while(!1);if(t5=(f|0)>0,t5)o3=0,N3=0;else{for(t3=0,V3=0;;){if(c1=($+(t3<<4)|0)+4|0,a1=e[c1>>2]|0,f1=(a1|0)>0,f1)for(l1=$+(t3<<4)|0,A1=e[l1>>2]|0,$1=($+(t3<<4)|0)+8|0,n1=e[$1>>2]|0,$3=0,G3=0;;)if(s1=A1+G3|0,z0=k2+(s1<<2)|0,I1=+A[z0>>2],h1=n1+(G3<<2)|0,E1=+A[h1>>2],u1=E1*I1,m1=u1+$3,p1=G3+1|0,Q1=(p1|0)<(a1|0),Q1)$3=m1,G3=p1;else{_3=m1;break}else _3=0;if(D1=($+(t3<<4)|0)+12|0,_1=+A[D1>>2],y1=_1*_3,k1=(c+(t3*144|0)|0)+68|0,x1=e[k1>>2]|0,L1=(x1|0)<1,p=L1?16:-1,I=p+x1|0,N1=(c+(t3*144|0)|0)+(I<<2)|0,U1=+A[N1>>2],Z1=y1U1,v=v1?U1:y1,K1=v+-99999,P1=G1+99999,H1=(c+(t3*144|0)|0)+(x1<<2)|0,A[H1>>2]=y1,q1=e[k1>>2]|0,Y1=q1+1|0,j1=(q1|0)>15,D=j1?0:Y1,e[k1>>2]=D,W1=(n+4|0)+(t3<<2)|0,O1=+A[W1>>2],l2=O1+m3,z1=P1>l2,h2=V3|5,V5=z1?h2:V3,A2=(n+32|0)+(t3<<2)|0,d2=+A[A2>>2],s2=d2-m3,V1=K1>2]|0,$5=(W2|0)>0,$5)for(Q0=$+(o3<<4)|0,n0=e[Q0>>2]|0,y0=($+(o3<<4)|0)+8|0,A0=e[y0>>2]|0,a3=0,L5=0;;)if(s0=n0+L5|0,r0=k2+(s0<<2)|0,K=+A[r0>>2],c0=A0+(L5<<2)|0,l0=+A[c0>>2],j=l0*K,a0=j+a3,g0=L5+1|0,f0=(g0|0)<(W2|0),f0)a3=a0,L5=g0;else{T3=a0;break}else T3=0;for(h0=($+(o3<<4)|0)+12|0,E0=+A[h0>>2],g3=E0*T3,e3=(c+(o3*144|0)|0)+68|0,f3=e[e3>>2]|0,C0=(f3|0)<1,m=C0?16:-1,C=m+f3|0,u0=(c+(o3*144|0)|0)+(C<<2)|0,k0=+A[u0>>2],J0=g3k0,S=D0?k0:g3,t6=0,R3=C,w3=-99999,p3=99999;;)if(e0=(R3|0)<1,y=e0?16:-1,w=y+R3|0,H=(c+(o3*144|0)|0)+(w<<2)|0,X=+A[H>>2],U=w3X,G=Z?X:p3,V=t6+1|0,q5=(V|0)==(f|0),q5){_=o0,N=G;break}else t6=V,R3=w,w3=o0,p3=G;if(p5=S-N,H5=X5-_,d5=(c+(o3*144|0)|0)+(f3<<2)|0,A[d5>>2]=g3,J5=e[e3>>2]|0,A3=J5+1|0,E3=(J5|0)>15,Q=E3?0:A3,e[e3>>2]=Q,K5=(n+4|0)+(o3<<2)|0,y3=+A[K5>>2],h3=y3+m3,B3=H5>h3,q3=N3|5,k3=B3?q3:N3,M3=(n+32|0)+(o3<<2)|0,z5=+A[M3>>2],Q3=z5-m3,W5=p5>2]|0,C2=n+1288|0,z3=e[C2>>2]|0,F3=n+1284|0,E6=e[F3>>2]|0,I9=(E6|0)>0,I9){for(g8=0;Z4=m4+(g8<<2)|0,e[Z4>>2]=-200,Ie=g8+1|0,de=(Ie|0)==(E6|0),!de;)g8=Ie;if(I9){for(H3=0;h4=a4+(H3<<2)|0,e[h4>>2]=-200,W=H3+1|0,$4=(W|0)==(E6|0),!$4;)H3=W;if(I9){for(r0=E6<<2,ne(F8|0,0,r0|0)|0,Q9=0;y0=ke+(Q9<<2)|0,e[y0>>2]=1,M0=Q9+1|0,Te=(M0|0)==(E6|0),!Te;)Q9=M0;if(I9){if(l1=E6<<2,ne(V8|0,-1,l1|0)|0,m1=(E6|0)>1,!m1)return ee=0,B=X9,ee|0;for(U1=z3+-1|0,W1=J+1112|0,t2=E6+-1|0,M=e[n>>2]|0,C4=M,C9=0,Ee=0;;){S4=C9+1|0,D4=n+(S4<<2)|0,R4=e[D4>>2]|0,M4=U6+(C9*56|0)|0,Re=M4,D7=Re+56|0;do e[Re>>2]=0,Re=Re+4|0;while((Re|0)<(D7|0));if(e[M4>>2]=C4,T4=(U6+(C9*56|0)|0)+4|0,e[T4>>2]=R4,N9=(R4|0)<(z3|0),X8=N9?R4:U1,G4=(X8|0)<(C4|0),G4)y8=0,W8=0,v8=0,S8=0,d8=0,_e=0,e7=0,H9=0,Y8=0,b8=0,O7=0,P7=0;else for(w4=C4,h8=0,Ge=0,P4=0,W9=0,Ce=0,r8=0,I3=0,S9=0,A8=0,B9=0,s7=0,_8=0;;){s4=$+(w4<<2)|0,P=+A[s4>>2],x4=P*7.314285755157471,g4=x4+1023.5,ue=~~g4,P9=(ue|0)>1023,d9=(ue|0)<0,d=d9?0:ue,v=P9?1023:d,Le=(v|0)==0;do if(Le)O8=h8,je=Ge,e8=P4,I8=W9,Ue=Ce,p4=r8,C8=I3,H8=S9,q4=A8,qe=B9,re=s7,J8=_8;else if(ze=s+(w4<<2)|0,N4=+A[ze>>2],Me=+A[W1>>2],U4=Me+N4,W4=!(U4>=P),W4){se=w4+r8|0,Z9=v+_8|0,oe=i5(w4,w4)|0,$e=oe+W9|0,B4=i5(v,v)|0,e0=B4+B9|0,H=i5(v,w4)|0,X=H+S9|0,U=Ge+1|0,O8=h8,je=U,e8=P4,I8=$e,Ue=Ce,p4=se,C8=I3,H8=X,q4=A8,qe=e0,re=s7,J8=Z9;break}else{we=w4+Ce|0,Ze=v+s7|0,z9=i5(w4,w4)|0,Ae=z9+P4|0,b6=i5(v,v)|0,O4=b6+A8|0,R9=i5(v,w4)|0,o4=R9+I3|0,b4=h8+1|0,O8=b4,je=Ge,e8=Ae,I8=W9,Ue=we,p4=r8,C8=o4,H8=S9,q4=O4,qe=B9,re=Ze,J8=_8;break}while(!1);if(o0=w4+1|0,Z=(w4|0)<(X8|0),Z)w4=o0,h8=O8,Ge=je,P4=e8,W9=I8,Ce=Ue,r8=p4,I3=C8,S9=H8,A8=q4,B9=qe,s7=re,_8=J8;else{y8=O8,W8=je,v8=e8,S8=I8,d8=Ue,_e=p4,e7=C8,H9=H8,Y8=q4,b8=qe,O7=re,P7=J8;break}}if(V=(U6+(C9*56|0)|0)+8|0,e[V>>2]=d8,s0=(U6+(C9*56|0)|0)+12|0,e[s0>>2]=O7,n0=(U6+(C9*56|0)|0)+16|0,e[n0>>2]=v8,i0=(U6+(C9*56|0)|0)+20|0,e[i0>>2]=Y8,K=(U6+(C9*56|0)|0)+24|0,e[K>>2]=e7,c0=(U6+(C9*56|0)|0)+28|0,e[c0>>2]=y8,A0=(U6+(C9*56|0)|0)+32|0,e[A0>>2]=_e,l0=(U6+(C9*56|0)|0)+36|0,e[l0>>2]=P7,j=(U6+(C9*56|0)|0)+40|0,e[j>>2]=S8,a0=(U6+(C9*56|0)|0)+44|0,e[a0>>2]=b8,g0=(U6+(C9*56|0)|0)+48|0,e[g0>>2]=H9,f0=(U6+(C9*56|0)|0)+52|0,e[f0>>2]=W8,Q0=y8+Ee|0,a6=(S4|0)==(t2|0),a6){h7=Q0;break}else C4=R4,C9=S4,Ee=Q0}}else he=9}else he=9}else he=9}else he=9;if((he|0)==9){if(T0=(E6|0)==0,!T0)return ee=0,B=X9,ee|0;M2=U6+4|0,Re=U6,D7=Re+56|0;do e[Re>>2]=0,Re=Re+4|0;while((Re|0)<(D7|0));if(e[M2>>2]=z3,P2=(z3|0)<1,P2)N8=0,Z8=0,P8=0,u8=0,i8=0,j9=0,E8=0,te=0,r7=0,n7=0,L7=0,M7=0;else for(k2=J+1112|0,l4=0,w8=0,f8=0,Xe=0,le=0,ce=0,ge=0,H4=0,ie=0,n8=0,He=0,k7=0,s8=0;;){D5=$+(l4<<2)|0,N=+A[D5>>2],c2=N*7.314285755157471,F2=c2+1023.5,F5=~~F2,_3=(F5|0)>1023,L5=(F5|0)<0,f=L5?0:F5,m=_3?1023:f,N3=(m|0)==0;do if(N3)U8=w8,De=f8,be=Xe,t8=le,Ne=ce,Be=ge,Oe=H4,Pe=ie,D8=n8,A7=He,v7=k7,S7=s8;else if($6=s+(l4<<2)|0,P3=+A[$6>>2],e6=+A[k2>>2],r9=e6+P3,x6=!(r9>=N),x6){g9=l4+ge|0,h9=m+s8|0,f9=i5(l4,l4)|0,s9=f9+le|0,o9=i5(m,m)|0,M9=o9+He|0,M6=i5(m,l4)|0,e9=M6+ie|0,T9=f8+1|0,U8=w8,De=T9,be=Xe,t8=s9,Ne=ce,Be=g9,Oe=H4,Pe=e9,D8=n8,A7=M9,v7=k7,S7=h9;break}else{N6=l4+ce|0,D6=m+k7|0,V6=i5(l4,l4)|0,y6=V6+Xe|0,F6=i5(m,m)|0,L6=F6+n8|0,X6=i5(m,l4)|0,A9=X6+H4|0,W6=w8+1|0,U8=W6,De=f8,be=y6,t8=le,Ne=N6,Be=ge,Oe=A9,Pe=ie,D8=L6,A7=He,v7=D6,S7=s8;break}while(!1);if(u9=l4+1|0,E9=(u9|0)==(z3|0),E9){N8=U8,Z8=De,P8=be,u8=t8,i8=Ne,j9=Be,E8=Oe,te=Pe,r7=D8,n7=A7,L7=v7,M7=S7;break}else l4=u9,w8=U8,f8=De,Xe=be,le=t8,ce=Ne,ge=Be,H4=Oe,ie=Pe,n8=D8,He=A7,k7=v7,s8=S7}d4=U6+8|0,e[d4>>2]=i8,n4=U6+12|0,e[n4>>2]=L7,c4=U6+16|0,e[c4>>2]=P8,G9=U6+20|0,e[G9>>2]=r7,V9=U6+24|0,e[V9>>2]=E8,v9=U6+28|0,e[v9>>2]=N8,H6=U6+32|0,e[H6>>2]=j9,t9=U6+36|0,e[t9>>2]=M7,E4=U6+40|0,e[E4>>2]=u8,v4=U6+44|0,e[v4>>2]=n7,A4=U6+48|0,e[A4>>2]=te,p9=U6+52|0,e[p9>>2]=Z8,h7=N8}if(d0=(h7|0)==0,d0)return ee=0,B=X9,ee|0;e[i7>>2]=-200,e[q8>>2]=-200,h0=E6+-1|0,jB(U6,h0,i7,q8,J)|0,E0=e[i7>>2]|0,e[m4>>2]=E0,e[a4>>2]=E0,C0=e[q8>>2]|0,u0=a4+4|0,e[u0>>2]=C0,k0=m4+4|0,e[k0>>2]=C0,J0=(E6|0)>2;do if(J0){D0=J+1112|0,m0=J+1096|0,x0=J+1100|0,F0=J+1104|0,L4=2;e:for(;;){G0=(n+520|0)+(L4<<2)|0,p0=e[G0>>2]|0,H0=F8+(p0<<2)|0,R0=e[H0>>2]|0,S0=ke+(p0<<2)|0,L0=e[S0>>2]|0,Y0=V8+(R0<<2)|0,q0=e[Y0>>2]|0,N0=(q0|0)==(L0|0);t:do if(!N0){if(V0=(n+520|0)+(R0<<2)|0,U0=e[V0>>2]|0,r1=(n+520|0)+(L0<<2)|0,P0=e[r1>>2]|0,e[Y0>>2]=L0,e1=(J+836|0)+(R0<<2)|0,v0=e[e1>>2]|0,i1=(J+836|0)+(L0<<2)|0,c1=e[i1>>2]|0,a1=m4+(R0<<2)|0,f1=e[a1>>2]|0,g1=(f1|0)<0,A1=a4+(R0<<2)|0,$1=e[A1>>2]|0,g1?y=$1:(n1=($1|0)<0,n1?y=f1:(s1=$1+f1|0,z0=s1>>1,y=z0)),I1=m4+(L0<<2)|0,h1=e[I1>>2]|0,E1=(h1|0)<0,u1=a4+(L0<<2)|0,d1=e[u1>>2]|0,E1?Q=d1:(p1=(d1|0)<0,p1?Q=h1:(Q1=d1+h1|0,D1=Q1>>1,Q=D1)),_1=(y|0)==-1,y1=(Q|0)==-1,y7=_1|y1,y7){he=38;break e}k1=Q-y|0,x1=c1-v0|0,Se=(k1|0)>-1,y9=0-k1|0,L1=Se?k1:y9,N1=(k1|0)/(x1|0)&-1,w1=k1>>31,Z1=w1|1,G1=$+(v0<<2)|0,Y=+A[G1>>2],v1=Y*7.314285755157471,K1=v1+1023.5,P1=~~K1,H1=(P1|0)>1023,q1=(P1|0)<0,I=q1?0:P1,S=H1?1023:I,Y1=i5(N1,x1)|0,a7=(Y1|0)>-1,g7=0-Y1|0,j1=a7?Y1:g7,r2=L1-j1|0,O1=y-S|0,l2=i5(O1,O1)|0,z1=s+(v0<<2)|0,h2=+A[z1>>2],A2=+A[D0>>2],d2=A2+h2,s2=!(d2>=Y),s2?he=42:(V1=+(y|0),g2=+A[m0>>2],$2=g2+V1,a2=+(S|0),i2=$2>2],X1=V1-o2,n2=X1>a2,n2||(he=42)));i:do if((he|0)==42){if(he=0,f2=v0+1|0,e2=(f2|0)<(c1|0),e2)for(u2=f2,j4=0,Q7=l2,G8=1,f7=y;;){if(y2=j4+r2|0,S2=(y2|0)<(x1|0),w2=S2?0:Z1,_2=S2?0:x1,F4=y2-_2|0,L=f7+N1|0,t7=L+w2|0,G2=$+(u2<<2)|0,z=+A[G2>>2],K2=z*7.314285755157471,N2=K2+1023.5,q2=~~N2,T2=(q2|0)>1023,O2=(q2|0)<0,C=O2?0:q2,D=T2?1023:C,V2=t7-D|0,A5=i5(V2,V2)|0,T1=A5+Q7|0,j2=G8+1|0,R5=s+(u2<<2)|0,X2=+A[R5>>2],v5=X2+A2,z2=v5>=z,f5=(D|0)!=0,j8=z2&f5,j8&&(w5=+(t7|0),O5=+A[m0>>2],a5=O5+w5,E5=+(D|0),r5=a5>2],R2=w5-x2,B2=R2>E5,B2)))break i;if(C5=u2+1|0,x5=(C5|0)<(c1|0),x5)u2=C5,j4=F4,Q7=T1,G8=j2,f7=t7;else{z8=T1,T8=j2;break}}else z8=l2,T8=1;if(u5=+A[m0>>2],S5=u5*u5,G5=+(T8|0),H2=S5/G5,I5=+A[F0>>2],s5=H2>I5,!s5&&(l5=+A[x0>>2],B5=l5*l5,M1=B5/G5,k5=M1>I5,!k5&&(c5=(z8|0)/(T8|0)&-1,o5=+(c5|0),Z2=o5>I5,Z2)))break;a3=m4+(L4<<2)|0,e[a3>>2]=-200,l3=a4+(L4<<2)|0,e[l3>>2]=-200;break t}while(!1);if(e[L8>>2]=-200,e[M8>>2]=-200,e[ve>>2]=-200,e[We>>2]=-200,m5=U6+(U0*56|0)|0,e5=p0-U0|0,n5=jB(m5,e5,L8,M8,J)|0,g5=U6+(p0*56|0)|0,Y2=P0-p0|0,h5=jB(g5,Y2,ve,We,J)|0,t5=(n5|0)!=0,t5&&(e[L8>>2]=y,b5=e[ve>>2]|0,e[M8>>2]=b5),W2=(h5|0)==0,!W2&&($5=e[M8>>2]|0,e[ve>>2]=$5,e[We>>2]=Q,t5)){p5=m4+(L4<<2)|0,e[p5>>2]=-200,H5=a4+(L4<<2)|0,e[H5>>2]=-200;break}if(X5=e[L8>>2]|0,e[A1>>2]=X5,d5=(R0|0)==0,d5&&(e[m4>>2]=X5),f3=e[M8>>2]|0,g3=m4+(L4<<2)|0,e[g3>>2]=f3,J5=e[ve>>2]|0,e3=a4+(L4<<2)|0,e[e3>>2]=J5,A3=e[We>>2]|0,e[I1>>2]=A3,E3=(L0|0)==1,E3&&(e[u0>>2]=A3),K5=J5&f3,y3=(K5|0)>-1,y3){h3=(p0|0)>0;i:do if(h3)for(K8=p0;;){if(p7=K8+-1|0,q3=ke+(p7<<2)|0,M3=e[q3>>2]|0,z5=(M3|0)==(L0|0),!z5)break i;if(e[q3>>2]=L4,Q3=(K8|0)>1,Q3)K8=p7;else break}while(!1);if(c7=p0+1|0,B3=(c7|0)<(E6|0),B3)for(x8=c7;;){if(W5=F8+(x8<<2)|0,j3=e[W5>>2]|0,T3=(j3|0)==(R0|0),!T3)break t;if(e[W5>>2]=L4,l7=x8+1|0,$3=(l7|0)<(E6|0),$3)x8=l7;else break}}}while(!1);if(C3=L4+1|0,q5=(C3|0)<(E6|0),q5)L4=C3;else{he=68;break}}if((he|0)==38)cv(1);else if((he|0)==68){T=e[m4>>2]|0,G=e[a4>>2]|0,y5=T,t6=G;break}}else y5=E0,t6=E0;while(!1);if(N5=E6<<2,P5=U7(t,N5)|0,G3=(y5|0)<0,G3?w=t6:(t3=(t6|0)<0,t3?w=y5:(o3=t6+y5|0,R3=o3>>1,w=R3)),e[P5>>2]=w,f6=e[k0>>2]|0,m3=(f6|0)<0,w3=e[u0>>2]|0,m3?x=w3:(p3=(w3|0)<0,p3?x=f6:(X3=w3+f6|0,V3=X3>>1,x=V3)),V5=P5+4|0,e[V5>>2]=x,J0)X4=2;else return ee=P5,B=X9,ee|0;for(;;)if(k3=X4+-2|0,c3=(n+1032|0)+(k3<<2)|0,U3=e[c3>>2]|0,o6=(n+780|0)+(k3<<2)|0,u3=e[o6>>2]|0,w6=(J+836|0)+(U3<<2)|0,k6=e[w6>>2]|0,v6=(J+836|0)+(u3<<2)|0,m6=e[v6>>2]|0,p6=P5+(U3<<2)|0,_6=e[p6>>2]|0,Y6=P5+(u3<<2)|0,B6=e[Y6>>2]|0,v3=(J+836|0)+(X4<<2)|0,Z3=e[v3>>2]|0,W3=_6&32767,u6=B6&32767,O3=u6-W3|0,S3=m6-k6|0,$7=(O3|0)>-1,k8=0-O3|0,Y3=$7?O3:k8,S6=Z3-k6|0,i6=i5(Y3,S6)|0,i3=(i6|0)/(S3|0)&-1,P6=(O3|0)<0,s3=0-i3|0,_=P6?s3:i3,b=_+W3|0,r6=m4+(X4<<2)|0,I6=e[r6>>2]|0,D3=(I6|0)<0,T6=a4+(X4<<2)|0,Q6=e[T6>>2]|0,D3?p=Q6:(R6=(Q6|0)<0,R6?p=I6:(K6=Q6+I6|0,d6=K6>>1,p=d6)),J6=(p|0)<0,x3=(b|0)==(p|0),w7=J6|x3,Z6=b|32768,c=w7?Z6:p,G6=P5+(X4<<2)|0,e[G6>>2]=c,j6=X4+1|0,ae=(j6|0)==(E6|0),ae){ee=P5;break}else X4=j6;return B=X9,ee|0}function R8(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0;if(s0=B,f=n+1284|0,d=e[f>>2]|0,b=(s|0)!=0,z=($|0)!=0,o0=b&z,!o0)return Z=0,Z|0;if(Y=d<<2,t0=U7(t,Y)|0,J=(d|0)>0,!J)return Z=t0,Z|0;for(W=65536-c|0,U=0;;)if(e0=s+(U<<2)|0,H=e[e0>>2]|0,I=H&32767,C=i5(I,W)|0,p=$+(U<<2)|0,m=e[p>>2]|0,v=m&32767,S=i5(v,c)|0,w=C+32768|0,y=w+S|0,D=y>>16,Q=t0+(U<<2)|0,e[Q>>2]=D,x=e[e0>>2]|0,_=x&32768,L=(_|0)==0,L||(M=e[p>>2]|0,T=M&32768,G=(T|0)==0,G||(N=D|32768,e[Q>>2]=N)),P=U+1|0,X=(P|0)==(d|0),X){Z=t0;break}else U=P;return Z|0}function qv(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,V5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,m6=0,z3=0,$6=0,p6=0,_6=0,Y6=0,B6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,s3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0;if(L6=B,B=B+336|0,x6=L6+64|0,c3=L6+32|0,x3=L6,D=s+1296|0,Q=e[D>>2]|0,g2=s+1284|0,x2=e[g2>>2]|0,s5=n+64|0,n5=e[s5>>2]|0,X5=n5+4|0,h3=e[X5>>2]|0,a3=h3+28|0,o3=e[a3>>2]|0,b=o3+2848|0,t0=e[b>>2]|0,n0=($|0)==0,n0)return U2(t,0,1),R5=n+36|0,X2=e[R5>>2]|0,v5=(X2|0)/2&-1,z2=v5<<2,ne(c|0,0,z2|0)|0,d=0,B=L6,d|0;if(Q0=(x2|0)>0,Q0)for(x0=Q+832|0,u6=0;N0=$+(u6<<2)|0,f1=e[N0>>2]|0,u1=f1&32767,N1=e[x0>>2]|0,(N1|0)==4?(V2=u1>>>4,N6=V2):(N1|0)==1?(j1=u1>>>2,N6=j1):(N1|0)==2?($2=u1>>>3,N6=$2):(N1|0)==3?(w2=(u1>>>0)/12&-1,N6=w2):N6=u1,f5=f1&32768,w5=f5|N6,e[N0>>2]=w5,O5=u6+1|0,B6=(O5|0)==(x2|0),!B6;)u6=O5;if(a5=e[$>>2]|0,e[x6>>2]=a5,k2=$+4|0,E5=e[k2>>2]|0,r5=x6+4|0,e[r5>>2]=E5,R2=(x2|0)>2,B2=s+1292|0,R2){for(O3=2;;){if(C5=O3+-2|0,x5=(s+1032|0)+(C5<<2)|0,u5=e[x5>>2]|0,S5=(s+780|0)+(C5<<2)|0,G5=e[S5>>2]|0,D5=(Q+836|0)+(u5<<2)|0,H2=e[D5>>2]|0,I5=(Q+836|0)+(G5<<2)|0,l5=e[I5>>2]|0,B5=$+(u5<<2)|0,M1=e[B5>>2]|0,k5=$+(G5<<2)|0,c5=e[k5>>2]|0,o5=(Q+836|0)+(O3<<2)|0,Z2=e[o5>>2]|0,c2=M1&32767,m5=c5&32767,e5=m5-c2|0,g5=l5-H2|0,P3=(e5|0)>-1,Z6=0-e5|0,Y2=P3?e5:Z6,h5=Z2-H2|0,t5=i5(Y2,h5)|0,b5=(t5|0)/(g5|0)&-1,W2=(e5|0)<0,$5=0-b5|0,C=W2?$5:b5,I=C+c2|0,F2=$+(O3<<2)|0,p5=e[F2>>2]|0,H5=p5&32768,d5=(H5|0)!=0,f3=(p5|0)==(I|0),r9=d5|f3,r9)g3=I|32768,e[F2>>2]=g3,J5=x6+(O3<<2)|0,e[J5>>2]=0;else{e3=e[B2>>2]|0,A3=e3-I|0,E3=(A3|0)<(I|0),f=E3?A3:I,F5=p5-I|0,K5=(F5|0)<0;do if(K5)if(y3=0-f|0,B3=(F5|0)<(y3|0),B3){q3=F5^-1,M3=f+q3|0,D6=M3;break}else{z5=F5<<1,Q3=z5^-1,D6=Q3;break}else if(W5=(f|0)>(F5|0),W5){_3=F5<<1,D6=_3;break}else{j3=f+F5|0,D6=j3;break}while(!1);T3=x6+(O3<<2)|0,e[T3>>2]=D6,e[B5>>2]=c2,$3=e[k5>>2]|0,l3=$3&32767,e[k5>>2]=l3}if(C3=O3+1|0,Y6=(C3|0)==(x2|0),Y6)break;O3=C3}v=e[x6>>2]|0,S=e[r5>>2]|0,X3=v,k3=S}else X3=a5,k3=E5;if(U2(t,1,1),q5=s+1308|0,N5=e[q5>>2]|0,P5=N5+1|0,e[q5>>2]=P5,y5=e[B2>>2]|0,G3=y5+-1|0,L5=F7(G3)|0,t6=L5<<1,t3=s+1304|0,R3=e[t3>>2]|0,f6=R3+t6|0,e[t3>>2]=f6,m3=e[B2>>2]|0,w3=m3+-1|0,p3=F7(w3)|0,U2(t,X3,p3),V3=e[B2>>2]|0,N3=V3+-1|0,V5=F7(N3)|0,U2(t,k3,V5),x=e[Q>>2]|0,_=(x|0)>0,_)for(L=s+1300|0,S3=0,i6=2;;){if(M=(Q+4|0)+(S3<<2)|0,T=e[M>>2]|0,G=(Q+128|0)+(T<<2)|0,N=e[G>>2]|0,P=(Q+192|0)+(T<<2)|0,z=e[P>>2]|0,Y=1<>2]=0,e[c3+4>>2]=0,e[c3+8>>2]=0,e[c3+12>>2]=0,e[c3+16>>2]=0,e[c3+20>>2]=0,e[c3+24>>2]=0,e[c3+28>>2]=0,J=(z|0)==0,!J){if(e[x3>>2]=0,e[x3+4>>2]=0,e[x3+8>>2]=0,e[x3+12>>2]=0,e[x3+16>>2]=0,e[x3+20>>2]=0,e[x3+24>>2]=0,e[x3+28>>2]=0,W=(z|0)==31,!W)for(s3=0;a0=((Q+320|0)+(T<<5)|0)+(s3<<2)|0,g0=e[a0>>2]|0,f0=(g0|0)<0,f0?y=1:(d0=(o3+1824|0)+(g0<<2)|0,y0=e[d0>>2]|0,h0=y0+4|0,E0=e[h0>>2]|0,y=E0),C0=x3+(s3<<2)|0,e[C0>>2]=y,u0=s3+1|0,k0=(u0|0)<(Y|0),k0;)s3=u0;e0=(N|0)>0;e:do if(e0){if(W)for(U3=0,w6=0,r6=0;;)if(J0=c3+(r6<<2)|0,D0=e[J0>>2]|0,m0=D0<>2]|0,T6=0;;){if(H=x3+(T6<<2)|0,X=e[H>>2]|0,o0=(U|0)<(X|0),o0){e6=T6,F3=31;break}if(Z=T6+1|0,V=(Z|0)<(Y|0),V)T6=Z;else{F3=33;break}}if((F3|0)==31?(F3=0,s0=c3+(I6<<2)|0,e[s0>>2]=e6,r0=e6):(F3|0)==33&&(F3=0,p=c3+(I6<<2)|0,w=e[p>>2]|0,r0=w),i0=r0<>2]|0,R0=t0+(H0*56|0)|0,S0=Dh(R0,u3,t)|0,L0=e[L>>2]|0,Y0=L0+S0|0,e[L>>2]=Y0}if(q0=(N|0)>0,q0)for(D3=0;V0=c3+(D3<<2)|0,T0=e[V0>>2]|0,U0=((Q+320|0)+(T<<5)|0)+(T0<<2)|0,r1=e[U0>>2]|0,P0=(r1|0)>-1,P0&&(e1=D3+i6|0,v0=x6+(e1<<2)|0,i1=e[v0>>2]|0,c1=(t0+(r1*56|0)|0)+4|0,a1=e[c1>>2]|0,g1=(i1|0)<(a1|0),g1&&(l1=t0+(r1*56|0)|0,A1=Dh(l1,i1,t)|0,$1=e[t3>>2]|0,n1=$1+A1|0,e[t3>>2]=n1)),s1=D3+1|0,p6=(s1|0)==(N|0),!p6;)D3=s1;if(z0=N+i6|0,I1=S3+1|0,h1=e[Q>>2]|0,E1=(I1|0)<(h1|0),E1)S3=I1,i6=z0;else break}if(d1=e[$>>2]|0,m1=Q+832|0,p1=e[m1>>2]|0,Q1=i5(p1,d1)|0,D1=n+28|0,_1=e[D1>>2]|0,y1=o3+(_1<<2)|0,k1=e[y1>>2]|0,x1=(k1|0)/2&-1,L1=e[g2>>2]|0,w1=(L1|0)>1,w1)for(Z3=0,i3=1,Q6=0,d6=Q1;;){if(K1=(s+260|0)+(i3<<2)|0,P1=e[K1>>2]|0,H1=$+(P1<<2)|0,q1=e[H1>>2]|0,Y1=q1&32767,r2=(Y1|0)==(q1|0),r2)if(W1=e[m1>>2]|0,O1=i5(W1,q1)|0,l2=(Q+836|0)+(P1<<2)|0,z1=e[l2>>2]|0,h2=O1-d6|0,A2=z1-Q6|0,Y3=(h2|0)>-1,G6=0-h2|0,d2=Y3?h2:G6,s2=(h2|0)/(A2|0)&-1,V1=h2>>31,t2=V1|1,a2=i5(s2,A2)|0,S6=(a2|0)>-1,j6=0-a2|0,i2=S6?a2:j6,o2=d2-i2|0,X1=(x1|0)>(z1|0),V6=X1?z1:x1,n2=(V6|0)>(Q6|0),n2&&(f2=c+(Q6<<2)|0,e[f2>>2]=d6),e2=Q6+1|0,y2=(e2|0)<(V6|0),y2)for(u2=e2,v6=0,y6=d6;;)if(S2=v6+o2|0,C2=(S2|0)<(A2|0),M2=C2?0:t2,_2=C2?0:A2,m6=S2-_2|0,m=y6+s2|0,F6=m+M2|0,G2=c+(u2<<2)|0,e[G2>>2]=F6,K2=u2+1|0,$6=(K2|0)==(V6|0),$6){W3=z1,R6=z1,J6=O1;break}else u2=K2,v6=m6,y6=F6;else W3=z1,R6=z1,J6=O1;else W3=Z3,R6=Q6,J6=d6;if(N2=i3+1|0,q2=e[g2>>2]|0,T2=(N2|0)<(q2|0),T2)Z3=W3,i3=N2,Q6=R6,d6=J6;else{v3=W3,K6=J6;break}}else v3=0,K6=Q1;if(U1=n+36|0,Z1=e[U1>>2]|0,G1=(Z1|0)/2&-1,v1=(v3|0)<(G1|0),v1)P6=v3;else return d=1,B=L6,d|0;for(;;)if(O2=c+(P6<<2)|0,e[O2>>2]=K6,A5=P6+1|0,P2=e[U1>>2]|0,T1=(P2|0)/2&-1,j2=(A5|0)<(T1|0),j2)P6=A5;else{d=1;break}return B=L6,d|0}function jB(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0;if(A5=B,p=e[t>>2]|0,m=n+-1|0,i0=(t+(m*56|0)|0)+4|0,d0=e[i0>>2]|0,F0=(n|0)>0,F0)for(V0=c+1108|0,g1=+A[V0>>2],t2=0,X1=0,f2=0,w2=0,G2=0,q2=0;;)if(d1=(t+(X1*56|0)|0)+52|0,w1=e[d1>>2]|0,r2=(t+(X1*56|0)|0)+28|0,v=e[r2>>2]|0,T=v+w1|0,H=+(T|0),X=H*g1,U=v+1|0,o0=+(U|0),Z=X/o0,V=Z,s0=V+1,n0=(t+(X1*56|0)|0)+32|0,r0=e[n0>>2]|0,K=+(r0|0),c0=(t+(X1*56|0)|0)+8|0,A0=e[c0>>2]|0,l0=+(A0|0),j=l0*s0,a0=K+w2,g0=a0+j,f0=(t+(X1*56|0)|0)+36|0,Q0=e[f0>>2]|0,y0=+(Q0|0),h0=(t+(X1*56|0)|0)+12|0,E0=e[h0>>2]|0,C0=+(E0|0),u0=C0*s0,k0=y0+q2,J0=k0+u0,D0=(t+(X1*56|0)|0)+40|0,m0=e[D0>>2]|0,x0=+(m0|0),M0=(t+(X1*56|0)|0)+16|0,G0=e[M0>>2]|0,p0=+(G0|0),H0=p0*s0,R0=x0+f2,S0=R0+H0,L0=(t+(X1*56|0)|0)+48|0,Y0=e[L0>>2]|0,q0=+(Y0|0),N0=(t+(X1*56|0)|0)+24|0,T0=e[N0>>2]|0,U0=+(T0|0),r1=U0*s0,P0=q0+G2,e1=P0+r1,v0=+(w1|0),i1=+(v|0),c1=s0*i1,a1=v0+t2,f1=a1+c1,l1=X1+1|0,o2=(l1|0)==(n|0),o2){$2=f1,n2=S0,S2=g0,_2=e1,N2=J0;break}else t2=f1,X1=l1,f2=S0,w2=g0,G2=e1,q2=J0;else $2=0,n2=0,S2=0,_2=0,N2=0;return A1=e[s>>2]|0,$1=(A1|0)>-1,$1?(n1=+(p|0),s1=S2+n1,z0=+(A1|0),I1=z0+N2,h1=i5(p,p)|0,E1=+(h1|0),u1=n2+E1,m1=i5(A1,p)|0,p1=+(m1|0),Q1=p1+_2,D1=$2+1,a2=D1,e2=u1,C2=s1,u2=Q1,T2=I1):(a2=$2,e2=n2,C2=S2,u2=_2,T2=N2),_1=e[$>>2]|0,y1=(_1|0)>-1,y1?(k1=+(d0|0),x1=C2+k1,L1=+(_1|0),N1=L1+T2,U1=i5(d0,d0)|0,Z1=+(U1|0),G1=e2+Z1,v1=i5(_1,d0)|0,K1=+(v1|0),P1=K1+u2,H1=a2+1,i2=H1,y2=G1,M2=x1,K2=P1,O2=N1):(i2=a2,y2=e2,M2=C2,K2=u2,O2=T2),q1=y2*i2,Y1=M2*M2,j1=q1-Y1,W1=j1>0,W1?(O1=O2*y2,l2=M2*K2,z1=O1-l2,h2=z1/j1,A2=K2*i2,d2=M2*O2,s2=A2-d2,V1=s2/j1,g2=+(p|0),S=V1*g2,w=S+h2,y=+Ti(w),D=~~y,e[s>>2]=D,Q=+(d0|0),b=V1*Q,x=b+h2,_=+Ti(x),L=~~_,e[$>>2]=L,M=e[s>>2]|0,G=(M|0)>1023,G?(e[s>>2]=1023,d=e[$>>2]|0,N=d,W=1023):(N=L,W=M),P=(N|0)>1023,P?(e[$>>2]=1023,I=e[s>>2]|0,z=I,e0=1023):(z=W,e0=N),Y=(z|0)<0,Y?(e[s>>2]=0,C=e[$>>2]|0,t0=C):t0=e0,J=(t0|0)<0,J?(e[$>>2]=0,f=0,f|0):(f=0,f|0)):(e[s>>2]=0,e[$>>2]=0,f=1,f|0)}function Yv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0;if(v0=B,d=t+836|0,I=t+840|0,x=e[I>>2]|0,J=e[t>>2]|0,U2(n,J,5),i0=e[t>>2]|0,d0=(i0|0)>0,d0){for(F0=t+4|0,Y0=0,P0=-1;;)if(m=F0+(Y0<<2)|0,v=e[m>>2]|0,U2(n,v,4),S=e[m>>2]|0,w=(P0|0)<(S|0),s=w?S:P0,y=Y0+1|0,D=e[t>>2]|0,Q=(y|0)<(D|0),Q)Y0=y,P0=s;else{$=s;break}if(G0=($|0)>-1,G0)for(p0=t+128|0,H0=t+192|0,C=t+256|0,p=t+320|0,q0=0;;){if(b=p0+(q0<<2)|0,_=e[b>>2]|0,L=_+-1|0,U2(n,L,3),M=H0+(q0<<2)|0,T=e[M>>2]|0,U2(n,T,2),G=e[M>>2]|0,N=(G|0)==0,N?(V0=0,e1=8):(P=C+(q0<<2)|0,z=e[P>>2]|0,U2(n,z,8),c=e[M>>2]|0,Y=(c|0)==31,Y||(V0=0,e1=8)),(e1|0)==8)for(;e1=0,t0=(p+(q0<<5)|0)+(V0<<2)|0,W=e[t0>>2]|0,e0=W+1|0,U2(n,e0,8),H=V0+1|0,X=e[M>>2]|0,U=1<>2]|0,n0=s0+-1|0,U2(n,n0,2),r0=x+-1|0,K=F7(r0)|0,U2(n,K,4),c0=F7(r0)|0,A0=e[t>>2]|0,l0=(A0|0)>0,!!l0)for(j=t+4|0,a0=t+128|0,M0=A0,R0=0,N0=0,T0=0;;){if(g0=j+(N0<<2)|0,f0=e[g0>>2]|0,Q0=a0+(f0<<2)|0,y0=e[Q0>>2]|0,h0=y0+R0|0,E0=(T0|0)<(h0|0),E0){for(r1=T0;C0=r1+2|0,u0=d+(C0<<2)|0,k0=e[u0>>2]|0,U2(n,k0,c0),J0=r1+1|0,S0=(J0|0)==(h0|0),!S0;)r1=J0;f=e[t>>2]|0,x0=f,U0=h0}else x0=M0,U0=T0;if(D0=N0+1|0,m0=(D0|0)<(x0|0),m0)M0=x0,R0=h0,N0=D0,T0=U0;else break}}function Jv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0;z1=B,B=B+272|0,O1=z1,D=t+28|0,Q=e[D>>2]|0,Y=i4(1,1120)|0,s0=z4(n,5)|0,e[Y>>2]=s0,f0=(s0|0)>0;e:do if(f0){for(m0=Y+4|0,Z1=0,r2=-1;;){if(_=z4(n,4)|0,L=m0+(Z1<<2)|0,e[L>>2]=_,M=(_|0)<0,M)break e;if(T=(r2|0)<(_|0),c=T?_:r2,G=Z1+1|0,N=e[Y>>2]|0,P=(G|0)<(N|0),P)Z1=G,r2=c;else{f=c;break}}if(q0=(f|0)>-1,q0)for(a1=Y+128|0,E1=Y+192|0,L1=Y+256|0,b=Q+24|0,x=Y+320|0,G1=0;;){if(z=z4(n,3)|0,t0=z+1|0,J=a1+(G1<<2)|0,e[J>>2]=t0,W=z4(n,2)|0,e0=E1+(G1<<2)|0,e[e0>>2]=W,H=(W|0)<0,H||(X=(W|0)==0,X?(d=L1+(G1<<2)|0,I=e[d>>2]|0,Z=I):(U=z4(n,8)|0,o0=L1+(G1<<2)|0,e[o0>>2]=U,Z=U),V=(Z|0)<0,V)||(n0=e[b>>2]|0,i0=(Z|0)<(n0|0),!i0))break e;if(r0=e[e0>>2]|0,K=(r0|0)==31,!K)for(H1=0;;){if(a0=z4(n,8)|0,g0=a0+-1|0,Q0=(x+(G1<<5)|0)+(H1<<2)|0,e[Q0>>2]=g0,d0=(a0|0)<0,d0||(y0=e[b>>2]|0,h0=(a0|0)>(y0|0),l0=H1+1|0,h0))break e;if(c0=e[e0>>2]|0,A0=1<>2]=k0,D0=z4(n,4)|0,x0=(D0|0)<0,!x0)){if(F0=e[Y>>2]|0,M0=(F0|0)>0,M0)for(G0=Y+4|0,p0=Y+128|0,H0=Y+836|0,R0=1<>2]|0,Y0=p0+(L0<<2)|0,N0=e[Y0>>2]|0,V0=N0+U1|0,T0=(V0|0)>63,T0)break e;if(U0=(q1|0)<(V0|0),U0){for(j1=q1;;){if(r1=z4(n,D0)|0,P0=j1+2|0,e1=H0+(P0<<2)|0,e[e1>>2]=r1,v0=(r1|0)>-1,i1=(r1|0)<(R0|0),W1=v0&i1,!W1)break e;if(c1=j1+1|0,f1=(c1|0)<(V0|0),f1)j1=c1;else{$=c1;break}}m=e[Y>>2]|0,A1=m,Y1=$}else A1=N1,Y1=q1;if(g1=v1+1|0,l1=(g1|0)<(A1|0),l1)N1=A1,U1=V0,v1=g1,q1=Y1;else{C=H0,p=R0,w1=V0;break}}else w=Y+836|0,y=1<>2]=0,$1=Y+840|0,e[$1>>2]=p,n1=w1+2|0,s1=(w1|0)>-2,s1)for(K1=0;z0=C+(K1<<2)|0,I1=O1+(K1<<2)|0,e[I1>>2]=z0,h1=K1+1|0,u1=(h1|0)<(n1|0),u1;)K1=h1;_h(O1,n1,4,8),d1=(n1|0)>1;t:do if(d1){for(v=e[O1>>2]|0,S=e[v>>2]|0,y1=S,P1=1;Q1=O1+(P1<<2)|0,D1=e[Q1>>2]|0,_1=e[D1>>2]|0,k1=(y1|0)==(_1|0),m1=P1+1|0,!k1;)if(p1=(m1|0)<(n1|0),p1)y1=_1,P1=m1;else break t;if(x1=(Y|0)==0,x1)s=0;else break e;return B=z1,s|0}while(!1);return s=Y,B=z1,s|0}while(!1);return I2(Y),s=0,B=z1,s|0}function Kv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0;if(x1=B,B=B+272|0,y1=x1,$=i4(1,1312)|0,c=$+1296|0,e[c>>2]=n,D=n+836|0,z=n+840|0,V=e[z>>2]|0,g0=$+1288|0,e[g0>>2]=V,D0=e[n>>2]|0,Y0=(D0|0)>0,Y0){for(P0=n+4|0,f=n+128|0,g1=0,Q1=0;;)if(d=P0+(g1<<2)|0,I=e[d>>2]|0,C=f+(I<<2)|0,p=e[C>>2]|0,m=p+Q1|0,v=g1+1|0,S=(v|0)<(D0|0),S)g1=v,Q1=m;else{s=m;break}w=s+2|0,y=$+1284|0,e[y>>2]=w,Q=(s|0)>-2,Q?(M=w,p1=s,k1=7):(_h(y1,w,4,8),m1=s)}else r1=$+1284|0,e[r1>>2]=2,M=2,p1=0,k1=7;if((k1|0)==7){for(l1=0;b=D+(l1<<2)|0,x=y1+(l1<<2)|0,e[x>>2]=b,_=l1+1|0,L=(_|0)<(M|0),L;)l1=_;for(_h(y1,M,4,8),T=D,G=$+260|0,A1=0;Y=y1+(A1<<2)|0,t0=e[Y>>2]|0,J=t0,W=J-T|0,e0=W>>2,H=G+(A1<<2)|0,e[H>>2]=e0,X=A1+1|0,U=(X|0)<(M|0),U;)A1=X;for(N=$+260|0,P=$+520|0,$1=0;Z=N+($1<<2)|0,s0=e[Z>>2]|0,n0=P+(s0<<2)|0,e[n0>>2]=$1,i0=$1+1|0,r0=(i0|0)<(M|0),r0;)$1=i0;for(o0=$+260|0,n1=0;;)if(K=o0+(n1<<2)|0,c0=e[K>>2]|0,A0=D+(c0<<2)|0,l0=e[A0>>2]|0,j=$+(n1<<2)|0,e[j>>2]=l0,a0=n1+1|0,f0=(a0|0)<(M|0),f0)n1=a0;else{m1=p1;break}}if(Q0=n+832|0,d0=e[Q0>>2]|0,(d0|0)==4?(C0=$+1292|0,e[C0>>2]=64):(d0|0)==2?(h0=$+1292|0,e[h0>>2]=128):(d0|0)==1?(y0=$+1292|0,e[y0>>2]=256):(d0|0)==3&&(E0=$+1292|0,e[E0>>2]=86),u0=(m1|0)>0,!u0)return B=x1,$|0;for(k0=$+1032|0,J0=$+780|0,s1=0;;){for(m0=s1+2|0,x0=D+(m0<<2)|0,F0=e[x0>>2]|0,M0=e[g0>>2]|0,v0=1,a1=M0,z0=0,I1=0,u1=0;;)if(G0=D+(z0<<2)|0,p0=e[G0>>2]|0,H0=(p0|0)>(u1|0),R0=(p0|0)<(F0|0),D1=H0&R0,h1=D1?z0:I1,d1=D1?p0:u1,S0=(p0|0)<(a1|0),L0=(p0|0)>(F0|0),_1=S0&L0,i1=_1?z0:v0,f1=_1?p0:a1,q0=z0+1|0,N0=(q0|0)<(m0|0),N0)v0=i1,a1=f1,z0=q0,I1=h1,u1=d1;else{c1=i1,E1=h1;break}if(V0=k0+(s1<<2)|0,e[V0>>2]=E1,T0=J0+(s1<<2)|0,e[T0>>2]=c1,U0=s1+1|0,e1=(U0|0)==(m1|0),e1)break;s1=U0}return B=x1,$|0}function Vv(t){t=t|0;var n=0,s=0,$=0;$=B,n=(t|0)==0,n||I2(t)}function zv(t){t=t|0;var n=0,s=0,$=0;$=B,n=(t|0)==0,n||I2(t)}function Zv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0;if(w2=B,f=n+1296|0,d=e[f>>2]|0,r0=t+64|0,y0=e[r0>>2]|0,M0=y0+4|0,T0=e[M0>>2]|0,l1=T0+28|0,m1=e[l1>>2]|0,U1=m1+2848|0,W1=e[U1>>2]|0,I=t+4|0,x=z4(I,1)|0,J=(x|0)==1,!J)return s=0,s|0;U=n+1284|0,o0=e[U>>2]|0,Z=o0<<2,V=U7(t,Z)|0,s0=n+1292|0,n0=e[s0>>2]|0,i0=n0+-1|0,K=F7(i0)|0,c0=z4(I,K)|0,e[V>>2]=c0,A0=e[s0>>2]|0,l0=A0+-1|0,j=F7(l0)|0,a0=z4(I,j)|0,g0=V+4|0,e[g0>>2]=a0,f0=e[d>>2]|0,Q0=(f0|0)>0;e:do if(Q0){i2=0,n2=2;t:for(;;){if(u0=(d+4|0)+(i2<<2)|0,k0=e[u0>>2]|0,J0=(d+128|0)+(k0<<2)|0,D0=e[J0>>2]|0,m0=(d+192|0)+(k0<<2)|0,x0=e[m0>>2]|0,F0=1<>2]|0,R0=W1+(H0*56|0)|0,S0=OC(R0,I)|0,L0=(S0|0)==-1,L0){s=0,S2=25;break}else t2=S0;if(Y0=(D0|0)>0,Y0)for(q0=F0+-1|0,a2=t2,f2=0;;){if(N0=a2&q0,V0=((d+320|0)+(k0<<5)|0)+(N0<<2)|0,U0=e[V0>>2]|0,r1=a2>>x0,P0=(U0|0)>-1,P0){if(e1=W1+(U0*56|0)|0,v0=OC(e1,I)|0,i1=f2+n2|0,c1=V+(i1<<2)|0,e[c1>>2]=v0,a1=(v0|0)==-1,a1){s=0,S2=25;break t}}else f1=f2+n2|0,g1=V+(f1<<2)|0,e[g1>>2]=0;if(A1=f2+1|0,$1=(A1|0)<(D0|0),$1)a2=r1,f2=A1;else break}if(n1=D0+n2|0,s1=i2+1|0,z0=e[d>>2]|0,I1=(s1|0)<(z0|0),I1)i2=s1,n2=n1;else break e}if((S2|0)==25)return s|0}while(!1);if(d0=e[U>>2]|0,h0=(d0|0)>2,!h0)return s=V,s|0;for(E0=n+1032|0,C0=n+780|0,o2=2;;){if(h1=o2+-2|0,E1=E0+(h1<<2)|0,u1=e[E1>>2]|0,d1=(d+836|0)+(u1<<2)|0,p1=e[d1>>2]|0,Q1=C0+(h1<<2)|0,D1=e[Q1>>2]|0,_1=(d+836|0)+(D1<<2)|0,y1=e[_1>>2]|0,k1=V+(u1<<2)|0,x1=e[k1>>2]|0,L1=V+(D1<<2)|0,N1=e[L1>>2]|0,w1=(d+836|0)+(o2<<2)|0,Z1=e[w1>>2]|0,G1=x1&32767,v1=N1&32767,K1=v1-G1|0,P1=y1-p1|0,X1=(K1|0)>-1,e2=0-K1|0,H1=X1?K1:e2,q1=Z1-p1|0,Y1=i5(H1,q1)|0,j1=(Y1|0)/(P1|0)&-1,r2=(K1|0)<0,O1=0-j1|0,c=r2?O1:j1,$=c+G1|0,l2=e[s0>>2]|0,z1=l2-$|0,h2=V+(o2<<2)|0,A2=e[h2>>2]|0,d2=(A2|0)==0,d2)W=$|32768,e[h2>>2]=W;else{s2=(z1|0)<($|0),V1=s2?z1:$,g2=V1<<1,$2=(A2|0)<(g2|0);do if($2)if(S=A2&1,w=(S|0)==0,w){b=A2>>1,y2=b;break}else{y=A2+1|0,D=y>>1,Q=0-D|0,y2=Q;break}else if(C=(z1|0)>($|0),C){p=A2-$|0,y2=p;break}else{m=A2-z1|0,v=m^-1,y2=v;break}while(!1);_=y2+$|0,L=_&32767,e[h2>>2]=L,M=e[E1>>2]|0,T=V+(M<<2)|0,G=e[T>>2]|0,N=G&32767,e[T>>2]=N,P=e[Q1>>2]|0,z=V+(P<<2)|0,Y=e[z>>2]|0,t0=Y&32767,e[z>>2]=t0}if(e0=o2+1|0,H=e[U>>2]|0,X=(e0|0)<(H|0),X)o2=e0;else{s=V;break}}return s|0}function Wv(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0;if(w1=B,d=n+1296|0,I=e[d>>2]|0,x=t+64|0,J=e[x>>2]|0,i0=J+4|0,d0=e[i0>>2]|0,F0=d0+28|0,V0=e[F0>>2]|0,a1=t+28|0,f1=e[a1>>2]|0,C=V0+(f1<<2)|0,p=e[C>>2]|0,m=(p|0)/2&-1,v=(s|0)==0,v)return c1=m<<2,ne($|0,0,c1|0)|0,c=0,c|0;if(S=e[s>>2]|0,w=I+832|0,y=e[w>>2]|0,D=i5(y,S)|0,Q=(D|0)<0,b=(D|0)>255,_=b?255:D,L=Q?0:_,M=n+1284|0,T=e[M>>2]|0,G=(T|0)>1,G)for(N=n+260|0,s1=0,E1=1,d1=0,Q1=L;;){if(t0=N+(E1<<2)|0,W=e[t0>>2]|0,e0=s+(W<<2)|0,H=e[e0>>2]|0,X=H&32767,U=(X|0)==(H|0),U)if(o0=(I+836|0)+(W<<2)|0,Z=e[o0>>2]|0,V=i5(y,H)|0,s0=(V|0)<0,n0=(V|0)>255,r0=n0?255:V,K=s0?0:r0,c0=K-Q1|0,A0=Z-d1|0,I1=(c0|0)>-1,_1=0-c0|0,l0=I1?c0:_1,j=(c0|0)/(A0|0)&-1,a0=c0>>31,g0=a0|1,f0=i5(j,A0)|0,h1=(f0|0)>-1,y1=0-f0|0,Q0=h1?f0:y1,y0=l0-Q0|0,h0=(m|0)>(Z|0),k1=h0?Z:m,E0=(k1|0)>(d1|0),E0&&(C0=1768+(Q1<<2)|0,u0=+A[C0>>2],k0=$+(d1<<2)|0,J0=+A[k0>>2],D0=J0*u0,A[k0>>2]=D0),m0=d1+1|0,x0=(m0|0)<(k1|0),x0)for(Y0=m0,g1=0,x1=Q1;;)if(M0=g1+y0|0,G0=(M0|0)<(A0|0),p0=G0?0:g0,H0=G0?0:A0,l1=M0-H0|0,f=x1+j|0,L1=f+p0|0,R0=1768+(L1<<2)|0,S0=+A[R0>>2],L0=$+(Y0<<2)|0,q0=+A[L0>>2],N0=q0*S0,A[L0>>2]=N0,T0=Y0+1|0,$1=(T0|0)==(k1|0),$1){z0=Z,m1=Z,D1=K;break}else Y0=T0,g1=l1,x1=L1;else z0=Z,m1=Z,D1=K;else z0=s1,m1=d1,D1=Q1;if(U0=E1+1|0,r1=(U0|0)<(T|0),r1)s1=z0,E1=U0,d1=m1,Q1=D1;else{n1=z0,p1=D1;break}}else n1=0,p1=L;if(P=(n1|0)<(m|0),!P)return c=1,c|0;for(z=1768+(p1<<2)|0,Y=+A[z>>2],u1=n1;;)if(P0=$+(u1<<2)|0,e1=+A[P0>>2],v0=e1*Y,A[P0>>2]=v0,i1=u1+1|0,A1=(i1|0)==(m|0),A1){c=1;break}else u1=i1;return c|0}function jv(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0;return C=B,s=e[t>>2]|0,$=e[s>>2]|0,c=e[n>>2]|0,f=e[c>>2]|0,d=$-f|0,d|0}function Xv(t){t=t|0;var n=0,s=0;s=B,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0}function eS(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0;s0=B,c=Ka(n|0)|0,f=Ka(s|0)|0,Q=c+2|0,Y=Q+f|0,$=Y,J=B,B=B+((1*$|0)+15&-16)|0,rm(J|0,n|0)|0,Z=Ka(J|0)|0,o0=J+Z|0,u[o0>>0]=61,u[o0+1>>0]=0,IQ(J|0,s|0)|0,W=e[t>>2]|0,e0=t+8|0,H=e[e0>>2]|0,X=H<<2,U=X+8|0,d=Gi(W,U)|0,e[t>>2]=d,I=t+4|0,C=e[I>>2]|0,p=e[e0>>2]|0,m=p<<2,v=m+8|0,S=Gi(C,v)|0,e[I>>2]=S,w=Ka(J|0)|0,y=e[e0>>2]|0,D=S+(y<<2)|0,e[D>>2]=w,b=w+1|0,x=k9(b)|0,_=e[t>>2]|0,L=_+(y<<2)|0,e[L>>2]=x,M=e[t>>2]|0,T=M+(y<<2)|0,G=e[T>>2]|0,rm(G|0,J|0)|0,N=e[e0>>2]|0,P=N+1|0,e[e0>>2]=P,z=e[t>>2]|0,t0=z+(P<<2)|0,e[t0>>2]=0,B=s0}function tS(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0;if(Y=B,c=(t|0)==0,!c){if(f=e[t>>2]|0,Q=(f|0)==0,!Q){if(x=t+8|0,_=e[x>>2]|0,L=(_|0)>0,L){for(b=_,T=f,P=0;M=T+(P<<2)|0,G=e[M>>2]|0,N=(G|0)==0,N?C=b:(I2(G),s=e[x>>2]|0,C=s),d=P+1|0,I=(d|0)<(C|0),!!I;)n=e[t>>2]|0,b=C,T=n,P=d;$=e[t>>2]|0,p=$}else p=f;I2(p)}m=t+4|0,v=e[m>>2]|0,S=(v|0)==0,S||I2(v),w=t+12|0,y=e[w>>2]|0,D=(y|0)==0,D||I2(y),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0}}function iS(t){t=t|0;var n=0,s=0,$=0,c=0;c=B,e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,e[t+20>>2]=0,e[t+24>>2]=0,n=i4(1,3664)|0,s=t+28|0,e[s>>2]=n}function XB(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0;if(m1=B,f=t+28|0,d=e[f>>2]|0,b=(d|0)==0,b){e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,e[t+20>>2]=0,e[t+24>>2]=0,e[t+28>>2]=0;return}if(t0=d+8|0,n0=e[t0>>2]|0,Q0=(n0|0)>0,Q0)for(g1=n0,s1=0;n1=(d+32|0)+(s1<<2)|0,I=e[n1>>2]|0,C=(I|0)==0,C?v=g1:(I2(I),n=e[t0>>2]|0,v=n),p=s1+1|0,m=(p|0)<(v|0),m;)g1=v,s1=p;if(x0=d+12|0,N0=e[x0>>2]|0,f1=(N0|0)>0,f1)for(l1=N0,z0=0;D=(d+544|0)+(z0<<2)|0,Q=e[D>>2]|0,x=(Q|0)==0,x?Y=l1:(_=(d+288|0)+(z0<<2)|0,L=e[_>>2]|0,M=25664+(L<<2)|0,T=e[M>>2]|0,G=T+8|0,N=e[G>>2]|0,KA[N&7](Q),s=e[x0>>2]|0,Y=s),P=z0+1|0,z=(P|0)<(Y|0),z;)l1=Y,z0=P;if(S=d+16|0,w=e[S>>2]|0,y=(w|0)>0,y)for(A1=w,I1=0;H=(d+1056|0)+(I1<<2)|0,X=e[H>>2]|0,U=(X|0)==0,U?A0=A1:(o0=(d+800|0)+(I1<<2)|0,Z=e[o0>>2]|0,V=25640+(Z<<2)|0,s0=e[V>>2]|0,i0=s0+12|0,r0=e[i0>>2]|0,KA[r0&7](X),$=e[S>>2]|0,A0=$),K=I1+1|0,c0=(K|0)<(A0|0),c0;)A1=A0,I1=K;if(J=d+20|0,W=e[J>>2]|0,e0=(W|0)>0,e0)for($1=W,h1=0;f0=(d+1568|0)+(h1<<2)|0,d0=e[f0>>2]|0,y0=(d0|0)==0,y0?F0=$1:(h0=(d+1312|0)+(h1<<2)|0,E0=e[h0>>2]|0,C0=25648+(E0<<2)|0,u0=e[C0>>2]|0,k0=u0+12|0,J0=e[k0>>2]|0,KA[J0&7](d0),c=e[J>>2]|0,F0=c),D0=h1+1|0,m0=(D0|0)<(F0|0),m0;)$1=F0,h1=D0;if(l0=d+24|0,j=e[l0>>2]|0,a0=(j|0)>0,g0=d+2848|0,a0)for(E1=0;M0=(d+1824|0)+(E1<<2)|0,G0=e[M0>>2]|0,p0=(G0|0)==0,p0||im(G0),H0=e[g0>>2]|0,R0=(H0|0)==0,R0||(S0=H0+(E1*56|0)|0,FS(S0)),L0=E1+1|0,Y0=e[l0>>2]|0,q0=(L0|0)<(Y0|0),q0;)E1=L0;if(V0=e[g0>>2]|0,T0=(V0|0)==0,T0||I2(V0),U0=d+28|0,r1=e[U0>>2]|0,P0=(r1|0)>0,P0)for(u1=0;e1=(d+2852|0)+(u1<<2)|0,v0=e[e1>>2]|0,hS(v0),i1=u1+1|0,c1=e[U0>>2]|0,a1=(i1|0)<(c1|0),a1;)u1=i1;I2(d),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0,e[t+20>>2]=0,e[t+24>>2]=0,e[t+28>>2]=0}function rS(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0;if(Z2=B,B=B+32|0,M1=Z2,C=t+4|0,p=e[C>>2]|0,$1=t+104|0,Q1=e[$1>>2]|0,G1=(Q1|0)==0,G1)return e[s>>2]=0,e[s+4>>2]=0,e[s+8>>2]=0,e[s+12>>2]=0,e[s+16>>2]=0,e[s+20>>2]=0,e[s+24>>2]=0,e[s+28>>2]=0,e[$>>2]=0,e[$+4>>2]=0,e[$+8>>2]=0,e[$+12>>2]=0,e[$+16>>2]=0,e[$+20>>2]=0,e[$+24>>2]=0,e[$+28>>2]=0,e[c>>2]=0,e[c+4>>2]=0,e[c+8>>2]=0,e[c+12>>2]=0,e[c+16>>2]=0,e[c+20>>2]=0,e[c+24>>2]=0,e[c+28>>2]=0,f=-129,B=Z2,f|0;if(l2=p+4|0,i2=e[l2>>2]|0,_2=(i2|0)<1,_2)k5=-129,o5=27;else if(VB(M1),T1=p+28|0,E5=e[T1>>2]|0,m=(E5|0)==0,m)k5=-130,o5=27;else if(M=e[E5>>2]|0,H=(M|0)<64,H)k5=-130,o5=27;else if(c0=E5+4|0,E0=e[c0>>2]|0,p0=(E0|0)<(M|0),p0)k5=-130,o5=27;else{U2(M1,1,8),U2(M1,118,8),U2(M1,111,8),U2(M1,114,8),U2(M1,98,8),U2(M1,105,8),U2(M1,115,8),U2(M1,0,32),r1=e[l2>>2]|0,U2(M1,r1,8),g1=p+8|0,l1=e[g1>>2]|0,U2(M1,l1,32),A1=p+12|0,n1=e[A1>>2]|0,U2(M1,n1,32),s1=p+16|0,z0=e[s1>>2]|0,U2(M1,z0,32),I1=p+20|0,h1=e[I1>>2]|0,U2(M1,h1,32),E1=e[E5>>2]|0,u1=E1+-1|0,d1=F7(u1)|0,U2(M1,d1,4),m1=e[c0>>2]|0,p1=m1+-1|0,D1=F7(p1)|0,U2(M1,D1,4),U2(M1,1,1),_1=Q1+64|0,y1=e[_1>>2]|0,k1=(y1|0)==0,k1||I2(y1),x1=m7(M1)|0,L1=k9(x1)|0,e[_1>>2]=L1,N1=M1+8|0,w1=e[N1>>2]|0,U1=m7(M1)|0,r4(L1|0,w1|0,U1|0)|0,Z1=e[_1>>2]|0,e[s>>2]=Z1,v1=m7(M1)|0,K1=s+4|0,e[K1>>2]=v1,P1=s+8|0,e[P1>>2]=1,H1=s+12|0,e[H1>>2]=0,e[H1+4>>2]=0,e[H1+8>>2]=0,e[H1+12>>2]=0,e[H1+16>>2]=0,at(M1),nS(M1,n),q1=Q1+68|0,Y1=e[q1>>2]|0,j1=(Y1|0)==0,j1||I2(Y1),r2=m7(M1)|0,W1=k9(r2)|0,e[q1>>2]=W1,O1=e[N1>>2]|0,z1=m7(M1)|0,r4(W1|0,O1|0,z1|0)|0,h2=e[q1>>2]|0,e[$>>2]=h2,A2=m7(M1)|0,d2=$+4|0,e[d2>>2]=A2,s2=$+8|0,V1=$+24|0,e[s2>>2]=0,e[s2+4>>2]=0,e[s2+8>>2]=0,e[s2+12>>2]=0,g2=V1,$2=g2,e[$2>>2]=1,t2=g2+4|0,a2=t2,e[a2>>2]=0,at(M1),o2=e[T1>>2]|0,X1=(o2|0)==0;e:do if(!X1){if(U2(M1,5,8),U2(M1,118,8),U2(M1,111,8),U2(M1,114,8),U2(M1,98,8),U2(M1,105,8),U2(M1,115,8),n2=o2+24|0,f2=e[n2>>2]|0,e2=f2+-1|0,U2(M1,e2,8),y2=e[n2>>2]|0,S2=(y2|0)>0,S2)for(H2=0;;){if(G2=(o2+1824|0)+(H2<<2)|0,u2=e[G2>>2]|0,K2=Fv(u2,M1)|0,N2=(K2|0)==0,C2=H2+1|0,!N2)break e;if(w2=e[n2>>2]|0,M2=(C2|0)<(w2|0),M2)H2=C2;else break}if(U2(M1,0,6),U2(M1,0,16),q2=o2+16|0,T2=e[q2>>2]|0,O2=T2+-1|0,U2(M1,O2,6),V2=e[q2>>2]|0,A5=(V2|0)>0,A5)for(I5=0;;){if(P2=(o2+800|0)+(I5<<2)|0,j2=e[P2>>2]|0,U2(M1,j2,16),R5=e[P2>>2]|0,X2=25640+(R5<<2)|0,v5=e[X2>>2]|0,z2=e[v5>>2]|0,f5=(z2|0)==0,f5)break e;if(w5=(o2+1056|0)+(I5<<2)|0,O5=e[w5>>2]|0,om[z2&3](O5,M1),a5=I5+1|0,k2=e[q2>>2]|0,r5=(a5|0)<(k2|0),r5)I5=a5;else break}if(x2=o2+20|0,R2=e[x2>>2]|0,B2=R2+-1|0,U2(M1,B2,6),C5=e[x2>>2]|0,x5=(C5|0)>0,x5)for(s5=0;u5=(o2+1312|0)+(s5<<2)|0,S5=e[u5>>2]|0,U2(M1,S5,16),G5=e[u5>>2]|0,D5=25648+(G5<<2)|0,v=e[D5>>2]|0,S=e[v>>2]|0,w=(o2+1568|0)+(s5<<2)|0,y=e[w>>2]|0,om[S&3](y,M1),D=s5+1|0,Q=e[x2>>2]|0,b=(D|0)<(Q|0),b;)s5=D;if(x=o2+12|0,_=e[x>>2]|0,L=_+-1|0,U2(M1,L,6),T=e[x>>2]|0,G=(T|0)>0,G)for(l5=0;N=(o2+288|0)+(l5<<2)|0,P=e[N>>2]|0,U2(M1,P,16),z=e[N>>2]|0,Y=25664+(z<<2)|0,t0=e[Y>>2]|0,J=e[t0>>2]|0,W=(o2+544|0)+(l5<<2)|0,e0=e[W>>2]|0,pQ[J&1](p,e0,M1),X=l5+1|0,U=e[x>>2]|0,o0=(X|0)<(U|0),o0;)l5=X;if(Z=o2+8|0,V=e[Z>>2]|0,s0=V+-1|0,U2(M1,s0,6),n0=e[Z>>2]|0,i0=(n0|0)>0,i0)for(B5=0;r0=(o2+32|0)+(B5<<2)|0,K=e[r0>>2]|0,A0=e[K>>2]|0,U2(M1,A0,1),l0=e[r0>>2]|0,j=l0+4|0,a0=e[j>>2]|0,U2(M1,a0,16),g0=e[r0>>2]|0,f0=g0+8|0,Q0=e[f0>>2]|0,U2(M1,Q0,16),d0=e[r0>>2]|0,y0=d0+12|0,h0=e[y0>>2]|0,U2(M1,h0,8),C0=B5+1|0,u0=e[Z>>2]|0,k0=(C0|0)<(u0|0),k0;)B5=C0;return U2(M1,1,1),J0=Q1+72|0,D0=e[J0>>2]|0,m0=(D0|0)==0,m0||I2(D0),x0=m7(M1)|0,F0=k9(x0)|0,e[J0>>2]=F0,M0=e[N1>>2]|0,G0=m7(M1)|0,r4(F0|0,M0|0,G0|0)|0,H0=e[J0>>2]|0,e[c>>2]=H0,R0=m7(M1)|0,S0=c+4|0,e[S0>>2]=R0,L0=c+8|0,Y0=c+24|0,e[L0>>2]=0,e[L0+4>>2]=0,e[L0+8>>2]=0,e[L0+12>>2]=0,q0=Y0,N0=q0,e[N0>>2]=2,V0=q0+4|0,T0=V0,e[T0>>2]=0,zB(M1),f=0,B=Z2,f|0}while(!1);e[s>>2]=0,e[s+4>>2]=0,e[s+8>>2]=0,e[s+12>>2]=0,e[s+16>>2]=0,e[s+20>>2]=0,e[s+24>>2]=0,e[s+28>>2]=0,e[$>>2]=0,e[$+4>>2]=0,e[$+8>>2]=0,e[$+12>>2]=0,e[$+16>>2]=0,e[$+20>>2]=0,e[$+24>>2]=0,e[$+28>>2]=0,e[c>>2]=0,e[c+4>>2]=0,e[c+8>>2]=0,e[c+12>>2]=0,e[c+16>>2]=0,e[c+20>>2]=0,e[c+24>>2]=0,e[c+28>>2]=0,I=_1,c5=-130}return(o5|0)==27&&(e[s>>2]=0,e[s+4>>2]=0,e[s+8>>2]=0,e[s+12>>2]=0,e[s+16>>2]=0,e[s+20>>2]=0,e[s+24>>2]=0,e[s+28>>2]=0,e[$>>2]=0,e[$+4>>2]=0,e[$+8>>2]=0,e[$+12>>2]=0,e[$+16>>2]=0,e[$+20>>2]=0,e[$+24>>2]=0,e[$+28>>2]=0,e[c>>2]=0,e[c+4>>2]=0,e[c+8>>2]=0,e[c+12>>2]=0,e[c+16>>2]=0,e[c+20>>2]=0,e[c+24>>2]=0,e[c+28>>2]=0,d=Q1+64|0,I=d,c5=k5),zB(M1),U0=e[I>>2]|0,P0=(U0|0)==0,P0||I2(U0),e1=Q1+68|0,v0=e[e1>>2]|0,i1=(v0|0)==0,i1||I2(v0),c1=Q1+72|0,a1=e[c1>>2]|0,f1=(a1|0)==0,f1||I2(a1),e[I>>2]=0,e[e1>>2]=0,e[c1>>2]=0,f=c5,B=Z2,f|0}function nS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0;for(i0=B,U2(t,3,8),U2(t,118,8),U2(t,111,8),U2(t,114,8),U2(t,98,8),U2(t,105,8),U2(t,115,8),U2(t,44,32),s=1200,c=44;d=c+-1|0,I=s+1|0,x=u[s>>0]|0,J=x<<24>>24,U2(t,J,8),H=(d|0)==0,!H;)s=I,c=d;if(X=n+8|0,U=e[X>>2]|0,U2(t,U,32),o0=e[X>>2]|0,Z=(o0|0)>0,!Z){U2(t,1,1);return}for(V=n+4|0,s0=0;;){if(C=e[n>>2]|0,p=C+(s0<<2)|0,m=e[p>>2]|0,v=(m|0)==0,v)U2(t,0,32);else if(S=e[V>>2]|0,w=S+(s0<<2)|0,y=e[w>>2]|0,U2(t,y,32),D=e[V>>2]|0,Q=D+(s0<<2)|0,b=e[Q>>2]|0,_=(b|0)==0,!_)for(L=e[n>>2]|0,M=L+(s0<<2)|0,T=e[M>>2]|0,$=T,f=b;G=f+-1|0,N=$+1|0,P=u[$>>0]|0,z=P<<24>>24,U2(t,z,8),Y=(G|0)==0,!Y;)$=N,f=G;if(t0=s0+1|0,W=e[X>>2]|0,e0=(t0|0)<(W|0),e0)s0=t0;else break}U2(t,1,1)}function zp(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0;if(Y1=B,C=$+1|0,p=C<<3,c=p,L=B,B=B+((1*c|0)+15&-16)|0,e0=$<<3,f=e0,K=B,B=B+((1*f|0)+15&-16)|0,h0=(C|0)==0,h0)G=0;else{for(G0=$;;){if(U0=(G0|0)<(s|0),U0)for(E1=0,x1=G0;;)if(A1=t+(x1<<2)|0,I1=+A[A1>>2],m=I1,v=x1-G0|0,S=t+(v<<2)|0,w=+A[S>>2],y=w,D=y*m,Q=D+E1,b=x1+1|0,k1=(b|0)==(s|0),k1){h1=Q;break}else E1=Q,x1=b;else h1=0;if(x=L+(G0<<3)|0,o1[x>>3]=h1,_=G0+-1|0,M=(G0|0)==0,M)break;G0=_}I=+o1[L>>3],G=I}if(T=G*1.0000000001,N=G*1e-9,P=N+1e-10,z=($|0)>0,z)d1=T,L1=0;else return Q1=T,z0=Q1,B=Y1,+z0;for(;;){if(w1=L1+1|0,Y=d1>3],U=-X,o0=(L1|0)>0,o0){for(U1=0,P1=U;;)if(s0=K+(U1<<3)|0,n0=+o1[s0>>3],i0=L1-U1|0,r0=L+(i0<<3)|0,c0=+o1[r0>>3],A0=c0*n0,l0=P1-A0,j=U1+1|0,y1=(j|0)==(L1|0),y1){d=l0;break}else U1=j,P1=l0;if(a0=d/d1,g0=K+(L1<<3)|0,o1[g0>>3]=a0,f0=(L1|0)/2&-1,Q0=(L1|0)>1,Q0){for(d0=L1+-1|0,y0=(f0|0)>1,G1=0;E0=K+(G1<<3)|0,C0=+o1[E0>>3],u0=d0-G1|0,k0=K+(u0<<3)|0,J0=+o1[k0>>3],D0=J0*a0,m0=D0+C0,o1[E0>>3]=m0,x0=C0*a0,F0=+o1[k0>>3],M0=F0+x0,o1[k0>>3]=M0,p0=G1+1|0,H0=(p0|0)<(f0|0),H0;)G1=p0;H1=y0?f0:1,N0=a0,Z1=H1}else N0=a0,Z1=0}else Z=U/d1,V=K+(L1<<3)|0,o1[V>>3]=Z,N0=Z,Z1=0;if(R0=L1&1,S0=(R0|0)==0,S0||(L0=K+(Z1<<3)|0,Y0=+o1[L0>>3],q0=Y0*N0,V0=q0+Y0,o1[L0>>3]=V0),T0=N0*N0,r1=1-T0,P0=r1*d1,e1=(w1|0)<($|0),e1)d1=P0,L1=w1;else{p1=P0;break}}if((q1|0)==8&&(t0=K+(N1<<3)|0,J=$-N1|0,W=J<<3,ne(t0|0,0,W|0)|0,p1=m1),z)u1=.99,v1=0;else return Q1=p1,z0=Q1,B=Y1,+z0;for(;v0=K+(v1<<3)|0,i1=+o1[v0>>3],c1=i1*u1,o1[v0>>3]=c1,a1=u1*.99,f1=v1+1|0,_1=(f1|0)==($|0),!_1;)u1=a1,v1=f1;if(z)K1=0;else return Q1=p1,z0=Q1,B=Y1,+z0;for(;;)if(g1=K+(K1<<3)|0,l1=+o1[g1>>3],$1=l1,n1=n+(K1<<2)|0,A[n1>>2]=$1,s1=K1+1|0,D1=(s1|0)==($|0),D1){Q1=p1;break}else K1=s1;return z0=Q1,B=Y1,+z0}function Zp(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0;if(V=B,I=c+s|0,C=I<<2,f=C,_=B,B=B+((1*f|0)+15&-16)|0,M=(n|0)==0,T=(s|0)>0,M?T&&(N=s<<2,ne(_|0,0,N|0)|0):T&&(G=s<<2,r4(_|0,n|0,G|0)|0),P=(c|0)>0,!P){B=V;return}if(z=(s|0)>0,z)W=0,e0=s;else{Y=c<<2,ne(_|0,0,Y|0)|0,ne($|0,0,Y|0)|0,B=V;return}for(;;){for(X=W,U=s,o0=0;;)if(S=X+1|0,w=_+(X<<2)|0,y=+A[w>>2],D=U+-1|0,Q=t+(D<<2)|0,b=+A[Q>>2],x=b*y,L=o0-x,t0=(S|0)==(e0|0),t0){d=L;break}else X=S,U=D,o0=L;if(p=_+(e0<<2)|0,A[p>>2]=d,m=$+(W<<2)|0,A[m>>2]=d,v=W+1|0,H=e0+1|0,J=(v|0)==(c|0),J)break;W=v,e0=H}B=V}function AS(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0;if(k0=B,c=e[n>>2]|0,f=(c|0)>1,f?(U2(s,1,1),Q=e[n>>2]|0,Y=Q+-1|0,U2(s,Y,4)):U2(s,0,1),s0=n+1156|0,g0=e[s0>>2]|0,f0=(g0|0)>0,f0){if(U2(s,1,1),Q0=e[s0>>2]|0,d0=Q0+-1|0,U2(s,d0,8),y0=e[s0>>2]|0,d=(y0|0)>0,d)for(I=n+1160|0,C=t+4|0,p=n+2184|0,h0=0;m=I+(h0<<2)|0,v=e[m>>2]|0,S=e[C>>2]|0,w=S+-1|0,y=F7(w)|0,U2(s,v,y),D=p+(h0<<2)|0,b=e[D>>2]|0,x=e[C>>2]|0,_=x+-1|0,L=F7(_)|0,U2(s,b,L),M=h0+1|0,T=e[s0>>2]|0,G=(M|0)<(T|0),G;)h0=M}else U2(s,0,1);if(U2(s,0,2),N=e[n>>2]|0,P=(N|0)>1,P){if(z=t+4|0,t0=e[z>>2]|0,J=(t0|0)>0,J){for(W=n+4|0,E0=0;o0=W+(E0<<2)|0,Z=e[o0>>2]|0,U2(s,Z,4),V=E0+1|0,n0=e[z>>2]|0,i0=(V|0)<(n0|0),i0;)E0=V;$=e[n>>2]|0,e0=$,u0=13}}else e0=N,u0=13;if(!((u0|0)==13&&(H=(e0|0)>0,!H)))for(X=n+1028|0,U=n+1092|0,C0=0;U2(s,0,8),r0=X+(C0<<2)|0,K=e[r0>>2]|0,U2(s,K,8),c0=U+(C0<<2)|0,A0=e[c0>>2]|0,U2(s,A0,8),l0=C0+1|0,j=e[n>>2]|0,a0=(l0|0)<(j|0),a0;)C0=l0}function sS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0;n1=B,c=i4(1,3208)|0,f=t+28|0,Q=e[f>>2]|0,ne(c|0,0,3208)|0,Y=t+4|0,s0=e[Y>>2]|0,f0=(s0|0)<1;e:do if(f0)$1=24;else if(m0=z4(n,1)|0,q0=(m0|0)<0,q0)$1=24;else{if(P0=(m0|0)==0,P0)e[c>>2]=1;else if(e1=z4(n,4)|0,d=e1+1|0,e[c>>2]=d,I=(e1|0)<0,I)break;if(C=z4(n,1)|0,p=(C|0)<0,!p){if(m=(C|0)==0,!m){if(v=z4(n,8)|0,S=v+1|0,w=c+1156|0,e[w>>2]=S,y=(v|0)<0,y)break;for(D=c+1160|0,b=c+2184|0,$=e[Y>>2]|0,T=$,v0=0;;){if(M=T+-1|0,G=F7(M)|0,N=z4(n,G)|0,P=D+(v0<<2)|0,e[P>>2]=N,z=e[Y>>2]|0,t0=z+-1|0,J=F7(t0)|0,W=z4(n,J)|0,e0=b+(v0<<2)|0,e[e0>>2]=W,H=W|N,X=(H|0)<0,U=(N|0)==(W|0),a1=U|X,a1||(o0=e[Y>>2]|0,Z=(N|0)<(o0|0),V=(W|0)<(o0|0),f1=Z&V,_=v0+1|0,!f1))break e;if(x=e[w>>2]|0,L=(_|0)<(x|0),L)T=o0,v0=_;else break}}if(n0=z4(n,2)|0,i0=(n0|0)==0,i0){if(r0=e[c>>2]|0,K=(r0|0)>1,K){if(c0=e[Y>>2]|0,A0=(c0|0)>0,A0)for(l0=c+4|0,i1=0;;){if(u0=z4(n,4)|0,k0=l0+(i1<<2)|0,e[k0>>2]=u0,J0=e[c>>2]|0,D0=(u0|0)>=(J0|0),x0=(u0|0)<0,g1=x0|D0,E0=i1+1|0,g1)break e;if(h0=e[Y>>2]|0,C0=(E0|0)<(h0|0),C0)i1=E0;else{j=J0,$1=17;break}}}else j=r0,$1=17;if(($1|0)==17&&(a0=(j|0)>0,!a0))return s=c,s|0;for(g0=c+1028|0,Q0=Q+16|0,d0=c+1092|0,y0=Q+20|0,c1=0;;){if(z4(n,8)|0,p0=z4(n,8)|0,H0=g0+(c1<<2)|0,e[H0>>2]=p0,R0=e[Q0>>2]|0,S0=(p0|0)>=(R0|0),L0=(p0|0)<0,l1=L0|S0,l1||(Y0=z4(n,8)|0,N0=d0+(c1<<2)|0,e[N0>>2]=Y0,V0=e[y0>>2]|0,T0=(Y0|0)>=(V0|0),U0=(Y0|0)<0,A1=U0|T0,M0=c1+1|0,A1))break e;if(F0=e[c>>2]|0,G0=(M0|0)<(F0|0),G0)c1=M0;else{s=c;break}}return s|0}}}while(!1);return($1|0)==24&&(r1=(c|0)==0,r1)?(s=0,s|0):(I2(c),s=0,s|0)}function oS(t){t=t|0;var n=0,s=0,$=0;$=B,n=(t|0)==0,n||I2(t)}function $S(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,V5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,m6=0,z3=0,$6=0,p6=0,_6=0,Y6=0,B6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,s3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,A4=0,p9=0,S4=0,D4=0,R4=0,M4=0,Z4=0,C4=0,T4=0,N9=0,G4=0,s4=0,x4=0,g4=0,ue=0,P9=0,d9=0,Ie=0,Le=0,ze=0,N4=0,Me=0,U4=0,W4=0,we=0,Ze=0,z9=0,Ae=0,h4=0,b6=0,O4=0,R9=0,o4=0,b4=0,se=0,Z9=0,oe=0,$e=0,B4=0,j4=0,F4=0,ae=0,E9=0,a6=0,Te=0,$4=0,de=0,m4=0,a4=0,U6=0,ke=0,ve=0,We=0,l4=0,w4=0,g8=0,H3=0,Q9=0,C9=0,L4=0,X4=0,$7=0,Se=0,a7=0,p7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,Q7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ge=0,De=0,je=0,k8=0,y9=0,g7=0,Ee=0,h7=0,y7=0,j8=0,w7=0,ee=0,X8=0,P8=0,v8=0,Xe=0,P4=0,be=0,e8=0,u8=0,S8=0,le=0,W9=0,t8=0,I8=0,i8=0,d8=0,ce=0,Ce=0,Ne=0,Ue=0,j9=0,_e=0,ge=0,r8=0,Be=0,p4=0,E8=0,e7=0,H4=0,I3=0,Oe=0,C8=0,te=0,H9=0,ie=0,S9=0,Pe=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,A8=0,D8=0,q4=0,n7=0,b8=0,He=0,B9=0,A7=0,qe=0,L7=0,O7=0,k7=0,s7=0,v7=0,re=0,M7=0,P7=0,s8=0,_8=0,S7=0,J8=0,Re=0,he=0,X9=0,D7=0,X7=0,Lt=0,Mt=0,Tt=0,ct=0,H7=0,gt=0,q7=0,ht=0,Y7=0,ft=0,et=0,ti=0,Gt=0,ut=0,It=0,ii=0,dt=0,tt=0,ri=0,Nt=0,Ut=0,Ot=0,Pt=0,it=0,Et=0,Ht=0,J7=0,rt=0,T7=0,K7=0,ni=0,qt=0,Ai=0,Ct=0,Yt=0,Bt=0,mt=0,Jt=0,pt=0,V7=0,Qt=0,Kt=0,nt=0,G7=0,yt=0,me=0,wt=0,b7=0,At=0,i9=0,u7=0,B8=0,I7=0,_7=0,Hr=0,hr=0,VA=0,Ln=0,zA=0,Mn=0,ZA=0,WA=0,Tn=0,jA=0,qr=0,XA=0,es=0,ts=0,Gn=0,is=0,Nn=0,Un=0,rs=0,Yr=0,On=0,Jr=0,Pn=0,Hn=0,ns=0,As=0,ss=0,Kr=0,qn=0,os=0,fr=0,Vr=0,$s=0,as=0,zr=0,si=0,Yn=0,ls=0,cs=0,Jn=0,Kn=0,Vn=0,gs=0,oi=0,Zr=0,hs=0,zn=0,fs=0,us=0,Is=0,Zn=0,ds=0,Es=0,Cs=0,Bs=0,Wn=0,ms=0,ps=0,Wr=0,ur=0,jr=0,Qs=0,Ki=0,ys=0,jn=0,Xr=0,Xn=0,en=0,ws=0,eA=0,tA=0,ks=0,iA=0,rA=0,vs=0,Ir=0,nA=0,$i=0,tn=0,dr=0,Vi=0,Er=0,Ni=0,Cr=0,AA=0,Ui=0,Bi=0,mi=0,Vt=0,pi=0,Br=0,zi=0,Zi=0,mr=0,ai=0,Ss=0,st=0,za=0,rn=0,nn=0;if(rn=B,b=t+64|0,x=e[b>>2]|0,t2=x+4|0,N3=e[t2>>2]|0,b4=N3+28|0,q4=e[b4>>2]|0,$s=x+104|0,oi=e[$s>>2]|0,Bs=t+104|0,Xr=e[Bs>>2]|0,_=t+36|0,W=e[_>>2]|0,r0=N3+4|0,y0=e[r0>>2]|0,M0=y0<<2,$=M0,T0=B,B=B+((1*$|0)+15&-16)|0,l1=U7(t,M0)|0,m1=e[r0>>2]|0,U1=m1<<2,W1=U7(t,U1)|0,a2=e[r0>>2]|0,M2=a2<<2,P2=U7(t,M2)|0,k2=Xr+4|0,D5=+A[k2>>2],c2=e[r0>>2]|0,F2=c2<<2,c=F2,F5=B,B=B+((1*c|0)+15&-16)|0,_3=Xr+8|0,L5=e[_3>>2]|0,V5=t+28|0,$6=e[V5>>2]|0,P3=(q4+544|0)+($6<<2)|0,e6=e[P3>>2]|0,x6=oi+56|0,g9=e[x6>>2]|0,d4=($6|0)!=0,A4=d4?2:0,D=A4+L5|0,s4=g9+(D*52|0)|0,U4=t+40|0,e[U4>>2]=$6,se=(c2|0)>0,se)for($4=+(W|0),H3=4/$4,c7=(A[p2>>2]=H3,e[p2>>2]|0),y8=(W|0)/2&-1,k8=y8<<2,v8=c7&2147483647,i8=+(v8>>>0),p4=i8*7177114298428933e-22,Pe=p4+-764.6162109375,n7=Pe,re=n7+.345,X7=re,et=oi+4|0,Ot=t+24|0,Ai=t+32|0,G7=X7+-764.6162109375,Hr=W+-1|0,XA=(Hr|0)>1,Pn=X7+-382.30810546875,Cr=D5,Ui=0;;){if(as=e[t>>2]|0,zr=as+(Ui<<2)|0,si=e[zr>>2]|0,Yn=U7(t,k8)|0,ls=W1+(Ui<<2)|0,e[ls>>2]=Yn,cs=U7(t,k8)|0,Jn=l1+(Ui<<2)|0,e[Jn>>2]=cs,Kn=e[Ot>>2]|0,Vn=e[V5>>2]|0,gs=e[Ai>>2]|0,PS(si,et,q4,Kn,Vn,gs),Zr=e[V5>>2]|0,hs=(oi+12|0)+(Zr<<2)|0,zn=e[hs>>2]|0,fs=e[zn>>2]|0,us=e[Jn>>2]|0,Wp(fs,si,us),Is=e[V5>>2]|0,Zn=(oi+20|0)+(Is*12|0)|0,TS(Zn,si),ds=e[si>>2]|0,Es=ds&2147483647,Cs=+(Es>>>0),Wn=Cs*7177114298428933e-22,ms=G7+Wn,ps=ms,Wr=ps+.345,ur=Wr,A[si>>2]=ur,jr=F5+(Ui<<2)|0,A[jr>>2]=ur,XA)for(P=ur,Br=1;;)if(Qs=si+(Br<<2)|0,Ki=+A[Qs>>2],ys=Ki*Ki,jn=Br+1|0,Xn=si+(jn<<2)|0,en=+A[Xn>>2],ws=en*en,eA=ws+ys,tA=(A[p2>>2]=eA,e[p2>>2]|0),ks=tA&2147483647,iA=+(ks>>>0),rA=iA*35885571492144663e-23,vs=Pn+rA,Ir=vs,L=Ir+.345,M=L,T=jn>>1,G=si+(T<<2)|0,A[G>>2]=M,N=M>P,N?(A[jr>>2]=M,fr=M):fr=P,z=Br+2|0,Y=(z|0)<(Hr|0),Y)P=fr,Br=z;else{J=fr;break}else J=ur;if(t0=J>0,t0?(A[jr>>2]=0,H=0):H=J,e0=H>Cr,AA=e0?H:Cr,X=Ui+1|0,U=e[r0>>2]|0,o0=(X|0)<(U|0),o0)Cr=AA,Ui=X;else{p=k8,v=y8,Ni=AA;break}}else S=(W|0)/2&-1,w=S<<2,p=w,v=S,Ni=D5;Z=U7(t,p)|0,V=U7(t,p)|0,s0=e[r0>>2]|0,n0=(s0|0)>0;e:do if(n0){if(i0=(W|0)>1,K=oi+48|0,i0)mi=0;else{for(Bi=0;;){W3=(e6+4|0)+(Bi<<2)|0,u6=e[W3>>2]|0,O3=l1+(Bi<<2)|0,S3=e[O3>>2]|0,Y3=e[t>>2]|0,S6=Y3+(Bi<<2)|0,i6=e[S6>>2]|0,i3=i6+(v<<2)|0,e[U4>>2]=$6,P6=U7(t,60)|0,s3=P2+(Bi<<2)|0,e[s3>>2]=P6,st=P6,nn=st+60|0;do e[st>>2]=0,st=st+4|0;while((st|0)<(nn|0));if(tQ(s4,i3,Z),r6=F5+(Bi<<2)|0,I6=+A[r6>>2],iQ(s4,i6,V,Ni,I6),Ja(s4,Z,V,1,i6,S3,i3),D3=(e6+1028|0)+(u6<<2)|0,T6=e[D3>>2]|0,Q6=(q4+800|0)+(T6<<2)|0,R6=e[Q6>>2]|0,K6=(R6|0)==1,!K6){s=-1;break}if(d6=e[K>>2]|0,J6=d6+(T6<<2)|0,x3=e[J6>>2]|0,Z6=Ya(t,x3,i3,i6)|0,G6=e[s3>>2]|0,j6=G6+28|0,e[j6>>2]=Z6,r9=Sh(t)|0,N6=(r9|0)==0,N6||(D6=e[s3>>2]|0,V6=D6+28|0,y6=e[V6>>2]|0,F6=(y6|0)==0,F6||(Ja(s4,Z,V,2,i6,S3,i3),F3=e[D3>>2]|0,L6=e[K>>2]|0,X6=L6+(F3<<2)|0,A9=e[X6>>2]|0,W6=Ya(t,A9,i3,i6)|0,h9=e[s3>>2]|0,f9=h9+56|0,e[f9>>2]=W6,Ja(s4,Z,V,0,i6,S3,i3),s9=e[D3>>2]|0,o9=e[K>>2]|0,M9=o9+(s9<<2)|0,E6=e[M9>>2]|0,M6=Ya(t,E6,i3,i6)|0,e9=e[s3>>2]|0,e[e9>>2]=M6,T9=e[D3>>2]|0,u9=e[K>>2]|0,n4=u9+(T9<<2)|0,c4=e[n4>>2]|0,G9=e[s3>>2]|0,V9=e[G9>>2]|0,v9=G9+28|0,I9=e[v9>>2]|0,H6=R8(t,c4,V9,I9,9362)|0,t9=e[s3>>2]|0,E4=t9+4|0,e[E4>>2]=H6,v4=e[D3>>2]|0,p9=e[K>>2]|0,S4=p9+(v4<<2)|0,D4=e[S4>>2]|0,R4=e[s3>>2]|0,M4=e[R4>>2]|0,Z4=R4+28|0,C4=e[Z4>>2]|0,T4=R8(t,D4,M4,C4,18724)|0,N9=e[s3>>2]|0,G4=N9+8|0,e[G4>>2]=T4,x4=e[D3>>2]|0,g4=e[K>>2]|0,ue=g4+(x4<<2)|0,P9=e[ue>>2]|0,d9=e[s3>>2]|0,Ie=e[d9>>2]|0,Le=d9+28|0,ze=e[Le>>2]|0,N4=R8(t,P9,Ie,ze,28086)|0,Me=e[s3>>2]|0,W4=Me+12|0,e[W4>>2]=N4,we=e[D3>>2]|0,Ze=e[K>>2]|0,z9=Ze+(we<<2)|0,Ae=e[z9>>2]|0,h4=e[s3>>2]|0,b6=e[h4>>2]|0,O4=h4+28|0,R9=e[O4>>2]|0,o4=R8(t,Ae,b6,R9,37449)|0,Z9=e[s3>>2]|0,oe=Z9+16|0,e[oe>>2]=o4,$e=e[D3>>2]|0,B4=e[K>>2]|0,j4=B4+($e<<2)|0,F4=e[j4>>2]|0,ae=e[s3>>2]|0,E9=e[ae>>2]|0,a6=ae+28|0,Te=e[a6>>2]|0,de=R8(t,F4,E9,Te,46811)|0,m4=e[s3>>2]|0,a4=m4+20|0,e[a4>>2]=de,U6=e[D3>>2]|0,ke=e[K>>2]|0,ve=ke+(U6<<2)|0,We=e[ve>>2]|0,l4=e[s3>>2]|0,w4=e[l4>>2]|0,g8=l4+28|0,Q9=e[g8>>2]|0,C9=R8(t,We,w4,Q9,56173)|0,L4=e[s3>>2]|0,X4=L4+24|0,e[X4>>2]=C9,$7=e[D3>>2]|0,Se=e[K>>2]|0,a7=Se+($7<<2)|0,p7=e[a7>>2]|0,K8=e[s3>>2]|0,l7=K8+28|0,x8=e[l7>>2]|0,F8=K8+56|0,L8=e[F8>>2]|0,M8=R8(t,p7,x8,L8,9362)|0,V8=e[s3>>2]|0,z8=V8+32|0,e[z8>>2]=M8,Q7=e[D3>>2]|0,T8=e[K>>2]|0,G8=T8+(Q7<<2)|0,N8=e[G8>>2]|0,w8=e[s3>>2]|0,h8=w8+28|0,U8=e[h8>>2]|0,O8=w8+56|0,Z8=e[O8>>2]|0,W8=R8(t,N8,U8,Z8,18724)|0,f8=e[s3>>2]|0,Ge=f8+36|0,e[Ge>>2]=W8,De=e[D3>>2]|0,je=e[K>>2]|0,y9=je+(De<<2)|0,g7=e[y9>>2]|0,Ee=e[s3>>2]|0,h7=Ee+28|0,y7=e[h7>>2]|0,j8=Ee+56|0,w7=e[j8>>2]|0,ee=R8(t,g7,y7,w7,28086)|0,X8=e[s3>>2]|0,P8=X8+40|0,e[P8>>2]=ee,Xe=e[D3>>2]|0,P4=e[K>>2]|0,be=P4+(Xe<<2)|0,e8=e[be>>2]|0,u8=e[s3>>2]|0,S8=u8+28|0,le=e[S8>>2]|0,W9=u8+56|0,t8=e[W9>>2]|0,I8=R8(t,e8,le,t8,37449)|0,d8=e[s3>>2]|0,ce=d8+44|0,e[ce>>2]=I8,Ce=e[D3>>2]|0,Ne=e[K>>2]|0,Ue=Ne+(Ce<<2)|0,j9=e[Ue>>2]|0,_e=e[s3>>2]|0,ge=_e+28|0,r8=e[ge>>2]|0,Be=_e+56|0,E8=e[Be>>2]|0,e7=R8(t,j9,r8,E8,46811)|0,H4=e[s3>>2]|0,I3=H4+48|0,e[I3>>2]=e7,Oe=e[D3>>2]|0,C8=e[K>>2]|0,te=C8+(Oe<<2)|0,H9=e[te>>2]|0,ie=e[s3>>2]|0,S9=ie+28|0,H8=e[S9>>2]|0,f7=ie+56|0,t7=e[f7>>2]|0,i7=R8(t,H9,H8,t7,56173)|0,q8=e[s3>>2]|0,r7=q8+52|0,e[r7>>2]=i7)),Y8=Bi+1|0,n8=e[r0>>2]|0,A8=(Y8|0)<(n8|0),A8)Bi=Y8;else{m=K,b8=n8;break e}}return B=rn,s|0}for(;;){_6=(e6+4|0)+(mi<<2)|0,f0=e[_6>>2]|0,Y6=l1+(mi<<2)|0,a0=e[Y6>>2]|0,B6=e[t>>2]|0,v3=B6+(mi<<2)|0,j=e[v3>>2]|0,c0=j+(v<<2)|0,e[U4>>2]=$6,Z3=U7(t,60)|0,m0=P2+(mi<<2)|0,e[m0>>2]=Z3,st=Z3,nn=st+60|0;do e[st>>2]=0,st=st+4|0;while((st|0)<(nn|0));for(zi=0;V3=a0+(zi<<2)|0,k3=e[V3>>2]|0,c3=k3&2147483647,U3=+(c3>>>0),o6=U3*7177114298428933e-22,u3=o6+-764.6162109375,w6=u3,k6=w6+.345,v6=k6,Q=zi+v|0,m6=j+(Q<<2)|0,A[m6>>2]=v6,z3=zi+1|0,p6=(z3|0)<(v|0),p6;)zi=z3;if(tQ(s4,c0,Z),A0=F5+(mi<<2)|0,l0=+A[A0>>2],iQ(s4,j,V,Ni,l0),Ja(s4,Z,V,1,j,a0,c0),g0=(e6+1028|0)+(f0<<2)|0,Q0=e[g0>>2]|0,d0=(q4+800|0)+(Q0<<2)|0,h0=e[d0>>2]|0,E0=(h0|0)==1,!E0){s=-1;break}if(C0=e[K>>2]|0,u0=C0+(Q0<<2)|0,k0=e[u0>>2]|0,J0=Ya(t,k0,c0,j)|0,D0=e[m0>>2]|0,x0=D0+28|0,e[x0>>2]=J0,F0=Sh(t)|0,G0=(F0|0)==0,G0||(p0=e[m0>>2]|0,H0=p0+28|0,R0=e[H0>>2]|0,S0=(R0|0)==0,S0||(Ja(s4,Z,V,2,j,a0,c0),L0=e[g0>>2]|0,Y0=e[K>>2]|0,q0=Y0+(L0<<2)|0,N0=e[q0>>2]|0,V0=Ya(t,N0,c0,j)|0,U0=e[m0>>2]|0,r1=U0+56|0,e[r1>>2]=V0,Ja(s4,Z,V,0,j,a0,c0),P0=e[g0>>2]|0,e1=e[K>>2]|0,v0=e1+(P0<<2)|0,i1=e[v0>>2]|0,c1=Ya(t,i1,c0,j)|0,a1=e[m0>>2]|0,e[a1>>2]=c1,f1=e[g0>>2]|0,g1=e[K>>2]|0,A1=g1+(f1<<2)|0,$1=e[A1>>2]|0,n1=e[m0>>2]|0,s1=e[n1>>2]|0,z0=n1+28|0,I1=e[z0>>2]|0,h1=R8(t,$1,s1,I1,9362)|0,E1=e[m0>>2]|0,u1=E1+4|0,e[u1>>2]=h1,d1=e[g0>>2]|0,p1=e[K>>2]|0,Q1=p1+(d1<<2)|0,D1=e[Q1>>2]|0,_1=e[m0>>2]|0,y1=e[_1>>2]|0,k1=_1+28|0,x1=e[k1>>2]|0,L1=R8(t,D1,y1,x1,18724)|0,N1=e[m0>>2]|0,w1=N1+8|0,e[w1>>2]=L1,Z1=e[g0>>2]|0,G1=e[K>>2]|0,v1=G1+(Z1<<2)|0,K1=e[v1>>2]|0,P1=e[m0>>2]|0,H1=e[P1>>2]|0,q1=P1+28|0,Y1=e[q1>>2]|0,j1=R8(t,K1,H1,Y1,28086)|0,r2=e[m0>>2]|0,O1=r2+12|0,e[O1>>2]=j1,l2=e[g0>>2]|0,z1=e[K>>2]|0,h2=z1+(l2<<2)|0,A2=e[h2>>2]|0,d2=e[m0>>2]|0,s2=e[d2>>2]|0,V1=d2+28|0,g2=e[V1>>2]|0,$2=R8(t,A2,s2,g2,37449)|0,i2=e[m0>>2]|0,o2=i2+16|0,e[o2>>2]=$2,X1=e[g0>>2]|0,n2=e[K>>2]|0,f2=n2+(X1<<2)|0,e2=e[f2>>2]|0,y2=e[m0>>2]|0,S2=e[y2>>2]|0,w2=y2+28|0,C2=e[w2>>2]|0,_2=R8(t,e2,S2,C2,46811)|0,G2=e[m0>>2]|0,u2=G2+20|0,e[u2>>2]=_2,K2=e[g0>>2]|0,N2=e[K>>2]|0,q2=N2+(K2<<2)|0,T2=e[q2>>2]|0,O2=e[m0>>2]|0,V2=e[O2>>2]|0,A5=O2+28|0,T1=e[A5>>2]|0,j2=R8(t,T2,V2,T1,56173)|0,R5=e[m0>>2]|0,X2=R5+24|0,e[X2>>2]=j2,v5=e[g0>>2]|0,z2=e[K>>2]|0,f5=z2+(v5<<2)|0,w5=e[f5>>2]|0,O5=e[m0>>2]|0,a5=O5+28|0,E5=e[a5>>2]|0,r5=O5+56|0,x2=e[r5>>2]|0,R2=R8(t,w5,E5,x2,9362)|0,B2=e[m0>>2]|0,C5=B2+32|0,e[C5>>2]=R2,x5=e[g0>>2]|0,u5=e[K>>2]|0,S5=u5+(x5<<2)|0,G5=e[S5>>2]|0,H2=e[m0>>2]|0,I5=H2+28|0,s5=e[I5>>2]|0,l5=H2+56|0,B5=e[l5>>2]|0,M1=R8(t,G5,s5,B5,18724)|0,k5=e[m0>>2]|0,c5=k5+36|0,e[c5>>2]=M1,o5=e[g0>>2]|0,Z2=e[K>>2]|0,m5=Z2+(o5<<2)|0,e5=e[m5>>2]|0,n5=e[m0>>2]|0,g5=n5+28|0,Y2=e[g5>>2]|0,h5=n5+56|0,t5=e[h5>>2]|0,b5=R8(t,e5,Y2,t5,28086)|0,W2=e[m0>>2]|0,$5=W2+40|0,e[$5>>2]=b5,p5=e[g0>>2]|0,H5=e[K>>2]|0,X5=H5+(p5<<2)|0,d5=e[X5>>2]|0,f3=e[m0>>2]|0,g3=f3+28|0,J5=e[g3>>2]|0,e3=f3+56|0,A3=e[e3>>2]|0,E3=R8(t,d5,J5,A3,37449)|0,K5=e[m0>>2]|0,y3=K5+44|0,e[y3>>2]=E3,h3=e[g0>>2]|0,B3=e[K>>2]|0,q3=B3+(h3<<2)|0,M3=e[q3>>2]|0,z5=e[m0>>2]|0,Q3=z5+28|0,W5=e[Q3>>2]|0,j3=z5+56|0,T3=e[j3>>2]|0,$3=R8(t,M3,W5,T3,46811)|0,a3=e[m0>>2]|0,l3=a3+48|0,e[l3>>2]=$3,C3=e[g0>>2]|0,q5=e[K>>2]|0,N5=q5+(C3<<2)|0,P5=e[N5>>2]|0,y5=e[m0>>2]|0,G3=y5+28|0,t6=e[G3>>2]|0,t3=y5+56|0,o3=e[t3>>2]|0,R3=R8(t,P5,t6,o3,56173)|0,f6=e[m0>>2]|0,m3=f6+52|0,e[m3>>2]=R3)),w3=mi+1|0,p3=e[r0>>2]|0,X3=(w3|0)<(p3|0),X3)mi=w3;else{m=K,b8=p3;break e}}return B=rn,s|0}else y=oi+48|0,m=y,b8=s0;while(!1);for(A[k2>>2]=Ni,D8=b8<<2,f=D8,He=B,B=B+((1*f|0)+15&-16)|0,d=D8,B9=B,B=B+((1*d|0)+15&-16)|0,A7=Sh(t)|0,qe=(A7|0)!=0,L7=qe?0:7,O7=oi+44|0,k7=t+24|0,s7=t+32|0,v7=q4+2868|0,M7=oi+52|0,ai=L7;;){if(P7=(Xr+12|0)+(ai<<2)|0,s8=e[P7>>2]|0,U2(s8,0,1),_8=e[O7>>2]|0,U2(s8,$6,_8),S7=e[V5>>2]|0,J8=(S7|0)==0,J8||(Re=e[k7>>2]|0,U2(s8,Re,1),he=e[s7>>2]|0,U2(s8,he,1)),X9=e[r0>>2]|0,D7=(X9|0)>0,D7)for(Vt=0;;)if(Lt=(e6+4|0)+(Vt<<2)|0,Mt=e[Lt>>2]|0,Tt=W1+(Vt<<2)|0,ct=e[Tt>>2]|0,H7=(e6+1028|0)+(Mt<<2)|0,gt=e[H7>>2]|0,q7=e[m>>2]|0,ht=q7+(gt<<2)|0,Y7=e[ht>>2]|0,ft=P2+(Vt<<2)|0,ti=e[ft>>2]|0,Gt=ti+(ai<<2)|0,ut=e[Gt>>2]|0,It=qv(s8,t,Y7,ut,ct)|0,ii=T0+(Vt<<2)|0,e[ii>>2]=It,dt=Vt+1|0,tt=e[r0>>2]|0,ri=(dt|0)<(tt|0),ri)Vt=dt;else{I=tt;break}else I=X9;if(Nt=e[V5>>2]|0,Ut=((q4+3240|0)+(Nt*60|0)|0)+(ai<<2)|0,Pt=e[Ut>>2]|0,IS(ai,v7,s4,e6,l1,W1,T0,Pt,I),it=e[e6>>2]|0,Et=(it|0)>0,Et)for(pi=0;;){if(Ht=(e6+1092|0)+(pi<<2)|0,J7=e[Ht>>2]|0,rt=e[r0>>2]|0,T7=(rt|0)>0,T7)for(Vr=rt,$i=0,Zi=0;;)if(K7=(e6+4|0)+(Zi<<2)|0,ni=e[K7>>2]|0,qt=(ni|0)==(pi|0),qt?(Ct=B9+($i<<2)|0,Yt=T0+(Zi<<2)|0,Bt=e[Yt>>2]|0,Ss=(Bt|0)!=0,n=Ss&1,e[Ct>>2]=n,mt=W1+(Zi<<2)|0,Jt=e[mt>>2]|0,pt=$i+1|0,V7=He+($i<<2)|0,e[V7>>2]=Jt,C=e[r0>>2]|0,nt=C,tn=pt):(nt=Vr,tn=$i),Qt=Zi+1|0,Kt=(Qt|0)<(nt|0),Kt)Vr=nt,$i=tn,Zi=Qt;else{nA=tn;break}else nA=0;if(yt=(q4+1312|0)+(J7<<2)|0,me=e[yt>>2]|0,wt=25648+(me<<2)|0,b7=e[wt>>2]|0,At=b7+20|0,i9=e[At>>2]|0,u7=e[M7>>2]|0,B8=u7+(J7<<2)|0,I7=e[B8>>2]|0,_7=$m[i9&7](t,I7,He,B9,nA)|0,hr=e[r0>>2]|0,VA=(hr|0)>0,VA)for(Vi=0,mr=0;;)if(Ln=(e6+4|0)+(mr<<2)|0,zA=e[Ln>>2]|0,Mn=(zA|0)==(pi|0),Mn?(ZA=W1+(mr<<2)|0,WA=e[ZA>>2]|0,Tn=Vi+1|0,jA=He+(Vi<<2)|0,e[jA>>2]=WA,Er=Tn):Er=Vi,qr=mr+1|0,es=(qr|0)<(hr|0),es)Vi=Er,mr=qr;else{dr=Er;break}else dr=0;if(ts=e[yt>>2]|0,Gn=25648+(ts<<2)|0,is=e[Gn>>2]|0,Nn=is+24|0,Un=e[Nn>>2]|0,rs=e[M7>>2]|0,Yr=rs+(J7<<2)|0,On=e[Yr>>2]|0,QQ[Un&3](s8,t,On,He,B9,dr,_7,pi)|0,Jr=pi+1|0,Hn=e[e6>>2]|0,ns=(Jr|0)<(Hn|0),ns)pi=Jr;else break}if(As=ai+1|0,ss=Sh(t)|0,Kr=(ss|0)!=0,qn=Kr?14:7,os=(ai|0)<(qn|0),os)ai=As;else{s=0;break}}return B=rn,s|0}function aS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0;if(F2=B,S=t+64|0,w=e[S>>2]|0,E1=w+4|0,L1=e[E1>>2]|0,Y1=L1+28|0,V1=e[Y1>>2]|0,y2=w+104|0,T2=e[y2>>2]|0,f5=t+28|0,x5=e[f5>>2]|0,y=V1+(x5<<2)|0,P=e[y>>2]|0,Z=t+36|0,e[Z>>2]=P,a0=L1+4|0,J0=e[a0>>2]|0,L0=J0<<2,c=L0,i1=B,B=B+((1*c|0)+15&-16)|0,f=L0,z0=B,B=B+((1*f|0)+15&-16)|0,d=L0,I1=B,B=B+((1*d|0)+15&-16)|0,I=L0,h1=B,B=B+((1*I|0)+15&-16)|0,u1=e[a0>>2]|0,d1=(u1|0)>0,d1)for(m1=n+4|0,p1=n+1028|0,Q1=T2+48|0,D1=P<<1,_1=D1&2147483646,Z2=0;;)if(U1=m1+(Z2<<2)|0,Z1=e[U1>>2]|0,G1=p1+(Z1<<2)|0,v1=e[G1>>2]|0,K1=(V1+800|0)+(v1<<2)|0,P1=e[K1>>2]|0,H1=25640+(P1<<2)|0,q1=e[H1>>2]|0,j1=q1+20|0,r2=e[j1>>2]|0,W1=e[Q1>>2]|0,O1=W1+(v1<<2)|0,l2=e[O1>>2]|0,z1=lt[r2&15](t,l2)|0,h2=h1+(Z2<<2)|0,e[h2>>2]=z1,A2=I1+(Z2<<2)|0,W2=(z1|0)!=0,s=W2&1,e[A2>>2]=s,d2=e[t>>2]|0,s2=d2+(Z2<<2)|0,g2=e[s2>>2]|0,ne(g2|0,0,_1|0)|0,$2=Z2+1|0,t2=e[a0>>2]|0,a2=($2|0)<(t2|0),a2)Z2=$2;else{n1=t2;break}else n1=u1;if(y1=n+1156|0,k1=e[y1>>2]|0,x1=(k1|0)>0,x1)for(N1=n+1160|0,w1=n+2184|0,c2=0;e2=N1+(c2<<2)|0,S2=e[e2>>2]|0,w2=I1+(S2<<2)|0,C2=e[w2>>2]|0,M2=(C2|0)==0,_2=w1+(c2<<2)|0,G2=e[_2>>2]|0,M2?(u2=I1+(G2<<2)|0,K2=e[u2>>2]|0,N2=(K2|0)==0,N2||($5=10)):$5=10,($5|0)==10&&($5=0,e[w2>>2]=1,q2=I1+(G2<<2)|0,e[q2>>2]=1),O2=c2+1|0,V2=(O2|0)<(k1|0),V2;)c2=O2;if(i2=e[n>>2]|0,o2=(i2|0)>0,o2){for(X1=n+1092|0,n2=T2+52|0,f2=n+4|0,A5=n1,m5=0;;){if(P2=(A5|0)>0,P2)for(s1=A5,c5=0,h5=0;;)if(T1=f2+(h5<<2)|0,j2=e[T1>>2]|0,R5=(j2|0)==(m5|0),R5?(X2=I1+(h5<<2)|0,v5=e[X2>>2]|0,z2=z0+(c5<<2)|0,b5=(v5|0)!=0,$=b5&1,e[z2>>2]=$,w5=e[t>>2]|0,O5=w5+(h5<<2)|0,a5=e[O5>>2]|0,k2=c5+1|0,E5=i1+(c5<<2)|0,e[E5>>2]=a5,m=e[a0>>2]|0,R2=m,o5=k2):(R2=s1,o5=c5),r5=h5+1|0,x2=(r5|0)<(R2|0),x2)s1=R2,c5=o5,h5=r5;else{k5=o5;break}else k5=0;if(B2=X1+(m5<<2)|0,C5=e[B2>>2]|0,u5=(V1+1312|0)+(C5<<2)|0,S5=e[u5>>2]|0,G5=25648+(S5<<2)|0,D5=e[G5>>2]|0,H2=D5+28|0,I5=e[H2>>2]|0,s5=e[n2>>2]|0,l5=s5+(C5<<2)|0,B5=e[l5>>2]|0,$m[I5&7](t,B5,i1,z0,k5)|0,M1=m5+1|0,D=e[n>>2]|0,Q=(M1|0)<(D|0),!Q)break;p=e[a0>>2]|0,A5=p,m5=M1}v=e[y1>>2]|0,b=v}else b=k1;if(x=(b|0)>0,x)for(_=n+1160|0,L=e[t>>2]|0,M=n+2184|0,T=(P|0)/2&-1,G=(P|0)>1,n5=b;;){if(e5=n5+-1|0,e0=_+(e5<<2)|0,H=e[e0>>2]|0,X=L+(H<<2)|0,U=e[X>>2]|0,o0=M+(e5<<2)|0,V=e[o0>>2]|0,s0=L+(V<<2)|0,n0=e[s0>>2]|0,G)for(t5=0;;){i0=U+(t5<<2)|0,r0=+A[i0>>2],K=n0+(t5<<2)|0,c0=+A[K>>2],A0=r0>0,l0=c0>0;do if(A0)if(l0){A[i0>>2]=r0,j=r0-c0,A[K>>2]=j;break}else{A[K>>2]=r0,g0=c0+r0,A[i0>>2]=g0;break}else if(l0){A[i0>>2]=r0,f0=c0+r0,A[K>>2]=f0;break}else{A[K>>2]=r0,Q0=r0-c0,A[i0>>2]=Q0;break}while(!1);if(d0=t5+1|0,y0=(d0|0)<(T|0),y0)t5=d0;else break}if(N=(n5|0)>1,N)n5=e5;else break}if(z=e[a0>>2]|0,Y=(z|0)>0,!Y)return B=F2,0;for(t0=n+4|0,J=n+1028|0,W=T2+48|0,g5=0;;)if(E0=e[t>>2]|0,C0=E0+(g5<<2)|0,u0=e[C0>>2]|0,k0=t0+(g5<<2)|0,D0=e[k0>>2]|0,m0=J+(D0<<2)|0,x0=e[m0>>2]|0,F0=(V1+800|0)+(x0<<2)|0,M0=e[F0>>2]|0,G0=25640+(M0<<2)|0,p0=e[G0>>2]|0,H0=p0+24|0,R0=e[H0>>2]|0,S0=e[W>>2]|0,Y0=S0+(x0<<2)|0,q0=e[Y0>>2]|0,N0=h1+(g5<<2)|0,V0=e[N0>>2]|0,sm[R0&3](t,q0,V0,u0)|0,T0=g5+1|0,U0=e[a0>>2]|0,r1=(T0|0)<(U0|0),r1)g5=T0;else{C=U0;break}if(h0=(C|0)>0,!h0)return B=F2,0;for(Y2=0;P0=e[t>>2]|0,e1=P0+(Y2<<2)|0,v0=e[e1>>2]|0,c1=e[f5>>2]|0,a1=(T2+12|0)+(c1<<2)|0,f1=e[a1>>2]|0,g1=e[f1>>2]|0,lS(g1,v0,v0),l1=Y2+1|0,A1=e[a0>>2]|0,$1=(l1|0)<(A1|0),$1;)Y2=l1;return B=F2,0}function em(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0;if(y1=B,s=(n|0)/4&-1,$=s<<2,y=k9($)|0,P=s+n|0,Z=P<<2,a0=k9(Z)|0,J0=n>>1,L0=+(n|0),i1=L0,I1=+Or(+i1),c=I1*1.4426950408889634,f=+Ti(c),d=~~f,I=t+4|0,e[I>>2]=d,e[t>>2]=n,C=t+8|0,e[C>>2]=a0,p=t+12|0,e[p>>2]=y,m=(n|0)>3,!m){z0=4/L0,h1=t+16|0,A[h1>>2]=z0;return}for(v=+(n|0),S=3.141592653589793/v,w=n<<1,D=+(w|0),Q=3.141592653589793/D,m1=0;M=m1<<2,T=+(M|0),G=S*T,N=+Yo(+G),z=N,Y=m1<<1,t0=a0+(Y<<2)|0,A[t0>>2]=z,J=+xn(+G),W=J,e0=-W,H=Y|1,X=a0+(H<<2)|0,A[X>>2]=e0,U=+(H|0),o0=Q*U,V=+Yo(+o0),s0=V,n0=Y+J0|0,i0=a0+(n0<<2)|0,A[i0>>2]=s0,r0=+xn(+o0),K=r0,c0=n0+1|0,A0=a0+(c0<<2)|0,A[A0>>2]=K,l0=m1+1|0,j=(l0|0)<(s|0),j;)m1=l0;if(b=(n|0)/8&-1,x=(n|0)>7,!x){z0=4/L0,h1=t+16|0,A[h1>>2]=z0;return}for(_=+(n|0),L=3.141592653589793/_,p1=0;g0=p1<<2,f0=g0|2,Q0=+(f0|0),d0=L*Q0,y0=+Yo(+d0),h0=y0*.5,E0=h0,C0=p1<<1,u0=C0+n|0,k0=a0+(u0<<2)|0,A[k0>>2]=E0,D0=+xn(+d0),m0=D0*-.5,x0=m0,F0=u0+1|0,M0=a0+(F0<<2)|0,A[M0>>2]=x0,G0=p1+1|0,p0=(G0|0)<(b|0),p0;)p1=G0;if(H0=d+-1|0,R0=1<>2]=z0;return}for(;;){for(V0=q0,E1=0,D1=0;;)if(N0=V0&Q1,T0=(N0|0)==0,U0=1<>P0,v0=(e1|0)==0,v0){d1=u1;break}else V0=e1,E1=u1,D1=P0;if(c1=d1^-1,a1=S0&c1,f1=a1+-1|0,g1=Q1<<1,l1=y+(g1<<2)|0,e[l1>>2]=f1,A1=g1|1,$1=y+(A1<<2)|0,e[$1>>2]=d1,n1=Q1+1|0,s1=(n1|0)<(b|0),s1)Q1=n1;else break}z0=4/L0,h1=t+16|0,A[h1>>2]=z0}function tm(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0;p=B,n=(t|0)==0,!n&&(s=t+8|0,$=e[s>>2]|0,c=($|0)==0,c||I2($),f=t+12|0,d=e[f>>2]|0,I=(d|0)==0,I||I2(d),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0,e[t+12>>2]=0,e[t+16>>2]=0)}function lS(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,V5=0,k3=0,c3=0,U3=0;for(U3=B,d=e[t>>2]|0,I=d>>1,W1=d>>2,$=I+-7|0,K2=n+($<<2)|0,c=I+W1|0,X2=s+(c<<2)|0,R2=t+8|0,l5=e[R2>>2]|0,g5=l5+(W1<<2)|0,l3=g5,N5=K2,w3=X2;d5=w3+-16|0,B3=N5+8|0,C=+A[B3>>2],_=l3+12|0,W=+A[_>>2],r0=C*W,y0=-r0,M0=+A[N5>>2],T0=l3+8|0,l1=+A[T0>>2],m1=l1*M0,U1=y0-m1,A[d5>>2]=U1,O1=+A[N5>>2],a2=+A[_>>2],y2=a2*O1,S2=+A[B3>>2],w2=+A[T0>>2],C2=w2*S2,M2=y2-C2,_2=w3+-12|0,A[_2>>2]=M2,G2=N5+24|0,u2=+A[G2>>2],N2=l3+4|0,q2=+A[N2>>2],T2=u2*q2,O2=-T2,V2=N5+16|0,A5=+A[V2>>2],P2=+A[l3>>2],T1=P2*A5,j2=O2-T1,R5=w3+-8|0,A[R5>>2]=j2,v5=+A[V2>>2],z2=+A[N2>>2],f5=z2*v5,w5=+A[G2>>2],O5=+A[l3>>2],a5=O5*w5,k2=f5-a5,E5=w3+-4|0,A[E5>>2]=k2,r5=N5+-32|0,x2=l3+16|0,B2=r5>>>0>>0,!B2;)l3=x2,N5=r5,w3=d5;for(C5=s+(I<<2)|0,f=I+-8|0,x5=n+(f<<2)|0,C3=g5,P5=x5,p3=X2;u5=C3+-16|0,S5=P5+16|0,G5=+A[S5>>2],D5=C3+-4|0,H2=+A[D5>>2],I5=H2*G5,s5=P5+24|0,B5=+A[s5>>2],M1=C3+-8|0,k5=+A[M1>>2],c5=k5*B5,o5=c5+I5,A[p3>>2]=o5,Z2=+A[S5>>2],c2=+A[M1>>2],m5=c2*Z2,e5=+A[s5>>2],n5=+A[D5>>2],Y2=n5*e5,h5=m5-Y2,t5=p3+4|0,A[t5>>2]=h5,b5=+A[P5>>2],W2=C3+-12|0,$5=+A[W2>>2],F2=$5*b5,p5=P5+8|0,H5=+A[p5>>2],X5=+A[u5>>2],f3=X5*H5,g3=f3+F2,J5=p3+8|0,A[J5>>2]=g3,e3=+A[P5>>2],A3=+A[u5>>2],E3=A3*e3,F5=+A[p5>>2],K5=+A[W2>>2],y3=K5*F5,h3=E3-y3,q3=p3+12|0,A[q3>>2]=h3,M3=P5+-32|0,z5=p3+16|0,Q3=M3>>>0>>0,!Q3;)C3=u5,P5=M3,p3=z5;for(t6=t+4|0,t3=e[t6>>2]|0,jp(t3,l5,C5,I),o3=e[t>>2]|0,R3=e[R2>>2]|0,f6=t+12|0,m3=e[f6>>2]|0,Xp(o3,R3,m3,s),W5=e[R2>>2]|0,j3=W5+(I<<2)|0,q5=j3,y5=s,X3=X2,V5=X2;_3=X3+-16|0,T3=+A[y5>>2],$3=q5+4|0,a3=+A[$3>>2],p=a3*T3,m=y5+4|0,v=+A[m>>2],S=+A[q5>>2],w=S*v,y=p-w,D=X3+-4|0,A[D>>2]=y,Q=+A[y5>>2],b=+A[q5>>2],x=b*Q,L=+A[m>>2],M=+A[$3>>2],T=M*L,G=x+T,N=-G,A[V5>>2]=N,P=y5+8|0,z=+A[P>>2],Y=q5+12|0,t0=+A[Y>>2],J=t0*z,e0=y5+12|0,H=+A[e0>>2],X=q5+8|0,U=+A[X>>2],o0=U*H,Z=J-o0,V=X3+-8|0,A[V>>2]=Z,s0=+A[P>>2],n0=+A[X>>2],i0=n0*s0,K=+A[e0>>2],c0=+A[Y>>2],A0=c0*K,l0=i0+A0,j=-l0,a0=V5+4|0,A[a0>>2]=j,g0=y5+16|0,f0=+A[g0>>2],Q0=q5+20|0,d0=+A[Q0>>2],h0=d0*f0,E0=y5+20|0,C0=+A[E0>>2],u0=q5+16|0,k0=+A[u0>>2],J0=k0*C0,D0=h0-J0,m0=X3+-12|0,A[m0>>2]=D0,x0=+A[g0>>2],F0=+A[u0>>2],G0=F0*x0,p0=+A[E0>>2],H0=+A[Q0>>2],R0=H0*p0,S0=G0+R0,L0=-S0,Y0=V5+8|0,A[Y0>>2]=L0,q0=y5+24|0,N0=+A[q0>>2],V0=q5+28|0,U0=+A[V0>>2],r1=U0*N0,P0=y5+28|0,e1=+A[P0>>2],v0=q5+24|0,i1=+A[v0>>2],c1=i1*e1,a1=r1-c1,A[_3>>2]=a1,f1=+A[q0>>2],g1=+A[v0>>2],A1=g1*f1,$1=+A[P0>>2],n1=+A[V0>>2],s1=n1*$1,z0=A1+s1,I1=-z0,h1=V5+12|0,A[h1>>2]=I1,E1=V5+16|0,u1=y5+32|0,d1=q5+32|0,p1=u1>>>0<_3>>>0,p1;)q5=d1,y5=u1,X3=_3,V5=E1;for(Q1=s+(W1<<2)|0,G3=X2,V3=Q1,k3=Q1;;)if(D1=V3+-16|0,_1=G3+-16|0,y1=G3+-4|0,k1=+A[y1>>2],x1=V3+-4|0,A[x1>>2]=k1,L1=-k1,A[k3>>2]=L1,N1=G3+-8|0,w1=+A[N1>>2],Z1=V3+-8|0,A[Z1>>2]=w1,G1=-w1,v1=k3+4|0,A[v1>>2]=G1,K1=G3+-12|0,P1=+A[K1>>2],H1=V3+-12|0,A[H1>>2]=P1,q1=-P1,Y1=k3+8|0,A[Y1>>2]=q1,j1=+A[_1>>2],A[D1>>2]=j1,r2=-j1,l2=k3+12|0,A[l2>>2]=r2,z1=k3+16|0,h2=z1>>>0<_1>>>0,h2)G3=_1,V3=D1,k3=z1;else{L5=X2,N3=X2;break}for(;A2=N3+-16|0,d2=L5+12|0,s2=e[d2>>2]|0,e[A2>>2]=s2,V1=L5+8|0,g2=e[V1>>2]|0,$2=N3+-12|0,e[$2>>2]=g2,t2=L5+4|0,i2=e[t2>>2]|0,o2=N3+-8|0,e[o2>>2]=i2,X1=e[L5>>2]|0,n2=N3+-4|0,e[n2>>2]=X1,f2=L5+16|0,e2=A2>>>0>C5>>>0,e2;)L5=f2,N3=A2}function Wp(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0;if(H5=B,w=e[t>>2]|0,y=w>>1,r1=w>>2,$1=w>>3,Q1=w<<2,$=Q1,G1=B,B=B+((1*$|0)+15&-16)|0,l2=G1+(y<<2)|0,c=y+r1|0,i2=n+(c<<2)|0,_2=t+8|0,T1=e[_2>>2]|0,D=T1+(y<<2)|0,z=($1|0)>0,z){for(f=c+1|0,V=n+(f<<2)|0,g0=$1+-1|0,D0=g0>>>1,Y0=D0<<1,N0=y+-2|0,V0=N0-Y0|0,T0=c+-4|0,U0=D0<<2,P0=T0-U0|0,r5=D,S5=0,g5=i2,b5=V;e1=g5+-16|0,v0=r5+-8|0,i1=g5+-8|0,c1=+A[i1>>2],a1=+A[b5>>2],f1=a1+c1,g1=+A[e1>>2],l1=b5+8|0,A1=+A[l1>>2],n1=A1+g1,s1=r5+-4|0,z0=+A[s1>>2],I1=n1*z0,h1=+A[v0>>2],E1=h1*f1,u1=E1+I1,v=S5+y|0,d1=G1+(v<<2)|0,A[d1>>2]=u1,m1=+A[v0>>2],p1=m1*n1,D1=+A[s1>>2],_1=D1*f1,y1=p1-_1,k1=S5|1,S=k1+y|0,x1=G1+(S<<2)|0,A[x1>>2]=y1,L1=b5+16|0,N1=S5+2|0,w1=(N1|0)<($1|0),w1;)r5=v0,S5=N1,g5=e1,b5=L1;U1=Y0+2|0,c2=T1+(V0<<2)|0,m5=n+(P0<<2)|0,P2=V0,E5=c2,u5=U1,n5=m5}else P2=y,E5=D,u5=0,n5=i2;if(Z1=n+4|0,v1=y-$1|0,K1=(u5|0)<(v1|0),K1){for(P1=y+-1|0,H1=P1-u5|0,q1=H1-$1|0,Y1=q1>>>1,j1=Y1<<1,r2=u5+j1|0,W1=Y1<<2,O1=W1+5|0,z1=-2-j1|0,R2=E5,D5=u5,Y2=n5,$5=Z1;h2=R2+-8|0,A2=Y2+-16|0,d2=Y2+-8|0,s2=+A[d2>>2],V1=+A[$5>>2],g2=s2-V1,$2=+A[A2>>2],t2=$5+8|0,a2=+A[t2>>2],o2=$2-a2,X1=R2+-4|0,n2=+A[X1>>2],f2=o2*n2,e2=+A[h2>>2],y2=e2*g2,S2=y2+f2,C=D5+y|0,w2=G1+(C<<2)|0,A[w2>>2]=S2,C2=+A[h2>>2],M2=C2*o2,G2=+A[X1>>2],u2=G2*g2,K2=M2-u2,N2=D5|1,p=N2+y|0,q2=G1+(p<<2)|0,A[q2>>2]=K2,T2=$5+16|0,O2=D5+2|0,V2=(O2|0)<(v1|0),V2;)R2=h2,D5=O2,Y2=A2,$5=T2;A5=r2+2|0,o5=n+(O1<<2)|0,m=P2+z1|0,Z2=T1+(m<<2)|0,x2=Z2,G5=A5,W2=o5}else x2=E5,G5=u5,W2=Z1;if(j2=(G5|0)<(y|0),j2)for(R5=n+(w<<2)|0,B2=x2,H2=G5,h5=R5,F2=W2;X2=B2+-8|0,v5=h5+-16|0,z2=h5+-8|0,f5=+A[z2>>2],w5=-f5,O5=+A[F2>>2],a5=w5-O5,k2=+A[v5>>2],Q=-k2,b=F2+8|0,x=+A[b>>2],_=Q-x,L=B2+-4|0,M=+A[L>>2],T=_*M,G=+A[X2>>2],N=G*a5,P=N+T,d=H2+y|0,Y=G1+(d<<2)|0,A[Y>>2]=P,t0=+A[X2>>2],J=t0*_,W=+A[L>>2],e0=W*a5,H=J-e0,X=H2|1,I=X+y|0,U=G1+(I<<2)|0,A[U>>2]=H,o0=F2+16|0,Z=H2+2|0,s0=(Z|0)<(y|0),s0;)B2=X2,H2=Z,h5=v5,F2=o0;if(s5=t+4|0,l5=e[s5>>2]|0,jp(l5,T1,l2,y),c5=e[t>>2]|0,B5=e[_2>>2]|0,M1=t+12|0,k5=e[M1>>2]|0,Xp(c5,B5,k5,G1),n0=(r1|0)>0,!n0){B=H5;return}for(i0=s+(y<<2)|0,r0=e[_2>>2]|0,K=r0+(y<<2)|0,c0=t+16|0,C5=K,I5=0,e5=G1,t5=i0;A0=t5+-4|0,l0=+A[e5>>2],j=+A[C5>>2],a0=j*l0,f0=e5+4|0,Q0=+A[f0>>2],d0=C5+4|0,y0=+A[d0>>2],h0=y0*Q0,E0=h0+a0,C0=+A[c0>>2],u0=E0*C0,k0=s+(I5<<2)|0,A[k0>>2]=u0,J0=+A[e5>>2],m0=+A[d0>>2],x0=m0*J0,F0=+A[f0>>2],M0=+A[C5>>2],G0=M0*F0,p0=x0-G0,H0=+A[c0>>2],R0=p0*H0,A[A0>>2]=R0,S0=e5+8|0,L0=C5+8|0,q0=I5+1|0,x5=(q0|0)==(r1|0),!x5;)C5=L0,I5=q0,e5=S0,t5=A0;B=H5}function jp(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,V5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,m6=0,z3=0,$6=0,p6=0,_6=0,Y6=0,B6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,s3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,A4=0,p9=0,S4=0,D4=0,R4=0,M4=0,Z4=0,C4=0,T4=0,N9=0,G4=0,s4=0,x4=0,g4=0,ue=0,P9=0,d9=0,Ie=0,Le=0,ze=0,N4=0,Me=0,U4=0,W4=0,we=0,Ze=0,z9=0,Ae=0,h4=0,b6=0,O4=0,R9=0,o4=0,b4=0,se=0,Z9=0,oe=0,$e=0,B4=0,j4=0,F4=0,ae=0,E9=0,a6=0,Te=0,$4=0,de=0,m4=0,a4=0,U6=0,ke=0,ve=0,We=0,l4=0,w4=0,g8=0,H3=0,Q9=0,C9=0,L4=0,X4=0,$7=0,Se=0,a7=0,p7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,Q7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ge=0,De=0,je=0,k8=0,y9=0,g7=0,Ee=0,h7=0,y7=0,j8=0,w7=0,ee=0,X8=0,P8=0,v8=0,Xe=0,P4=0,be=0,e8=0,u8=0,S8=0,le=0,W9=0,t8=0,I8=0,i8=0,d8=0,ce=0,Ce=0,Ne=0,Ue=0,j9=0,_e=0,ge=0,r8=0,Be=0,p4=0,E8=0,e7=0,H4=0,I3=0,Oe=0,C8=0,te=0,H9=0,ie=0,S9=0,Pe=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,A8=0,D8=0,q4=0,n7=0,b8=0,He=0,B9=0,A7=0,qe=0,L7=0,O7=0,k7=0,s7=0,v7=0,re=0,M7=0,P7=0,s8=0,_8=0,S7=0,J8=0,Re=0,he=0,X9=0,D7=0,X7=0,Lt=0,Mt=0,Tt=0,ct=0,H7=0,gt=0,q7=0,ht=0,Y7=0,ft=0,et=0,ti=0,Gt=0,ut=0,It=0,ii=0,dt=0,tt=0,ri=0,Nt=0,Ut=0,Ot=0,Pt=0,it=0,Et=0,Ht=0,J7=0,rt=0,T7=0,K7=0,ni=0,qt=0,Ai=0,Ct=0,Yt=0,Bt=0,mt=0,Jt=0,pt=0,V7=0,Qt=0,Kt=0,nt=0,G7=0,yt=0,me=0,wt=0,b7=0,At=0,i9=0,u7=0,B8=0,I7=0,_7=0,Hr=0,hr=0;if(hr=B,f0=t+-6|0,Q0=(t|0)>6,Q0)for(I=$+-8|0,O5=s+(I<<2)|0,D3=$>>1,m=D3+-8|0,K8=s+(m<<2)|0,c=n,u7=O5,I7=K8;s8=u7+24|0,Tt=+A[s8>>2],ut=I7+24|0,Et=+A[ut>>2],Bt=Tt-Et,d0=u7+28|0,F0=+A[d0>>2],V0=I7+28|0,g1=+A[V0>>2],d1=F0-g1,w1=Et+Tt,A[s8>>2]=w1,r2=+A[V0>>2],$2=r2+F0,A[d0>>2]=$2,w2=c+4|0,V2=+A[w2>>2],a5=V2*d1,G5=+A[c>>2],Z2=G5*Bt,$5=Z2+a5,A[ut>>2]=$5,E3=+A[c>>2],j3=E3*d1,G3=+A[w2>>2],V3=G3*Bt,m6=j3-V3,A[V0>>2]=m6,O3=u7+16|0,T6=+A[O3>>2],r9=I7+16|0,W6=+A[r9>>2],u9=T6-W6,v4=u7+20|0,G4=+A[v4>>2],Me=I7+20|0,o4=+A[Me>>2],a6=G4-o4,w4=W6+T6,A[O3>>2]=w4,l7=+A[Me>>2],N8=l7+G4,A[v4>>2]=N8,je=c+20|0,P8=+A[je>>2],I8=P8*a6,Be=c+16|0,S9=+A[Be>>2],D8=S9*u9,s7=D8+I8,A[r9>>2]=s7,P7=+A[Be>>2],_8=P7*a6,S7=+A[je>>2],J8=S7*u9,Re=_8-J8,A[Me>>2]=Re,he=u7+8|0,X9=+A[he>>2],D7=I7+8|0,X7=+A[D7>>2],Lt=X9-X7,Mt=u7+12|0,ct=+A[Mt>>2],H7=I7+12|0,gt=+A[H7>>2],q7=ct-gt,ht=X7+X9,A[he>>2]=ht,Y7=+A[H7>>2],ft=Y7+ct,A[Mt>>2]=ft,et=c+36|0,ti=+A[et>>2],Gt=ti*q7,It=c+32|0,ii=+A[It>>2],dt=ii*Lt,tt=dt+Gt,A[D7>>2]=tt,ri=+A[It>>2],Nt=ri*q7,Ut=+A[et>>2],Ot=Ut*Lt,Pt=Nt-Ot,A[H7>>2]=Pt,it=+A[u7>>2],Ht=+A[I7>>2],J7=it-Ht,rt=u7+4|0,T7=+A[rt>>2],K7=I7+4|0,ni=+A[K7>>2],qt=T7-ni,Ai=Ht+it,A[u7>>2]=Ai,Ct=+A[K7>>2],Yt=Ct+T7,A[rt>>2]=Yt,mt=c+52|0,Jt=+A[mt>>2],pt=Jt*qt,V7=c+48|0,Qt=+A[V7>>2],Kt=Qt*J7,nt=Kt+pt,A[I7>>2]=nt,G7=+A[V7>>2],yt=G7*qt,me=+A[mt>>2],y0=me*J7,h0=yt-y0,A[K7>>2]=h0,E0=u7+-32|0,C0=I7+-32|0,u0=c+64|0,k0=C0>>>0>>0,!k0;)c=u0,u7=E0,I7=C0;if(J0=(f0|0)>1,J0)for(b7=1;;){if(D0=1<>b7,M0=4<>1,v=G0+-8|0,G=M0+1|0,o0=M0<<1,i0=o0|1,c0=M0*3|0,l0=c0+1|0,a0=M0<<2,At=0;;){for(H0=i5(At,x0)|0,R0=s+(H0<<2)|0,d=C+H0|0,S0=s+(d<<2)|0,s0=v+H0|0,L0=s+(s0<<2)|0,f=n,B8=S0,_7=L0;Y0=B8+24|0,q0=+A[Y0>>2],N0=_7+24|0,T0=+A[N0>>2],U0=q0-T0,r1=B8+28|0,P0=+A[r1>>2],e1=_7+28|0,v0=+A[e1>>2],i1=P0-v0,c1=T0+q0,A[Y0>>2]=c1,a1=+A[e1>>2],f1=a1+P0,A[r1>>2]=f1,l1=f+4|0,A1=+A[l1>>2],$1=A1*i1,n1=+A[f>>2],s1=n1*U0,z0=s1+$1,A[N0>>2]=z0,I1=+A[f>>2],h1=I1*i1,E1=+A[l1>>2],u1=E1*U0,m1=h1-u1,A[e1>>2]=m1,p1=f+(M0<<2)|0,Q1=B8+16|0,D1=+A[Q1>>2],_1=_7+16|0,y1=+A[_1>>2],k1=D1-y1,x1=B8+20|0,L1=+A[x1>>2],N1=_7+20|0,U1=+A[N1>>2],Z1=L1-U1,G1=y1+D1,A[Q1>>2]=G1,v1=+A[N1>>2],K1=v1+L1,A[x1>>2]=K1,P1=f+(G<<2)|0,H1=+A[P1>>2],q1=H1*Z1,Y1=+A[p1>>2],j1=Y1*k1,W1=j1+q1,A[_1>>2]=W1,O1=+A[p1>>2],l2=O1*Z1,z1=+A[P1>>2],h2=z1*k1,A2=l2-h2,A[N1>>2]=A2,d2=f+(o0<<2)|0,s2=B8+8|0,V1=+A[s2>>2],g2=_7+8|0,t2=+A[g2>>2],a2=V1-t2,i2=B8+12|0,o2=+A[i2>>2],X1=_7+12|0,n2=+A[X1>>2],f2=o2-n2,e2=t2+V1,A[s2>>2]=e2,y2=+A[X1>>2],S2=y2+o2,A[i2>>2]=S2,C2=f+(i0<<2)|0,M2=+A[C2>>2],_2=M2*f2,G2=+A[d2>>2],u2=G2*a2,K2=u2+_2,A[g2>>2]=K2,N2=+A[d2>>2],q2=N2*f2,T2=+A[C2>>2],O2=T2*a2,A5=q2-O2,A[X1>>2]=A5,P2=f+(c0<<2)|0,T1=+A[B8>>2],j2=+A[_7>>2],R5=T1-j2,X2=B8+4|0,v5=+A[X2>>2],z2=_7+4|0,f5=+A[z2>>2],w5=v5-f5,k2=j2+T1,A[B8>>2]=k2,E5=+A[z2>>2],r5=E5+v5,A[X2>>2]=r5,x2=f+(l0<<2)|0,R2=+A[x2>>2],B2=R2*w5,C5=+A[P2>>2],x5=C5*R5,u5=x5+B2,A[_7>>2]=u5,S5=+A[P2>>2],D5=S5*w5,H2=+A[x2>>2],I5=H2*R5,s5=D5-I5,A[z2>>2]=s5,l5=f+(a0<<2)|0,B5=B8+-32|0,M1=_7+-32|0,k5=M1>>>0>>0,!k5;)f=l5,B8=B5,_7=M1;if(c5=At+1|0,o5=(c5|0)<(D0|0),o5)At=c5;else break}if(c2=b7+1|0,wt=(c2|0)==(f0|0),wt)break;b7=c2}if(p0=($|0)>0,p0)i9=0;else return;for(;m5=s+(i9<<2)|0,p=i9|30,e5=s+(p<<2)|0,n5=+A[e5>>2],T=i9|14,g5=s+(T<<2)|0,Y2=+A[g5>>2],h5=n5-Y2,U=i9|31,t5=s+(U<<2)|0,b5=+A[t5>>2],n0=i9|15,W2=s+(n0<<2)|0,F2=+A[W2>>2],p5=b5-F2,H5=Y2+n5,A[e5>>2]=H5,X5=F2+b5,A[t5>>2]=X5,A[g5>>2]=h5,A[W2>>2]=p5,r0=i9|28,d5=s+(r0<<2)|0,f3=+A[d5>>2],K=i9|12,g3=s+(K<<2)|0,J5=+A[g3>>2],e3=f3-J5,A0=i9|29,A3=s+(A0<<2)|0,F5=+A[A3>>2],j=i9|13,K5=s+(j<<2)|0,y3=+A[K5>>2],h3=F5-y3,B3=J5+f3,A[d5>>2]=B3,q3=y3+F5,A[A3>>2]=q3,M3=e3*.9238795042037964,z5=h3*.3826834261417389,Q3=M3-z5,A[g3>>2]=Q3,W5=e3*.3826834261417389,_3=h3*.9238795042037964,T3=_3+W5,A[K5>>2]=T3,g0=i9|26,$3=s+(g0<<2)|0,a3=+A[$3>>2],S=i9|10,l3=s+(S<<2)|0,C3=+A[l3>>2],q5=a3-C3,w=i9|27,N5=s+(w<<2)|0,P5=+A[N5>>2],y=i9|11,y5=s+(y<<2)|0,L5=+A[y5>>2],t6=P5-L5,t3=C3+a3,A[$3>>2]=t3,o3=L5+P5,A[N5>>2]=o3,R3=q5-t6,f6=R3*.7071067690849304,A[l3>>2]=f6,m3=t6+q5,w3=m3*.7071067690849304,A[y5>>2]=w3,D=i9|24,p3=s+(D<<2)|0,X3=+A[p3>>2],Q=i9|8,N3=s+(Q<<2)|0,V5=+A[N3>>2],k3=X3-V5,b=i9|25,c3=s+(b<<2)|0,U3=+A[c3>>2],x=i9|9,o6=s+(x<<2)|0,u3=+A[o6>>2],w6=U3-u3,k6=V5+X3,A[p3>>2]=k6,v6=u3+U3,A[c3>>2]=v6,z3=k3*.3826834261417389,$6=w6*.9238795042037964,p6=z3-$6,_6=w6*.3826834261417389,Y6=k3*.9238795042037964,B6=_6+Y6,_=i9|22,v3=s+(_<<2)|0,Z3=+A[v3>>2],L=i9|6,W3=s+(L<<2)|0,u6=+A[W3>>2],S3=Z3-u6,M=i9|7,P3=s+(M<<2)|0,Y3=+A[P3>>2],N=i9|23,S6=s+(N<<2)|0,i6=+A[S6>>2],i3=Y3-i6,P6=u6+Z3,A[v3>>2]=P6,s3=i6+Y3,A[S6>>2]=s3,A[W3>>2]=i3,A[P3>>2]=S3,P=i9|4,r6=s+(P<<2)|0,I6=+A[r6>>2],z=i9|20,e6=s+(z<<2)|0,Q6=+A[e6>>2],R6=I6-Q6,Y=i9|5,K6=s+(Y<<2)|0,d6=+A[K6>>2],t0=i9|21,J6=s+(t0<<2)|0,x3=+A[J6>>2],Z6=d6-x3,G6=Q6+I6,A[e6>>2]=G6,j6=x3+d6,A[J6>>2]=j6,x6=Z6*.9238795042037964,N6=R6*.3826834261417389,D6=x6+N6,V6=Z6*.3826834261417389,y6=R6*.9238795042037964,F6=V6-y6,J=i9|2,F3=s+(J<<2)|0,L6=+A[F3>>2],W=i9|18,X6=s+(W<<2)|0,A9=+A[X6>>2],g9=L6-A9,e0=i9|3,h9=s+(e0<<2)|0,f9=+A[h9>>2],H=i9|19,s9=s+(H<<2)|0,o9=+A[s9>>2],M9=f9-o9,E6=A9+L6,A[X6>>2]=E6,M6=o9+f9,A[s9>>2]=M6,e9=M9+g9,T9=e9*.7071067690849304,d4=M9-g9,n4=d4*.7071067690849304,c4=+A[m5>>2],X=i9|16,G9=s+(X<<2)|0,V9=+A[G9>>2],v9=c4-V9,Z=i9|1,I9=s+(Z<<2)|0,H6=+A[I9>>2],V=i9|17,t9=s+(V<<2)|0,E4=+A[t9>>2],A4=H6-E4,p9=V9+c4,A[G9>>2]=p9,S4=E4+H6,A[t9>>2]=S4,D4=A4*.3826834261417389,R4=v9*.9238795042037964,M4=D4+R4,Z4=A4*.9238795042037964,C4=v9*.3826834261417389,T4=Z4-C4,N9=T4-B6,s4=M4-p6,x4=M4+p6,g4=T4+B6,ue=s4+N9,P9=N9-s4,d9=+A[y5>>2],Ie=n4-d9,Le=+A[l3>>2],ze=Le-T9,N4=Le+T9,U4=d9+n4,W4=+A[g3>>2],we=W4-D6,Ze=+A[K5>>2],z9=Ze-F6,Ae=W4+D6,h4=Ze+F6,b6=we-z9,O4=z9+we,R9=+A[g5>>2],b4=R9-i3,se=+A[W2>>2],Z9=se-S3,oe=i3+R9,$e=S3+se,B4=b4+Ie,j4=b4-Ie,F4=b6+ue,ae=F4*.7071067690849304,E9=b6-ue,Te=E9*.7071067690849304,$4=ae+B4,A[W3>>2]=$4,de=B4-ae,A[r6>>2]=de,m4=O4-P9,a4=m4*.7071067690849304,U6=Z9-ze,ke=a4+j4,A[m5>>2]=ke,ve=j4-a4,A[F3>>2]=ve,We=O4+P9,l4=We*.7071067690849304,g8=Z9+ze,H3=U6+Te,A[h9>>2]=H3,Q9=U6-Te,A[I9>>2]=Q9,C9=g8+l4,A[P3>>2]=C9,L4=g8-l4,A[K6>>2]=L4,X4=oe+N4,$7=oe-N4,Se=x4+Ae,a7=Ae-x4,p7=X4+Se,A[g5>>2]=p7,c7=X4-Se,A[g3>>2]=c7,x8=h4-g4,F8=$e-U4,L8=$7+x8,A[N3>>2]=L8,M8=$7-x8,A[l3>>2]=M8,V8=h4+g4,z8=$e+U4,Q7=F8+a7,A[y5>>2]=Q7,T8=F8-a7,A[o6>>2]=T8,G8=z8+V8,A[W2>>2]=G8,y8=z8-V8,A[K5>>2]=y8,w8=+A[c3>>2],h8=S4-w8,U8=+A[p3>>2],O8=p9-U8,Z8=U8+p9,W8=w8+S4,f8=O8+h8,Ge=h8-O8,De=+A[s9>>2],k8=+A[N5>>2],y9=De-k8,g7=+A[$3>>2],Ee=+A[X6>>2],h7=g7-Ee,y7=Ee+g7,j8=k8+De,w7=+A[d5>>2],ee=+A[e6>>2],X8=w7-ee,v8=+A[A3>>2],Xe=+A[J6>>2],P4=v8-Xe,be=ee+w7,e8=Xe+v8,u8=X8-P4,S8=P4+X8,le=+A[e5>>2],W9=+A[v3>>2],t8=le-W9,i8=+A[t5>>2],d8=+A[S6>>2],ce=i8-d8,Ce=W9+le,Ne=d8+i8,Ue=t8+y9,j9=t8-y9,_e=u8+f8,ge=_e*.7071067690849304,r8=u8-f8,p4=r8*.7071067690849304,E8=ge+Ue,A[v3>>2]=E8,e7=Ue-ge,A[e6>>2]=e7,H4=S8-Ge,I3=H4*.7071067690849304,Oe=ce-h7,C8=I3+j9,A[G9>>2]=C8,te=j9-I3,A[X6>>2]=te,H9=S8+Ge,ie=H9*.7071067690849304,Pe=ce+h7,H8=Oe+p4,A[s9>>2]=H8,f7=Oe-p4,A[t9>>2]=f7,t7=Pe+ie,A[S6>>2]=t7,i7=Pe-ie,A[J6>>2]=i7,q8=Ce+y7,r7=Ce-y7,Y8=be+Z8,n8=be-Z8,A8=q8+Y8,A[e5>>2]=A8,q4=q8-Y8,A[d5>>2]=q4,n7=e8-W8,b8=Ne-j8,He=r7+n7,A[p3>>2]=He,B9=r7-n7,A[$3>>2]=B9,A7=e8+W8,qe=Ne+j8,L7=b8+n8,A[N5>>2]=L7,O7=b8-n8,A[c3>>2]=O7,k7=qe+A7,A[t5>>2]=k7,v7=qe-A7,A[A3>>2]=v7,re=i9+32|0,M7=(re|0)<($|0),M7;)i9=re}function Xp(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0;for(E1=B,S=t>>1,w=$+(S<<2)|0,N=n+(t<<2)|0,n1=N,s1=s,z0=$,I1=w;o0=e[s1>>2]|0,c=o0+S|0,j=$+(c<<2)|0,k0=s1+4|0,S0=e[k0>>2]|0,f=S0+S|0,v0=$+(f<<2)|0,d=c+1|0,A1=$+(d<<2)|0,$1=+A[A1>>2],I=f+1|0,y=$+(I<<2)|0,D=+A[y>>2],Q=$1-D,b=+A[j>>2],x=+A[v0>>2],_=x+b,L=+A[n1>>2],M=_*L,T=n1+4|0,G=+A[T>>2],P=G*Q,z=P+M,Y=G*_,t0=L*Q,J=Y-t0,W=I1+-16|0,e0=D+$1,H=e0*.5,X=b-x,U=X*.5,Z=z+H,A[z0>>2]=Z,V=H-z,s0=I1+-8|0,A[s0>>2]=V,n0=J+U,i0=z0+4|0,A[i0>>2]=n0,r0=J-U,K=I1+-4|0,A[K>>2]=r0,c0=s1+8|0,A0=e[c0>>2]|0,C=A0+S|0,l0=$+(C<<2)|0,a0=s1+12|0,g0=e[a0>>2]|0,p=g0+S|0,f0=$+(p<<2)|0,m=C+1|0,Q0=$+(m<<2)|0,d0=+A[Q0>>2],v=p+1|0,y0=$+(v<<2)|0,h0=+A[y0>>2],E0=d0-h0,C0=+A[l0>>2],u0=+A[f0>>2],J0=u0+C0,D0=n1+8|0,m0=+A[D0>>2],x0=J0*m0,F0=n1+12|0,M0=+A[F0>>2],G0=M0*E0,p0=G0+x0,H0=M0*J0,R0=m0*E0,L0=H0-R0,Y0=h0+d0,q0=Y0*.5,N0=C0-u0,V0=N0*.5,T0=p0+q0,U0=z0+8|0,A[U0>>2]=T0,r1=q0-p0,A[W>>2]=r1,P0=L0+V0,e1=z0+12|0,A[e1>>2]=P0,i1=L0-V0,c1=I1+-12|0,A[c1>>2]=i1,a1=n1+16|0,f1=s1+16|0,g1=z0+16|0,l1=g1>>>0>>0,l1;)n1=a1,s1=f1,z0=g1,I1=W}function cS(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0;return m=B,n=t+28|0,s=e[n>>2]|0,$=s+2868|0,c=i4(1,36)|0,f=t+4|0,d=e[f>>2]|0,I=c+4|0,e[I>>2]=d,A[c>>2]=-9999,C=c+8|0,e[C>>2]=$,c|0}function gS(t){t=t|0;var n=0,s=0,$=0;$=B,n=(t|0)==0,!n&&I2(t)}function hS(t){t=t|0;var n=0,s=0,$=0;$=B,n=(t|0)==0,n||I2(t)}function fS(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,V5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,m6=0,z3=0,$6=0,p6=0,_6=0,Y6=0,B6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,s3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0;e9=B,E6=t,T9=E6+48|0;do e[E6>>2]=0,E6=E6+4|0;while((E6|0)<(T9|0));b=e[s>>2]|0,x=t+36|0,e[x>>2]=b,t2=+(b|0),X5=t2*8,h3=X5,a3=+Or(+h3),o3=a3*1.4426950408889634,c3=+Ti(o3),_6=c3+-1,S6=~~_6,_=t+32|0,e[_>>2]=S6,W=+(c|0),r0=W*.25,y0=r0,M0=y0*.5,T0=+($|0),l1=M0/T0,m1=+Or(+l1),U1=m1*1.4426950216293335,W1=U1+-5.965784072875977,a2=S6+1|0,M2=1<>2]=$5,p5=+($|0),H5=p5+.25,d5=H5*W,f3=d5,g3=f3*.5,J5=g3/T0,e3=+Or(+J5),A3=e3*1.4426950216293335,E3=A3+-5.965784072875977,F5=P2*E3,K5=F5+.5,y3=~~K5,B3=1-$5|0,q3=B3+y3|0,M3=t+40|0,e[M3>>2]=q3,z5=$<<2,Q3=k9(z5)|0,W5=t+16|0,e[W5>>2]=Q3,j3=k9(z5)|0,_3=t+20|0,e[_3>>2]=j3,T3=k9(z5)|0,$3=t+24|0,e[$3>>2]=T3,l3=t+4|0,e[l3>>2]=n,e[t>>2]=$,C3=t+44|0,e[C3>>2]=c,q5=t+48|0,A[q5>>2]=1,N5=(c|0)<26e3;do if(N5)A[q5>>2]=0;else{if(P5=(c|0)<38e3,P5){A[q5>>2]=.9399999976158142;break}y5=(c|0)>46e3,y5&&(A[q5>>2]=1.274999976158142)}while(!1);G3=T0*2,L5=+(c|0),t6=($|0)>0,m3=t6,V6=0,W6=0;e:for(;;){for(p=m3^1,y6=V6;;){if(p3=y6+1|0,X3=+(p3|0),V3=X3*.08664337545633316,N3=V3+2.7488713472395148,V5=+Fn(+N3),k3=G3*V5,U3=k3/L5,o6=+Ti(U3),u3=~~o6,C=(u3|0)<=(W6|0),K6=C|p,!K6){d=p3,I=u3,F6=y6;break}if(w6=(p3|0)<87,w6)y6=p3;else{A9=W6;break e}}for(k6=1272+(F6<<2)|0,v6=+A[k6>>2],m6=1272+(d<<2)|0,z3=+A[m6>>2],$6=z3-v6,p6=I-W6|0,Y6=+(p6|0),B6=$6/Y6,v3=W6-I|0,Z3=W6-$|0,W3=v3>>>0>Z3>>>0,M9=W3?v3:Z3,t3=W6-M9|0,R6=v6,g9=W6;u6=R6+100,O3=Q3+(g9<<2)|0,A[O3>>2]=u6,S3=R6+B6,P3=g9+1|0,G6=(P3|0)==(t3|0),!G6;)R6=S3,g9=P3;if(R3=(t3|0)<($|0),f6=(d|0)<87,f6)m3=R3,V6=d,W6=t3;else{A9=t3;break}}if(w3=(A9|0)<($|0),w3)for(h9=A9;T6=h9+-1|0,e6=Q3+(T6<<2)|0,Q6=e[e6>>2]|0,L=Q3+(h9<<2)|0,e[L>>2]=Q6,M=h9+1|0,Z6=(M|0)==($|0),!Z6;)h9=M;if(Y3=($|0)>0,Y3){for(i6=$<<1,i3=(c|0)/(i6|0)&-1,P6=n+120|0,s3=e[P6>>2]|0,r6=n+124|0,I6=n+116|0,D3=n+112|0,x6=1,F3=0,f9=-99;;){Y=i5(i3,F3)|0,t0=+(Y|0),J=t0*.0007399999885819852,e0=J,H=+PA(+e0),X=H*13.100000381469727,U=i5(Y,Y)|0,o0=+(U|0),Z=o0*18499999754340024e-24,V=Z,s0=+PA(+V),n0=s0*2.240000009536743,i0=n0+X,K=t0*9999999747378752e-20,c0=K,A0=i0+c0,l0=A0,j=s3+f9|0,a0=(j|0)<(F3|0);e:do if(a0)for(g0=+A[D3>>2],f0=l0-g0,Q0=f0,o9=f9;;){if(d0=i5(o9,i3)|0,h0=+(d0|0),E0=h0*.0007399999885819852,C0=E0,u0=+PA(+C0),k0=u0*13.100000381469727,J0=i5(d0,d0)|0,D0=+(J0|0),m0=D0*18499999754340024e-24,x0=m0,F0=+PA(+x0),G0=F0*2.240000009536743,p0=h0*9999999747378752e-20,H0=p0,R0=k0+H0,S0=R0+G0,L0=S0($|0);e:do if(Y0)N6=x6;else for(q0=e[r6>>2]|0,N0=q0+F3|0,D6=x6;;){if(P0=(D6|0)<(N0|0),!P0&&(e1=i5(D6,i3)|0,v0=+(e1|0),i1=v0*.0007399999885819852,c1=i1,a1=+PA(+c1),f1=a1*13.100000381469727,g1=i5(e1,e1)|0,A1=+(g1|0),$1=A1*18499999754340024e-24,n1=$1,s1=+PA(+n1),z0=s1*2.240000009536743,I1=v0*9999999747378752e-20,h1=I1,E1=f1+h1,u1=E1+z0,d1=+A[I6>>2],p1=d1+l0,Q1=p1,D1=u1>2]=L1,w1=F3+1|0,x3=(w1|0)==($|0),x3)break;x6=N6,F3=w1,f9=s9}if(Y3)for(T=L5*.5,G=e[_>>2]|0,N=G+1|0,P=1<>2]=O1,z1=L6+1|0,J6=(z1|0)==($|0),J6){w=T;break}else L6=z1;else M6=19}else M6=19;if((M6|0)==19&&(Q=L5*.5,w=Q),h2=n+36|0,A2=w/T0,d2=A2,s2=n+24|0,V1=+A[s2>>2],g2=n+28|0,$2=+A[g2>>2],i2=dS(h2,d2,$,V1,$2)|0,o2=t+8|0,e[o2>>2]=i2,X1=k9(12)|0,n2=t+12|0,e[n2>>2]=X1,f2=k9(z5)|0,e[X1>>2]=f2,e2=k9(z5)|0,y2=X1+4|0,e[y2>>2]=e2,S2=k9(z5)|0,w2=X1+8|0,e[w2>>2]=S2,!!Y3)for(C2=e[l3>>2]|0,S=e[X1>>2]|0,m=X1+4|0,y=e[m>>2]|0,v=X1+8|0,D=e[v>>2]|0,X6=0;_2=+(X6|0),G2=_2+.5,u2=G2*L5,K2=u2/G3,N2=+Or(+K2),q2=N2*2.885390043258667,T2=q2+-11.931568145751953,O2=T2,V2=O2<0,j6=V2?0:O2,f=j6>=16,r9=f?16:j6,A5=~~r9,T1=+(A5|0),j2=r9-T1,R5=j2,X2=1-R5,v5=A5+1|0,z2=(C2+132|0)+(A5<<2)|0,f5=+A[z2>>2],w5=f5,O5=w5*X2,a5=(C2+132|0)+(v5<<2)|0,E5=+A[a5>>2],r5=E5*j2,x2=r5,R2=x2+O5,B2=R2,C5=S+(X6<<2)|0,A[C5>>2]=B2,x5=(C2+200|0)+(A5<<2)|0,u5=+A[x5>>2],S5=u5,G5=S5*X2,H2=(C2+200|0)+(v5<<2)|0,I5=+A[H2>>2],s5=I5*j2,l5=s5,B5=l5+G5,M1=B5,k5=y+(X6<<2)|0,A[k5>>2]=M1,c5=(C2+268|0)+(A5<<2)|0,o5=+A[c5>>2],Z2=o5,m5=Z2*X2,e5=(C2+268|0)+(v5<<2)|0,n5=+A[e5>>2],g5=n5*j2,Y2=g5,h5=Y2+m5,t5=h5,b5=D+(X6<<2)|0,A[b5>>2]=t5,W2=X6+1|0,d6=(W2|0)==($|0),!d6;)X6=W2}function eQ(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0;if(T0=B,s=(t|0)==0,!s){if($=t+16|0,y=e[$>>2]|0,P=(y|0)==0,P||I2(y),Z=t+20|0,a0=e[Z>>2]|0,J0=(a0|0)==0,J0||I2(a0),R0=t+24|0,S0=e[R0>>2]|0,L0=(S0|0)==0,L0||I2(S0),c=t+8|0,f=e[c>>2]|0,d=(f|0)==0,!d){for(C=f,q0=0;I=C+(q0<<2)|0,p=e[I>>2]|0,m=e[p>>2]|0,I2(m),v=e[c>>2]|0,S=v+(q0<<2)|0,w=e[S>>2]|0,D=w+4|0,Q=e[D>>2]|0,I2(Q),b=e[c>>2]|0,x=b+(q0<<2)|0,_=e[x>>2]|0,L=_+8|0,M=e[L>>2]|0,I2(M),T=e[c>>2]|0,G=T+(q0<<2)|0,N=e[G>>2]|0,z=N+12|0,Y=e[z>>2]|0,I2(Y),t0=e[c>>2]|0,J=t0+(q0<<2)|0,W=e[J>>2]|0,e0=W+16|0,H=e[e0>>2]|0,I2(H),X=e[c>>2]|0,U=X+(q0<<2)|0,o0=e[U>>2]|0,V=o0+20|0,s0=e[V>>2]|0,I2(s0),n0=e[c>>2]|0,i0=n0+(q0<<2)|0,r0=e[i0>>2]|0,K=r0+24|0,c0=e[K>>2]|0,I2(c0),A0=e[c>>2]|0,l0=A0+(q0<<2)|0,j=e[l0>>2]|0,g0=j+28|0,f0=e[g0>>2]|0,I2(f0),Q0=e[c>>2]|0,d0=Q0+(q0<<2)|0,y0=e[d0>>2]|0,I2(y0),h0=q0+1|0,Y0=(h0|0)==17,!Y0;)n=e[c>>2]|0,C=n,q0=h0;E0=e[c>>2]|0,I2(E0)}C0=t+12|0,u0=e[C0>>2]|0,k0=(u0|0)==0,k0||(D0=e[u0>>2]|0,I2(D0),m0=e[C0>>2]|0,x0=m0+4|0,F0=e[x0>>2]|0,I2(F0),M0=e[C0>>2]|0,G0=M0+8|0,p0=e[G0>>2]|0,I2(p0),H0=e[C0>>2]|0,I2(H0)),N0=t,U0=N0+52|0;do e[N0>>2]=0,N0=N0+4|0;while((N0|0)<(U0|0))}}function tQ(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0;if(d0=B,d=e[t>>2]|0,I=d<<2,f=I,x=B,B=B+((1*f|0)+15&-16)|0,J=t+24|0,s0=e[J>>2]|0,rQ(d,s0,n,s,140,-1),n0=(d|0)>0,n0)for(a0=0;i0=n+(a0<<2)|0,r0=+A[i0>>2],K=s+(a0<<2)|0,c0=+A[K>>2],C=r0-c0,p=x+(a0<<2)|0,A[p>>2]=C,m=a0+1|0,l0=(m|0)==(d|0),!l0;)a0=m;if(v=e[J>>2]|0,S=t+4|0,w=e[S>>2]|0,y=w+128|0,D=e[y>>2]|0,rQ(d,v,x,s,0,D),n0)g0=0;else{B=d0;return}for(;b=n+(g0<<2)|0,_=+A[b>>2],L=x+(g0<<2)|0,M=+A[L>>2],T=_-M,A[L>>2]=T,G=g0+1|0,j=(G|0)==(d|0),!j;)g0=G;if(!n0){B=d0;return}for(Q=e[S>>2]|0,f0=0;N=s+(f0<<2)|0,P=+A[N>>2],z=P,Y=z+.5,t0=~~Y,W=(t0|0)>39,$=W?39:t0,e0=($|0)<0,c=e0?0:$,H=x+(f0<<2)|0,X=+A[H>>2],U=(Q+336|0)+(c<<2)|0,o0=+A[U>>2],Z=o0+X,A[N>>2]=Z,V=f0+1|0,A0=(V|0)==(d|0),!A0;)f0=V;B=d0}function iQ(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=+$,c=+c;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0;if(d5=B,M=e[t>>2]|0,T=t+40|0,l1=e[T>>2]|0,m1=l1<<2,I=m1,U1=B,B=B+((1*I|0)+15&-16)|0,W1=t+4|0,t2=e[W1>>2]|0,C2=t2+4|0,A5=+A[C2>>2],a5=A5+c,G=(l1|0)>0,G)for(s5=0;U=U1+(s5<<2)|0,A[U>>2]=-9999,l0=s5+1|0,u0=(l0|0)<(l1|0),u0;)s5=l0;if(R0=t2+8|0,e1=+A[R0>>2],c1=a50,a1){for(f1=t+16|0,g1=e[f1>>2]|0,c5=0;A1=g1+(c5<<2)|0,$1=+A[A1>>2],n1=$1+G5,s1=s+(c5<<2)|0,A[s1>>2]=n1,z0=c5+1|0,H2=(z0|0)==(M|0),!H2;)c5=z0;if(I1=t+8|0,h1=e[I1>>2]|0,E1=t2+496|0,u1=+A[E1>>2],d1=u1-$,a1)for(p1=t+20|0,Q1=e[p1>>2]|0,D1=t+32|0,_1=t+36|0,y1=t+28|0,l5=0;;){k1=n+(l5<<2)|0,x1=+A[k1>>2],L1=Q1+(l5<<2)|0,N1=e[L1>>2]|0,k5=l5,n5=x1;e:for(;;)for(B5=k5;;){if(w1=B5+1|0,Z1=(w1|0)<(M|0),!Z1){v=0,w=w1,M1=B5,g5=n5;break e}if(G1=Q1+(w1<<2)|0,v1=e[G1>>2]|0,K1=(v1|0)==(N1|0),!K1){v=1,w=w1,M1=B5,g5=n5;break e}if(P1=n+(w1<<2)|0,H1=+A[P1>>2],q1=H1>n5,q1){k5=w1,n5=H1;continue e}else B5=w1}if(Y1=g5+6,j1=s+(M1<<2)|0,r2=+A[j1>>2],O1=Y1>r2,O1&&(l2=e[D1>>2]|0,z1=N1>>l2,h2=(z1|0)>16,d=h2?16:z1,A2=(d|0)<0,f=A2?0:d,d2=h1+(f<<2)|0,s2=e[d2>>2]|0,V1=e[_1>>2]|0,g2=d1+g5,$2=g2,a2=$2+-30,i2=a2*.10000000149011612,o2=~~i2,X1=(o2|0)<0,n2=X1?0:o2,f2=(n2|0)>7,e2=f2?7:n2,y2=s2+(e2<<2)|0,S2=e[y2>>2]|0,w2=S2+4|0,M2=+A[w2>>2],_2=~~M2,G2=+A[S2>>2],u2=~~G2,K2=(u2|0)<(_2|0),K2))for(N2=Q1+(M1<<2)|0,q2=e[N2>>2]|0,T2=e[y1>>2]|0,O2=q2-T2|0,V2=+(O2|0),P2=V1>>1,T1=+(P2|0),j2=G2+-16,R5=+(V1|0),X2=j2*R5,v5=X2-T1,z2=v5+V2,f5=~~z2,I5=u2,H5=f5;w5=(H5|0)>0,w5&&(L=I5+2|0,O5=S2+(L<<2)|0,k2=+A[O5>>2],E5=k2+g5,r5=U1+(H5<<2)|0,x2=+A[r5>>2],R2=x2>2]=E5)),B2=H5+V1|0,C5=(B2|0)<(l1|0),x5=I5+1|0,u5=(x5|0)<(_2|0),$5=u5&C5,$5;)I5=x5,H5=B2;if(v)l5=w;else{x=_1;break}}else X5=7}else X5=7;(X5|0)==7&&(Q=t+36|0,x=Q),S5=e[x>>2]|0,ES(U1,S5,l1),N=e[t>>2]|0,P=(N|0)>1;e:do if(P)for(z=t+20|0,Y=t+28|0,t0=e[z>>2]|0,J=e[t0>>2]|0,W=S5>>1,e0=J-W|0,H=e[Y>>2]|0,X=e0-H|0,o0=e[W1>>2]|0,Z=o0+32|0,K=1,j=J,Z2=0,F2=X;;){n0=U1+(F2<<2)|0,i0=+A[n0>>2],r0=t0+(K<<2)|0,c0=e[r0>>2]|0,A0=c0+j|0,a0=A0>>1,g0=a0-H|0,f0=+A[Z>>2],Q0=i0>f0,Y2=Q0?f0:i0,d0=(F2|0)<(g0|0);t:do if(d0)for(C=F2,t5=Y2;;){for(y0=t5==-9999,p=C;;){if(h0=p+1|0,E0=U1+(h0<<2)|0,C0=+A[E0>>2],k0=C0>-9999,k0){if(J0=C0=(N|0),M0=(j|0)>(x0|0),b5=F0|M0;t:do if(b5)c2=Z2;else for(m5=Z2;;){if(G0=s+(m5<<2)|0,p0=+A[G0>>2],H0=p0>2]=h5),S0=m5+1|0,L0=(S0|0)<(N|0),!L0){c2=S0;break t}if(D=t0+(S0<<2)|0,_=e[D>>2]|0,Y0=(_|0)>(x0|0),Y0){c2=S0;break}else m5=S0}while(!1);if(V=c2+1|0,s0=(V|0)<(N|0),!s0){o5=c2;break e}y=t0+(c2<<2)|0,b=e[y>>2]|0,K=V,j=b,Z2=c2,F2=p5}else o5=0;while(!1);if(q0=e[T>>2]|0,N0=q0+-1|0,V0=U1+(N0<<2)|0,T0=+A[V0>>2],U0=(o5|0)<(N|0),U0)e5=o5;else{B=d5;return}for(;r1=s+(e5<<2)|0,P0=+A[r1>>2],v0=P0>2]=T0),i1=e5+1|0,D5=(i1|0)==(N|0),!D5;)e5=i1;B=d5}function Ja(t,n,s,$,c,f,d){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0;var I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0;if(D0=B,C=e[t>>2]|0,p=t+4|0,L=e[p>>2]|0,e0=(L+12|0)+($<<2)|0,K=+A[e0>>2],f0=(C|0)>0,!!f0)for(Q0=t+48|0,d0=+A[Q0>>2],y0=t+12|0,h0=e[y0>>2]|0,m=h0+($<<2)|0,v=e[m>>2]|0,S=L+108|0,w=($|0)==1,y=d0,D=y*.005,Q=y*3e-4,u0=0;b=n+(u0<<2)|0,x=+A[b>>2],_=v+(u0<<2)|0,M=+A[_>>2],T=M+x,G=+A[S>>2],N=T>G,k0=N?G:T,P=s+(u0<<2)|0,z=+A[P>>2],Y=z+K,t0=k0>2]=I,w&&(W=d+(u0<<2)|0,H=+A[W>>2],X=k0-H,U=X>-17.200000762939453,o0=X+17.200000762939453,Z=o0,U?(V=D*Z,s0=1-V,n0=s0,i0=n0<0,i0?E0=9999999747378752e-20:E0=n0):(r0=Q*Z,c0=1-r0,A0=c0,E0=A0),l0=f+(u0<<2)|0,j=+A[l0>>2],a0=j*E0,A[l0>>2]=a0),g0=u0+1|0,C0=(g0|0)==(C|0),!C0;)u0=g0}function uS(t,n){t=+t,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0;return G=B,$=n+4|0,c=e[$>>2]|0,y=c+28|0,D=e[y>>2]|0,Q=n+40|0,b=e[Q>>2]|0,x=D+(b<<2)|0,_=e[x>>2]|0,L=(_|0)/2&-1,M=+(L|0),f=c+8|0,d=e[f>>2]|0,I=+(d|0),C=M/I,p=D+2936|0,m=+A[p>>2],v=m*C,S=v+t,w=S<-9999,s=w?-9999:S,+s}function IS(t,n,s,$,c,f,d,I,C){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0,I=I|0,C=C|0;var p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,V5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,m6=0,z3=0,$6=0,p6=0,_6=0,Y6=0,B6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,s3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,A4=0,p9=0,S4=0,D4=0,R4=0,M4=0,Z4=0,C4=0,T4=0,N9=0,G4=0;if(G4=B,n0=e[s>>2]|0,i0=s+4|0,A5=e[i0>>2]|0,q3=A5+500|0,C3=e[q3>>2]|0,f6=(C3|0)==0,f6?K5=16:(o6=A5+508|0,B6=e[o6>>2]|0,K5=B6),i3=e[A5>>2]|0,d6=((n+132|0)+(i3*60|0)|0)+(t<<2)|0,r0=e[d6>>2]|0,y0=(n+252|0)+(t<<2)|0,M0=e[y0>>2]|0,T0=1624+(M0<<3)|0,l1=+o1[T0>>3],m1=(n+312|0)+(t<<2)|0,U1=e[m1>>2]|0,W1=C<<2,v=W1,t2=B,B=B+((1*v|0)+15&-16)|0,S=W1,C2=B,B=B+((1*S|0)+15&-16)|0,Q=W1,P2=B,B=B+((1*Q|0)+15&-16)|0,b=W1,k2=B,B=B+((1*b|0)+15&-16)|0,x=W1,D5=B,B=B+((1*x|0)+15&-16)|0,c2=$+1156|0,F2=(n0|0)>1e3,T4=F2?1696:1624,M4=T4+(U1<<3)|0,R4=+o1[M4>>3],F5=i5(W1,K5)|0,_=F5,y3=B,B=B+((1*_|0)+15&-16)|0,e[t2>>2]=y3,w=F5,h3=B,B=B+((1*w|0)+15&-16)|0,e[C2>>2]=h3,y=F5,B3=B,B=B+((1*y|0)+15&-16)|0,e[P2>>2]=B3,D=F5,M3=B,B=B+((1*D|0)+15&-16)|0,e[k2>>2]=M3,z5=(C|0)>1,z5&&(Q3=y3+(K5<<2)|0,W5=t2+4|0,e[W5>>2]=Q3,j3=h3+(K5<<2)|0,_3=C2+4|0,e[_3>>2]=j3,T3=B3+(K5<<2)|0,$3=P2+4|0,e[$3>>2]=T3,a3=M3+(K5<<2)|0,l3=k2+4|0,e[l3>>2]=a3,g9=(C|0)==2,!g9))for(y5=2;M=e[t2>>2]|0,N=e[C2>>2]|0,P=e[P2>>2]|0,z=e[k2>>2]|0,P5=i5(y5,K5)|0,G3=M+(P5<<2)|0,L5=t2+(y5<<2)|0,e[L5>>2]=G3,t6=N+(P5<<2)|0,t3=C2+(y5<<2)|0,e[t3>>2]=t6,o3=P+(P5<<2)|0,R3=P2+(y5<<2)|0,e[R3>>2]=o3,m3=z+(P5<<2)|0,w3=k2+(y5<<2)|0,e[w3>>2]=m3,p3=y5+1|0,W6=(p3|0)==(C|0),!W6;)y5=p3;if(q5=e[c2>>2]|0,N5=(n0|0)>0,N5)for(X3=e[k2>>2]|0,V3=(C|0)>0,N3=n0^-1,V5=K5^-1,M6=0,u9=N3;;){if(U3=(u9|0)>(V5|0),Z4=U3?u9:V5,u3=Z4^-1,w6=n0-M6|0,k6=(K5|0)>(w6|0),p=k6?w6:K5,r4(D5|0,d|0,W1|0)|0,ne(X3|0,0,F5|0)|0,V3)for(v6=(p|0)>0,m6=r0-M6|0,t9=0;;){if(v3=f+(t9<<2)|0,Z3=e[v3>>2]|0,W3=Z3+(M6<<2)|0,u6=D5+(t9<<2)|0,O3=e[u6>>2]|0,S3=(O3|0)==0,S3){if(v6)for(S6=P2+(t9<<2)|0,i6=e[S6>>2]|0,P6=t2+(t9<<2)|0,s3=e[P6>>2]|0,r6=C2+(t9<<2)|0,I6=e[r6>>2]|0,D3=k2+(t9<<2)|0,T6=e[D3>>2]|0,I9=0;L0=i6+(I9<<2)|0,A[L0>>2]=1000000013351432e-25,Y0=s3+(I9<<2)|0,A[Y0>>2]=0,q0=I6+(I9<<2)|0,A[q0>>2]=0,N0=T6+(I9<<2)|0,e[N0>>2]=0,U=I9+M6|0,V0=Z3+(U<<2)|0,e[V0>>2]=0,U0=I9+1|0,L6=(U0|0)==(u3|0),!L6;)I9=U0}else{if(P3=P2+(t9<<2)|0,Y3=e[P3>>2]|0,v6){for(V9=0;o0=V9+M6|0,e6=Z3+(o0<<2)|0,Q6=e[e6>>2]|0,R6=1768+(Q6<<2)|0,K6=e[R6>>2]|0,J6=Y3+(V9<<2)|0,e[J6>>2]=K6,x3=V9+1|0,y6=(x3|0)==(u3|0),!y6;)V9=x3;if(Z6=c+(t9<<2)|0,G6=e[Z6>>2]|0,j6=k2+(t9<<2)|0,r9=e[j6>>2]|0,v6){for(G9=0;x6=(G9|0)>=(m6|0),s0=x6?R4:l1,N6=s0,Z=G9+M6|0,D6=G6+(Z<<2)|0,V6=+A[D6>>2],f9=+Yi(+V6),K=Y3+(G9<<2)|0,c0=+A[K>>2],A0=f9/c0,l0=r9+(G9<<2)|0,p9=!(A0>2]=m,j=G9+1|0,F6=(j|0)==(p|0),!F6;)G9=j;if(v6)for(a0=t2+(t9<<2)|0,g0=e[a0>>2]|0,f0=C2+(t9<<2)|0,Q0=e[f0>>2]|0,v9=0;;)if(d0=v9+M6|0,h0=G6+(d0<<2)|0,E0=+A[h0>>2],C0=E0*E0,u0=g0+(v9<<2)|0,A[u0>>2]=C0,k0=Q0+(v9<<2)|0,A[k0>>2]=C0,J0=+A[h0>>2],D0=J0<0,D0&&(m0=+A[u0>>2],x0=-m0,A[u0>>2]=x0),F0=Y3+(v9<<2)|0,G0=+A[F0>>2],p0=G0*G0,A[F0>>2]=p0,H0=v9+1|0,F3=(H0|0)==(u3|0),F3){T=f0,S0=g0;break}else v9=H0;else N9=21}else N9=21}else N9=21;(N9|0)==21&&(N9=0,L=t2+(t9<<2)|0,Y=e[L>>2]|0,H=C2+(t9<<2)|0,T=H,S0=Y),R0=e[T>>2]|0,S4=e[i0>>2]|0,+nQ(S4,r0,S0,R0,Y3,0,M6,p,W3)}if(r1=t9+1|0,X6=(r1|0)==(C|0),X6)break;t9=r1}if(z3=e[c2>>2]|0,$6=(z3|0)>0,$6)for(p6=(p|0)>0,_6=I-M6|0,Y6=r0-M6|0,E3=z3,C4=0;;){if(P0=($+1160|0)+(C4<<2)|0,e1=e[P0>>2]|0,v0=($+2184|0)+(C4<<2)|0,i1=e[v0>>2]|0,c1=f+(e1<<2)|0,a1=e[c1>>2]|0,f1=a1+(M6<<2)|0,g1=f+(i1<<2)|0,A1=e[g1>>2]|0,$1=t2+(e1<<2)|0,n1=e[$1>>2]|0,s1=t2+(i1<<2)|0,z0=e[s1>>2]|0,I1=C2+(e1<<2)|0,h1=e[I1>>2]|0,E1=C2+(i1<<2)|0,u1=e[E1>>2]|0,d1=P2+(e1<<2)|0,p1=e[d1>>2]|0,Q1=P2+(i1<<2)|0,D1=e[Q1>>2]|0,_1=k2+(e1<<2)|0,y1=e[_1>>2]|0,k1=k2+(i1<<2)|0,x1=e[k1>>2]|0,L1=D5+(e1<<2)|0,N1=e[L1>>2]|0,w1=(N1|0)==0,Z1=D5+(i1<<2)|0,w1?(G1=e[Z1>>2]|0,v1=(G1|0)==0,v1?Z2=E3:N9=31):N9=31,(N9|0)==31){if(N9=0,e[Z1>>2]=1,e[L1>>2]=1,p6)for(H6=0;;){K1=(H6|0)<(_6|0);do if(K1){if(P1=y1+(H6<<2)|0,H1=e[P1>>2]|0,q1=(H1|0)==0,Y1=x1+(H6<<2)|0,q1&&(j1=e[Y1>>2]|0,r2=(j1|0)==0,r2)){X2=(H6|0)<(Y6|0);do if(X2)v5=z0+(H6<<2)|0,z2=+A[v5>>2],f5=n1+(H6<<2)|0,w5=+A[f5>>2],O5=w5+z2,A[f5>>2]=O5,o9=+Yi(+O5),a5=h1+(H6<<2)|0,A[a5>>2]=o9,G=v5;else if(E5=n1+(H6<<2)|0,r5=+A[E5>>2],x2=z0+(H6<<2)|0,R2=+A[x2>>2],B2=R2+r5,C5=B2<0,h9=+Yi(+r5),s9=+Yi(+R2),x5=s9+h9,u5=h1+(H6<<2)|0,A[u5>>2]=x5,C5){S5=-x5,A[E5>>2]=S5,G=x2;break}else{A[E5>>2]=x5,G=x2;break}while(!1);G5=u1+(H6<<2)|0,A[G5>>2]=0,A[G>>2]=0,e[Y1>>2]=1,X=H6+M6|0,H2=A1+(X<<2)|0,e[H2>>2]=0;break}O1=n1+(H6<<2)|0,l2=+A[O1>>2],M9=+Yi(+l2),z1=z0+(H6<<2)|0,h2=+A[z1>>2],E6=+Yi(+h2),A2=E6+M9,A[O1>>2]=A2,d2=h1+(H6<<2)|0,s2=+A[d2>>2],V1=u1+(H6<<2)|0,g2=+A[V1>>2],$2=g2+s2,A[d2>>2]=$2,e[Y1>>2]=1,e[P1>>2]=1,V=H6+M6|0,a2=a1+(V<<2)|0,i2=e[a2>>2]|0,o2=A1+(V<<2)|0,X1=e[o2>>2]|0,d4=(i2|0)>-1,E4=0-i2|0,n2=d4?i2:E4,n4=(X1|0)>-1,A4=0-X1|0,f2=n4?X1:A4,e2=(n2|0)>(f2|0),e2?(y2=(i2|0)>0,S2=i2-X1|0,w2=X1-i2|0,M2=y2?S2:w2,e[o2>>2]=M2,J=e[a2>>2]|0,N2=J,O2=M2):(_2=(X1|0)>0,G2=i2-X1|0,u2=X1-i2|0,K2=_2?G2:u2,e[o2>>2]=K2,e[a2>>2]=X1,t0=e[o2>>2]|0,N2=X1,O2=t0),c4=(N2|0)>-1,v4=0-N2|0,q2=c4?N2:v4,T2=q2<<1,V2=(O2|0)<(T2|0),V2||(T1=0-O2|0,e[o2>>2]=T1,j2=e[a2>>2]|0,R5=0-j2|0,e[a2>>2]=R5)}while(!1);if(I5=p1+(H6<<2)|0,s5=+A[I5>>2],l5=D1+(H6<<2)|0,B5=+A[l5>>2],M1=B5+s5,A[l5>>2]=M1,A[I5>>2]=M1,k5=H6+1|0,A9=(k5|0)==(u3|0),A9)break;H6=k5}D4=e[i0>>2]|0,+nQ(D4,r0,n1,h1,p1,y1,M6,p,f1),W=e[c2>>2]|0,Z2=W}if(c5=C4+1|0,o5=(c5|0)<(Z2|0),o5)E3=Z2,C4=c5;else{A3=Z2;break}}else A3=z3;if(m5=M6+K5|0,e5=(n0|0)>(m5|0),T9=u9+K5|0,e5)M6=m5,u9=T9;else{k3=A3;break}}else k3=q5;if(c3=(k3|0)>0,c3)e3=k3,e9=0;else{B=G4;return}for(;n5=($+1160|0)+(e9<<2)|0,g5=e[n5>>2]|0,Y2=d+(g5<<2)|0,h5=e[Y2>>2]|0,t5=(h5|0)==0,b5=($+2184|0)+(e9<<2)|0,t5?(W2=e[b5>>2]|0,$5=d+(W2<<2)|0,p5=e[$5>>2]|0,H5=(p5|0)==0,H5?J5=e3:N9=52):N9=52,(N9|0)==52&&(N9=0,e[Y2>>2]=1,X5=e[b5>>2]|0,d5=d+(X5<<2)|0,e[d5>>2]=1,e0=e[c2>>2]|0,J5=e0),f3=e9+1|0,g3=(f3|0)<(J5|0),g3;)e3=J5,e9=f3;B=G4}function dS(t,n,s,$,c){t=t|0,n=+n,s=s|0,$=+$,c=+c;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,V5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,m6=0,z3=0,$6=0,p6=0,_6=0,Y6=0,B6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,s3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,A4=0,p9=0,S4=0,D4=0,R4=0,M4=0,Z4=0,C4=0,T4=0,N9=0,G4=0,s4=0,x4=0,g4=0,ue=0,P9=0,d9=0,Ie=0,Le=0,ze=0,N4=0,Me=0,U4=0,W4=0,we=0,Ze=0,z9=0,Ae=0,h4=0,b6=0,O4=0,R9=0,o4=0,b4=0,se=0,Z9=0,oe=0,$e=0,B4=0,j4=0,F4=0,ae=0,E9=0,a6=0,Te=0,$4=0,de=0,m4=0,a4=0,U6=0,ke=0,ve=0,We=0,l4=0,w4=0,g8=0,H3=0,Q9=0,C9=0,L4=0,X4=0,$7=0,Se=0,a7=0,p7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,Q7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ge=0,De=0,je=0,k8=0,y9=0,g7=0,Ee=0,h7=0,y7=0,j8=0,w7=0,ee=0,X8=0,P8=0,v8=0,Xe=0,P4=0,be=0,e8=0,u8=0,S8=0,le=0,W9=0,t8=0,I8=0,i8=0,d8=0,ce=0,Ce=0,Ne=0,Ue=0,j9=0,_e=0,ge=0,r8=0,Be=0,p4=0,E8=0,e7=0,H4=0,I3=0,Oe=0,C8=0,te=0,H9=0,ie=0,S9=0,Pe=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,A8=0,D8=0,q4=0,n7=0,b8=0,He=0,B9=0,A7=0,qe=0;for(qe=B,B=B+32480|0,H3=qe+32256|0,B9=qe+1792|0,Q9=qe,_=s<<2,S=_,L=B,B=B+((1*S|0)+15&-16)|0,i2=k9(68)|0,ne(B9|0,0,30464)|0,k3=$>0,n4=$<0,y9=0;;){for(se=y9<<2,ee=0;r5=ee+se|0,I5=(r5|0)<88,I5?(e5=1272+(r5<<2)|0,H5=+A[e5>>2],H9=H5):H9=-30,y3=r5+1|0,$3=(y3|0)<88,$3?(x6=1272+(y3<<2)|0,N6=+A[x6>>2],V6=H9>N6,V6?ie=N6:ie=H9):(r9=H9>-30,r9?ie=-30:ie=H9),y6=r5+2|0,F6=(y6|0)<88,F6?(L6=1272+(y6<<2)|0,X6=+A[L6>>2],A9=ie>X6,A9?S9=X6:S9=ie):(F3=ie>-30,F3?S9=-30:S9=ie),W6=r5+3|0,g9=(W6|0)<88,g9?(s9=1272+(W6<<2)|0,o9=+A[s9>>2],M9=S9>o9,M9?Pe=o9:Pe=S9):(h9=S9>-30,h9?Pe=-30:Pe=S9),E6=H3+(ee<<2)|0,A[E6>>2]=Pe,M6=ee+1|0,L8=(M6|0)==56,!L8;)ee=M6;if($4=(B9+(y9*1792|0)|0)+448|0,M=2792+(y9*1344|0)|0,r4($4|0,M|0,224)|0,H=(B9+(y9*1792|0)|0)+672|0,c0=(2792+(y9*1344|0)|0)+224|0,r4(H|0,c0|0,224)|0,E0=(B9+(y9*1792|0)|0)+896|0,p0=(2792+(y9*1344|0)|0)+448|0,r4(E0|0,p0|0,224)|0,r1=(B9+(y9*1792|0)|0)+1120|0,$1=(2792+(y9*1344|0)|0)+672|0,r4(r1|0,$1|0,224)|0,Q1=(B9+(y9*1792|0)|0)+1344|0,G1=(2792+(y9*1344|0)|0)+896|0,r4(Q1|0,G1|0,224)|0,l2=(B9+(y9*1792|0)|0)+1568|0,o2=(2792+(y9*1344|0)|0)+1120|0,r4(l2|0,o2|0,224)|0,G2=B9+(y9*1792|0)|0,r4(G2|0,M|0,224)|0,j2=(B9+(y9*1792|0)|0)+224|0,r4(j2|0,M|0,224)|0,k3)for(Xe=0;;){if(n4)for(I8=0;c4=16-I8|0,y7=(c4|0)>-1,i7=0-c4|0,G9=y7?c4:i7,V9=+(G9|0),v9=V9*c,I9=v9+$,H6=I9<0,I=H6?0:I9,t9=I>0,f=t9?0:I,E4=((B9+(y9*1792|0)|0)+(Xe*224|0)|0)+(I8<<2)|0,v4=+A[E4>>2],A4=v4+f,A[E4>>2]=A4,S4=I8+1|0,N8=(S4|0)==56,!N8;)I8=S4;else for(i8=0;c3=16-i8|0,j8=(c3|0)>-1,q8=0-c3|0,_6=j8?c3:q8,S6=+(_6|0),R6=S6*c,D6=R6+$,f9=D6<0,C=f9?0:D6,e9=((B9+(y9*1792|0)|0)+(Xe*224|0)|0)+(i8<<2)|0,T9=+A[e9>>2],u9=T9+C,A[e9>>2]=u9,d4=i8+1|0,G8=(d4|0)==56,!G8;)i8=d4;if(t3=Xe+1|0,y8=(t3|0)==8,y8)break;Xe=t3}else for(v8=0;;){if(n4)for(d8=0;Z4=16-d8|0,w7=(Z4|0)>-1,r7=0-Z4|0,C4=w7?Z4:r7,T4=+(C4|0),N9=T4*c,G4=N9+$,s4=G4>0,d=s4?0:G4,g4=((B9+(y9*1792|0)|0)+(v8*224|0)|0)+(d8<<2)|0,ue=+A[g4>>2],P9=ue+d,A[g4>>2]=P9,d9=d8+1|0,V8=(d9|0)==56,!V8;)d8=d9;else for(t8=0;Ie=16-t8|0,h7=(Ie|0)>-1,t7=0-Ie|0,Le=h7?Ie:t7,ze=+(Le|0),N4=ze*c,Me=N4+$,U4=((B9+(y9*1792|0)|0)+(v8*224|0)|0)+(t8<<2)|0,we=+A[U4>>2],Ze=we+Me,A[U4>>2]=Ze,z9=t8+1|0,M8=(z9|0)==56,!M8;)t8=z9;if(Ae=v8+1|0,z8=(Ae|0)==8,z8)break;v8=Ae}for(D4=t+(y9<<2)|0,R4=+A[D4>>2],M4=R4,P4=0;;){for(h4=(P4|0)<2,b6=+(P4|0),w=b6*10,y=70-w,O4=h4?50:y,R9=O4+M4,o4=R9,f8=0;b4=((B9+(y9*1792|0)|0)+(P4*224|0)|0)+(f8<<2)|0,Z9=+A[b4>>2],oe=Z9+o4,A[b4>>2]=oe,$e=f8+1|0,L4=($e|0)==56,!L4;)f8=$e;for(B4=Q9+(P4*224|0)|0,r4(B4|0,H3|0,224)|0,j4=+(P4|0),F4=j4*10,ae=70-F4,k8=0;;)if(E9=(Q9+(P4*224|0)|0)+(k8<<2)|0,a6=+A[E9>>2],Te=ae+a6,A[E9>>2]=Te,de=k8+1|0,a7=(de|0)==56,a7){je=0;break}else k8=de;for(;m4=((B9+(y9*1792|0)|0)+(P4*224|0)|0)+(je<<2)|0,a4=+A[m4>>2],U6=(Q9+(P4*224|0)|0)+(je<<2)|0,ke=+A[U6>>2],ve=a4>ke,ve&&(A[U6>>2]=a4),We=je+1|0,Se=(We|0)==56,!Se;)je=We;if(l4=P4+1|0,Q7=(l4|0)==8,Q7){be=1;break}else P4=l4}for(;;){for(w4=be+-1|0,De=0;;)if(g8=(Q9+(w4*224|0)|0)+(De<<2)|0,T=+A[g8>>2],G=(Q9+(be*224|0)|0)+(De<<2)|0,N=+A[G>>2],P=T>2]=T),z=De+1|0,$7=(z|0)==56,$7){Ge=0;break}else De=z;for(;Y=(Q9+(be*224|0)|0)+(Ge<<2)|0,t0=+A[Y>>2],J=((B9+(y9*1792|0)|0)+(be*224|0)|0)+(Ge<<2)|0,W=+A[J>>2],e0=t0>2]=t0),X=Ge+1|0,X4=(X|0)==56,!X4;)Ge=X;if(U=be+1|0,T8=(U|0)==8,T8)break;be=U}if(o0=y9+1|0,w8=(o0|0)==17,w8)break;y9=o0}for(p9=n,x4=(s|0)>0,W4=s^-1,Ee=0;;){for(Z=k9(32)|0,V=i2+(Ee<<2)|0,e[V>>2]=Z,s0=+(Ee|0),n0=s0*.5,i0=s0*.34657350182533264,r0=i0+4.135165354540845,K=+Fn(+r0),A0=K/p9,l0=+qo(+A0),j=~~l0,a0=+(j|0),g0=a0*n,f0=g0+1,Q0=f0,d0=+Or(+Q0),y0=d0*2.885390043258667,h0=y0+-11.931568145751953,C0=+KB(+h0),u0=~~C0,k0=j+1|0,J0=+(k0|0),D0=J0*n,m0=D0,x0=+Or(+m0),F0=x0*2.885390043258667,M0=F0+-11.931568145751953,G0=+qo(+M0),H0=~~G0,R0=(u0|0)>(Ee|0),g7=R0?Ee:u0,S0=(g7|0)<0,C8=S0?0:g7,L0=(H0|0)>16,p=L0?16:H0,Y0=(C8|0)>(p|0),q0=Ee+1|0,N0=(q0|0)<17,V0=n0+3.9657840728759766,te=0;;){if(T0=k9(232)|0,U0=Z+(te<<2)|0,e[U0>>2]=T0,x4)for(e8=0;P0=L+(e8<<2)|0,A[P0>>2]=999,e1=e8+1|0,C9=(e1|0)==(s|0),!C9;)e8=e1;if(!Y0)for(ce=C8;;){for(v0=+(ce|0),i1=v0*.5,u8=0,Ce=0;;){if(g1=+(u8|0),l1=g1*.125,A1=l1+i1,n1=A1+3.9032840728759766,s1=n1*.6931470036506653,z0=+Fn(+s1),I1=z0/p9,h1=~~I1,E1=A1+4.028284072875977,u1=E1*.6931470036506653,d1=+Fn(+u1),m1=d1/p9,p1=m1+1,D1=~~p1,_1=(h1|0)<0,m=_1?0:h1,y1=(m|0)>(s|0),e7=y1?s:m,k1=(e7|0)<(Ce|0),H4=k1?e7:Ce,x1=(D1|0)<0,Z8=x1?0:D1,L1=(Z8|0)>(s|0),H8=L1?s:Z8,N1=(H4|0)<(H8|0),w1=(H4|0)<(s|0),Y8=N1&w1,Y8)for(U1=((B9+(ce*1792|0)|0)+(te*224|0)|0)+(u8<<2)|0,Z1=+A[U1>>2],v1=(Ce|0)<(s|0),K1=v1?Ce:s,P1=K1^-1,H1=(h1|0)>0,b=h1^-1,q1=H1?b:-1,Y1=(q1|0)<(P1|0),q4=Y1?P1:q1,j1=q4^-1,r2=(D1|0)>0,x=D1^-1,W1=r2?x:-1,O1=(W1|0)<(W4|0),n7=O1?W4:W1,z1=n7-q4|0,h2=q4+s|0,A2=h2^-1,d2=z1>>>0>A2>>>0,b8=d2?z1:A2,s2=j1-b8|0,j9=H4;;)if(V1=L+(j9<<2)|0,g2=+A[V1>>2],$2=g2>Z1,$2&&(A[V1>>2]=Z1),t2=j9+1|0,h8=(t2|0)==(s2|0),h8){Ne=s2;break}else j9=t2;else Ne=H4;if(a2=u8+1|0,U8=(a2|0)==56,U8){Ue=Ne;break}else u8=a2,Ce=Ne}if(c1=(Ue|0)<(s|0),c1)for(a1=((B9+(ce*1792|0)|0)+(te*224|0)|0)+220|0,f1=+A[a1>>2],_e=Ue;X1=L+(_e<<2)|0,n2=+A[X1>>2],f2=n2>f1,f2&&(A[X1>>2]=f1),e2=_e+1|0,O8=(e2|0)==(s|0),!O8;)_e=e2;if(y2=ce+1|0,S2=(ce|0)<(p|0),S2)ce=y2;else break}if(N0){for(S8=0,ge=0;;){if(N2=+(S8|0),q2=N2*.125,T2=q2+n0,O2=T2+3.9032840728759766,V2=O2*.6931470036506653,A5=+Fn(+V2),P2=A5/p9,T1=~~P2,R5=T2+4.028284072875977,X2=R5*.6931470036506653,v5=+Fn(+X2),z2=v5/p9,f5=z2+1,w5=~~f5,O5=(T1|0)<0,v=O5?0:T1,a5=(v|0)>(s|0),I3=a5?s:v,k2=(I3|0)<(ge|0),Oe=k2?I3:ge,E5=(w5|0)<0,W8=E5?0:w5,x2=(W8|0)>(s|0),f7=x2?s:W8,R2=(Oe|0)<(f7|0),B2=(Oe|0)<(s|0),n8=R2&B2,n8)for(C5=((B9+(q0*1792|0)|0)+(te*224|0)|0)+(S8<<2)|0,x5=+A[C5>>2],u5=(ge|0)<(s|0),S5=u5?ge:s,G5=S5^-1,D5=(T1|0)>0,D=T1^-1,H2=D5?D:-1,s5=(H2|0)<(G5|0),A8=s5?G5:H2,l5=A8^-1,B5=(w5|0)>0,Q=w5^-1,M1=B5?Q:-1,k5=(M1|0)<(W4|0),D8=k5?W4:M1,c5=D8-A8|0,o5=A8+s|0,Z2=o5^-1,c2=c5>>>0>Z2>>>0,He=c2?c5:Z2,m5=l5-He|0,p4=Oe;;)if(n5=L+(p4<<2)|0,g5=+A[n5>>2],Y2=g5>x5,Y2&&(A[n5>>2]=x5),h5=p4+1|0,p7=(h5|0)==(m5|0),p7){r8=m5;break}else p4=h5;else r8=Oe;if(t5=S8+1|0,K8=(t5|0)==56,K8){Be=r8;break}else S8=t5,ge=r8}if(_2=(Be|0)<(s|0),_2)for(u2=((B9+(q0*1792|0)|0)+(te*224|0)|0)+220|0,K2=+A[u2>>2],E8=Be;b5=L+(E8<<2)|0,W2=+A[b5>>2],$5=W2>K2,$5&&(A[b5>>2]=K2),F2=E8+1|0,l7=(F2|0)==(s|0),!l7;)E8=F2}for(w2=Z+(te<<2)|0,C2=Z+(te<<2)|0,M2=Z+(te<<2)|0,le=0;;){f3=+(le|0),g3=f3*.125,J5=V0+g3,e3=J5*.6931470036506653,A3=+Fn(+e3),E3=A3/p9,F5=~~E3,K5=(F5|0)<0;do if(K5)h3=le+2|0,B3=e[w2>>2]|0,q3=B3+(h3<<2)|0,A[q3>>2]=-999;else if(M3=(F5|0)<(s|0),M3){j3=L+(F5<<2)|0,_3=e[j3>>2]|0,T3=le+2|0,a3=e[C2>>2]|0,l3=a3+(T3<<2)|0,e[l3>>2]=_3;break}else{z5=le+2|0,Q3=e[M2>>2]|0,W5=Q3+(z5<<2)|0,A[W5>>2]=-999;break}while(!1);if(C3=le+1|0,c7=(C3|0)==56,c7)break;le=C3}p5=T0+8|0,X5=+A[p5>>2],d5=X5>-200;do if(d5)W9=0;else if(q5=T0+12|0,N5=+A[q5>>2],P5=N5>-200,P5)W9=1;else if(p3=T0+16|0,X3=+A[p3>>2],V3=X3>-200,V3)W9=2;else if(N3=T0+20|0,V5=+A[N3>>2],U3=V5>-200,U3)W9=3;else if(o6=T0+24|0,u3=+A[o6>>2],w6=u3>-200,w6)W9=4;else if(k6=T0+28|0,v6=+A[k6>>2],m6=v6>-200,m6)W9=5;else if(z3=T0+32|0,$6=+A[z3>>2],p6=$6>-200,p6)W9=6;else if(Y6=T0+36|0,B6=+A[Y6>>2],v3=B6>-200,v3)W9=7;else if(Z3=T0+40|0,W3=+A[Z3>>2],u6=W3>-200,u6)W9=8;else if(O3=T0+44|0,S3=+A[O3>>2],P3=S3>-200,P3)W9=9;else if(Y3=T0+48|0,i6=+A[Y3>>2],i3=i6>-200,i3)W9=10;else if(P6=T0+52|0,s3=+A[P6>>2],r6=s3>-200,r6)W9=11;else if(I6=T0+56|0,D3=+A[I6>>2],T6=D3>-200,T6)W9=12;else if(e6=T0+60|0,Q6=+A[e6>>2],K6=Q6>-200,K6)W9=13;else{if(d6=T0+64|0,J6=+A[d6>>2],x3=J6>-200,x3){W9=14;break}if(Z6=T0+68|0,G6=+A[Z6>>2],j6=G6>-200,j6){W9=15;break}W9=16}while(!1);for(A[T0>>2]=W9,P8=55;;){if(y5=P8+2|0,G3=T0+(y5<<2)|0,L5=+A[G3>>2],t6=L5>-200,t6){X8=P8;break}if(o3=P8+-1|0,R3=(o3|0)>17,R3)P8=o3;else{X8=o3;break}}if(f6=+(X8|0),m3=T0+4|0,A[m3>>2]=f6,w3=te+1|0,x8=(w3|0)==8,x8)break;te=w3}if(F8=(q0|0)==17,F8)break;Ee=q0}return B=qe,i2|0}function rQ(t,n,s,$,c,f){t=t|0,n=n|0,s=s|0,$=$|0,c=+c,f=f|0;var d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,V5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,m6=0,z3=0,$6=0,p6=0,_6=0,Y6=0,B6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,s3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,A4=0,p9=0,S4=0,D4=0;if(D4=B,w=t<<2,d=w,y=B,B=B+((1*d|0)+15&-16)|0,I=w,s2=B,B=B+((1*I|0)+15&-16)|0,C=w,W2=B,B=B+((1*C|0)+15&-16)|0,p=w,A3=B,B=B+((1*p|0)+15&-16)|0,m=w,W5=B,B=B+((1*m|0)+15&-16)|0,y5=+A[s>>2],X3=y5+c,v6=X3<1,A4=v6?1:X3,u6=A4*A4,D=u6*.5,z=D*A4,A[y>>2]=D,A[s2>>2]=D,A[W2>>2]=0,A[A3>>2]=z,A[W5>>2]=0,V=(t|0)>1,V)for(F3=1,E6=D,M6=D,e9=0,T9=0,u9=z,d4=1;c1=s+(F3<<2)|0,h1=+A[c1>>2],x1=h1+c,q1=x1<1,p9=q1?1:x1,V1=p9*p9,y2=V1+E6,T2=V1*d4,f5=T2+M6,x5=T2*d4,k5=x5+e9,Y2=V1*p9,h5=Y2+u9,t5=T2*p9,b5=t5+T9,$5=y+(F3<<2)|0,A[$5>>2]=y2,F2=s2+(F3<<2)|0,A[F2>>2]=f5,p5=W2+(F3<<2)|0,A[p5>>2]=k5,H5=A3+(F3<<2)|0,A[H5>>2]=h5,X5=W5+(F3<<2)|0,A[X5>>2]=b5,d5=F3+1|0,f3=d4+1,F6=(d5|0)==(t|0),!F6;)F3=d5,E6=y2,M6=f5,e9=k5,T9=b5,u9=h5,d4=f3;if(g0=e[n>>2]|0,D0=g0>>16,Y0=(D0|0)>-1,Y0)J5=g0,I6=0,Q6=0,J6=1,L6=0,n4=0;else for(F5=g0,B3=D0,X6=0,c4=0;;)if(E3=F5&65535,K5=y+(E3<<2)|0,y3=+A[K5>>2],h3=0-B3|0,q3=y+(h3<<2)|0,M3=+A[q3>>2],z5=M3+y3,Q3=s2+(E3<<2)|0,j3=+A[Q3>>2],_3=s2+(h3<<2)|0,T3=+A[_3>>2],$3=j3-T3,a3=W2+(E3<<2)|0,l3=+A[a3>>2],C3=W2+(h3<<2)|0,q5=+A[C3>>2],N5=q5+l3,P5=A3+(E3<<2)|0,G3=+A[P5>>2],L5=A3+(h3<<2)|0,t6=+A[L5>>2],t3=t6+G3,o3=W5+(E3<<2)|0,R3=+A[o3>>2],f6=W5+(h3<<2)|0,m3=+A[f6>>2],w3=R3-m3,p3=t3*N5,V3=w3*$3,N3=p3-V3,V5=w3*z5,k3=t3*$3,c3=V5-k3,U3=N5*z5,o6=$3*$3,u3=U3-o6,w6=c3*c4,k6=w6+N3,m6=k6/u3,z3=m6<0,j6=z3?0:m6,$6=j6-c,p6=$+(X6<<2)|0,A[p6>>2]=$6,_6=X6+1|0,Y6=c4+1,B6=n+(_6<<2)|0,v3=e[B6>>2]|0,Z3=v3>>16,W3=(Z3|0)>-1,W3){J5=v3,I6=N3,Q6=c3,J6=u3,L6=_6,n4=Y6;break}else F5=v3,B3=Z3,X6=_6,c4=Y6;if(g3=J5&65535,e3=(g3|0)<(t|0),e3)for(v=J5,Y3=g3,W6=L6,V9=n4;;)if(S3=v>>16,P3=y+(Y3<<2)|0,S6=+A[P3>>2],i6=y+(S3<<2)|0,i3=+A[i6>>2],P6=S6-i3,s3=s2+(Y3<<2)|0,r6=+A[s3>>2],Q=s2+(S3<<2)|0,b=+A[Q>>2],x=r6-b,_=W2+(Y3<<2)|0,L=+A[_>>2],M=W2+(S3<<2)|0,T=+A[M>>2],G=L-T,N=A3+(Y3<<2)|0,P=+A[N>>2],Y=A3+(S3<<2)|0,t0=+A[Y>>2],J=P-t0,W=W5+(Y3<<2)|0,e0=+A[W>>2],H=W5+(S3<<2)|0,X=+A[H>>2],U=e0-X,o0=J*G,Z=U*x,s0=o0-Z,n0=U*P6,i0=J*x,r0=n0-i0,K=G*P6,c0=x*x,A0=K-c0,l0=r0*V9,j=l0+s0,a0=j/A0,f0=a0<0,r9=f0?0:a0,Q0=r9-c,d0=$+(W6<<2)|0,A[d0>>2]=Q0,y0=W6+1|0,h0=V9+1,E0=n+(y0<<2)|0,C0=e[E0>>2]|0,u0=C0&65535,k0=(u0|0)<(t|0),k0)v=C0,Y3=u0,W6=y0,V9=h0;else{D3=s0,R6=r0,x3=A0,A9=y0,G9=h0;break}else D3=I6,R6=Q6,x3=J6,A9=L6,G9=n4;if(O3=(A9|0)<(t|0),O3)for(g9=A9,v9=G9;J0=v9*R6,m0=J0+D3,x0=m0/x3,F0=x0<0,x6=F0?0:x0,M0=x6-c,G0=$+(g9<<2)|0,A[G0>>2]=M0,p0=g9+1|0,H0=v9+1,y6=(p0|0)==(t|0),!y6;)g9=p0,v9=H0;if(R0=(f|0)<1,R0){B=D4;return}if(S0=(f|0)/2&-1,L0=S0-f|0,q0=(L0|0)>-1,q0)T6=D3,K6=R6,Z6=x3,h9=0,I9=0;else for(N0=f-S0|0,P0=S0,i1=L0,f9=0,H6=0;;)if(r1=y+(P0<<2)|0,e1=+A[r1>>2],v0=0-i1|0,a1=y+(v0<<2)|0,f1=+A[a1>>2],g1=f1+e1,l1=s2+(P0<<2)|0,A1=+A[l1>>2],$1=s2+(v0<<2)|0,n1=+A[$1>>2],s1=A1-n1,z0=W2+(P0<<2)|0,I1=+A[z0>>2],E1=W2+(v0<<2)|0,u1=+A[E1>>2],d1=u1+I1,m1=A3+(P0<<2)|0,p1=+A[m1>>2],Q1=A3+(v0<<2)|0,D1=+A[Q1>>2],_1=D1+p1,y1=W5+(P0<<2)|0,k1=+A[y1>>2],L1=W5+(v0<<2)|0,N1=+A[L1>>2],w1=k1-N1,U1=_1*d1,Z1=w1*s1,G1=U1-Z1,v1=w1*g1,K1=_1*s1,P1=v1-K1,H1=d1*g1,Y1=s1*s1,j1=H1-Y1,r2=P1*H6,W1=r2+G1,O1=W1/j1,l2=O1-c,z1=$+(f9<<2)|0,h2=+A[z1>>2],A2=l2>2]=l2),d2=f9+1|0,g2=H6+1,$2=S0+d2|0,t2=$2-f|0,V6=(d2|0)==(N0|0),V6){T6=G1,K6=P1,Z6=j1,h9=N0,I9=g2;break}else P0=$2,i1=t2,f9=d2,H6=g2;if(V0=h9+S0|0,T0=(V0|0)<(t|0),T0)for(U0=t-S0|0,S=V0,o9=h9,E4=I9;;)if(i2=S-f|0,o2=y+(S<<2)|0,X1=+A[o2>>2],n2=y+(i2<<2)|0,f2=+A[n2>>2],e2=X1-f2,S2=s2+(S<<2)|0,w2=+A[S2>>2],C2=s2+(i2<<2)|0,M2=+A[C2>>2],_2=w2-M2,G2=W2+(S<<2)|0,u2=+A[G2>>2],K2=W2+(i2<<2)|0,N2=+A[K2>>2],q2=u2-N2,O2=A3+(S<<2)|0,V2=+A[O2>>2],A5=A3+(i2<<2)|0,P2=+A[A5>>2],T1=V2-P2,j2=W5+(S<<2)|0,R5=+A[j2>>2],X2=W5+(i2<<2)|0,v5=+A[X2>>2],z2=R5-v5,w5=T1*q2,O5=z2*_2,a5=w5-O5,k2=z2*e2,E5=T1*_2,r5=k2-E5,x2=q2*e2,R2=_2*_2,B2=x2-R2,C5=r5*E4,u5=C5+a5,S5=u5/B2,G5=S5-c,D5=$+(o9<<2)|0,H2=+A[D5>>2],I5=G5>2]=G5),s5=o9+1|0,l5=E4+1,B5=s5+S0|0,D6=(s5|0)==(U0|0),D6){e6=a5,d6=r5,G6=B2,s9=U0,t9=l5;break}else S=B5,o9=s5,E4=l5;else e6=T6,d6=K6,G6=Z6,s9=h9,t9=I9;if(a2=(s9|0)<(t|0),a2)M9=s9,v4=t9;else{B=D4;return}for(;M1=v4*d6,c5=M1+e6,o5=c5/G6,Z2=o5-c,c2=$+(M9<<2)|0,m5=+A[c2>>2],e5=Z2>2]=Z2),n5=M9+1|0,g5=v4+1,N6=(n5|0)==(t|0),!N6;)M9=n5,v4=g5;B=D4}function ES(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0;if(c1=B,f=s<<2,$=f,d=B,B=B+((1*$|0)+15&-16)|0,c=f,b=B,B=B+((1*c|0)+15&-16)|0,t0=(s|0)>0,t0)p0=0,N0=0;else{B=c1;return}for(;;){k0=(N0|0)<2;do if(k0)m0=d+(N0<<2)|0,e[m0>>2]=p0,I=t+(p0<<2)|0,C=e[I>>2]|0,p=b+(N0<<2)|0,e[p>>2]=C,P0=N0;else{for(J0=t+(p0<<2)|0,D0=+A[J0>>2],V0=N0;;){if(m=V0+-1|0,v=b+(m<<2)|0,S=+A[v>>2],w=D0>2]|0,_=x+n|0,L=(p0|0)<(_|0),M=(V0|0)>1,S0=M&L,!S0){U0=V0,i1=12;break}if(T=V0+-2|0,G=b+(T<<2)|0,N=+A[G>>2],P=!(S<=N),P){U0=V0,i1=12;break}if(z=d+(T<<2)|0,Y=e[z>>2]|0,J=Y+n|0,W=(p0|0)<(J|0),W)V0=m;else{U0=V0,i1=12;break}}if((i1|0)==8){i1=0,y=d+(T0<<2)|0,e[y>>2]=p0,D=b+(T0<<2)|0,A[D>>2]=D0,P0=T0;break}else if((i1|0)==12){i1=0,e0=d+(U0<<2)|0,e[e0>>2]=p0,H=b+(U0<<2)|0,A[H>>2]=D0,P0=U0;break}}while(!1);if(r1=P0+1|0,X=p0+1|0,G0=(X|0)==(s|0),G0){e1=P0,v0=r1;break}else p0=X,N0=r1}if(n0=(e1|0)>-1,!n0){B=c1;return}for(Q0=n+1|0,H0=0,L0=0;;){if(U=(H0|0)<(e1|0),U?(o0=H0+1|0,Z=b+(o0<<2)|0,V=+A[Z>>2],s0=b+(H0<<2)|0,i0=+A[s0>>2],r0=V>i0,r0?(K=d+(o0<<2)|0,c0=e[K>>2]|0,x0=c0):i1=17):i1=17,(i1|0)==17&&(i1=0,A0=d+(H0<<2)|0,l0=e[A0>>2]|0,j=Q0+l0|0,x0=j),a0=(x0|0)>(s|0),R0=a0?s:x0,g0=(L0|0)<(R0|0),g0)for(f0=b+(H0<<2)|0,d0=e[f0>>2]|0,y0=(x0|0)<(s|0),h0=y0?x0:s,q0=L0;;)if(E0=t+(q0<<2)|0,e[E0>>2]=d0,C0=q0+1|0,F0=(C0|0)==(h0|0),F0){Y0=h0;break}else q0=C0;else Y0=L0;if(u0=H0+1|0,M0=(u0|0)==(v0|0),M0)break;H0=u0,L0=Y0}B=c1}function nQ(t,n,s,$,c,f,d,I,C){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0,I=I|0,C=C|0;var p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0;if(l2=B,_=I<<2,D=_,L=B,B=B+((1*D|0)+15&-16)|0,e0=t+500|0,K=e[e0>>2]|0,h0=(K|0)==0,h0?p1=I:(G0=t+504|0,U0=e[G0>>2]|0,A1=U0-d|0,p1=A1),L1=(p1|0)>(I|0),Y1=L1?I:p1,M=(Y1|0)>0,M)for(T=(f|0)==0,G=(p1|0)<(I|0),N=G?p1:I,P1=0;;){T?O1=9:(t0=f+(P1<<2)|0,J=e[t0>>2]|0,W=(J|0)==0,W&&(O1=9));do if((O1|0)==9)if(O1=0,H=$+(P1<<2)|0,X=+A[H>>2],U=c+(P1<<2)|0,o0=+A[U>>2],Z=X/o0,V=s+(P1<<2)|0,s0=+A[V>>2],n0=s0<0,i0=Z,r0=+Rn(+i0),c0=+Ti(r0),n0){A0=-c0,l0=~~A0,j=C+(P1<<2)|0,e[j>>2]=l0;break}else{a0=~~c0,g0=C+(P1<<2)|0,e[g0>>2]=a0;break}while(!1);if(f0=P1+1|0,v1=(f0|0)==(N|0),v1){K1=N;break}else P1=f0}else K1=0;if(P=(K1|0)<(I|0),!P)return y=0,B=l2,+y;for(z=(f|0)!=0,Y=n-d|0,p=0,N1=0,H1=K1;;){z?(Q0=f+(H1<<2)|0,d0=e[Q0>>2]|0,y0=(d0|0)==0,y0?O1=15:(m=p,w1=N1)):O1=15;do if((O1|0)==15)if(O1=0,E0=$+(H1<<2)|0,C0=+A[E0>>2],u0=c+(H1<<2)|0,k0=+A[u0>>2],J0=C0/k0,D0=!(J0<.25),m0=(H1|0)<(Y|0),j1=z&m0,r2=D0|j1,r2){p0=s+(H1<<2)|0,H0=+A[p0>>2],R0=H0<0,S0=J0,L0=+Rn(+S0),Y0=+Ti(L0),q0=-Y0,b=R0?q0:Y0,Q=~~b,N0=C+(H1<<2)|0,e[N0>>2]=Q,V0=i5(Q,Q)|0,T0=+(V0|0),r1=+A[u0>>2],P0=T0*r1,A[E0>>2]=P0,m=p,w1=N1;break}else{x0=J0+p,F0=N1+1|0,M0=L+(N1<<2)|0,e[M0>>2]=E0,m=x0,w1=F0;break}while(!1);if(e1=H1+1|0,G1=(e1|0)==(I|0),G1){v=m,U1=w1;break}else p=m,N1=w1,H1=e1}if(v0=(U1|0)==0,v0||(_h(L,U1,4,9),i1=(U1|0)>0,!i1))return y=v,B=l2,+y;for(c1=$,a1=t+512|0,f1=+o1[a1>>3],S=v,q1=0;;)if(g1=L+(q1<<2)|0,l1=e[g1>>2]|0,$1=l1,n1=$1-c1|0,s1=n1>>2,z0=S,I1=!(z0>=f1),I1?(w=S,x=0,W1=0):(h1=s+(s1<<2)|0,E1=e[h1>>2]|0,u1=E1&-2147483648,d1=u1|1065353216,m1=(e[p2>>2]=d1,+A[p2>>2]),Q1=~~m1,D1=S+-1,_1=c+(s1<<2)|0,y1=+A[_1>>2],w=D1,x=Q1,W1=y1),k1=C+(s1<<2)|0,e[k1>>2]=x,A[l1>>2]=W1,x1=q1+1|0,Z1=(x1|0)==(U1|0),Z1){y=w;break}else S=w,q1=x1;return B=l2,+y}function CS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0;return S=B,s=e[t>>2]|0,$=+A[s>>2],c=e[n>>2]|0,f=+A[c>>2],d=$f,p=C&1,m=I-p|0,m|0}function BS(t){t=t|0;var n=0,s=0,$=0;$=B,n=(t|0)==0,n||I2(t)}function mS(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0;if(W=B,s=(t|0)==0,!s){if($=t+4|0,y=e[$>>2]|0,L=(y|0)>0,M=t+20|0,L)for(_=y,Y=0;T=e[M>>2]|0,G=T+(Y<<2)|0,N=e[G>>2]|0,P=(N|0)==0,P?f=_:(I2(N),n=e[$>>2]|0,f=n),z=Y+1|0,c=(z|0)<(f|0),c;)_=f,Y=z;if(d=e[M>>2]|0,I2(d),I=t+24|0,C=e[I>>2]|0,p=(C|0)>0,m=t+28|0,p)for(t0=0;v=e[m>>2]|0,S=v+(t0<<2)|0,w=e[S>>2]|0,I2(w),D=t0+1|0,Q=e[I>>2]|0,b=(D|0)<(Q|0),b;)t0=D;x=e[m>>2]|0,I2(x),I2(t)}}function pS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0;if(a0=B,c=e[t>>2]|0,U2(n,c,24),f=t+4|0,Q=e[f>>2]|0,U2(n,Q,24),Y=t+8|0,U=e[Y>>2]|0,o0=U+-1|0,U2(n,o0,24),Z=t+12|0,V=e[Z>>2]|0,s0=V+-1|0,U2(n,s0,6),n0=t+20|0,d=e[n0>>2]|0,U2(n,d,8),I=e[Z>>2]|0,C=(I|0)>0,!!C){for(p=t+24|0,i0=0,K=0;;){if(S=p+(K<<2)|0,w=e[S>>2]|0,y=F7(w)|0,D=(y|0)>3,b=e[S>>2]|0,D?(U2(n,b,3),U2(n,1,1),x=e[S>>2]|0,_=x>>3,U2(n,_,5)):U2(n,b,4),L=e[S>>2]|0,M=(L|0)==0,M)A0=0;else for(s=L,l0=0;;)if(T=s&1,G=T+l0|0,N=s>>>1,P=(N|0)==0,P){A0=G;break}else s=N,l0=G;if(z=A0+i0|0,t0=K+1|0,J=e[Z>>2]|0,W=(t0|0)<(J|0),W)i0=z,K=t0;else{$=z;break}}if(m=($|0)>0,!!m)for(v=t+280|0,c0=0;e0=v+(c0<<2)|0,H=e[e0>>2]|0,U2(n,H,8),X=c0+1|0,r0=(X|0)==($|0),!r0;)c0=X}}function QS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0;n1=B,d=i4(1,2840)|0,I=t+28|0,x=e[I>>2]|0,J=z4(n,24)|0,e[d>>2]=J,i0=z4(n,24)|0,d0=d+4|0,e[d0>>2]=i0,F0=z4(n,24)|0,V0=F0+1|0,U0=d+8|0,e[U0>>2]=V0,r1=z4(n,6)|0,C=r1+1|0,p=d+12|0,e[p>>2]=C,m=z4(n,8)|0,v=d+20|0,e[v>>2]=m,S=(m|0)<0;e:do if(S)$1=26;else{if(w=(r1|0)>-1,w){for(y=d+24|0,e1=0,c1=0;;){if(b=z4(n,3)|0,_=z4(n,1)|0,L=(_|0)<0,L){$1=26;break e}if(M=(_|0)==0,M)v0=b;else{if(T=z4(n,5)|0,G=(T|0)<0,G){$1=26;break e}N=T<<3,P=N|b,v0=P}if(z=y+(c1<<2)|0,e[z>>2]=v0,Y=(v0|0)==0,Y)l1=0;else for($=v0,A1=0;;)if(t0=$&1,W=t0+A1|0,e0=$>>>1,H=(e0|0)==0,H){l1=W;break}else $=e0,A1=W;if(X=l1+e1|0,U=c1+1|0,o0=e[p>>2]|0,Z=(U|0)<(o0|0),Z)e1=X,c1=U;else{f=X;break}}if(D=(f|0)>0,D)for(Q=d+280|0,a1=0;;){if(V=z4(n,8)|0,s0=(V|0)<0,s0)break e;if(n0=Q+(a1<<2)|0,e[n0>>2]=V,r0=a1+1|0,K=(r0|0)<(f|0),K)a1=r0;else{T0=D,P0=f;break}}else T0=0,P0=f}else T0=0,P0=0;if(c0=e[v>>2]|0,A0=x+24|0,l0=e[A0>>2]|0,j=(c0|0)<(l0|0),j){if(T0)for(a0=d+280|0,f1=0;;){if(Q0=a0+(f1<<2)|0,y0=e[Q0>>2]|0,h0=(y0|0)<(l0|0),!h0||(E0=(x+1824|0)+(y0<<2)|0,C0=e[E0>>2]|0,u0=C0+12|0,k0=e[u0>>2]|0,J0=(k0|0)==0,g0=f1+1|0,J0))break e;if(f0=(g0|0)<(P0|0),f0)f1=g0;else break}if(D0=(x+1824|0)+(c0<<2)|0,m0=e[D0>>2]|0,x0=m0+4|0,M0=e[x0>>2]|0,G0=e[m0>>2]|0,p0=(G0|0)<1,!p0){for(H0=e[p>>2]|0,i1=G0,g1=1;;){if(L0=i5(H0,g1)|0,Y0=(L0|0)>(M0|0),Y0)break e;if(R0=i1+-1|0,S0=(i1|0)>1,S0)i1=R0,g1=L0;else{c=L0;break}}return q0=d+16|0,e[q0>>2]=c,s=d,s|0}}}while(!1);return($1|0)==26&&(N0=(d|0)==0,N0)?(s=0,s|0):(I2(d),s=0,s|0)}function yS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0;if(p1=B,f=i4(1,44)|0,d=t+4|0,b=e[d>>2]|0,t0=b+28|0,n0=e[t0>>2]|0,e[f>>2]=n,Q0=n+12|0,x0=e[Q0>>2]|0,N0=f+4|0,e[N0>>2]=x0,r1=n0+2848|0,P0=e[r1>>2]|0,I=f+12|0,e[I>>2]=P0,C=P0,p=n+20|0,m=e[p>>2]|0,v=C+(m*56|0)|0,S=f+16|0,e[S>>2]=v,w=e[v>>2]|0,y=i4(x0,4)|0,D=f+20|0,e[D>>2]=y,Q=(x0|0)>0,Q)for(x=n+24|0,_=n+280|0,e1=0,l1=0,h1=0;;){if(L=x+(l1<<2)|0,M=e[L>>2]|0,T=F7(M)|0,G=(T|0)==0,G)c1=e1,E1=h1;else if(N=(T|0)>(h1|0),$=N?T:h1,P=i4(T,4)|0,z=y+(l1<<2)|0,e[z>>2]=P,Y=(T|0)>0,Y)for(J=e[L>>2]|0,W=y+(l1<<2)|0,v0=e1,s1=0;;)if(e0=1<>2]|0,o0=v0+1|0,Z=_+(v0<<2)|0,V=e[Z>>2]|0,s0=U+(V*56|0)|0,i0=e[W>>2]|0,r0=i0+(s1<<2)|0,e[r0>>2]=s0,i1=o0),K=s1+1|0,f1=(K|0)==(T|0),f1){c1=i1,E1=$;break}else v0=i1,s1=K;else c1=e1,E1=$;if(c0=l1+1|0,A0=(c0|0)<(x0|0),A0)e1=c1,l1=c0,h1=E1;else{I1=E1;break}}else I1=0;if(l0=f+24|0,e[l0>>2]=1,j=(w|0)>0,j){for(g0=1,A1=0;;)if(a0=i5(g0,x0)|0,f0=A1+1|0,a1=(f0|0)==(w|0),a1){s=a0;break}else g0=a0,A1=f0;e[l0>>2]=s,h0=s}else h0=1;if(d0=f+8|0,e[d0>>2]=I1,y0=h0<<2,E0=k9(y0)|0,C0=f+28|0,e[C0>>2]=E0,u0=(h0|0)>0,!u0)return f|0;if(k0=w<<2,!j){for($1=0;q0=k9(k0)|0,V0=E0+($1<<2)|0,e[V0>>2]=q0,T0=$1+1|0,U0=(T0|0)<(h0|0),U0;)$1=T0;return f|0}for(J0=e[C0>>2]|0,n1=0;;){for(S0=k9(k0)|0,L0=E0+(n1<<2)|0,e[L0>>2]=S0,Y0=J0+(n1<<2)|0,H0=e[Y0>>2]|0,c=h0,z0=0,d1=n1;u1=(c|0)/(x0|0)&-1,F0=(d1|0)/(u1|0)&-1,M0=i5(F0,u1)|0,G0=d1-M0|0,p0=H0+(z0<<2)|0,e[p0>>2]=F0,R0=z0+1|0,g1=(R0|0)==(w|0),!g1;)c=u1,z0=R0,d1=G0;if(D0=n1+1|0,m0=(D0|0)<(h0|0),m0)n1=D0;else break}return f|0}function wS(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0;if(M=B,f=(c|0)>0,f)Q=0,b=0;else return 0;for(;;)if(d=$+(Q<<2)|0,I=e[d>>2]|0,C=(I|0)==0,C?x=b:(p=s+(Q<<2)|0,m=e[p>>2]|0,v=b+1|0,S=s+(b<<2)|0,e[S>>2]=m,x=v),w=Q+1|0,D=(w|0)==(c|0),D){_=x;break}else Q=w,b=x;return y=(_|0)==0,y||AQ(t,n,s,_,2),0}function kS(t,n,s,$,c,f,d,I){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0,I=I|0;var C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0;if(N=B,C=(f|0)>0,C)_=0,L=0;else return 0;for(;;)if(p=c+(_<<2)|0,m=e[p>>2]|0,v=(m|0)==0,v?M=L:(S=$+(_<<2)|0,w=e[S>>2]|0,y=L+1|0,D=$+(L<<2)|0,e[D>>2]=w,M=y),Q=_+1|0,x=(Q|0)==(f|0),x){T=M;break}else _=Q,L=M;return b=(T|0)==0,b||sQ(t,s,$,T,d),0}function vS(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0;if(m1=B,I=(c|0)>0,I)i1=0,h1=0;else return f=0,f|0;for(;;)if(C=$+(i1<<2)|0,_=e[C>>2]|0,W=(_|0)==0,W?E1=h1:(r0=s+(i1<<2)|0,y0=e[r0>>2]|0,M0=h1+1|0,Y0=s+(h1<<2)|0,e[Y0>>2]=y0,E1=M0),q0=i1+1|0,U0=(q0|0)==(c|0),U0){u1=E1;break}else i1=q0,h1=E1;if(N0=(u1|0)==0,N0)return f=0,f|0;if(p=e[n>>2]|0,m=p+8|0,v=e[m>>2]|0,S=p+12|0,w=e[S>>2]|0,y=p+4|0,D=e[y>>2]|0,Q=e[p>>2]|0,b=D-Q|0,x=(b|0)/(v|0)&-1,L=u1<<2,M=U7(t,L)|0,T=+(v|0),G=100/T,N=G,P=(u1|0)>0,P)for(z=x<<2,c1=0;H=U7(t,z)|0,X=M+(c1<<2)|0,e[X>>2]=H,ne(H|0,0,z|0)|0,U=c1+1|0,v0=(U|0)==(u1|0),!v0;)c1=U;if(Y=(x|0)>0,Y)for(t0=(v|0)>0,J=w+-1|0,e0=(w|0)>1,a1=0;;){if(o0=i5(a1,v)|0,Z=e[p>>2]|0,V=Z+o0|0,P)for(g1=0;;){if(t0)for(s0=s+(g1<<2)|0,n0=e[s0>>2]|0,T0=0,l1=0,s1=0;;)if(i0=V+l1|0,K=n0+(i0<<2)|0,c0=e[K>>2]|0,f1=(c0|0)>-1,z0=0-c0|0,A0=f1?c0:z0,l0=(A0|0)>(s1|0),d=l0?A0:s1,j=A0+T0|0,a0=l1+1|0,r1=(a0|0)==(v|0),r1){V0=j,n1=d;break}else T0=j,l1=a0,s1=d;else V0=0,n1=0;g0=+(V0|0),f0=g0*N,Q0=~~f0;e:do if(e0)for($1=0;;){if(d0=(p+2328|0)+($1<<2)|0,h0=e[d0>>2]|0,E0=(n1|0)>(h0|0),!E0&&(C0=(p+2584|0)+($1<<2)|0,u0=e[C0>>2]|0,k0=(u0|0)<0,J0=(Q0|0)<(u0|0),I1=k0|J0,I1)){A1=$1;break e}if(D0=$1+1|0,m0=(D0|0)<(J|0),m0)$1=D0;else{A1=D0;break}}else A1=0;while(!1);if(x0=M+(g1<<2)|0,F0=e[x0>>2]|0,G0=F0+(a1<<2)|0,e[G0>>2]=A1,p0=g1+1|0,P0=(p0|0)==(u1|0),P0)break;g1=p0}if(H0=a1+1|0,e1=(H0|0)==(x|0),e1)break;a1=H0}return R0=n+40|0,S0=e[R0>>2]|0,L0=S0+1|0,e[R0>>2]=L0,f=M,f|0}function SS(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0;if(M=B,f=(c|0)>0,f)Q=0,b=0;else return 0;for(;;)if(d=$+(Q<<2)|0,I=e[d>>2]|0,C=(I|0)==0,C?x=b:(p=s+(Q<<2)|0,m=e[p>>2]|0,v=b+1|0,S=s+(b<<2)|0,e[S>>2]=m,x=v),w=Q+1|0,D=(w|0)==(c|0),D){_=x;break}else Q=w,b=x;return y=(_|0)==0,y||AQ(t,n,s,_,3),0}function DS(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0;if(z0=B,C=(c|0)>0,C)L0=0,n1=0;else return f=0,f|0;for(;;)if(p=$+(L0<<2)|0,L=e[p>>2]|0,g1=(L|0)!=0,e0=g1&1,A1=e0+n1|0,K=L0+1|0,H0=(K|0)==(c|0),H0){$1=A1;break}else L0=K,n1=A1;if(l1=($1|0)==0,l1)return f=0,f|0;if(h0=e[n>>2]|0,J0=h0+8|0,D0=e[J0>>2]|0,m0=h0+12|0,x0=e[m0>>2]|0,m=h0+4|0,v=e[m>>2]|0,S=e[h0>>2]|0,w=v-S|0,y=(w|0)/(D0|0)&-1,D=U7(t,4)|0,Q=y<<2,b=U7(t,Q)|0,e[D>>2]=b,ne(b|0,0,Q|0)|0,x=(y|0)>0,x)for(_=e[h0>>2]|0,M=(_|0)/(c|0)&-1,T=(D0|0)>0,G=x0+-1|0,N=(x0|0)>1,P=e[D>>2]|0,z=(c|0)>1,Y0=0,P0=M;;){if(T)for(Y=e[s>>2]|0,M0=0,V0=0,v0=P0,c1=0;;){if(t0=Y+(v0<<2)|0,J=e[t0>>2]|0,q0=(J|0)>-1,a1=0-J|0,W=q0?J:a1,H=(W|0)>(c1|0),I=H?W:c1,z)for(p0=M0,r1=1;;)if(X=s+(r1<<2)|0,U=e[X>>2]|0,o0=U+(v0<<2)|0,Z=e[o0>>2]|0,N0=(Z|0)>-1,f1=0-Z|0,V=N0?Z:f1,s0=(V|0)>(p0|0),d=s0?V:p0,n0=r1+1|0,R0=(n0|0)==(c|0),R0){G0=d;break}else p0=d,r1=n0;else G0=M0;if(i0=v0+1|0,r0=V0+c|0,c0=(r0|0)<(D0|0),c0)M0=G0,V0=r0,v0=i0,c1=I;else{F0=G0,e1=i0,i1=I;break}}else F0=0,e1=P0,i1=0;e:do if(N)for(U0=0;;){if(A0=(h0+2328|0)+(U0<<2)|0,l0=e[A0>>2]|0,j=(i1|0)>(l0|0),!j&&(a0=(h0+2584|0)+(U0<<2)|0,g0=e[a0>>2]|0,f0=(F0|0)>(g0|0),!f0)){T0=U0;break e}if(Q0=U0+1|0,d0=(Q0|0)<(G|0),d0)U0=Q0;else{T0=Q0;break}}else T0=0;while(!1);if(y0=P+(Y0<<2)|0,e[y0>>2]=T0,E0=Y0+1|0,S0=(E0|0)==(y|0),S0)break;Y0=E0,P0=e1}return C0=n+40|0,u0=e[C0>>2]|0,k0=u0+1|0,e[C0>>2]=k0,f=D,f|0}function bS(t,n,s,$,c,f,d,I){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0,I=I|0;var C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0;if(n0=B,B=B+16|0,V=n0,C=n+36|0,p=e[C>>2]|0,L=(p|0)/2&-1,M=f<<2,T=i5(M,L)|0,G=U7(n,T)|0,e[V>>2]=G,N=(f|0)>0,!N)return B=n0,0;for(P=(p|0)>1,J=0,Z=0;;){if(z=$+(J<<2)|0,Y=e[z>>2]|0,m=c+(J<<2)|0,v=e[m>>2]|0,H=(v|0)!=0,S=H&1,U=S+Z|0,P)for(W=0,e0=J;w=Y+(W<<2)|0,y=e[w>>2]|0,D=G+(e0<<2)|0,e[D>>2]=y,Q=W+1|0,b=e0+f|0,x=(Q|0)<(L|0),x;)W=Q,e0=b;if(_=J+1|0,t0=(_|0)==(f|0),t0){o0=U;break}else J=_,Z=U}return X=(o0|0)==0,X?(B=n0,0):(sQ(t,s,V,1,d),B=n0,0)}function _S(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0;if(Q1=B,I=e[n>>2]|0,C=I+8|0,_=e[C>>2]|0,W=n+16|0,r0=e[W>>2]|0,y0=e[r0>>2]|0,M0=t+36|0,T0=e[M0>>2]|0,l1=i5(T0,c)|0,A1=l1>>1,p=I+4|0,m=e[p>>2]|0,v=(m|0)<(A1|0),f=v?m:A1,S=e[I>>2]|0,w=f-S|0,y=(w|0)>0,!y)return 0;D=(w|0)/(_|0)&-1,Q=y0+-1|0,b=Q+D|0,x=(b|0)/(y0|0)&-1,L=x<<2,M=U7(t,L)|0,T=(c|0)>0;e:do if(T)for(n1=0;;){if(G=$+(n1<<2)|0,N=e[G>>2]|0,P=(N|0)==0,!P){$1=n1;break e}if(z=n1+1|0,Y=(z|0)<(c|0),Y)n1=z;else{$1=z;break}}else $1=0;while(!1);if(t0=($1|0)==(c|0),t0||(J=n+8|0,e0=e[J>>2]|0,H=(e0|0)>0,!H))return 0;X=(D|0)>0,U=t+4|0,o0=I+16|0,Z=n+28|0,V=(y0|0)>0,s0=n+20|0,g1=e0,m1=0;e:for(;;){if(X){for(n0=(m1|0)==0,i0=1<>2]|0,c0=OC(K,U)|0,A0=(c0|0)==-1,A0){p1=23;break e}if(l0=e[o0>>2]|0,j=(c0|0)<(l0|0),!j){p1=23;break e}if(a0=e[Z>>2]|0,g0=a0+(c0<<2)|0,f0=e[g0>>2]|0,Q0=M+(E1<<2)|0,e[Q0>>2]=f0,d0=(f0|0)==0,d0){p1=23;break e}}if(h0=(s1|0)<(D|0),d1=V&h0,d1)for(E0=M+(E1<<2)|0,I1=s1,h1=0;;){if(C0=e[E0>>2]|0,u0=C0+(h1<<2)|0,k0=e[u0>>2]|0,J0=(I+24|0)+(k0<<2)|0,D0=e[J0>>2]|0,m0=D0&i0,x0=(m0|0)==0,!x0&&(F0=e[s0>>2]|0,G0=F0+(k0<<2)|0,p0=e[G0>>2]|0,H0=p0+(m1<<2)|0,R0=e[H0>>2]|0,S0=(R0|0)==0,!S0&&(L0=i5(I1,_)|0,Y0=e[I>>2]|0,q0=Y0+L0|0,N0=Tv(R0,s,q0,c,U,_)|0,V0=(N0|0)==-1,V0))){p1=23;break e}if(U0=h1+1|0,r1=I1+1|0,P0=(U0|0)<(y0|0),e1=(r1|0)<(D|0),u1=P0&e1,u1)I1=r1,h1=U0;else{z0=r1;break}}else z0=s1;if(v0=E1+1|0,i1=(z0|0)<(D|0),i1)s1=z0,E1=v0;else break}d=e[J>>2]|0,f1=d}else f1=g1;if(c1=m1+1|0,a1=(c1|0)<(f1|0),a1)g1=f1,m1=c1;else{p1=23;break}}return(p1|0)==23,0}function AQ(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0;if(j1=B,p=e[n>>2]|0,m=p+8|0,M=e[m>>2]|0,H=n+16|0,c0=e[H>>2]|0,E0=e[c0>>2]|0,p0=t+36|0,r1=e[p0>>2]|0,$1=r1>>1,Q1=p+4|0,v=e[Q1>>2]|0,S=(v|0)<($1|0),f=S?v:$1,w=e[p>>2]|0,y=f-w|0,D=(y|0)>0,!D){B=j1;return}if(Q=(y|0)/(M|0)&-1,b=$<<2,d=b,x=B,B=B+((1*d|0)+15&-16)|0,_=($|0)>0,_)for(L=E0+-1|0,T=L+Q|0,G=(T|0)/(E0|0)&-1,N=G<<2,N1=0;o0=U7(t,N)|0,Z=x+(N1<<2)|0,e[Z>>2]=o0,V=N1+1|0,_1=(V|0)==($|0),!_1;)N1=V;if(P=n+8|0,z=e[P>>2]|0,Y=(z|0)>0,!Y){B=j1;return}t0=(Q|0)>0,J=t+4|0,W=p+16|0,e0=n+28|0,X=(E0|0)>0,U=n+20|0,C=_^1,q1=0;e:for(;;){if(t0)for(s0=1<>2]|0,P0=OC(U0,J)|0,e1=(P0|0)==-1,e1){Y1=25;break e}if(v0=e[W>>2]|0,i1=(P0|0)<(v0|0),!i1){Y1=25;break e}if(c1=e[e0>>2]|0,a1=c1+(P0<<2)|0,f1=e[a1>>2]|0,g1=x+(w1<<2)|0,l1=e[g1>>2]|0,A1=l1+(v1<<2)|0,e[A1>>2]=f1,n1=(f1|0)==0,V0=w1+1|0,n1){Y1=25;break e}if(T0=(V0|0)<($|0),T0)w1=V0;else break}n0=(y1|0)<(Q|0),H1=X&n0;t:do if(H1){if(_)L1=y1,G1=0;else for(x1=y1,Z1=0;;)if(s1=Z1+1|0,z0=x1+1|0,I1=(s1|0)<(E0|0),h1=(z0|0)<(Q|0),K1=I1&h1,K1)x1=z0,Z1=s1;else{k1=z0;break t}for(;;){for(a0=i5(L1,M)|0,U1=0;;){if(l0=e[p>>2]|0,j=l0+a0|0,g0=x+(U1<<2)|0,f0=e[g0>>2]|0,Q0=f0+(v1<<2)|0,d0=e[Q0>>2]|0,y0=d0+(G1<<2)|0,h0=e[y0>>2]|0,C0=(p+24|0)+(h0<<2)|0,u0=e[C0>>2]|0,k0=u0&s0,J0=(k0|0)==0,!J0&&(D0=e[U>>2]|0,m0=D0+(h0<<2)|0,x0=e[m0>>2]|0,F0=x0+(q1<<2)|0,M0=e[F0>>2]|0,G0=(M0|0)==0,!G0&&(H0=s+(U1<<2)|0,R0=e[H0>>2]|0,S0=R0+(j<<2)|0,L0=sm[c&3](M0,S0,J,M)|0,Y0=(L0|0)==-1,Y0))){Y1=25;break e}if(q0=U1+1|0,N0=(q0|0)<($|0),N0)U1=q0;else break}if(i0=G1+1|0,r0=L1+1|0,K=(i0|0)<(E0|0),A0=(r0|0)<(Q|0),P1=K&A0,P1)L1=r0,G1=i0;else{k1=r0;break}}}else k1=y1;while(!1);if(E1=v1+1|0,u1=(k1|0)<(Q|0),u1)y1=k1,v1=E1;else break}if(d1=q1+1|0,m1=e[P>>2]|0,p1=(d1|0)<(m1|0),p1)q1=d1;else{Y1=25;break}}if((Y1|0)==25){B=j1;return}}function sQ(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,V5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,m6=0,z3=0,$6=0,p6=0,_6=0,Y6=0,B6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,s3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0;if(d6=B,B=B+1088|0,i3=d6+1056|0,L5=d6+1024|0,P6=d6+512|0,s3=d6,Q=e[n>>2]|0,b=Q+8|0,$2=e[b>>2]|0,q2=Q+12|0,z2=e[q2>>2]|0,C5=n+16|0,M1=e[C5>>2]|0,h5=e[M1>>2]|0,g3=Q+4|0,M3=e[g3>>2]|0,x=e[Q>>2]|0,J=M3-x|0,i0=(J|0)/($2|0)&-1,ne(P6|0,0,512)|0,ne(s3|0,0,512)|0,d0=n+8|0,F0=e[d0>>2]|0,V0=(F0|0)>0,!V0){B=d6;return}for(g1=(i0|0)>0,d1=($|0)>0,w1=(h5|0)>1,r2=n+36|0,t2=(h5|0)>0,S2=n+20|0,w2=n+32|0,C2=0-h5|0,y2=F0,r6=0;;){if(g1){for(M2=(r6|0)==0,_2=1<>2]|0,G5=S5+(V5<<2)|0,D5=e[G5>>2]|0,H2=e[C5>>2]|0,I5=H2+4|0,s5=e[I5>>2]|0,l5=(D5|0)<(s5|0),l5&&(B5=Dh(H2,D5,t)|0,k5=e[r2>>2]|0,c5=k5+B5|0,e[r2>>2]=c5),o5=B6+1|0,t6=(o5|0)==($|0),t6)break e;B6=o5}for(;;){for(k2=c+(v3<<2)|0,f5=e[k2>>2]|0,E5=f5+(V5<<2)|0,r5=e[E5>>2]|0,u6=1,e6=r5;;)if(j2=i5(e6,z2)|0,R5=u6+V5|0,X2=(R5|0)<(i0|0),X2?(v5=f5+(R5<<2)|0,w5=e[v5>>2]|0,O5=w5+j2|0,Q6=O5):Q6=j2,a5=u6+1|0,w3=(a5|0)==(h5|0),w3){R6=Q6;break}else u6=a5,e6=Q6;if(K2=e[C5>>2]|0,N2=K2+4|0,T2=e[N2>>2]|0,O2=(R6|0)<(T2|0),O2&&(V2=Dh(K2,R6,t)|0,A5=e[r2>>2]|0,P2=A5+V2|0,e[r2>>2]=P2),T1=v3+1|0,p3=(T1|0)==($|0),p3)break;v3=T1}}while(!1);if(x2=(V5|0)<(i0|0),S6=t2&x2,S6){for(R2=V5-i0|0,B2=R2>>>0>>0,T6=B2?C2:R2,x5=0-T6|0,o6=V5,O3=0;;){if(Z2=i5(o6,$2)|0,c2=e[Q>>2]|0,m5=c2+Z2|0,d1)for(W3=0;;){if(e5=c+(W3<<2)|0,n5=e[e5>>2]|0,g5=n5+(o6<<2)|0,Y2=e[g5>>2]|0,M2&&(t5=s3+(Y2<<2)|0,b5=e[t5>>2]|0,W2=b5+$2|0,e[t5>>2]=W2),$5=(Q+24|0)+(Y2<<2)|0,F2=e[$5>>2]|0,p5=F2&_2,H5=(p5|0)==0,!H5&&(X5=e[S2>>2]|0,d5=X5+(Y2<<2)|0,f3=e[d5>>2]|0,J5=f3+(r6<<2)|0,e3=e[J5>>2]|0,A3=(e3|0)==0,!A3)){if(E3=s+(W3<<2)|0,F5=e[E3>>2]|0,K5=e[e3>>2]|0,y3=($2|0)/(K5|0)&-1,h3=(y3|0)>0,h3){for(B3=e3+48|0,q3=e3+52|0,z5=e3+44|0,Q3=e3+12|0,W5=e3+4|0,_=K5,y5=0,c3=0;;){j3=i5(c3,K5)|0,S=j3+m5|0,_3=F5+(S<<2)|0,T3=e[B3>>2]|0,$3=e[q3>>2]|0,a3=e[z5>>2]|0,l3=a3>>1,e[i3>>2]=0,e[i3+4>>2]=0,e[i3+8>>2]=0,e[i3+12>>2]=0,e[i3+16>>2]=0,e[i3+20>>2]=0,e[i3+24>>2]=0,e[i3+28>>2]=0,C3=($3|0)==1,L=(_|0)>0;do if(C3){if(!L){z3=0;break}for(N=a3+-1|0,u3=0,m6=0,P3=_;;)if(f0=P3+-1|0,D=S+f0|0,Q0=F5+(D<<2)|0,y0=e[Q0>>2]|0,h0=y0-T3|0,E0=(h0|0)<(l3|0),E0?(C0=l3-h0|0,u0=C0<<1,k0=u0+-1|0,x0=k0):(J0=h0-l3|0,D0=J0<<1,x0=D0),m0=i5(m6,a3)|0,M0=(x0|0)<0,G0=(x0|0)>=(a3|0),p0=G0?N:x0,H0=M0?0:p0,R0=H0+m0|0,S0=i3+(f0<<2)|0,e[S0>>2]=y0,L0=u3+1|0,V3=(L0|0)==(_|0),V3){z3=R0;break}else u3=L0,m6=R0,P3=f0}else{if(!L){z3=0;break}for(M=$3>>1,T=M-T3|0,G=a3+-1|0,k3=0,v6=0,S3=_;;)if(P=S3+-1|0,y=S+P|0,z=F5+(y<<2)|0,Y=e[z>>2]|0,t0=T+Y|0,W=(t0|0)/($3|0)&-1,e0=(W|0)<(l3|0),e0?(H=l3-W|0,X=H<<1,U=X+-1|0,s0=U):(o0=W-l3|0,Z=o0<<1,s0=Z),V=i5(v6,a3)|0,n0=(s0|0)<0,r0=(s0|0)>=(a3|0),K=r0?G:s0,c0=n0?0:K,A0=c0+V|0,l0=i5(W,$3)|0,j=l0+T3|0,a0=i3+(P<<2)|0,e[a0>>2]=j,g0=k3+1|0,N3=(g0|0)==(_|0),N3){z3=A0;break}else k3=g0,v6=A0,S3=P}while(!1);Y0=e[Q3>>2]|0,q0=Y0+8|0,N0=e[q0>>2]|0,T0=N0+z3|0,U0=u[T0>>0]|0,r1=U0<<24>>24<1;do if(r1){if(e[L5>>2]=0,e[L5+4>>2]=0,e[L5+8>>2]=0,e[L5+12>>2]=0,e[L5+16>>2]=0,e[L5+20>>2]=0,e[L5+24>>2]=0,e[L5+28>>2]=0,P0=a3+-1|0,e1=i5(P0,$3)|0,v0=e1+T3|0,i1=e[W5>>2]|0,c1=(i1|0)>0,c1)q5=-1,w6=0,$6=z3;else{_6=z3;break}for(;;){a1=N0+w6|0,f1=u[a1>>0]|0,l1=f1<<24>>24>0;do if(l1){if(L)for(Y6=0,D3=0;;)if(A1=L5+(Y6<<2)|0,$1=e[A1>>2]|0,w=S+Y6|0,n1=F5+(w<<2)|0,s1=e[n1>>2]|0,z0=$1-s1|0,I1=i5(z0,z0)|0,h1=I1+D3|0,E1=Y6+1|0,X3=(E1|0)==(_|0),X3){I6=h1;break}else Y6=E1,D3=h1;else I6=0;if(u1=(q5|0)==-1,m1=(I6|0)<(q5|0),Y3=u1|m1,!Y3){N5=q5,p6=$6;break}e[i3>>2]=e[L5>>2]|0,e[i3+4>>2]=e[L5+4>>2]|0,e[i3+8>>2]=e[L5+8>>2]|0,e[i3+12>>2]=e[L5+12>>2]|0,e[i3+16>>2]=e[L5+16>>2]|0,e[i3+20>>2]=e[L5+20>>2]|0,e[i3+24>>2]=e[L5+24>>2]|0,e[i3+28>>2]=e[L5+28>>2]|0,N5=I6,p6=w6}else N5=q5,p6=$6;while(!1);if(p1=e[L5>>2]|0,Q1=(p1|0)<(v0|0),Q1)d=L5,I=p1;else for(_1=L5,Z3=0;;)if(D1=Z3+1|0,e[_1>>2]=0,y1=L5+(D1<<2)|0,k1=e[y1>>2]|0,x1=(k1|0)<(v0|0),x1){d=y1,I=k1;break}else _1=y1,Z3=D1;if(L1=(I|0)>-1,L1?(N1=I+$3|0,e[d>>2]=N1,Z1=N1):Z1=I,U1=0-Z1|0,e[d>>2]=U1,G1=w6+1|0,t3=(G1|0)==(i1|0),t3){_6=p6;break}else q5=N5,w6=G1,$6=p6}}else _6=z3;while(!1);if(v1=(_6|0)>-1,i6=L&v1,i6)for(f=_3,k6=0;K1=i3+(k6<<2)|0,P1=e[K1>>2]|0,H1=f+4|0,q1=e[f>>2]|0,Y1=q1-P1|0,e[f>>2]=Y1,j1=k6+1|0,o3=(j1|0)==(_|0),!o3;)f=H1,k6=j1;if(W1=Dh(e3,_6,t)|0,O1=W1+y5|0,l2=c3+1|0,R3=(l2|0)==(y3|0),R3){C=O1;break}p=e[e3>>2]|0,_=p,y5=O1,c3=l2}m=e[e5>>2]|0,d2=m,P5=C}else d2=n5,P5=0;z1=e[w2>>2]|0,h2=z1+P5|0,e[w2>>2]=h2,A2=d2+(o6<<2)|0,s2=e[A2>>2]|0,V1=P6+(s2<<2)|0,g2=e[V1>>2]|0,a2=g2+P5|0,e[V1>>2]=a2}if(i2=W3+1|0,f6=(i2|0)==($|0),f6)break;W3=i2}if(o2=O3+1|0,X1=o6+1|0,m3=(o2|0)==(x5|0),m3)break;o6=X1,O3=o2}G2=V5-T6|0,U3=G2}else U3=V5;if(u2=(U3|0)<(i0|0),u2)V5=U3;else break}v=e[d0>>2]|0,e2=v}else e2=y2;if(n2=r6+1|0,f2=(n2|0)<(e2|0),f2)y2=e2,r6=n2;else break}B=d6}function F7(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0;if(p=B,s=(t|0)==0,s)d=0;else for(n=t,I=0;;)if($=n>>>1,c=I+1|0,f=($|0)==0,f){d=c;break}else n=$,I=c;return d|0}function oQ(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0;g2=B,B=B+144|0,O1=g2,C=(s|0)!=0,p=C?s:n,L=p<<2,e0=k9(L)|0,ne(O1|0,0,132)|0,K=(n|0)>0;do if(K){h0=O1+4|0,G0=(s|0)==0,U0=G0&1,p1=0,w1=0;e:for(;;){A1=t+w1|0,m1=u[A1>>0]|0,m=m1<<24>>24,v=m1<<24>>24>0;t:do if(v){if(S=O1+(m<<2)|0,w=e[S>>2]|0,y=m1<<24>>24>31,D=w>>>m,Q=(D|0)==0,l2=y|Q,!l2){V1=5;break e}b=e0+(p1<<2)|0,e[b>>2]=w,x=O1+(m<<2)|0,_=w&1,M=(_|0)==0;i:do if(M)for(H=w,X=x,K1=m;;){if(W=H+1|0,e[X>>2]=W,U=K1+-1|0,o0=(K1|0)>1,!o0)break i;if(f=O1+(U<<2)|0,I=e[f>>2]|0,Z=O1+(U<<2)|0,V=I&1,s0=(V|0)==0,s0)H=I,X=Z,K1=U;else{c=Z,v1=U,V1=8;break}}else c=x,v1=m,V1=8;while(!1);do if((V1|0)==8)if(V1=0,G=(v1|0)==1,G){N=e[h0>>2]|0,P=N+1|0,e[h0>>2]=P;break}else{z=v1+-1|0,Y=O1+(z<<2)|0,t0=e[Y>>2]|0,J=t0<<1,e[c>>2]=J;break}while(!1);if(Y1=m+1|0,T=(Y1|0)<33,T)for(x1=w,H1=m,j1=Y1;;){if(n0=O1+(j1<<2)|0,i0=e[n0>>2]|0,r0=i0>>>1,c0=(r0|0)==(x1|0),!c0){d=1;break t}if(A0=O1+(H1<<2)|0,l0=e[A0>>2]|0,j=l0<<1,e[n0>>2]=j,P1=j1+1|0,a0=(P1|0)<33,a0)q1=j1,x1=i0,j1=P1,H1=q1;else{d=1;break}}else d=1}else d=U0;while(!1);if(Q1=p1+d|0,g0=w1+1|0,f0=(g0|0)<(n|0),f0)p1=Q1,w1=g0;else{D1=Q1,V1=16;break}}if((V1|0)==5)return I2(e0),$=0,B=g2,$|0;if((V1|0)==16){if(z1=(D1|0)==1,!z1){U1=1,V1=27;break}if(Q0=O1+8|0,d0=e[Q0>>2]|0,y0=(d0|0)==2,y0)break;U1=1,V1=27;break}}else U1=1,V1=27;while(!1);e:do if((V1|0)==27){for(;V1=0,V0=O1+(U1<<2)|0,T0=e[V0>>2]|0,r1=32-U1|0,P0=-1>>>r1,e1=T0&P0,v0=(e1|0)==0,q0=U1+1|0,!!v0;)if(N0=(q0|0)<33,N0)U1=q0,V1=27;else break e;return I2(e0),$=0,B=g2,$|0}while(!1);if(!K)return $=e0,B=g2,$|0;if(C)y1=0,G1=0;else{for(_1=0,Z1=0;;){if(i1=t+Z1|0,c1=u[i1>>0]|0,a1=c1<<24>>24>0,a1)for(f1=e0+(_1<<2)|0,g1=e[f1>>2]|0,l1=c1<<24>>24,r2=0,d2=0;;)if($1=d2<<1,n1=g1>>>r2,s1=n1&1,z0=s1|$1,I1=r2+1|0,h1=(I1|0)<(l1|0),h1)r2=I1,d2=z0;else{h2=z0;break}else h2=0;if(E1=_1+1|0,u1=e0+(_1<<2)|0,e[u1>>2]=h2,d1=Z1+1|0,L1=(d1|0)==(n|0),L1){$=e0;break}else _1=E1,Z1=d1}return B=g2,$|0}for(;;){if(E0=t+G1|0,C0=u[E0>>0]|0,u0=C0<<24>>24>0,u0)for(Y0=e0+(y1<<2)|0,M0=e[Y0>>2]|0,L0=C0<<24>>24,W1=0,s2=0;;)if(x0=s2<<1,F0=M0>>>W1,p0=F0&1,H0=p0|x0,R0=W1+1|0,S0=(R0|0)<(L0|0),S0)W1=R0,s2=H0;else{A2=H0;break}else A2=0;if(k0=C0<<24>>24==0,k0?k1=y1:(J0=y1+1|0,D0=e0+(y1<<2)|0,e[D0>>2]=A2,k1=J0),m0=G1+1|0,N1=(m0|0)==(n|0),N1){$=e0;break}else y1=k1,G1=m0}return B=g2,$|0}function RS(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0;if(H=B,$=t+4|0,c=e[$>>2]|0,D=e[t>>2]|0,Q=(D|0)>0,!Q)for(;;);for(b=+(c|0),x=b,_=+(D|0),L=1/_,M=L,T=+kh(+x,+M),f=+qo(+T),d=~~f,Y=d;;){for(S=Y+1|0,G=1,N=1,P=0;;)if(m=i5(G,Y)|0,v=i5(N,S)|0,w=P+1|0,y=(w|0)<(D|0),y)G=m,N=v,P=w;else{n=m,s=v;break}if(I=(n|0)<=(c|0),C=(s|0)>(c|0),z=I&C,z){W=Y;break}p=(n|0)>(c|0),J=p?-1:1,t0=Y+J|0,Y=t0}return W|0}function xS(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0;if(H5=B,p=t+12|0,m=e[p>>2]|0,C=m+-1|0,t5=C>>>0<2,!t5)return f=0,f|0;if(P0=t+16|0,n1=e[P0>>2]|0,D1=n1&2097151,v1=+(D1|0),z1=n1>>>21,o2=z1&1023,G2=(n1|0)<0,j2=-v1,$=G2?j2:v1,v=o2+-788|0,T=+qC($,v),X=T,A0=t+20|0,C0=e[A0>>2]|0,H0=C0&2097151,V0=+(H0|0),T0=C0>>>21,U0=T0&1023,r1=(C0|0)<0,e1=-V0,c=r1?e1:V0,v0=U0+-788|0,i1=+qC(c,v0),c1=i1,a1=e[t>>2]|0,f1=i5(a1,n)|0,g1=i4(f1,4)|0,(m|0)==1){if(m1=t+4|0,p1=e[m1>>2]|0,Q1=(a1|0)>0,!Q1)for(;;);for(_1=+(p1|0),y1=_1,k1=+(a1|0),x1=1/k1,L1=x1,N1=+kh(+y1,+L1),w1=+qo(+N1),U1=~~w1,$5=U1;;){for(h2=$5+1|0,r5=1,x2=1,I5=0;;)if(O1=i5(r5,$5)|0,l2=i5(x2,h2)|0,A2=I5+1|0,u5=(A2|0)==(a1|0),u5){d=O1,I=l2;break}else r5=O1,x2=l2,I5=A2;if(Z1=(d|0)<=(p1|0),G1=(I|0)>(p1|0),h5=G1&Z1,h5){F2=$5;break}W1=(d|0)>(p1|0),W2=W1?-1:1,b5=W2+$5|0,$5=b5}if(K1=(p1|0)>0,!K1)return f=g1,f|0;for(P1=(s|0)==0,H1=t+8|0,q1=t+32|0,Y1=c1,j1=X,r2=t+28|0,R2=0,M1=0;;){if(P1)if($2=e[q1>>2]|0,t2=e[r2>>2]|0,a2=(t2|0)==0,i2=i5(a1,R2)|0,a2)for(B5=1,Z2=0;;)if(v5=(M1|0)/(B5|0)&-1,z2=(v5|0)%(F2|0)&-1,f5=$2+(z2<<2)|0,w5=e[f5>>2]|0,O5=+(w5|0),H2=+Yi(+O5),a5=H2,k2=a5*Y1,E5=j1+k2,S=E5,w=i2+Z2|0,y=g1+(w<<2)|0,A[y>>2]=S,D=i5(B5,F2)|0,Q=Z2+1|0,b=(Q|0)<(a1|0),b)B5=D,Z2=Q;else{p5=21;break}else for(s5=1,c5=0,e5=0;;)if(x=(M1|0)/(s5|0)&-1,_=(x|0)%(F2|0)&-1,L=$2+(_<<2)|0,M=e[L>>2]|0,G=+(M|0),G5=+Yi(+G),N=G5,P=N*Y1,z=e5,Y=z+j1,t0=Y+P,J=t0,W=i2+c5|0,e0=g1+(W<<2)|0,A[e0>>2]=J,H=i5(s5,F2)|0,U=c5+1|0,o0=(U|0)<(a1|0),o0)s5=H,c5=U,e5=J;else{p5=21;break}else if(d2=e[H1>>2]|0,s2=d2+M1|0,V1=u[s2>>0]|0,g2=V1<<24>>24==0,g2)B2=R2;else for(X1=e[q1>>2]|0,n2=e[r2>>2]|0,f2=(n2|0)==0,e2=s+(R2<<2)|0,y2=e[e2>>2]|0,S2=i5(y2,a1)|0,l5=1,o5=0,n5=0;;)if(w2=(M1|0)/(l5|0)&-1,C2=(w2|0)%(F2|0)&-1,M2=X1+(C2<<2)|0,_2=e[M2>>2]|0,u2=+(_2|0),D5=+Yi(+u2),K2=D5,N2=K2*Y1,q2=n5,T2=q2+j1,O2=T2+N2,V2=O2,m5=f2?n5:V2,A5=S2+o5|0,P2=g1+(A5<<2)|0,A[P2>>2]=V2,T1=i5(l5,F2)|0,R5=o5+1|0,X2=(R5|0)<(a1|0),X2)l5=T1,o5=R5,n5=m5;else{p5=21;break}if((p5|0)==21&&(p5=0,Z=R2+1|0,B2=Z),V=M1+1|0,s0=(V|0)<(p1|0),s0)R2=B2,M1=V;else{f=g1;break}}return f|0}else if((m|0)==2){if(l1=t+4|0,A1=e[l1>>2]|0,$1=(A1|0)>0,!$1)return f=g1,f|0;for(s1=(s|0)!=0,z0=t+8|0,I1=t+32|0,h1=c1,E1=X,u1=t+28|0,d1=(a1|0)>0,C5=0,k5=0;;){if(s1?(n0=e[z0>>2]|0,i0=n0+k5|0,r0=u[i0>>0]|0,K=r0<<24>>24==0,K?x5=C5:p5=25):p5=25,(p5|0)==25){if(p5=0,d1)for(c0=e[I1>>2]|0,l0=e[u1>>2]|0,j=(l0|0)==0,a0=s+(C5<<2)|0,g0=i5(a1,k5)|0,f0=i5(a1,C5)|0,c2=0,Y2=0;Q0=g0+c2|0,d0=c0+(Q0<<2)|0,y0=e[d0>>2]|0,h0=+(y0|0),S5=+Yi(+h0),E0=S5,u0=E0*h1,k0=Y2,J0=k0+E1,D0=J0+u0,m0=D0,g5=j?Y2:m0,s1?(x0=e[a0>>2]|0,F0=i5(x0,a1)|0,M0=F0+c2|0,G0=g1+(M0<<2)|0,A[G0>>2]=m0):(p0=f0+c2|0,R0=g1+(p0<<2)|0,A[R0>>2]=m0),S0=c2+1|0,L0=(S0|0)<(a1|0),L0;)c2=S0,Y2=g5;Y0=C5+1|0,x5=Y0}if(q0=k5+1|0,N0=(q0|0)<(A1|0),N0)C5=x5,k5=q0;else{f=g1;break}}return f|0}else return f=g1,f|0;return 0}function im(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0;v=B,n=t+36|0,s=e[n>>2]|0,$=(s|0)==0,!$&&(c=t+32|0,f=e[c>>2]|0,d=(f|0)==0,d||I2(f),I=t+8|0,C=e[I>>2]|0,p=(C|0)==0,p||I2(C),I2(t))}function FS(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0;x=B,n=t+16|0,s=e[n>>2]|0,C=(s|0)==0,C||I2(s),p=t+20|0,m=e[p>>2]|0,v=(m|0)==0,v||I2(m),S=t+24|0,w=e[S>>2]|0,y=(w|0)==0,y||I2(w),D=t+28|0,$=e[D>>2]|0,c=($|0)==0,c||I2($),f=t+32|0,d=e[f>>2]|0,I=(d|0)==0,I||I2(d),Q=t,_=Q+56|0;do e[Q>>2]=0,Q=Q+4|0;while((Q|0)<(_|0))}function $Q(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0;T0=B,N0=t,U0=N0+56|0;do e[N0>>2]=0,N0=N0+4|0;while((N0|0)<(U0|0));if(d=t+12|0,e[d>>2]=n,I=n+4|0,x=e[I>>2]|0,J=t+4|0,e[J>>2]=x,i0=t+8|0,e[i0>>2]=x,d0=e[n>>2]|0,e[t>>2]=d0,k0=n+8|0,J0=e[k0>>2]|0,D0=oQ(J0,x,0)|0,m0=t+20|0,e[m0>>2]=D0,C=e[I>>2]|0,p=e[n>>2]|0,m=(p|0)>0,!m)for(;;);for(v=+(C|0),S=v,w=+(p|0),y=1/w,D=y,Q=+kh(+S,+D),b=+qo(+Q),_=~~b,Y0=_;;){for(P=Y0+1|0,x0=1,F0=1,G0=0;;)if(G=i5(x0,Y0)|0,N=i5(F0,P)|0,z=G0+1|0,M0=(z|0)==(p|0),M0){c=G,f=N;break}else x0=G,F0=N,G0=z;if(L=(c|0)<=(C|0),M=(f|0)>(C|0),p0=M&L,p0){q0=Y0;break}T=(c|0)>(C|0),L0=T?-1:1,S0=L0+Y0|0,Y0=S0}return Y=t+44|0,e[Y>>2]=q0,t0=n+16|0,W=e[t0>>2]|0,e0=W&2097151,H=+(e0|0),X=W>>>21,U=X&1023,o0=(W|0)<0,Z=-H,s=o0?Z:H,V=U+-788|0,s0=+qC(s,V),n0=s0,H0=+fQ(n0),r0=~~H0,K=t+48|0,e[K>>2]=r0,c0=n+20|0,A0=e[c0>>2]|0,l0=A0&2097151,j=+(l0|0),a0=A0>>>21,g0=a0&1023,f0=(A0|0)<0,Q0=-j,$=f0?Q0:j,y0=g0+-788|0,h0=+qC($,y0),E0=h0,R0=+fQ(E0),C0=~~R0,u0=t+52|0,e[u0>>2]=C0,0}function LS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,V5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,m6=0,z3=0,$6=0,p6=0,_6=0,Y6=0,B6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,s3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0;F3=B,y6=t,L6=y6+56|0;do e[y6>>2]=0,y6=y6+4|0;while((y6|0)<(L6|0));if(S=n+4|0,w=e[S>>2]|0,d2=(w|0)>0,d2)for(H2=n+8|0,m5=e[H2>>2]|0,O3=0,R6=0;;)if(p5=m5+O3|0,K5=u[p5>>0]|0,T3=K5<<24>>24>0,t6=T3&1,C=t6+R6|0,V5=O3+1|0,y=(V5|0)<(w|0),y)O3=V5,R6=C;else{a0=C;break}else a0=0;if(P=t+4|0,e[P>>2]=w,Z=t+8|0,e[Z>>2]=a0,J0=e[n>>2]|0,e[t>>2]=J0,L0=(a0|0)>0,!L0)return $=0,B=F3,$|0;if(i1=n+8|0,I1=e[i1>>2]|0,k1=oQ(I1,w,a0)|0,H1=a0<<2,f=H1,s2=B,B=B+((1*f|0)+15&-16)|0,e2=(k1|0)==0,e2){O2=t+16|0,V2=e[O2>>2]|0,A5=(V2|0)==0,A5||I2(V2),P2=t+20|0,T1=e[P2>>2]|0,j2=(T1|0)==0,j2||I2(T1),R5=t+24|0,X2=e[R5>>2]|0,v5=(X2|0)==0,v5||I2(X2),f5=t+28|0,w5=e[f5>>2]|0,O5=(w5|0)==0,O5||I2(w5),a5=t+32|0,k2=e[a5>>2]|0,E5=(k2|0)==0,E5||I2(k2),y6=t,L6=y6+56|0;do e[y6>>2]=0,y6=y6+4|0;while((y6|0)<(L6|0));return $=-1,B=F3,$|0}else S3=0;for(;q2=k1+(S3<<2)|0,z2=e[q2>>2]|0,C5=z2>>>16,x5=z2<<16,u5=C5|x5,S5=u5>>>8,G5=S5&16711935,D5=u5<<8,I5=D5&-16711936,s5=G5|I5,l5=s5>>>4,B5=l5&252645135,M1=s5<<4,k5=M1&-252645136,c5=B5|k5,o5=c5>>>2,Z2=o5&858993459,c2=c5<<2,e5=c2&-858993460,n5=Z2|e5,g5=n5>>>1,Y2=g5&1431655765,h5=n5<<1,t5=h5&-1431655766,b5=Y2|t5,e[q2>>2]=b5,W2=s2+(S3<<2)|0,e[W2>>2]=q2,$5=S3+1|0,Y6=($5|0)==(a0|0),!Y6;)S3=$5;for(_h(s2,a0,4,10),d=H1,F2=B,B=B+((1*d|0)+15&-16)|0,H5=k9(H1)|0,X5=t+20|0,e[X5>>2]=H5,d5=k1,P3=0;;)if(f3=s2+(P3<<2)|0,g3=e[f3>>2]|0,J5=g3,e3=J5-d5|0,A3=e3>>2,E3=F2+(A3<<2)|0,e[E3>>2]=P3,F5=P3+1|0,_6=(F5|0)==(a0|0),_6){Y3=0;break}else P3=F5;for(;y3=k1+(Y3<<2)|0,h3=e[y3>>2]|0,B3=F2+(Y3<<2)|0,q3=e[B3>>2]|0,M3=H5+(q3<<2)|0,e[M3>>2]=h3,z5=Y3+1|0,p6=(z5|0)==(a0|0),!p6;)Y3=z5;if(I2(k1),Q3=xS(n,a0,F2)|0,W5=t+16|0,e[W5>>2]=Q3,j3=k9(H1)|0,_3=t+24|0,e[_3>>2]=j3,$3=e[S>>2]|0,a3=($3|0)>0,a3)for(p=e[i1>>2]|0,S6=0,d6=0;;)if(l3=p+S6|0,C3=u[l3>>0]|0,q5=C3<<24>>24>0,q5?(N5=d6+1|0,P5=F2+(d6<<2)|0,y5=e[P5>>2]|0,G3=j3+(y5<<2)|0,e[G3>>2]=S6,J6=N5):J6=d6,L5=S6+1|0,t3=(L5|0)<($3|0),t3)S6=L5,d6=J6;else{K6=J6;break}else K6=0;if(o3=k9(K6)|0,R3=t+28|0,e[R3>>2]=o3,f6=t+40|0,e[f6>>2]=0,a3){for(m=e[i1>>2]|0,r5=0,w3=m,i6=0,Z6=0;;)if(m3=w3+i6|0,p3=u[m3>>0]|0,X3=p3<<24>>24>0,X3?(V3=Z6+1|0,N3=F2+(Z6<<2)|0,k3=e[N3>>2]|0,c3=e[R3>>2]|0,U3=c3+k3|0,u[U3>>0]=p3,o6=e[i1>>2]|0,u3=o6+i6|0,w6=u[u3>>0]|0,k6=w6<<24>>24,v6=e[f6>>2]|0,m6=(k6|0)>(v6|0),m6?(e[f6>>2]=k6,x2=k6,R2=o6,G6=V3):(x2=v6,R2=o6,G6=V3)):(x2=r5,R2=w3,G6=Z6),z3=i6+1|0,D=e[S>>2]|0,Q=(z3|0)<(D|0),Q)r5=x2,w3=R2,i6=z3,Z6=G6;else{I=x2,j6=G6;break}if(b=(j6|0)==1,b){if(x=(I|0)==1,x)return _=t+36|0,e[_>>2]=1,L=i4(2,4)|0,M=t+32|0,e[M>>2]=L,T=L+4|0,e[T>>2]=1,e[L>>2]=1,$=0,B=F3,$|0;x3=1}else x3=j6}else x3=0;if(G=e[Z>>2]|0,N=(G|0)==0,N)x6=-4;else{for(c=G,N6=0;;)if(z=c>>>1,Y=N6+1|0,t0=(z|0)==0,t0){D6=N6;break}else c=z,N6=Y;r9=D6+-3|0,x6=r9}if(J=t+36|0,W=(x6|0)<5,s=W?5:x6,e0=(s|0)>8,V6=e0?8:s,e[J>>2]=V6,H=1<>2]=X,o0=(x3|0)>0,o0)for(r0=V6,i3=0;;){if(V=e[R3>>2]|0,s0=V+i3|0,n0=u[s0>>0]|0,i0=n0<<24>>24,K=(r0|0)<(i0|0),K)B2=r0;else if(c0=e[X5>>2]|0,A0=c0+(i3<<2)|0,l0=e[A0>>2]|0,j=l0>>>16,g0=l0<<16,f0=j|g0,Q0=f0>>>8,d0=Q0&16711935,y0=f0<<8,h0=y0&-16711936,E0=d0|h0,C0=E0>>>4,u0=C0&252645135,k0=E0<<4,D0=k0&-252645136,m0=u0|D0,x0=m0>>>2,F0=x0&858993459,M0=m0<<2,G0=M0&-858993460,p0=F0|G0,H0=p0>>>1,R0=H0&1431655765,S0=p0<<1,Y0=S0&-1431655766,q0=R0|Y0,N0=r0-i0|0,V0=(N0|0)==31,V0)B2=r0;else for(T0=i3+1|0,r1=i0,s3=0;;)if(U0=s3<>2]=T0,v0=s3+1|0,c1=e[J>>2]|0,a1=u[s0>>0]|0,f1=a1<<24>>24,g1=c1-f1|0,l1=1<>>16,p1=d1<<16,Q1=m1|p1,D1=Q1>>>8,_1=D1&16711935,y1=Q1<<8,x1=y1&-16711936,L1=_1|x1,N1=L1>>>4,w1=N1&252645135,U1=L1<<4,Z1=U1&-252645136,G1=w1|Z1,v1=G1>>>2,K1=v1&858993459,P1=G1<<2,q1=P1&-858993460,Y1=K1|q1,j1=Y1>>>1,r2=j1&1431655765,W1=Y1<<1,O1=W1&-1431655766,l2=r2|O1,z1=X+(l2<<2)|0,h2=e[z1>>2]|0,A2=(h2|0)==0,A2){for(I6=r6;;){if(V1=I6+1|0,g2=(V1|0)<(x3|0),!g2){D3=I6;break}if($2=e[X5>>2]|0,t2=$2+(V1<<2)|0,a2=e[t2>>2]|0,i2=a2>>>0>d1>>>0,i2){D3=I6;break}else I6=V1}o2=(x3|0)>(B6|0);e:do if(o2)for(X1=e[X5>>2]|0,Z3=B6;;){if(n2=X1+(Z3<<2)|0,f2=e[n2>>2]|0,y2=f2&z0,S2=d1>>>0>>0,S2){v3=Z3;break e}if(w2=Z3+1|0,C2=(x3|0)>(w2|0),C2)Z3=w2;else{v3=w2;break}}else v3=B6;while(!1);M2=x3-v3|0,_2=D3>>>0>32767,G2=M2>>>0>32767,u6=G2?32767:M2,T6=D3<<15,e6=T6|-2147483648,u2=_2?-1073774592:e6,K2=u2|u6,e[z1>>2]=K2,W3=v3,Q6=D3}else W3=B6,Q6=r6;if(N2=P6+1|0,T2=(N2|0)<(H|0),!T2){$=0;break}v=e[J>>2]|0,u1=v,B6=W3,P6=N2,r6=Q6}return B=F3,$|0}function MS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0;return S=B,s=e[t>>2]|0,$=e[s>>2]|0,c=e[n>>2]|0,f=e[c>>2]|0,d=$>>>0>f>>>0,I=d&1,C=$>>>0>>0,p=C&1,m=I-p|0,m|0}function TS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0;if(J0=B,p=e[t>>2]|0,m=(p|0)==1,!m&&(M=t+4|0,H=e[M>>2]|0,i0=t+8|0,r0=e[i0>>2]|0,K=r0+4|0,c0=e[K>>2]|0,A0=(c0|0)>0,!!A0)){for(l0=c0+1|0,C=p+-1|0,f0=p,Q0=0,d0=p,h0=1;;){v=l0-Q0|0,S=r0+(v<<2)|0,w=e[S>>2]|0,y=(d0|0)/(w|0)&-1,D=(p|0)/(d0|0)&-1,Q=i5(D,y)|0,b=w+-1|0,x=i5(D,b)|0,_=f0-x|0,L=1-h0|0;do if((w|0)==2)if(Y=(L|0)==0,s=C+_|0,t0=H+(s<<2)|0,Y){gQ(D,y,n,H,t0),E0=0;break}else{gQ(D,y,H,n,t0),E0=L;break}else if((w|0)==4)if(T=_+D|0,G=(L|0)==0,$=C+_|0,N=H+($<<2)|0,c=C+T|0,P=H+(c<<2)|0,f=C+D|0,d=f+T|0,z=H+(d<<2)|0,G){cQ(D,y,n,H,N,P,z),E0=0;break}else{cQ(D,y,H,n,N,P,z),E0=L;break}else if(J=(D|0)==1,y0=J?h0:L,W=(y0|0)==0,I=C+_|0,e0=H+(I<<2)|0,W){hQ(D,w,y,Q,n,n,n,H,H,e0),E0=1;break}else{hQ(D,w,y,Q,H,H,H,n,n,e0),E0=0;break}while(!1);if(X=Q0+1|0,a0=(X|0)==(c0|0),a0){C0=E0;break}else f0=_,Q0=X,d0=y,h0=E0}if(U=(C0|0)!=1,o0=(p|0)>0,u0=o0&U,u0)g0=0;else return;for(;Z=H+(g0<<2)|0,V=e[Z>>2]|0,s0=n+(g0<<2)|0,e[s0>>2]=V,n0=g0+1|0,j=(n0|0)==(p|0),!j;)g0=n0}}function aQ(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0;if(I1=B,e[t>>2]=n,d=n*3|0,I=i4(d,4)|0,x=t+4|0,e[x>>2]=I,J=i4(32,4)|0,i0=t+8|0,e[i0>>2]=J,d0=(n|0)==1,!d0){J0=J+8|0,P0=-1,a1=0,f1=n,l1=0;e:for(;;)for(D0=P0+1|0,m0=(D0|0)<4,m0?(x0=25768+(D0<<2)|0,C=e[x0>>2]|0,A1=C):(p=l1+2|0,A1=p),m=(A1|0)!=2,N0=a1,g1=f1;;){if(Y0=N0+1|0,v=(g1|0)/(A1|0)&-1,S=i5(v,A1)|0,w=(g1|0)==(S|0),!w){P0=D0,a1=N0,f1=g1,l1=A1;continue e}if(y=N0+2|0,D=J+(y<<2)|0,e[D>>2]=A1,Q=(N0|0)==0,$1=m|Q,!$1){if(b=(N0|0)<1,!b)for(R0=1;_=Y0-R0|0,L=_+1|0,M=J+(L<<2)|0,T=e[M>>2]|0,G=_+2|0,N=J+(G<<2)|0,e[N>>2]=T,P=R0+1|0,p0=(P|0)==(Y0|0),!p0;)R0=P;e[J0>>2]=2}if(z=(v|0)==1,z){s=Q,q0=Y0,V0=N0;break e}else N0=Y0,g1=v}if(e[J>>2]=n,Y=J+4|0,e[Y>>2]=q0,t0=+(n|0),W=6.2831854820251465/t0,$=s^1,e0=(V0|0)>0,n1=e0&$,!!n1)for(H=n+1|0,T0=0,v0=0,i1=1;;){if(X=v0+2|0,U=J+(X<<2)|0,o0=e[U>>2]|0,Z=i5(o0,i1)|0,V=(n|0)/(Z|0)&-1,s0=(o0|0)>1,s0){for(n0=(V|0)>2,r0=o0+-1|0,r1=T0,e1=0,c1=0;;){if(K=c1+i1|0,c0=+(K|0),A0=c0*W,n0)for(H0=0,S0=r1,L0=2;l0=H0+1,j=A0*l0,F0=+Yo(+j),c=S0+n|0,a0=I+(c<<2)|0,A[a0>>2]=F0,s1=+xn(+j),g0=S0+2|0,f=H+S0|0,f0=I+(f<<2)|0,A[f0>>2]=s1,Q0=L0+2|0,y0=(Q0|0)<(V|0),y0;)H0=l0,S0=g0,L0=Q0;if(h0=r1+V|0,E0=e1+1|0,M0=(E0|0)==(r0|0),M0)break;r1=h0,e1=E0,c1=K}C0=i5(V,r0)|0,u0=C0+T0|0,U0=u0}else U0=T0;if(k0=v0+1|0,G0=(k0|0)==(V0|0),G0)break;T0=U0,v0=k0,i1=Z}}}function lQ(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0;p=B,n=(t|0)==0,!n&&(s=t+4|0,$=e[s>>2]|0,c=($|0)==0,c||I2($),f=t+8|0,d=e[f>>2]|0,I=(d|0)==0,I||I2(d),e[t>>2]=0,e[t+4>>2]=0,e[t+8>>2]=0)}function cQ(t,n,s,$,c,f,d){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0;var I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0;if(f3=B,I=i5(n,t)|0,C=I<<1,E1=(n|0)>0,E1)for(L1=I*3|0,Y1=t<<2,V1=Y1+-1|0,y2=t<<1,c2=0,n5=I,h5=L1,W2=0,$5=C;T2=s+(n5<<2)|0,f5=+A[T2>>2],x5=s+(h5<<2)|0,p=+A[x5>>2],L=p+f5,e0=s+(W2<<2)|0,K=+A[e0>>2],h0=s+($5<<2)|0,G0=+A[h0>>2],U0=G0+K,A1=U0+L,I1=W2<<2,h1=$+(I1<<2)|0,A[h1>>2]=A1,u1=U0-L,d1=V1+I1|0,m1=$+(d1<<2)|0,A[m1>>2]=u1,p1=+A[e0>>2],Q1=+A[h0>>2],D1=p1-Q1,_1=I1+y2|0,y1=_1+-1|0,k1=$+(y1<<2)|0,A[k1>>2]=D1,x1=+A[x5>>2],N1=+A[T2>>2],w1=x1-N1,U1=$+(_1<<2)|0,A[U1>>2]=w1,Z1=n5+t|0,G1=h5+t|0,v1=W2+t|0,K1=$5+t|0,P1=c2+1|0,c5=(P1|0)==(n|0),!c5;)c2=P1,n5=Z1,h5=G1,W2=v1,$5=K1;if(H1=(t|0)<2,!H1){if(q1=(t|0)==2,!q1){if(E1)for(j1=t<<1,m5=0,g5=0;;){for(j=g5<<2,a0=j+j1|0,Z2=2,t5=g5,F2=j,H5=a0;O1=t5+2|0,l2=F2+2|0,z1=H5+-2|0,h2=O1+I|0,A2=Z2+-2|0,d2=c+(A2<<2)|0,s2=+A[d2>>2],g2=h2+-1|0,$2=s+(g2<<2)|0,t2=+A[$2>>2],a2=t2*s2,i2=Z2+-1|0,o2=c+(i2<<2)|0,X1=+A[o2>>2],n2=s+(h2<<2)|0,f2=+A[n2>>2],e2=f2*X1,S2=e2+a2,w2=f2*s2,C2=X1*t2,M2=w2-C2,_2=h2+I|0,G2=f+(A2<<2)|0,u2=+A[G2>>2],K2=_2+-1|0,N2=s+(K2<<2)|0,q2=+A[N2>>2],O2=q2*u2,V2=f+(i2<<2)|0,A5=+A[V2>>2],P2=s+(_2<<2)|0,T1=+A[P2>>2],j2=T1*A5,R5=j2+O2,X2=T1*u2,v5=A5*q2,z2=X2-v5,w5=_2+I|0,O5=d+(A2<<2)|0,a5=+A[O5>>2],k2=w5+-1|0,E5=s+(k2<<2)|0,r5=+A[E5>>2],x2=r5*a5,R2=d+(i2<<2)|0,B2=+A[R2>>2],C5=s+(w5<<2)|0,u5=+A[C5>>2],S5=u5*B2,G5=S5+x2,D5=u5*a5,H2=B2*r5,I5=D5-H2,s5=G5+S2,l5=G5-S2,B5=I5+M2,M1=M2-I5,m=s+(O1<<2)|0,v=+A[m>>2],S=v+z2,w=v-z2,y=t5+1|0,D=s+(y<<2)|0,Q=+A[D>>2],b=Q+R5,x=Q-R5,_=s5+b,M=F2|1,T=$+(M<<2)|0,A[T>>2]=_,G=B5+S,N=$+(l2<<2)|0,A[N>>2]=G,P=x-M1,z=H5+-3|0,Y=$+(z<<2)|0,A[Y>>2]=P,t0=l5-w,J=$+(z1<<2)|0,A[J>>2]=t0,W=M1+x,H=l2+j1|0,X=H+-1|0,U=$+(X<<2)|0,A[U>>2]=W,o0=l5+w,Z=$+(H<<2)|0,A[Z>>2]=o0,V=b-s5,s0=z1+j1|0,n0=s0+-1|0,i0=$+(n0<<2)|0,A[i0>>2]=V,r0=B5-S,c0=$+(s0<<2)|0,A[c0>>2]=r0,A0=Z2+2|0,l0=(A0|0)<(t|0),l0;)Z2=A0,t5=O1,F2=l2,H5=z1;if(r2=g5+t|0,W1=m5+1|0,o5=(W1|0)==(n|0),o5)break;m5=W1,g5=r2}if(g0=t&1,f0=(g0|0)==0,!f0)return}if(Q0=t+-1|0,d0=Q0+I|0,y0=t<<2,E0=t<<1,!!E1)for(C0=d0+C|0,e5=0,Y2=d0,b5=C0,p5=t,X5=t;u0=s+(Y2<<2)|0,k0=+A[u0>>2],J0=s+(b5<<2)|0,D0=+A[J0>>2],m0=D0+k0,x0=m0*-.7071067690849304,F0=k0-D0,M0=F0*.7071067690849304,p0=X5+-1|0,H0=s+(p0<<2)|0,R0=+A[H0>>2],S0=M0+R0,L0=p5+-1|0,Y0=$+(L0<<2)|0,A[Y0>>2]=S0,q0=+A[H0>>2],N0=q0-M0,V0=p5+E0|0,T0=V0+-1|0,r1=$+(T0<<2)|0,A[r1>>2]=N0,P0=Y2+I|0,e1=s+(P0<<2)|0,v0=+A[e1>>2],i1=x0-v0,c1=$+(p5<<2)|0,A[c1>>2]=i1,a1=+A[e1>>2],f1=a1+x0,g1=$+(V0<<2)|0,A[g1>>2]=f1,l1=Y2+t|0,$1=b5+t|0,n1=p5+y0|0,s1=X5+t|0,z0=e5+1|0,k5=(z0|0)==(n|0),!k5;)e5=z0,Y2=l1,b5=$1,p5=n1,X5=s1}}function gQ(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0;if(w1=B,f=i5(n,t)|0,d=t<<1,b=(n|0)>0,b)for(t0=d+-1|0,I1=0,u1=0,p1=f;n0=s+(u1<<2)|0,Q0=+A[n0>>2],x0=s+(p1<<2)|0,N0=+A[x0>>2],f1=N0+Q0,A1=u1<<1,I=$+(A1<<2)|0,A[I>>2]=f1,C=+A[n0>>2],p=+A[x0>>2],m=C-p,v=t0+A1|0,S=$+(v<<2)|0,A[S>>2]=m,w=u1+t|0,y=p1+t|0,D=I1+1|0,n1=(D|0)==(n|0),!n1;)I1=D,u1=w,p1=y;if(Q=(t|0)<2,!Q){if(x=(t|0)==2,!x){if(b)for(h1=0,d1=0,Q1=f;;){for(H0=d1<<1,R0=H0+d|0,z0=2,_1=Q1,k1=R0,x1=d1,L1=H0;T=_1+2|0,G=k1+-2|0,N=x1+2|0,P=L1+2|0,z=z0+-2|0,Y=c+(z<<2)|0,J=+A[Y>>2],W=_1+1|0,e0=s+(W<<2)|0,H=+A[e0>>2],X=H*J,U=z0+-1|0,o0=c+(U<<2)|0,Z=+A[o0>>2],V=s+(T<<2)|0,s0=+A[V>>2],i0=s0*Z,r0=i0+X,K=s0*J,c0=Z*H,A0=K-c0,l0=s+(N<<2)|0,j=+A[l0>>2],a0=A0+j,g0=$+(P<<2)|0,A[g0>>2]=a0,f0=+A[l0>>2],d0=A0-f0,y0=$+(G<<2)|0,A[y0>>2]=d0,h0=x1+1|0,E0=s+(h0<<2)|0,C0=+A[E0>>2],u0=C0+r0,k0=L1|1,J0=$+(k0<<2)|0,A[J0>>2]=u0,D0=+A[E0>>2],m0=D0-r0,F0=k1+-3|0,M0=$+(F0<<2)|0,A[M0>>2]=m0,G0=z0+2|0,p0=(G0|0)<(t|0),p0;)z0=G0,_1=T,k1=G,x1=N,L1=P;if(_=d1+t|0,L=Q1+t|0,M=h1+1|0,s1=(M|0)==(n|0),s1)break;h1=M,d1=_,Q1=L}if(S0=(t|0)%2&-1,L0=(S0|0)==1,L0)return}if(Y0=t+-1|0,!!b)for(q0=f+Y0|0,E1=0,m1=t,D1=q0,y1=Y0;V0=s+(D1<<2)|0,T0=+A[V0>>2],U0=-T0,r1=$+(m1<<2)|0,A[r1>>2]=U0,P0=s+(y1<<2)|0,e1=e[P0>>2]|0,v0=m1+-1|0,i1=$+(v0<<2)|0,e[i1>>2]=e1,c1=m1+d|0,a1=D1+t|0,g1=y1+t|0,l1=E1+1|0,$1=(l1|0)==(n|0),!$1;)E1=l1,m1=c1,D1=a1,y1=g1}}function hQ(t,n,s,$,c,f,d,I,C,p){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0,I=I|0,C=C|0,p=p|0;var m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,V5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,m6=0,z3=0,$6=0,p6=0,_6=0,Y6=0,B6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,s3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,A4=0,p9=0,S4=0,D4=0,R4=0,M4=0,Z4=0,C4=0,T4=0,N9=0,G4=0,s4=0,x4=0,g4=0,ue=0,P9=0,d9=0,Ie=0,Le=0,ze=0,N4=0,Me=0,U4=0,W4=0,we=0,Ze=0,z9=0,Ae=0,h4=0,b6=0,O4=0,R9=0,o4=0,b4=0,se=0,Z9=0,oe=0,$e=0,B4=0,j4=0,F4=0,ae=0,E9=0,a6=0,Te=0,$4=0,de=0,m4=0,a4=0,U6=0,ke=0,ve=0,We=0,l4=0,w4=0,g8=0,H3=0,Q9=0,C9=0,L4=0,X4=0,$7=0,Se=0,a7=0,p7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,Q7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ge=0,De=0,je=0,k8=0,y9=0,g7=0,Ee=0,h7=0,y7=0,j8=0,w7=0,ee=0,X8=0,P8=0,v8=0,Xe=0,P4=0,be=0,e8=0,u8=0,S8=0,le=0,W9=0,t8=0,I8=0,i8=0,d8=0,ce=0,Ce=0,Ne=0,Ue=0,j9=0,_e=0,ge=0,r8=0,Be=0,p4=0,E8=0,e7=0,H4=0,I3=0,Oe=0,C8=0,te=0,H9=0,ie=0,S9=0,Pe=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,A8=0,D8=0,q4=0,n7=0,b8=0,He=0,B9=0,A7=0,qe=0,L7=0,O7=0,k7=0,s7=0,v7=0,re=0,M7=0,P7=0,s8=0,_8=0,S7=0,J8=0,Re=0,he=0,X9=0,D7=0,X7=0,Lt=0,Mt=0,Tt=0,ct=0,H7=0,gt=0,q7=0,ht=0,Y7=0,ft=0,et=0,ti=0,Gt=0,ut=0,It=0,ii=0,dt=0,tt=0,ri=0,Nt=0,Ut=0,Ot=0,Pt=0,it=0,Et=0,Ht=0,J7=0,rt=0,T7=0,K7=0,ni=0,qt=0,Ai=0,Ct=0,Yt=0,Bt=0,mt=0,Jt=0,pt=0,V7=0,Qt=0,Kt=0,nt=0,G7=0,yt=0,me=0,wt=0,b7=0,At=0,i9=0,u7=0,B8=0;B8=B,S=+(n|0),w=6.2831854820251465/S,h8=+Yo(+w),L7=+xn(+w),d2=n+1|0,m3=d2>>1,N9=t+-1|0,N4=N9>>1,R9=i5(s,t)|0,E9=i5(n,t)|0,l4=(t|0)==1;e:do if(!l4){if(p7=($|0)>0,p7)for(Be=0;a0=d+(Be<<2)|0,J0=e[a0>>2]|0,L0=C+(Be<<2)|0,e[L0>>2]=J0,i1=Be+1|0,I8=(i1|0)==($|0),!I8;)Be=i1;if(P=(n|0)>1,P)for(Z=(s|0)>0,C8=1,O7=0;;){if(I1=O7+R9|0,Z)for(r7=0,X9=I1;k1=f+(X9<<2)|0,H1=e[k1>>2]|0,s2=I+(X9<<2)|0,e[s2>>2]=H1,e2=X9+t|0,q2=r7+1|0,W9=(q2|0)==(s|0),!W9;)r7=q2,X9=e2;if(z2=C8+1|0,t8=(z2|0)==(n|0),t8)break;C8=z2,O7=I1}if(C5=0-t|0,M1=(N4|0)>(s|0),M1){if(P)for(M3=(s|0)>0,q5=(t|0)>2,I3=C5,H9=1,v7=0;;){if(w3=v7+R9|0,w6=I3+t|0,M3)for(Z3=w3-t|0,s3=w6+-1|0,n8=0,D7=Z3;;){if(x3=D7+t|0,q5)for(i8=2,ge=s3,ht=x3;F3=ge+2|0,E6=ht+2|0,I9=ge+1|0,Z4=p+(I9<<2)|0,T4=+A[Z4>>2],G4=ht+1|0,s4=f+(G4<<2)|0,x4=+A[s4>>2],g4=x4*T4,ue=p+(F3<<2)|0,P9=+A[ue>>2],d9=f+(E6<<2)|0,Ie=+A[d9>>2],Le=Ie*P9,ze=Le+g4,Me=I+(G4<<2)|0,A[Me>>2]=ze,U4=+A[Z4>>2],W4=+A[d9>>2],we=W4*U4,Ze=+A[ue>>2],z9=+A[s4>>2],Ae=z9*Ze,h4=we-Ae,b6=I+(E6<<2)|0,A[b6>>2]=h4,O4=i8+2|0,o4=(O4|0)<(t|0),o4;)i8=O4,ge=F3,ht=E6;if(b4=n8+1|0,e8=(b4|0)==(s|0),e8)break;n8=b4,D7=x3}if(se=H9+1|0,u8=(se|0)==(n|0),u8)break;I3=w6,H9=se,v7=w3}}else if(P)for(h5=(t|0)>2,g3=(s|0)>0,Oe=C5,ie=1,M7=0;;){if(Z9=Oe+t|0,oe=M7+R9|0,h5)for($e=Z9+-1|0,d8=2,r8=$e,X7=oe;;){if(B4=r8+2|0,j4=X7+2|0,g3)for(F4=r8+1|0,ae=p+(F4<<2)|0,a6=p+(B4<<2)|0,A8=0,Y7=j4;Te=+A[ae>>2],$4=Y7+-1|0,de=f+($4<<2)|0,m4=+A[de>>2],a4=m4*Te,U6=+A[a6>>2],ke=f+(Y7<<2)|0,ve=+A[ke>>2],We=ve*U6,w4=We+a4,g8=I+($4<<2)|0,A[g8>>2]=w4,H3=+A[ae>>2],Q9=+A[ke>>2],C9=Q9*H3,L4=+A[a6>>2],X4=+A[de>>2],$7=X4*L4,Se=C9-$7,a7=I+(Y7<<2)|0,A[a7>>2]=Se,K8=Y7+t|0,l7=A8+1|0,S8=(l7|0)==(s|0),!S8;)A8=l7,Y7=K8;if(c7=d8+2|0,x8=(c7|0)<(t|0),x8)d8=c7,r8=B4,X7=j4;else break}if(F8=ie+1|0,le=(F8|0)==(n|0),le)break;Oe=Z9,ie=F8,M7=oe}if(L8=i5(R9,n)|0,M8=(N4|0)<(s|0),V8=(m3|0)>1,!M8){if(!V8)break;for(z8=(s|0)>0,Q7=(t|0)>2,Pe=1,s8=0,Mt=L8;;){if(E0=s8+R9|0,C0=Mt-R9|0,z8)for(q4=0,et=E0,tt=C0;;){if(Q7)for(Ce=2,J7=et,Ct=tt;u0=J7+2|0,k0=Ct+2|0,D0=J7+1|0,m0=I+(D0<<2)|0,x0=+A[m0>>2],F0=Ct+1|0,M0=I+(F0<<2)|0,G0=+A[M0>>2],p0=G0+x0,H0=f+(D0<<2)|0,A[H0>>2]=p0,R0=I+(u0<<2)|0,S0=+A[R0>>2],Y0=I+(k0<<2)|0,q0=+A[Y0>>2],N0=S0-q0,V0=f+(F0<<2)|0,A[V0>>2]=N0,T0=+A[R0>>2],U0=+A[Y0>>2],r1=U0+T0,P0=f+(u0<<2)|0,A[P0>>2]=r1,e1=+A[M0>>2],v0=+A[m0>>2],c1=e1-v0,a1=f+(k0<<2)|0,A[a1>>2]=c1,f1=Ce+2|0,g1=(f1|0)<(t|0),g1;)Ce=f1,J7=u0,Ct=k0;if(l1=et+t|0,A1=tt+t|0,$1=q4+1|0,P4=($1|0)==(s|0),P4)break;q4=$1,et=l1,tt=A1}if(n1=Pe+1|0,be=(n1|0)==(m3|0),be)break e;Pe=n1,s8=E0,Mt=C0}}if(V8)for(D=(t|0)>2,Q=(s|0)>0,S9=1,P7=0,Lt=L8;;){if(b=P7+R9|0,x=Lt-R9|0,D)for(ce=2,ft=b,dt=x;;){if(_=ft+2|0,L=dt+2|0,Q)for(M=L-t|0,T=_-t|0,D8=0,Ht=T,Ai=M;G=Ht+t|0,N=Ai+t|0,z=G+-1|0,Y=I+(z<<2)|0,t0=+A[Y>>2],J=N+-1|0,W=I+(J<<2)|0,e0=+A[W>>2],H=e0+t0,X=f+(z<<2)|0,A[X>>2]=H,U=I+(G<<2)|0,o0=+A[U>>2],V=I+(N<<2)|0,s0=+A[V>>2],n0=o0-s0,i0=f+(J<<2)|0,A[i0>>2]=n0,r0=+A[U>>2],K=+A[V>>2],c0=K+r0,A0=f+(G<<2)|0,A[A0>>2]=c0,l0=+A[W>>2],j=+A[Y>>2],g0=l0-j,f0=f+(N<<2)|0,A[f0>>2]=g0,Q0=D8+1|0,v8=(Q0|0)==(s|0),!v8;)D8=Q0,Ht=G,Ai=N;if(d0=ce+2|0,y0=(d0|0)<(t|0),y0)ce=d0,ft=_,dt=L;else break}if(h0=S9+1|0,Xe=(h0|0)==(m3|0),Xe)break;S9=h0,P7=b,Lt=x}}while(!1);if(y=($|0)>0,y)for(p4=0;s1=C+(p4<<2)|0,z0=e[s1>>2]|0,h1=d+(p4<<2)|0,e[h1>>2]=z0,E1=p4+1|0,P8=(E1|0)==($|0),!P8;)p4=E1;if(u1=i5($,n)|0,d1=(m3|0)>1,d1){for(m1=(s|0)>0,H8=1,_8=0,Tt=u1;;){if(p1=_8+R9|0,Q1=Tt-R9|0,m1)for(D1=Q1-t|0,_1=p1-t|0,n7=0,ti=_1,ri=D1;y1=ti+t|0,x1=ri+t|0,L1=I+(y1<<2)|0,N1=+A[L1>>2],w1=I+(x1<<2)|0,U1=+A[w1>>2],Z1=U1+N1,G1=f+(y1<<2)|0,A[G1>>2]=Z1,v1=+A[w1>>2],K1=+A[L1>>2],P1=v1-K1,q1=f+(x1<<2)|0,A[q1>>2]=P1,Y1=n7+1|0,ee=(Y1|0)==(s|0),!ee;)n7=Y1,ti=y1,ri=x1;if(j1=H8+1|0,X8=(j1|0)==(m3|0),X8)break;H8=j1,_8=p1,Tt=Q1}if(r2=n+-1|0,W1=i5(r2,$)|0,d1){for(O1=(m3|0)>2,T8=0,N8=1,qe=1,S7=0,ct=u1;;){if(l2=S7+$|0,z1=ct-$|0,h2=N8*h8,A2=T8*L7,V1=h2-A2,g2=T8*h8,$2=N8*L7,t2=$2+g2,y)for(E8=0,Nt=l2,rt=z1,Yt=W1,V7=$;a2=d+(E8<<2)|0,i2=+A[a2>>2],o2=V7+1|0,X1=d+(V7<<2)|0,n2=+A[X1>>2],f2=n2*V1,y2=f2+i2,S2=Nt+1|0,w2=C+(Nt<<2)|0,A[w2>>2]=y2,C2=Yt+1|0,M2=d+(Yt<<2)|0,_2=+A[M2>>2],G2=_2*t2,u2=rt+1|0,K2=C+(rt<<2)|0,A[K2>>2]=G2,N2=E8+1|0,h7=(N2|0)==($|0),!h7;)E8=N2,Nt=S2,rt=u2,Yt=C2,V7=o2;if(O1)for(G8=t2,y8=V1,f7=2,Ut=$,T7=W1;;){if(T2=Ut+$|0,O2=T7-$|0,V2=y8*V1,A5=G8*t2,P2=V2-A5,T1=G8*V1,j2=y8*t2,R5=j2+T1,y)for(e7=0,Bt=l2,Qt=z1,yt=T2,b7=O2;X2=yt+1|0,v5=d+(yt<<2)|0,f5=+A[v5>>2],w5=f5*P2,O5=Bt+1|0,a5=C+(Bt<<2)|0,k2=+A[a5>>2],E5=k2+w5,A[a5>>2]=E5,r5=b7+1|0,x2=d+(b7<<2)|0,R2=+A[x2>>2],B2=R2*R5,x5=Qt+1|0,u5=C+(Qt<<2)|0,S5=+A[u5>>2],G5=S5+B2,A[u5>>2]=G5,D5=e7+1|0,y7=(D5|0)==($|0),!y7;)e7=D5,Bt=O5,Qt=x5,yt=X2,b7=r5;if(H2=f7+1|0,j8=(H2|0)==(m3|0),j8)break;G8=R5,y8=P2,f7=H2,Ut=T2,T7=O2}if(I5=qe+1|0,w7=(I5|0)==(m3|0),w7)break;T8=t2,N8=V1,qe=I5,S7=l2,ct=z1}if(d1)for(t7=1,J8=0;;){if(s5=J8+$|0,y)for(H4=0,H7=s5;l5=H7+1|0,B5=d+(H7<<2)|0,k5=+A[B5>>2],c5=C+(H4<<2)|0,o5=+A[c5>>2],Z2=o5+k5,A[c5>>2]=Z2,c2=H4+1|0,g7=(c2|0)==($|0),!g7;)H4=c2,H7=l5;if(m5=t7+1|0,Ee=(m5|0)==(m3|0),Ee)break;t7=m5,J8=s5}}}if(e5=(t|0)<(s|0),e5){if(Y2=(t|0)>0,Y2)for(t5=(s|0)>0,Ue=0;;){if(t5)for(He=0,he=Ue,q7=Ue;J5=I+(he<<2)|0,e3=e[J5>>2]|0,A3=c+(q7<<2)|0,e[A3>>2]=e3,E3=he+t|0,F5=q7+E9|0,K5=He+1|0,De=(K5|0)==(s|0),!De;)He=K5,he=E3,q7=F5;if(y3=Ue+1|0,je=(y3|0)==(t|0),je)break;Ue=y3}}else if(n5=(s|0)>0,n5)for(g5=(t|0)>0,b8=0,Re=0,gt=0;;){if(g5)for(Ne=0,Gt=Re,Ot=gt;b5=Gt+1|0,W2=I+(Gt<<2)|0,$5=e[W2>>2]|0,F2=Ot+1|0,p5=c+(Ot<<2)|0,e[p5>>2]=$5,H5=Ne+1|0,k8=(H5|0)==(t|0),!k8;)Ne=H5,Gt=b5,Ot=F2;if(X5=Re+t|0,d5=gt+E9|0,f3=b8+1|0,y9=(f3|0)==(s|0),y9)break;b8=f3,Re=X5,gt=d5}if(h3=t<<1,B3=i5(R9,n)|0,d1)for(q3=(s|0)>0,i7=1,k7=0,ut=0,Pt=B3;;){if(z5=k7+h3|0,Q3=ut+R9|0,W5=Pt-R9|0,q3)for(B9=0,K7=z5,mt=Q3,Kt=W5;j3=I+(mt<<2)|0,_3=e[j3>>2]|0,T3=K7+-1|0,$3=c+(T3<<2)|0,e[$3>>2]=_3,a3=I+(Kt<<2)|0,l3=e[a3>>2]|0,C3=c+(K7<<2)|0,e[C3>>2]=l3,N5=K7+E9|0,P5=mt+t|0,y5=Kt+t|0,G3=B9+1|0,f8=(G3|0)==(s|0),!f8;)B9=G3,K7=N5,mt=P5,Kt=y5;if(L5=i7+1|0,Ge=(L5|0)==(m3|0),Ge)break;i7=L5,k7=z5,ut=Q3,Pt=W5}if(!l4){if(t6=(N4|0)<(s|0),t3=0-t|0,!t6){if(!d1)return;for(m=(s|0)<1,v=(t|0)<3,w8=m|v,q8=1,s7=t3,It=0,it=0,ni=B3;;){if(f6=s7+h3|0,p3=It+h3|0,X3=it+R9|0,V3=ni-R9|0,!w8)for(A7=0,Jt=f6,nt=p3,me=X3,At=V3;;){for(j9=2;o6=t-j9|0,u3=j9+me|0,k6=u3+-1|0,v6=I+(k6<<2)|0,m6=+A[v6>>2],z3=j9+At|0,$6=z3+-1|0,p6=I+($6<<2)|0,_6=+A[p6>>2],Y6=_6+m6,B6=j9+nt|0,v3=B6+-1|0,W3=c+(v3<<2)|0,A[W3>>2]=Y6,u6=+A[v6>>2],O3=+A[p6>>2],S3=u6-O3,P3=o6+Jt|0,Y3=P3+-1|0,S6=c+(Y3<<2)|0,A[S6>>2]=S3,i6=I+(u3<<2)|0,i3=+A[i6>>2],P6=I+(z3<<2)|0,r6=+A[P6>>2],I6=r6+i3,D3=c+(B6<<2)|0,A[D3>>2]=I6,T6=+A[P6>>2],e6=+A[i6>>2],Q6=T6-e6,R6=c+(P3<<2)|0,A[R6>>2]=Q6,K6=j9+2|0,d6=(K6|0)<(t|0),d6;)j9=K6;if(N3=Jt+E9|0,V5=nt+E9|0,k3=me+t|0,c3=At+t|0,U3=A7+1|0,Z8=(U3|0)==(s|0),Z8)break;A7=U3,Jt=N3,nt=V5,me=k3,At=c3}if(J6=q8+1|0,W8=(J6|0)==(m3|0),W8)break;q8=J6,s7=f6,It=p3,it=X3,ni=V3}return}if(d1)for(o3=(t|0)>2,R3=(s|0)>0,te=1,re=t3,ii=0,Et=0,qt=B3;;){if(Z6=re+h3|0,G6=ii+h3|0,j6=Et+R9|0,r9=qt-R9|0,o3&&(x6=Z6+t|0,R3))for(_e=2;;){for(S4=_e+r9|0,D4=_e+j6|0,R4=_e+G6|0,M4=x6-_e|0,Y8=0,pt=M4,G7=R4,wt=D4,i9=S4;V6=wt+-1|0,y6=I+(V6<<2)|0,F6=+A[y6>>2],L6=i9+-1|0,X6=I+(L6<<2)|0,A9=+A[X6>>2],W6=A9+F6,g9=G7+-1|0,h9=c+(g9<<2)|0,A[h9>>2]=W6,f9=+A[y6>>2],s9=+A[X6>>2],o9=f9-s9,M9=pt+-1|0,M6=c+(M9<<2)|0,A[M6>>2]=o9,e9=I+(wt<<2)|0,T9=+A[e9>>2],u9=I+(i9<<2)|0,d4=+A[u9>>2],n4=d4+T9,c4=c+(G7<<2)|0,A[c4>>2]=n4,G9=+A[u9>>2],V9=+A[e9>>2],v9=G9-V9,H6=c+(pt<<2)|0,A[H6>>2]=v9,t9=pt+E9|0,E4=G7+E9|0,v4=wt+t|0,A4=i9+t|0,p9=Y8+1|0,U8=(p9|0)==(s|0),!U8;)Y8=p9,pt=t9,G7=E4,wt=v4,i9=A4;if(N6=_e+2|0,D6=(N6|0)<(t|0),D6)_e=N6;else break}if(C4=te+1|0,O8=(C4|0)==(m3|0),O8)break;te=C4,re=Z6,ii=G6,Et=j6,qt=r9}}}function GS(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,V5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,m6=0,z3=0,$6=0,p6=0,_6=0,Y6=0,B6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,s3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,A4=0,p9=0,S4=0,D4=0,R4=0,M4=0,Z4=0,C4=0,T4=0,N9=0,G4=0,s4=0,x4=0,g4=0,ue=0,P9=0,d9=0,Ie=0,Le=0,ze=0,N4=0,Me=0,U4=0,W4=0,we=0,Ze=0,z9=0,Ae=0,h4=0,b6=0,O4=0,R9=0,o4=0,b4=0,se=0,Z9=0,oe=0,$e=0,B4=0,j4=0,F4=0,ae=0,E9=0,a6=0,Te=0,$4=0,de=0,m4=0,a4=0,U6=0,ke=0,ve=0,We=0,l4=0,w4=0,g8=0,H3=0,Q9=0,C9=0,L4=0,X4=0,$7=0,Se=0,a7=0,p7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,Q7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ge=0,De=0,je=0,k8=0,y9=0,g7=0,Ee=0,h7=0,y7=0,j8=0,w7=0,ee=0,X8=0,P8=0,v8=0,Xe=0,P4=0,be=0,e8=0,u8=0,S8=0,le=0,W9=0,t8=0,I8=0,i8=0,d8=0,ce=0,Ce=0,Ne=0,Ue=0,j9=0,_e=0,ge=0,r8=0,Be=0,p4=0,E8=0,e7=0,H4=0,I3=0,Oe=0,C8=0,te=0,H9=0,ie=0,S9=0,Pe=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,A8=0,D8=0,q4=0,n7=0,b8=0,He=0,B9=0,A7=0,qe=0,L7=0,O7=0,k7=0,s7=0,v7=0,re=0,M7=0,P7=0,s8=0,_8=0,S7=0,J8=0,Re=0,he=0,X9=0,D7=0,X7=0,Lt=0,Mt=0,Tt=0,ct=0,H7=0,gt=0,q7=0,ht=0,Y7=0,ft=0,et=0,ti=0,Gt=0,ut=0,It=0,ii=0,dt=0,tt=0,ri=0,Nt=0,Ut=0,Ot=0,Pt=0,it=0,Et=0,Ht=0,J7=0,rt=0,T7=0,K7=0,ni=0,qt=0,Ai=0,Ct=0,Yt=0,Bt=0,mt=0,Jt=0,pt=0,V7=0,Qt=0,Kt=0,nt=0,G7=0,yt=0,me=0,wt=0,b7=0,At=0,i9=0,u7=0,B8=0,I7=0,_7=0,Hr=0,hr=0,VA=0,Ln=0,zA=0,Mn=0,ZA=0,WA=0,Tn=0,jA=0,qr=0,XA=0,es=0,ts=0,Gn=0,is=0,Nn=0,Un=0,rs=0,Yr=0,On=0,Jr=0,Pn=0,Hn=0,ns=0,As=0,ss=0,Kr=0,qn=0,os=0,fr=0,Vr=0,$s=0,as=0,zr=0,si=0,Yn=0,ls=0,cs=0,Jn=0,Kn=0,Vn=0,gs=0,oi=0,Zr=0,hs=0,zn=0,fs=0,us=0,Is=0,Zn=0,ds=0,Es=0,Cs=0,Bs=0,Wn=0,ms=0,ps=0,Wr=0,ur=0,jr=0,Qs=0,Ki=0,ys=0,jn=0,Xr=0,Xn=0,en=0,ws=0,eA=0,tA=0,ks=0,iA=0,rA=0,vs=0,Ir=0,nA=0,$i=0,tn=0,dr=0,Vi=0,Er=0,Ni=0,Cr=0,AA=0,Ui=0,Bi=0,mi=0,Vt=0,pi=0,Br=0,zi=0,Zi=0,mr=0,ai=0,Ss=0,st=0,za=0,rn=0,nn=0,Rh=0,Za=0,Ds=0,xh=0,Vo=0,Wa=0,Fh=0,Lh=0,Mh=0,zo=0,ja=0,Xa=0,Zo=0,An=0,el=0,Th=0,bs=0,Wi=0,Gh=0,Nh=0,Uh=0,Oh=0,Ph=0,Hh=0,qh=0,Yh=0,Jh=0,Kh=0,tl=0,pr=0,Vh=0,zh=0,il=0,Zh=0,Wo=0,_s=0,jo=0,Wh=0,jh=0,Xo=0,rl=0,nl=0,Al=0,e$=0,sl=0,Rs=0,Xh=0,ef=0,ol=0,tf=0,rf=0,$l=0,nf=0,Af=0,al=0,ll=0,cl=0,gl=0,hl=0,sn=0,sf=0,fl=0,of=0,ul=0,Il=0,$f=0,af=0,lf=0,t$=0,dl=0,El=0,sA=0,Cl=0,i$=0,cf=0,Bl=0,gf=0,ml=0,hf=0,ff=0,pl=0,Ql=0,uf=0,xs=0,If=0,r$=0,yl=0,wl=0,df=0,Ef=0,Cf=0,Bf=0,mf=0,pf=0,Fs=0,kl=0,vl=0,Sl=0,Ls=0,Qf=0,Dl=0,yf=0,bl=0,wf=0,kf=0,_l=0,n$=0,vf=0,Sf=0,Ms=0,Df=0,Ts=0,bf=0,A$=0,_f=0,Rf=0,xf=0,Rl=0,Ff=0,Lf=0,Mf=0,Tf=0,xl=0,Fl=0,ji=0,Ll=0,Gs=0,s$=0,o$=0,on=0,Ml=0,$n=0,Gf=0,Tl=0,Nf=0,Uf=0,Of=0,Pf=0,Ns=0,$$=0,Qr=0,Hf=0,qf=0,Gl=0,a$=0,Nl=0,Ul=0,Yf=0,Ol=0,Jf=0,l$=0,Kf=0,Vf=0,U9=0,zf=0,Pl=0,Zf=0,Wf=0,c$=0,jf=0,g$=0,Hl=0,Xf=0,eu=0,ql=0,Yl=0,tu=0,h$=0,f$=0,Jl=0,Kl=0,iu=0,Vl=0,u$=0,ru=0,zl=0,nu=0,Au=0,su=0,ou=0,Zl=0,Wl=0,I$=0,Us=0,jl=0,$u=0,Xl=0,ec=0,au=0,lu=0,cu=0,tc=0,gu=0,hu=0,fu=0,uu=0,Iu=0,du=0,ic=0,Eu=0,rc=0,Cu=0,an=0,Bu=0,nc=0,mu=0,oA=0,Ac=0,d$=0,pu=0,Os=0,E$=0,Qu=0,C$=0,sc=0,yu=0,wu=0,ku=0,vu=0,Su=0,oc=0,Du=0,bu=0,_u=0,Ps=0,$A=0,B$=0,Ru=0,m$=0,xu=0,Fu=0,Lu=0,$c=0,Mu=0,Tu=0,Gu=0,Nu=0,Uu=0,Hs=0,Ou=0,Pu=0,ac=0,Hu=0,qu=0,Yu=0,Ju=0,li=0,lc=0,ci=0,cc=0,p$=0,Ku=0,zt=0,aA=0,Vu=0,zu=0,Zu=0,Wu=0,ju=0,gc=0,Xu=0,eI=0,hc=0,tI=0,iI=0,lA=0,Q$=0,rI=0,fc=0,nI=0,AI=0,qs=0,sI=0,oI=0,uc=0,Ic=0,$I=0,aI=0,ln=0,lI=0,cI=0,cn=0,gI=0,dc=0,hI=0,fI=0,cA=0,Ec=0,uI=0,Cc=0,II=0,Xi=0,y$=0,dI=0,Bc=0,mc=0,EI=0,CI=0,pc=0,BI=0,mI=0,pI=0,Qc=0,QI=0,gA=0,yI=0,gn=0,wI=0,kI=0,w$=0,vI=0,k$=0,v$=0,SI=0,yc=0,wc=0,DI=0,kc=0,vc=0,Sc=0,bI=0,Dc=0,bc=0,_I=0,RI=0,_c=0,Rc=0,xI=0,xc=0,Fc=0,FI=0,LI=0,Lc=0,S$=0,Mc=0,Tc=0,Gc=0,Nc=0,MI=0,TI=0,GI=0,NI=0,UI=0,OI=0,PI=0,HI=0,Uc=0,D$=0,qI=0,YI=0,JI=0,Oc=0,Pc=0,KI=0,Hc=0,b$=0,Ys=0,qc=0,VI=0,zI=0,ZI=0,WI=0,Yc=0,Js=0,jI=0,XI=0,ed=0,td=0,id=0,rd=0,nd=0,Ad=0,Jc=0,sd=0,od=0,$d=0,ad=0,Ks=0,Kc=0,ld=0,cd=0,hn=0,Vc=0,zc=0,_$=0,gd=0,Zc=0,hd=0,Wc=0,jc=0,fd=0,ud=0,Id=0,dd=0,Ed=0,Vs=0,R$=0,Cd=0,Bd=0,md=0,pd=0,Xc=0,Qd=0,eg=0,yd=0,wd=0,tg=0,yr=0,ig=0,rg=0,kd=0,ng=0,zs=0,vd=0,Sd=0,Dd=0,Zs=0,Ag=0,bd=0,_d=0,sg=0,Rd=0,xd=0,x$=0,Ws=0,Fd=0,Ld=0,Md=0,og=0,$g=0,ag=0,Td=0,Gd=0,hA=0,Nd=0,lg=0,Ud=0,F$=0,cg=0,Od=0,Pd=0,Hd=0,qd=0,gg=0,Yd=0,Jd=0,hg=0,js=0,Kd=0,Vd=0,zd=0,fA=0,fg=0,ug=0,Zd=0,Ig=0,dg=0,Qi=0,Eg=0,er=0,Wd=0,jd=0,Xd=0,eE=0,L$=0,Xs=0,Cg=0,Bg=0,tE=0,eo=0,uA=0,iE=0,to=0,M$=0,rE=0,T$=0,nE=0,AE=0,mg=0,io=0,pg=0,sE=0,oE=0,$E=0,aE=0,Qg=0,lE=0,z7=0,Q4=0,Zt=0,cE=0,yg=0,wg=0,G$=0,gE=0,wr=0,IA=0,hE=0,fE=0,kg=0,N$=0,uE=0,vg=0,Sg=0,Dg=0,U$=0,O$=0,bg=0,dA=0,P$=0,_g=0,IE=0,fn=0,dE=0,Rg=0,ro=0,EE=0,xg=0,yi=0,CE=0,BE=0,mE=0,pE=0,QE=0,yE=0,wi=0,wE=0,kE=0,vE=0,Fg=0,gi=0,no=0,H$=0,Lg=0,Mg=0,SE=0,Tg=0,Gg=0,DE=0,bE=0,Ng=0,Ug=0,_E=0,RE=0,Og=0,xE=0,EA=0,Ao=0,so=0,FE=0,q$=0,LE=0,ME=0,Pg=0,CA=0,TE=0,GE=0,Y$=0,J$=0,oo=0,K$=0,V$=0,tr=0,kr=0,vr=0,z$=0,Z$=0,BA=0,ir=0,un=0,NE=0,rr=0,In=0,UE=0,kt=0,vt=0,St=0,$o=0,ao=0,Hg=0,qg=0,lo=0,W$=0,Dt=0,co=0,Sr=0,j$=0,OE=0,X$=0,PE=0,ea=0,Yg=0,go=0,HE=0,qE=0,ho=0,YE=0,fo=0,dn=0,Ye=0,k4=0,Jg=0,JE=0,ta=0,Kg=0,KE=0,VE=0,uo=0,zE=0,ZE=0,WE=0,jE=0,Vg=0,XE=0,eC=0,tC=0,Wt=0,Io=0,En=0,ia=0,mA=0,pA=0,Z7=0,QA=0,zg=0,Zg=0,Eo=0,yA=0,wA=0,kA=0,iC=0,vA=0,nr=0,Wg=0,Dr=0,jt=0,ra=0,na=0,Oi=0,Aa=0,sa=0,oa=0,br=0,A6=0,Co=0,_r=0,jg=0,pe=0,$a=0,m8=0,SA=0,Cn=0,Bn=0,x9=0,mn=0,Rr=0,Y4=0,aa=0,am=0,rC=0,KC=0,VC=0,lm=0,nC=0,yQ=0,wQ=0,kQ=0,vQ=0,SQ=0,DQ=0,bQ=0,_Q=0,RQ=0,xQ=0,FQ=0,LQ=0,cm=0,gm=0,MQ=0,TQ=0,GQ=0,Xg=0,zC=0,hi=0,eh=0,th=0,ih=0,rh=0,AC=0,sC=0,oC=0,$C=0,aC=0,lC=0,cC=0,gC=0,hC=0,fC=0,ZC=0,Bo=0,Ar=0,la=0,nh=0,ca=0,hm=0,mo=0,uC=0,ga=0,WC=0,jC=0,IC=0,XC=0,eB=0,tB=0,iB=0,rB=0,nB=0,AB=0,fm=0,um=0,Im=0,dm=0,Em=0,po=0,Qo=0,yo=0,wo=0,NQ=0,sr=0,e4=0,hD=0,ko=0,sB=0;if(hD=B,l0=t+28|0,j=e[l0>>2]|0,W8=(j|0)==0,W8||(rt=j+3456|0,AA=e[rt>>2]|0,kl=(AA|0)==0,n=kl&1,oA=j+3496|0,kc=+o1[oA>>3],og=kc>-80,og?o1[oA>>3]=-80:(bE=kc<-200,bE&&(o1[oA>>3]=-200)),a0=j+3512|0,z2=+o1[a0>>3],s3=z2>0,s3?o1[a0>>3]=0:(C4=z2<-99999,C4&&(o1[a0>>3]=-99999)),Le=j+3396|0,b6=e[Le>>2]|0,F4=(b6|0)==0,F4))return C=-131,C|0;if(ve=j+3392|0,e[ve>>2]=1,Se=j+3400|0,z8=+o1[Se>>3],f8=b6+24|0,w7=e[f8>>2]|0,le=b6+28|0,_e=e[le>>2]|0,te=~~z8,Y8=w7+(te<<2)|0,L7=e[Y8>>2]|0,J8=_e+(te<<2)|0,gt=e[J8>>2]|0,e[j>>2]=L7,dt=j+4|0,e[dt>>2]=gt,T7=(L7|0)==(gt|0),V7=b6+144|0,u7=e[V7>>2]|0,WA=(u7|0)>0,WA){for(rs=b6+136|0,os=b6+140|0,Kn=b6+148|0,Ki=z8,Qr=j,ZC=0;;){if(ds=~~Ki,rA=e[rs>>2]|0,Ui=e[os>>2]|0,st=e[Kn>>2]|0,Lh=st+(ZC<<2)|0,Gh=e[Lh>>2]|0,pr=i4(1,1120)|0,rl=Gh+(ds<<2)|0,$l=e[rl>>2]|0,of=Ui+($l*1120|0)|0,r4(pr|0,of|0,1120)|0,i$=e[pr>>2]|0,If=(i$|0)>0,If){for(vl=pr+4|0,zC=0,AB=-1;;)if(u$=vl+(zC<<2)|0,jl=e[u$>>2]|0,uu=(jl|0)>(AB|0),t0=uu?jl:AB,Ac=zC+1|0,FQ=(Ac|0)==(i$|0),FQ){J=t0;break}else zC=Ac,AB=t0;if(vf=(J|0)<0,!vf){for(Ff=pr+256|0,on=Qr+24|0,Kf=pr+192|0,Xf=pr+320|0,ca=0,tB=-1;;){if(mc=Ff+(ca<<2)|0,gn=e[mc>>2]|0,vc=(gn|0)>(tB|0),z=vc?gn:tB,Fc=e[on>>2]|0,GI=Fc+gn|0,e[mc>>2]=GI,Oc=Kf+(ca<<2)|0,Yc=e[Oc>>2]|0,sd=(Yc|0)==31,sd)iB=z;else for(p9=Yc,XC=0,nB=z;;)if(_$=(Xf+(ca<<5)|0)+(XC<<2)|0,Vs=e[_$>>2]|0,tg=(Vs|0)>(nB|0),Y=tg?Vs:nB,Ag=(Vs|0)>-1,Ag?($g=e[on>>2]|0,Pd=$g+Vs|0,e[_$>>2]=Pd,e0=e[Oc>>2]|0,M$=e0):M$=p9,fA=XC+1|0,Xd=1<>2]|0,Ku=e[Pu>>2]|0,hc=e[on>>2]|0,oI=hc+1|0,e[on>>2]=oI,hI=(Qr+1824|0)+(hc<<2)|0,e[hI>>2]=Ku,bQ=(rB|0)==0,!bQ))for(hm=0;O$=hm+1|0,Z=e[rl>>2]|0,xg=rA+(Z<<2)|0,vE=e[xg>>2]|0,Ng=vE+(O$<<2)|0,LE=e[Ng>>2]|0,tr=e[on>>2]|0,UE=tr+1|0,e[on>>2]=UE,co=(Qr+1824|0)+(tr<<2)|0,e[co>>2]=LE,DQ=(O$|0)==(rB|0),!DQ;)hm=O$}}if(ho=Qr+16|0,VE=e[ho>>2]|0,Io=(Qr+800|0)+(VE<<2)|0,e[Io>>2]=1,wA=e[ho>>2]|0,Aa=(Qr+1056|0)+(wA<<2)|0,e[Aa>>2]=pr,g0=e[ho>>2]|0,D0=g0+1|0,e[ho>>2]=D0,Y0=ZC+1|0,c1=e[V7>>2]|0,h1=(Y0|0)<(c1|0),!h1)break;W=+o1[Se>>3],r0=e[l0>>2]|0,Ki=W,Qr=r0,ZC=Y0}c0=e[l0>>2]|0,z5=c0}else z5=j;x1=j+3520|0,q1=+o1[x1>>3],s2=b6+124|0,e2=e[s2>>2]|0,q2=b6+128|0,f5=e[q2>>2]|0,x5=~~q1,k5=+(x5|0),t5=q1-k5,J5=z5+2868|0,N5=f5+(x5<<3)|0,w3=+o1[N5>>3],w6=~~w3,Z3=e2+(w6*492|0)|0,r4(J5|0,Z3|0,492)|0,r6=+o1[N5>>3],Z6=1-t5,L6=r6*Z6,M6=x5+1|0,H6=f5+(M6<<3)|0,S4=+o1[H6>>3],D4=S4*t5,R4=D4+L6,M4=~~R4,Z4=+(M4|0),T4=R4-Z4,N9=T4==0,G4=(M4|0)>0,fm=G4&N9,I=fm?1:T4,s4=fm<<31>>31,L=s4+M4|0,x4=1-I,g4=L+1|0,ue=(e2+(L*492|0)|0)+4|0,P9=+A[ue>>2],d9=P9,Ie=x4*d9,ze=(e2+(g4*492|0)|0)+4|0,N4=+A[ze>>2],Me=N4,U4=I*Me,W4=Ie+U4,we=W4,Ze=z5+2872|0,A[Ze>>2]=we,z9=(e2+(L*492|0)|0)+32|0,Ae=+A[z9>>2],h4=Ae,O4=x4*h4,R9=(e2+(g4*492|0)|0)+32|0,o4=+A[R9>>2],b4=o4,se=I*b4,Z9=O4+se,oe=Z9,$e=z5+2900|0,A[$e>>2]=oe,B4=(e2+(L*492|0)|0)+8|0,j4=+A[B4>>2],ae=j4,E9=x4*ae,a6=(e2+(g4*492|0)|0)+8|0,Te=+A[a6>>2],$4=Te,de=I*$4,m4=E9+de,a4=m4,U6=z5+2876|0,A[U6>>2]=a4,ke=(e2+(L*492|0)|0)+36|0,We=+A[ke>>2],l4=We,w4=x4*l4,g8=(e2+(g4*492|0)|0)+36|0,H3=+A[g8>>2],Q9=H3,C9=Q9*I,L4=C9+w4,X4=L4,$7=z5+2904|0,A[$7>>2]=X4,a7=(e2+(L*492|0)|0)+12|0,p7=+A[a7>>2],K8=p7,l7=K8*x4,c7=(e2+(g4*492|0)|0)+12|0,x8=+A[c7>>2],F8=x8,L8=F8*I,M8=L8+l7,V8=M8,Q7=z5+2880|0,A[Q7>>2]=V8,T8=(e2+(L*492|0)|0)+40|0,G8=+A[T8>>2],N8=G8,y8=N8*x4,w8=(e2+(g4*492|0)|0)+40|0,h8=+A[w8>>2],U8=h8,O8=U8*I,Z8=O8+y8,Ge=Z8,De=z5+2908|0,A[De>>2]=Ge,je=(e2+(L*492|0)|0)+16|0,k8=+A[je>>2],y9=k8,g7=y9*x4,Ee=(e2+(g4*492|0)|0)+16|0,h7=+A[Ee>>2],y7=h7,j8=y7*I,ee=j8+g7,X8=ee,P8=z5+2884|0,A[P8>>2]=X8,v8=(e2+(L*492|0)|0)+44|0,Xe=+A[v8>>2],P4=Xe,be=P4*x4,e8=(e2+(g4*492|0)|0)+44|0,u8=+A[e8>>2],S8=u8,W9=S8*I,t8=W9+be,I8=t8,i8=z5+2912|0,A[i8>>2]=I8,d8=z5+3512|0,ce=+o1[d8>>3],Ce=ce,Ne=z5+2936|0,A[Ne>>2]=Ce,Ue=b6+132|0,j9=e[Ue>>2]|0,ge=j+3472|0,r8=+o1[ge>>3],Be=r8,p4=~~Be,E8=+(p4|0),e7=Be-E8,H4=e7,I3=e[l0>>2]|0,Oe=(j9|0)==0;e:do if(Oe)C8=I3+4|0,H9=e[I3>>2]|0,ie=I3+3240|0,e[ie>>2]=H9,S9=e[C8>>2]|0,Pe=I3+3300|0,e[Pe>>2]=S9,H8=I3+3244|0,e[H8>>2]=H9,f7=I3+3304|0,e[f7>>2]=S9,t7=I3+3248|0,e[t7>>2]=H9,i7=I3+3308|0,e[i7>>2]=S9,q8=I3+3252|0,e[q8>>2]=H9,r7=I3+3312|0,e[r7>>2]=S9,n8=I3+3256|0,e[n8>>2]=H9,A8=I3+3316|0,e[A8>>2]=S9,D8=I3+3260|0,e[D8>>2]=H9,q4=I3+3320|0,e[q4>>2]=S9,n7=I3+3264|0,e[n7>>2]=H9,b8=I3+3324|0,e[b8>>2]=S9,He=I3+3268|0,e[He>>2]=H9,B9=I3+3328|0,e[B9>>2]=S9,A7=I3+3272|0,e[A7>>2]=H9,qe=I3+3332|0,e[qe>>2]=S9,O7=I3+3276|0,e[O7>>2]=H9,k7=I3+3336|0,e[k7>>2]=S9,s7=I3+3280|0,e[s7>>2]=H9,v7=I3+3340|0,e[v7>>2]=S9,re=I3+3284|0,e[re>>2]=H9,M7=I3+3344|0,e[M7>>2]=S9,P7=I3+3288|0,e[P7>>2]=H9,s8=I3+3348|0,e[s8>>2]=S9,_8=I3+3292|0,e[_8>>2]=H9,S7=I3+3352|0,e[S7>>2]=S9,Re=I3+3296|0,e[Re>>2]=H9,he=I3+3356|0,e[he>>2]=S9;else{X9=I3+3120|0,D7=j9+(p4*240|0)|0,sr=X9,ko=D7,sB=sr+60|0;do e[sr>>2]=e[ko>>2]|0,sr=sr+4|0,ko=ko+4|0;while((sr|0)<(sB|0));X7=I3+3180|0,Lt=(j9+(p4*240|0)|0)+60|0,sr=X7,ko=Lt,sB=sr+60|0;do e[sr>>2]=e[ko>>2]|0,sr=sr+4|0,ko=ko+4|0;while((sr|0)<(sB|0));if(Mt=j+3420|0,Tt=e[Mt>>2]|0,ct=(Tt|0)==0,!ct)for(H7=1-H4,q7=p4+1|0,ht=t+8|0,Y7=I3+4|0,X=e[ht>>2]|0,ft=+(X|0),Ar=0;;){if(et=((j9+(p4*240|0)|0)+120|0)+(Ar<<2)|0,ti=+A[et>>2],Gt=ti,ut=Gt*H7,It=((j9+(q7*240|0)|0)+120|0)+(Ar<<2)|0,ii=+A[It>>2],tt=ii,ri=tt*H4,Nt=ri+ut,Ut=Nt,Ot=Ut,Pt=Ot*1e3,it=Pt/ft,Et=e[I3>>2]|0,Ht=+(Et|0),J7=Ht*it,K7=~~J7,ni=(I3+3e3|0)+(Ar<<2)|0,e[ni>>2]=K7,qt=e[Y7>>2]|0,Ai=+(qt|0),Ct=Ai*it,Yt=~~Ct,Bt=(I3+3060|0)+(Ar<<2)|0,e[Bt>>2]=Yt,mt=~~Ut,Jt=(I3+2940|0)+(Ar<<2)|0,e[Jt>>2]=mt,pt=((j9+(p4*240|0)|0)+180|0)+(Ar<<2)|0,Qt=+A[pt>>2],Kt=Qt,nt=Kt*H7,G7=((j9+(q7*240|0)|0)+180|0)+(Ar<<2)|0,yt=+A[G7>>2],me=yt,wt=me*H4,b7=wt+nt,At=b7,i9=At,B8=i9*1e3,I7=B8/ft,_7=e[I3>>2]|0,Hr=+(_7|0),hr=Hr*I7,VA=~~hr,Ln=(I3+3240|0)+(Ar<<2)|0,e[Ln>>2]=VA,zA=e[Y7>>2]|0,Mn=+(zA|0),ZA=Mn*I7,Tn=~~ZA,jA=(I3+3300|0)+(Ar<<2)|0,e[jA>>2]=Tn,qr=Ar+1|0,RQ=(qr|0)==15,RQ)break e;Ar=qr}for(XA=(j9+(p4*240|0)|0)+148|0,es=+A[XA>>2],ts=es,Gn=1-H4,is=ts*Gn,Nn=p4+1|0,Un=(j9+(Nn*240|0)|0)+148|0,Yr=+A[Un>>2],On=Yr,Jr=On*H4,Pn=Jr+is,Hn=Pn,ns=Hn,As=ns*1e3,ss=t+8|0,Kr=I3+4|0,qn=~~Hn,o0=e[ss>>2]|0,fr=+(o0|0),Vr=As/fr,nh=0;$s=e[I3>>2]|0,as=+($s|0),zr=as*Vr,si=~~zr,Yn=(I3+3e3|0)+(nh<<2)|0,e[Yn>>2]=si,ls=e[Kr>>2]|0,cs=+(ls|0),Jn=cs*Vr,Vn=~~Jn,gs=(I3+3060|0)+(nh<<2)|0,e[gs>>2]=Vn,oi=(I3+2940|0)+(nh<<2)|0,e[oi>>2]=qn,Zr=nh+1|0,LQ=(Zr|0)==15,!LQ;)nh=Zr;for(hs=(j9+(p4*240|0)|0)+208|0,zn=+A[hs>>2],fs=zn,us=fs*Gn,Is=(j9+(Nn*240|0)|0)+208|0,Zn=+A[Is>>2],Es=Zn,Cs=Es*H4,Bs=Cs+us,Wn=Bs,ms=Wn,ps=ms*1e3,Wr=ps/fr,uC=0;ur=e[I3>>2]|0,jr=+(ur|0),Qs=jr*Wr,ys=~~Qs,jn=(I3+3240|0)+(uC<<2)|0,e[jn>>2]=ys,Xr=e[Kr>>2]|0,Xn=+(Xr|0),en=Xn*Wr,ws=~~en,eA=(I3+3300|0)+(uC<<2)|0,e[eA>>2]=ws,tA=uC+1|0,_Q=(tA|0)==15,!_Q;)uC=tA}while(!1);for(ks=+o1[Se>>3],iA=b6+92|0,vs=e[iA>>2]|0,Ir=b6+100|0,nA=e[Ir>>2]|0,$i=b6+108|0,tn=e[$i>>2]|0,dr=e[l0>>2]|0,Vi=dr+2852|0,Er=e[Vi>>2]|0,Ni=~~ks,Cr=dr+28|0,Bi=e[Cr>>2]|0,mi=(Bi|0)>0,mi||(e[Cr>>2]=1),Vt=(Er|0)==0,Vt?(pi=i4(1,520)|0,e[Vi>>2]=pi,po=pi):po=Er,r4(po|0,25784,520)|0,e[po>>2]=0,Br=dr+3460|0,zi=e[Br>>2]|0,Zi=(zi|0)==0,Zi||(mr=po+500|0,e[mr>>2]=1,ai=vs+(Ni<<2)|0,Ss=e[ai>>2]|0,za=po+504|0,e[za>>2]=Ss,rn=nA+(Ni<<2)|0,nn=e[rn>>2]|0,Rh=po+508|0,e[Rh>>2]=nn,Za=tn+(Ni<<3)|0,Ds=+o1[Za>>3],xh=po+512|0,o1[xh>>3]=Ds),Vo=+o1[Se>>3],Wa=e[iA>>2]|0,Fh=e[Ir>>2]|0,Mh=e[$i>>2]|0,zo=e[l0>>2]|0,ja=zo+2856|0,Xa=e[ja>>2]|0,Zo=~~Vo,An=zo+28|0,el=e[An>>2]|0,Th=(el|0)>1,Th||(e[An>>2]=2),bs=(Xa|0)==0,bs?(Wi=i4(1,520)|0,e[ja>>2]=Wi,Qo=Wi):Qo=Xa,r4(Qo|0,25784,520)|0,e[Qo>>2]=0,Nh=zo+3460|0,Uh=e[Nh>>2]|0,Oh=(Uh|0)==0,Oh||(Ph=Qo+500|0,e[Ph>>2]=1,Hh=Wa+(Zo<<2)|0,qh=e[Hh>>2]|0,Yh=Qo+504|0,e[Yh>>2]=qh,Jh=Fh+(Zo<<2)|0,Kh=e[Jh>>2]|0,tl=Qo+508|0,e[tl>>2]=Kh,Vh=Mh+(Zo<<3)|0,zh=+o1[Vh>>3],il=Qo+512|0,o1[il>>3]=zh),T7||(Zh=+o1[Se>>3],Wo=b6+96|0,_s=e[Wo>>2]|0,jo=b6+104|0,Wh=e[jo>>2]|0,jh=e[$i>>2]|0,Xo=e[l0>>2]|0,nl=Xo+2860|0,Al=e[nl>>2]|0,e$=~~Zh,sl=Xo+28|0,Rs=e[sl>>2]|0,Xh=(Rs|0)>2,Xh||(e[sl>>2]=3),ef=(Al|0)==0,ef?(ol=i4(1,520)|0,e[nl>>2]=ol,yo=ol):yo=Al,r4(yo|0,25784,520)|0,e[yo>>2]=1,tf=Xo+3460|0,rf=e[tf>>2]|0,nf=(rf|0)==0,nf||(Af=yo+500|0,e[Af>>2]=1,al=_s+(e$<<2)|0,ll=e[al>>2]|0,cl=yo+504|0,e[cl>>2]=ll,gl=Wh+(e$<<2)|0,hl=e[gl>>2]|0,sn=yo+508|0,e[sn>>2]=hl,sf=jh+(e$<<3)|0,fl=+o1[sf>>3],ul=yo+512|0,o1[ul>>3]=fl),Il=+o1[Se>>3],$f=e[Wo>>2]|0,af=e[jo>>2]|0,lf=e[$i>>2]|0,t$=e[l0>>2]|0,dl=t$+2864|0,El=e[dl>>2]|0,sA=~~Il,Cl=t$+28|0,cf=e[Cl>>2]|0,Bl=(cf|0)>3,Bl||(e[Cl>>2]=4),gf=(El|0)==0,gf?(ml=i4(1,520)|0,e[dl>>2]=ml,wo=ml):wo=El,r4(wo|0,25784,520)|0,e[wo>>2]=1,hf=t$+3460|0,ff=e[hf>>2]|0,pl=(ff|0)==0,pl||(Ql=wo+500|0,e[Ql>>2]=1,uf=$f+(sA<<2)|0,xs=e[uf>>2]|0,r$=wo+504|0,e[r$>>2]=xs,yl=af+(sA<<2)|0,wl=e[yl>>2]|0,df=wo+508|0,e[df>>2]=wl,Ef=lf+(sA<<3)|0,Cf=+o1[Ef>>3],Bf=wo+512|0,o1[Bf>>3]=Cf)),mf=(j+3528|0)+(n<<5)|0,pf=+o1[mf>>3],Fs=b6+32|0,Sl=e[Fs>>2]|0,Ls=b6+36|0,Qf=e[Ls>>2]|0,Dl=b6+44|0,yf=e[Dl>>2]|0,PC(t,pf,0,Sl,Qf,yf),bl=j+3560|0,wf=+o1[bl>>3],kf=e[Fs>>2]|0,_l=e[Ls>>2]|0,n$=b6+52|0,Sf=e[n$>>2]|0,PC(t,wf,1,kf,_l,Sf),T7||(Ms=j+3592|0,Df=+o1[Ms>>3],Ts=e[Fs>>2]|0,bf=e[Ls>>2]|0,A$=e[n$>>2]|0,PC(t,Df,2,Ts,bf,A$),_f=j+3624|0,Rf=+o1[_f>>3],xf=e[Fs>>2]|0,Rl=e[Ls>>2]|0,Lf=b6+48|0,Mf=e[Lf>>2]|0,PC(t,Rf,3,xf,Rl,Mf)),Tf=((j+3528|0)+(n<<5)|0)+24|0,xl=+o1[Tf>>3],Fl=b6+80|0,ji=e[Fl>>2]|0,Ll=b6+84|0,Gs=e[Ll>>2]|0,s$=~~xl,o$=+(s$|0),Ml=xl-o$,$n=e[l0>>2]|0,Gf=$n+2852|0,Tl=e[Gf>>2]|0,Nf=Gs+(s$<<3)|0,Uf=+o1[Nf>>3],Of=1-Ml,Pf=Uf*Of,Ns=s$+1|0,$$=Gs+(Ns<<3)|0,Hf=+o1[$$>>3],qf=Hf*Ml,Gl=qf+Pf,a$=~~Gl,Nl=+(a$|0),Ul=Gl-Nl,Yf=Ul==0,Ol=(a$|0)>0,um=Ol&Yf,$=um?1:Ul,Jf=um<<31>>31,M=Jf+a$|0,l$=1-$,Vf=M+1|0,eh=0;U9=(ji+(M*160|0)|0)+(eh<<2)|0,zf=e[U9>>2]|0,Pl=+(zf|0),Zf=Pl*l$,Wf=(ji+(Vf*160|0)|0)+(eh<<2)|0,c$=e[Wf>>2]|0,jf=+(c$|0),g$=jf*$,Hl=g$+Zf,eu=Hl,ql=(Tl+336|0)+(eh<<2)|0,A[ql>>2]=eu,Yl=eh+1|0,wQ=(Yl|0)==40,!wQ;)eh=Yl;for(tu=j+3584|0,h$=+o1[tu>>3],f$=~~h$,Jl=+(f$|0),Kl=h$-Jl,iu=$n+2856|0,Vl=e[iu>>2]|0,ru=Gs+(f$<<3)|0,zl=+o1[ru>>3],nu=1-Kl,Au=zl*nu,su=f$+1|0,ou=Gs+(su<<3)|0,Zl=+o1[ou>>3],Wl=Zl*Kl,I$=Wl+Au,Us=~~I$,$u=+(Us|0),Xl=I$-$u,ec=Xl==0,au=(Us|0)>0,Im=au&ec,c=Im?1:Xl,lu=Im<<31>>31,T=lu+Us|0,cu=1-c,tc=T+1|0,th=0;gu=(ji+(T*160|0)|0)+(th<<2)|0,hu=e[gu>>2]|0,fu=+(hu|0),Iu=fu*cu,du=(ji+(tc*160|0)|0)+(th<<2)|0,ic=e[du>>2]|0,Eu=+(ic|0),rc=Eu*c,Cu=rc+Iu,an=Cu,Bu=(Vl+336|0)+(th<<2)|0,A[Bu>>2]=an,nc=th+1|0,kQ=(nc|0)==40,!kQ;)th=nc;if(!T7){for(mu=j+3616|0,d$=+o1[mu>>3],pu=b6+88|0,Os=e[pu>>2]|0,E$=~~d$,Qu=+(E$|0),C$=d$-Qu,sc=$n+2860|0,yu=e[sc>>2]|0,wu=Os+(E$<<3)|0,ku=+o1[wu>>3],Su=1-C$,oc=ku*Su,Du=E$+1|0,bu=Os+(Du<<3)|0,_u=+o1[bu>>3],Ps=_u*C$,$A=Ps+oc,B$=~~$A,Ru=+(B$|0),m$=$A-Ru,Fu=m$==0,Lu=(B$|0)>0,dm=Lu&Fu,f=dm?1:m$,$c=dm<<31>>31,G=$c+B$|0,Mu=1-f,Tu=G+1|0,ih=0;Gu=(ji+(G*160|0)|0)+(ih<<2)|0,Nu=e[Gu>>2]|0,Uu=+(Nu|0),Hs=Uu*Mu,Ou=(ji+(Tu*160|0)|0)+(ih<<2)|0,ac=e[Ou>>2]|0,Hu=+(ac|0),qu=Hu*f,Yu=qu+Hs,Ju=Yu,li=(yu+336|0)+(ih<<2)|0,A[li>>2]=Ju,lc=ih+1|0,vQ=(lc|0)==40,!vQ;)ih=lc;for(ci=j+3648|0,cc=+o1[ci>>3],p$=~~cc,zt=+(p$|0),aA=cc-zt,Vu=$n+2864|0,zu=e[Vu>>2]|0,Zu=Os+(p$<<3)|0,Wu=+o1[Zu>>3],ju=1-aA,gc=Wu*ju,Xu=p$+1|0,eI=Os+(Xu<<3)|0,tI=+o1[eI>>3],iI=tI*aA,lA=iI+gc,Q$=~~lA,rI=+(Q$|0),fc=lA-rI,nI=fc==0,AI=(Q$|0)>0,Em=AI&nI,d=Em?1:fc,qs=Em<<31>>31,N=qs+Q$|0,sI=1-d,uc=N+1|0,rh=0;Ic=(ji+(N*160|0)|0)+(rh<<2)|0,$I=e[Ic>>2]|0,aI=+($I|0),ln=aI*sI,lI=(ji+(uc*160|0)|0)+(rh<<2)|0,cI=e[lI>>2]|0,cn=+(cI|0),gI=cn*d,dc=gI+ln,fI=dc,cA=(zu+336|0)+(rh<<2)|0,A[cA>>2]=fI,Ec=rh+1|0,SQ=(Ec|0)==40,!SQ;)rh=Ec}for(uI=((j+3528|0)+(n<<5)|0)+8|0,Cc=+o1[uI>>3],II=b6+40|0,Xi=e[II>>2]|0,y$=~~Cc,dI=+(y$|0),Bc=Cc-dI,EI=Xi+(y$<<2)|0,CI=e[EI>>2]|0,pc=+(CI|0),BI=1-Bc,mI=pc*BI,pI=y$+1|0,Qc=Xi+(pI<<2)|0,QI=e[Qc>>2]|0,gA=+(QI|0),yI=gA*Bc,wI=yI+mI,kI=wI,w$=Tl+32|0,A[w$>>2]=kI,vI=j+3568|0,k$=+o1[vI>>3],v$=~~k$,SI=+(v$|0),yc=k$-SI,wc=Xi+(v$<<2)|0,DI=e[wc>>2]|0,Sc=+(DI|0),bI=1-yc,Dc=Sc*bI,bc=v$+1|0,_I=Xi+(bc<<2)|0,RI=e[_I>>2]|0,_c=+(RI|0),Rc=_c*yc,xI=Rc+Dc,xc=xI,FI=Vl+32|0,A[FI>>2]=xc,T7||(LI=j+3600|0,Lc=+o1[LI>>3],S$=~~Lc,Mc=+(S$|0),Tc=Lc-Mc,Gc=$n+2860|0,Nc=e[Gc>>2]|0,MI=Xi+(S$<<2)|0,TI=e[MI>>2]|0,NI=+(TI|0),UI=1-Tc,OI=NI*UI,PI=S$+1|0,HI=Xi+(PI<<2)|0,Uc=e[HI>>2]|0,D$=+(Uc|0),qI=D$*Tc,YI=qI+OI,JI=YI,Pc=Nc+32|0,A[Pc>>2]=JI,KI=j+3632|0,Hc=+o1[KI>>3],b$=~~Hc,Ys=+(b$|0),qc=Hc-Ys,VI=$n+2864|0,zI=e[VI>>2]|0,ZI=Xi+(b$<<2)|0,WI=e[ZI>>2]|0,Js=+(WI|0),jI=1-qc,XI=Js*jI,ed=b$+1|0,td=Xi+(ed<<2)|0,id=e[td>>2]|0,rd=+(id|0),nd=rd*qc,Ad=nd+XI,Jc=Ad,od=zI+32|0,A[od>>2]=Jc),$d=((j+3528|0)+(n<<5)|0)+16|0,ad=+o1[$d>>3],Ks=b6+76|0,Kc=e[Ks>>2]|0,ld=b6+60|0,cd=e[ld>>2]|0,hn=b6+56|0,Vc=e[hn>>2]|0,kl?Zc=0:(zc=j+3408|0,gd=+o1[zc>>3],Zc=gd),HC(t,ad,0,Kc,cd,Vc,Zc),hd=j+3576|0,Wc=+o1[hd>>3],jc=e[Ks>>2]|0,fd=b6+64|0,ud=e[fd>>2]|0,Id=e[hn>>2]|0,HC(t,Wc,1,jc,ud,Id,0),T7?(hA=e[l0>>2]|0,Nd=hA+2852|0,lg=e[Nd>>2]|0,Ud=hA+3496|0,F$=+o1[Ud>>3],cg=F$,Od=lg+4|0,A[Od>>2]=cg,Hd=hA+3504|0,qd=+o1[Hd>>3],gg=qd,Yd=lg+8|0,A[Yd>>2]=gg,Jd=hA+2856|0,hg=e[Jd>>2]|0,js=hg+4|0,A[js>>2]=cg,Kd=hg+8|0,A[Kd>>2]=gg,er=hA):(dd=j+3608|0,Ed=+o1[dd>>3],R$=e[Ks>>2]|0,Cd=b6+68|0,Bd=e[Cd>>2]|0,md=e[hn>>2]|0,HC(t,Ed,2,R$,Bd,md,0),pd=j+3640|0,Xc=+o1[pd>>3],Qd=e[Ks>>2]|0,eg=b6+72|0,yd=e[eg>>2]|0,wd=e[hn>>2]|0,HC(t,Xc,3,Qd,yd,wd,0),yr=e[l0>>2]|0,ig=yr+2852|0,rg=e[ig>>2]|0,kd=yr+3496|0,ng=+o1[kd>>3],zs=ng,vd=rg+4|0,A[vd>>2]=zs,Sd=yr+3504|0,Dd=+o1[Sd>>3],Zs=Dd,bd=rg+8|0,A[bd>>2]=Zs,_d=yr+2856|0,sg=e[_d>>2]|0,Rd=sg+4|0,A[Rd>>2]=zs,xd=sg+8|0,A[xd>>2]=Zs,x$=yr+2860|0,Ws=e[x$>>2]|0,Fd=Ws+4|0,A[Fd>>2]=zs,Ld=Ws+8|0,A[Ld>>2]=Zs,Md=yr+2864|0,ag=e[Md>>2]|0,Td=ag+4|0,A[Td>>2]=zs,Gd=ag+8|0,A[Gd>>2]=Zs,er=yr),Vd=+o1[Se>>3],zd=b6+152|0,fg=e[zd>>2]|0,ug=~~Vd,Zd=fg+(ug<<3)|0,Ig=e[Zd>>2]|0,dg=(fg+(ug<<3)|0)+4|0,Qi=e[dg>>2]|0,Eg=e[er>>2]|0,Wd=er+4|0,jd=e[Wd>>2]|0,eE=(Eg|0)==(jd|0),s=eE?1:2,L$=er+8|0,Xs=er+12|0,Cg=t+8|0,Bg=t+4|0,hi=0;;){if(tE=i4(1,3208)|0,eo=(er+544|0)+(hi<<2)|0,e[eo>>2]=tE,uA=i4(1,16)|0,iE=(er+32|0)+(hi<<2)|0,e[iE>>2]=uA,to=26304+(hi<<4)|0,e[uA>>2]=e[to>>2]|0,e[uA+4>>2]=e[to+4>>2]|0,e[uA+8>>2]=e[to+8>>2]|0,e[uA+12>>2]=e[to+12>>2]|0,rE=e[L$>>2]|0,T$=(hi|0)<(rE|0),T$||(nE=hi+1|0,e[L$>>2]=nE),AE=(er+288|0)+(hi<<2)|0,e[AE>>2]=0,mg=e[eo>>2]|0,io=Ig+(hi*3208|0)|0,r4(mg|0,io|0,3208)|0,pg=e[Xs>>2]|0,sE=(hi|0)<(pg|0),sE||(oE=hi+1|0,e[Xs>>2]=oE),$E=e[io>>2]|0,Qg=($E|0)>0,Qg)for(jC=0;;){lE=((Ig+(hi*3208|0)|0)+1092|0)+(jC<<2)|0,z7=e[lE>>2]|0,Q4=e[l0>>2]|0,Zt=k9(2840)|0,cE=(Q4+1568|0)+(z7<<2)|0,e[cE>>2]=Zt,yg=(Qi+(z7<<5)|0)+12|0,wg=e[yg>>2]|0,r4(Zt|0,wg|0,2840)|0,G$=Q4+20|0,gE=e[G$>>2]|0,IA=(gE|0)>(z7|0),IA||(hE=z7+1|0,e[G$>>2]=hE),fE=(Qi+(z7<<5)|0)+8|0,kg=e[fE>>2]|0,N$=Zt+8|0,e[N$>>2]=kg,uE=Qi+(z7<<5)|0,vg=e[uE>>2]|0,Sg=(Q4+1312|0)+(z7<<2)|0,e[Sg>>2]=vg,Dg=Q4+3420|0,U$=e[Dg>>2]|0,bg=(U$|0)==0,dA=Zt+12|0,P$=e[dA>>2]|0,_g=(P$|0)>0;do if(bg){if(_g)for(Rg=(Qi+(z7<<5)|0)+24|0,ro=e[Rg>>2]|0,EE=Zt+24|0,mo=0;;)if(rr=EE+(mo<<2)|0,In=ro+(mo<<4)|0,kt=e[In>>2]|0,vt=(kt|0)==0,vt||(St=e[rr>>2]|0,$o=St|1,e[rr>>2]=$o),ao=(ro+(mo<<4)|0)+4|0,Hg=e[ao>>2]|0,qg=(Hg|0)==0,qg||(k2=e[rr>>2]|0,E5=k2|2,e[rr>>2]=E5),r5=(ro+(mo<<4)|0)+8|0,x2=e[r5>>2]|0,R2=(x2|0)==0,R2||(B2=e[rr>>2]|0,C5=B2|4,e[rr>>2]=C5),u5=(ro+(mo<<4)|0)+12|0,S5=e[u5>>2]|0,G5=(S5|0)==0,G5||(D5=e[rr>>2]|0,H2=D5|8,e[rr>>2]=H2),I5=mo+1|0,s5=e[dA>>2]|0,l5=(I5|0)<(s5|0),l5)mo=I5;else{fo=s5;break}else fo=P$;lo=(Qi+(z7<<5)|0)+16|0,W$=e[lo>>2]|0,Dt=Q4+24|0,Sr=e[Dt>>2]|0,j$=(Sr|0)>0,OE=W$;e:do if(j$)for(fC=0;;){if(X$=(Q4+1824|0)+(fC<<2)|0,PE=e[X$>>2]|0,ea=(PE|0)==(W$|0),ea){_=fC;break e}if(Yg=fC+1|0,go=(Yg|0)<(Sr|0),go)fC=Yg;else{e4=116;break}}else e4=116;while(!1);if((e4|0)==116&&(e4=0,HE=Sr+1|0,e[Dt>>2]=HE,_=Sr),qE=Zt+20|0,e[qE>>2]=_,YE=(Q4+1824|0)+(_<<2)|0,e[YE>>2]=OE,dn=(fo|0)>0,!dn)break;for(Ye=(Qi+(z7<<5)|0)+24|0,k4=Zt+280|0,Rr=0,ga=0;;){if(Jg=e[Ye>>2]|0,JE=Jg+(ga<<4)|0,ta=e[JE>>2]|0,Kg=(ta|0)==0,KE=ta,Kg)mA=Jg,rC=Rr;else{uo=e[Dt>>2]|0,zE=(uo|0)>0;e:do if(zE)for(aC=0;;){if(ZE=(Q4+1824|0)+(aC<<2)|0,WE=e[ZE>>2]|0,jE=(WE|0)==(ta|0),jE){x=aC;break e}if(Vg=aC+1|0,XE=(Vg|0)<(uo|0),XE)aC=Vg;else{e4=123;break}}else e4=123;while(!1);(e4|0)==123&&(e4=0,eC=uo+1|0,e[Dt>>2]=eC,x=uo),tC=Rr+1|0,Wt=k4+(Rr<<2)|0,e[Wt>>2]=x,En=(Q4+1824|0)+(x<<2)|0,e[En>>2]=KE,n0=e[Ye>>2]|0,mA=n0,rC=tC}if(ia=(mA+(ga<<4)|0)+4|0,pA=e[ia>>2]|0,Z7=(pA|0)==0,QA=pA,Z7)d2=mA,Y4=rC;else{K1=e[Dt>>2]|0,P1=(K1|0)>0;e:do if(P1)for(sC=0;;){if(H1=(Q4+1824|0)+(sC<<2)|0,Y1=e[H1>>2]|0,j1=(Y1|0)==(pA|0),j1){D=sC;break e}if(r2=sC+1|0,W1=(r2|0)<(K1|0),W1)sC=r2;else{e4=147;break}}else e4=147;while(!1);(e4|0)==147&&(e4=0,O1=K1+1|0,e[Dt>>2]=O1,D=K1),l2=rC+1|0,z1=k4+(rC<<2)|0,e[z1>>2]=D,h2=(Q4+1824|0)+(D<<2)|0,e[h2>>2]=QA,i0=e[Ye>>2]|0,d2=i0,Y4=l2}if(A2=(d2+(ga<<4)|0)+8|0,V1=e[A2>>2]|0,g2=(V1|0)==0,$2=V1,g2)_2=d2,aa=Y4;else{t2=e[Dt>>2]|0,a2=(t2|0)>0;e:do if(a2)for(oC=0;;){if(i2=(Q4+1824|0)+(oC<<2)|0,o2=e[i2>>2]|0,X1=(o2|0)==(V1|0),X1){Q=oC;break e}if(n2=oC+1|0,f2=(n2|0)<(t2|0),f2)oC=n2;else{e4=153;break}}else e4=153;while(!1);(e4|0)==153&&(e4=0,y2=t2+1|0,e[Dt>>2]=y2,Q=t2),S2=Y4+1|0,w2=k4+(Y4<<2)|0,e[w2>>2]=Q,C2=(Q4+1824|0)+(Q<<2)|0,e[C2>>2]=$2,K=e[Ye>>2]|0,_2=K,aa=S2}if(M2=(_2+(ga<<4)|0)+12|0,G2=e[M2>>2]|0,u2=(G2|0)==0,K2=G2,u2)am=aa;else{N2=e[Dt>>2]|0,T2=(N2|0)>0;e:do if(T2)for($C=0;;){if(O2=(Q4+1824|0)+($C<<2)|0,V2=e[O2>>2]|0,A5=(V2|0)==(G2|0),A5){b=$C;break e}if(P2=$C+1|0,T1=(P2|0)<(N2|0),T1)$C=P2;else{e4=159;break}}else e4=159;while(!1);(e4|0)==159&&(e4=0,j2=N2+1|0,e[Dt>>2]=j2,b=N2),R5=aa+1|0,X2=k4+(aa<<2)|0,e[X2>>2]=b,v5=(Q4+1824|0)+(b<<2)|0,e[v5>>2]=K2,am=R5}if(w5=ga+1|0,O5=e[dA>>2]|0,a5=(w5|0)<(O5|0),a5)Rr=am,ga=w5;else break}}else{if(_g)for(IE=(Qi+(z7<<5)|0)+28|0,fn=e[IE>>2]|0,dE=Zt+24|0,Bo=0;;)if(yi=dE+(Bo<<2)|0,CE=fn+(Bo<<4)|0,BE=e[CE>>2]|0,mE=(BE|0)==0,mE||(pE=e[yi>>2]|0,QE=pE|1,e[yi>>2]=QE),yE=(fn+(Bo<<4)|0)+4|0,wi=e[yE>>2]|0,wE=(wi|0)==0,wE||(t6=e[yi>>2]|0,t3=t6|2,e[yi>>2]=t3),o3=(fn+(Bo<<4)|0)+8|0,R3=e[o3>>2]|0,f6=(R3|0)==0,f6||(m3=e[yi>>2]|0,p3=m3|4,e[yi>>2]=p3),X3=(fn+(Bo<<4)|0)+12|0,V3=e[X3>>2]|0,N3=(V3|0)==0,N3||(V5=e[yi>>2]|0,k3=V5|8,e[yi>>2]=k3),c3=Bo+1|0,U3=e[dA>>2]|0,o6=(c3|0)<(U3|0),o6)Bo=c3;else{Og=U3;break}else Og=P$;kE=(Qi+(z7<<5)|0)+20|0,Fg=e[kE>>2]|0,gi=Q4+24|0,no=e[gi>>2]|0,H$=(no|0)>0,Lg=Fg;e:do if(H$)for(AC=0;;){if(Mg=(Q4+1824|0)+(AC<<2)|0,SE=e[Mg>>2]|0,Tg=(SE|0)==(Fg|0),Tg){m=AC;break e}if(Gg=AC+1|0,DE=(Gg|0)<(no|0),DE)AC=Gg;else{e4=100;break}}else e4=100;while(!1);if((e4|0)==100&&(e4=0,Ug=no+1|0,e[gi>>2]=Ug,m=no),_E=Zt+20|0,e[_E>>2]=m,RE=(Q4+1824|0)+(m<<2)|0,e[RE>>2]=Lg,xE=(Og|0)>0,!xE)break;for(EA=(Qi+(z7<<5)|0)+28|0,Ao=Zt+280|0,SA=0,la=0;;){if(so=e[EA>>2]|0,FE=so+(la<<4)|0,q$=e[FE>>2]|0,ME=(q$|0)==0,Pg=q$,ME)BA=so,mn=SA;else{CA=e[gi>>2]|0,TE=(CA|0)>0;e:do if(TE)for(hC=0;;){if(GE=(Q4+1824|0)+(hC<<2)|0,Y$=e[GE>>2]|0,J$=(Y$|0)==(q$|0),J$){y=hC;break e}if(oo=hC+1|0,K$=(oo|0)<(CA|0),K$)hC=oo;else{e4=107;break}}else e4=107;while(!1);(e4|0)==107&&(e4=0,V$=CA+1|0,e[gi>>2]=V$,y=CA),kr=SA+1|0,vr=Ao+(SA<<2)|0,e[vr>>2]=y,z$=(Q4+1824|0)+(y<<2)|0,e[z$>>2]=Pg,H=e[EA>>2]|0,BA=H,mn=kr}if(Z$=(BA+(la<<4)|0)+4|0,ir=e[Z$>>2]|0,un=(ir|0)==0,NE=ir,un)b5=BA,Cn=mn;else{B5=e[gi>>2]|0,M1=(B5|0)>0;e:do if(M1)for(lC=0;;){if(c5=(Q4+1824|0)+(lC<<2)|0,o5=e[c5>>2]|0,Z2=(o5|0)==(ir|0),Z2){v=lC;break e}if(c2=lC+1|0,m5=(c2|0)<(B5|0),m5)lC=c2;else{e4=171;break}}else e4=171;while(!1);(e4|0)==171&&(e4=0,e5=B5+1|0,e[gi>>2]=e5,v=B5),n5=mn+1|0,g5=Ao+(mn<<2)|0,e[g5>>2]=v,Y2=(Q4+1824|0)+(v<<2)|0,e[Y2>>2]=NE,V=e[EA>>2]|0,b5=V,Cn=n5}if(h5=(b5+(la<<4)|0)+8|0,W2=e[h5>>2]|0,$5=(W2|0)==0,F2=W2,$5)h3=b5,Bn=Cn;else{p5=e[gi>>2]|0,H5=(p5|0)>0;e:do if(H5)for(cC=0;;){if(X5=(Q4+1824|0)+(cC<<2)|0,d5=e[X5>>2]|0,f3=(d5|0)==(W2|0),f3){S=cC;break e}if(g3=cC+1|0,e3=(g3|0)<(p5|0),e3)cC=g3;else{e4=177;break}}else e4=177;while(!1);(e4|0)==177&&(e4=0,A3=p5+1|0,e[gi>>2]=A3,S=p5),E3=Cn+1|0,F5=Ao+(Cn<<2)|0,e[F5>>2]=S,K5=(Q4+1824|0)+(S<<2)|0,e[K5>>2]=F2,s0=e[EA>>2]|0,h3=s0,Bn=E3}if(y3=(h3+(la<<4)|0)+12|0,B3=e[y3>>2]|0,q3=(B3|0)==0,M3=B3,q3)x9=Bn;else{Q3=e[gi>>2]|0,W5=(Q3|0)>0;e:do if(W5)for(gC=0;;){if(j3=(Q4+1824|0)+(gC<<2)|0,_3=e[j3>>2]|0,T3=(_3|0)==(B3|0),T3){w=gC;break e}if($3=gC+1|0,a3=($3|0)<(Q3|0),a3)gC=$3;else{e4=183;break}}else e4=183;while(!1);(e4|0)==183&&(e4=0,l3=Q3+1|0,e[gi>>2]=l3,w=Q3),C3=Bn+1|0,q5=Ao+(Bn<<2)|0,e[q5>>2]=w,P5=(Q4+1824|0)+(w<<2)|0,e[P5>>2]=M3,x9=C3}if(y5=la+1|0,G3=e[dA>>2]|0,L5=(y5|0)<(G3|0),L5)SA=x9,la=y5;else break}}while(!1);zg=Q4+3480|0,Zg=+o1[zg>>3],Eo=Zg*1e3,yA=(Q4+1056|0)+(hi<<2)|0,kA=e[yA>>2]|0,iC=e[Cg>>2]|0,vA=+(iC|0),nr=vA*.5,Wg=Q4+(hi<<2)|0,Dr=e[Wg>>2]|0,jt=Dr>>1,ra=Eo>nr,cm=ra?nr:Eo,na=cm/nr,Oi=+(jt|0),sa=Oi*na,oa=~~sa,br=kA+1116|0,e[br>>2]=oa,A6=(Qi+(z7<<5)|0)+4|0,Co=e[A6>>2]|0;do if((Co|0)==2)Xg=250;else if((Co|0)==1){if(_r=e[Dg>>2]|0,jg=(_r|0)==0,pe=Q4+2996|0,$a=Q4+2968|0,GQ=jg?$a:pe,TQ=e[GQ>>2]|0,MQ=+(TQ|0),gm=MQ*1e3,m8=gm>nr,!m8){Xg=gm;break}Xg=nr}else Xg=cm;while(!1);f0=e[Sg>>2]|0,Q0=(f0|0)==2;do if(Q0){if(d0=Q4+12|0,y0=e[d0>>2]|0,h0=(y0|0)>0,h0)for(WC=0;;){if(E0=(Q4+544|0)+(WC<<2)|0,C0=e[E0>>2]|0,u0=e[C0>>2]|0,k0=(u0|0)>0,k0)for(IC=0;;){J0=(C0+1092|0)+(IC<<2)|0,m0=e[J0>>2]|0,x0=(m0|0)==(z7|0);do if(x0){if(F0=e[Bg>>2]|0,M0=(F0|0)>0,M0)lm=0,eB=0;else{nC=0;break}for(;;)if(G0=(C0+4|0)+(eB<<2)|0,p0=e[G0>>2]|0,H0=(p0|0)==(IC|0),R0=H0&1,P=R0+lm|0,S0=eB+1|0,yQ=(S0|0)==(F0|0),yQ){nC=P;break}else lm=P,eB=S0}else nC=0;while(!1);if(L0=IC+1|0,q0=(L0|0)<(u0|0),N0=(nC|0)==0,V0=q0&N0,V0)IC=L0;else{VC=nC;break}}else VC=0;if(T0=WC+1|0,U0=(T0|0)<(y0|0),r1=(VC|0)==0,P0=U0&r1,P0)WC=T0;else{KC=VC;break}}else KC=0;if(e1=Xg/nr,v0=+(KC|0),i1=v0*Oi,a1=i1*e1,f1=e[N$>>2]|0,g1=+(f1|0),l1=a1/g1,A1=l1+.9,$1=~~A1,n1=i5($1,f1)|0,s1=Zt+4|0,e[s1>>2]=n1,z0=i5(KC,jt)|0,I1=(n1|0)>(z0|0),!I1){U=s1,Z1=n1,v1=f1;break}E1=(z0|0)%(f1|0)&-1,u1=z0-E1|0,e[s1>>2]=u1,U=s1,Z1=u1,v1=f1}else{if(d1=Xg/nr,m1=d1*Oi,p1=e[N$>>2]|0,Q1=+(p1|0),D1=m1/Q1,_1=D1+.9,y1=~~_1,k1=i5(y1,p1)|0,L1=Zt+4|0,e[L1>>2]=k1,N1=(k1|0)>(jt|0),!N1){U=L1,Z1=k1,v1=p1;break}w1=(jt|0)%(p1|0)&-1,U1=jt-w1|0,e[L1>>2]=U1,U=L1,Z1=U1,v1=p1}while(!1);if(G1=(Z1|0)==0,G1&&(e[U>>2]=v1),u3=jC+1|0,k6=e[io>>2]|0,v6=(u3|0)<(k6|0),v6)jC=u3;else break}if(m6=hi+1|0,z3=(m6|0)<(s|0),z3)hi=m6;else break}return $6=j+3428|0,p6=e[$6>>2]|0,_6=(p6|0)>0,_6?(Y6=t+16|0,e[Y6>>2]=p6):(B6=e[l0>>2]|0,v3=B6+3396|0,W3=e[v3>>2]|0,u6=B6+3400|0,O3=+o1[u6>>3],S3=~~O3,P3=+(S3|0),Y3=O3-P3,S6=W3+4|0,i6=e[S6>>2]|0,i3=(i6|0)==0,i3?p=-1:(P6=e[Bg>>2]|0,I6=i6+(S3<<3)|0,D3=+o1[I6>>3],T6=1-Y3,e6=D3*T6,Q6=S3+1|0,R6=i6+(Q6<<3)|0,K6=+o1[R6>>3],d6=K6*Y3,J6=d6+e6,x3=+(P6|0),G6=J6*x3,NQ=~~G6,p=NQ),j6=t+16|0,e[j6>>2]=p),r9=j+3424|0,x6=e[r9>>2]|0,N6=t+20|0,e[N6>>2]=x6,D6=j+3440|0,V6=e[D6>>2]|0,y6=t+12|0,e[y6>>2]=V6,F6=(p6|0)==0,F6?A0=0:(F3=j+3444|0,X6=e[F3>>2]|0,A9=+(X6|0),W6=+(p6|0),g9=A9/W6,h9=~~g9,A0=h9),f9=t+24|0,e[f9>>2]=A0,s9=j+3420|0,o9=e[s9>>2]|0,M9=(o9|0)==0,M9?(C=0,C|0):(E6=e[$6>>2]|0,e9=j+3360|0,e[e9>>2]=E6,T9=e[r9>>2]|0,u9=j+3364|0,e[u9>>2]=T9,d4=e[D6>>2]|0,n4=j+3368|0,e[n4>>2]=d4,c4=j+3444|0,G9=e[c4>>2]|0,V9=j+3372|0,e[V9>>2]=G9,v9=j+3448|0,I9=+o1[v9>>3],t9=j+3376|0,o1[t9>>3]=I9,E4=j+3432|0,v4=+o1[E4>>3],A4=j+3384|0,o1[A4>>3]=v4,C=0,C|0)}function NS(t,n,s,$){t=t|0,n=n|0,s=s|0,$=+$;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0;if(P=B,I=(s|0)<1,I)f=-131;else if(C=t+28|0,Q=e[C>>2]|0,b=$,x=b+1e-7,_=x,L=!(_>=1),d=L?_:.9998999834060669,M=Q+3416|0,A[M>>2]=d,T=d,G=Q+3400|0,p=US(n,s,T,0,G)|0,m=Q+3396|0,e[m>>2]=p,v=(p|0)==0,v)f=-130;else return OS(t,n,s),S=Q+3420|0,e[S>>2]=0,w=Q+3464|0,e[w>>2]=1,y=GS(t)|0,D=(y|0)==0,D?(c=0,c|0):(XB(t),c=y,c|0);return XB(t),c=f,c|0}function PC(t,n,s,$,c,f){t=t|0,n=+n,s=s|0,$=$|0,c=c|0,f=f|0;var d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0;for(m1=B,d=~~n,I=+(d|0),x=n-I,J=t+28|0,i0=e[J>>2]|0,d0=(i0+2852|0)+(s<<2)|0,F0=e[d0>>2]|0,V0=$+(d*20|0)|0,g1=e[V0>>2]|0,h1=+(g1|0),C=1-x,p=h1*C,m=d+1|0,v=$+(m*20|0)|0,S=e[v>>2]|0,w=+(S|0),y=w*x,D=y+p,Q=D,b=F0+12|0,A[b>>2]=Q,_=($+(d*20|0)|0)+4|0,L=e[_>>2]|0,M=+(L|0),T=M*C,G=($+(m*20|0)|0)+4|0,N=e[G>>2]|0,P=+(N|0),z=P*x,Y=z+T,t0=Y,W=F0+16|0,A[W>>2]=t0,e0=($+(d*20|0)|0)+8|0,H=e[e0>>2]|0,X=+(H|0),U=X*C,o0=($+(m*20|0)|0)+8|0,Z=e[o0>>2]|0,V=+(Z|0),s0=V*x,n0=s0+U,r0=n0,K=F0+20|0,A[K>>2]=r0,c0=($+(d*20|0)|0)+12|0,A0=+A[c0>>2],l0=A0,j=l0*C,a0=($+(m*20|0)|0)+12|0,g0=+A[a0>>2],f0=g0,Q0=f0*x,y0=Q0+j,h0=y0,E0=F0+24|0,A[E0>>2]=h0,C0=($+(d*20|0)|0)+16|0,u0=+A[C0>>2],k0=u0,J0=k0*C,D0=($+(m*20|0)|0)+16|0,m0=+A[D0>>2],x0=m0,M0=x0*x,G0=M0+J0,p0=G0,H0=F0+28|0,A[H0>>2]=p0,R0=c+(d<<2)|0,S0=e[R0>>2]|0,L0=+(S0|0),Y0=L0*C,q0=c+(m<<2)|0,N0=e[q0>>2]|0,T0=+(N0|0),U0=T0*x,r1=U0+Y0,P0=r1,e1=F0+496|0,A[e1>>2]=P0,u1=0;v0=(f+(d*68|0)|0)+(u1<<2)|0,i1=e[v0>>2]|0,c1=+(i1|0),a1=c1*C,f1=(f+(m*68|0)|0)+(u1<<2)|0,l1=e[f1>>2]|0,A1=+(l1|0),$1=A1*x,n1=$1+a1,s1=n1,z0=(F0+36|0)+(u1<<2)|0,A[z0>>2]=s1,I1=u1+1|0,E1=(I1|0)==17,!E1;)u1=I1}function HC(t,n,s,$,c,f,d){t=t|0,n=+n,s=s|0,$=$|0,c=c|0,f=f|0,d=+d;var I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0;for(w2=B,w=~~n,y=+(w|0),o0=n-y,j=t+28|0,k0=e[j>>2]|0,S0=(k0+2852|0)+(s<<2)|0,v0=e[S0>>2]|0,z0=$+(w<<2)|0,y1=e[z0>>2]|0,P1=+(y1|0),D=1-o0,z=P1*D,Y=w+1|0,t0=$+(Y<<2)|0,J=e[t0>>2]|0,W=+(J|0),e0=W*o0,H=e0+z,X=H,U=v0+108|0,A[U>>2]=X,Z=f+(s*12|0)|0,V=e[Z>>2]|0,s0=v0+120|0,e[s0>>2]=V,n0=(f+(s*12|0)|0)+4|0,i0=e[n0>>2]|0,r0=v0+124|0,e[r0>>2]=i0,K=(f+(s*12|0)|0)+8|0,c0=e[K>>2]|0,A0=v0+128|0,e[A0>>2]=c0,t2=0;;)if(l0=(c+(w*204|0)|0)+(t2<<2)|0,a0=e[l0>>2]|0,g0=+(a0|0),f0=g0*D,Q0=(c+(Y*204|0)|0)+(t2<<2)|0,d0=e[Q0>>2]|0,y0=+(d0|0),h0=y0*o0,E0=h0+f0,C0=E0,u0=(v0+132|0)+(t2<<2)|0,A[u0>>2]=C0,J0=t2+1|0,V1=(J0|0)==17,V1){a2=0;break}else t2=J0;for(;;)if(_1=((c+(w*204|0)|0)+68|0)+(a2<<2)|0,k1=e[_1>>2]|0,x1=+(k1|0),L1=x1*D,N1=((c+(Y*204|0)|0)+68|0)+(a2<<2)|0,w1=e[N1>>2]|0,U1=+(w1|0),Z1=U1*o0,G1=Z1+L1,v1=G1,K1=(v0+200|0)+(a2<<2)|0,A[K1>>2]=v1,H1=a2+1|0,g2=(H1|0)==17,g2){i2=0;break}else a2=H1;for(;q1=((c+(w*204|0)|0)+136|0)+(i2<<2)|0,Y1=e[q1>>2]|0,j1=+(Y1|0),r2=j1*D,W1=((c+(Y*204|0)|0)+136|0)+(i2<<2)|0,O1=e[W1>>2]|0,l2=+(O1|0),z1=l2*o0,h2=z1+r2,Q=h2,b=(v0+268|0)+(i2<<2)|0,A[b>>2]=Q,x=i2+1|0,$2=(x|0)==17,!$2;)i2=x;for(_=v0+132|0,L=+A[_>>2],p0=L+6,M=v0+132|0,T=L,G=T+d,N=G,P=N>2]=y2,D0=1;I=(v0+132|0)+(D0<<2)|0,m=+A[I>>2],m0=(v0+132|0)+(D0<<2)|0,x0=m,F0=x0+d,M0=F0,G0=M0>2]=o2,H0=D0+1|0,A2=(H0|0)==17,!A2;)D0=H0;for(R0=v0+200|0,L0=+A[R0>>2],Y0=L0+6,q0=v0+200|0,N0=L0,V0=N0+d,T0=V0,U0=T0>2]=n2,r1=1;C=(v0+200|0)+(r1<<2)|0,v=+A[C>>2],P0=(v0+200|0)+(r1<<2)|0,e1=v,i1=e1+d,c1=i1,a1=c1>2]=X1,f1=r1+1|0,d2=(f1|0)==17,!d2;)r1=f1;for(g1=v0+268|0,l1=+A[g1>>2],A1=l1+6,$1=v0+268|0,n1=l1,s1=n1+d,I1=s1,h1=I1>2]=e2,E1=1;p=(v0+268|0)+(E1<<2)|0,S=+A[p>>2],u1=(v0+268|0)+(E1<<2)|0,d1=S,m1=d1+d,p1=m1,Q1=p1>2]=f2,D1=E1+1|0,s2=(D1|0)==17,!s2;)E1=D1}function US(t,n,s,$,c){t=t|0,n=n|0,s=+s,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0;Q1=B,w=($|0)==0;e:do if(w){for(H=26336,z0=0;;){if(e0=e[H>>2]|0,X=e0+12|0,U=e[X>>2]|0,o0=(U|0)==-1,V=(U|0)==(t|0),u1=o0|V,u1&&(s0=e0+16|0,n0=e[s0>>2]|0,i0=(n0|0)>(n|0),!i0&&(r0=e0+20|0,K=e[r0>>2]|0,c0=(K|0)<(n|0),!c0&&(A0=e[e0>>2]|0,l0=e0+8|0,j=e[l0>>2]|0,g0=+o1[j>>3],f0=g0>s,!f0&&(y0=j+(A0<<3)|0,h0=+o1[y0>>3],E0=h0>2]|0,J0=Z+12|0,L0=e[J0>>2]|0,i1=(L0|0)==-1,A1=(L0|0)==(t|0),d1=i1|A1,d1&&($1=Z+16|0,D=e[$1>>2]|0,Q=(D|0)>(n|0),!Q&&(b=Z+20|0,x=e[b>>2]|0,_=(x|0)<(n|0),!_&&(L=e[Z>>2]|0,M=Z+4|0,T=e[M>>2]|0,G=+o1[T>>3],N=P>3],t0=P>Y,!t0))))){d=P,I=L,C=a0,p=T,l1=G;break e}if(s1=I1+1|0,J=26336+(s1<<2)|0,W=(s1|0)==17,W){f=0;break}else a0=J,I1=s1}return f|0}while(!1);C0=(I|0)>0;e:do if(C0)for(k0=l1,E1=0;;){if(u0=!(d>=k0),S=E1+1|0,!u0&&(D0=p+(S<<3)|0,m0=+o1[D0>>3],x0=d>3],k0=v,E1=S}else h1=0;while(!1);return M0=(h1|0)==(I|0),M0?(G0=+(I|0),p0=G0+-.001,m1=p0):(H0=p+(h1<<3)|0,R0=+o1[H0>>3],S0=R0,Y0=h1+1|0,q0=p+(Y0<<3)|0,N0=+o1[q0>>3],V0=N0,T0=S0,U0=d-T0,r1=V0-S0,P0=r1,e1=U0/P0,v0=e1,c1=+(h1|0),a1=v0+c1,f1=a1,m1=f1),o1[c>>3]=m1,g1=e[C>>2]|0,f=g1,f|0}function OS(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0;v0=B,I=t+28|0,C=e[I>>2]|0,_=C+3396|0,W=e[_>>2]|0,e[t>>2]=0,r0=t+4|0,e[r0>>2]=n,y0=t+8|0,e[y0>>2]=s,M0=C+3456|0,e[M0>>2]=1,T0=C+3460|0,e[T0>>2]=1,r1=C+3400|0,P0=+o1[r1>>3],p=~~P0,m=+(p|0),v=P0-m,S=C+3472|0,o1[S>>3]=P0,w=C+3488|0,y=e[w>>2]|0,D=(y|0)==0,D?(Q=W+120|0,b=e[Q>>2]|0,x=b+(p<<3)|0,L=+o1[x>>3],M=1-v,T=L*M,G=p+1|0,N=b+(G<<3)|0,P=+o1[N>>3],z=P*v,Y=z+T,t0=C+3480|0,o1[t0>>3]=Y,c=G,f=M):($=1-v,d=p+1|0,c=d,f=$),J=W+112|0,e0=e[J>>2]|0,H=e0+(p<<2)|0,X=e[H>>2]|0,U=+(X|0),o0=U*f,Z=e0+(c<<2)|0,V=e[Z>>2]|0,s0=+(V|0),n0=s0*v,i0=n0+o0,K=C+3496|0,o1[K>>3]=i0,c0=W+116|0,A0=e[c0>>2]|0,l0=A0+(p<<2)|0,j=e[l0>>2]|0,a0=+(j|0),g0=a0*f,f0=A0+(c<<2)|0,Q0=e[f0>>2]|0,d0=+(Q0|0),h0=d0*v,E0=h0+g0,C0=C+3504|0,o1[C0>>3]=E0,u0=C+3512|0,o1[u0>>3]=-6,k0=C+3520|0,o1[k0>>3]=P0,J0=C+3528|0,o1[J0>>3]=P0,D0=C+3536|0,o1[D0>>3]=P0,m0=C+3544|0,o1[m0>>3]=P0,x0=C+3552|0,o1[x0>>3]=P0,F0=C+3560|0,o1[F0>>3]=P0,G0=C+3568|0,o1[G0>>3]=P0,p0=C+3576|0,o1[p0>>3]=P0,H0=C+3584|0,o1[H0>>3]=P0,R0=C+3592|0,o1[R0>>3]=P0,S0=C+3600|0,o1[S0>>3]=P0,L0=C+3608|0,o1[L0>>3]=P0,Y0=C+3616|0,o1[Y0>>3]=P0,q0=C+3624|0,o1[q0>>3]=P0,N0=C+3632|0,o1[N0>>3]=P0,V0=C+3640|0,o1[V0>>3]=P0,U0=C+3648|0,o1[U0>>3]=P0}function PS(t,n,s,$,c,f){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0;var d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0;if(N0=B,I=(c|0)!=0,C=I?$:0,_=I?f:0,W=n+(C<<2)|0,r0=e[W>>2]|0,y0=520336+(r0<<2)|0,k0=e[y0>>2]|0,J0=n+(_<<2)|0,D0=e[J0>>2]|0,m0=520336+(D0<<2)|0,p=e[m0>>2]|0,m=s+(c<<2)|0,v=e[m>>2]|0,S=s+(C<<2)|0,w=e[S>>2]|0,y=s+(_<<2)|0,D=e[y>>2]|0,Q=(v|0)/4&-1,b=(w|0)/4&-1,x=Q-b|0,L=(w|0)/2&-1,M=x+L|0,T=(v|0)/2&-1,G=T+Q|0,d=(D|0)/-4&-1,N=G+d|0,P=(D|0)/2&-1,z=N+P|0,Y=(x|0)>0,Y?(t0=Q-b|0,J=t0<<2,ne(t|0,0,J|0)|0,F0=x):F0=0,e0=(F0|0)<(M|0),e0)for(H=Q+L|0,X=H-F0|0,U=X-b|0,M0=F0,H0=0;s0=k0+(H0<<2)|0,n0=+A[s0>>2],i0=t+(M0<<2)|0,K=+A[i0>>2],c0=K*n0,A[i0>>2]=c0,A0=M0+1|0,l0=H0+1|0,x0=(l0|0)==(U|0),!x0;)M0=A0,H0=l0;if(o0=(D|0)>1,o0){for(Z=N+1|0,V=(z|0)>(Z|0),p0=N,S0=P;R0=S0+-1|0,f0=p+(R0<<2)|0,Q0=+A[f0>>2],d0=t+(p0<<2)|0,h0=+A[d0>>2],E0=h0*Q0,A[d0>>2]=E0,C0=p0+1|0,u0=(C0|0)<(z|0),u0;)p0=C0,S0=R0;Y0=V?z:Z,G0=Y0}else G0=N;j=(v|0)>(G0|0),j&&(L0=t+(G0<<2)|0,a0=v-G0|0,g0=a0<<2,ne(L0|0,0,g0|0)|0)}function HS(t,n,s){t=t|0,n=+n,s=+s;var $=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0;if(K=B,B=B+64|0,i0=K+32|0,n0=K,$=k9(688)|0,c=$+408|0,iS(c),D=~~n,NS(c,t,D,s)|0,z=$+440|0,Xv(z),eS(z,553008,553016),X=$+456|0,_v(X,c)|0,U=$+568|0,Dv(X,U)|0,o0=Np(0)|0,ZS(o0),Z=WS()|0,Bv($,Z)|0,V=$+680|0,e[V>>2]=0,s0=$+684|0,e[s0>>2]=0,f=$+360|0,rS(X,z,f,i0,n0)|0,UC($,f)|0,UC($,i0)|0,UC($,n0)|0,d=$+392|0,I=Op($,d)|0,C=(I|0)==0,C)return B=K,$|0;for(p=$+396|0,m=$+404|0,v=$+400|0;S=e[s0>>2]|0,w=e[p>>2]|0,y=w+S|0,Q=e[m>>2]|0,b=y+Q|0,x=(b|0)==0,x||(M=e[V>>2]|0,T=Gi(M,b)|0,e[V>>2]=T,G=e[s0>>2]|0,N=T+G|0,P=e[d>>2]|0,Y=e[p>>2]|0,r4(N|0,P|0,Y|0)|0,t0=Y+G|0,e[s0>>2]=t0,J=T+t0|0,W=e[v>>2]|0,e0=e[m>>2]|0,r4(J|0,W|0,e0|0)|0,H=e0+t0|0,e[s0>>2]=H),_=Op($,d)|0,L=(_|0)==0,!L;);return B=K,$|0}function qS(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0;C=B,mv(t)|0,n=t+568|0,bv(n)|0,s=t+456|0,Yp(s),$=t+440|0,tS($),c=t+408|0,XB(c),f=t+680|0,d=e[f>>2]|0,I2(d),I2(t)}function YS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0;return f=B,s=t+456|0,$=Jp(s,n)|0,$|0}function JS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0;if(K=B,s=t+456|0,Rv(s,n)|0,$=t+568|0,y=Kp(s,$)|0,P=(y|0)==1,!!P)for(o0=t+360|0,Z=t+392|0,V=t+684|0,s0=t+396|0,n0=t+404|0,i0=t+680|0,c=t+392|0,f=t+400|0;;){if(wv($,0)|0,Sv($)|0,C=qp(s,o0)|0,p=(C|0)==0,!p)for(;;){if(UC(t,o0)|0,S=Pp(t,Z)|0,w=(S|0)==0,!w)for(;D=e[V>>2]|0,Q=e[s0>>2]|0,b=Q+D|0,x=e[n0>>2]|0,_=b+x|0,L=(_|0)==0,L||(G=e[i0>>2]|0,N=Gi(G,_)|0,e[i0>>2]=N,z=e[V>>2]|0,Y=N+z|0,t0=e[c>>2]|0,J=e[s0>>2]|0,r4(Y|0,t0|0,J|0)|0,W=J+z|0,e[V>>2]=W,e0=N+W|0,H=e[f>>2]|0,X=e[n0>>2]|0,r4(e0|0,H|0,X|0)|0,U=X+W|0,e[V>>2]=U),M=Pp(t,Z)|0,T=(M|0)==0,!T;);if(m=qp(s,o0)|0,v=(m|0)==0,v)break}if(d=Kp(s,$)|0,I=(d|0)==1,!I)break}}function KS(t){t=t|0;var n=0,s=0,$=0,c=0;return c=B,n=t+684|0,s=e[n>>2]|0,s|0}function VS(t){t=t|0;var n=0,s=0,$=0,c=0,f=0;return f=B,n=t+684|0,e[n>>2]=0,s=t+680|0,$=e[s>>2]|0,$|0}function qC(t,n){t=+t,n=n|0;var s=0,$=0,c=0;return c=B,s=+zS(t,n),+s}function _h(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0;if(R3=B,B=B+688|0,t3=R3+424|0,J5=R3+192|0,W5=R3,X=i5(s,n)|0,U=(X|0)==0,U){B=R3;return}for(J=X-s|0,q1=W5+4|0,e[q1>>2]=s,e[W5>>2]=s,e2=s,f5=s,y3=2;s2=e2+s|0,T2=s2+f5|0,x5=W5+(y3<<2)|0,e[x5>>2]=T2,k5=T2>>>0>>0,t5=y3+1|0,k5;)y2=f5,f5=T2,y3=t5,e2=y2;if(o0=0-s|0,j=t+J|0,k0=(J|0)>0,k0)for(S0=(s|0)==0,v0=j,y1=1,V2=0,F5=t,N5=1;;){z0=y1&3,K1=(z0|0)==3;do if(K1){e[J5>>2]=F5,P1=(N5|0)>1;e:do if(P1){for(m=N5,Q=F5,O1=F5,z5=1;;){if(H1=Q+o0|0,Y1=m+-2|0,j1=W5+(Y1<<2)|0,r2=e[j1>>2]|0,L5=r2+s|0,W=0-L5|0,W1=Q+W|0,l2=lt[$&15](O1,W1)|0,z1=(l2|0)>-1,z1&&(h2=lt[$&15](O1,H1)|0,A2=(h2|0)>-1,A2)){h3=z5;break}if(d2=lt[$&15](W1,H1)|0,V1=(d2|0)>-1,g2=z5+1|0,$2=J5+(z5<<2)|0,V1?(e[$2>>2]=W1,t2=m+-1|0,f=W1,C=t2):(e[$2>>2]=H1,f=H1,C=Y1),a2=(C|0)>1,!a2){h3=g2;break}P=e[J5>>2]|0,m=C,Q=f,O1=P,z5=g2}if(i2=(h3|0)<2,!i2&&(o2=J5+(h3<<2)|0,e[o2>>2]=t3,!S0))for(y=s,N2=t3;;){for(u2=y>>>0>256,n2=u2?256:y,K2=e[J5>>2]|0,r4(N2|0,K2|0,n2|0)|0,_2=K2,q3=0;S2=J5+(q3<<2)|0,w2=q3+1|0,C2=J5+(w2<<2)|0,M2=e[C2>>2]|0,r4(_2|0,M2|0,n2|0)|0,G2=_2+n2|0,e[S2>>2]=G2,e3=(w2|0)==(h3|0),!e3;)_2=M2,q3=w2;if(X1=(y|0)==(n2|0),X1)break e;f2=y-n2|0,Y=e[o2>>2]|0,y=f2,N2=Y}}while(!1);q2=y1>>>2,O2=V2<<30,A5=q2|O2,P2=V2>>>2,T1=N5+2|0,r0=A5,v1=P2,P5=T1}else{if(j2=N5+-1|0,R5=W5+(j2<<2)|0,X2=e[R5>>2]|0,v5=F5,z2=v0-v5|0,w5=X2>>>0>>0,w5){e[J5>>2]=F5,O5=(N5|0)>1;e:do if(O5){for(v=N5,b=F5,R2=F5,Q3=1;;){if(a5=b+o0|0,k2=v+-2|0,E5=W5+(k2<<2)|0,r5=e[E5>>2]|0,t6=r5+s|0,e0=0-t6|0,x2=b+e0|0,B2=lt[$&15](R2,x2)|0,C5=(B2|0)>-1,C5&&(u5=lt[$&15](R2,a5)|0,S5=(u5|0)>-1,S5)){B3=Q3;break}if(G5=lt[$&15](x2,a5)|0,D5=(G5|0)>-1,H2=Q3+1|0,I5=J5+(Q3<<2)|0,D5?(e[I5>>2]=x2,s5=v+-1|0,d=x2,p=s5):(e[I5>>2]=a5,d=a5,p=k2),l5=(p|0)>1,!l5){B3=H2;break}z=e[J5>>2]|0,v=p,b=d,R2=z,Q3=H2}if(B5=(B3|0)<2,!B5&&(M1=J5+(B3<<2)|0,e[M1>>2]=t3,!S0))for(D=s,W2=t3;;){for(h5=D>>>0>256,o5=h5?256:D,b5=e[J5>>2]|0,r4(W2|0,b5|0,o5|0)|0,g5=b5,M3=0;c2=J5+(M3<<2)|0,m5=M3+1|0,e5=J5+(m5<<2)|0,n5=e[e5>>2]|0,r4(g5|0,n5|0,o5|0)|0,Y2=g5+o5|0,e[c2>>2]=Y2,A3=(m5|0)==(B3|0),!A3;)g5=n5,M3=m5;if(c5=(D|0)==(o5|0),c5)break e;Z2=D-o5|0,t0=e[M1>>2]|0,D=Z2,W2=t0}}while(!1)}else YC(F5,s,$,y1,V2,N5,0,W5);if($5=(N5|0)==1,$5){F2=V2<<1,p5=y1>>>31,H5=p5|F2,X5=y1<<1,r0=X5,v1=H5,P5=0;break}else{d5=j2>>>0>31,f3=N5+-33|0,c=d5?0:y1,x=d5?y1:V2,_=d5?f3:j2,g3=x<<_,Z=32-_|0,V=c>>>Z,s0=V|g3,n0=c<<_,r0=n0,v1=s0,P5=1;break}}while(!1);if(i0=r0|1,K=F5+s|0,c0=K>>>0>>0,c0)y1=i0,V2=v1,F5=K,N5=P5;else{T=v1,G=i0,E3=K,q5=P5;break}}else T=0,G=1,E3=t,q5=1;if(YC(E3,s,$,G,T,q5,0,W5),A0=(q5|0)==1,l0=(G|0)==1,C3=l0&A0,a0=(T|0)==0,l3=a0&C3,l3){B=R3;return}else Q0=G,m0=T,K5=E3,y5=q5;for(;;){if(g0=(y5|0)<2,!g0){U0=m0<<2,r1=Q0>>>30,P0=r1|U0,e1=y5+-2|0,i1=Q0<<1,c1=i1&2147483646,a1=r1<<31,f1=c1|a1,g1=f1^3,l1=P0>>>1,A1=W5+(e1<<2)|0,$1=e[A1>>2]|0,G3=$1+s|0,H=0-G3|0,n1=K5+H|0,s1=y5+-1|0,YC(n1,s,$,g1,l1,s1,1,W5),I1=l1<<1,h1=r1&1,E1=I1|h1,u1=g1<<1,d1=u1|1,m1=K5+o0|0,YC(m1,s,$,d1,E1,e1,1,W5),Q0=d1,m0=E1,K5=m1,y5=e1;continue}f0=Q0+-1|0,d0=(f0|0)==0;do if(d0)T0=32,o3=56;else{if(y0=f0&1,h0=(y0|0)==0,h0){for(S=f0,j3=0;;)if(E0=j3+1|0,C0=S>>>1,u0=C0&1,J0=(u0|0)==0,J0)S=C0,j3=E0;else{L=E0;break}D0=(L|0)==0,D0?o3=51:q0=L}else o3=51;if((o3|0)==51){if(o3=0,x0=(m0|0)==0,x0){T0=64,o3=56;break}if(F0=m0&1,M0=(F0|0)==0,M0)w=m0,_3=0;else{I=0,Q1=Q0,k1=m0,w1=0;break}for(;;)if(G0=_3+1|0,p0=w>>>1,H0=p0&1,R0=(H0|0)==0,R0)w=p0,_3=G0;else{M=G0,T3=_3;break}if(L0=T3+33|0,Y0=(M|0)==0,Y0){I=0,Q1=Q0,k1=m0,w1=0;break}else q0=L0}N0=q0>>>0>31,N0?(T0=q0,o3=56):(I=q0,Q1=Q0,k1=m0,w1=q0)}while(!1);if((o3|0)==56&&(o3=0,V0=T0+-32|0,I=V0,Q1=m0,k1=0,w1=T0),p1=Q1>>>I,D1=32-I|0,_1=k1<>>I,N1=w1+y5|0,N=K5+o0|0,U1=(N1|0)==1,Z1=(x1|0)==1,$3=Z1&U1,G1=(L1|0)==0,a3=G1&$3,a3)break;Q0=x1,m0=L1,K5=N,y5=N1}B=R3}function YC(t,n,s,$,c,f,d,I){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0,I=I|0;var C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0;B2=B,B=B+720|0,x2=B2+456|0,O2=B2+228|0,T2=B2,e[T2>>2]=t,U=0-n|0,o0=($|0)!=1,m0=(c|0)!=0,q0=m0|o0;e:do if(q0)if(a1=I+(f<<2)|0,E1=e[a1>>2]|0,L1=0-E1|0,Y1=t+L1|0,V1=lt[s&15](Y1,t)|0,y2=(V1|0)<1,y2)m=t,x=f,N=d,P2=1,R2=18;else for(w=t,T=f,P=d,u0=Y1,U0=c,v5=1,k2=$;;){if(Z=(P|0)==0,a0=(T|0)>1,a5=Z&a0,a5){if(y0=w+U|0,h0=T+-2|0,E0=I+(h0<<2)|0,C0=e[E0>>2]|0,k0=lt[s&15](y0,u0)|0,J0=(k0|0)>-1,J0){v=w,_=T,j2=v5;break e}if(E5=C0+n|0,H=0-E5|0,D0=w+H|0,x0=lt[s&15](D0,u0)|0,F0=(x0|0)>-1,F0){v=w,_=T,j2=v5;break e}}M0=v5+1|0,G0=T2+(v5<<2)|0,e[G0>>2]=u0,p0=k2+-1|0,H0=(p0|0)==0;do if(H0)s1=32,R2=15;else{if(R0=p0&1,S0=(R0|0)==0,S0){for(Q=p0,f5=0;;)if(L0=f5+1|0,Y0=Q>>>1,N0=Y0&1,V0=(N0|0)==0,V0)Q=Y0,f5=L0;else{z=L0;break}T0=(z|0)==0,T0?R2=10:A1=z}else R2=10;if((R2|0)==10){if(R2=0,r1=(U0|0)==0,r1){s1=64,R2=15;break}if(P0=U0&1,e1=(P0|0)==0,e1)b=U0,w5=0;else{p=0,I1=k2,d1=U0,D1=0;break}for(;;)if(v0=w5+1|0,i1=b>>>1,c1=i1&1,f1=(c1|0)==0,f1)b=i1,w5=v0;else{Y=v0,O5=w5;break}if(g1=O5+33|0,l1=(Y|0)==0,l1){p=0,I1=k2,d1=U0,D1=0;break}else A1=g1}$1=A1>>>0>31,$1?(s1=A1,R2=15):(p=A1,I1=k2,d1=U0,D1=A1)}while(!1);if((R2|0)==15&&(R2=0,n1=s1+-32|0,p=n1,I1=U0,d1=0,D1=s1),z0=I1>>>p,h1=32-p|0,u1=d1<>>p,Q1=D1+T|0,_1=(m1|0)!=1,y1=(p1|0)!=0,k1=y1|_1,!k1){v=u0,_=Q1,j2=M0;break e}if(t0=e[T2>>2]|0,x1=I+(Q1<<2)|0,N1=e[x1>>2]|0,w1=0-N1|0,U1=u0+w1|0,Z1=lt[s&15](U1,t0)|0,G1=(Z1|0)<1,G1){m=u0,x=Q1,N=0,P2=M0,R2=18;break}else y=u0,T=Q1,P=0,u0=U1,U0=p1,v5=M0,k2=m1,w=y}else m=t,x=f,N=d,P2=1,R2=18;while(!1);if((R2|0)==18)if(v1=(N|0)==0,v1)v=m,_=x,j2=P2;else{B=B2;return}K1=(j2|0)<2;e:do if(!K1&&(P1=T2+(j2<<2)|0,e[P1>>2]=x2,H1=(n|0)==0,!H1))for(M=n,g2=x2;;){for(d2=M>>>0>256,j1=d2?256:M,s2=e[T2>>2]|0,r4(g2|0,s2|0,j1|0)|0,h2=s2,X2=0;W1=T2+(X2<<2)|0,O1=X2+1|0,l2=T2+(O1<<2)|0,z1=e[l2>>2]|0,r4(h2|0,z1|0,j1|0)|0,A2=h2+j1|0,e[W1>>2]=A2,A5=(O1|0)==(j2|0),!A5;)h2=z1,X2=O1;if(q1=(M|0)==(j1|0),q1)break e;r2=M-j1|0,e0=e[P1>>2]|0,M=r2,g2=e0}while(!1);e[O2>>2]=v,$2=(_|0)>1;e:do if($2){for(D=_,G=v,n2=v,z2=1;;){if(t2=G+U|0,a2=D+-2|0,i2=I+(a2<<2)|0,o2=e[i2>>2]|0,r5=o2+n|0,X=0-r5|0,X1=G+X|0,f2=lt[s&15](n2,X1)|0,e2=(f2|0)>-1,e2&&(S2=lt[s&15](n2,t2)|0,w2=(S2|0)>-1,w2)){T1=z2;break}if(C2=lt[s&15](X1,t2)|0,M2=(C2|0)>-1,_2=z2+1|0,G2=O2+(z2<<2)|0,M2?(e[G2>>2]=X1,u2=D+-1|0,C=X1,S=u2):(e[G2>>2]=t2,C=t2,S=a2),K2=(S|0)>1,!K2){T1=_2;break}J=e[O2>>2]|0,D=S,G=C,n2=J,z2=_2}if(N2=(T1|0)<2,N2)d0=x2;else if(q2=O2+(T1<<2)|0,e[q2>>2]=x2,V=(n|0)==0,V)d0=x2;else for(L=n,Q0=x2;;){for(g0=L>>>0>256,n0=g0?256:L,f0=e[O2>>2]|0,r4(Q0|0,f0|0,n0|0)|0,l0=f0,R5=0;r0=O2+(R5<<2)|0,K=R5+1|0,c0=O2+(K<<2)|0,A0=e[c0>>2]|0,r4(l0|0,A0|0,n0|0)|0,j=l0+n0|0,e[r0>>2]=j,V2=(K|0)==(T1|0),!V2;)l0=A0,R5=K;if(s0=(L|0)==(n0|0),s0){d0=x2;break e}i0=L-n0|0,W=e[q2>>2]|0,L=i0,Q0=W}}else d0=x2;while(!1);B=B2}function Ti(t){t=+t;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0;return _=B,o1[p2>>3]=t,s=e[p2>>2]|0,$=e[p2+4>>2]|0,p=$&2146435072,m=p>>>0>1126170624,v=!1,S=(p|0)==1126170624,w=S&v,y=m|w,y?(n=t,+n):(D=($|0)<0,Q=t+-4503599627370496,c=Q+4503599627370496,f=t+4503599627370496,d=f+-4503599627370496,b=D?c:d,I=b==0,I?(C=D?-0:0,n=C,+n):(n=b,+n))}function fQ(t){t=+t;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0;return y=B,s=(A[p2>>2]=t,e[p2>>2]|0),$=s&2130706432,c=$>>>0>1249902592,c?(n=t,+n):(f=(s|0)<0,d=t+-8388608,I=d+8388608,C=t+8388608,p=C+-8388608,S=f?I:p,m=S==0,m?(v=f?-0:0,n=v,+n):(n=S,+n))}function zS(t,n){t=+t,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0;return z=B,f=(n|0)>1023,f?(d=t*898846567431158e293,Q=n+-1023|0,b=(Q|0)>1023,b?(x=d*898846567431158e293,_=n+-2046|0,L=(_|0)>1023,s=L?1023:_,$=s,N=x):($=Q,N=d)):(M=(n|0)<-1022,M?(T=t*22250738585072014e-324,G=n+1022|0,I=(G|0)<-1022,I?(C=T*22250738585072014e-324,p=n+2044|0,m=(p|0)<-1022,c=m?-1022:p,$=c,N=C):($=G,N=T)):($=n,N=t)),v=$+1023|0,S=dQ(v|0,0,52)|0,w=q6,e[p2>>2]=S,e[p2+4>>2]=w,y=+o1[p2>>3],D=N*y,+D}function ZS(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0;I=B,n=t+-1|0,s=553040,$=s,e[$>>2]=n,c=s+4|0,f=c,e[f>>2]=0}function WS(){var t=0,n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0;return b=B,t=553040,n=t,C=e[n>>2]|0,p=t+4|0,m=p,v=e[m>>2]|0,S=tD(C|0,v|0,1284865837,1481765933)|0,w=q6,y=qA(S|0,w|0,1,0)|0,D=q6,s=553040,$=s,e[$>>2]=y,c=s+4|0,f=c,e[f>>2]=D,d=YA(y|0,D|0,33)|0,I=q6,d|0}function k9(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,V5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,m6=0,z3=0,$6=0,p6=0,_6=0,Y6=0,B6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,s3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,A4=0,p9=0,S4=0,D4=0,R4=0,M4=0,Z4=0,C4=0,T4=0,N9=0,G4=0,s4=0,x4=0,g4=0,ue=0,P9=0,d9=0,Ie=0,Le=0,ze=0,N4=0,Me=0,U4=0,W4=0,we=0,Ze=0,z9=0,Ae=0,h4=0,b6=0,O4=0,R9=0,o4=0,b4=0,se=0,Z9=0,oe=0,$e=0,B4=0,j4=0,F4=0,ae=0,E9=0,a6=0,Te=0,$4=0,de=0,m4=0,a4=0,U6=0,ke=0,ve=0,We=0,l4=0,w4=0,g8=0,H3=0,Q9=0,C9=0,L4=0,X4=0,$7=0,Se=0,a7=0,p7=0,K8=0,l7=0,c7=0,x8=0,F8=0,L8=0,M8=0,V8=0,z8=0,Q7=0,T8=0,G8=0,N8=0,y8=0,w8=0,h8=0,U8=0,O8=0,Z8=0,W8=0,f8=0,Ge=0,De=0,je=0,k8=0,y9=0,g7=0,Ee=0,h7=0,y7=0,j8=0,w7=0,ee=0,X8=0,P8=0,v8=0,Xe=0,P4=0,be=0,e8=0,u8=0,S8=0,le=0,W9=0,t8=0,I8=0,i8=0,d8=0,ce=0,Ce=0,Ne=0,Ue=0,j9=0,_e=0,ge=0,r8=0,Be=0,p4=0,E8=0,e7=0,H4=0,I3=0,Oe=0,C8=0,te=0,H9=0,ie=0,S9=0,Pe=0,H8=0,f7=0,t7=0,i7=0,q8=0,r7=0,Y8=0,n8=0,A8=0,D8=0,q4=0,n7=0,b8=0,He=0,B9=0,A7=0,qe=0,L7=0,O7=0,k7=0,s7=0,v7=0,re=0,M7=0,P7=0,s8=0,_8=0,S7=0,J8=0,Re=0,he=0,X9=0,D7=0,X7=0,Lt=0,Mt=0,Tt=0,ct=0,H7=0,gt=0,q7=0,ht=0,Y7=0,ft=0,et=0,ti=0,Gt=0,ut=0,It=0,ii=0,dt=0,tt=0,ri=0,Nt=0,Ut=0,Ot=0,Pt=0,it=0,Et=0,Ht=0,J7=0,rt=0,T7=0,K7=0,ni=0,qt=0,Ai=0,Ct=0,Yt=0,Bt=0,mt=0,Jt=0,pt=0,V7=0,Qt=0,Kt=0,nt=0,G7=0,yt=0,me=0,wt=0,b7=0,At=0,i9=0,u7=0,B8=0,I7=0,_7=0,Hr=0,hr=0,VA=0,Ln=0,zA=0,Mn=0,ZA=0,WA=0,Tn=0,jA=0,qr=0,XA=0,es=0,ts=0,Gn=0,is=0,Nn=0,Un=0,rs=0,Yr=0,On=0,Jr=0,Pn=0,Hn=0,ns=0,As=0,ss=0,Kr=0,qn=0,os=0,fr=0,Vr=0,$s=0,as=0,zr=0,si=0,Yn=0,ls=0,cs=0,Jn=0,Kn=0,Vn=0,gs=0,oi=0,Zr=0,hs=0,zn=0,fs=0,us=0,Is=0,Zn=0,ds=0,Es=0,Cs=0,Bs=0,Wn=0,ms=0,ps=0,Wr=0,ur=0,jr=0,Qs=0,Ki=0,ys=0,jn=0,Xr=0,Xn=0,en=0,ws=0,eA=0,tA=0,ks=0,iA=0,rA=0,vs=0,Ir=0,nA=0,$i=0,tn=0,dr=0,Vi=0,Er=0,Ni=0,Cr=0,AA=0,Ui=0,Bi=0,mi=0,Vt=0,pi=0,Br=0,zi=0,Zi=0,mr=0,ai=0,Ss=0,st=0,za=0,rn=0,nn=0,Rh=0,Za=0,Ds=0,xh=0,Vo=0,Wa=0,Fh=0,Lh=0,Mh=0,zo=0,ja=0,Xa=0,Zo=0,An=0,el=0,Th=0,bs=0,Wi=0,Gh=0,Nh=0,Uh=0,Oh=0,Ph=0,Hh=0,qh=0,Yh=0,Jh=0,Kh=0,tl=0,pr=0,Vh=0,zh=0,il=0,Zh=0,Wo=0,_s=0,jo=0,Wh=0,jh=0,Xo=0,rl=0,nl=0,Al=0,e$=0,sl=0,Rs=0,Xh=0,ef=0,ol=0,tf=0,rf=0,$l=0,nf=0,Af=0,al=0,ll=0,cl=0,gl=0,hl=0,sn=0,sf=0,fl=0,of=0,ul=0,Il=0,$f=0,af=0,lf=0,t$=0,dl=0,El=0,sA=0,Cl=0,i$=0,cf=0,Bl=0,gf=0,ml=0,hf=0,ff=0,pl=0,Ql=0,uf=0,xs=0,If=0,r$=0,yl=0,wl=0,df=0,Ef=0,Cf=0,Bf=0,mf=0,pf=0,Fs=0,kl=0,vl=0,Sl=0,Ls=0,Qf=0,Dl=0,yf=0,bl=0,wf=0,kf=0,_l=0,n$=0,vf=0,Sf=0,Ms=0,Df=0,Ts=0,bf=0,A$=0,_f=0,Rf=0,xf=0,Rl=0,Ff=0,Lf=0,Mf=0,Tf=0,xl=0,Fl=0,ji=0,Ll=0,Gs=0,s$=0,o$=0,on=0,Ml=0,$n=0,Gf=0,Tl=0,Nf=0,Uf=0,Of=0,Pf=0,Ns=0,$$=0,Qr=0,Hf=0,qf=0,Gl=0,a$=0,Nl=0,Ul=0,Yf=0,Ol=0,Jf=0,l$=0,Kf=0,Vf=0,U9=0,zf=0,Pl=0,Zf=0,Wf=0,c$=0,jf=0,g$=0,Hl=0,Xf=0,eu=0,ql=0,Yl=0,tu=0,h$=0,f$=0,Jl=0,Kl=0,iu=0,Vl=0,u$=0,ru=0,zl=0,nu=0,Au=0,su=0,ou=0,Zl=0,Wl=0,I$=0,Us=0,jl=0,$u=0,Xl=0,ec=0,au=0,lu=0,cu=0,tc=0,gu=0,hu=0,fu=0,uu=0,Iu=0,du=0,ic=0,Eu=0,rc=0,Cu=0,an=0,Bu=0,nc=0,mu=0,oA=0,Ac=0,d$=0,pu=0,Os=0,E$=0,Qu=0,C$=0,sc=0,yu=0,wu=0,ku=0,vu=0,Su=0,oc=0,Du=0,bu=0,_u=0,Ps=0,$A=0,B$=0,Ru=0,m$=0,xu=0,Fu=0,Lu=0,$c=0,Mu=0,Tu=0,Gu=0,Nu=0,Uu=0,Hs=0,Ou=0,Pu=0,ac=0,Hu=0,qu=0,Yu=0,Ju=0,li=0,lc=0,ci=0,cc=0,p$=0,Ku=0,zt=0,aA=0,Vu=0,zu=0,Zu=0,Wu=0,ju=0,gc=0,Xu=0,eI=0,hc=0,tI=0,iI=0,lA=0,Q$=0,rI=0,fc=0,nI=0,AI=0,qs=0,sI=0,oI=0,uc=0,Ic=0,$I=0,aI=0,ln=0,lI=0,cI=0,cn=0,gI=0,dc=0,hI=0,fI=0,cA=0,Ec=0,uI=0,Cc=0,II=0,Xi=0,y$=0,dI=0,Bc=0,mc=0,EI=0,CI=0,pc=0,BI=0,mI=0,pI=0,Qc=0,QI=0,gA=0,yI=0,gn=0,wI=0,kI=0,w$=0,vI=0,k$=0,v$=0,SI=0,yc=0,wc=0,DI=0,kc=0,vc=0,Sc=0,bI=0,Dc=0,bc=0,_I=0,RI=0,_c=0,Rc=0,xI=0,xc=0,Fc=0,FI=0,LI=0,Lc=0,S$=0,Mc=0,Tc=0,Gc=0,Nc=0,MI=0,TI=0,GI=0,NI=0,UI=0,OI=0,PI=0,HI=0,Uc=0,D$=0,qI=0,YI=0,JI=0,Oc=0,Pc=0,KI=0,Hc=0,b$=0,Ys=0,qc=0,VI=0,zI=0,ZI=0,WI=0,Yc=0,Js=0,jI=0,XI=0,ed=0,td=0,id=0,rd=0,nd=0,Ad=0,Jc=0,sd=0,od=0,$d=0,ad=0,Ks=0,Kc=0,ld=0,cd=0,hn=0,Vc=0,zc=0,_$=0,gd=0,Zc=0,hd=0,Wc=0,jc=0,fd=0,ud=0,Id=0,dd=0,Ed=0,Vs=0,R$=0,Cd=0,Bd=0,md=0,pd=0,Xc=0,Qd=0,eg=0,yd=0,wd=0,tg=0,yr=0,ig=0,rg=0,kd=0,ng=0,zs=0,vd=0,Sd=0,Dd=0,Zs=0,Ag=0,bd=0,_d=0,sg=0,Rd=0,xd=0,x$=0,Ws=0,Fd=0,Ld=0,Md=0,og=0,$g=0,ag=0,Td=0,Gd=0,hA=0,Nd=0,lg=0,Ud=0,F$=0,cg=0,Od=0,Pd=0,Hd=0,qd=0,gg=0,Yd=0,Jd=0,hg=0,js=0,Kd=0,Vd=0,zd=0,fA=0,fg=0,ug=0,Zd=0,Ig=0,dg=0,Qi=0,Eg=0,er=0,Wd=0,jd=0,Xd=0,eE=0,L$=0,Xs=0,Cg=0,Bg=0,tE=0,eo=0,uA=0,iE=0,to=0,M$=0,rE=0,T$=0,nE=0,AE=0,mg=0,io=0,pg=0,sE=0,oE=0,$E=0,aE=0,Qg=0,lE=0,z7=0,Q4=0,Zt=0,cE=0,yg=0,wg=0,G$=0,gE=0,wr=0,IA=0,hE=0,fE=0,kg=0,N$=0,uE=0,vg=0,Sg=0,Dg=0,U$=0,O$=0,bg=0,dA=0,P$=0,_g=0,IE=0,fn=0,dE=0,Rg=0,ro=0,EE=0,xg=0,yi=0,CE=0,BE=0,mE=0,pE=0,QE=0,yE=0,wi=0,wE=0,kE=0,vE=0,Fg=0,gi=0,no=0,H$=0,Lg=0,Mg=0,SE=0,Tg=0,Gg=0,DE=0,bE=0,Ng=0,Ug=0,_E=0,RE=0,Og=0,xE=0,EA=0,Ao=0,so=0,FE=0,q$=0,LE=0,ME=0,Pg=0,CA=0,TE=0,GE=0,Y$=0,J$=0,oo=0,K$=0,V$=0,tr=0,kr=0,vr=0,z$=0,Z$=0,BA=0,ir=0,un=0,NE=0,rr=0,In=0,UE=0,kt=0,vt=0,St=0,$o=0,ao=0,Hg=0,qg=0,lo=0,W$=0,Dt=0,co=0,Sr=0,j$=0,OE=0,X$=0,PE=0,ea=0,Yg=0,go=0,HE=0,qE=0,ho=0,YE=0,fo=0,dn=0,Ye=0,k4=0,Jg=0,JE=0,ta=0,Kg=0,KE=0,VE=0,uo=0,zE=0,ZE=0,WE=0,jE=0,Vg=0,XE=0,eC=0,tC=0,Wt=0,Io=0,En=0,ia=0,mA=0,pA=0,Z7=0,QA=0,zg=0,Zg=0,Eo=0,yA=0,wA=0,kA=0,iC=0,vA=0,nr=0,Wg=0,Dr=0,jt=0,ra=0,na=0,Oi=0,Aa=0,sa=0,oa=0,br=0,A6=0,Co=0,_r=0,jg=0,pe=0,$a=0,m8=0,SA=0,Cn=0,Bn=0,x9=0,mn=0,Rr=0,Y4=0,aa=0;aa=B,V1=t>>>0<245;do if(V1){if(g2=t>>>0<11,c4=t+11|0,P4=c4&-8,me=g2?16:P4,Ds=me>>>3,A$=e[138262]|0,Ps=A$>>>Ds,Tc=Ps&3,hg=(Tc|0)==0,!hg){$2=Ps&1,h3=$2^1,a3=h3+Ds|0,o3=a3<<1,c3=553088+(o3<<2)|0,Q0=o3+2|0,_6=553088+(Q0<<2)|0,S6=e[_6>>2]|0,R6=S6+8|0,D6=e[R6>>2]|0,f9=(c3|0)==(D6|0);do if(f9)G9=1<>>0>>0,oe&&Q2(),m4=D6+12|0,C9=e[m4>>2]|0,F8=(C9|0)==(S6|0),F8){e[m4>>2]=c3,e[_6>>2]=D6;break}else Q2();while(!1);return h8=a3<<3,g7=h8|3,be=S6+4|0,e[be>>2]=g7,C0=h8|4,Ce=S6+C0|0,H4=e[Ce>>2]|0,t7=H4|1,e[Ce>>2]=t7,Ye=R6,Ye|0}if(He=e[138264]|0,P7=me>>>0>He>>>0,P7){if(Mt=(Ps|0)==0,!Mt){Gt=Ps<>>12,Wr=fs&16,eA=Yn>>>Wr,Vi=eA>>>5,zi=Vi&8,xh=zi|Wr,el=eA>>>zi,Yh=el>>>2,jo=Yh&4,ef=xh|jo,hl=el>>>jo,dl=hl>>>1,pl=dl&2,Bf=ef|pl,bl=hl>>>pl,_f=bl>>>1,Ll=_f&1,Of=Bf|Ll,Yf=bl>>>Ll,c$=Of+Yf|0,Jl=c$<<1,Zl=553088+(Jl<<2)|0,U1=Jl+2|0,tc=553088+(U1<<2)|0,an=e[tc>>2]|0,C$=an+8|0,$A=e[C$>>2]|0,Nu=(Zl|0)==($A|0);do if(Nu)lc=1<>>0>>0,Xi&&Q2(),Qc=$A+12|0,SI=e[Qc>>2]|0,RI=(SI|0)==(an|0),RI){e[Qc>>2]=Zl,e[tc>>2]=$A,y=e[138264]|0,Ws=y;break}else Q2();while(!1);return Gc=c$<<3,D$=Gc-me|0,VI=me|3,rd=an+4|0,e[rd>>2]=VI,cd=an+me|0,ud=D$|1,j1=me|4,Qd=an+j1|0,e[Qd>>2]=ud,vd=an+Gc|0,e[vd>>2]=D$,lg=(Ws|0)==0,lg||(js=e[138267]|0,Eg=Ws>>>3,eo=Eg<<1,pg=553088+(eo<<2)|0,yg=e[138262]|0,vg=1<>2]|0,C2=e[138266]|0,A5=t2>>>0>>0,A5?Q2():(N=EA,oo=t2)),e[N>>2]=js,a5=oo+12|0,e[a5>>2]=js,G5=js+8|0,e[G5>>2]=oo,Z2=js+12|0,e[Z2>>2]=pg),e[138264]=D$,e[138267]=cd,Ye=C$,Ye|0}if($5=e[138263]|0,E3=($5|0)==0,E3)k4=me;else{for(K5=0-$5|0,y3=$5&K5,B3=y3+-1|0,q3=B3>>>12,M3=q3&16,z5=B3>>>M3,Q3=z5>>>5,W5=Q3&8,j3=W5|M3,_3=z5>>>W5,T3=_3>>>2,$3=T3&4,l3=j3|$3,C3=_3>>>$3,q5=C3>>>1,N5=q5&2,P5=l3|N5,y5=C3>>>N5,G3=y5>>>1,L5=G3&1,t6=P5|L5,t3=y5>>>L5,R3=t6+t3|0,f6=553352+(R3<<2)|0,m3=e[f6>>2]|0,w3=m3+4|0,p3=e[w3>>2]|0,X3=p3&-8,V3=X3-me|0,Io=V3,na=m3,$a=m3;;){if(N3=na+16|0,V5=e[N3>>2]|0,k3=(V5|0)==0,k3)if(U3=na+20|0,o6=e[U3>>2]|0,u3=(o6|0)==0,u3){En=Io,m8=$a;break}else k6=o6;else k6=V5;w6=k6+4|0,v6=e[w6>>2]|0,m6=v6&-8,z3=m6-me|0,$6=z3>>>0>>0,H=$6?z3:Io,s2=$6?k6:$a,Io=H,na=k6,$a=s2}p6=e[138266]|0,Y6=m8>>>0>>0,Y6&&Q2(),B6=m8+me|0,v3=m8>>>0>>0,v3||Q2(),Z3=m8+24|0,W3=e[Z3>>2]|0,u6=m8+12|0,O3=e[u6>>2]|0,S3=(O3|0)==(m8|0);do if(S3){if(T6=m8+20|0,e6=e[T6>>2]|0,Q6=(e6|0)==0,Q6)if(K6=m8+16|0,d6=e[K6>>2]|0,J6=(d6|0)==0,J6){kt=0;break}else ir=d6,$o=K6;else ir=e6,$o=T6;for(;;){if(x3=ir+20|0,Z6=e[x3>>2]|0,G6=(Z6|0)==0,!G6){ir=Z6,$o=x3;continue}if(j6=ir+16|0,r9=e[j6>>2]|0,x6=(r9|0)==0,x6){rr=ir,qg=$o;break}else ir=r9,$o=j6}if(N6=qg>>>0>>0,N6)Q2();else{e[qg>>2]=0,kt=rr;break}}else if(P3=m8+8|0,Y3=e[P3>>2]|0,i6=Y3>>>0>>0,i6&&Q2(),i3=Y3+12|0,P6=e[i3>>2]|0,s3=(P6|0)==(m8|0),s3||Q2(),r6=O3+8|0,I6=e[r6>>2]|0,D3=(I6|0)==(m8|0),D3){e[i3>>2]=O3,e[r6>>2]=Y3,kt=O3;break}else Q2();while(!1);V6=(W3|0)==0;do if(!V6){if(y6=m8+28|0,F6=e[y6>>2]|0,F3=553352+(F6<<2)|0,L6=e[F3>>2]|0,X6=(m8|0)==(L6|0),X6){if(e[F3>>2]=kt,HE=(kt|0)==0,HE){A9=1<>>0>>0,o9&&Q2(),M9=W3+16|0,E6=e[M9>>2]|0,M6=(E6|0)==(m8|0),M6?e[M9>>2]=kt:(e9=W3+20|0,e[e9>>2]=kt),T9=(kt|0)==0,T9)break;u9=e[138266]|0,d4=kt>>>0>>0,d4&&Q2(),n4=kt+24|0,e[n4>>2]=W3,V9=m8+16|0,v9=e[V9>>2]|0,I9=(v9|0)==0;do if(!I9)if(H6=v9>>>0>>0,H6)Q2();else{t9=kt+16|0,e[t9>>2]=v9,E4=v9+24|0,e[E4>>2]=kt;break}while(!1);if(v4=m8+20|0,A4=e[v4>>2]|0,p9=(A4|0)==0,!p9)if(S4=e[138266]|0,R4=A4>>>0>>0,R4)Q2();else{M4=kt+20|0,e[M4>>2]=A4,Z4=A4+24|0,e[Z4>>2]=kt;break}}while(!1);return C4=En>>>0<16,C4?(T4=En+me|0,N9=T4|3,G4=m8+4|0,e[G4>>2]=N9,Z1=T4+4|0,s4=m8+Z1|0,x4=e[s4>>2]|0,g4=x4|1,e[s4>>2]=g4):(P9=me|3,d9=m8+4|0,e[d9>>2]=P9,Ie=En|1,c0=me|4,Le=m8+c0|0,e[Le>>2]=Ie,l0=En+me|0,ze=m8+l0|0,e[ze>>2]=En,N4=e[138264]|0,Me=(N4|0)==0,Me||(U4=e[138267]|0,W4=N4>>>3,we=W4<<1,z9=553088+(we<<2)|0,Ae=e[138262]|0,h4=1<>2]|0,se=e[138266]|0,Z9=b4>>>0>>0,Z9?Q2():(T=o4,J$=b4)),e[T>>2]=U4,$e=J$+12|0,e[$e>>2]=U4,B4=U4+8|0,e[B4>>2]=J$,j4=U4+12|0,e[j4>>2]=z9),e[138264]=En,e[138267]=B6),F4=m8+8|0,Ye=F4,Ye|0}}else k4=me}else if(ae=t>>>0>4294967231,ae)k4=-1;else if(E9=t+11|0,a6=E9&-8,Te=e[138263]|0,$4=(Te|0)==0,$4)k4=a6;else{de=0-a6|0,a4=E9>>>8,U6=(a4|0)==0,U6?dn=0:(ke=a6>>>0>16777215,ke?dn=31:(ve=a4+1048320|0,We=ve>>>16,l4=We&8,w4=a4<>>16,Q9=H3&4,L4=Q9|l4,X4=w4<>>16,a7=Se&2,p7=L4|a7,K8=14-p7|0,l7=X4<>>15,x8=K8+c7|0,L8=x8<<1,M8=x8+7|0,V8=a6>>>M8,z8=V8&1,Q7=z8|L8,dn=Q7)),T8=553352+(dn<<2)|0,G8=e[T8>>2]|0,N8=(G8|0)==0;e:do if(N8)pA=de,Aa=0,Bn=0,Y4=86;else for(y8=(dn|0)==31,w8=dn>>>1,U8=25-w8|0,O8=y8?0:U8,Z8=a6<>2]|0,Ge=f8&-8,De=Ge-a6|0,je=De>>>0>>0,je)if(k8=(Ge|0)==(a6|0),k8){QA=De,br=Oi,Rr=Oi,Y4=90;break e}else mA=De,Cn=Oi;else mA=ia,Cn=SA;if(y9=Oi+20|0,Ee=e[y9>>2]|0,h7=Eo>>>31,y7=(Oi+16|0)+(h7<<2)|0,j8=e[y7>>2]|0,w7=(Ee|0)==0,ee=(Ee|0)==(j8|0),zE=w7|ee,Zg=zE?zg:Ee,X8=(j8|0)==0,P8=Eo<<1,X8){pA=mA,Aa=Zg,Bn=Cn,Y4=86;break}else ia=mA,zg=Zg,Eo=P8,Oi=j8,SA=Cn}while(!1);if((Y4|0)==86){if(v8=(Aa|0)==0,Xe=(Bn|0)==0,KE=v8&Xe,KE){if(e8=2<>>12,ce=d8&16,Ne=i8>>>ce,Ue=Ne>>>5,j9=Ue&8,_e=j9|ce,ge=Ne>>>j9,r8=ge>>>2,Be=r8&4,p4=_e|Be,E8=ge>>>Be,e7=E8>>>1,I3=e7&2,Oe=p4|I3,C8=E8>>>I3,te=C8>>>1,H9=te&1,ie=Oe|H9,S9=C8>>>H9,Pe=ie+S9|0,H8=553352+(Pe<<2)|0,f7=e[H8>>2]|0,sa=f7,mn=0}else sa=Aa,mn=Bn;i7=(sa|0)==0,i7?(Z7=pA,x9=mn):(QA=pA,br=sa,Rr=mn,Y4=90)}if((Y4|0)==90)for(;;){if(Y4=0,q8=br+4|0,r7=e[q8>>2]|0,Y8=r7&-8,n8=Y8-a6|0,A8=n8>>>0>>0,X=A8?n8:QA,oa=A8?br:Rr,D8=br+16|0,q4=e[D8>>2]|0,n7=(q4|0)==0,!n7){QA=X,br=q4,Rr=oa,Y4=90;continue}if(b8=br+20|0,B9=e[b8>>2]|0,A7=(B9|0)==0,A7){Z7=X,x9=oa;break}else QA=X,br=B9,Rr=oa,Y4=90}if(qe=(x9|0)==0,qe)k4=a6;else if(L7=e[138264]|0,O7=L7-a6|0,k7=Z7>>>0>>0,k7){s7=e[138266]|0,v7=x9>>>0>>0,v7&&Q2(),re=x9+a6|0,M7=x9>>>0>>0,M7||Q2(),s8=x9+24|0,_8=e[s8>>2]|0,S7=x9+12|0,J8=e[S7>>2]|0,Re=(J8|0)==(x9|0);do if(Re){if(q7=x9+20|0,ht=e[q7>>2]|0,Y7=(ht|0)==0,Y7)if(ft=x9+16|0,et=e[ft>>2]|0,ti=(et|0)==0,ti){St=0;break}else In=et,lo=ft;else In=ht,lo=q7;for(;;){if(ut=In+20|0,It=e[ut>>2]|0,ii=(It|0)==0,!ii){In=It,lo=ut;continue}if(dt=In+16|0,tt=e[dt>>2]|0,ri=(tt|0)==0,ri){UE=In,W$=lo;break}else In=tt,lo=dt}if(Nt=W$>>>0>>0,Nt)Q2();else{e[W$>>2]=0,St=UE;break}}else if(he=x9+8|0,X9=e[he>>2]|0,D7=X9>>>0>>0,D7&&Q2(),X7=X9+12|0,Lt=e[X7>>2]|0,Tt=(Lt|0)==(x9|0),Tt||Q2(),ct=J8+8|0,H7=e[ct>>2]|0,gt=(H7|0)==(x9|0),gt){e[X7>>2]=J8,e[ct>>2]=X9,St=J8;break}else Q2();while(!1);Ut=(_8|0)==0;do if(!Ut){if(Ot=x9+28|0,Pt=e[Ot>>2]|0,Et=553352+(Pt<<2)|0,Ht=e[Et>>2]|0,J7=(x9|0)==(Ht|0),J7){if(e[Et>>2]=St,ho=(St|0)==0,ho){rt=1<>>0>>0,Ai&&Q2(),Ct=_8+16|0,Bt=e[Ct>>2]|0,mt=(Bt|0)==(x9|0),mt?e[Ct>>2]=St:(Jt=_8+20|0,e[Jt>>2]=St),pt=(St|0)==0,pt)break;V7=e[138266]|0,Qt=St>>>0>>0,Qt&&Q2(),Kt=St+24|0,e[Kt>>2]=_8,nt=x9+16|0,G7=e[nt>>2]|0,yt=(G7|0)==0;do if(!yt)if(b7=G7>>>0>>0,b7)Q2();else{At=St+16|0,e[At>>2]=G7,i9=G7+24|0,e[i9>>2]=St;break}while(!1);if(u7=x9+20|0,B8=e[u7>>2]|0,I7=(B8|0)==0,!I7)if(_7=e[138266]|0,Hr=B8>>>0<_7>>>0,Hr)Q2();else{hr=St+20|0,e[hr>>2]=B8,VA=B8+24|0,e[VA>>2]=St;break}}while(!1);zA=Z7>>>0<16;e:do if(zA)Mn=Z7+a6|0,ZA=Mn|3,WA=x9+4|0,e[WA>>2]=ZA,c1=Mn+4|0,Tn=x9+c1|0,jA=e[Tn>>2]|0,qr=jA|1,e[Tn>>2]=qr;else{if(XA=a6|3,es=x9+4|0,e[es>>2]=XA,ts=Z7|1,r0=a6|4,is=x9+r0|0,e[is>>2]=ts,f0=Z7+a6|0,Nn=x9+f0|0,e[Nn>>2]=Z7,Un=Z7>>>3,rs=Z7>>>0<256,rs){Yr=Un<<1,On=553088+(Yr<<2)|0,Jr=e[138262]|0,Pn=1<>2]|0,os=e[138266]|0,fr=qn>>>0>>0,fr?Q2():(M=Kr,V$=qn)),e[M>>2]=re,Vr=V$+12|0,e[Vr>>2]=re,U0=a6+8|0,$s=x9+U0|0,e[$s>>2]=V$,P0=a6+12|0,as=x9+P0|0,e[as>>2]=On;break}if(zr=Z7>>>8,si=(zr|0)==0,si?kr=0:(ls=Z7>>>0>16777215,ls?kr=31:(cs=zr+1048320|0,Jn=cs>>>16,Kn=Jn&8,Vn=zr<>>16,Zr=oi&4,hs=Zr|Kn,zn=Vn<>>16,Zn=Is&2,ds=hs|Zn,Es=14-ds|0,Cs=zn<>>15,Wn=Es+Bs|0,ms=Wn<<1,ps=Wn+7|0,ur=Z7>>>ps,jr=ur&1,Qs=jr|ms,kr=Qs)),Ki=553352+(kr<<2)|0,g1=a6+28|0,ys=x9+g1|0,e[ys>>2]=kr,_1=a6+16|0,jn=x9+_1|0,v1=a6+20|0,Xr=x9+v1|0,e[Xr>>2]=0,e[jn>>2]=0,Xn=e[138263]|0,en=1<>2]=re,q1=a6+24|0,iA=x9+q1|0,e[iA>>2]=Ki,r2=a6+12|0,rA=x9+r2|0,e[rA>>2]=re,O1=a6+8|0,vs=x9+O1|0,e[vs>>2]=re;break}Ir=e[Ki>>2]|0,nA=Ir+4|0,$i=e[nA>>2]|0,tn=$i&-8,dr=(tn|0)==(Z7|0);t:do if(dr)Dt=Ir;else{for(Er=(kr|0)==31,Ni=kr>>>1,Cr=25-Ni|0,AA=Er?0:Cr,Ui=Z7<>>31,ai=(j$+16|0)+(mr<<2)|0,Vt=e[ai>>2]|0,Ss=(Vt|0)==0,Ss){w=ai,OE=j$;break}if(Bi=z$<<1,mi=Vt+4|0,pi=e[mi>>2]|0,Br=pi&-8,Zi=(Br|0)==(Z7|0),Zi){Dt=Vt;break t}else z$=Bi,j$=Vt}if(st=e[138266]|0,za=w>>>0>>0,za)Q2();else{e[w>>2]=re,h0=a6+24|0,rn=x9+h0|0,e[rn>>2]=OE,G0=a6+12|0,nn=x9+G0|0,e[nn>>2]=re,N0=a6+8|0,Rh=x9+N0|0,e[Rh>>2]=re;break e}}while(!1);if(Za=Dt+8|0,Vo=e[Za>>2]|0,Wa=e[138266]|0,Fh=Vo>>>0>=Wa>>>0,Jg=Dt>>>0>=Wa>>>0,Lh=Fh&Jg,Lh){Mh=Vo+12|0,e[Mh>>2]=re,e[Za>>2]=re,l2=a6+8|0,zo=x9+l2|0,e[zo>>2]=Vo,h2=a6+12|0,ja=x9+h2|0,e[ja>>2]=Dt,d0=a6+24|0,Xa=x9+d0|0,e[Xa>>2]=0;break}else Q2()}while(!1);return Zo=x9+8|0,Ye=Zo,Ye|0}else k4=a6}while(!1);if(An=e[138264]|0,Th=An>>>0>>0,!Th)return bs=An-k4|0,Wi=e[138267]|0,Gh=bs>>>0>15,Gh?(Nh=Wi+k4|0,e[138267]=Nh,e[138264]=bs,Uh=bs|1,f1=k4+4|0,Oh=Wi+f1|0,e[Oh>>2]=Uh,Ph=Wi+An|0,e[Ph>>2]=bs,Hh=k4|3,qh=Wi+4|0,e[qh>>2]=Hh):(e[138264]=0,e[138267]=0,Jh=An|3,Kh=Wi+4|0,e[Kh>>2]=Jh,A0=An+4|0,tl=Wi+A0|0,pr=e[tl>>2]|0,Vh=pr|1,e[tl>>2]=Vh),zh=Wi+8|0,Ye=zh,Ye|0;if(il=e[138265]|0,Zh=il>>>0>k4>>>0,Zh)return Wo=il-k4|0,e[138265]=Wo,_s=e[138268]|0,Wh=_s+k4|0,e[138268]=Wh,jh=Wo|1,U=k4+4|0,Xo=_s+U|0,e[Xo>>2]=jh,rl=k4|3,nl=_s+4|0,e[nl>>2]=rl,Al=_s+8|0,Ye=Al,Ye|0;e$=e[138380]|0,sl=(e$|0)==0;do if(sl)if(Rs=lv(30)|0,Xh=Rs+-1|0,ol=Xh&Rs,tf=(ol|0)==0,tf){e[138382]=Rs,e[138381]=Rs,e[138383]=-1,e[138384]=-1,e[138385]=0,e[138373]=0,rf=Np(0)|0,$l=rf&-16,nf=$l^1431655768,e[138380]=nf;break}else Q2();while(!1);if(Af=k4+48|0,al=e[138382]|0,ll=k4+47|0,cl=al+ll|0,gl=0-al|0,sn=cl&gl,sf=sn>>>0>k4>>>0,!sf||(fl=e[138372]|0,of=(fl|0)==0,!of&&(ul=e[138370]|0,Il=ul+sn|0,$f=Il>>>0<=ul>>>0,af=Il>>>0>fl>>>0,uo=$f|af,uo)))return Ye=0,Ye|0;lf=e[138373]|0,t$=lf&4,El=(t$|0)==0;e:do if(El){sA=e[138268]|0,Cl=(sA|0)==0;t:do if(Cl)Y4=174;else{for(yA=553496;;){if(i$=e[yA>>2]|0,cf=i$>>>0>sA>>>0,!cf&&(Bl=yA+4|0,gf=e[Bl>>2]|0,ml=i$+gf|0,hf=ml>>>0>sA>>>0,hf)){v=yA,S=Bl;break}if(ff=yA+8|0,Ql=e[ff>>2]|0,uf=(Ql|0)==0,uf){Y4=174;break t}else yA=Ql}if(vf=e[138265]|0,Sf=cl-vf|0,Ms=Sf&gl,Df=Ms>>>0<2147483647,Df)if(Ts=Ft(Ms|0)|0,bf=e[v>>2]|0,Rf=e[S>>2]|0,xf=bf+Rf|0,Rl=(Ts|0)==(xf|0),n=Rl?Ms:0,Rl)if(Ff=(Ts|0)==-1,Ff)_r=n;else{A6=Ts,pe=n,Y4=194;break e}else go=Ts,jt=Ms,Co=n,Y4=184;else _r=0}while(!1);do if((Y4|0)==174)if(xs=Ft(0)|0,If=(xs|0)==-1,If)_r=0;else if(r$=xs,yl=e[138381]|0,wl=yl+-1|0,df=wl&r$,Ef=(df|0)==0,Ef?Dr=sn:(Cf=wl+r$|0,mf=0-yl|0,pf=Cf&mf,Fs=sn-r$|0,kl=Fs+pf|0,Dr=kl),vl=e[138370]|0,Sl=vl+Dr|0,Ls=Dr>>>0>k4>>>0,Qf=Dr>>>0<2147483647,VE=Ls&Qf,VE){if(Dl=e[138372]|0,yf=(Dl|0)==0,!yf&&(wf=Sl>>>0<=vl>>>0,kf=Sl>>>0>Dl>>>0,ZE=wf|kf,ZE)){_r=0;break}if(_l=Ft(Dr|0)|0,n$=(_l|0)==(xs|0),Wg=n$?Dr:0,n$){A6=xs,pe=Wg,Y4=194;break e}else go=_l,jt=Dr,Co=Wg,Y4=184}else _r=0;while(!1);t:do if((Y4|0)==184){Lf=0-jt|0,Mf=(go|0)!=-1,Tf=jt>>>0<2147483647,jE=Tf&Mf,xl=Af>>>0>jt>>>0,XE=xl&jE;do if(XE)if(Fl=e[138382]|0,ji=ll-jt|0,Gs=ji+Fl|0,s$=0-Fl|0,o$=Gs&s$,on=o$>>>0<2147483647,on)if(Ml=Ft(o$|0)|0,$n=(Ml|0)==-1,$n){Ft(Lf|0)|0,_r=Co;break t}else{Gf=o$+jt|0,ra=Gf;break}else ra=jt;else ra=jt;while(!1);if(Tl=(go|0)==-1,Tl)_r=Co;else{A6=go,pe=ra,Y4=194;break e}}while(!1);Nf=e[138373]|0,Uf=Nf|4,e[138373]=Uf,jg=_r,Y4=191}else jg=0,Y4=191;while(!1);if((Y4|0)==191&&(Pf=sn>>>0<2147483647,Pf&&(Ns=Ft(sn|0)|0,$$=Ft(0)|0,Qr=(Ns|0)!=-1,Hf=($$|0)!=-1,WE=Qr&Hf,qf=Ns>>>0<$$>>>0,eC=qf&WE,eC&&(Gl=$$,a$=Ns,Nl=Gl-a$|0,Ul=k4+40|0,Ol=Nl>>>0>Ul>>>0,d2=Ol?Nl:jg,Ol&&(A6=Ns,pe=d2,Y4=194)))),(Y4|0)==194){Jf=e[138370]|0,l$=Jf+pe|0,e[138370]=l$,Kf=e[138371]|0,Vf=l$>>>0>Kf>>>0,Vf&&(e[138371]=l$),U9=e[138268]|0,zf=(U9|0)==0;e:do if(zf){for(Pl=e[138266]|0,Zf=(Pl|0)==0,Wf=A6>>>0>>0,tC=Zf|Wf,tC&&(e[138266]=A6),e[138374]=A6,e[138375]=pe,e[138377]=0,jf=e[138380]|0,e[138271]=jf,e[138270]=-1,fo=0;g$=fo<<1,Hl=553088+(g$<<2)|0,o0=g$+3|0,Xf=553088+(o0<<2)|0,e[Xf>>2]=Hl,j=g$+2|0,eu=553088+(j<<2)|0,e[eu>>2]=Hl,ql=fo+1|0,YE=(ql|0)==32,!YE;)fo=ql;Yl=pe+-40|0,tu=A6+8|0,h$=tu,f$=h$&7,Kl=(f$|0)==0,iu=0-h$|0,Vl=iu&7,u$=Kl?0:Vl,ru=A6+u$|0,zl=Yl-u$|0,e[138268]=ru,e[138265]=zl,nu=zl|1,V=u$+4|0,Au=A6+V|0,e[Au>>2]=nu,l1=pe+-36|0,su=A6+l1|0,e[su>>2]=40,ou=e[138384]|0,e[138269]=ou}else{for(kA=553496;;){if(Wl=e[kA>>2]|0,I$=kA+4|0,Us=e[I$>>2]|0,jl=Wl+Us|0,$u=(A6|0)==(jl|0),$u){C=Wl,p=I$,m=Us,iC=kA,Y4=204;break}if(Xl=kA+8|0,ec=e[Xl>>2]|0,au=(ec|0)==0,au)break;kA=ec}if((Y4|0)==204&&(lu=iC+12|0,cu=e[lu>>2]|0,gu=cu&8,hu=(gu|0)==0,hu&&(fu=U9>>>0>=C>>>0,uu=U9>>>0>>0,Vg=uu&fu,Vg))){Iu=m+pe|0,e[p>>2]=Iu,du=e[138265]|0,ic=du+pe|0,Eu=U9+8|0,rc=Eu,Cu=rc&7,Bu=(Cu|0)==0,nc=0-rc|0,mu=nc&7,oA=Bu?0:mu,Ac=U9+oA|0,d$=ic-oA|0,e[138268]=Ac,e[138265]=d$,pu=d$|1,n0=oA+4|0,Os=U9+n0|0,e[Os>>2]=pu,n1=ic+4|0,E$=U9+n1|0,e[E$>>2]=40,Qu=e[138384]|0,e[138269]=Qu;break}for(sc=e[138266]|0,yu=A6>>>0>>0,yu?(e[138266]=A6,cA=A6):cA=sc,wu=A6+pe|0,vA=553496;;){if(ku=e[vA>>2]|0,vu=(ku|0)==(wu|0),vu){I=vA,nr=vA,Y4=212;break}if(Su=vA+8|0,oc=e[Su>>2]|0,Du=(oc|0)==0,Du){wA=553496;break}else vA=oc}if((Y4|0)==212)if(bu=nr+12|0,_u=e[bu>>2]|0,B$=_u&8,Ru=(B$|0)==0,Ru){e[I>>2]=A6,m$=nr+4|0,xu=e[m$>>2]|0,Fu=xu+pe|0,e[m$>>2]=Fu,Lu=A6+8|0,$c=Lu,Mu=$c&7,Tu=(Mu|0)==0,Gu=0-$c|0,Uu=Gu&7,Hs=Tu?0:Uu,Ou=A6+Hs|0,u0=pe+8|0,Pu=A6+u0|0,ac=Pu,Hu=ac&7,qu=(Hu|0)==0,Yu=0-ac|0,Ju=Yu&7,li=qu?0:Ju,k0=li+pe|0,ci=A6+k0|0,cc=ci,p$=Ou,Ku=cc-p$|0,i0=Hs+k4|0,zt=A6+i0|0,aA=Ku-k4|0,Vu=k4|3,g0=Hs+4|0,zu=A6+g0|0,e[zu>>2]=Vu,Zu=(ci|0)==(U9|0);t:do if(Zu)Wu=e[138265]|0,gc=Wu+aA|0,e[138265]=gc,e[138268]=zt,Xu=gc|1,H1=i0+4|0,eI=A6+H1|0,e[eI>>2]=Xu;else{if(hc=e[138267]|0,tI=(ci|0)==(hc|0),tI){iI=e[138264]|0,lA=iI+aA|0,e[138264]=lA,e[138267]=zt,Q$=lA|1,K1=i0+4|0,rI=A6+K1|0,e[rI>>2]=Q$,P1=lA+i0|0,fc=A6+P1|0,e[fc>>2]=lA;break}if(s1=pe+4|0,J0=s1+li|0,AI=A6+J0|0,qs=e[AI>>2]|0,sI=qs&3,oI=(sI|0)==1,oI){uc=qs&-8,Ic=qs>>>3,$I=qs>>>0<256;i:do if($I){N1=li|8,Y0=N1+pe|0,aI=A6+Y0|0,ln=e[aI>>2]|0,w1=pe+12|0,q0=w1+li|0,lI=A6+q0|0,cn=e[lI>>2]|0,gI=Ic<<1,dc=553088+(gI<<2)|0,hI=(ln|0)==(dc|0);do if(!hI){if(fI=ln>>>0>>0,fI&&Q2(),Ec=ln+12|0,uI=e[Ec>>2]|0,Cc=(uI|0)==(ci|0),Cc)break;Q2()}while(!1);if(II=(cn|0)==(ln|0),II){y$=1<>>0>>0,CI&&Q2(),pc=cn+8|0,BI=e[pc>>2]|0,mI=(BI|0)==(ci|0),mI){G=pc;break}Q2()}while(!1);pI=ln+12|0,e[pI>>2]=cn,e[G>>2]=ln}else{x1=li|24,D0=x1+pe|0,QI=A6+D0|0,gA=e[QI>>2]|0,Y1=pe+12|0,m0=Y1+li|0,yI=A6+m0|0,gn=e[yI>>2]|0,wI=(gn|0)==(ci|0);do if(wI){if(W1=li|16,S0=s1+W1|0,vc=A6+S0|0,Sc=e[vc>>2]|0,bI=(Sc|0)==0,bI)if(L0=W1+pe|0,Dc=A6+L0|0,bc=e[Dc>>2]|0,_I=(bc|0)==0,_I){vt=0;break}else un=bc,ao=Dc;else un=Sc,ao=vc;for(;;){if(_c=un+20|0,Rc=e[_c>>2]|0,xI=(Rc|0)==0,!xI){un=Rc,ao=_c;continue}if(xc=un+16|0,Fc=e[xc>>2]|0,FI=(Fc|0)==0,FI){NE=un,Hg=ao;break}else un=Fc,ao=xc}if(LI=Hg>>>0>>0,LI)Q2();else{e[Hg>>2]=0,vt=NE;break}}else if(L1=li|8,x0=L1+pe|0,kI=A6+x0|0,w$=e[kI>>2]|0,vI=w$>>>0>>0,vI&&Q2(),k$=w$+12|0,v$=e[k$>>2]|0,yc=(v$|0)==(ci|0),yc||Q2(),wc=gn+8|0,DI=e[wc>>2]|0,kc=(DI|0)==(ci|0),kc){e[k$>>2]=gn,e[wc>>2]=w$,vt=gn;break}else Q2();while(!1);if(Lc=(gA|0)==0,Lc)break;y1=pe+28|0,F0=y1+li|0,S$=A6+F0|0,Mc=e[S$>>2]|0,Nc=553352+(Mc<<2)|0,MI=e[Nc>>2]|0,TI=(ci|0)==(MI|0);do if(TI){if(e[Nc>>2]=vt,qE=(vt|0)==0,!qE)break;GI=1<>>0>>0,HI&&Q2(),Uc=gA+16|0,qI=e[Uc>>2]|0,YI=(qI|0)==(ci|0),YI?e[Uc>>2]=vt:(JI=gA+20|0,e[JI>>2]=vt),Oc=(vt|0)==0,Oc)break i;while(!1);Pc=e[138266]|0,KI=vt>>>0>>0,KI&&Q2(),Hc=vt+24|0,e[Hc>>2]=gA,k1=li|16,M0=k1+pe|0,b$=A6+M0|0,Ys=e[b$>>2]|0,qc=(Ys|0)==0;do if(!qc)if(zI=Ys>>>0>>0,zI)Q2();else{ZI=vt+16|0,e[ZI>>2]=Ys,WI=Ys+24|0,e[WI>>2]=vt;break}while(!1);if(H0=s1+k1|0,Yc=A6+H0|0,Js=e[Yc>>2]|0,jI=(Js|0)==0,jI)break;if(XI=e[138266]|0,ed=Js>>>0>>0,ed)Q2();else{td=vt+20|0,e[td>>2]=Js,id=Js+24|0,e[id>>2]=vt;break}}while(!1);A2=uc|li,R0=A2+pe|0,nd=A6+R0|0,Ad=uc+aA|0,Kg=nd,Wt=Ad}else Kg=ci,Wt=aA;if(Jc=Kg+4|0,sd=e[Jc>>2]|0,od=sd&-2,e[Jc>>2]=od,$d=Wt|1,y0=i0+4|0,ad=A6+y0|0,e[ad>>2]=$d,E0=Wt+i0|0,Ks=A6+E0|0,e[Ks>>2]=Wt,Kc=Wt>>>3,ld=Wt>>>0<256,ld){hn=Kc<<1,Vc=553088+(hn<<2)|0,zc=e[138262]|0,_$=1<>2]|0,fd=e[138266]|0,Id=jc>>>0>>0,!Id){L=Wc,K$=jc;break}Q2()}while(!1);e[L>>2]=zt,dd=K$+12|0,e[dd>>2]=zt,m1=i0+8|0,Ed=A6+m1|0,e[Ed>>2]=K$,p1=i0+12|0,Vs=A6+p1|0,e[Vs>>2]=Vc;break}R$=Wt>>>8,Cd=(R$|0)==0;do if(Cd)vr=0;else{if(Bd=Wt>>>0>16777215,Bd){vr=31;break}md=R$+1048320|0,pd=md>>>16,Xc=pd&8,eg=R$<>>16,tg=wd&4,yr=tg|Xc,ig=eg<>>16,ng=kd&2,zs=yr|ng,Sd=14-zs|0,Dd=ig<>>15,Ag=Sd+Zs|0,bd=Ag<<1,_d=Ag+7|0,sg=Wt>>>_d,Rd=sg&1,xd=Rd|bd,vr=xd}while(!1);if(x$=553352+(vr<<2)|0,p0=i0+28|0,Fd=A6+p0|0,e[Fd>>2]=vr,V0=i0+16|0,Ld=A6+V0|0,T0=i0+20|0,Md=A6+T0|0,e[Md>>2]=0,e[Ld>>2]=0,og=e[138263]|0,$g=1<>2]=zt,r1=i0+24|0,hA=A6+r1|0,e[hA>>2]=x$,e1=i0+12|0,Nd=A6+e1|0,e[Nd>>2]=zt,i1=i0+8|0,Ud=A6+i1|0,e[Ud>>2]=zt;break}F$=e[x$>>2]|0,cg=F$+4|0,Od=e[cg>>2]|0,Pd=Od&-8,Hd=(Pd|0)==(Wt|0);i:do if(Hd)Sr=F$;else{for(qd=(vr|0)==31,gg=vr>>>1,Yd=25-gg|0,Jd=qd?0:Yd,Kd=Wt<>>31,dg=(X$+16|0)+(Ig<<2)|0,fA=e[dg>>2]|0,Qi=(fA|0)==0,Qi){s=dg,PE=X$;break}if(Vd=BA<<1,zd=fA+4|0,fg=e[zd>>2]|0,ug=fg&-8,Zd=(ug|0)==(Wt|0),Zd){Sr=fA;break i}else BA=Vd,X$=fA}if(er=e[138266]|0,Wd=s>>>0>>0,Wd)Q2();else{e[s>>2]=zt,E1=i0+24|0,jd=A6+E1|0,e[jd>>2]=PE,u1=i0+12|0,Xd=A6+u1|0,e[Xd>>2]=zt,d1=i0+8|0,eE=A6+d1|0,e[eE>>2]=zt;break t}}while(!1);if(L$=Sr+8|0,Xs=e[L$>>2]|0,Cg=e[138266]|0,Bg=Xs>>>0>=Cg>>>0,ta=Sr>>>0>=Cg>>>0,tE=Bg&ta,tE){uA=Xs+12|0,e[uA>>2]=zt,e[L$>>2]=zt,z0=i0+8|0,iE=A6+z0|0,e[iE>>2]=Xs,I1=i0+12|0,to=A6+I1|0,e[to>>2]=Sr,h1=i0+24|0,M$=A6+h1|0,e[M$>>2]=0;break}else Q2()}while(!1);return a1=Hs|8,rE=A6+a1|0,Ye=rE,Ye|0}else wA=553496;for(;;){if(T$=e[wA>>2]|0,nE=T$>>>0>U9>>>0,!nE&&(AE=wA+4|0,mg=e[AE>>2]|0,io=T$+mg|0,sE=io>>>0>U9>>>0,sE)){c=T$,f=mg,d=io;break}oE=wA+8|0,$E=e[oE>>2]|0,wA=$E}if(s0=f+-47|0,a0=f+-39|0,aE=c+a0|0,Qg=aE,lE=Qg&7,z7=(lE|0)==0,Q4=0-Qg|0,Zt=Q4&7,cE=z7?0:Zt,$1=s0+cE|0,wg=c+$1|0,G$=U9+16|0,gE=wg>>>0>>0,wr=gE?U9:wg,IA=wr+8|0,hE=pe+-40|0,fE=A6+8|0,kg=fE,N$=kg&7,uE=(N$|0)==0,Sg=0-kg|0,Dg=Sg&7,U$=uE?0:Dg,O$=A6+U$|0,bg=hE-U$|0,e[138268]=O$,e[138265]=bg,dA=bg|1,Z=U$+4|0,P$=A6+Z|0,e[P$>>2]=dA,A1=pe+-36|0,_g=A6+A1|0,e[_g>>2]=40,IE=e[138384]|0,e[138269]=IE,fn=wr+4|0,e[fn>>2]=27,e[IA>>2]=e[138374]|0,e[IA+4>>2]=e[138375]|0,e[IA+8>>2]=e[138376]|0,e[IA+12>>2]=e[138377]|0,e[138374]=A6,e[138375]=pe,e[138377]=0,e[138376]=IA,Rg=wr+28|0,e[Rg>>2]=7,ro=wr+32|0,EE=ro>>>0>>0,EE)for(yi=Rg;xg=yi+4|0,e[xg>>2]=7,CE=yi+8|0,BE=CE>>>0>>0,BE;)yi=xg;if(mE=(wr|0)==(U9|0),!mE){if(pE=wr,QE=U9,wi=pE-QE|0,wE=e[fn>>2]|0,kE=wE&-2,e[fn>>2]=kE,vE=wi|1,Fg=U9+4|0,e[Fg>>2]=vE,e[wr>>2]=wi,gi=wi>>>3,no=wi>>>0<256,no){H$=gi<<1,Lg=553088+(H$<<2)|0,Mg=e[138262]|0,Tg=1<>2]|0,_E=e[138266]|0,RE=Ug>>>0<_E>>>0,RE?Q2():(_=Ng,Y$=Ug)),e[_>>2]=U9,Og=Y$+12|0,e[Og>>2]=U9,xE=U9+8|0,e[xE>>2]=Y$,Ao=U9+12|0,e[Ao>>2]=Lg;break}if(so=wi>>>8,FE=(so|0)==0,FE?tr=0:(q$=wi>>>0>16777215,q$?tr=31:(LE=so+1048320|0,ME=LE>>>16,Pg=ME&8,CA=so<>>16,a2=GE&4,i2=a2|Pg,o2=CA<>>16,f2=n2&2,e2=i2|f2,y2=14-e2|0,S2=o2<>>15,M2=y2+w2|0,_2=M2<<1,G2=M2+7|0,u2=wi>>>G2,K2=u2&1,N2=K2|_2,tr=N2)),q2=553352+(tr<<2)|0,T2=U9+28|0,e[T2>>2]=tr,O2=U9+20|0,e[O2>>2]=0,e[G$>>2]=0,V2=e[138263]|0,P2=1<>2]=U9,X2=U9+24|0,e[X2>>2]=q2,v5=U9+12|0,e[v5>>2]=U9,z2=U9+8|0,e[z2>>2]=U9;break}f5=e[q2>>2]|0,w5=f5+4|0,O5=e[w5>>2]|0,k2=O5&-8,E5=(k2|0)==(wi|0);t:do if(E5)co=f5;else{for(r5=(tr|0)==31,x2=tr>>>1,R2=25-x2|0,B2=r5?0:R2,C5=wi<>>31,l5=(ea+16|0)+(s5<<2)|0,S5=e[l5>>2]|0,B5=(S5|0)==0,B5){$=l5,Yg=ea;break}if(x5=Z$<<1,u5=S5+4|0,D5=e[u5>>2]|0,H2=D5&-8,I5=(H2|0)==(wi|0),I5){co=S5;break t}else Z$=x5,ea=S5}if(M1=e[138266]|0,k5=$>>>0>>0,k5)Q2();else{e[$>>2]=U9,c5=U9+24|0,e[c5>>2]=Yg,o5=U9+12|0,e[o5>>2]=U9,c2=U9+8|0,e[c2>>2]=U9;break e}}while(!1);if(m5=co+8|0,e5=e[m5>>2]|0,n5=e[138266]|0,g5=e5>>>0>=n5>>>0,JE=co>>>0>=n5>>>0,Y2=g5&JE,Y2){h5=e5+12|0,e[h5>>2]=U9,e[m5>>2]=U9,t5=U9+8|0,e[t5>>2]=e5,b5=U9+12|0,e[b5>>2]=co,W2=U9+24|0,e[W2>>2]=0;break}else Q2()}}while(!1);if(F2=e[138265]|0,p5=F2>>>0>k4>>>0,p5)return H5=F2-k4|0,e[138265]=H5,X5=e[138268]|0,d5=X5+k4|0,e[138268]=d5,f3=H5|1,K=k4+4|0,g3=X5+K|0,e[g3>>2]=f3,J5=k4|3,e3=X5+4|0,e[e3>>2]=J5,A3=X5+8|0,Ye=A3,Ye|0}return F5=Gp()|0,e[F5>>2]=12,Ye=0,Ye|0}function I2(t){t=t|0;var n=0,s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,V5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,m6=0,z3=0,$6=0,p6=0,_6=0,Y6=0,B6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,s3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,A4=0,p9=0,S4=0,D4=0,R4=0,M4=0,Z4=0,C4=0,T4=0,N9=0,G4=0,s4=0,x4=0,g4=0,ue=0,P9=0,d9=0,Ie=0,Le=0,ze=0,N4=0,Me=0,U4=0,W4=0,we=0,Ze=0,z9=0,Ae=0,h4=0,b6=0,O4=0,R9=0,o4=0,b4=0,se=0,Z9=0,oe=0,$e=0,B4=0,j4=0,F4=0,ae=0,E9=0,a6=0,Te=0,$4=0,de=0,m4=0,a4=0,U6=0,ke=0,ve=0,We=0,l4=0,w4=0,g8=0,H3=0,Q9=0,C9=0,L4=0,X4=0,$7=0,Se=0;if(Se=B,X=(t|0)==0,!X){U=t+-8|0,K2=e[138266]|0,B6=U>>>0>>0,B6&&Q2(),y6=t+-4|0,o9=e[y6>>2]|0,V9=o9&3,R4=(V9|0)==1,R4&&Q2(),P9=o9&-8,p=P9+-8|0,z9=t+p|0,o0=o9&1,j=(o0|0)==0;do if(j){if(k0=e[U>>2]|0,S0=(V9|0)==0,S0)return;if(Q=-8-k0|0,v0=t+Q|0,z0=k0+P9|0,y1=v0>>>0>>0,y1&&Q2(),P1=e[138267]|0,A2=(v0|0)==(P1|0),A2){if(z=P9+-4|0,n0=t+z|0,i0=e[n0>>2]|0,r0=i0&3,K=(r0|0)==3,!K){H3=v0,Q9=z0;break}e[138264]=z0,c0=i0&-2,e[n0>>2]=c0,A0=z0|1,b=Q+4|0,l0=t+b|0,e[l0>>2]=A0,e[z9>>2]=z0;return}if(n2=k0>>>3,N2=k0>>>0<256,N2){if(Y=Q+8|0,v5=t+Y|0,B2=e[v5>>2]|0,t0=Q+12|0,B5=t+t0|0,Y2=e[B5>>2]|0,f3=n2<<1,q3=553088+(f3<<2)|0,C3=(B2|0)==(q3|0),C3||(f6=B2>>>0>>0,f6&&Q2(),o6=B2+12|0,v3=e[o6>>2]|0,P6=(v3|0)==(v0|0),P6||Q2()),J6=(Y2|0)==(B2|0),J6){G6=1<>>0>>0,D6&&Q2(),V6=Y2+8|0,F6=e[V6>>2]|0,F3=(F6|0)==(v0|0),F3?c=V6:Q2()),L6=B2+12|0,e[L6>>2]=Y2,e[c>>2]=B2,H3=v0,Q9=z0;break}x=Q+24|0,X6=t+x|0,A9=e[X6>>2]|0,_=Q+12|0,W6=t+_|0,g9=e[W6>>2]|0,h9=(g9|0)==(v0|0);do if(h9){if(M=Q+20|0,n4=t+M|0,c4=e[n4>>2]|0,G9=(c4|0)==0,G9)if(L=Q+16|0,v9=t+L|0,I9=e[v9>>2]|0,H6=(I9|0)==0,H6){E9=0;break}else F4=I9,de=v9;else F4=c4,de=n4;for(;;){if(t9=F4+20|0,E4=e[t9>>2]|0,v4=(E4|0)==0,!v4){F4=E4,de=t9;continue}if(A4=F4+16|0,p9=e[A4>>2]|0,S4=(p9|0)==0,S4){ae=F4,m4=de;break}else F4=p9,de=A4}if(D4=m4>>>0>>0,D4)Q2();else{e[m4>>2]=0,E9=ae;break}}else if(P=Q+8|0,f9=t+P|0,s9=e[f9>>2]|0,M9=s9>>>0>>0,M9&&Q2(),E6=s9+12|0,M6=e[E6>>2]|0,e9=(M6|0)==(v0|0),e9||Q2(),T9=g9+8|0,u9=e[T9>>2]|0,d4=(u9|0)==(v0|0),d4){e[E6>>2]=g9,e[T9>>2]=s9,E9=g9;break}else Q2();while(!1);if(M4=(A9|0)==0,M4)H3=v0,Q9=z0;else{if(T=Q+28|0,Z4=t+T|0,C4=e[Z4>>2]|0,T4=553352+(C4<<2)|0,N9=e[T4>>2]|0,G4=(v0|0)==(N9|0),G4){if(e[T4>>2]=E9,l4=(E9|0)==0,l4){s4=1<>>0>>0,Ie&&Q2(),Le=A9+16|0,ze=e[Le>>2]|0,N4=(ze|0)==(v0|0),N4?e[Le>>2]=E9:(Me=A9+20|0,e[Me>>2]=E9),U4=(E9|0)==0,U4){H3=v0,Q9=z0;break}W4=e[138266]|0,we=E9>>>0>>0,we&&Q2(),Ze=E9+24|0,e[Ze>>2]=A9,G=Q+16|0,Ae=t+G|0,h4=e[Ae>>2]|0,b6=(h4|0)==0;do if(!b6)if(O4=h4>>>0>>0,O4)Q2();else{R9=E9+16|0,e[R9>>2]=h4,o4=h4+24|0,e[o4>>2]=E9;break}while(!1);if(N=Q+20|0,b4=t+N|0,se=e[b4>>2]|0,Z9=(se|0)==0,Z9)H3=v0,Q9=z0;else if(oe=e[138266]|0,Z=se>>>0>>0,Z)Q2();else{V=E9+20|0,e[V>>2]=se,s0=se+24|0,e[s0>>2]=E9,H3=v0,Q9=z0;break}}}else H3=U,Q9=P9;while(!1);if(a0=H3>>>0>>0,a0||Q2(),D=P9+-4|0,g0=t+D|0,f0=e[g0>>2]|0,Q0=f0&1,d0=(Q0|0)==0,d0&&Q2(),y0=f0&2,h0=(y0|0)==0,h0){if(E0=e[138268]|0,C0=(z9|0)==(E0|0),C0){if(u0=e[138265]|0,J0=u0+Q9|0,e[138265]=J0,e[138268]=H3,D0=J0|1,m0=H3+4|0,e[m0>>2]=D0,x0=e[138267]|0,F0=(H3|0)==(x0|0),!F0)return;e[138267]=0,e[138264]=0;return}if(M0=e[138267]|0,G0=(z9|0)==(M0|0),G0){p0=e[138264]|0,H0=p0+Q9|0,e[138264]=H0,e[138267]=H3,R0=H0|1,L0=H3+4|0,e[L0>>2]=R0,Y0=H3+H0|0,e[Y0>>2]=H0;return}q0=f0&-8,N0=q0+Q9|0,V0=f0>>>3,T0=f0>>>0<256;do if(T0){if(U0=t+P9|0,r1=e[U0>>2]|0,y=P9|4,P0=t+y|0,e1=e[P0>>2]|0,i1=V0<<1,c1=553088+(i1<<2)|0,a1=(r1|0)==(c1|0),a1||(f1=e[138266]|0,g1=r1>>>0>>0,g1&&Q2(),l1=r1+12|0,A1=e[l1>>2]|0,$1=(A1|0)==(z9|0),$1||Q2()),n1=(e1|0)==(r1|0),n1){s1=1<>>0>>0,m1&&Q2(),p1=e1+8|0,Q1=e[p1>>2]|0,D1=(Q1|0)==(z9|0),D1?$=p1:Q2()),_1=r1+12|0,e[_1>>2]=e1,e[$>>2]=r1}else{J=P9+16|0,k1=t+J|0,x1=e[k1>>2]|0,W=P9|4,L1=t+W|0,N1=e[L1>>2]|0,w1=(N1|0)==(z9|0);do if(w1){if(H=P9+12|0,W1=t+H|0,O1=e[W1>>2]|0,l2=(O1|0)==0,l2)if(e0=P9+8|0,z1=t+e0|0,h2=e[z1>>2]|0,d2=(h2|0)==0,d2){$4=0;break}else a6=h2,a4=z1;else a6=O1,a4=W1;for(;;){if(s2=a6+20|0,V1=e[s2>>2]|0,g2=(V1|0)==0,!g2){a6=V1,a4=s2;continue}if($2=a6+16|0,t2=e[$2>>2]|0,a2=(t2|0)==0,a2){Te=a6,U6=a4;break}else a6=t2,a4=$2}if(i2=e[138266]|0,o2=U6>>>0>>0,o2)Q2();else{e[U6>>2]=0,$4=Te;break}}else if(U1=t+P9|0,Z1=e[U1>>2]|0,G1=e[138266]|0,v1=Z1>>>0>>0,v1&&Q2(),K1=Z1+12|0,H1=e[K1>>2]|0,q1=(H1|0)==(z9|0),q1||Q2(),Y1=N1+8|0,j1=e[Y1>>2]|0,r2=(j1|0)==(z9|0),r2){e[K1>>2]=N1,e[Y1>>2]=Z1,$4=N1;break}else Q2();while(!1);if(X1=(x1|0)==0,!X1){if(v=P9+20|0,f2=t+v|0,e2=e[f2>>2]|0,y2=553352+(e2<<2)|0,S2=e[y2>>2]|0,w2=(z9|0)==(S2|0),w2){if(e[y2>>2]=$4,w4=($4|0)==0,w4){C2=1<>>0>>0,q2&&Q2(),T2=x1+16|0,O2=e[T2>>2]|0,V2=(O2|0)==(z9|0),V2?e[T2>>2]=$4:(A5=x1+20|0,e[A5>>2]=$4),P2=($4|0)==0,P2)break;T1=e[138266]|0,j2=$4>>>0>>0,j2&&Q2(),R5=$4+24|0,e[R5>>2]=x1,S=P9+8|0,X2=t+S|0,z2=e[X2>>2]|0,f5=(z2|0)==0;do if(!f5)if(w5=z2>>>0>>0,w5)Q2();else{O5=$4+16|0,e[O5>>2]=z2,a5=z2+24|0,e[a5>>2]=$4;break}while(!1);if(w=P9+12|0,k2=t+w|0,E5=e[k2>>2]|0,r5=(E5|0)==0,!r5)if(x2=e[138266]|0,R2=E5>>>0>>0,R2)Q2();else{C5=$4+20|0,e[C5>>2]=E5,x5=E5+24|0,e[x5>>2]=$4;break}}}while(!1);if(u5=N0|1,S5=H3+4|0,e[S5>>2]=u5,G5=H3+N0|0,e[G5>>2]=N0,D5=e[138267]|0,H2=(H3|0)==(D5|0),H2){e[138264]=N0;return}else C9=N0}else I5=f0&-2,e[g0>>2]=I5,s5=Q9|1,l5=H3+4|0,e[l5>>2]=s5,M1=H3+Q9|0,e[M1>>2]=Q9,C9=Q9;if(k5=C9>>>3,c5=C9>>>0<256,c5){o5=k5<<1,Z2=553088+(o5<<2)|0,c2=e[138262]|0,m5=1<>2]|0,b5=e[138266]|0,W2=t5>>>0>>0,W2?Q2():(f=h5,$e=t5)),e[f>>2]=H3,$5=$e+12|0,e[$5>>2]=H3,F2=H3+8|0,e[F2>>2]=$e,p5=H3+12|0,e[p5>>2]=Z2;return}H5=C9>>>8,X5=(H5|0)==0,X5?B4=0:(d5=C9>>>0>16777215,d5?B4=31:(g3=H5+1048320|0,J5=g3>>>16,e3=J5&8,A3=H5<>>16,K5=F5&4,y3=K5|e3,h3=A3<>>16,z5=M3&2,Q3=y3|z5,W5=14-Q3|0,j3=h3<>>15,T3=W5+_3|0,$3=T3<<1,a3=T3+7|0,l3=C9>>>a3,q5=l3&1,N5=q5|$3,B4=N5)),P5=553352+(B4<<2)|0,y5=H3+28|0,e[y5>>2]=B4,G3=H3+16|0,L5=H3+20|0,e[L5>>2]=0,e[G3>>2]=0,t6=e[138263]|0,t3=1<>2]=H3,w3=H3+24|0,e[w3>>2]=P5,p3=H3+12|0,e[p3>>2]=H3,X3=H3+8|0,e[X3>>2]=H3;else{V3=e[P5>>2]|0,N3=V3+4|0,V5=e[N3>>2]|0,k3=V5&-8,c3=(k3|0)==(C9|0);t:do if(c3)ke=V3;else{for(U3=(B4|0)==31,u3=B4>>>1,w6=25-u3|0,k6=U3?0:w6,v6=C9<>>31,W3=(ve+16|0)+(Z3<<2)|0,$6=e[W3>>2]|0,u6=($6|0)==0,u6){n=W3,We=ve;break}if(m6=j4<<1,z3=$6+4|0,p6=e[z3>>2]|0,_6=p6&-8,Y6=(_6|0)==(C9|0),Y6){ke=$6;break t}else j4=m6,ve=$6}if(O3=e[138266]|0,S3=n>>>0>>0,S3)Q2();else{e[n>>2]=H3,P3=H3+24|0,e[P3>>2]=We,Y3=H3+12|0,e[Y3>>2]=H3,S6=H3+8|0,e[S6>>2]=H3;break e}}while(!1);if(i6=ke+8|0,i3=e[i6>>2]|0,s3=e[138266]|0,r6=i3>>>0>=s3>>>0,g8=ke>>>0>=s3>>>0,I6=r6&g8,I6){D3=i3+12|0,e[D3>>2]=H3,e[i6>>2]=H3,T6=H3+8|0,e[T6>>2]=i3,e6=H3+12|0,e[e6>>2]=ke,Q6=H3+24|0,e[Q6>>2]=0;break}else Q2()}while(!1);if(R6=e[138270]|0,K6=R6+-1|0,e[138270]=K6,d6=(K6|0)==0,d6)X4=553504;else return;for(;L4=e[X4>>2]|0,x3=(L4|0)==0,Z6=L4+8|0,!x3;)X4=Z6;e[138270]=-1}}function i4(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0;return b=B,$=(t|0)==0,$?D=0:(c=i5(n,t)|0,I=n|t,C=I>>>0>65535,C?(p=(c>>>0)/(t>>>0)&-1,m=(p|0)==(n|0),s=m?c:-1,D=s):D=c),v=k9(D)|0,S=(v|0)==0,S||(w=v+-4|0,y=e[w>>2]|0,f=y&3,d=(f|0)==0,d)||ne(v|0,0,D|0)|0,v|0}function Gi(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0;return Y=B,s=(t|0)==0,s?($=k9(n)|0,P=$,P|0):(y=n>>>0>4294967231,y?(x=Gp()|0,e[x>>2]=12,P=0,P|0):(_=n>>>0<11,L=n+11|0,M=L&-8,T=_?16:M,G=t+-8|0,N=jS(G,T)|0,c=(N|0)==0,c?(d=k9(n)|0,I=(d|0)==0,I?(P=0,P|0):(C=t+-4|0,p=e[C>>2]|0,m=p&-8,v=p&3,S=(v|0)==0,w=S?8:4,D=m-w|0,Q=D>>>0>>0,b=Q?D:n,r4(d|0,t|0,b|0)|0,I2(t),P=d,P|0)):(f=N+8|0,P=f,P|0)))}function jS(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0;if(K5=B,G=t+4|0,N=e[G>>2]|0,w1=N&-8,r2=t+w1|0,$2=e[138266]|0,w2=N&3,f3=t>>>0>=$2>>>0,g3=(w2|0)!=1,J5=g3&f3,V2=t>>>0>>0,e3=J5&V2,e3||Q2(),b=w1|4,O5=t+b|0,S5=e[O5>>2]|0,o5=S5&1,P=(o5|0)==0,P&&Q2(),Z=(w2|0)==0,Z)return a0=n>>>0<256,a0?(d5=0,d5|0):(J0=n+4|0,L0=w1>>>0>>0,!L0&&(i1=w1-n|0,I1=e[138382]|0,k1=I1<<1,L1=i1>>>0>k1>>>0,!L1)?(d5=t,d5|0):(d5=0,d5|0));if(N1=w1>>>0>>0,!N1)return U1=w1-n|0,Z1=U1>>>0>15,Z1?(G1=t+n|0,v1=N&1,K1=v1|n,P1=K1|2,e[G>>2]=P1,Q=n+4|0,H1=t+Q|0,q1=U1|3,e[H1>>2]=q1,Y1=e[O5>>2]|0,j1=Y1|1,e[O5>>2]=j1,uQ(G1,U1),d5=t,d5|0):(d5=t,d5|0);if(W1=e[138268]|0,O1=(r2|0)==(W1|0),O1)return l2=e[138265]|0,z1=l2+w1|0,h2=z1>>>0>n>>>0,h2?(A2=z1-n|0,d2=t+n|0,s2=N&1,V1=s2|n,g2=V1|2,e[G>>2]=g2,D=n+4|0,t2=t+D|0,a2=A2|1,e[t2>>2]=a2,e[138268]=d2,e[138265]=A2,d5=t,d5|0):(d5=0,d5|0);if(i2=e[138267]|0,o2=(r2|0)==(i2|0),o2)return X1=e[138264]|0,n2=X1+w1|0,f2=n2>>>0>>0,f2?(d5=0,d5|0):(e2=n2-n|0,y2=e2>>>0>15,y2?(S2=t+n|0,C2=t+n2|0,M2=N&1,_2=M2|n,G2=_2|2,e[G>>2]=G2,S=n+4|0,u2=t+S|0,K2=e2|1,e[u2>>2]=K2,e[C2>>2]=e2,y=n2+4|0,N2=t+y|0,q2=e[N2>>2]|0,T2=q2&-2,e[N2>>2]=T2,A3=S2,E3=e2):(O2=N&1,A5=O2|n2,P2=A5|2,e[G>>2]=P2,v=n2+4|0,T1=t+v|0,j2=e[T1>>2]|0,R5=j2|1,e[T1>>2]=R5,A3=0,E3=0),e[138264]=E3,e[138267]=A3,d5=t,d5|0);if(X2=S5&2,v5=(X2|0)==0,!v5||(z2=S5&-8,f5=z2+w1|0,w5=f5>>>0>>0,w5))return d5=0,d5|0;a5=f5-n|0,k2=S5>>>3,E5=S5>>>0<256;do if(E5){if(p=w1+8|0,r5=t+p|0,x2=e[r5>>2]|0,m=w1+12|0,R2=t+m|0,B2=e[R2>>2]|0,C5=k2<<1,x5=553088+(C5<<2)|0,u5=(x2|0)==(x5|0),u5||(G5=x2>>>0<$2>>>0,G5&&Q2(),D5=x2+12|0,H2=e[D5>>2]|0,I5=(H2|0)==(r2|0),I5||Q2()),s5=(B2|0)==(x2|0),s5){l5=1<>>0<$2>>>0,Z2&&Q2(),c2=B2+8|0,m5=e[c2>>2]|0,e5=(m5|0)==(r2|0),e5?$=c2:Q2()),n5=x2+12|0,e[n5>>2]=B2,e[$>>2]=x2}else{c=w1+24|0,g5=t+c|0,Y2=e[g5>>2]|0,w=w1+12|0,h5=t+w|0,t5=e[h5>>2]|0,b5=(t5|0)==(r2|0);do if(b5){if(_=w1+20|0,o0=t+_|0,V=e[o0>>2]|0,s0=(V|0)==0,s0)if(x=w1+16|0,n0=t+x|0,i0=e[n0>>2]|0,r0=(i0|0)==0,r0){F2=0;break}else W2=i0,p5=n0;else W2=V,p5=o0;for(;;){if(K=W2+20|0,c0=e[K>>2]|0,A0=(c0|0)==0,!A0){W2=c0,p5=K;continue}if(l0=W2+16|0,j=e[l0>>2]|0,g0=(j|0)==0,g0){$5=W2,H5=p5;break}else W2=j,p5=l0}if(f0=H5>>>0<$2>>>0,f0)Q2();else{e[H5>>2]=0,F2=$5;break}}else if(C=w1+8|0,z=t+C|0,Y=e[z>>2]|0,t0=Y>>>0<$2>>>0,t0&&Q2(),J=Y+12|0,W=e[J>>2]|0,e0=(W|0)==(r2|0),e0||Q2(),H=t5+8|0,X=e[H>>2]|0,U=(X|0)==(r2|0),U){e[J>>2]=t5,e[H>>2]=Y,F2=t5;break}else Q2();while(!1);if(Q0=(Y2|0)==0,!Q0){if(f=w1+28|0,d0=t+f|0,y0=e[d0>>2]|0,h0=553352+(y0<<2)|0,E0=e[h0>>2]|0,C0=(r2|0)==(E0|0),C0){if(e[h0>>2]=F2,X5=(F2|0)==0,X5){u0=1<>>0>>0,F0&&Q2(),M0=Y2+16|0,G0=e[M0>>2]|0,p0=(G0|0)==(r2|0),p0?e[M0>>2]=F2:(H0=Y2+20|0,e[H0>>2]=F2),R0=(F2|0)==0,R0)break;S0=e[138266]|0,Y0=F2>>>0>>0,Y0&&Q2(),q0=F2+24|0,e[q0>>2]=Y2,d=w1+16|0,N0=t+d|0,V0=e[N0>>2]|0,T0=(V0|0)==0;do if(!T0)if(U0=V0>>>0>>0,U0)Q2();else{r1=F2+16|0,e[r1>>2]=V0,P0=V0+24|0,e[P0>>2]=F2;break}while(!1);if(I=w1+20|0,e1=t+I|0,v0=e[e1>>2]|0,c1=(v0|0)==0,!c1)if(a1=e[138266]|0,f1=v0>>>0>>0,f1)Q2();else{g1=F2+20|0,e[g1>>2]=v0,l1=v0+24|0,e[l1>>2]=F2;break}}}while(!1);return A1=a5>>>0<16,A1?($1=N&1,n1=f5|$1,s1=n1|2,e[G>>2]=s1,T=f5|4,z0=t+T|0,h1=e[z0>>2]|0,E1=h1|1,e[z0>>2]=E1,d5=t,d5|0):(u1=t+n|0,d1=N&1,m1=d1|n,p1=m1|2,e[G>>2]=p1,L=n+4|0,Q1=t+L|0,D1=a5|3,e[Q1>>2]=D1,M=f5|4,_1=t+M|0,y1=e[_1>>2]|0,x1=y1|1,e[_1>>2]=x1,uQ(u1,a5),d5=t,d5|0)}function uQ(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0,L0=0,Y0=0,q0=0,N0=0,V0=0,T0=0,U0=0,r1=0,P0=0,e1=0,v0=0,i1=0,c1=0,a1=0,f1=0,g1=0,l1=0,A1=0,$1=0,n1=0,s1=0,z0=0,I1=0,h1=0,E1=0,u1=0,d1=0,m1=0,p1=0,Q1=0,D1=0,_1=0,y1=0,k1=0,x1=0,L1=0,N1=0,w1=0,U1=0,Z1=0,G1=0,v1=0,K1=0,P1=0,H1=0,q1=0,Y1=0,j1=0,r2=0,W1=0,O1=0,l2=0,z1=0,h2=0,A2=0,d2=0,s2=0,V1=0,g2=0,$2=0,t2=0,a2=0,i2=0,o2=0,X1=0,n2=0,f2=0,e2=0,y2=0,S2=0,w2=0,C2=0,M2=0,_2=0,G2=0,u2=0,K2=0,N2=0,q2=0,T2=0,O2=0,V2=0,A5=0,P2=0,T1=0,j2=0,R5=0,X2=0,v5=0,z2=0,f5=0,w5=0,O5=0,a5=0,k2=0,E5=0,r5=0,x2=0,R2=0,B2=0,C5=0,x5=0,u5=0,S5=0,G5=0,D5=0,H2=0,I5=0,s5=0,l5=0,B5=0,M1=0,k5=0,c5=0,o5=0,Z2=0,c2=0,m5=0,e5=0,n5=0,g5=0,Y2=0,h5=0,t5=0,b5=0,W2=0,$5=0,F2=0,p5=0,H5=0,X5=0,d5=0,f3=0,g3=0,J5=0,e3=0,A3=0,E3=0,F5=0,K5=0,y3=0,h3=0,B3=0,q3=0,M3=0,z5=0,Q3=0,W5=0,j3=0,_3=0,T3=0,$3=0,a3=0,l3=0,C3=0,q5=0,N5=0,P5=0,y5=0,G3=0,L5=0,t6=0,t3=0,o3=0,R3=0,f6=0,m3=0,w3=0,p3=0,X3=0,V3=0,N3=0,V5=0,k3=0,c3=0,U3=0,o6=0,u3=0,w6=0,k6=0,v6=0,m6=0,z3=0,$6=0,p6=0,_6=0,Y6=0,B6=0,v3=0,Z3=0,W3=0,u6=0,O3=0,S3=0,P3=0,Y3=0,S6=0,i6=0,i3=0,P6=0,s3=0,r6=0,I6=0,D3=0,T6=0,e6=0,Q6=0,R6=0,K6=0,d6=0,J6=0,x3=0,Z6=0,G6=0,j6=0,r9=0,x6=0,N6=0,D6=0,V6=0,y6=0,F6=0,F3=0,L6=0,X6=0,A9=0,W6=0,g9=0,h9=0,f9=0,s9=0,o9=0,M9=0,E6=0,M6=0,e9=0,T9=0,u9=0,d4=0,n4=0,c4=0,G9=0,V9=0,v9=0,I9=0,H6=0,t9=0,E4=0,v4=0,A4=0,p9=0,S4=0,D4=0,R4=0,M4=0,Z4=0,C4=0,T4=0,N9=0,G4=0,s4=0,x4=0,g4=0,ue=0,P9=0,d9=0,Ie=0,Le=0,ze=0,N4=0,Me=0,U4=0,W4=0,we=0,Ze=0,z9=0,Ae=0,h4=0,b6=0,O4=0,R9=0,o4=0,b4=0,se=0,Z9=0,oe=0,$e=0,B4=0,j4=0,F4=0,ae=0,E9=0,a6=0,Te=0,$4=0,de=0,m4=0;m4=B,V=t+n|0,s0=t+4|0,O2=e[s0>>2]|0,u6=O2&1,J6=(u6|0)==0;do if(J6){if(F6=e[t>>2]|0,M9=O2&3,v9=(M9|0)==0,v9)return;if(M4=0-F6|0,d9=t+M4|0,n0=F6+n|0,Q0=e[138266]|0,x0=d9>>>0>>0,x0&&Q2(),N0=e[138267]|0,f1=(d9|0)==(N0|0),f1){if(w=n+4|0,z9=t+w|0,i0=e[z9>>2]|0,r0=i0&3,K=(r0|0)==3,!K){s=d9,$=n0;break}e[138264]=n0,c0=i0&-2,e[z9>>2]=c0,A0=n0|1,_=4-F6|0,l0=t+_|0,e[l0>>2]=A0,e[V>>2]=n0;return}if(u1=F6>>>3,N1=F6>>>0<256,N1){if(J=8-F6|0,j1=t+J|0,g2=e[j1>>2]|0,W=12-F6|0,S2=t+W|0,V2=e[S2>>2]|0,O5=u1<<1,S5=553088+(O5<<2)|0,o5=(g2|0)==(S5|0),o5||(W2=g2>>>0>>0,W2&&Q2(),A3=g2+12|0,W5=e[A3>>2]|0,y5=(W5|0)==(d9|0),y5||Q2()),X3=(V2|0)==(g2|0),X3){v6=1<>>0>>0,T6&&Q2(),e6=V2+8|0,Q6=e[e6>>2]|0,R6=(Q6|0)==(d9|0),R6?C=e6:Q2()),K6=g2+12|0,e[K6>>2]=V2,e[C>>2]=g2,s=d9,$=n0;break}L=24-F6|0,d6=t+L|0,x3=e[d6>>2]|0,M=12-F6|0,Z6=t+M|0,G6=e[Z6>>2]|0,j6=(G6|0)==(d9|0);do if(j6){if(T=16-F6|0,G=T+4|0,A9=t+G|0,W6=e[A9>>2]|0,g9=(W6|0)==0,g9)if(h9=t+T|0,f9=e[h9>>2]|0,s9=(f9|0)==0,s9){o4=0;break}else O4=f9,oe=h9;else O4=W6,oe=A9;for(;;){if(o9=O4+20|0,E6=e[o9>>2]|0,M6=(E6|0)==0,!M6){O4=E6,oe=o9;continue}if(e9=O4+16|0,T9=e[e9>>2]|0,u9=(T9|0)==0,u9){R9=O4,$e=oe;break}else O4=T9,oe=e9}if(d4=$e>>>0>>0,d4)Q2();else{e[$e>>2]=0,o4=R9;break}}else if(t0=8-F6|0,r9=t+t0|0,x6=e[r9>>2]|0,N6=x6>>>0>>0,N6&&Q2(),D6=x6+12|0,V6=e[D6>>2]|0,y6=(V6|0)==(d9|0),y6||Q2(),F3=G6+8|0,L6=e[F3>>2]|0,X6=(L6|0)==(d9|0),X6){e[D6>>2]=G6,e[F3>>2]=x6,o4=G6;break}else Q2();while(!1);if(n4=(x3|0)==0,n4)s=d9,$=n0;else{if(P=28-F6|0,c4=t+P|0,G9=e[c4>>2]|0,V9=553352+(G9<<2)|0,I9=e[V9>>2]|0,H6=(d9|0)==(I9|0),H6){if(e[V9>>2]=o4,a6=(o4|0)==0,a6){t9=1<>>0>>0,S4&&Q2(),D4=x3+16|0,R4=e[D4>>2]|0,Z4=(R4|0)==(d9|0),Z4?e[D4>>2]=o4:(C4=x3+20|0,e[C4>>2]=o4),T4=(o4|0)==0,T4){s=d9,$=n0;break}N9=e[138266]|0,G4=o4>>>0>>0,G4&&Q2(),s4=o4+24|0,e[s4>>2]=x3,z=16-F6|0,x4=t+z|0,g4=e[x4>>2]|0,ue=(g4|0)==0;do if(!ue)if(P9=g4>>>0>>0,P9)Q2();else{Ie=o4+16|0,e[Ie>>2]=g4,Le=g4+24|0,e[Le>>2]=o4;break}while(!1);if(Y=z+4|0,ze=t+Y|0,N4=e[ze>>2]|0,Me=(N4|0)==0,Me)s=d9,$=n0;else if(U4=e[138266]|0,W4=N4>>>0>>0,W4)Q2();else{we=o4+20|0,e[we>>2]=N4,Ze=N4+24|0,e[Ze>>2]=o4,s=d9,$=n0;break}}}else s=t,$=n;while(!1);if(j=e[138266]|0,a0=V>>>0>>0,a0&&Q2(),y=n+4|0,g0=t+y|0,f0=e[g0>>2]|0,d0=f0&2,y0=(d0|0)==0,y0){if(h0=e[138268]|0,E0=(V|0)==(h0|0),E0){if(C0=e[138265]|0,u0=C0+$|0,e[138265]=u0,e[138268]=s,k0=u0|1,J0=s+4|0,e[J0>>2]=k0,D0=e[138267]|0,m0=(s|0)==(D0|0),!m0)return;e[138267]=0,e[138264]=0;return}if(F0=e[138267]|0,M0=(V|0)==(F0|0),M0){G0=e[138264]|0,p0=G0+$|0,e[138264]=p0,e[138267]=s,H0=p0|1,R0=s+4|0,e[R0>>2]=H0,S0=s+p0|0,e[S0>>2]=p0;return}L0=f0&-8,Y0=L0+$|0,q0=f0>>>3,V0=f0>>>0<256;do if(V0){if(b=n+8|0,T0=t+b|0,U0=e[T0>>2]|0,x=n+12|0,r1=t+x|0,P0=e[r1>>2]|0,e1=q0<<1,v0=553088+(e1<<2)|0,i1=(U0|0)==(v0|0),i1||(c1=U0>>>0>>0,c1&&Q2(),a1=U0+12|0,g1=e[a1>>2]|0,l1=(g1|0)==(V|0),l1||Q2()),A1=(P0|0)==(U0|0),A1){$1=1<>>0>>0,h1&&Q2(),E1=P0+8|0,d1=e[E1>>2]|0,m1=(d1|0)==(V|0),m1?I=E1:Q2()),p1=U0+12|0,e[p1>>2]=P0,e[I>>2]=U0}else{N=n+24|0,Q1=t+N|0,D1=e[Q1>>2]|0,e0=n+12|0,_1=t+e0|0,y1=e[_1>>2]|0,k1=(y1|0)==(V|0);do if(k1){if(X=n+20|0,H1=t+X|0,q1=e[H1>>2]|0,Y1=(q1|0)==0,Y1)if(H=n+16|0,r2=t+H|0,W1=e[r2>>2]|0,O1=(W1|0)==0,O1){Z9=0;break}else b4=W1,B4=r2;else b4=q1,B4=H1;for(;;){if(l2=b4+20|0,z1=e[l2>>2]|0,h2=(z1|0)==0,!h2){b4=z1,B4=l2;continue}if(A2=b4+16|0,d2=e[A2>>2]|0,s2=(d2|0)==0,s2){se=b4,j4=B4;break}else b4=d2,B4=A2}if(V1=j4>>>0>>0,V1)Q2();else{e[j4>>2]=0,Z9=se;break}}else if(Q=n+8|0,x1=t+Q|0,L1=e[x1>>2]|0,w1=L1>>>0>>0,w1&&Q2(),U1=L1+12|0,Z1=e[U1>>2]|0,G1=(Z1|0)==(V|0),G1||Q2(),v1=y1+8|0,K1=e[v1>>2]|0,P1=(K1|0)==(V|0),P1){e[U1>>2]=y1,e[v1>>2]=L1,Z9=y1;break}else Q2();while(!1);if($2=(D1|0)==0,!$2){if(o0=n+28|0,t2=t+o0|0,a2=e[t2>>2]|0,i2=553352+(a2<<2)|0,o2=e[i2>>2]|0,X1=(V|0)==(o2|0),X1){if(e[i2>>2]=Z9,Te=(Z9|0)==0,Te){n2=1<>>0>>0,C2&&Q2(),M2=D1+16|0,_2=e[M2>>2]|0,G2=(_2|0)==(V|0),G2?e[M2>>2]=Z9:(u2=D1+20|0,e[u2>>2]=Z9),K2=(Z9|0)==0,K2)break;N2=e[138266]|0,q2=Z9>>>0>>0,q2&&Q2(),T2=Z9+24|0,e[T2>>2]=D1,Z=n+16|0,A5=t+Z|0,P2=e[A5>>2]|0,T1=(P2|0)==0;do if(!T1)if(j2=P2>>>0>>0,j2)Q2();else{R5=Z9+16|0,e[R5>>2]=P2,X2=P2+24|0,e[X2>>2]=Z9;break}while(!1);if(D=n+20|0,v5=t+D|0,z2=e[v5>>2]|0,f5=(z2|0)==0,!f5)if(w5=e[138266]|0,a5=z2>>>0>>0,a5)Q2();else{k2=Z9+20|0,e[k2>>2]=z2,E5=z2+24|0,e[E5>>2]=Z9;break}}}while(!1);if(r5=Y0|1,x2=s+4|0,e[x2>>2]=r5,R2=s+Y0|0,e[R2>>2]=Y0,B2=e[138267]|0,C5=(s|0)==(B2|0),C5){e[138264]=Y0;return}else c=Y0}else x5=f0&-2,e[g0>>2]=x5,u5=$|1,G5=s+4|0,e[G5>>2]=u5,D5=s+$|0,e[D5>>2]=$,c=$;if(H2=c>>>3,I5=c>>>0<256,I5){s5=H2<<1,l5=553088+(s5<<2)|0,B5=e[138262]|0,M1=1<>2]|0,e5=e[138266]|0,n5=m5>>>0>>0,n5?Q2():(p=c2,Ae=m5)),e[p>>2]=s,g5=Ae+12|0,e[g5>>2]=s,Y2=s+8|0,e[Y2>>2]=Ae,h5=s+12|0,e[h5>>2]=l5;return}if(t5=c>>>8,b5=(t5|0)==0,b5?h4=0:($5=c>>>0>16777215,$5?h4=31:(F2=t5+1048320|0,p5=F2>>>16,H5=p5&8,X5=t5<>>16,g3=f3&4,J5=g3|H5,e3=X5<>>16,K5=F5&2,y3=J5|K5,h3=14-y3|0,B3=e3<>>15,M3=h3+q3|0,z5=M3<<1,Q3=M3+7|0,j3=c>>>Q3,_3=j3&1,T3=_3|z5,h4=T3)),$3=553352+(h4<<2)|0,a3=s+28|0,e[a3>>2]=h4,l3=s+16|0,C3=s+20|0,e[C3>>2]=0,e[l3>>2]=0,q5=e[138263]|0,N5=1<>2]=s,t6=s+24|0,e[t6>>2]=$3,t3=s+12|0,e[t3>>2]=s,o3=s+8|0,e[o3>>2]=s;return}R3=e[$3>>2]|0,f6=R3+4|0,m3=e[f6>>2]|0,w3=m3&-8,p3=(w3|0)==(c|0);e:do if(p3)F4=R3;else{for(V3=(h4|0)==31,N3=h4>>>1,V5=25-N3|0,k3=V3?0:V5,c3=c<>>31,$6=(ae+16|0)+(z3<<2)|0,u3=e[$6>>2]|0,p6=(u3|0)==0,p6){f=$6,E9=ae;break}if(U3=b6<<1,o6=u3+4|0,w6=e[o6>>2]|0,k6=w6&-8,m6=(k6|0)==(c|0),m6){F4=u3;break e}else b6=U3,ae=u3}_6=e[138266]|0,Y6=f>>>0<_6>>>0,Y6&&Q2(),e[f>>2]=s,B6=s+24|0,e[B6>>2]=E9,v3=s+12|0,e[v3>>2]=s,Z3=s+8|0,e[Z3>>2]=s;return}while(!1);W3=F4+8|0,S3=e[W3>>2]|0,P3=e[138266]|0,Y3=S3>>>0>=P3>>>0,$4=F4>>>0>=P3>>>0,S6=Y3&$4,S6||Q2(),i6=S3+12|0,e[i6>>2]=s,e[W3>>2]=s,i3=s+8|0,e[i3>>2]=S3,P6=s+12|0,e[P6>>2]=F4,s3=s+24|0,e[s3>>2]=0}function XS(){e[6410]=O9}function ne(t,n,s){t=t|0,n=n|0,s=s|0;var $=0,c=0,f=0,d=0;if($=t+s|0,(s|0)>=20){if(n=n&255,d=t&3,c=n|n<<8|n<<16|n<<24,f=$&-4,d)for(d=t+4-d|0;(t|0)<(d|0);)u[t>>0]=n,t=t+1|0;for(;(t|0)<(f|0);)e[t>>2]=c,t=t+4|0}for(;(t|0)<($|0);)u[t>>0]=n,t=t+1|0;return t-s|0}function Ka(t){t=t|0;var n=0;for(n=t;u[n>>0]|0;)n=n+1|0;return n-t|0}function IQ(t,n){t=t|0,n=n|0;var s=0,$=0;$=t+(Ka(t)|0)|0;do u[$+s>>0]=u[n+s>>0],s=s+1|0;while(u[n+(s-1)>>0]|0);return t|0}function dQ(t,n,s){t=t|0,n=n|0,s=s|0;var $=0;return(s|0)<32?($=(1<>>32-s,t<>>0,f=n+$+(c>>>0>>0|0)>>>0,q6=f,c|0|0}function YA(t,n,s){t=t|0,n=n|0,s=s|0;var $=0;return(s|0)<32?($=(1<>>s,t>>>s|(n&$)<<32-s):(q6=0,n>>>s-32|0)}function r4(t,n,s){t=t|0,n=n|0,s=s|0;var $=0;if((s|0)>=4096)return av(t|0,n|0,s|0)|0;if($=t|0,(t&3)==(n&3)){for(;t&3;){if(!(s|0))return $|0;u[t>>0]=u[n>>0]|0,t=t+1|0,n=n+1|0,s=s-1|0}for(;(s|0)>=4;)e[t>>2]=e[n>>2]|0,t=t+4|0,n=n+4|0,s=s-4|0}for(;(s|0)>0;)u[t>>0]=u[n>>0]|0,t=t+1|0,n=n+1|0,s=s-1|0;return $|0}function Ko(t,n,s){t=t|0,n=n|0,s=s|0;var $=0;if((n|0)<(t|0)&(t|0)<(n+s|0)){for($=t,n=n+s|0,t=t+s|0;(s|0)>0;)t=t-1|0,n=n-1|0,s=s-1|0,u[t>>0]=u[n>>0]|0;t=$}else r4(t,n,s)|0;return t|0}function rm(t,n){t=t|0,n=n|0;var s=0;do u[(t+s|0)>>0]=u[(n+s|0)>>0],s=s+1|0;while(u[n+(s-1)>>0]|0);return t|0}function JA(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0;return c=t-s>>>0,f=n-$>>>0,f=n-$-(s>>>0>t>>>0|0)>>>0,q6=f,c|0|0}function mb(t,n,s){t=t|0,n=n|0,s=s|0;var $=0;return(s|0)<32?($=(1<>s,t>>>s|(n&$)<<32-s):(q6=(n|0)<0?-1:0,n>>s-32|0)}function EQ(t){t=t|0;var n=0;return n=u[b9+(t&255)>>0]|0,(n|0)<8?n|0:(n=u[b9+(t>>8&255)>>0]|0,(n|0)<8?n+8|0:(n=u[b9+(t>>16&255)>>0]|0,(n|0)<8?n+16|0:(u[b9+(t>>>24)>>0]|0)+24|0))}function eD(t,n){t=t|0,n=n|0;var s=0,$=0,c=0,f=0,d=0,I=0,C=0;return s=t&65535,$=n&65535,c=i5($,s)|0,f=t>>>16,d=(c>>>16)+(i5($,f)|0)|0,I=n>>>16,C=i5(I,s)|0,q6=((d>>>16)+(i5(I,f)|0)|0)+(((d&65535)+C|0)>>>16)|0,0|(d+C<<16|c&65535)|0}function pb(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0;return c=n>>31|((n|0)<0?-1:0)<<1,f=((n|0)<0?-1:0)>>31|((n|0)<0?-1:0)<<1,d=$>>31|(($|0)<0?-1:0)<<1,I=(($|0)<0?-1:0)>>31|(($|0)<0?-1:0)<<1,C=JA(c^t,f^n,c,f)|0,p=q6,m=JA(d^s,I^$,d,I)|0,v=d^c,S=I^f,w=JC(C,p,m,q6,0)|0,y=JA(w^v,q6^S,v,S)|0,y|0}function Qb(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0;return y=B,B=B+8|0,c=y|0,f=n>>31|((n|0)<0?-1:0)<<1,d=((n|0)<0?-1:0)>>31|((n|0)<0?-1:0)<<1,I=$>>31|(($|0)<0?-1:0)<<1,C=(($|0)<0?-1:0)>>31|(($|0)<0?-1:0)<<1,p=JA(f^t,d^n,f,d)|0,m=q6,v=JA(I^s,C^$,I,C)|0,JC(p,m,v,q6,c)|0,S=JA(e[c>>2]^f,e[c+4>>2]^d,f,d)|0,w=q6,B=y,q6=w,S|0}function tD(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0,d=0,I=0,C=0;return c=t,f=s,d=eD(c,f)|0,I=q6,C=i5(n,f)|0,q6=((i5($,c)|0)+C|0)+I|I&0,0|d&-1|0}function yb(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0;return c=JC(t,n,s,$,0)|0,c|0}function wb(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0;var c=0,f=0;return f=B,B=B+8|0,c=f|0,JC(t,n,s,$,c)|0,B=f,q6=e[c+4>>2]|0,e[c>>2]|0|0}function JC(t,n,s,$,c){t=t|0,n=n|0,s=s|0,$=$|0,c=c|0;var f=0,d=0,I=0,C=0,p=0,m=0,v=0,S=0,w=0,y=0,D=0,Q=0,b=0,x=0,_=0,L=0,M=0,T=0,G=0,N=0,P=0,z=0,Y=0,t0=0,J=0,W=0,e0=0,H=0,X=0,U=0,o0=0,Z=0,V=0,s0=0,n0=0,i0=0,r0=0,K=0,c0=0,A0=0,l0=0,j=0,a0=0,g0=0,f0=0,Q0=0,d0=0,y0=0,h0=0,E0=0,C0=0,u0=0,k0=0,J0=0,D0=0,m0=0,x0=0,F0=0,M0=0,G0=0,p0=0,H0=0,R0=0,S0=0;if(f=t,d=n,I=d,C=s,p=$,m=p,!(I|0))return v=(c|0)!=0,m|0?v?(e[c>>2]=t&-1,e[c+4>>2]=n&0,S0=0,R0=0,q6=S0,R0|0):(S0=0,R0=0,q6=S0,R0|0):(v&&(e[c>>2]=(f>>>0)%(C>>>0),e[c+4>>2]=0),S0=0,R0=(f>>>0)/(C>>>0)>>>0,q6=S0,R0|0);S=(m|0)==0;do if(C|0){if(!S){if(Y=HA(m|0)|0,t0=Y-(HA(I|0)|0)|0,t0>>>0<=31){J=t0+1|0,W=31-t0|0,e0=t0-31>>31,Z=J,o0=f>>>(J>>>0)&e0|I<>>(J>>>0)&e0,X=0,H=f<>2]=0|t&-1,e[c+4>>2]=d|n&0,S0=0,R0=0,q6=S0,R0|0):(S0=0,R0=0,q6=S0,R0|0)}if(x=C-1|0,x&C|0){L=(HA(C|0)|0)+33|0,M=L-(HA(I|0)|0)|0,T=64-M|0,G=32-M|0,N=G>>31,P=M-32|0,z=P>>31,Z=M,o0=G-1>>31&I>>>(P>>>0)|(I<>>(M>>>0))&z,U=z&I>>>(M>>>0),X=f<>>(P>>>0))&N|f<>31;break}return c|0&&(e[c>>2]=x&f,e[c+4>>2]=0),(C|0)==1?(S0=d|n&0,R0=0|t&-1,q6=S0,R0|0):(_=EQ(C|0)|0,S0=0|I>>>(_>>>0),R0=I<<32-_|f>>>(_>>>0)|0,q6=S0,R0|0)}else{if(S)return c|0&&(e[c>>2]=(I>>>0)%(C>>>0),e[c+4>>2]=0),S0=0,R0=(I>>>0)/(C>>>0)>>>0,q6=S0,R0|0;if(!(f|0))return c|0&&(e[c>>2]=0,e[c+4>>2]=(I>>>0)%(m>>>0)),S0=0,R0=(I>>>0)/(m>>>0)>>>0,q6=S0,R0|0;if(w=m-1|0,!(w&m|0))return c|0&&(e[c>>2]=0|t&-1,e[c+4>>2]=w&I|n&0),S0=0,R0=I>>>((EQ(m|0)|0)>>>0),q6=S0,R0|0;if(y=HA(m|0)|0,D=y-(HA(I|0)|0)|0,D>>>0<=30){Q=D+1|0,b=31-D|0,Z=Q,o0=I<>>(Q>>>0),U=I>>>(Q>>>0),X=0,H=f<>2]=0|t&-1,e[c+4>>2]=d|n&0,S0=0,R0=0,q6=S0,R0|0):(S0=0,R0=0,q6=S0,R0|0)}while(!1);if(!(Z|0))M0=H,F0=X,x0=U,m0=o0,D0=0,J0=0;else{for(V=0|s&-1,s0=p|$&0,n0=qA(V|0,s0|0,-1,-1)|0,i0=q6,j=H,l0=X,A0=U,c0=o0,K=Z,r0=0;a0=l0>>>31|j<<1,g0=r0|l0<<1,f0=0|(c0<<1|j>>>31),Q0=c0>>>31|A0<<1|0,JA(n0,i0,f0,Q0)|0,d0=q6,y0=d0>>31|((d0|0)<0?-1:0)<<1,h0=y0&1,E0=JA(f0,Q0,y0&V,(((d0|0)<0?-1:0)>>31|((d0|0)<0?-1:0)<<1)&s0)|0,C0=E0,u0=q6,k0=K-1|0,k0|0;)j=a0,l0=g0,A0=u0,c0=C0,K=k0,r0=h0;M0=a0,F0=g0,x0=u0,m0=C0,D0=0,J0=h0}return G0=F0,p0=0,H0=M0|p0,c|0&&(e[c>>2]=0|m0,e[c+4>>2]=x0|0),S0=(0|G0)>>>31|H0<<1|(p0<<1|G0>>>31)&0|D0,R0=(G0<<1|0)&-2|J0,q6=S0,R0|0}function iD(t,n,s,$,c){return t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,sm[t&3](n|0,s|0,$|0,c|0)|0}function rD(t,n){t=t|0,n=n|0,KA[t&7](n|0)}function nD(t,n,s){t=t|0,n=n|0,s=s|0,om[t&3](n|0,s|0)}function AD(t,n){return t=t|0,n=n|0,mQ[t&1](n|0)|0}function sD(t,n,s,$){t=t|0,n=n|0,s=s|0,$=$|0,pQ[t&1](n|0,s|0,$|0)}function oD(t,n,s,$,c,f,d,I,C){return t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0,I=I|0,C=C|0,QQ[t&3](n|0,s|0,$|0,c|0,f|0,d|0,I|0,C|0)|0}function $D(t,n,s){return t=t|0,n=n|0,s=s|0,lt[t&15](n|0,s|0)|0}function aD(t,n,s,$,c,f){return t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,$m[t&7](n|0,s|0,$|0,c|0,f|0)|0}function lD(t,n,s,$){return t=t|0,n=n|0,s=s|0,$=$|0,Pr(0),0}function nm(t){t=t|0,Pr(1)}function CQ(t,n){t=t|0,n=n|0,Pr(2)}function cD(t){return t=t|0,Pr(3),0}function gD(t,n,s){t=t|0,n=n|0,s=s|0,Pr(4)}function BQ(t,n,s,$,c,f,d,I){return t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,f=f|0,d=d|0,I=I|0,Pr(5),0}function Va(t,n){return t=t|0,n=n|0,Pr(6),0}function Am(t,n,s,$,c){return t=t|0,n=n|0,s=s|0,$=$|0,c=c|0,Pr(7),0}var sm=[lD,Wv,Lv,Mv],KA=[nm,Vv,zv,oS,BS,mS,nm,nm],om=[CQ,Yv,pS,CQ],mQ=[cD,$S],pQ=[gD,AS],QQ=[BQ,kS,bS,BQ],lt=[Va,Jv,Kv,Zv,sS,aS,QS,yS,jv,CS,MS,Va,Va,Va,Va,Va],$m=[Am,wS,vS,SS,DS,_S,Am,Am];return{_memmove:Ko,_strlen:Ka,_strcat:IQ,_free:I2,_i64Add:qA,_encoder_clear:qS,_encoder_transfer_data:VS,_encoder_data_len:KS,_memset:ne,_malloc:k9,_memcpy:r4,_encoder_init:HS,_encoder_process:JS,_bitshift64Lshr:YA,_bitshift64Shl:dQ,_strcpy:rm,_encoder_analysis_buffer:YS,runPostSets:XS,stackAlloc:gv,stackSave:hv,stackRestore:fv,establishStackSpace:uv,setThrew:Iv,setTempRet0:dv,getTempRet0:Ev,dynCall_iiiii:iD,dynCall_vi:rD,dynCall_vii:nD,dynCall_ii:AD,dynCall_viii:sD,dynCall_iiiiiiiii:oD,dynCall_iii:$D,dynCall_iiiiii:aD}}(o.asmGlobalArg,o.asmLibraryArg,_i),ZD=o.runPostSets=J9.runPostSets,Kk=o._strlen=J9._strlen,Vk=o._strcat=J9._strcat,YB=o._free=J9._free,WD=o._encoder_init=J9._encoder_init,zk=o._i64Add=J9._i64Add,Zk=o._memmove=J9._memmove,jD=o._encoder_transfer_data=J9._encoder_transfer_data,XD=o._encoder_process=J9._encoder_process,eb=o._encoder_data_len=J9._encoder_data_len,Wk=o._memset=J9._memset,wh=o._malloc=J9._malloc,jk=o._memcpy=J9._memcpy,tb=o._encoder_clear=J9._encoder_clear,Xk=o._bitshift64Lshr=J9._bitshift64Lshr,ib=o._encoder_analysis_buffer=J9._encoder_analysis_buffer,ev=o._strcpy=J9._strcpy,tv=o._bitshift64Shl=J9._bitshift64Shl,rb=o.dynCall_iiiii=J9.dynCall_iiiii,nb=o.dynCall_vi=J9.dynCall_vi,Ab=o.dynCall_vii=J9.dynCall_vii,sb=o.dynCall_ii=J9.dynCall_ii,ob=o.dynCall_viii=J9.dynCall_viii,$b=o.dynCall_iiiiiiiii=J9.dynCall_iiiiiiiii,ab=o.dynCall_iii=J9.dynCall_iii,lb=o.dynCall_iiiiii=J9.dynCall_iiiiii;R.stackAlloc=J9.stackAlloc,R.stackSave=J9.stackSave,R.stackRestore=J9.stackRestore,R.establishStackSpace=J9.establishStackSpace,R.setTempRet0=J9.setTempRet0,R.getTempRet0=J9.getTempRet0;var cb=function(){var i={math:{}};i.math.Long=function(q,w0){this.low_=q|0,this.high_=w0|0},i.math.Long.IntCache_={},i.math.Long.fromInt=function(q){if(-128<=q&&q<128){var w0=i.math.Long.IntCache_[q];if(w0)return w0}var W0=new i.math.Long(q|0,q<0?-1:0);return-128<=q&&q<128&&(i.math.Long.IntCache_[q]=W0),W0},i.math.Long.fromNumber=function(q){return isNaN(q)||!isFinite(q)?i.math.Long.ZERO:q<=-i.math.Long.TWO_PWR_63_DBL_?i.math.Long.MIN_VALUE:q+1>=i.math.Long.TWO_PWR_63_DBL_?i.math.Long.MAX_VALUE:q<0?i.math.Long.fromNumber(-q).negate():new i.math.Long(q%i.math.Long.TWO_PWR_32_DBL_|0,q/i.math.Long.TWO_PWR_32_DBL_|0)},i.math.Long.fromBits=function(q,w0){return new i.math.Long(q,w0)},i.math.Long.fromString=function(q,w0){if(q.length==0)throw Error("number format error: empty string");var W0=w0||10;if(W0<2||36=0)throw Error('number format error: interior "-" character: '+q);for(var E2=i.math.Long.fromNumber(Math.pow(W0,8)),Z5=i.math.Long.ZERO,T5=0;T5=0?this.low_:i.math.Long.TWO_PWR_32_DBL_+this.low_},i.math.Long.prototype.getNumBitsAbs=function(){if(this.isNegative())return this.equals(i.math.Long.MIN_VALUE)?64:this.negate().getNumBitsAbs();for(var q=this.high_!=0?this.high_:this.low_,w0=31;w0>0&&!(q&1<0},i.math.Long.prototype.greaterThanOrEqual=function(q){return this.compare(q)>=0},i.math.Long.prototype.compare=function(q){if(this.equals(q))return 0;var w0=this.isNegative(),W0=q.isNegative();return w0&&!W0?-1:!w0&&W0?1:this.subtract(q).isNegative()?-1:1},i.math.Long.prototype.negate=function(){return this.equals(i.math.Long.MIN_VALUE)?i.math.Long.MIN_VALUE:this.not().add(i.math.Long.ONE)},i.math.Long.prototype.add=function(q){var w0=this.high_>>>16,W0=this.high_&65535,E2=this.low_>>>16,Z5=this.low_&65535,T5=q.high_>>>16,b3=q.high_&65535,z6=q.low_>>>16,L9=q.low_&65535,_9=0,V4=0,j7=0,Ji=0;return Ji+=Z5+L9,j7+=Ji>>>16,Ji&=65535,j7+=E2+z6,V4+=j7>>>16,j7&=65535,V4+=W0+b3,_9+=V4>>>16,V4&=65535,_9+=w0+T5,_9&=65535,i.math.Long.fromBits(j7<<16|Ji,_9<<16|V4)},i.math.Long.prototype.subtract=function(q){return this.add(q.negate())},i.math.Long.prototype.multiply=function(q){if(this.isZero())return i.math.Long.ZERO;if(q.isZero())return i.math.Long.ZERO;if(this.equals(i.math.Long.MIN_VALUE))return q.isOdd()?i.math.Long.MIN_VALUE:i.math.Long.ZERO;if(q.equals(i.math.Long.MIN_VALUE))return this.isOdd()?i.math.Long.MIN_VALUE:i.math.Long.ZERO;if(this.isNegative())return q.isNegative()?this.negate().multiply(q.negate()):this.negate().multiply(q).negate();if(q.isNegative())return this.multiply(q.negate()).negate();if(this.lessThan(i.math.Long.TWO_PWR_24_)&&q.lessThan(i.math.Long.TWO_PWR_24_))return i.math.Long.fromNumber(this.toNumber()*q.toNumber());var w0=this.high_>>>16,W0=this.high_&65535,E2=this.low_>>>16,Z5=this.low_&65535,T5=q.high_>>>16,b3=q.high_&65535,z6=q.low_>>>16,L9=q.low_&65535,_9=0,V4=0,j7=0,Ji=0;return Ji+=Z5*L9,j7+=Ji>>>16,Ji&=65535,j7+=E2*L9,V4+=j7>>>16,j7&=65535,j7+=Z5*z6,V4+=j7>>>16,j7&=65535,V4+=W0*L9,_9+=V4>>>16,V4&=65535,V4+=E2*z6,_9+=V4>>>16,V4&=65535,V4+=Z5*b3,_9+=V4>>>16,V4&=65535,_9+=w0*L9+W0*z6+E2*b3+Z5*T5,_9&=65535,i.math.Long.fromBits(j7<<16|Ji,_9<<16|V4)},i.math.Long.prototype.div=function(q){if(q.isZero())throw Error("division by zero");if(this.isZero())return i.math.Long.ZERO;if(this.equals(i.math.Long.MIN_VALUE)){if(q.equals(i.math.Long.ONE)||q.equals(i.math.Long.NEG_ONE))return i.math.Long.MIN_VALUE;if(q.equals(i.math.Long.MIN_VALUE))return i.math.Long.ONE;var w0=this.shiftRight(1),W0=w0.div(q).shiftLeft(1);if(W0.equals(i.math.Long.ZERO))return q.isNegative()?i.math.Long.ONE:i.math.Long.NEG_ONE;var T5=this.subtract(q.multiply(W0)),E2=W0.add(T5.div(q));return E2}else if(q.equals(i.math.Long.MIN_VALUE))return i.math.Long.ZERO;if(this.isNegative())return q.isNegative()?this.negate().div(q.negate()):this.negate().div(q).negate();if(q.isNegative())return this.div(q.negate()).negate();for(var Z5=i.math.Long.ZERO,T5=this;T5.greaterThanOrEqual(q);){for(var W0=Math.max(1,Math.floor(T5.toNumber()/q.toNumber())),b3=Math.ceil(Math.log(W0)/Math.LN2),z6=b3<=48?1:Math.pow(2,b3-48),L9=i.math.Long.fromNumber(W0),_9=L9.multiply(q);_9.isNegative()||_9.greaterThan(T5);)W0-=z6,L9=i.math.Long.fromNumber(W0),_9=L9.multiply(q);L9.isZero()&&(L9=i.math.Long.ONE),Z5=Z5.add(L9),T5=T5.subtract(_9)}return Z5},i.math.Long.prototype.modulo=function(q){return this.subtract(this.div(q).multiply(q))},i.math.Long.prototype.not=function(){return i.math.Long.fromBits(~this.low_,~this.high_)},i.math.Long.prototype.and=function(q){return i.math.Long.fromBits(this.low_&q.low_,this.high_&q.high_)},i.math.Long.prototype.or=function(q){return i.math.Long.fromBits(this.low_|q.low_,this.high_|q.high_)},i.math.Long.prototype.xor=function(q){return i.math.Long.fromBits(this.low_^q.low_,this.high_^q.high_)},i.math.Long.prototype.shiftLeft=function(q){if(q&=63,q==0)return this;var w0=this.low_;if(q<32){var W0=this.high_;return i.math.Long.fromBits(w0<>>32-q)}else return i.math.Long.fromBits(0,w0<>>q|w0<<32-q,w0>>q)}else return i.math.Long.fromBits(w0>>q-32,w0>=0?0:-1)},i.math.Long.prototype.shiftRightUnsigned=function(q){if(q&=63,q==0)return this;var w0=this.high_;if(q<32){var W0=this.low_;return i.math.Long.fromBits(W0>>>q|w0<<32-q,w0>>>q)}else return q==32?i.math.Long.fromBits(w0,0):i.math.Long.fromBits(w0>>>q-32,0)};var a={appName:"Modern Browser"},g,u=0xdeadbeefcafe,O=(u&16777215)==15715070;function e(q,w0,W0){q!=null&&(typeof q=="number"?this.fromNumber(q,w0,W0):w0==null&&typeof q!="string"?this.fromString(q,256):this.fromString(q,w0))}function Z0(){return new e(null)}function t1(q,w0,W0,E2,Z5,T5){for(;--T5>=0;){var b3=w0*this[q++]+W0[E2]+Z5;Z5=Math.floor(b3/67108864),W0[E2++]=b3&67108863}return Z5}function b2(q,w0,W0,E2,Z5,T5){for(var b3=w0&32767,z6=w0>>15;--T5>=0;){var L9=this[q]&32767,_9=this[q++]>>15,V4=z6*L9+_9*b3;L9=b3*L9+((V4&32767)<<15)+W0[E2]+(Z5&1073741823),Z5=(L9>>>30)+(V4>>>15)+z6*_9+(Z5>>>30),W0[E2++]=L9&1073741823}return Z5}function A(q,w0,W0,E2,Z5,T5){for(var b3=w0&16383,z6=w0>>14;--T5>=0;){var L9=this[q]&16383,_9=this[q++]>>14,V4=z6*L9+_9*b3;L9=b3*L9+((V4&16383)<<14)+W0[E2]+Z5,Z5=(L9>>28)+(V4>>14)+z6*_9,W0[E2++]=L9&268435455}return Z5}O&&a.appName=="Microsoft Internet Explorer"?(e.prototype.am=b2,g=30):O&&a.appName!="Netscape"?(e.prototype.am=t1,g=26):(e.prototype.am=A,g=28),e.prototype.DB=g,e.prototype.DM=(1<=0;--w0)q[w0]=this[w0];q.t=this.t,q.s=this.s}function Q8(q){this.t=1,this.s=q<0?-1:0,q>0?this[0]=q:q<-1?this[0]=q+DV:this.t=0}function K9(q){var w0=Z0();return w0.fromInt(q),w0}function c8(q,w0){var W0;if(w0==16)W0=4;else if(w0==8)W0=3;else if(w0==256)W0=8;else if(w0==2)W0=1;else if(w0==32)W0=5;else if(w0==4)W0=2;else{this.fromRadix(q,w0);return}this.t=0,this.s=0;for(var E2=q.length,Z5=!1,T5=0;--E2>=0;){var b3=W0==8?q[E2]&255:O9(q,E2);if(b3<0){q.charAt(E2)=="-"&&(Z5=!0);continue}Z5=!1,T5==0?this[this.t++]=b3:T5+W0>this.DB?(this[this.t-1]|=(b3&(1<>this.DB-T5):this[this.t-1]|=b3<=this.DB&&(T5-=this.DB)}W0==8&&q[0]&128&&(this.s=-1,T5>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==q;)--this.t}function Li(q){if(this.s<0)return"-"+this.negate().toString(q);var w0;if(q==16)w0=4;else if(q==8)w0=3;else if(q==2)w0=1;else if(q==32)w0=5;else if(q==4)w0=2;else return this.toRadix(q);var W0=(1<0)for(z6>z6)>0&&(Z5=!0,T5=b9(E2));b3>=0;)z6>(z6+=this.DB-w0)):(E2=this[b3]>>(z6-=w0)&W0,z6<=0&&(z6+=this.DB,--b3)),E2>0&&(Z5=!0),Z5&&(T5+=b9(E2));return Z5?T5:"0"}function Mi(){var q=Z0();return e.ZERO.subTo(this,q),q}function gr(){return this.s<0?this.negate():this}function qa(q){var w0=this.s-q.s;if(w0!=0)return w0;var W0=this.t;if(w0=W0-q.t,w0!=0)return this.s<0?-w0:w0;for(;--W0>=0;)if((w0=this[W0]-q[W0])!=0)return w0;return 0}function GC(q){var w0=1,W0;return(W0=q>>>16)!=0&&(q=W0,w0+=16),(W0=q>>8)!=0&&(q=W0,w0+=8),(W0=q>>4)!=0&&(q=W0,w0+=4),(W0=q>>2)!=0&&(q=W0,w0+=2),(W0=q>>1)!=0&&(q=W0,w0+=1),w0}function dp(){return this.t<=0?0:this.DB*(this.t-1)+GC(this[this.t-1]^this.s&this.DM)}function Ep(q,w0){var W0;for(W0=this.t-1;W0>=0;--W0)w0[W0+q]=this[W0];for(W0=q-1;W0>=0;--W0)w0[W0]=0;w0.t=this.t+q,w0.s=this.s}function Cp(q,w0){for(var W0=q;W0=0;--z6)w0[z6+T5+1]=this[z6]>>E2|b3,b3=(this[z6]&Z5)<=0;--z6)w0[z6]=0;w0[T5]=b3,w0.t=this.t+T5+1,w0.s=this.s,w0.clamp()}function mp(q,w0){w0.s=this.s;var W0=Math.floor(q/this.DB);if(W0>=this.t){w0.t=0;return}var E2=q%this.DB,Z5=this.DB-E2,T5=(1<>E2;for(var b3=W0+1;b3>E2;E2>0&&(w0[this.t-W0-1]|=(this.s&T5)<>=this.DB;if(q.t>=this.DB;E2+=this.s}else{for(E2+=this.s;W0>=this.DB;E2-=q.s}w0.s=E2<0?-1:0,E2<-1?w0[W0++]=this.DV+E2:E2>0&&(w0[W0++]=E2),w0.t=W0,w0.clamp()}function pp(q,w0){var W0=this.abs(),E2=q.abs(),Z5=W0.t;for(w0.t=Z5+E2.t;--Z5>=0;)w0[Z5]=0;for(Z5=0;Z5=0;)q[W0]=0;for(W0=0;W0=w0.DV&&(q[W0+w0.t]-=w0.DV,q[W0+w0.t+1]=1)}q.t>0&&(q[q.t-1]+=w0.am(W0,w0[W0],q,2*W0,0,1)),q.s=0,q.clamp()}function yp(q,w0,W0){var E2=q.abs();if(!(E2.t<=0)){var Z5=this.abs();if(Z5.t0?(E2.lShiftTo(L9,T5),Z5.lShiftTo(L9,W0)):(E2.copyTo(T5),Z5.copyTo(W0));var _9=T5.t,V4=T5[_9-1];if(V4!=0){var j7=V4*(1<1?T5[_9-2]>>this.F2:0),Ji=this.FV/j7,Mp=(1<=0&&(W0[W0.t++]=1,W0.subTo(Ft,W0)),e.ONE.dlShiftTo(_9,Ft),Ft.subTo(T5,T5);T5.t<_9;)T5[T5.t++]=0;for(;--vh>=0;){var NC=W0[--Jo]==V4?this.DM:Math.floor(W0[Jo]*Ji+(W0[Jo-1]+Tp)*Mp);if((W0[Jo]+=T5.am(0,NC,W0,vh,0,_9))0&&W0.rShiftTo(L9,W0),b3<0&&e.ZERO.subTo(W0,W0)}}}function wp(q){var w0=Z0();return this.abs().divRemTo(q,null,w0),this.s<0&&w0.compareTo(e.ZERO)>0&&q.subTo(w0,w0),w0}function Ho(q){this.m=q}function kp(q){return q.s<0||q.compareTo(this.m)>=0?q.mod(this.m):q}function vp(q){return q}function Sp(q){q.divRemTo(this.m,null,q)}function Dp(q,w0,W0){q.multiplyTo(w0,W0),this.reduce(W0)}function qo(q,w0){q.squareTo(w0),this.reduce(w0)}Ho.prototype.convert=kp,Ho.prototype.revert=vp,Ho.prototype.reduce=Sp,Ho.prototype.mulTo=Dp,Ho.prototype.sqrTo=qo;function Yi(){if(this.t<1)return 0;var q=this[0];if(!(q&1))return 0;var w0=q&3;return w0=w0*(2-(q&15)*w0)&15,w0=w0*(2-(q&255)*w0)&255,w0=w0*(2-((q&65535)*w0&65535))&65535,w0=w0*(2-q*w0%this.DV)%this.DV,w0>0?this.DV-w0:-w0}function Rn(q){this.m=q,this.mp=q.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<0&&this.m.subTo(w0,w0),w0}function Yo(q){var w0=Z0();return q.copyTo(w0),this.reduce(w0),w0}function xn(q){for(;q.t<=this.mt2;)q[q.t++]=0;for(var w0=0;w0>15)*this.mpl&this.um)<<15)&q.DM;for(W0=w0+this.m.t,q[W0]+=this.m.am(0,E2,q,w0,0,this.m.t);q[W0]>=q.DV;)q[W0]-=q.DV,q[++W0]++}q.clamp(),q.drShiftTo(this.m.t,q),q.compareTo(this.m)>=0&&q.subTo(this.m,q)}function bp(q,w0){q.squareTo(w0),this.reduce(w0)}function _p(q,w0,W0){q.multiplyTo(w0,W0),this.reduce(W0)}Rn.prototype.convert=kh,Rn.prototype.revert=Yo,Rn.prototype.reduce=xn,Rn.prototype.mulTo=_p,Rn.prototype.sqrTo=bp;function Rp(){return(this.t>0?this[0]&1:this.s)==0}function PA(q,w0){if(q>4294967295||q<1)return e.ONE;var W0=Z0(),E2=Z0(),Z5=w0.convert(this),T5=GC(q)-1;for(Z5.copyTo(W0);--T5>=0;)if(w0.sqrTo(W0,E2),(q&1<0)w0.mulTo(E2,Z5,W0);else{var b3=W0;W0=E2,E2=b3}return w0.revert(W0)}function xp(q,w0){var W0;return q<256||w0.isEven()?W0=new Ho(w0):W0=new Rn(w0),this.exp(q,W0)}e.prototype.copyTo=I4,e.prototype.fromInt=Q8,e.prototype.fromString=c8,e.prototype.clamp=K4,e.prototype.dlShiftTo=Ep,e.prototype.drShiftTo=Cp,e.prototype.lShiftTo=Bp,e.prototype.rShiftTo=mp,e.prototype.subTo=q6,e.prototype.multiplyTo=pp,e.prototype.squareTo=Qp,e.prototype.divRemTo=yp,e.prototype.invDigit=Yi,e.prototype.isEven=Rp,e.prototype.exp=PA,e.prototype.toString=Li,e.prototype.negate=Mi,e.prototype.abs=gr,e.prototype.compareTo=qa,e.prototype.bitLength=dp,e.prototype.mod=wp,e.prototype.modPowInt=xp,e.ZERO=K9(0),e.ONE=K9(1);function Fn(q,w0){this.fromInt(0),w0==null&&(w0=10);for(var W0=this.chunkSize(w0),E2=Math.pow(w0,W0),Z5=!1,T5=0,b3=0,z6=0;z6=W0&&(this.dMultiply(E2),this.dAddOffset(b3,0),T5=0,b3=0)}T5>0&&(this.dMultiply(Math.pow(w0,T5)),this.dAddOffset(b3,0)),Z5&&e.ZERO.subTo(this,this)}function Or(q){return Math.floor(Math.LN2*this.DB/Math.log(q))}function KB(){return this.s<0?-1:this.t<=0||this.t==1&&this[0]<=0?0:1}function i5(q){this[this.t]=this.am(0,q-1,this,0,0,this.t),++this.t,this.clamp()}function Fp(q,w0){if(q!=0){for(;this.t<=w0;)this[this.t++]=0;for(this[w0]+=q;this[w0]>=this.DV;)this[w0]-=this.DV,++w0>=this.t&&(this[this.t++]=0),++this[w0]}}function HA(q){if(q==null&&(q=10),this.signum()==0||q<2||q>36)return"0";var w0=this.chunkSize(q),W0=Math.pow(q,w0),E2=K9(W0),Z5=Z0(),T5=Z0(),b3="";for(this.divRemTo(E2,Z5,T5);Z5.signum()>0;)b3=(W0+T5.intValue()).toString(q).substr(1)+b3,Z5.divRemTo(E2,Z5,T5);return T5.intValue().toString(q)+b3}function Pr(){if(this.s<0){if(this.t==1)return this[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this[0];if(this.t==0)return 0}return(this[1]&(1<<32-this.DB)-1)<>=this.DB;if(q.t>=this.DB;E2+=this.s}else{for(E2+=this.s;W0>=this.DB;E2+=q.s}w0.s=E2<0?-1:0,E2>0?w0[W0++]=E2:E2<-1&&(w0[W0++]=this.DV+E2),w0.t=W0,w0.clamp()}e.prototype.fromRadix=Fn,e.prototype.chunkSize=Or,e.prototype.signum=KB,e.prototype.dMultiply=i5,e.prototype.dAddOffset=Fp,e.prototype.toRadix=HA,e.prototype.intValue=Pr,e.prototype.addTo=Lp;var ei={abs:function(q,w0){var W0=new i.math.Long(q,w0),E2;W0.isNegative()?E2=W0.negate():E2=W0,D9[p8>>2]=E2.low_,D9[p8+4>>2]=E2.high_},ensureTemps:function(){ei.ensuredTemps||(ei.ensuredTemps=!0,ei.two32=new e,ei.two32.fromString("4294967296",10),ei.two64=new e,ei.two64.fromString("18446744073709551616",10),ei.temp1=new e,ei.temp2=new e)},lh2bignum:function(q,w0){var W0=new e;W0.fromString(w0.toString(),10);var E2=new e;W0.multiplyTo(ei.two32,E2);var Z5=new e;Z5.fromString(q.toString(),10);var T5=new e;return Z5.addTo(E2,T5),T5},stringify:function(q,w0,W0){var E2=new i.math.Long(q,w0).toString();if(W0&&E2[0]=="-"){ei.ensureTemps();var Z5=new e;Z5.fromString(E2,10),E2=new e,ei.two64.addTo(Z5,E2),E2=E2.toString(10)}return E2},fromString:function(q,w0,W0,E2,Z5){ei.ensureTemps();var T5=new e;T5.fromString(q,w0);var b3=new e;b3.fromString(W0,10);var z6=new e;if(z6.fromString(E2,10),Z5&&T5.compareTo(e.ZERO)<0){var L9=new e;T5.addTo(ei.two64,L9),T5=L9}var _9=!1;T5.compareTo(b3)<0?(T5=b3,_9=!0):T5.compareTo(z6)>0&&(T5=z6,_9=!0);var V4=i.math.Long.fromString(T5.toString());if(D9[p8>>2]=V4.low_,D9[p8+4>>2]=V4.high_,_9)throw"range error"}};return ei}();function Po(i){this.name="ExitStatus",this.message="Program terminated with exit("+i+")",this.status=i}Po.prototype=new Error,Po.prototype.constructor=Po;var hp,TC=null,iv=!1;xi=function i(){o.calledRun||JB(),o.calledRun||(xi=i)},o.callMain=o.callMain=function(a){J4(E7==0,"cannot call main when async dependencies remain! (listen on __ATMAIN__)"),J4(_C.length==0,"cannot call main when preRun functions remain to be called"),a=a||[],TA();var g=a.length+1;function u(){for(var t1=0;t1<3;t1++)O.push(0)}var O=[d3(Ur(o.thisProgram),"i8",No)];u();for(var e=0;e0||(Qh(),E7>0)||o.calledRun)return;function a(){o.calledRun||(o.calledRun=!0,!K0&&(TA(),np(),h&&TC!==null&&o.printErr("pre-main prep time: "+(Date.now()-TC)+" ms"),o.onRuntimeInitialized&&o.onRuntimeInitialized(),o._main&&Ip&&o.callMain(i),Ta()))}o.setStatus?(o.setStatus("Running..."),setTimeout(function(){setTimeout(function(){o.setStatus("")},1),a()},1)):a()}o.run=o.run=JB;function fp(i,a){if(!(a&&o.noExitRuntime))throw o.noExitRuntime||(K0=!0,F1=i,Ei=hp,RC(),o.onExit&&o.onExit(i)),E?(process.stdout.once("drain",function(){process.exit(i)}),console.log(" "),setTimeout(function(){process.exit(i)},500)):I0&&typeof quit=="function"&&quit(i),new Po(i)}o.exit=o.exit=fp;var up=[];function OA(i){i!==void 0?(o.print(i),o.printErr(i),i=JSON.stringify(i)):i="",K0=!0,F1=1;var a=` +If this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.`,g="abort("+i+") at "+SC()+a;throw up&&up.forEach(function(u){g=u(g,i)}),g}if(o.abort=o.abort=OA,o.preInit)for(typeof o.preInit=="function"&&(o.preInit=[o.preInit]);o.preInit.length>0;)o.preInit.pop()();var Ip=!0;o.noInitialRun&&(Ip=!1),JB();var rv=o._encoder_init,nv=o._encoder_clear,Av=o._encoder_analysis_buffer,sv=o._encoder_process,ov=o._encoder_data_len,$v=o._encoder_transfer_data,Ci=o.HEAPU8,Oa=o.HEAPU32,Pa=o.HEAPF32,Ha=function(i,a,g){this.numChannels=a,this.oggBuffers=[],this.encoder=rv(this.numChannels,i,g)};Ha.prototype.encode=function(i){for(var a=i[0].length,g=Av(this.encoder,a)>>2,u=0;u>2);this.process(a)},Ha.prototype.finish=function(){this.process(0);let i=this.oggBuffers.slice();return this.cleanup(),i},Ha.prototype.cancel=Ha.prototype.cleanup=function(){nv(this.encoder),delete this.encoder,delete this.oggBuffers},Ha.prototype.process=function(i){sv(this.encoder,i);var a=ov(this.encoder);if(a>0){var g=$v(this.encoder);this.oggBuffers.push(new Uint8Array(Ci.subarray(g,g+a)))}},TB.OggVorbisEncoder=Ha}};typeof window<"u"&&window===self&&TB.init();function ak(o,r,l,h){let E=new TB.OggVorbisEncoder(l,r,h);E.encode(o);let F=E.finish(),I0=F.reduce((O0,B1)=>O0+B1.length,0),b0=new Uint8Array(I0),B0=0;for(let O0 of F)b0.set(O0,B0),B0+=O0.length;return b0}document.body.classList.add("load");var lk=!1,Lr=class{channelColors=["rgba(255, 99, 71, 1)","rgba(255, 165, 0, 1)","rgba(255, 215, 0, 1)","rgba(50, 205, 50, 1)","rgba(60, 179, 113, 1)","rgba(0, 128, 0, 1)","rgba(0, 191, 255, 1)","rgba(65, 105, 225, 1)","rgba(138, 43, 226, 1)","rgba(50, 120, 125, 1)","rgba(255, 0, 255, 1)","rgba(255, 20, 147, 1)","rgba(218, 112, 214, 1)","rgba(240, 128, 128, 1)","rgba(255, 192, 203, 1)","rgba(255, 255, 0, 1)"];constructor(r,l,h){this.localeManager=h,this.context=r,this.isExporting=!1,this.compressionFunc=ak;let E;this.ready=new Promise(F=>E=F),this.initializeContext(r,l).then(()=>{E()})}saveBlob(r,l){let h=URL.createObjectURL(r),E=document.createElement("a");E.href=h,E.download=l,E.click(),j5(E)}sfError;async initializeContext(r,l){if(!r.audioWorklet)throw alert("Audio worklet is not supported on your browser. Sorry!"),"Not supported.";for(let R of document.querySelectorAll("*[translate-path]"))this.localeManager.bindObjectProperty(R,"innerText",R.getAttribute("translate-path"));for(let R of document.querySelectorAll("*[translate-path-title]"))this.localeManager.bindObjectProperty(R,"innerText",R.getAttribute("translate-path-title")+".title"),this.localeManager.bindObjectProperty(R,"title",R.getAttribute("translate-path-title")+".description");let E=lk?"synthetizer/worklet_system/worklet_processor.js":_B;lk&&console.warn("DEBUG ENABLED! DEBUGGING ENABLED!!"),r.audioWorklet&&await r.audioWorklet.addModule(new URL("../../spessasynth_lib/"+E,import.meta.url)),this.soundFont=l;let F=new URL("../../spessasynth_lib/synthetizer/audio_effects/impulse_response_2.flac",import.meta.url),b0=await(await fetch(F)).arrayBuffer();this.impulseResponse=await r.decodeAudioData(b0),this.synth=new Ah(r.destination,this.soundFont,void 0,void 0,{chorusEnabled:!0,chorusConfig:void 0,reverbImpulseResponse:this.impulseResponse,reverbEnabled:!0}),this.synth.eventHandler.addEvent("soundfonterror","manager-sf-error",R=>{this.sfError&&this.sfError(R)}),await this.synth.isReady,this.midHandler=new pB,this.wml=new QB(this.synth),this.keyboard=new EC(this.channelColors,this.synth);let B0=document.getElementById("note_canvas");B0.width=window.innerWidth*window.devicePixelRatio,B0.height=window.innerHeight*window.devicePixelRatio,this.renderer=new vi(this.channelColors,this.synth,B0),this.renderer.render(!0);let O0=!1,B1=()=>{if(B0.width=window.innerWidth*window.devicePixelRatio,B0.height=window.innerHeight*window.devicePixelRatio,this.renderer.computeColors(),vo){if(window.innerWidth/window.innerHeight>1){if(!O0){let R=document.getElementById("title_wrapper"),j0=document.getElementById("settings_div");O0=!0,R.parentElement.insertBefore(j0,R)}}else if(O0){let R=document.getElementById("title_wrapper"),j0=document.getElementById("settings_div");O0=!1,R.parentElement.insertBefore(R,j0)}}this.renderer.render(!1,!0)};B1(),window.addEventListener("resize",B1.bind(this)),window.addEventListener("orientationchange",B1.bind(this)),vo&&(this.renderer.keyRange={min:36,max:96},this.keyboard.setKeyRange({min:36,max:96},!1)),this.synthUI=new Fr(this.channelColors,document.getElementById("synthetizer_controls"),this.localeManager),this.synthUI.connectSynth(this.synth),this.playerUI=new DB(document.getElementById("player_info"),this.localeManager),this.seqUI=new bA(document.getElementById("sequencer_controls"),this.localeManager,this.playerUI),this.settingsUI=new di(document.getElementById("settings_div"),this.synthUI,this.seqUI,this.renderer,this.keyboard,this.midHandler,this.playerUI,this.localeManager),document.addEventListener("keydown",R=>{switch(R.key.toLowerCase()){case W7.cinematicMode:this.seq&&this.seq.pause();let j0=window.prompt(`Cinematic mode activated! Paste the link to the image for canvas (leave blank to disable)`,"");if(this.seq&&this.seq.play(),j0===null)return;B0.style.background=`linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)), center center / cover url("${j0}")`,document.getElementsByClassName("top_part")[0].style.display="none",document.getElementsByClassName("bottom_part")[0].style.display="none",document.body.requestFullscreen().then();break;case W7.videoMode:this.seq&&this.seq.pause();let K0=window.prompt(`Video mode! Paste the link to the video source (leave blank to disable) -Note: the video will be available in console as 'video'`,"");if(K0===null)return;let F1=document.createElement("video");F1.src=K0,F1.classList.add("secret_video"),B0.parentElement.appendChild(F1),F1.play(),window.video=F1,this.seq&&(F1.currentTime=parseFloat(window.prompt("Video offset to sync to midi, in seconds.","0")),F1.play(),this.seq.currentTime=0),document.addEventListener("keydown",m2=>{m2.key===" "&&(F1.paused?F1.play():F1.pause())});break}}),this.renderer.render(!1,!0)}async reloadSf(r){await this.synth.soundfontManager.reloadManager(r),this.soundFont=r}play(r){this.synth&&(this.seq=new dB(r,this.synth),this.seq.onError=l=>{document.getElementById("title").textContent=l},this.seqUI.connectSequencer(this.seq),this.playerUI.connectSequencer(this.seq),this.renderer.connectSequencer(this.seq),this.settingsUI.addSequencer(this.seq),this.seq.play(!0))}downloadDesfont(){let l=uh(this.soundFont).write(),h=new Blob([l.buffer],{type:"audio/soundfont"});this.saveBlob(h,"desfont.sf2")}};Lr.prototype.exportSong=ok;Lr.prototype._exportAudioData=Rw;Lr.prototype._doExportAudioData=_w;Lr.prototype.exportMidi=xw;Lr.prototype._exportSoundfont=sk;Lr.prototype._exportRMIDI=$k;var YD=44100,Mr=document.getElementById("title"),ck=document.getElementById("progress_bar"),ya=document.getElementById("midi_file_input");ya.value="";ya.focus();var Hm=document.getElementById("export_button");Hm.style.display="none";var Ym=!1;window.loadedSoundfonts=[];async function JD(o,r){let l=await fetch(`${o}`);if(!l.ok)throw Mr.innerText="Error downloading soundfont!",l;let h=l.headers.get("content-length"),E=await(await l.body).getReader(),F=!1,I0;try{I0=new Uint8Array(parseInt(h))}catch(B0){let P0="Your browser ran out of memory. Consider using Firefox or SF3 soundfont instead

(see console for error)";throw window.manager&&(P0=manager.localeManager.getLocaleString("locale.warnings.outOfMemory")),$t("Warning",[{type:"text",textContent:P0}]),B0}let b0=0;do{let B0=await E.read();B0.value&&(I0.set(B0.value,b0),b0+=B0.value.length),F=B0.done;let P0=Math.round(b0/h*100);r(P0)}while(!F);return I0.buffer}async function qm(o){if(!Ym){setTimeout(()=>qm(o),100);return}await manager.ready;let r;o[0].name.length>20?r=o[0].name.substring(0,21)+"...":r=o[0].name,o.length>1&&(r+=` and ${o.length-1} others`),document.getElementById("file_upload").innerText=r,document.getElementById("file_upload").title=o[0].name;let l=[];for(let h of o)l.push({binary:await h.arrayBuffer(),altName:h.name});Mr.style.fontStyle="italic",manager.seq?manager.seq.loadNewSongList(l):manager.play(l),Hm.style.display="flex",Hm.onclick=window.manager.exportSong.bind(window.manager)}async function gk(o){async function r(){if(!window.audioContextMain){Mr.innerText="Press anywhere to start the app";return}window.manager?(window.manager.seq&&window.manager.seq.pause(),await window.manager.reloadSf(window.soundFontParser),window.manager.seq&&(window.manager.seq.currentTime-=.1)):(window.manager=new Lr(audioContextMain,soundFontParser,hk),window.TITLE=window.manager.localeManager.getLocaleString("locale.titleMessage"),Mr.innerText="Initializing...",await manager.ready),Ym=!0}if(window.loadedSoundfonts.find(h=>h.name===o)){window.soundFontParser=window.loadedSoundfonts.find(h=>h.name===o).sf,await r();return}Mr.innerText="Downloading soundfont...";let l=await JD(o,h=>ck.style.width=`${h/100*Mr.offsetWidth}px`);Mr.innerText="Parsing soundfont...",setTimeout(()=>{window.soundFontParser=l,ck.style.width="0",window.loadedSoundfonts.push({name:o,sf:window.soundFontParser}),r()}),Mr.innerText=window.TITLE}document.body.onclick=async()=>{if(!window.audioContextMain){navigator.mediaSession&&(navigator.mediaSession.playbackState="playing");let o=window.AudioContext||window.webkitAudioContext;window.audioContextMain=new o({sampleRate:YD}),window.soundFontParser&&(window.manager=new Lr(audioContextMain,soundFontParser,hk),window.TITLE=window.manager.localeManager.getLocaleString("locale.titleMessage"),Mr.innerText="Initializing...",await manager.ready,Ym=!0)}document.body.onclick=null};var Pm=[],hk=new bB(navigator.language.split("-")[0].toLowerCase());fetch("soundfonts").then(async o=>{if(!o.ok)throw Mr.innerText="Error fetching soundfonts!",o.statusText;let r=document.getElementById("sf_selector");Pm=JSON.parse(await o.text());for(let l of Pm){let h=document.createElement("option");h.value=l.name;let E=l.name;E.length>29&&(E=E.substring(0,30)+"..."),h.innerText=E,r.appendChild(h)}r.onchange=()=>{fetch(`/setlastsf2?sfname=${encodeURIComponent(r.value)}`),window.manager.seq&&window.manager.seq.pause(),gk(r.value),window.manager.seq&&(Mr.innerText=window.manager.seq.midiData.midiName||window.TITLE)},await gk(Pm[0].name),ya.files[0]&&await qm(ya.files),ya.onchange=async()=>{ya.files[0]&&await qm(ya.files)}});function KD(o){fetch("/savesettings",{method:"POST",body:JSON.stringify(o),headers:{"Content-type":"application/json; charset=UTF-8"}}).then()}window.saveSettings=KD;window.savedSettings=new Promise(o=>{fetch("/getsettings").then(r=>r.json().then(l=>{o(l)}))});window.isLocalEdition=!0; +Note: the video will be available in console as 'video'`,"");if(K0===null)return;let F1=document.createElement("video");F1.src=K0,F1.classList.add("secret_video"),B0.parentElement.appendChild(F1),F1.play(),window.video=F1,this.seq&&(F1.currentTime=parseFloat(window.prompt("Video offset to sync to midi, in seconds.","0")),F1.play(),this.seq.currentTime=0),document.addEventListener("keydown",m2=>{m2.key===" "&&(F1.paused?F1.play():F1.pause())});break}}),this.renderer.render(!1,!0)}async reloadSf(r){await this.synth.soundfontManager.reloadManager(r),this.soundFont=r}play(r){this.synth&&(this.seq=new dB(r,this.synth),this.seq.onError=l=>{document.getElementById("title").textContent=l},this.seqUI.connectSequencer(this.seq),this.playerUI.connectSequencer(this.seq),this.renderer.connectSequencer(this.seq),this.settingsUI.addSequencer(this.seq),this.seq.play(!0))}downloadDesfont(){let l=uh(this.soundFont).write(),h=new Blob([l.buffer],{type:"audio/soundfont"});this.saveBlob(h,"desfont.sf2")}};Lr.prototype.exportSong=ok;Lr.prototype._exportAudioData=Rw;Lr.prototype._doExportAudioData=_w;Lr.prototype.exportMidi=xw;Lr.prototype._exportSoundfont=sk;Lr.prototype._exportRMIDI=$k;var YD=44100,Mr=document.getElementById("title"),ck=document.getElementById("progress_bar"),ya=document.getElementById("midi_file_input");ya.value="";ya.focus();var Hm=document.getElementById("export_button");Hm.style.display="none";var Ym=!1;window.loadedSoundfonts=[];async function JD(o,r){let l=await fetch(`${o}`);if(!l.ok)throw Mr.innerText="Error downloading soundfont!",l;let h=l.headers.get("content-length"),E=await(await l.body).getReader(),F=!1,I0;try{I0=new Uint8Array(parseInt(h))}catch(B0){let O0="Your browser ran out of memory. Consider using Firefox or SF3 soundfont instead

(see console for error)";throw window.manager&&(O0=manager.localeManager.getLocaleString("locale.warnings.outOfMemory")),$t("Warning",[{type:"text",textContent:O0}]),B0}let b0=0;do{let B0=await E.read();B0.value&&(I0.set(B0.value,b0),b0+=B0.value.length),F=B0.done;let O0=Math.round(b0/h*100);r(O0)}while(!F);return I0.buffer}async function qm(o){if(!Ym){setTimeout(()=>qm(o),100);return}await manager.ready;let r;o[0].name.length>20?r=o[0].name.substring(0,21)+"...":r=o[0].name,o.length>1&&(r+=` and ${o.length-1} others`),document.getElementById("file_upload").innerText=r,document.getElementById("file_upload").title=o[0].name;let l=[];for(let h of o)l.push({binary:await h.arrayBuffer(),altName:h.name});Mr.style.fontStyle="italic",manager.seq?manager.seq.loadNewSongList(l):manager.play(l),Hm.style.display="flex",Hm.onclick=window.manager.exportSong.bind(window.manager)}async function gk(o){async function r(){if(!window.audioContextMain){Mr.innerText="Press anywhere to start the app";return}window.manager?(window.manager.seq&&window.manager.seq.pause(),await window.manager.reloadSf(window.soundFontParser),window.manager.seq&&(window.manager.seq.currentTime-=.1)):(window.manager=new Lr(audioContextMain,soundFontParser,hk),window.TITLE=window.manager.localeManager.getLocaleString("locale.titleMessage"),Mr.innerText="Initializing...",await manager.ready),Ym=!0}if(window.loadedSoundfonts.find(h=>h.name===o)){window.soundFontParser=window.loadedSoundfonts.find(h=>h.name===o).sf,await r();return}Mr.innerText="Downloading soundfont...";let l=await JD(o,h=>ck.style.width=`${h/100*Mr.offsetWidth}px`);Mr.innerText="Parsing soundfont...",setTimeout(()=>{window.soundFontParser=l,ck.style.width="0",window.loadedSoundfonts.push({name:o,sf:window.soundFontParser}),r()}),Mr.innerText=window.TITLE}document.body.onclick=async()=>{if(!window.audioContextMain){navigator.mediaSession&&(navigator.mediaSession.playbackState="playing");let o=window.AudioContext||window.webkitAudioContext;window.audioContextMain=new o({sampleRate:YD}),window.soundFontParser&&(window.manager=new Lr(audioContextMain,soundFontParser,hk),window.TITLE=window.manager.localeManager.getLocaleString("locale.titleMessage"),Mr.innerText="Initializing...",await manager.ready,Ym=!0)}document.body.onclick=null};var Pm=[],hk=new bB(navigator.language.split("-")[0].toLowerCase());fetch("soundfonts").then(async o=>{if(!o.ok)throw Mr.innerText="Error fetching soundfonts!",o.statusText;let r=document.getElementById("sf_selector");Pm=JSON.parse(await o.text());for(let l of Pm){let h=document.createElement("option");h.value=l.name;let E=l.name;E.length>29&&(E=E.substring(0,30)+"..."),h.innerText=E,r.appendChild(h)}r.onchange=()=>{fetch(`/setlastsf2?sfname=${encodeURIComponent(r.value)}`),window.manager.seq&&window.manager.seq.pause(),gk(r.value),window.manager.seq&&(Mr.innerText=window.manager.seq.midiData.midiName||window.TITLE)},await gk(Pm[0].name),ya.files[0]&&await qm(ya.files),ya.onchange=async()=>{ya.files[0]&&await qm(ya.files)}});function KD(o){fetch("/savesettings",{method:"POST",body:JSON.stringify(o),headers:{"Content-type":"application/json; charset=UTF-8"}}).then()}window.saveSettings=KD;window.savedSettings=new Promise(o=>{fetch("/getsettings").then(r=>r.json().then(l=>{o(l)}))});window.isLocalEdition=!0; diff --git a/src/website/minified/style.min.css b/src/website/minified/style.min.css index 5bd7f829..8b839487 100644 --- a/src/website/minified/style.min.css +++ b/src/website/minified/style.min.css @@ -1 +1 @@ -.settings_slider_wrapper{display:flex;align-items:center;width:100%;justify-content:center;margin-top:.5rem!important;position:relative;--track-height: .8rem;--thumb-size: 1.5rem;--active-brightness: .75;--slider-border-thickness: 1px}.settings_visual_wrapper{--visual-width: 0%;display:flex;position:relative;margin:0 1rem 1rem 0;flex-grow:1;height:var(--track-height);transition:all .1s;cursor:e-resize;background:var(--track-color);border:solid var(--slider-border-thickness) var(--track-border-color);border-radius:var(--track-height)}.settings_visual_wrapper:has(.settings_slider:active){filter:brightness(var(--active-brightness))}.settings_slider{cursor:e-resize;width:100%;opacity:0;-webkit-appearance:none;top:calc((var(--thumb-size) / 4) * -1);height:var(--thumb-size);position:relative}.settings_slider:hover{filter:brightness(1.2)}.settings_slider:focus{outline:none}.settings_slider+span{margin-bottom:1rem}.settings_slider+span{min-width:5em;text-align:center}.settings_slider_progress{width:calc(var(--visual-width) + 2 * var(--slider-border-thickness));position:absolute;background:var(--primary-color);border:solid var(--slider-border-thickness) var(--border-color);height:calc(100% + 2 * var(--slider-border-thickness));border-radius:var(--track-height);top:calc(-1 * var(--slider-border-thickness));left:calc(-1 * var(--slider-border-thickness))}.settings_slider_thumb{border:solid var(--slider-border-thickness) var(--track-border-color);background:var(--track-color);height:var(--thumb-size);width:var(--thumb-size);border-radius:50%;position:absolute;top:-.4rem;left:calc(var(--visual-width) - var(--thumb-size) / 2)}.settings_slider_wrapper:hover .settings_slider_thumb{border-color:var(--primary-color)}.settings_slider_transition .settings_slider_thumb,.settings_slider_transition .settings_slider_progress{transition:all .2s ease}.seamless_button{font-size:larger;background:transparent;margin:auto;border:none;-webkit-user-select:none;user-select:none}.settings_button{display:flex;align-items:center;justify-content:center}.settings_button span{text-align:end;font-size:larger}.seamless_button:hover{cursor:pointer;text-shadow:0 0 5px white}.gear{transition:all .3s ease;padding:5px;align-content:center;align-items:center;justify-content:center;display:flex;height:0}.settings_button:hover .gear{transform:rotate(45deg)}.settings_groups_parent{display:flex;flex-wrap:wrap;justify-content:space-evenly}.settings_group{border-radius:var(--settings-border-radius);border:solid #333 1px;margin:1em;padding:1em;background:var(--top-buttons-color);transition:.2s}.settings_group:hover{filter:brightness(1.2);box-shadow:0 0 5px var(--top-buttons-color-end)}.settings_group label,.settings_group p{margin-top:1em;display:block}.switch_label{display:flex;justify-content:space-between;margin-top:1em}.switch_label label{margin-right:1em;font-size:large}.switch input{display:none}.switch{--track-height: 1.6rem;--track-width: 2.2rem;--thumb-size: 1.5rem;--track-radius: .3em;position:relative;display:inline-block;width:var(--track-width);height:var(--track-height)}.switch_slider{position:absolute;cursor:pointer;inset:50% 0 0;background-color:var(--track-color);border:solid var(--track-border-color) 1px;transition:.2s;border-radius:var(--track-radius);transform:translateY(-50%)}.switch_slider:before{position:absolute;content:"";height:var(--thumb-size);width:var(--thumb-size);left:calc(var(--thumb-size) / -4);top:50%;transform:translateY(-50%);background-color:var(--track-color);transition:.2s var(--bouncy-transition),border .1s;border-radius:50%;border:solid var(--track-border-color) 1px;box-shadow:0 0 .125rem #0003}.switch_slider:hover:before{border:solid var(--border-color) 1px;filter:brightness(1.2)}input:checked+.switch_slider{background-color:var(--primary-color);border:var(--border-color) 1px solid}input:checked+.switch_slider:before{transform:translate(calc(var(--track-width) - var(--thumb-size) * .66),-50%)}.switch:active .switch_slider:before{transform:translate(calc(var(--track-width) - var(--thumb-size) * 1.2),-50%)}.switch:active input:checked+.switch_slider:before{transform:translate(calc(var(--track-width) - var(--thumb-size) * .95),-50%)}.settings_menu{--settings-border-radius: 1rem;position:absolute;top:100%;right:0;min-width:30%;max-width:100%;min-height:100%;z-index:256;transform:scaleX(0);background:var(--top-color);transition:transform .2s ease;scroll-behavior:smooth;overflow-y:auto;display:none;border-radius:0 0 var(--settings-border-radius) var(--settings-border-radius)}.settings_menu_show{display:block!important;transform:scaleX(1)!important}.settings_menu *{-webkit-user-select:none;user-select:none}.settings_menu select{background:transparent;border:solid 1px transparent;font-size:larger;border-radius:var(--settings-border-radius);padding:.5rem}.settings_menu select option{background:#000;color:#fff;border:none}.settings_menu select:hover{cursor:pointer;text-shadow:0 0 5px white;border:1px solid var(--top-buttons-color-end);background:var(--top-buttons-color)}#keyboard .key{-webkit-user-select:none;user-select:none;touch-action:none;flex:1;transition:transform .1s ease,border-radius .5s ease;border-radius:0 0 var(--key-border-radius) var(--key-border-radius);position:relative;transform-origin:center top;--pressed-transform-skew: .0007;--pressed-transform: matrix3d( 1,0,0, 0,0,1, 0,var(--pressed-transform-skew),0, 0,1,0, 0,0,0, 1);cursor:default;--flat-half-width: 1.4;--flat-half-translate: 18%;--sharp-transform: scale(1, .7);--flat-between-transform: scale(1.9, 1);--flat-left-transform: scale(var(--flat-half-width), 1) translateX(calc(var(--flat-half-translate) * -1));--flat-right-transform: scale(var(--flat-half-width), 1) translateX(var(--flat-half-translate))}#keyboard.sideways .key{border-radius:var(--key-border-radius) 0 0 var(--key-border-radius)!important;transform-origin:right center!important;--pressed-transform: matrix3d( 1,0,0, calc(var(--pressed-transform-skew) * -1),0,1, 0,0,0, 0,1,0, 0,0,0 ,1) !important;--sharp-transform: scale(.7, 1) !important;--flat-between-transform: scale(1, 1.9) !important;--flat-left-transform: scale(1, var(--flat-half-width)) translateY(calc(var(--flat-half-translate) * -1)) !important;--flat-right-transform: scale(1, var(--flat-half-width)) translateY(var(--flat-half-translate)) !important}#keyboard .flat_key{background:linear-gradient(90deg,#bbb,#fff);z-index:1}#keyboard .flat_dark_key{background:linear-gradient(100deg,#111,#000)}#keyboard .sharp_key{transform:var(--sharp-transform);z-index:10;background:linear-gradient(140deg,#222,#000)}#keyboard .flat_key.between_sharps{transform:var(--flat-between-transform)}#keyboard .flat_key.left_sharp{transform:var(--flat-left-transform)}#keyboard .flat_key.right_sharp{transform:var(--flat-right-transform)}.sharp_key.pressed{transform:var(--sharp-transform) var(--pressed-transform)!important}.flat_key.between_sharps.pressed{transform:var(--flat-between-transform) var(--pressed-transform)!important}.flat_key.left_sharp.pressed{transform:var(--flat-left-transform) var(--pressed-transform)!important}.flat_key.right_sharp.pressed{transform:var(--flat-right-transform) var(--pressed-transform)!important}#keyboard{-webkit-user-select:none;user-select:none;transition:var(--music-mode-transition) transform;display:flex;flex-wrap:nowrap;align-items:stretch;--current-min-height: 7;min-height:calc(var(--current-min-height) * 1vw);background:#000;width:100%;touch-action:none;transform-origin:bottom center;--key-border-radius: .4vmin}#keyboard.mode_transform{transform:translateY(250%)}#keyboard.sideways{min-height:unset;height:100%;width:unset;min-width:calc(var(--current-min-height) * 1vh);flex-direction:column}#sequencer_controls{width:80%;position:relative;margin:auto auto 2px;--progress-bar-height: 2rem;--sequi-border-radius: var(--primary-border-radius)}#sequencer_controls #note_progress{border-radius:var(--progress-bar-height);background:linear-gradient(185deg,#306,var(--primary-color));height:100%;transition:width .1s linear;position:absolute;left:0}#sequencer_controls .note_progress_light{filter:brightness(3)}#sequencer_controls #note_time{position:relative;font-size:calc(var(--progress-bar-height) * .8);line-height:var(--progress-bar-height);text-align:center;color:var(--font-color);margin:.5rem;width:100%}#sequencer_controls #note_time:hover{cursor:pointer}#sequencer_controls .control_buttons{position:relative;display:inline-block;transition:all .1s ease}#sequencer_controls .control_buttons:active{transform:scale(var(--active-scale))}#sequencer_controls .control_buttons:hover{cursor:pointer}#sequencer_controls #note_progress_background{border-radius:var(--progress-bar-height);background:linear-gradient(90deg,#454545,#343434);height:var(--progress-bar-height);position:absolute;width:100%;overflow:hidden}#sequencer_controls .note_progress_background_light{background:linear-gradient(90deg,#ddd,#bbb)!important}#sequencer_controls .lyrics{position:fixed;top:0;right:0;width:30em;min-width:30%;max-width:100%;height:75%;z-index:256;display:flex;flex-direction:column;transform:scaleX(0);background:var(--top-color);transition:all .2s ease;visibility:hidden;border-radius:var(--sequi-border-radius)}.lyrics_title_wrapper{background:transparent;top:0;border-radius:var(--sequi-border-radius)}.lyrics_selector{width:100%;border:none;font-size:1.3rem;padding:.5em;background:transparent}.lyrics_selector option{background:#000}.lyrics_show{transform:scaleX(1)!important;visibility:visible!important}.lyrics_text{scroll-behavior:smooth;overflow-y:auto;max-height:80%;margin-left:3rem;margin-right:3rem;flex:2}.lyrics_text_gray{opacity:.5;font-style:italic;font-size:1rem;font-weight:700}.lyrics_text_highlight{font-weight:700;font-style:italic;color:var(--font-color);font-size:1rem}.lyrics details{overflow:scroll}.lyrics details summary{position:fixed;width:100%;text-align:center}.lyrics details div{margin-top:2rem;line-height:2rem}.lyrics details pre,.lyrics details i{display:inline}#player_info{width:100%;display:none;flex:1;align-items:center;justify-content:center;transform:translate(100%);transition:var(--music-mode-transition) transform}#player_info_background_image{width:100%;height:100%;position:absolute;background-position:center;background-repeat:no-repeat;background-size:cover;filter:blur(1rem);--bg-image: "undefined";background-image:var(--bg-image);z-index:-100;left:0}.player_info_note_icon img{max-width:100%;border-radius:1rem;width:20rem}.player_info_wrapper{display:flex;border-radius:1rem;align-items:center;max-width:90%;backdrop-filter:brightness(.3) blur(50px);flex-wrap:wrap;justify-content:center}.player_info_wrapper.light_mode{backdrop-filter:brightness(1.8) blur(50px)!important}.player_info_note_icon{margin:1rem}#player_info_detail{white-space:preserve}.player_info_detail_element{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between}.player_info_detail_element *{display:inline-block}.player_info_detail_element b{margin-right:1ch}.player_info_detail_element.hidden{display:none}.player_info_details_wrapper{max-width:100%;padding:1rem;display:flex;flex-direction:column}.marquee{overflow:hidden;max-width:30ch;white-space:nowrap}.marquee span{white-space:nowrap;padding-left:100%;animation:15s linear infinite marquee}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-100%)}}.player_info_wrapper *{text-align:center}.player_info_show{transform:translate(0)!important}.voice_meter{cursor:not-allowed;border-width:1px;border-style:solid;border-color:var(--border-color);min-width:7em;overflow:hidden}.voice_meter.editable{cursor:e-resize}.voice_meter .voice_meter_bar{position:relative;display:block;height:100%;margin-top:auto;background-color:var(--primary-color);border-radius:var(--notification-border-radius)}.voice_meter_light_color{filter:brightness(1.4)}.voice_meter_bar_smooth{transition:width ease-in-out .1s}.voice_meter .voice_meter_text{position:absolute;z-index:1;height:var(--voice-meter-height);line-height:var(--voice-meter-height);top:0;width:100%;text-align:center;text-shadow:1px 1px 2px #000;-webkit-user-select:none;user-select:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voice_meter .voice_meter_text_light{color:#000}.locked_meter{color:red}.voice_selector{border:#777 1px solid;line-height:var(--voice-meter-height);background-color:var(--synthui-background);font-size:1em;font-weight:700;min-width:8em;text-align-last:center}.voice_selector_light{border:#111 1px solid;background:linear-gradient(170deg,#bbb,#fff);color:#000}.voice_selector:hover{cursor:pointer;background:#111;color:#fff;text-shadow:0 0 5px white}.voice_selector_light:hover{background:#fff;color:#444}.voice_selector .selector_option{padding:5px;background-color:#111;text-align:left;text-shadow:none!important}.voice_selector optgroup{font-weight:700;font-style:normal;background-color:#141414;text-align:left;text-shadow:none!important}.voice_selector .selector_option:hover{background-color:#222;cursor:pointer}.selector_options:hover{display:block}.locked_selector{color:red}.locked_selector:hover+.voice_reset{visibility:visible;min-width:var(--voice-meter-height)}.synthui_button{background:#000;border:1px #333 solid;margin:var(--synthui-margin);border-radius:var(--synthui-border-radius);font-size:1em;min-height:var(--voice-meter-height);white-space:nowrap;color:var(--font-color);flex:1;display:flex;align-items:center;justify-content:center;transition:all .1s ease}.synthui_button:hover{cursor:pointer;background:#111;color:#fff;text-shadow:0 0 5px white}.synthui_button:active{filter:brightness(.9);transform:scale(var(--active-scale))}.synthui_button_light{border-radius:var(--synthui-border-radius);background:#fff;border:1px #ccc solid;margin:var(--synthui-margin);font-size:1em;min-height:var(--voice-meter-height);white-space:nowrap;color:#333;flex:1;text-shadow:1px 1px 2px #000;display:flex;align-items:center;justify-content:center;transition:all .1s ease}.synthui_button_light:hover{cursor:pointer;color:#666;text-shadow:0 0 5px #666}.synthui_button_light:active{filter:brightness(.9);transform:scale(var(--active-scale))}#synthetizer_controls{--voice-meter-height: 2.5em;--synthui-background: black;--synthui-border-radius: var(--primary-border-radius)}#synthetizer_controls *{user-select:none;-webkit-user-select:none;--synthui-margin: .2em}.wrapper{height:80%;padding:2%;display:flex;flex-wrap:wrap;justify-content:space-evenly}.controls_wrapper{display:flex;flex-wrap:wrap;align-items:stretch;justify-content:center;margin:1em}.main_controller_element{margin-left:.5em;margin-right:.5em}.controller_element{position:relative;height:var(--voice-meter-height);flex:1;border-radius:var(--synthui-border-radius);margin:var(--synthui-margin)}.synthui_controller{left:0;display:none;position:absolute;background:var(--synthui-background);top:100%;border-radius:0 0 1em 1em;transform:scaleX(0);transition:transform .2s ease;width:100%;z-index:127;padding:.5em}.synthui_controller_light{background:linear-gradient(115deg,#c8c8c8,#fff,#c8c8c8)!important}.synthui_controller_show{transform:scaleX(1)!important}.channel_controller{display:flex;align-items:stretch;flex-wrap:wrap;transition:.2s ease}.channel_controller.no_voices{filter:brightness(.8)}.mute_button{flex:0;display:flex;justify-content:center;align-items:center;border:#777 1px solid;min-width:var(--voice-meter-height)}.mute_button_light *{color:#000}.mute_button svg{transition:transform .2s ease}.mute_button:active{filter:brightness(.8);transform:scale(var(--active-scale))}.mute_button:hover{cursor:pointer}.mute_button:hover svg{transform:scale(1.1) rotate(5deg)}.mute_button:hover path{filter:drop-shadow(0 0 1px currentColor)}.voice_reset{flex:0;min-width:0;display:flex;visibility:hidden;justify-content:center;align-items:center;border:#777 1px solid;transition:min-width 50ms ease}.voice_reset_light *{color:#000}.voice_reset:hover{visibility:visible;min-width:var(--voice-meter-height);cursor:pointer}.soundfont_mixer{top:100%;position:absolute;background:var(--top-color);padding:.5em;border-radius:0 0 1em 1em;width:50%;left:25%;margin:auto;min-width:fit-content}.soundfont_mixer_list{margin:1em;border-radius:.3em;min-height:4em}.soundfont_mixer .soundfont_entry{background:var(--top-buttons-color);margin:.2em;border-radius:var(--primary-border-radius);text-align:start;width:fit-content;display:flex;padding:.3em;justify-content:center}.soundfont_mixer .soundfont_entry_wrapper{display:flex;justify-content:space-between}.soundfont_mixer .soundfont_entry_button:hover{cursor:pointer}.soundfont_mixer .action_buttons_wrapper{display:flex;justify-content:space-between}.notification button,.notification_file_button{background:var(--top-color);padding:.5rem;border:solid 1px #333;margin:.5rem;cursor:pointer;border-radius:var(--notification-border-radius);font-size:var(--notification-font-size);min-width:fit-content;transition:transform .1s ease}.notification button:active,.notification_file_button:active{transform:scale(var(--active-scale))}.notification .green_button{color:green;border-color:green}.notification p{margin:1rem;font-size:var(--notification-font-size)}.notification label{font-size:var(--notification-font-size)}.notification_input_wrapper{display:flex;justify-content:space-between;align-items:center;margin:.5rem}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.notification input[type=number],.notification input[type=text]{display:block;background:var(--top-buttons-color);border:solid 1px #333;font-size:1em;padding:var(--notification-border-radius);border-radius:var(--notification-border-radius);width:5rem;-moz-appearance:textfield}.notification input[type=text]{width:auto!important}.notification_slider_wrapper{display:flex;justify-content:space-between;margin:.5rem}.notification_slider_wrapper label{margin-right:2rem}.notification_slider_wrapper .settings_visual_wrapper{margin:0!important}.notification_slider_wrapper .settings_slider_wrapper{width:auto!important}.notification .notification_progress_background{height:1rem;margin:1rem;background:var(--track-color);border:solid 1px var(--track-border-color);border-radius:1rem;box-sizing:content-box}.notification .notification_progress{height:100%;width:0;background:var(--primary-color);border:solid 1px var(--border-color);border-radius:1rem;top:-1px;left:-1px;position:relative;transition:.1s width ease;box-sizing:content-box}.notification_switch_wrapper{display:flex;justify-content:space-between;align-items:center;margin:.5rem}.notification_switch input{display:none}.notification_switch{--track-height: 1.6rem;--track-width: 2.2rem;--thumb-size: 1.5rem;--track-radius: .3em;position:relative;display:inline-block;width:var(--track-width);height:var(--track-height)}.notification_switch_slider{position:absolute;cursor:pointer;inset:50% 0 0;background-color:var(--track-color);border:solid var(--track-border-color) 1px;transition:.2s;border-radius:var(--track-radius);transform:translateY(-50%)}.notification_switch_slider:before{position:absolute;content:"";height:var(--thumb-size);width:var(--thumb-size);left:calc(var(--thumb-size) / -4);top:50%;transform:translateY(-50%);background-color:var(--track-color);transition:.2s var(--bouncy-transition),border .1s;border-radius:50%;border:solid var(--track-border-color) 1px;box-shadow:0 0 .125rem #0003}.notification_switch_slider:hover:before{border:solid var(--border-color) 1px;filter:brightness(1.2)}input:checked+.notification_switch_slider{background-color:var(--primary-color);border:var(--border-color) 1px solid}input:checked+.notification_switch_slider:before{transform:translate(calc(var(--track-width) - var(--thumb-size) * .66),-50%)}.notification{--notification-border-radius: var(--primary-border-radius);--notification-font-size: 1.3rem;background:var(--top-color);color:var(--font-color);position:fixed;border:solid 1px #333;border-radius:var(--notification-border-radius);display:flex;justify-content:center;flex-direction:column;align-items:center;font-size:large;top:0;z-index:var(--top-index);left:50%;transform:translate(-50%,5rem);transition:transform .5s ease,opacity .5s ease;opacity:0;animation-duration:.5s;animation-fill-mode:forwards;box-shadow:#333 0 0 10px;width:max-content;max-width:80%}.notification.drop{opacity:1;transform:translate(-50%,10rem)}.notification .top{width:100%;display:flex;justify-content:space-between;border-bottom:solid 1px #555;align-items:center}.notification h2{text-align:start;line-height:2rem;margin:1rem}.notification_content{margin:1rem;min-width:90%}.notification .close_btn{text-align:end;font-weight:bolder;font-size:2rem;margin-right:1rem}.notification .close_btn:hover{cursor:pointer}#note_canvas{width:100%;filter:saturate(1.23);flex:1;background-size:cover;min-height:0;z-index:1}#note_canvas.sideways{height:100%!important;width:unset!important;min-height:unset!important}#note_canvas.light_mode{background:linear-gradient(45deg,var(--top-buttons-color-start),var(--top-buttons-color-end))}.top_part{--top-part-border-radius: 1.5rem;position:relative;background:var(--top-color);border-radius:0 0 var(--top-part-border-radius) var(--top-part-border-radius);padding:3px;display:flex;flex-wrap:wrap;align-content:space-around;justify-content:space-around;align-items:center;z-index:50;transform-origin:top;transform:scaleY(1);transition:var(--hide-top-duration) ease}.top_part *{user-select:none;-webkit-user-select:none}.top_part_hidden{position:fixed;width:100%;transform:scaleY(0)}.top_part.settings_shown{border-radius:0 0 0 var(--top-part-border-radius)}.top_part.synthui_shown{border-radius:0}input[type=file]{display:none}#title{user-select:text;position:relative;z-index:1;margin:.2em auto;display:block;line-height:100%;font-weight:400;text-shadow:0 0 5px var(--font-color)}#progress_bar{background:#206;display:block;position:absolute;width:0;height:2.1em;border-radius:var(--primary-border-radius);margin-left:auto;margin-right:auto;margin-top:.4em;padding-top:5px;padding-bottom:5px;top:0;left:0;right:0;z-index:0;transition:width ease .5s}.midi_and_sf_controller{position:relative;display:flex;width:fit-content;margin:auto auto 5px;flex-wrap:wrap;justify-content:space-around}.midi_and_sf_controller label{padding:6px;border-radius:var(--primary-border-radius);cursor:pointer;background:var(--top-buttons-color);font-weight:bolder;margin:5px;display:flex;align-items:center;justify-content:center;transition:all .1s ease}.midi_and_sf_controller label:active{filter:brightness(.9);transform:scale(var(--active-scale))}#sf_selector option{background:#000;text-align:center}#sf_selector{display:block;border:none;font-size:1em;background:var(--top-buttons-color);text-align:center;margin:5px;padding:6px;border-radius:var(--primary-border-radius);font-weight:bolder}.show_top_button{background:var(--top-buttons-color);width:fit-content;padding:.1em 2em;border-radius:0 0 var(--primary-border-radius) var(--primary-border-radius);transition:all calc(var(--hide-top-duration) * 2) var(--bouncy-transition);transition-delay:calc(var(--hide-top-duration) / 2);transform-origin:top;margin:auto;display:none;opacity:0;position:absolute;z-index:100;left:0;right:0;cursor:pointer}.show_top_button:hover{filter:brightness(1.1);transform:scaleY(1.3)}.show_top_button.shown{opacity:1}#keyboard_canvas_wrapper{display:flex;flex-direction:column;flex:1;min-height:0;width:100%;transition:var(--music-mode-transition) transform}#keyboard_canvas_wrapper.out_animation{transform:translate(-100%)}#keyboard_canvas_wrapper.upwards{flex-direction:column-reverse}#keyboard_canvas_wrapper.right_to_left{flex-direction:row}#keyboard_canvas_wrapper.left_to_right{flex-direction:row-reverse}*{--top-buttons-color-start: #222;--top-buttons-color-end: #333;--top-buttons-color: linear-gradient(201deg, var(--top-buttons-color-start), var(--top-buttons-color-end));--hide-top-duration: .2s;--font-color: #ccc;--top-index: 32767;--top-color-start: #101010;--top-color-end: #212121;--top-color: linear-gradient(31deg, var(--top-color-start), var(--top-color-end));--primary-border-radius: .5rem;--active-scale: .9;--bouncy-transition: cubic-bezier(.68,-.55,.27,1.55);--music-mode-transition: .5s ease;font-family:system-ui,Noto Sans,Open Sans,sans-serif;color:var(--font-color);text-align:center;margin:0;box-sizing:border-box}pre{font-family:monospace!important}html,body{height:100lvh;width:100%;background:#000;overflow-x:clip;scrollbar-width:thin}body.load{transition:background .2s}body.no_scroll,html.no_scroll{max-height:100%!important;height:100%!important;overflow:hidden!important}.spessasynth_main{display:flex;flex-direction:column;height:100%;--primary-color: #510087;--border-color: #6e00b7;--track-color: #333;--track-border-color: #444;--shadow-color: #000}.spessasynth_main.light_mode{--primary-color: #a93bff;--border-color: #510087;--track-color: #ccc;--track-border-color: #444;--shadow-color: #fff}a{text-decoration:none;color:#546fff}::-webkit-scrollbar{background-color:#000;width:.3em}::-webkit-scrollbar-thumb{background-color:#777;border-radius:50px}.bottom_part{margin-top:5px}button{-webkit-user-select:none;user-select:none}.hidden{display:none!important}.secret_video{position:absolute;width:100%;left:0;z-index:0}.loading{flex-direction:column;display:flex;justify-content:center;align-items:center;position:fixed;width:100%;height:100%;z-index:var(--top-index);left:0;background:var(--top-color);transition:all 1s var(--bouncy-transition);cursor:wait}.loading .loading_icon{max-width:100%;max-height:100%;margin:1em;animation:spin 1s ease-in-out infinite}.loading.done{transform:translateY(-100%)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}} +.settings_slider_wrapper{display:flex;align-items:center;width:100%;justify-content:center;margin-top:.5rem!important;position:relative;--track-height: .8rem;--thumb-size: 1.5rem;--active-brightness: .75;--slider-border-thickness: 1px}.settings_visual_wrapper{--visual-width: 0%;display:flex;position:relative;margin:0 1rem 1rem 0;flex-grow:1;height:var(--track-height);transition:all .1s;cursor:e-resize;background:var(--track-color);border:solid var(--slider-border-thickness) var(--track-border-color);border-radius:var(--track-height)}.settings_visual_wrapper:has(.settings_slider:active){filter:brightness(var(--active-brightness))}.settings_slider{cursor:e-resize;width:100%;opacity:0;-webkit-appearance:none;top:calc((var(--thumb-size) / 4) * -1);height:var(--thumb-size);position:relative}.settings_slider:hover{filter:brightness(1.2)}.settings_slider:focus{outline:none}.settings_slider+span{margin-bottom:1rem}.settings_slider+span{min-width:5em;text-align:center}.settings_slider_progress{width:calc(var(--visual-width) + 2 * var(--slider-border-thickness));position:absolute;background:var(--primary-color);border:solid var(--slider-border-thickness) var(--border-color);height:calc(100% + 2 * var(--slider-border-thickness));border-radius:var(--track-height);top:calc(-1 * var(--slider-border-thickness));left:calc(-1 * var(--slider-border-thickness))}.settings_slider_thumb{border:solid var(--slider-border-thickness) var(--track-border-color);background:var(--track-color);height:var(--thumb-size);width:var(--thumb-size);border-radius:50%;position:absolute;top:-.4rem;left:calc(var(--visual-width) - var(--thumb-size) / 2)}.settings_slider_wrapper:hover .settings_slider_thumb{border-color:var(--primary-color)}.settings_slider_transition .settings_slider_thumb,.settings_slider_transition .settings_slider_progress{transition:all .2s ease}.seamless_button{font-size:larger;background:transparent;margin:auto;border:none;-webkit-user-select:none;user-select:none}.settings_button{display:flex;align-items:center;justify-content:center}.settings_button span{text-align:end;font-size:larger}.seamless_button:hover{cursor:pointer;text-shadow:0 0 5px white}.gear{transition:all .3s ease;padding:5px;align-content:center;align-items:center;justify-content:center;display:flex;height:0}.settings_button:hover .gear{transform:rotate(45deg)}.settings_groups_parent{display:flex;flex-wrap:wrap;justify-content:space-evenly}.settings_group{border-radius:var(--settings-border-radius);border:solid #333 1px;margin:1em;padding:1em;background:var(--top-buttons-color);transition:.2s}.settings_group:hover{filter:brightness(1.2);box-shadow:0 0 5px var(--top-buttons-color-end)}.settings_group label,.settings_group p{margin-top:1em;display:block}.switch_label{display:flex;justify-content:space-between;margin-top:1em}.switch_label label{margin-right:1em;font-size:large}.switch input{display:none}.switch{--track-height: 1.6rem;--track-width: 2.2rem;--thumb-size: 1.5rem;--track-radius: .3em;position:relative;display:inline-block;width:var(--track-width);height:var(--track-height)}.switch_slider{position:absolute;cursor:pointer;inset:50% 0 0;background-color:var(--track-color);border:solid var(--track-border-color) 1px;transition:.2s;border-radius:var(--track-radius);transform:translateY(-50%)}.switch_slider:before{position:absolute;content:"";height:var(--thumb-size);width:var(--thumb-size);left:calc(var(--thumb-size) / -4);top:50%;transform:translateY(-50%);background-color:var(--track-color);transition:.2s var(--bouncy-transition),border .1s;border-radius:50%;border:solid var(--track-border-color) 1px;box-shadow:0 0 .125rem #0003}.switch_slider:hover:before{border:solid var(--border-color) 1px;filter:brightness(1.2)}input:checked+.switch_slider{background-color:var(--primary-color);border:var(--border-color) 1px solid}input:checked+.switch_slider:before{transform:translate(calc(var(--track-width) - var(--thumb-size) * .66),-50%)}.switch:active .switch_slider:before{transform:translate(calc(var(--track-width) - var(--thumb-size) * 1.2),-50%)}.switch:active input:checked+.switch_slider:before{transform:translate(calc(var(--track-width) - var(--thumb-size) * .95),-50%)}.settings_menu{--settings-border-radius: 1rem;position:absolute;top:100%;right:0;min-width:30%;max-width:100%;min-height:100%;z-index:256;transform:scaleX(0);background:var(--top-color);transition:transform .2s ease;scroll-behavior:smooth;overflow-y:auto;display:none;border-radius:0 0 var(--settings-border-radius) var(--settings-border-radius)}.settings_menu_show{display:block!important;transform:scaleX(1)!important}.settings_menu *{-webkit-user-select:none;user-select:none}.settings_menu select{background:transparent;border:solid 1px transparent;font-size:larger;border-radius:var(--settings-border-radius);padding:.5rem}.settings_menu select option{background:#000;color:#fff;border:none}.settings_menu select:hover{cursor:pointer;text-shadow:0 0 5px white;border:1px solid var(--top-buttons-color-end);background:var(--top-buttons-color)}#keyboard .key{-webkit-user-select:none;user-select:none;touch-action:none;flex:1;transition:transform .1s ease,border-radius .5s ease;border-radius:0 0 var(--key-border-radius) var(--key-border-radius);position:relative;transform-origin:center top;--pressed-transform-skew: .0007;--pressed-transform: matrix3d( 1,0,0, 0,0,1, 0,var(--pressed-transform-skew),0, 0,1,0, 0,0,0, 1);cursor:default;--flat-half-width: 1.4;--flat-half-translate: 18%;--sharp-transform: scale(1, .7);--flat-between-transform: scale(1.9, 1);--flat-left-transform: scale(var(--flat-half-width), 1) translateX(calc(var(--flat-half-translate) * -1));--flat-right-transform: scale(var(--flat-half-width), 1) translateX(var(--flat-half-translate))}#keyboard.sideways .key{border-radius:var(--key-border-radius) 0 0 var(--key-border-radius)!important;transform-origin:right center!important;--pressed-transform: matrix3d( 1,0,0, calc(var(--pressed-transform-skew) * -1),0,1, 0,0,0, 0,1,0, 0,0,0 ,1) !important;--sharp-transform: scale(.7, 1) !important;--flat-between-transform: scale(1, 1.9) !important;--flat-left-transform: scale(1, var(--flat-half-width)) translateY(calc(var(--flat-half-translate) * -1)) !important;--flat-right-transform: scale(1, var(--flat-half-width)) translateY(var(--flat-half-translate)) !important}#keyboard .flat_key{background:linear-gradient(90deg,#bbb,#fff);z-index:1}#keyboard .flat_dark_key{background:linear-gradient(100deg,#111,#000)}#keyboard .sharp_key{transform:var(--sharp-transform);z-index:10;background:linear-gradient(140deg,#222,#000)}#keyboard .flat_key.between_sharps{transform:var(--flat-between-transform)}#keyboard .flat_key.left_sharp{transform:var(--flat-left-transform)}#keyboard .flat_key.right_sharp{transform:var(--flat-right-transform)}.sharp_key.pressed{transform:var(--sharp-transform) var(--pressed-transform)!important}.flat_key.between_sharps.pressed{transform:var(--flat-between-transform) var(--pressed-transform)!important}.flat_key.left_sharp.pressed{transform:var(--flat-left-transform) var(--pressed-transform)!important}.flat_key.right_sharp.pressed{transform:var(--flat-right-transform) var(--pressed-transform)!important}#keyboard{-webkit-user-select:none;user-select:none;transition:var(--music-mode-transition) transform;display:flex;flex-wrap:nowrap;align-items:stretch;--current-min-height: 7;min-height:calc(var(--current-min-height) * 1vw);background:#000;width:100%;touch-action:none;transform-origin:bottom center;--key-border-radius: .4vmin}#keyboard.mode_transform{transform:translateY(250%)}#keyboard.sideways{min-height:unset;height:100%;width:unset;min-width:calc(var(--current-min-height) * 1vh);flex-direction:column}#sequencer_controls{width:80%;position:relative;margin:auto auto 2px;--progress-bar-height: 2rem;--sequi-border-radius: var(--primary-border-radius)}#sequencer_controls #note_progress{border-radius:var(--progress-bar-height);background:linear-gradient(185deg,#306,var(--primary-color));height:100%;transition:width .1s linear;position:absolute;left:0}#sequencer_controls .note_progress_light{filter:brightness(3)}#sequencer_controls #note_time{position:relative;font-size:calc(var(--progress-bar-height) * .8);line-height:var(--progress-bar-height);text-align:center;color:var(--font-color);margin:.5rem;width:100%}#sequencer_controls #note_time:hover{cursor:pointer}#sequencer_controls .control_buttons{position:relative;display:inline-block;transition:all .1s ease}#sequencer_controls .control_buttons:active{transform:scale(var(--active-scale))}#sequencer_controls .control_buttons:hover{cursor:pointer}#sequencer_controls #note_progress_background{border-radius:var(--progress-bar-height);background:linear-gradient(90deg,#454545,#343434);height:var(--progress-bar-height);position:absolute;width:100%;overflow:hidden}#sequencer_controls .note_progress_background_light{background:linear-gradient(90deg,#ddd,#bbb)!important}#sequencer_controls .lyrics{position:fixed;top:0;right:0;width:30em;min-width:30%;max-width:100%;height:75%;z-index:256;display:flex;flex-direction:column;transform:scaleX(0);background:var(--top-color);transition:all .2s ease;visibility:hidden;border-radius:var(--sequi-border-radius)}.lyrics_title_wrapper{background:transparent;top:0;border-radius:var(--sequi-border-radius)}.lyrics_selector{width:100%;border:none;font-size:1.3rem;padding:.5em;background:transparent}.lyrics_selector option{background:#000}.lyrics_show{transform:scaleX(1)!important;visibility:visible!important}.lyrics_text{scroll-behavior:smooth;overflow-y:auto;max-height:80%;margin-left:3rem;margin-right:3rem;flex:2}.lyrics_text_gray{opacity:.5;font-style:italic;font-size:1rem;font-weight:700}.lyrics_text_highlight{font-weight:700;font-style:italic;color:var(--font-color);font-size:1rem}.lyrics details{overflow:scroll}.lyrics details summary{position:fixed;width:100%;text-align:center}.lyrics details div{margin-top:2rem;line-height:2rem}.lyrics details pre,.lyrics details i{display:inline}#player_info{width:100%;display:none;flex:1;align-items:center;justify-content:center;transform:translate(100%);transition:var(--music-mode-transition) transform}#player_info_background_image{width:100%;height:100%;position:absolute;background-position:center;background-repeat:no-repeat;background-size:cover;filter:blur(1rem);--bg-image: "undefined";background-image:var(--bg-image);z-index:-100;left:0}.player_info_note_icon img{max-width:100%;border-radius:1rem;width:20rem}.player_info_wrapper{display:flex;border-radius:1rem;align-items:center;max-width:90%;backdrop-filter:brightness(.3) blur(50px);flex-wrap:wrap;justify-content:center}.player_info_wrapper.light_mode{backdrop-filter:brightness(1.8) blur(50px)!important}.player_info_note_icon{margin:1rem}#player_info_detail{white-space:preserve}.player_info_detail_element{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between}.player_info_detail_element *{display:inline-block}.player_info_detail_element b{margin-right:1ch}.player_info_detail_element.hidden{display:none}.player_info_details_wrapper{max-width:100%;padding:1rem;display:flex;flex-direction:column}.marquee{overflow:hidden;max-width:30ch;white-space:nowrap}.marquee span{white-space:nowrap;padding-left:100%;animation:15s linear infinite marquee}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-100%)}}.player_info_wrapper *{text-align:center}.player_info_show{transform:translate(0)!important}.voice_meter{cursor:not-allowed;border-width:1px;border-style:solid;border-color:var(--border-color);min-width:7em;overflow:hidden}.voice_meter.editable{cursor:e-resize}.voice_meter .voice_meter_bar{position:relative;display:block;height:100%;margin-top:auto;background-color:var(--primary-color);border-radius:var(--notification-border-radius)}.voice_meter_light_color{filter:brightness(1.4)}.voice_meter_bar_smooth{transition:width ease-in-out .1s}.voice_meter .voice_meter_text{position:absolute;z-index:1;height:var(--voice-meter-height);line-height:var(--voice-meter-height);top:0;width:100%;text-align:center;text-shadow:1px 1px 2px #000;-webkit-user-select:none;user-select:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voice_meter .voice_meter_text_light{color:#000}.locked_meter{color:red}.voice_selector{border:#777 1px solid;line-height:var(--voice-meter-height);background-color:var(--synthui-background);font-size:1em;font-weight:700;min-width:8em;text-align-last:center}.voice_selector_light{border:#111 1px solid;background:linear-gradient(170deg,#bbb,#fff);color:#000}.voice_selector:hover{cursor:pointer;background:#111;color:#fff;text-shadow:0 0 5px white}.voice_selector_light:hover{background:#fff;color:#444}.voice_selector .selector_option{padding:5px;background-color:#111;text-align:left;text-shadow:none!important}.voice_selector optgroup{font-weight:700;font-style:normal;background-color:#141414;text-align:left;text-shadow:none!important}.voice_selector .selector_option:hover{background-color:#222;cursor:pointer}.selector_options:hover{display:block}.locked_selector{color:red}.locked_selector:hover+.voice_reset{visibility:visible;min-width:var(--voice-meter-height)}.synthui_button{background:#000;border:1px #333 solid;margin:var(--synthui-margin);border-radius:var(--synthui-border-radius);font-size:1em;min-height:var(--voice-meter-height);white-space:nowrap;color:var(--font-color);flex:1;display:flex;align-items:center;justify-content:center;transition:all .1s ease}.synthui_button:hover{cursor:pointer;background:#111;color:#fff;text-shadow:0 0 5px white}.synthui_button:active{filter:brightness(.9);transform:scale(var(--active-scale))}.synthui_button_light{border-radius:var(--synthui-border-radius);background:#fff;border:1px #ccc solid;margin:var(--synthui-margin);font-size:1em;min-height:var(--voice-meter-height);white-space:nowrap;color:#333;flex:1;text-shadow:1px 1px 2px #000;display:flex;align-items:center;justify-content:center;transition:all .1s ease}.synthui_button_light:hover{cursor:pointer;color:#666;text-shadow:0 0 5px #666}.synthui_button_light:active{filter:brightness(.9);transform:scale(var(--active-scale))}#synthetizer_controls{--voice-meter-height: 2.5em;--synthui-background: black;--synthui-border-radius: var(--primary-border-radius)}#synthetizer_controls *{user-select:none;-webkit-user-select:none;--synthui-margin: .2em}.wrapper{height:80%;padding:2%;display:flex;flex-wrap:wrap;justify-content:space-evenly}.controls_wrapper{display:flex;flex-wrap:wrap;align-items:stretch;justify-content:center;margin:1em}.main_controller_element{margin-left:.5em;margin-right:.5em}.controller_element{position:relative;height:var(--voice-meter-height);flex:1;border-radius:var(--synthui-border-radius);margin:var(--synthui-margin)}.synthui_controller{left:0;display:none;position:absolute;background:var(--synthui-background);top:100%;border-radius:0 0 1em 1em;transform:scaleX(0);transition:transform .2s ease;width:100%;z-index:127;padding:.5em}.synthui_controller_light{background:linear-gradient(115deg,#c8c8c8,#fff,#c8c8c8)!important}.synthui_controller_show{transform:scaleX(1)!important}.channel_controller{display:flex;align-items:stretch;flex-wrap:wrap;transition:.2s ease}.channel_controller.no_voices{filter:brightness(.8)}.mute_button{flex:0;display:flex;justify-content:center;align-items:center;border:#777 1px solid;min-width:var(--voice-meter-height)}.mute_button_light *{color:#000}.mute_button svg{transition:transform .2s ease}.mute_button:active{filter:brightness(.8);transform:scale(var(--active-scale))}.mute_button:hover{cursor:pointer}.mute_button:hover svg{transform:scale(1.1) rotate(5deg)}.mute_button:hover path{filter:drop-shadow(0 0 1px currentColor)}.voice_reset{flex:0;min-width:0;display:flex;visibility:hidden;justify-content:center;align-items:center;border:#777 1px solid;transition:min-width 50ms ease}.voice_reset_light *{color:#000}.voice_reset:hover{visibility:visible;min-width:var(--voice-meter-height);cursor:pointer}.soundfont_mixer{top:100%;position:absolute;background:var(--top-color);padding:.5em;border-radius:0 0 1em 1em;width:50%;left:25%;margin:auto;min-width:fit-content}.soundfont_mixer_list{margin:1em;border-radius:.3em;min-height:4em}.soundfont_mixer .soundfont_entry{background:var(--top-buttons-color);margin:.2em;border-radius:var(--primary-border-radius);text-align:start;width:fit-content;display:flex;padding:.3em;justify-content:center}.soundfont_mixer .soundfont_entry_wrapper{display:flex;justify-content:space-between}.soundfont_mixer .soundfont_entry_button:hover{cursor:pointer}.soundfont_mixer .action_buttons_wrapper{display:flex;justify-content:space-between}.notification button,.notification_file_button{background:var(--top-color);padding:.5rem;border:solid 1px #333;margin:.5rem;cursor:pointer;border-radius:var(--notification-border-radius);font-size:var(--notification-font-size);min-width:fit-content;transition:transform .1s ease}.notification button:active,.notification_file_button:active{transform:scale(var(--active-scale))}.notification .green_button{color:green;border-color:green}.notification p{margin:1rem;font-size:var(--notification-font-size)}.notification label{font-size:var(--notification-font-size)}.notification_input_wrapper{display:flex;justify-content:space-between;align-items:center;margin:.5rem}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.notification input[type=number],.notification input[type=text]{display:block;background:var(--top-buttons-color);border:solid 1px #333;font-size:1em;padding:var(--notification-border-radius);border-radius:var(--notification-border-radius);width:5rem;-moz-appearance:textfield}.notification input[type=text]{width:auto!important}.notification_slider_wrapper{display:flex;justify-content:space-between;margin:.5rem}.notification_slider_wrapper label{margin-right:2rem}.notification_slider_wrapper .settings_visual_wrapper{margin:0!important}.notification_slider_wrapper .settings_slider_wrapper{width:auto!important}.notification .notification_progress_background{height:1rem;margin:1rem;background:var(--track-color);border:solid 1px var(--track-border-color);border-radius:1rem;box-sizing:content-box}.notification .notification_progress{height:100%;width:0;background:var(--primary-color);border:solid 1px var(--border-color);border-radius:1rem;top:-1px;left:-1px;position:relative;transition:.1s width ease;box-sizing:content-box}.notification_switch_wrapper{display:flex;justify-content:space-between;align-items:center;margin:.5rem}.notification_switch input{display:none}.notification_switch{--track-height: 1.6rem;--track-width: 2.2rem;--thumb-size: 1.5rem;--track-radius: .3em;position:relative;display:inline-block;width:var(--track-width);height:var(--track-height)}.notification_switch_slider{position:absolute;cursor:pointer;inset:50% 0 0;background-color:var(--track-color);border:solid var(--track-border-color) 1px;transition:.2s;border-radius:var(--track-radius);transform:translateY(-50%)}.notification_switch_slider:before{position:absolute;content:"";height:var(--thumb-size);width:var(--thumb-size);left:calc(var(--thumb-size) / -4);top:50%;transform:translateY(-50%);background-color:var(--track-color);transition:.2s var(--bouncy-transition),border .1s;border-radius:50%;border:solid var(--track-border-color) 1px;box-shadow:0 0 .125rem #0003}.notification_switch_slider:hover:before{border:solid var(--border-color) 1px;filter:brightness(1.2)}input:checked+.notification_switch_slider{background-color:var(--primary-color);border:var(--border-color) 1px solid}input:checked+.notification_switch_slider:before{transform:translate(calc(var(--track-width) - var(--thumb-size) * .66),-50%)}.notification{--notification-border-radius: var(--primary-border-radius);--notification-font-size: 1.3rem;background:var(--top-color);color:var(--font-color);position:fixed;border:solid 1px #333;border-radius:var(--notification-border-radius);display:flex;justify-content:center;flex-direction:column;align-items:center;font-size:large;top:0;z-index:var(--top-index);left:50%;transform:translate(-50%,5rem);transition:transform .5s ease,opacity .5s ease;opacity:0;animation-duration:.5s;animation-fill-mode:forwards;box-shadow:#333 0 0 10px;width:max-content}.notification.drop{opacity:1;transform:translate(-50%,10rem)}.notification .top{width:100%;display:flex;justify-content:space-between;border-bottom:solid 1px #555;align-items:center}.notification h2{text-align:start;line-height:2rem;margin:1rem}.notification_content{margin:1rem;min-width:90%;display:flex;flex-wrap:wrap;flex-direction:column}.notification .close_btn{text-align:end;font-weight:bolder;font-size:2rem;margin-right:1rem}.notification .close_btn:hover{cursor:pointer}#note_canvas{width:100%;filter:saturate(1.23);flex:1;background-size:cover;min-height:0;z-index:1}#note_canvas.sideways{height:100%!important;width:unset!important;min-height:unset!important}#note_canvas.light_mode{background:linear-gradient(45deg,var(--top-buttons-color-start),var(--top-buttons-color-end))}.top_part{--top-part-border-radius: 1.5rem;position:relative;background:var(--top-color);border-radius:0 0 var(--top-part-border-radius) var(--top-part-border-radius);padding:3px;display:flex;flex-wrap:wrap;align-content:space-around;justify-content:space-around;align-items:center;z-index:50;transform-origin:top;transform:scaleY(1);transition:var(--hide-top-duration) ease}.top_part *{user-select:none;-webkit-user-select:none}.top_part_hidden{position:fixed;width:100%;transform:scaleY(0)}.top_part.settings_shown{border-radius:0 0 0 var(--top-part-border-radius)}.top_part.synthui_shown{border-radius:0}input[type=file]{display:none}#title{user-select:text;position:relative;z-index:1;margin:.2em auto;display:block;line-height:100%;font-weight:400;text-shadow:0 0 5px var(--font-color)}#progress_bar{background:#206;display:block;position:absolute;width:0;height:2.1em;border-radius:var(--primary-border-radius);margin-left:auto;margin-right:auto;margin-top:.4em;padding-top:5px;padding-bottom:5px;top:0;left:0;right:0;z-index:0;transition:width ease .5s}.midi_and_sf_controller{position:relative;display:flex;width:fit-content;margin:auto auto 5px;flex-wrap:wrap;justify-content:space-around}.midi_and_sf_controller label{padding:6px;border-radius:var(--primary-border-radius);cursor:pointer;background:var(--top-buttons-color);font-weight:bolder;margin:5px;display:flex;align-items:center;justify-content:center;transition:all .1s ease}.midi_and_sf_controller label:active{filter:brightness(.9);transform:scale(var(--active-scale))}#sf_selector option{background:#000;text-align:center}#sf_selector{display:block;border:none;font-size:1em;background:var(--top-buttons-color);text-align:center;margin:5px;padding:6px;border-radius:var(--primary-border-radius);font-weight:bolder}.show_top_button{background:var(--top-buttons-color);width:fit-content;padding:.1em 2em;border-radius:0 0 var(--primary-border-radius) var(--primary-border-radius);transition:all calc(var(--hide-top-duration) * 2) var(--bouncy-transition);transition-delay:calc(var(--hide-top-duration) / 2);transform-origin:top;margin:auto;display:none;opacity:0;position:absolute;z-index:100;left:0;right:0;cursor:pointer}.show_top_button:hover{filter:brightness(1.1);transform:scaleY(1.3)}.show_top_button.shown{opacity:1}#keyboard_canvas_wrapper{display:flex;flex-direction:column;flex:1;min-height:0;width:100%;transition:var(--music-mode-transition) transform}#keyboard_canvas_wrapper.out_animation{transform:translate(-100%)}#keyboard_canvas_wrapper.upwards{flex-direction:column-reverse}#keyboard_canvas_wrapper.right_to_left{flex-direction:row}#keyboard_canvas_wrapper.left_to_right{flex-direction:row-reverse}*{--top-buttons-color-start: #222;--top-buttons-color-end: #333;--top-buttons-color: linear-gradient(201deg, var(--top-buttons-color-start), var(--top-buttons-color-end));--hide-top-duration: .2s;--font-color: #ccc;--top-index: 32767;--top-color-start: #101010;--top-color-end: #212121;--top-color: linear-gradient(31deg, var(--top-color-start), var(--top-color-end));--primary-border-radius: .5rem;--active-scale: .9;--bouncy-transition: cubic-bezier(.68,-.55,.27,1.55);--music-mode-transition: .5s ease;font-family:system-ui,Noto Sans,Open Sans,sans-serif;color:var(--font-color);text-align:center;margin:0;box-sizing:border-box}pre{font-family:monospace!important}html,body{height:100lvh;width:100%;background:#000;overflow-x:clip;scrollbar-width:thin}body.load{transition:background .2s}body.no_scroll,html.no_scroll{max-height:100%!important;height:100%!important;overflow:hidden!important}.spessasynth_main{display:flex;flex-direction:column;height:100%;--primary-color: #510087;--border-color: #6e00b7;--track-color: #333;--track-border-color: #444;--shadow-color: #000}.spessasynth_main.light_mode{--primary-color: #a93bff;--border-color: #510087;--track-color: #ccc;--track-border-color: #444;--shadow-color: #fff}a{text-decoration:none;color:#546fff}::-webkit-scrollbar{background-color:#000;width:.3em}::-webkit-scrollbar-thumb{background-color:#777;border-radius:50px}.bottom_part{margin-top:5px}button{-webkit-user-select:none;user-select:none}.hidden{display:none!important}.secret_video{position:absolute;width:100%;left:0;z-index:0}.loading{flex-direction:column;display:flex;justify-content:center;align-items:center;position:fixed;width:100%;height:100%;z-index:var(--top-index);left:0;background:var(--top-color);transition:all 1s var(--bouncy-transition);cursor:wait}.loading .loading_icon{max-width:100%;max-height:100%;margin:1em;animation:spin 1s ease-in-out infinite}.loading.done{transform:translateY(-100%)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}